:root{--ink:#111a1f;--steel-900:#0c2733;--steel-800:#123342;--steel-700:#1c4a5c;--teal:#2f7d84;--copper:#c9722c;--copper-light:#e2934f;--mist:#eef3f2;--paper:#f7f9f8;--line:rgba(17,26,31,.12);--line-light:rgba(247,249,248,.18)}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Inter,Arial,sans-serif;color:var(--ink);background:var(--paper);line-height:1.6}h1,h2,h3,h4,h5{font-family:'Space Grotesk',Arial,sans-serif;line-height:1.15;color:var(--steel-900)}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}ul{list-style:none}.wrap{max-width:1200px;margin:auto;padding:0 32px}.topbar{background:var(--steel-900);color:#cfe0e0;font-size:13px}.topbar .wrap,.topbar .contacts,.topbar .socials{display:flex;align-items:center}.topbar .wrap{justify-content:space-between;padding-top:8px;padding-bottom:8px;gap:8px;flex-wrap:wrap}.topbar .contacts{gap:22px;flex-wrap:wrap}.topbar .socials{gap:14px}.topbar a:hover{color:var(--copper-light)}header.site{background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}header.site .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:16px;padding-bottom:16px}.logo-crop{display:block;width:178px;height:52px;overflow:hidden;background:url('../images/loogoo.png') center -104px/205px auto no-repeat}.main ul{display:flex;align-items:center;gap:28px}.main li{position:relative}.main a.top{display:block;padding:8px 0;font-size:14.5px;font-weight:600;color:var(--steel-900)}.main a.top:hover,.main a.top.active{color:var(--copper)}.sub{display:none;position:absolute;left:0;top:100%;min-width:225px;background:var(--steel-900);box-shadow:0 12px 24px #0003;padding:8px 0}.has-sub:hover .sub{display:block}.sub a{display:block;padding:8px 16px;color:#d7e4e3;font-size:13px}.sub a:hover{background:var(--steel-800);color:var(--copper-light)}.cta-btn{display:inline-block;background:var(--copper);color:#fff;border:0;padding:11px 22px;font-size:14px;font-weight:600;cursor:pointer}.cta-btn:hover{background:var(--copper-light)}.hero-small{position:relative;overflow:hidden;padding:76px 0;background:linear-gradient(90deg,rgba(12,39,51,.96),rgba(12,39,51,.74)),url('../images/headerbanner.png') center/cover;color:#fff}.hero-small:after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(115deg,#fff1 0 2px,transparent 2px 34px)}.hero-small .wrap{position:relative;z-index:1}.eyebrow{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.16em;color:var(--copper);text-transform:uppercase;display:block;margin-bottom:12px}.hero-small .eyebrow{color:var(--copper-light)}.hero-small h1{font-size:clamp(34px,5vw,54px);color:#fff;margin-bottom:15px}.hero-small p{max-width:650px;color:#c7d9d8;font-size:16px}.pad{padding:80px 0}.sec-head{max-width:680px;margin-bottom:38px}.sec-head h2{font-size:clamp(28px,3.5vw,38px)}.sec-head p{margin-top:13px;color:#556065}.about-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:center}.about-visual{aspect-ratio:4/5;position:relative;overflow:hidden;background:var(--steel-900)}.about-visual img{width:100%;height:100%;object-fit:cover;opacity:.78}.about-tag{position:absolute;left:22px;right:22px;bottom:22px;background:#0c2733cc;border:1px solid #fff2;padding:16px 18px;color:#fff}.about-tag b{display:block;font:700 26px 'Space Grotesk';color:#fff}.about-copy p{margin:0 0 16px;color:#3f4b50}.about-cols{display:grid;grid-template-columns:repeat(2,1fr);gap:26px;margin-top:28px}.about-cols span{font:13px 'IBM Plex Mono';color:var(--copper)}.about-cols h4{font-size:15px;margin:5px 0}.about-cols p{font-size:13.6px;color:#5a6569}.services{background:var(--mist)}.card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.service-card,.product-card{background:#fff;padding:24px}.service-card img{height:175px;width:100%;object-fit:cover;margin-bottom:18px}.service-card h3,.product-card h3{font-size:18px;margin-bottom:8px}.service-card p,.product-card p{font-size:14px;color:#556065}.service-card:hover{background:var(--steel-900)}.service-card:hover h3,.service-card:hover p{color:#eef6f5}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.product-card{padding:0;border:1px solid var(--line)}.product-card img{width:100%;height:210px;object-fit:cover}.product-card div{padding:22px}.product-card a{display:inline-block;margin-top:13px;color:var(--copper);font:600 13px 'IBM Plex Mono'}.contact{background:var(--mist)}.contact-layout{display:grid;grid-template-columns:1fr .9fr;gap:56px}.contact-item{display:flex;gap:14px;margin:20px 0}.contact-item b{display:block;font-size:15px}.contact-item p,.contact-item a{color:#556065}.contact-icon{color:var(--copper);font-size:22px;line-height:1}.contact-form{background:#fff;border:1px solid var(--line);padding:30px}.contact-form h2{font-size:25px}.contact-form>p{color:#556065;margin:8px 0 20px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{margin-bottom:15px}.field label{display:block;font-size:13px;font-weight:600;margin-bottom:6px}.field input,.field textarea{width:100%;padding:12px;border:1px solid var(--line);font:14px Inter,Arial;background:#fff}.field textarea{min-height:120px;resize:vertical}.map{margin-top:26px;width:100%;height:270px;border:0}footer{background:var(--steel-900);color:#cfe0e0;padding-top:56px}footer .top-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:42px}footer .logo-crop{width:185px;height:54px;background-size:214px auto;background-position:center -109px}footer h5{color:#fff;font-size:15px;margin-bottom:16px}footer li{font-size:13px;margin-bottom:9px;color:#aec2c1}footer a:hover{color:var(--copper-light)}.brand-blurb{font-size:13.5px;max-width:32ch;color:#aec2c1;margin-top:18px}.footer-bottom{border-top:1px solid #ffffff1f;margin-top:42px;padding-top:18px;padding-bottom:20px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:12px;color:#8da9a7}.vent-divider{height:14px;display:flex;overflow:hidden;background:var(--paper)}.vent-divider span{flex:1;height:28px;margin-top:-7px;margin-right:3px;background:var(--copper);transform:skewX(-32deg)}.vent-divider span:nth-child(3n){background:var(--teal)}
@media(max-width:960px){header.site .wrap{flex-wrap:wrap}.main{order:3;width:100%}.main ul{justify-content:space-between;gap:12px}.card-grid{grid-template-columns:repeat(2,1fr)}.about-layout,.contact-layout{grid-template-columns:1fr}footer .top-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.wrap{padding-left:20px;padding-right:20px}.topbar .wrap{justify-content:center}.topbar .socials{display:none}header.site .wrap{gap:10px}.logo-crop{width:88px;height:68px;background-size:contain;background-position:center}footer .logo-crop{width:112px;height:86px}header .cta-btn{padding:9px 12px;font-size:12px}.main ul{justify-content:flex-start;flex-wrap:wrap;gap:0 18px}.main a.top{font-size:13px}.sub{display:none!important}.hero-small{padding:58px 0}.pad{padding:58px 0}.about-cols,.field-row,.product-grid,.card-grid,footer .top-grid{grid-template-columns:1fr}.product-card img{height:200px}}

/* Keep the complete square logo visible in the navigation and footer. */
.logo-crop{width:154px;height:112px;overflow:visible;background-size:contain;background-position:center}
footer .logo-crop{width:176px;height:130px;background-size:contain;background-position:center}
@media(max-width:620px){.logo-crop{width:118px;height:88px}footer .logo-crop{width:142px;height:106px}}

.showcase-slider{padding:36px 0 32px;background:var(--paper);overflow:hidden}.showcase-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:20px}.showcase-eyebrow{display:block;font:12px 'IBM Plex Mono',monospace;letter-spacing:.15em;text-transform:uppercase;color:var(--copper);margin-bottom:5px}.showcase-heading h2{font-size:25px}.showcase-controls{display:flex;gap:8px}.showcase-controls button{width:38px;height:38px;border:1px solid var(--steel-900);background:transparent;color:var(--steel-900);font-size:21px;cursor:pointer}.showcase-controls button:hover{background:var(--steel-900);color:#fff}.showcase-window{overflow:hidden}.showcase-track{display:flex;transition:transform .55s ease}.showcase-card{display:block;flex:0 0 25%;min-width:25%;padding-right:16px}.showcase-card img{width:100%;height:148px;object-fit:cover;border:1px solid var(--line)}.showcase-card span{display:block;margin-top:12px;font:11px 'IBM Plex Mono',monospace;letter-spacing:.11em;text-transform:uppercase;color:var(--copper)}.showcase-card h3{font-size:16px;margin:4px 0 6px}.showcase-card b{font:12px 'IBM Plex Mono',monospace;color:var(--teal)}.showcase-card:hover h3,.showcase-card:hover b{color:var(--copper)}.showcase-dots{display:flex;gap:7px;margin-top:22px}.showcase-dots button{width:22px;height:3px;border:0;background:#b7c5c3;cursor:pointer}.showcase-dots button.active{background:var(--copper)}
@media(max-width:900px){.showcase-card{flex-basis:50%;min-width:50%}}@media(max-width:620px){.showcase-slider{padding:28px 0}.showcase-heading h2{font-size:22px}.showcase-card{flex-basis:100%;min-width:100%;padding-right:0}.showcase-card img{height:180px}.showcase-controls button{width:34px;height:34px}}

/* Establishment label in the main navigation. */
.main{display:flex;align-items:center;gap:28px}.main:before{display:none}header.site .logo-crop{position:relative;overflow:visible}header.site .logo-crop:after{content:'SINCE 1996';position:absolute;left:calc(100% + 14px);top:50%;transform:translateY(-50%);font:10px 'IBM Plex Mono',monospace;letter-spacing:.12em;color:var(--copper);white-space:nowrap;border-left:1px solid var(--line);padding-left:14px}@media(max-width:960px){header.site .logo-crop:after{display:none}}
