/* Homepage-only styles */
.hero { position: relative; display: flex; min-height: min(690px, 78vh); align-items: center; overflow: hidden; color: white; background: var(--color-navy-deep); }
.hero__image { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(7,17,31,.88) 0%, rgba(7,17,31,.68) 48%, rgba(7,17,31,.2) 100%), url("https://images.unsplash.com/photo-1504052434569-70ad5836ab65?auto=format&fit=crop&w=2200&q=90") center 48%/cover; transform: scale(1.02); }
.hero__content { position: relative; z-index: 1; padding-top: 70px; padding-bottom: 90px; }
.hero h1 { max-width: 800px; margin: 22px 0 22px; font-family: var(--font-display); font-size: clamp(3rem, 6.3vw, 5.7rem); font-weight: 600; letter-spacing: -.045em; }
.hero h1 em { color: var(--color-gold); font-weight: 500; }
.hero__content > p { max-width: 570px; margin-bottom: 32px; color: rgba(255,255,255,.82); font-size: 1.05rem; }
.hero__actions { display: flex; flex-wrap: wrap; gap: 13px; }
.hero__scroll { position: absolute; z-index: 1; right: max(24px, calc((100% - var(--container))/2)); bottom: 28px; display: flex; align-items: center; gap: 10px; color: rgba(255,255,255,.7); font-size: .7rem; letter-spacing: .13em; text-transform: uppercase; }
.hero__scroll span { width: 28px; height: 1px; background: var(--color-gold); }
.section--intro { background: var(--color-paper); }
.pillar-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.pillar-card { position: relative; min-height: 300px; padding: 35px 32px 30px; border: 1px solid var(--color-line); border-radius: var(--radius-md); background: white; box-shadow: 0 8px 30px rgba(16,31,51,.035); transition: transform var(--transition), box-shadow var(--transition); }
.pillar-card:hover { transform: translateY(-7px); box-shadow: var(--shadow-soft); }
.pillar-card--featured { border-color: transparent; background: var(--color-navy); }
.pillar-card--featured h3, .pillar-card--featured p { color: white; }
.pillar-card--featured p { color: #c1cad6; }
.pillar-card--featured .text-link { color: var(--color-gold); }
.pillar-card__icon { display: grid; width: 48px; height: 48px; place-items: center; border-radius: 50%; color: var(--color-blue); background: var(--color-blue-light); font-size: 1.5rem; }
.pillar-card--featured .pillar-card__icon { color: var(--color-navy); background: var(--color-gold); }
.pillar-card__number { position: absolute; top: 35px; right: 30px; color: #b8c0cb; font-family: var(--font-display); font-size: 1rem; }
.pillar-card h3 { margin: 25px 0 12px; font-family: var(--font-display); font-size: 1.75rem; font-weight: 600; }
.pillar-card p { min-height: 76px; margin-bottom: 20px; font-size: .9rem; }
.section--story { background: white; }
.story-grid { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: clamp(45px, 8vw, 105px); }
.story-image { position: relative; min-height: 480px; }
.story-image > img { width: 100%; height: 480px; border-radius: var(--radius-lg); object-fit: cover; }
.story-image__note { position: absolute; right: -28px; bottom: 28px; display: flex; flex-direction: column; min-width: 210px; padding: 19px 24px; border-left: 4px solid var(--color-gold); border-radius: 5px; background: white; box-shadow: var(--shadow-soft); }
.story-image__note span { color: var(--color-muted); font-size: .72rem; }
.story-image__note strong { color: var(--color-navy); font-family: var(--font-display); font-size: 1.1rem; }
.story-copy .lead { color: var(--color-ink); font-size: 1.12rem; font-weight: 600; }
.story-copy > p:not(.lead) { margin-bottom: 28px; }
.section--ministries { background: var(--color-paper); }
.ministry-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.ministry-card { overflow: hidden; border-radius: var(--radius-md); background: white; box-shadow: 0 8px 30px rgba(16,31,51,.06); transition: transform var(--transition), box-shadow var(--transition); }
.ministry-card:hover { transform: translateY(-6px); box-shadow: var(--shadow-soft); }
.ministry-card > img { width: 100%; height: 225px; object-fit: cover; }
.ministry-card__body { padding: 26px 25px 28px; }
.ministry-card__body .eyebrow { font-size: .62rem; }
.ministry-card h3 { margin: 10px 0; color: var(--color-navy); font-family: var(--font-display); font-size: 1.6rem; }
.ministry-card p { min-height: 78px; margin-bottom: 18px; font-size: .88rem; }
.cta-band { padding: 74px 0; color: white; background: linear-gradient(110deg, #172d4b, #3449a5); }
.cta-band__inner { display: flex; align-items: center; justify-content: space-between; gap: 40px; }
.cta-band h2 { margin: 13px 0; color: white; font-size: clamp(2.2rem, 4vw, 3.3rem); }
.cta-band p { margin-bottom: 0; color: #d2d9e5; }
@media (max-width: 800px) {
    .hero { min-height: 620px; }
    .pillar-grid, .ministry-grid { grid-template-columns: 1fr 1fr; }
    .pillar-card:last-child { grid-column: 1 / -1; }
    .story-grid { gap: 45px; }
    .story-image, .story-image > img { min-height: 390px; height: 390px; }
}
@media (max-width: 600px) {
    .hero { min-height: 610px; }
    .hero__image { background-position: 58% center; }
    .hero h1 { font-size: clamp(2.65rem, 12vw, 4rem); }
    .hero__content > p { font-size: .95rem; }
    .hero__scroll { display: none; }
    .pillar-grid, .ministry-grid, .story-grid { grid-template-columns: 1fr; }
    .pillar-card:last-child { grid-column: auto; }
    .pillar-card { min-height: auto; }
    .pillar-card p, .ministry-card p { min-height: 0; }
    .story-image { min-height: 330px; }
    .story-image > img { height: 330px; min-height: 330px; }
    .story-image__note { right: 12px; bottom: 15px; }
    .cta-band__inner { align-items: flex-start; flex-direction: column; }
}
