/**
 * Most Trusted Directory — front-end styles.
 *
 * All selectors are scoped under .mt- classes so the plugin's output looks
 * the same wherever a shortcode is placed, and so it neither overrides nor
 * is overridden by the host theme.
 *
 * Sections: 1 Tokens · 2 Base · 3 Buttons/tags/icons · 4 Logo & seal
 *           5 Cards · 6 Grid & list · 7 Pagination · 8 Search
 *           9 Category page · 10 Profile page · 11 Focus list · 12 Misc
 *           13 Responsive
 */

/* ── 1. Design tokens ─────────────────────────────────────────────────── */
:root {
	--mt-navy:        #0e2748;
	--mt-navy-deep:   #0a1f3d;
	--mt-gold:        #c9a14a;
	--mt-gold-deep:   #b88d33;
	--mt-cream:       #faf7f1;
	--mt-green:       #3a9b6e;
	--mt-ink:         #1f2937;
	--mt-gray-700:    #374151;
	--mt-gray:        #6b7280;
	--mt-gray-light:  #9ca3af;
	--mt-line:        #e5e7eb;
	--mt-white:       #ffffff;

	--mt-serif: "Playfair Display", Georgia, "Times New Roman", serif;
	--mt-sans:  "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;

	--mt-radius:   8px;
	--mt-radius-lg: 14px;
	--mt-shadow:    0 1px 2px rgba(14, 39, 72, .06);
	--mt-shadow-lg: 0 12px 28px rgba(14, 39, 72, .14);
}

/* ── 2. Base ──────────────────────────────────────────────────────────── */
.mt-page,
.mt-list,
.mt-search,
.mt-search-results,
.mt-focus-list,
.mt-count {
	font-family: var(--mt-sans);
	color: var(--mt-ink);
	line-height: 1.6;
}

.mt-page *,
.mt-list *,
.mt-search *,
.mt-search-results *,
.mt-focus-list * {
	box-sizing: border-box;
}

.mt-container {
	max-width: 1180px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 24px;
	padding-right: 24px;
}

.mt-page {
	padding-bottom: 64px;
}

.mt-eyebrow {
	font-size: .8rem;
	font-weight: 600;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--mt-gold-deep);
	margin: 0 0 8px;
}

.mt-screen-reader {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

/* ── 3. Buttons, tags, icons ──────────────────────────────────────────── */
.mt-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 11px 22px;
	font-family: var(--mt-sans);
	font-size: .95rem;
	font-weight: 600;
	line-height: 1;
	color: var(--mt-navy-deep);
	background: var(--mt-gold);
	border: 1px solid var(--mt-gold);
	border-radius: 999px;
	text-decoration: none;
	cursor: pointer;
	transition: background .15s ease, transform .15s ease, box-shadow .15s ease;
}

.mt-btn:hover,
.mt-btn:focus {
	background: var(--mt-gold-deep);
	border-color: var(--mt-gold-deep);
	color: var(--mt-navy-deep);
	transform: translateY(-1px);
}

.mt-btn--ghost {
	background: transparent;
	color: var(--mt-navy);
	border-color: var(--mt-line);
	padding: 9px 16px;
	font-size: .88rem;
}

.mt-btn--ghost:hover,
.mt-btn--ghost:focus {
	background: var(--mt-navy);
	border-color: var(--mt-navy);
	color: var(--mt-white);
}

.mt-tag {
	display: inline-block;
	padding: 4px 11px;
	font-size: .76rem;
	font-weight: 600;
	letter-spacing: .01em;
	color: var(--mt-gold-deep);
	background: rgba(201, 161, 74, .12);
	border: 1px solid rgba(201, 161, 74, .35);
	border-radius: 999px;
	text-decoration: none;
	transition: background .15s ease, color .15s ease;
}

a.mt-tag:hover,
a.mt-tag:focus {
	background: var(--mt-gold);
	color: var(--mt-navy-deep);
}

.mt-tag--featured {
	color: var(--mt-navy);
	background: rgba(14, 39, 72, .08);
	border-color: rgba(14, 39, 72, .25);
}

.mt-icon {
	width: 1em;
	height: 1em;
	flex: none;
	vertical-align: -.125em;
}

