:root{--dark:#102b2b;--deep:#091e21;--paper:#f4f1e9;--ink:#173333;--muted:#586762;--orange:#ff650d;--line:#d5d8cd}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:6px}img{display:block;max-width:100%}.wrap{width:min(1280px,88%);margin-inline:auto}.section{padding-block:110px}.eyebrow{font-size:11px;letter-spacing:2.5px;font-weight:700;line-height:1.6;margin:0 0 26px}.eyebrow span{display:inline-block;width:28px;height:1px;background:var(--orange);vertical-align:middle;margin-right:12px}h1,h2,h3,p{margin-top:0}h1,h2{font-weight:400;letter-spacing:-2px;line-height:1.1}h2{font-size:clamp(36px,4vw,58px);margin-bottom:28px}em{font-family:Georgia,'Times New Roman',serif;font-weight:400}h3{font-size:22px;font-weight:500;line-height:1.3}p{margin-bottom:20px}.skip{position:fixed;left:20px;top:-80px;background:white;padding:12px;z-index:20}.skip:focus{top:10px}.header{position:absolute;z-index:5;inset:0 0 auto;display:flex;align-items:center;justify-content:space-between;width:88%;max-width:1280px;margin:auto;height:112px;border-bottom:1px solid #ffffff30;color:white}.brand{display:flex;align-items:center;gap:24px}.brand img{width:76px;height:auto}.brand span{font-size:9px;letter-spacing:2px;max-width:80px;line-height:1.5}.header nav{display:flex;align-items:center;gap:30px;font-size:12px}.header nav a:hover{color:#ffad79}.nav-cta{border:1px solid #ffffff60;padding:12px 20px}.nav-cta span{margin-left:20px}.menu-toggle{display:none}.hero{min-height:820px;height: min(960px,100svh);position:relative;color:var(--paper);background:var(--deep);overflow:hidden;display:flex;align-items:center}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-image{object-position:65% center}.hero-shade{background:linear-gradient(90deg,rgba(5,25,27,.96),rgba(5,25,27,.67) 42%,rgba(5,25,27,.15)),linear-gradient(0deg,#091e21,transparent 35%)}.hero-content{position:relative;padding-top:65px}.hero h1{font-size:clamp(62px,7.5vw,110px);line-height:1;max-width:850px;margin-bottom:28px;letter-spacing:-4px}.hero h1 em{color:#e6cab1}.hero-intro{max-width:405px;font-size:17px;color:#d6ddda;margin-bottom:32px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;border:0;background:var(--orange);color:#102424;padding:18px 25px;font-size:13px;font-weight:700;cursor:pointer;transition:background .2s,transform .2s}.button:hover{background:#ff8d45;transform:translateY(-2px)}.button span{font-size:22px;font-weight:400;line-height:1}.hero-bottom{position:absolute;bottom:30px;left:0;right:0;display:flex;justify-content:space-between;align-items:end;font-size:11px;letter-spacing:.3px;color:#bdcbca}.hero-bottom p{margin:0}.hero-bottom a span{padding-left:30px}.hero-index{letter-spacing:2px;font-size:10px}.intro{display:grid;grid-template-columns:1.2fr 1fr;gap:30px 70px}.intro-copy{padding-top:45px;color:var(--muted);max-width:470px}.intro-copy p:first-child{font-size:19px;color:var(--ink)}.services{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);margin-top:38px;border-top:1px solid var(--line)}.services article{padding:34px 35px 0 0}.services article+article{border-left:1px solid var(--line);padding-left:35px}.number{font-size:12px;color:#b14913;display:block;margin-bottom:32px}.services p{font-size:14px;color:var(--muted);min-height:92px}.services a,.text-link{font-size:12px;font-weight:700;display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:14px}.laundry{display:grid;grid-template-columns:1fr 1fr;background:var(--dark);color:var(--paper)}.laundry-photo{position:relative;min-height:760px}.laundry-photo img{width:100%;height:100%;position:absolute;object-fit:cover}.laundry-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#091e21b3,transparent 50%)}.photo-label{position:absolute;z-index:1;bottom:35px;left:8%;font-size:10px;letter-spacing:2px}.laundry-copy{padding:80px clamp(30px,6vw,100px)}.laundry-copy .eyebrow{color:#e7b08a}.laundry h2{font-size:clamp(45px,4.5vw,66px)}.laundry-copy>p:not(.eyebrow){font-size:15px;color:#bfceca;max-width:480px}.feature-list{padding:0;list-style:none;margin:30px 0}.feature-list li{padding:12px 0;border-bottom:1px solid #ffffff22;font-size:13px}.feature-list span{margin-right:20px;color:#dbaa83;font-size:10px}.section-heading{display:flex;justify-content:space-between;gap:60px;align-items:end;margin-bottom:40px}.section-heading>p{max-width:330px;font-size:14px;color:var(--muted)}.flow-steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.flow-steps li{border-top:1px solid #aabbb2;padding-top:22px}.flow-steps span{font-size:10px;letter-spacing:1.5px;color:#a04717}.flow-steps h3{margin:20px 0 12px;font-size:21px}.flow-steps p{font-size:14px;color:var(--muted)}.sectors{background:#e6e9e0}.sector-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.sector{position:relative;min-height:410px;overflow:hidden;background:var(--dark);color:white}.sector img{position:absolute;width:100%;height:100%;object-fit:cover;transition:transform .6s}.sector:hover img{transform:scale(1.04)}.sector:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#061e22f5,transparent 100%)}.sector>div{position:absolute;z-index:1;bottom:0;left:0;right:0;padding:32px 70px 28px 32px}.sector span{font-size:10px;letter-spacing:2px;color:#eac6a6}.sector h3{font-size:28px;margin:15px 0 10px}.sector p{font-size:13px;color:#d8e0dc;margin:0;max-width:330px}.sector b{position:absolute;right:30px;bottom:35px;font-size:25px;font-weight:400}.method{display:grid;grid-template-columns:1fr 1fr;gap:100px}.method-intro>p:not(.eyebrow){max-width:380px;color:var(--muted);font-size:15px}.text-link{width:240px;margin-top:30px}.method-list{padding-top:25px}.method-list details{border-bottom:1px solid var(--line);padding:25px 0}.method-list summary{cursor:pointer;display:flex;gap:20px;align-items:center;font-size:18px;list-style:none}.method-list summary::-webkit-details-marker{display:none}.method-list summary span{font-size:11px;color:#9e4316}.method-list summary b{margin-left:auto;font-size:24px;font-weight:400}.method-list details[open] summary b{transform:rotate(45deg)}.method-list details p{margin:20px 0 0 35px;color:var(--muted);font-size:14px}.about{background:var(--dark);color:var(--paper);padding:95px 0;text-align:center}.about-inner>p:not(.eyebrow){max-width:660px;margin:30px auto;color:#c3cfca}.about .eyebrow{color:#dfad87}.about-tags{display:flex;justify-content:center;gap:35px;font-size:11px;letter-spacing:1px;margin-top:45px}.about-tags span:before{content:'+';margin-right:12px;color:var(--orange)}.contact{display:grid;grid-template-columns:1fr 1fr;gap:100px}.contact>div>p:not(.eyebrow){max-width:365px;color:var(--muted)}.contact .form-note{font-size:12px;line-height:1.7;border-top:1px solid var(--line);padding-top:18px;margin-top:35px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:22px}label{display:block;font-size:12px;margin-bottom:22px}input,select,textarea{display:block;width:100%;border:0;border-bottom:1px solid #aebbb1;padding:12px 0;background:transparent;border-radius:0;color:var(--ink);font-size:14px}input:focus,select:focus,textarea:focus{outline:2px solid #b95b28;outline-offset:4px}textarea{resize:vertical}#form-status{font-size:13px;margin-top:15px}footer{border-top:1px solid var(--line);padding-block:35px;display:flex;align-items:center;gap:40px}footer p{font-size:12px;margin:0}footer>a:not(.brand){font-size:12px;margin-left:auto}footer small{font-size:10px;color:var(--muted)}
@media(min-width:1700px){.hero-content{padding-top:90px}}@media(max-width:1000px){.header nav{gap:16px}.brand span{display:none}.hero{min-height:760px}.intro,.method,.contact{gap:45px}.laundry-copy{padding:55px 35px}.laundry-photo{min-height:700px}.section{padding-block:80px}.services article{padding-right:20px}.services article+article{padding-left:20px}.services p{min-height:120px}.sector{min-height:360px}.sector h3{font-size:24px}footer{flex-wrap:wrap}}
@media(max-width:720px){html{scroll-padding-top:25px}.wrap,.header{width:88%}.header{height:85px}.brand img{width:65px}.menu-toggle{display:flex;gap:20px;align-items:center;background:none;border:1px solid #ffffff55;padding:9px 13px;color:white;font-size:12px}.header nav{display:none;position:absolute;top:84px;left:-7%;right:-7%;padding:25px 7%;background:var(--deep);flex-direction:column;align-items:stretch;gap:0;border-bottom:1px solid #ffffff44}.header nav.is-open{display:flex}.header nav a{padding:13px}.nav-cta{margin-top:10px}.hero{height:auto;min-height:790px}.hero-content{padding-top:25px}.hero-image{object-position:65% center}.hero-shade{background:linear-gradient(90deg,#091e21ed,#091e2175),linear-gradient(0deg,#091e21,transparent 70%)}.hero .eyebrow{font-size:9px;letter-spacing:1.6px}.hero h1{font-size:clamp(55px,12vw,80px);letter-spacing:-2px}.hero-intro{font-size:15px;max-width:310px}.hero .button{font-size:12px;gap:18px;padding:17px 20px}.hero-bottom{bottom:25px}.hero-index{display:none}.hero-bottom p{font-size:10px}.hero-bottom a{font-size:10px}.section{padding-block:65px}h2{letter-spacing:-1px;font-size:37px}.intro,.method,.contact{grid-template-columns:1fr;gap:25px}.intro-copy{padding:0}.services{grid-template-columns:1fr;margin-top:10px}.services article,.services article+article{padding:28px 0;border-left:0;border-bottom:1px solid var(--line)}.number{margin-bottom:16px}.services p{min-height:0}.services a{border:0;padding:0}.laundry{grid-template-columns:1fr}.laundry-photo{min-height:400px}.laundry-copy{padding:50px 6%}.laundry h2{font-size:48px}.flow-steps{grid-template-columns:1fr;gap:20px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{max-width:100%}.sector-grid{grid-template-columns:1fr;gap:18px}.sector{min-height:360px}.sector>div{padding-left:25px}.method-list{padding:0}.about{padding:65px 0}.about-tags{flex-direction:column;gap:12px;margin-top:28px}.form-row{grid-template-columns:1fr;gap:0}.contact{gap:35px}.contact h2 br:last-child{display:none}footer{gap:25px}footer small{width:100%}footer>a:not(.brand){margin-left:0}.eyebrow{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
/* Persistent, high-contrast navigation shared by all pages. */
html{scroll-padding-top:110px}.header{position:fixed;width:100%;max-width:none;height:88px;padding-inline:max(6%,calc((100% - 1280px)/2));background:rgba(9,30,33,.98);border-bottom:1px solid #557071;box-shadow:0 5px 24px #00171935;backdrop-filter:blur(14px)}.header nav{font-size:14px;font-weight:600;gap:26px}.header nav a{color:#fff}.header nav a:hover,.header nav a[aria-current=page]{color:#ffac78}.header .nav-cta{border-color:#ff8c45;background:#ff650d;color:#102424}.header .nav-cta:hover{color:#102424;background:#ff8d45}.header .brand span{color:#e3eae7}.header .brand img{width:70px}.departments{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:35px 0 20px}.departments h3{font-size:17px;margin-bottom:12px}.departments address{font-style:normal;font-size:13px;line-height:1.7;min-height:68px}.departments a{font-size:14px;text-decoration:underline;text-underline-offset:4px}.departments p{font-size:13px;margin:8px 0}.departments small{grid-column:1/-1;color:var(--muted);font-size:11px}.email-fallback{font-size:12px;color:var(--muted)}.email-fallback a{text-decoration:underline}.detail-hero{position:relative;background:var(--deep);color:var(--paper);padding:135px 0 80px;min-height:650px;overflow:hidden}.detail-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.detail-hero>.wrap{position:relative}.detail-hero h1{font-size:clamp(45px,5.6vw,80px);max-width:940px;margin:30px 0}.detail-hero h1 em{color:#e6cab1}.detail-hero .wrap>p:not(.eyebrow){max-width:570px;color:#e1e7e3;font-size:18px;margin-bottom:30px}.breadcrumb{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:#d1ddd7;margin-bottom:45px}.breadcrumb a{text-decoration:underline;text-underline-offset:4px}.detail-section{border-bottom:1px solid var(--line)}.detail-section .section-heading{align-items:start}.detail-section .section-heading>div{max-width:620px}.detail-section .section-heading>p{max-width:460px;font-size:16px}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:50px}.detail-grid article{border-top:1px solid #b7c4b9;padding-top:25px}.detail-grid p{font-size:15px;color:var(--muted)}.detail-grid .number{margin-bottom:20px}.faq{display:grid;grid-template-columns:1fr 1.5fr;gap:0 70px}.faq>.eyebrow{grid-column:1/-1}.faq .method-list{padding:0}.faq .method-list details:first-child{padding-top:0}.faq .method-list summary{align-items:start}.faq .method-list details p{margin-left:0}.related{padding-bottom:70px}.related>div{display:flex;flex-wrap:wrap;gap:20px}.related a{border-bottom:1px solid #9bac9f;padding:12px 0;font-size:14px;margin-right:20px}.related a span{margin-left:20px}.detail-cta{padding:80px 0;background:var(--dark);color:var(--paper)}.detail-cta p:not(.eyebrow){max-width:500px;color:#ccd7d2}.detail-page footer{border:0}.detail-page footer small{margin-left:auto}
@media(max-width:1000px){.header nav{gap:14px;font-size:12px}.header .brand span{display:none}.departments{grid-template-columns:1fr}.departments address{min-height:0}.detail-section .section-heading{gap:35px}.detail-section .section-heading>p{max-width:40%}}
@media(max-width:720px){html{scroll-padding-top:100px}.header{height:80px;padding-inline:6%}.header nav{top:79px;left:0;right:0;padding:18px 6%;font-size:15px;max-height:calc(100dvh - 80px);overflow-y:auto;gap:0}.header .brand img{width:62px}.header nav a{padding:14px}.hero-content{padding-top:75px}.departments{grid-template-columns:1fr 1fr;gap:18px}.detail-hero{padding:110px 0 55px;min-height:620px}.detail-hero h1{font-size:clamp(38px,8.5vw,60px);letter-spacing:-1.5px}.detail-hero .wrap>p:not(.eyebrow){font-size:16px}.breadcrumb{font-size:11px;margin-bottom:35px}.detail-grid{grid-template-columns:1fr;gap:24px;margin-top:30px}.detail-section .section-heading>p{max-width:none}.faq{display:block}.faq .method-list{margin-top:35px}.related>div{display:block}.related a{display:flex;justify-content:space-between;margin:0}.detail-cta{padding:60px 0}.detail-page footer small{margin-left:0}}
@media(max-width:380px){.departments{grid-template-columns:1fr}}
/* Original menu typography and outline CTA, with a light fixed backdrop. */
.header{height:112px;color:#182322;background:rgba(244,241,233,.92);border-bottom:1px solid #17333322;box-shadow:0 3px 18px #102b2b0a;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.header nav{font-family:inherit;font-size:12px;font-weight:400;gap:30px}.header nav a{color:#182322}.header nav a:hover,.header nav a[aria-current=page]{color:#963b0b}.header .nav-cta{background:transparent;border:1px solid #17333360;padding:12px 20px;color:#182322}.header .nav-cta:hover{color:#182322;background:#17333308}.header .brand img{width:76px}.header .brand span{color:#243d3a}.header .menu-toggle{color:#182322;border-color:#17333360}html{scroll-padding-top:132px}.hardware-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.hardware-picture{background:#fff;aspect-ratio:1;overflow:hidden}.hardware-picture img{width:100%;height:100%;object-fit:contain;padding:15px;transition:transform .3s}.hardware-card:hover img{transform:scale(1.025)}.hardware-card-copy{padding:25px 0}.hardware-card-copy .eyebrow{font-size:9px;letter-spacing:1.5px;margin-bottom:12px}.hardware-card-copy h3{display:flex;justify-content:space-between;gap:12px;font-size:21px}.hardware-card-copy p:not(.eyebrow){font-size:13px;color:var(--muted)}.hardware-home>.text-link{width:285px}.hardware-heading{padding-top:155px;padding-bottom:55px}.hardware-heading .breadcrumb,.product-hero .breadcrumb{color:var(--muted)}.hardware-heading h1{font-size:clamp(45px,5vw,75px)}.hardware-heading>p:not(.eyebrow){max-width:730px;color:var(--muted);font-size:18px}.hardware-catalogue .hardware-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hardware-catalogue .hardware-picture{aspect-ratio:1.3}.hardware-catalogue .hardware-picture img{padding:30px}.hardware-catalogue .hardware-card-copy h3{font-size:28px}.product-hero{padding-top:160px;padding-bottom:65px;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:65px}.product-hero h1{font-size:clamp(40px,4.4vw,66px);letter-spacing:-2px}.product-hero>div>p:not(.eyebrow){max-width:500px;color:var(--muted);margin-bottom:30px}.product-picture{background:#fff}.product-picture img{width:100%;height:auto;padding:25px}.product-process{background:#e6e9e0}.product-note{font-size:13px;color:var(--muted);border-top:1px solid var(--line);padding-top:24px;margin-top:35px}.hardware-crosslink{padding-bottom:75px}.hardware-crosslink>p:not(.eyebrow){max-width:680px;color:var(--muted)}
@media(max-width:1100px) and (min-width:721px){.header nav{gap:16px}.header .brand span{display:none}.header .nav-cta{padding:12px}.hardware-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-hero{gap:30px}}
@media(max-width:720px){html{scroll-padding-top:100px}.header{height:80px}.header .brand img{width:65px}.header nav{top:79px;gap:0;font-size:12px;font-weight:400;background:rgba(244,241,233,.98);border-bottom:1px solid #17333322}.header nav a{padding:13px}.header .nav-cta{margin-top:10px}.hardware-grid,.hardware-catalogue .hardware-grid{grid-template-columns:1fr}.hardware-picture{aspect-ratio:1.2}.hardware-card-copy h3{font-size:24px}.hardware-heading{padding-top:115px;padding-bottom:30px}.hardware-heading h1{font-size:42px}.hardware-heading>p:not(.eyebrow){font-size:16px}.product-hero{padding-top:110px;padding-bottom:30px;grid-template-columns:1fr;gap:35px}.product-hero h1{font-size:42px}.product-picture img{max-height:450px;object-fit:contain}.hardware-crosslink{padding-bottom:55px}}
/* Hardware photography: tonal studio backdrop matching the site palette. */
.hardware-picture{position:relative;isolation:isolate;background:radial-gradient(ellipse at 65% 20%,#f4f1e9b3 0%,#f4f1e900 65%),linear-gradient(145deg,#e3e8de 0%,#cdd8ce 60%,#b5c7bd 100%);border:1px solid #17333312;box-shadow:inset 0 1px 0 #ffffff70}
.hardware-picture::before{content:'';position:absolute;inset:16px;border:1px solid #17333312;pointer-events:none;z-index:0}
.hardware-picture::after{content:'';position:absolute;left:16%;right:16%;bottom:7%;height:9%;border-radius:50%;background:radial-gradient(ellipse,#102b2b2e,transparent 70%);filter:blur(6px);z-index:0;pointer-events:none}
.hardware-picture img{position:relative;z-index:1;padding:22px;filter:drop-shadow(0 12px 9px #102b2b26);transition:transform .35s ease,filter .35s ease}
.hardware-card:hover .hardware-picture img,.hardware-card:focus-visible .hardware-picture img{transform:translateY(-4px) scale(1.025);filter:drop-shadow(0 17px 12px #102b2b30)}
.hardware-catalogue .hardware-picture img{padding:38px}
@media(max-width:720px){.hardware-picture img{padding:26px}.hardware-catalogue .hardware-picture img{padding:30px}}
@media(prefers-reduced-motion:reduce){.hardware-card:hover .hardware-picture img,.hardware-card:focus-visible .hardware-picture img{transform:none}}
/* Product detail photography and technical content. */
.product-picture{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 65% 20%,#f4f1e9b3 0%,#f4f1e900 65%),linear-gradient(145deg,#e3e8de,#cdd8ce 60%,#b5c7bd);border:1px solid #17333312;box-shadow:inset 0 1px 0 #ffffff70}
.product-picture::before{content:'';position:absolute;inset:20px;border:1px solid #17333312;z-index:0;pointer-events:none}.product-picture::after{content:'';position:absolute;left:16%;right:16%;bottom:7%;height:9%;border-radius:50%;background:radial-gradient(ellipse,#102b2b2e,transparent 70%);filter:blur(6px);z-index:0;pointer-events:none}.product-picture img{position:relative;z-index:1;padding:30px;filter:drop-shadow(0 15px 12px #102b2b26)}.product-hero .product-name{font-size:21px;color:var(--ink);margin-bottom:18px;font-weight:500}.product-hero h1{font-size:clamp(38px,3.7vw,56px)}.product-highlights{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:24px 0}.product-highlights li{font-size:11px;border:1px solid #17333325;padding:5px 10px;color:var(--ink)}.product-sections{display:flex;flex-wrap:wrap;gap:12px 30px;border-block:1px solid var(--line);padding-block:18px;font-size:12px}.product-sections a{padding:5px 0}.product-sections a:hover{text-decoration:underline;text-underline-offset:5px;color:#963b0b}.product-tech{background:#e6e9e0}.spec-table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.6}.spec-table caption{text-align:left;color:var(--muted);font-size:12px;padding-bottom:20px}.spec-table tr{border-bottom:1px solid #17333322}.spec-table th{text-align:left;font-weight:500;width:34%;padding:18px 25px 18px 0;vertical-align:top}.spec-table td{padding:18px 0;color:#405651;vertical-align:top}.application-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}.application-grid article{border-top:1px solid var(--line);padding-top:22px}.application-grid .number{margin-bottom:16px}.application-grid p{font-size:14px;color:var(--muted)}.product-gallery{padding-bottom:85px}.product-gallery figure{margin:0}.product-gallery img{width:100%;height:auto;max-height:700px;object-fit:contain;background:#e6e9e0}.product-gallery figcaption{font-size:12px;color:var(--muted);padding-top:14px}.product-gallery .section-heading{margin-bottom:28px}
@media(max-width:720px){.product-hero .product-name{font-size:19px}.product-hero h1{font-size:38px}.product-sections{gap:8px 22px;padding-block:14px}.spec-table{font-size:13px;overflow-wrap:anywhere}.spec-table th{width:39%;padding:14px 16px 14px 0}.spec-table td{padding-block:14px}.application-grid{grid-template-columns:1fr;gap:20px}.product-gallery{padding-bottom:55px}.product-picture img{padding:26px}.product-picture::before{inset:16px}}

/* Keep the original navigation style while accommodating the reordered links. */
.header nav{gap:20px}
@media(min-width:1051px) and (max-width:1250px){.header .brand span{display:none}.header nav{gap:16px}}
@media(min-width:721px) and (max-width:1050px){.header{height:80px;padding-inline:6%}.header .brand img{width:65px}.header .brand span{display:none}.header .menu-toggle{display:flex;gap:20px;align-items:center;background:none;border:1px solid #17333360;padding:9px 13px;color:#182322;font-size:12px}.header nav{display:none;position:absolute;top:79px;left:0;right:0;padding:18px 6%;background:rgba(244,241,233,.98);flex-direction:column;align-items:stretch;gap:0;border-bottom:1px solid #17333322;max-height:calc(100dvh - 80px);overflow-y:auto}.header nav.is-open{display:flex}.header nav a{padding:13px}html{scroll-padding-top:100px}}
@media(max-width:720px){.header nav{gap:0}}

/* Compact gateways to the dedicated hardware and Laundry pages. */
.home-product-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;padding-bottom:95px}
.home-product-card{background:#e0e7dd;border:1px solid #17333318;min-width:0}
.home-product-card>a{display:flex;flex-direction:column;height:100%;color:inherit}
.home-card-image{height:240px;overflow:hidden}
.home-card-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
.home-card-hardware{background:radial-gradient(ellipse at 65% 20%,#f4f1e9b3,transparent 65%),linear-gradient(145deg,#e3e8de,#cdd8ce 60%,#b5c7bd)}
.home-card-hardware img{object-fit:contain;padding:18px;filter:drop-shadow(0 12px 9px #102b2b26)}
.home-card-copy{padding:30px 34px;display:flex;flex-direction:column;flex:1}
.home-card-copy .eyebrow{font-size:10px;letter-spacing:1.6px;margin-bottom:18px}
.home-card-copy h2{font-size:clamp(29px,2.8vw,40px);letter-spacing:-1px;margin-bottom:18px}
.home-card-copy>p:not(.eyebrow){font-size:14px;max-width:440px;color:var(--muted)}
.home-card-link{display:flex;justify-content:space-between;gap:20px;font-size:12px;font-weight:700;border-top:1px solid #17333325;padding-top:18px;margin-top:auto}
.home-product-card-dark{background:var(--dark);color:var(--paper)}
.home-product-card-dark .eyebrow{color:#e7b08a}
.home-product-card-dark .home-card-copy>p:not(.eyebrow){color:#bfceca}
.home-product-card-dark .home-card-link{border-color:#ffffff30}
.home-product-card>a:hover .home-card-image img{transform:scale(1.03)}
.home-product-card>a:focus-visible{outline:3px solid var(--orange);outline-offset:5px}
@media(max-width:720px){.home-product-cards{grid-template-columns:1fr;gap:24px;padding-bottom:65px}.home-card-image{height:210px}.home-card-copy{padding:26px}.home-card-copy h2{font-size:32px}}
@media(prefers-reduced-motion:reduce){.home-product-card>a:hover .home-card-image img{transform:none}}

/* Separate the product gateways from the implementation chapter. */
.home-products-band{background:#cbd8cf;border-top:1px solid #b3c5b9;border-bottom:1px solid #b3c5b9;padding-block:70px}
.home-products-band .home-product-cards{padding-bottom:0}
.home-products-band .home-product-card{background:var(--paper);color:var(--ink);border:1px solid #17333320}
.home-products-band .home-card-copy .eyebrow{color:var(--ink)}
.home-products-band .home-card-copy>p:not(.eyebrow){color:var(--muted)}
.home-products-band .home-card-link{border-color:#17333325}
@media(max-width:720px){.home-products-band{padding-block:45px}}

/* Full-bleed hardware photograph and clearly labelled sample client marks. */
.home-card-hardware-photo img{object-fit:cover;object-position:center}
.client-examples{margin-top:65px;padding-top:45px;border-top:1px solid #ffffff30}
.client-examples .eyebrow{margin-bottom:14px}
.client-examples h3{font-size:30px;font-weight:400;margin-bottom:12px}
.client-demo-note{font-size:12px;color:#c3cfca;max-width:610px;margin:0 auto 30px}
.client-logo-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-block:1px solid #ffffff20}
.client-logo-grid li{display:flex;align-items:center;justify-content:center;min-height:130px;padding:25px 18px}
.client-logo-grid li+li{border-left:1px solid #ffffff20}
.demo-logo{display:flex;align-items:center;justify-content:center;gap:12px;color:#eeeae0;text-align:left}
.demo-logo svg{width:36px;height:36px;flex-shrink:0}
.demo-logo>span{font-size:23px;line-height:1.1;letter-spacing:2px;font-weight:600}
.demo-logo small{display:block;font-family:Arial,Helvetica,sans-serif;font-size:8px;letter-spacing:2.5px;font-weight:400;margin-top:8px}
.demo-logo-b>span{font-family:Georgia,serif;font-size:32px;letter-spacing:-1px;font-weight:400}
.demo-logo-c>span{font-size:21px;letter-spacing:1px}
.demo-logo-d>span{font-family:Georgia,serif;font-style:italic;font-size:32px;font-weight:400;letter-spacing:0}
.demo-logo-d small{font-style:normal}
@media(max-width:1000px){.client-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.client-logo-grid li:nth-child(3){border-left:0}.client-logo-grid li:nth-child(n+3){border-top:1px solid #ffffff20}}
@media(max-width:480px){.client-examples{margin-top:45px;padding-top:35px}.client-logo-grid li{min-height:110px;padding:20px 8px}.demo-logo{gap:6px}.demo-logo svg{width:26px;height:26px}.demo-logo>span{font-size:17px;letter-spacing:1px}.demo-logo-b>span,.demo-logo-d>span{font-size:25px}.demo-logo small{font-size:7px;letter-spacing:1px}}

/* Own-development section uses the same container as the rest of the homepage. */
.home-products-intro{margin-bottom:38px}
.home-products-intro>p:last-child{max-width:760px;color:var(--muted);margin-bottom:0}
.home-products-band .home-product-cards{gap:28px}
.home-products-band .home-product-card>a{display:grid;grid-template-columns:44% minmax(0,1fr)}
.home-products-band .home-card-image{position:relative;height:auto;min-height:320px}
.home-products-band .home-card-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.home-products-band .home-card-copy{padding:28px 24px;min-width:0}
.home-products-band .home-card-copy .eyebrow{font-size:10px;letter-spacing:1.2px;margin-bottom:16px}
.home-products-band .home-card-copy h2{font-size:clamp(27px,2.2vw,32px);margin-bottom:16px}
.home-products-band .home-card-copy>p:not(.eyebrow){font-size:14px;line-height:1.6;margin-bottom:22px}
.home-products-band .home-card-link{padding-top:16px}
@media(min-width:721px) and (max-width:1100px){.home-products-band .home-product-cards{grid-template-columns:1fr}.home-products-band .home-product-card>a{grid-template-columns:40% minmax(0,1fr)}.home-products-band .home-card-image{min-height:290px}.home-products-band .home-card-copy{padding:32px}.home-products-band .home-card-copy h2{font-size:32px}}
@media(max-width:720px){.home-products-intro{margin-bottom:28px}.home-products-intro>p:last-child{font-size:15px}.home-products-band .home-product-cards{grid-template-columns:1fr;gap:24px}.home-products-band .home-product-card>a{grid-template-columns:1fr}.home-products-band .home-card-image{min-height:0;aspect-ratio:1 / 1}.home-products-band .home-card-copy{padding:26px}.home-products-band .home-card-copy h2{font-size:30px}}

/* Application cards follow the horizontal own-development card layout. */
#setores .sector-grid{gap:28px}
#setores .sector{display:grid;grid-template-columns:44% minmax(0,1fr);min-height:0;background:var(--paper);color:var(--ink);border:1px solid #17333320}
#setores .sector:after{display:none}
#setores .sector>.sector-image{position:relative;inset:auto;z-index:auto;min-height:270px;padding:0;overflow:hidden}
#setores .sector-image img{inset:0;width:100%;height:100%;object-fit:cover}
#setores .sector>.sector-copy{position:static;padding:28px 24px;display:flex;flex-direction:column;min-width:0}
#setores .sector-copy>span:first-child{font-size:10px;letter-spacing:1.2px;font-weight:700;color:var(--ink)}
#setores .sector h3{font-size:28px;font-weight:400;line-height:1.15;letter-spacing:-1px;margin:16px 0}
#setores .sector p{font-size:14px;line-height:1.6;color:var(--muted);margin:0 0 22px}
#setores .sector .sector-link{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:auto;padding-top:16px;border-top:1px solid #17333325;font-size:12px;font-weight:700;letter-spacing:0;color:var(--ink)}
#setores .sector-link b{position:static;font-size:20px;font-weight:400}
@media(min-width:721px) and (max-width:1100px){#setores .sector-grid{grid-template-columns:1fr}#setores .sector{grid-template-columns:40% minmax(0,1fr)}#setores .sector>.sector-image{min-height:250px}#setores .sector>.sector-copy{padding:32px}}
@media(max-width:720px){#setores .sector-grid{grid-template-columns:1fr;gap:24px}#setores .sector{grid-template-columns:1fr}#setores .sector>.sector-image{min-height:0;aspect-ratio:1 / 1}#setores .sector>.sector-copy{padding:26px}}
@media(prefers-reduced-motion:reduce){#setores .sector img{transition:none}#setores .sector:hover img{transform:none}}

/* Honeypot field is kept off-screen and out of normal keyboard navigation. */
.form-honeypot{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.form-honeypot input{position:absolute!important;left:-10000px!important}


/* Hardware catalogue cards match the homepage's compact, horizontal product cards. */
.hardware-catalogue .hardware-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.hardware-catalogue .hardware-card{display:grid;grid-template-columns:38% minmax(0,1fr);align-items:stretch;min-width:0;background:var(--paper);border:1px solid #17333320}
.hardware-catalogue .hardware-picture{aspect-ratio:auto;min-height:260px;background:var(--paper);border:0;box-shadow:none}
.hardware-catalogue .hardware-picture::before,.hardware-catalogue .hardware-picture::after{display:none}
.hardware-catalogue .hardware-picture img{padding:20px;filter:none}
.hardware-catalogue .hardware-card-copy{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:24px}
.hardware-catalogue .hardware-card-copy .eyebrow{margin-bottom:12px}
.hardware-catalogue .hardware-card-copy h3{font-size:clamp(20px,2vw,27px);line-height:1.15;margin-bottom:14px}
.hardware-catalogue .hardware-card-copy h3 span{flex-shrink:0}
.hardware-catalogue .hardware-card-copy p:not(.eyebrow){font-size:14px;line-height:1.6;margin-bottom:0}
.hardware-catalogue .hardware-card:hover .hardware-picture img,.hardware-catalogue .hardware-card:focus-visible .hardware-picture img{filter:none}
.product-picture{background:var(--paper);border:0;box-shadow:none}
.product-picture::before,.product-picture::after{display:none}
.product-picture img{padding:12px;filter:none}
.product-gallery img{background:var(--paper)}
@media(max-width:1000px){
 .hardware-catalogue .hardware-grid{grid-template-columns:1fr}
 .hardware-catalogue .hardware-card{grid-template-columns:35% minmax(0,1fr)}
 .hardware-catalogue .hardware-picture{min-height:280px}
}
@media(max-width:720px){
 .hardware-catalogue .hardware-grid{grid-template-columns:1fr;gap:20px}
 .hardware-catalogue .hardware-card{grid-template-columns:1fr}
 .hardware-catalogue .hardware-picture{min-height:0;aspect-ratio:1.45}
 .hardware-catalogue .hardware-picture img{padding:24px}
 .hardware-catalogue .hardware-card-copy{padding:24px}
 .product-picture img{padding:4px}
}

/* Heroes das páginas de equipamento, alinhados com o IDSP Laundry. */
.product-detail-hero{min-height:720px;display:flex;align-items:center;padding-top:155px;padding-bottom:80px}
.product-detail-hero .eyebrow{color:#e7b08a}
.product-detail-hero .product-highlights li{color:var(--paper);border-color:#ffffff55}
.product-detail-hero--tunel>img{object-position:58% center}
.product-detail-hero--cabine>img{object-position:center}
.product-detail-hero--mesa>img{object-position:58% center}
.product-detail-hero--dispensador>img{object-position:center}
@media(max-width:720px){.product-detail-hero{min-height:660px;padding:110px 0 55px}.product-detail-hero .breadcrumb{font-size:11px;margin-bottom:30px}.product-detail-hero h1{font-size:clamp(38px,8.5vw,60px);letter-spacing:-1.5px}.product-detail-hero .wrap>p:not(.eyebrow){font-size:16px}}

/* Enquadramento dos equipamentos: preservar o produto completo no hero. */
.product-detail-hero>img{width:min(78%,1120px);height:100%;left:auto;right:0;object-fit:contain;object-position:right center}
.product-detail-hero>.hero-shade{background:linear-gradient(90deg,#091e21 0%,rgba(9,30,33,.94) 28%,rgba(9,30,33,.42) 58%,rgba(9,30,33,.10) 100%),linear-gradient(0deg,rgba(9,30,33,.82),transparent 42%)}
@media(max-width:720px){.product-detail-hero{display:block;min-height:0;padding:110px 0 0}.product-detail-hero>.wrap{padding-bottom:320px}.product-detail-hero>img{width:100%;height:320px;top:auto;left:0;right:0;bottom:0;object-position:center bottom}.product-detail-hero>.hero-shade{background:linear-gradient(180deg,#091e21 0%,#091e21 58%,rgba(9,30,33,.62) 78%,rgba(9,30,33,.18) 100%)}}

/* Suavizar a junção entre o fundo e as fotografias dos equipamentos. */
.product-detail-hero>img{width:auto;height:100%;max-width:none;object-fit:contain;object-position:right center}
.product-detail-hero>.hero-shade{background:linear-gradient(90deg,#091e21 0%,#091e21 24%,rgba(9,30,33,.88) 38%,rgba(9,30,33,.48) 53%,rgba(9,30,33,.08) 72%),linear-gradient(0deg,#091e21 0%,rgba(9,30,33,.55) 14%,transparent 44%)}
@media(max-width:720px){.product-detail-hero>img{width:100%;height:auto;max-width:none;top:auto;left:0;right:0;bottom:0;object-position:center bottom}.product-detail-hero>.hero-shade{background:linear-gradient(180deg,#091e21 0%,#091e21 57%,rgba(9,30,33,.75) 74%,rgba(9,30,33,.22) 100%),linear-gradient(90deg,rgba(9,30,33,.24),transparent)}}

/* Degradé alargado para os enquadramentos da cabine e do dispensador. */
@media(min-width:721px){.product-detail-hero--cabine>.hero-shade,.product-detail-hero--dispensador>.hero-shade{background:linear-gradient(90deg,#091e21 0%,#091e21 28%,rgba(9,30,33,.99) 40%,rgba(9,30,33,.88) 52%,rgba(9,30,33,.46) 70%,rgba(9,30,33,.08) 92%),linear-gradient(0deg,#091e21 0%,rgba(9,30,33,.55) 14%,transparent 44%)}}

/* Em mobile, o conteúdo vem primeiro e a fotografia passa para baixo do texto. */
@media(max-width:720px){.product-detail-hero{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding:110px 0 0}.product-detail-hero>.wrap{order:1;padding-bottom:26px}.product-detail-hero>img{position:relative;order:2;inset:auto;width:100%;height:clamp(240px,68vw,380px);max-width:none;object-fit:cover;object-position:center}.product-detail-hero>.hero-shade{display:none}}
@media(max-width:720px){.product-detail-hero--tunel>img{object-position:58% center}.product-detail-hero--cabine>img{object-position:60% center}.product-detail-hero--mesa>img{object-position:58% center}.product-detail-hero--dispensador>img{object-position:60% center}}


/* A imagem do hero fica numa linha própria, imediatamente após todo o texto, em mobile. */
@media(max-width:720px){
 .product-detail-hero{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto;align-content:start;min-height:0;padding:110px 0 0}
 .product-detail-hero>.wrap{grid-row:1;padding-bottom:28px}
 .product-detail-hero>img{grid-row:2;position:relative;inset:auto;align-self:stretch;width:100%;height:clamp(240px,68vw,380px);max-width:100%;object-fit:cover}
 .product-detail-hero>.hero-shade{display:none}
}

/* Navegação dos conteúdos fixa no topo quando chega ao topo do ecrã, apenas em desktop. */
@media(min-width:721px){
 .product-sections{position:sticky;top:0;z-index:30;width:100%;margin-inline:0;padding:14px max(6%,calc((100vw - 1280px)/2));justify-content:center;background:rgba(244,241,233,.94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 8px 22px rgba(16,43,43,.08)}
}


/* Mobile: voltar a usar a fotografia do equipamento como fundo do hero. */
@media(max-width:720px){
 .product-detail-hero{display:block;position:relative;min-height:0;padding:110px 0 55px}
 .product-detail-hero>img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;z-index:0}
 .product-detail-hero>.hero-shade{display:block;position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(9,30,33,.97) 0%,rgba(9,30,33,.87) 52%,rgba(9,30,33,.43) 100%),linear-gradient(0deg,rgba(9,30,33,.72),rgba(9,30,33,.08) 60%)}
 .product-detail-hero>.wrap{position:relative;z-index:2;padding-bottom:0}
 .product-detail-hero--tunel>img{object-position:62% center}
 .product-detail-hero--cabine>img{object-position:60% center}
 .product-detail-hero--mesa>img{object-position:60% center}
 .product-detail-hero--dispensador>img{object-position:62% center}
}

/* Nas páginas de equipamento, manter o menu geral acima da navegação do produto. */
@media(min-width:721px){
 body.product-detail-page>.header{position:sticky;inset:auto;top:0;z-index:50;width:100%;max-width:none;height:112px;margin:0;padding-inline:max(6%,calc((100% - 1280px)/2))}
 body.product-detail-page>.product-sections{top:112px;background:#102b2b;color:#f4f1e9;border-color:#ffffff30}
 body.product-detail-page>.product-sections a{color:#f4f1e9}
 body.product-detail-page>.product-sections a:hover{color:#e6cab1}
}


/* A barra do produto está dentro do main: manter-se abaixo do cabeçalho geral. */
@media(min-width:721px){
 body.product-detail-page main>.product-sections{position:sticky;top:112px;z-index:60;background:#102b2b;color:#f4f1e9;border-color:#ffffff30}
 body.product-detail-page main>.product-sections a{color:#f4f1e9}
 body.product-detail-page main>.product-sections a:hover{color:#e6cab1}
}


/* Indicar a secção e a área do site atualmente visíveis nos menus. */
.header nav a.is-active:not(.nav-cta),
.header nav a[aria-current="location"]:not(.nav-cta){color:#963b0b;text-decoration:underline;text-decoration-color:rgba(150,59,11,.55);text-decoration-thickness:1px;text-underline-offset:8px}
.product-sections a.is-active,
.product-sections a[aria-current="location"]{color:#e6cab1;text-decoration:underline;text-decoration-color:rgba(230,202,177,.62);text-decoration-thickness:1px;text-underline-offset:8px}
@media(min-width:721px){.product-detail-page main [id]{scroll-margin-top:190px}}


/* Alinhar as âncoras abaixo das duas barras fixas; evitar compensações duplicadas. */
@media(min-width:721px){
 html.product-detail-page{scroll-padding-top:175px}
 body.product-detail-page main [id]{scroll-margin-top:0}
}


/* A homepage tem apenas o cabeçalho fixo: alinhar as âncoras à sua altura. */
html.home-page{scroll-padding-top:112px}
@media(max-width:720px){html.home-page{scroll-padding-top:80px}}


/* Navegação sticky dos produtos em mobile, com fundo IDSP e âncoras sob a barra. */
@media(max-width:720px){
 html.product-detail-page{scroll-padding-top:0}
 body.product-detail-page main section[id]{scroll-margin-top:calc(var(--product-sections-height,96px) + 8px)}
 body.product-detail-page main>.product-sections{position:sticky;top:0;z-index:60;width:100%;max-width:none;margin:0;padding:12px 6%;justify-content:flex-start;gap:6px 20px;background:#102b2b;color:#f4f1e9;border-color:#ffffff30;box-shadow:0 8px 22px rgba(16,43,43,.18)}
 body.product-detail-page main>.product-sections a{color:#f4f1e9}
 body.product-detail-page main>.product-sections a:hover{color:#e6cab1}
}


/* Em mobile, manter o cabeçalho geral e a barra do produto empilhados. */
@media(max-width:720px){
 body.product-detail-page>.header{position:sticky;inset:auto;top:0;z-index:70;width:100%;max-width:none;height:80px;margin:0;padding-inline:6%}
 body.product-detail-page main>.product-sections{top:80px;z-index:60}
 body.product-detail-page main section[id]{scroll-margin-top:calc(var(--site-header-height,80px) + var(--product-sections-height,96px) + 8px)}
}
