/* MPF Site Polish — layered on existing brand */
body.mpf-polish-on {
  --mpf-navy: #0c2340;
  --mpf-navy-deep: #081829;
  --mpf-gold: #c9a227;
  --mpf-gold-hover: #ddb92f;
  --mpf-muted: #3d4a5c;
  --mpf-cream: #f7f8fa;
}

/* Nav Donate pill */
body.mpf-polish-on #top-menu a[href*="/donate"] {
  background: var(--mpf-gold) !important;
  color: var(--mpf-navy-deep) !important;
  border-radius: 999px !important;
  padding: 0.55rem 1.15rem !important;
  margin-left: 0.35rem;
}
body.mpf-polish-on #top-menu a[href*="/donate"]:hover {
  background: var(--mpf-gold-hover) !important;
  color: var(--mpf-navy-deep) !important;
}

/* Hero / slider readability */
body.mpf-polish-on .et_pb_slide:before,
body.mpf-polish-on .et_pb_fullwidth_header:before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(8,24,41,0.42) 0%, rgba(8,24,41,0.58) 100%);
  z-index: 1;
  pointer-events: none;
}
body.mpf-polish-on .et_pb_slide_description,
body.mpf-polish-on .et_pb_fullwidth_header_container {
  position: relative;
  z-index: 2;
  text-shadow: 0 2px 16px rgba(0,0,0,0.35);
}

/* Body text contrast */
body.mpf-polish-on .et_pb_text,
body.mpf-polish-on .et_pb_post_content,
body.mpf-polish-on .entry-content {
  color: var(--mpf-muted);
}

/* Hide thin stock footer strip text; we replace via plugin footer */
body.mpf-polish-on #footer-info { display: none !important; }
body.mpf-polish-on #footer-bottom { display: none !important; }

