:root{--navy:#0d2734;--blue:#00a9d6;--ink:#17262e;--muted:#6b7b82;--line:#dfe8eb;--soft:#f4f8f9;--width:1200px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:Arial,Helvetica,sans-serif}.catalog-header{border-bottom:1px solid var(--line);background:#fff}.catalog-nav{display:flex;width:min(calc(100% - 48px),var(--width));height:82px;align-items:center;justify-content:space-between;margin:auto;font-size:13px;font-weight:700}.catalog-logo{font-size:23px;letter-spacing:-1px}.catalog-logo b{color:var(--blue)}.catalog-logo small{display:block;color:var(--muted);font-size:7px;letter-spacing:3px}.catalog-nav>a:last-child{color:var(--navy)}.catalog-shell{width:min(calc(100% - 48px),var(--width));margin:auto}.catalog-intro{padding:100px 0 85px;border-bottom:1px solid var(--line)}.eyebrow{margin:0 0 16px;color:var(--blue);font-size:11px;font-weight:800;letter-spacing:3px}.catalog-intro h1{max-width:620px;margin:0 0 22px;font-size:64px;line-height:1.05;letter-spacing:-2px}.catalog-intro>p:last-child{max-width:480px;color:var(--muted);font-size:16px}.catalog-toolbar{display:flex;align-items:end;justify-content:space-between;gap:35px;padding:65px 0 30px}.catalog-toolbar h2{margin:4px 0 0;font-size:34px;font-weight:500}.catalog-toolbar>div:first-child span{color:var(--blue);font-size:10px;font-weight:800;letter-spacing:2px}.filters{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.filter{padding:9px 13px;border:1px solid var(--line);background:#fff;color:var(--muted);cursor:pointer;font-size:11px}.filter:hover,.filter.active{border-color:var(--blue);background:var(--blue);color:#fff}.catalog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding-bottom:110px}.catalog-card{border:1px solid var(--line);background:#fff;cursor:pointer;transition:transform .3s ease,box-shadow .3s ease}.catalog-card:hover{transform:translateY(-7px);box-shadow:0 18px 40px rgba(13,39,52,.12)}.card-image{height:350px;padding:22px;background:#f8fafb;overflow:hidden}.card-image img{width:100%;height:100%;object-fit:contain;transition:transform .45s ease}.catalog-card:hover .card-image img{transform:scale(1.07)}.card-body{padding:19px}.card-body p{margin:0 0 8px;color:var(--blue);font-size:10px;font-weight:800;letter-spacing:1px}.card-body h3{margin:0 0 15px;font-size:18px;font-weight:500}.card-body span{font-size:11px;font-weight:800}.product-dialog{width:min(100% - 32px,1050px);padding:0;border:0;background:#fff;color:var(--ink);box-shadow:0 25px 80px rgba(0,0,0,.25)}.product-dialog::backdrop{background:rgba(4,22,30,.7)}.dialog-close{position:absolute;z-index:2;right:16px;top:13px;width:34px;height:34px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--navy);font-size:23px;line-height:1;cursor:pointer}.dialog-layout{display:grid;grid-template-columns:1.1fr .9fr;min-height:620px}.dialog-gallery{display:flex;align-items:center;justify-content:center;flex-direction:column;padding:40px;background:#f6fafb}.dialog-gallery>img{width:100%;height:480px;object-fit:contain}.dialog-thumbs{display:flex;gap:8px;width:100%;margin-top:16px}.thumb{width:64px;height:56px;padding:4px;border:1px solid var(--line);background:#fff;cursor:pointer}.thumb.selected{border:2px solid var(--blue)}.thumb img{width:100%;height:100%;object-fit:contain}.dialog-info{display:flex;justify-content:center;flex-direction:column;padding:55px}.dialog-info h2{margin:0 0 17px;font-size:45px;line-height:1.05}.dialog-summary{color:var(--muted);line-height:1.7}.spec-list{margin:28px 0;border-top:1px solid var(--line)}.spec-list>div{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid var(--line);font-size:12px}.spec-list dt{color:var(--muted)}.spec-list dd{margin:0;font-weight:700;text-align:right}.dialog-contact{display:inline-flex;width:max-content;padding:13px 18px;background:var(--navy);color:#fff;font-size:12px;font-weight:800}.dialog-contact:hover{background:var(--blue)}
@media(max-width:1000px){.catalog-grid{grid-template-columns:repeat(2,1fr)}.catalog-toolbar{align-items:flex-start;flex-direction:column}.filters{justify-content:flex-start}.dialog-layout{grid-template-columns:1fr}.dialog-gallery>img{height:360px}.dialog-info{padding:40px}}
@media(max-width:650px){.catalog-nav,.catalog-shell{width:min(calc(100% - 30px),var(--width))}.catalog-intro{padding:70px 0 60px}.catalog-intro h1{font-size:47px}.catalog-grid{grid-template-columns:1fr;gap:16px}.card-image{height:290px;padding:18px}.card-body{padding:13px}.card-body h3{font-size:15px}.dialog-info h2{font-size:35px}.dialog-info{padding:28px}.dialog-gallery{padding:25px 18px}}

/* Enlarge PDF product cutouts so the product occupies roughly 70% of each frame. */
.card-image img{transform:scale(1.35)}
.catalog-card:hover .card-image img{transform:scale(1.42)}
.dialog-gallery>img{transform:scale(1.18)}

.dialog-thumbs{display:flex;gap:12px;width:100%;min-height:92px;padding:8px 2px;overflow-x:auto;overflow-y:hidden;align-items:center;scrollbar-width:thin}
.thumb{flex:0 0 84px;width:84px;height:76px;padding:5px;overflow:hidden;border:1px solid var(--line);background:#fff}
.thumb img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;transform:none!important}

.product-dialog{max-height:94vh;overflow:auto}
.dialog-gallery{justify-content:flex-start;padding:30px 34px 24px;overflow:hidden}
.dialog-gallery>img{height:430px;transform:none}
.dialog-thumbs{flex:0 0 92px;min-height:92px;margin-top:10px;padding:8px 2px;align-items:center;overflow-x:auto;overflow-y:visible}

.dialog-thumbs{flex-basis:108px;min-height:108px;padding:18px 4px 10px;align-items:flex-start;overflow-x:auto;overflow-y:hidden}
.thumb{position:relative;flex:0 0 84px;width:84px;height:76px;border:0!important;box-shadow:inset 0 0 0 1px var(--line)}
.thumb.selected{border:0!important;box-shadow:inset 0 0 0 2px var(--blue)}

.catalog-intro::after{background:linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.76) 35%,rgba(0,0,0,.34) 58%,rgba(0,0,0,.03) 80%)}
.catalog-intro h1{color:#e9edef;text-shadow:0 2px 16px rgba(0,0,0,.45)}
.catalog-intro>p:last-child{color:#c5ced1;text-shadow:0 1px 8px rgba(0,0,0,.5)}
.catalog-intro .eyebrow{color:#55cbe5;text-shadow:0 1px 10px rgba(0,0,0,.35)}

.catalog-toolbar{align-items:flex-start;flex-direction:column;gap:24px;padding-bottom:34px}
.filters{width:100%;justify-content:flex-start;gap:10px;padding:16px;background:#f4f8f9;border-top:3px solid var(--blue)}
.filter{min-height:46px;padding:12px 18px;border-color:#cddde2;background:#fff;color:var(--navy);font-size:12px;font-weight:700;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease}
.filter:hover{transform:translateY(-2px)}
.filter.active{border-color:var(--navy);background:var(--navy);color:#fff;box-shadow:0 7px 18px rgba(13,39,52,.18)}

.catalog-intro{position:relative;isolation:isolate;min-height:430px;padding:96px 52% 80px 0;overflow:hidden}
.catalog-intro::before{content:"";position:absolute;z-index:-2;inset:0;background:#f3f7f8 url('assets/site/products-banner-desktop.webp') center/cover no-repeat}
.catalog-intro::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.22) 0%,rgba(255,255,255,.1) 42%,rgba(255,255,255,0) 68%)}
@media(max-width:800px){.catalog-intro{min-height:520px;padding:62px 20px 245px}.catalog-intro::before{background-size:cover;background-position:62% center}.catalog-intro::after{background:linear-gradient(180deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.9) 54%,rgba(255,255,255,.18) 100%)}}

/* Final banner treatment: keep this last so earlier theme rules cannot override it. */
.catalog-intro::after{background:linear-gradient(90deg,rgba(0,0,0,.76) 0%,rgba(0,0,0,.62) 38%,rgba(0,0,0,.3) 58%,rgba(0,0,0,.05) 78%,rgba(0,0,0,0) 100%)!important}
.catalog-intro h1{color:#f2f3f3!important;text-shadow:0 2px 16px rgba(0,0,0,.65)}
.catalog-intro>p:last-child{color:#d0d4d5!important;text-shadow:0 1px 10px rgba(0,0,0,.7)}
@media(max-width:800px){.catalog-intro::after{background:linear-gradient(180deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.56) 48%,rgba(0,0,0,.14) 76%,rgba(0,0,0,0) 100%)!important}}

/* Keep shared home-page chrome at exactly the same scale on the catalogue. */
body .site-header .container,body .footer .container{width:min(calc(100% - 48px),1200px)}
body .site-header .navbar{height:82px}
body .site-header .logo,body .footer .logo{font-size:25px;font-weight:300;line-height:1.6}
body .site-header .logo span,body .footer .logo span{margin-top:-7px;font-size:7px;letter-spacing:3.5px}
body .site-header .nav{gap:40px;font-size:13px}
body .site-header .nav a{padding:31px 0}
body .site-header .quote-link{padding:12px 18px;font-size:12px}
body .footer{padding:75px 0 25px}
body .footer-grid{grid-template-columns:2fr 1.4fr 1fr 1.5fr;gap:45px}
body .footer h3{font-size:13px}
body .footer p,body .footer a:not(.logo){font-size:12px}
@media(max-width:900px){body .site-header .navbar{height:70px}body .footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){body .site-header .container,body .footer .container{width:min(calc(100% - 30px),1200px)}body .footer-grid{grid-template-columns:1fr}}

@media(min-width:901px){
  body .site-header .navbar{height:92px}
  body .site-header .logo,body .footer .logo{font-size:29px}
  body .site-header .logo span,body .footer .logo span{font-size:8px;letter-spacing:4px}
  body .site-header .nav{gap:44px;font-size:14px}
  body .site-header .nav a{padding:35px 0}
  body .site-header .quote-link{padding:14px 21px;font-size:13px}
  body .footer{padding:84px 0 29px}
  body .footer h3{font-size:15px}
  body .footer p,body .footer a:not(.logo){font-size:13px}
  body .footer .copyright{font-size:12px}
}
@media(max-width:900px){.catalog-intro::before{background-image:url('assets/site/products-banner-mobile.webp');background-position:center;background-size:cover}}
@media(min-width:561px) and (max-width:900px){.catalog-intro::before{background-image:url('assets/site/products-banner-tablet.webp')}}
.catalog-card{content-visibility:auto;contain-intrinsic-size:390px 460px}
