/*
Theme Name: Communio GeneratePress Child
Theme URI: https://communio.org/
Description: Minimal GeneratePress child theme for Communio.
Author: Communio
Template: generatepress
Version: 0.1.0
Text Domain: communio-generatepress-child
*/

/* Communio journal templates. */
:root {
	--communio-content-width: 760px;
	--communio-border: #ddd8cf;
	--communio-border-light: #ebe7df;
	--communio-text: #292622;
	--communio-heading: #24211d;
	--communio-muted: #625b51;
	--communio-link: #58432f;
	--communio-surface: #fbfaf7;
}

body.single-communio_article #primary,
body.single-communio_issue #primary,
body.single-communio_author #primary,
body.post-type-archive-communio_article #primary,
body.post-type-archive-communio_issue #primary,
body.post-type-archive-communio_author #primary,
body.search #primary {
	max-width: var(--communio-content-width);
	margin-right: auto;
	margin-left: auto;
	padding: 3rem 1.25rem;
}

body.single-communio_article #primary {
	box-sizing: border-box;
	min-width: 0;
}

body.search #right-sidebar,
body.search #left-sidebar,
body.single-communio_article #right-sidebar,
body.single-communio_article #left-sidebar,
body.single-communio_issue #right-sidebar,
body.single-communio_issue #left-sidebar,
body.single-communio_author #right-sidebar,
body.single-communio_author #left-sidebar,
body.post-type-archive-communio_article #right-sidebar,
body.post-type-archive-communio_article #left-sidebar,
body.post-type-archive-communio_issue #right-sidebar,
body.post-type-archive-communio_issue #left-sidebar,
body.post-type-archive-communio_author #right-sidebar,
body.post-type-archive-communio_author #left-sidebar {
	display: none;
}

body.post-type-archive-communio_article .page-header,
body.post-type-archive-communio_issue .page-header,
body.post-type-archive-communio_author .page-header,
body.search .page-header {
	margin-bottom: 2.25rem;
	padding-bottom: 1rem;
	border-bottom: 1px solid var(--communio-border);
}

body.post-type-archive-communio_article .page-header h1,
body.post-type-archive-communio_issue .page-header h1,
body.post-type-archive-communio_author .page-header h1,
body.search .page-header h1 {
	margin-bottom: 0;
	font-family: var(--communio-font-display);
	font-size: clamp(1.8rem, 4vw, 2.35rem);
	font-weight: 400;
	line-height: 1.18;
	color: var(--communio-heading);
	overflow-wrap: anywhere;
}

:where(body.page) .entry-title {
	font-family: var(--communio-font-display);
}

article.type-communio_article,
article.type-communio_issue,
article.type-communio_author {
	font-family: var(--communio-font-utility);
}

article.type-communio_article,
article.type-communio_issue,
article.type-communio_author {
	margin-bottom: 2.75rem;
	color: var(--communio-text);
}

body.post-type-archive-communio_article article.type-communio_article,
body.post-type-archive-communio_issue article.type-communio_issue,
body.post-type-archive-communio_author article.type-communio_author {
	margin-bottom: 0;
	padding: 1.35rem 0 1.6rem;
	border-bottom: 1px solid var(--communio-border-light);
}

article.type-communio_article .entry-header,
article.type-communio_issue .entry-header,
article.type-communio_author .entry-header {
	margin-bottom: 1.6rem;
}

article.type-communio_article .entry-title,
article.type-communio_issue .entry-title,
article.type-communio_author .entry-title {
	margin-bottom: 0.55rem;
	font-family: var(--communio-font-display);
	font-weight: 400;
	line-height: 1.18;
	color: var(--communio-heading);
	overflow-wrap: anywhere;
}

body.single-communio_article article.type-communio_article .entry-title,
body.single-communio_issue article.type-communio_issue .entry-title,
body.single-communio_author article.type-communio_author .entry-title {
	font-size: clamp(2rem, 5vw, 3rem);
}

body.post-type-archive-communio_article article.type-communio_article .entry-title,
body.post-type-archive-communio_issue article.type-communio_issue .entry-title,
body.post-type-archive-communio_author article.type-communio_author .entry-title {
	font-size: clamp(1.3rem, 2.5vw, 1.6rem);
}

article.type-communio_article .entry-title a,
article.type-communio_issue .entry-title a,
article.type-communio_author .entry-title a {
	color: inherit;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.16em;
}

article.type-communio_article .entry-subtitle {
	max-width: 42rem;
	margin: 0.35rem 0 1rem;
	font-family: var(--communio-font-reading);
	font-size: 1.35rem;
	font-style: italic;
	line-height: 1.35;
	color: #5c554b;
}

article.type-communio_article .entry-meta,
article.type-communio_issue .entry-meta,
article.type-communio_author .entry-meta {
	margin-top: 0.85rem;
	font-size: 0.92rem;
	line-height: 1.55;
	color: var(--communio-muted);
}

article.type-communio_article .entry-meta p,
article.type-communio_issue .entry-meta,
article.type-communio_author .entry-meta {
	margin-bottom: 0.35rem;
}

article.type-communio_article .entry-meta a,
article.type-communio_issue .entry-meta a,
article.type-communio_author .entry-meta a,
section[aria-labelledby="communio-issue-articles-heading"] a,
section[aria-labelledby="communio-author-articles-heading"] a {
	color: var(--communio-link);
	text-decoration-thickness: 1px;
	text-underline-offset: 0.18em;
}

article.type-communio_article .entry-meta a[href$=".pdf"],
article.type-communio_article .entry-meta a[href*=".pdf?"],
article.type-communio_issue .entry-meta a[href$=".pdf"],
article.type-communio_issue .entry-meta a[href*=".pdf?"] {
	display: inline-block;
	margin-top: 0.25rem;
	padding: 0.28rem 0.7rem;
	border: 1px solid #b9aa98;
	border-radius: 2px;
	font-size: 0.78rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	line-height: 1.4;
	text-transform: uppercase;
	text-decoration: none;
	color: var(--communio-heading);
	background: #fff;
}

article.type-communio_article .entry-content,
article.type-communio_issue .entry-content,
article.type-communio_author .entry-content,
article.type-communio_article .entry-summary,
article.type-communio_issue .entry-summary,
article.type-communio_author .entry-summary {
	font-family: var(--communio-font-reading);
	font-size: 1.125rem;
	line-height: 1.72;
}

body.single-communio_article article.type-communio_article .entry-content {
	font-size: 1.12rem;
}

article.type-communio_article .entry-content > *,
article.type-communio_issue .entry-content > *,
article.type-communio_author .entry-content > * {
	margin-bottom: 1.2rem;
}

article.type-communio_article .entry-summary,
article.type-communio_issue .entry-summary,
article.type-communio_author .entry-summary {
	color: #4d463d;
}

article.type-communio_article .communio-article-summary {
	margin: 1.25rem 0 2rem;
	padding: 1rem 1.15rem;
	border-left: 3px solid var(--communio-border);
	background: var(--communio-surface);
	color: #4d463d;
}

article.type-communio_article .communio-article-summary > :last-child {
	margin-bottom: 0;
}

article.type-communio_article .entry-content .footnotes,
article.type-communio_article .entry-content .wp-block-footnotes,
article.type-communio_article .entry-content ol.footnotes,
article.type-communio_article .entry-content section[role="doc-endnotes"] {
	margin-top: 2.5rem;
	padding-top: 1.25rem;
	border-top: 1px solid var(--communio-border);
	font-size: 0.95rem;
	line-height: 1.6;
	color: #4d463d;
}

article.type-communio_issue .post-thumbnail {
	margin: 1.5rem 0 2rem;
}

article.type-communio_issue .post-thumbnail img {
	display: block;
	max-width: 320px;
	height: auto;
	border: 1px solid var(--communio-border);
}

.communio-issue-purchase {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.85rem 1.25rem;
	margin: 1.75rem 0 2rem;
	padding: 0.9rem 1rem;
	border: 1px solid var(--communio-border-light);
	border-left-color: var(--communio-border);
	background: var(--communio-surface);
	color: var(--communio-text);
}

.communio-issue-purchase__heading {
	margin: 0;
	font-family: var(--communio-font-utility);
	font-size: 1.12rem;
	font-weight: 400;
	line-height: 1.3;
	color: var(--communio-heading);
}

.communio-issue-purchase__button {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-end;
	gap: 0.45rem 0.65rem;
	font-size: 0.92rem;
	line-height: 1.4;
	color: var(--communio-muted);
}

.communio-issue-purchase .add_to_cart_inline {
	display: flex !important;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-end;
	gap: 0.45rem 0.65rem;
	margin: 0;
	padding: 0 !important;
	border: 0 !important;
	background: transparent;
}

.communio-issue-purchase .woocommerce-Price-amount {
	font-weight: 600;
	color: var(--communio-text);
}

.communio-issue-purchase a.button,
.communio-issue-purchase a.added_to_cart {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.15rem;
	padding: 0.4rem 0.8rem;
	border: 1px solid #b9aa98;
	border-radius: 2px;
	font-size: 0.82rem;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1.2;
	text-transform: none;
	text-decoration: none;
	box-shadow: none;
}

.communio-issue-purchase a.button {
	color: #fff;
	background: var(--communio-link);
}

.communio-issue-purchase a.button:hover,
.communio-issue-purchase a.button:focus {
	color: #fff;
	background: var(--communio-heading);
}

.communio-issue-purchase a.added_to_cart {
	color: var(--communio-link);
	background: #fff;
}

section[aria-labelledby="communio-issue-articles-heading"],
section[aria-labelledby="communio-author-articles-heading"] {
	margin-top: 3rem;
	padding-top: 1.75rem;
	border-top: 1px solid var(--communio-border);
}

section[aria-labelledby="communio-issue-articles-heading"] h2,
section[aria-labelledby="communio-author-articles-heading"] h2 {
	margin-bottom: 1.1rem;
	font-family: var(--communio-font-display);
	font-size: 1.45rem;
	font-weight: 400;
	line-height: 1.25;
	color: var(--communio-heading);
}

body.single-communio_author section[aria-labelledby="communio-author-articles-heading"] form {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem;
	margin: 0 0 1rem;
	font-size: 0.9rem;
	color: var(--communio-muted);
}

body.single-communio_author section[aria-labelledby="communio-author-articles-heading"] label {
	margin: 0;
	font-weight: 400;
}

body.single-communio_author section[aria-labelledby="communio-author-articles-heading"] select,
body.single-communio_author section[aria-labelledby="communio-author-articles-heading"] button {
	min-height: 2rem;
	padding: 0.25rem 0.55rem;
	border: 1px solid var(--communio-border);
	border-radius: 2px;
	font: inherit;
	line-height: 1.3;
	color: var(--communio-text);
	background: #fff;
}

body.single-communio_author section[aria-labelledby="communio-author-articles-heading"] button {
	color: var(--communio-link);
	background: var(--communio-surface);
}

section[aria-labelledby="communio-issue-articles-heading"] ul,
section[aria-labelledby="communio-author-articles-heading"] ul {
	margin: 0;
	padding: 0;
	list-style: none;
	border-top: 1px solid var(--communio-border-light);
}

section[aria-labelledby="communio-issue-articles-heading"] li,
section[aria-labelledby="communio-author-articles-heading"] li {
	padding: 1rem 0;
	border-bottom: 1px solid var(--communio-border-light);
}

section[aria-labelledby="communio-issue-articles-heading"] li > a,
section[aria-labelledby="communio-author-articles-heading"] li > a {
	display: inline-block;
	font-family: var(--communio-font-display);
	font-size: 1.08rem;
	line-height: 1.35;
	color: var(--communio-heading);
}

section[aria-labelledby="communio-issue-articles-heading"] li span,
section[aria-labelledby="communio-author-articles-heading"] li span {
	display: block;
	margin-top: 0.25rem;
	font-size: 0.9rem;
	line-height: 1.5;
	color: var(--communio-muted);
}

.communio-search-results {
	border-top: 1px solid var(--communio-border-light);
}

.communio-search-result {
	margin: 0;
	padding: 1.35rem 0 1.6rem;
	border-bottom: 1px solid var(--communio-border-light);
	color: var(--communio-text);
}

.communio-search-result .entry-header {
	margin-bottom: 0.7rem;
}

.communio-search-result .entry-title {
	margin-bottom: 0;
	font-family: var(--communio-font-display);
	font-size: clamp(1.25rem, 2.5vw, 1.55rem);
	font-weight: 400;
	line-height: 1.25;
	overflow-wrap: anywhere;
}

.communio-search-result .entry-title a {
	color: var(--communio-heading);
	text-decoration-thickness: 1px;
	text-underline-offset: 0.16em;
}

.communio-search-result .entry-summary {
	font-family: var(--communio-font-reading);
	font-size: 1.125rem;
	line-height: 1.65;
	color: #4d463d;
}

.communio-search-result .entry-summary > :last-child {
	margin-bottom: 0;
}

/* Communio shortcode output. */
.communio-author-index,
.communio-current-issue,
.communio-issue-grid {
	margin: 2rem 0;
	color: var(--communio-text);
	font-family: var(--communio-font-utility);
}

.communio-author-index__group {
	margin-bottom: 2rem;
	padding-bottom: 1.25rem;
	border-bottom: 1px solid var(--communio-border-light);
}

.communio-author-index__letter {
	margin: 0 0 0.75rem;
	font-family: var(--communio-font-utility);
	font-size: 1.35rem;
	font-weight: 400;
	line-height: 1.25;
	color: var(--communio-heading);
}

.communio-author-index__list {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr));
	gap: 0.35rem 1.5rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.communio-author-index__item {
	margin: 0;
	line-height: 1.45;
}

.communio-author-index__item a,
.communio-current-issue__link,
.communio-issue-grid__title a {
	color: var(--communio-link);
	text-decoration-thickness: 1px;
	text-underline-offset: 0.18em;
}

.communio-current-issue {
	padding: 1.25rem 0;
	border-top: 1px solid var(--communio-border-light);
	border-bottom: 1px solid var(--communio-border-light);
}

.communio-current-issue__title,
.communio-issue-grid__title {
	margin: 0 0 0.45rem;
	font-family: var(--communio-font-display);
	font-weight: 400;
	line-height: 1.25;
	color: var(--communio-heading);
	overflow-wrap: anywhere;
}

.communio-current-issue__title {
	font-size: clamp(1.35rem, 2.5vw, 1.7rem);
}

.communio-current-issue__meta {
	margin: 0 0 0.85rem;
	font-size: 0.92rem;
	line-height: 1.5;
	color: var(--communio-muted);
}

.communio-current-issue__excerpt {
	max-width: 42rem;
	margin: 0 0 1rem;
	font-family: var(--communio-font-reading);
	font-size: 1.125rem;
	line-height: 1.65;
	color: #4d463d;
}

.communio-current-issue__excerpt > :last-child {
	margin-bottom: 0;
}

.communio-current-issue__link {
	display: inline-block;
	font-weight: 600;
}

.communio-issue-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
	gap: 1rem 1.5rem;
}

.communio-issue-grid__item {
	margin: 0;
	padding: 1rem 0;
	border-top: 1px solid var(--communio-border-light);
}

.communio-issue-grid__title {
	font-size: 1.12rem;
}

.paging-navigation,
.post-navigation,
.posts-navigation {
	margin-top: 2rem;
	padding-top: 1rem;
	border-top: 1px solid var(--communio-border-light);
}

@media (max-width: 700px) {
	body.single-communio_article #primary,
	body.single-communio_issue #primary,
	body.single-communio_author #primary,
	body.post-type-archive-communio_article #primary,
	body.post-type-archive-communio_issue #primary,
	body.post-type-archive-communio_author #primary,
	body.search #primary {
		padding-top: 2rem;
		padding-bottom: 2rem;
	}

	article.type-communio_article .entry-subtitle {
		font-size: 1.18rem;
	}

	body.single-communio_article article.type-communio_article .entry-content,
	article.type-communio_article .entry-content,
	article.type-communio_issue .entry-content,
	article.type-communio_author .entry-content,
	article.type-communio_article .entry-summary,
	article.type-communio_issue .entry-summary,
	article.type-communio_author .entry-summary {
		font-size: 1.0625rem;
		line-height: 1.68;
	}

	.communio-issue-purchase,
	.communio-issue-purchase__button,
	.communio-issue-purchase .add_to_cart_inline {
		align-items: flex-start;
		justify-content: flex-start;
	}
}

/* Communio first polish pass: issue pages and public archive refinement. */

:root {
	--communio-rule-dark: #c9bdad;
	--communio-accent-soft: #f4efe7;
	--communio-accent-warm: #7a5a3a;
	--communio-shadow-soft: 0 10px 28px rgba(41, 38, 34, 0.06);
}

body.single-communio_article #primary,
body.single-communio_issue #primary,
body.single-communio_author #primary,
body.post-type-archive-communio_article #primary,
body.post-type-archive-communio_issue #primary,
body.post-type-archive-communio_author #primary,
body.search #primary {
	padding-top: clamp(2rem, 5vw, 4rem);
	padding-bottom: clamp(3rem, 7vw, 5rem);
}

body.post-type-archive-communio_article .page-header,
body.post-type-archive-communio_issue .page-header,
body.post-type-archive-communio_author .page-header,
body.search .page-header {
	margin-bottom: 2.75rem;
	padding-bottom: 1.2rem;
	border-bottom: 1px solid var(--communio-rule-dark);
}

body.post-type-archive-communio_article article.type-communio_article,
body.post-type-archive-communio_issue article.type-communio_issue,
body.post-type-archive-communio_author article.type-communio_author {
	position: relative;
	padding: 1.75rem 0 1.9rem;
	border-bottom: 1px solid var(--communio-border-light);
}

body.post-type-archive-communio_article article.type-communio_article::before,
body.post-type-archive-communio_issue article.type-communio_issue::before,
body.post-type-archive-communio_author article.type-communio_author::before {
	content: "";
	position: absolute;
	top: 1.75rem;
	left: -1rem;
	width: 3px;
	height: 2.4rem;
	background: var(--communio-border);
	opacity: 0;
	transition: opacity 160ms ease;
}

