:root{
--cream:#f4f0e8;
--cream-dark:#e9e2d6;
--white:#fff;
--charcoal:#20211f;
--charcoal-2:#2b2c29;
--orange:#d9783d;
--mustard:#c79a42;
--sage:#7d8b70;
--muted:#74736d;
--line:#d5cec2;
--serif:"Playfair Display",serif;
--sans:"DM Sans",sans-serif;
--script:"Caveat",cursive;
--container:1240px;
--about-charcoal:#1f1f1d;
--about-cream:#f8f4ec;
--about-terracotta:#c85d3a;
--about-mustard:#e2a23b;
--about-taupe:#d9cdbc;
--about-sage:#81906f;
}

*,
*::before,
*::after{
box-sizing:border-box;
}

html{
width:100%;
max-width:100%;
scroll-behavior:smooth;
overflow-x:hidden;
}

body{
width:100%;
max-width:100%;
margin:0;
background:var(--cream);
color:var(--charcoal);
font-family:var(--sans);
font-size:16px;
line-height:1.65;
overflow-x:hidden;
}

body.no-scroll{
overflow:hidden;
}

img{
display:block;
max-width:100%;
}

a{
color:inherit;
text-decoration:none;
}

button,
input,
textarea{
font:inherit;
}

button{
cursor:pointer;
}

::selection{
background:var(--orange);
color:#fff;
}

.container{
width:min(var(--container),calc(100% - 70px));
margin:0 auto;
}

.reveal{
opacity:0;
transform:translateY(25px);
transition:opacity .8s ease,transform .8s cubic-bezier(.22,1,.36,1);
}

.reveal.visible{
opacity:1;
transform:none;
}

.reveal.show{
opacity:1;
transform:translateY(0);
}

/* LOADER */

.loader{
position:fixed;
inset:0;
z-index:9999;
display:flex;
flex-direction:column;
align-items:center;
justify-content:center;
background:var(--charcoal);
transition:opacity .7s ease,visibility .7s ease;
}

.loader.hide{
opacity:0;
visibility:hidden;
pointer-events:none;
}

.loader-logo{
color:#fff;
font-family:var(--serif);
font-size:42px;
letter-spacing:3px;
text-align:center;
}

.loader-logo small{
display:block;
margin-top:-5px;
font-family:var(--sans);
font-size:10px;
font-weight:700;
letter-spacing:6px;
}

.loader-line{
width:150px;
height:2px;
margin-top:30px;
background:rgba(255,255,255,.15);
overflow:hidden;
}

.loader-line span{
display:block;
width:0;
height:100%;
background:var(--mustard);
animation:loaderProgress 1.1s ease forwards;
}

@keyframes loaderProgress{
to{width:100%}
}

/* HEADER */

.header{
position:sticky;
top:0;
z-index:1000;
width:100%;
background:rgba(248,244,236,.96);
border-bottom:1px solid #d9cdbc;
backdrop-filter:blur(15px);
}

.header.scrolled{
box-shadow:0 10px 30px rgba(31,31,29,.08);
}

.header-top{
min-height:28px;
padding:4px 35px;
display:flex;
justify-content:space-between;
align-items:center;
border-bottom:1px solid #d9cdbc;
color:#777067;
font-size:10px;
font-weight:700;
line-height:1.2;
letter-spacing:1.5px;
}

.header-top span:nth-child(2){
color:#c85d3a;
}

.header-main{
width:min(var(--container),calc(100% - 70px));
min-height:80px;
margin:auto;
display:flex;
align-items:center;
gap:25px;
}

.logo{
flex-shrink:0;
display:flex;
align-items:center;
gap:10px;
}

.logo-symbol{
position:relative;
width:35px;
height:31px;
flex-shrink:0;
}

.logo-symbol i{
position:absolute;
width:9px;
height:9px;
border-radius:50%;
}

.logo-symbol i:nth-child(1){
top:0;
left:13px;
background:#c85d3a;
}

.logo-symbol i:nth-child(2){
top:10px;
left:0;
background:#e2a23b;
}

.logo-symbol i:nth-child(3){
top:10px;
right:0;
background:#81906f;
}

.logo-symbol i:nth-child(4){
bottom:0;
left:13px;
background:#1f1f1d;
}

.logo-name{
font-family:var(--serif);
font-size:22px;
line-height:1;
letter-spacing:2px;
}

.logo-name small{
display:block;
margin-top:4px;
color:#c85d3a;
font-family:var(--sans);
font-size:8px;
font-weight:700;
letter-spacing:3px;
text-align:center;
}

.nav{
min-width:0;
margin-left:auto;
display:flex;
align-items:center;
gap:19px;
}

.nav a{
position:relative;
padding:8px 0;
white-space:nowrap;
font-size:16px;
font-weight:500;
line-height:1.2;
}

.nav a::after{
content:"";
position:absolute;
left:0;
bottom:0;
width:0;
height:2px;
background:#c85d3a;
transition:.3s ease;
}

.nav a:hover::after,
.nav a.active::after{
width:100%;
}

.header-actions{
display:flex;
align-items:center;
gap:14px;
flex-shrink:0;
}