.mpf-footer {
  background: #1b1b1b;
  color: #c8c8c8;
  font-size: 0.92rem;
  line-height: 1.5;
}
.mpf-footer a { color: #ddd; text-decoration: none; }
.mpf-footer a:hover { color: var(--mpf-gold, #c9a227); }
.mpf-footer-grid {
  max-width: 1080px;
  margin: 0 auto;
  padding: 2rem 1.25rem 1.25rem;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 1.5rem;
}
.mpf-footer h4 {
  color: #fff;
  margin: 0 0 0.5rem;
  font-size: 0.8rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}
.mpf-footer p { margin: 0 0 0.35rem; }
.mpf-footer-bottom {
  border-top: 1px solid #333;
  padding: 0.85rem 1.25rem;
  text-align: center;
  font-size: 0.85rem;
  color: #999;
}

/* Full template mode (when plugin serves polished page shells) */
body.mpf-polish-template { margin: 0; font-family: "Open Sans", Arial, Helvetica, sans-serif; }
.mpf-admin-badge {
  position: sticky; top: 0; z-index: 100000;
  background: #8b1e1e; color: #fff; text-align: center;
  padding: 0.45rem 1rem; font-size: 0.85rem; font-weight: 600;
}
.mpf-admin-badge a { color: #fff; text-decoration: underline; }
.mpf-tpl-header { background: var(--mpf-navy, #0c2340); padding: 0.75rem 0; }
.mpf-tpl-header-inner {
  max-width: 1080px; margin: 0 auto; padding: 0 1.25rem;
  display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap;
}
.mpf-tpl-header img.logo { height: 96px; width: auto; max-height: 96px; }
.mpf-tpl-nav { list-style: none; margin: 0; padding: 0; display: flex; gap: 0.25rem; flex-wrap: wrap; align-items: center; }
.mpf-tpl-nav a {
  color: #fff; text-decoration: none; text-transform: uppercase;
  font-size: 14px; font-weight: 600; letter-spacing: 0.04em;
  padding: 0.55rem 0.85rem; display: inline-block;
}
.mpf-tpl-nav a:hover { color: var(--mpf-gold, #c9a227); }
.mpf-tpl-nav a.donate {
  background: var(--mpf-gold, #c9a227); color: var(--mpf-navy-deep, #081829) !important;
  border-radius: 999px; padding: 0.55rem 1.15rem; margin-left: 0.35rem;
}
.mpf-tpl-nav a.donate:hover { background: var(--mpf-gold-hover, #ddb92f); }
.mpf-tpl-nav a.active { color: var(--mpf-gold, #c9a227); }
.mpf-page-hero {
  background: var(--mpf-navy, #0c2340); color: #fff !important;
  padding: 2.25rem 1.25rem 1.75rem; text-align: center;
}
.mpf-page-hero h1,
.mpf-page-hero p {
  color: #fff !important;
}
.mpf-page-hero h1 { margin: 0; font-size: clamp(1.6rem, 3vw, 2.2rem); }
.mpf-page-hero p { margin: 0.5rem auto 0; max-width: 560px; opacity: 0.95; }
.mpf-wrap { max-width: 920px; margin: 0 auto; padding: 2rem 1.25rem 2.75rem; }
.mpf-wrap.wide { max-width: 1080px; }
.mpf-cards {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 1rem;
}
.mpf-card {
  background: #fff; border-radius: 10px; padding: 1.25rem 1.2rem;
  border-top: 4px solid var(--mpf-gold, #c9a227);
  box-shadow: 0 6px 20px rgba(12,35,64,0.06);
  color: var(--mpf-muted, #3d4a5c);
}
.mpf-card h3 { margin: 0 0 0.4rem; color: var(--mpf-navy, #0c2340); font-size: 1.05rem; }
.mpf-card p { margin: 0; font-size: 0.95rem; }
.mpf-board-grid {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 1rem;
}
.mpf-board-card {
  background: #fff; border: 1px solid #e6ebf1; border-radius: 10px; padding: 1.2rem;
  box-shadow: 0 4px 14px rgba(12,35,64,0.05);
}
.mpf-board-card h3 { margin: 0 0 0.15rem; color: var(--mpf-navy, #0c2340); font-size: 1.05rem; }
.mpf-board-card .role {
  color: var(--mpf-gold, #c9a227); font-weight: 700; font-size: 0.8rem;
  text-transform: uppercase; letter-spacing: 0.04em; margin-bottom: 0.55rem;
}
.mpf-board-card p { margin: 0; color: var(--mpf-muted, #3d4a5c); font-size: 0.95rem; }
.mpf-trust {
  background: var(--mpf-cream, #f7f8fa); border-left: 4px solid var(--mpf-gold, #c9a227);
  padding: 1rem 1.15rem; margin: 0 0 1.5rem; border-radius: 0 8px 8px 0;
  color: var(--mpf-muted, #3d4a5c);
}
.mpf-btn {
  display: inline-block; text-decoration: none; font-weight: 700; text-transform: uppercase;
  font-size: 0.85rem; letter-spacing: 0.04em; border-radius: 999px; padding: 0.85rem 1.4rem;
}
.mpf-btn-gold { background: var(--mpf-gold, #c9a227); color: var(--mpf-navy-deep, #081829); }
.mpf-btn-gold:hover { background: var(--mpf-gold-hover, #ddb92f); }
.mpf-section-label {
  font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.08em;
  color: var(--mpf-gold, #c9a227); font-weight: 700; margin: 0 0 0.35rem;
}
.mpf-prose { color: var(--mpf-muted, #3d4a5c); font-size: 1.05rem; line-height: 1.65; }
.mpf-prose a { color: #2a6dad; }
.mpf-hero {
  position: relative; min-height: 420px;
  background: var(--mpf-navy-deep, #081829) center/cover no-repeat;
  display: flex; align-items: center; justify-content: center; text-align: center; color: #fff;
}
.mpf-hero:before {
  content: ""; position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(8,24,41,0.45) 0%, rgba(8,24,41,0.62) 100%);
}
.mpf-hero-inner { position: relative; z-index: 1; padding: 3rem 1.25rem; max-width: 800px; }
.mpf-hero h1 { margin: 0; font-weight: 300; font-size: clamp(1.75rem, 4vw, 2.75rem); color: #fff !important; text-shadow: 0 2px 18px rgba(0,0,0,0.55); }
.mpf-hero h1 strong { color: #fff !important; }
.mpf-hero h1 strong { font-weight: 700; display: block; font-size: 0.85em; margin-top: 0.15rem; }
.mpf-hero-actions { margin-top: 1.5rem; display: flex; gap: 0.75rem; justify-content: center; flex-wrap: wrap; }
.mpf-btn-ghost { border: 2px solid #fff; color: #fff; background: transparent; }
.mpf-band { background: var(--mpf-cream, #f7f8fa); padding: 2.5rem 1.25rem; }
.mpf-band-inner { max-width: 1080px; margin: 0 auto; }
.mpf-band h2 { text-align: center; color: var(--mpf-navy, #0c2340); margin: 0 0 0.35rem; }
.mpf-band .lead { text-align: center; color: var(--mpf-muted, #3d4a5c); margin: 0 auto 1.75rem; max-width: 560px; }
.mpf-cta {
  background: var(--mpf-navy, #0c2340); color: #fff; text-align: center; padding: 2.5rem 1.25rem;
}
.mpf-cta h2 { margin: 0 0 0.5rem; }
.mpf-cta p { margin: 0 auto 1.25rem; max-width: 480px; opacity: 0.9; }
.mpf-mail-box {
  background: #fff; border: 1px solid #e6ebf1; border-radius: 10px; padding: 1.2rem; margin-top: 1rem;
}


/* Force white hero / slider titles */
body.mpf-polish-on .et_pb_slide_title,
body.mpf-polish-on .et_pb_slide_content,
body.mpf-polish-on .et_pb_fullwidth_header .et_pb_module_header,
body.mpf-polish-on .et_pb_fullwidth_header .et_pb_fullwidth_header_subhead,
body.mpf-polish-template .mpf-hero h1,
body.mpf-polish-template .mpf-hero h1 strong {
  color: #fff !important;
}
@media (max-width: 782px) {
  .mpf-tpl-header img.logo { height: 72px; max-height: 72px; }
}

.mpf-donorbox-wrap {
  margin: 0.5rem 0 1.5rem;
  max-width: 500px;
}
.mpf-donorbox-wrap iframe {
  width: 100%;
  min-height: 900px;
  border: 0;
}

/* Keep page-hero subheads on one line on wider screens */
@media (min-width: 700px) {
  .mpf-page-hero p {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
    font-size: 1rem;
  }
}

/* CTA band — force light text on navy */
.mpf-cta,
.mpf-cta h2,
.mpf-cta p {
  color: #fff !important;
}
.mpf-admin-badge,
.mpf-admin-badge a {
  color: #fff !important;
}
.mpf-page-hero,
.mpf-page-hero h1,
.mpf-page-hero p,
.mpf-hero,
.mpf-hero h1,
.mpf-hero h1 strong,
.mpf-tpl-header,
.mpf-tpl-header a:not(.donate) {
  color: #fff !important;
}
.mpf-tpl-nav a.donate {
  color: #081829 !important;
}
