
:root{--navy:#0b1421;--ink:#182435;--gold:#c5a36a;--cream:#f5f2ec;--muted:#aeb6bc}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:16px/1.6 'DM Sans',sans-serif;color:var(--ink);background:var(--cream)}a{color:inherit;text-decoration:none}button{font:inherit}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:400;line-height:1.12}h1{font-size:clamp(3.6rem,8vw,7.8rem);letter-spacing:-.055em;max-width:960px;margin:0 0 30px}h2{font-size:clamp(2.6rem,5vw,5rem);letter-spacing:-.045em}h3{font-size:2rem;letter-spacing:-.025em}.wrap{width:min(1320px,calc(100% - 64px));margin:auto}.eyebrow{text-transform:uppercase;letter-spacing:.19em;font-weight:700;font-size:.78rem;color:var(--gold);margin-bottom:26px}.site-header{position:absolute;z-index:5;top:0;left:0;width:100%;color:white;border-bottom:1px solid #ffffff2c}.header-inner{height:92px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:13px;font-size:.87rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;line-height:1.15}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--gold);border-radius:50%;color:var(--gold);font-family:Georgia,serif;font-size:1.6rem;font-weight:400;letter-spacing:-.12em;padding-right:5px}.desktop-nav{display:flex;gap:34px;align-items:center;font-size:.86rem;font-weight:600}.desktop-nav a:hover,.footer-links a:hover{color:var(--gold)}.nav-cta{border:1px solid #d9c098;padding:11px 22px}.menu-button{display:none;background:none;color:white;border:0;font-size:1.7rem;cursor:pointer}.mobile-nav{display:none}.hero{position:relative;min-height:780px;height: min(900px,100svh);display:flex;align-items:center;color:white;background:linear-gradient(90deg,rgba(7,17,29,.94) 0%,rgba(7,17,29,.76) 40%,rgba(7,17,29,.32) 100%),url('/media/crusade-stage.jpeg') center/cover no-repeat,var(--navy)}.hero-content{position:relative;padding-top:110px}.hero .eyebrow{color:#e0bd7c}.hero-lead{font-size:clamp(1.1rem,1.6vw,1.35rem);max-width:620px;color:#e3e4e2;margin-bottom:42px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:15px 28px;font-weight:700;font-size:.88rem;letter-spacing:.035em;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-gold{background:var(--gold);color:var(--navy)}.button-outline{border:1px solid #ffffffa6;color:white}.hero-bottom{position:absolute;bottom:34px;left:0;width:100%;color:#cbd1d1;font-size:.75rem;text-transform:uppercase;letter-spacing:.16em}.hero-bottom .wrap{display:flex;justify-content:space-between;border-top:1px solid #ffffff50;padding-top:20px}.section{padding:120px 0}.intro-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:10vw;align-items:start}.intro-grid h2{margin-bottom:0}.intro-copy{font-size:1.2rem;max-width:690px;color:#4c5661}.intro-copy p{margin-bottom:25px}.line-link{display:inline-block;border-bottom:1px solid var(--gold);padding-bottom:7px;font-size:.85rem;text-transform:uppercase;letter-spacing:.13em;font-weight:700}.mission{background:var(--navy);color:white}.mission-head{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:56px}.mission-head h2{max-width:690px;margin:0}.mission-head p{max-width:340px;color:#b4bdc5;margin:0}.pillars{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #ffffff38}.pillar{padding:46px 44px 30px 0;border-right:1px solid #ffffff38}.pillar:not(:first-child){padding-left:44px}.pillar:last-child{border-right:0}.pillar-number{color:var(--gold);font-size:.82rem;letter-spacing:.16em;margin-bottom:68px}.pillar h3{margin-bottom:20px}.pillar p{color:#b9c1c9;max-width:340px}.quote{background:#132337;color:white;text-align:center;padding:110px 0}.quote blockquote{font-family:'Playfair Display',Georgia,serif;font-size:clamp(2.5rem,5vw,5rem);line-height:1.23;letter-spacing:-.04em;max-width:1030px;margin:0 auto 25px}.quote span{color:var(--gold)}.quote .eyebrow{margin:0}.leadership{display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:center}.leader-frame{min-height:480px;background:radial-gradient(circle at 65% 25%,#b38d56 0%,#344152 34%,#0b1421 75%);display:flex;align-items:end;padding:35px;position:relative;overflow:hidden}.leader-frame:before{content:"P & P";font-family:Georgia,serif;font-size:clamp(7rem,16vw,15rem);line-height:.8;letter-spacing:-.15em;color:#ffffff12;position:absolute;right:6%;top:28%}.leader-frame span{position:relative;color:#d9c193;text-transform:uppercase;letter-spacing:.17em;font-size:.8rem}.leadership p{font-size:1.12rem;color:#56616b;max-width:540px}.closing{background:#0b1421;color:white;padding:105px 0}.closing-inner{display:flex;justify-content:space-between;gap:40px;align-items:end}.closing h2{max-width:760px;margin:0}.closing p{color:#b9c1c9;max-width:350px}.footer{background:#08111d;color:#aeb6bc;padding:42px 0}.footer-inner{display:flex;justify-content:space-between;gap:30px;align-items:center;font-size:.82rem}.footer .brand{color:white}.footer-links{display:flex;gap:24px}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:4px}@media(max-width:800px){.wrap{width:min(100% - 40px,1320px)}.header-inner{height:76px}.desktop-nav{display:none}.menu-button{display:block}.mobile-nav.open{display:flex;position:absolute;top:76px;left:0;width:100%;background:#0b1421;padding:25px 20px;flex-direction:column;gap:20px;border-bottom:1px solid #ffffff3a}.hero{min-height:700px;height:90svh;background-position:62% center}.hero-content{padding-top:65px}.hero-bottom{display:none}.section{padding:80px 0}.intro-grid,.leadership{grid-template-columns:1fr;gap:35px}.mission-head{display:block}.mission-head p{margin-top:25px}.pillars{grid-template-columns:1fr}.pillar,.pillar:not(:first-child){padding:28px 0;border-right:0;border-bottom:1px solid #ffffff38}.pillar-number{margin-bottom:28px}.quote,.closing{padding:80px 0}.leader-frame{min-height:350px}.closing-inner{display:block}.closing p{margin:25px 0}.footer-inner{flex-direction:column;align-items:start}}@media(max-width:480px){h1{font-size:3.35rem}.brand{font-size:.73rem}.brand-mark{width:36px;height:36px}.hero-actions{flex-direction:column;align-items:stretch}.button{width:100%}.hero{min-height:710px}}

.page-hero{background:linear-gradient(90deg,rgba(7,17,29,.96),rgba(7,17,29,.66)),url('/media/crusade-stage.jpeg') center/cover;min-height:440px;color:white;padding:180px 0 75px}.page-hero h1{font-size:clamp(3.4rem,7vw,6rem);margin-bottom:0}.about-content{max-width:900px}.about-section{padding:100px 0;border-bottom:1px solid #d2c9b8}.about-section:last-child{border:0}.about-section h2{margin-bottom:35px}.about-section h3{font-size:2rem;margin:45px 0 20px}.about-section p{font-size:1.12rem;color:#485460;margin-bottom:22px}.about-section .lead{font-size:1.4rem;color:var(--ink)}.about-dark{background:var(--navy);color:white}.about-dark p{color:#c5cbd0}.about-columns{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.about-columns h2{font-size:clamp(2.5rem,4vw,4rem)}@media(max-width:800px){.page-hero{min-height:350px;padding:145px 0 65px}.about-section{padding:70px 0}.about-columns{grid-template-columns:1fr;gap:40px}}
.leader-photo{height:520px;overflow:hidden;background:#182435}.leader-photo img{display:block;width:140%;max-width:none;height:100%;object-fit:cover;object-position:left center}.moments{background:#f5f2ec}.moments-head{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:45px}.moments-head h2{max-width:680px;margin:0}.moments-head p:last-child{max-width:350px;color:#56616b}.moments-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 18px}.moments-grid figure{margin:0;min-width:0}.moments-grid img{display:block;width:100%;height:340px;object-fit:cover}.moments-grid figcaption{font-size:.8rem;text-transform:uppercase;letter-spacing:.12em;font-weight:700;color:#5c6670;padding-top:14px}.film{display:grid;grid-template-columns:.65fr 1.35fr;gap:6vw;align-items:center;margin-top:90px;padding-top:55px;border-top:1px solid #c9c0b1}.film h3{margin:0 0 20px}.film p:not(.eyebrow){color:#56616b}.film video{display:block;width:100%;max-height:540px;background:#101923}.about-portrait{float:right;width:38%;margin:0 0 30px 40px}.about-portrait{overflow:hidden}.about-portrait img{display:block;width:140%;max-width:none;height:430px;object-fit:cover;object-position:left center}.about-portrait figcaption{font-size:.82rem;color:#6d7780;margin-top:9px}.about-portrait+.lead{margin-top:0}@media(max-width:1000px){.moments-grid{grid-template-columns:1fr 1fr}.moments-grid img{height:300px}}@media(max-width:800px){.leader-photo{height:430px}.moments-head{display:block}.moments-head p:last-child{margin-top:25px}.film{grid-template-columns:1fr;gap:22px;margin-top:65px}.about-portrait{width:42%}}@media(max-width:600px){.moments-grid{grid-template-columns:1fr}.moments-grid img{height:260px}.leader-photo{height:370px}.about-portrait{float:none;width:100%;margin:0 0 30px}.about-portrait img{height:370px;object-position:31% 45%}}
/* Contact */
.contact-intro{background:var(--navy);color:#fff;padding:180px 0 92px}.contact-intro-inner{max-width:840px}.contact-intro h1{font-size:clamp(3.6rem,8vw,7rem);margin-bottom:22px}.contact-intro p:not(.eyebrow){font-size:1.2rem;color:#c8d0d4;max-width:620px}.contact-section{padding:100px 0 130px}.contact-layout{display:grid;grid-template-columns:minmax(250px,.8fr) minmax(420px,1.2fr);gap:clamp(48px,8vw,130px);align-items:start}.contact-aside h2{font-size:clamp(2.4rem,4vw,4rem);margin-bottom:28px}.contact-aside>p:not(.eyebrow){font-size:1.08rem;color:#58616c}.contact-rule{height:1px;background:#c8bca8;margin:36px 0}.contact-aside .contact-small{font-size:.88rem!important;letter-spacing:.03em}.contact-card{background:#fff;padding:clamp(28px,4vw,58px);box-shadow:0 24px 70px #0b142111}.field{display:flex;flex-direction:column;gap:9px;margin-bottom:24px}.field label{font-size:.9rem;font-weight:700;color:#263343}.field label span{color:#957348}.field input,.field select,.field textarea{width:100%;border:1px solid #c8cbd0;border-radius:0;padding:14px 16px;background:#fff;color:var(--ink);font:inherit;min-height:54px}.field textarea{resize:vertical;min-height:160px}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid #927342;outline-offset:2px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-subhead{font-family:'Playfair Display',Georgia,serif;font-size:1.55rem;margin:8px 0 22px}.invitation-fields[hidden]{display:none}.form-note{font-size:.84rem;color:#58616c;line-height:1.6;margin:0 0 24px}.contact-honey{position:absolute;left:-9999px;width:1px;height:1px}.contact-submit{border:0;cursor:pointer}.thank-you{min-height:80vh;display:flex;align-items:center}.thank-you .button{margin-top:24px}@media(max-width:800px){.contact-intro{padding:150px 0 70px}.contact-section{padding:64px 0 90px}.contact-layout{grid-template-columns:1fr;gap:36px}.contact-aside h2{max-width:600px}.form-grid{grid-template-columns:1fr;gap:0}}

.contact-status{min-height:1.6em;margin:18px 0 0;font-size:.95rem;font-weight:600}.contact-status.success{color:#285b42}.contact-status.error{color:#9f352b}.contact-submit:disabled{opacity:.65;cursor:wait}

/* Giving */
.giving-intro{min-height:600px;display:flex;align-items:end;background:linear-gradient(90deg,rgba(7,17,29,.95),rgba(7,17,29,.75) 58%,rgba(7,17,29,.35)),url('/media/prayer-gathering.jpeg') center/cover;color:white;padding:190px 0 100px}.giving-intro h1{max-width:850px}.giving-intro p:not(.eyebrow){font-size:1.2rem;color:#d8dfe1;max-width:630px}.giving-section{padding:105px 0}.giving-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,9vw,140px);align-items:center}.giving-grid h2{margin-bottom:30px}.giving-grid p:not(.eyebrow){font-size:1.12rem;color:#4c5661}.giving-panel{background:#fff;padding:clamp(34px,5vw,70px);border-top:4px solid var(--gold);box-shadow:0 24px 70px #0b142111}.giving-panel h3{margin-bottom:25px}.giving-panel p{margin-bottom:30px}.giving-note{font-size:.9rem!important;color:#63707a!important;margin:26px 0 0!important}.giving-close{background:var(--navy);color:white;padding:95px 0}.giving-close h2{max-width:750px;margin:0 0 28px}.giving-close p:not(.eyebrow){color:#c4ccd1;max-width:620px;font-size:1.1rem}@media(max-width:800px){.giving-intro{min-height:520px;padding:160px 0 75px}.giving-section{padding:75px 0}.giving-grid{grid-template-columns:1fr}.giving-close{padding:75px 0}}

.bank-details{margin:30px 0 0;border-top:1px solid #d8d1c7}.bank-details div{display:grid;grid-template-columns:130px 1fr;gap:18px;padding:13px 0;border-bottom:1px solid #e3ded6}.bank-details dt{font-size:.9rem;color:#56616b}.bank-details dd{margin:0;font-weight:700;overflow-wrap:anywhere}.giving-note a{text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:4px}@media(max-width:480px){.bank-details div{grid-template-columns:1fr;gap:2px}}

/* Transparent gold dove supplied for the ministry brand */
.brand-mark{position:relative;display:block;flex:none;width:48px;height:48px;border:0;border-radius:0;padding:0;overflow:visible}
.brand-mark img{display:block;width:100%;height:100%;object-fit:contain;position:static;max-width:100%;transform:none;filter:none;mix-blend-mode:normal}
@media(max-width:480px){.brand-mark{width:42px;height:42px}}

.footer-social{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.footer-social span{color:#d4b67d;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem}.footer-social a:hover,.contact-social a:hover{color:var(--gold)}.contact-social{display:flex;gap:20px;flex-wrap:wrap;align-items:center;margin-top:28px}.contact-social .eyebrow{flex-basis:100%;margin:0}.contact-social a{text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:5px}@media(max-width:1100px){.footer-inner{flex-wrap:wrap}}

.response-feature{margin:40px 0 0}.response-feature img{display:block;width:100%;height:auto;max-height:640px;object-fit:cover}.response-feature figcaption{padding-top:14px;text-transform:uppercase;letter-spacing:.12em;font-size:.8rem;font-weight:700;color:#5c6670}.response-feature figcaption span{font-weight:500}@media(max-width:600px){.response-feature{margin-top:32px}.response-feature img{height:auto;max-height:none}.response-feature figcaption span{display:block;margin-top:3px}}

/* Desktop section introductions */
@media(min-width:801px){
  .mission-head,.moments-head{display:block}
  .mission-head h2{max-width:1000px}
  .mission-head>p,.moments-head>p:last-child{max-width:650px;margin:24px 0 0;font-size:1.125rem}
}

/* Copy banking details */
.bank-details dd{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}.bank-value{min-width:0;overflow-wrap:anywhere}.bank-copy{flex:none;display:inline-flex;align-items:center;justify-content:center;min-width:74px;min-height:44px;padding:8px 10px;border:1px solid #c5a36a;border-radius:0;background:transparent;color:var(--navy);font-size:.875rem;font-weight:600;cursor:pointer}.bank-copy:hover,.bank-copy[data-copied]{background:#f5f2ec}.bank-copy:focus-visible{outline:2px solid var(--navy);outline-offset:3px}.bank-copy:disabled{cursor:wait}.bank-copy-status{min-height:1.5em;margin:12px 0 0;font-size:.875rem;color:#56616b}

/* Desktop section label readability */
@media(min-width:801px){#mission .mission-head .eyebrow,#moments .moments-head .eyebrow,#moments .film .eyebrow,.quote .eyebrow,#connect .eyebrow{font-size:.9375rem}}

/* Walvis Bay photo pair */
.walvis-pair{margin-top:40px}.walvis-pair figure:first-child img{object-position:center bottom}.walvis-pair figure:last-child img{object-position:center 85%}@media(max-width:800px){.walvis-pair{grid-template-columns:1fr}}@media(max-width:600px){.walvis-pair{margin-top:32px}}

/* Desktop photo framing: show more of the altar-call scene */
@media(min-width:801px){.walvis-pair img{height:auto;aspect-ratio:3/2;object-fit:cover}}

/* Desktop contact introduction */
@media(min-width:801px){#connect .closing-inner{display:block}#connect .closing-inner>div:last-child>p{max-width:650px;margin:28px 0;font-size:1.125rem;line-height:1.6}}

/* Desktop labels match the About section labels */
@media(min-width:801px){.giving-intro .eyebrow,.giving-grid>div:first-child>.eyebrow,.giving-close .eyebrow,.page-hero .eyebrow,#top .hero .eyebrow,#mission .mission-head .eyebrow,#mission .pillar-number,#moments .moments-head .eyebrow,.quote .eyebrow,.leadership .eyebrow,#connect .eyebrow{font-size:1.12rem}}

/* Desktop contact alignment and label size */
@media(min-width:801px){.contact-intro .contact-intro-inner{max-width:none}.contact-intro .eyebrow,.contact-aside>.eyebrow{font-size:1.12rem}}

/* Couple portrait framing across desktop and mobile */
.leader-photo img,.about-portrait img{width:125%;object-position:left center}

/* Desktop video introduction readability */
@media(min-width:801px){.film .eyebrow{font-size:1.12rem}.film h3{font-size:2.5rem}.film p:not(.eyebrow){font-size:1.125rem}}

/* Mobile leadership: introduction, portrait, then description */
@media(max-width:800px){.leadership{gap:28px}.leadership-copy{display:contents}.leadership-heading{order:-1}.leadership-heading h2{margin-bottom:0}.leadership-body{order:1}}