body.post-type-archive-communio_article article.type-communio_article:hover::before,
body.post-type-archive-communio_issue article.type-communio_issue:hover::before,
body.post-type-archive-communio_author article.type-communio_author:hover::before {
	opacity: 1;
}

body.post-type-archive-communio_article article.type-communio_article .entry-header,
body.post-type-archive-communio_issue article.type-communio_issue .entry-header,
body.post-type-archive-communio_author article.type-communio_author .entry-header {
	margin-bottom: 0.75rem;
}

body.post-type-archive-communio_article article.type-communio_article .entry-summary,
body.post-type-archive-communio_issue article.type-communio_issue .entry-summary,
body.post-type-archive-communio_author article.type-communio_author .entry-summary {
	max-width: 42rem;
	font-size: 1.125rem;
	line-height: 1.65;
	color: #514a41;
}

article.type-communio_article .entry-title a:hover,
article.type-communio_issue .entry-title a:hover,
article.type-communio_author .entry-title a:hover,
section[aria-labelledby="communio-issue-articles-heading"] a:hover,
section[aria-labelledby="communio-author-articles-heading"] a:hover {
	color: var(--communio-accent-warm);
	text-decoration-thickness: 1px;
}

body.single-communio_issue article.type-communio_issue {
	margin-bottom: 3rem;
}

body.single-communio_issue article.type-communio_issue .entry-header {
	margin-bottom: 1.35rem;
	padding-bottom: 1.15rem;
	border-bottom: 1px solid var(--communio-border-light);
}

body.single-communio_issue article.type-communio_issue .entry-meta {
	margin-top: 1rem;
}

article.type-communio_issue .post-thumbnail {
	margin: 2rem 0 2.4rem;
}

article.type-communio_issue .post-thumbnail img {
	max-width: min(340px, 100%);
	padding: 0.45rem;
	border: 1px solid var(--communio-border);
	background: #fff;
	box-shadow: var(--communio-shadow-soft);
}

.communio-issue-purchase {
	margin: 2rem 0 2.35rem;
	padding: 1.1rem 1.25rem;
	border: 1px solid var(--communio-border);
	border-left: 4px solid var(--communio-rule-dark);
	background: linear-gradient(180deg, #fffdf9 0%, var(--communio-surface) 100%);
	box-shadow: var(--communio-shadow-soft);
}

.communio-issue-purchase__heading {
	color: var(--communio-heading);
	font-weight: 400;
	letter-spacing: 0.01em;
}

.communio-issue-purchase__button .button,
.communio-issue-purchase__button button,
.communio-issue-purchase__button .add_to_cart_button {
	border-radius: 0;
	border: 1px solid var(--communio-heading);
	background: var(--communio-heading);
	color: #fff;
	font-size: 0.82rem;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.communio-issue-purchase__button .button:hover,
.communio-issue-purchase__button button:hover,
.communio-issue-purchase__button .add_to_cart_button:hover {
	border-color: var(--communio-accent-warm);
	background: var(--communio-accent-warm);
	color: #fff;
}

section[aria-labelledby="communio-issue-articles-heading"],
section[aria-labelledby="communio-author-articles-heading"] {
	margin-top: 3rem;
	padding-top: 1.5rem;
	border-top: 1px solid var(--communio-rule-dark);
}

section[aria-labelledby="communio-issue-articles-heading"] h2,
section[aria-labelledby="communio-author-articles-heading"] h2 {
	margin-bottom: 1.25rem;
	font-family: var(--communio-font-display);
	font-size: clamp(1.45rem, 3vw, 1.9rem);
	font-weight: 400;
	line-height: 1.2;
	color: var(--communio-heading);
}

section[aria-labelledby="communio-issue-articles-heading"] ul,
section[aria-labelledby="communio-author-articles-heading"] ul {
	margin-left: 0;
	padding-left: 0;
	list-style: none;
}

section[aria-labelledby="communio-issue-articles-heading"] li,
section[aria-labelledby="communio-author-articles-heading"] li {
	padding: 0.85rem 0;
	border-bottom: 1px solid var(--communio-border-light);
	font-family: var(--communio-font-reading);
	line-height: 1.55;
}

section[aria-labelledby="communio-issue-articles-heading"] li > a,
section[aria-labelledby="communio-author-articles-heading"] li > a {
	display: inline;
	font-size: 1.08rem;
}

section[aria-labelledby="communio-issue-articles-heading"] li > span,
section[aria-labelledby="communio-author-articles-heading"] li > span {
	display: block;
	margin-top: 0.15rem;
	font-family: var(--communio-font-utility);
	font-size: 0.9rem;
	line-height: 1.45;
	color: var(--communio-muted);
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
summary:focus-visible {
	outline: 2px solid var(--communio-accent-warm);
	outline-offset: 3px;
}

@media (max-width: 680px) {
	body.post-type-archive-communio_article article.type-communio_article::before,
	body.post-type-archive-communio_issue article.type-communio_issue::before,
	body.post-type-archive-communio_author article.type-communio_author::before {
		display: none;
	}

	.communio-issue-purchase {
		display: block;
	}

	.communio-issue-purchase__heading {
		margin-bottom: 0.85rem;
	}
}


/* Communio first polish pass: issue pages and public archive refinement. */

:root {
	--communio-rule-dark: #c9bdad;
	--communio-accent-soft: #f4efe7;
	--communio-accent-warm: #7a5a3a;
	--communio-shadow-soft: 0 10px 28px rgba(41, 38, 34, 0.06);
}

body.single-communio_article #primary,
body.single-communio_issue #primary,
body.single-communio_author #primary,
body.post-type-archive-communio_article #primary,
body.post-type-archive-communio_issue #primary,
body.post-type-archive-communio_author #primary,
body.search #primary {
	padding-top: clamp(2rem, 5vw, 4rem);
	padding-bottom: clamp(3rem, 7vw, 5rem);
}

body.post-type-archive-communio_article .page-header,
body.post-type-archive-communio_issue .page-header,
body.post-type-archive-communio_author .page-header,
body.search .page-header {
	margin-bottom: 2.75rem;
	padding-bottom: 1.2rem;
	border-bottom: 1px solid var(--communio-rule-dark);
}

body.post-type-archive-communio_article article.type-communio_article,
body.post-type-archive-communio_issue article.type-communio_issue,
body.post-type-archive-communio_author article.type-communio_author {
	position: relative;
	padding: 1.75rem 0 1.9rem;
	border-bottom: 1px solid var(--communio-border-light);
}

body.post-type-archive-communio_article article.type-communio_article::before,
body.post-type-archive-communio_issue article.type-communio_issue::before,
body.post-type-archive-communio_author article.type-communio_author::before {
	content: "";
	position: absolute;
	top: 1.75rem;
	left: -1rem;
	width: 3px;
	height: 2.4rem;
	background: var(--communio-border);
	opacity: 0;
	transition: opacity 160ms ease;
}

body.post-type-archive-communio_article article.type-communio_article:hover::before,
body.post-type-archive-communio_issue article.type-communio_issue:hover::before,
body.post-type-archive-communio_author article.type-communio_author:hover::before {
	opacity: 1;
}

body.post-type-archive-communio_article article.type-communio_article .entry-header,
body.post-type-archive-communio_issue article.type-communio_issue .entry-header,
body.post-type-archive-communio_author article.type-communio_author .entry-header {
	margin-bottom: 0.75rem;
}

body.post-type-archive-communio_article article.type-communio_article .entry-summary,
body.post-type-archive-communio_issue article.type-communio_issue .entry-summary,
body.post-type-archive-communio_author article.type-communio_author .entry-summary {
	max-width: 42rem;
	font-size: 1.125rem;
	line-height: 1.65;
	color: #514a41;
}

article.type-communio_article .entry-title a:hover,
article.type-communio_issue .entry-title a:hover,
article.type-communio_author .entry-title a:hover,
section[aria-labelledby="communio-issue-articles-heading"] a:hover,
section[aria-labelledby="communio-author-articles-heading"] a:hover {
	color: var(--communio-accent-warm);
	text-decoration-thickness: 1px;
}

body.single-communio_issue article.type-communio_issue {
	margin-bottom: 3rem;
}

body.single-communio_issue article.type-communio_issue .entry-header {
	margin-bottom: 1.35rem;
	padding-bottom: 1.15rem;
	border-bottom: 1px solid var(--communio-border-light);
}

body.single-communio_issue article.type-communio_issue .entry-meta {
	margin-top: 1rem;
}

article.type-communio_issue .post-thumbnail {
	margin: 2rem 0 2.4rem;
}

article.type-communio_issue .post-thumbnail img {
	max-width: min(340px, 100%);
	padding: 0.45rem;
	border: 1px solid var(--communio-border);
	background: #fff;
	box-shadow: var(--communio-shadow-soft);
}

.communio-issue-purchase {
	margin: 2rem 0 2.35rem;
	padding: 1.1rem 1.25rem;
	border: 1px solid var(--communio-border);
	border-left: 4px solid var(--communio-rule-dark);
	background: linear-gradient(180deg, #fffdf9 0%, var(--communio-surface) 100%);
	box-shadow: var(--communio-shadow-soft);
}

.communio-issue-purchase__heading {
	color: var(--communio-heading);
	font-weight: 400;
	letter-spacing: 0.01em;
}

.communio-issue-purchase__button .button,
.communio-issue-purchase__button button,
.communio-issue-purchase__button .add_to_cart_button {
	border-radius: 0;
	border: 1px solid var(--communio-heading);
	background: var(--communio-heading);
	color: #fff;
	font-size: 0.82rem;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.communio-issue-purchase__button .button:hover,
.communio-issue-purchase__button button:hover,
.communio-issue-purchase__button .add_to_cart_button:hover {
	border-color: var(--communio-accent-warm);
	background: var(--communio-accent-warm);
	color: #fff;
}

section[aria-labelledby="communio-issue-articles-heading"],
section[aria-labelledby="communio-author-articles-heading"] {
	margin-top: 3rem;
	padding-top: 1.5rem;
	border-top: 1px solid var(--communio-rule-dark);
}

section[aria-labelledby="communio-issue-articles-heading"] h2,
section[aria-labelledby="communio-author-articles-heading"] h2 {
	margin-bottom: 1.25rem;
	font-family: var(--communio-font-display);
	font-size: clamp(1.45rem, 3vw, 1.9rem);
	font-weight: 400;
	line-height: 1.2;
	color: var(--communio-heading);
}

section[aria-labelledby="communio-issue-articles-heading"] ul,
section[aria-labelledby="communio-author-articles-heading"] ul {
	margin-left: 0;
	padding-left: 0;
	list-style: none;
}

section[aria-labelledby="communio-issue-articles-heading"] li,
section[aria-labelledby="communio-author-articles-heading"] li {
	padding: 0.85rem 0;
	border-bottom: 1px solid var(--communio-border-light);
	font-family: var(--communio-font-reading);
	line-height: 1.55;
}

section[aria-labelledby="communio-issue-articles-heading"] li > a,
section[aria-labelledby="communio-author-articles-heading"] li > a {
	display: inline;
	font-size: 1.08rem;
}

section[aria-labelledby="communio-issue-articles-heading"] li > span,
section[aria-labelledby="communio-author-articles-heading"] li > span {
	display: block;
	margin-top: 0.15rem;
	font-family: var(--communio-font-utility);
	font-size: 0.9rem;
	line-height: 1.45;
	color: var(--communio-muted);
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
summary:focus-visible {
	outline: 2px solid var(--communio-accent-warm);
	outline-offset: 3px;
}

@media (max-width: 680px) {
	body.post-type-archive-communio_article article.type-communio_article::before,
	body.post-type-archive-communio_issue article.type-communio_issue::before,
	body.post-type-archive-communio_author article.type-communio_author::before {
		display: none;
	}

	.communio-issue-purchase {
		display: block;
	}

	.communio-issue-purchase__heading {
		margin-bottom: 0.85rem;
	}
}


/* Article-level topic browsing */
body.page-id-0 .communio-topic-index,
.communio-topic-index {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 1rem;
	margin-top: 2rem;
}

.communio-topic-index-intro {
	max-width: 760px;
	color: #555;
	font-family: var(--communio-font-reading);
	font-size: 1.125rem;
	line-height: 1.65;
}

.communio-topic-card {
	display: block;
	padding: 1.1rem 1.2rem;
	border: 1px solid rgba(0, 0, 0, 0.12);
	border-radius: 4px;
	background: #fff;
	color: inherit;
	text-decoration: none;
	transition: transform 120ms ease, box-shadow 120ms ease, border-color 120ms ease;
}

.communio-topic-card:hover,
.communio-topic-card:focus {
	color: inherit;
	text-decoration: none;
	transform: translateY(-1px);
	border-color: rgba(0, 0, 0, 0.28);
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.06);
}

.communio-topic-card__name {
	display: block;
	font-family: var(--communio-font-utility);
	font-size: 1.25rem;
	line-height: 1.25;
}

.communio-topic-card__count {
	display: block;
	margin-top: 0.45rem;
	font-size: 0.9rem;
	color: #666;
}

.communio-topic-archive {
	max-width: 980px;
	margin: 0 auto;
	padding: 3rem 1.5rem;
}

.communio-topic-archive__header {
	margin-bottom: 2.5rem;
	border-bottom: 1px solid rgba(0, 0, 0, 0.12);
	padding-bottom: 1.5rem;
}

.communio-topic-archive__kicker {
	margin-bottom: 0.35rem;
	text-transform: uppercase;
	letter-spacing: 0.12em;
	font-size: 0.78rem;
	color: #777;
}

.communio-topic-results {
	display: grid;
	gap: 1.5rem;
}

.communio-topic-result {
	padding-bottom: 1.5rem;
	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.communio-topic-result__title {
	margin-bottom: 0.45rem;
	font-family: var(--communio-font-display);
	font-size: clamp(1.35rem, 2vw, 1.8rem);
	line-height: 1.2;
}

.communio-topic-result__title a {
	color: inherit;
	text-decoration: none;
}

.communio-topic-result__title a:hover,
.communio-topic-result__title a:focus {
	text-decoration: underline;
	text-decoration-thickness: 0.06em;
	text-underline-offset: 0.16em;
}

.communio-topic-result__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem 0.75rem;
	margin-bottom: 0.75rem;
	color: #666;
	font-size: 0.95rem;
}

.communio-topic-result__meta span:not(:last-child)::after {
	content: "·";
	margin-left: 0.75rem;
	color: #aaa;
}

.communio-topic-result__meta a {
	color: inherit;
	text-decoration: none;
}

.communio-topic-result__meta a:hover,
.communio-topic-result__meta a:focus {
	text-decoration: underline;
}

.communio-topic-result__summary {
	max-width: 760px;
	color: #333;
}

.communio-topic-pagination {
	margin-top: 2rem;
}

/* Topic archives should read as elegant article-result pages, not issue landing pages. */
.communio-article-results-page .communio-topic-archive__header {
	background: #faf8f4;
	border: 1px solid rgba(0, 0, 0, 0.08);
	padding: clamp(1.5rem, 4vw, 2.4rem);
}

.communio-article-results-page .communio-topic-archive__kicker {
	color: #8a5a2b;
	font-weight: 700;
}

.communio-article-results-page .communio-topic-archive__lede {
	max-width: 720px;
	font-family: var(--communio-font-reading);
	font-size: 1.125rem;
	line-height: 1.65;
	color: #444;
}

.communio-topic-archive__summary {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.35rem 0.55rem;
	margin-top: 1.15rem;
	font-size: 0.92rem;
	color: #555;
}

.communio-topic-archive__summary-label,
.communio-topic-result__type,
.communio-topic-related-issue__label {
	text-transform: uppercase;
	letter-spacing: 0.12em;
	font-size: 0.72rem;
	font-weight: 700;
	color: #8a5a2b;
}

.communio-topic-archive__summary-divider {
	color: #aaa;
}

.communio-topic-related-issue {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	align-items: center;
	margin-top: 1.35rem;
	padding: 1rem 1.1rem;
	background: #fff;
	border-left: 4px solid #8a5a2b;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.04);
}

.communio-topic-related-issue p {
	margin-bottom: 0.25rem;
}

.communio-topic-related-issue a {
	flex: 0 0 auto;
	color: inherit;
	font-weight: 700;
	text-decoration: none;
}

.communio-topic-related-issue a:hover,
.communio-topic-related-issue a:focus {
	text-decoration: underline;
	text-underline-offset: 0.16em;
}

.communio-article-results-page .communio-topic-results {
	gap: 0;
	background: #fff;
	border-top: 1px solid rgba(0, 0, 0, 0.1);
}

.communio-article-results-page .communio-topic-result {
	position: relative;
	padding: 1.45rem 0;
	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.communio-topic-result__type {
	margin-bottom: 0.35rem;
	color: #777;
}

.communio-article-results-page .communio-topic-result__title {
	margin-bottom: 0.4rem;
}

.communio-article-results-page .communio-topic-result__meta {
	margin-bottom: 0.65rem;
}

@media (max-width: 700px) {
	.communio-topic-related-issue {
		display: block;
	}

	.communio-topic-related-issue a {
		display: inline-block;
		margin-top: 0.4rem;
	}
}

/* Refine spacing inside topic article-result cards. */
.communio-article-results-page .communio-topic-results {
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-bottom: 0;
}

.communio-article-results-page .communio-topic-result {
	padding: clamp(1.6rem, 3vw, 2.25rem) clamp(1.5rem, 4vw, 2.5rem);
}

.communio-article-results-page .communio-topic-result__type {
	margin-bottom: 0.55rem;
}

.communio-article-results-page .communio-topic-result__title {
	max-width: 920px;
}

.communio-article-results-page .communio-topic-result__summary {
	max-width: 820px;
}

@media (max-width: 700px) {
	.communio-article-results-page .communio-topic-result {
		padding: 1.35rem 1.15rem;
	}
}

/* Canonical browse pages: /issues/ and /authors/ */
.communio-browse-page {
	max-width: 1120px;
	margin: 0 auto;
	padding: clamp(2rem, 5vw, 3.5rem) 1.5rem;
}

.communio-browse-header {
	margin-bottom: 2rem;
	padding: clamp(1.5rem, 4vw, 2.4rem);
	background: #faf8f4;
	border: 1px solid rgba(0, 0, 0, 0.08);
}

.communio-browse-header__kicker {
	margin-bottom: 0.4rem;
	text-transform: uppercase;
	letter-spacing: 0.14em;
	font-size: 0.78rem;
	font-weight: 700;
	color: #8a5a2b;
}

.communio-browse-header h1 {
	margin-bottom: 0.45rem;
	font-family: var(--communio-font-display);
	font-size: clamp(2.2rem, 5vw, 4rem);
	line-height: 1.05;
}

.communio-browse-header p:last-child {
	max-width: 720px;
	margin-bottom: 0;
	font-family: var(--communio-font-reading);
	font-size: 1.125rem;
	line-height: 1.65;
	color: #444;
}

/* Browse by Issue */
.communio-issue-browser .communio-issue-grid__search {
	display: flex;
	gap: 0.5rem;
	margin-bottom: 1.5rem;
}

.communio-issue-browser .communio-issue-grid__search input[type="search"] {
	flex: 1 1 auto;
	min-width: 0;
	padding: 0.75rem 0.85rem;
	border: 1px solid rgba(0, 0, 0, 0.18);
	background: #fff;
}

.communio-issue-browser .communio-issue-grid__search button {
	padding: 0.75rem 1rem;
	border: 1px solid #1f2b3a;
	background: #1f2b3a;
	color: #fff;
	font-weight: 700;
	cursor: pointer;
}

.communio-issue-browser .communio-issue-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 1rem;
}

.communio-issue-browser .communio-issue-grid__item {
	padding: 1.15rem 1.2rem;
	background: #fff;
	border: 1px solid rgba(0, 0, 0, 0.1);
	transition: transform 120ms ease, box-shadow 120ms ease, border-color 120ms ease;
}

.communio-issue-browser .communio-issue-grid__item:hover {
	transform: translateY(-1px);
	border-color: rgba(0, 0, 0, 0.24);
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.05);
}

.communio-issue-browser .communio-issue-grid__title {
	display: block;
	color: inherit;
	font-family: var(--communio-font-display);
	font-size: 1.18rem;
	line-height: 1.25;
	text-decoration: none;
}

.communio-issue-browser .communio-issue-grid__title:hover,
.communio-issue-browser .communio-issue-grid__title:focus {
	text-decoration: underline;
	text-decoration-thickness: 0.06em;
	text-underline-offset: 0.16em;
}

.communio-issue-browser .communio-issue-grid__meta {
	margin-top: 0.45rem;
	color: #666;
	font-size: 0.92rem;
}

/* Browse by Author */
.communio-author-browser .communio-author-index {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 1.5rem;
}

.communio-author-browser .communio-author-index__section,
.communio-author-browser .communio-author-index__group {
	padding: 1.1rem 1.2rem;
	background: #fff;
	border: 1px solid rgba(0, 0, 0, 0.09);
}

.communio-author-browser .communio-author-index h2,
.communio-author-browser .communio-author-index__letter {
	margin: 0 0 0.7rem;
	color: #8a5a2b;
	font-family: var(--communio-font-utility);
	font-size: 1.35rem;
	line-height: 1;
}

.communio-author-browser .communio-author-index__list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.communio-author-browser .communio-author-index__list li {
	margin: 0 0 0.35rem;
}

.communio-author-browser .communio-author-index__list a {
	color: inherit;
	text-decoration: none;
}

.communio-author-browser .communio-author-index__list a:hover,
.communio-author-browser .communio-author-index__list a:focus {
	text-decoration: underline;
	text-decoration-thickness: 0.06em;
	text-underline-offset: 0.16em;
}

@media (max-width: 700px) {
	.communio-issue-browser .communio-issue-grid__search {
		display: block;
	}

	.communio-issue-browser .communio-issue-grid__search input[type="search"],
	.communio-issue-browser .communio-issue-grid__search button {
		width: 100%;
	}

	.communio-issue-browser .communio-issue-grid__search button {
		margin-top: 0.5rem;
	}
}

/* Themed Browse by Issue cards */
.communio-issue-search {
	display: flex;
	gap: 0.5rem;
	margin-bottom: 1.6rem;
}

.communio-issue-search input[type="search"] {
	flex: 1 1 auto;
	min-width: 0;
	padding: 0.75rem 0.85rem;
	border: 1px solid rgba(0, 0, 0, 0.18);
	background: #fff;
}

.communio-issue-search button {
	padding: 0.75rem 1rem;
	border: 1px solid #1f2b3a;
	background: #1f2b3a;
	color: #fff;
	font-weight: 700;
	cursor: pointer;
}

.communio-issue-search-summary {
	margin: -0.65rem 0 1.4rem;
	color: #555;
}

.communio-issue-search-summary a {
	margin-left: 0.5rem;
	color: inherit;
	text-decoration: underline;
	text-underline-offset: 0.14em;
}

.communio-themed-issue-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
	gap: 1rem;
}

.communio-issue-card {
	background: #fff;
	border: 1px solid rgba(0, 0, 0, 0.1);
	transition: transform 120ms ease, box-shadow 120ms ease, border-color 120ms ease;
}

.communio-issue-card:hover {
	transform: translateY(-1px);
	border-color: rgba(0, 0, 0, 0.24);
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.05);
}

.communio-issue-card a {
	display: block;
	min-height: 9rem;
	padding: 1.15rem 1.2rem;
	color: inherit;
	text-decoration: none;
}

.communio-issue-card__label {
	display: block;
	margin-bottom: 0.55rem;
	text-transform: uppercase;
	letter-spacing: 0.12em;
	font-size: 0.72rem;
	font-weight: 700;
	color: #8a5a2b;
}

.communio-issue-card__title {
	display: block;
	font-family: var(--communio-font-display);
	font-size: 1.35rem;
	line-height: 1.18;
}

.communio-issue-card__meta {
	display: block;
	margin-top: 0.75rem;
	color: #666;
	font-size: 0.92rem;
}

.communio-issue-card a:hover .communio-issue-card__title,
.communio-issue-card a:focus .communio-issue-card__title {
	text-decoration: underline;
	text-decoration-thickness: 0.06em;
	text-underline-offset: 0.16em;
}

/* Canonical year-grouped Past Issues archive. */
body.post-type-archive-communio_issue #primary.communio-issue-browser {
	--communio-issue-archive-meta: #554f47;
	box-sizing: border-box;
	width: 100%;
	max-width: 1200px;
	background: var(--communio-site-reading, var(--communio-surface));
	color: var(--communio-site-reading-text, var(--communio-text));
}