/* ── 4. Logo & tier seal ──────────────────────────────────────────────── */
.mt-logo {
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: var(--mt-cream);
	border: 1px solid var(--mt-line);
	overflow: hidden;
}

.mt-logo--card {
	width: 76px;
	height: 76px;
	flex: none;
	text-decoration: none;
}

.mt-logo--profile {
	width: 132px;
	height: 132px;
	border: 4px solid var(--mt-white);
	box-shadow: var(--mt-shadow-lg);
}

.mt-logo__img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	padding: 8px;
}

.mt-logo__initials {
	font-family: var(--mt-serif);
	font-weight: 600;
	color: var(--mt-navy);
}

.mt-logo--card .mt-logo__initials { font-size: 1.6rem; }
.mt-logo--profile .mt-logo__initials { font-size: 3rem; }

.mt-seal {
	display: block;
	object-fit: contain;
}

.mt-seal--card {
	width: 52px;
	height: 52px;
	flex: none;
}

/* ── 5. Cards ─────────────────────────────────────────────────────────── */
.mt-card {
	display: flex;
	gap: 20px;
	background: var(--mt-white);
	border: 1px solid var(--mt-line);
	border-top: 3px solid var(--mt-gray-light);
	border-radius: var(--mt-radius);
	padding: 22px;
	box-shadow: var(--mt-shadow);
	transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}

.mt-card:hover {
	border-color: var(--mt-gold);
	box-shadow: var(--mt-shadow-lg);
	transform: translateY(-3px);
}

.mt-card--tier-3 { border-top-color: var(--mt-gold); }
.mt-card--tier-2 { border-top-color: var(--mt-navy); }
.mt-card--tier-1 { border-top-color: var(--mt-green); }

.mt-card__body {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	min-width: 0;
}

.mt-card__heading {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 14px;
}

.mt-card__name {
	margin: 0;
	font-family: var(--mt-serif);
	font-size: 1.22rem;
	font-weight: 600;
	line-height: 1.3;
	color: var(--mt-navy);
}

.mt-card__name a {
	color: inherit;
	text-decoration: none;
}

.mt-card__name a:hover,
.mt-card__name a:focus {
	color: var(--mt-gold-deep);
}

.mt-card__tags {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 10px;
}

.mt-card__desc {
	margin: 12px 0 0;
	font-size: .92rem;
	color: var(--mt-gray);
}

.mt-card__footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	margin-top: auto;
	padding-top: 16px;
}

.mt-card__location {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	font-size: .82rem;
	color: var(--mt-gray-light);
}

.mt-card__location .mt-icon { color: var(--mt-gold-deep); }

.mt-card__cta { flex: none; }

/* Rows-layout aside: a large tier badge, award level, and "View Profile" CTA
   on the right of the card. Hidden by default; the grid layout keeps the
   heading seal and its own footer CTA. */
.mt-card__aside {
	display: none;
}

.mt-grid--rows .mt-card__heading .mt-seal--card,
.mt-grid--rows .mt-card__footer .mt-card__cta {
	display: none;
}

.mt-grid--rows .mt-card__aside {
	display: flex;
	flex: none;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: 160px;
	padding-left: 22px;
	border-left: 1px solid var(--mt-line);
}

.mt-seal--badge {
	width: 96px;
	height: 96px;
}

.mt-card__award {
	font-family: var(--mt-serif);
	font-size: .92rem;
	font-weight: 600;
	line-height: 1.25;
	text-align: center;
	color: var(--mt-navy);
}

.mt-grid--rows .mt-card__aside .mt-card__cta {
	width: 100%;
	margin-top: 4px;
	justify-content: center;
	white-space: nowrap;
}

/* ── 6. Grid & list ───────────────────────────────────────────────────── */
.mt-grid--rows {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.mt-grid--grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 22px;
}

/* Grid layout: stack the card vertically. */
.mt-grid--grid .mt-card {
	flex-direction: column;
	gap: 14px;
}

.mt-grid--grid .mt-card__media {
	display: flex;
	justify-content: center;
}

.mt-grid--grid .mt-card__heading {
	flex-direction: column-reverse;
	align-items: center;
	text-align: center;
	gap: 10px;
}