.search-btn{
width:35px;
height:35px;
display:grid;
place-items:center;
border:0;
background:transparent;
color:#1f1f1d;
font-size:16px;
}

.issue-btn{
display:flex;
align-items:center;
gap:9px;
padding:11px 15px;
color:white;
background:#1f1f1d;
font-size:16px;
font-weight:600;
line-height:1;
white-space:nowrap;
transition:.3s ease;
}

.issue-btn:hover{
background:#c85d3a;
}

.hamburger{
display:none;
width:38px;
height:38px;
border:0;
background:transparent;
}

.hamburger span{
display:block;
width:25px;
height:2px;
margin:5px auto;
background:#1f1f1d;
}

/* MOBILE MENU */

.mobile-menu{
position:fixed;
inset:0;
z-index:5000;
overflow-y:auto;
background:#1f1f1d;
color:#f8f4ec;
transform:translateX(100%);
transition:transform .5s cubic-bezier(.77,0,.18,1);
}

.mobile-menu.open{
transform:translateX(0);
}

.mobile-close{
position:absolute;
top:22px;
right:22px;
width:45px;
height:45px;
display:grid;
place-items:center;
border:1px solid rgba(255,255,255,.2);
border-radius:50%;
background:transparent;
color:white;
font-size:20px;
}

.mobile-inner{
width:100%;
min-height:100%;
padding:80px 25px 25px;
display:flex;
flex-direction:column;
}

.mobile-logo{
font-family:var(--serif);
font-size:30px;
line-height:1;
letter-spacing:2px;
}

.mobile-logo small{
display:block;
margin-top:5px;
color:#c85d3a;
font-family:var(--sans);
font-size:8px;
font-weight:700;
letter-spacing:3px;
}

.mobile-caption{
margin-top:12px;
color:#e2a23b;
font-size:16px;
line-height:1.3;
}

.mobile-menu nav{
width:100%;
margin-top:35px;
}

.mobile-menu nav a{
width:100%;
min-width:0;
display:grid;
grid-template-columns:35px minmax(0,1fr) 25px;
align-items:center;
gap:12px;
padding:14px 0;
border-bottom:1px solid rgba(255,255,255,.12);
font-family:var(--sans);
font-size:16px;
font-weight:500;
line-height:1.3;
}

.mobile-menu nav a span{
color:#77736c;
font-size:12px;
}

.mobile-menu nav a i{
color:#c85d3a;
font-size:12px;
text-align:right;
}

.mobile-bottom{
margin-top:auto;
padding-top:35px;
color:#77736c;
font-size:12px;
letter-spacing:1.5px;
}

/* SEARCH */

.search-overlay{
position:fixed;
inset:0;
z-index:6000;
display:flex;
align-items:center;
background:#f8f4ec;
opacity:0;
visibility:hidden;
transition:.3s ease;
}

.search-overlay.open{
opacity:1;
visibility:visible;
}

.search-close{
position:absolute;
top:25px;
right:25px;
width:45px;
height:45px;
border:1px solid #d9cdbc;
border-radius:50%;
background:transparent;
font-size:18px;
}

.search-container{
width:min(900px,calc(100% - 50px));
margin:auto;
}

.search-container>span{
color:#c85d3a;
font-size:16px;
font-weight:700;
letter-spacing:2px;
}

.search-container h2{
margin-top:18px;
font-family:var(--serif);
font-size:clamp(55px,8vw,95px);
font-weight:400;
line-height:.9;
}

.search-container h2 em{
color:#c85d3a;
}

.search-container form{
margin-top:45px;
display:flex;
border-bottom:2px solid #1f1f1d;
}

.search-container input{
width:100%;
min-width:0;
padding:15px 0;
border:0;
outline:0;
background:transparent;
font-size:18px;
}

.search-container button{
width:55px;
flex-shrink:0;
border:0;
background:transparent;
font-size:18px;
}

#searchMessage{
margin-top:15px;
color:#c85d3a;
font-size:16px;
}

/* SUPPORT HERO */

.support-hero{
position:relative;
min-height:700px;
display:flex;
align-items:center;
background:var(--charcoal);
color:#fff;
overflow:hidden;
}

.support-hero-inner{
position:relative;
z-index:5;
padding:90px 40px 100px;
}

.hero-label{
display:flex;
align-items:center;
gap:14px;
margin-bottom:30px;
color:rgba(255,255,255,.52);
font-size:10px;
font-weight:700;
letter-spacing:2.5px;
}

.label-line{
width:50px;
height:1px;
background:var(--mustard);
}

.support-hero h1{
max-width:900px;
margin:0;
font-family:var(--serif);
font-size:clamp(75px,10vw,150px);
font-weight:400;
line-height:.88;
letter-spacing:-5px;
}

.support-hero h1 em{
color:var(--mustard);
font-style:italic;
}

.hero-number{
position:absolute;
right:-50px;
top:10%;
z-index:1;
color:rgba(255,255,255,.025);
font-family:var(--serif);
font-size:420px;
line-height:.8;
user-select:none;
}

.hero-orbit{
position:absolute;
right:-180px;
top:50%;
width:620px;
height:620px;
transform:translateY(-50%);
border:1px solid rgba(199,154,66,.18);
border-radius:50%;
pointer-events:none;
}

