/* ==========================================================================
   The Maison Picks — theme styles
   Design tokens live in theme.json; this file adds layout and editorial details.
   ========================================================================== */

:root {
	--mp-sage-text: #5E6652;
	--mp-gray-text: #615D54;
	--mp-terracotta-text: #8F5634;
	--mp-focus: 2px solid var(--wp--preset--color--green);
}

html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
}
body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; overflow-x: hidden; }
img { max-width: 100%; height: auto; }
::selection { background: var(--wp--preset--color--beige); color: var(--wp--preset--color--green); }
:target { scroll-margin-top: 1.5rem; }

/* Visible, consistent keyboard focus */
:where(a, button, input, textarea, select, summary, [tabindex]):focus-visible {
	outline: var(--mp-focus);
	outline-offset: 3px;
	border-radius: 2px;
}
.mp-footer :where(a, button, input):focus-visible { outline-color: var(--wp--preset--color--cream); }

.skip-link.screen-reader-text:focus { background: var(--wp--preset--color--green); color: var(--wp--preset--color--cream); padding: 0.75rem 1rem; z-index: 100000; }

/* ---------- Paragraph & block styles ---------- */
.is-style-mp-eyebrow {
	font-size: 0.74rem !important; font-weight: 600; letter-spacing: 0.18em; text-transform: uppercase;
	color: var(--mp-sage-text); margin-bottom: 0.9rem !important;
}
.is-style-mp-lead { font-size: clamp(1.08rem, 1rem + 0.35vw, 1.22rem); line-height: 1.7; color: var(--mp-gray-text); }
.is-style-mp-script { font-family: var(--wp--preset--font-family--serif); font-style: italic; font-size: 1.4rem; color: var(--wp--preset--color--green); }
.mp-section__sub { color: var(--mp-gray-text); max-width: 56ch; margin-inline: auto !important; }
.mp-center { display: flex !important; justify-content: center; margin-inline: auto; }
.mp-center-flex .mp-breadcrumbs ol, .mp-center-flex ol { justify-content: center; }
.mp-center-flex { display: flex; justify-content: center; }

.wp-block-button.is-style-mp-ghost .wp-block-button__link {
	background: transparent; color: var(--wp--preset--color--green); border: 1px solid var(--wp--preset--color--green);
}
.wp-block-button.is-style-mp-ghost .wp-block-button__link:hover,
.wp-block-button.is-style-mp-ghost .wp-block-button__link:focus-visible {
	background: var(--wp--preset--color--green); color: var(--wp--preset--color--cream);
}
.mp-btn-on-dark.is-style-mp-ghost .wp-block-button__link { color: var(--wp--preset--color--cream); border-color: rgba(252, 250, 246, 0.7); }
.mp-btn-on-dark.is-style-mp-ghost .wp-block-button__link:hover,
.mp-btn-on-dark.is-style-mp-ghost .wp-block-button__link:focus-visible { background: var(--wp--preset--color--cream); color: var(--wp--preset--color--green); }
.wp-block-button__link { min-height: 48px; display: inline-flex; align-items: center; justify-content: center; transition: background-color 180ms ease, color 180ms ease, border-color 180ms ease; }

.wp-block-image.is-style-mp-arch img,
.wp-block-image.is-style-mp-arch {
	border-radius: 999px 999px var(--wp--custom--radius--medium) var(--wp--custom--radius--medium) / 46% 46% var(--wp--custom--radius--medium) var(--wp--custom--radius--medium);
	overflow: hidden;
}
.wp-block-group.is-style-mp-panel { border: 1px solid var(--wp--preset--color--taupe); border-radius: var(--wp--custom--radius--large); padding: var(--wp--preset--spacing--40); background: var(--wp--preset--color--cream); }
.wp-block-separator.is-style-mp-sprig { border: 0 !important; height: 24px; background: none; position: relative; max-width: 220px; margin-inline: auto; }
.wp-block-separator.is-style-mp-sprig::before { content: ""; position: absolute; inset: 50% 0 auto; border-top: 1px solid var(--wp--preset--color--taupe); }