.mt-grid--grid .mt-card__name { font-size: 1.12rem; }
.mt-grid--grid .mt-card__tags { justify-content: center; }
.mt-grid--grid .mt-card__desc { text-align: center; }

.mt-grid--grid .mt-card__footer {
	flex-direction: column;
	align-items: stretch;
	gap: 10px;
}

.mt-grid--grid .mt-card__cta { justify-content: center; }
.mt-grid--grid .mt-card__location { justify-content: center; }

.mt-list__more {
	display: flex;
	justify-content: center;
	margin-top: 28px;
}

.mt-load-more.is-loading {
	opacity: .7;
	cursor: progress;
}

/* ── 7. Pagination ────────────────────────────────────────────────────── */
.mt-pagination {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 6px;
	margin-top: 32px;
}

.mt-pagenum {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 40px;
	height: 40px;
	padding: 0 12px;
	font-size: .9rem;
	font-weight: 600;
	color: var(--mt-navy);
	background: var(--mt-white);
	border: 1px solid var(--mt-line);
	border-radius: var(--mt-radius);
	text-decoration: none;
	transition: background .15s ease, border-color .15s ease, color .15s ease;
}

a.mt-pagenum:hover,
a.mt-pagenum:focus {
	border-color: var(--mt-gold);
	color: var(--mt-gold-deep);
}

.mt-pagenum--current {
	background: var(--mt-navy);
	border-color: var(--mt-navy);
	color: var(--mt-white);
}

/* Ellipsis gap between non-adjacent page numbers ( "1 ... 5 6 7 ... 23" ). */
.mt-pagenum--gap {
	background: transparent;
	border-color: transparent;
	color: var(--mt-gray-light);
	cursor: default;
}

/* "N nonprofits" footer below a listing. */
.mt-list__count {
	margin: 16px 0 0;
	text-align: right;
	font-size: .9rem;
	color: var(--mt-gray);
}

/* ── 8. Search ────────────────────────────────────────────────────────── */
.mt-search {
	display: flex;
	align-items: center;
	gap: 8px;
	max-width: 640px;
	padding: 8px 8px 8px 18px;
	background: var(--mt-white);
	border: 1px solid var(--mt-line);
	border-radius: 999px;
	box-shadow: var(--mt-shadow-lg);
}

.mt-search__icon {
	display: flex;
	font-size: 1.15rem;
	color: var(--mt-gold-deep);
}

.mt-search__input {
	flex: 1 1 auto;
	min-width: 0;
	font-family: var(--mt-sans);
	font-size: 1rem;
	color: var(--mt-ink);
	/* !important so a host theme's input rules can't put a border or box
	   back around the field inside the search pill. */
	border: 0 !important;
	outline: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	padding: 8px 0 !important;
}

.mt-search__input::placeholder { color: var(--mt-gray-light); }

/* The button carries .mt-btn, but a host theme's <button> rules can override
   it. Re-assert the rounded gold pill so the button matches the shape of the
   search pill it sits in. */
.mt-search__submit {
	flex: none;
	border-radius: 999px !important;
	background: var(--mt-gold) !important;
	border: 1px solid var(--mt-gold) !important;
	color: var(--mt-navy-deep) !important;
}

.mt-search__submit:hover,
.mt-search__submit:focus {
	background: var(--mt-gold-deep) !important;
	border-color: var(--mt-gold-deep) !important;
	color: var(--mt-navy-deep) !important;
}

/* ── 9. Category landing page ─────────────────────────────────────────── */
.mt-category__hero {
	background: var(--mt-cream);
	border-bottom: 1px solid var(--mt-line);
	padding: 56px 0;
	margin-bottom: 40px;
}

.mt-category__title {
	margin: 0;
	font-family: var(--mt-serif);
	font-size: clamp(2rem, 4vw, 2.9rem);
	font-weight: 700;
	color: var(--mt-navy);
}

.mt-category__intro {
	margin: 14px 0 0;
	max-width: 720px;
	font-size: 1.05rem;
	color: var(--mt-gray);
}

.mt-category__hero-search {
	margin-top: 24px;
}

