:root{--green:#004c32;--red:#e3343e;--muted:#607168;--line:#dce5df;--soft:#f3f6f2;--gutter:clamp(20px,4.5vw,76px)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:24px}
body{margin:0;background:#fff;color:var(--green);font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:5px}
button,input,textarea,select{font:inherit}
button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:3px solid var(--red);outline-offset:5px}
[hidden]{display:none!important}
h1,h2,h3,p,figure{margin:0}
h1,h2,h3{font-weight:500;line-height:1.1;letter-spacing:-.045em;overflow-wrap:anywhere}
h1{font-size:clamp(42px,5.25vw,84px)}
h2{font-size:clamp(32px,3.35vw,54px)}
h3{font-size:clamp(25px,2.1vw,34px)}
p{max-width:68ch}
.red{display:inline-block;width:.16em;height:.16em;margin-left:.035em;border-radius:50%;background:var(--red);color:transparent;overflow:hidden;vertical-align:baseline}
.eyebrow{font-size:12px;line-height:1.5;letter-spacing:.16em;font-weight:700;margin-bottom:24px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:fixed;top:12px;left:20px;z-index:10;transform:translateY(-200%);padding:12px 20px;background:#fff;border:2px solid var(--green)}
.skip:focus{transform:none}
.header{display:flex;align-items:center;gap:28px;padding:26px var(--gutter);border-bottom:1px solid var(--line);max-width:1800px;margin:auto}
/* Shared proportional viewport includes the complete wordmark and round dot. */
.logo{display:block;position:relative;width:242px;aspect-ratio:1530/195;overflow:hidden;flex:0 0 242px}
.logo img{position:absolute;width:125.163399%;height:auto;max-width:none;left:-13.202614%;top:-156.410256%}
.header nav{margin-left:auto;display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:6px 23px;font-size:14px}
.header nav a{display:flex;min-height:44px;align-items:center}
.lang{display:flex;align-items:center;justify-content:center;border:1px solid var(--line);font-size:13px;font-weight:700;min-width:48px;min-height:44px;flex-shrink:0}
main{max-width:1800px;margin:auto}
main:focus{outline:none}
.section{padding:90px var(--gutter)}
.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:center;min-height:620px;padding:65px var(--gutter) 75px}
.hero-copy,.hero-image{min-width:0}
.hero .lead{max-width:440px;margin-top:28px;color:var(--muted);font-size:18px}
.hero-image img{width:100%;object-fit:contain}
.actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:34px}
.button{display:inline-flex;justify-content:space-between;align-items:center;gap:24px;min-height:52px;max-width:100%;padding:14px 23px;background:var(--green);color:white;font-size:15px;font-weight:600;border:1px solid var(--green);cursor:pointer;text-align:left;line-height:1.4}
.button span[aria-hidden]{font-size:21px;flex-shrink:0}
.button:hover{background:#08603e;text-decoration:none}
.inline-link{font-size:15px;text-decoration:underline;text-underline-offset:6px;min-height:44px;display:inline-flex;align-items:center}
.intro{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.intro-content{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(35px,6vw,110px);align-items:end}
.intro-content p,.section-head>p,.cap-copy>p:not(.eyebrow),.supply-copy>p:not(.eyebrow),.company-grid p{color:var(--muted)}
.section-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:end;margin-bottom:42px}
.section-head>p{font-size:15px;max-width:490px;justify-self:end}
.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.product-grid article{background:var(--soft);padding:28px 24px;display:flex;flex-direction:column;min-height:280px}
.number{font-size:12px;font-weight:600;letter-spacing:.08em}
.product-grid h3{margin:42px 0 14px}
.product-grid p{font-size:15px;color:var(--muted);margin-bottom:25px}
.product-grid a{font-size:14px;font-weight:600;margin-top:auto;min-height:44px;display:flex;align-items:center;gap:14px;justify-content:space-between}
.product-grid a span[aria-hidden]{font-size:22px}
.product-grid article.dark{background:var(--green);color:#fff}
.product-grid article.dark p{color:#d2e1d8}
.capabilities{background:var(--soft);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(35px,6vw,110px)}
.cap-copy>p:not(.eyebrow){margin-top:26px;max-width:450px}
.cap-list article{display:grid;grid-template-columns:30px minmax(0,1fr);gap:20px;padding:26px 0;border-top:1px solid #c8d6cc}
.cap-list article:last-child{border-bottom:1px solid #c8d6cc}
.cap-list .number{padding-top:5px}
.cap-list h3{font-size:clamp(24px,2.2vw,34px)}
.cap-list p{font-size:15px;color:var(--muted);margin-top:12px}
.supply{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:center;border-bottom:1px solid var(--line)}
.supply-image{align-self:stretch;display:flex;flex-direction:column;min-width:0}
.supply-image img{width:100%;height:100%;min-height:300px;object-fit:cover;aspect-ratio:1.5}
.supply-image figcaption{padding:14px 24px;font-size:12px;line-height:1.5;color:var(--muted);background:var(--soft)}
.supply-copy{padding:70px var(--gutter)}
.supply-copy>p:not(.eyebrow){margin:26px 0 30px}
.company-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(35px,6vw,110px)}
.company-grid p+p{margin-top:16px}
.company dl{margin:30px 0 0}
.company dl>div{display:grid;grid-template-columns:minmax(105px,.6fr) minmax(0,1fr);gap:20px;padding:16px 0;border-top:1px solid var(--line);font-size:14px}
.company dt{color:var(--muted)}
.company dd{margin:0;overflow-wrap:anywhere}
.company-grid p.stage{font-size:14px;border-left:3px solid var(--red);padding-left:16px;margin-top:28px;color:var(--green)}
.contact{background:var(--green);color:#fff;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(32px,5vw,80px)}
.contact-intro>p:not(.eyebrow){margin-top:25px;color:#d2e1d8;font-size:16px}
.contact-intro p.notice{padding-top:24px;border-top:1px solid #58826c;font-size:14px}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.form-grid label{display:block;min-width:0;font-size:14px;line-height:1.5}
.optional{color:#d2e1d8;font-size:12px}
.form-grid input,.form-grid select,.form-grid textarea{display:block;width:100%;min-width:0;margin-top:8px;background:#fff;color:#17392a;border:1px solid #d2e1d8;border-radius:0;padding:12px;font-size:16px;line-height:1.4;min-height:48px}
.form-grid textarea{resize:vertical}
.form-grid input::placeholder,.form-grid textarea::placeholder{color:#66766d;opacity:1}
.form-grid .wide{grid-column:1/-1}
.contact .light{background:#fff;color:var(--green);border-color:#fff;margin-top:26px}
.contact .light:hover{background:#e5eee7}
#request-status{font-size:14px;margin-top:16px;min-height:24px}
footer{display:flex;align-items:center;flex-wrap:wrap;gap:22px 35px;padding:36px var(--gutter);max-width:1800px;margin:auto}
footer p{font-size:12px;color:var(--muted)}
footer .logo{width:194px;flex-basis:194px}
.back-top{font-size:13px;min-height:44px;display:flex;align-items:center;margin-left:auto}
@media(min-width:1800px){.hero{min-height:710px}}
@media(max-width:1100px){.header{gap:20px}.header nav{gap:4px 15px}.header .logo{width:200px;flex-basis:200px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-grid article{min-height:260px}.hero{min-height:540px}.section{padding-top:70px;padding-bottom:70px}}
@media(max-width:850px){.header{flex-wrap:wrap;justify-content:space-between;gap:10px 20px;padding-top:20px;padding-bottom:12px}.header .lang{order:1}.header nav{order:2;flex-basis:100%;margin:0;justify-content:flex-start;gap:0 23px}.hero{grid-template-columns:1fr;padding-top:50px;gap:25px}.hero h1{font-size:clamp(42px,7.7vw,66px)}.hero-image{max-width:650px;margin:auto;width:100%}.hero .lead{max-width:540px}.intro-content,.capabilities,.company-grid,.contact{grid-template-columns:1fr;gap:35px}.intro-content h2 br{display:none}.intro-content p{max-width:600px}.cap-copy h2 br{display:none}.cap-copy h2{max-width:640px}.cap-copy h2 br:after{content:" "}.supply{grid-template-columns:1fr}.supply-image img{height:auto;max-height:500px}.supply-copy{padding-top:55px;padding-bottom:55px}.company-grid{gap:30px}.company-grid h2 br{display:none}.section-head{grid-template-columns:1fr;gap:20px}.section-head>p{justify-self:start}.contact-intro{max-width:620px}.form-grid{gap:20px}.contact h2 br{display:none}footer{gap:18px 28px}footer p{flex-basis:calc(100% - 250px)}}
@media(max-width:520px){body{font-size:16px}.section{padding-top:52px;padding-bottom:52px}.header nav{column-gap:18px;font-size:13px}.hero{padding-top:42px;padding-bottom:45px;gap:20px}.hero h1{font-size:clamp(34px,8.5vw,44px);letter-spacing:-.05em}.hero .lead{font-size:16px;margin-top:23px}.eyebrow{font-size:11px;margin-bottom:20px}.actions{gap:16px;margin-top:26px}.button{font-size:14px;padding:14px 18px}.product-grid{grid-template-columns:1fr;gap:12px}.product-grid article{min-height:235px;padding:25px}.product-grid h3{margin-top:30px;font-size:31px}.cap-list article{gap:14px;grid-template-columns:24px minmax(0,1fr)}.supply-copy{padding-top:48px;padding-bottom:48px}.supply-image img{min-height:220px}.supply-image figcaption{padding:12px 20px}.company dl>div{grid-template-columns:1fr;gap:5px}.form-grid{grid-template-columns:1fr}.contact .light{width:100%}footer{padding-top:28px;padding-bottom:28px;gap:15px}footer p{flex-basis:100%}.back-top{margin-left:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