.communio-issue-browser .communio-browse-header {
	border-color: var(--communio-site-reading-rule, var(--communio-border-light));
	background: var(--communio-site-reading, var(--communio-surface));
}

.communio-issue-browser .communio-browse-header__kicker {
	color: var(--communio-site-reading-accent, var(--communio-accent-warm));
}

.communio-issue-browser .communio-browse-header h1 {
	color: var(--communio-site-reading-heading, var(--communio-heading));
}

.communio-issue-browser .communio-browse-header p:last-child,
.communio-issue-browser .communio-issue-search-summary {
	color: var(--communio-site-reading-muted, var(--communio-muted));
}

.communio-issue-browser .communio-issue-search input[type="search"] {
	border-color: var(--communio-site-reading-rule, var(--communio-border));
	color: var(--communio-site-reading-text, var(--communio-text));
}

.communio-issue-browser .communio-issue-search button {
	border-color: var(--communio-site-reading-heading, var(--communio-heading));
	background: var(--communio-site-reading-heading, var(--communio-heading));
	color: #fff;
}

.communio-issue-browser .communio-issue-search :is(input, button):focus-visible,
.communio-issue-browser .communio-issue-decades a:focus-visible,
.communio-issue-browser .communio-issue-archive-card a:focus-visible {
	outline: 2px solid var(--communio-site-reading-accent, #8b642b);
	outline-offset: 3px;
}

.communio-issue-decades {
	margin: -0.2rem 0 clamp(2.5rem, 5vw, 4rem);
	font-family: var(--communio-font-utility);
	font-size: 0.95rem;
	font-weight: 700;
	letter-spacing: 0.08em;
}

.communio-issue-decades ul {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem 0;
	margin: 0;
	padding: 0;
	list-style: none;
}

.communio-issue-decades li {
	display: flex;
	align-items: center;
}

.communio-issue-decades li + li::before {
	content: "·";
	margin: 0 0.7rem;
	color: var(--communio-site-reading-muted, var(--communio-muted));
}

.communio-issue-decades a,
.communio-issue-archive-card__action {
	color: var(--communio-site-reading-accent, #8b642b);
	text-decoration: none;
}

.communio-issue-decades a:hover,
.communio-issue-archive-card__action:hover {
	text-decoration: underline;
	text-underline-offset: 0.18em;
}

.communio-issue-years {
	display: grid;
	gap: clamp(2.85rem, 6.1vw, 4.8rem);
}

.communio-issue-year {
	scroll-margin-top: 7rem;
}

.communio-issue-year__heading {
	display: flex;
	align-items: center;
	gap: 1.25rem;
	margin: 0 0 clamp(1.5rem, 3vw, 2.25rem);
	color: var(--communio-site-reading-heading, #102b3a);
	font-family: var(--communio-font-display);
	font-size: clamp(2.25rem, 4vw, 3rem);
	font-weight: 400;
	line-height: 1;
}

.communio-issue-year__heading::after {
	content: "";
	flex: 1 1 auto;
	border-top: 1px solid var(--communio-site-reading-rule, var(--communio-border));
}

.communio-issue-year__grid,
.communio-issue-results-grid {
	--communio-issue-archive-card-width: 9.5rem;
	display: grid;
	grid-template-columns: repeat(4, var(--communio-issue-archive-card-width));
	gap: 2.4rem clamp(2.25rem, 5vw, 4.25rem);
	justify-content: center;
	width: max-content;
	max-width: 100%;
	margin-inline: auto;
}

.communio-issue-year__grid--count-1 {
	grid-template-columns: var(--communio-issue-archive-card-width);
}

.communio-issue-year__grid--count-2 {
	grid-template-columns: repeat(2, var(--communio-issue-archive-card-width));
}

.communio-issue-year__grid--count-3 {
	grid-template-columns: repeat(3, var(--communio-issue-archive-card-width));
}

.communio-issue-archive-card {
	min-width: 0;
	margin: 0;
}

.communio-issue-archive-card__cover {
	display: block;
	margin-bottom: 0.75rem;
	background: var(--communio-site-panel-alt, #f3efe6);
}

.communio-issue-archive-card__image {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	box-shadow: 0 0.5rem 1.2rem rgba(16, 43, 58, 0.12);
}

.communio-issue-archive-card__content > :last-child {
	margin-bottom: 0;
}

.communio-issue-archive-card__chronology {
	margin: 0 0 0.25rem;
	color: var(--communio-site-reading-accent, #8b642b);
	font-family: var(--communio-font-utility);
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	line-height: 1.4;
	text-transform: uppercase;
}

.communio-issue-archive-card__title {
	margin: 0 0 0.35rem;
	color: var(--communio-site-reading-heading, #102b3a);
	font-family: var(--communio-font-display);
	font-size: 1.22rem;
	font-weight: 400;
	line-height: 1.16;
	overflow-wrap: anywhere;
}

.communio-issue-archive-card__title a {
	color: inherit;
	text-decoration: none;
}

.communio-issue-archive-card__title a:hover {
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.15em;
}

.communio-issue-archive-card__meta {
	margin: 0 0 0.45rem;
	color: var(--communio-issue-archive-meta, var(--communio-site-reading-muted, var(--communio-muted)));
	font-family: var(--communio-font-reading);
	font-size: 0.95rem;
	font-style: italic;
	line-height: 1.45;
}

.communio-issue-archive-card__action {
	display: inline-block;
	font-family: var(--communio-font-utility);
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: 0.03em;
}

/*
 * The Navy presentation's shared heading role is white for dark feature
 * surfaces. This archive is a Paper reading surface, so its local editorial
 * roles must explicitly consume the corresponding reading colors.
 */
body.post-type-archive-communio_issue.communio-site-presentation--navy
	#primary.communio-issue-browser
	.communio-issue-year__heading,
body.post-type-archive-communio_issue.communio-site-presentation--navy
	#primary.communio-issue-browser
	.communio-issue-archive-card__title,
body.post-type-archive-communio_issue.communio-site-presentation--navy
	#primary.communio-issue-browser
	.communio-issue-archive-card__title a {
	color: var(--communio-site-reading-heading);
}

body.post-type-archive-communio_issue.communio-site-presentation--navy
	#primary.communio-issue-browser
	.communio-issue-archive-card__chronology,
body.post-type-archive-communio_issue.communio-site-presentation--navy
	#primary.communio-issue-browser
	.communio-issue-archive-card__action {
	color: var(--communio-site-reading-accent);
}

body.post-type-archive-communio_issue.communio-site-presentation--navy
	#primary.communio-issue-browser
	.communio-issue-archive-card__meta {
	color: var(--communio-issue-archive-meta);
}

@media (min-width: 951px) {
	.communio-issue-year--current-single
		.communio-issue-year__grid {
		--communio-issue-archive-half-column-gap: clamp(1.125rem, 2.5vw, 2.125rem);
		transform: translateX(
			calc(-4.75rem - var(--communio-issue-archive-half-column-gap))
		);
	}
}

@media (max-width: 950px) {
	.communio-issue-year__grid,
	.communio-issue-year__grid--count-2,
	.communio-issue-year__grid--count-3,
	.communio-issue-year__grid--count-4,
	.communio-issue-results-grid {
		grid-template-columns: repeat(2, var(--communio-issue-archive-card-width));
	}

	.communio-issue-year__grid--count-1 {
		grid-template-columns: var(--communio-issue-archive-card-width);
	}
}

@media (max-width: 600px) {
	.communio-issue-browser .communio-issue-search {
		display: block;
	}

	.communio-issue-browser .communio-issue-search input[type="search"],
	.communio-issue-browser .communio-issue-search button {
		width: 100%;
	}

	.communio-issue-browser .communio-issue-search button {
		margin-top: 0.5rem;
	}

	.communio-issue-year__grid,
	.communio-issue-year__grid--count-1,
	.communio-issue-year__grid--count-2,
	.communio-issue-year__grid--count-3,
	.communio-issue-year__grid--count-4,
	.communio-issue-results-grid {
		grid-template-columns: var(--communio-issue-archive-card-width);
	}

	.communio-issue-year__heading {
		gap: 0.8rem;
	}
}

/* Study Circles: final contrast and natural-height page-shell corrections. */
body.page-id-39.communio-interior-active.communio-site-presentation--navy
	.communio-interior-masthead
	.communio-interior-deck p {
	color: var(--communio-site-muted, #d5d0c7);
}

body.page-id-39.communio-interior-active
	.communio-interior-section {
	padding-block: clamp(3.25rem, 5.5vw, 5.25rem);
}

body.page-id-39.communio-interior-active
	.communio-interior-masthead + .communio-interior-section {
	padding-bottom: clamp(3.125rem, 5.1vw, 4.875rem);
}

body.page-id-39.communio-interior-active
	.communio-interior-masthead + .communio-interior-section + .communio-interior-section {
	padding-block: clamp(3.125rem, 5.1vw, 4.875rem);
}

body.page-id-39.communio-interior-active
	.communio-interior > .communio-interior-section:last-child {
	padding-top: clamp(3.125rem, 5.1vw, 4.875rem);
	padding-bottom: clamp(3rem, 4.9vw, 4.75rem);
}

body.page-id-39.communio-interior-active
	.communio-interior-action
	.communio-interior-actions.wp-block-buttons {
	justify-content: center;
}

body.page-id-39.communio-interior-active.communio-site-presentation--navy
	.communio-interior-action
	.communio-interior-actions
	.wp-block-button__link {
	border-color: var(--communio-site-reading-heading, #102b3a);
	background: var(--communio-site-reading-heading, #102b3a);
	color: var(--communio-site-reading, #faf7f0);
}

body.page-id-39.communio-interior-active.communio-site-presentation--navy
	.communio-interior-action
	.communio-interior-actions
	.wp-block-button__link:hover {
	border-color: var(--communio-site-reading-accent, #8b642b);
	background: var(--communio-site-feature, #173b4a);
	color: var(--communio-site-reading, #faf7f0);
}

body.page-id-39.communio-interior-active.communio-site-presentation--navy
	.communio-interior-action
	.communio-interior-actions
	.wp-block-button__link:focus-visible {
	outline: 1px solid var(--communio-site-reading-accent, #8b642b);
	outline-offset: 2px;
	box-shadow: none;
}

body.page-id-39.communio-interior-active.communio-site-presentation--navy
	.communio-interior-action
	.communio-interior-actions
	.wp-block-button__link:active {
	transform: translateY(1px);
	border-color: var(--communio-site-reading-heading, #102b3a);
	background: var(--communio-site-feature-deep, #0b2632);
	color: var(--communio-site-reading, #faf7f0);
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.22);
}

body.page-id-39.communio-interior-active.communio-site-presentation > #page {
	flex-grow: 0;
}

/* Compact Browse by Author index */
.communio-author-browser .communio-author-index {
	display: block;
}

.communio-author-browser .communio-author-index__section,
.communio-author-browser .communio-author-index__group {
	padding: 1rem 0;
	background: transparent;
	border: 0;
	border-top: 1px solid rgba(0, 0, 0, 0.1);
}

.communio-author-browser .communio-author-index h2,
.communio-author-browser .communio-author-index__letter {
	margin: 0 0 0.65rem;
	color: #8a5a2b;
	font-family: var(--communio-font-utility);
	font-size: 1.45rem;
	line-height: 1;
}

.communio-author-browser .communio-author-index__list {
	columns: 4 180px;
	column-gap: 2.25rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.communio-author-browser .communio-author-index__list li,
.communio-author-browser .communio-author-index__item {
	break-inside: avoid;
	margin: 0 0 0.32rem;
	line-height: 1.3;
}

.communio-author-browser .communio-author-index__list a {
	color: inherit;
	text-decoration: none;
}

.communio-author-browser .communio-author-index__list a:hover,
.communio-author-browser .communio-author-index__list a:focus {
	text-decoration: underline;
	text-decoration-thickness: 0.06em;
	text-underline-offset: 0.16em;
}

@media (max-width: 700px) {
	.communio-issue-search {
		display: block;
	}

	.communio-issue-search input[type="search"],
	.communio-issue-search button {
		width: 100%;
	}

	.communio-issue-search button {
		margin-top: 0.5rem;
	}

	.communio-author-browser .communio-author-index__list {
		columns: 2 150px;
	}
}

/* Sitewide announcement */
.communio-site-announcement {
	box-sizing: border-box;
	width: 100%;
	background: var(--communio-color-navy, #102b3a);
	color: #f8f2e8;
	font-family: var(--communio-font-utility, "Source Sans 3", sans-serif);
}

.communio-site-announcement__inner {
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: min(75rem, 100%);
	margin: 0 auto;
	padding: 0.65rem 2.5rem;
	gap: 0.9rem;
	font-size: 0.95rem;
	line-height: 1.4;
	text-align: center;
}

.communio-site-announcement__copy {
	min-width: 0;
}

.communio-site-announcement__headline {
	margin: 0 0 0.08rem;
	color: var(--communio-color-accent-bright, #e2c17c);
	font-family: var(--communio-font-display, "Cormorant Garamond", serif);
	font-size: clamp(1.05rem, 1.6vw, 1.25rem);
	font-weight: 600;
	line-height: 1.15;
}

.communio-site-announcement__message {
	margin: 0;
	color: inherit;
	overflow-wrap: anywhere;
}

.communio-site-announcement__media {
	flex: 0 1 auto;
	max-width: 140px;
	display: flex;
	align-items: center;
}

.communio-site-announcement__image {
	display: block;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 84px;
	object-fit: contain;
}

.communio-site-announcement--with-image .communio-site-announcement__inner {
	justify-content: flex-start;
	padding-block: 0.55rem;
	text-align: left;
}

.communio-site-announcement--with-image .communio-site-announcement__copy {
	flex: 1 1 auto;
}

.communio-site-announcement__link {
	flex: 0 0 auto;
	min-height: 2.25rem;
	display: inline-flex;
	align-items: center;
	color: var(--communio-color-accent-bright, #e2c17c);
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-decoration: underline;
	text-decoration-thickness: 0.08em;
	text-underline-offset: 0.2em;
	text-transform: uppercase;
}

.communio-site-announcement__link:hover,
.communio-site-announcement__link:focus {
	color: #fff;
}

.communio-site-announcement__link:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 3px;
}

/* Announcement rich-layout desktop type refinement. */
@media (min-width: 601px) {
	.communio-site-announcement--with-image .communio-site-announcement__headline {
		font-size: clamp(1.15rem, 1.7vw, 1.35rem);
	}

	.communio-site-announcement--with-image .communio-site-announcement__message {
		font-size: 1.0125rem;
	}
}

@media (max-width: 600px) {
	.communio-site-announcement__inner {
		align-items: center;
		padding: 0.65rem 1.25rem;
		gap: 0.25rem;
		flex-direction: column;
	}

	.communio-site-announcement--with-image .communio-site-announcement__inner {
		display: grid;
		grid-template-columns: auto minmax(0, 1fr);
		padding: 0.6rem 1rem;
		column-gap: 0.75rem;
		row-gap: 0.35rem;
	}

	.communio-site-announcement--with-image .communio-site-announcement__media {
		grid-row: 1 / span 2;
		max-width: 120px;
	}

	.communio-site-announcement--with-image .communio-site-announcement__image {
		max-height: 72px;
	}

	.communio-site-announcement--with-image .communio-site-announcement__link {
		grid-column: 2;
		justify-self: start;
	}

	.communio-site-announcement__link {
		min-height: 2.75rem;
	}
}

/* Global Communio header system */
body.communio-global-header-enabled .site-header,
body.communio-global-header-enabled #site-navigation,
body.communio-global-header-enabled #mobile-header {
	display: none !important;
}

.communio-global-header {
	position: relative;
	z-index: 50;
	background: #fff;
	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
	font-family: var(--communio-font-utility);
}

/* 1200px structural frame with 40px desktop gutters, matching the homepage 1120px visible-content frame. */
.communio-global-header__inner {
	box-sizing: border-box;
	width: min(75rem, 100%);
	max-width: none;
	margin: 0 auto;
	padding: 1.05rem 2.5rem;
}

.communio-global-header__brand {
	display: inline-block;
	flex: 0 0 auto;
	color: #16283f;
	text-decoration: none;
	line-height: 1;
}

.communio-global-header__brand:hover,
.communio-global-header__brand:focus {
	color: #16283f;
	text-decoration: none;
}

.communio-global-header__brand-title {
	display: block;
	font-family: var(--communio-font-display);
	font-size: clamp(2rem, 3.4vw, 3.25rem);
	line-height: 0.9;
	letter-spacing: 0.12em;
}

.communio-global-header__brand-subtitle {
	display: block;
	margin-top: 0.35rem;
	font-size: 0.72rem;
	line-height: 1;
	letter-spacing: 0.24em;
	text-transform: uppercase;
	color: #2f3b4d;
}

.communio-global-header__navigation {
	min-width: 0;
}

.communio-global-header__nav {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	flex-wrap: nowrap;
	gap: 1rem;
	font-size: 0.92rem;
}

.communio-global-header__mobile-menu {
	display: none;
}

.communio-global-header__nav--wide {
	align-items: baseline;
}

.communio-global-header__link {
	color: #1f2b3a;
	text-decoration: none;
	white-space: nowrap;
}

.communio-global-header__link:hover,
.communio-global-header__link:focus {
	color: #1f2b3a;
	text-decoration: underline;
	text-decoration-thickness: 0.06em;
	text-underline-offset: 0.18em;
}

.communio-global-header__link--submissions {
	font-weight: 600;
	color: #8a5a2b;
}

.communio-global-header__link--submissions:hover,
.communio-global-header__link--submissions:focus {
	color: #8a5a2b;
}

.communio-global-header__link--cta {
	margin-left: 0.2rem;
	text-transform: uppercase;
	letter-spacing: 0.16em;
	font-size: 0.78rem;
	font-weight: 700;
}

.communio-global-header__checkout-label {
	text-transform: uppercase;
	letter-spacing: 0.14em;
	font-size: 0.78rem;
	font-weight: 700;
	color: #386333;
}

.communio-global-header--checkout .communio-global-header__inner {
	padding-top: 0.95rem;
	padding-bottom: 0.95rem;
}

.communio-global-header--checkout .communio-global-header__brand-title {
	font-size: clamp(1.65rem, 2.6vw, 2.45rem);
}

.communio-global-header--checkout .communio-global-header__brand-subtitle {
	font-size: 0.65rem;
}

.communio-global-header--checkout .communio-global-header__nav {
	gap: 0.9rem;
	font-size: 0.86rem;
}

@media (min-width: 1025px) {
	.communio-global-header__inner {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: clamp(1.25rem, 2vw, 2rem);
	}

	.communio-global-header__navigation {
		display: flex;
		flex: 1 1 auto;
		align-items: center;
		justify-content: flex-end;
		gap: clamp(0.8rem, 1.4vw, 1.35rem);
	}

	.communio-global-header__nav--wide {
		gap: clamp(0.58rem, 1.05vw, 1rem);
	}
}

@media (min-width: 721px) and (max-width: 1024px) {
	.communio-global-header__inner {
		padding: 0.9rem 1.5rem 1rem;
	}

	.communio-global-header__brand-subtitle {
		font-size: 0.6rem;
		letter-spacing: 0.1em;
	}

	.communio-global-header__navigation {
		display: flex;
		align-items: center;
		gap: 0.8rem;
		margin-top: 0.8rem;
	}

	.communio-global-header__nav--wide {
		flex: 1 1 auto;
		justify-content: flex-start;
		gap: clamp(0.48rem, 1.35vw, 0.85rem);
		font-size: clamp(0.76rem, 1.45vw, 0.86rem);
	}

	.communio-global-header__link--cta {
		margin-left: 0;
		font-size: 0.7rem;
	}
}

@media (max-width: 720px) {
	.communio-global-header__inner {
		position: relative;
		padding: 0.72rem 1rem 0.78rem;
	}

	.communio-global-header__brand {
		max-width: calc(100% - 5.5rem);
	}

	.communio-global-header__brand-title {
		font-size: 1.85rem;
		letter-spacing: 0.1em;
	}

	.communio-global-header__brand-subtitle {
		margin-top: 0.25rem;
		font-size: 0.6rem;
		letter-spacing: 0.05em;
	}

	.communio-global-header__navigation {
		display: block;
	}

	.communio-global-header__nav--wide {
		display: none;
	}

	.communio-global-header__mobile-menu {
		display: block;
	}

	.communio-global-header__mobile-menu:not([open]) > .communio-global-header__nav--mobile {
		display: none;
	}

	.communio-global-header__menu-summary {
		position: absolute;
		top: 0.62rem;
		right: 1rem;
		box-sizing: border-box;
		min-height: 2.75rem;
		padding: 0.65rem 0.75rem;
		display: inline-flex;
		align-items: center;
		gap: 0.5rem;
		cursor: pointer;
		list-style: none;
		color: #1f2b3a;
		font-size: 0.82rem;
		font-weight: 700;
		letter-spacing: 0.08em;
		text-transform: uppercase;
	}

	.communio-global-header__menu-summary::-webkit-details-marker {
		display: none;
	}

	.communio-global-header__menu-indicator {
		position: relative;
		width: 0.75rem;
		height: 0.75rem;
	}

	.communio-global-header__menu-indicator::before,
	.communio-global-header__menu-indicator::after {
		content: "";
		position: absolute;
		top: 50%;
		left: 0;
		width: 100%;
		height: 1px;
		background: currentColor;
		transform: translateY(-50%);
	}

	.communio-global-header__menu-indicator::after {
		transform: translateY(-50%) rotate(90deg);
	}

	.communio-global-header__mobile-menu[open] .communio-global-header__menu-indicator::after {
		transform: translateY(-50%) rotate(0);
	}

	.communio-global-header__nav--mobile {
		display: grid;
		grid-template-columns: 1fr;
		gap: 0;
		margin-top: 0.75rem;
		padding-top: 0.35rem;
		border-top: 1px solid rgba(0, 0, 0, 0.1);
		font-size: 0.9rem;
	}

	.communio-global-header__nav--mobile .communio-global-header__link {
		padding: 0.72rem 0;
	}

	.communio-global-header__nav--mobile .communio-global-header__link--cta {
		margin-left: 0;
		font-size: 0.78rem;
	}

	.communio-global-header__checkout-label {
		margin-top: 0.65rem;
	}

	.communio-global-header--checkout .communio-global-header__brand-title {
		font-size: 1.75rem;
	}

	.communio-global-header--checkout .communio-global-header__nav {
		font-size: 0.9rem;
	}
}

/* Header search should read as a real navigation item, not an empty search query icon. */
.communio-global-header__link--search-text {
	color: #1f2b3a;
	text-decoration: none;
	white-space: nowrap;
}

/* Checkout status label: make it visually distinct from navigation links. */
.communio-global-header__checkout-label {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.35rem 0.6rem;
	border: 1px solid rgba(56, 99, 51, 0.28);
	border-radius: 999px;
	background: rgba(56, 99, 51, 0.06);
	color: #386333;
	pointer-events: none;
}

.communio-global-header__checkout-label::before {
	content: "✓";
	font-size: 0.8em;
}

/* Communio search page */
.communio-search-page {
	max-width: 760px;
	margin-top: 1.5rem;
}

.communio-search-page__label {
	display: block;
	margin-bottom: 0.55rem;
	text-transform: uppercase;
	letter-spacing: 0.12em;
	font-size: 0.78rem;
	font-weight: 700;
	color: #8a5a2b;
}

.communio-search-page__controls {
	display: flex;
	gap: 0.5rem;
}

.communio-search-page__controls input[type="search"] {
	flex: 1 1 auto;
	min-width: 0;
	padding: 0.85rem 0.95rem;
	border: 1px solid rgba(0, 0, 0, 0.18);
	background: #fff;
}

.communio-search-page__controls button {
	padding: 0.85rem 1.1rem;
	border: 1px solid #1f2b3a;
	background: #1f2b3a;
	color: #fff;
	font-weight: 700;
	cursor: pointer;
}

@media (max-width: 600px) {
	.communio-search-page__controls {
		display: block;
	}

	.communio-search-page__controls input[type="search"],
	.communio-search-page__controls button {
		width: 100%;
	}

	.communio-search-page__controls button {
		margin-top: 0.5rem;
	}
}

/* Communio WooCommerce polish */
.woocommerce-cart .entry-content,
.woocommerce-checkout .entry-content,
.woocommerce-account .entry-content {
	font-size: 1rem;
}

.woocommerce-cart .inside-article,
.woocommerce-checkout .inside-article,
.woocommerce-account .inside-article {
	background: #fff;
	border: 1px solid rgba(0, 0, 0, 0.08);
}

.woocommerce-cart h1.entry-title,
.woocommerce-checkout h1.entry-title,
.woocommerce-account h1.entry-title,
.woocommerce-cart h1,
.woocommerce-checkout h1,
.woocommerce-account h1 {
	font-family: var(--communio-font-utility);
	color: #1f2b3a;
}

.woocommerce table.shop_table {
	border-color: rgba(0, 0, 0, 0.14);
	border-radius: 0;
}

.woocommerce table.shop_table th {
	background: #faf8f4;
	color: #1f2b3a;
	font-weight: 700;
}

.woocommerce table.shop_table td,
.woocommerce table.shop_table th {
	border-color: rgba(0, 0, 0, 0.12);
}

.woocommerce table.shop_table a {
	color: #1f2b3a;
	text-decoration: underline;
	text-decoration-thickness: 0.055em;
	text-underline-offset: 0.16em;
}

.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-error {
	background: #faf8f4;
	border-top-color: #386333 !important;
	color: #1f2b3a;
	box-shadow: none;
	outline: none !important;
}

.woocommerce .woocommerce-message::before,
.woocommerce .woocommerce-info::before {
	color: #386333;
}

.woocommerce .woocommerce-error {
	border-top-color: #8a5a2b !important;
}

.woocommerce .woocommerce-error::before {
	color: #8a5a2b;
}

.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #respond input#submit.alt,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
	border-radius: 0 !important;
	background: #2f6637 !important;
	color: #fff !important;
	border: 1px solid #2f6637 !important;
	font-weight: 700 !important;
	text-decoration: none !important;
	box-shadow: none !important;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover,
.woocommerce #respond input#submit.alt:hover,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
	background: #1f2b3a !important;
	border-color: #1f2b3a !important;
	color: #fff !important;
}

.woocommerce button.button:disabled,
.woocommerce button.button:disabled[disabled],
.woocommerce input.button:disabled,
.woocommerce input.button:disabled[disabled] {
	background: #e7e2da !important;
	border-color: #e7e2da !important;
	color: #777 !important;
	opacity: 1 !important;
}

.woocommerce-cart table.cart td.actions .coupon .input-text,
.woocommerce input.input-text,
.woocommerce textarea,
.woocommerce select {
	border-radius: 0;
	border: 1px solid rgba(0, 0, 0, 0.18);
	background: #fff;
	color: #1f2b3a;
	box-shadow: none;
}

/* WooCommerce's auto-height SelectWoo collapses when the state value is empty.
 * Keep one text line plus its existing .5em vertical padding, even when blank.
 */
.woocommerce-cart .woocommerce-shipping-calculator .select2-container .select2-selection--single .select2-selection__rendered {
	min-height: 2.25em;
	padding-right: 2em;
}

.woocommerce-cart .cart-collaterals .cart_totals,
.woocommerce-checkout-review-order,
.woocommerce-checkout #payment {
	background: #fff;
	border: 1px solid rgba(0, 0, 0, 0.12);
}

.woocommerce-cart .cart-collaterals .cart_totals h2 {
	font-family: var(--communio-font-utility);
	color: #1f2b3a;
	padding: 0.75rem 1rem;
}

.woocommerce .communio-shipping-rate-breakdown {
    display: block;
    margin-top: 0.3rem;
    color: #4b5560;
    font-size: 0.9em;
    line-height: 1.4;
}

/* Keep the Checkout Block's current total prominent without treating it as a heading. */
.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
    font-size: 1.05rem;
    font-weight: 600;
}

.woocommerce-cart .product-remove a.remove {
	color: #8a2d2d !important;
}

.woocommerce-cart .product-remove a.remove:hover {
	background: #8a2d2d !important;
	color: #fff !important;
}

/* Header cart link */
.communio-global-header__link--cart {
	font-weight: 700;
}

/* Keep branded express-payment buttons intact, but space them cleanly. */
.woocommerce .wc-stripe-payment-request-button-separator,
.woocommerce .wc-stripe-payment-request-wrapper,
.woocommerce .express-payment-methods {
	margin-top: 0.75rem;
}

/* Checkout/cart spacing refinement */
.woocommerce-checkout .site-main,
.woocommerce-cart .site-main {
	max-width: 1240px;
	margin-left: auto;
	margin-right: auto;
	padding-left: clamp(1rem, 3vw, 2rem);
	padding-right: clamp(1rem, 3vw, 2rem);
}

.woocommerce-checkout .inside-article,
.woocommerce-cart .inside-article {
	padding: clamp(1.75rem, 4vw, 3rem) !important;
}

.woocommerce-checkout .entry-header,
.woocommerce-cart .entry-header {
	margin-bottom: clamp(1.5rem, 3vw, 2.25rem);
}

.woocommerce-checkout .entry-title,
.woocommerce-cart .entry-title {
	margin-bottom: 0;
}

/* Keep checkout content from hugging the card edge. */
.woocommerce-checkout .entry-content > .wp-block-woocommerce-checkout,
.woocommerce-cart .entry-content > .wp-block-woocommerce-cart {
	margin-top: 1rem;
}

/* Express checkout containment. Keep wallet-brand buttons intact, but reduce the generic WooCommerce feel around them. */
.woocommerce-checkout .wc-block-components-express-payment,
.woocommerce-checkout .wc-block-components-express-payment__content,
.woocommerce-cart .wc-block-components-express-payment,
.woocommerce-cart .wc-block-components-express-payment__content {
	background: #faf8f4;
	border-color: rgba(0, 0, 0, 0.12);
}

.woocommerce-checkout .wc-block-components-title,
.woocommerce-checkout .wc-block-components-checkout-step__title,
.woocommerce-checkout .wc-block-components-order-summary__title,
.woocommerce-cart .wc-block-cart__totals-title {
	color: #1f2b3a;
}

/* Homepage and global cart links */
.communio-home-cart-link,
.communio-global-header__link--cart {
	font-weight: 700;
}

.communio-home-cart-link {
	color: inherit;
	text-decoration: none;
}

.communio-home-cart-link:hover,
.communio-home-cart-link:focus {
	text-decoration: underline;
	text-decoration-thickness: 0.06em;
	text-underline-offset: 0.18em;
}

/* Slightly soften WooCommerce block outlines without removing clarity. */
.woocommerce-checkout .wc-block-components-text-input input,
.woocommerce-checkout .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input,
.woocommerce-checkout .wc-block-components-form .wc-block-components-text-input input,
.woocommerce-checkout .wc-block-components-address-form__address_2-toggle,
.woocommerce-cart .wc-block-components-text-input input {
	border-color: rgba(0, 0, 0, 0.22) !important;
	border-radius: 0 !important;
}

.woocommerce-checkout .wc-block-components-button,
.woocommerce-cart .wc-block-components-button {
	border-radius: 0 !important;
}

/* Canonical global footer shell */
.site-footer {
	box-sizing: border-box;
	width: 100%;
	max-width: none;
	margin: 0;
	background: var(--communio-color-navy);
}

.communio-global-footer {
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	background: var(--communio-color-navy);
	color: var(--communio-color-footer-muted);
	font-family: var(--communio-font-utility);
	text-align: left;
}

.communio-global-footer__motto-band {
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	padding: clamp(1.5rem, 2.5vw, 2rem) clamp(1.5rem, 4vw, 3rem);
}

.communio-global-footer__motto-row {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: center;
	gap: clamp(1.25rem, 3vw, 2.5rem);
	box-sizing: border-box;
	width: 100%;
	max-width: var(--communio-measure-utility);
	margin: 0 auto;
}

.communio-global-footer__motto {
	flex: 0 1 auto;
	margin: 0;
	font-family: var(--communio-font-utility);
	font-size: clamp(0.82rem, 1.2vw, 0.9rem);
	font-style: normal;
	font-weight: 600;
	line-height: 1.45;
	letter-spacing: 0.18em;
	text-align: center;
	text-transform: uppercase;
	white-space: nowrap;
	color: var(--communio-color-accent-muted);
}

.communio-global-footer__motto-rule {
	flex: 1 1 7rem;
	box-sizing: border-box;
	width: auto;
	max-width: 8.5rem;
	height: 0;
	border-top: 1px solid var(--communio-color-accent-rule-medium);
}

.communio-global-footer__utility {
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	padding: 0 clamp(1.25rem, 4vw, 3rem) clamp(0.9rem, 1.4vw, 1.15rem);
}

.communio-global-footer__utility-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
	align-items: center;
	gap: clamp(1rem, 2.5vw, 2rem);
	box-sizing: border-box;
	width: 100%;
	max-width: var(--communio-measure-utility);
	margin: 0 auto;
	padding-top: clamp(0.9rem, 1.4vw, 1.15rem);
	border-top: 1px solid var(--communio-color-accent-rule-subtle);
}

.communio-global-footer__copyright {
	justify-self: start;
	margin: 0;
	font-family: var(--communio-font-utility);
	font-size: 0.75rem;
	font-weight: 400;
	line-height: 1.4;
	white-space: nowrap;
	color: var(--communio-color-footer-muted);
}

.communio-footer-navigation {
	justify-self: center;
	min-width: 0;
	margin: 0;
	font-family: var(--communio-font-utility);
	font-size: 0.75rem;
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: 0.055em;
	color: var(--communio-color-footer-muted);
}

.communio-footer-navigation__items {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.45rem 1rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.communio-footer-navigation .wp-block-navigation-item {
	margin: 0;
	padding: 0;
}

.communio-footer-navigation .wp-block-navigation-item__content {
	padding: 0.15rem 0;
	color: inherit;
	text-decoration: none;
}

.communio-footer-navigation .wp-block-navigation-item__content:hover,
.communio-footer-navigation .wp-block-navigation-item__content:focus {
	color: var(--communio-color-accent-bright);
	text-decoration: none;
}

.communio-footer-navigation .wp-block-navigation-item__content:focus-visible {
	outline: 2px solid var(--communio-color-accent-bright);
	outline-offset: 3px;
}

/* Identify the existing Donate destination without turning utility links into buttons. */

.communio-footer-navigation a[href$="/donate/"] {
	padding: 0.4rem 0.7rem;
	border: 1px solid var(--communio-color-accent-rule-medium);
	color: var(--communio-color-accent-bright);
}

.communio-footer-navigation a[href$="/donate/"]:hover,
.communio-footer-navigation a[href$="/donate/"]:focus {
	border-color: var(--communio-color-accent-bright);
	color: var(--communio-color-navy);
	background: var(--communio-color-accent-bright);
}

.communio-footer-navigation a[href$="/donate/"]:focus-visible {
	outline: 2px solid var(--communio-color-accent-bright);
	outline-offset: 3px;
}

.communio-global-footer__social {
	display: flex;
	justify-self: end;
	align-items: center;
	gap: 0.45rem;
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 17px;
	color: var(--communio-color-footer-muted);
}

.communio-global-footer__social li {
	margin: 0;
	padding: 0;
}

.communio-global-footer__social a {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0.2em;
	color: inherit;
	text-decoration: none;
}

.communio-global-footer__social svg {
	display: block;
	width: 1em;
	height: 1em;
}

.communio-global-footer__social a:hover,
.communio-global-footer__social a:focus {
	color: var(--communio-color-accent-bright);
}

.communio-global-footer__social a:focus-visible {
	outline: 2px solid var(--communio-color-accent-bright);
	outline-offset: 3px;
}

@media (max-width: 900px) {
	.communio-global-footer__utility-row {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		gap: 1rem 1.5rem;
	}

	.communio-global-footer__copyright {
		flex: 0 1 auto;
	}

	.communio-footer-navigation {
		flex: 1 1 26rem;
	}

	.communio-global-footer__social {
		flex: 0 0 auto;
	}
}

@media (max-width: 760px) {
	.communio-global-footer__motto-band {
		padding: 1.5rem 1.25rem;
	}

	.communio-global-footer__motto-row {
		gap: clamp(0.75rem, 3vw, 1.25rem);
	}

	.communio-global-footer__motto {
		letter-spacing: 0.15em;
	}

	.communio-global-footer__motto-rule {
		flex-basis: 3rem;
		max-width: 5rem;
	}
}

@media (max-width: 600px) {
	.communio-global-footer__utility {
		padding: 0 1.25rem 1.2rem;
	}

	.communio-global-footer__utility-row {
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 0.8rem;
		padding-top: 1.2rem;
		text-align: center;
	}

	.communio-global-footer__copyright,
	.communio-footer-navigation,
	.communio-global-footer__social {
		flex: 0 1 auto;
		justify-self: center;
	}

	.communio-footer-navigation {
		width: 100%;
	}

	.communio-footer-navigation__items {
		flex-direction: row;
		flex-wrap: wrap;
		align-items: center;
		justify-content: center;
		gap: 0.55rem 1rem;
	}

	.communio-global-footer__social {
		justify-content: center;
	}
}

@media (max-width: 520px) {
	.communio-global-footer__motto-band {
		padding: 1.35rem 1.25rem;
	}

	.communio-global-footer__motto-row {
		gap: 0;
	}

	.communio-global-footer__motto {
		white-space: normal;
	}

	.communio-global-footer__motto-rule {
		display: none;
	}
}

/* Polished single article pages */
.communio-single-article-page {
	max-width: 1180px;
	margin: 0 auto;
	padding: clamp(2rem, 5vw, 4rem) clamp(1.25rem, 4vw, 2rem);
}

.communio-single-article {
	background: #fff;
	border: 1px solid rgba(0, 0, 0, 0.08);
	font-family: var(--communio-font-utility);
}

.communio-single-article__header {
	padding: clamp(1.75rem, 4vw, 3rem);
	background: #faf8f4;
	border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}

.communio-single-article__kicker {
	margin: 0 0 0.7rem;
	text-transform: uppercase;
	letter-spacing: 0.14em;
	font-size: 0.78rem;
	font-weight: 700;
	color: #8a5a2b;
}

.communio-single-article__title {
	max-width: 960px;
	margin: 0;
	font-family: var(--communio-font-display);
	font-size: clamp(2.1rem, 5vw, 4.4rem);
	line-height: 1.05;
	color: #1f2b3a;
}

.communio-single-article__subtitle {
	max-width: 820px;
	margin: 1rem 0 0;
	font-family: var(--communio-font-reading);
	font-size: clamp(1.2rem, 2.4vw, 1.65rem);
	font-style: italic;
	line-height: 1.25;
	color: #555;
}

.communio-single-article__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem 0.75rem;
	margin-top: 1.2rem;
	color: #555;
	font-size: 0.98rem;
}

.communio-single-article__meta span:not(:last-child)::after {
	content: "·";
	margin-left: 0.75rem;
	color: #9a9a9a;
}

.communio-single-article__meta a {
	color: inherit;
	text-decoration: underline;
	text-decoration-thickness: 0.055em;
	text-underline-offset: 0.16em;
}

.communio-single-article__topics {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
	margin-top: 1.1rem;
}

.communio-single-article__topics a {
	display: inline-block;
	padding: 0.32rem 0.55rem;
	border: 1px solid rgba(56, 99, 51, 0.22);
	background: rgba(56, 99, 51, 0.055);
	color: #386333;
	font-size: 0.82rem;
	line-height: 1;
	text-decoration: none;
}

.communio-single-article__topics a:hover,
.communio-single-article__topics a:focus {
	background: rgba(56, 99, 51, 0.1);
	text-decoration: underline;
	text-decoration-thickness: 0.055em;
	text-underline-offset: 0.14em;
}

.communio-single-article__body {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 280px;
	gap: clamp(1.5rem, 4vw, 3rem);
	padding: clamp(1.75rem, 4vw, 3rem);
}

.communio-single-article__content {
	min-width: 0;
	max-width: 780px;
}

.communio-single-article__summary {
	margin-bottom: 1.75rem;
	padding: 1.1rem 1.25rem;
	border-left: 4px solid #8a6a32;
	background: #fbfaf7;
	font-family: var(--communio-font-reading);
	font-size: 1.15rem;
	line-height: 1.45;
	color: #1f2b3a;
}

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

.communio-single-article__content .entry-content {
	font-family: var(--communio-font-reading);
	font-size: 1.125rem;
	line-height: 1.72;
	color: #222;
}

.communio-single-article__content .entry-content > * {
	max-width: 780px;
}

.communio-single-article__content .entry-content p {
	margin-bottom: 1.15rem;
}

.communio-single-article__access {
	order: 2;
	align-self: start;
	padding: 1.25rem;
	background: #fff;
	border: 1px solid rgba(0, 0, 0, 0.11);
}

.communio-single-article__access h2 {
	margin: 0 0 0.6rem;
	font-family: var(--communio-font-utility);
	font-size: 1.35rem;
	line-height: 1.15;
	color: #1f2b3a;
}

.communio-single-article__access p {
	margin-bottom: 1rem;
	color: #555;
	font-size: 0.95rem;
	line-height: 1.45;
}

.communio-single-article__button {
	display: block;
	width: 100%;
	padding: 0.75rem 0.9rem;
	background: #2f6637;
	border: 1px solid #2f6637;
	color: #fff;
	text-align: center;
	text-decoration: none;
	font-weight: 700;
}

.communio-single-article__button:hover,
.communio-single-article__button:focus {
	background: #1f2b3a;
	border-color: #1f2b3a;
	color: #fff;
}

.communio-single-article__secondary-link {
	display: inline-block;
	margin-top: 0.9rem;
	color: #1f2b3a;
	text-decoration: underline;
	text-decoration-thickness: 0.055em;
	text-underline-offset: 0.16em;
}

@media (max-width: 880px) {
	.communio-single-article__body {
		grid-template-columns: 1fr;
	}

	.communio-single-article__access {
		order: -1;
	}
}

@media (max-width: 600px) {
	.communio-single-article-page {
		padding-left: 1rem;
		padding-right: 1rem;
	}

	.communio-single-article__header,
	.communio-single-article__body {
		padding: 1.35rem;
	}

	.communio-single-article__meta {
		display: block;
	}

	.communio-single-article__meta span {
		display: block;
		margin-bottom: 0.35rem;
	}

	.communio-single-article__meta span:not(:last-child)::after {
		content: "";
		margin-left: 0;
	}
}

/* Polished single issue landing pages */
.communio-single-issue-page {
	max-width: 1180px;
	margin: 0 auto;
	padding: clamp(2rem, 5vw, 4rem) clamp(1.25rem, 4vw, 2rem);
}

.communio-single-issue {
	background: #fff;
	border: 1px solid rgba(0, 0, 0, 0.08);
	font-family: var(--communio-font-utility);
}

.communio-single-issue__hero {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 300px;
	gap: clamp(1.5rem, 4vw, 3rem);
	padding: clamp(1.75rem, 4vw, 3rem);
	background: #faf8f4;
	border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}

.communio-single-issue__kicker {
	margin: 0 0 0.7rem;
	text-transform: uppercase;
	letter-spacing: 0.14em;
	font-size: 0.78rem;
	font-weight: 700;
	color: #8a5a2b;
}

.communio-single-issue__title {
	margin: 0;
	font-family: var(--communio-font-display);
	font-size: clamp(3rem, 7vw, 6rem);
	line-height: 0.96;
	color: #1f2b3a;
}

.communio-single-issue__meta {
	margin: 1rem 0 0;
	color: #1f2b3a;
	font-size: 1.05rem;
}

.communio-single-issue__deck {
	max-width: 700px;
	margin: 1.25rem 0 0;
	padding-top: 1.25rem;
	border-top: 1px solid rgba(138, 106, 50, 0.38);
	font-family: var(--communio-font-reading);
	font-size: 1.3rem;
	font-style: italic;
	line-height: 1.3;
	color: #37465a;
}

.communio-single-issue__hero-links {
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem 1rem;
	margin-top: 1.4rem;
}

.communio-single-issue__hero-links a,
.communio-single-issue__pdf,
.communio-single-issue__article-actions a {
	color: #1f2b3a;
	text-decoration: underline;
	text-decoration-thickness: 0.055em;
	text-underline-offset: 0.16em;
}

.communio-single-issue__purchase {
	align-self: start;
	padding: 1.25rem;
	background: #fff;
	border: 1px solid rgba(0, 0, 0, 0.11);
}

.communio-single-issue__purchase h2 {
	margin: 0 0 0.65rem;
	font-family: var(--communio-font-utility);
	font-size: 1.35rem;
	line-height: 1.15;
	color: #1f2b3a;
}

.communio-single-issue__price {
	margin: 0 0 1rem;
	font-size: 1.1rem;
	font-weight: 700;
	color: #1f2b3a;
}

.communio-single-issue__button,
.communio-single-issue__secondary-button {
	display: block;
	width: 100%;
	padding: 0.75rem 0.9rem;
	text-align: center;
	text-decoration: none;
	font-weight: 700;
}

.communio-single-issue__button {
	background: #2f6637;
	border: 1px solid #2f6637;
	color: #fff;
}

.communio-single-issue__button:hover,
.communio-single-issue__button:focus {
	background: #1f2b3a;
	border-color: #1f2b3a;
	color: #fff;
}

.communio-single-issue__secondary-button {
	margin-top: 0.65rem;
	background: transparent;
	border: 1px solid rgba(47, 102, 55, 0.7);
	color: #1f2b3a;
}

.communio-single-issue__secondary-button:hover,
.communio-single-issue__secondary-button:focus {
	background: rgba(47, 102, 55, 0.08);
	color: #1f2b3a;
}

.communio-single-issue__pdf {
	display: inline-block;
	margin-top: 0.85rem;
}

.communio-single-issue__content {
	padding: clamp(1.75rem, 4vw, 3rem);
	border-bottom: 1px solid rgba(0, 0, 0, 0.08);
	font-family: var(--communio-font-reading);
	font-size: 1.125rem;
	line-height: 1.72;
}

.communio-single-issue__toc {
	padding: clamp(1.75rem, 4vw, 3rem);
}

.communio-single-issue__toc-header {
	margin-bottom: 1.4rem;
}

.communio-single-issue__toc h2 {
	margin: 0;
	font-family: var(--communio-font-display);
	font-size: clamp(2rem, 4vw, 3.2rem);
	line-height: 1.05;
	color: #1f2b3a;
}

.communio-single-issue__article-list {
	border-top: 1px solid rgba(0, 0, 0, 0.1);
}

.communio-single-issue__article {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 150px;
	gap: 1.25rem;
	padding: 1.35rem 0;
	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.communio-single-issue__article h3 {
	margin: 0;
	font-family: var(--communio-font-display);
	font-size: clamp(1.35rem, 2.5vw, 1.9rem);
	line-height: 1.15;
	color: #1f2b3a;
}

.communio-single-issue__article h3 a {
	color: inherit;
	text-decoration: none;
}

.communio-single-issue__article h3 a:hover,
.communio-single-issue__article h3 a:focus {
	text-decoration: underline;
	text-decoration-thickness: 0.055em;
	text-underline-offset: 0.16em;
}

.communio-single-issue__article-author {
	margin: 0.45rem 0 0;
	color: #386333;
	font-family: var(--communio-font-utility);
	font-style: italic;
}

.communio-single-issue__article-author a {
	color: inherit;
	text-decoration: none;
}

.communio-single-issue__article-author a:hover,
.communio-single-issue__article-author a:focus {
	text-decoration: underline;
	text-decoration-thickness: 0.055em;
	text-underline-offset: 0.16em;
}

.communio-single-issue__article-summary {
	max-width: 760px;
	margin-top: 0.75rem;
	color: #4b5563;
	font-family: var(--communio-font-reading);
	font-size: 1.125rem;
	line-height: 1.65;
}

.communio-single-issue__article-summary p:last-child {
	margin-bottom: 0;
}

.communio-single-issue__article-actions {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.45rem;
	font-size: 0.92rem;
}

@media (max-width: 820px) {
	.communio-single-issue__hero,
	.communio-single-issue__article {
		grid-template-columns: 1fr;
	}

	.communio-single-issue__article-actions {
		flex-direction: row;
		flex-wrap: wrap;
	}
}

@media (max-width: 600px) {
	.communio-single-issue-page {
		padding-left: 1rem;
		padding-right: 1rem;
	}

	.communio-single-issue__hero,
	.communio-single-issue__content,
	.communio-single-issue__toc {
		padding: 1.35rem;
	}
}

/* Responsive issue page layout: respond to container width, not only viewport width. */
body.single-communio_issue #primary.communio-single-issue-page {
	width: 100%;
	max-width: min(1240px, calc(100vw - 2rem));
	box-sizing: border-box;
}

body.single-communio_issue .communio-single-issue {
	container-type: inline-size;
}

body.single-communio_issue .communio-single-issue__hero {
	grid-template-columns: minmax(420px, 1fr) minmax(280px, 320px);
	align-items: start;
}

body.single-communio_issue .communio-single-issue__title {
	overflow-wrap: normal;
	word-break: normal;
	hyphens: none;
	font-size: clamp(3rem, 6vw, 5.5rem);
}

body.single-communio_issue .communio-single-issue__article {
	grid-template-columns: minmax(0, 1fr) minmax(120px, 150px);
}

/* Container-query version: works even when zoom/content constraints make the card narrow. */
@container (max-width: 900px) {
	body.single-communio_issue .communio-single-issue__hero {
		grid-template-columns: 1fr;
	}

	body.single-communio_issue .communio-single-issue__purchase {
		max-width: 420px;
	}

	body.single-communio_issue .communio-single-issue__title {
		font-size: clamp(2.75rem, 13cqw, 4.5rem);
	}

	body.single-communio_issue .communio-single-issue__article {
		grid-template-columns: 1fr;
	}

	body.single-communio_issue .communio-single-issue__article-actions {
		flex-direction: row;
		flex-wrap: wrap;
		margin-top: 0.25rem;
	}
}

@container (max-width: 620px) {
	body.single-communio_issue .communio-single-issue__hero,
	body.single-communio_issue .communio-single-issue__toc,
	body.single-communio_issue .communio-single-issue__content {
		padding: 1.35rem;
	}

	body.single-communio_issue .communio-single-issue__title {
		font-size: clamp(2.4rem, 15cqw, 3.4rem);
		line-height: 1.02;
	}

	body.single-communio_issue .communio-single-issue__hero-links {
		display: block;
	}

	body.single-communio_issue .communio-single-issue__hero-links a {
		display: block;
		margin-top: 0.45rem;
	}

	body.single-communio_issue .communio-single-issue__purchase {
		max-width: none;
	}
}

/* Viewport fallback for older browsers without container queries. */
@media (max-width: 980px) {
	body.single-communio_issue .communio-single-issue__hero {
		grid-template-columns: 1fr;
	}

	body.single-communio_issue .communio-single-issue__article {
		grid-template-columns: 1fr;
	}

	body.single-communio_issue .communio-single-issue__article-actions {
		flex-direction: row;
		flex-wrap: wrap;
	}
}

/* Wider author index */
body.post-type-archive-communio_author #primary.communio-author-browser {
	width: 100%;
	max-width: min(1240px, calc(100vw - 2rem));
	margin-left: auto;
	margin-right: auto;
	padding-left: clamp(1rem, 3vw, 2rem);
	padding-right: clamp(1rem, 3vw, 2rem);
	box-sizing: border-box;
	background: var(--communio-site-reading, #fbfaf7);
	color: var(--communio-site-reading-text, #292622);
}

body.post-type-archive-communio_author
	.communio-author-browser
	.communio-browse-header h1 {
	color: var(--communio-site-reading-heading, #102b3a);
}

body.post-type-archive-communio_author
	.communio-author-browser
	.communio-author-index {
	color: var(--communio-site-reading-text, #292622);
}

body.post-type-archive-communio_author .communio-author-browser .communio-author-index {
	max-width: none;
	margin-top: 2rem;
	display: block;
}

body.post-type-archive-communio_author .communio-author-browser .communio-author-index__section,
body.post-type-archive-communio_author .communio-author-browser .communio-author-index__group {
	display: grid;
	grid-template-columns: 4rem minmax(0, 1fr);
	gap: clamp(1rem, 3vw, 2rem);
	padding: 1.35rem 0;
	border-top: 1px solid rgba(0, 0, 0, 0.12);
	background: transparent;
}

body.post-type-archive-communio_author .communio-author-browser .communio-author-index h2,
body.post-type-archive-communio_author .communio-author-browser .communio-author-index__letter {
	margin: 0;
	color: #8a5a2b;
	font-family: var(--communio-font-utility);
	font-size: 1.6rem;
	line-height: 1;
}

body.post-type-archive-communio_author .communio-author-browser .communio-author-index__list {
	margin: 0;
	padding: 0;
	list-style: none;
	column-width: 210px;
	column-gap: clamp(1.5rem, 4vw, 3rem);
}

body.post-type-archive-communio_author .communio-author-browser .communio-author-index__list li,
body.post-type-archive-communio_author .communio-author-browser .communio-author-index__item {
	break-inside: avoid;
	margin: 0 0 0.42rem;
	padding: 0;
}

body.post-type-archive-communio_author .communio-author-browser .communio-author-index__list a {
	color: #1f2b3a;
	text-decoration: none;
}

body.post-type-archive-communio_author .communio-author-browser .communio-author-index__list a:hover,
body.post-type-archive-communio_author .communio-author-browser .communio-author-index__list a:focus {
	text-decoration: underline;
	text-decoration-thickness: 0.055em;
	text-underline-offset: 0.16em;
}

/* Polished single author pages */
.communio-single-author-page {
	width: 100%;
	max-width: min(1180px, calc(100vw - 2rem));
	margin: 0 auto;
	padding: clamp(2rem, 5vw, 4rem) clamp(1rem, 3vw, 2rem);
	box-sizing: border-box;
}

.communio-single-author {
	background: #fff;
	border: 1px solid rgba(0, 0, 0, 0.08);
	font-family: var(--communio-font-utility);
}

.communio-single-author__hero {
	padding: clamp(1.75rem, 4vw, 3rem);
	background: #faf8f4;
	border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}

.communio-single-author__kicker {
	margin: 0 0 0.7rem;
	text-transform: uppercase;
	letter-spacing: 0.14em;
	font-size: 0.78rem;
	font-weight: 700;
	color: #8a5a2b;
}

.communio-single-author__title {
	margin: 0;
	font-family: var(--communio-font-display);
	font-size: clamp(2.8rem, 6vw, 5.4rem);
	line-height: 0.98;
	color: #1f2b3a;
}

.communio-single-author__affiliation {
	max-width: 760px;
	margin: 1rem 0 0;
	color: #4b5563;
	font-size: 1.05rem;
}

.communio-single-author__sort-name {
	margin: 0.75rem 0 0;
	color: #666;
	font-size: 0.95rem;
}

.communio-single-author__bio {
	max-width: 820px;
	padding: clamp(1.75rem, 4vw, 3rem);
	border-bottom: 1px solid rgba(0, 0, 0, 0.08);
	font-family: var(--communio-font-reading);
	font-size: 1.125rem;
	line-height: 1.65;
	color: #222;
}

.communio-single-author__articles {
	padding: clamp(1.75rem, 4vw, 3rem);
}

.communio-single-author__articles-header {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 1.5rem;
	margin-bottom: 1.35rem;
}

.communio-single-author__articles h2 {
	margin: 0;
	font-family: var(--communio-font-display);
	font-size: clamp(2rem, 4vw, 3.2rem);
	line-height: 1.05;
	color: #1f2b3a;
}

.communio-single-author__sort {
	display: flex;
	align-items: center;
	gap: 0.55rem;
	margin: 0;
}

.communio-single-author__sort label {
	text-transform: uppercase;
	letter-spacing: 0.11em;
	font-size: 0.72rem;
	font-weight: 700;
	color: #8a5a2b;
}

.communio-single-author__sort select {
	max-width: 220px;
	padding: 0.55rem 0.7rem;
	border-radius: 0;
	border: 1px solid rgba(0, 0, 0, 0.18);
	background: #fff;
}

.communio-single-author__article-list {
	border-top: 1px solid rgba(0, 0, 0, 0.1);
}

.communio-single-author__article {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 150px;
	gap: 1.25rem;
	padding: 1.35rem 0;
	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.communio-single-author__article h3 {
	margin: 0;
	font-family: var(--communio-font-display);
	font-size: clamp(1.35rem, 2.5vw, 1.9rem);
	line-height: 1.15;
	color: #1f2b3a;
}

.communio-single-author__article h3 a {
	color: inherit;
	text-decoration: none;
}

.communio-single-author__article h3 a:hover,
.communio-single-author__article h3 a:focus {
	text-decoration: underline;
	text-decoration-thickness: 0.055em;
	text-underline-offset: 0.16em;
}

.communio-single-author__article-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.25rem 0.65rem;
	margin: 0.55rem 0 0;
	color: #555;
	font-size: 0.94rem;
}

.communio-single-author__article-meta a {
	color: #386333;
	text-decoration: none;
}

.communio-single-author__article-meta a:hover,
.communio-single-author__article-meta a:focus {
	text-decoration: underline;
	text-decoration-thickness: 0.055em;
	text-underline-offset: 0.16em;
}

.communio-single-author__article-meta span:not(:last-child)::after {
	content: "·";
	margin-left: 0.65rem;
	color: #999;
}

.communio-single-author__article-summary {
	max-width: 760px;
	margin-top: 0.75rem;
	color: #4b5563;
	font-family: var(--communio-font-reading);
	font-size: 1.125rem;
	line-height: 1.65;
}

.communio-single-author__article-summary p:last-child {
	margin-bottom: 0;
}

.communio-single-author__article-actions {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.45rem;
	font-size: 0.92rem;
}

.communio-single-author__article-actions a {
	color: #1f2b3a;
	text-decoration: underline;
	text-decoration-thickness: 0.055em;
	text-underline-offset: 0.16em;
}

.communio-single-author__empty {
	margin: 1rem 0 0;
	color: #555;
}

@media (max-width: 860px) {
	.communio-single-author__articles-header {
		display: block;
	}

	.communio-single-author__sort {
		margin-top: 1rem;
	}

	.communio-single-author__article {
		grid-template-columns: 1fr;
	}

	.communio-single-author__article-actions {
		flex-direction: row;
		flex-wrap: wrap;
	}
}

@media (max-width: 640px) {
	body.post-type-archive-communio_author .communio-author-browser .communio-author-index__section,
	body.post-type-archive-communio_author .communio-author-browser .communio-author-index__group {
		grid-template-columns: 1fr;
		gap: 0.8rem;
	}

	.communio-single-author__hero,
	.communio-single-author__bio,
	.communio-single-author__articles {
		padding: 1.35rem;
	}

	.communio-single-author__article-meta {
		display: block;
	}

	.communio-single-author__article-meta span {
		display: block;
		margin-top: 0.25rem;
	}

	.communio-single-author__article-meta span:not(:last-child)::after {
		content: "";
		margin-left: 0;
	}
}

/* Strong single-author width override: align author pages with issue/article site frame. */
body.single-communio_author #primary.communio-single-author-page {
	width: 100% !important;
	max-width: min(1240px, calc(100vw - 2rem)) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: clamp(1rem, 3vw, 2rem) !important;
	padding-right: clamp(1rem, 3vw, 2rem) !important;
	box-sizing: border-box;
}

body.single-communio_author .communio-single-author {
	width: 100%;
	max-width: none;
	box-sizing: border-box;
}

body.single-communio_author .communio-single-author__hero,
body.single-communio_author .communio-single-author__bio,
body.single-communio_author .communio-single-author__articles {
	width: 100%;
	box-sizing: border-box;
}

body.single-communio_author .communio-single-author__bio {
	max-width: none;
}

body.single-communio_author .communio-single-author__bio > * {
	max-width: 860px;
}

body.single-communio_author .communio-single-author__article {
	grid-template-columns: minmax(0, 1fr) minmax(130px, 160px);
}

body.single-communio_author .communio-single-author__article-summary {
	max-width: 860px;
}

/* Give the bibliography header room to breathe on desktop. */
body.single-communio_author .communio-single-author__articles-header {
	align-items: center;
}

/* Container-query behavior for narrower author-page cards. */
body.single-communio_author .communio-single-author {
	container-type: inline-size;
}

@container (max-width: 860px) {
	body.single-communio_author .communio-single-author__articles-header {
		display: block;
	}

	body.single-communio_author .communio-single-author__sort {
		margin-top: 1rem;
	}

	body.single-communio_author .communio-single-author__article {
		grid-template-columns: 1fr;
	}

	body.single-communio_author .communio-single-author__article-actions {
		flex-direction: row;
		flex-wrap: wrap;
	}
}

/* Public Search landing and results: single-column editorial treatment. */
body #primary.communio-search-main {
	box-sizing: border-box;
	width: 100%;
	max-width: min(1200px, calc(100vw - 2rem));
	margin: clamp(0.75rem, 1.5vw, 1.5rem) auto 0;
	padding: clamp(2rem, 5vw, 3.5rem) clamp(1rem, 3vw, 2.5rem) clamp(3rem, 7vw, 6rem);
	background: #fbfaf7;
	color: #292622;
}

.communio-search-header {
	max-width: 850px;
	margin-bottom: clamp(1.75rem, 4vw, 3rem);
}

.communio-search-landing .communio-search-header {
	margin-bottom: 0;
}

.communio-search-main--results .communio-search-header {
	max-width: 1050px;
}

body #primary.communio-search-main .communio-search-header__kicker,
body #primary.communio-search-main .communio-search-form__label,
body #primary.communio-search-main .communio-search-result__type {
	display: block;
	margin: 0 0 0.5rem;
	color: #8b642b;
	font-family: var(--communio-font-utility);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

body #primary.communio-search-main .communio-search-header h1 {
	margin: 0;
	color: #102b3a;
	font-family: var(--communio-font-display);
	font-size: clamp(2.2rem, 5vw, 4rem);
	font-weight: 400;
	line-height: 1.05;
}

.communio-search-main .communio-search-header__summary {
	max-width: 720px;
	margin: 0.75rem 0 0;
	color: #554f47;
	font-family: var(--communio-font-reading);
	font-size: 1.125rem;
	line-height: 1.65;
}

.communio-search-form {
	max-width: 850px;
	margin-top: clamp(1.5rem, 3vw, 2.25rem);
	font-family: var(--communio-font-utility);
}

.communio-search-header .communio-search-form {
	margin-bottom: 0;
}

.communio-search-form__controls {
	display: flex;
	gap: 0.65rem;
}

.communio-search-form input[type="search"],
.communio-search-form button {
	box-sizing: border-box;
	min-height: 3rem;
	border-radius: 0;
	font-size: 1rem;
}

.communio-search-form input[type="search"] {
	flex: 1 1 auto;
	min-width: 0;
	border: 1px solid rgba(30, 39, 45, 0.3);
	background: #fff;
	color: #292622;
	padding: 0.75rem 0.9rem;
}

.communio-search-form button,
.communio-search-refinements__form button {
	border: 1px solid #102b3a;
	background: #102b3a;
	color: #fff;
	font-weight: 700;
	padding: 0.75rem 1.15rem;
	white-space: nowrap;
}

.communio-search-form button:hover,
.communio-search-refinements__form button:hover {
	border-color: #8b642b;
	background: #173b4a;
	color: #fff;
}

.communio-search-form button:active,
.communio-search-refinements__form button:active {
	transform: translateY(1px);
	border-color: #102b3a;
	background: #0b2632;
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.24);
}

.communio-search-form input[type="search"]:focus-visible {
	outline: 1px solid #8b642b;
	outline-offset: 2px;
	box-shadow: 0 0 0 2px rgba(139, 100, 43, 0.16);
}

.communio-search-form button:focus-visible,
.communio-search-refinements__form button:focus-visible,
.communio-search-result a:focus-visible,
.communio-search-pages a.page-numbers:focus-visible {
	outline: 1px solid #8b642b;
	outline-offset: 2px;
	box-shadow: 0 0 0 2px rgba(139, 100, 43, 0.14);
}

.communio-search-refinements {
	max-width: 1050px;
	margin: -1rem 0 clamp(1.1rem, 2vw, 1.5rem);
	padding: 0 0 clamp(0.9rem, 1.8vw, 1.2rem);
	border-bottom: 1px solid rgba(30, 39, 45, 0.18);
	font-family: var(--communio-font-utility);
}

.communio-search-refinements__types {
	display: flex;
	flex-wrap: wrap;
	gap: 0.25rem 1rem;
}

body #primary.communio-search-main .communio-search-refinements__types a {
	padding: 0.35rem 0;
	border-bottom: 2px solid transparent;
	color: #102b3a;
	font-size: 0.88rem;
	font-weight: 600;
	line-height: 1.3;
	text-decoration: none;
}

body #primary.communio-search-main .communio-search-refinements__types a:hover,
body #primary.communio-search-main .communio-search-refinements__types a:focus,
body #primary.communio-search-main .communio-search-refinements__types a.is-active {
	border-bottom-color: #8b642b;
	color: #8b642b;
}

.communio-search-refinements__form {
	display: flex;
	flex-wrap: wrap;
	align-items: end;
	gap: 0.65rem 0.85rem;
	margin-top: 0.85rem;
}

.communio-search-refinements__form label {
	display: grid;
	gap: 0.25rem;
	margin: 0;
	color: #554f47;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.communio-search-refinements__form .communio-search-refinements__pdf {
	display: inline-flex;
	min-height: 2.55rem;
	align-items: center;
	gap: 0.45rem;
	padding: 0 0.15rem;
	color: #292622;
	cursor: pointer;
}

.communio-search-refinements__pdf input[type="checkbox"] {
	width: 1.05rem;
	height: 1.05rem;
	margin: 0;
	accent-color: #102b3a;
}

.communio-search-refinements__pdf input[type="checkbox"]:focus-visible {
	outline: 1px solid #8b642b;
	outline-offset: 2px;
}

.communio-search-refinements__form select,
.communio-search-refinements__form button {
	box-sizing: border-box;
	min-height: 2.55rem;
	border-radius: 0;
	font-family: var(--communio-font-utility);
	font-size: 0.9rem;
}

.communio-search-refinements__form select {
	min-width: 10.5rem;
	padding: 0.5rem 2rem 0.5rem 0.65rem;
	border: 1px solid rgba(30, 39, 45, 0.3);
	background-color: #fff;
	color: #292622;
}

.communio-search-refinements__form select:focus-visible {
	outline: 1px solid #8b642b;
	outline-offset: 2px;
	box-shadow: 0 0 0 2px rgba(139, 100, 43, 0.16);
}

.communio-search-refinements__form button {
	padding: 0.55rem 0.9rem;
}

body #primary.communio-search-main .communio-search-refinements__clear {
	align-self: center;
	padding: 0.45rem 0;
	color: #8b642b;
	font-size: 0.84rem;
	font-weight: 600;
	text-underline-offset: 0.16em;
}

body #primary.communio-search-main .communio-search-refinements__clear:hover,
body #primary.communio-search-main .communio-search-refinements__clear:focus {
	color: #102b3a;
}

.communio-search-refinements__note {
	margin: 0.65rem 0 0;
	color: #6b6258;
	font-family: var(--communio-font-reading);
	font-size: 0.9rem;
	line-height: 1.45;
}

.communio-search-results {
	max-width: 1050px;
	margin: 0;
	border-top: 1px solid rgba(30, 39, 45, 0.18);
	font-family: var(--communio-font-utility);
}

.communio-search-result {
	margin: 0;
	padding: clamp(1rem, 2vw, 1.4rem) 0;
	border: 0;
	border-bottom: 1px solid rgba(30, 39, 45, 0.18);
	background: transparent;
	box-shadow: none;
}

body #primary.communio-search-main .communio-search-result__type {
	margin-bottom: 0.35rem;
}

.communio-search-result .entry-header {
	margin: 0;
}

.communio-search-result .entry-title {
	margin: 0;
	font-family: var(--communio-font-display);
	font-size: clamp(1.35rem, 3vw, 1.8rem);
	font-weight: 400;
	line-height: 1.2;
}

body.search #primary.communio-search-main .communio-search-result .entry-title a {
	color: #102b3a;
	text-decoration: none;
}

body.search #primary.communio-search-main .communio-search-result .entry-title a:hover,
body.search #primary.communio-search-main .communio-search-result .entry-title a:focus {
	color: #8b642b;
	text-decoration: underline;
	text-decoration-thickness: 0.055em;
	text-underline-offset: 0.16em;
}

.communio-search-result__meta {
	margin: 0.35rem 0 0;
	color: #554f47;
	font-size: 0.95rem;
	line-height: 1.45;
}

.communio-search-result .entry-summary {
	max-width: 900px;
	margin-top: 0.55rem;
	color: #292622;
	font-family: var(--communio-font-reading);
	font-size: 1.05rem;
	line-height: 1.6;
}

.communio-search-result .entry-summary p {
	margin: 0;
}

.communio-search-result__topics {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem 0.85rem;
	margin-top: 0.55rem;
}

body.search #primary.communio-search-main .communio-search-result__topics a,
body.search #primary.communio-search-main .communio-search-result__action {
	color: #8b642b;
	font-size: 0.85rem;
	font-weight: 700;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.16em;
}

body.search #primary.communio-search-main .communio-search-result__topics a:hover,
body.search #primary.communio-search-main .communio-search-result__topics a:focus,
body.search #primary.communio-search-main .communio-search-result__action:hover,
body.search #primary.communio-search-main .communio-search-result__action:focus {
	color: #102b3a;
}

.communio-search-result__action {
	display: inline-block;
	margin-top: 0.6rem;
	padding: 0;
	border: 0;
	background: transparent;
}

.communio-search-pagination-wrap {
	max-width: 1050px;
	margin-top: clamp(1.25rem, 2.5vw, 1.75rem);
	padding: 0.85rem 0 0.15rem;
	border-top: 1px solid rgba(30, 39, 45, 0.16);
	font-family: var(--communio-font-utility);
}

.communio-search-pagination__label {
	margin: 0 0 0.55rem;
	color: #8b642b;
	font-family: var(--communio-font-utility);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	line-height: 1.2;
	text-transform: uppercase;
}

.communio-search-pages {
	margin: 0;
}

.communio-search-pages .nav-links {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.35rem;
	margin: 0;
	padding: 0;
}

body #primary.communio-search-main .communio-search-pages a.page-numbers,
body #primary.communio-search-main .communio-search-pages span.page-numbers {
	display: inline-flex;
	min-width: 2.25rem;
	min-height: 2.25rem;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	padding: 0.4rem 0.6rem;
	border: 1px solid #d5ccbf;
	background: #fbfaf7;
	color: #102b3a;
	font-size: 0.88rem;
	font-weight: 600;
	line-height: 1;
	text-decoration: none;
}

body #primary.communio-search-main .communio-search-pages a.page-numbers:hover,
body #primary.communio-search-main .communio-search-pages a.page-numbers:focus {
	border-color: #8b642b;
	background: #f4efe6;
	color: #8b642b;
	text-decoration: none;
}

body #primary.communio-search-main .communio-search-pages a.page-numbers:active {
	transform: translateY(1px);
	background: #eadfce;
	box-shadow: inset 0 1px 2px rgba(16, 43, 58, 0.16);
}