.orbit-one{
width:620px;
height:620px;
}

.orbit-two{
width:470px;
height:470px;
right:-105px;
}

.orbit-three{
width:320px;
height:320px;
right:-30px;
}

.hero-bottom{
display:grid;
grid-template-columns:1fr 1fr;
gap:70px;
margin-top:75px;
}

.hero-bottom p{
max-width:650px;
margin:0;
color:rgba(255,255,255,.62);
font-size:17px;
line-height:1.8;
}

.hero-handwriting{
align-self:end;
color:var(--mustard);
font-family:var(--script);
font-size:30px;
}

.hero-scroll{
position:absolute;
bottom:30px;
display:flex;
align-items:center;
gap:12px;
color:rgba(255,255,255,.4);
font-size:9px;
font-weight:700;
letter-spacing:2px;
}

.hero-scroll::before{
content:"";
width:40px;
height:1px;
background:var(--mustard);
}

/* SUPPORT INTRO */

.support-intro{
padding:110px 0;
background:var(--cream);
}

.intro-layout{
display:grid;
grid-template-columns:180px 1fr;
gap:100px;
}

.intro-number{
display:flex;
flex-direction:column;
align-items:flex-start;
gap:20px;
}

.intro-number span{
color:var(--orange);
font-family:var(--serif);
font-size:80px;
line-height:1;
}

.intro-number div{
width:45px;
height:1px;
background:var(--mustard);
}

.eyebrow{
display:inline-block;
margin-bottom:20px;
color:var(--orange);
font-size:10px;
font-weight:700;
letter-spacing:2.5px;
text-transform:uppercase;
}

.intro-copy h2{
max-width:900px;
margin:0 0 30px;
font-family:var(--serif);
font-size:clamp(50px,6vw,78px);
font-weight:400;
line-height:1;
letter-spacing:-2px;
}

.intro-copy h2 em{
color:var(--orange);
font-style:italic;
}

.intro-copy>p{
max-width:760px;
margin:0 0 45px;
color:var(--muted);
font-size:17px;
line-height:1.8;
}

.impact-strip{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:25px;
padding-top:30px;
border-top:1px solid var(--line);
}

.impact-strip div{
display:flex;
flex-direction:column;
gap:4px;
}

.impact-strip strong{
font-family:var(--serif);
font-size:30px;
font-weight:400;
}

.impact-strip span{
color:var(--muted);
font-size:11px;
font-weight:700;
letter-spacing:1.5px;
text-transform:uppercase;
}

/* FUNDS */

.funds-section{
padding:110px 0;
background:#e9e2d6;
}

.section-heading{
display:grid;
grid-template-columns:1fr 1fr;
gap:70px;
margin-bottom:65px;
}

.section-heading h2{
margin:0;
font-family:var(--serif);
font-size:clamp(55px,6vw,82px);
font-weight:400;
line-height:.95;
letter-spacing:-3px;
}

.section-heading h2 em{
color:var(--orange);
font-style:italic;
}

.section-heading>div:last-child{
align-self:end;
}

.section-heading p{
max-width:580px;
margin:0;
color:var(--muted);
font-size:16px;
line-height:1.8;
}

.funds-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:1px;
background:var(--line);
border:1px solid var(--line);
}

.fund-card{
position:relative;
min-height:330px;
padding:35px;
background:var(--cream);
overflow:hidden;
transition:transform .35s ease,background .35s ease;
}

.fund-card:hover{
background:#f8f4ec;
transform:translateY(-5px);
z-index:2;
}

.fund-top{
display:flex;
align-items:center;
justify-content:space-between;
margin-bottom:45px;
}

.fund-icon{
width:50px;
height:50px;
display:grid;
place-items:center;
border:1px solid rgba(32,33,31,.18);
color:var(--orange);
font-size:18px;
}

.fund-card:nth-child(2) .fund-icon{
color:var(--mustard);
}

.fund-card:nth-child(3) .fund-icon{
color:var(--sage);
}

.fund-card:nth-child(4) .fund-icon{
color:var(--mustard);
}

.fund-card:nth-child(5) .fund-icon{
color:var(--orange);
}

.fund-card:nth-child(6) .fund-icon{
color:var(--sage);
}

.fund-line{
width:35px;
height:1px;
background:var(--line);
}

.fund-card h3{
margin:0 0 15px;
font-family:var(--serif);
font-size:29px;
font-weight:400;
line-height:1.05;
}

.fund-card p{
margin:0;
color:var(--muted);
font-size:14px;
line-height:1.7;
}

/* STEWARDSHIP */

.stewardship{
position:relative;
padding:120px 0;
background:var(--charcoal);
color:#fff;
overflow:hidden;
}

.stewardship-grid{
display:grid;
grid-template-columns:.9fr 1.1fr;
gap:100px;
}

.stewardship-heading h2{
margin:0;
font-family:var(--serif);
font-size:clamp(55px,7vw,90px);
font-weight:400;
line-height:.95;
letter-spacing:-3px;
}

.stewardship-heading h2 em{
color:var(--mustard);
font-style:italic;
}

.stewardship-number{
margin-top:90px;
color:rgba(255,255,255,.04);
font-family:var(--serif);
font-size:180px;
line-height:.7;
}

