/* Local churches: the user's seven fronts, supported by a semantic outcome diagram. */
.church-support { padding:72px 8vw 80px; background:#f4f1ec; }
.church-support-intro { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:64px; align-items:start; }
.church-support h2 { font:800 clamp(40px,4.6vw,66px)/1 'Barlow Condensed',sans-serif; letter-spacing:-.025em; margin:0; }
.church-support-lead { font-size:20px!important; }
.church-support-intro .body-copy { max-width:55ch; }
.church-support-map { margin-top:52px; padding:36px; color:#fff; background:#191919; }
.church-support-map > .eyebrow { color:#ffaaaa; margin-bottom:28px; }
.church-support-outcomes { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; list-style:none; margin:0; padding:0; }
.church-support-outcomes li { border-top:3px solid #c80000; padding-top:20px; min-width:0; }
.church-support-outcomes li > span { display:block; color:#ffaaaa; font:700 16px/1.5 'DM Sans',sans-serif; margin-bottom:16px; }
.church-support-outcomes h3 { font:800 clamp(26px,2.6vw,38px)/1.08 'Barlow Condensed',sans-serif; margin:0 0 20px; letter-spacing:-.02em; }
.church-support-outcomes .body-copy { font-size:16px!important; color:#f4f1ec; margin:0; }
.church-map-note { margin:32px 0 0; padding-top:24px; border-top:1px solid #64605a; color:#f4f1ec; font-size:16px!important; }
.church-pillars-heading { margin:60px 0 36px; }
.church-pillars-heading h2 { font-size:clamp(36px,4vw,56px); }
.church-support-pillars { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:36px 48px; margin:0; padding:0; list-style:none; }
.church-support-pillars li { display:grid; grid-template-columns:40px minmax(0,1fr); gap:20px; padding-top:24px; border-top:1px solid #c9c2b8; min-width:0; }
.church-support-pillars li:last-child { grid-column:1/-1; max-width:940px; }
.church-pillar-number { color:#a60000; font:800 28px/1.2 'Barlow Condensed',sans-serif; }
.church-support-pillars h3 { font:800 30px/1.1 'Barlow Condensed',sans-serif; margin:0 0 18px; letter-spacing:-.015em; }
.church-support-pillars .body-copy { margin:0; max-width:55ch; }
.church-support-desire { margin:48px 0 0; border-left:4px solid #c80000; padding:24px 28px; background:#e7e1d7; }
.church-support-desire .body-copy { margin:0; max-width:65ch; }
@media(max-width:1000px) { .church-support-intro { grid-template-columns:minmax(0,1fr); gap:28px; } .church-support-outcomes { gap:20px; } .church-support-map { padding:28px; } .church-support-outcomes h3 { font-size:28px; } }
@media(max-width:900px) { .church-support-pillars { grid-template-columns:minmax(0,1fr); gap:28px; } .church-support-pillars li:last-child { grid-column:auto; max-width:none; } }
@media(max-width:750px) { .church-support { padding:52px 7vw 56px; } .church-support-map { padding:24px; margin-top:36px; } .church-support-outcomes { grid-template-columns:minmax(0,1fr); gap:28px; } .church-support-outcomes h3 { font-size:34px; } .church-support-pillars li { grid-template-columns:32px minmax(0,1fr); gap:12px; } .church-support-pillars h3 { font-size:28px; } .church-support-desire { padding:20px; } }
/* Church area: meaningful photographs, short overview and focused subpages. */
body.igrejas-page main > .church-photo-hero { display:grid; grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr); gap:0; padding:0!important; min-height:620px!important; background:#191919!important; color:#fff; }
.church-hero-copy { padding:48px clamp(28px,4.5vw,72px); min-width:0; }
body.igrejas-page .church-photo-hero h1 { font:800 clamp(48px,4.5vw,70px)/.98 'Barlow Condensed',sans-serif; letter-spacing:-.025em; margin:0 0 26px; }
.church-photo-hero .lede { max-width:44ch; font-size:18px!important; line-height:1.6; margin:0 0 22px; }
.church-photo-hero .free-note { color:#eee9df; font-size:16px!important; line-height:1.6; margin:0 0 24px; }
.church-hero-photo { display:flex; align-items:center; justify-content:center; margin:0; min-width:0; background:#191919; }
.church-hero-photo img { display:block; width:100%; height:auto; }
.church-section-nav { display:flex; flex-wrap:wrap; gap:12px 28px; padding:22px 8vw; background:#e7e1d7; border-bottom:1px solid #c9c2b8; }
.church-section-nav a { color:#191919; font:700 16px/1.6 'DM Sans',sans-serif; text-decoration:none; border-bottom:3px solid transparent; padding:8px 0; }
.church-section-nav a[aria-current='page'] { color:#980000; border-bottom-color:#c80000; }
.church-section-nav a:hover { text-decoration:underline; text-underline-offset:5px; }
.church-section-nav a:focus-visible,.church-area-grid a:focus-visible { outline:3px solid #996000; outline-offset:5px; }
.church-intro-photo { max-width:400px; margin:28px 0 0; }
.church-intro-photo img { display:block; width:100%; height:auto; }
.church-hub-heading { margin:52px 0 32px; }
.church-hub-heading h2 { font-size:clamp(36px,4vw,56px); }
.church-area-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
.church-area-grid article { min-width:0; display:flex; flex-direction:column; background:#fff; }
.church-area-image { display:flex; min-height:0; aspect-ratio:3 / 2; overflow:hidden; align-items:center; background:#e7e1d7; }
.church-area-image img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; }
.church-area-grid article:nth-child(2) .church-area-image img { object-position:center 58%; }
.church-area-grid article > div { display:flex; flex-direction:column; padding:24px; flex:1; }
.church-area-grid h3 { font:800 32px/1.08 'Barlow Condensed',sans-serif; margin:0 0 18px; }
.church-area-grid h3 a { color:#191919; text-decoration:none; }
.church-area-grid .body-copy { font-size:16px!important; margin:0 0 20px; }
.church-area-link { color:#980000; font:700 16px/1.6 'DM Sans',sans-serif; margin-top:auto; text-underline-offset:4px; }
.church-hub-cta { display:flex; justify-content:space-between; align-items:center; gap:32px; padding:48px 8vw; color:#fff; background:#b40000; }
.church-hub-cta h2 { font:800 clamp(36px,4vw,56px)/1 'Barlow Condensed',sans-serif; margin:0 0 20px; }
.church-hub-cta .eyebrow { color:#fff; }
.church-hub-cta .body-copy { margin:0; max-width:48ch; }
.church-topic-content { padding:56px 8vw 64px; background:#f4f1ec; }
.church-topic-row { padding:32px 0; border-bottom:1px solid #c9c2b8; }
.church-topic-row > div { max-width:900px; }
.church-topic-row-photo { display:grid; grid-template-columns:minmax(0,320px) minmax(0,1fr); gap:48px; align-items:center; }
.church-topic-row h2 { font:800 clamp(32px,3.5vw,48px)/1.08 'Barlow Condensed',sans-serif; margin:0 0 22px; }
.church-topic-row .body-copy { max-width:55ch; margin:0; }
.church-topic-row figure { margin:0; }
.church-topic-row figure img { display:block; width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; }
.church-commitment-photo { max-width:320px; margin:28px 0 0; }
.church-commitment-photo img { display:block; width:100%; height:auto; }
@media(max-width:1000px) {
 body.igrejas-page main > .church-photo-hero { grid-template-columns:minmax(0,1fr); min-height:0!important; }
 .church-hero-copy { padding:42px 7vw; }
 .church-hero-photo { max-width:800px; margin-inline:auto; }
 .church-photo-hero .lede { max-width:55ch; }
 .church-topic-row-photo { grid-template-columns:minmax(0,260px) minmax(0,1fr); gap:28px; }
}
@media(max-width:750px) {
 .church-section-nav { padding:16px 7vw; gap:8px 20px; }
 .church-area-grid { grid-template-columns:minmax(0,1fr); gap:24px; }
 .church-intro-photo { max-width:320px; }
 .church-topic-content { padding:24px 7vw 40px; }
 .church-topic-row-photo { grid-template-columns:minmax(0,1fr); gap:28px; }
 .church-topic-row figure { max-width:300px; margin-inline:auto; }
 .church-topic-row h2 { font-size:34px; }
 .church-hub-cta { flex-direction:column; align-items:start; padding:40px 7vw; }
}
/* Rota33 banner contract: one full-width photograph, HTML copy over a dark veil. */
body.igrejas-page main > .church-photo-hero { display:flex!important; position:relative; isolation:isolate; align-items:center; padding:64px 6%!important; min-height:620px!important; overflow:hidden; }
.church-photo-hero::after { content:""; position:absolute; inset:0; z-index:1; background:linear-gradient(90deg,rgba(0,0,0,.86) 0%,rgba(0,0,0,.78) 40%,rgba(0,0,0,.28) 75%,rgba(0,0,0,.16) 100%); }
.church-hero-copy { position:relative; z-index:2; padding:0; width:min(520px,100%); }
.church-hero-photo { position:absolute; inset:0; z-index:0; max-width:none; margin:0; display:block; }
.church-hero-photo img { display:block; width:100%; height:100%; object-fit:cover; object-position:center 27%; }
@media(max-width:1000px) { body.igrejas-page main > .church-photo-hero { min-height:620px!important; padding:56px 7%!important; } .church-hero-photo { max-width:none; margin:0; } }
@media(max-width:750px) { body.igrejas-page main > .church-photo-hero { min-height:620px!important; } .church-photo-hero::after { background:rgba(0,0,0,.76); } .church-hero-photo img { object-position:center 30%; } }
.church-hero-photo picture { display:block; width:100%; height:100%; }

/* Supplied photo story: compact cards preserve each full composition. */
.church-photo-story { padding:64px 8vw 72px; background:#fff; }
.church-photo-story-heading { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:48px; align-items:end; margin-bottom:40px; }
.church-photo-story h2 { margin:0; font:800 clamp(38px,4.5vw,62px)/.98 'Barlow Condensed',sans-serif; letter-spacing:-.025em; }
.church-photo-story-heading .body-copy { max-width:56ch; margin:0; }
.church-photo-story-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; }
.church-photo-story figure { min-width:0; margin:0; display:flex; flex-direction:column; background:#f4f1ec; }
.church-photo-story img { display:block; width:100%; aspect-ratio:4 / 3; height:auto; object-fit:cover; object-position:center; }
.church-photo-story figcaption { flex:1; padding:20px 22px 24px; font:400 16px/1.55 'DM Sans',sans-serif; color:#383530; }
.church-photo-story figcaption strong { display:block; margin-bottom:8px; color:#9f0000; font:700 13px/1.45 'DM Sans',sans-serif; letter-spacing:.08em; text-transform:uppercase; }
@media(max-width:800px) { .church-photo-story { padding:52px 7vw 56px; } .church-photo-story-heading { grid-template-columns:minmax(0,1fr); gap:20px; margin-bottom:28px; } .church-photo-story-grid { gap:24px; } }
@media(max-width:560px) { .church-photo-story-grid { grid-template-columns:minmax(0,1fr); } .church-photo-story figcaption { padding:18px 20px 22px; } }

/* Overview opening: title, conversation and explanation form one compact row. */
@media(min-width:1001px) {
 .church-support-intro { grid-template-columns:minmax(0,.8fr) minmax(260px,.72fr) minmax(0,1.08fr); grid-template-areas:"eyebrow photo copy" "title photo copy"; gap:22px 44px; }
 .church-support-intro > div:first-child { display:contents; }
 .church-support-intro > div:first-child > .eyebrow { grid-area:eyebrow; align-self:end; }
 .church-support-intro > div:first-child > h2 { grid-area:title; }
 .church-support-intro > div:last-child { grid-area:copy; }
 .church-intro-photo { grid-area:photo; max-width:none; margin:0; align-self:center; }
 .church-intro-photo img { width:100%; aspect-ratio:4 / 3; object-fit:cover; object-position:center; }
}
