/* Custom CSS */

/* ============================================================
 * DESIGN AUDIT — PHASE 2: Typography & palette tokens
 * ============================================================ */
:root {
	--ink: #1A1208;
	--parchment: #F2E4C1;
	--burgundy: #6E1208;
	--burgundy-hover: #8A2A0A;
	--gold: #B88A3E;
	--link: #6E1208;

	--font-display: "Cormorant Garamond", Georgia, "Times New Roman", serif;
	--font-body: "Source Serif 4", Georgia, serif;
	--font-ui: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
	--font-accent: "bilboregular", "Tangerine", cursive;

	--space-1: 0.25rem;
	--space-2: 0.5rem;
	--space-3: 0.75rem;
	--space-4: 1rem;
	--space-5: 1.5rem;
	--space-6: 2rem;
	--space-7: 3rem;
	--space-8: 4rem;
	--space-9: 6rem;
}

html { font-size: 100%; }

body {
	font-family: var(--font-body);
	font-size: 1.125rem;
	line-height: 1.65;
	color: var(--ink);
}

h1, h2, h3, h4,
#title, .entry-title,
#content .entry-header h1,
#content .entry-header h2 {
	font-family: var(--font-display);
	color: var(--ink);
	letter-spacing: 0.005em;
}
h1, #title, .entry-title { font-size: clamp(2rem, 1.4rem + 2.5vw, 3rem); line-height: 1.15; }
h2 { font-size: clamp(1.5rem, 1.2rem + 1.5vw, 2.25rem); line-height: 1.2; }
h3 { font-size: clamp(1.25rem, 1.1rem + 0.8vw, 1.75rem); line-height: 1.25; }
h4 { font-size: 1.25rem; line-height: 1.3; }
h5, h6 {
	font-family: var(--font-ui);
	text-transform: uppercase;
	letter-spacing: 0.06em;
	font-size: 0.875rem;
}

#nav-1 a, #nav-2 a,
#nav-1 li a, #nav-2 li a {
	font-family: var(--font-ui);
	font-size: 1rem;
	letter-spacing: 0.02em;
	font-weight: 500;
	text-decoration: none;
}

#content a, .entry-content a, .widget a {
	color: var(--link);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}
#content a:hover, .entry-content a:hover, .widget a:hover {
	color: var(--burgundy-hover);
}

a:focus-visible, button:focus-visible,
input:focus-visible, textarea:focus-visible, select:focus-visible {
	outline: 3px solid var(--gold);
	outline-offset: 2px;
}

.meta, .byline, .entry-meta,
#footer p.footer-content {
	font-family: var(--font-ui);
	font-size: 0.9375rem;
}

/* Single decorative flourish kept: home feature heading */
#ez-home-container-wrap .ez-widget-area .homeFeature h4 {
	font-family: var(--font-accent);
	color: var(--burgundy);
}

/*--------------------------
GLOBAL
--------------------------*/
body {
	/* text-shadow removed: the global halo reduced perceived contrast on every surface */
}
p {
    margin: 0 0 1.5em;
}
@font-face {
	font-family: 'bilboregular';
	src: url('fonts/bilbo-regular-webfont.eot');
	src: url('fonts/bilbo-regular-webfont.eot?#iefix') format('embedded-opentype'), url('fonts/bilbo-regular-webfont.woff') format('woff'), url('fonts/bilbo-regular-webfont.ttf') format('truetype'), url('fonts/bilbo-regular-webfont.svg#bilboregular') format('svg');
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'perpetualight';
	src: url('fonts/Perpetua_Titling_MT_Light.eot');
	src: url('fonts/Perpetua_Titling_MT_Light.eot?#iefix') format('embedded-opentype'), url('fonts/Perpetua Titling MT Light.woff.woff') format('woff'), url('fonts/PerpetuaTitlin MT Light.ttf') format('truetype'), url('fonts/Perpetua Titling MT Light.svg#perpetualight') format('svg');
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'PortcullionBold';
	src: url('Portcullion-webfont.eot');
	src: url('Portcullion-webfont.eot?#iefix') format('embedded-opentype'),  url('Portcullion-webfont.woff') format('woff'),  url('Portcullion-webfont.ttf') format('truetype'),  url('Portcullion-webfont.svg#PortcullionBold') format('svg');
	font-weight: normal;
	font-style: normal;
}
#ez-home-container-wrap .ez-widget-area a.button,
a.button {
    background-color: var(--burgundy);
    text-decoration: none;
    font-family: var(--font-ui);
    text-shadow: none;
    padding: 0.75rem 1.25rem;
    color: #fff;
    text-transform: uppercase;
    border-radius: 6px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25);
}

.entry-content a.button,
#ez-home-container-wrap .ez-widget-area a.button,
a.button {
	padding: 0.75rem 1.25rem;
	text-align: center;
	font-family: var(--font-ui);
	font-size: 1rem;
	color: #fff;
	text-decoration: none;
	font-weight: 600;
	background-color: var(--burgundy);
	text-shadow: none;
	border-radius: 6px;
	min-height: 44px;
	line-height: 1.4;
	display: inline-block;
	box-sizing: border-box;
	transition: background-color 120ms ease-in-out;
}
.entry-content a.button:hover,
#ez-home-container-wrap .ez-widget-area a.button:hover,
a.button:hover {
	background-color: var(--burgundy-hover);
	color: #fff;
}
/*--------------------------
HEADER
--------------------------*/
.logo-image #header #header-left {
	background: url(images/magdalene-publishing-logo.png) center no-repeat;
	max-width: 100%;
	position: absolute;
	z-index: 999999999;
	display: block;
}
/*--------------------------
Nav
--------------------------*/
#navbar-1-wrap, #navbar-2-wrap {
	height: auto;
}
#navbar-1-left, #navbar-2-left {
	width: 100%;
}
#navbar-1-right, #navbar-2-right {
	display: none;
}
ul#nav-1, ul#nav-2 {
	float: none;
	text-align: center;
}
#nav-1 li, #nav-2 li {
	display: inline-block;
	float: none;
}
#nav-1 li li, #nav-2 li li {
	text-align: left;
}
/*--------------------------
FOOTER
--------------------------*/
#footer a {
	text-transform: uppercase;
}
/*--------------------------
HOME
--------------------------*/
#ez-home-top-container {
	background: url('images/bkgd-feature.jpg') 0 -40px repeat-y;
	max-width: 100%;
	height: 100%;
	-moz-box-shadow: 0px 0px 20px #333, inset 0px 0px 50px rgba(73,29,0,0.7);
	-webkit-box-shadow: 0px 0px 20px #333, inset 0px 0px 50px rgba(73,29,0,0.7);
	box-shadow: 0px 0px 20px #333, inset 0px 0px 50px rgba(73,29,0,0.7);
	margin: -30px -30px 30px -30px;
	padding: 40px;
}
#ez-home-top-1 {
	max-width: 57%;
	text-align: left;
	float: right;
}
#ez-home-container-wrap .ez-widget-area .homeFeature h4 {
	font-family: 'bilboregular';
	text-transform: none;
	font-size: 45px;
	color: #a23c0b;
	margin: 0;
	line-height: 1em;
}
#ez-home-middle-container .widgettitle {
	background: url('images/bkgd-homebox-title.png') top left no-repeat;
	height: 45px;
	text-align: center;
	padding: 10px;
	text-transform: uppercase;
	font-size: 11px;
	z-index: 100;
	position: absolute;
}
#ez-home-container-wrap #ez-home-bottom-1 h4 {
	font-family: 'bilboregular';
	text-transform: none;
	font-size: 32px;
	color: #7a160c;
	margin: 0 0 .35em o;
}
.homebox {
	float: left;
	display: block;
	padding: 10px;
	max-width: 320px;
	margin: 8px 0 8px 8px !important;
	background: url('images/bkgd-homebox.jpg') top left repeat;
	-moz-box-shadow: 0px 0px 15px #333;
	-webkit-box-shadow: 0px 0px 15px #333;
	box-shadow: 0px 0px 15px #333;
	text-align: center;
}
.homebox p {
	display: none;
}
#ez-home-bottom-1 {
	width: 100%;
	margin-top: 20px;
}
#ez-home-bottom-1 .woocommerce ul.product_list_widget li {
	padding: 10px;
	margin: 0;
	display: inline-block;
}
#ez-home-bottom-1 .woocommerce ul.product_list_widget li img {
	float: none;
	display: block;
	margin: 0;
	width: 100%;
}
#ez-home-bottom-2 {
	width: 20%;
	margin: 20px;
}
.latestpress {
	width: 240px;
	max-width: 240px;
}
.latestpress .catalyst-excerpt-widget-inner {
	width: 240px;
	max-width: 240px;
	border-bottom: 1px solid #716653;
}
#content .entry-header {
	background: url('images/bkgd-title2.png') bottom left repeat-y;
	min-height: 60px;
	max-width: 100%;
	min-width: 100%;
	padding: 15px 60px 0 20px;
	margin: -50px 0 0 -50px;
	position: relative;
	float: left;
	line-height: 14px;
}
body.single-post .byline-meta {
	display: none;
}
#content .page, #content .post {
	-moz-box-shadow: 0px 0px 20px #333, inset 0px 0px 50px rgba(73, 29, 0, 0.7);
	-webkit-box-shadow: 0px 0px 20px #333, inset 0px 0px 50px rgba(73, 29, 0, 0.7);
	box-shadow: 0px 0px 20px #333, inset 0px 0px 50px rgba(73, 29, 0, 0.7);
	margin: 20px;
}
#sidebar-1 .reFader_widget {
	max-height: 400px;
	padding-bottom: 40px;
}
.candle {
	display: block;
	position: fixed;
	left: 0px;
	z-index: 99999;
	bottom: 0;
}
.display-posts-listing span {
	display: inline-block;
	border-bottom: 1px solid #716653;
	width: 100%;
	padding-bottom: 15px;
	margin-bottom: 15px;
}
.display-posts-listing a {
	font-family: 'bilboregular';
	text-transform: none;
	font-size: 22px;
}
.wp-caption {
	background: #f4d99d;
	border: 1px solid #876f38;
	padding: 10px;
	text-align: center;
	font-style: italic;
	-moz-box-shadow: 0px 0px 20px #333, inset 0px 0px 50px rgba(73, 29, 0, 0.7);
	-webkit-box-shadow: 0px 0px 20px #333, inset 0px 0px 50px rgba(73, 29, 0, 0.7);
	box-shadow: 0px 0px 20px #333, inset 0px 0px 50px rgba(73, 29, 0, 0.7);
}
ul.products li.product a img, .zoom, .attachment-shop_thumbnail {
	border: 1px solid #876f38;
	text-align: center;
	font-style: italic;
	-moz-box-shadow: 0px 0px 20px #333, inset 0px 0px 50px rgba(73, 29, 0, 0.7);
	-webkit-box-shadow: 0px 0px 20px #333, inset 0px 0px 50px rgba(73, 29, 0, 0.7);
	box-shadow: 0px 0px 20px #333, inset 0px 0px 50px rgba(73, 29, 0, 0.7);
}
.sidebarImage {
	padding: 8px 8px 0;
	margin: 0;
	background: url('images/bkgd-paper.jpg') top left repeat;
	-moz-box-shadow: 0px 0px 15px #333;
	-webkit-box-shadow: 0px 0px 15px #333;
	box-shadow: 0px 0px 15px #333;
	text-align: left;
}
.sidebarImage p {
	display: block;
}
#sidebar-1 .sidebarImage .catalyst-excerpt-widget-inner {
	padding: 0;
}
.entry-image, .term-description img {
	float: left;
	margin: 10px 10px 10px 0;
	padding: 5px 5px 0 5px;
	background: url('images/bkgd-paper.jpg') top left repeat;
	-moz-box-shadow: 0px 0px 15px #333;
	-webkit-box-shadow: 0px 0px 15px #333;
	box-shadow: 0px 0px 15px #333;
}
.contact #content .entry-content {
	background: url('/wp-content/uploads/2013/01/contact.jpg') bottom no-repeat;
	padding: 90px 0;
	text-align: center;
	font-family: 'Almendra SC', serif;
	color: #fff;
	margin: 40px 0 0 0;
}
.contact #content .entry-content h2, .contact #content .entry-content p, .contact #content .entry-content a {
	color: #fff;
	font-family: 'Almendra SC', serif;
	font-size: 20px;
	line-height: 28px;
}
tr {
	verticle-align: top;
}
.relictours .wp-caption {
	margin: 0 10px 5px 0;
}
.display-posts-listing .excerpt {
	border-bottom: 1px solid #716653;
	width: 100%;
	padding-bottom: 15px;
	margin-bottom: 15px;
	font-weight: bold;
	font-style: italic;
}
.display-posts-listing .date {
	margin-bottom: 0;
}
span.excerpt-dash {
	display: none;
}
.display-posts-listing span {
	border: 0;
	padding: 0;
}
mark {
	background-color: transparent !important;
}
.archive #content .page ul li {
	margin: 0 0 0 0;
	list-style-type: none;
	padding: 10px 17px 0 0;
}
#fancybox-overlay {
	z-index: 9999999999 !important;
}
#fancybox-wrap {
	z-index: 99999999999 !important;
}
#fancybox-close:hover {
	background: #333;
}
div.product div.summary, #content div.product div.summary {
	float: left;
	width: 50%;
	margin: 0 0 2em 10px;
}
div.product .woocommerce_tabs .panel, #content div.product .woocommerce_tabs .panel {
	padding: 0 0 20px 0;
}
.related ul.products li.product, .related ul li.product, .upsells.products ul.products li.product, .upsells.products ul li.product {
	width: 25%;
}
.related ul.products first li.product {
	margin: 0 10px 0 0;
}
.woocommerce-page .type-product {
	-webkit-box-shadow: 0px 0px 20px #333, inset 0px 0px 50px rgba(73,29,0,0.7);
	box-shadow: 0px 0px 20px #333, inset 0px 0px 50px rgba(73,29,0,0.7);
	margin: 20px;
	background: url(images/bkgd-content-main.jpg) top repeat;
	border-top: 0px solid #FCF8D5;
	border-bottom: 0px solid #FCF8D5;
	border-left: 0px solid #FCF8D5;
	border-right: 0px solid #FCF8D5;
	padding: 30px 30px 0px 30px;
}
.woocommerce_info {
	margin: 21px 0 0;
	padding: 0 0 7px 43px;
}
.bxslider li {
	padding: 0 8px 0 0 !important;
}
/*****fix messages*****/
.woocommerce_info {
	float: left;
	width: 93%!important;
	padding: 10px 0 10px 40px!important;
	margin-bottom: 10px!important;
}
.page-template-template-blog-php .byline-meta {
	color: #333;
}
.page-template-template-blog-php #content h2 {
	line-height: 0;
}
.page-template-template-blog-php #content .entry-header {
	padding: 15px 60px 10px 20px;
}
.page-template-template-blog-php #content img {
	float: left;
	margin: 10px 10px 10px 0;
	padding: 5px 5px 0 5px;
	background: url('images/bkgd-paper.jpg') top left repeat;
	-moz-box-shadow: 0px 0px 15px #333;
	-webkit-box-shadow: 0px 0px 15px #333;
	box-shadow: 0px 0px 15px #333;
}
/*.single .entry-content{
margin-top: 35px;
}*/
.product {
	position: relative;
	min-height: 210px;
}
.page-template-template-blog-php .post-meta {
	border-top: none;
	margin: 0;
	padding: 0;
}
.page-template-template-blog-php #content .entry-title {
	padding: 7px 0 0;
}
.page-template-template-blog-php .post-meta p {
	display: none;
}
.archive #content .page ul li {
	min-height: 275px;
}
/***************** BLOG ********************/
.byline-meta {
	display: none;
}
/***************** SIDEBAR ********************/
#sidebar-1 .woocommerce.widget_featured_products ul {
	padding: 0;
}
#sidebar-1 .woocommerce.widget_featured_products ul li {
	list-style: none;
}
#sidebar-1 .woocommerce.widget_featured_products ul.product_list_widget li img {
	float: none;
	display: block;
	margin: 5px 0;
	width: inherit;
}
/***************** MailChimp ********************/
.mc_signup_submit {
	text-align: inherit;
}
#mc_signup_form .mc_input {
	width: 200px;
}
.mc_merge_var {
	padding: 10px 0;
}
.mc_signup_submit input[type="submit"] {
	font-size: 100%;
	margin: 0;
	line-height: 1em;
	cursor: pointer;
	position: relative;
	font-family: inherit;
	text-decoration: none;
	overflow: visible;
	padding: 6px 10px;
	text-decoration: none;
	font-weight: bold;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
	left: auto;
	text-shadow: 0 1px 0 #ffffe3;
	color: #766922;
	text-shadow: 0 1px 0 rgba(255,255,255,0.8);
	border: 1px solid #ead97a;
	background: #f8f2d2;
	background: -webkit-gradient(linear, left top, left bottom, from(#f8f2d2), to(#f1e5a6));
	background: -webkit-linear-gradient(#f8f2d2, #f1e5a6);
	background: -moz-linear-gradient(center top, #f8f2d2 0%, #f1e5a6 100%);
	background: -moz-gradient(center top, #f8f2d2 0%, #f1e5a6 100%);
	white-space: nowrap;
	display: inline-block;
	-webkit-box-shadow: inset 0 -1px 0 rgba(0,0,0,0.075), inset 0 1px 0 rgba(255,255,255,0.3), 0 1px 2px rgba(0,0,0,0.1);
	-moz-box-shadow: inset 0 -1px 0 rgba(0,0,0,0.075), inset 0 1px 0 rgba(255,255,255,0.3), 0 1px 2px rgba(0,0,0,0.1);
	box-shadow: inset 0 -1px 0 rgba(0,0,0,0.075), inset 0 1px 0 rgba(255,255,255,0.3), 0 1px 2px rgba(0,0,0,0.1);
}
#content-wrap .widget_mailchimpsf_widget {
	background: none;
	padding: 30px;
	background-color: rgba(255, 255, 255, 0.26);
	margin: 23px;
	text-align: center;
}
.woocommerce-page .related ul.products li.product img {
	width: 48% !important;
}

/*--------------------------
MEDIA QUERIES
--------------------------*/
@media only screen and (max-width: 1090px) {
.candle {
	display: none !important;
}
}
@media print {
#content .post, #content article, #container-wrap {
	border: 1px solid #fff;
	background: none;
}
#wrapper {
	clear: both !important;
	display: block !important;
	float: none !important;
	position: relative !important;
	border: none;
	border: 1px solid #fff;
}
#site-title, #site-description, #header-wrap {
	display: none;
}
#site-title {
	font-size: 13pt;
}
.entry-content {
	font-size: 14pt;
	line-height: 1.6em;
}
.entry-title {
	font-size: 21pt;
}
#access, #branding img, #respond, .comment-edit-link, .edit-link, .navigation, .page-link, .widget-area {
	display: none !important;
}
#container, #header, #footer {
	margin: 0;
	width: 100%;
}
#content, .one-column #content {
	margin: 24pt 0 0;
	width: 100%;
}
.wp-caption p {
	font-size: 11pt;
}
#site-info, #site-generator {
	float: none;
	width: auto;
}
#colophon {
	width: auto;
}
img#wpstats {
	display: none;
}
#site-generator a {
	margin: 0;
	padding: 0;
}
#main {
	display: inline;
}
.home .sticky {
	border: none;
}
body {
	background: #fff none !important;
	color: #000;
	text-shadow: none !important;
}
#navbar-1-wrap, #footer-wrap, .breadcrumbs, #sidebar-1, img.candle {
	display: none;
}
}
@media only screen and (min-width: 768px) and (max-width: 959px) {
.tubepress_container iframe {
	height: 420px;
}
}