/* ── 10. Profile page ─────────────────────────────────────────────────── */
.mt-page--profile { padding: 40px 0 72px; }

/* Header box: sits inside the main column, parallel with the sidebar. */
.mt-profile__hero {
	background: var(--mt-cream);
	border: 1px solid var(--mt-line);
	border-radius: var(--mt-radius);
	padding: 32px;
	margin-bottom: 36px;
}

.mt-profile__hero-inner {
	display: flex;
	align-items: flex-start;  /* logo's top aligns with the tier status above the name */
	gap: 36px;
}

.mt-profile__logo { flex: none; }

.mt-profile__logo .mt-logo { background: var(--mt-white); }

.mt-profile__intro { min-width: 0; }

.mt-profile__tier {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 12px;
}

.mt-profile__tier-label {
	font-size: .82rem;
	font-weight: 700;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--mt-gold-deep);
}

.mt-profile__name {
	margin: 0;
	font-family: var(--mt-serif);
	font-size: clamp(2.1rem, 4.4vw, 3.2rem);
	font-weight: 700;
	line-height: 1.15;
	color: var(--mt-navy);
}

.mt-profile__location {
	display: flex;
	align-items: center;
	gap: 6px;
	margin: 12px 0 0;
	font-size: .95rem;
	color: var(--mt-gray);
}

.mt-profile__location .mt-icon { color: var(--mt-gold-deep); }

.mt-profile__focuses {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 18px;
}

.mt-profile__website { margin-top: 22px; }

/* Hero-meta sits below the logo+title row at the hero's left edge so the
   focus tags and Visit Website button line up with the logo. */
.mt-profile__hero-meta {
	margin-top: 22px;
}

.mt-profile__hero-meta > .mt-profile__location { margin: 0; }
.mt-profile__hero-meta > .mt-profile__location + .mt-profile__focuses { margin-top: 14px; }
.mt-profile__hero-meta > .mt-profile__focuses:first-child { margin-top: 0; }

.mt-profile__layout {
	display: grid;
	grid-template-columns: 1fr 320px;
	gap: 40px;
	align-items: start;
}

.mt-profile__section { margin-bottom: 36px; }

.mt-profile__h2,
.mt-facts__h2 {
	font-family: var(--mt-serif);
	font-size: 1.5rem;
	font-weight: 600;
	color: var(--mt-navy);
	margin: 0 0 16px;
	padding-bottom: 10px;
	border-bottom: 2px solid var(--mt-line);
}

.mt-profile__prose {
	font-size: 1rem;
	color: var(--mt-ink);
}

.mt-profile__prose p { margin: 0 0 1em; }
.mt-profile__prose p:last-child { margin-bottom: 0; }

/* "What [Tier] Means" body — two paragraphs, identical styling per tier. */
.mt-tier-meaning {
	font-size: 1rem;
	line-height: 1.7;
	color: var(--mt-gray-700);
}

.mt-tier-meaning p { margin: 0 0 1em; }
.mt-tier-meaning p:last-child { margin-bottom: 0; }

/* Sidebar */
.mt-profile__sidebar {
	display: flex;
	flex-direction: column;
	gap: 22px;
}

.mt-facts,
.mt-focus-links,
.mt-award {
	display: block;
	padding: 24px;
}

.mt-facts:hover,
.mt-focus-links:hover,
.mt-award:hover {
	border-color: var(--mt-line);
	box-shadow: var(--mt-shadow);
	transform: none;
}

/* Award Level box — the tier badge in its own sidebar card. */
.mt-award__seal {
	display: block;
	width: 132px;
	height: 132px;
	margin: 0 auto;
}

.mt-award__label {
	display: block;
	margin-top: 10px;
	text-align: center;
	font-family: var(--mt-serif);
	font-size: 1.1rem;
	font-weight: 600;
	color: var(--mt-navy);
}

.mt-facts__h2 {
	font-size: 1.2rem;
	margin-bottom: 12px;
}

.mt-facts__list { margin: 0; }

.mt-facts__row {
	display: flex;
	justify-content: space-between;
	gap: 16px;
	padding: 9px 0;
	border-bottom: 1px solid var(--mt-line);
}

.mt-facts__row:last-child { border-bottom: 0; }

