:root{--green:#087746;--dark:#103c2d;--ink:#193a2d;--muted:#586a60;--line:#d8e1da;--paper:#f5f5ee;--lime:#d9ef82;--gutter:max(24px,calc((100vw - 1280px)/2))}
body{background:#fff;color:var(--ink);font-family:'Malgun Gothic',Arial,sans-serif;word-break:keep-all;overflow-wrap:break-word}
*,*::before,*::after{box-sizing:border-box}
html{scroll-padding-top:100px}
a{color:inherit;text-decoration:none}
img{max-width:100%}
[hidden]{display:none!important}
.skipLink{position:fixed;top:-100px;left:20px;z-index:100;background:#fff;padding:15px}
.skipLink:focus{top:10px}
header{height:86px;padding:0 var(--gutter);box-shadow:none;border-bottom:1px solid var(--line);background:#fff;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:30;gap:30px}
header .brandWindow{width:232px;max-width:100%;display:block;overflow:hidden;line-height:0}
header .brandWindow img{display:block;width:142%;max-width:none;height:auto}
.primaryNav{display:flex;align-items:center;gap:30px;font-size:15px;font-weight:700}
.primaryNav>a,.primaryNav .navgroup>a{padding:30px 0;display:inline-block;white-space:nowrap}
.primaryNav .navgroup{position:relative}
.primaryNav .navgroup>button{border:0;background:none;color:inherit;font:inherit;padding:12px 6px;min-height:44px}
.primaryNav .dropdown{display:none;position:absolute;top:100%;left:-20px;width:230px;padding:12px 20px;background:white;border:1px solid var(--line);box-shadow:0 14px 28px #163b2414;border-radius:0}
.primaryNav .dropdown a{display:block;padding:12px 0;font-size:14px}
.primaryNav .navgroup:hover .dropdown,.primaryNav .navgroup:focus-within .dropdown,.primaryNav .navgroup.expanded .dropdown{display:block}
.primaryNav a:hover{color:var(--green)}
.primaryNav a[aria-current=page]{color:var(--green);text-decoration:underline;text-underline-offset:7px}
.primaryNav>a.navcta{background:var(--green);color:white;padding:13px 20px;border-radius:2px}
.menu{display:none}
.btn,.nButton{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:48px;padding:14px 23px;border:1px solid transparent;border-radius:2px;background:var(--green);color:white;font-size:15px;font-weight:700;transition:background .18s,transform .18s}
.btn:hover,.nButton:hover{background:#075b36;transform:translateY(-2px)}
.btn:active,.nButton:active{transform:translateY(1px)}
.nButton.secondary{background:transparent;border-color:#6e9580;color:white}
.nButton.light{background:var(--lime);color:var(--dark)}
.nLink{display:inline-flex;gap:24px;align-items:center;min-height:44px;font-size:15px;font-weight:700}
.nLink:hover{text-decoration:underline;text-underline-offset:6px}
a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #b7770b;outline-offset:4px}
.nEyebrow{font-size:11px;letter-spacing:2px;font-weight:700;margin:0 0 18px;color:var(--green)}
.nWrap{max-width:1280px;margin:auto}
.nSection{padding:76px var(--gutter)}
.nHeading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:28px}
.nHeading h2,.nService h2,.nContact h2{font-size:clamp(28px,3vw,42px);letter-spacing:-1.8px;line-height:1.35;margin:0}
.nHeading p{margin:12px 0 0;color:var(--muted);font-size:15px;line-height:1.7}
.nHero{display:grid;grid-template-columns:1fr 1fr;background:var(--dark);color:white;min-height:560px}
.nHeroCopy{padding:64px 48px 55px var(--gutter);align-self:center}
.nHero .nEyebrow{color:var(--lime)}
.nHero h1{font-size:clamp(38px,4.2vw,60px);font-weight:700;line-height:1.22;letter-spacing:-2.6px;margin:0 0 24px}
.nHero h1 span{color:var(--lime)}
.nHeroCopy>p:not(.nEyebrow){font-size:16px;line-height:1.85;color:#d0e0d7;margin:0;max-width:430px}
.nActions{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.nHeroImage{width:100%;height:100%;min-height:560px;object-fit:cover;object-position:52% center}
.nHeroMeta{display:flex;flex-wrap:wrap;gap:20px;margin-top:35px;font-size:12px;color:#c4d8cb}
.nHeroMeta span+span{border-left:1px solid #5d7d69;padding-left:20px}
.nIndustries{background:var(--paper)}
.nIndustryGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.nIndustry{position:relative;display:block;overflow:hidden;min-height:222px;background:#fff;transition:transform .2s}
.nIndustry:hover{transform:translateY(-2px)}
.nIndustryText{position:relative;z-index:1;padding:19px 20px 17px;display:grid;grid-template-columns:1fr auto;gap:5px 12px}
.nIndustry h3{font-size:21px;line-height:1.35;margin:0;letter-spacing:-.7px}
.nIndustry p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}
.nIndustry .nArrow{grid-column:2;grid-row:1 / span 2;align-self:center;font-size:23px;color:var(--green)}
.nIndustryImage{height:154px;overflow:hidden}
.nIndustry img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s}
.nIndustry:hover img{transform:scale(1.025)}
.nIndustry.all{background:var(--green);color:white;display:flex;flex-direction:column;justify-content:space-between;padding:24px}
.nIndustry.all p{color:#d3e7d8;font-size:14px;margin-top:12px}
.nIndustry.all h3{font-size:25px;max-width:230px}
.nIndustry.all>span{margin-top:30px;font-size:14px}
.nIndustry.all .nEyebrow,.nIndustry.all p{color:#fff!important}
.nProductGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.nProduct{display:flex;flex-direction:column;border-top:2px solid var(--green);padding-top:18px}
.nProduct h3{font-size:21px;line-height:1.4;margin:0 0 8px;letter-spacing:-.7px}
.nProduct p{font-size:14px;color:var(--muted);margin:0 0 18px;min-height:42px;line-height:1.5}
.nProductImage{height:206px;overflow:hidden;background:#f3f5f1;margin-top:auto}
.nProductImage img{width:100%;height:100%;display:block;object-fit:contain;transition:transform .3s}
.nProduct:hover img{transform:scale(1.025)}
.nProduct:hover h3{color:var(--green)}
.nService{background:var(--dark);color:#fff}
.nServiceGrid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.nService .nEyebrow{color:var(--lime)}
.nServiceImage{width:100%;height:440px;object-fit:cover}
.nServiceIntro{color:#ccded2;font-size:15px;line-height:1.8;margin:18px 0 24px}
.nServiceList{padding:0;list-style:none;margin:0 0 24px}
.nServiceList li{display:grid;grid-template-columns:32px 1fr;gap:14px;border-top:1px solid #50705e;padding:14px 0}
.nServiceList small{color:var(--lime);font-size:12px;padding-top:4px}
.nServiceList strong{font-size:18px;display:block;margin-bottom:4px}
.nServiceList p{font-size:13px;color:#ccded2;margin:0;line-height:1.6}
.nWorkGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.nWork{display:block}
.nWork h3{font-size:19px;margin:0 0 14px}
.nWork img{width:100%;height:245px;object-fit:cover;display:block;transition:filter .2s}
.nWork:hover img{filter:brightness(1.06)}
.nContact{background:var(--lime)}
.nContactGrid{display:flex;justify-content:space-between;align-items:center;gap:35px}
.nContact p{font-size:15px;line-height:1.8;margin:14px 0 0}
.nContact strong{display:block;font-size:32px;letter-spacing:-.5px;margin-bottom:12px}
.nContactActions{flex-shrink:0}
.nFooter{background:#f3f5f0;color:var(--muted);padding:40px var(--gutter);font-size:13px;line-height:1.9;display:block}
.nFooterTop{display:flex;justify-content:space-between;gap:30px;align-items:start;margin-bottom:24px}
.nFooter strong{font-size:21px;color:var(--ink)}
.nFooterLinks{display:flex;gap:20px;flex-wrap:wrap}
.nFooterLinks a{min-height:44px;display:inline-flex;align-items:center}
.nFooterBottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:20px}
.nFooter small{font-size:11px}
body.nRenewed:not(.nHome) .subhero{background:var(--paper);color:var(--ink);padding:42px var(--gutter);min-height:0;border-bottom:1px solid var(--line)}
body.nRenewed .subhero:after{display:none}
body.nRenewed .subhero h1{font-size:clamp(30px,3.5vw,46px);letter-spacing:-1.7px}
body.nRenewed .subhero p,body.nRenewed .breadcrumb{color:var(--muted)}
body.nRenewed .section{padding-top:52px;padding-bottom:52px}
body.nRenewed .industryGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
body.nRenewed .industryCard{padding:0;border-radius:0;border:0;background:var(--paper);min-height:0}
body.nRenewed .industryCardText{padding:24px}
body.nRenewed .industryCardText h3{font-size:23px}
body.nRenewed .industryCardText p{font-size:14px}
body.nRenewed .industryCardPhoto,body.nRenewed .industryCard figure{height:200px;margin:0;overflow:hidden}
body.nRenewed .industryCard img{width:100%;height:200px;object-fit:cover}
body.nRenewed .industryCard figcaption{display:none}
body.nRenewed .industryViewLinks a,body.nRenewed .viewTabs button{min-height:44px}
body.nRenewed :is(.process,.card,.inquiry,.productSide,.referenceShot,.industryCatalog,.catalogProductBox){border-radius:2px}
body.nRenewed .spec th,body.nRenewed .spec td{font-size:15px;line-height:1.7}
body.nRenewed .industryCatalog .catalogProductHead h3{font-size:24px}
body.nRenewed .catalogCompare{font-size:14px;line-height:1.7}
body.nRenewed .detailContact{background:var(--dark);color:#fff}
body.nRenewed .detailContact h2,body.nRenewed .detailContact .detailPhone{color:#fff}
body.nRenewed .detailContact p{color:#d0e0d7}
@media(prefers-reduced-motion:no-preference){.nHeroCopy{animation:nEnter .55s ease-out both}@keyframes nEnter{from{opacity:0;transform:translateY(12px)}}}
@media(max-width:1100px){.primaryNav{gap:16px;font-size:14px}header .brandWindow{width:205px}.nHeroCopy{padding-right:26px}.nServiceGrid{gap:36px}.nProductGrid{gap:16px}}
@media(max-width:900px){header{height:72px;gap:15px}.menu{display:block;font-size:23px;border:0;background:white;min-width:44px;min-height:44px}.primaryNav{display:none;position:absolute;top:72px;left:0;right:0;background:white;max-height:calc(100dvh - 72px);overflow-y:auto;padding:16px 24px 28px;flex-direction:column;align-items:stretch;gap:0;border-bottom:1px solid var(--line)}.primaryNav.open{display:flex}.primaryNav .navgroup{border-bottom:1px solid var(--line)}.primaryNav .navgroup>a{width:calc(100% - 50px);padding:16px 0;font-size:16px}.primaryNav .navgroup>button{width:44px}.primaryNav>a{padding:16px 0;font-size:16px}.primaryNav>a.navcta{margin-top:16px;text-align:center}.primaryNav .dropdown{position:static;width:100%;box-shadow:none;border:0;padding:0 16px 12px}.primaryNav .navgroup:hover .dropdown{display:none}.primaryNav .navgroup.expanded .dropdown{display:block}.nHero{min-height:500px}.nHeroImage{min-height:500px}.nHero h1{font-size:39px}.nHeroCopy{padding-top:44px;padding-bottom:44px}.nHeroMeta{gap:10px}.nHeroMeta span+span{padding-left:10px}.nIndustryGrid{gap:14px}.nIndustry h3{font-size:19px}.nIndustryText{padding:16px}.nProductGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.nWork img{height:190px}.nContactGrid{align-items:start}.nContact strong{font-size:27px}body.nRenewed .industryGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){:root{--gutter:22px}html{scroll-padding-top:86px}header .brandWindow{width:210px}.nHero{grid-template-columns:1fr}.nHeroCopy{padding:40px var(--gutter) 32px}.nHero h1{font-size:39px;letter-spacing:-2px;margin-bottom:20px}.nHeroCopy>p:not(.nEyebrow){font-size:14px}.nHeroImage{min-height:0;height:260px;object-position:center 45%}.nHeroMeta{margin-top:26px}.nSection{padding:44px var(--gutter)}.nHeading{align-items:start;flex-direction:column;gap:12px;margin-bottom:22px}.nHeading h2,.nService h2,.nContact h2{font-size:29px;letter-spacing:-1.2px}.nHeading p{font-size:14px}.nIndustryGrid{grid-template-columns:1fr 1fr;gap:12px}.nIndustry{min-height:0}.nIndustryText{padding:14px 12px;display:block}.nIndustry h3{font-size:17px;letter-spacing:-.6px}.nIndustry p{font-size:12px;margin-top:6px}.nIndustry .nArrow{display:none}.nIndustryImage{height:112px}.nIndustry.all{padding:17px 14px}.nIndustry.all h3{font-size:20px}.nIndustry.all p{font-size:12px}.nIndustry.all>span{font-size:12px}.nProductGrid{gap:24px 14px}.nProduct h3{font-size:18px}.nProduct p{font-size:12px;min-height:38px}.nProductImage{height:160px}.nServiceGrid{grid-template-columns:1fr;gap:26px}.nServiceImage{height:300px;order:2}.nServiceIntro{font-size:14px}.nWorkGrid{grid-template-columns:1fr;gap:24px}.nWork img{height:240px}.nContactGrid{flex-direction:column;gap:24px}.nFooterTop,.nFooterBottom{flex-direction:column;gap:14px}.nFooterLinks{gap:6px 20px}.nActions .nButton{font-size:14px;gap:12px;padding:13px 17px}body.nRenewed .industryGrid{grid-template-columns:1fr}.nRenewed .formGrid{grid-template-columns:1fr}.nRenewed .formGrid .wide{grid-column:auto}}
@media(max-width:360px){:root{--gutter:16px}.nHero h1{font-size:34px}.nIndustryGrid,.nProductGrid{grid-template-columns:1fr}.nIndustryImage{height:160px}.nProductImage{height:220px}}
@media(max-width:640px){.nHero{min-height:calc(100svh - 72px);grid-template-rows:auto 260px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

.nHeroTextLink{color:white;padding:14px 5px;text-decoration:underline;text-underline-offset:6px}