@media only screen and (min-width: 481px) and (max-width: 767px) {
.tubepress_container iframe {
	height: 225px;
	width: 400px;
}
}
@media only screen and (max-width: 479px){
a.button, button.button, input.button, #respond input#submit, #content input.button {
    display: block !important;
}
}
@media only screen and (max-width: 480px) {
.tubepress_container iframe {
	height: 157px;
	width: 268px;
}
}
/***************** LATEST UPDATES ********************/
#sidebar-1 .widget .catalyst-excerpt-widget-inner p {
	padding: 0 0 .75em 0;
}
/* 5/5/14 */

#etsy-pro-store-area .indiv-product-box {
	padding: 5px;
	display: inline-block;
	/* border: 1px solid #ECECEC; */
	margin: 5px;
	padding: 10px;
	background: url('images/bkgd-paper.jpg') top left repeat;
	-moz-box-shadow: 0px 0px 15px #333;
	-webkit-box-shadow: 0px 0px 10px rgba(51, 51, 51, 0.5);
	box-shadow: 0px 0px 10px rgba(51, 51, 51, 0.5);
	background: #fff;
}
.store #content h2 {
	margin: 0;
}
#navbar-1-wrap {
	text-transform: none;
}
#nav-1 li li a, #nav-1 li li a:link, #nav-1 li li a:visited {
	text-transform: capitalize;
}
.etsypost #content h2 {
	margin: 0;
}

.mc_var_label, .mc_interest_label {
	float: left;
	text-align: right;
	width: 150px;
	margin: 0 10px 0 0;
}
#mc_signup_form .mc_input {
	width: 310px;
}
/* 6/16/14 */
.prayer #content-wrap .widget_mailchimpsf_widget, .prayer #sidebar-1 .entry-image {
	display: none;
}
.prayer #sidebar-1 h2.entry-title {
	font-size: 13px;
}
.prayer #sidebar-1 div.post.hentry.ivycat-post {
	margin: 0 0 20px 0;
}

/* 6/17/14 */
/*#sidebar-1 div.slideshow_pagination {
	display: none!important;
}
*/

/* 6/18/14 */

.prayer .entry-image {
	display: none;
}
.tubepress_thumb {
	height: auto;
	margin-bottom: 20px;
	line-height: 1.5em;
}
dd.tubepress_meta_title, dd.tubepress_meta_title a, dd.tubepress_meta_title a:hover {
	margin: 5px 0;
	text-decoration: none;
}
#sidebar-1 h4 {
	font-weight: bold;
}
/* 7/11/14 */
article.post-4745.post.type-post.status-publish.format-standard.hentry.category-reviews.catalyst-excerpt-widget {
	border-bottom: 1px solid #666;
}
/* 01/12/15 */
aside#excerpt-widget-9, aside#black-studio-tinymce-2 {
	background: rgba(255, 255, 255, 0.85) !important;
	padding: 20px !important;
}
img.aligncenter.wp-post-image {
	width: 100%;
	height: 100%;
}


/* Custom Responsive CSS */

@media only screen and (max-width: 998px) {
.candle {
	display: none;
}

}

@media only screen and (min-width: 768px) and (max-width: 998px) {

}

@media only screen and (min-width: 480px) and (max-width: 998px) {

}

@media only screen and (max-width: 767px) {
#ez-home-top-container {
	background: url('images/bkgd-feature.jpg') -420px 0 repeat-y;
}
#ez-home-top-1 {
	max-width: 100%;
}
}

@media only screen and (min-width: 480px) and (max-width: 767px) {

}

@media only screen and (max-width: 479px) {
.logo-image #header #header-left {
	background: url(images/magdalene-publishing-logo-320.png) center no-repeat;
	max-width: 100%;
}
#ez-home-bottom-2 {
	margin-left: 0;
}
.wp-caption{
	display: none;
}
a.button, button.button, input.button, #respond input#submit, #content input.button {
	display: block;
	width: 100%;
	box-sizing: border-box;
	text-align: center;
}
.related ul.products li.product, .related ul li.product, .upsells.products ul.products li.product, .upsells.products ul li.product {
width: 25%;
}
}

/* ============================================================
 * DESIGN AUDIT — PHASE 3: Layout modernization
 * Appended at end of file so these rules win source-order ties
 * against Dynamik/Catalyst defaults.
 * ============================================================ */

/* --- Fluid wrapper: replace fixed 998px with content-aware min() --- */
body #wrap,
body #wrapper,
body #header-wrap,
body #header,
body #navbar-1-wrap, body #navbar-2-wrap,
body #navbar-1, body #navbar-2,
body #content-wrap,
body #footer-wrap,
body #footer,
body.blogpage #wrap, body.blogpage #header, body.blogpage #navbar-1, body.blogpage #navbar-2, body.blogpage #footer,
body.giftshop #wrap, body.giftshop #header, body.giftshop #navbar-1, body.giftshop #navbar-2, body.giftshop #footer,
body.fullwidth #wrap, body.fullwidth #header, body.fullwidth #footer,
body.relictours #wrap, body.relictours #header, body.relictours #footer,
body.novenatours #wrap, body.novenatours #header, body.novenatours #footer,
body.prayer #wrap, body.prayer #header, body.prayer #footer,
body.reviews #wrap, body.reviews #header, body.reviews #footer {
	max-width: min(100% - 2rem, 1200px);
	margin-left: auto;
	margin-right: auto;
}

/* --- Soften the 2013-era inset "burned edge" shadows on post/article/product
 *     containers only. The home widgets (#ez-home-top-container, .homebox)
 *     are intentionally NOT in this list — Catalyst's own homeFeature widget
 *     relies on its 2013 background image + float layout, and replacing the
 *     inset shadow there strips the decorative parchment texture that made
 *     the hero readable. Leave home alone, soften the rest. --- */
body #content .post,
body #content article,
body .woocommerce-page .type-product,
body ul.products li.product a img,
body .zoom,
body .attachment-shop_thumbnail {
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
}

/* --- WooCommerce product archive → fluid grid (no floats) --- */
body .woocommerce ul.products,
body .woocommerce-page ul.products {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	gap: var(--space-5);
	margin: 0 0 var(--space-6);
	padding: 0;
	list-style: none;
}
body .woocommerce ul.products li.product,
body .woocommerce-page ul.products li.product {
	float: none;
	width: auto;
	margin: 0;
	clear: none;
}

/* Related / upsells: same grid, tighter minmax */
body .related ul.products,
body .upsells.products ul.products {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
	gap: var(--space-4);
}
body .related ul.products li.product,
body .upsells.products ul.products li.product {
	float: none;
	width: auto;
}

/* --- Blog list thumbnails: normalize aspect ratio (fix 136–229px ragging) --- */
body .blogpage #content .hentry .entry-image img,
body .blogpage .catalyst-excerpt-widget-inner img,
body #content .hentry .entry-image img {
	width: 100%;
	max-width: 400px;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	height: auto;
	border-radius: 4px;
}

/* --- Gift shop manual cards (styles migrated from custom-functions.php) --- */
.magdalene-gift-shop-manual-grid {
	display: grid;
	gap: var(--space-5);
	grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
	margin: var(--space-5) 0 var(--space-7);
}
.magdalene-gift-shop-card {
	background: #fff;
	border: 1px solid rgba(184, 138, 62, 0.35);
	border-radius: 6px;
	padding: var(--space-4);
	display: flex;
	flex-direction: column;
	transition: transform 150ms ease, box-shadow 150ms ease;
}
.magdalene-gift-shop-card:hover {
	transform: translateY(-2px);
	box-shadow: 0 6px 16px rgba(91, 57, 31, 0.12);
}
.magdalene-gift-shop-card-image {
	display: block;
	margin-bottom: var(--space-3);
}
.magdalene-gift-shop-card img {
	display: block;
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border-radius: 4px;
}
.magdalene-gift-shop-card h3 {
	font-family: var(--font-display);
	font-size: 1.125rem;
	line-height: 1.3;
	margin: 0 0 var(--space-2);
}
.magdalene-gift-shop-card h3 a {
	color: var(--ink);
	text-decoration: none;
}
.magdalene-gift-shop-card-price {
	font-family: var(--font-ui);
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--burgundy);
	margin: 0 0 var(--space-3);
}
.magdalene-gift-shop-card-link {
	font-family: var(--font-ui);
	font-weight: 600;
	color: var(--burgundy);
	text-decoration: underline;
	text-underline-offset: 3px;
}
.magdalene-gift-shop-card-link:hover {
	color: var(--burgundy-hover);
}

/* --- Small-screen layout fixes --- */
@media only screen and (max-width: 767px) {
	body #ez-home-top-1 {
		max-width: 100%;
		float: none;
	}
	body .homebox {
		max-width: none;
	}
}

/* ============================================================
 * DESIGN AUDIT — PHASE 4: Navigation & IA (skip link, sticky
 * header, improved mobile nav styling, focus states)
 *
 * NOTE: reordering nav items (Home / Mary Magdalene / Pilgrimages
 * / Relic Tours / Shop / Blog + CTA) requires admin action in
 * WordPress → Appearance → Menus, since the menu is stored in the
 * database. This section only handles the presentational layer.
 * ============================================================ */

/* Skip-to-content link — visible on focus only */
.magdalene-skip-link {
	position: absolute;
	left: -9999px;
	top: 0;
	z-index: 100000;
	background: var(--burgundy);
	color: #fff;
	padding: 0.75rem 1.25rem;
	font-family: var(--font-ui);
	font-weight: 600;
	text-decoration: none;
	border-radius: 0 0 6px 0;
}
.magdalene-skip-link:focus,
.magdalene-skip-link:focus-visible {
	left: 0;
	outline: 3px solid var(--gold);
	outline-offset: 2px;
}

/* Sticky header with soft parchment backdrop */
body #header-wrap {
	position: sticky;
	top: 0;
	z-index: 900;
	background: rgba(242, 228, 193, 0.94);
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
	border-bottom: 1px solid rgba(184, 138, 62, 0.3);
}

/* Nav — improve hit-area, spacing, focus */
body #nav-1 li a,
body #nav-2 li a {
	padding: 0.85rem 1rem;
	min-height: 44px;
	display: inline-flex;
	align-items: center;
	color: var(--ink);
}
body #nav-1 li a:hover,
body #nav-2 li a:hover,
body #nav-1 li.current-menu-item a,
body #nav-2 li.current-menu-item a {
	color: var(--burgundy);
	background: rgba(184, 138, 62, 0.12);
}
body #nav-1 li a:focus-visible,
body #nav-2 li a:focus-visible {
	outline: 3px solid var(--gold);
	outline-offset: -3px;
}

