@font-face{font-family:Franklin;src:url(assets/libre-franklin-v13-latin-regular.woff2)}@font-face{font-family:Franklin;src:url(assets/libre-franklin-v13-latin-700.woff2);font-weight:700}
:root{--ink:#101d2e;--muted:#49596d;--red:#c51f32;--pale:#eff3f8;--line:#d8e1ed}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font:16px/1.65 Franklin,Arial,sans-serif}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #f15563;outline-offset:4px}.wrap{width:min(1240px,calc(100% - 80px));margin:auto}.nav{display:flex;align-items:center;justify-content:space-between;gap:26px;min-height:88px}.brand{display:flex;gap:12px;align-items:center;font-weight:700;line-height:1.2;white-space:nowrap;font-size:20px}.brand i{display:block;width:30px;height:28px;background:repeating-linear-gradient(to bottom,var(--red) 0 5px,transparent 5px 9px);transform:skewX(-15deg)}.brand small{display:block;letter-spacing:.17em;font-size:9px;margin-top:5px}.red{color:var(--red)}nav{display:flex;gap:28px;font-size:14px}nav a:hover,article a:hover{color:var(--red);text-decoration:underline}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;background:var(--red);color:white;padding:14px 19px;border:0;font:700 14px/1.45 Franklin,Arial,sans-serif;cursor:pointer}.button:hover{background:#a6172a}.compact{padding:10px 14px}.hero{background:#101d2e;color:white}.hero-grid{display:grid;grid-template-columns:1fr 1.03fr;align-items:stretch}.hero-copy{padding:83px 25px 86px 0}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.16em;color:#a02435;margin:0 0 17px}.eyebrow b{display:inline-block;width:15px;height:3px;background:#dd263a;vertical-align:middle;margin-right:7px}.hero .eyebrow,.contact .eyebrow{color:#ff8993}h1,h2,h3{line-height:1.08;margin:0 0 22px;letter-spacing:-.045em}h1{font-size:clamp(45px,5.1vw,79px)}h1 em{color:#ff5866;font-style:normal}h2{font-size:clamp(35px,4vw,55px)}h3{font-size:26px;line-height:1.18}p{margin:0 0 20px}.hero-copy>p:not(.eyebrow){color:#d2dce9;max-width:470px;margin-bottom:28px}figure{position:relative;margin:0;min-width:0}figure img{display:block;width:100%;height:100%;object-fit:cover}.hero figure img{position:absolute;inset:0}.hero figure{min-height:440px}.hero figure:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#101d2e33,transparent 20%);pointer-events:none}figcaption{position:absolute;z-index:1;bottom:0;inset-inline:0;padding:12px 15px;background:#101d2ee8;color:#e4edfc;display:flex;justify-content:space-between;gap:10px;font-size:9px;letter-spacing:.12em}.strip{background:var(--pale);border-bottom:1px solid var(--line)}.strip .wrap{display:grid;grid-template-columns:repeat(3,1fr)}.strip span{padding:17px 14px 17px 0;font-size:13px;font-weight:700}.strip b{color:var(--red);margin-right:10px}.section{padding-block:78px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:32px}.cards article{border:1px solid var(--line);border-top:3px solid var(--red);padding:24px;display:flex;flex-direction:column}.cards article>span{color:#a02435;font-size:10px;font-weight:700;letter-spacing:.12em;margin-bottom:18px}.cards article p,.split p{color:var(--muted)}article a{margin-top:auto;color:#ae1829;font-weight:700;font-size:13px}.light{background:var(--pale)}.split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(30px,6vw,92px)}.split figure{aspect-ratio:1.45}dl{margin:25px 0 0}dl div{display:grid;grid-template-columns:90px 1fr;border-top:1px solid #cbd6e5;padding:10px 0;font-size:14px}dt{font-weight:700}dd{margin:0}.contact{background:var(--ink);color:white}.contact p{color:#d2dce9}.address{font-weight:700}.contact form{background:#1b2b42;padding:24px}.contact label{font-size:13px;font-weight:700;display:block;margin-bottom:12px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}input,textarea,select{display:block;width:100%;margin-top:5px;padding:10px;background:white;border:1px solid #aab9ce;color:var(--ink);font:inherit;font-weight:400}textarea{resize:vertical}.contact small{display:block;color:#cfdaed;margin-top:10px;font-size:11px}footer .wrap{display:flex;justify-content:space-between;gap:12px;padding-block:22px;font-size:12px;color:var(--muted)}
@media(max-width:900px){nav{display:none}.wrap{width:calc(100% - 48px)}.hero-copy{padding-block:60px}.section{padding-block:54px}}
@media(max-width:650px){.wrap{width:calc(100% - 32px)}.nav{min-height:68px;gap:8px}.brand{font-size:15px;gap:7px}.brand i{width:19px;height:20px}.brand small{font-size:7px}.compact{font-size:11px;padding:8px;gap:4px}.hero-grid,.cards,.split{grid-template-columns:1fr}.hero-copy{padding:40px 0 32px}.hero figure{min-height:230px}.strip span{font-size:11px;line-height:1.3}.strip b{display:block;margin-bottom:4px}.section{padding-block:43px}.split{gap:24px}.light figure{order:2}footer .wrap{flex-wrap:wrap}.contact form{padding:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.tech-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding-bottom:72px}.tech-grid article{background:white;border:1px solid var(--line);border-top:3px solid var(--red);padding:24px}.tech-grid ul{padding:0;margin:0;list-style:none}.tech-grid li{border-top:1px solid var(--line);padding:11px 0;font-size:14px;color:var(--muted)}.tech-grid strong{color:var(--ink)}@media(max-width:850px){.tech-grid{grid-template-columns:1fr;padding-bottom:46px;gap:12px}}
.production-grid,.application-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:24px}.production-stack{display:grid;grid-template-rows:repeat(2,minmax(0,1fr));gap:16px}.production-grid>figure{aspect-ratio:4/5}.production-stack figure img{position:absolute;inset:0}
.application-grid figure{display:grid;grid-template-rows:clamp(210px,29vw,320px) auto;background:#eef1f4;border:1px solid var(--line)}
.application-grid img{align-self:center;justify-self:center;width:78%;height:78%;object-fit:contain;filter:drop-shadow(0 9px 8px #101d2e28)}
.application-grid figcaption{position:static}
@media(max-width:650px){.production-grid,.application-grid{grid-template-columns:1fr}.production-stack figure{aspect-ratio:16/10}}
.production-hall{margin-top:16px;aspect-ratio:2/1}
.production-grid figure::after,.production-hall::after{content:"";position:absolute;inset:auto 0 0;height:14px;background:#101d2ee8;pointer-events:none}
@media(max-width:650px){.production-hall{aspect-ratio:4/3}}
@media(min-width:1050px){.hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.14fr)}}
.hero .hero-products img{object-position:center 53%}
@media(min-width:651px){
  .hero-copy{min-width:0;container-type:inline-size}
  .hero-copy h1{font-size:min(5.1vw,79px,10cqi)}
}
.solution-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.solution-links a{display:grid;gap:8px;border:1px solid var(--line);border-top:3px solid var(--red);padding:24px}
.solution-links a:hover{border-color:var(--red)}
.solution-links strong{font-size:21px}.solution-links span{color:var(--muted)}
@media(max-width:650px){.solution-links{grid-template-columns:1fr}}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.hero .products-button{background:transparent;border:1px solid #aab5c4}
.hero .products-button:hover{background:#26364b;border-color:white}
.product-menu{position:relative}
.product-menu summary{cursor:pointer;white-space:nowrap}
.product-menu ul{position:absolute;top:100%;left:0;z-index:5;min-width:220px;margin:8px 0 0;padding:6px;list-style:none;background:white;border:1px solid var(--line);box-shadow:0 8px 24px #101d2e24}
.product-menu li a{display:flex;align-items:center;gap:12px;padding:7px;font-weight:700}
.product-menu li a:hover{background:var(--pale)}
.product-menu img{display:block;object-fit:cover}
.solution-links img{width:100%;aspect-ratio:2/1;object-fit:cover}
@media(max-width:900px){.nav:has(.product-menu) nav{display:block}.nav:has(.product-menu) nav>a{display:none}.product-menu ul{left:auto;right:0}.product-menu summary{font-size:12px}}
@media(max-width:430px){.nav:has(.product-menu){flex-wrap:wrap;padding-block:10px}.nav:has(.product-menu) .brand{margin-right:auto}}

.product-breadcrumb{padding-block:12px;font-size:.875rem}.product-breadcrumb a{text-decoration:underline;text-underline-offset:.18em}.product-breadcrumb span{margin-inline:.35em}
.product-menu ul{max-height:65vh;overflow-y:auto}

.button.contact-button{background:#347d49;color:#fff}
.button.contact-button:hover{background:#29683b}
.button.contact-button:focus-visible{outline:2px solid currentColor;outline-offset:-5px}
