/* FMBC Modern Luxe 1.0.13 — Ministries page-only fidelity layer */

.fmbc-min113-hero {
  position: relative;
  min-height: 600px;
  display: flex;
  align-items: center;
  isolation: isolate;
  overflow: hidden;
  background-color: #031a3a;
  background-position: center 32%;
  background-size: cover;
}
.fmbc-min113-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    linear-gradient(90deg, rgba(2,17,40,.96) 0%, rgba(3,26,58,.90) 42%, rgba(3,26,58,.48) 72%, rgba(3,26,58,.30) 100%),
    linear-gradient(0deg, rgba(3,26,58,.38), transparent 45%);
}
.fmbc-min113-hero::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 5px;
  background: linear-gradient(90deg, #d99a24, #f4c45d 50%, #d99a24);
}
.fmbc-min113-hero-inner {
  width: min(100%, 1240px) !important;
  margin-inline: auto;
  padding: 112px 34px 118px;
}
.fmbc-min113-hero-copy-wrap { max-width: 690px; }
.fmbc-min113-kicker .elementor-heading-title,
.fmbc-min113-section-kicker .elementor-heading-title,
.fmbc-min113-cta-kicker .elementor-heading-title {
  margin: 0;
  color: #e3a72d;
  font: 800 13px/1.2 Inter, "Segoe UI", Arial, sans-serif;
  letter-spacing: .18em;
  text-transform: uppercase;
}
.fmbc-min113-hero-title .elementor-heading-title {
  max-width: 680px;
  margin: 13px 0 0;
  color: #fff;
  font: 700 clamp(48px, 6vw, 82px)/.98 Georgia, "Times New Roman", serif;
  letter-spacing: -.035em;
  text-wrap: balance;
}
.fmbc-min113-hero-copy { max-width: 610px; }
.fmbc-min113-hero-copy p {
  margin: 22px 0 0;
  color: rgba(255,255,255,.84);
  font: 400 18px/1.7 Inter, "Segoe UI", Arial, sans-serif;
}
.fmbc-min113-hero-actions {
  display: flex !important;
  flex-flow: row wrap !important;
  gap: 12px !important;
  margin-top: 30px;
}
.fmbc-min113-hero-actions .elementor-widget-button { width: auto !important; }
.fmbc-min113-hero-actions .elementor-button,
.fmbc-min113-cta-actions .elementor-button {
  min-height: 50px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 23px;
  border-radius: 8px;
  font: 800 12px/1 Inter, "Segoe UI", Arial, sans-serif;
  letter-spacing: .07em;
  text-transform: uppercase;
  transition: transform .2s ease, background-color .2s ease, border-color .2s ease;
}
.fmbc-min113-hero-actions .elementor-button:hover,
.fmbc-min113-cta-actions .elementor-button:hover { transform: translateY(-2px); }
.fmbc-min113-primary .elementor-button,
.fmbc-min113-cta-primary .elementor-button {
  color: #031a3a;
  background: #e3a72d;
  border: 1px solid #e3a72d;
}
.fmbc-min113-primary .elementor-button:hover,
.fmbc-min113-cta-primary .elementor-button:hover { background: #f1bb4b; border-color: #f1bb4b; }
.fmbc-min113-secondary .elementor-button,
.fmbc-min113-cta-secondary .elementor-button {
  color: #fff;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.55);
}
.fmbc-min113-secondary .elementor-button:hover,
.fmbc-min113-cta-secondary .elementor-button:hover { background: #fff; color: #031a3a; border-color: #fff; }

.fmbc-min113-purpose {
  position: relative;
  z-index: 2;
  background: #f7f4ee;
  padding: 0 24px 86px !important;
}
.fmbc-min113-purpose-inner {
  width: min(100%, 1180px) !important;
  margin: -54px auto 0;
}
.fmbc-min113-purpose-grid,
.fmbc-min113-purpose-grid > .e-con-inner {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px !important;
}
.fmbc-min113-purpose-card {
  width: auto !important;
  min-width: 0;
  padding: 29px 28px 27px !important;
  background: #fff;
  border: 1px solid rgba(3,26,58,.10);
  border-top: 4px solid #d99a24;
  border-radius: 16px;
  box-shadow: 0 18px 45px rgba(3,26,58,.10);
}
.fmbc-min113-purpose-icon .fmbc-icon-svg {
  width: 52px;
  height: 52px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #d99a24;
  background: #061f48;
  border-radius: 13px;
}
.fmbc-min113-purpose-icon svg { width: 29px; height: 29px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.fmbc-min113-purpose-title .elementor-heading-title {
  margin: 19px 0 0;
  color: #031a3a;
  font: 700 24px/1.18 Georgia, "Times New Roman", serif;
}
.fmbc-min113-purpose-copy p {
  margin: 10px 0 0;
  color: #5a6578;
  font: 400 15px/1.65 Inter, "Segoe UI", Arial, sans-serif;
}

.fmbc-min113-directory {
  background: #fff;
  padding: 92px 24px 102px !important;
}
.fmbc-min113-directory-inner {
  width: min(100%, 1180px) !important;
  margin-inline: auto;
}
.fmbc-min113-directory-intro { max-width: 760px; margin: 0 auto 46px; text-align: center; }
.fmbc-min113-directory-title .elementor-heading-title {
  margin: 12px 0 0;
  color: #031a3a;
  font: 700 clamp(38px, 4.5vw, 58px)/1.08 Georgia, "Times New Roman", serif;
  letter-spacing: -.02em;
}
.fmbc-min113-directory-copy p {
  margin: 17px auto 0;
  max-width: 720px;
  color: #667085;
  font: 400 16px/1.7 Inter, "Segoe UI", Arial, sans-serif;
}
.fmbc-ministry-grid,
.fmbc-ministry-grid > .e-con-inner {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px !important;
  width: min(100%, 1180px) !important;
  max-width: none !important;
}
.fmbc-ministry-grid > .fmbc-ministry-card,
.fmbc-ministry-grid > .e-con-inner > .fmbc-ministry-card { width: auto !important; min-width: 0; }
.fmbc-ministry-card,
.fmbc-ministry-card > .e-con-inner {
  width: auto !important;
  min-width: 0;
  min-height: 390px;
  padding: 28px 28px 25px !important;
  gap: 13px !important;
  background: #fff;
  border: 1px solid #e3e7ee;
  border-radius: 18px;
  box-shadow: 0 10px 30px rgba(3,26,58,.07);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.fmbc-ministry-card:hover {
  transform: translateY(-5px);
  border-color: rgba(217,154,36,.7);
  box-shadow: 0 20px 45px rgba(3,26,58,.12);
}
.fmbc-ministry-card-top,
.fmbc-ministry-card-top > .e-con-inner { min-height: 94px; justify-content: center !important; }
.fmbc-directory-number-wrap,
.fmbc-directory-spacer { width: 38px !important; flex: 0 0 38px; }
.fmbc-directory-number {
  width: 38px !important;
  height: 38px !important;
  font-size: 13px !important;
}
.fmbc-directory-spacer { display: none !important; }
.fmbc-directory-spacer-mark { display: none; width: 38px; height: 38px; }
.fmbc-ministry-card .fmbc-directory-emblem-shell {
  width: 94px !important;
  height: 94px !important;
}
.fmbc-ministry-title .elementor-heading-title {
  min-height: 48px;
  margin: 5px 0 0;
  color: #031a3a !important;
  font: 800 18px/1.28 Inter, "Segoe UI", Arial, sans-serif !important;
  letter-spacing: -.01em;
  text-transform: uppercase;
}
.fmbc-ministry-copy { flex: 1; }
.fmbc-ministry-copy p {
  margin: 0;
  color: #596579 !important;
  font: 400 14px/1.62 Inter, "Segoe UI", Arial, sans-serif !important;
}
.fmbc-ministry-link { margin-top: auto; }
.fmbc-ministry-link .elementor-button {
  width: 100%;
  min-height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff !important;
  background: #031a3a !important;
  border: 1px solid #031a3a !important;
  border-radius: 8px !important;
  font: 800 11px/1 Inter, "Segoe UI", Arial, sans-serif !important;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.fmbc-ministry-link .elementor-button:hover { color: #031a3a !important; background: #e3a72d !important; border-color: #e3a72d !important; }

.fmbc-min113-cta-section { padding: 0 24px 104px !important; background: #fff; }
.fmbc-min113-cta,
.fmbc-min113-cta > .e-con-inner {
  display: grid !important;
  grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
  width: min(100%, 1180px) !important;
  margin-inline: auto;
  border-radius: 22px;
  overflow: hidden;
  background: #031a3a;
  box-shadow: 0 24px 58px rgba(3,26,58,.16);
}
.fmbc-min113-cta-media { width: auto !important; min-height: 470px; overflow: hidden; }
.fmbc-min113-cta-photo,
.fmbc-min113-cta-photo .elementor-widget-container,
.fmbc-min113-cta-photo img { width: 100%; height: 100%; }
.fmbc-min113-cta-photo img { object-fit: cover; object-position: center; }
.fmbc-min113-cta-copy-wrap {
  width: auto !important;
  padding: 62px 58px !important;
  justify-content: center;
}
.fmbc-min113-cta-title .elementor-heading-title {
  margin: 13px 0 0;
  color: #fff;
  font: 700 clamp(36px, 4vw, 52px)/1.08 Georgia, "Times New Roman", serif;
  letter-spacing: -.02em;
}
.fmbc-min113-cta-copy p {
  margin: 19px 0 0;
  color: rgba(255,255,255,.78);
  font: 400 16px/1.72 Inter, "Segoe UI", Arial, sans-serif;
}
.fmbc-min113-cta-actions {
  display: flex !important;
  flex-flow: row wrap !important;
  gap: 12px !important;
  margin-top: 26px;
}
.fmbc-min113-cta-actions .elementor-widget-button { width: auto !important; }

@media (max-width: 1024px) {
  .fmbc-min113-hero { min-height: 540px; background-position: 62% center; }
  .fmbc-min113-hero-inner { padding: 88px 26px 104px; }
  .fmbc-min113-purpose-grid,
  .fmbc-min113-purpose-grid > .e-con-inner { grid-template-columns: 1fr; }
  .fmbc-min113-purpose-inner { max-width: 760px !important; }
  .fmbc-ministry-grid,
  .fmbc-ministry-grid > .e-con-inner { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .fmbc-min113-cta-copy-wrap { padding: 48px 38px !important; }
}

@media (max-width: 767px) {
  .fmbc-min113-hero { min-height: 520px; background-position: 68% center; }
  .fmbc-min113-hero::before { background: linear-gradient(90deg, rgba(2,17,40,.96), rgba(3,26,58,.80)); }
  .fmbc-min113-hero-inner { padding: 70px 18px 92px; }
  .fmbc-min113-hero-title .elementor-heading-title { font-size: clamp(42px, 13vw, 58px); }
  .fmbc-min113-hero-copy p { font-size: 16px; }
  .fmbc-min113-hero-actions,
  .fmbc-min113-cta-actions { flex-direction: column !important; }
  .fmbc-min113-hero-actions .elementor-widget-button,
  .fmbc-min113-cta-actions .elementor-widget-button { width: 100% !important; }
  .fmbc-min113-purpose { padding-inline: 16px !important; padding-bottom: 66px !important; }
  .fmbc-min113-purpose-inner { margin-top: -38px; }
  .fmbc-min113-purpose-card { padding: 24px 22px !important; }
  .fmbc-min113-directory { padding: 68px 16px 76px !important; }
  .fmbc-min113-directory-intro { margin-bottom: 34px; }
  .fmbc-ministry-grid,
  .fmbc-ministry-grid > .e-con-inner { grid-template-columns: 1fr; gap: 16px !important; }
  .fmbc-ministry-card { min-height: 0; padding: 24px 22px 22px !important; }
  .fmbc-ministry-title .elementor-heading-title { min-height: 0; }
  .fmbc-min113-cta-section { padding: 0 16px 76px !important; }
  .fmbc-min113-cta,
  .fmbc-min113-cta > .e-con-inner { grid-template-columns: 1fr; }
  .fmbc-min113-cta-media { min-height: 290px; }
  .fmbc-min113-cta-copy-wrap { padding: 39px 24px 42px !important; }
}

@media (prefers-reduced-motion: reduce) {
  .fmbc-ministry-card,
  .fmbc-min113-hero-actions .elementor-button,
  .fmbc-min113-cta-actions .elementor-button { transition: none; }
}

/*
 * Version 1.0.14 directory correction.
 * The original directory engine can be printed after this page stylesheet on
 * some WordPress/Elementor cache combinations. The section-scoped selectors
 * below deliberately carry more specificity so the intended 3 / 2 / 1 column
 * layout wins regardless of stylesheet print order.
 */
.fmbc-min113-directory .fmbc-ministry-grid,
.fmbc-min113-directory .fmbc-ministry-grid > .e-con-inner {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  grid-auto-flow: row !important;
  gap: 22px !important;
  width: min(100%, 1180px) !important;
  max-width: 1180px !important;
  margin-inline: auto !important;
}
.fmbc-min113-directory .fmbc-ministry-grid > .fmbc-ministry-card,
.fmbc-min113-directory .fmbc-ministry-grid > .e-con-inner > .fmbc-ministry-card {
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  flex: none !important;
}
.fmbc-min113-directory .fmbc-ministry-card,
.fmbc-min113-directory .fmbc-ministry-card > .e-con-inner {
  min-height: 390px !important;
  padding: 28px 28px 25px !important;
}

@media (max-width: 1024px) {
  .fmbc-min113-directory .fmbc-ministry-grid,
  .fmbc-min113-directory .fmbc-ministry-grid > .e-con-inner {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 767px) {
  .fmbc-min113-directory .fmbc-ministry-grid,
  .fmbc-min113-directory .fmbc-ministry-grid > .e-con-inner {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 16px !important;
  }
  .fmbc-min113-directory .fmbc-ministry-card,
  .fmbc-min113-directory .fmbc-ministry-card > .e-con-inner {
    min-height: 0 !important;
    padding: 24px 22px 22px !important;
  }
}
