:root{--ink:#102220;--muted:#4e625d;--lime:#d2f25c;--paper:#f7f8f2;--line:#d9e0d7;--dark:#122723}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--paper);color:var(--ink);line-height:1.5}
a{color:inherit}img{display:block;width:100%}button{font:inherit}
[hidden]{display:none!important}
:focus-visible{outline:3px solid #6f9d19;outline-offset:4px}
.skip{position:absolute;left:1rem;top:-10rem;background:white;padding:.75rem;z-index:3}.skip:focus{top:1rem}
.wrap{width:min(1240px,calc(100% - 96px));margin-inline:auto}
.header{background:#fff}
.nav{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:78px}
.brand{display:inline-flex;align-items:center;gap:0;text-decoration:none;font-size:26px;font-weight:800;letter-spacing:-1.35px;white-space:nowrap}
.brand svg{width:35px;margin-right:10px}.brand span{color:#547018}
.nav nav{display:flex;gap:32px}.nav nav a{text-decoration:none;font-size:14px;font-weight:700}.nav nav a:hover,.textlink:hover{text-decoration:underline}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:12px 20px;background:var(--lime);color:var(--ink);font-weight:800;text-decoration:none;font-size:14px;transition:background .2s}
.button:hover{background:#e4ff8c}.header-cta{min-height:42px}
.hero{color:#fff;background:linear-gradient(90deg,#0b201eea 1%,#0b201ecb 37%,#0b201e37 100%),linear-gradient(0deg,#0b201eab,transparent 30%),url('assets/5f8982f608e64.jpg') center 50%/cover no-repeat,var(--dark)}
.hero-inner{min-height:600px;padding-top:96px;padding-bottom:28px;display:flex;flex-direction:column;align-items:flex-start}
.eyebrow{font-size:12px;font-weight:800;letter-spacing:.17em;text-transform:uppercase;color:#3e5810}.eyebrow.light{color:var(--lime)}
.eyebrow i{display:inline-block;width:8px;height:8px;background:var(--lime);margin-right:10px}
h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.02}
h1{font-size:clamp(3rem,7.4vw,7rem);letter-spacing:-.075em;margin:19px 0 24px;max-width:1020px}
.hero p,.contact p{font-size:19px;color:#e1e9e3;max-width:510px;margin-bottom:24px}
.actions{display:flex;flex-wrap:wrap;gap:10px}.outline{background:#16272480;color:white;border:1px solid #ffffff70}.outline:hover{background:#244440}
.hero-credit{margin-top:auto;padding-top:56px;color:#fff;font-size:12px;letter-spacing:.04em}.hero-credit span{color:var(--lime);margin-inline:5px}
.band{background:var(--lime)}.band .wrap{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;align-items:center;gap:14px;padding-block:20px}
.band span{font-size:10px;font-weight:800;letter-spacing:.14em}.band strong{border-left:1px solid #10222046;padding-left:16px;font-size:14px}
.section{padding-block:85px;scroll-margin-top:12px}
.section-head{display:grid;grid-template-columns:1.55fr 1fr;align-items:end;gap:24px;margin:14px 0 30px}
h2{font-size:clamp(2.5rem,5.25vw,5.2rem);letter-spacing:-.066em;margin-bottom:0}
.section-head p,.product p{color:var(--muted);margin-bottom:0;max-width:420px}
.product-grid,.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.product{background:#fff;border:1px solid var(--line)}.product img{height:180px;object-fit:contain;padding:12px;background:#fff}.product div{padding:20px;border-top:1px solid var(--line)}
.product h3{font-size:24px;letter-spacing:-.045em;margin:8px 0 9px}.product p{font-size:14px;margin-bottom:14px}.textlink{font-size:13px;font-weight:700;text-underline-offset:4px}
.portfolio{background:#e9eee6}.filters{display:flex;flex-wrap:wrap;gap:8px}
.filters button{padding:9px 14px;border:1px solid #869991;color:var(--ink);background:transparent;cursor:pointer;font-size:13px;font-weight:700}.filters button:hover,.filters button[aria-pressed=true]{background:var(--dark);color:white}
#result-count,.source{color:var(--muted);font-size:13px;margin:14px 0}.source{margin:24px 0 0}
.project{background:#fff}.project a{display:block;text-decoration:none;height:100%;overflow:hidden}.project img{aspect-ratio:1.65;object-fit:cover;background:#bdccc4;transition:filter .2s}.project a:hover img{filter:brightness(.84)}
.caption{padding:16px 38px 18px 16px;position:relative}.caption span{font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:800;color:var(--muted)}.caption h3{margin:6px 0 0;font-size:21px;letter-spacing:-.03em}.caption b{position:absolute;right:16px;top:16px}
.contact{background:var(--dark);color:#fff}.contact-grid{display:grid;grid-template-columns:1.45fr 1fr;align-items:end;gap:28px}.contact h2{margin:14px 0 16px}.contact aside{border:1px solid #536c62;padding:24px}.contact aside h3{font-size:22px}.contact li+li{margin-top:9px}.contact ul{padding-left:20px;margin-bottom:0}
footer{background:#0b1a18;color:#fff}footer .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-block:24px}footer p{margin:0;color:#ccd9d2}footer .brand span{color:var(--lime)}
@media(max-width:850px){.wrap{width:calc(100% - 48px)}.nav{gap:12px}.nav nav{gap:14px}.product-grid,.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-inner{min-height:540px}}
@media(max-width:590px){.wrap{width:calc(100% - 32px)}.nav{flex-wrap:wrap;padding-block:12px}.nav nav{order:3;width:100%;justify-content:space-between;border-top:1px solid var(--line);padding-top:9px}.header-cta{padding-inline:10px}.hero-inner{min-height:490px;padding-top:68px}.hero{background-position:58% center}.band .wrap{grid-template-columns:1fr 1fr}.section{padding-block:52px}.section-head,.contact-grid{grid-template-columns:1fr;gap:16px}.product-grid,.project-grid{grid-template-columns:1fr}.product img{height:190px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

.nav nav{gap:clamp(10px,2vw,30px)}
.nav nav a[aria-current=page]{color:#3d5512;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px}
.page-intro{background:var(--dark);color:white;padding:50px 0 54px}
.page-intro h1{font-size:clamp(2.75rem,6vw,5.7rem);margin:16px 0}
.page-intro p{max-width:650px;margin:0;color:#dae5df;font-size:18px}
.breadcrumb,.breadcrumb+span{font-size:13px;color:#d2f25c}
.overview-grid,.info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.overview{background:white;border:1px solid var(--line);text-decoration:none}
.overview:hover h3{text-decoration:underline;text-underline-offset:4px}
.overview img{aspect-ratio:1.8;object-fit:cover}
.overview:first-child img{object-fit:contain}
.overview div,.info-grid article{padding:24px}
.overview h3,.info-grid h3,.doc-list h3{font-size:24px;margin:8px 0}
.overview p,.info-grid p,.doc-list p{color:var(--muted);margin:0}
.mini-cta{background:var(--dark);color:white;padding-block:36px}
.mini-cta .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px}
.mini-cta h2{font-size:clamp(2rem,4.4vw,3.5rem);margin-top:8px}
.procurement{background:#e9eee6}
.info-grid article{background:white;border-top:3px solid #6f9d19}
.stats strong{display:block;font-size:clamp(2rem,4vw,3.7rem);letter-spacing:-.06em}
.factory-grid{display:grid;grid-template-columns:1.25fr 1fr;align-items:center;gap:40px}
.factory-grid figure{margin:0}
.factory-grid img{aspect-ratio:1.54;object-fit:cover}
.factory-grid figcaption{font-size:13px;color:var(--muted);margin-top:8px}
.factory-grid h2{margin:12px 0 18px}
.doc-list{margin-top:18px;border-top:1px solid var(--line)}
.doc-list a{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:20px 0;border-bottom:1px solid var(--line);text-decoration:none}
.doc-list a:hover h3{text-decoration:underline}
.doc-list span{white-space:nowrap;font-size:13px;font-weight:700;color:#3e5810}
.faq details{background:#fff;border-bottom:1px solid var(--line);padding:16px 20px}
.faq summary{cursor:pointer;font-weight:700}
.faq p{margin:12px 0 0;color:var(--muted)}
@media(max-width:820px){
.nav{flex-wrap:wrap;padding-block:12px}.nav nav{order:3;width:100%;justify-content:flex-start;flex-wrap:wrap;gap:9px 19px;border-top:1px solid var(--line);padding-top:10px}
.factory-grid{gap:24px}
}
@media(max-width:640px){
.overview-grid,.info-grid,.factory-grid{grid-template-columns:1fr}
.mini-cta .wrap,.doc-list a{align-items:flex-start;flex-direction:column}
.page-intro{padding:33px 0 38px}
}

.factory-video{background:#e9eee6}
.video-preview{display:grid;grid-template-columns:1fr 1fr;align-items:center;background:var(--dark);color:white;text-decoration:none}
.video-preview img{height:100%;min-height:230px;max-height:310px;object-fit:cover}
.video-preview-copy{display:grid;justify-items:start;gap:14px;padding:clamp(20px,4vw,48px)}
.video-preview-copy strong{font-size:clamp(1.4rem,3vw,2.35rem);line-height:1.12}
.video-preview:hover .button{background:#e4ff8c}
@media(max-width:640px){.video-preview{grid-template-columns:1fr}.video-preview img{min-height:0;height:auto;aspect-ratio:16/9}}
.credential-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.credential-grid article,.us-review{background:#fff;border:1px solid var(--line);padding:24px}
.credential-grid h3,.us-review h3{font-size:26px;margin:10px 0 12px}
.credential-grid p,.us-review p{color:var(--muted)}
.us-review{margin-top:16px}
.us-review .actions{gap:20px}
@media(max-width:640px){.credential-grid{grid-template-columns:1fr}}
.library-list{border-top:1px solid var(--line)}
.library-list article{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0;border-bottom:1px solid var(--line)}
.library-list h3{margin:8px 0;font-size:24px}
.library-list p,.reference-card p{color:var(--muted);margin:0}
.pdf-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.pdf-actions a{white-space:nowrap}
.reference-actions{margin-bottom:25px}
.reference-card{background:white;border:1px solid var(--line)}
.reference-card img{aspect-ratio:1.65;object-fit:cover}
.reference-card p{margin:9px 0;font-size:14px}
.page-intro p+p{margin-top:20px}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:640px){.library-list article{align-items:flex-start;flex-direction:column}}