/* Category chips (core/categories → "Chips" style) */
.wp-block-categories.is-style-mp-chips { list-style: none; padding: 0; margin: 0 auto; display: flex; flex-wrap: wrap; gap: 0.6rem; justify-content: center; }
.wp-block-categories.is-style-mp-chips li { margin: 0; }
.wp-block-categories.is-style-mp-chips a {
	display: inline-flex; align-items: center; min-height: 44px; padding: 0.55rem 1.1rem;
	border: 1px solid var(--wp--preset--color--taupe); border-radius: 4px; background: var(--wp--preset--color--cream);
	font-size: 0.78rem; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; text-decoration: none; color: var(--wp--preset--color--green);
	transition: background-color 180ms ease, border-color 180ms ease;
}
.wp-block-categories.is-style-mp-chips a:hover, .wp-block-categories.is-style-mp-chips a:focus-visible { background: var(--wp--preset--color--beige); border-color: var(--wp--preset--color--sage); }
.wp-block-categories.is-style-mp-chips .current-cat a { background: var(--wp--preset--color--green); color: var(--wp--preset--color--cream); border-color: var(--wp--preset--color--green); }

/* ---------- Header ---------- */
.mp-header { background: var(--wp--preset--color--ivory); border-bottom: 1px solid var(--wp--preset--color--taupe); position: relative; z-index: 20; }
.mp-header__inner {
	display: grid !important;
	grid-template-columns: 1fr auto 1fr;
	grid-template-areas: "tagline brand tools" "nav nav nav";
	align-items: center;
	column-gap: 1rem;
	row-gap: 0;
}
.mp-header__inner > * { margin-block: 0 !important; }
.mp-header__tagline { grid-area: tagline; font-family: var(--wp--preset--font-family--serif); font-style: italic; font-size: 1.05rem; color: var(--mp-gray-text); }
.mp-header__brand { grid-area: brand; padding-block: 1.6rem 1.3rem; gap: 0.75rem; }
.mp-header__tools { grid-area: tools; gap: 0.5rem; }
.mp-header__nav { grid-area: nav; border-top: 1px solid var(--wp--preset--color--taupe); padding-block: 0.4rem; }
.mp-header__nav .wp-block-navigation__container { gap: 0.25rem clamp(1rem, 2.4vw, 2.4rem); justify-content: center; }
.mp-header__nav .wp-block-navigation-item__content { padding: 0.7rem 0.15rem; text-transform: uppercase; letter-spacing: 0.12em; font-size: 0.74rem; font-weight: 600; color: var(--wp--preset--color--green); }
.mp-header__nav .wp-block-navigation-item__content:hover { text-decoration: none !important; color: var(--mp-terracotta-text); }
.mp-header__nav .current-menu-item > .wp-block-navigation-item__content,
.mp-header__nav [aria-current="page"] { box-shadow: inset 0 -1px 0 currentColor; }

/* Wordmark */
.wp-block-site-title { margin: 0; }
.mp-wm { display: inline-flex; align-items: baseline; gap: 0.32em; white-space: nowrap; }
.mp-wm__the { font-size: 0.62em; letter-spacing: 0.22em; }
.mp-wm__main { letter-spacing: 0.16em; }
.mp-wm__accent { color: var(--wp--preset--color--terracotta); letter-spacing: 0.16em; }
.mp-header__brand:has(.wp-block-site-logo img) .wp-block-site-title { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }

