@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@400;500;600&display=swap');
:root{--ink:#183c30;--paper:#f8f6ef;--muted:#626e62;--gold:#b87843;--line:#d9dfd3}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.7}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--gold);outline-offset:5px}header{padding:20px 6%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--paper)}.logo{font:35px Georgia;letter-spacing:6px;line-height:1}.logo small{display:block;font:8px 'DM Sans',sans-serif;letter-spacing:2px;margin-top:10px}nav{display:flex;gap:27px;align-items:center;font-size:13px}nav a.active{border-bottom:1px solid var(--ink)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:24px;background:var(--ink);color:white;padding:13px 24px;border:1px solid var(--ink);border-radius:3px;font-size:13px;cursor:pointer}.btn.light{background:transparent;color:var(--ink)}.btn.gold{background:#ddb88a;color:var(--ink);border-color:#ddb88a}.menu{display:none}.eyebrow{text-transform:uppercase;letter-spacing:2.5px;font-size:10px;font-weight:700;color:var(--muted);margin-bottom:22px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:650px}.hero-copy{padding:90px 10% 70px 12%;align-self:center}.hero h1{font:clamp(48px,5.3vw,82px)/1.08 'Playfair Display',Georgia,serif;letter-spacing:-2px;margin:0 0 26px}.hero h1 em{font-weight:400;color:#70816b}.hero p{max-width:440px;color:var(--muted);font-size:16px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.hero-photo{position:relative;min-height:560px;margin:30px 6% 30px 0}.hero-photo img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:center 56%;border-radius:160px 4px 4px 4px}.photo-note{position:absolute;bottom:24px;left:24px;right:24px;color:white;font-size:12px;padding:16px 20px;background:#183c30e8;display:flex;justify-content:space-between}.ribbon{display:flex;justify-content:space-around;gap:20px;padding:24px 6%;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:11px;letter-spacing:1.3px;text-transform:uppercase}.section{padding:85px 7%;max-width:1500px;margin:auto}h2{font:clamp(32px,3.5vw,50px)/1.2 'Playfair Display',Georgia,serif;font-weight:400;margin:0 0 24px}h3{font:30px/1.2 'Playfair Display',Georgia,serif;margin:15px 0}p{color:var(--muted)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:35px}.section-head p{max-width:400px;font-size:14px}.cards{display:grid;grid-template-columns:1fr 1fr;gap:32px}.card{border-bottom:1px solid var(--line);padding-bottom:26px}.card img{width:100%;height:300px;object-fit:cover;border-radius:4px}.card p{max-width:470px;font-size:14px}.textlink{font-size:13px;border-bottom:1px solid #a8b3a0;padding-bottom:6px;display:inline-block}.split{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.split img{width:100%;height:500px;object-fit:cover;border-radius:4px}.dark{background:var(--ink);color:var(--paper)}.dark p,.dark .eyebrow{color:#c1cdbd}.dark .textlink{color:white}.quote{max-width:900px;margin:auto;text-align:center;padding:75px 8%}.quote blockquote{font:36px/1.4 'Playfair Display',Georgia,serif;margin:0 0 20px}.quote small{color:var(--muted)}.thirds{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.thirds article{border-top:1px solid var(--line);padding-top:20px}.thirds h3{font-size:25px}.thirds p{font-size:14px}.number{color:var(--gold);font-size:12px}.cta{padding:60px 7%;background:#e8ecdf;display:flex;align-items:center;justify-content:space-between;gap:30px}.cta h2{font-size:36px;margin-bottom:10px}.cta p{margin:0}footer{background:#102d24;color:#d9e2d6;padding:55px 7% 25px}.foot{display:flex;justify-content:space-between;gap:30px}.foot p{color:#b9c8b6;font-size:13px;max-width:330px}.foot a{font-size:13px}.foot-links{display:flex;gap:65px}.foot-links a{display:block;margin:7px 0}.bottom{margin-top:40px;padding-top:20px;border-top:1px solid #3b5145;color:#a7b9a4;font-size:10px;display:flex;justify-content:space-between}.page-intro{padding:75px 7% 40px;max-width:1000px}.page-intro h1{font:64px/1.1 'Playfair Display',Georgia,serif;margin:0 0 20px}.page-intro p{max-width:640px}.values{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}.values div{padding:22px 0;border-top:1px solid var(--line)}.values h3{font-size:22px}.values p{font-size:12px}.give-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px}.giving{padding:35px;background:white;border:1px solid var(--line);border-radius:6px}.toggle,.amounts{display:flex;gap:10px;margin:16px 0}.toggle button,.amounts button{flex:1;padding:11px;border:1px solid var(--line);background:transparent;border-radius:3px;cursor:pointer}.toggle button.selected,.amounts button.selected{background:var(--ink);color:white}label{display:block;font-size:12px;margin:20px 0 7px}input,select,textarea{width:100%;padding:12px;border:1px solid var(--line);background:white;border-radius:3px;color:var(--ink)}.note{font-size:11px;line-height:1.6}.giving .btn{width:100%;margin-top:22px}.notice{padding:12px;text-align:center;font-size:10px;background:#e8ecdf;letter-spacing:.5px}details{border-bottom:1px solid var(--line);padding:20px 0}summary{cursor:pointer;font-weight:500}details p{font-size:14px}.mobile-only{display:none}@media(max-width:800px){header{padding:19px 6%;flex-wrap:wrap}.logo{font-size:28px}.menu{display:block;background:none;border:1px solid var(--line);padding:7px 12px;color:var(--ink)}nav{display:none;width:100%;padding-top:25px;flex-direction:column;align-items:start;gap:18px}nav.open{display:flex}.hero{grid-template-columns:1fr}.hero-copy{padding:55px 7% 25px}.hero h1{font-size:57px}.hero-photo{height:440px;min-height:0;margin:10px 7% 30px}.hero-photo img{border-radius:100px 3px 3px 3px}.ribbon{flex-wrap:wrap;font-size:9px;gap:12px}.section{padding:55px 7%}.cards,.split,.thirds,.give-layout{grid-template-columns:1fr;gap:35px}.section-head{display:block}.split img{height:380px}.card img{height:280px}.values{grid-template-columns:1fr 1fr}.cta,.foot{display:block}.cta .btn{margin-top:25px}.foot-links{margin-top:30px;gap:40px}.page-intro h1{font-size:47px}.page-intro{padding-top:50px}.bottom{gap:15px}.quote blockquote{font-size:28px}}

.logo{display:inline-flex;letter-spacing:normal;flex-shrink:0}.logo img{width:100px;height:100px;object-fit:contain;display:block}footer .logo img{width:140px;height:140px}header{padding-top:8px;padding-bottom:8px}@media(max-width:700px){.logo img{width:80px;height:80px}}

/* Expanded homepage */
.home-origin{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:start}
.home-origin .prose p:first-child{margin-top:0}.home-origin .prose{max-width:580px}
.home-expanded .mission-section{padding-top:30px;scroll-margin-top:25px}
.home-expanded .card .eyebrow{margin-top:25px}.home-expanded .card p{max-width:100%;font-size:15px}
.home-expanded .card h3{font-size:32px;line-height:1.3}.home-expanded .card .textlink{margin-top:10px}
.home-hope{align-items:start}.home-hope img{height:620px}.home-hope h2{font-size:clamp(32px,3.3vw,47px)}
.home-plan-note{display:flex;justify-content:space-between;align-items:center;gap:35px;margin-top:36px;padding-top:25px;border-top:1px solid var(--line)}
.home-plan-note p{max-width:650px;font-size:14px}.home-plan-note a{flex-shrink:0}
.home-values{background:#e8ecdf}.home-expanded .thirds p{font-size:15px}.home-help .textlink{margin-top:12px}
@media(max-width:800px){.home-origin{grid-template-columns:1fr;gap:25px}.home-expanded .mission-section{padding-top:15px}.home-hope img{height:430px}.home-plan-note{display:block}.home-plan-note a{margin-top:10px}.home-expanded .card h3{font-size:29px}.home-expanded .section-head{margin-bottom:30px}}

/* Hope’s full story */
.hope-story figure{margin:0}.hope-story .hero-photo{margin:30px 6% 30px 0}
.story-back{margin-bottom:28px}.story-hero .eyebrow{margin-bottom:20px}.story-hero .hero-copy>.btn{margin-top:18px}
.hope-narrative{max-width:1200px;margin:auto;padding:30px 7% 70px;scroll-margin-top:25px}
.story-chapter{display:grid;grid-template-columns:1fr 1.5fr;gap:65px;padding:60px 0;border-bottom:1px solid var(--line)}
.chapter-label h2{font-size:38px;margin-top:16px}.story-prose p:first-child{margin-top:0}.story-prose p{margin-bottom:22px}
.hope-story figcaption:not(.photo-note){font-size:12px;line-height:1.6;color:var(--muted);padding-top:13px}
.hope-belonging figcaption:not(.photo-note){color:#c1cdbd}.hope-belonging img{height:500px}
.hope-purpose{align-items:start}.hope-purpose img{height:560px}.hope-invitation{background:#e8ecdf}.hope-invitation .thirds p{font-size:15px}
@media(max-width:800px){.hope-story .hero-photo{margin:10px 7% 30px}.story-chapter{grid-template-columns:1fr;gap:12px;padding:38px 0}.hope-narrative{padding:15px 7% 45px}.chapter-label h2{font-size:32px}.hope-belonging img,.hope-purpose img{height:400px}.story-hero h1{font-size:52px}.story-hero .hero-copy{padding-top:30px}}

/* Complete program and information pages */
.complete-page figure{margin:0}.complete-page .hero-photo{margin:30px 6% 30px 0}
.inner-hero h1{font-size:clamp(46px,4.8vw,72px)}.inner-hero .hero-copy{padding-top:70px;padding-bottom:65px}
.editorial-lead{display:grid;grid-template-columns:1fr 1.2fr;gap:75px;align-items:start}.editorial-lead p:first-child{margin-top:0}
.mission-band{background:#e8ecdf}.complete-page .thirds p{font-size:15px}.complete-page .thirds .textlink{margin-top:10px}
.complete-page .story-chapter h2{font-size:36px}.complete-page .hope-narrative{padding-top:0}
.faq-section{padding-top:35px}.faq-section details{max-width:980px}.faq-section details p{max-width:790px}
.full-values p{font-size:14px}.full-values h3{font-size:23px}.full-values{gap:25px}
.story-forward{padding-top:30px}.opportunity-grid{display:grid;grid-template-columns:1fr 1fr;gap:38px 55px}
.opportunity-grid article{border-top:1px solid var(--line);padding-top:22px}.opportunity-grid h3{font-size:30px}.opportunity-grid p{font-size:15px}
.plain-list,.giving-steps{color:var(--muted);padding-left:22px}.plain-list li,.giving-steps li{padding-left:5px;margin-bottom:14px}
.contact-section{align-items:start}.contact-note{margin-top:38px;border-top:1px solid var(--line);padding-top:18px}.contact-note h3{font-size:26px}
.donate-top{padding-top:30px;align-items:start}.donation-panel h3{font-size:36px}.donation-panel .btn{font-size:15px;padding:17px 24px}
.fund-guidance{background:#e8ecdf;border-left:3px solid var(--ink);padding:15px 18px;font-size:14px}
textarea:focus-visible,select:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
@media(max-width:800px){.complete-page .hero-photo{margin:10px 7% 30px}.inner-hero .hero-copy{padding:45px 7% 20px}.inner-hero h1{font-size:48px}.editorial-lead,.opportunity-grid{grid-template-columns:1fr;gap:25px}.full-values{grid-template-columns:1fr 1fr}.complete-page .story-chapter h2{font-size:32px}.complete-page .page-intro h1{font-size:45px}.donation-panel{padding:28px}.donate-top{padding-top:15px}}
@media(max-width:420px){.full-values{grid-template-columns:1fr}.inner-hero h1{font-size:42px}.complete-page .page-intro h1{font-size:40px}.complete-page .btn{gap:16px}}

/* Sanctuary photographs and accessible full-image viewer */
.sanctuary-updated .hero-photo{background:#ece9df;border-radius:120px 4px 4px 4px;overflow:hidden}
.sanctuary-updated .hero-photo img{object-fit:contain;border-radius:0}
.photo-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 24px}
.photo-gallery figure{margin:0;min-width:0}.gallery-open{position:relative;display:block;border:0;padding:0;width:100%;background:#e8ecdf;cursor:zoom-in;border-radius:4px;overflow:hidden}
.gallery-open img{display:block;width:100%;height:330px;object-fit:contain;transition:transform .2s}
.gallery-open:hover img{transform:scale(1.025)}.gallery-open span{position:absolute;bottom:10px;right:10px;padding:5px 10px;background:#183c30e8;color:#fff;font-size:11px;border-radius:3px}
.photo-gallery figcaption{font-size:12px;line-height:1.6;color:var(--muted);padding-top:10px}
.gallery-home-link{display:table;margin-top:15px!important}.photo-dialog{width:min(1100px,95vw);max-height:94vh;border:0;border-radius:6px;padding:18px;background:var(--paper);color:var(--ink)}
.photo-dialog::backdrop{background:#081c16e8}.photo-dialog-toolbar,.photo-dialog-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px}
.photo-dialog button{border:1px solid var(--line);background:transparent;color:var(--ink);padding:8px 14px;border-radius:3px;cursor:pointer;white-space:nowrap}
.photo-count{font-size:12px}.photo-full{width:100%;height:69vh;object-fit:contain;display:block;margin:15px 0;background:#ece9df}.photo-caption{font-size:13px;text-align:center;margin:0}
@media(max-width:800px){.photo-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 15px}.gallery-open img{height:270px}.photo-dialog-bottom{gap:10px;flex-wrap:wrap}.photo-caption{order:3;flex-basis:100%}.photo-full{height:63vh}.sanctuary-updated .hero-photo{border-radius:70px 4px 4px 4px}}
@media(max-width:460px){.photo-gallery{grid-template-columns:1fr}.gallery-open img{height:360px}.photo-dialog{padding:12px}.photo-full{height:60vh}}
@media(prefers-reduced-motion:reduce){.gallery-open img{transition:none}}

.card img.sanctuary-card-photo{object-fit:contain;background:#e8ecdf}

.orphan-impact{background:#183c30;color:#f8f6ef}.orphan-impact p,.orphan-impact .eyebrow{color:#d2ddcd}.impact-number{font:clamp(30px,4vw,58px)/1.2 'Playfair Display',Georgia,serif;border-bottom:1px solid #678071;padding-bottom:28px;margin-bottom:40px}.orphan-impact h2{font-size:clamp(30px,3vw,43px)}

.farm-visual{position:relative;margin:30px 6% 110px 0;align-self:center}.farm-illustration{position:relative}.farm-illustration>img{width:100%;height:auto;display:block;border-radius:90px 4px 4px 4px}.farm-illustration>figcaption{position:absolute;top:16px;right:14px;left:25%;font-size:10px;line-height:1.5;background:#f8f6efed;color:var(--ink);padding:8px 12px;border-radius:3px;text-align:right}.farm-insets{position:absolute;bottom:-95px;right:6%;display:grid;grid-template-columns:1fr 1fr;gap:14px;width:74%}.farm-insets figure{padding:7px;background:var(--paper);box-shadow:0 5px 20px #183c3026;border-radius:4px}.farm-insets img{width:100%;height:145px;object-fit:contain;background:#e8ecdf;display:block}.farm-insets figcaption{font-size:10px;line-height:1.5;padding:7px 2px 2px;text-align:center}.sanctuary-updated>.inner-hero{min-height:680px}
@media(max-width:800px){.farm-visual{margin:15px 7% 135px}.farm-insets{width:86%;right:7%;bottom:-100px}.farm-insets img{height:140px}.farm-illustration>figcaption{font-size:9px;left:20%;top:10px;right:10px}.sanctuary-updated>.inner-hero{min-height:0}}
@media(max-width:420px){.farm-insets{width:92%;right:4%}.farm-insets img{height:110px}.farm-illustration>figcaption{left:10%}.farm-insets{bottom:-90px}.farm-visual{margin-bottom:120px}}
