/* Manheimer 2026 — component styles. Tokens live in theme.json. */
:root {
	--mh-navy: var(--wp--preset--color--navy);
	--mh-blue: var(--wp--preset--color--blue);
	--mh-sky: var(--wp--preset--color--sky);
	--mh-mist: var(--wp--preset--color--mist);
	--mh-cream: var(--wp--preset--color--cream);
	--mh-dark: var(--wp--preset--color--dark);
	--mh-ink: var(--wp--preset--color--ink);
	--mh-body: var(--wp--preset--color--body);
	--mh-line: var(--wp--preset--color--line);
	--mh-radius: 14px;
	--mh-pad-x: var(--wp--style--root--padding-left, clamp(1.5rem, 8.3vw, 7.5rem));
}
html { scroll-behavior: smooth; }
body { -webkit-font-smoothing: antialiased; }
:where(.wp-site-blocks) > * { margin-block-start: 0; }
.mh-main > * { margin-block-start: 0; }
.mh-main .wp-block-post-content > * + * { margin-block-start: 0; }
img { height: auto; }
a { text-underline-offset: 0.15em; }
:focus-visible { outline: 3px solid var(--mh-blue); outline-offset: 3px; }
[id] { scroll-margin-top: 110px; }

/* ---------- Type helpers ---------- */
.is-style-mh-eyebrow, p.is-style-mh-eyebrow {
	font-family: var(--wp--preset--font-family--sans);
	font-weight: 700; font-size: 0.875rem; letter-spacing: 0.16em; text-transform: uppercase;
	color: var(--mh-blue); margin: 0 0 0.25rem;
}
.mh-lead { font-size: var(--wp--preset--font-size--lead); line-height: 1.5; }
.mh-center { text-align: center; }
.mh-small { font-size: 0.875rem; }
.mh-link-arrow a, a.mh-link-arrow { font-weight: 700; text-decoration: none; }
.mh-link-arrow a:hover { text-decoration: underline; }
/* Big decorative quote marks: never set line-height below ~0.95 or they clip. */
.mh-quote-mark { font-family: var(--wp--preset--font-family--serif); font-weight: 700; font-size: 6rem; line-height: 0.95 !important; color: var(--mh-sky); margin: 0 !important; overflow: visible; }