body #primary.communio-search-main .communio-search-pages .page-numbers.current {
	border-color: #102b3a;
	background: #102b3a;
	color: #fbfaf7;
}

.communio-search-pages .page-numbers.dots {
	border-color: transparent;
	background: transparent;
}

.communio-search-pages .page-numbers.prev,
.communio-search-pages .page-numbers.next {
	width: auto;
}

@media (max-width: 600px) {
	body #primary.communio-search-main {
		max-width: 100%;
		padding-top: 1.5rem;
	}

	.communio-search-form__controls {
		display: block;
	}

	.communio-search-form input[type="search"],
	.communio-search-form button {
		width: 100%;
	}

	.communio-search-form button {
		margin-top: 0.6rem;
	}

	.communio-search-refinements {
		margin-top: -0.35rem;
	}

	.communio-search-refinements__types {
		column-gap: 0.75rem;
	}

	.communio-search-refinements__form {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	}

	.communio-search-refinements__form label,
	.communio-search-refinements__form select {
		width: 100%;
		min-width: 0;
	}

	.communio-search-refinements__form button,
	.communio-search-refinements__clear {
		justify-self: start;
	}

	.communio-search-pages .nav-links {
		gap: 0.3rem;
	}
}

/* Single article body width refinement: make article text read as the main column. */
body.single-communio_article #primary.communio-single-article-page {
	width: 100%;
	max-width: min(1180px, calc(100vw - 2rem)) !important;
	margin-left: auto;
	margin-right: auto;
}