/* Dropdown submenus — cleaner surface */
body #nav-1 li ul,
body #nav-2 li ul,
body #nav-1 li li,
body #nav-2 li li {
	background: var(--parchment);
	border: 1px solid rgba(184, 138, 62, 0.35);
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.1);
}
body #nav-1 li li a,
body #nav-2 li li a {
	padding: 0.65rem 1rem;
	min-height: 40px;
}

/* Mobile navigation — Catalyst already provides catalyst_dropdown_nav_*.
 * Style the dropdown nav so it reads as a proper mobile menu. */
body .catalyst-dropdown-nav,
body select.catalyst-dropdown-nav {
	display: none;
	width: 100%;
	font-family: var(--font-ui);
	font-size: 1rem;
	padding: 0.75rem 1rem;
	min-height: 44px;
	background: var(--parchment);
	color: var(--ink);
	border: 1px solid rgba(184, 138, 62, 0.35);
	border-radius: 6px;
	margin: 0.5rem 0;
}

@media only screen and (max-width: 767px) {
	/* Hide the inline nav, show Catalyst's dropdown nav on small screens */
	body #nav-1, body #nav-2 {
		display: none;
	}
	body .catalyst-dropdown-nav,
	body select.catalyst-dropdown-nav {
		display: block;
	}
	body #header-wrap {
		padding: 0.5rem 1rem;
	}
}

/* "Plan a Pilgrimage" CTA item in the primary nav (Phase 8 menu rebuild
 * adds class="menu-cta" to the corresponding menu item). */
body #nav-1 li.menu-cta > a,
body #nav-2 li.menu-cta > a {
	background: var(--burgundy);
	color: #fff;
	padding: 0.5rem 1rem;
	border-radius: 6px;
	margin: 0 0.25rem;
	font-weight: 600;
}
body #nav-1 li.menu-cta > a:hover,
body #nav-2 li.menu-cta > a:hover {
	background: var(--burgundy-hover);
	color: #fff;
}
body #nav-1 li.menu-cta.current-menu-item > a::after,
body #nav-2 li.menu-cta.current-menu-item > a::after {
	display: none;
}

/* Current page indicator */
body #nav-1 li.current-menu-item > a::after,
body #nav-2 li.current-menu-item > a::after {
	content: "";
	position: absolute;
	left: 1rem;
	right: 1rem;
	bottom: 0.4rem;
	height: 2px;
	background: var(--burgundy);
}
body #nav-1 li,
body #nav-2 li {
	position: relative;
}

/* ============================================================
 * DESIGN AUDIT — PHASE 5: Responsive imagery (home hero excluded)
 *
 * The home hero (#ez-home-top-container) is intentionally NOT
 * styled here. Its layout is owned by Catalyst's homeFeature
 * widget which uses a float-based image+text arrangement with a
 * decorative background — overriding aspect-ratio / min-height /
 * overflow on the container collapses that layout. The `wp media
 * regenerate` step still benefits the hero by giving WP the
 * larger srcset crops to choose from when the image is swapped.
 * ============================================================ */

/* Allow inline media inside the hero to scale fluidly without
 * forcing a min-height or background — let parent theme drive layout. */
body #ez-home-top-container img,
body #ez-home-top-container iframe,
body #ez-home-top-container embed {
	max-width: 100%;
	height: auto;
}

/* Constrain wide post/page images to the content column */
body .entry-content img,
body #content .post img,
body #content article img {
	max-width: 100%;
	height: auto;
}

/* Section feature images: enforce 4:3 aspect when used as featured */
body .entry-image img,
body .wp-post-image {
	max-width: 100%;
	height: auto;
}

/* Author / avatar circles */
body .author-avatar img,
body img.avatar {
	width: 96px;
	height: 96px;
	border-radius: 50%;
	object-fit: cover;
}

/* Product images (cards) */
body .woocommerce ul.products li.product img,
body .woocommerce-page ul.products li.product img {
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	display: block;
	border-radius: 4px;
}

/* Figure + caption pairing */
body figure,
body .wp-caption {
	margin: var(--space-5) 0;
	max-width: 100%;
}
body figcaption,
body .wp-caption .wp-caption-text {
	font-family: var(--font-ui);
	font-size: 0.875rem;
	color: rgba(26, 18, 8, 0.75);
	margin-top: var(--space-2);
	line-height: 1.5;
}

/* ============================================================
 * DESIGN AUDIT — PHASE 6: Blog template polish
 * ============================================================ */

/* Category pill-chips above each excerpt on archive / home */
.magdalene-post-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	margin: 0 0 var(--space-3);
}
.magdalene-post-chip {
	display: inline-block;
	font-family: var(--font-ui);
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	padding: 0.25rem 0.75rem;
	border-radius: 999px;
	background: rgba(184, 138, 62, 0.18);
	color: var(--burgundy);
	text-decoration: none;
	border: 1px solid rgba(184, 138, 62, 0.4);
}
.magdalene-post-chip:hover,
.magdalene-post-chip:focus-visible {
	background: rgba(184, 138, 62, 0.35);
	color: var(--burgundy-hover);
	text-decoration: none;
}

/* Smaller variant of the standard burgundy button for inline "Read more" */
body .button.button--small,
body a.button.button--small,
body .magdalene-read-more {
	display: inline-block;
	padding: 0.4rem 0.85rem;
	font-size: 0.875rem;
	min-height: 0;
	line-height: 1.4;
	margin-left: 0.4rem;
}

/* Numbered pagination — replaces Catalyst's "Next Page »" output */
.magdalene-pagination {
	margin: var(--space-7) 0 var(--space-6);
	font-family: var(--font-ui);
}
.magdalene-pagination ul {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	list-style: none;
	margin: 0;
	padding: 0;
	justify-content: center;
}
.magdalene-pagination a,
.magdalene-pagination span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	min-height: 44px;
	padding: 0.4rem 0.75rem;
	border: 1px solid rgba(184, 138, 62, 0.4);
	border-radius: 6px;
	background: var(--parchment);
	color: var(--burgundy);
	font-weight: 600;
	text-decoration: none;
	font-size: 0.9375rem;
}
.magdalene-pagination a:hover,
.magdalene-pagination a:focus-visible {
	background: var(--burgundy);
	color: #fff;
	border-color: var(--burgundy);
}
.magdalene-pagination .current {
	background: var(--burgundy);
	color: #fff;
	border-color: var(--burgundy);
}
.magdalene-pagination .dots {
	border-color: transparent;
	background: transparent;
}

/* ============================================================
 * DESIGN AUDIT — PHASE 7: Long-read treatment + Gravity Forms
 * ============================================================ */

/* Single-post long-read column */
body.single-post .entry-content {
	max-width: 720px;
	margin-inline: auto;
}

/* Drop-cap on the first paragraph of a single post */
body.single-post .entry-content > p:first-of-type::first-letter {
	font-family: var(--font-display);
	font-size: 4.5rem;
	line-height: 0.85;
	float: left;
	padding: 0.4rem 0.6rem 0 0;
	color: var(--burgundy);
	font-weight: 600;
}

/* Pull-quote — apply class="pullquote" to a blockquote in editor */
body.single-post .entry-content blockquote.pullquote,
body.single-post .entry-content blockquote.pull-quote {
	border-left: 3px solid var(--gold);
	padding: 0.5rem 0 0.5rem 1.5rem;
	margin: var(--space-6) 0;
	font-family: var(--font-display);
	font-size: 1.5rem;
	line-height: 1.4;
	color: var(--ink);
	font-style: italic;
	background: transparent;
}

/* Auto-generated table of contents — sticky right-rail on desktop */
.magdalene-toc {
	background: rgba(184, 138, 62, 0.08);
	border: 1px solid rgba(184, 138, 62, 0.35);
	border-radius: 6px;
	padding: var(--space-4);
	margin: 0 0 var(--space-5);
	font-family: var(--font-ui);
}
.magdalene-toc__heading {
	font-size: 0.875rem;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--burgundy);
	margin: 0 0 var(--space-3);
}
.magdalene-toc ol {
	list-style: decimal;
	padding-left: 1.25rem;
	margin: 0;
}
.magdalene-toc li {
	margin: 0.25rem 0;
}
.magdalene-toc a {
	color: var(--ink);
	text-decoration: none;
	font-size: 0.9375rem;
	line-height: 1.4;
}
.magdalene-toc a:hover,
.magdalene-toc a:focus-visible {
	color: var(--burgundy);
	text-decoration: underline;
	text-underline-offset: 3px;
}

@media only screen and (min-width: 1024px) {
	body.single-post #content .post {
		position: relative;
	}
	body.single-post .magdalene-toc {
		position: sticky;
		top: 6rem;
		float: right;
		clear: right;
		width: 240px;
		margin: 0 0 var(--space-5) var(--space-5);
		max-height: calc(100vh - 8rem);
		overflow-y: auto;
	}
}

/* Gravity Forms — bring fields up to the audit's input standard */
.gform_wrapper input[type="text"],
.gform_wrapper input[type="email"],
.gform_wrapper input[type="tel"],
.gform_wrapper input[type="url"],
.gform_wrapper input[type="number"],
.gform_wrapper input[type="password"],
.gform_wrapper input[type="search"],
.gform_wrapper select,
.gform_wrapper textarea {
	min-height: 44px;
	padding: 0.5rem 0.75rem;
	font-family: var(--font-body);
	font-size: 1rem;
	color: var(--ink);
	background: #fff;
	border: 1px solid rgba(110, 18, 8, 0.3);
	border-radius: 4px;
	box-shadow: none;
}
.gform_wrapper textarea {
	min-height: 132px;
	line-height: 1.5;
}
.gform_wrapper label.gfield_label,
.gform_wrapper .gfield_label {
	font-family: var(--font-ui);
	font-size: 0.9375rem;
	font-weight: 600;
	color: var(--ink);
	margin-bottom: 0.75rem;
	display: block;
}
.gform_wrapper input:focus,
.gform_wrapper select:focus,
.gform_wrapper textarea:focus {
	outline: none;
	border-color: var(--burgundy);
	box-shadow: 0 0 0 3px rgba(110, 18, 8, 0.35);
}
.gform_wrapper .gform_button,
.gform_wrapper input[type="submit"] {
	background: var(--burgundy);
	color: #fff;
	font-family: var(--font-ui);
	font-weight: 600;
	font-size: 1rem;
	min-height: 44px;
	padding: 0.75rem 1.5rem;
	border: none;
	border-radius: 6px;
	cursor: pointer;
	text-shadow: none;
}
.gform_wrapper .gform_button:hover,
.gform_wrapper input[type="submit"]:hover {
	background: var(--burgundy-hover);
}

/* ============================================================
 * DESIGN AUDIT — PHASE 9: type-size + contrast override pass
 *
 * dynamik.css locks widget-area, sidebar, blog-excerpt-widget, and
 * caption font-sizes at 12–14px with !important — those declarations
 * defeat the Phase 2 token-driven type system everywhere except the
 * raw <body>. This block re-asserts the audit's minimums (body
 * ≥1rem / 16px, captions ≥0.875rem / 14px, byline meta ≥0.875rem)
 * with matching !important specificity, plus forces --ink on body
 * copy and the unified --burgundy for links so contrast hits AAA on
 * parchment everywhere.
 * ============================================================ */

/* Catalyst widget area (sidebars, footer columns) */
body .catalyst-widget-area {
	font-family: var(--font-body) !important;
	font-size: 1rem !important;
	line-height: 1.6 !important;
	color: var(--ink) !important;
}
body .catalyst-widget-area p,
body .catalyst-widget-area li,
body .catalyst-widget-area td {
	font-size: 1rem !important;
	line-height: 1.6 !important;
	color: var(--ink) !important;
}
body .catalyst-widget-area h4 {
	font-family: var(--font-display) !important;
	font-size: 1.25rem !important;
	color: var(--burgundy) !important;
	line-height: 1.3 !important;
}
body .catalyst-widget-area a,
body .catalyst-widget-area a:visited {
	color: var(--link) !important;
}
body .catalyst-widget-area a:hover {
	color: var(--burgundy-hover) !important;
}

/* Catalyst Excerpt widget — used by blog listings & home recent-posts */
body .catalyst-excerpt-widget,
body #content .catalyst-excerpt-widget {
	font-family: var(--font-body);
}
body .catalyst-excerpt-widget .entry-content p,
body .catalyst-excerpt-widget .entry-content li,
body .catalyst-excerpt-widget .entry-summary p {
	font-family: var(--font-body) !important;
	font-size: 1rem !important;
	line-height: 1.6 !important;
	color: var(--ink) !important;
}
body .catalyst-excerpt-widget h2 {
	font-family: var(--font-display) !important;
	font-size: 1.5rem !important;
	line-height: 1.25 !important;
	color: var(--ink) !important;
	margin: 0 0 var(--space-2) !important;
}
body .catalyst-excerpt-widget h2 a,
body .catalyst-excerpt-widget h2 a:visited {
	color: var(--link) !important;
}
body .catalyst-excerpt-widget h2 a:hover {
	color: var(--burgundy-hover) !important;
}
body .catalyst-excerpt-widget .byline-meta {
	font-family: var(--font-ui) !important;
	font-size: 0.875rem !important;
	line-height: 1.5 !important;
	color: rgba(26, 18, 8, 0.75) !important;
}
body .catalyst-excerpt-widget .byline-meta a,
body .catalyst-excerpt-widget .byline-meta a:visited {
	color: var(--link) !important;
}

/* Home widget area body text (homeFeature, recent posts on home, etc.) */
body #ez-home-container-wrap .ez-widget-area {
	font-family: var(--font-body) !important;
	font-size: 1.0625rem !important;
	line-height: 1.65 !important;
	color: var(--ink) !important;
}
body #ez-home-container-wrap .ez-widget-area p,
body #ez-home-container-wrap .ez-widget-area li,
body #ez-home-container-wrap .ez-widget-area .entry-content p {
	font-family: var(--font-body) !important;
	font-size: 1.0625rem !important;
	line-height: 1.65 !important;
	color: var(--ink) !important;
}
body #ez-home-container-wrap .ez-widget-area h4 {
	font-family: var(--font-display) !important;
	font-size: 1.5rem !important;
	line-height: 1.3 !important;
	color: var(--burgundy) !important;
}
body #ez-home-container-wrap .ez-widget-area a,
body #ez-home-container-wrap .ez-widget-area a:visited {
	color: var(--link) !important;
}
body #ez-home-container-wrap .ez-widget-area a:hover {
	color: var(--burgundy-hover) !important;
}

/* Sidebar widget areas (#sidebar-1, #sidebar-2, #ez-home-sidebar-1) */
body #sidebar-1, body #sidebar-2, body #ez-home-sidebar-1 {
	font-family: var(--font-body);
	font-size: 1rem;
	line-height: 1.6;
	color: var(--ink);
}
body #sidebar-1 .textwidget,
body #sidebar-2 .textwidget,
body #ez-home-sidebar-1 .textwidget,
body #sidebar-1 .catalyst-excerpt-widget-inner,
body #sidebar-2 .catalyst-excerpt-widget-inner,
body #ez-home-sidebar-1 .catalyst-excerpt-widget-inner {
	font-size: 1rem;
	line-height: 1.6;
}
body #sidebar-1 .widget li,
body #sidebar-2 .widget li,
body #ez-home-sidebar-1 .widget li {
	font-size: 1rem !important;
	line-height: 1.6 !important;
	margin: 0.4rem 0 !important;
}