.stewardship-content{
align-self:center;
}

.large-copy{
margin:0 0 45px;
color:rgba(255,255,255,.75);
font-family:var(--serif);
font-size:30px;
line-height:1.3;
}

.stewardship-points{
border-top:1px solid rgba(255,255,255,.12);
}

.steward-point{
display:grid;
grid-template-columns:28px 1fr;
gap:15px;
padding:23px 0;
border-bottom:1px solid rgba(255,255,255,.12);
}

.steward-point>span{
width:25px;
height:25px;
display:grid;
place-items:center;
border:1px solid rgba(255,255,255,.18);
border-radius:50%;
color:var(--mustard);
font-size:11px;
}

.steward-point strong{
display:block;
margin:0 0 4px;
font-family:var(--serif);
font-size:21px;
font-weight:500;
}

.steward-point p{
margin:0;
color:rgba(255,255,255,.5);
font-size:14px;
line-height:1.7;
}

/* WAYS */

.ways{
padding:100px 0 90px;
background:#e7dfd2;
}

.ways-heading{
max-width:850px;
margin-bottom:65px;
}

.ways-heading h2{
margin:0 0 28px;
font-family:var(--serif);
font-size:clamp(50px,6vw,78px);
font-weight:400;
line-height:1;
letter-spacing:-2px;
}

.ways-heading h2 em{
color:var(--orange);
font-style:italic;
}

.ways-heading>p{
max-width:680px;
margin:0;
color:var(--muted);
font-size:16px;
line-height:1.8;
}

.ways-list{
border-top:1px solid rgba(32,33,31,.2);
}

.way-item{
display:grid;
grid-template-columns:60px 65px 1fr 50px;
align-items:center;
gap:25px;
min-height:125px;
border-bottom:1px solid rgba(32,33,31,.2);
transition:padding .35s ease,background .35s ease;
}

.way-item:hover{
padding:0 25px;
background:var(--cream);
}

.way-number{
color:var(--mustard);
font-family:var(--serif);
font-size:19px;
}

.way-icon{
width:50px;
height:50px;
display:grid;
place-items:center;
border:1px solid rgba(32,33,31,.18);
color:var(--orange);
font-size:17px;
transition:transform .3s ease,background .3s ease;
}

.way-icon.active{
background:var(--charcoal);
color:var(--mustard);
transform:rotate(-4deg);
}

.way-copy h3{
margin:0 0 4px;
font-family:var(--serif);
font-size:27px;
font-weight:400;
}

.way-copy p{
max-width:700px;
margin:0;
color:var(--muted);
font-size:14px;
line-height:1.7;
}

.way-arrow{
color:var(--charcoal);
transition:transform .3s ease,color .3s ease;
}

.way-item:hover .way-arrow{
color:var(--orange);
transform:translateX(6px);
}

/* TRANSPARENCY */

.transparency{
position:relative;
min-height:600px;
display:flex;
align-items:center;
background:var(--charcoal);
color:#fff;
overflow:hidden;
}

.transparency-circle{
position:absolute;
border:1px solid rgba(199,154,66,.12);
border-radius:50%;
pointer-events:none;
}

.circle-one{
width:600px;
height:600px;
right:-250px;
top:50%;
transform:translateY(-50%);
}

.circle-two{
width:400px;
height:400px;
right:-150px;
top:50%;
transform:translateY(-50%);
}

.transparency-inner{
position:relative;
z-index:2;
width:100%;
display:grid;
grid-template-columns:160px 1fr;
gap:90px;
align-items:center;
}

.transparency-number{
color:rgba(255,255,255,.04);
font-family:var(--serif);
font-size:150px;
line-height:.8;
}

.transparency-icon{
width:55px;
height:55px;
display:grid;
place-items:center;
margin-bottom:25px;
border:1px solid rgba(255,255,255,.18);
color:var(--mustard);
font-size:18px;
}

.transparency-content h2{
max-width:850px;
margin:0 0 30px;
font-family:var(--serif);
font-size:clamp(55px,7vw,90px);
font-weight:400;
line-height:.95;
letter-spacing:-3px;
}

.transparency-content h2 em{
color:var(--mustard);
font-style:italic;
}

.transparency-content>p{
max-width:700px;
margin:0 0 35px;
color:rgba(255,255,255,.58);
font-size:17px;
line-height:1.8;
}

.transparency-signature{
color:rgba(255,255,255,.4);
font-family:var(--script);
font-size:28px;
}

/* CTA */

.support-cta{
padding:120px 0;
background:var(--orange);
color:#fff;
}

.cta-inner{
text-align:center;
}

.cta-inner .eyebrow{
color:rgba(255,255,255,.7);
}

.cta-inner h2{
max-width:950px;
margin:0 auto 50px;
font-family:var(--serif);
font-size:clamp(60px,8vw,105px);
font-weight:400;
line-height:.92;
letter-spacing:-4px;
}

.cta-inner h2 em{
color:var(--charcoal);
font-style:italic;
}

.cta-inner>p{
max-width:650px;
margin:0 auto 35px;
font-size:16px;
line-height:1.7;
}

.cta-contacts{
max-width:800px;
margin:auto;
display:grid;
grid-template-columns:1fr 1fr;
gap:15px;
}