body.single-communio_article .communio-single-article {
	width: 100%;
	max-width: none;
}

body.single-communio_article .communio-single-article__header,
body.single-communio_article .communio-single-article__body {
	max-width: none;
}

body.single-communio_article .communio-single-article__body {
	display: grid;
	grid-template-columns: minmax(0, 760px) minmax(260px, 320px);
	gap: clamp(2rem, 5vw, 3.5rem);
	align-items: start;
	justify-content: center;
}

body.single-communio_article .communio-single-article__content {
	grid-column: 1;
	grid-row: 1;
	width: 100%;
	max-width: 760px;
}

body.single-communio_article .communio-single-article__access {
	grid-column: 2;
	grid-row: 1;
	width: 100%;
	max-width: 320px;
}

body.single-communio_article .communio-single-article__summary {
	max-width: 640px;
}

body.single-communio_article .communio-single-article__content .entry-content {
	width: 100%;
	max-width: none;
}

body.single-communio_article .communio-single-article__content .entry-content > * {
	max-width: 720px;
	margin-left: 0;
	margin-right: auto;
}

body.single-communio_article .communio-single-article__content .entry-content p {
	text-align: left;
}

@media (max-width: 900px) {
	body.single-communio_article .communio-single-article__body {
		display: block;
	}

	body.single-communio_article .communio-single-article__access {
		max-width: none;
		margin-bottom: 1.5rem;
	}

	body.single-communio_article .communio-single-article__content,
	body.single-communio_article .communio-single-article__content .entry-content > * {
		max-width: none;
	}
}