/* Search: icon button that expands into a field */
.mp-header__search .wp-block-search__button { background: transparent; color: var(--wp--preset--color--green); border: 1px solid transparent; min-width: 44px; min-height: 44px; padding: 0.5rem; margin: 0; }
.mp-header__search .wp-block-search__button:hover { border-color: var(--wp--preset--color--taupe); }
.mp-header__search .wp-block-search__button svg { width: 22px; height: 22px; fill: currentColor; }
.mp-header__search .wp-block-search__input { border: 1px solid var(--wp--preset--color--taupe); background: var(--wp--preset--color--cream); border-radius: 4px; min-height: 44px; font-size: 1rem; }
.mp-header__search .wp-block-search__inside-wrapper { border: 0; padding: 0; }
.mp-header__cta .wp-block-button__link { padding: 0.6rem 1rem; min-height: 40px; }

/* Collapse the 7-item menu into the menu button below 1100px (core switches at 600px). */
@media (min-width: 600px) and (max-width: 1099px) {
	.mp-header__nav .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex; }
	.mp-header__nav .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: none; }
}
@media (max-width: 1099px) {
	.mp-header__inner { grid-template-columns: auto 1fr auto auto; grid-template-areas: "brand . tools nav"; }
	.mp-header__tagline { display: none; }
	.mp-header__brand { justify-content: flex-start !important; padding-block: 1rem; }
	.mp-header__nav { border-top: 0; padding: 0; }
	.mp-header .mp-header__cta { display: none !important; }
}
.mp-header .wp-block-navigation__responsive-container-open,
.mp-header .wp-block-navigation__responsive-container-close { min-width: 44px; min-height: 44px; align-items: center; justify-content: center; color: var(--wp--preset--color--green); }
.mp-header .wp-block-navigation__responsive-container-close { display: inline-flex; }
.mp-header .wp-block-navigation__responsive-container.is-menu-open { padding: 1.5rem clamp(1.25rem, 5vw, 3rem); }
.mp-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { gap: 0.25rem; align-items: flex-start; }
.mp-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { font-family: var(--wp--preset--font-family--serif); font-size: 1.75rem; text-transform: none; letter-spacing: 0; font-weight: 500; padding: 0.5rem 0; }
.mp-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { padding-top: 3rem; }
@media (max-width: 599px) {
	.mp-header .mp-wm { gap: 0.28em; }
	.mp-header .mp-wm__main, .mp-header .mp-wm__accent { letter-spacing: 0.12em; }
}
@media (max-width: 380px) {
	.mp-header .wp-block-site-title { font-size: 1.05rem !important; }
	.mp-wm { gap: 0.25em; }
	.mp-wm__main, .mp-wm__accent { letter-spacing: 0.1em; }
}

/* ---------- Main & sections ---------- */
.mp-main--wide > .wp-block-post-content > * { margin-block-start: 0; }
.mp-main--wide > .wp-block-post-content > .alignfull + .alignfull { margin-block-start: 0; }
.mp-section h2 + .mp-section__sub { margin-top: 0.75rem; }

/* Hero */
.mp-hero__title { margin-top: 0 !important; color: var(--wp--preset--color--green); }
.mp-hero__title em { font-style: italic; color: var(--wp--preset--color--terracotta); font-weight: 500; }
.mp-hero__promise {
	display: flex; align-items: center; gap: 0.75rem;
	font-size: 0.74rem; font-weight: 600; letter-spacing: 0.16em; text-transform: uppercase; color: var(--wp--preset--color--green);
}
.mp-hero__promise::before { content: ""; width: 36px; height: 1px; background: var(--wp--preset--color--terracotta); flex: 0 0 auto; }
.mp-hero__media { position: relative; }
.mp-hero__image { margin: 0 !important; }
.mp-hero__image img { width: 100%; display: block; }
.mp-hero__badge {
	position: absolute; left: -1.5rem; bottom: 2.5rem; margin: 0 !important;
	width: 128px; height: 128px; border-radius: 50%; padding: 1.1rem;
	display: flex; align-items: center; justify-content: center; text-align: center;
	background: var(--wp--preset--color--cream); border: 1px solid var(--wp--preset--color--taupe);
	font-size: 0.66rem; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; line-height: 1.45; color: var(--wp--preset--color--green);
	box-shadow: var(--wp--preset--shadow--soft);
}
@media (max-width: 781px) {
	.mp-hero__cols { flex-direction: column-reverse; }
	.mp-hero__badge { left: auto; right: 0.75rem; bottom: -1.5rem; width: 104px; height: 104px; font-size: 0.58rem; padding: 0.9rem; }
	.mp-hero__image img { aspect-ratio: 4/3 !important; }
	.mp-hero .wp-block-buttons { flex-direction: column; align-items: stretch; }
	.mp-hero .wp-block-button, .mp-hero .wp-block-button__link { width: 100%; }
}