.contact-email{
min-height:64px;
display:flex;
align-items:center;
justify-content:center;
gap:10px;
padding:15px 20px;
border:1px solid rgba(255,255,255,.35);
color:#fff;
font-size:13px;
font-weight:700;
transition:background .3s ease,color .3s ease;
}

.contact-email:hover{
background:#fff;
color:var(--orange);
}

/* CLOSING */

.closing{
position:relative;
min-height:470px;
display:flex;
align-items:center;
background:var(--cream);
overflow:hidden;
}

.closing-word{
position:absolute;
left:50%;
top:50%;
transform:translate(-50%,-50%);
color:rgba(32,33,31,.035);
font-family:var(--serif);
font-size:clamp(130px,25vw,380px);
line-height:.7;
white-space:nowrap;
pointer-events:none;
}

.closing-inner{
position:relative;
z-index:2;
width:100%;
text-align:center;
}

.closing-symbol{
display:flex;
justify-content:center;
gap:7px;
margin-bottom:25px;
}

.closing-symbol i{
width:9px;
height:9px;
border-radius:50%;
}

.closing-symbol i:nth-child(1){
background:var(--orange);
}

.closing-symbol i:nth-child(2){
background:var(--mustard);
}

.closing-symbol i:nth-child(3){
background:var(--sage);
}

.closing-symbol i:nth-child(4){
background:var(--charcoal);
}

.closing-inner p{
max-width:750px;
margin:0 auto;
font-family:var(--serif);
font-size:29px;
line-height:1.3;
}

.closing-script{
margin-top:18px;
color:var(--orange);
font-family:var(--script);
font-size:27px;
}

/* FOOTER */

.footer{
padding:75px 0 25px;
color:#f8f4ec;
background:#1f1f1d;
}

.footer-main{
width:min(var(--container),calc(100% - 70px));
margin:auto;
display:grid;
grid-template-columns:.8fr 1.2fr;
gap:100px;
}

.footer-mini-symbol{
display:flex;
gap:5px;
margin-bottom:16px;
}

.footer-mini-symbol i{
width:8px;
height:8px;
border-radius:50%;
}

.footer-mini-symbol i:nth-child(1){
background:#c85d3a;
}

.footer-mini-symbol i:nth-child(2){
background:#e2a23b;
}

.footer-mini-symbol i:nth-child(3){
background:#81906f;
}

.footer-mini-symbol i:nth-child(4){
background:#d9cdbc;
}

.footer-logo{
font-family:var(--serif);
font-size:30px;
letter-spacing:2px;
}

.footer-logo small{
display:block;
margin-top:3px;
color:#c85d3a;
font-family:var(--sans);
font-size:8px;
font-weight:700;
letter-spacing:3px;
}

.footer-brand>p{
margin-top:12px;
color:#817b73;
font-size:16px;
}

.footer-issue{
display:flex;
flex-wrap:wrap;
gap:20px;
margin-top:30px;
color:#66625c;
font-size:16px;
font-weight:700;
}

.footer-nav{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:40px;
}

.footer-nav>div{
display:flex;
flex-direction:column;
align-items:flex-start;
}

.footer-nav span{
margin-bottom:18px;
color:#c85d3a;
font-size:16px;
font-weight:700;
letter-spacing:2px;
}

.footer-nav a{
margin-bottom:10px;
color:#918b83;
font-size:16px;
line-height:1.5;
transition:.25s ease;
}

.footer-nav a:hover{
color:#f8f4ec;
transform:translateX(4px);
}

.footer-word{
width:min(var(--container),calc(100% - 70px));
margin:75px auto 35px;
color:rgba(255,255,255,.045);
font-family:var(--serif);
font-size:clamp(100px,19vw,290px);
line-height:.65;
white-space:nowrap;
overflow:hidden;
}

.footer-bottom{
width:min(var(--container),calc(100% - 70px));
margin:auto;
padding-top:18px;
border-top:1px solid rgba(255,255,255,.1);
display:flex;
align-items:center;
justify-content:space-between;
gap:20px;
color:#66615a;
font-size:16px;
}

#backTop{
width:42px;
height:42px;
flex-shrink:0;
display:grid;
place-items:center;
border:1px solid rgba(255,255,255,.15);
border-radius:50%;
background:transparent;
color:#f8f4ec;
opacity:0;
visibility:hidden;
transform:translateY(10px);
transition:.3s ease;
}

#backTop.show{
opacity:1;
visibility:visible;
transform:translateY(0);
}

/* TABLET */

@media(max-width:1200px){

.nav{
gap:13px;
}

.nav a{
font-size:14px;
}

.issue-btn{
display:none;
}

.hero-grid{
gap:40px;
}

.collaboration-inner{
gap:55px;
}

}

/* 900px */