/* PDF-only article action refinement: no generic article action column when no PDF exists. */
.communio-single-author__article:not(:has(.communio-single-author__article-actions)),
.communio-single-issue__article:not(:has(.communio-single-issue__article-actions)),
.communio-search-result--communio_article:not(:has(.communio-search-result__action)) {
	grid-template-columns: minmax(0, 1fr);
}

.communio-single-author__article-actions a,
.communio-single-issue__article-actions a,
.communio-search-result--communio_article .communio-search-result__action {
	font-weight: 700;
}

/* Article card no-PDF layout refinement */
.communio-single-author__article--no-pdf,
.communio-single-issue__article--no-pdf {
	grid-template-columns: minmax(0, 1fr) !important;
}

.communio-single-author__article--has-pdf,
.communio-single-issue__article--has-pdf {
	grid-template-columns: minmax(0, 1fr) auto;
}

.communio-single-author__article--no-pdf .communio-single-author__article-summary,
.communio-single-issue__article--no-pdf .communio-single-issue__article-summary {
	max-width: 980px;
}

.communio-single-author__article-actions,
.communio-single-issue__article-actions {
	justify-self: end;
	min-width: 3.5rem;
}

.communio-single-author__article-actions a,
.communio-single-issue__article-actions a {
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.02em;
}