/* Sections with fine borders */
.mp-section--categories { border-top: 1px solid var(--wp--preset--color--taupe); border-bottom: 1px solid var(--wp--preset--color--taupe); }
.mp-section--feature { border-top: 1px solid var(--wp--preset--color--taupe); }
.mp-empty { color: var(--mp-gray-text); font-style: italic; }
.mp-newsletter-card { border: 1px solid var(--wp--preset--color--taupe); border-radius: var(--wp--custom--radius--large); text-align: center; position: relative; }
.mp-newsletter-card .mp-newsletter__row { justify-content: center; }
.mp-newsletter-card .mp-newsletter { text-align: left; }
.mp-newsletter-card .mp-newsletter__consent, .mp-newsletter-card .mp-newsletter__soon { text-align: center; }

/* Values strip */
.mp-values { border-top: 1px solid var(--wp--preset--color--taupe); border-bottom: 1px solid var(--wp--preset--color--taupe); }
.mp-values__item { display: flex; gap: 1rem; align-items: flex-start; padding: 0.5rem clamp(0.75rem, 2vw, 1.75rem); }
.mp-values__item > * { margin: 0 !important; }
.mp-values__item .mp-icon-block { color: var(--wp--preset--color--terracotta); padding-top: 0.15rem; }
.mp-values__title { font-family: var(--wp--preset--font-family--sans) !important; font-size: 0.78rem !important; font-weight: 600 !important; letter-spacing: 0.14em; text-transform: uppercase; margin: 0 0 0.3rem !important; line-height: 1.4 !important; }
.mp-values__desc { font-size: 0.88rem; color: var(--mp-gray-text); margin: 0 !important; line-height: 1.5; }
@media (min-width: 782px) {
	.mp-values__item + .mp-values__item { border-left: 1px solid var(--wp--preset--color--taupe); }
}
@media (min-width: 600px) and (max-width: 781px) {
	.mp-values__cols { flex-wrap: wrap !important; }
	.mp-values__cols > .mp-values__item { flex-basis: calc(50% - 1rem) !important; }
}