.mt-facts__row dt {
	color: var(--mt-gray);
	font-size: .9rem;
}

.mt-facts__row dd {
	margin: 0;
	font-weight: 600;
	color: var(--mt-navy);
	text-align: right;
	overflow-wrap: anywhere;
}

.mt-facts__row dd a { color: var(--mt-gold-deep); text-decoration: none; }
.mt-facts__row dd a:hover { text-decoration: underline; }

.mt-focus-links__list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.mt-focus-links__list li {
	padding: 10px 0;
	border-bottom: 1px solid var(--mt-line);
	color: var(--mt-navy);
	font-size: .94rem;
	font-weight: 500;
}

.mt-focus-links__list li:last-child { border-bottom: 0; }

/* What We've Verified — 15-criteria standards section (full-width band) */
.mt-criteria {
	background: var(--mt-cream);
	padding: 64px 0;
}

.mt-criteria__head {
	max-width: 640px;
	margin: 0 auto 36px;
	text-align: center;
}

.mt-criteria__title {
	margin: 0;
	font-family: var(--mt-serif);
	font-size: clamp(1.8rem, 3vw, 2.4rem);
	font-weight: 700;
	color: var(--mt-navy);
}

.mt-criteria__sub {
	margin: 10px 0 0;
	font-size: 1.02rem;
	color: var(--mt-gray);
}

.mt-criteria__grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 24px;
	align-items: start;
}

.mt-pillar {
	background: var(--mt-white);
	border: 1px solid var(--mt-line);
	border-radius: var(--mt-radius);
	padding: 28px 30px;
	box-shadow: var(--mt-shadow);
	transition: box-shadow .15s ease;
}

.mt-pillar:hover { box-shadow: var(--mt-shadow-lg); }

.mt-pillar__title {
	margin: 0;
	padding-bottom: 14px;
	border-bottom: 2px solid var(--mt-line);
	font-family: var(--mt-serif);
	font-size: 1.3rem;
	font-weight: 600;
	color: var(--mt-navy);
}

.mt-pillar__list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.mt-criterion {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	padding: 16px 0;
	border-bottom: 1px solid var(--mt-line);
}

.mt-criterion:last-child {
	padding-bottom: 0;
	border-bottom: 0;
}

.mt-criterion--off { opacity: .5; }

.mt-criterion__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	flex: none;
	margin-top: 1px;
	border-radius: 50%;
	font-size: .8rem;
}

.mt-criterion--on .mt-criterion__icon {
	color: var(--mt-white);
	background: var(--mt-navy);
}

.mt-criterion--off .mt-criterion__icon {
	border: 2px dashed var(--mt-gray-light);
}

.mt-criterion__text { min-width: 0; }

.mt-criterion__name {
	display: block;
	font-weight: 600;
	line-height: 1.35;
	color: var(--mt-navy);
}

.mt-criterion__desc {
	display: block;
	margin-top: 3px;
	font-size: .86rem;
	line-height: 1.5;
	color: var(--mt-gray);
}

.mt-criteria__note {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin: 28px 0 0;
	padding: 18px 22px;
	background: var(--mt-white);
	border: 1px solid var(--mt-line);
	border-left: 3px solid var(--mt-gold);
	border-radius: var(--mt-radius);
	font-size: .95rem;
	color: var(--mt-ink);
}

.mt-criteria__note .mt-icon {
	flex: none;
	margin-top: 2px;
	font-size: 1.1rem;
	color: var(--mt-gold);
}