@media(max-width:900px){

.header-top{
display:none;
}

.header-main{
width:calc(100% - 36px);
min-height:70px;
}

.nav{
display:none;
}

.header-actions{
margin-left:auto;
}

.hamburger{
display:block;
}

.hero{
padding-bottom:50px;
}

.hero-grid{
width:calc(100% - 36px);
display:block;
}

.hero-sidebar{
position:relative;
top:auto;
height:auto;
}

.hero-sticky{
height:auto;
padding:40px 0 35px;
}

.hero-sticky h1{
max-width:700px;
}

.hero-side-note{
margin-top:35px;
}

.hero-right{
padding-top:0;
}

.about,
.story-section,
.voices,
.team,
.grants,
.contact{
padding:90px 0;
}

.about-grid,
.story-heading,
.voices-head,
.section-title,
.contact-grid{
grid-template-columns:1fr;
gap:35px;
}

.story-grid{
grid-template-columns:1fr;
}

.voices-stage{
grid-template-columns:1fr;
}

.team-grid{
grid-template-columns:1fr 1fr;
}

.team-image{
height:400px;
}

.grant-grid{
grid-template-columns:1fr 1fr;
}

.collaboration{
padding:90px 0 45px;
}

.collaboration-inner{
grid-template-columns:1fr;
gap:35px;
}

.collab-left{
min-height:auto;
}

.collab-label{
margin-top:50px;
}

.collab-small{
margin-top:35px;
}

.collab-right{
padding-top:0;
}

.collab-footer-line{
width:calc(100% - 36px);
margin-top:65px;
flex-wrap:wrap;
justify-content:flex-start;
}

.mission{
min-height:560px;
}

.footer-main{
width:calc(100% - 36px);
grid-template-columns:1fr;
gap:50px;
}

.footer-word{
width:calc(100% - 36px);
font-size:130px;
}

.footer-bottom{
width:calc(100% - 36px);
}

}

/* MOBILE */