/* ---------- Post grids (Query Loop) ---------- */
.wp-block-post-template.mp-post-grid { gap: 3rem 2rem; }
@media (min-width: 600px) and (max-width: 1023px) {
	.wp-block-post-template.mp-post-grid.is-layout-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
@media (max-width: 599px) {
	.wp-block-post-template.mp-post-grid.is-layout-grid { grid-template-columns: minmax(0, 1fr) !important; gap: 2.5rem; }
}

/* Pagination */
.mp-pagination { gap: 0.4rem; font-size: 0.9rem; }
.mp-pagination a, .mp-pagination .page-numbers {
	display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 0 0.75rem;
	border: 1px solid var(--wp--preset--color--taupe); border-radius: 4px; text-decoration: none; color: var(--wp--preset--color--green);
}
.mp-pagination .page-numbers.current { background: var(--wp--preset--color--green); border-color: var(--wp--preset--color--green); color: var(--wp--preset--color--cream); }
.mp-pagination .page-numbers.dots { border: 0; }
.mp-pagination a:hover { background: var(--wp--preset--color--beige); }

/* Archive headers */
.mp-archive-head { text-align: center; margin-bottom: var(--wp--preset--spacing--50); }
.mp-archive-head .wp-block-query-title { margin-top: 0.25rem; }
.mp-archive-head .mp-breadcrumbs { margin-bottom: 1.5rem; }
.mp-archive-filters { margin-bottom: var(--wp--preset--spacing--50) !important; }
.mp-archive-search { max-width: 520px; margin: 1.75rem auto 0; }
.mp-archive-search .wp-block-search__inside-wrapper { border: 1px solid var(--wp--preset--color--taupe); border-radius: 4px; background: var(--wp--preset--color--cream); padding: 4px; }
.mp-archive-search .wp-block-search__input { border: 0; background: transparent; min-height: 44px; font-size: 1rem; padding-inline: 0.75rem; }
.mp-archive-search .wp-block-search__button { margin: 0; min-width: 48px; min-height: 44px; padding: 0.5rem 0.9rem; }
.mp-archive-search .wp-block-search__button svg { fill: currentColor; }
.mp-archive-search .wp-block-search__label { font-size: 0.85rem; font-weight: 500; }
.mp-empty-state { text-align: center; padding-block: var(--wp--preset--spacing--40); }

/* ---------- Single article ---------- */
.mp-article__header { text-align: center; }
.mp-article__header .mp-breadcrumbs { margin-bottom: 1.75rem; }
.mp-article__cats { margin-bottom: 0.75rem; }
.mp-article__cats .wp-block-post-terms__separator { color: var(--wp--preset--color--taupe); }
.mp-article__title { margin-top: 0 !important; font-size: clamp(2.25rem, 1.6rem + 2.8vw, 3.75rem) !important; line-height: 1.08 !important; text-wrap: balance; }
.mp-article__header .mp-subtitle { margin: 1.1rem auto 0; max-width: 40ch; text-align: center; }
.mp-article__image { margin-top: var(--wp--preset--spacing--50) !important; }
.mp-article__image img { border-radius: var(--wp--custom--radius--large); }
.mp-article__meta {
	gap: 0.4rem 1.25rem; margin-top: 1.25rem !important; padding-bottom: 1.25rem; border-bottom: 1px solid var(--wp--preset--color--taupe);
	font-size: 0.86rem; color: var(--mp-gray-text); max-width: var(--wp--style--global--content-size);
}
.mp-article__meta > * { margin: 0 !important; }
.mp-article__meta .wp-block-post-author { align-items: center; }
.mp-article__meta .wp-block-post-author__avatar { margin-right: 0.5rem; }
.mp-article__meta .wp-block-post-author__avatar img { border-radius: 50%; display: block; }
.mp-article__meta .wp-block-post-author__byline { display: inline; font-size: inherit; margin-right: 0.25em; }
.mp-article__meta .wp-block-post-author__content { display: flex; align-items: baseline; }
.mp-article__meta .wp-block-post-author__name { font-weight: 600; color: var(--wp--preset--color--charcoal); }
.mp-article__meta .wp-block-post-author__name a { color: inherit; text-decoration: none; }
.mp-article__meta .wp-block-post-author__name a:hover { text-decoration: underline; }
.mp-article__meta > * + *:not(:first-child)::after { content: none; }
.mp-article__toc { margin-top: var(--wp--preset--spacing--40) !important; }

/* Article typography */
.mp-article__content { margin-top: var(--wp--preset--spacing--50) !important; font-size: 1.08rem; line-height: 1.8; overflow-wrap: break-word; }
.mp-article__content > * { margin-block: 0 1.4em; }
.mp-article__content > h2 { margin-top: 2.2em; margin-bottom: 0.6em; font-size: clamp(1.9rem, 1.6rem + 1vw, 2.4rem); }
.mp-article__content > h3 { margin-top: 1.8em; margin-bottom: 0.5em; font-size: clamp(1.45rem, 1.3rem + 0.5vw, 1.7rem); }
.mp-article__content > h2 + h3 { margin-top: 0.6em; }
.mp-article__content a { text-decoration-thickness: 1px; text-underline-offset: 0.18em; text-decoration-color: var(--wp--preset--color--sage); }
.mp-article__content a:hover { text-decoration-color: currentColor; }
.mp-article__content :where(ul, ol) { padding-left: 1.3em; }
.mp-article__content li + li { margin-top: 0.4em; }
.mp-article__content li::marker { color: var(--wp--preset--color--terracotta); }
.mp-article__content .wp-block-image figcaption, .mp-article__content figcaption { text-align: center; margin-top: 0.75rem; font-size: 0.85rem; color: var(--mp-gray-text); }
.mp-article__content .wp-block-image img { height: auto; }
.mp-article__content .wp-block-table { overflow-x: auto; }
.mp-article__content table { border-collapse: collapse; width: 100%; font-size: 0.95rem; }
.mp-article__content :where(th, td) { border: 1px solid var(--wp--preset--color--taupe); padding: 0.7rem 0.9rem; text-align: left; }
.mp-article__content thead th { background: var(--wp--preset--color--beige); font-weight: 600; }
.mp-article__content pre { overflow-x: auto; }
.mp-article__content .wp-block-quote { margin-block: 2em; }
.mp-article__content .wp-block-quote p { line-height: 1.5; }

.mp-article__footer { margin-top: var(--wp--preset--spacing--50) !important; }
.mp-tags { font-size: 0.85rem; color: var(--mp-gray-text); }
.mp-tags a { display: inline-block; padding: 0.15rem 0.6rem; margin: 0.15rem 0; border: 1px solid var(--wp--preset--color--taupe); border-radius: 4px; text-decoration: none; color: var(--wp--preset--color--green); }
.mp-tags .wp-block-post-terms__separator { display: none; }
.mp-tags .wp-block-post-terms__prefix { margin-right: 0.5rem; }
.mp-author-box { margin-block: var(--wp--preset--spacing--40) !important; padding: 1.75rem; background: var(--wp--preset--color--cream); border: 1px solid var(--wp--preset--color--taupe); border-radius: var(--wp--custom--radius--large); }
.mp-author-box .wp-block-post-author { gap: 1.25rem; align-items: flex-start; }
.mp-author-box .wp-block-post-author__avatar img { border-radius: 50%; display: block; }
.mp-author-box .wp-block-post-author__byline { font-size: 0.72rem; letter-spacing: 0.16em; text-transform: uppercase; color: var(--mp-sage-text); font-weight: 600; margin: 0; }
.mp-author-box .wp-block-post-author__name { font-family: var(--wp--preset--font-family--serif); font-size: 1.5rem; margin: 0.1rem 0 0.4rem; }
.mp-author-box .wp-block-post-author__name a { color: var(--wp--preset--color--green); text-decoration: none; }
.mp-author-box .wp-block-post-author__bio { font-size: 0.95rem; color: var(--mp-gray-text); margin: 0; }
.mp-article__related { margin-top: var(--wp--preset--spacing--70) !important; padding-top: var(--wp--preset--spacing--60); border-top: 1px solid var(--wp--preset--color--taupe); }

/* Pages */
.mp-page .mp-article__content { margin-top: var(--wp--preset--spacing--30) !important; }

/* ---------- Footer ---------- */
.mp-footer { margin-top: 0; }
.mp-footer .mp-icon-block { color: var(--wp--preset--color--sage); }
.mp-footer__title { color: var(--wp--preset--color--cream); margin-top: 0.75rem !important; }
.mp-footer__title a { color: var(--wp--preset--color--cream) !important; text-decoration: none; }
.mp-footer .mp-wm__accent { color: #D9A787; }
.mp-footer__about { color: #E6E1D6; max-width: 36ch; }
.mp-footer__heading { font-family: var(--wp--preset--font-family--sans) !important; color: #C9CDBF !important; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 600 !important; margin-bottom: 1rem !important; }
.mp-footer__nav { gap: 0.35rem !important; font-size: 0.95rem; }
.mp-footer__nav .wp-block-navigation-item__content { padding: 0.3rem 0; color: #F2EEE6; text-transform: none; letter-spacing: 0; font-weight: 400; }
.mp-footer__nav .wp-block-navigation-item__content:hover { text-decoration: underline !important; color: #fff; }
.mp-footer__rule { border-color: rgba(252, 250, 246, 0.2) !important; opacity: 1; }
.mp-footer__bottom { color: #C9CDBF; font-size: 0.82rem; }
.mp-footer__bottom > * { margin: 0; }
.mp-footer__thanks { font-family: var(--wp--preset--font-family--serif); font-style: italic; font-size: 1.15rem; color: #E6E1D6; }
.mp-footer__social { margin-top: 1.25rem !important; }
.mp-footer__social a { min-width: 40px; min-height: 40px; }
.mp-site-footer { margin-top: 0 !important; }
.wp-site-blocks > .mp-site-footer { margin-block-start: 0; }

/* ---------- 404 ---------- */
.mp-404 .wp-block-heading:first-of-type { line-height: 1.08; }
.mp-404__label { font-family: var(--wp--preset--font-family--sans) !important; text-transform: uppercase; letter-spacing: 0.16em; font-weight: 600 !important; color: var(--mp-sage-text) !important; }
.mp-404__cats.is-style-mp-chips { justify-content: flex-start; }
.mp-404__search { margin-inline: 0; }
@media (max-width: 781px) {
	.mp-404__cols .wp-block-image { max-width: 380px; margin-inline: auto; }
}

/* ---------- Editor helpers ---------- */
.editor-styles-wrapper .mp-header__inner { min-height: 90px; }
.mp-article__meta .wp-block-post-author__content { flex-wrap: nowrap; gap: 0.25em; }
.mp-article__meta .wp-block-post-author__name, .mp-article__meta .wp-block-post-author__byline { white-space: nowrap; margin: 0; }
.mp-article__meta .mp-reading-time::before { content: "· "; }
.mp-article__date::before { content: "· Published " !important; }
.mp-article__updated::before { content: "· Updated " !important; }

/* ---------- Header robustness: any site title length, any screen ---------- */
.mp-header__inner { grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); }
.mp-header__tagline { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-width: 0; }
.mp-header__brand { min-width: 0; max-width: min(62vw, 720px); }
.mp-header .wp-block-site-title { min-width: 0; line-height: 1.15; text-align: center; overflow-wrap: anywhere; }
.mp-header .wp-block-site-title a { display: inline-block; max-width: 100%; }
/* A title that is not the wordmark (e.g. a long address) gets a calmer size and spacing. */
.mp-header .wp-block-site-title:not(:has(.mp-wm)) { font-size: clamp(1.05rem, 0.9rem + 0.8vw, 1.5rem) !important; letter-spacing: 0.06em; }
.mp-header__tools { min-width: 0; }
@media (max-width: 1279px) { .mp-header__tagline { visibility: hidden; } }
@media (max-width: 1099px) {
	.mp-header__inner { grid-template-columns: minmax(0, 1fr) auto auto; grid-template-areas: "brand tools nav"; }
	.mp-header__brand { max-width: none; justify-content: flex-start !important; }
	.mp-header .wp-block-site-title { text-align: left; }
}
@media (max-width: 599px) {
	.mp-header .wp-block-site-title:not(:has(.mp-wm)) { font-size: 0.95rem !important; letter-spacing: 0.03em; }
	.mp-header .wp-block-site-logo img { max-width: 160px; height: auto; }
	.mp-header__tools { gap: 0.15rem; }
}
.mp-header__nav .wp-block-navigation__container, .mp-header__nav .wp-block-navigation__responsive-container { border: 0 !important; }

/* Featured story section stays hidden until there is something to feature. */
.mp-section--feature:not(:has(.mp-feature)) { display: none; }