/* Sidebar pages widget — was rendering in the small all-caps perpetualight */
body .widget_pages,
body .widget_pages a,
body .widget_pages a:visited {
	font-family: var(--font-ui) !important;
	font-size: 0.9375rem !important;
	line-height: 1.5 !important;
}
body .widget_pages a,
body .widget_pages a:visited {
	color: var(--link) !important;
}
body .widget_pages a:hover {
	color: var(--burgundy-hover) !important;
}

/* Image captions — was 12px Georgia, now 14px Inter for legibility */
body .wp-caption p.wp-caption-text,
body .catalyst-excerpt-widget .wp-caption p.wp-caption-text {
	font-family: var(--font-ui) !important;
	font-size: 0.875rem !important;
	line-height: 1.5 !important;
	color: rgba(26, 18, 8, 0.75) !important;
}

/* Post / page entry content — single-post body text */
body #content .entry-content,
body #content .entry-content p,
body #content .entry-content li,
body #content .entry-content blockquote {
	font-family: var(--font-body);
	font-size: 1.125rem;
	line-height: 1.7;
	color: var(--ink);
}
body #content .entry-content small {
	font-size: 0.875rem;
}

/* Post titles + entry headers everywhere */
body #content .entry-title,
body #content .entry-header h1,
body #content h2.entry-title {
	font-family: var(--font-display);
	color: var(--ink);
}
body #content .entry-title a,
body #content .entry-title a:visited {
	color: var(--ink);
}
body #content .entry-title a:hover {
	color: var(--burgundy);
}

/* Byline / post meta on archive + single — readable Inter, not 11px Georgia */
body .byline-meta,
body .post-info,
body .entry-meta,
body .post-meta {
	font-family: var(--font-ui) !important;
	font-size: 0.875rem !important;
	line-height: 1.5 !important;
	color: rgba(26, 18, 8, 0.75) !important;
}
body .byline-meta a,
body .post-info a,
body .entry-meta a {
	color: var(--link) !important;
}

/* WooCommerce product listing / single typography */
body .woocommerce ul.products li.product .woocommerce-loop-product__title,
body .woocommerce-page ul.products li.product .woocommerce-loop-product__title,
body .woocommerce ul.products li.product h2,
body .woocommerce ul.products li.product h3 {
	font-family: var(--font-display) !important;
	font-size: 1.125rem !important;
	line-height: 1.3 !important;
	color: var(--ink) !important;
	padding: var(--space-2) 0 0 !important;
}
body .woocommerce .price,
body .woocommerce-page .price {
	font-family: var(--font-ui) !important;
	font-size: 1rem !important;
	font-weight: 700 !important;
	color: var(--burgundy) !important;
}
body .woocommerce div.product .woocommerce-product-details__short-description,
body .woocommerce-Tabs-panel p {
	font-size: 1.0625rem !important;
	line-height: 1.65 !important;
	color: var(--ink) !important;
}

/* Footer typography — already 15px from Phase 1, raise readability + contrast */
body #footer,
body #footer p,
body #footer .footer-content,
body #footer p.footer-content {
	font-family: var(--font-ui) !important;
	font-size: 0.9375rem !important;
	line-height: 1.6 !important;
	color: rgba(242, 228, 193, 0.92);
}
body #footer a,
body #footer a:visited {
	color: var(--gold) !important;
	text-decoration: underline;
	text-underline-offset: 3px;
}
body #footer a:hover {
	color: #D4A458 !important;
}

/* Blog listing post titles — make sure they read as titles, not buttons */
body.blogpage #content .entry-title,
body.blogpage #content h2.entry-title {
	font-size: clamp(1.5rem, 1.2rem + 1.2vw, 1.875rem) !important;
	margin: 0 0 var(--space-3) !important;
}
body.blogpage #content .entry-title a,
body.blogpage #content .entry-title a:visited {
	color: var(--ink) !important;
	background: transparent !important;
	padding: 0 !important;
	font-weight: 600 !important;
}
body.blogpage #content .entry-title a:hover {
	color: var(--burgundy) !important;
}

/* Comments */
body #comments,
body #comments p,
body .commentlist li,
body .commentlist li p {
	font-family: var(--font-body) !important;
	font-size: 1rem !important;
	line-height: 1.6 !important;
	color: var(--ink) !important;
}
body #respond label,
body #commentform label {
	font-family: var(--font-ui) !important;
	font-size: 0.9375rem !important;
}

/* Ensure .homebox content (3 cards on home) is readable, not 13px */
body .homebox h4,
body .homebox h3 {
	font-family: var(--font-display) !important;
	font-size: 1.25rem !important;
	line-height: 1.3 !important;
	color: var(--burgundy) !important;
}
body .homebox p,
body .homebox li {
	font-family: var(--font-body) !important;
	font-size: 1rem !important;
	line-height: 1.6 !important;
	color: var(--ink) !important;
}

/* Tag clouds + archive lists — were Perpetua 11px */
body .widget_tag_cloud a,
body .widget_archive li,
body .widget_categories li,
body .widget_meta li,
body .widget_recent_entries li {
	font-family: var(--font-ui) !important;
	font-size: 0.9375rem !important;
	line-height: 1.6 !important;
}


/* ============================================================
 * PROMOTED FROM THEME STAGING LAYER
 * Merged from the retired theme-only design branch so the
 * redesigned experience now loads on every environment.
 * ============================================================ */

/* ============================================================
 * PROMOTED DESIGN OVERRIDES
 *
 * Sections:
 *   A. Uniform backgrounds — kill parchment textures behind text
 *   B. Container overflow — keep content inside its parent
 *   C. Header behavior + mobile drawer
 * ============================================================ */

body {
	--cream: #FFFAF1;
	--drawer-bg: var(--parchment);
	--drawer-shadow: none;
	--stage-shell-gutter: 1rem;
	--stage-shell-width: min(calc(100% - (var(--stage-shell-gutter) * 2)), 998px);
	--stage-shell-inner-pad: 1.5rem;
	--stage-shell-radius: 0;
}


/* ============================================================
 * SECTION A — Uniform backgrounds
 * Kill texture JPGs from every text-bearing surface. We use
 * !important because the original Dynamik rules use the
 * `background:` shorthand (which sets background-image) and
 * we need to defeat that without rewriting the shorthand.
 * ============================================================ */

body,
body #header-wrap,
body #navbar-1-wrap,
body .nav-1-chosen-select,
body #container-wrap,
body #content .post,
body #content article,
body #content .page,
body #content .sticky,
body .catalyst-widget-area,
body #home-hook-wrap,
body #ez-feature-top-container-wrap,
body #ez-home-middle-container .widgettitle,
body .homebox,
body #content .entry-header,
body #footer-wrap,
body .woocommerce-page .type-product,
body #nav-1 li li a,
body #nav-1 li li a:link,
body #nav-1 li li a:visited,
body #nav-1 li li a:hover,
body #nav-1 li li a:active {
	background-image: none !important;
}

/* Body keeps its production parchment-burgundy texture so the
   fixed .candle PNG has a decorative backdrop. Phase 9 still
   applies to every inner panel (header-wrap, container-wrap,
   footer-wrap, post/page bodies) — only the body underneath
   regains its texture. */
body {
	background: var(--burgundy) url(images/bkgd.jpg) top repeat !important;
}

body #header-wrap,
body #navbar-1-wrap,
body .nav-1-chosen-select {
	background-color: var(--parchment) !important;
}

body #container-wrap,
body #content .post,
body #content article,
body #content .page,
body #content .sticky,
body .catalyst-widget-area,
body #home-hook-wrap,
body #ez-feature-top-container-wrap,
body .homebox,
body .woocommerce-page .type-product {
	background-color: var(--cream) !important;
}

body #ez-home-middle-container .widgettitle {
	background-color: var(--gold) !important;
	color: var(--ink);
}

body #footer-wrap {
	background-color: var(--burgundy) !important;
	color: #fff;
}

body #nav-1 li li a,
body #nav-1 li li a:link,
body #nav-1 li li a:visited {
	background-color: var(--parchment) !important;
}

body #nav-1 li li a:hover,
body #nav-1 li li a:active {
	background-color: rgba(184, 138, 62, 0.18) !important;
}

body #header-wrap,
body #navbar-1-wrap,
body #container-wrap,
body #home-hook-wrap,
body #footer-wrap {
	width: 100%;
	max-width: var(--stage-shell-width);
	margin-left: auto !important;
	margin-right: auto !important;
	border-radius: var(--stage-shell-radius);
}

body #header,
body #navbar-1,
body #container,
body #footer {
	width: 100% !important;
	max-width: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

body #ez-home-container-wrap,
body #ez-home-top-container,
body #ez-home-middle-container,
body #ez-home-bottom-container {
	width: 100% !important;
	max-width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

body #ez-home-top-container {
	background-color: var(--cream) !important;
	background-image: url('images/bkgd-feature.jpg') !important;
	background-position: 0 -40px !important;
	background-repeat: repeat-y !important;
}


/* ============================================================
 * SECTION B — Container overflow
 * ============================================================ */

body,
body *,
body *::before,
body *::after {
	box-sizing: border-box;
}

body {
	overflow-x: hidden;
}

body img,
body iframe,
body video,
body embed,
body object {
	max-width: 100%;
	height: auto;
}

body p,
body li,
body h1,
body h2,
body h3,
body h4,
body h5,
body h6,
body a {
	overflow-wrap: anywhere;
	word-wrap: break-word;
}

/* Convert hardcoded pixel widths to fluid (.latestpress was width:240px) */
body .latestpress,
body .latestpress .catalyst-excerpt-widget-inner {
	width: 100%;
	max-width: 240px;
}

/* Below 999px, dissolve the margin-based sidebar reservation. */
@media only screen and (max-width: 998px) {
	body #content,
	body .right-sidebar #content,
	body .left-sidebar #content,
	body .double-sidebar #content,
	body .double-left-sidebar #content {
		margin-left: 0 !important;
		margin-right: 0 !important;
		width: 100% !important;
		float: none !important;
	}

	body #ez-home-sidebar-1-wrap {
		width: 100% !important;
		margin-left: 0 !important;
		float: none !important;
	}

	body #ez-home-container-wrap {
		margin-right: 0 !important;
		margin-left: 0 !important;
		width: 100% !important;
		float: none !important;
	}

	body .ez-widget-area,
	body .catalyst-widget-area {
		max-width: 100%;
	}
}

@media only screen and (min-width: 999px) {
	body #ez-home-container-wrap {
		width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		float: none !important;
	}
}

@media only screen and (max-width: 767px) {
	body .homebox {
		max-width: 100%;
		width: 100%;
	}
}

/* ============================================================
 * SECTION C — Staging homepage rebuild
 * ============================================================ */

body.home .magdalene-homepage,
body.front-page .magdalene-homepage {
	--magdalene-home-burgundy: #78150c;
	--magdalene-home-burgundy-deep: #5c120c;
	--magdalene-home-gold: #c7a35a;
	--magdalene-home-paper: #f8ecd1;
	--magdalene-home-paper-deep: #ead6a7;
	--magdalene-home-ink: #241813;
	--magdalene-home-muted: #5f5044;
	--magdalene-home-border: rgba(113, 102, 83, 0.42);
	color: var(--magdalene-home-ink);
	font-family: Georgia, serif;
}

body.home #home-hook-wrap,
body.front-page #home-hook-wrap {
	padding: 0 !important;
	background:
		linear-gradient(180deg, rgba(248, 236, 209, 0.98), rgba(235, 214, 167, 0.92)),
		url('images/bkgd-feature.jpg') center top repeat-y !important;
}

body.home .magdalene-homepage h1,
body.home .magdalene-homepage h2,
body.home .magdalene-homepage h3,
body.front-page .magdalene-homepage h1,
body.front-page .magdalene-homepage h2,
body.front-page .magdalene-homepage h3 {
	margin: 0;
	color: var(--magdalene-home-burgundy-deep);
	font-family: var(--font-display), Georgia, serif;
	font-weight: 600;
	line-height: 1.1;
	letter-spacing: 0.01em;
}

body.home .magdalene-homepage p,
body.front-page .magdalene-homepage p {
	margin: 0;
	font-size: 1rem;
	line-height: 1.7;
}

body.home .magdalene-homepage a,
body.front-page .magdalene-homepage a {
	color: var(--magdalene-home-burgundy);
}

body.home .magdalene-homepage > section,
body.front-page .magdalene-homepage > section {
	padding: clamp(2rem, 5vw, 4rem);
}

body.home .magdalene-home-hero,
body.front-page .magdalene-home-hero {
	display: grid;
	grid-template-columns: minmax(200px, 0.5fr) minmax(0, 1fr);
	gap: 0;
	align-items: stretch;
	min-height: 240px;
	max-height: 360px;
	background: var(--magdalene-home-paper) !important;
	color: var(--magdalene-home-ink);
	border-bottom: 1px solid var(--magdalene-home-border);
	padding: 0 !important;
}

body.home .magdalene-home-hero h1,
body.home .magdalene-home-hero h2,
body.front-page .magdalene-home-hero h1,
body.front-page .magdalene-home-hero h2 {
	font-size: clamp(1.4rem, 2.5vw, 2rem);
	color: var(--magdalene-home-ink);
	max-width: 18ch;
}

body.home .magdalene-home-hero-copy,
body.home .magdalene-home-founder-copy,
body.front-page .magdalene-home-hero-copy,
body.front-page .magdalene-home-founder-copy {
	padding: clamp(2.5rem, 5vw, 4.5rem) clamp(2rem, 4vw, 3.5rem);
	align-content: center;
}

body.home .magdalene-home-hero-copy,
body.home .magdalene-home-feature-copy,
body.home .magdalene-home-story-copy,
body.front-page .magdalene-home-hero-copy,
body.front-page .magdalene-home-feature-copy,
body.front-page .magdalene-home-story-copy {
	display: grid;
	gap: 1.25rem;
}

body.home .magdalene-home-eyebrow,
body.home .magdalene-home-section-label,
body.front-page .magdalene-home-eyebrow,
body.front-page .magdalene-home-section-label {
	font-family: Georgia, serif;
	font-size: 0.85rem;
	font-weight: 700;
	letter-spacing: 0.25em;
	text-transform: uppercase;
}

body.home .magdalene-home-eyebrow,
body.front-page .magdalene-home-eyebrow {
	color: var(--magdalene-home-gold);
}

body.home .magdalene-home-lead,
body.front-page .magdalene-home-lead {
	max-width: 50ch;
	font-size: 1.2rem;
	color: rgba(255, 247, 232, 0.92);
}

body.home .magdalene-home-hero .magdalene-home-lead,
body.front-page .magdalene-home-hero .magdalene-home-lead {
	font-size: 1rem;
	max-width: 44ch;
	color: var(--magdalene-home-muted);
}

body.home .magdalene-home-hero-media,
body.front-page .magdalene-home-hero-media {
	background: transparent;
	border: none;
	height: 100%;
}

body.home .magdalene-home-hero-media,
body.home .magdalene-home-feature-media,
body.home .magdalene-home-story-image,
body.front-page .magdalene-home-hero-media,
body.front-page .magdalene-home-feature-media,
body.front-page .magdalene-home-story-image {
	box-shadow: none !important;
	overflow: hidden;
}

