:root{--saffron:#df8b08;--gold:#eda715;--ink:#211a16;--cream:#fffdf8;--maroon:#450707;--muted:#6f665e}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",Arial,sans-serif;font-size:16px;line-height:1.45;overflow-x:hidden}
figure,h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-family:"Playfair Display",Georgia,serif}
.shell{width:min(1400px,90vw);margin-inline:auto}
.site-header{height:84px;background:#fff;display:flex;align-items:center;position:relative;z-index:20;box-shadow:0 1px 10px rgba(59,33,0,.08)}
.site-header.scrolled{position:sticky;top:0}
.nav-wrap{height:100%;display:flex;align-items:center}
.brand img{display:block;width:90px;height:auto;object-fit:contain}
.main-nav{margin-left:auto;display:flex;align-items:center;gap:34px}
.main-nav a{color:#211b18;text-decoration:none;font-size:16px;font-weight:600;position:relative;padding:31px 0 28px}
.main-nav a:after{content:"";position:absolute;height:2px;left:0;right:0;bottom:21px;background:var(--gold);transform:scaleX(0);transition:.2s}
.main-nav a.active,.main-nav a:hover{color:var(--saffron)}
.main-nav a.active:after,.main-nav a:hover:after{transform:scaleX(1)}
.button,.outline-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--saffron);border-radius:6px;background:var(--saffron);color:#fff;text-decoration:none;font-size:16px;font-weight:700;padding:10px 17px;line-height:1.2;cursor:pointer}
.button:hover{background:#b96c03;border-color:#b96c03}
.donate-top{margin-left:50px;white-space:nowrap}
.menu-button{display:none;border:0;background:0 0;font-size:24px}
.hero{height:630px;position:relative;background:url(../img/2c62bebb74e3c73e323344fe0139f1aeca4ee9b7.png) center 0/cover no-repeat}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(18,15,13,.72) 0,rgba(22,14,9,.42) 50%,rgba(0,0,0,.08) 100%)}
.hero-inner{position:relative;height:100%;display:flex;align-items:center}
.hero-copybox{color:#fff;margin-left:0}
.hero h1{font-size:53px;line-height:1.12;text-transform:uppercase;margin-bottom:19px;text-shadow:0 3px 7px rgba(0,0,0,.28)}
.ornament{object-fit:contain;display:block}
.hero-ornament{width:545px;height:17px;object-position:left;margin-bottom:24px}
.hero-copybox p{font:600 21px/1.34 "Playfair Display",Georgia,serif;margin-bottom:25px}
.section{padding:78px 0}
.compact{padding-top:54px;padding-bottom:54px}
.about{padding-top:82px;padding-bottom:40px}
.about-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}
.about-photo{overflow:hidden;border-radius:12px;box-shadow:0 7px 18px rgba(85,47,0,.18);border-bottom:3px solid var(--gold)}
.about-photo img{display:block;width:100%;aspect-ratio:1.75/1;object-fit:cover}
.eyebrow{text-transform:uppercase;color:var(--saffron);font-family:"Playfair Display",Georgia,serif;font-size:16px;font-weight:700;letter-spacing:.025em;margin-bottom:9px}
.about-content h2{font-size:38px;line-height:1.18;margin-bottom:9px}
.heading-ornament{width:430px;height:15px;object-position:left;margin-bottom:17px}
.body-copy{font-family:"Playfair Display",Georgia,serif;color:#4f4740;line-height:1.65;margin-bottom:22px}
.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.value-grid article{display:grid;grid-template-columns:28px 1fr;gap:8px}
.value-grid i{color:var(--saffron);font-size:22px}
.value-grid h3{font-size:18px;margin:0 0 5px}
.value-grid p{font-size:16px;line-height:1.3;color:#6c6259;margin:0}
.section-title{text-align:center;display:flex;align-items:center;justify-content:center;margin-bottom:42px}
.section-title img{width:750px;height:16px;object-fit:fill}
.section-title h2{position:absolute;background:var(--cream);padding:0 20px;margin:0;text-transform:uppercase;font-size:32px;line-height:1.2}
.five-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:34px}
.four-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}
.three-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.cards-row{margin-top:2px}
.info-card{min-height:158px;padding:24px 17px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;background:#fff;border:1px solid #f3eee6;box-shadow:0 4px 14px rgba(75,46,0,.04)}
.info-card i{font-size:30px;color:var(--gold);margin-bottom:15px}
.info-card h3{font-size:18px;margin:0 0 4px}
.info-card p{font-size:16px;margin:0;line-height:1.35}
.gallery-grid figure{margin-bottom:0;border:1px solid #f1dfcb;background:#fff;box-shadow:0 3px 9px rgba(70,38,0,.09)}
.gallery-grid img{display:block;width:100%;height:210px;object-fit:cover}
.gallery-grid figcaption{text-align:center;font-family:"Playfair Display",Georgia,serif;font-weight:700;padding:9px 6px}
.center{text-align:center;margin:32px 0 0}
.outline-button{background:#fff;color:var(--saffron);padding:8px 14px}
.outline-button:hover{background:var(--saffron);color:#fff}
.contribution{height:440px;background:url(../img/ChatGPT%20Image%20Aug%203%2C%202026%2C%2005_25_25%20PM%201.png) center/cover no-repeat}
.contribution-grid{height:100%;display:grid;grid-template-columns:.7fr 1.15fr .65fr;gap:10px;align-items:center}
.contribution-copy h2{font-size:45px;line-height:1.22;margin-bottom:17px}
.contribution-copy>p:not(.eyebrow){font-family:"Playfair Display",Georgia,serif;line-height:1.5;max-width:560px}
.eyebrow.dark{color:#3b2106;text-transform:none}
.bank{border-left:1px solid rgba(67,35,3,.45);padding-left:35px;color:#2c1c0e;font-family:"Playfair Display",Georgia,serif}
.bank p{font-size:16px;line-height:1.55;margin-bottom:13px}
.bank img{display:block;width:105px;height:105px;object-fit:cover;background:#fff}
.bank strong{display:block;font-size:16px;margin-top:5px}
.event-card{border:1px solid #e9cda8;border-radius:8px;background:#fff;overflow:hidden;box-shadow:0 4px 11px rgba(69,39,0,.1)}
.event-image{height:190px;position:relative}
.event-image img{width:100%;height:100%;object-fit:cover;display:block}
.event-image span{position:absolute;left:10px;bottom:-11px;background:#fff;color:#71420a;border:1px solid #e4c596;border-radius:3px;text-align:center;padding:5px 8px;font-size:16px;line-height:1.15}
.event-card>div:last-child{text-align:center;padding:24px 13px 18px}
.event-card h3{font-size:18px;margin-bottom:5px}
.event-card p{font-size:16px;color:#685f57;margin-bottom:12px}
.event-card .outline-button{font-size:16px;padding:7px 13px}
.services .info-card{min-height:180px}
.trustees{padding-top:50px}
.trustee-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:28px;justify-content:center}
.trustee-grid article{grid-column:span 2;text-align:center;background:#fff;padding-bottom:14px}
.trustee-grid article:nth-child(5){grid-column:2/span 2}
.trustee-grid img{display:block;width:100%;aspect-ratio:1/1.04;object-fit:cover;border-radius:10px 10px 0 0;background:#cfd5dc}
.trustee-grid h3{font-size:18px;margin:12px 5px 3px}
.trustee-grid p{font-size:16px;margin:0}
.voices{padding-top:30px}
.quote{min-height:180px;background:#fff;border:1px solid #eee2d4;box-shadow:0 3px 10px rgba(75,46,0,.05);padding:22px 23px;position:relative}
.quote>i{position:absolute;font-size:27px;color:#1d1713}
.quote>p{font-family:"Playfair Display",Georgia,serif;font-weight:600;padding-left:38px;min-height:72px}
.quote>div{display:flex;align-items:center;gap:10px}
.avatar{width:34px;height:34px;border-radius:50%;background:#70849f;color:#fff;display:grid;place-items:center;font-size:16px}
.quote strong{font-family:"Playfair Display",Georgia,serif;font-size:16px}
.quote small{display:block;font-family:"DM Sans",Arial,sans-serif;font-weight:400;color:#7d7167}
.stars{display:block;color:#e59b0c;margin-left:44px;letter-spacing:2px}
.reveal{opacity:0;transform:translateY(18px);transition:.65s ease}
.reveal.visible{opacity:1;transform:none}
footer{background:var(--maroon);color:#fff;padding:54px 0 42px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 2fr;gap:30px}
footer h2{font-size:20px;color:#e8a11b;text-transform:uppercase;margin-bottom:22px}
.contact-list,.quick-links{list-style:none;padding:0;margin:0}
.contact-list li{display:flex;gap:11px;margin-bottom:9px}
.contact-list i{width:20px;color:#eca41b}
.contact-list span,.quick-links a{font-size:16px;color:#fff;text-decoration:none}
.quick-links li{margin-bottom:6px}
.quick-links li:before{content:"•";margin-right:8px}
.socials{display:flex;gap:11px;margin-top:20px}
.socials a{width:30px;height:30px;border-radius:50%;background:#df8b08;color:#fff;display:grid;place-items:center;text-decoration:none}
.map{width:100%;max-width:210px;height:155px;object-fit:cover;border-radius:5px}
.contact-form{display:grid;gap:10px}
.contact-form input,.contact-form textarea{width:100%;border:0;border-radius:4px;background:#fff;font:16px "DM Sans",Arial,sans-serif;padding:10px 12px}
.contact-form input{height:42px}
.contact-form textarea{height:65px;resize:none}
.contact-form .button{width:100%}
.back-top{position:fixed;right:22px;bottom:22px;opacity:0;pointer-events:none;width:44px;height:44px;border:0;border-radius:50%;background:var(--saffron);color:#fff;font-size:18px;z-index:15;transition:.25s}
.back-top.show{opacity:1;pointer-events:auto}
@media(max-width:1100px){
.main-nav{gap:16px}
.donate-top{margin-left:22px}
.shell{width:min(940px,92vw)}
.hero h1{font-size:46px}
.five-grid{gap:16px}
.four-grid{gap:18px}
.contribution-grid{grid-template-columns:.65fr 1.2fr .55fr;gap:20px}
.footer-grid{gap:30px}
}
@media(max-width:820px){
.heading-ornament{width:auto}
.site-header{height:72px}
.brand img{width:70px;height:54px}
.menu-button{display:block;margin-left:auto}
.donate-top{margin-left:14px}
.main-nav{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;padding:12px 4vw 20px;box-shadow:0 8px 15px rgba(0,0,0,.12);flex-direction:column;align-items:stretch;gap:0}
.main-nav.open{display:flex}
.main-nav a{padding:10px 0}
.main-nav a:after{display:none}
.hero{height:500px}
.hero h1{font-size:38px}
.hero-ornament{width:430px}
.about-grid{grid-template-columns:1fr}
.five-grid{grid-template-columns:repeat(2,1fr)}
.five-grid article:last-child{grid-column:1/-1}
.four-grid{grid-template-columns:repeat(2,1fr)}
.contribution{height:auto;min-height:520px}
.contribution-grid{grid-template-columns:1fr 1fr;padding:50px 0}
.contribution-grid>div:first-child{display:none}
.bank{padding-left:20px}
.trustee-grid{grid-template-columns:repeat(4,1fr)}
.trustee-grid article{grid-column:span 2}
.trustee-grid article:nth-child(5){grid-column:span 2}
.three-grid{grid-template-columns:1fr}
.footer-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:520px){
.donate-top{display:none}
.shell{width:92vw}
.hero{height:470px;background-position:center}
.hero h1{font-size:31px}
.hero-copybox p{font-size:18px}
.hero-ornament{width:90%}
.section{padding:48px 0}
.compact{padding:38px 0}
.about-content h2{font-size:30px}
.value-grid{grid-template-columns:1fr}
.section-title img{width:100%}
.section-title h2{font-size:25px;padding:0 12px}
.five-grid,.four-grid{grid-template-columns:1fr}
.five-grid article:last-child{grid-column:auto}
.gallery-grid img{height:220px}
.contribution-grid{grid-template-columns:1fr}
.contribution{background-position:28% center}
.contribution-copy{background:rgba(238,168,30,.78);padding:18px}
.contribution-copy h2{font-size:31px}
.bank{border-left:0;border-top:1px solid rgba(67,35,3,.45);padding:20px 0 0}
.trustee-grid{grid-template-columns:repeat(2,1fr);gap:14px}
.trustee-grid article,.trustee-grid article:nth-child(5){grid-column:span 1}
.trustee-grid h3{font-size:16px}
.footer-grid{grid-template-columns:1fr}
}
.site-header.scrolled{position:relative;top:auto}
.reveal{opacity:1!important;transform:none!important}
.quote small{font-size:16px}
.quick-links li:before{content:"\2022"}
.gallery-grid a{display:block;overflow:hidden}
.gallery-grid a img{transition:transform .35s ease}
.gallery-grid a:hover img{transform:scale(1.04)}
.gallery-grid .gallery-category-link{color:inherit;text-decoration:none}
.avatar:is(img){object-fit:cover}
.event-single-image{max-width:900px;margin:25px 0}
.event-single-image img{width:100%;height:auto;border-radius:10px}
footer#contact{padding-bottom:0}
.developer-credit{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:70px;margin-top:42px;overflow:hidden;background:radial-gradient(circle at 20% 50%,rgba(237,167,21,.2),transparent 28%),linear-gradient(110deg,#260303 0,#590909 48%,#2c0303 100%);border-top:1px solid rgba(237,167,21,.55);box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 -10px 30px rgba(20,0,0,.25)}
.developer-credit::before{content:"";position:absolute;top:0;left:-35%;width:28%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,218,128,.13),transparent);transform:skewX(-22deg);animation:developer-credit-shine 7s ease-in-out infinite;pointer-events:none}
.developer-credit__link{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:7px 18px;color:#fff8e8;text-decoration:none;font-size:15px;letter-spacing:.02em;border-radius:999px;transition:color .25s ease,background .25s ease,transform .25s ease}
.developer-credit__label{opacity:.78}
.developer-credit__link strong{font-family:"Playfair Display",Georgia,serif;font-size:18px;letter-spacing:.015em;color:#ffc95c;text-shadow:0 0 18px rgba(237,167,21,.24)}
.developer-credit__icon{display:grid;place-items:center;width:31px;height:31px;margin-right:2px;color:#441000;background:linear-gradient(145deg,#ffd578,#e89a0c);border:1px solid rgba(255,232,174,.8);border-radius:50%;box-shadow:0 0 18px rgba(237,167,21,.27)}
.developer-credit__arrow{font-size:12px;color:#f2b53a;transition:transform .25s ease}
.developer-credit__link:focus-visible,.developer-credit__link:hover{color:#fff;background:rgba(255,255,255,.055);transform:translateY(-1px);outline:0}
.developer-credit__link:focus-visible .developer-credit__arrow,.developer-credit__link:hover .developer-credit__arrow{transform:translate(2px,-2px)}
.developer-credit__link:focus-visible{box-shadow:0 0 0 2px #f3b737}
@keyframes developer-credit-shine{
0%,58%{left:-35%}
100%,82%{left:115%}
}
@media (max-width:520px){
.developer-credit{margin-top:34px}
.developer-credit__link{gap:7px;padding-inline:10px;font-size:13px}
.developer-credit__link strong{font-size:16px}
.developer-credit__icon{width:28px;height:28px}
}
@media (prefers-reduced-motion:reduce){
.developer-credit::before{animation:none}
}