
:root{
  --forest:#132b24;
  --forest2:#1c3d33;
  --ink:#16231f;
  --paper:#f7f4ed;
  --warm:#ebe5d8;
  --cream:#fffdf8;
  --lime:#d9e278;
  --gold:#cdb06d;
  --muted:#6d7772;
  --line:rgba(22,35,31,.16);
  --white:#fff;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans","Noto Sans KR",sans-serif;line-height:1.7}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
.shell{width:min(1240px,calc(100% - 48px));margin:0 auto}
.site-header{position:fixed;z-index:100;top:0;left:0;right:0;background:rgba(247,244,237,.91);backdrop-filter:blur(16px);border-bottom:1px solid rgba(22,35,31,.09)}
.nav{height:82px;display:flex;align-items:center;justify-content:space-between}
.logo{display:flex;flex-direction:column;line-height:1}
.logo-name{font:700 15px/1 "Manrope",sans-serif;letter-spacing:.12em}
.logo-sub{font:500 9px/1 "Manrope",sans-serif;letter-spacing:.23em;margin-top:7px;color:#6c7771}
.nav-links{display:flex;align-items:center;gap:27px;font-size:13px;font-weight:600}
.nav-links>a:not(.give-small){opacity:.78}.nav-links>a:hover{opacity:1}
.language{background:none;border:0;cursor:pointer;color:var(--ink);font-size:12px;padding:8px}
.give-small{background:var(--forest);color:#fff;padding:11px 18px;letter-spacing:.1em}
.mobile-menu{display:none;background:transparent;border:0;font-size:23px}
.hero{padding-top:82px;background:var(--paper)}
.hero-grid{min-height:690px;display:grid;grid-template-columns:1.15fr .85fr;align-items:stretch}
.hero-copy{padding:100px 60px 80px 0;display:flex;flex-direction:column;justify-content:center}
.kicker,.section-tag{font-size:11px;font-weight:700;letter-spacing:.22em}
.kicker{color:#647069;margin:0 0 28px}
.brandline{font-size:12px;letter-spacing:.12em;font-weight:700;color:var(--forest);margin:0 0 25px}
.brandline span{font-weight:400;color:#7b8580}
h1,h2,.manifesto blockquote{font-family:"Newsreader","Noto Sans KR",serif;font-weight:400}
h1{font-size:clamp(54px,6.2vw,92px);line-height:.98;letter-spacing:-.035em;margin:0;max-width:820px}
.lede{font-size:20px;max-width:580px;color:#46524d;margin:28px 0 0}
.hero-actions{display:flex;gap:26px;align-items:center;margin-top:40px}
.button{font-size:13px;font-weight:700}.button.solid{background:var(--forest);color:white;padding:14px 22px}.button.text{border-bottom:1px solid var(--ink);padding-bottom:4px}
.portrait-wrap{position:relative;overflow:hidden;background:#cbd2cf}
.portrait-wrap img{width:100%;height:100%;object-fit:cover;object-position:center 36%}
.portrait-label{position:absolute;bottom:22px;left:22px;right:22px;display:flex;justify-content:space-between;background:rgba(19,43,36,.84);color:#fff;padding:13px 15px;font-size:9px;letter-spacing:.16em;backdrop-filter:blur(8px)}
.hero-strip{display:grid;grid-template-columns:1fr 1.1fr 1fr;height:240px}
.hero-strip figure{margin:0;overflow:hidden}.hero-strip img{width:100%;height:100%;object-fit:cover}
.hero-strip figure:nth-child(1) img{object-position:center 48%}
.hero-strip figure:nth-child(2) img{object-position:center 45%}
.hero-strip figure:nth-child(3) img{object-position:center 48%}
.manifesto{background:var(--forest);color:white;padding:95px 0}
.manifesto-inner{display:grid;grid-template-columns:220px 1fr;gap:70px}
.manifesto .section-tag{color:var(--lime);margin:13px 0 0}
.manifesto blockquote{font-size:clamp(34px,4.6vw,62px);line-height:1.13;letter-spacing:-.02em;margin:0;max-width:950px}
.section{padding:120px 0}
.section-tag{color:var(--gold);margin:0 0 24px}.section-tag.dark{color:#6e7973}
h2{font-size:clamp(43px,5vw,68px);line-height:1.05;letter-spacing:-.025em;margin:0}
.story-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:95px;align-items:start}
.story-heading{position:sticky;top:120px}
.story-photo{margin-top:50px;height:390px;overflow:hidden}.story-photo img{width:100%;height:100%;object-fit:cover;object-position:center 46%}
.story-body{font-size:18px;padding-top:42px}.story-body p{margin:0 0 27px}.story-body .dropcap:first-letter{font-family:"Newsreader";font-size:66px;float:left;line-height:.78;padding-right:10px;color:var(--forest)}
.story-next{display:inline-block;margin-top:18px;font-weight:700;font-size:13px;border-bottom:1px solid var(--ink)}
.journey{background:#eae7de}
.journey h2{margin-bottom:60px}
.timeline{border-top:1px solid var(--line)}
.timeline article{display:grid;grid-template-columns:150px 1fr 1.25fr;gap:35px;padding:30px 0;border-bottom:1px solid var(--line);align-items:start}
.year{font-size:11px;font-weight:700;letter-spacing:.18em;color:#738078}
.timeline h3{font:500 25px/1.25 "Newsreader","Noto Sans KR",serif;margin:0}
.timeline p{margin:0;color:#59645f;max-width:500px}
.timeline .future{background:var(--forest);color:white;margin:20px -24px 0;padding:32px 24px;border-bottom:0}
.timeline .future .year{color:var(--lime)}.timeline .future p{color:rgba(255,255,255,.72)}
.africa-story{display:grid;grid-template-columns:1.15fr .85fr;min-height:720px;background:#1a352d;color:white}
.africa-image{min-height:720px}.africa-image img{width:100%;height:100%;object-fit:cover;object-position:center 44%}
.africa-copy{padding:95px 8vw 85px 70px;align-self:center}
.africa-copy h2{font-size:clamp(44px,5vw,67px);margin-bottom:34px}.africa-copy p{font-size:17px;color:rgba(255,255,255,.76)}
.africa-copy .vision{font-family:"Newsreader";font-size:26px;line-height:1.3;color:var(--lime);margin-top:35px}
.section-intro{display:grid;grid-template-columns:1fr 330px;gap:80px;align-items:end;margin-bottom:60px}.intro-side{color:#66716c;margin:0}
.mission-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.mission-card{background:var(--cream);border:1px solid rgba(22,35,31,.07)}
.mission-card img{width:100%;height:330px;object-fit:cover}
.mission-card:nth-child(1) img{object-position:center 47%}.mission-card:nth-child(2) img{object-position:center 45%}.mission-card:nth-child(3) img{object-position:center 48%}
.card-copy{padding:28px}.card-copy>span,.giving-kicker{font-size:10px;font-weight:700;letter-spacing:.18em;color:#718078}
.card-copy h3{font:500 28px/1.15 "Newsreader","Noto Sans KR",serif;margin:16px 0 12px}.card-copy p{font-size:14px;color:#5d6963;margin:0}
.gallery-band{background:var(--forest);padding:24px;overflow:hidden}.gallery-track{display:grid;grid-template-columns:1.1fr .65fr 1.15fr 1fr;gap:14px;height:330px}
.gallery-track figure{margin:0;overflow:hidden}.gallery-track img{width:100%;height:100%;object-fit:cover}.gallery-track .tall img{object-position:center 30%}
.partner{background:var(--forest);color:white}
.partner-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px}.partner-heading{position:sticky;top:125px;align-self:start}
.partner-heading h2{font-size:clamp(48px,5vw,72px);margin-bottom:28px}.partner-heading>p:last-child{color:rgba(255,255,255,.65);max-width:500px}
.partner-options{border-top:1px solid rgba(255,255,255,.18)}
.partner-options article{padding:35px 0;border-bottom:1px solid rgba(255,255,255,.18)}
.partner-options span{font-size:10px;letter-spacing:.2em;color:var(--lime);font-weight:700}
.partner-options h3{font:500 31px/1.15 "Newsreader","Noto Sans KR",serif;margin:10px 0}
.partner-options p{color:rgba(255,255,255,.66);margin:0}
.give{background:var(--warm)}
.give-layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:95px;align-items:start}.give-layout>div:first-child>p:last-child{color:#616c67;max-width:480px}
.giving-panel{border-top:1px solid var(--line)}
.giving-option{display:flex;justify-content:space-between;gap:35px;padding:34px 0;border-bottom:1px solid var(--line);align-items:center}
.giving-option h3{font:500 29px/1.2 "Newsreader","Noto Sans KR",serif;margin:8px 0}.giving-option p{margin:0;color:#66716c;font-size:14px;max-width:560px}
.circle-arrow{width:56px;height:56px;display:flex;align-items:center;justify-content:center;border:1px solid var(--ink);border-radius:50%;font-size:24px;flex:0 0 auto}
.circle-arrow:not(.disabled):hover{background:var(--forest);color:white}.disabled{opacity:.25;pointer-events:none}.giving-note{font-size:11px;color:#7d8682;margin-top:16px}
.updates-grid{display:grid;grid-template-columns:1.35fr .8fr .8fr;gap:18px}.update-card{background:#fff}.update-card img{width:100%;height:280px;object-fit:cover}.update-card.featured img{height:380px}.update-card>div{padding:23px}
.update-card span{font-size:9px;letter-spacing:.18em;color:#6e7b75;font-weight:700}.update-card h3{font:500 25px/1.2 "Newsreader","Noto Sans KR",serif;margin:10px 0 0}.featured h3{font-size:31px}
.subscribe{background:#dfe6a0;padding:85px 0}.subscribe-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:end}.subscribe .section-tag{color:#455047}.subscribe h2{font-size:clamp(38px,4vw,56px)}
.subscribe form label{font-size:11px;letter-spacing:.12em;font-weight:700}.form-row{display:flex;margin-top:10px;border-bottom:1px solid var(--ink)}.form-row input{flex:1;background:transparent;border:0;outline:0;padding:13px 0;font-size:18px}.form-row button{border:0;background:transparent;font-size:29px;cursor:pointer}.form-note{font-size:10px;opacity:.65;margin-top:10px}
footer{background:#0f211b;color:white;padding:75px 0 30px}.footer-main{display:grid;grid-template-columns:2fr 1fr 1.35fr 1fr;gap:45px}.footer-brand{display:flex;flex-direction:column}.footer-brand>span{font-size:16px;font-weight:700;letter-spacing:.11em}.footer-brand>strong{font-size:10px;letter-spacing:.22em;color:#a9b5af;margin-top:7px}.footer-brand p{font-family:"Newsreader";font-size:20px;max-width:320px;color:rgba(255,255,255,.7)}
.footer-label{font-size:9px;letter-spacing:.19em;color:#99a7a0;font-weight:700}.footer-main p{font-size:13px;color:rgba(255,255,255,.7)}.footer-main a:hover{color:var(--lime)}
.footer-legal{border-top:1px solid rgba(255,255,255,.14);margin-top:50px;padding-top:25px;display:flex;justify-content:space-between;gap:50px;font-size:10px;color:rgba(255,255,255,.45)}#charityLegal{max-width:650px;text-align:right}
@media(max-width:950px){
  .nav-links{display:none;position:absolute;top:82px;left:0;right:0;background:var(--paper);padding:28px 24px;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}
  .nav-links.open{display:flex}.mobile-menu{display:block}
  .hero-grid{grid-template-columns:1fr;min-height:auto}.hero-copy{padding:80px 0 60px}.portrait-wrap{height:600px}
  .hero-strip{height:180px}.manifesto-inner{grid-template-columns:1fr;gap:25px}
  .story-layout,.partner-grid,.give-layout{grid-template-columns:1fr;gap:55px}.story-heading,.partner-heading{position:static}.story-photo{max-width:520px}
  .africa-story{grid-template-columns:1fr}.africa-image{min-height:500px}.africa-copy{padding:70px 35px}
  .section-intro{grid-template-columns:1fr;gap:25px}.mission-cards{grid-template-columns:1fr}.mission-card img{height:430px}
  .gallery-track{grid-template-columns:1fr 1fr;height:auto}.gallery-track figure{height:280px}
  .updates-grid{grid-template-columns:1fr 1fr}.update-card.featured{grid-column:1/-1}
  .subscribe-grid,.footer-main{grid-template-columns:1fr 1fr}.footer-legal{flex-direction:column}#charityLegal{text-align:left}
}
@media(max-width:620px){
  .shell{width:min(100% - 30px,1240px)}.section{padding:85px 0}
  h1{font-size:52px}.lede{font-size:17px}.portrait-wrap{height:470px}
  .hero-strip{grid-template-columns:1fr 1fr}.hero-strip figure:nth-child(3){display:none}
  .timeline article{grid-template-columns:1fr;gap:9px}.timeline .future{margin:18px -12px 0;padding:25px 12px}
  .mission-card img{height:300px}.gallery-track{grid-template-columns:1fr}.gallery-track figure{height:280px}
  .updates-grid{grid-template-columns:1fr}.update-card.featured{grid-column:auto}.update-card.featured img,.update-card img{height:300px}
  .subscribe-grid,.footer-main{grid-template-columns:1fr;gap:35px}.hero-actions{align-items:flex-start;flex-direction:column;gap:18px}
}

.partner-link{display:inline-block;margin-top:16px;color:var(--lime);font-size:12px;font-weight:700;border-bottom:1px solid rgba(217,226,120,.5)}
.inner-page{padding-top:82px}
.inner-hero{background:var(--forest);color:white;padding:110px 0 95px}
.inner-hero h1{font-size:clamp(54px,7vw,94px);max-width:1000px}
.inner-content{background:var(--paper)}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}
.prose-large{font-size:20px;color:#4f5d56;padding-top:42px}
.prayer-list-section{background:#eae7de}
.prayer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(22,35,31,.15);border:1px solid rgba(22,35,31,.15)}
.prayer-grid article{background:var(--paper);padding:32px;min-height:270px}
.prayer-grid article>span,.project-detail>div>span{font-size:10px;letter-spacing:.18em;color:#738078;font-weight:700}
.prayer-grid h3{font:500 29px/1.15 "Newsreader","Noto Sans KR",serif;margin:17px 0 12px}
.prayer-grid p{font-size:14px;color:#5e6964}
.projects-intro{display:grid;grid-template-columns:1fr 1fr;gap:40px 90px;align-items:end;margin-bottom:70px}
.projects-intro>.section-tag{grid-column:1/-1;margin-bottom:0}.projects-intro>p:last-child{color:#65706b;margin:0}
.project-stack{display:flex;flex-direction:column;gap:28px}
.project-detail{display:grid;grid-template-columns:1fr 1fr;background:#fff;min-height:470px}
.project-detail.reverse img{order:2}.project-detail.reverse>div{order:1}
.project-detail img{width:100%;height:100%;min-height:470px;object-fit:cover}
.project-detail>div{padding:58px;align-self:center}
.project-detail h3{font:500 37px/1.08 "Newsreader","Noto Sans KR",serif;margin:14px 0 18px}
.project-detail p,.project-detail li{color:#5d6963}
.project-detail ul{padding-left:18px}
.project-cta{margin-top:90px;background:var(--forest);color:white;padding:60px;display:flex;align-items:center;justify-content:space-between;gap:40px}
.project-cta h2{font-size:42px;max-width:760px}.project-cta .button.solid{background:var(--lime);color:var(--forest);white-space:nowrap}
@media(max-width:950px){
 .two-col,.projects-intro,.project-detail{grid-template-columns:1fr}
 .prayer-grid{grid-template-columns:1fr 1fr}
 .project-detail.reverse img,.project-detail.reverse>div{order:initial}
 .project-cta{flex-direction:column;align-items:flex-start}
}
@media(max-width:620px){
 .prayer-grid{grid-template-columns:1fr}
 .project-detail>div{padding:30px}.project-detail img{min-height:320px}
 .project-cta{padding:35px}.project-cta h2{font-size:34px}
}

.bank-option strong{font-weight:700;color:var(--ink)}.notes-more{margin-top:34px}.update-card p{color:#66716c;font-size:13px;line-height:1.65;margin:12px 0 0}.notes-hero{padding-top:140px;background:var(--warm)}.notes-hero h1{max-width:900px;margin:18px 0 24px}.notes-hero .lede{max-width:720px}.notes-list{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.notes-list .update-card img{height:260px}@media(max-width:950px){.notes-list{grid-template-columns:1fr 1fr}}@media(max-width:620px){.notes-list{grid-template-columns:1fr}.notes-hero{padding-top:100px}}

/* ===== V4.2 refinements ===== */
.hero-title{max-width:700px}
.note-card-link{display:block;color:inherit;height:100%}
.update-card{overflow:hidden;transition:transform .22s ease,box-shadow .22s ease}
.update-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(15,33,27,.08)}
.update-card h3{overflow-wrap:normal;word-break:keep-all}
body[data-lang="ko"] .update-card h3{font-family:"Noto Sans KR",sans-serif;font-weight:600;line-height:1.35;letter-spacing:-.035em}
body[data-lang="ko"] .featured h3{font-size:28px}
.read-note{display:inline-block!important;margin-top:18px;letter-spacing:0!important;font-size:11px!important;color:var(--ink)!important;border-bottom:1px solid currentColor;padding-bottom:2px}

.bank-reveal,.bank-hide{appearance:none;border:1px solid var(--ink);background:transparent;color:var(--ink);padding:10px 14px;font:700 11px/1 "DM Sans","Noto Sans KR",sans-serif;letter-spacing:.04em;cursor:pointer;margin-top:8px}
.bank-hide{border:0;padding:0;margin-top:10px;border-bottom:1px solid currentColor}
.bank-details{margin-top:14px;padding:14px 16px;background:rgba(255,255,255,.35)}
.bank-details[hidden]{display:none!important}

.article-head{padding:145px 0 70px;background:var(--warm)}
.article-head-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:end}
.article-head h1{font-size:clamp(52px,6.2vw,92px);line-height:.98;letter-spacing:-.035em;margin:20px 0 25px;max-width:780px}
.article-head img{width:100%;height:520px;object-fit:cover}
.article-standfirst{font-size:19px;line-height:1.65;max-width:720px;color:#58645f}
.article-body-section{padding:90px 0}
.article-layout{display:grid;grid-template-columns:minmax(0,760px) minmax(270px,1fr);gap:100px;align-items:start}
.article-body{font-size:18px;line-height:1.9}
.article-body p{margin:0 0 28px}
.article-body strong{font-weight:700}
.article-body blockquote{font-family:"Newsreader","Noto Sans KR",serif;font-size:31px;line-height:1.35;margin:48px 0;padding:0 0 0 28px;border-left:3px solid var(--forest);color:var(--forest)}
.article-ko{display:none}
body[data-lang="ko"] .article-en{display:none}
body[data-lang="ko"] .article-ko{display:block;font-family:"Noto Sans KR",sans-serif;word-break:keep-all}
body[data-lang="ko"] .article-head h1{font-family:"Noto Sans KR",sans-serif;font-weight:600;line-height:1.18;letter-spacing:-.05em}
body[data-lang="ko"] .article-body blockquote{font-family:"Noto Sans KR",sans-serif;font-weight:500;word-break:keep-all}
.article-prayer{position:sticky;top:120px;background:#eef0e9;padding:32px}
.article-prayer h2{font:500 30px/1.25 "Newsreader","Noto Sans KR",serif;margin:12px 0 22px}
.bilingual-prayer-list{margin:0;padding-left:20px}
.bilingual-prayer-list li{margin:0 0 14px;color:#53605a}
body[data-lang="ko"] .article-prayer h2,body[data-lang="ko"] .bilingual-prayer-list{font-family:"Noto Sans KR",sans-serif;word-break:keep-all}
.article-back{padding:0 0 90px}
.notes-list .update-card{height:100%}
.notes-list .note-card-link{display:flex;flex-direction:column}
.notes-list .note-card-link>div{flex:1}
@media(max-width:950px){
  .article-head-grid,.article-layout{grid-template-columns:1fr;gap:48px}
  .article-head img{height:440px}
  .article-prayer{position:static}
}
@media(max-width:620px){
  .article-head{padding:105px 0 45px}
  .article-head h1{font-size:48px}
  .article-head img{height:310px}
  .article-body-section{padding:60px 0}
  .article-body{font-size:17px}
  .article-body blockquote{font-size:25px}
  body[data-lang="ko"] .update-card h3{font-size:23px}
}


/* V4.2.2 — Africa to the Nations photo: show more of the full group */
.vision-media {
  background: #ece8de;
  overflow: hidden;
}
.vision-media img {
  object-fit: contain;
  object-position: center center;
  transform: scale(0.94);
  transform-origin: center center;
}
@media (max-width: 900px) {
  .vision-media img {
    transform: none;
    object-fit: contain;
  }
}

/* V5 — Barney & Liby */
.hero-visual img[src*="barney_liby_hero"],
.hero img[src*="barney_liby_hero"] {
  object-position: center 38%;
}
.shared-story-intro {
  margin-top: 1.25rem;
  max-width: 62ch;
}