body.home .magdalene-home-feature-media,
body.home .magdalene-home-story-image,
body.front-page .magdalene-home-feature-media,
body.front-page .magdalene-home-story-image {
	background: var(--magdalene-home-paper);
	border: 1px solid var(--magdalene-home-gold);
}

body.home .magdalene-home-hero-media img,
body.home .magdalene-home-feature-media img,
body.home .magdalene-home-story-image img,
body.front-page .magdalene-home-hero-media img,
body.front-page .magdalene-home-feature-media img,
body.front-page .magdalene-home-story-image img {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 100%;
	object-fit: cover;
}

body.home .magdalene-home-actions,
body.front-page .magdalene-home-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	padding-top: 0.5rem;
}

body.home a.magdalene-home-cta,
body.front-page a.magdalene-home-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 1rem 1.5rem;
	border: 1px solid var(--magdalene-home-gold);
	background: var(--magdalene-home-gold);
	color: #231610 !important;
	font-family: Georgia, serif;
	font-size: 0.9rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-decoration: none !important;
	text-transform: uppercase;
	box-shadow: none !important;
	transition: background-color 0.2s ease, color 0.2s ease;
}

body.home a.magdalene-home-cta:hover,
body.home a.magdalene-home-cta:focus-visible,
body.front-page a.magdalene-home-cta:hover,
body.front-page a.magdalene-home-cta:focus-visible {
	background: transparent;
	color: var(--magdalene-home-gold) !important;
}

/* Secondary Hero CTA */
body.home .magdalene-home-hero .magdalene-home-cta:nth-child(2),
body.front-page .magdalene-home-hero .magdalene-home-cta:nth-child(2) {
	background: transparent;
	color: #fff7e8 !important;
	border-color: rgba(255, 247, 232, 0.4);
}

body.home .magdalene-home-hero .magdalene-home-cta:nth-child(2):hover,
body.front-page .magdalene-home-hero .magdalene-home-cta:nth-child(2):hover {
	border-color: var(--magdalene-home-gold);
	color: var(--magdalene-home-gold) !important;
}

body.home .magdalene-home-etsy,
body.front-page .magdalene-home-etsy {
	display: flex;
	flex-direction: column;
	gap: 2.5rem;
	background: #fff !important;
	border-bottom: 1px solid var(--magdalene-home-border);
	box-shadow: none !important;
}

body.home .magdalene-home-etsy h2,
body.front-page .magdalene-home-etsy h2 {
	font-size: clamp(1.6rem, 3vw, 2.4rem);
}

/* ---- Product grid ---- */

body.home .magdalene-etsy-products,
body.front-page .magdalene-etsy-products {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.5rem;
}

body.home .magdalene-product-card,
body.front-page .magdalene-product-card {
	display: flex;
	flex-direction: column;
	text-decoration: none;
	color: var(--magdalene-home-ink);
	border: 1px solid var(--magdalene-home-border);
	border-radius: 4px;
	overflow: hidden;
	background: #fff8ed;
	transition: box-shadow 0.2s ease, border-color 0.2s ease;
}

body.home .magdalene-product-card:hover,
body.front-page .magdalene-product-card:hover {
	border-color: var(--magdalene-home-gold);
	box-shadow: 0 4px 16px rgba(92, 18, 12, 0.12);
}

body.home .magdalene-product-card__image,
body.front-page .magdalene-product-card__image {
	aspect-ratio: 1 / 1;
	overflow: hidden;
	flex-shrink: 0;
}

body.home .magdalene-product-card__image img,
body.front-page .magdalene-product-card__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	display: block;
	transition: transform 0.3s ease;
}

body.home .magdalene-product-card:hover .magdalene-product-card__image img,
body.front-page .magdalene-product-card:hover .magdalene-product-card__image img {
	transform: scale(1.04);
}

body.home .magdalene-product-card__body,
body.front-page .magdalene-product-card__body {
	padding: 1rem 1.1rem 1.1rem;
	display: grid;
	gap: 0.35rem;
}

body.home .magdalene-product-card__title,
body.front-page .magdalene-product-card__title {
	margin: 0;
	font-family: var(--font-display), Georgia, serif;
	font-size: 1rem;
	font-weight: 700;
	color: var(--magdalene-home-burgundy-deep);
	line-height: 1.25;
}

body.home .magdalene-product-card__desc,
body.front-page .magdalene-product-card__desc {
	margin: 0;
	font-size: 0.875rem;
	color: var(--magdalene-home-muted);
	line-height: 1.5;
}

body.home .magdalene-product-card__link,
body.front-page .magdalene-product-card__link {
	display: inline-block;
	margin-top: 0.4rem;
	font-size: 0.85rem;
	font-weight: 700;
	color: var(--magdalene-home-burgundy);
	border-bottom: 1px solid var(--magdalene-home-gold);
	padding-bottom: 0.1rem;
}

/* ---- Jewelry carousel ---- */

body.home .magdalene-jewelry-section,
body.front-page .magdalene-jewelry-section {
	display: grid;
	gap: 1rem;
	min-width: 0;
}

body.home .magdalene-jewelry-label,
body.front-page .magdalene-jewelry-label {
	color: var(--magdalene-home-muted);
}

body.home .magdalene-jewelry-carousel,
body.front-page .magdalene-jewelry-carousel {
	display: block;
	overflow: hidden;
	min-width: 0;
}

body.home .magdalene-jewelry-viewport,
body.front-page .magdalene-jewelry-viewport {
	overflow: hidden;
	width: 100%;
	flex: 1;
	min-width: 0;
}

body.home .magdalene-jewelry-track,
body.front-page .magdalene-jewelry-track {
	display: flex;
	gap: 1rem;
	will-change: transform;
}

body.home .magdalene-jewelry-slide,
body.front-page .magdalene-jewelry-slide {
	flex: 0 0 calc(25% - 0.75rem);
	display: flex;
	flex-direction: column;
	gap: 0.6rem;
	text-decoration: none;
	color: var(--magdalene-home-ink);
}

body.home .magdalene-jewelry-slide__image,
body.front-page .magdalene-jewelry-slide__image {
	aspect-ratio: 1 / 1;
	overflow: hidden;
	border-radius: 4px;
	border: 1px solid var(--magdalene-home-border);
	background: #fff8ed;
}

body.home .magdalene-jewelry-slide__image img,
body.front-page .magdalene-jewelry-slide__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	display: block;
	transition: transform 0.3s ease;
}

body.home .magdalene-jewelry-slide:hover .magdalene-jewelry-slide__image img,
body.front-page .magdalene-jewelry-slide:hover .magdalene-jewelry-slide__image img {
	transform: scale(1.04);
}

body.home .magdalene-jewelry-slide__title,
body.front-page .magdalene-jewelry-slide__title {
	margin: 0;
	font-size: 0.875rem;
	color: var(--magdalene-home-muted);
	line-height: 1.4;
	text-align: center;
}

body.home .magdalene-carousel-btn,
body.front-page .magdalene-carousel-btn {
	display: none !important;
}

/* ---- Centered actions row ---- */

body.home .magdalene-home-actions--centered,
body.front-page .magdalene-home-actions--centered {
	justify-content: center;
}

/* ---- Founder section ---- */

body.home .magdalene-home-founder,
body.front-page .magdalene-home-founder {
	display: grid;
	grid-template-columns: minmax(168px, 0.57fr) minmax(0, 1.43fr);
	gap: 0;
	background: var(--magdalene-home-paper) !important;
	color: var(--magdalene-home-ink);
	padding: 0 !important;
	border-bottom: 1px solid var(--magdalene-home-border);
	align-items: stretch;
}

body.home .magdalene-home-founder-image,
body.front-page .magdalene-home-founder-image {
	overflow: hidden;
	aspect-ratio: 1 / 1;
	min-height: 0;
	max-height: none;
	height: 100%;
}

body.home .magdalene-home-founder-image img,
body.front-page .magdalene-home-founder-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	display: block;
}

body.home .magdalene-home-founder-copy,
body.front-page .magdalene-home-founder-copy {
	display: grid;
	align-content: center;
	padding: clamp(2.75rem, 5vw, 4.75rem) clamp(2.5rem, 5vw, 4.75rem) clamp(2.75rem, 5vw, 4.75rem) clamp(3rem, 6vw, 5.5rem);
}

body.home .magdalene-home-founder-copy-inner,
body.front-page .magdalene-home-founder-copy-inner {
	display: grid;
	gap: 1.5rem;
	max-width: 35rem;
}

body.home .magdalene-home-founder h2,
body.front-page .magdalene-home-founder h2 {
	color: var(--magdalene-home-burgundy-deep);
	font-size: clamp(1.8rem, 3vw, 2.6rem);
}

body.home .magdalene-home-founder .magdalene-home-section-label,
body.front-page .magdalene-home-founder .magdalene-home-section-label {
	color: var(--magdalene-home-burgundy);
}

body.home .magdalene-home-founder p,
body.front-page .magdalene-home-founder p {
	color: var(--magdalene-home-ink);
}

body.home .magdalene-pullquote,
body.front-page .magdalene-pullquote {
	margin: 0;
	padding: 0.75rem 0 0.75rem 1.25rem;
	border-left: 3px solid var(--magdalene-home-gold);
	font-style: italic;
	font-size: 1.1rem;
	color: #fff6e3;
	display: grid;
	gap: 0.5rem;
}

body.home .magdalene-pullquote cite,
body.front-page .magdalene-pullquote cite {
	font-style: normal;
	font-size: 0.85rem;
	color: rgba(255, 247, 232, 0.7);
	letter-spacing: 0.04em;
}

body.home .magdalene-home-text-link--light,
body.front-page .magdalene-home-text-link--light {
	color: #fff6e3 !important;
	border-bottom-color: var(--magdalene-home-gold) !important;
}

body.home .magdalene-home-text-link--light:hover,
body.front-page .magdalene-home-text-link--light:hover {
	border-bottom-color: rgba(255, 247, 232, 0.5) !important;
}

/* ---- Miracle highlights section ---- */

body.home .magdalene-home-miracle,
body.front-page .magdalene-home-miracle {
	background: #fff !important;
}

body.home .magdalene-home-miracle .magdalene-home-section-heading,
body.front-page .magdalene-home-miracle .magdalene-home-section-heading {
	max-width: 38rem;
}

body.home .magdalene-miracle-timeline,
body.front-page .magdalene-miracle-timeline {
	position: relative;
	display: grid;
	gap: 1.5rem;
	margin-top: 2.5rem;
	padding: 0.5rem 0 0.5rem clamp(0.25rem, 1vw, 0.5rem);
	max-width: 58rem;
}

body.home .magdalene-miracle-timeline::before,
body.front-page .magdalene-miracle-timeline::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 1rem;
	width: 3px;
	background: linear-gradient(180deg, rgba(184, 138, 62, 0.12), rgba(184, 138, 62, 0.78), rgba(184, 138, 62, 0.12));
	border-radius: 999px;
}

body.home .magdalene-milestone-card,
body.front-page .magdalene-milestone-card {
	position: relative;
	display: grid;
	grid-template-columns: 2rem minmax(0, 1fr);
	gap: 1.25rem;
	align-items: start;
}

body.home .magdalene-milestone-marker,
body.front-page .magdalene-milestone-marker {
	grid-column: 1;
	justify-self: center;
	align-self: start;
	width: 1.25rem;
	height: 1.25rem;
	border: 3px solid #fff;
	border-radius: 50%;
	background: var(--magdalene-home-gold);
	box-shadow: 0 0 0 3px rgba(184, 138, 62, 0.22);
	margin-top: 1.1rem;
}

body.home .magdalene-milestone-content,
body.front-page .magdalene-milestone-content {
	grid-column: 2;
	background: linear-gradient(180deg, rgba(255, 251, 244, 0.96), #fff);
	border: 1px solid rgba(184, 138, 62, 0.22);
	border-radius: 10px;
	padding: 1.35rem 1.4rem 1.45rem;
	display: grid;
	gap: 0.55rem;
	align-content: start;
	position: relative;
	box-shadow: 0 16px 32px rgba(74, 45, 34, 0.04);
}

body.home .magdalene-milestone-date,
body.front-page .magdalene-milestone-date {
	margin: 0;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.24em;
	text-transform: uppercase;
	color: var(--magdalene-home-burgundy);
}

body.home .magdalene-milestone-card h3,
body.front-page .magdalene-milestone-card h3 {
	margin: 0;
	font-size: clamp(1.15rem, 2vw, 1.45rem);
	color: var(--magdalene-home-burgundy-deep);
	line-height: 1.2;
}

body.home .magdalene-milestone-card p,
body.front-page .magdalene-milestone-card p {
	margin: 0;
	font-size: 0.96rem;
	color: var(--magdalene-home-muted);
	line-height: 1.6;
}

body.home .magdalene-home-card-grid,
body.front-page .magdalene-home-card-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 2rem;
	background: var(--magdalene-home-paper-deep) !important;
}

body.home .magdalene-home-story-card,
body.front-page .magdalene-home-story-card {
	display: grid;
	gap: 1.25rem;
	padding: 1.5rem;
	border: 1px solid var(--magdalene-home-gold);
	background: var(--magdalene-home-paper) !important;
	box-shadow: none !important;
}

body.home .magdalene-home-story-image,
body.front-page .magdalene-home-story-image {
	aspect-ratio: 3 / 2;
	min-height: 0;
}

body.home .magdalene-home-story-copy h3,
body.front-page .magdalene-home-story-copy h3 {
	font-size: clamp(1.8rem, 2.5vw, 2.4rem);
}

body.home .magdalene-home-text-link,
body.front-page .magdalene-home-text-link {
	display: inline-block;
	font-weight: bold;
	text-decoration: none;
	border-bottom: 2px solid var(--magdalene-home-gold);
	padding-bottom: 0.1rem;
	transition: border-color 0.2s ease;
}

body.home .magdalene-home-text-link:hover,
body.front-page .magdalene-home-text-link:hover {
	border-color: var(--magdalene-home-burgundy);
}

/* Inline "Read more" links on home page sections */
body.home .magdalene-homepage .magdalene-inline-read-more,
body.front-page .magdalene-homepage .magdalene-inline-read-more {
	color: var(--link);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
	font-weight: inherit;
	border-bottom: none;
}

body.home .magdalene-homepage .magdalene-inline-read-more--light,
body.front-page .magdalene-homepage .magdalene-inline-read-more--light {
	color: #fff6e3;
}

body.home .magdalene-homepage .magdalene-inline-read-more--light:hover,
body.front-page .magdalene-homepage .magdalene-inline-read-more--light:hover {
	color: rgba(255, 246, 227, 0.75);
}

body.home .magdalene-home-story-copy p:last-child,
body.home .magdalene-home-section-heading p,
body.front-page .magdalene-home-story-copy p:last-child,
body.front-page .magdalene-home-section-heading p {
	color: var(--magdalene-home-muted);
}

body.home .magdalene-home-section-heading,
body.front-page .magdalene-home-section-heading {
	display: grid;
	gap: 1rem;
	max-width: 48rem;
}