/* ── 11. Focus list shortcode ─────────────────────────────────────────── */
.mt-focus-list {
	column-count: var(--mt-focus-cols, 3);
	column-gap: 32px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.mt-focus-list__item {
	break-inside: avoid;
	padding: 7px 0;
}

.mt-focus-list__item a {
	color: var(--mt-navy);
	text-decoration: none;
	font-weight: 500;
	border-bottom: 1px solid transparent;
}

.mt-focus-list__item a:hover,
.mt-focus-list__item a:focus {
	color: var(--mt-gold-deep);
	border-bottom-color: var(--mt-gold);
}

/* ── 12. Search results, notices, messages, count ─────────────────────── */
.mt-search-results { padding: 40px 0; }

.mt-results__heading {
	font-family: var(--mt-serif);
	font-size: clamp(1.7rem, 3.4vw, 2.4rem);
	font-weight: 700;
	color: var(--mt-navy);
	margin: 0 0 26px;
}

.mt-notice {
	padding: 28px;
	background: var(--mt-cream);
	border: 1px dashed var(--mt-line);
	border-radius: var(--mt-radius);
	text-align: center;
	color: var(--mt-gray);
	font-size: .98rem;
}

.mt-notice--error {
	background: rgba(184, 141, 51, .07);
	border-color: rgba(184, 141, 51, .4);
	color: var(--mt-gold-deep);
}

.mt-notice a { color: var(--mt-gold-deep); font-weight: 600; }

.mt-page--message { padding: 80px 0; }

.mt-message {
	max-width: 540px;
	margin: 0 auto;
	text-align: center;
}

.mt-message__heading {
	font-family: var(--mt-serif);
	font-size: 2.2rem;
	font-weight: 700;
	color: var(--mt-navy);
	margin: 0 0 12px;
}

.mt-message__text {
	font-size: 1.05rem;
	color: var(--mt-gray);
	margin: 0 0 24px;
}

.mt-count { font-weight: 700; }

/* ── 13. Responsive ───────────────────────────────────────────────────── */
@media (max-width: 1024px) {
	.mt-profile__layout {
		grid-template-columns: 1fr;
	}
	.mt-grid--grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 768px) {
	.mt-container { padding-left: 18px; padding-right: 18px; }

	.mt-grid--grid {
		grid-template-columns: 1fr;
	}

	/* Rows layout: stack logo above the body on small screens. */
	.mt-card {
		flex-direction: column;
		gap: 14px;
	}

	.mt-card__heading {
		flex-direction: row;
	}

	.mt-card__footer {
		flex-direction: column;
		align-items: stretch;
		gap: 12px;
	}

	.mt-card__cta { justify-content: center; }

	/* Rows-layout aside drops below the body, divider moves to the top. */
	.mt-grid--rows .mt-card__aside {
		width: auto;
		padding-left: 0;
		padding-top: 16px;
		border-left: 0;
		border-top: 1px solid var(--mt-line);
	}

	.mt-profile__hero-inner {
		flex-direction: column;
		align-items: center;  /* override the desktop flex-start on small screens */
		text-align: center;
		gap: 22px;
	}

	.mt-profile__tier,
	.mt-profile__location,
	.mt-profile__focuses {
		justify-content: center;
	}

	.mt-profile__hero-meta { text-align: center; }

	.mt-category__hero { padding: 40px 0; }
	.mt-profile__hero { padding: 24px; }

	.mt-criteria { padding: 44px 0; }
	.mt-criteria__grid { grid-template-columns: 1fr; }
	.mt-pillar { padding: 24px; }

	.mt-focus-list { column-count: 1; }

	.mt-search {
		flex-wrap: wrap;
		border-radius: var(--mt-radius-lg);
	}

	.mt-search__submit {
		flex: 1 1 100%;
		justify-content: center;
	}
}

/* ── 14. Filter sidebar & two-column layout ───────────────────────────── */
.mt-layout {
	display: grid;
	grid-template-columns: 264px 1fr;
	gap: 32px;
	align-items: start;
}

.mt-layout__aside,
.mt-layout__main {
	min-width: 0;
}

.mt-filters {
	background: var(--mt-white);
	border: 1px solid var(--mt-line);
	border-radius: var(--mt-radius);
	padding: 22px;
	box-shadow: var(--mt-shadow);
	position: sticky;
	top: 20px;
}

.mt-filters__heading {
	font-family: var(--mt-serif);
	font-size: 1.25rem;
	font-weight: 600;
	color: var(--mt-navy);
	margin: 0 0 16px;
	padding-bottom: 12px;
	border-bottom: 2px solid var(--mt-line);
}

.mt-filters__group {
	margin-bottom: 20px;
}

/* Optional text-search box at the top of the sidebar (category pages). */
.mt-filters__search {
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 1px solid var(--mt-line);
}

.mt-filters__searchinput {
	width: 100%;
	padding: 9px 12px;
	font-family: var(--mt-sans);
	font-size: .94rem;
	color: var(--mt-ink);
	background: var(--mt-white);
	border: 1px solid var(--mt-line);
	border-radius: var(--mt-radius);
	-webkit-appearance: none;
	appearance: none;
}

.mt-filters__searchbtn {
	width: 100%;
	justify-content: center;
	margin-top: 10px;
}

.mt-filters__title {
	font-size: .78rem;
	font-weight: 700;
	letter-spacing: .09em;
	text-transform: uppercase;
	color: var(--mt-gold-deep);
	margin: 0 0 10px;
}

.mt-filters__check {
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 6px 0;
	font-size: .94rem;
	color: var(--mt-ink);
	cursor: pointer;
}

.mt-filters__check input {
	width: 17px;
	height: 17px;
	flex: none;
	margin: 0;
	accent-color: var(--mt-gold-deep);
}

.mt-filters__select {
	width: 100%;
	padding: 9px 12px;
	font-family: var(--mt-sans);
	font-size: .94rem;
	color: var(--mt-ink);
	background: var(--mt-white);
	border: 1px solid var(--mt-line);
	border-radius: var(--mt-radius);
}

.mt-filters__actions {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin-top: 4px;
}

.mt-filters__apply {
	width: 100%;
	justify-content: center;
}

.mt-filters__clear {
	text-align: center;
	font-size: .86rem;
	font-weight: 600;
	color: var(--mt-gray);
	text-decoration: none;
}

.mt-filters__clear:hover,
.mt-filters__clear:focus {
	color: var(--mt-gold-deep);
}

@media (max-width: 880px) {
	.mt-layout {
		grid-template-columns: 1fr;
		gap: 24px;
	}
	.mt-filters {
		position: static;
	}
}

/* ── 15. Awards page (/awards/) ───────────────────────────────────────── */
/* Showcase for Most Trusted: a cream hero introducing the award, the cards
   in the middle (rendered by [mt_list tier="3" layout="grid"]), and a
   cream CTA band at the bottom linking to /all-ministries/. */

.mt-awards { padding-bottom: 0; }

.mt-awards__hero {
	background: var(--mt-cream);
	border-bottom: 1px solid var(--mt-line);
	padding: 64px 0 56px;
	text-align: center;
	margin-bottom: 56px;
}

.mt-awards__hero-seal {
	display: block;
	width: 180px;
	height: 180px;
	margin: 0 auto 22px;
}

.mt-awards__hero .mt-eyebrow {
	margin-bottom: 12px;
}

.mt-awards__h1 {
	margin: 0 0 14px;
	font-family: var(--mt-serif);
	font-weight: 600;
	font-size: clamp(2.4rem, 5vw, 3.4rem);
	line-height: 1.1;
	color: var(--mt-navy);
}

.mt-awards__h1::after {
	content: '';
	display: block;
	width: 60px;
	height: 3px;
	background: var(--mt-gold);
	margin: 20px auto 0;
}

.mt-awards__lede {
	max-width: 760px;
	margin: 24px auto 0;
	font-size: 1.05rem;
	line-height: 1.7;
	color: var(--mt-gray-700);
}

.mt-awards__list {
	margin-bottom: 64px;
}

.mt-awards__cta {
	background: var(--mt-cream);
	border-top: 1px solid var(--mt-line);
	padding: 64px 0;
	text-align: center;
}

.mt-awards__cta-title {
	margin: 0 0 14px;
	font-family: var(--mt-serif);
	font-weight: 600;
	font-size: clamp(1.6rem, 3.5vw, 2.1rem);
	color: var(--mt-navy);
	line-height: 1.2;
}

.mt-awards__cta-text {
	max-width: 620px;
	margin: 0 auto 28px;
	font-size: 1.02rem;
	line-height: 1.65;
	color: var(--mt-gray);
}

@media (max-width: 600px) {
	.mt-awards__hero { padding: 44px 0 36px; margin-bottom: 36px; }
	.mt-awards__hero-seal { width: 140px; height: 140px; }
	.mt-awards__list { margin-bottom: 44px; }
	.mt-awards__cta { padding: 48px 0; }
}