@media(max-width:600px){

html,
body{
width:100%;
max-width:100%;
overflow-x:hidden;
}

body{
font-size:16px;
}

p{
font-size:16px;
}

.container{
width:calc(100% - 30px);
}

.header-main{
width:calc(100% - 30px);
min-height:65px;
gap:8px;
}

.logo{
min-width:0;
}

.logo-name{
font-size:18px;
}

.logo-symbol{
transform:scale(.9);
transform-origin:left center;
}

.header-actions{
gap:5px;
}

.search-btn{
width:35px;
}

.mobile-inner{
padding-left:20px;
padding-right:20px;
}

.mobile-menu nav a{
font-size:16px;
}

/* EXISTING GENERAL MOBILE */

.hero-grid{
width:calc(100% - 30px);
}

.hero-sticky{
padding-top:32px;
}

.hero-topline{
align-items:flex-start;
}

.hero-topline span{
font-size:12px;
}

.hero-number,
.hero-category{
font-size:14px;
}

.hero-sticky h1{
margin-top:12px;
font-size:46px;
line-height:.97;
letter-spacing:-1px;
}

.hero-sticky>p{
font-size:16px;
line-height:1.7;
}

.hero-button{
font-size:16px;
}

.hero-side-note>span{
font-size:12px;
}

.hero-banner{
min-height:450px;
padding:20px;
}

.story-top{
font-size:12px;
}

.banner-content{
padding:50px 0 40px;
}

.banner-content small{
font-size:14px;
}

.banner-content h2{
font-size:45px;
letter-spacing:-1px;
}

.banner-content p{
font-size:16px;
}

.banner-content a{
font-size:16px;
}

.story-bottom{
font-size:12px;
}

.image-story,
.image-story-content{
min-height:450px;
}

.image-story-content{
padding:20px;
}

.story-bottom-content small{
font-size:14px;
}

.story-bottom-content h2{
font-size:43px;
}

.story-bottom-content p{
font-size:16px;
}

.split-story{
grid-template-columns:1fr;
}

.split-story-image{
height:280px;
}

.split-story-image img{
min-height:280px;
}

.split-story-copy{
min-height:390px;
padding:30px;
}

.split-story-copy>span{
font-size:14px;
}

.split-story-copy h2{
font-size:40px;
}

.split-story-copy p{
font-size:16px;
}

.idea-story{
min-height:410px;
}

.idea-content{
padding:35px;
}

.idea-content>span{
font-size:13px;
}

.idea-content h2{
font-size:43px;
}

.idea-content p{
font-size:16px;
}

.idea-number{
font-size:80px;
}

.about,
.story-section,
.voices,
.team,
.grants,
.contact{
padding:75px 0;
}

.about-title>span,
.section-title span,
.voices-head span{
font-size:14px;
}

.about-title h2,
.section-title h2,
.voices-head h2{
font-size:43px;
}

.about-copy .about-lead{
font-size:22px;
}

.about-copy p{
font-size:16px;
}

.story-heading h2{
font-size:45px;
}

.story-heading p{
font-size:16px;
}

.story-card{
min-height:470px;
}

.story-normal,
.story-hover{
padding:25px;
}

.story-normal span,
.story-hover span{
font-size:13px;
}

.story-normal h3{
font-size:37px;
}

.story-hover h3{
font-size:39px;
}

.story-normal small{
font-size:13px;
}

.story-hover p{
font-size:16px;
}

.voices-photo,
.voices-photo img,
.voices-idea{
min-height:450px;
}

.photo-top{
left:20px;
right:20px;
font-size:13px;
}

.photo-bottom{
left:20px;
right:20px;
bottom:25px;
}

.photo-bottom span{
font-size:13px;
}

.photo-bottom h3{
font-size:52px;
}

.photo-arrow{
right:20px;
bottom:25px;
}

.idea-copy{
left:30px;
right:30px;
bottom:35px;
}

.idea-copy small{
font-size:13px;
}

.idea-copy h3{
font-size:41px;
}

.idea-copy p{
font-size:16px;
}

.team-grid{
grid-template-columns:1fr;
}

.team-image{
height:430px;
}

.team-card>small{
font-size:14px;
}

.team-card h3{
font-size:30px;
}

.team-card p{
font-size:16px;
}

.grant-grid{
grid-template-columns:1fr;
}

.grant-card{
min-height:280px;
}

.grant-card h3{
margin-top:50px;
}

.grant-card p{
font-size:16px;
}

/* COLLAB */

.collaboration{
padding:75px 0 40px;
}

.collab-watermark{
left:-10%;
bottom:20px;
font-size:125px;
}

.collaboration-inner{
width:calc(100% - 30px);
}

.collab-meta{
font-size:13px;
}

.collab-label{
margin-top:45px;
font-size:14px;
}

.collab-left h2{
margin-top:16px;
font-size:50px;
line-height:.93;
letter-spacing:-1px;
}

.collab-small{
margin-top:30px;
font-size:20px;
}

.collab-right{
padding-top:10px;
}

.collab-lead{
font-size:21px;
line-height:1.4;
}

.collab-introduction>p:not(.collab-lead){
font-size:16px;
line-height:1.75;
}

.collab-list{
margin-top:38px;
}

.collab-item{
grid-template-columns:35px minmax(0,1fr) 35px;
gap:10px;
padding:22px 0;
}

.collab-item:hover{
padding-left:0;
padding-right:0;
}

.collab-item-number{
font-size:21px;
}

.collab-item-text>span{
font-size:12px;
}

.collab-item-text h3{
font-size:23px;
line-height:1.2;
}

.collab-item-text p{
font-size:15px;
line-height:1.55;
}

.collab-item-arrow{
width:32px;
height:32px;
font-size:11px;
}

.collab-contact{
flex-direction:column;
align-items:stretch;
gap:22px;
}

.collab-contact>div>span{
font-size:12px;
}

.collab-contact>div>a{
font-size:17px;
line-height:1.35;
overflow-wrap:anywhere;
}

.collab-button{
width:100%;
justify-content:center;
font-size:16px;
}

.collab-footer-line{
width:calc(100% - 30px);
margin-top:60px;
gap:10px 18px;
font-size:11px;
}

/* MISSION */

.mission{
min-height:520px;
padding:50px 15px;
}

.mission-ring{
width:390px;
height:390px;
}

.mission-content{
width:calc(100% - 20px);
}

.mission-content>span{
font-size:14px;
}

.mission-content h2{
font-size:46px;
}

.mission-content p{
font-size:16px;
}

/* CONTACT */

.contact-copy h2{
font-size:46px;
}

.contact-copy p{
font-size:16px;
}

.contact-copy>a{
font-size:17px;
}

.contact-form label{
font-size:14px;
}

.contact-form input,
.contact-form textarea{
font-size:16px;
}

/* NEWSLETTER */

.newsletter{
padding:75px 15px;
}

.newsletter-inner>span{
font-size:14px;
}

.newsletter-inner h2{
font-size:46px;
}

.newsletter-inner>p{
font-size:16px;
}

.newsletter-inner form{
display:block;
border:0;
}

.newsletter-inner input{
border-bottom:1px solid #1f1f1d;
font-size:16px;
}

.newsletter-inner button{
width:100%;
margin-top:15px;
padding:15px;
color:white;
background:#1f1f1d;
font-size:16px;
}

/* FOOTER */

.footer{
padding-top:65px;
}

.footer-main{
width:calc(100% - 30px);
}

.footer-nav{
grid-template-columns:1fr 1fr;
gap:35px 25px;
}

.footer-nav span{
font-size:14px;
}

.footer-nav a{
font-size:16px;
}

.footer-word{
width:calc(100% - 30px);
margin-top:60px;
font-size:105px;
}

.footer-bottom{
width:calc(100% - 30px);
flex-direction:column;
align-items:flex-start;
font-size:12px;
}

#backTop{
align-self:flex-end;
}

/* SUPPORT PAGE MOBILE FIX */

.support-hero{
min-height:560px;
align-items:center;
}

.support-hero-inner{
width:calc(100% - 30px);
padding:70px 0 85px;
}

.support-hero h1{
max-width:100%;
font-size:clamp(52px,15vw,72px);
line-height:.92;
letter-spacing:-2px;
}

.hero-label{
gap:10px;
margin-bottom:22px;
font-size:9px;
letter-spacing:1.8px;
line-height:1.4;
}

.label-line{
width:35px;
flex-shrink:0;
}

.support-hero .hero-number{
right:-55px;
top:18%;
font-size:220px;
}

.support-hero .hero-orbit{
right:-220px;
width:440px;
height:440px;
}

.support-hero .orbit-one{
width:440px;
height:440px;
}

.support-hero .orbit-two{
width:330px;
height:330px;
right:-165px;
}

.support-hero .orbit-three{
width:230px;
height:230px;
right:-115px;
}

