/* ===== Pastor page ===== */
.pastorHero {
 position: relative;
 padding: clamp(50px, 7vw, 80px) 0;
 background:
  linear-gradient(90deg, rgba(0, 0, 0, .78), rgba(0, 0, 0, .25)),
  url("../assets/banners/womenumc.jpg");
 background-size: cover;
 background-position: center;
 color: #fff;
}

.pastorHero__inner {
 max-width: 900px;
}

.pastorHero__kicker {
 display: inline-block;
 padding: 8px 12px;
 border: 1px solid rgba(255, 255, 255, .35);
 border-radius: 999px;
 font-size: 12px;
 letter-spacing: .12em;
 text-transform: uppercase;
 margin-bottom: 14px;
}

.pastorHero__title {
 font-family: "Cinzel", serif;
 font-size: clamp(32px, 5vw, 54px);
 line-height: 1.05;
 margin: 0 0 10px;
}

.pastorHero__sub {
 opacity: .92;
 margin: 0 0 20px;
}

.pastorHero__cta {
 display: flex;
 gap: 12px;
 flex-wrap: wrap;
}

.pastorGrid {
 display: grid;
 grid-template-columns: 360px 1fr;
 gap: 28px;
 align-items: start;
}

.pastorCard {
 border: 1px solid rgba(0, 0, 0, .08);
 border-top: 4px solid var(--accent);
 border-radius: 18px;
 overflow: hidden;
 background: #fff;
 box-shadow: 0 8px 24px rgba(208, 74, 70, 0.07), 0 2px 8px rgba(0, 0, 0, .13);
}

.pastorCard__photo {
 width: 100%;
 height: 360px;
 object-fit: cover;
 display: block;
}

.pastorCard__body {
 padding: 18px 18px 20px;
}

.pastorCard__name {
 font-size: 20px;
 font-weight: 800;
 margin-bottom: 2px;
}

.pastorCard__role {
 opacity: .75;
 margin-bottom: 14px;
}

.pastorFacts {
 list-style: none;
 padding: 0;
 margin: 0 0 16px;
 display: grid;
 gap: 8px;
}

.pastorFacts strong {
 font-weight: 700;
}

.pastorCard__buttons {
 display: grid;
 gap: 10px;
}

.btn--full {
 width: 100%;
 text-align: center;
}

.pastorContent h2 {
 margin-top: 0;
 font-weight: 800;
 display: inline-block;
}

.pastorContent h2::after {
 content: "";
 display: block;
 margin-top: 6px;
 height: 3px;
 width: 48px;
 background: var(--accent);
 border-radius: 2px;
}

.pastorContent h3 {
 font-weight: 800;
 display: inline-block;
}

.pastorContent h3::after {
 content: "";
 display: block;
 margin-top: 4px;
 height: 2px;
 width: 32px;
 background: var(--accent);
 border-radius: 2px;
 opacity: .6;
}

.pastorQuote {
 margin: 18px 0 18px;
 padding: 24px 20px 20px 20px;
 border-left: 4px solid var(--accent);
 background: rgba(210, 75, 67, .06);
 border-radius: 12px;
 font-style: italic;
 font-size: clamp(17px, 2vw, 21px);
 position: relative;
}

.pastorQuote::before {
 content: "\201C";
 position: absolute;
 top: -10px;
 left: 14px;
 font-size: 64px;
 font-style: normal;
 line-height: 1;
 color: var(--accent);
 opacity: .35;
 font-family: Georgia, serif;
}

.pastorCallout {
 margin-top: 22px;
 padding: 28px 24px;
 border-radius: 18px;
 background: linear-gradient(135deg, #1a1a2e 0%, #4a1a1a 100%);
 color: #fff;
 position: relative;
 overflow: hidden;
}

.pastorCallout::before {
 content: "";
 position: absolute;
 inset: -50%;
 background: radial-gradient(circle at 50% 50%, rgba(208, 74, 70, .22), transparent 55%);
 pointer-events: none;
}

.pastorCallout h4,
.pastorCallout p,
.pastorCallout .btn {
 position: relative;
 z-index: 1;
}

.pastorCallout h4 {
 margin: 0 0 8px;
}

.pastorCallout p {
 opacity: .9;
 margin: 0 0 12px;
}

@media (max-width: 900px) {
 .pastorGrid {
  grid-template-columns: 1fr;
 }

 .pastorCard__photo {
  height: 320px;
 }
}