/* Issue purchase box alignment refinement */
body.single-communio_issue .communio-single-issue__purchase {
	margin-top: clamp(2.15rem, 3.5vw, 3rem);
}

@container (max-width: 900px) {
	body.single-communio_issue .communio-single-issue__purchase {
		margin-top: 0.25rem;
	}
}

@media (max-width: 980px) {
	body.single-communio_issue .communio-single-issue__purchase {
		margin-top: 0.25rem;
	}
}

/* Issue page added-to-cart action state */
.communio-single-issue__cart-actions {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	flex-wrap: wrap;
}

.communio-single-issue__cart-actions .communio-single-issue__button {
	flex: 1 1 180px;
}

.communio-single-issue__button--added {
	position: relative;
}

.communio-single-issue__view-cart {
	font-weight: 700;
	color: #1f2b3a;
	text-decoration: underline;
	text-underline-offset: 0.16em;
}

/* COMMUNIO SUBSCRIBE PAGE LAYOUT */
.communio-subscribe-page {
	max-width: 980px;
}

.communio-subscribe-intro {
	font-size: 1.05rem;
	line-height: 1.65;
	max-width: 860px;
}

.communio-subscribe-section {
	margin-top: 2.5rem;
}

.communio-subscribe-section h2 {
	margin-bottom: 1.25rem;
}

.communio-subscribe-plan {
	border: 1px solid #e3e6e8;
	border-radius: 10px;
	background: #fff;
	padding: 1.25rem;
	margin: 1.25rem 0 1.5rem;
}

.communio-subscribe-plan__title {
	font-size: 1.2rem;
	margin: 0 0 1rem;
}

.communio-subscribe-options {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
}

.communio-subscribe-options--single {
	grid-template-columns: minmax(0, 1fr);
	max-width: 430px;
}

.communio-subscribe-option {
	border: 1px solid #d9dee2;
	border-radius: 8px;
	padding: 1rem;
	background: #f9faf9;
}

.communio-subscribe-option__title {
	font-size: 1rem;
	margin: 0 0 .35rem;
}

.communio-subscribe-option__note {
	margin: 0 0 .75rem;
	color: #4b5560;
	font-size: .95rem;
	line-height: 1.45;
}

.communio-subscribe-option__price {
	font-size: 1.08rem;
	margin: .5rem 0 .9rem;
}

.communio-subscribe-option__button,
.communio-subscribe-option .button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-top: .25rem;
	background: #286336;
	color: #fff !important;
	border-radius: 0;
	padding: .7rem 1rem;
	font-weight: 700;
	text-decoration: none;
}

.communio-subscribe-option__button:hover,
.communio-subscribe-option .button:hover {
	background: #1f512b;
	color: #fff !important;
	text-decoration: none;
}

.communio-subscribe-option__unavailable {
	margin: .75rem 0 0;
	color: #7a1f1f;
	font-style: italic;
}

.communio-subscribe-footnote {
	margin-top: 2rem;
	font-style: italic;
}

@media (max-width: 720px) {
	.communio-subscribe-options {
		grid-template-columns: 1fr;
	}
}

.communio-subscribe-footnote span {
	display: block;
}