.support-hero .hero-bottom{
grid-template-columns:1fr;
gap:20px;
margin-top:45px;
}

.support-hero .hero-bottom p{
max-width:100%;
font-size:16px;
line-height:1.65;
}

.support-hero .hero-scroll{
position:static;
width:max-content;
max-width:100%;
font-size:9px;
}

.support-hero .hero-handwriting{
position:absolute;
right:15px;
bottom:18px;
font-size:23px;
}

.support-intro,
.funds-section,
.stewardship,
.ways{
padding:70px 0;
}

.intro-layout{
grid-template-columns:1fr;
gap:35px;
}

.intro-number{
flex-direction:row;
align-items:center;
gap:14px;
}

.intro-number span{
font-size:58px;
}

.intro-number small{
font-size:10px;
letter-spacing:1.8px;
}

.intro-copy h2,
.section-heading h2,
.ways-heading h2{
font-size:clamp(42px,11vw,58px);
line-height:.98;
letter-spacing:-1.5px;
}

.intro-copy>p,
.section-heading p,
.ways-heading>p{
font-size:16px;
line-height:1.7;
}

.impact-strip{
grid-template-columns:1fr;
gap:20px;
padding-top:25px;
}

.impact-strip strong{
font-size:24px;
}

.funds-section .container,
.stewardship .container,
.ways .container,
.transparency .container,
.support-cta .container,
.closing .container{
width:calc(100% - 30px);
}

.section-heading{
grid-template-columns:1fr;
gap:20px;
margin-bottom:40px;
}

.funds-grid{
grid-template-columns:1fr;
}

.fund-card{
min-height:0;
padding:25px;
}

.fund-top{
margin-bottom:30px;
}

.fund-card h3{
font-size:25px;
line-height:1.12;
}

.fund-card p{
font-size:15px;
line-height:1.65;
}

.stewardship-grid{
grid-template-columns:1fr;
gap:45px;
}

.stewardship-heading h2,
.transparency-content h2{
font-size:clamp(45px,12vw,65px);
line-height:.96;
letter-spacing:-2px;
}

.stewardship-number{
margin-top:35px;
font-size:110px;
}

.large-copy{
margin-bottom:30px;
font-size:24px;
line-height:1.3;
}

.stewardship-content>p{
font-size:16px;
line-height:1.7;
}

.steward-point{
padding:20px 0;
}

.steward-point p{
font-size:15px;
line-height:1.6;
}

.ways-heading{
margin-bottom:40px;
}

.way-item{
grid-template-columns:35px 50px minmax(0,1fr) 25px;
gap:12px;
min-height:0;
padding:22px 0;
}

.way-item:hover{
padding:22px 0;
}

.way-number{
font-size:17px;
}

.way-icon{
width:45px;
height:45px;
font-size:15px;
}

.way-copy h3{
font-size:22px;
line-height:1.15;
}

.way-copy p{
font-size:15px;
line-height:1.6;
}

.way-arrow{
font-size:12px;
}

.transparency{
padding:75px 0;
min-height:0;
}

.transparency-inner{
grid-template-columns:1fr;
gap:25px;
}

.transparency-number{
font-size:70px;
}

.transparency-icon{
width:50px;
height:50px;
margin-bottom:20px;
}

.transparency-content>p{
font-size:16px;
line-height:1.7;
}

.transparency-signature{
font-size:24px;
}

.support-cta{
padding:75px 0;
}

.cta-inner h2{
font-size:clamp(46px,12vw,70px);
line-height:.95;
letter-spacing:-2px;
margin-bottom:30px;
}

.cta-inner>p{
font-size:16px;
line-height:1.7;
}

.cta-contacts{
grid-template-columns:1fr;
gap:10px;
}

.contact-email{
min-height:58px;
padding:12px 15px;
font-size:14px;
gap:10px;
}

.contact-email span{
overflow-wrap:anywhere;
}

.closing{
min-height:380px;
}

.closing-word{
font-size:clamp(95px,28vw,180px);
}

.closing-inner p{
font-size:24px;
line-height:1.3;
}

.closing-script{
font-size:24px;
}

}

/* VERY SMALL MOBILE */

@media(max-width:380px){

.support-hero{
min-height:520px;
}

.support-hero-inner{
padding:60px 0 75px;
}

.support-hero h1{
font-size:47px;
letter-spacing:-1.5px;
}

.support-hero .hero-bottom{
margin-top:35px;
}

.support-hero .hero-handwriting{
font-size:20px;
}

.intro-copy h2,
.section-heading h2,
.ways-heading h2{
font-size:40px;
}

.fund-card h3{
font-size:23px;
}

.way-item{
grid-template-columns:28px 44px minmax(0,1fr) 20px;
gap:8px;
}

.way-icon{
width:40px;
height:40px;
}

.way-copy h3{
font-size:20px;
}

.way-copy p{
font-size:14px;
}

.cta-inner h2{
font-size:42px;
}

}

/* REDUCED MOTION */

@media(prefers-reduced-motion:reduce){

html{
scroll-behavior:auto;
}

*,
*::before,
*::after{
animation-duration:.01ms!important;
animation-iteration-count:1!important;
transition-duration:.01ms!important;
}

}