@font-face{font-family:Slab;src:url('assets/fonts/slab-regular.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:Slab;src:url('assets/fonts/slab-bold.ttf') format('truetype');font-weight:800;font-display:swap}@font-face{font-family:Slab;src:url('assets/fonts/slab-black.ttf') format('truetype');font-weight:900;font-display:swap}@font-face{font-family:Allura;src:url('assets/fonts/allura.ttf') format('truetype');font-weight:400;font-display:swap}
:root{--green:#173629;--ink:#14281f;--copper:#ad4b13;--cream:#f2ece2;--line:#c8b9a6;--pad:5.3%;--body:clamp(17px,2.12vw,27px)}*{box-sizing:border-box}main,section,article,section>div{min-width:0}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:var(--cream);color:var(--ink);font:400 var(--body)/1.42 Slab,Georgia,serif}img{max-width:100%;display:block}a{color:inherit}button{font:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:900;line-height:1.08}h2{color:var(--green);font-size:clamp(34px,5.9vw,76px);letter-spacing:-.035em}p{letter-spacing:-.025em}section,footer{scroll-margin-top:24px}.site-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px var(--pad) 32px}.brand{display:block;width:16%;max-width:280px;flex-shrink:0}.brand img{width:100%;height:auto}.site-header nav{display:flex;align-items:center;justify-content:flex-end;gap:clamp(9px,1.25vw,18px);font:600 clamp(11px,1.25vw,16px)/1.3 Arial,sans-serif}.site-header nav a{text-decoration:none;white-space:nowrap;padding:12px 0}.site-header nav a+a:before{content:'·';color:var(--copper);margin-right:clamp(9px,1.25vw,18px)}.site-header nav a:hover{text-decoration:underline;text-underline-offset:6px}.menu-toggle{display:none}.hero-heading{padding:20px var(--pad) 0;min-height:260px;position:relative}.hero-heading h1{font-size:clamp(54px,8.6vw,112px);letter-spacing:-.025em;line-height:.97;position:relative;z-index:1}.motto{font-family:Allura,cursive;font-size:clamp(28px,4.45vw,58px);line-height:1.15;color:var(--copper);margin:0 0 10px 9%;position:relative;z-index:1;letter-spacing:0}.flow-lines{position:relative;overflow:hidden}.flow-lines:before{content:'';position:absolute;pointer-events:none;right:-6%;top:3%;width:57%;height:115%;background:url('assets/lines.png') center/100% 100% no-repeat;opacity:.8}.hero-images{display:grid;grid-template-columns:1fr 1.12fr .88fr;gap:4px}.hero-images img{width:100%;height:clamp(220px,26.5vw,355px);object-fit:cover}.intro-copy{padding:26px var(--pad) 38px;border-bottom:1px solid var(--line)}.about{display:grid;grid-template-columns:1fr 1.05fr;gap:5%;padding:30px 0 32px var(--pad)}.about-copy{padding:18px 0}.about-copy p{margin-top:35px;max-width:21em}.about-images{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1.1fr .9fr;gap:5px;min-height:400px}.about-images img{width:100%;height:100%;object-fit:cover;min-height:0}.about-images .river-tall{grid-row:1/3;object-position:53% center}.cauce{display:grid;grid-template-columns:1fr 1fr;background:var(--green);color:var(--cream)}.cauce-image{position:relative;min-height:360px;overflow:hidden}.cauce-image>img:first-child{height:100%;width:100%;object-fit:cover}.cauce-image .cauce-lines{position:absolute;inset:0;width:100%;height:100%;transform:rotate(35deg) scale(1.4);opacity:.9}.cauce-copy{padding:56px 13% 45px}.cauce h2{color:var(--cream);white-space:nowrap;padding-bottom:20px;border-bottom:2px solid var(--copper);font-size:clamp(36px,6.5vw,84px)}.cauce p{margin-top:22px}.method{display:grid;grid-template-columns:1.25fr .9fr;gap:3%;padding:32px 3% 20px 1.7%}.method-images{display:grid;grid-template-columns:2.2fr 1fr;grid-template-rows:1.5fr 1fr;gap:5px;min-height:360px}.method-images img{width:100%;height:100%;min-height:0;object-fit:cover}.method-images img:nth-child(2){grid-column:2;grid-row:1/3;object-position:75% center}.method-images img:nth-child(3){object-position:center 85%}.method-copy{padding:34px 0}.method h2{font-size:clamp(32px,4.8vw,62px)}.method p{margin-top:24px;font-size:.92em}.services{padding:36px 4.5% 48px}.services-heading{padding:10px 0 26px}.services-heading h2{position:relative;z-index:1;font-size:clamp(38px,6.5vw,84px)}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.service{border:1px solid var(--line);min-width:0}.service-photo{width:100%;height:clamp(145px,17vw,225px);object-fit:cover}.service-photo.suppliers{object-position:20% 65%}.service-photo.consultation{object-position:90% 75%}.service-copy{padding:0 5.5% 20px}.service-icon{width:48%;height:clamp(90px,11vw,140px);object-fit:contain;object-position:left center;margin-left:-3%}.service p{font-size:.78em;letter-spacing:-.025em}.service .number{color:var(--copper);font-size:.88em;margin:2px 0 6px}.service h3{font-size:clamp(22px,3vw,39px);letter-spacing:-.04em;margin-bottom:6px;overflow-wrap:break-word}.impact{display:grid;grid-template-columns:1fr 1fr;background:radial-gradient(ellipse at 10% 0%,#b7622a,transparent 75%),#a64b1d;color:var(--cream);gap:3%;padding:25px 4% 0 4.8%;min-height:390px}.impact-copy{align-self:center;padding:35px 0}.impact h2{color:var(--cream);font-size:clamp(42px,7.3vw,94px);white-space:nowrap}.impact p{margin-top:18px}.impact>img{width:100%;height:100%;min-height:365px;object-fit:cover;border-radius:50% 50% 0 0;object-position:50% 50%}.vision{position:relative;display:grid;grid-template-columns:1.45fr .9fr;align-items:end;gap:9%;min-height:355px;overflow:hidden;padding:55px 0 0 5%}.vision-bg{position:absolute;width:100%;height:100%;inset:0;object-fit:cover;object-position:center 40%;filter:brightness(.7)}.vision h2{position:relative;color:var(--cream);font-size:clamp(46px,7.7vw,100px);line-height:1.02;padding-bottom:50px}.vision-copy{align-self:end;background:var(--cream);border:1px solid var(--line);padding:80px 9% 45px;min-height:245px}.vision-copy p{position:relative;font-size:.9em}.vision-copy:before{width:70%;height:60%;top:-10%;right:-15%}footer{display:grid;grid-template-columns:1fr 1.08fr;align-items:center;gap:5%;padding:20px 6% 28px}.footer-brand{justify-self:center;width:55%;max-width:260px}.footer-brand img{width:100%;height:auto}.contact-copy{border-left:1px solid var(--line);padding:20px 0 20px 10%}.contact-copy h2{font-size:clamp(45px,7.5vw,96px)}.contact-copy p{color:var(--copper);font-size:.95em;margin-top:18px}.skip-link{position:fixed;top:-100px;left:16px;background:var(--green);color:white;padding:12px;z-index:20}.skip-link:focus{top:10px}:focus-visible{outline:3px solid var(--copper);outline-offset:5px}
@media(min-width:1400px){body{max-width:1440px;margin:auto}.hero-heading{padding-top:35px}.hero-images img{height:370px}.about-images{min-height:500px}.about-copy{padding:30px 0}.method-images{min-height:440px}.cauce-image{min-height:440px}.impact{min-height:480px}}
@media(max-width:1050px){.site-header{gap:18px;padding-left:4%;padding-right:3%}.brand{width:16%}.site-header nav{gap:8px;font-size:11px}.site-header nav a+a:before{margin-right:8px}.hero-heading{min-height:0}.cauce-copy{padding:45px 10%}.about-images{min-height:350px}.method-images{min-height:310px}.impact{min-height:340px}.impact>img{min-height:320px}}
@media(max-width:760px){:root{--body:18px;--pad:6%}.site-header{position:relative;flex-wrap:wrap;padding:20px 6%;gap:14px}.brand{width:200px;max-width:50%}.menu-toggle{display:flex;align-items:center;gap:10px;margin-left:auto;background:none;border:1px solid var(--line);padding:8px 10px;font:600 14px Arial,sans-serif;color:var(--green);cursor:pointer}.menu-bars{font-size:21px}.site-header nav{width:100%;display:none;grid-template-columns:1fr 1fr;gap:0 20px;font-size:15px;border-top:1px solid var(--line);padding-top:10px}.site-header nav.is-open{display:grid}.site-header nav a{padding:12px 0;white-space:normal}.site-header nav a+a:before{display:none}.hero-heading{padding-top:20px}.hero-heading h1{font-size:clamp(50px,10.8vw,80px)}.motto{font-size:clamp(29px,5.5vw,42px);margin:8px 0 18px 4%;max-width:95%}.flow-lines:before{opacity:.5;right:-18%}.hero-images{gap:3px}.hero-images img{height:clamp(140px,29vw,220px)}.intro-copy{padding-top:22px;padding-bottom:28px}.about{gap:5%;padding-top:25px}.about-copy h2{font-size:clamp(30px,5.8vw,44px)}.about-copy p{margin-top:22px;font-size:16px}.about-images{min-height:330px}.cauce-copy{padding:32px 8%}.cauce h2{font-size:clamp(28px,5.4vw,44px)}.cauce p{font-size:16px}.cauce-image{min-height:300px}.method{grid-template-columns:1.1fr 1fr;padding:25px 5%;gap:5%}.method-images{min-height:325px}.method-copy{padding:16px 0}.method h2{font-size:30px}.method p{font-size:16px;margin-top:20px}.services{padding:30px 5%}.services-heading h2{font-size:clamp(36px,7vw,52px)}.service h3{font-size:24px}.service p{font-size:15px}.service .number{font-size:16px}.service-photo{height:145px}.service-icon{height:85px;width:60%}.impact{padding-left:5%;gap:4%;min-height:300px}.impact h2{font-size:clamp(29px,5.9vw,45px)}.impact p{font-size:17px}.impact>img{min-height:280px}.vision{min-height:310px;gap:4%;grid-template-columns:1.15fr 1fr}.vision h2{font-size:clamp(40px,7vw,55px)}.vision-copy{padding:55px 10% 30px;min-height:215px}.vision-copy p{font-size:16px}.contact-copy h2{font-size:45px}.contact-copy p{font-size:16px}}
@media(max-width:480px){h2{font-size:38px}.hero-images img{height:145px}.hero-images{grid-template-columns:1fr 1fr 1fr}.hero-heading h1{font-size:clamp(43px,11vw,55px)}.motto{font-size:30px;line-height:1;max-width:310px;margin:12px 0 20px}.intro-copy{font-size:17px}.about{display:flex;flex-direction:column;padding:28px 6%;gap:24px}.about-copy{padding:0}.about-copy h2{font-size:40px}.about-copy p{font-size:17px;max-width:none;margin-top:20px}.about-images{height:300px;min-height:0}.cauce{grid-template-columns:1fr}.cauce-image{height:260px;min-height:0}.cauce-copy{padding:30px 6% 35px}.cauce h2{font-size:43px}.cauce p{font-size:17px}.method{display:flex;flex-direction:column;padding:28px 6%;gap:24px}.method-images{height:290px;min-height:0}.method-copy{padding:0}.method h2{font-size:36px}.method p{font-size:17px;margin-top:20px}.services{padding:24px 6% 32px}.services-heading h2{font-size:clamp(31px,8.5vw,40px)}.service-grid{grid-template-columns:1fr;gap:16px}.service-photo{height:170px}.service-icon{height:90px;width:52%}.service-copy{padding-bottom:22px}.service h3{font-size:25px}.service p{font-size:16px}.impact{grid-template-columns:1fr;padding:30px 6% 0;gap:20px}.impact-copy{padding:0}.impact h2{font-size:44px}.impact>img{height:300px;min-height:0;width:100%}.vision{grid-template-columns:1fr;gap:18px;padding:35px 0 0 6%}.vision h2{font-size:50px;padding-bottom:0}.vision-copy{width:80%;justify-self:end;min-height:0;padding:40px 8% 28px}.vision-copy p{font-size:17px}footer{grid-template-columns:1fr;gap:25px;padding:30px 6%}.footer-brand{width:180px}.contact-copy{border-left:0;border-top:1px solid var(--line);padding:24px 0 0;text-align:center;width:100%}.contact-copy h2{font-size:48px}.contact-copy p{font-size:17px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Gallery heights follow the proportions of the supplied desktop sketch. */
@media(min-width:761px){.about-images{height:min(40.5vw,540px);min-height:0}.method-images{height:min(35vw,465px);min-height:0}}
@media(min-width:761px) and (max-width:850px){.site-header{flex-wrap:wrap}.brand{width:225px}.menu-toggle{display:flex;align-items:center;gap:10px;margin-left:auto;background:none;border:1px solid var(--line);padding:8px 10px;font:600 14px Arial,sans-serif;color:var(--green);cursor:pointer}.site-header nav{display:none;width:100%;grid-template-columns:repeat(4,1fr);gap:8px;font-size:14px}.site-header nav.is-open{display:grid}.site-header nav a+a:before{display:none}}
