:root{--deep-green: #1f5b3c;--light-green: #6bb78b;--warm-yellow: #f2c94c;--soft-beige: #f7f4ed;--muted-green: #dbece2;--text-dark: #2d2a26;--text-muted: #4f6456;--white: #ffffff;--shadow-soft: 0 12px 30px rgba(31, 91, 60, .08);--shadow-lift: 0 8px 20px rgba(0, 0, 0, .15);font-family:Segoe UI,Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background-color:var(--soft-beige);color:var(--text-dark);line-height:1.6}a{color:var(--deep-green);text-decoration:none}a:hover,a:focus{text-decoration:underline}img{max-width:100%;display:block}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.skip-link{position:absolute;top:-100%;left:1rem;padding:.75rem 1rem;background-color:var(--deep-green);color:var(--white);border-radius:.75rem;transition:top .2s ease;z-index:9999}.skip-link:focus{top:1rem}.container{width:min(1100px,92vw);margin:0 auto}.site-header{position:sticky;top:0;z-index:1000;background-color:#f7f4edf2;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 2px 12px #00000014}.nav-bar{display:flex;align-items:center;justify-content:space-between;padding:.75rem 0;position:relative}.site-branding{display:flex;align-items:center;gap:.5rem}.site-logo{font-size:1.4rem}.site-title{font-weight:700;font-size:1.1rem;color:var(--deep-green);letter-spacing:.5px;margin:0}.primary-nav{position:relative}.nav-list{list-style:none;display:flex;gap:1.5rem;padding:0;margin:0}.nav-list a{font-weight:600}.nav-toggle{display:none;border:0;background:none;color:var(--deep-green);cursor:pointer;width:2.75rem;height:2.75rem;border-radius:50%;align-items:center;justify-content:center}.nav-toggle__bar,.nav-toggle__bar:before,.nav-toggle__bar:after{display:block;width:1.4rem;height:2px;background-color:var(--deep-green);position:relative;transition:transform .2s ease,opacity .2s ease}.nav-toggle__bar:before,.nav-toggle__bar:after{content:"";position:absolute;left:0}.nav-toggle__bar:before{top:-.4rem}.nav-toggle__bar:after{top:.4rem}.nav-toggle[aria-expanded=true] .nav-toggle__bar{background-color:transparent}.nav-toggle[aria-expanded=true] .nav-toggle__bar:before{transform:translateY(.4rem) rotate(45deg)}.nav-toggle[aria-expanded=true] .nav-toggle__bar:after{transform:translateY(-.4rem) rotate(-45deg)}.hero{position:relative;isolation:isolate;overflow:hidden;background-color:var(--soft-beige);color:var(--text-dark);text-align:center;padding:clamp(2.6rem,6vw,4.5rem) clamp(1.5rem,5vw,3rem);min-height:clamp(540px,92vh,940px);display:flex;align-items:center}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,#f7f4ede6 10%,#f7f4edbf 34%,#f7f4ed2e 72%);z-index:0;pointer-events:none}.hero__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;z-index:0;pointer-events:none}.hero__inner{display:flex;justify-content:center;align-items:center;width:min(1200px,95vw);min-height:inherit;position:relative;z-index:1}.hero__copy{background:#ffffffd1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:clamp(1.4rem,4vw,2rem);border-radius:22px;box-shadow:0 16px 40px #1f5b3c1f;max-width:680px}.hero__title{font-size:clamp(2.4rem,5vw,3.4rem);margin:0 0 .75rem;color:var(--deep-green);letter-spacing:.4px;line-height:1.1;text-shadow:0 12px 40px rgba(0,0,0,.18)}.hero__tagline{font-size:clamp(1.2rem,3vw,1.6rem);margin-bottom:1rem}.hero__intro{margin-bottom:2.5rem;font-size:1.05rem}.button-group{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.btn{display:inline-block;padding:.8rem 1.6rem;border-radius:999px;font-weight:600;border:none;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;text-align:center}.btn:focus-visible{outline:3px solid rgba(107,183,139,.45);outline-offset:2px}.btn:hover,.btn:focus-visible{transform:translateY(-2px)}.btn--primary{background-color:var(--warm-yellow);color:#1f2a1d;box-shadow:var(--shadow-lift)}.btn--secondary{background-color:var(--white);color:var(--deep-green);box-shadow:0 8px 20px #1f5b3c24}.section{padding:4.5rem 0}.section--alt{background-color:var(--white)}.section__header{text-align:center;margin-bottom:2.5rem}.section__intro{max-width:680px;margin:0 auto;color:var(--text-muted)}.section h2{font-size:clamp(1.9rem,4vw,2.6rem);color:var(--deep-green);margin-bottom:1rem}.grid{display:grid;gap:1.5rem}.card,.project-card,.story-card{background-color:var(--white);border-radius:18px;padding:1.75rem;box-shadow:var(--shadow-soft)}.card__body>h3,.project-card>h3{margin-top:0;color:var(--deep-green)}.card__body{display:grid;gap:.75rem}.card__body time{display:block;font-size:.95rem;color:var(--text-muted);margin-bottom:.5rem}.card__list{padding-left:1.25rem;margin:0;display:grid;gap:.25rem;color:var(--text-muted)}.card__list li{font-size:.95rem}.card__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.25rem}.card__link{font-weight:600}.stack{display:grid;gap:1.5rem}.event-card{background-color:var(--white);border-radius:18px;padding:1.75rem;border-left:6px solid var(--light-green);box-shadow:var(--shadow-soft)}.event-card__header h3{margin:0;color:var(--deep-green)}.event-card__meta{margin:.35rem 0 1rem;color:var(--text-muted);font-size:.95rem}.project-card{border-top:6px solid var(--warm-yellow)}.story-card blockquote{margin:0;font-style:italic}.story-card__author{margin-top:1rem;font-weight:600;color:var(--text-muted)}.section--gallery{background-color:var(--white)}.gallery{display:grid;gap:1.5rem}.gallery__item{background-color:var(--soft-beige);border-radius:18px;box-shadow:var(--shadow-soft);overflow:hidden;display:grid;gap:0}.gallery__item img{width:100%;height:100%;object-fit:cover;aspect-ratio:4 / 3}.gallery__item figcaption{padding:1rem 1.25rem 1.25rem;background-color:#ffffffeb;font-size:.95rem;color:var(--text-muted)}.contact__grid{display:grid;gap:2rem}.contact-form{background-color:var(--white);border-radius:18px;padding:2rem;box-shadow:var(--shadow-soft)}.form-field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:1.1rem}label{font-weight:600}input,textarea{width:100%;padding:.75rem;border-radius:12px;border:1px solid #cbd7ce;font:inherit;background-color:#fdfbf6;transition:border-color .2s ease,box-shadow .2s ease}input:focus,textarea:focus{outline:none;border-color:var(--light-green);box-shadow:0 0 0 3px #6bb78b40}.contact-details{background-color:var(--muted-green);border-radius:18px;padding:2rem}.contact-details__list{list-style:none;padding:0;margin:1rem 0;display:grid;gap:.5rem}.site-footer{background-color:#1f402d;color:#eaf3ec;padding:2.5rem 0}.footer__inner{display:grid;gap:1.5rem;text-align:center}.footer__title{font-weight:700;margin-bottom:.25rem}.footer__links{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;justify-content:center;gap:1rem}.footer__nav a{color:#eaf3ec}@media (max-width: 768px){.nav-toggle{display:inline-flex}.nav-list{position:absolute;top:calc(100% + .5rem);right:0;flex-direction:column;align-items:flex-start;padding:1rem 1.5rem;width:min(280px,80vw);background-color:#f7f4edfa;box-shadow:0 12px 30px #0000001f;border-radius:12px;transform-origin:top;transform:scaleY(0);transition:transform .2s ease;gap:1rem;pointer-events:none;opacity:0}.nav-list.is-open{transform:scaleY(1);pointer-events:auto;opacity:1}.hero{aspect-ratio:unset;min-height:clamp(520px,95vh,820px);padding:clamp(2.5rem,9vw,4rem) clamp(1.1rem,7vw,2.5rem)}.hero__inner{width:100%;align-items:center}.hero__copy{max-width:100%;margin:0 auto}}@media (min-width: 600px){.grid--news,.grid--projects,.grid--stories,.gallery{grid-template-columns:repeat(2,1fr)}.contact__grid{grid-template-columns:1.1fr .9fr}}@media (min-width: 900px){.grid--news,.grid--projects{grid-template-columns:repeat(3,1fr)}.grid--stories{grid-template-columns:repeat(4,1fr)}.gallery{grid-template-columns:repeat(3,1fr)}.footer__inner{grid-template-columns:1fr auto;align-items:center;text-align:left}.footer__links{justify-content:flex-end}}
