:root{--color-primary:#77c9ef;--color-secondary:#102e40;--color-accent:#e7ba55;--color-text:#173547;--color-background:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--color-background);color:var(--color-text);font:1rem/1.75 system-ui,-apple-system,Segoe UI,sans-serif}a{color:inherit;text-underline-offset:5px}a:hover{text-decoration-thickness:2px}button,input,textarea,select{font:inherit}img{max-width:100%;height:auto}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.13;margin:0 0 1.4rem}h1{font-size:clamp(2.6rem,5.6vw,5.6rem);letter-spacing:-.035em}h2{font-size:clamp(2rem,3.3vw,3.25rem);letter-spacing:-.025em}h3{font-size:1.65rem}p{margin:0 0 1.5rem}.wrap{width:min(1200px,90%);margin-inline:auto}.topline{background:var(--color-secondary);color:white;font-size:.875rem;padding:.45rem 0}.topline .wrap{display:flex;justify-content:space-between;gap:1rem}.site-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block:1.6rem}.brand{display:flex;align-items:center;gap:.8rem;text-decoration:none;font-size:1.65rem;font-family:Georgia,serif;line-height:1.1}.brand small{display:block;font: .65rem/1.5 system-ui;letter-spacing:.12em;margin-top:.4rem}.brand-logo{display:block;width:64px;height:64px;object-fit:contain;flex-shrink:0}.brand>span{min-width:0}.brand{min-width:0;max-width:100%}nav ul{display:flex;gap:1.4rem;list-style:none;padding:0;margin:0}nav a{text-decoration:none;font-size:.925rem}nav a:hover{text-decoration:underline}nav .sub-menu{display:none;position:absolute;background:white;padding:1rem;z-index:5}nav li:hover>.sub-menu,nav li:focus-within>.sub-menu{display:block}.menu-toggle{display:none}.hero{background:var(--color-secondary);color:white;padding:6.3rem 0}.hero-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:7%;align-items:center}.eyebrow{font-size:.8rem;letter-spacing:.16em;font-weight:650;text-transform:uppercase;margin-bottom:1.6rem}.hero .eyebrow{color:var(--color-primary)}.hero em{color:var(--color-accent);font-weight:400}.lead{font-size:1.2rem;line-height:1.8;max-width:640px}.actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2rem}.button{display:inline-block;background:var(--color-accent);color:#122b3a;padding:.85rem 1.35rem;text-decoration:none;font-weight:650;border:1px solid transparent;border-radius:2px}.button.outline{border-color:#9daeb8;background:transparent;color:white}.button.dark{background:var(--color-secondary);color:white}.hero-aside{padding:3rem 0 3rem 3rem;border-left:1px solid #647b89}.hero-aside h2{font-size:clamp(2.5rem,4vw,4rem);margin-top:2rem}.section-number{color:var(--color-accent);font-size:.8rem;letter-spacing:.15em}.hero-aside a{color:var(--color-primary)}.section{padding-block:5rem}.split{display:grid;grid-template-columns:1fr 1fr;gap:9%}.soft{background:#edf6fa}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem}.text-link{font-weight:650;text-decoration:underline}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.card{border:1px solid #d6e0e4}.card img{width:100%;aspect-ratio:16/10;object-fit:cover}.card-body{padding:1.6rem}.card .eyebrow{font-size:.75rem;margin-bottom:.8rem}.card h3 a{text-decoration:none}.empty{border-block:1px solid #d6e0e4;padding:1.5rem 0;color:#4b6270}.commission{background:var(--color-secondary);color:white;text-align:center}.commission .wrap{max-width:850px}.commission .lead{margin-inline:auto}.commission .eyebrow{color:var(--color-accent)}.footer{padding-top:4rem;background:#0b2230;color:#e2ecf2}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:3rem}.footer h2{font-size:2rem}.footer h3{font-size:1.35rem}.footer nav{columns:2}.footer nav h3{column-span:all}.footer nav a{display:block;margin-bottom:.6rem;font-size:.875rem}.copyright{border-top:1px solid #3a4e5b;padding:1.5rem 0;margin-top:3rem;font-size:.8rem}.page-content{min-height:60vh}.page-content>h1{max-width:950px}.prose{max-width:900px}.prose h2{margin-top:2.4rem}.prose .cards{grid-template-columns:repeat(2,1fr)}.notice{border-left:4px solid #ae7b13;background:#fff6dc;padding:1rem 1.5rem}.way-form{max-width:720px;margin-top:2rem}.way-form label{display:block;font-weight:600;margin-bottom:1.3rem}.way-form input:not([type=checkbox]),.way-form textarea,.way-form select{display:block;width:100%;border:1px solid #8599a4;border-radius:2px;padding:.7rem;margin-top:.4rem;background:white;color:#173547}.way-form textarea{min-height:150px}.way-form input[type=checkbox]{width:1.1rem;height:1.1rem;margin-right:.6rem}.way-form button{cursor:pointer}.honeypot{position:absolute;left:-10000px}.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;background:white;padding:1rem;z-index:99}:focus-visible{outline:3px solid #a65a00;outline-offset:5px}dt{font-weight:700;margin-top:1rem}dd{margin-left:0}audio,video{max-width:100%;width:100%}iframe{max-width:100%}@media(max-width:900px){.site-header{flex-wrap:wrap}.menu-toggle{display:block;padding:.5rem .9rem;background:white;border:1px solid #758b98}#main-nav{display:none;width:100%}#main-nav.open{display:block}nav ul{flex-direction:column;gap:.7rem}nav .sub-menu{position:static;display:block;padding:.5rem 1rem}.hero-grid{grid-template-columns:1fr;gap:3rem}.hero{padding:4rem 0}.hero-aside{padding:2rem 0 0;border-left:0;border-top:1px solid #647b89}.hero-aside h2{font-size:2.5rem}.cards{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}@media(max-width:600px){.topline .wrap{display:block}.topline span{display:none}.split,.cards,.prose .cards,.footer-grid{grid-template-columns:1fr}.split{gap:2rem}.section{padding-block:3rem}.section-heading{align-items:start}.section-heading>a{white-space:nowrap}.brand{font-size:1.3rem}.brand small{font-size:.6rem}.footer nav{columns:2}.footer-grid>div:first-child{grid-column:auto}.hero h1{font-size:3.25rem}.actions .button{width:100%;text-align:center}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.scripture{margin:0}.scripture cite{display:block;font-style:normal;margin-bottom:1.5rem}.scripture-credit{font-size:.875rem;line-height:1.65;max-width:700px;margin-inline:auto}

:root{--color-footer:#0b2230}
.footer{background:var(--color-footer)}
.giving-scripture{background:var(--color-footer);color:#e2ecf2;padding:clamp(1.4rem,4vw,2.4rem);margin:0 0 2rem;border:0;animation:scripture-drop .9s cubic-bezier(.22,1,.36,1) both}
.giving-scripture strong,.giving-scripture sup{color:var(--color-accent)}
.giving-scripture a{color:var(--color-primary)}
.giving-scripture cite{margin-bottom:0}
.footer-scripture-credit{font-size:.875rem;line-height:1.65;padding-bottom:2rem;margin-bottom:0;color:#e2ecf2}
@keyframes scripture-drop{from{opacity:0;transform:translateY(-48px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.giving-scripture{animation:none}}

/* Statement of Beliefs */
.beliefs-list > li{font-style:italic}

.testimony-carousel.is-carousel .testimony-viewport{overflow:hidden}
.testimony-carousel.is-carousel .cards{display:flex;gap:0;transition:transform .65s ease;align-items:stretch}
.testimony-carousel.is-carousel .card{flex:0 0 100%;min-width:0;box-sizing:border-box}
.testimony-carousel.is-carousel .card img{max-height:320px;object-fit:cover}
.testimony-controls:not([hidden]){display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:1.4rem}
.testimony-controls button{background:var(--color-secondary);color:white;border:0;border-radius:4px;padding:.65rem 1rem;cursor:pointer;font:inherit;min-height:44px}
.testimony-controls button:focus-visible{outline:3px solid var(--color-accent);outline-offset:3px}
@media(prefers-reduced-motion:reduce){.testimony-carousel.is-carousel .cards{transition:none}}


.testimony-cards{grid-template-columns:1fr}
.testimony-card{display:grid;grid-template-columns:180px minmax(0,1fr);gap:2rem;padding:2rem;align-items:start}
.testimony-person{text-align:center}
.testimony-card .testimony-portrait{width:144px;height:144px;max-width:100%;border-radius:50%;object-fit:cover;display:block;margin:0 auto 1rem}
.testimony-name{font-weight:700;margin:.75rem 0 0;overflow-wrap:anywhere}
.testimony-card .testimony-story{padding:0;min-width:0}
.testimony-story blockquote{margin:1rem 0;font-style:italic;font-size:1.125rem;line-height:1.8}
.testimony-story blockquote p{margin:0;overflow-wrap:anywhere}
@media(max-width:540px){.testimony-card{grid-template-columns:90px minmax(0,1fr);gap:1rem;padding:1rem}.testimony-card .testimony-portrait{width:80px;height:80px}.testimony-name{font-size:.875rem}.testimony-story blockquote{font-size:1rem}}


/* Raised service cards */
:is(.service-cards,.announcement-cards){gap:2rem;padding-block:.5rem 1.5rem}
:is(.service-cards,.announcement-cards) .card{background:#fff;border:1px solid rgba(16,46,64,.09);border-radius:18px;box-shadow:0 12px 30px rgba(16,46,64,.12);transition:transform .25s ease,box-shadow .25s ease;overflow:hidden}
:is(.service-cards,.announcement-cards) .card:hover,:is(.service-cards,.announcement-cards) .card:focus-within{transform:translateY(-6px);box-shadow:0 20px 38px rgba(16,46,64,.18)}
@media(prefers-reduced-motion:reduce){:is(.service-cards,.announcement-cards) .card{transition:none}:is(.service-cards,.announcement-cards) .card:hover,:is(.service-cards,.announcement-cards) .card:focus-within{transform:none}}


.belief-statement{padding:1.25rem 0;border-bottom:1px solid rgba(16,46,64,.12)}
.belief-statement>p:first-child{margin-top:0}.belief-references{font-size:.95rem;font-style:normal;margin-bottom:0}


.welcome .split{align-items:center}
.welcome-photo{display:block;width:100%;max-width:360px;height:auto;border-radius:20px;box-shadow:0 16px 40px rgba(16,46,64,.18);margin-inline:auto}
.scroll-reveal{transition:opacity .7s ease,translate .7s ease}
.scroll-reveal-pending{opacity:0;translate:0 18px}
@media(prefers-reduced-motion:reduce){.scroll-reveal{transition:none}.scroll-reveal-pending{opacity:1;translate:none}}
@media print{.scroll-reveal-pending{opacity:1;translate:none}}


/* Separate the homepage contact section from the footer. */
.home main > section:last-child{margin-bottom:clamp(2rem,4vw,3.5rem)}


/* Reversible welcome background trial. */
.welcome-background{background-image:linear-gradient(90deg,rgba(5,24,42,.9),rgba(5,24,42,.55)),url('../images/welcome.jpeg');background-size:cover;background-position:center 65%;color:#fff;min-height:540px;display:flex;align-items:center}
.welcome-background .welcome-copy{max-width:650px}
.welcome-background .eyebrow,.welcome-background .text-link{color:#f3cf7e}
.welcome-background h2{font-size:clamp(2.25rem,4vw,3.6rem)}
.welcome-background .welcome-copy>p:not(.eyebrow){font-size:1.15rem;line-height:1.85}
@media(max-width:600px){.welcome-background{min-height:520px;background-position:center 65%;background-image:linear-gradient(rgba(5,24,42,.78),rgba(5,24,42,.78)),url('../images/welcome.jpeg')}}

/* Consistent separation between homepage sections and the footer. */
.home main > section + section{margin-top:clamp(2rem,4vw,3.5rem)}
.scroll-reveal-enter{animation:section-enter .7s ease both}
@keyframes section-enter{from{opacity:0;translate:0 18px}to{opacity:1;translate:0 0}}
@media(prefers-reduced-motion:reduce){.scroll-reveal-enter{animation:none}}
@media print{.scroll-reveal-enter{animation:none}}


/* Single blue header replaces the repeated top bar. */
.header-band{background:var(--color-secondary);color:#fff}
.header-band .brand,.header-band #main-nav a{color:#fff}
.header-band .brand-logo{border-radius:50%;background:#fff}
.header-band .menu-toggle{background:transparent;color:#fff;border-color:#9daeb8}
.header-band nav .sub-menu{background:var(--color-secondary)}
.header-band :focus-visible{outline-color:var(--color-accent)}
.header-band{border-bottom:1px solid rgba(255,255,255,.18)}


.prayer-dialog{width:min(720px,calc(100% - 2rem));max-height:85vh;max-height:85dvh;border:0;border-radius:18px;padding:clamp(1.25rem,4vw,2.5rem);color:var(--color-text);background:#fff;box-shadow:0 24px 80px rgba(0,0,0,.3);overflow-y:auto}
.prayer-dialog[open]{animation:prayer-popup .35s ease both}
.prayer-dialog::backdrop{background:rgba(5,24,42,.7)}
.prayer-dialog-close{display:block;margin:0 0 1.25rem auto;background:var(--color-secondary);color:#fff;border:0;border-radius:5px;padding:.65rem 1rem;cursor:pointer;min-height:44px}
.prayer-dialog h2{font-size:clamp(1.8rem,4vw,2.5rem)}
.prayer-dialog .way-form{margin-top:1.5rem}
body.prayer-dialog-open{overflow:hidden}
@keyframes prayer-popup{from{opacity:0;transform:translateY(-20px) scale(.98)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.prayer-dialog[open]{animation:none}}


/* Keep editable vision and mission statements italic. */
.vision-mission-page .prose > p{font-style:italic}


/* About text, including future history, stays italic. */
.about-us-page .prose{font-style:normal}.about-us-page .page-content h1,.about-us-page .prose h2,.about-us-page .prose h3,.about-us-page .prose h4,.about-us-page .prose h5,.about-us-page .prose h6{font-style:italic}


.ministry-socials{display:flex;flex-wrap:wrap;gap:.75rem;margin:1.25rem 0;--social-icon-cutout:#fff}
.ministry-socials a{display:inline-flex;align-items:center;gap:.5rem;min-height:44px;padding:.5rem .75rem;border:1px solid currentColor;border-radius:8px;text-decoration:none;font-size:.9rem}
.ministry-socials svg{flex-shrink:0}
.ministry-socials a:hover{text-decoration:underline;text-underline-offset:4px}
.footer .ministry-socials{--social-icon-cutout:var(--color-footer)}


/* Show event posters in full, without cropping their details. */
.event-cards .card img{aspect-ratio:auto;height:auto;object-fit:contain;display:block}


/* Compact event previews retain the complete poster on the detail page. */
.event-cards,.prose .event-cards{grid-template-columns:1fr}
.event-card{display:grid;grid-template-columns:220px minmax(0,1fr);align-items:center;border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 8px 24px rgba(16,46,64,.08)}
.event-poster-link{display:flex;align-items:center;justify-content:center;background:#10202a;padding:.75rem;height:290px}
.event-cards .event-card .event-poster-link img{width:100%;height:100%;object-fit:contain;aspect-ratio:auto}
.event-card .card-body{padding:1.75rem 2rem;min-width:0}
@media(max-width:600px){.event-card{grid-template-columns:1fr}.event-poster-link{height:210px}.event-card .card-body{padding:1.25rem}}


/* Sky-blue band for the homepage sermon library. */
.homepage-sermons{background:#edf6fa;color:#102e40;border-radius:16px;padding-inline:clamp(1.25rem,3vw,2rem)}
.homepage-sermons .empty{color:#173547;border-color:rgba(16,46,64,.3)}
.homepage-sermons .card{background:#fff}

/* Member-library invitation matches the Great Commission background. */
.homepage-sermons .empty{background:var(--color-secondary);color:#fff;border:0;border-radius:10px;padding:1.25rem 1.5rem}
.homepage-sermons .empty a{color:#fff;text-decoration:underline}


/* Ministry cards match the Great Commission blue. */
.ministry-cards{gap:2rem;padding-block:.5rem 1.5rem}
.ministry-cards .card{background:var(--color-secondary);color:#fff;border:1px solid rgba(255,255,255,.15);border-radius:18px;overflow:hidden;box-shadow:0 12px 30px rgba(16,46,64,.18);transition:transform .25s ease,box-shadow .25s ease}
.ministry-cards .card .eyebrow{color:#f3cf7e}
.ministry-cards .card a{color:#fff}
.ministry-cards .card:hover,.ministry-cards .card:focus-within{transform:translateY(-6px);box-shadow:0 20px 38px rgba(16,46,64,.25)}
.ministry-cards .card :focus-visible{outline-color:#f3cf7e}
@media(prefers-reduced-motion:reduce){.ministry-cards .card{transition:none}.ministry-cards .card:hover,.ministry-cards .card:focus-within{transform:none}}


/* Reversible Services background trial. */
.services-background-page main.page-content{width:100%;padding-inline:max(5%,calc((100% - 1200px)/2));background:linear-gradient(rgba(5,20,30,.65),rgba(5,20,30,.75)),url("../images/services-background.jpeg") center 35%/cover no-repeat;color:#fff}
.services-background-page main.page-content>.eyebrow{color:#f3cf7e}
.services-background-page .service-cards .card{color:var(--color-text);background:#fff}


/* Separate Services from the footer, matching homepage section spacing. */
.services-background-page main.page-content{margin-bottom:clamp(2rem,4vw,3.5rem)}


.whatsapp-contact{display:inline-flex;align-items:center;gap:.6rem;min-height:44px}
.whatsapp-contact svg{flex-shrink:0;color:#128c4a}
.footer .whatsapp-contact svg{color:#25d366}


.whatsapp-contact{justify-content:center;min-width:44px;border:1px solid currentColor;border-radius:8px;text-decoration:none}
.whatsapp-contact:hover{background:rgba(37,211,102,.12)}


/* WhatsApp shortcut stays in the bottom-right corner. */
.whatsapp-floating{position:fixed;right:calc(20px + env(safe-area-inset-right,0px));bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:1000;display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:#fff;color:#25843b;box-shadow:0 3px 16px rgba(0,0,0,.16);text-decoration:none}
.whatsapp-floating svg{width:38px;height:38px}
.whatsapp-floating:hover{background:#eaf8ed}
.whatsapp-floating:focus-visible{outline:3px solid #25843b;outline-offset:4px}
body.prayer-dialog-open .whatsapp-floating{visibility:hidden}
@media(max-width:600px){.whatsapp-floating{right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));width:50px;height:50px}.whatsapp-floating svg{width:34px;height:34px}}
@media print{.whatsapp-floating{display:none}}


.email-contact{display:inline-flex;align-items:center;gap:.6rem;min-height:44px;max-width:100%}
.email-contact svg{flex-shrink:0}
.email-contact span{overflow-wrap:anywhere;min-width:0}


/* Keep navigation visible while scrolling. */
.header-band{position:sticky;top:0;z-index:100;box-shadow:0 3px 12px rgba(5,24,42,.12)}
.admin-bar .header-band{top:32px}
html{scroll-padding-top:160px}
@media(max-width:900px){.header-band #main-nav.open{max-height:60vh;max-height:60dvh;overflow-y:auto}}
@media(max-width:782px){.admin-bar .header-band{top:46px}}
@media(max-width:600px){.admin-bar .header-band{top:0}html{scroll-padding-top:200px}}
@media print{.header-band{position:static}}


.giving-methods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;margin-block:1.5rem 2.5rem}
.giving-method{background:#edf6fa;border:1px solid #d6e0e4;border-radius:16px;padding:1.5rem;color:#173547}
.giving-method p{margin-bottom:.5rem}
.giving-account{font-size:clamp(1.1rem,3vw,1.4rem);font-weight:700;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;user-select:all}
@media(max-width:600px){.giving-methods{grid-template-columns:1fr}}


.giving-logo{height:88px;display:flex;align-items:center;margin-bottom:1.25rem}
.giving-logo img{display:block;width:auto;height:auto;max-width:180px;max-height:80px;object-fit:contain}


/* Reversible giving background trial: retain a legible payment area. */
.giving-background-page main.page-content{position:relative;isolation:isolate;width:100%;padding-inline:max(5%,calc((100% - 1200px)/2));background:#edf6fa;margin-bottom:clamp(2rem,4vw,3.5rem)}
.giving-background-page main.page-content::before{content:"";position:absolute;z-index:-1;inset:0 0 auto;height:650px;max-height:100%;background:linear-gradient(to bottom,rgba(237,246,250,.76),rgba(237,246,250,.83) 65%,#edf6fa),url("../images/giving-background.jpeg") center center/cover no-repeat;pointer-events:none}
.giving-background-page .giving-method{background:#fff;box-shadow:0 8px 24px rgba(16,46,64,.1)}


/* Brand colours in the Contact Us page content. */
.contact-brand-colors main .ministry-socials a[href*="youtube.com"] svg{color:#ff0000}
.contact-brand-colors main .ministry-socials a[href*="instagram.com"] svg{color:#fff;background:radial-gradient(circle at 30% 100%,#feda75 0%,#fa7e1e 25%,#d62976 50%,#962fbf 75%,#4f5bd5 100%);border-radius:6px;padding:2px;width:28px;height:28px}
.contact-brand-colors main .ministry-socials a[href*="x.com"] svg{color:#000}
.email-contact .gmail-brand-icon{color:inherit}

.baptism-gallery .gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;margin:1.5rem 0}
.baptism-gallery .gallery-item{float:none!important;width:auto!important;max-width:none!important;margin:0!important;background:#edf6fa;border-radius:14px;overflow:hidden;align-self:start}
.baptism-gallery .gallery img{display:block;width:100%;height:auto;border:0!important}
.baptism-gallery .gallery-caption{padding:.8rem 1rem;font-size:.9rem;color:#173547;line-height:1.5}
.baptism-gallery .gallery br{display:none}
@media(max-width:600px){.baptism-gallery .gallery{grid-template-columns:1fr}}

.public-teaching-resource{margin:2.25rem 0;padding:clamp(1.35rem,3vw,2rem);border:1px solid #bfd5e1;border-radius:14px;background:#edf6fa}
.public-teaching-resource h2{font-size:clamp(1.55rem,2.4vw,2.25rem);margin-bottom:.8rem}
.public-teaching-resource .eyebrow{color:#285d78;margin-bottom:.8rem}
.public-teaching-resource p:last-of-type{max-width:760px}

.conference-ministry{margin-top:3.5rem;padding:clamp(1.5rem,4vw,3rem);border-radius:18px;background:#edf6fa}
.conference-ministry>.eyebrow{color:#285d78;margin-bottom:.65rem}
.conference-ministry>h2{max-width:720px;margin-bottom:1rem}
.conference-ministry>p{max-width:780px}
.conference-programme{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin-top:1.75rem}
.conference-programme article,.conference-fourth-day{padding:1.4rem;border-radius:12px;background:#fff;box-shadow:0 8px 20px rgba(16,46,64,.08)}
.conference-programme h3,.conference-fourth-day h3{font-size:1.35rem;margin-bottom:.7rem}
.conference-programme p:last-child,.conference-fourth-day p:last-child{margin-bottom:0}
.programme-day{color:#285d78;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin-bottom:.55rem}
.conference-fourth-day{margin-top:1.25rem;border-left:4px solid #e7ba55}
@media(max-width:850px){.conference-programme{grid-template-columns:1fr}}

/* Deep blue canvas for the conference story, with readable photo captions. */
body.blue-photo-page{background:#102e40;color:#f1f7fa}
.blue-photo-page main.page-content{padding-bottom:4rem}
.blue-photo-page main h1,.blue-photo-page main h2{color:#fff}
.blue-photo-page main>.eyebrow{color:#e7ba55}
.blue-photo-page main p{color:#e2edf3}
.blue-photo-page main p a{color:#9cdefa;text-decoration:underline}
.blue-photo-page main>img{border-radius:14px}
.blue-photo-page .conference-story .gallery-item{background:#edf6fa;box-shadow:0 8px 24px rgba(0,0,0,.18)}
.blue-photo-page .conference-story .gallery-caption{color:#173547}
.blue-photo-page main a:focus-visible{outline-color:#e7ba55}
.blue-photo-page .footer{border-top:1px solid #395363}
@media print{body.blue-photo-page{background:white;color:#173547}.blue-photo-page main h1,.blue-photo-page main h2,.blue-photo-page main p{color:#173547}}

/* Gentle slide for photographs whenever they enter the viewport. */
.photo-reveal.scroll-reveal{transition:opacity .65s ease,translate .65s ease;transition-delay:var(--photo-delay,0ms)}
.photo-reveal.scroll-reveal-pending{translate:16px 0}
.photo-reveal.scroll-reveal-enter{animation:photo-slide-in .65s ease both;animation-delay:var(--photo-delay,0ms)}
@keyframes photo-slide-in{from{opacity:0;translate:16px 0}to{opacity:1;translate:0 0}}
@media(prefers-reduced-motion:reduce){.photo-reveal.scroll-reveal,.photo-reveal.scroll-reveal-enter{animation:none;transition:none}.photo-reveal.scroll-reveal-pending{opacity:1;translate:none}}
@media print{.photo-reveal.scroll-reveal-enter{animation:none}.photo-reveal.scroll-reveal-pending{opacity:1;translate:none}}

.pastor-leadership{display:grid;grid-template-columns:minmax(180px,280px) minmax(0,1fr);gap:clamp(1.25rem,3vw,2.5rem);align-items:center;margin:1.5rem 0}
.pastor-leadership figure{margin:0}
.pastor-leadership .pastor-leadership-photo{display:block;width:100%;height:auto;border-radius:14px}
.pastor-leadership figcaption{font-size:.9rem;line-height:1.5;margin-top:.65rem;color:#173547}
.pastor-leadership-copy p{margin:0}
@media(max-width:600px){.pastor-leadership{grid-template-columns:1fr}.pastor-leadership figure{max-width:320px;width:100%;margin-inline:auto}}

/* Conference photography: compact preview and uncropped, responsive photo story. */
.conference-feature{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,4vw,3rem);align-items:center;background:#edf6fa;border-radius:16px;padding:clamp(1.25rem,3vw,2.5rem)}
.conference-preview{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.conference-preview img{width:100%;height:145px;object-fit:cover;border-radius:10px;display:block}
.conference-preview img:first-child{grid-column:1/-1;height:auto;object-fit:contain}
.conference-copy h2{margin-top:.4rem}
.conference-story .gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin:1.5rem 0 3rem}
.conference-story .gallery-item{float:none!important;width:auto!important;max-width:none!important;margin:0!important;padding:0;background:#edf6fa;border-radius:12px;overflow:hidden;align-self:start}
.conference-story .gallery img{display:block;width:100%;height:auto;border:0!important}
.conference-story .gallery-caption{font-size:.9rem;line-height:1.5;padding:.7rem 1rem;color:#173547;margin:0}
.conference-story .gallery a:focus-visible{outline:3px solid #e7ba55;outline-offset:-3px;display:block}
.conference-story .gallery br{display:none}
@media(max-width:760px){.conference-feature{grid-template-columns:1fr}.conference-preview img:first-child{height:auto}.conference-preview img{height:120px}.conference-story .gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}}
@media(max-width:420px){.conference-story .gallery{grid-template-columns:1fr}}