/* Canonical Past Issues archive masthead. */
body.post-type-archive-communio_issue #primary.communio-issue-browser {
	box-sizing: border-box;
	width: 100%;
	max-width: 1200px;
	padding: clamp(1.5rem, 4vw, 3.5rem) clamp(1rem, 3vw, 2.5rem) clamp(3rem, 7vw, 6rem);
	background: var(--communio-site-reading, #fbfaf7);
	color: var(--communio-site-reading-text, #292622);
}

body.post-type-archive-communio_issue .communio-issue-browser__masthead {
	position: relative;
	isolation: isolate;
	display: flex;
	box-sizing: border-box;
	min-height: clamp(13.5rem, 23vw, 16rem);
	align-items: center;
	margin-bottom: clamp(1.6rem, 3vw, 2.4rem);
	padding: clamp(1.5rem, 3.5vw, 2.75rem);
	overflow: hidden;
	border-color: var(--communio-site-reading-rule, rgba(30, 39, 45, 0.14));
	background: var(--communio-site-reading, #fbfaf7);
}

body.post-type-archive-communio_issue .communio-issue-browser__masthead::after {
	position: absolute;
	z-index: 0;
	top: -12%;
	right: -4%;
	bottom: -14%;
	width: 50%;
	background-image: url("assets/images/issues/issues-st-john-lateran.png");
	background-position: 100% 50%;
	background-repeat: no-repeat;
	background-size: auto 92%;
	content: "";
	filter: saturate(0.78) contrast(0.9);
	mask-image: linear-gradient(to right, transparent 0%, rgba(0, 0, 0, 0.12) 18%, rgba(0, 0, 0, 0.7) 46%, #000 68%, #000 100%);
	opacity: 0.26;
	pointer-events: none;
	-webkit-mask-image: linear-gradient(to right, transparent 0%, rgba(0, 0, 0, 0.12) 18%, rgba(0, 0, 0, 0.7) 46%, #000 68%, #000 100%);
}

body.post-type-archive-communio_issue .communio-issue-browser__masthead-copy {
	position: relative;
	z-index: 1;
	max-width: 38rem;
}

body.post-type-archive-communio_issue .communio-issue-browser__masthead .communio-browse-header__kicker {
	color: var(--communio-site-reading-accent, #8b642b);
}

body.post-type-archive-communio_issue .communio-issue-browser__masthead h1 {
	color: var(--communio-site-reading-heading, #102b3a);
}

body.post-type-archive-communio_issue .communio-issue-browser__masthead p:last-child {
	color: var(--communio-site-reading-muted, #554f47);
}

@media (max-width: 950px) {
	body.post-type-archive-communio_issue .communio-issue-browser__masthead::after {
		right: -4%;
		width: 50%;
		background-position: right -1rem center;
	}
}

@media (min-width: 601px) and (max-width: 799px) {
	body.post-type-archive-communio_issue .communio-issue-browser__masthead::after {
		background-position: right -3rem center;
	}
}

@media (min-width: 601px) and (max-width: 699px) {
	body.post-type-archive-communio_issue .communio-issue-browser__masthead::after {
		background-position: right -5rem center;
	}
}

@media (max-width: 600px) {
	body.post-type-archive-communio_issue #primary.communio-issue-browser {
		padding-top: 1rem;
	}

	body.post-type-archive-communio_issue .communio-issue-browser__masthead {
		min-height: 0;
		padding: 1.25rem;
	}

	body.post-type-archive-communio_issue .communio-issue-browser__masthead::after {
		display: none;
	}
}

/* Canonical alphabet-first Authors archive. */
body.post-type-archive-communio_author #primary.communio-author-browser {
	box-sizing: border-box;
	width: 100%;
	max-width: 1200px;
	padding: clamp(1.5rem, 4vw, 3.5rem) clamp(1rem, 3vw, 2.5rem) clamp(3rem, 7vw, 6rem);
	background: var(--communio-site-reading, #fbfaf7);
	color: var(--communio-site-reading-text, #292622);
}

body.post-type-archive-communio_author .communio-author-browser__masthead {
	position: relative;
	isolation: isolate;
	display: flex;
	box-sizing: border-box;
	min-height: clamp(13.5rem, 23vw, 16rem);
	align-items: center;
	margin-bottom: clamp(1.6rem, 3vw, 2.4rem);
	padding: clamp(1.5rem, 3.5vw, 2.75rem);
	overflow: hidden;
	border-color: var(--communio-site-reading-rule, rgba(30, 39, 45, 0.14));
	background: var(--communio-site-reading, #fbfaf7);
}

body.post-type-archive-communio_author .communio-author-browser__masthead::after {
	position: absolute;
	z-index: 0;
	top: -12%;
	right: -4%;
	bottom: -14%;
	width: 50%;
	background-image: url("assets/images/authors/authors-st-peters.png");
	background-position: 100% 50%;
	background-repeat: no-repeat;
	background-size: auto 92%;
	content: "";
	filter: saturate(0.78) contrast(0.9);
	mask-image: linear-gradient(to right, transparent 0%, rgba(0, 0, 0, 0.12) 18%, rgba(0, 0, 0, 0.7) 46%, #000 68%, #000 100%);
	opacity: 0.26;
	pointer-events: none;
	-webkit-mask-image: linear-gradient(to right, transparent 0%, rgba(0, 0, 0, 0.12) 18%, rgba(0, 0, 0, 0.7) 46%, #000 68%, #000 100%);
}

body.post-type-archive-communio_author .communio-author-browser__masthead-copy {
	position: relative;
	z-index: 1;
	max-width: 38rem;
}

body.post-type-archive-communio_author .communio-author-browser__masthead .communio-browse-header__kicker {
	color: var(--communio-site-reading-accent, #8b642b);
}

body.post-type-archive-communio_author .communio-author-browser__masthead h1 {
	color: var(--communio-site-reading-heading, #102b3a);
}

body.post-type-archive-communio_author .communio-author-browser__masthead p:last-child {
	color: var(--communio-site-reading-muted, #554f47);
}

.communio-author-browser__tools {
	margin-bottom: clamp(2.25rem, 5vw, 4rem);
}

.communio-author-search {
	display: grid;
	grid-template-columns: minmax(0, 32rem) auto;
	gap: 0.65rem;
	max-width: 40rem;
	margin-bottom: 1.5rem;
}

.communio-author-search input[type="search"],
.communio-author-search button {
	box-sizing: border-box;
	min-height: 3rem;
	border-radius: 0;
	font-family: var(--communio-font-utility);
	font-size: 1rem;
}

.communio-author-search input[type="search"] {
	width: 100%;
	border: 1px solid var(--communio-site-reading-rule, rgba(30, 39, 45, 0.3));
	background: #fff;
	color: var(--communio-site-reading-text, #292622);
}

.communio-author-search button {
	padding-inline: 1.4rem;
	border: 1px solid var(--communio-site-reading-heading, #102b3a);
	background: var(--communio-site-reading-heading, #102b3a);
	color: #fff;
	cursor: pointer;
}

.communio-author-alphabet {
	font-family: var(--communio-font-utility);
	font-size: 0.93rem;
	font-weight: 700;
	letter-spacing: 0.075em;
}

.communio-author-alphabet ul {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.25rem clamp(0.7rem, 1.7vw, 1.25rem);
	margin: 0;
	padding: 0;
	list-style: none;
}

.communio-author-alphabet a {
	display: inline-block;
	padding: 0.28rem 0 0.2rem;
	border-bottom: 1px solid transparent;
	color: var(--communio-site-reading-accent, #8b642b);
	line-height: 1.35;
	text-decoration: none;
}

.communio-author-alphabet a:hover {
	border-bottom-color: currentColor;
}

.communio-author-alphabet a[aria-current="page"] {
	border-bottom-color: var(--communio-site-reading-heading, #102b3a);
	color: var(--communio-site-reading-heading, #102b3a);
}

.communio-author-alphabet__all {
	margin-left: 0.35rem;
	padding-left: clamp(0.8rem, 2vw, 1.35rem);
	border-left: 1px solid var(--communio-site-reading-rule, rgba(30, 39, 45, 0.2));
	letter-spacing: 0.02em;
}

.communio-author-search :is(input, button):focus-visible,
.communio-author-alphabet a:focus-visible,
.communio-author-directory a:focus-visible {
	outline: 2px solid var(--communio-site-reading-accent, #8b642b);
	outline-offset: 3px;
}

.communio-author-directory {
	color: var(--communio-site-reading-text, #292622);
}

.communio-author-directory__section {
	display: grid;
	grid-template-columns: minmax(4rem, 7rem) minmax(0, 1fr);
	gap: clamp(1.25rem, 4vw, 3.5rem);
	padding: clamp(1.5rem, 3vw, 2.25rem) 0;
	border-top: 1px solid var(--communio-site-reading-rule, rgba(30, 39, 45, 0.16));
}

body.post-type-archive-communio_author .communio-author-directory__heading h2 {
	margin: 0;
	color: var(--communio-site-reading-accent, #8b642b);
	font-family: var(--communio-font-display);
	font-size: clamp(2.6rem, 5vw, 4.25rem);
	font-weight: 400;
	line-height: 0.9;
}

body.post-type-archive-communio_author .communio-author-directory__section--search .communio-author-directory__heading h2 {
	color: var(--communio-site-reading-heading, #102b3a);
	font-size: clamp(1.8rem, 3vw, 2.5rem);
	line-height: 1;
}

.communio-author-directory__count {
	margin: 0.65rem 0 0;
	color: var(--communio-site-reading-muted, #554f47);
	font-family: var(--communio-font-utility);
	font-size: 0.88rem;
	line-height: 1.45;
}

.communio-author-directory__count a {
	display: block;
	width: fit-content;
	margin-top: 0.45rem;
	color: var(--communio-site-reading-accent, #8b642b);
	text-underline-offset: 0.16em;
}

.communio-author-directory__list {
	column-count: 3;
	column-gap: clamp(1.5rem, 4vw, 3.5rem);
	margin: 0;
	padding: 0;
	list-style: none;
}

.communio-author-directory__item {
	break-inside: avoid;
	margin: 0 0 0.55rem;
	padding: 0;
	line-height: 1.32;
	page-break-inside: avoid;
}

.communio-author-directory__item a {
	color: var(--communio-site-reading-heading, #102b3a);
	font-family: var(--communio-font-reading);
	font-size: clamp(1.05rem, 1.4vw, 1.18rem);
	text-decoration: none;
}

.communio-author-directory__item a:hover {
	text-decoration: underline;
	text-decoration-thickness: 0.055em;
	text-underline-offset: 0.16em;
}

.communio-author-directory__empty {
	margin: 0;
	color: var(--communio-site-reading-text, #292622);
	font-family: var(--communio-font-reading);
	font-size: clamp(1.2rem, 2vw, 1.45rem);
	line-height: 1.5;
}

@media (max-width: 950px) {
	body.post-type-archive-communio_author .communio-author-browser__masthead::after {
		right: -4%;
		width: 50%;
		background-position: right -2rem center;
	}

	.communio-author-directory__list {
		column-count: 2;
	}
}

@media (min-width: 601px) and (max-width: 799px) {
	body.post-type-archive-communio_author .communio-author-browser__masthead::after {
		background-position: right -4rem center;
	}
}

@media (min-width: 601px) and (max-width: 699px) {
	body.post-type-archive-communio_author .communio-author-browser__masthead::after {
		background-position: right -6rem center;
	}
}

@media (max-width: 600px) {
	body.post-type-archive-communio_author #primary.communio-author-browser {
		padding-top: 1rem;
	}

	body.post-type-archive-communio_author .communio-author-browser__masthead {
		min-height: 0;
		padding: 1.25rem;
	}

	body.post-type-archive-communio_author .communio-author-browser__masthead::after {
		display: none;
	}

	.communio-author-search {
		grid-template-columns: 1fr auto;
	}

	.communio-author-alphabet ul {
		gap: 0.2rem 0.85rem;
	}

	.communio-author-directory__section {
		grid-template-columns: 1fr;
		gap: 1rem;
	}

	.communio-author-directory__list {
		column-count: 1;
	}
}

@media (max-width: 390px) {
	.communio-author-search {
		grid-template-columns: 1fr;
	}

	.communio-author-search button {
		width: 100%;
	}

	.communio-author-alphabet__all {
		margin-left: 0;
		padding-left: 0;
		border-left: 0;
	}
}

/*
 * Communio WooCommerce account visual integration
 *
 * Keep this layer intentionally shallow. WooCommerce continues to own the
 * account templates, form structure, authentication, registration, and
 * password handling; Communio supplies only page-scoped visual treatment.
 */

body.woocommerce-account .woocommerce h2,
body.woocommerce-account .woocommerce h3 {
	color: var(--communio-color-navy);
	font-family: var(--communio-font-display);
	font-weight: 500;
}

body.woocommerce-account .woocommerce form.login,
body.woocommerce-account .woocommerce form.register,
body.woocommerce-account .woocommerce form.woocommerce-ResetPassword {
	padding: clamp(1.25rem, 2.5vw, 1.75rem);
	border: 1px solid var(--communio-color-rule);
	border-radius: 0;
	background: transparent;
}

body.woocommerce-account .woocommerce :is(
	input[type="text"],
	input[type="email"],
	input[type="password"],
	input[type="tel"],
	input[type="number"],
	select,
	textarea
) {
	border-color: var(--communio-color-rule);
	border-radius: 2px;
	background: var(--communio-color-white);
	color: var(--communio-color-ink);
}

body.woocommerce-account .woocommerce :is(
	input[type="text"],
	input[type="email"],
	input[type="password"],
	input[type="tel"],
	input[type="number"],
	select,
	textarea
):focus-visible {
	outline: var(--communio-focus-ring-thickness) solid var(--communio-color-focus);
	outline-offset: var(--communio-focus-ring-offset);
}

body.woocommerce-account .woocommerce :is(
	button.button,
	a.button,
	input.button
) {
	border: 1px solid var(--communio-color-navy, #102b3a) !important;
	border-radius: 0;
	background: var(--communio-color-navy, #102b3a) !important;
	color: var(--communio-color-white, #fff) !important;
	font-family: var(--communio-font-utility);
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: var(--communio-tracking-utility);
	text-transform: uppercase;
}

body.woocommerce-account .woocommerce :is(
	button.button,
	a.button,
	input.button
):hover,
body.woocommerce-account .woocommerce :is(
	button.button,
	a.button,
	input.button
):focus-visible {
	border-color: var(--communio-color-editorial-dark, #1f2b3a) !important;
	background: var(--communio-color-editorial-dark, #1f2b3a) !important;
	color: var(--communio-color-white, #fff) !important;
}

body.woocommerce-account .woocommerce :is(
	.woocommerce-LostPassword,
	.woocommerce-privacy-policy-text
) a {
	color: var(--communio-color-editorial-dark);
	text-decoration: underline;
	text-decoration-color: var(--communio-color-editorial-rule);
	text-decoration-thickness: 1px;
	text-underline-offset: 0.2em;
}

body.woocommerce-account .woocommerce :is(
	.woocommerce-LostPassword,
	.woocommerce-privacy-policy-text
) a:hover {
	color: var(--communio-color-navy);
	text-decoration-color: currentColor;
}

/* Communio cart coupon field width */
.woocommerce-cart table.cart td.actions .coupon .input-text {
	width: 13rem !important;
	max-width: 100%;
}

/* Keep Woo's native Update cart action as the no-JS/autosave-failure fallback. */
html.communio-cart-autosave-active .woocommerce-cart-form button[name="update_cart"] {
	display: none !important;
}

/* Communio line-scoped recipient controls in the classic Woo Cart. */
.communio-recipient-controls {
	margin: .75rem 0;
	padding: .85rem;
	border: 1px solid #ddd;
	box-sizing: border-box;
}

.communio-recipient-controls__heading,
.communio-recipient-controls__subheading {
	font-weight: 600;
}

.communio-recipient-controls__heading {
	display: inline-block;
	margin-bottom: .55rem;
}

.communio-recipient-controls__save-status {
	min-height: 1em;
	margin-left: .45rem;
	color: #5f676b;
	font-size: .78rem;
}

.communio-recipient-controls__save-status.is-failed {
	color: #8a1f1f;
}

.communio-recipient-controls__save-status.is-failed,
.communio-recipient-controls__save-status.is-duplicate {
	display: block;
	margin: .35rem 0 .7rem;
	padding: .55rem .7rem;
	border-left: 3px solid #8a1f1f;
	background: #fff4f4;
	color: #8a1f1f;
	font-size: .9rem;
	font-weight: 600;
	line-height: 1.35;
}

.communio-recipient-controls__subheading {
	margin-top: 1rem;
	margin-bottom: .35rem;
}

.communio-recipient-controls > label {
	display: block;
	margin: .35rem 0;
}

.communio-recipient-controls > .description {
	margin: .25rem 0 .5rem;
}

.communio-recipient-controls__alternate {
	display: none;
	margin-top: .75rem;
}

.communio-recipient-controls.is-alternate .communio-recipient-controls__alternate {
	display: block;
}

.communio-recipient-controls__alternate > .description {
	margin: .25rem 0 .65rem;
}

/* A compact, always-visible subscription-recipient choice; deliberately not a menu. */
.communio-recipient-controls__another {
	margin-top: 1rem;
	padding: .7rem;
	border: 1px solid rgba(16, 43, 58, .18);
	background: rgba(16, 43, 58, .025);
}

.communio-recipient-controls__another-heading {
	margin-bottom: .45rem;
	font-weight: 600;
}

.communio-recipient-controls__another-choices {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: .5rem;
}

.communio-recipient-controls__another-choice {
	display: inline-flex;
	flex-direction: column;
	align-items: flex-start;
	gap: .2rem;
}

.communio-recipient-controls__another .button {
	margin: 0;
}

.communio-recipient-controls__another .button[disabled] {
	opacity: .58;
	cursor: not-allowed;
}

.communio-recipient-controls__another-unavailable {
	color: #5f676b;
	font-size: .78rem;
	line-height: 1.25;
}

.communio-recipient-controls__gift {
	display: none;
	margin: .4rem 0 .75rem 1.25rem;
}

.communio-recipient-controls.is-gift .communio-recipient-controls__gift {
	display: block;
}

.communio-recipient-controls__digital-access {
	margin: .85rem 0 0;
	padding: 0;
	border: 0;
}

.communio-recipient-controls__digital-access legend {
	margin-bottom: .35rem;
	font-weight: 600;
}

.communio-recipient-controls__digital-choice {
	display: flex;
	align-items: baseline;
	gap: .4rem;
	margin: .35rem 0;
}

.communio-recipient-controls__digital-choice input {
	margin: 0;
}

.communio-recipient-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(10rem, 1fr));
	gap: .5rem;
	margin: .5rem 0;
}

.communio-recipient-grid input,
.communio-recipient-grid select,
.communio-recipient-state-field {
	width: 100%;
	min-width: 0;
	max-width: 100%;
	box-sizing: border-box;
}

@media (max-width: 600px) {
	.woocommerce-cart td.product-name:has(.communio-recipient-controls) {
		padding: .8rem !important;
		text-align: left !important;
	}

	.woocommerce-cart td.product-name:has(.communio-recipient-controls)::before {
		display: block;
		float: none !important;
		margin: 0 0 .35rem;
		text-align: left;
		font-size: .76rem;
		line-height: 1.3;
	}

	.communio-recipient-controls {
		clear: both;
		width: 100%;
		max-width: 100%;
		margin: .8rem 0 .45rem;
		padding: .85rem;
		border-width: 1px 0;
		background: rgba(16, 43, 58, .035);
		overflow: hidden;
		text-align: left !important;
	}

	.communio-recipient-controls label,
	.communio-recipient-controls .description,
	.communio-recipient-controls__heading,
	.communio-recipient-controls__subheading {
		text-align: left !important;
	}

	.communio-recipient-controls label {
		line-height: 1.4;
	}

	.communio-recipient-grid {
		grid-template-columns: minmax(0, 1fr);
		width: 100%;
	}

	.communio-recipient-summary {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		gap: 0;
		clear: both;
		width: 100%;
		margin: .75rem 0 0 !important;
		padding-top: .55rem;
		border-top: 1px solid rgba(16, 43, 58, .18);
		text-align: left;
	}

	.communio-recipient-summary dt,
	.communio-recipient-summary dd {
		float: none !important;
		width: 100%;
		margin: 0 !important;
		padding: 0;
		text-align: left !important;
	}

	.communio-recipient-summary dt {
		margin-top: .45rem !important;
		font-size: .78rem;
		font-weight: 600;
		line-height: 1.35;
	}

	.communio-recipient-summary dd,
	.communio-recipient-summary dd p {
		line-height: 1.45;
	}

	.communio-recipient-summary dd p {
		margin: .1rem 0 0;
	}

	.woocommerce-cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item td.product-quantity,
	.woocommerce-cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item td.product-subtotal {
		display: flex !important;
		align-items: center;
		justify-content: space-between;
		gap: 1rem;
		clear: both;
		width: 100%;
		min-height: 3.25rem;
		padding-top: .65rem !important;
		padding-bottom: .65rem !important;
		box-sizing: border-box;
		text-align: right !important;
	}

	.woocommerce-cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item td.product-quantity::before,
	.woocommerce-cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item td.product-subtotal::before {
		float: none !important;
		flex: 0 0 auto;
		margin: 0 !important;
		text-align: left;
	}

	.woocommerce-cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item td.product-quantity .quantity {
		margin-left: auto;
	}
}