@media only screen and (max-width: 900px) {
	body.home .magdalene-home-hero,
	body.home .magdalene-home-feature,
	body.home .magdalene-home-card-grid,
	body.front-page .magdalene-home-hero,
	body.front-page .magdalene-home-feature,
	body.front-page .magdalene-home-card-grid {
		grid-template-columns: 1fr;
	}

	body.home .magdalene-home-hero,
	body.front-page .magdalene-home-hero {
		padding: 0 !important;
	}

	body.home .magdalene-home-hero-copy,
	body.home .magdalene-home-founder-copy,
	body.front-page .magdalene-home-hero-copy,
	body.front-page .magdalene-home-founder-copy {
		padding: clamp(2rem, 5vw, 4rem) !important;
	}

	body.home .magdalene-home-hero-media,
	body.front-page .magdalene-home-hero-media {
		height: 300px;
		min-height: 300px;
	}

	body.home .magdalene-home-card-grid,
	body.front-page .magdalene-home-card-grid {
		gap: 1.2rem;
	}

	body.home .magdalene-etsy-products,
	body.front-page .magdalene-etsy-products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.home .magdalene-home-founder,
	body.front-page .magdalene-home-founder {
		grid-template-columns: 1fr;
	}

	body.home .magdalene-home-founder-image,
	body.front-page .magdalene-home-founder-image {
		aspect-ratio: auto;
		min-height: 280px;
		max-height: 360px;
	}

	body.home .magdalene-miracle-timeline::before,
	body.front-page .magdalene-miracle-timeline::before {
		left: 1rem;
	}

	body.home .magdalene-milestone-card,
	body.front-page .magdalene-milestone-card {
		grid-template-columns: 2rem minmax(0, 1fr);
		align-items: start;
	}

	body.home .magdalene-milestone-marker,
	body.front-page .magdalene-milestone-marker {
		grid-column: 1;
		align-self: start;
		margin-top: 1.25rem;
	}

	body.home .magdalene-milestone-content,
	body.front-page .magdalene-milestone-content {
		grid-column: 2;
	}
}

@media only screen and (max-width: 640px) {
	body.home .magdalene-homepage > section,
	body.front-page .magdalene-homepage > section {
		padding: 1.4rem;
	}

	body.home .magdalene-home-hero h1,
	body.front-page .magdalene-home-hero h1 {
		max-width: none;
	}

	body.home .magdalene-home-hero-media,
	body.home .magdalene-home-feature-media,
	body.home .magdalene-home-story-image,
	body.front-page .magdalene-home-hero-media,
	body.front-page .magdalene-home-feature-media,
	body.front-page .magdalene-home-story-image {
		min-height: 220px;
	}

	body.home a.magdalene-home-cta,
	body.front-page a.magdalene-home-cta {
		width: 100%;
	}

	body.home .magdalene-etsy-products,
	body.front-page .magdalene-etsy-products {
		grid-template-columns: 1fr;
	}

	body.home .magdalene-jewelry-slide,
	body.front-page .magdalene-jewelry-slide {
		flex: 0 0 calc(50% - 0.5rem);
	}

	body.home .magdalene-miracle-timeline,
	body.front-page .magdalene-miracle-timeline {
		margin-top: 2rem;
		padding-left: 0;
	}

	body.home .magdalene-milestone-content,
	body.front-page .magdalene-milestone-content {
		padding: 1.2rem 1.1rem 1.25rem;
	}

	body.home .magdalene-home-founder-copy-inner,
	body.front-page .magdalene-home-founder-copy-inner {
		max-width: none;
	}
}


/* ============================================================
 * SECTION C — Header behavior + mobile drawer
 * ============================================================ */

/* --- Sticky header that actually wins the stacking war --- */
body #header-wrap {
	position: sticky;
	top: 0;
	z-index: 100000;
	background: var(--parchment) !important;
	-webkit-backdrop-filter: none !important;
	backdrop-filter: none !important;
	border-bottom: 1px solid rgba(184, 138, 62, 0.28) !important;
	box-shadow: none !important;
}

body #header {
	height: auto !important;
	min-height: 0 !important;
	padding: 1.25rem var(--stage-shell-inner-pad) 1rem !important;
	overflow: visible !important;
}

body.logo-image #header #header-left {
	position: relative !important;
	inset: auto !important;
	float: none !important;
	width: 100% !important;
	max-width: 560px !important;
	height: 88px !important;
	margin: 0 auto !important;
	background-position: center center !important;
	background-size: contain !important;
}

body.logo-image #header-left,
body.logo-image #header-left #title,
body.logo-image #header-left #title a {
	float: none !important;
	width: 100% !important;
	max-width: 560px !important;
	height: 88px !important;
	margin: 0 auto !important;
}

body #navbar-1-wrap {
	height: auto !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	margin-left: auto !important;
	margin-right: auto !important;
	border-top: 1px solid rgba(184, 138, 62, 0.32) !important;
	border-bottom: 1px solid rgba(184, 138, 62, 0.32) !important;
	box-shadow: none !important;
}

body #navbar-1 {
	padding: 0 var(--stage-shell-inner-pad) !important;
}

body #nav-1 > ul {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: stretch !important;
	float: none !important;
	width: 100% !important;
}

body #nav-1 > ul > li {
	display: flex !important;
	align-items: stretch !important;
	float: none !important;
	position: relative !important;
	overflow: visible !important;
}

/* Override Georgia inherited from #navbar-1-wrap in dynamik-min.css */
body #navbar-1-wrap,
body #navbar-2-wrap {
	font-family: var(--font-ui) !important;
	font-size: inherit !important;
}

body #nav-1 > ul > li > a,
body #nav-2 li a {
	display: flex !important;
	align-items: center !important;
	align-self: stretch !important;
	height: 100% !important;
	background: transparent !important;
	min-height: 38px !important;
	padding: 0.7rem 0.95rem !important;
	border-radius: 999px !important;
	border-bottom: 3px solid transparent !important;
	color: var(--ink) !important;
	font-family: Georgia, serif !important;
	font-size: 0.95rem !important;
	font-weight: 500 !important;
	line-height: 1.2 !important;
	position: relative !important;
	text-shadow: none !important;
	transition: background-color 140ms ease, color 140ms ease !important;
}

body #nav-1 > ul > li > a:hover,
body #nav-1 > ul > li > a:focus-visible {
	background: rgba(184, 138, 62, 0.14) !important;
	color: var(--burgundy) !important;
}

body #nav-1 > ul > li.current_page_item > a,
body #nav-1 > ul > li.current-menu-item > a,
body #nav-1 > ul > li.current_page_parent > a,
body #nav-1 > ul > li.current_page_ancestor > a,
body #nav-1 > ul > li.current-menu-parent > a,
body #nav-1 > ul > li.current-menu-ancestor > a,
body #nav-1 > ul > li.current-cat > a {
	background: rgba(229, 205, 145, 0.5) !important;
	color: var(--burgundy) !important;
}

body #nav-1 > ul > li.current_page_item > a::after,
body #nav-1 > ul > li.current-menu-item > a::after,
body #nav-1 > ul > li.current_page_parent > a::after,
body #nav-1 > ul > li.current_page_ancestor > a::after,
body #nav-1 > ul > li.current-menu-parent > a::after,
body #nav-1 > ul > li.current-menu-ancestor > a::after,
body #nav-1 > ul > li.current-cat > a::after {
	content: "" !important;
	position: absolute !important;
	right: 0.95rem !important;
	bottom: -3px !important;
	left: 0.95rem !important;
	display: block !important;
	height: 3px !important;
	background: var(--burgundy) !important;
	border-radius: 999px !important;
}

body #nav-1 li ul,
body #nav-1 li ul.sub-menu {
	width: 260px !important;
	margin-top: 0 !important;
	padding: 0 !important;
	border: 1px solid rgba(184, 138, 62, 0.32) !important;
	background: var(--parchment) !important;
	box-shadow: none !important;
	top: 100% !important;
	left: 0 !important;
}

body #nav-1 li ul ul,
body #nav-1 li ul.sub-menu ul {
	margin-top: -1px !important;
}

body #nav-1 li li {
	display: block !important;
	width: 100% !important;
	background: transparent !important;
	border-bottom: 1px solid rgba(184, 138, 62, 0.24) !important;
	box-shadow: none !important;
}

body #nav-1 li li:last-child {
	border-bottom: 0 !important;
}

body #nav-1 li li a,
body #nav-1 li li a:link,
body #nav-1 li li a:visited,
body #nav-1 li li a:hover,
body #nav-1 li li a:active {
	display: block !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0.8rem 1rem !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	color: var(--ink) !important;
	font-family: var(--font-ui) !important;
	font-size: 0.95rem !important;
	font-weight: 500 !important;
	line-height: 1.35 !important;
	opacity: 1 !important;
	text-indent: 0 !important;
	text-shadow: none !important;
	text-transform: none !important;
	visibility: visible !important;
	white-space: normal !important;
	word-break: normal !important;
}

body #nav-1 li li a:hover,
body #nav-1 li li a:focus-visible {
	background: rgba(184, 138, 62, 0.16) !important;
	color: var(--burgundy) !important;
}

@media only screen and (min-width: 999px) {
	body #header-wrap {
		position: sticky;
		top: 0;
		z-index: 100000;
		background: #E5CD91 url(images/bkgd-header.jpg) top center no-repeat !important;
		border-bottom: 0 !important;
		box-shadow: none !important;
	}

	body #header {
		height: 133px !important;
		min-height: 133px !important;
		padding: 0 !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
	}

	body.logo-image #header #header-left {
		float: none !important;
		width: min(100%, 620px) !important;
		max-width: 620px !important;
		height: 96px !important;
		margin: 18px auto 19px !important;
		background-position: center center !important;
		background-size: contain !important;
	}

	body.logo-image #header-left,
	body.logo-image #header-left #title,
	body.logo-image #header-left #title a {
		float: none !important;
		width: min(100%, 620px) !important;
		max-width: 620px !important;
		height: 96px !important;
		margin: 0 auto !important;
	}

	body #navbar-1-wrap {
		position: sticky;
		top: 133px;
		z-index: 99999;
		height: auto !important;
		min-height: 38px !important;
		overflow: visible !important;
		background: #E5CD91 url(images/bkgd-nav-large.jpg) top repeat !important;
		border-top: 1px solid #B8A66F !important;
		border-bottom: 0 !important;
		margin-top: 0 !important;
		margin-bottom: 0 !important;
		margin-left: auto !important;
		margin-right: auto !important;
		box-shadow: none !important;
	}

	body #navbar-1 {
		padding: 0 var(--stage-shell-inner-pad) !important;
		margin-bottom: 0 !important;
		overflow: visible !important;
	}

	body #navbar-1-left,
	body #nav-1 {
		overflow: visible !important;
	}

	body #nav-1 > ul {
		display: block !important;
		float: left !important;
		width: auto !important;
		margin-bottom: 0 !important;
		overflow: visible !important;
	}

	body #nav-1 > ul > li {
		display: block !important;
		float: left !important;
		position: relative !important;
		overflow: visible !important;
	}

	body #nav-1 > ul > li.menu-item-has-children::after,
	body #nav-1 > ul > li.page_item_has_children::after {
		content: "" !important;
		position: absolute !important;
		top: 100% !important;
		right: 0 !important;
		left: 0 !important;
		height: 24px !important;
		z-index: 100001 !important;
	}

	body #nav-1 > ul > li > a {
		display: block !important;
		min-height: 0 !important;
		padding: 11px 10px 10px !important;
		border-radius: 0 !important;
		border-bottom: 2px solid transparent !important;
		color: #000 !important;
		font-family: Georgia, serif !important;
		font-size: 16px !important;
		font-weight: 400 !important;
		line-height: 1em !important;
	}

	body #nav-1 > ul > li > a:hover,
	body #nav-1 > ul > li > a:focus-visible,
	body #nav-1 > ul > li.current_page_item > a,
	body #nav-1 > ul > li.current-menu-item > a,
	body #nav-1 > ul > li.current_page_parent > a,
	body #nav-1 > ul > li.current_page_ancestor > a,
	body #nav-1 > ul > li.current-menu-parent > a,
	body #nav-1 > ul > li.current-menu-ancestor > a,
	body #nav-1 > ul > li.current-cat > a {
		background: rgba(229, 205, 145, 0.42) !important;
		color: #A23C0B !important;
	}

	body #nav-1 > ul > li.current_page_item > a::after,
	body #nav-1 > ul > li.current-menu-item > a::after,
	body #nav-1 > ul > li.current_page_parent > a::after,
	body #nav-1 > ul > li.current_page_ancestor > a::after,
	body #nav-1 > ul > li.current-menu-parent > a::after,
	body #nav-1 > ul > li.current-menu-ancestor > a::after,
	body #nav-1 > ul > li.current-cat > a::after {
		content: "" !important;
		position: absolute !important;
		right: 10px !important;
		bottom: -2px !important;
		left: 10px !important;
		display: block !important;
		height: 2px !important;
		background: #A23C0B !important;
		border-radius: 999px !important;
	}

	body #nav-1 li ul,
	body #nav-1 li ul.sub-menu {
		display: none !important;
		visibility: hidden !important;
		width: 175px !important;
		padding: 0 !important;
		margin: -1px 0 0 !important;
		border: 1px solid #B8A66F !important;
		background: #E5CD91 url(images/bkgd-paper.jpg) top repeat !important;
		box-shadow: none !important;
		overflow: visible !important;
		top: calc(100% - 1px) !important;
		left: 0 !important;
		float: none !important;
		position: absolute !important;
		z-index: 100002 !important;
	}

	body #nav-1 li li {
		width: 100% !important;
		background: transparent !important;
		border-bottom: 1px solid rgba(184, 166, 111, 0.8) !important;
		float: none !important;
		position: relative !important;
	}

	body #nav-1 li li:last-child {
		border-bottom: 0 !important;
	}

	body #nav-1 li li a,
	body #nav-1 li li a:link,
	body #nav-1 li li a:visited,
	body #nav-1 li li a:hover,
	body #nav-1 li li a:active {
		width: 100% !important;
		padding: 11px 10px !important;
		background: transparent !important;
		border: 0 !important;
		color: #000 !important;
		font-family: Georgia, serif !important;
		font-size: 16px !important;
		font-weight: 400 !important;
		line-height: 1.2 !important;
	}

	body #nav-1 li li a:hover,
	body #nav-1 li li a:focus-visible {
		background: rgba(229, 205, 145, 0.45) !important;
		color: #A23C0B !important;
	}

	body #nav-1 li li.current_page_item > a,
	body #nav-1 li li.current-menu-item > a,
	body #nav-1 li li.current_page_parent > a,
	body #nav-1 li li.current_page_ancestor > a,
	body #nav-1 li li.current-menu-parent > a,
	body #nav-1 li li.current-menu-ancestor > a,
	body #nav-1 li li.current-cat > a {
		background: rgba(229, 205, 145, 0.45) !important;
		box-shadow: inset 4px 0 0 #A23C0B !important;
		color: #A23C0B !important;
	}

	body #nav-1 li ul ul,
	body #nav-1 li ul.sub-menu ul {
		top: 0 !important;
		left: calc(100% - 1px) !important;
		margin: 0 !important;
	}

	body #nav-1 li:hover > ul,
	body #nav-1 li:focus-within > ul,
	body #nav-1 li.sfHover > ul {
		display: block !important;
		visibility: visible !important;
	}

	body #nav-1 li:hover > ul ul,
	body #nav-1 li:focus-within > ul ul,
	body #nav-1 li.sfHover > ul ul {
		display: none !important;
		visibility: hidden !important;
	}

	body #nav-1 li li:hover > ul,
	body #nav-1 li li:focus-within > ul,
	body #nav-1 li li.sfHover > ul {
		display: block !important;
		visibility: visible !important;
	}

	body #nav-1 > ul > li:hover,
	body #nav-1 > ul > li:focus-within,
	body #nav-1 > ul > li.sfHover {
		z-index: 100003 !important;
	}

	body #nav-1 li:hover,
	body #nav-1 li.sfHover,
	body #nav-2 li:hover,
	body #nav-2 li.sfHover,
	body #nav-1 li li:hover,
	body #nav-1 li li.sfHover {
		position: relative !important;
	}
}