/* ---------- Sections ---------- */
.mh-section { padding-top: var(--wp--preset--spacing--70); padding-bottom: var(--wp--preset--spacing--70); }
.mh-section--tight { padding-top: var(--wp--preset--spacing--50); padding-bottom: var(--wp--preset--spacing--60); }
.mh-section > * + * { margin-block-start: 1.25rem; }
.mh-section > .wp-block-heading + * { margin-block-start: 1rem; }
.mh-section-head { max-width: 820px; }
.mh-section-head > * + * { margin-block-start: 0.75rem; }
.mh-bg-cream { background: var(--mh-cream); }
.mh-bg-navy { background: var(--mh-navy); }
.mh-bg-blue { background: var(--mh-blue); }
.mh-bg-dark { background: var(--mh-dark); }
:is(.mh-bg-navy, .mh-bg-blue, .mh-bg-dark, .mh-page-header, .mh-card-dark) { color: var(--mh-mist); }
:is(.mh-bg-navy, .mh-bg-blue, .mh-bg-dark, .mh-page-header, .mh-card-dark) :is(h1, h2, h3, h4) { color: #fff; }
:is(.mh-bg-navy, .mh-bg-dark, .mh-page-header, .mh-card-dark) .is-style-mh-eyebrow { color: var(--mh-sky); }
.mh-bg-blue .is-style-mh-eyebrow { color: #fff; }
:is(.mh-bg-navy, .mh-bg-blue, .mh-bg-dark, .mh-page-header) a:not(.wp-element-button) { color: #fff; }

/* ---------- Buttons ---------- */
.wp-block-button .wp-block-button__link { transition: background-color .15s, color .15s, border-color .15s; }
.wp-block-button.is-style-outline .wp-block-button__link { background: transparent; color: var(--mh-navy); border: 1.5px solid var(--mh-navy); padding: calc(1.125rem - 1.5px) calc(2.125rem - 1.5px); }
.wp-block-button.is-style-outline .wp-block-button__link:hover { background: var(--mh-navy); color: #fff; }
.wp-block-button.is-style-mh-white .wp-block-button__link { background: #fff; color: var(--mh-navy); }
.wp-block-button.is-style-mh-white .wp-block-button__link:hover { background: var(--mh-mist); color: var(--mh-navy); }
.wp-block-button.is-style-mh-outline-white .wp-block-button__link { background: transparent; color: #fff; border: 1.5px solid #fff; padding: calc(1.125rem - 1.5px) calc(2.125rem - 1.5px); }
.wp-block-button.is-style-mh-outline-white .wp-block-button__link:hover { background: #fff; color: var(--mh-navy); }
.wp-block-button.mh-btn-navy .wp-block-button__link { background: var(--mh-navy); }

/* ---------- Header ---------- */
.mh-site-header { position: sticky; top: 0; z-index: 50; }
.admin-bar .mh-site-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .mh-site-header { top: 0; } }
.mh-utility { background: var(--mh-blue); color: #fff; padding-top: 0.6rem; padding-bottom: 0.6rem; }
.mh-utility__text { margin: 0; text-align: center; font-size: 0.8125rem; letter-spacing: 0.06em; text-transform: uppercase; }
.mh-utility__text strong { font-weight: 700; }
.mh-utility .mh-dot { margin: 0 0.75rem; opacity: .8; }
.mh-utility__link { text-transform: none; letter-spacing: 0; margin-left: 1rem; }
.mh-utility a { color: #fff; font-weight: 700; }
.mh-nav { background: #fff; border-bottom: 1px solid var(--mh-line); padding-top: 0.9rem; padding-bottom: 0.9rem; }
.mh-nav__inner { gap: 1.5rem; }
.mh-logo { margin: 0 !important; flex-shrink: 0; }
.mh-logo img { display: block; }
.mh-menu { flex: 1; font-size: 1rem; }
.mh-menu .wp-block-navigation__container { gap: 2rem; }
.mh-menu .wp-block-navigation-item__content { color: var(--mh-ink); text-decoration: none; padding: 0.25rem 0; }
.mh-menu .wp-block-navigation-item__content:hover,
.mh-menu .current-menu-item > .wp-block-navigation-item__content { color: var(--mh-blue); text-decoration: underline; text-decoration-thickness: 2px; }
.mh-menu__mobile-only { display: none !important; }
.mh-nav__ctas { gap: 0.75rem; flex-wrap: nowrap; margin: 0 !important; }
.mh-nav__ctas .wp-block-button__link { padding: 0.75rem 1.375rem; }
.mh-nav__ctas .is-style-outline .wp-block-button__link { padding: calc(0.75rem - 1.5px) calc(1.375rem - 1.5px); }
@media (max-width: 1000px) { .mh-menu .wp-block-navigation__container { gap: 1.25rem; } }
@media (max-width: 599px) {
	.mh-utility__text { font-size: 0.75rem; }
	.mh-utility__link { display: none; }
	.mh-utility .mh-dot { margin: 0 0.4rem; }
	.mh-hide-mobile { display: none !important; }
	.mh-logo img { width: 88px !important; }
	.mh-menu { flex: 0 0 auto; order: 3; }
	.mh-nav__ctas { margin-left: auto !important; }
	.mh-menu .wp-block-navigation__responsive-container.is-menu-open .mh-menu__mobile-only { display: flex !important; }
	.mh-menu .wp-block-navigation__responsive-container.is-menu-open { padding: 2rem var(--mh-pad-x); }
	.mh-menu .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; color: var(--mh-navy); }
}

/* ---------- Footer ---------- */
.mh-footer { background: var(--mh-dark); color: var(--mh-mist); padding-top: 4rem; padding-bottom: 3rem; }
.mh-footer a { color: var(--mh-mist); text-decoration: none; }
.mh-footer a:hover { color: #fff; text-decoration: underline; }
.mh-footer__logo { margin: 0 0 1.25rem !important; }
.mh-paidfor { display: inline-block; border: 1px solid rgba(255,255,255,.55); color: #fff; padding: 0.45rem 0.75rem; font-size: 0.8125rem; font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; margin: 0; }
.mh-footer__links { font-size: 0.9375rem; font-weight: 500; }
.mh-footer__links .wp-block-navigation__container { gap: 0.6rem; }
.mh-footer__heading { color: #fff; font-weight: 700; margin: 0 0 0.75rem; }
.mh-footer__small { font-size: 0.875rem; margin-top: 1rem; }
.mh-footer__legal { font-size: 0.8125rem; opacity: .75; margin-top: 3rem !important; }
.mh-sticky-cta { display: none !important; }
@media (max-width: 781px) {
	.mh-footer { padding-bottom: 6.5rem; }
	.mh-sticky-cta { display: flex !important; position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; background: #fff; padding: 0.6rem 1rem calc(0.6rem + env(safe-area-inset-bottom)); box-shadow: 0 -4px 16px rgba(0,0,0,.12); }
	.mh-sticky-cta__buttons { width: 100%; flex-wrap: nowrap; gap: 0.6rem; }
	.mh-sticky-cta__buttons .wp-block-button { flex: 1; }
	.mh-sticky-cta__buttons .wp-block-button__link { width: 100%; padding: 1rem; }
}

/* ---------- Page header (inner pages) ---------- */
.mh-page-header { background: var(--mh-navy); padding-top: clamp(2rem, 6vw, 5.5rem); padding-bottom: clamp(2.5rem, 6vw, 5.5rem); }
.mh-page-header--compact { padding-top: clamp(2rem, 4vw, 3.5rem); padding-bottom: clamp(2rem, 4vw, 3.5rem); }
.mh-page-header > * { max-width: 820px; margin-left: 0 !important; }
.mh-page-header > * + * { margin-block-start: 1rem; }
.mh-page-header .wp-block-post-title, .mh-page-header h1 { color: #fff; }
.mh-crumbs { font-size: 0.8125rem; font-weight: 500; color: var(--mh-sky); margin: 0; }
.mh-crumbs a { color: var(--mh-sky) !important; text-decoration: none; }
.mh-crumbs--dark, .mh-crumbs--dark a { color: var(--mh-blue) !important; }
/* Header with photo (About) */
.mh-photo-header { background: var(--mh-navy); gap: 0 !important; margin-block: 0 !important; }
.mh-photo-header > .wp-block-column { margin: 0 !important; }
.mh-photo-header__img { margin: 0 !important; height: 100%; }
.mh-photo-header__img img { width: 100%; height: 100%; min-height: 440px; object-fit: cover; object-position: 38% 30%; display: block; }
.mh-photo-header__text { padding: clamp(2rem, 6vw, 5.5rem) var(--mh-pad-x) clamp(2.5rem, 6vw, 5.5rem) clamp(1.5rem, 5.5vw, 5rem); align-self: center; }
.mh-photo-header__text > * + * { margin-block-start: 1rem; }
@media (max-width: 781px) {
	.mh-photo-header__img img { min-height: 0; aspect-ratio: 13 / 8; object-position: 46% 22%; }
	.mh-photo-header__text { padding: 2rem var(--mh-pad-x) 2.5rem; }
}

/* ---------- Home: hero ---------- */
.mh-hero { background: var(--mh-navy); gap: 0 !important; margin-block: 0 !important; }
.mh-hero > .wp-block-column { margin: 0 !important; }
.mh-hero__img { margin: 0 !important; height: 100%; position: relative; }
.mh-hero__img img { width: 100%; height: 100%; min-height: 640px; object-fit: cover; object-position: 30% 40%; display: block; }
.mh-hero__img figcaption { position: absolute; left: 1.5rem; bottom: 1.5rem; margin: 0; background: rgba(0,31,74,.8); color: #fff; font-size: 0.8125rem; font-weight: 600; padding: 0.35rem 0.65rem; border-radius: 4px; }
.mh-hero__text { padding: clamp(2rem, 6vw, 6rem) var(--mh-pad-x) clamp(2rem, 6vw, 6rem) clamp(1.5rem, 5vw, 5rem); align-self: center; color: var(--mh-mist); }
.mh-hero__text > * + * { margin-block-start: 1.25rem; }
.mh-hero__text h1 { color: #fff; }
.mh-hero__text .is-style-mh-eyebrow { color: var(--mh-sky); }
.mh-hero__endorse { font-size: 0.9375rem; font-weight: 600; color: #fff; }
.mh-hero__endorse::before { content: ""; display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: var(--mh-sky); margin-right: 0.6rem; vertical-align: middle; }
@media (max-width: 781px) {
	.mh-hero__img img { min-height: 0; aspect-ratio: 4 / 3; object-position: 22% 35%; }
	.mh-hero__img figcaption { left: 0.75rem; bottom: 0.75rem; font-size: 0.75rem; }
	.mh-hero__text { padding: 2rem var(--mh-pad-x) 2.5rem; }
	.mh-hero .wp-block-buttons { flex-direction: column; align-items: stretch; }
	.mh-hero .wp-block-button__link { width: 100%; }
}

/* ---------- Home: proof bar ---------- */
.mh-proof { padding-top: 3rem; padding-bottom: 3rem; border-bottom: 1px solid var(--mh-line); }
.mh-proof__grid { gap: 0 !important; }
.mh-proof__grid > .wp-block-column { padding: 0 1.75rem; border-left: 1px solid var(--mh-line); }
.mh-proof__grid > .wp-block-column:first-child { padding-left: 0; border-left: 0; }
.mh-stat { font-family: var(--wp--preset--font-family--serif); font-weight: 700; font-size: clamp(2rem, 3.2vw, 2.75rem); line-height: 1.05; color: var(--mh-navy); margin: 0 0 0.5rem; }
.mh-stat + p { font-size: 0.9375rem; line-height: 1.45; margin: 0; }
@media (max-width: 781px) {
	.mh-proof__grid { display: grid !important; grid-template-columns: 1fr 1fr; row-gap: 1.75rem !important; column-gap: 1.25rem !important; }
	.mh-proof__grid > .wp-block-column { padding: 0; border: 0; }
	.mh-stat { font-size: 1.75rem; }
	.mh-stat + p { font-size: 0.875rem; }
}

/* ---------- Cards ---------- */
.mh-card, .is-style-mh-card { background: #fff; border-radius: var(--mh-radius); overflow: hidden; }
.mh-bg-white .mh-card, .mh-card--cream { background: var(--mh-cream); }
.mh-card-dark, .is-style-mh-card-dark { background: var(--mh-navy); border-radius: var(--mh-radius); }
.mh-card__img { margin: 0 !important; }
.mh-card__img img { width: 100%; aspect-ratio: 2 / 1; object-fit: cover; display: block; }
.mh-card__body { padding: 2rem 2.25rem 2.25rem; }
.mh-card__body > * + * { margin-block-start: 0.75rem; }
.mh-card__body h3 { font-size: 1.875rem; line-height: 1.15; }
.mh-card__body p { font-size: 1.0625rem; }
.mh-grid-2 { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem; }
.mh-grid-3 { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; }
.mh-grid-4 { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.5rem; }
.mh-grid-2 > *, .mh-grid-3 > *, .mh-grid-4 > * { margin: 0 !important; }
@media (max-width: 1000px) { .mh-grid-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } .mh-grid-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 781px) {
	.mh-grid-2, .mh-grid-3, .mh-grid-4 { grid-template-columns: 1fr; }
	/* Swipeable carousel on phones */
	.mh-carousel { display: flex !important; overflow-x: auto; scroll-snap-type: x mandatory; gap: 1rem; margin-right: calc(-1 * var(--mh-pad-x)) !important; padding-right: var(--mh-pad-x); scrollbar-width: none; }
	.mh-carousel::-webkit-scrollbar { display: none; }
	.mh-carousel > * { flex: 0 0 82%; scroll-snap-align: start; }
	.mh-card__body { padding: 1.5rem; }
	.mh-card__body h3 { font-size: 1.375rem; }
	.mh-card__body p { font-size: 0.9375rem; }
	.mh-carousel .mh-card__body p:not(.is-style-mh-eyebrow):not(.mh-link-arrow) { display: none; }
	.mh-swipe-hint { display: block !important; }
}
.mh-swipe-hint { display: none !important; font-size: 0.875rem; color: var(--mh-body); }

/* ---------- Home: trusted advocate ---------- */
.mh-roles { list-style: none; padding: 0; margin: 0; }
.mh-roles li { padding: 0.9rem 0 0.9rem 1.75rem; border-bottom: 1px solid rgba(255,255,255,.14); position: relative; color: #fff; font-weight: 500; }
.mh-roles li::before { content: ""; position: absolute; left: 0; top: 1.35rem; width: 10px; height: 10px; background: var(--mh-sky); }
.mh-endorse-card { background: var(--mh-blue); border-radius: var(--mh-radius); padding: 2.5rem; }
.mh-endorse-card > * + * { margin-block-start: 1rem; }
.mh-endorse-card .mh-quote-text { font-family: var(--wp--preset--font-family--serif); font-style: italic; font-weight: 600; font-size: clamp(1.5rem, 2.4vw, 2rem); line-height: 1.25; color: #fff; }
.mh-endorse-card .mh-quote-mark { font-size: 5rem; }
.mh-endorsers { font-size: 0.9375rem; }

/* ---------- Home: letter ---------- */
.mh-letter__img img { border-radius: var(--mh-radius); width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.mh-letter p.mh-signoff { font-family: var(--wp--preset--font-family--serif); font-style: italic; font-weight: 600; font-size: 1.5rem; color: var(--mh-navy); }
.mh-draft-note { font-size: 0.8125rem; font-weight: 600; color: #7a5a00; background: #fff4cc; display: inline-block; padding: 0.3rem 0.6rem; border-radius: 4px; }

/* ---------- Home: priorities ---------- */
.mh-priority { background: #fff; border-radius: var(--mh-radius); padding: 2rem 1.75rem; display: flex; flex-direction: column; }
.mh-priority > * { margin: 0 !important; }
.mh-priority > * + * { margin-top: 0.75rem !important; }
.mh-priority .mh-num { font-family: var(--wp--preset--font-family--serif); font-weight: 700; font-size: 2.25rem; line-height: 1; color: var(--mh-blue); }
.mh-priority h3 { font-size: 1.5rem; }
.mh-priority p { font-size: 1rem; }
.mh-priority .mh-link-arrow { margin-top: auto !important; padding-top: 1rem; }
.mh-head-row { display: flex !important; justify-content: space-between; align-items: flex-end; gap: 1.5rem; flex-wrap: wrap; }

/* ---------- Home: skyline quote ---------- */
.mh-skyline { min-height: 640px !important; padding: var(--wp--preset--spacing--60) var(--mh-pad-x) !important; align-items: center !important; justify-content: flex-end !important; }
.mh-skyline .wp-block-cover__image-background { object-position: 20% 50%; }
.mh-skyline .wp-block-cover__background { background: linear-gradient(270deg, rgba(0,46,109,.94) 0%, rgba(0,46,109,.72) 45%, rgba(0,46,109,.08) 100%) !important; opacity: 1 !important; }
.mh-skyline .wp-block-cover__inner-container { width: min(780px, 100%) !important; max-width: 780px; margin-left: auto; }
.mh-skyline .wp-block-cover__inner-container > * + * { margin-block-start: 1rem; }
.mh-skyline .mh-quote-text { font-family: var(--wp--preset--font-family--serif); font-style: italic; font-weight: 600; font-size: clamp(1.625rem, 3vw, 2.75rem); line-height: 1.25; color: #fff; }
.mh-skyline .mh-attrib { color: #fff; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; font-size: 1rem; margin-bottom: 0; }
.mh-skyline .mh-attrib + p { color: var(--mh-sky); font-size: 0.9375rem; margin-top: 0.25rem; }
@media (max-width: 781px) {
	.mh-skyline { min-height: 600px !important; align-items: flex-end !important; padding: 2rem var(--mh-pad-x) !important; }
	.mh-skyline .wp-block-cover__image-background { object-position: 12% 50%; }
	.mh-skyline .wp-block-cover__background { background: linear-gradient(0deg, rgba(0,46,109,.95) 0%, rgba(0,46,109,.75) 45%, rgba(0,46,109,.05) 100%) !important; }
	.mh-skyline .mh-quote-mark { font-size: 4.5rem; }
}

/* ---------- Home: vote plan ---------- */
.mh-step { background: #fff; border-radius: var(--mh-radius); padding: 2rem; color: var(--mh-body); }
.mh-step > * + * { margin-block-start: 0.6rem; }
.mh-step h3 { color: var(--mh-navy) !important; font-size: 1.5rem; }
.mh-step .is-style-mh-eyebrow { color: var(--mh-blue) !important; }
.mh-step a { color: var(--mh-blue) !important; font-weight: 700; }

/* ---------- Home: get involved ---------- */
.mh-involve-card { border-radius: var(--mh-radius); padding: clamp(1.75rem, 3vw, 3rem); }
.mh-involve-card > * + * { margin-block-start: 1rem; }
.mh-involve-card.mh-bg-navy h3, .mh-involve-card h3 { font-size: 2.25rem; }
.mh-involve-card--light { background: #fff; }
.mh-amounts { gap: 0.6rem !important; }
.mh-amounts .wp-block-button__link { background: transparent; border: 1.5px solid rgba(255,255,255,.7); color: #fff; padding: 0.8rem 1.1rem; font-size: 1rem; letter-spacing: 0; }
.mh-amounts .wp-block-button__link:hover { background: #fff; color: var(--mh-navy); }
.mh-checklist { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 0.6rem; }
.mh-checklist li { padding: 0.7rem 1rem; border: 1px solid var(--mh-line); border-radius: 8px; font-weight: 600; color: var(--mh-ink); font-size: 0.9375rem; }
.mh-checklist li::before { content: "✓"; color: var(--mh-blue); margin-right: 0.5rem; }

/* ---------- Pull quote ---------- */
.mh-pullquote { border-left: 4px solid var(--mh-blue); padding: 0.25rem 0 0.25rem 1.25rem; margin: 0; }
.mh-pullquote p { font-family: var(--wp--preset--font-family--serif); font-style: italic; font-weight: 600; font-size: 1.375rem; line-height: 1.35; color: var(--mh-navy); margin: 0; }
.mh-pullquote cite { display: block; margin-top: 0.6rem; font-style: normal; font-size: 0.875rem; font-weight: 600; color: var(--mh-body); }

/* ---------- About ---------- */
.mh-glance { background: var(--mh-cream); border-radius: var(--mh-radius); padding: 2.25rem; }
.mh-glance > * + * { margin-block-start: 1.1rem; }
.mh-glance dt, .mh-label { font-size: 0.75rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--mh-blue); margin: 0; }
.mh-glance p:not(.mh-label) { color: var(--mh-ink); font-weight: 500; margin-top: 0.2rem; font-size: 1rem; }
.mh-timeline { display: grid !important; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 1rem; }
.mh-timeline > * { margin: 0 !important; border-top: 3px solid var(--mh-line); padding-top: 1.1rem; }
.mh-timeline > *:last-child { border-top-color: var(--mh-blue); }
.mh-timeline .mh-year { font-family: var(--wp--preset--font-family--serif); font-weight: 700; font-size: 2rem; color: var(--mh-blue); margin: 0; line-height: 1.1; }
.mh-timeline .mh-year + p { font-weight: 600; color: var(--mh-ink); font-size: 1rem; line-height: 1.4; margin-top: 0.4rem; }
@media (max-width: 1000px) { .mh-timeline { grid-template-columns: repeat(4, minmax(0, 1fr)); row-gap: 1.5rem; } }
@media (max-width: 599px) {
	.mh-timeline { grid-template-columns: 1fr; gap: 0; }
	.mh-timeline > * { border-top: 0; border-bottom: 1px solid var(--mh-line); padding: 0.9rem 0; display: flex; gap: 1rem; align-items: baseline; }
	.mh-timeline > *:last-child { border-bottom-color: var(--mh-blue); }
	.mh-timeline .mh-year { font-size: 1.5rem; min-width: 4.25rem; }
	.mh-timeline .mh-year + p { margin: 0; }
}
.mh-role { background: #fff; border-radius: var(--mh-radius); padding: 1.75rem; }
.mh-role > * + * { margin-block-start: 0.5rem; }
.mh-role h3 { font-size: 1.3125rem; line-height: 1.25; }
.mh-promise { max-width: 900px; margin-left: auto !important; margin-right: auto !important; }
.mh-promise .mh-quote-text { font-family: var(--wp--preset--font-family--serif); font-style: italic; font-weight: 600; font-size: clamp(1.625rem, 3vw, 2.5rem); line-height: 1.25; color: var(--mh-navy); }
.mh-rounded img { border-radius: var(--mh-radius); }

/* ---------- Issues ---------- */
.mh-issue-card { background: var(--mh-cream); border-radius: var(--mh-radius); padding: 1.75rem 2rem; text-decoration: none; }
.mh-issue-card > * + * { margin-block-start: 0.5rem; }
.mh-issue-card h3 { font-size: 1.5rem; }
.mh-issue-card h3 a { color: inherit; text-decoration: none; }
.mh-issue-card h3 a:hover { text-decoration: underline; }
.mh-issue-card p { font-size: 1rem; }
.mh-issue-card.mh-feature { background: var(--mh-navy); color: var(--mh-mist); }
.mh-issue-card.mh-feature h3, .mh-issue-card.mh-feature h3 a { color: #fff; }
.mh-issue-card .mh-num { font-family: var(--wp--preset--font-family--serif); font-weight: 700; color: var(--mh-blue); font-size: 1.5rem; margin: 0; }
.mh-issue-card.mh-feature .mh-num { color: var(--mh-sky); }
.mh-issue { padding-top: 5rem; padding-bottom: 5rem; }
.mh-issue-cols { gap: clamp(2rem, 5vw, 5rem) !important; }
.mh-issue-cols h2 { font-size: var(--wp--preset--font-size--h-3); }
.mh-issue-cols .mh-num { font-family: var(--wp--preset--font-family--serif); font-weight: 700; color: var(--mh-blue); font-size: 2.25rem; margin: 0; line-height: 1; }
.mh-issue-cols .mh-summary { font-family: var(--wp--preset--font-family--serif); font-weight: 600; font-size: 1.375rem; line-height: 1.3; color: var(--mh-ink); }
.mh-issue-cols ul { padding-left: 1.2rem; }
.mh-issue-cols li::marker { color: var(--mh-blue); }
.mh-back { font-size: 0.875rem; font-weight: 600; }
@media (max-width: 781px) { .mh-issue { padding-top: 3rem; padding-bottom: 3rem; } }

/* ---------- Questionnaires ---------- */
.mh-highlight { background: #fff; border-radius: var(--mh-radius); padding: 1.5rem; }
.mh-bg-white .mh-highlight, .mh-highlight--cream { background: var(--mh-cream); }
.mh-highlight > * + * { margin-block-start: 0.6rem; }
.mh-highlight .mh-q { font-family: var(--wp--preset--font-family--serif); font-style: italic; font-weight: 600; font-size: 1.1875rem; line-height: 1.35; color: var(--mh-navy); }
.mh-highlight p { font-size: 1rem; }

/* ---------- Endorsements ---------- */
.mh-featured { background: #fff; border-radius: var(--mh-radius); overflow: hidden; gap: 0 !important; margin-block: 0 !important; }
.mh-featured > .wp-block-column { margin: 0 !important; }
.mh-featured__img { margin: 0 !important; height: 100%; }
.mh-featured__img img { width: 100%; height: 100%; min-height: 420px; object-fit: cover; object-position: 40% 30%; display: block; }
.mh-featured__body { padding: clamp(1.5rem, 4vw, 3.5rem); align-self: center; }
.mh-featured__body > * + * { margin-block-start: 1rem; }
.mh-featured__body .mh-quote-text { font-family: var(--wp--preset--font-family--serif); font-style: italic; font-weight: 600; font-size: clamp(1.375rem, 2.2vw, 1.875rem); line-height: 1.28; color: var(--mh-navy); }
@media (max-width: 781px) { .mh-featured__img img { min-height: 0; aspect-ratio: 16 / 10; } }
.mh-endorse-grid .wp-block-post-template { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; }
.mh-endorse-grid .wp-block-post { margin: 0; }
@media (max-width: 1000px) { .mh-endorse-grid .wp-block-post-template { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 599px) { .mh-endorse-grid .wp-block-post-template { grid-template-columns: 1fr; } }

/* ---------- News ---------- */
.mh-chips { display: flex; flex-wrap: wrap; gap: 0.6rem; margin: 0 0 1rem; }
.mh-chip { display: inline-block; padding: 0.55rem 1rem; border: 1px solid var(--mh-line); border-radius: 999px; font-size: 0.875rem; font-weight: 600; color: var(--mh-ink) !important; text-decoration: none; }
.mh-chip:hover { border-color: var(--mh-navy); }
body.blog .mh-chips .mh-chip:first-child, body.category-endorsements .mh-chips .mh-chip:nth-child(2) { background: var(--mh-navy); border-color: var(--mh-navy); color: #fff !important; }
.mh-news-grid { gap: 2.5rem 2rem !important; }
.mh-news-card { background: transparent; }
.mh-news-card > * + * { margin-block-start: 0.6rem; }
.mh-news-card__img { margin: 0 !important; }
.mh-news-card__img img { border-radius: 10px; object-fit: cover; background: var(--mh-mist); }
.mh-news-card__meta { font-size: 0.75rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: var(--mh-blue); margin-top: 0.9rem !important; }
.mh-news-card__title { font-size: 1.3125rem !important; line-height: 1.25; }
.mh-news-card__title a { color: var(--mh-navy); text-decoration: none; }
.mh-news-card__title a:hover { text-decoration: underline; }
@media (max-width: 1000px) { .mh-news-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }
@media (max-width: 599px) { .mh-news-grid { grid-template-columns: 1fr !important; } }
.mh-pagination { margin-top: 3rem !important; gap: 0.5rem; font-weight: 600; }
.mh-pagination .page-numbers, .mh-pagination a { padding: 0.5rem 0.85rem; border-radius: 6px; text-decoration: none; }
.mh-pagination .page-numbers.current { background: var(--mh-navy); color: #fff; }
.mh-press { background: var(--mh-cream); padding-top: 2.25rem; padding-bottom: 2.25rem; }
.mh-press p { margin: 0; }

/* ---------- Article ---------- */
.mh-article__head { padding-top: clamp(2rem, 5vw, 4rem); padding-bottom: 1.5rem; }
.mh-article__head > * { max-width: 1000px; margin-left: 0 !important; }
.mh-article__head > * + * { margin-block-start: 0.9rem; }
.mh-article__meta { font-size: 0.8125rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: var(--mh-body); }
.mh-article__title { font-size: var(--wp--preset--font-size--h-2) !important; line-height: 1.12; }
.mh-article__body { padding-bottom: 4rem; }
.mh-article__body .wp-block-post-content > * + * { margin-block-start: 1.25rem; }
.mh-article__body .wp-block-post-content { font-size: 1.125rem; line-height: 1.65; color: var(--mh-ink); }
.mh-article__body .wp-block-post-content img { border-radius: 10px; }
.mh-article__body .wp-block-post-content :where(.wp-block-image) { margin-block: 2rem; }
.mh-share { margin-top: 3rem !important; border-top: 1px solid var(--mh-line); padding-top: 1.5rem; font-weight: 600; }

/* ---------- Legal / text pages ---------- */
.mh-legal .wp-block-post-content { font-size: 1.0625rem; line-height: 1.7; }
.mh-legal .wp-block-post-content > * + * { margin-block-start: 1.1rem; }
.mh-legal h2, .mh-legal h3 { margin-top: 2.25rem !important; font-size: 1.625rem; }
.mh-legal #breadcrumbs, .mh-legal .yoast-breadcrumbs { display: none; }

/* ---------- Contact ---------- */
.mh-contact-card { background: #fff; border-radius: var(--mh-radius); padding: clamp(1.75rem, 3vw, 2.75rem); }
.mh-contact-card > * + * { margin-block-start: 1rem; }
.mh-details { background: var(--mh-navy); border-radius: var(--mh-radius); padding: 2rem; color: #fff; }
.mh-details > * + * { margin-block-start: 1.25rem; }
.mh-details .mh-label { color: var(--mh-sky); }
.mh-details p:not(.mh-label) { color: #fff; font-weight: 600; font-size: 1.125rem; margin-top: 0.25rem; line-height: 1.4; }
.mh-details a { color: #fff; }

/* ---------- Misc ---------- */
.mh-note { font-size: 0.875rem; color: var(--mh-body); }
.wp-block-columns.mh-cols-gap { gap: clamp(2rem, 5vw, 5rem); }
@media (max-width: 781px) { .mh-hide-on-mobile { display: none !important; } }
@media (min-width: 782px) { .mh-show-on-mobile { display: none !important; } }

/* Footer navigation on dark background */
.mh-footer .mh-footer__links .wp-block-navigation-item__content { color: var(--mh-mist) !important; }
.mh-footer .mh-footer__links .wp-block-navigation-item__content:hover { color: #fff !important; }

.mh-section-head { margin-left: 0 !important; }
.mh-hero__text a:not(.wp-element-button), .mh-skyline a { color: #fff; }
.mh-hero__endorse a { text-decoration: none; }
.mh-hero__endorse a:hover { text-decoration: underline; }
@media (max-width: 599px) { .mh-checklist { grid-template-columns: 1fr; } }

/* Specificity fixes (beat core layout rules) */
body .wp-block-post-content > .mh-hero, body .wp-block-post-content > .mh-photo-header { margin-top: 0 !important; margin-bottom: 0 !important; margin-left: calc(var(--wp--style--root--padding-left) * -1) !important; margin-right: calc(var(--wp--style--root--padding-right) * -1) !important; }
body .mh-section .mh-section-head, body .mh-page-header > * { margin-left: 0 !important; }
body .mh-sticky-cta { display: none !important; }
@media (max-width: 781px) { body .mh-sticky-cta { display: flex !important; } }

.mh-bg-white{background:#fff;}
.mh-endorse-grid .mh-endorse-img{margin:0 !important;}
.mh-endorse-grid .mh-endorse-img img{object-position:50% 18%;background:#fff;}
.mh-endorse-grid .mh-card__body{padding:1.5rem 1.75rem 1.75rem;}
.mh-issue-card .mh-link-arrow a{font-size:.9375rem;}
.mh-issue-card.mh-feature .mh-link-arrow a{color:var(--wp--preset--color--sky);}
.mh-bg-navy .wp-block-columns, .mh-bg-blue .wp-block-columns{align-items:center;}


body .mh-issue-cols h2{font-size:var(--wp--preset--font-size--h-3);}
body .mh-photo-header{color:var(--wp--preset--color--mist);}
body .mh-photo-header :is(h1,h2){color:#fff;}
body .mh-photo-header .is-style-mh-eyebrow{color:var(--wp--preset--color--sky);}
body .mh-photo-header .mh-lead{color:var(--wp--preset--color--mist);}
body .mh-endorse-grid .mh-endorse-img img{aspect-ratio:1/1 !important;object-position:50% 25%;}

@media (max-width:599px){body .mh-checklist{grid-template-columns:1fr;}}
body .mh-news-card__img img{object-position:50% 22%;}
body .mh-photo-header__img img{object-position:50% 30%;}
@media (max-width:781px){body .mh-photo-header__img img{object-position:50% 25%;aspect-ratio:1/1;}}

/* Topic chips */
.mh-chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:4px;}
.mh-chips::-webkit-scrollbar{display:none;}
.mh-chip{white-space:nowrap;flex:0 0 auto;}
@media (min-width:1000px){.mh-chips{flex-wrap:wrap;overflow:visible;}}
body.category-standing-up-for-asheville .mh-chips .mh-chip[href="/category/standing-up-for-asheville/"],body.category-housing .mh-chips .mh-chip[href="/category/housing/"],body.category-public-safety .mh-chips .mh-chip[href="/category/public-safety/"],body.category-homelessness .mh-chips .mh-chip[href="/category/homelessness/"],body.category-recovery .mh-chips .mh-chip[href="/category/recovery/"],body.category-economy-jobs .mh-chips .mh-chip[href="/category/economy-jobs/"],body.category-environment .mh-chips .mh-chip[href="/category/environment/"],body.category-transportation .mh-chips .mh-chip[href="/category/transportation/"],body.category-arts-community .mh-chips .mh-chip[href="/category/arts-community/"],body.category-questionnaires .mh-chips .mh-chip[href="/category/questionnaires/"],body.category-endorsements .mh-chips .mh-chip[href="/category/endorsements/"],body.blog .mh-chips .mh-chip:first-child{background:var(--wp--preset--color--navy);border-color:var(--wp--preset--color--navy);color:#fff !important;}

/* Current page state in main nav */
body.page-id-17 .mh-menu a[href="/about/"],
body.page-id-19 .mh-menu a[href="/issues/"],
body.parent-pageid-19 .mh-menu a[href="/issues/"],
body.page-id-897 .mh-menu a[href="/endorsements/"],
body.blog .mh-menu a[href="/news/"],
body.archive .mh-menu a[href="/news/"],
body.single-post .mh-menu a[href="/news/"],
body.page-id-23 .mh-menu a[href="/contact/"] { color: var(--wp--preset--color--blue) !important; text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 0.4em; }

.mh-menu a.is-current { color: var(--wp--preset--color--blue) !important; text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 0.4em; }

/* Current page state in footer nav */
body.page-id-17 .mh-footer .mh-footer__links a[href="/about/"],
body.page-id-19 .mh-footer .mh-footer__links a[href="/issues/"],
body.parent-pageid-19 .mh-footer .mh-footer__links a[href="/issues/"],
body.page-id-897 .mh-footer .mh-footer__links a[href="/endorsements/"],
body.blog .mh-footer .mh-footer__links a[href="/news/"],
body.archive .mh-footer .mh-footer__links a[href="/news/"],
body.single-post .mh-footer .mh-footer__links a[href="/news/"],
body.page-id-23 .mh-footer .mh-footer__links a[href="/contact/"],
.mh-footer .mh-footer__links a.is-current { color: #fff !important; font-weight: 700; text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 0.35em; }

/* Fade-up reveal (enabled by script in header part) */
.mh-anim main :is(h1,h2,h3,h4,p,li,blockquote,figcaption,.wp-block-buttons):not(.wp-block-quote *):not(li *):not(.wp-block-buttons *) { opacity: 0; transform: translateY(15px); transition: opacity .7s ease-out, transform .7s ease-out; }
.mh-anim main .is-in, .mh-anim.mh-anim-done main * { opacity: 1 !important; transform: none !important; }

/* Collapsing header on scroll: utility bar folds away, logo swaps to one-line logotype. Buttons unchanged. */
.mh-utility { max-height: 80px; overflow: hidden; transition: max-height .3s ease, padding .3s ease; }
.mh-nav { transition: padding .3s ease, box-shadow .3s ease; }
html.mh-scrolled .mh-site-header .mh-utility { max-height: 0; padding-top: 0; padding-bottom: 0; }
html.mh-scrolled .mh-site-header .mh-nav { padding-top: .6rem; padding-bottom: .6rem; box-shadow: 0 2px 14px rgba(0,31,74,.10); }
html.mh-scrolled .mh-site-header .mh-logo a { display: block; width: 223px; height: 25px; background: url("../images/logotype.svg") left center / contain no-repeat; }
html.mh-scrolled .mh-site-header .mh-logo img { display: none; }
@media (max-width: 599px) { html.mh-scrolled .mh-site-header .mh-logo a { width: 150px; height: 17px; } }

@media (max-width: 599px) { html.mh-scrolled .mh-site-header .mh-logo a { width: 125px; height: 14px; } html.mh-scrolled .mh-site-header .mh-nav__inner { gap: 1rem; } .mh-nav__ctas .wp-block-button__link { white-space: nowrap; } }

/* Align intro text with the 1200px content column on wide screens */
body .mh-section .mh-section-head, body .mh-page-header > *, body .mh-article__head > * { margin-left: max(0px, calc((100% - 1200px) / 2)) !important; margin-right: auto !important; }
body .mh-head-row .mh-section-head { margin-left: 0 !important; }

body .mh-featured__img img { object-position: 85% 25%; }

/* Keep column rows centered in the 1200px content column on wide screens */
body .mh-section > .wp-block-columns { margin-left: auto !important; margin-right: auto !important; }

/* Homepage endorser list inside the blue card */
body .mh-endorse-card .mh-endorsers { margin-bottom: 0.25rem; font-weight: 600; color: #fff; }
body .mh-endorse-list { list-style: none; padding: 0; margin: 0 0 0.5rem !important; }
body .mh-endorse-list li { position: relative; padding: 0.3rem 0 0.3rem 1.1rem; color: var(--wp--preset--color--mist); font-size: 0.9375rem; line-height: 1.4; }
body .mh-endorse-list li::before { content: ""; position: absolute; left: 0; top: 0.8rem; width: 6px; height: 6px; background: var(--wp--preset--color--sky); }
/* Endorsement grid photos: 16:9 so group photos fit */
body .mh-endorse-grid .mh-endorse-img img { aspect-ratio: 16/9 !important; object-position: 50% 30%; }

body .mh-endorse-grid .mh-endorse-img { aspect-ratio: auto !important; height: auto !important; }

/* Label/value spacing in "At a glance" and contact details cards */
body :is(.mh-glance, .mh-details) > .mh-label { margin: 1.5rem 0 0 !important; }
body :is(.mh-glance, .mh-details) > .mh-label:first-child, body .mh-glance > h3 + .mh-label { margin-top: 1.25rem !important; }
body .mh-details > .mh-label:first-child { margin-top: 0 !important; }
body :is(.mh-glance, .mh-details) > .mh-label + p { margin-top: 0.4rem !important; }

/* More news: show 3 (script removes the current post if it is among the 4 fetched) */
body .mh-more-news .wp-block-post:nth-child(n+4) { display: none; }

/* Oversized faint name watermark behind a section (Woodfin-style) */
body section#record { position: relative; overflow: hidden; isolation: isolate; }
body section#record::before { content: "ESTHER"; position: absolute; left: 50%; bottom: -0.16em; transform: translateX(-50%); z-index: -1; font-family: var(--wp--preset--font-family--serif); font-weight: 800; font-size: clamp(9rem, 27vw, 30rem); line-height: 1; letter-spacing: -0.02em; color: var(--wp--preset--color--navy); opacity: 0.045; white-space: nowrap; pointer-events: none; user-select: none; }

body section#record { padding-bottom: clamp(5rem, 13vw, 13rem) !important; }
body section#record::before { bottom: -0.02em; opacity: 0.055; line-height: 0.8; }

body section#record::before { font-size: clamp(5.25rem, 22.5vw, 26rem); }

/* Watermark: brand-font SVG (5% navy) replaces the typeset version */
body section#record::before { content: ""; font-size: 0; left: 50%; bottom: 0; width: min(90vw, 1500px); aspect-ratio: 398.9 / 87.7; opacity: 1; background: url("../images/watermark.svg") center bottom / contain no-repeat; }

body section#record { padding-bottom: clamp(3rem, 6vw, 6rem) !important; }

/* Subtle card lift, only on the Her record cards that sit over the watermark */
body section#record .mh-card { box-shadow: 0 1px 2px rgba(0, 31, 74, 0.04), 0 10px 28px -6px rgba(0, 31, 74, 0.09); }

body .mh-hero__text .mh-hero__endorse + .mh-hero__endorse { margin-top: 0.4rem !important; }
