:root{--green:#06392c;--mint:#95f3cc;--yellow:#fff04b;--paper:#f9f7ef;--ink:#0b241d}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:65px}body{margin:0;font-family:'DM Sans',Arial,sans-serif;background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit}button{cursor:pointer}a{color:inherit}img{width:100%;height:100%;object-fit:cover;display:block}.skip{position:absolute;top:-80px;left:5px;background:var(--yellow);padding:10px;z-index:100}.skip:focus{top:5px}.header{position:absolute;z-index:20;top:0;left:0;width:100%;display:flex;align-items:center;gap:25px;padding:22px clamp(20px,5vw,75px);color:white}.logo,.footer-logo{text-decoration:none;display:flex;flex-direction:column}.logo strong,.footer-logo{font:800 27px/1.05 'Manrope',Arial,sans-serif;letter-spacing:-1.7px;white-space:nowrap}.logo small{font-size:10px;margin-top:5px}.nav{margin-left:auto;display:flex;align-items:center;gap:clamp(12px,2vw,30px)}.nav a{font-size:13px;text-decoration:none;font-weight:700;white-space:nowrap}.nav a:hover{text-decoration:underline}.header-action{background:var(--yellow);color:var(--ink);font-size:13px;font-weight:800;text-decoration:none;padding:13px 17px;border-radius:4px;white-space:nowrap;box-shadow:4px 4px 0 #0006;transition:transform .2s}.header-action:hover{transform:translateY(-2px)}.header-action span{font-size:21px;line-height:9px}.reverse{display:inline-block;transform:rotate(180deg)}.menu-btn,.mobile-menu{display:none}.hero{position:relative;min-height:690px;color:#fff;background:#15392e;overflow:hidden}.hero-img,.hero-shade{position:absolute;inset:0}.hero-img{object-position:center 45%}.hero-shade{background:linear-gradient(90deg,rgba(0,21,14,.88),rgba(1,24,18,.65) 39%,rgba(0,14,8,.08)),linear-gradient(0deg,#001c12a3,transparent 30%)}.hero-inner{position:relative;z-index:2;padding:156px clamp(25px,6vw,92px) 85px}.section-number{font-size:11px;letter-spacing:1.7px;font-weight:800;color:#256346;text-transform:uppercase}.section-number.light{color:#edf3e9}.hero h1{font:800 clamp(62px,6.6vw,104px)/.98 'Manrope',Arial,sans-serif;letter-spacing:-5.2px;margin:22px 0}.hero h1 span{color:var(--yellow);position:relative}.hero h1 span:after{content:'';position:absolute;bottom:-6px;left:0;right:0;height:6px;background:var(--yellow);transform:rotate(-1deg)}.hero-subtitle{max-width:430px;font-size:16px;line-height:1.7;margin-bottom:23px}.hero-btn{display:inline-flex;align-items:center;gap:17px;background:var(--yellow);color:#061d16;text-decoration:none;font-size:19px;font-weight:800;padding:15px 20px;border-radius:6px;box-shadow:0 11px 23px #0003;transition:transform .2s}.hero-btn:hover{transform:translateY(-3px)}.hero-btn b{font-size:30px;line-height:13px}.hero-side{position:absolute;z-index:2;right:4.5%;top:46%;font-size:15px;font-weight:800;letter-spacing:2px;transform:rotate(8deg)}.about{padding:80px clamp(25px,5vw,78px);display:grid;grid-template-columns:1fr 1.4fr .85fr;gap:clamp(25px,4vw,65px);align-items:center}.about figure{margin:0;position:relative}.about-photo{height:345px;transform:rotate(-3deg);box-shadow:13px 13px 0 #e5e7db}.about-photo figcaption{position:absolute;bottom:-10px;right:-16px;background:white;padding:9px 12px;font-size:12px;font-weight:800;transform:rotate(8deg)}.about-city{height:325px;transform:rotate(4deg)}.about-city figcaption{position:absolute;bottom:-11px;left:-22px;background:var(--yellow);font-weight:800;font-size:13px;padding:10px 15px;transform:rotate(-10deg)}.about h2,.join h2{font:800 clamp(38px,4.2vw,62px)/1.07 'Manrope',Arial,sans-serif;letter-spacing:-3px;margin:13px 0 22px}.about h2 span,.join h2 span{color:var(--green)}.about-text>p:not(.section-number){font-size:16px;line-height:1.75;color:#41564a}.inline-link{display:inline-flex;gap:16px;align-items:center;margin-top:13px;font-weight:800;text-decoration:underline;text-underline-offset:5px;font-size:14px}.inline-link span{font-size:19px}.campaign{display:grid;grid-template-columns:minmax(270px,33%) 1fr 265px;gap:clamp(20px,3vw,50px);align-items:center;min-height:390px;background:#ebeae0;padding-right:clamp(20px,5vw,78px)}.campaign-image{position:relative;height:390px}.campaign-sticker{position:absolute;left:25px;top:35px;transform:rotate(-8deg);background:#fffdf5;padding:15px;font-size:13px;font-weight:800;line-height:1.2}.campaign-text h2{font:800 clamp(47px,4.2vw,70px)/1.03 'Manrope',Arial,sans-serif;letter-spacing:-3.5px;margin:15px 0 19px}.campaign-text h2 span{color:var(--green)}.campaign-text>p:not(.section-number){line-height:1.7;font-size:15px;max-width:470px}.campaign-text>small{color:#526b5d;font-size:12px;font-weight:700}.campaign-widget{background:#fffefa;box-shadow:0 10px 30px #18362710;padding:29px 23px}.campaign-widget>span{font-size:11px;font-weight:800;letter-spacing:1.3px}.campaign-widget strong{display:block;font:800 40px 'Manrope',Arial,sans-serif;letter-spacing:-2px;margin:8px 0 20px}.campaign-widget strong small{font-size:17px}.campaign-progress{height:9px;background:#e0e7df;border-radius:30px}.campaign-widget p{font-size:13px;color:#50695c;line-height:1.5}.donate-btn,.submit-btn{width:100%;border:0;background:var(--green);color:white;border-radius:4px;display:flex;justify-content:space-between;align-items:center;padding:15px 16px;font-weight:800;transition:background .2s,transform .2s}.donate-btn:hover,.submit-btn:hover{background:#09664e;transform:translateY(-2px)}.donate-btn span,.submit-btn span{font-size:23px}.directions{background:var(--green);color:white;padding:60px clamp(22px,5vw,75px) 72px}.directions-heading{display:flex;justify-content:space-between;align-items:baseline;gap:30px;margin-bottom:25px}.directions-heading h2{font:800 clamp(24px,2.7vw,38px) 'Manrope',Arial,sans-serif;letter-spacing:-1.4px;margin:0}.directions-heading h2 em{font-style:normal;color:var(--mint)}.tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:11px}.tile{position:relative;height:350px;overflow:hidden;text-decoration:none;background:#0b6149}.tile img{transition:transform .55s}.tile:hover img{transform:scale(1.07)}.tile:after{position:absolute;inset:0;content:'';background:linear-gradient(0deg,#001b15e8,transparent 66%)}.tile div{z-index:1;position:absolute;bottom:0;padding:21px}.tile small{color:var(--mint);font-weight:800;letter-spacing:1.4px}.tile h3{font:800 clamp(26px,2.5vw,38px) 'Manrope',Arial,sans-serif;letter-spacing:-1.3px;margin:8px 0}.tile p{font-size:13px;line-height:1.5;margin:0}.join{padding:85px clamp(25px,5vw,78px);display:grid;grid-template-columns:1fr 1.08fr;gap:clamp(45px,7vw,110px)}.join h2{font-size:clamp(60px,6vw,90px);letter-spacing:-4.5px}.join-copy>p:not(.section-number){font-size:17px;max-width:475px;line-height:1.7;color:#44584d}.join-image{height:265px;max-width:360px;transform:rotate(-3deg);margin-top:27px}.join-form-panel{padding:40px;background:white;box-shadow:0 15px 60px #18342713}.join-form-panel h3{font:800 33px 'Manrope',Arial,sans-serif;letter-spacing:-1.5px;margin:8px 0 28px}.join-form-panel form{display:flex;flex-direction:column;gap:16px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}.join-form-panel label{display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:800}.join-form-panel label b{color:#d74e43}.join-form-panel label small{font-weight:400;color:#789084}.join-form-panel input:not([type=checkbox]),.join-form-panel textarea,.custom input{width:100%;border:1px solid #d0dcd4;background:#fbfcf9;padding:13px;border-radius:3px;outline:none;color:var(--ink)}.join-form-panel input:focus,.join-form-panel textarea:focus,.custom input:focus{border-color:#247a5a;box-shadow:0 0 0 3px #79bd9c35}.join-form-panel textarea{resize:vertical;min-height:98px}.join-form-panel .check{font-size:12px;font-weight:500;line-height:1.55;display:flex;align-items:flex-start;flex-direction:row;gap:11px;color:#56695b}.check input{flex:0 0 auto;width:17px;height:17px;accent-color:var(--green);margin:2px 0 0}.check a{font-weight:800}.fine-print{font-size:12px;color:#647769;line-height:1.55;margin:0}.feedback{font-size:13px;font-weight:700;line-height:1.5}.feedback.ok{color:#14704e}.feedback.err{color:#b23a2b}.spam-trap{position:absolute!important;left:-9999px!important;opacity:0!important}.footer{background:#052d23;color:#f8fff8;padding:55px clamp(25px,5vw,78px) 25px}.footer-inner{display:grid;grid-template-columns:1.2fr .8fr 1fr;gap:50px;padding-bottom:45px}.footer-logo{font-size:30px}.footer-inner p,.footer-contact span{font-size:12px;color:#aac5b5}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:13px}.footer-links a,.footer-contact a{font-size:13px;text-decoration:none}.footer-links a:hover,.footer-contact a:hover{text-decoration:underline}.footer-contact{display:flex;flex-direction:column;gap:14px}.footer-contact a{font-weight:800}.footer-bottom{border-top:1px solid #ffffff32;padding-top:20px;display:flex;justify-content:space-between;gap:15px;font-size:11px;color:#bdcec1}dialog{width:min(480px,calc(100% - 36px));border:0;border-radius:7px;box-shadow:0 25px 100px #0007;padding:33px;color:var(--ink)}dialog::backdrop{background:#001a12c5;backdrop-filter:blur(4px)}dialog .close-dialog{position:absolute;right:14px;top:10px;border:0;background:none;font-size:30px}dialog h2{font:800 35px/1.1 'Manrope',Arial,sans-serif;letter-spacing:-1.5px;margin:17px 0}dialog>p:not(.section-number){line-height:1.65}.amounts{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:19px 0}.amount{background:#fff;border:1px solid #c6d3c6;padding:12px 5px;font-size:12px;font-weight:800}.amount.selected{background:var(--green);color:#fff}.custom{display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:800}.donation-info{background:#f0f5ef;padding:15px;font-size:13px;line-height:1.55;margin:21px 0}.donation-mail{display:block;text-align:center;text-decoration:none;color:white;background:var(--green);border-radius:3px;padding:15px;font-size:13px;font-weight:800}.policy{max-width:780px;margin:65px auto;padding:25px}.policy h1{font:800 48px 'Manrope',Arial}.policy p{line-height:1.7}
@media(max-width:1100px){.header-action{font-size:11px;padding:12px}.nav{gap:14px}.about-city{display:none}.about{grid-template-columns:1fr 1.6fr}.campaign{grid-template-columns:32% 1fr;gap:24px;padding-bottom:30px}.campaign-widget{grid-column:2}.campaign-image{grid-row:span 2;height:100%}.join{gap:35px}}@media(max-width:850px){.nav,.header-action{display:none}.menu-btn{display:flex;margin-left:auto;border:1px solid #ffffff77;background:#0004;border-radius:4px;padding:9px;gap:5px;flex-direction:column;width:47px;align-items:center}.menu-btn span{display:block;height:2px;width:25px;background:#fff}.mobile-menu:not([hidden]){z-index:30;position:absolute;top:75px;left:15px;right:15px;display:flex;flex-direction:column;padding:20px;background:var(--paper);box-shadow:0 20px 40px #0004}.mobile-menu a{text-decoration:none;color:var(--ink);font-weight:800;padding:11px}.tiles{grid-template-columns:1fr 1fr}.join{grid-template-columns:1fr}.join-image{display:none}}@media(max-width:600px){.header{padding:20px}.hero{min-height:690px}.hero-shade{background:linear-gradient(0deg,#001b15ef,#001b1588 55%,#001b1517)}.hero-img{object-position:55% center}.hero-inner{padding:220px 22px 70px}.hero h1{font-size:clamp(50px,12.5vw,78px);letter-spacing:-3px}.hero-subtitle{font-size:14px}.hero-side{display:none}.hero-btn{font-size:15px;padding:15px 14px;gap:10px}.hero-btn b{font-size:26px}.about{grid-template-columns:1fr;padding:55px 23px}.about-photo{order:2;width:75%;height:215px;margin-left:auto!important}.about-text{order:1}.about h2{font-size:45px}.about-text>p:not(.section-number){font-size:15px}.campaign{display:flex;flex-direction:column;padding:0;gap:0}.campaign-image{height:240px;width:100%}.campaign-text{padding:25px 22px 0}.campaign-text h2{font-size:53px}.campaign-widget{width:calc(100% - 44px);margin:15px 22px 30px}.directions{padding:49px 12px 50px}.directions-heading{padding:0 12px;display:block}.directions-heading h2{font-size:27px}.tiles{gap:7px}.tile{height:255px}.tile div{padding:13px}.tile h3{font-size:24px}.tile p{font-size:11px}.join{padding:65px 20px}.join h2{font-size:65px}.join-copy>p:not(.section-number){font-size:15px}.join-form-panel{padding:27px 20px}.fields{grid-template-columns:1fr}.footer{padding:45px 20px 25px}.footer-inner{grid-template-columns:1fr;gap:34px}.footer-bottom{flex-direction:column}.about-photo figcaption{font-size:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Full-bleed photography, with readable text and responsive focal points. */
body{overflow-x:clip}
.hero{min-height:100svh;display:flex;align-items:center;background:var(--green)}
.hero-img{inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center 43%;border:0;box-shadow:none;transform:none}
.hero-shade{background:linear-gradient(90deg,rgba(0,24,17,.93) 0%,rgba(0,24,17,.84) 24%,rgba(0,24,17,.4) 48%,rgba(0,24,17,.04) 76%),linear-gradient(180deg,#001b1466,transparent 25%,#001b1433);pointer-events:none}
.hero-inner{width:100%;padding:145px clamp(25px,6vw,92px) 80px}
.hero h1{font-size:clamp(62px,6.6vw,104px);line-height:1.04;letter-spacing:-4px}
.hero h1 span:after{bottom:1px;height:3px}
.hero-subtitle{max-width:430px}
.hero-side{top:auto;bottom:45px;right:5%;font-size:13px;transform:rotate(-3deg)}
.about-photo{height:auto;aspect-ratio:4/3}
.about-photo img{object-fit:cover;object-position:54% 45%}
.about-city img{object-position:48% center}
.campaign-image img{object-position:58% center}
.tile:nth-child(1) img{object-position:60% center}
.tile:nth-child(2) img{object-position:53% 58%}
.tile:nth-child(3) img{object-position:55% center}
.tile:nth-child(4) img{object-position:58% center}
.join{grid-template-columns:1.1fr 1fr;gap:clamp(35px,5vw,78px)}
.join-image{display:block;width:100%;max-width:none;height:auto;aspect-ratio:4/3;transform:rotate(-1.5deg);margin-top:35px;box-shadow:10px 10px 0 #e5e7db}
.join-image img{object-fit:contain;background:#e6e9df}
@media(max-width:850px){
 .hero-img{object-position:60% center}
 .hero-inner{padding-top:155px;padding-bottom:75px}
 .hero h1{font-size:clamp(58px,9vw,76px);letter-spacing:-3px}
 .hero-side{display:none}
 .join{grid-template-columns:1fr}
 .join-image{max-width:650px}
}
@media(max-width:600px){
 .hero{align-items:flex-end}
 .hero-img{object-position:57% center}
 .hero-shade{background:linear-gradient(0deg,rgba(0,24,17,.98),rgba(0,24,17,.86) 30%,rgba(0,24,17,.18) 78%),linear-gradient(180deg,#001b1466,transparent 24%)}
 .hero-inner{padding:235px 22px 55px}
 .hero h1{font-size:clamp(50px,12.5vw,78px);line-height:1.04}
 .about-photo{height:auto;width:90%}
 .join-image{max-width:none;margin-top:28px}
}