@media only screen and (min-width: 999px) {
	body #content-wrap,
	body.home #content-wrap,
	body.front-page #content-wrap {
		margin-top: 0 !important;
		padding-top: 0 !important;
	}
}

body,
body p,
body li,
body dt,
body dd,
body blockquote,
body figcaption,
body span,
body strong,
body em,
body small,
body label,
body legend,
body h1,
body h2,
body h3,
body h4,
body h5,
body h6,
body a,
body button,
body input,
body textarea,
body select,
body .button,
body .menu a,
body #nav-1 a,
body #nav-2 a,
body .entry-title,
body .entry-content,
body .widget,
body .ez-widget-area,
body .homeFeature,
body .contact,
body [class*="hero"],
body [class*="overlay"] {
	text-shadow: none !important;
}

body #nav-1 li li.current_page_item > a,
body #nav-1 li li.current-menu-item > a,
body #nav-1 li li.current_page_parent > a,
body #nav-1 li li.current_page_ancestor > a,
body #nav-1 li li.current-menu-parent > a,
body #nav-1 li li.current-menu-ancestor > a,
body #nav-1 li li.current-cat > a {
	background: rgba(184, 138, 62, 0.14) !important;
	box-shadow: inset 4px 0 0 var(--burgundy) !important;
	color: var(--burgundy) !important;
}

body #nav-1 li li.current_page_item > a::after,
body #nav-1 li li.current-menu-item > a::after,
body #nav-1 li li.current_page_parent > a::after,
body #nav-1 li li.current_page_ancestor > a::after,
body #nav-1 li li.current-menu-parent > a::after,
body #nav-1 li li.current-menu-ancestor > a::after,
body #nav-1 li li.current-cat > a::after {
	display: none !important;
	content: none !important;
}

/* Skip link must remain reachable when focused */
body .magdalene-skip-link {
	z-index: 100001;
}

/* Anything that previously outranked the header gets demoted */
body .candle {
	z-index: 80;
}


/* --- Hamburger button (mobile only) --- */
.magdalene-hamburger {
	position: fixed;
	top: 8px;
	left: 12px;
	width: 44px;
	height: 44px;
	display: none; /* shown via media query below */
	align-items: center;
	justify-content: center;
	padding: 0;
	margin: 0;
	border: 1px solid rgba(184, 138, 62, 0.45);
	border-radius: 6px;
	background: var(--parchment);
	color: var(--ink);
	cursor: pointer;
	z-index: 100002;
	font-family: var(--font-ui);
}

.magdalene-hamburger:focus-visible {
	outline: 3px solid var(--gold);
	outline-offset: 2px;
}

.magdalene-hamburger-icon {
	display: block;
	width: 22px;
	height: 2px;
	background: var(--ink);
	position: relative;
	transition: background 120ms linear;
}
.magdalene-hamburger-icon::before,
.magdalene-hamburger-icon::after {
	content: "";
	position: absolute;
	left: 0;
	width: 22px;
	height: 2px;
	background: var(--ink);
	transition: transform 180ms ease, top 180ms ease;
}
.magdalene-hamburger-icon::before { top: -7px; }
.magdalene-hamburger-icon::after  { top:  7px; }

/* Hamburger animates into an X when drawer is open */
body.magdalene-drawer-open .magdalene-hamburger-icon {
	background: transparent;
}
body.magdalene-drawer-open .magdalene-hamburger-icon::before {
	top: 0;
	transform: rotate(45deg);
}
body.magdalene-drawer-open .magdalene-hamburger-icon::after {
	top: 0;
	transform: rotate(-45deg);
}

.magdalene-hamburger-label {
	position: absolute;
	left: -9999px;
	top: auto;
	width: 1px;
	height: 1px;
	overflow: hidden;
}


/* --- Drawer panel + backdrop --- */
.magdalene-drawer-backdrop {
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, 0.4);
	opacity: 0;
	pointer-events: none;
	transition: opacity 220ms ease;
	z-index: 100003;
}
body.magdalene-drawer-open .magdalene-drawer-backdrop {
	opacity: 1;
	pointer-events: auto;
}

.magdalene-drawer {
	position: fixed;
	top: 0;
	left: 0;
	height: 100%;
	width: min(320px, 85vw);
	background: var(--drawer-bg);
	box-shadow: var(--drawer-shadow);
	transform: translateX(-100%);
	transition: transform 220ms ease;
	z-index: 100004;
	display: flex;
	flex-direction: column;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	font-family: var(--font-ui);
	border-right: 1px solid rgba(184, 138, 62, 0.28);
}
body.magdalene-drawer-open .magdalene-drawer {
	transform: translateX(0);
}

.magdalene-drawer-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 12px 16px;
	border-bottom: 1px solid rgba(184, 138, 62, 0.3);
	font-family: var(--font-display);
	font-size: 1.1rem;
	color: var(--burgundy);
}

.magdalene-drawer-close {
	background: none;
	border: 0;
	padding: 8px;
	font-size: 1.5rem;
	line-height: 1;
	color: var(--ink);
	cursor: pointer;
}
.magdalene-drawer-close:focus-visible {
	outline: 3px solid var(--gold);
	outline-offset: 2px;
}

.magdalene-drawer nav {
	padding: 8px 0;
}

.magdalene-drawer ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.magdalene-drawer li {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	border-bottom: 1px solid rgba(184, 138, 62, 0.18);
}

.magdalene-drawer li > a {
	flex: 1 1 auto;
	display: block;
	padding: 14px 16px;
	color: var(--ink);
	text-decoration: none;
	font-weight: 500;
	min-height: 44px;
}
.magdalene-drawer li > a:hover,
.magdalene-drawer li > a:focus-visible {
	background: rgba(184, 138, 62, 0.18);
	color: var(--burgundy);
}

.magdalene-drawer .submenu-toggle {
	flex: 0 0 auto;
	background: none;
	border: 0;
	border-left: 1px solid rgba(184, 138, 62, 0.3);
	width: 48px;
	color: var(--ink);
	cursor: pointer;
	font-size: 1rem;
	display: flex;
	align-items: center;
	justify-content: center;
}
.magdalene-drawer .submenu-toggle:focus-visible {
	outline: 3px solid var(--gold);
	outline-offset: -3px;
}
.magdalene-drawer .submenu-toggle::before {
	content: "";
	display: inline-block;
	width: 8px;
	height: 8px;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: rotate(45deg);
	transition: transform 180ms ease;
	margin-top: -3px;
}
.magdalene-drawer li[aria-expanded="true"] > .submenu-toggle::before {
	transform: rotate(-135deg);
	margin-top: 3px;
}

.magdalene-drawer .sub-menu,
.magdalene-drawer ul.children {
	flex: 0 0 100%;
	max-height: 0;
	overflow: hidden;
	transition: max-height 220ms ease;
	background: rgba(255, 250, 241, 0.96);
}
.magdalene-drawer li[aria-expanded="true"] > .sub-menu,
.magdalene-drawer li[aria-expanded="true"] > ul.children {
	max-height: 1500px;
}

.magdalene-drawer .sub-menu li > a,
.magdalene-drawer ul.children li > a {
	padding-left: 32px;
	font-size: 0.95rem;
}


/* --- Viewport rules: desktop vs mobile --- */
@media only screen and (min-width: 999px) {
	body .magdalene-hamburger,
	body .magdalene-drawer,
	body .magdalene-drawer-backdrop {
		display: none !important;
	}
}

@media only screen and (max-width: 998px) {
	body #navbar-1-wrap,
	body .catalyst-dropdown-nav,
	body select.catalyst-dropdown-nav {
		display: none !important;
	}

	body .magdalene-hamburger {
		display: inline-flex;
	}

	/* Reserve space at left of header so logo doesn't sit under the hamburger */
	body #header {
		padding: 1rem var(--stage-shell-inner-pad) 0.9rem 64px !important;
	}
}


/* ============================================================
 * SECTION D — Frame, banner, and read-more cleanup
 * ============================================================ */

/* --- D1. Kill the #wrap dark-grey frame ----------------------
   Production paints #wrap dark grey with a 20px outer
   box-shadow. Against the flatter promoted surfaces, both read as a
   visible dark band hugging the header/footer. Make #wrap
   transparent (header/footer/content keep their own colors)
   and drop the shadow. */
body #wrap {
	background: transparent !important;
	box-shadow: none !important;
}

/* --- D2. Flatten the .entry-header banner --------------------
   Strip the -50px overlap, kill the inline float, give the
   banner real padding and a gold underline so it sits flush
   above the post/page body. */
body #content .entry-header {
	margin: 0 0 var(--space-4) 0 !important;
	padding: 0 0 0.85rem 0 !important;
	min-height: 0 !important;
	min-width: 0 !important;
	max-width: 100% !important;
	float: none !important;
	line-height: 1.3 !important;
	background: transparent !important;
	border-bottom: 1px solid rgba(184, 138, 62, 0.55);
	box-shadow: none !important;
}

/* --- D3. Remove drop + inset shadows on content blocks -------
   Applies to single posts, pages, and the home top container,
   which all share the same heavy 0/0/20 + inset 0/0/50 stack. */
body #content .post,
body #content .page,
body #content article,
body #ez-home-top-container {
	box-shadow: none !important;
	margin: 0 0 var(--space-5) 0 !important;
}

/* --- D4. Hide the redundant Phase-6 styled "Read more" button
   Catalyst's catalyst_build_the_content already appends an
   inline `<a class="excerpt-read-more">` after each excerpt;
   the magdalene_excerpt_more filter from Phase 6 adds a second
   button-styled link. Keep Catalyst's link, hide the button. */
body a.magdalene-read-more,
body .button.magdalene-read-more {
	display: none !important;
}

body #container-wrap,
body #footer-wrap,
body #content .post,
body #content .page,
body #content article,
body #ez-home-top-container,
body .homebox,
body .woocommerce-page .type-product,
body .magdalene-gift-shop-card,
body .wp-caption,
body .page-template-template-blog-php #content img,
body #content img,
body a.button,
body .button {
	box-shadow: none !important;
	text-shadow: none !important;
}

body .homebox,
body .magdalene-gift-shop-card:hover {
	transform: none !important;
}

body #container-wrap {
	margin-top: 0 !important;
	padding: 0 var(--stage-shell-inner-pad) 1.5rem !important;
}

body a,
body a:link,
body a:visited,
body .widget a,
body .widget a:link,
body .widget a:visited,
body .woocommerce a,
body .woocommerce a:link,
body .woocommerce a:visited {
	color: var(--burgundy) !important;
}

body a:hover,
body a:focus-visible,
body a:active,
body .widget a:hover,
body .widget a:focus-visible,
body .woocommerce a:hover,
body .woocommerce a:focus-visible {
	color: #A23C0B !important;
}

body #home-hook-wrap {
	margin-top: 0 !important;
	padding: 0 var(--stage-shell-inner-pad) 1.5rem !important;
}

body #footer {
	padding: 1rem var(--stage-shell-inner-pad) !important;
}

body #footer p.footer-content,
body #footer .footer-content {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.5rem 0.9rem;
}

body .magdalene-footer-facebook {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.2rem;
	height: 1.2rem;
	color: var(--gold) !important;
}

body .magdalene-footer-facebook svg {
	display: block;
	width: 100%;
	height: 100%;
	fill: currentColor;
}

body .magdalene-footer-links {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.4rem 0.9rem;
}

body #content h1,
body #content h2,
body #content h3,
body #content h4,
body #content h5,
body #content h6,
body #content .entry-title,
body #content .entry-title a,
body #content .entry-title a:visited,
body #content .taxonomy-title-box h1,
body #content .author-title-box h1,
body #ez-home-container-wrap .ez-widget-area .homeFeature h4,
body #ez-home-container-wrap #ez-home-bottom-1 h4,
body #ez-home-middle-container .widgettitle,
body .display-posts-listing a,
body .catalyst-excerpt-widget h2,
body .catalyst-excerpt-widget h2 a,
body .catalyst-excerpt-widget h2 a:visited,
body .homebox h3,
body .homebox h4,
body .woocommerce ul.products li.product h2,
body .woocommerce ul.products li.product h3,
body .woocommerce-page ul.products li.product h2,
body .woocommerce-page ul.products li.product h3 {
	font-family: var(--font-display) !important;
	font-style: normal !important;
	font-weight: 600 !important;
	letter-spacing: normal !important;
	text-transform: none !important;
}

body .widget_pages,
body .widget_pages a,
body .widget_pages a:visited,
body .display-posts-listing .date,
body .display-posts-listing .excerpt,
body .byline-meta,
body .post-info,
body .entry-meta,
body .post-meta,
body .mc_var_label,
body .mc_interest_label,
body .woocommerce .price,
body .woocommerce-page .price {
	font-family: var(--font-ui) !important;
	font-style: normal !important;
	letter-spacing: normal !important;
	text-transform: none !important;
}

body #content .entry-content,
body #content .entry-content p,
body #content .entry-content li,
body #content .entry-content blockquote,
body .homebox p,
body .homebox li {
	font-family: var(--font-body) !important;
	font-style: normal !important;
	letter-spacing: normal !important;
}


/* ============================================================
 * SECTION E — Staging teaser and page-specific cleanup
 * ============================================================ */

@media only screen and (min-width: 768px) {
	body .catalyst-excerpt-widget,
	body .ivycat-post {
		display: grid !important;
		grid-template-columns: minmax(190px, 240px) minmax(0, 1fr);
		grid-template-rows: auto 1fr;
		column-gap: 1.5rem;
		row-gap: 0.35rem;
		align-items: stretch;
		margin-bottom: 1.5rem !important;
		padding-bottom: 0 !important;
		border: 0 !important;
		box-shadow: none !important;
	}

	body .catalyst-excerpt-widget > a:first-of-type,
	body .ivycat-post .entry-image {
		grid-column: 1;
		grid-row: 1 / span 2;
		display: block;
		margin: 0 !important;
		aspect-ratio: 4 / 3;
		overflow: hidden;
	}

	body .catalyst-excerpt-widget > a:first-of-type img,
	body .ivycat-post .entry-image img {
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: center center;
		margin: 0 !important;
	}

	body .catalyst-excerpt-widget .entry-header,
	body .ivycat-post > .entry-title {
		grid-column: 2;
		grid-row: 1;
		margin: 0 !important;
		padding: 0 !important;
		border: 0 !important;
	}

	body .catalyst-excerpt-widget .entry-content,
	body .ivycat-post .entry-summary {
		grid-column: 2;
		grid-row: 2;
		display: flex;
		flex-direction: column;
		justify-content: flex-end;
		min-width: 0;
		min-height: 100%;
		margin: 0 !important;
		padding: 0 !important;
		border: 0 !important;
	}

	body .catalyst-excerpt-widget .entry-content > p,
	body .ivycat-post .entry-summary > p {
		margin: 0 !important;
		padding: 0 !important;
	}

	body .catalyst-excerpt-widget .entry-content > p:last-child,
	body .ivycat-post .entry-summary > p:last-child {
		margin-top: auto !important;
	}
}

@media only screen and (max-width: 767px) {
	body .catalyst-excerpt-widget,
	body .ivycat-post {
		display: block !important;
	}

	body .catalyst-excerpt-widget > a:first-of-type,
	body .ivycat-post .entry-image,
	body .catalyst-excerpt-widget .entry-header,
	body .ivycat-post > .entry-title,
	body .catalyst-excerpt-widget .entry-content,
	body .ivycat-post .entry-summary {
		margin: 0 0 0.85rem 0 !important;
	}
}

body .catalyst-excerpt-widget .entry-content .excerpt-read-more,
body .catalyst-excerpt-widget .entry-content .magdalene-inline-read-more,
body .ivycat-post .entry-summary .magdalene-inline-read-more {
	white-space: nowrap;
}

body .catalyst-excerpt-widget .entry-content .magdalene-read-more,
body .ivycat-post .entry-summary .magdalene-read-more {
	display: none !important;
}

body .catalyst-excerpt-widget,
body .ivycat-post {
	background-color: var(--cream) !important;
	background-image: none !important;
}

body.page-id-6166 #content .entry-content,
body.page-id-6166 #content .entry-content p,
body.page-id-6166 #content .entry-content li,
body.page-id-6166 #content .entry-content h1,
body.page-id-6166 #content .entry-content h2,
body.page-id-6166 #content .entry-content h3,
body.page-id-6166 #content .entry-content h4,
body.page-id-6166 #content .entry-content h5,
body.page-id-6166 #content .entry-content h6 {
	text-align: left !important;
}

body .magdalene-provence-figure {
	display: table;
	max-width: 100%;
	margin: 0 auto 1.25rem !important;
}

body .magdalene-provence-figure img {
	display: block;
	margin: 0 auto !important;
}

body .magdalene-provence-caption {
	display: table-caption;
	caption-side: bottom;
	padding-top: 0.45rem;
	color: inherit;
	font-size: 0.95rem;
	line-height: 1.45;
	text-align: center !important;
}

body.page-id-6166 #content .entry-content > * + * {
	margin-top: 0.9rem !important;
}

body.page-id-6166 #content .entry-header {
	margin-bottom: 0.7rem !important;
	padding-bottom: 0 !important;
	border-bottom: 0 !important;
}

body.page-id-6166 #content .entry-content > hr:first-child,
body.page-id-6166 #content .entry-content > .magdalene-provence-caption-block:first-child {
	margin-top: 0 !important;
}

body.page-id-6166 #content .entry-content p,
body.page-id-6166 #content .entry-content div,
body.page-id-6166 #content .entry-content li,
body.page-id-6166 #content .entry-content strong,
body.page-id-6166 #content .entry-content em,
body.page-id-6166 #content .entry-content span,
body.page-id-6166 #content .entry-content font {
	color: inherit !important;
}

body.page-id-6166 #content .entry-content p {
	padding-bottom: 0 !important;
}

body.page-id-6166 #content .magdalene-provence-caption-block {
	margin: 0.4rem auto 1rem !important;
	color: inherit !important;
	font-size: 0.95rem !important;
	line-height: 1.45 !important;
	text-align: center !important;
}

body.page-id-6166 #content .magdalene-provence-figure + .magdalene-provence-figure,
body.page-id-6166 #content .magdalene-provence-caption-block + .magdalene-provence-figure,
body.page-id-6166 #content .magdalene-provence-figure + .magdalene-provence-caption-block {
	margin-top: 0.85rem !important;
}

body.page-id-1265 #content .entry-content,
body.page-id-1265 #content .entry-summary,
body.page-id-1265 #content .ivycat-post,
body.page-id-1265 #content .ivycat-post .entry-image,
body.page-id-1265 #content .ivycat-post .entry-summary,
body.page-id-1265 #content .ivycat-post .entry-title {
	margin-left: 0 !important;
	padding-left: 0 !important;
}

body.page-id-1265 #content .entry-image,
body.page-id-1265 #content .entry-image img,
body.page-id-1265 #content .wp-caption,
body.page-id-1265 #content .wp-caption img,
body.page-id-1265 #content img.aligncenter,
body.page-id-1265 #content img.centered {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
}

body.page-id-1265 #content .ivycat-post > .entry-title,
body.page-id-1265 #content .ivycat-post > .entry-title a,
body.page-id-1265 #content .ivycat-post > .entry-title a:visited {
	color: #78150C !important;
	font-weight: 700 !important;
}

body.page-id-1265 #content .ivycat-post > .entry-title {
	margin-bottom: 0.3rem !important;
}

body.page-id-1265 #content .ivycat-post .entry-summary {
	display: flow-root !important;
	gap: 0.65rem;
	min-width: 0 !important;
}

body.page-id-1265 #content .ivycat-post .entry-summary > * {
	float: none !important;
	clear: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	max-width: 100% !important;
}

@media only screen and (min-width: 768px) {
	body.page-id-1265 #content .ivycat-post {
		grid-template-columns: minmax(220px, 280px) minmax(0, 1fr) !important;
		grid-template-rows: auto 1fr !important;
		grid-template-areas:
			"image title"
			"image summary" !important;
		column-gap: 1.75rem !important;
		row-gap: 0.45rem !important;
		align-items: start !important;
	}

	body.page-id-1265 #content .ivycat-post .entry-image {
		grid-area: image !important;
		align-self: start !important;
	}

	body.page-id-1265 #content .ivycat-post > .entry-title {
		grid-area: title !important;
		align-self: end !important;
	}

	body.page-id-1265 #content .ivycat-post .entry-summary {
		grid-area: summary !important;
		align-self: start !important;
	}
}

@media only screen and (max-width: 767px) {
	body.page-id-1265 #content .ivycat-post .entry-image,
	body.page-id-1265 #content .ivycat-post > .entry-title,
	body.page-id-1265 #content .ivycat-post .entry-summary {
		width: 100% !important;
	}
}

body.page-id-1295 #content .magdalene-video-embed {
	position: relative;
	max-width: 100%;
	margin: 0 0 1.5rem !important;
	padding-top: 56.25%;
}

body.page-id-1295 #content .magdalene-video-embed iframe {
	position: absolute;
	inset: 0;
	width: 100% !important;
	height: 100% !important;
	border: 0;
}

@media only screen and (max-width: 767px) {
	body {
		--stage-shell-gutter: 0.5rem;
		--stage-shell-inner-pad: 1rem;
	}

	body.logo-image #header #header-left,
	body.logo-image #header-left,
	body.logo-image #header-left #title,
	body.logo-image #header-left #title a {
		max-width: 320px !important;
		height: 64px !important;
	}

	body #container-wrap,
	body #home-hook-wrap,
	body #footer {
		padding-left: var(--stage-shell-inner-pad) !important;
		padding-right: var(--stage-shell-inner-pad) !important;
	}
}

/* ============================================================
 * SECTION X — Blog post excerpt cards (promoted redesign)
 *
 * Targets the actual rendered DOM on two surfaces:
 *   1. /blog/ index (Catalyst archive loop):
 *        body.archive #content > article.hentry
 *   2. Home page "Latest Articles" widget (Catalyst excerpt widget):
 *        #ez-home-bottom-container article.catalyst-excerpt-widget
 *
 * Both share this nested structure:
 *   <article class="...hentry...">
 *     <header class="entry-header"><h2.entry-title>…</h2></header>
 *     <div class="entry-content">              ← (or wrapped in .catalyst-excerpt-widget-inner)
 *       <a><img class="alignleft wp-post-image">…</a>
 *       <p>excerpt …</p>
 *       <p><a class="excerpt-read-more">Read more »</a></p>   ← /blog/ only, hidden
 *     </div>
 *   </article>
 *
 * Strategy: turn the article into a flex column, collapse intermediate
 * wrappers with `display: contents` so the header + paragraph become
 * direct flex items, and absolutely position the thumbnail anchor into
 * a 240×180 left "column" via padding-left + position:absolute. Last
 * visible paragraph gets `margin-top:auto` so its baseline aligns with
 * the bottom of the image.
 *
 * Overrides (with audit notes):
 *   - .alignleft float on thumbnail anchors (set inline by Catalyst)
 *   - .hentry .entry-image img max-width:400px from catalyst-custom.css:893-902
 *   - article box-shadow / margin from earlier promoted rules
 * ============================================================ */

:root {
	--magdalene-card-thumb-w: 240px;
	--magdalene-card-thumb-h: 180px;
	--magdalene-card-gap: 1.25rem;
	--magdalene-card-stack-gap: 1.5rem;
}

/* --- Card container (article) --- */
body.archive #content > article.hentry,
body #ez-home-bottom-container article.catalyst-excerpt-widget.hentry {
	display: flex;
	flex-direction: column;
	position: relative;
	min-height: var(--magdalene-card-thumb-h);
	padding: 0 0 0 calc(var(--magdalene-card-thumb-w) + var(--magdalene-card-gap)) !important;
	margin: 0 0 var(--magdalene-card-stack-gap) 0 !important;
	border: 0 !important;
	border-bottom: 0 !important;
	box-shadow: none !important;
	background: none !important;
}

body.archive #container-wrap,
body.blog #container-wrap {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

body.archive #content,
body.blog #content {
	margin-top: 0 !important;
	padding-top: var(--magdalene-card-stack-gap) !important;
}

/* Collapse intermediate wrappers so header + p become direct flex items
   of the article. */
body.archive #content > article.hentry > .entry-content,
body #ez-home-bottom-container article.catalyst-excerpt-widget > .catalyst-excerpt-widget-inner,
body #ez-home-bottom-container article.catalyst-excerpt-widget .catalyst-excerpt-widget-inner > .entry-content {
	display: contents;
}

/* --- Header (title + byline) --- */
body.archive #content > article.hentry > header.entry-header,
body #ez-home-bottom-container article.catalyst-excerpt-widget header.entry-header {
	margin: 0 0 0.5rem 0 !important;
	padding: 0 !important;
	background: none !important;
	border: 0 !important;
}

body.archive #content > article.hentry > header.entry-header h2.entry-title,
body #ez-home-bottom-container article.catalyst-excerpt-widget header.entry-header h2.entry-title {
	margin: 0 0 0.25rem 0 !important;
	padding: 0 !important;
	color: var(--burgundy) !important;
	font-weight: 700 !important;
}

body.archive #content > article.hentry > header.entry-header h2.entry-title a,
body.archive #content > article.hentry > header.entry-header h2.entry-title a:visited,
body #ez-home-bottom-container article.catalyst-excerpt-widget header.entry-header h2.entry-title a,
body #ez-home-bottom-container article.catalyst-excerpt-widget header.entry-header h2.entry-title a:visited {
	color: var(--burgundy) !important;
	font-weight: 700 !important;
}

body.archive #content > article.hentry > header.entry-header h2.entry-title a:hover,
body.archive #content > article.hentry > header.entry-header h2.entry-title a:focus-visible,
body #ez-home-bottom-container article.catalyst-excerpt-widget header.entry-header h2.entry-title a:hover,
body #ez-home-bottom-container article.catalyst-excerpt-widget header.entry-header h2.entry-title a:focus-visible {
	color: #A23C0B !important;
}

/* --- Thumbnail anchor: absolutely positioned into the left "column" --- */
body.archive #content > article.hentry .entry-content > a:first-child,
body #ez-home-bottom-container article.catalyst-excerpt-widget .entry-content > a:first-child {
	position: absolute;
	left: 0;
	top: 0;
	width: var(--magdalene-card-thumb-w);
	height: var(--magdalene-card-thumb-h);
	margin: 0 !important;
	padding: 0 !important;
	display: block;
	float: none !important;
	background: none !important;
	box-shadow: none !important;
}

body.archive #content > article.hentry .entry-content > a:first-child > img,
body #ez-home-bottom-container article.catalyst-excerpt-widget .entry-content > a:first-child > img {
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	object-fit: cover !important;
	object-position: center center !important;
	aspect-ratio: 4 / 3 !important;
	margin: 0 !important;
	padding: 0 !important;
	border-radius: 4px !important;
	background: none !important;
	box-shadow: none !important;
	float: none !important;
}

/* --- Excerpt paragraph: pushed to the bottom of the flex column so
   its last line aligns with the bottom of the image. --- */
body.archive #content > article.hentry .entry-content > p,
body #ez-home-bottom-container article.catalyst-excerpt-widget .entry-content > p {
	margin: 0 !important;
}

body.archive #content > article.hentry .entry-content > p:not(:has(> a.excerpt-read-more:only-child)):last-of-type,
body #ez-home-bottom-container article.catalyst-excerpt-widget .entry-content > p:last-of-type {
	margin-top: auto !important;
	margin-bottom: 0 !important;
}

/* --- Hide the duplicate Catalyst "Read more »" link on /blog/.
   Keep the inline magdalene-inline-read-more emitted by the
   excerpt_more filter (custom-functions.php:478-484). Also hide the
   <p> wrapper so we don't leave whitespace. --- */
body.archive #content > article.hentry a.excerpt-read-more {
	display: none !important;
}

body.archive #content > article.hentry .entry-content > p:has(> a.excerpt-read-more) {
	display: none !important;
}

/* --- Hide post-meta footer (date duplication) and inter-card dividers --- */
body.archive #content > article.hentry > footer.post-meta:empty,
body.archive #content > article.hentry > footer.post-meta > p:empty {
	display: none !important;
}

body.archive #content hr,
body #ez-home-bottom-container .excerpt-widget-clear-both {
	display: none !important;
}

/* --- Latest Articles widget title spacing --- */
body #ez-home-bottom-container .widget.excerpt-widget > .widget-wrap > h4.widgettitle {
	margin: 0 0 var(--magdalene-card-stack-gap) 0 !important;
}

/* --- Mobile stack — drop to single column under 600px --- */
@media (max-width: 600px) {
	body.archive #content > article.hentry,
	body #ez-home-bottom-container article.catalyst-excerpt-widget.hentry {
		padding-left: 0 !important;
		min-height: 0;
	}
	body.archive #content > article.hentry .entry-content > a:first-child,
	body #ez-home-bottom-container article.catalyst-excerpt-widget .entry-content > a:first-child {
		position: static;
		width: 100%;
		height: auto;
		aspect-ratio: 4 / 3;
		margin: 0 0 0.75rem 0 !important;
	}
	body.archive #content > article.hentry .entry-content > a:first-child > img,
	body #ez-home-bottom-container article.catalyst-excerpt-widget .entry-content > a:first-child > img {
		height: auto !important;
	}
	body.archive #content > article.hentry .entry-content > p:last-of-type,
	body #ez-home-bottom-container article.catalyst-excerpt-widget .entry-content > p:last-of-type {
		margin-top: 0 !important;
	}
}
