.rail{display:grid;grid-auto-flow:column;grid-auto-columns:clamp(230px,27vw,318px);grid-gap:14px;gap:14px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;margin-inline:calc(-1 * var(--gut));padding-inline:var(--gut);padding-block:4px 6px;scroll-padding-inline-start:var(--gut);scrollbar-width:none}.rail::-webkit-scrollbar{display:none}.rail>*{scroll-snap-align:start}.rail:focus-visible{outline:2px solid var(--acc-text);outline-offset:3px}@media (min-width:1000px){.rail{scroll-snap-type:x proximity;grid-auto-columns:calc((100% - 3 * 14px) / 4)}}.rail[data-fits="1"]{grid-auto-flow:row;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));overflow:visible}.railhead{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:14px}.railhint{font-family:var(--mono);font-size:var(--fs-micro);letter-spacing:.14em;text-transform:uppercase;opacity:.72;white-space:nowrap;display:none;align-items:center;gap:8px}@media (pointer:fine){.railhint{display:flex}}.railhint:after{content:"";width:22px;height:1px;background:currentColor;animation:railnudge 2.6s var(--f-smooth) infinite}@keyframes railnudge{0%,55%,to{transform:translateX(0);opacity:.72}70%{transform:translateX(5px);opacity:1}}:root[dir=rtl] .railhint:after{animation-name:railnudge-rtl}@keyframes railnudge-rtl{0%,55%,to{transform:translateX(0);opacity:.72}70%{transform:translateX(-5px);opacity:1}}.tile{position:relative;display:flex;flex-direction:column;background:var(--panel);border:1px solid color-mix(in srgb,var(--ink) 10%,transparent);border-radius:3px;overflow:hidden;text-decoration:none;color:inherit;transition:background var(--sw),border-color .26s var(--f-fast),transform .26s var(--f-cubic)}.tile:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--acc) 55%,transparent)}.tile:focus-visible{outline:2px solid var(--acc-text);outline-offset:2px}.tile-shot{position:relative;overflow:hidden;aspect-ratio:4/5;background:color-mix(in srgb,var(--ink) 6%,transparent);transition:background var(--sw)}.tile-shot img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.02);transition:transform .76s var(--f-cubic)}.tile:hover .tile-shot img{transform:scale(1.075)}.tile-tag{position:absolute;inset-inline-start:0;bottom:0;display:flex;align-items:baseline;gap:10px;padding:11px 18px 11px var(--gut);-webkit-margin-start:calc(-1 * var(--gut));margin-inline-start:calc(-1 * var(--gut));background:var(--panel);transition:background var(--sw),padding .32s var(--f-cubic)}.tile:hover .tile-tag{-webkit-padding-end:26px;padding-inline-end:26px}.tile-tag .n{font-family:var(--mono);font-size:var(--fs-micro);letter-spacing:.1em;color:var(--acc-text);transition:color var(--sw)}.tile-tag h3{font-family:var(--cond);font-stretch:var(--cond-w);font-weight:700;font-size:clamp(18px,2.2vw,23px);line-height:var(--lh-3);letter-spacing:var(--tr-3);margin:0}.tile-body{padding:16px 18px 18px;display:flex;flex-direction:column;flex:1 1}.tile-body p{font-size:var(--fs-body);opacity:.72;line-height:1.55;margin:0}.tile-more{margin-top:auto;padding-top:15px;display:flex;align-items:center;gap:8px;font-family:var(--mono);font-size:var(--fs-micro);letter-spacing:.12em;text-transform:uppercase;color:var(--acc-text);transition:color var(--sw)}.tile-more:after{content:"";width:16px;height:1px;background:currentColor;transition:width .3s var(--f-fast)}.tile:hover .tile-more:after{width:28px}.tile:before{content:"";position:absolute;inset-inline-start:0;top:0;z-index:2;width:3px;height:0;background:var(--acc);transition:height .42s var(--f-cubic),background var(--sw)}.tile:hover:before{height:100%}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){.tile-shot img{animation:tile-settle linear both;animation-timeline:view();animation-range:entry 0 cover 42%}.tile:hover .tile-shot img{animation:none;transform:scale(1.075)}}}@keyframes tile-settle{0%{transform:scale(1.11)}to{transform:scale(1.02)}}.marks{--marks-gap:clamp(38px,6vw,74px);overflow:hidden;margin-inline:calc(-1 * var(--gut));-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}.marks-t{display:flex;width:max-content;gap:var(--marks-gap);-webkit-padding-start:var(--marks-gap);padding-inline-start:var(--marks-gap);animation:marks-run 34s linear infinite}.marks:hover .marks-t{animation-play-state:paused}.marks img{height:clamp(28px,4vw,40px);width:auto;display:block;opacity:.72}@keyframes marks-run{to{transform:translateX(-50%)}}@media (prefers-reduced-motion:reduce){.marks-t{animation:none;flex-wrap:wrap;width:auto;justify-content:center}}:root[dir=rtl] .tile-tag{-webkit-margin-start:calc(-1 * var(--gut));margin-inline-start:calc(-1 * var(--gut));padding-inline:var(--gut) 18px}:root[dir=rtl] .tile-more:after{transform:scaleX(-1)}.tile-shot-plate{display:grid;place-items:center;background:color-mix(in srgb,var(--ink) 7%,transparent)}.tile-shot-plate svg{color:var(--acc)}.tile-tag{color:var(--ink)}.tile-shot-plate svg{width:58%;height:auto;display:block;transform:translateX(-4%) scale(.98);transition:transform .76s var(--f-cubic),color var(--sw)}.tile:hover .tile-shot-plate svg{transform:translateX(-4%) scale(1.05)}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){.tile-shot-plate svg{animation:plate-settle linear both;animation-timeline:view();animation-range:entry 0 cover 42%}.tile:hover .tile-shot-plate svg{animation:none;transform:translateX(-4%) scale(1.05)}}}@keyframes plate-settle{0%{transform:translateX(-4%) scale(1.08)}to{transform:translateX(-4%) scale(.98)}}:root[dir=rtl] .tile-shot-plate svg{transform:translateX(4%) scaleX(-1) scale(.98)}.stile{position:relative;display:flex;flex-direction:column;min-height:clamp(180px,22vw,224px);padding:20px 20px 22px;background:var(--panel);border:1px solid color-mix(in srgb,var(--ink) 10%,transparent);border-radius:3px;overflow:hidden;transition:background var(--sw),border-color .26s var(--f-fast),transform .26s var(--f-cubic)}.stile:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--acc) 55%,transparent)}.stile:before{content:"";position:absolute;inset-inline-start:0;top:0;width:3px;height:0;background:var(--acc);transition:height .42s var(--f-cubic),background var(--sw)}.stile:hover:before{height:100%}.stile .idx{position:absolute;inset-inline-end:10px;top:-6px;font-family:var(--cond);font-stretch:var(--cond-w);font-weight:700;font-size:clamp(62px,9vw,104px);line-height:1;letter-spacing:var(--tr-display);color:var(--acc);opacity:.15;pointer-events:none;transition:opacity .42s var(--f-cubic),color var(--sw)}.stile:hover .idx{opacity:.3}.stile h3{font-family:var(--cond);font-stretch:var(--cond-w);font-weight:700;font-size:clamp(19px,2.3vw,25px);line-height:var(--lh-3);letter-spacing:var(--tr-3);margin:0;position:relative;max-width:11ch}.stile p{margin:auto 0 0;padding-top:14px;font-size:var(--fs-body);opacity:.7;line-height:1.55;position:relative}.pfoot{margin-top:auto}.stile-photo{padding-top:0}.stile-shot{display:block;position:relative;overflow:hidden;margin:0 -20px 16px;height:clamp(118px,15vw,150px);background:color-mix(in srgb,var(--ink) 6%,transparent);transition:background var(--sw)}.stile-shot img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.02);transition:transform .76s var(--f-cubic)}.stile:hover .stile-shot img{transform:scale(1.075)}.stile-photo .idx{top:auto;bottom:6px;opacity:.13}.stile-photo:hover .idx{opacity:.22}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){.stile-shot img{animation:tile-settle linear both;animation-timeline:view();animation-range:entry 0 cover 42%}.stile:hover .stile-shot img{animation:none;transform:scale(1.075)}}}.band-strip{grid-template-columns:1fr}.band-strip img{width:100%;height:clamp(220px,32vw,380px);object-fit:cover;object-position:50% 42%;min-height:0}.tile-shot:has(.shot-contain){background:color-mix(in srgb,var(--ink) 7%,transparent)}img.shot-contain{object-fit:contain;padding:clamp(18px,5vw,38px)}@media (max-width:899px){.shero-h{font-size:clamp(2.9rem,12.6vw,4.1rem);line-height:.82;letter-spacing:-.052em}:root[dir=rtl] .shero-h{font-size:clamp(2.4rem,10.4vw,3.4rem);max-width:none}.shero-sub{font-size:14px;line-height:1.45;margin-top:14px;max-width:none;text-wrap:pretty}.shero-cta{margin-top:16px;flex-wrap:nowrap;gap:8px}.shero-cta .btn{flex:1 1;min-width:0;font-size:12px;letter-spacing:.03em;min-height:46px;padding:14px 8px;white-space:nowrap}[data-division=hygiene] .shero-cta .btn.ghost{background:var(--panel);transition:background var(--sw),border-color var(--sw)}[data-division=fire] .shero-cta{gap:10px}[data-division=fire] .shero-cta .btn{border-radius:0;min-height:54px;padding:16px 12px;font-family:var(--cond);font-stretch:var(--cond-w);font-weight:700;font-size:12px;letter-spacing:.1em;text-transform:uppercase;box-shadow:none}[data-division=fire] .shero-cta .btn.ghost{background:color-mix(in srgb,var(--bg) 45%,transparent);-webkit-backdrop-filter:blur(10px) saturate(1.2);backdrop-filter:blur(10px) saturate(1.2);border:1px solid color-mix(in srgb,var(--ink) 38%,transparent)}@media (min-height:640px){.shero{position:relative;overflow:clip;isolation:isolate;display:flex;flex-direction:column;justify-content:flex-start;min-height:100svh;margin-top:calc(-1 * var(--head-h));padding-top:var(--head-h);background:var(--bg)}.shero-obj{position:absolute;inset:0 0 auto 0;z-index:0;margin:0;height:112%;overflow:clip}[data-division=fire] .shero-obj{top:-6%;height:132%}.shero-img,[data-division=fire] .shero-img,[data-division=hygiene] .shero-img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:50% 76%}[data-division=fire] .shero-img{object-position:50% 70%}.shero:before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(to bottom,var(--hero-ground) 0,color-mix(in srgb,var(--hero-ground) 93%,transparent) 27%,color-mix(in srgb,var(--hero-ground) 58%,transparent) 45%,color-mix(in srgb,var(--hero-ground) 16%,transparent) 59%,transparent 69%)}[data-division=fire] .shero:before{background:linear-gradient(to bottom,var(--bg) 0,color-mix(in srgb,var(--bg) 91%,transparent) 27%,color-mix(in srgb,var(--bg) 55%,transparent) 45%,color-mix(in srgb,var(--bg) 14%,transparent) 59%,transparent 69%)}.shero-in{position:relative;z-index:2;flex:0 0 auto;width:100%;margin-inline:0;padding-top:clamp(16px,4.5vw,26px);padding-bottom:clamp(18px,4vw,26px)}.shero-cta{justify-content:flex-start}.shero-cta .btn,[data-division=fire] .shero-cta .btn,[data-division=hygiene] .shero-cta .btn{width:auto;flex:0 0 auto;padding-inline:clamp(28px,8vw,40px)}.scroll{display:none}}@media (min-width:600px){.shero-sub{max-width:52ch}.shero-cta{max-width:520px}}}.shero-img{filter:saturate(.88) contrast(1.07) brightness(1.01)}[data-division=fire] .shero-img{filter:saturate(.8) contrast(1.1) brightness(.96)}.shero-obj:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='170' height='170'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='170' height='170' filter='url(%23n)'/%3E%3C/svg%3E");background-size:170px 170px;opacity:.12;mix-blend-mode:overlay}@media (max-width:899px){[data-division=hygiene] .shero-cta .btn.ghost{background:var(--panel);transition:background var(--sw),border-color var(--sw)}}.ticker{position:relative;z-index:2;overflow:hidden;background:var(--ink);border-block:1px solid color-mix(in srgb,var(--bg) 16%,transparent);transition:background var(--sw),border-color var(--sw)}.ticker-t{display:flex;width:max-content;animation:ticker-run 26s linear infinite}.ticker:focus-within .ticker-t,.ticker:hover .ticker-t{animation-play-state:paused}.ticker-l{display:flex;align-items:center;margin:0;padding:0;list-style:none;flex:none}.ticker-l li{display:flex;align-items:baseline;gap:7px;padding:11px clamp(18px,4vw,32px);font-family:var(--mono);font-size:var(--fs-micro);letter-spacing:.13em;text-transform:uppercase;color:var(--bg);opacity:.82;white-space:nowrap;transition:color var(--sw)}.ticker-l li+li{box-shadow:inset 1px 0 0 color-mix(in srgb,var(--bg) 20%,transparent)}.ticker-l b{font-family:var(--cond);font-stretch:var(--cond-w);font-weight:700;font-size:var(--fs-body);letter-spacing:-.01em;color:var(--acc);opacity:1;transition:color var(--sw)}@keyframes ticker-run{to{transform:translateX(-50%)}}@media (prefers-reduced-motion:reduce){.ticker-t{animation:none;width:100%;justify-content:center}.ticker-l:last-child{display:none}.ticker-l{flex-wrap:wrap;justify-content:center}}@media (max-width:860px){.head .logo{-webkit-margin-end:auto;margin-inline-end:auto}.head .navwrap{order:9}.head{gap:12px}}@media (max-width:899px) and (min-height:640px){[data-division=hygiene] .shero-cta{gap:10px}[data-division=hygiene] .shero-cta .btn{position:relative;overflow:hidden;border-radius:0;min-height:54px;padding:16px 12px;font-family:var(--cond);font-stretch:var(--cond-w);font-weight:700;font-size:12px;letter-spacing:.1em;text-transform:uppercase;box-shadow:none;transition:background var(--sw),color var(--sw),border-color var(--sw),transform .16s var(--f-fast)}[data-division=hygiene] .shero-cta .btn:not(.ghost){background:var(--acc);border-color:var(--acc);color:var(--btn-ink)}[data-division=hygiene] .shero-cta .btn.ghost{background:color-mix(in srgb,var(--hero-ground) 55%,transparent);-webkit-backdrop-filter:blur(10px) saturate(1.3);backdrop-filter:blur(10px) saturate(1.3);border:1px solid color-mix(in srgb,var(--ink) 42%,transparent);color:var(--ink)}[data-division=hygiene] .shero-cta .btn:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--ink);opacity:.9;transform:scaleX(0);transform-origin:left center;transition:transform .42s var(--f-cubic)}:root[dir=rtl] [data-division=hygiene] .shero-cta .btn:after{transform-origin:right center}[data-division=hygiene] .shero-cta .btn.ghost:after{background:var(--acc)}[data-division=hygiene] .shero-cta .btn:active:after{transform:scaleX(1)}[data-division=hygiene] .shero-cta .btn:active{transform:none}}.switch{background:color-mix(in srgb,var(--panel) 80%,transparent);-webkit-backdrop-filter:blur(20px) saturate(1.6);backdrop-filter:blur(20px) saturate(1.6);border-color:color-mix(in srgb,#fff 42%,transparent);box-shadow:inset 0 1px 0 color-mix(in srgb,#fff 55%,transparent),0 14px 34px -16px rgba(0,0,0,calc(.28 + var(--heat) * .4))}@supports not (((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))) or (-webkit-backdrop-filter:blur(1px))){.switch{background:var(--panel)}[data-division=hygiene] .shero-cta .btn.ghost{background:var(--hero-ground)}}@media (prefers-reduced-motion:no-preference){[data-division=hygiene] .shero-img{animation:hero-breathe 18s ease-in-out infinite alternate;will-change:transform}}@keyframes hero-breathe{0%{transform:scale(1)}to{transform:scale(1.035)}}.stepgrid{list-style:none;margin:0;padding:0;display:grid;grid-gap:0 clamp(14px,2.4vw,28px);gap:0 clamp(14px,2.4vw,28px);grid-template-columns:repeat(2,minmax(0,1fr));counter-reset:step}@media (min-width:860px){.stepgrid{grid-template-columns:repeat(4,minmax(0,1fr))}}.step{position:relative;padding:16px 0 22px;border-top:1px solid color-mix(in srgb,var(--ink) 14%,transparent);transition:border-color var(--sw)}.step:before{content:"";position:absolute;inset-inline-start:0;top:-1px;height:1px;width:0;background:var(--acc);transition:width .76s var(--f-cubic),background var(--sw)}.step.in:before,html.no-js .step:before{width:100%}@media (prefers-reduced-motion:reduce){.step:before{width:100%}}.step-n{font-family:var(--mono);font-size:var(--fs-micro);letter-spacing:.14em;color:var(--acc-text);transition:color var(--sw);display:block;margin-bottom:10px}.step h3{font-family:var(--cond);font-stretch:var(--cond-w);font-weight:700;font-size:clamp(16px,2vw,20px);line-height:var(--lh-3);letter-spacing:var(--tr-3);margin:0 0 7px}.step p{margin:0;font-size:var(--fs-label);line-height:1.5;opacity:.72}.bento{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}@media (min-width:860px){.bento{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}}.bento>:first-child,.bento>:last-child{grid-column:span 2}.bento .stile{min-height:0}.bento .stile-photo .stile-shot{height:clamp(128px,20vw,168px)}.bento>:first-child .stile-shot,.bento>:last-child .stile-shot{height:clamp(150px,22vw,196px)}.bento .stile-photo .idx{position:static;font-family:var(--mono);font-weight:400;font-size:var(--fs-micro);line-height:1;letter-spacing:.14em;color:var(--acc-text);opacity:1;display:block;margin-bottom:8px;transition:color var(--sw)}.bento .stile:not(.stile-photo) .idx{inset-inline-end:8px;top:auto;bottom:2px;opacity:.13}.bento .stile:not(.stile-photo):hover .idx{opacity:.22}.bento .stile{padding:16px 16px 18px}.bento .stile-photo{padding-top:0}.bento .stile p{margin-top:auto;padding-top:10px;font-size:var(--fs-label);line-height:1.5}.bento .stile h3{font-size:clamp(17px,2.1vw,22px);max-width:14ch}.bento .stile-photo .stile-shot{height:clamp(112px,17vw,150px);margin:0 -16px 14px}.bento>:first-child .stile-shot,.bento>:last-child .stile-shot{height:clamp(136px,19vw,178px)}.bento .stile:not(.stile-photo){min-height:clamp(132px,17vw,168px)}@media (min-width:860px){.devis{grid-template-columns:.9fr 1.1fr;align-items:start}}.devis form{background:var(--panel);border:1px solid color-mix(in srgb,var(--ink) 12%,transparent);padding:clamp(20px,3.4vw,32px);gap:18px 20px;transition:background var(--sw),border-color var(--sw)}.devis label{margin:0}.devis input,.devis select,.devis textarea{background:color-mix(in srgb,var(--ink) 4%,transparent);border:1px solid color-mix(in srgb,var(--ink) 14%,transparent);border-radius:0;padding:12px;transition:border-color .18s var(--f-fast),background .18s var(--f-fast)}.devis input:focus,.devis select:focus,.devis textarea:focus{border-color:var(--acc-text);background:var(--panel);outline:2px solid color-mix(in srgb,var(--acc) 30%,transparent);outline-offset:1px}.devis .btn{border-radius:0;justify-content:center;font-family:var(--cond);font-stretch:var(--cond-w);font-weight:700;letter-spacing:.1em}.reachcard{margin-top:26px;background:var(--panel);border:1px solid color-mix(in srgb,var(--ink) 12%,transparent);-webkit-border-start:3px solid var(--acc);border-inline-start:3px solid var(--acc);padding:clamp(18px,3vw,26px);transition:background var(--sw),border-color var(--sw)}.reachhead{font-family:var(--mono);font-weight:400;font-size:var(--fs-micro);letter-spacing:.14em;text-transform:uppercase;color:var(--acc-text);margin:0 0 16px;transition:color var(--sw)}.reachlist{list-style:none;margin:0 0 20px;padding:0;display:grid;grid-gap:2px;gap:2px}.reachlist li{display:grid;grid-template-columns:22px 1fr;align-items:start;grid-gap:12px;gap:12px;padding:9px 0;border-top:1px solid color-mix(in srgb,var(--ink) 9%,transparent);transition:border-color var(--sw)}.reachlist li:first-child{border-top:0}.btn.wa svg,.reachlist svg{width:18px;height:18px;flex:none;margin-top:.15em;fill:none;stroke:currentColor;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round}.reachlist svg{color:var(--acc-text);transition:color var(--sw)}.reachlist a{font-size:var(--fs-body);line-height:1.45;text-decoration:none;color:inherit;opacity:.86;border-bottom:1px solid transparent;transition:opacity .18s,border-color .18s}.reachlist a:hover{opacity:1;border-bottom-color:color-mix(in srgb,var(--acc) 60%,transparent)}.reachlist li:last-child a{font-size:var(--fs-label);opacity:.72}.btn.wa{display:flex;width:100%;justify-content:center;align-items:center;gap:9px;border-radius:0;min-height:50px;background:transparent;color:var(--ink);border:1px solid color-mix(in srgb,var(--ink) 30%,transparent);font-family:var(--cond);font-stretch:var(--cond-w);font-weight:700;font-size:var(--fs-label);letter-spacing:.1em;text-transform:uppercase;text-decoration:none;transition:background .2s var(--f-fast),color .2s var(--f-fast),border-color .2s var(--f-fast)}.btn.wa:hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}[data-division=fire] .ticker{background:var(--panel);border-block-color:color-mix(in srgb,var(--ink) 18%,transparent)}[data-division=fire] .ticker-l li{color:var(--ink);opacity:.8}[data-division=fire] .ticker-l li+li{box-shadow:inset 1px 0 0 color-mix(in srgb,var(--ink) 16%,transparent)}[data-division=fire] .ticker-l b{color:var(--acc-text)}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:scroll()){@media (min-width:900px){.shero-obj{animation:objIn 1.1s var(--f-cubic-in) .16s forwards,hero-lift linear both;animation-timeline:auto,scroll(root);animation-range:normal,0 100vh}}.shero-in{animation:hero-recede linear both;animation-timeline:scroll(root);animation-range:0 70vh}}@supports (animation-timeline:view()){main>.band{overflow:clip}main>.band img{scale:1.12;animation:band-drift linear both;animation-timeline:view();animation-range:entry 0 exit 100%}main>.sec>.lede,main>.sec>.railhead,main>.sec>.split,main>.sec>h2{animation:rise-in linear both;animation-timeline:view();animation-range:cover 0 cover 32%}}}@keyframes hero-lift{0%{transform:translateY(0)}to{transform:translateY(var(--hero-drift,10%))}}@keyframes hero-recede{0%{opacity:1;transform:none}to{opacity:.12;transform:translateY(-36px)}}@keyframes band-drift{0%{transform:translateY(5%)}to{transform:translateY(-5%)}}@keyframes rise-in{0%{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}.mark{display:block;flex:none;color:var(--acc-text);vector-effect:non-scaling-stroke;transition:color var(--sw),transform .42s var(--f-cubic)}.steps .mark{width:clamp(34px,4.4vw,44px);height:auto;margin-top:-2px}@media (hover:hover){.steps li:hover .mark{transform:translateY(-2px)}}.step-mark{width:clamp(32px,4.2vw,42px);height:auto;margin-bottom:12px}.step .step-n{display:block}@media (hover:hover){.step:hover .step-mark{transform:translateY(-2px)}}@media (prefers-reduced-motion:reduce){.mark{transition:color var(--sw)}.step:hover .step-mark,.steps li:hover .mark{transform:none}}.devis{--err:color-mix(in srgb,var(--red) 82%,var(--ink))}.devis label:has(:required)>[data-label]:after{content:"*";-webkit-margin-start:.35em;margin-inline-start:.35em;color:color-mix(in srgb,var(--ink) 55%,transparent)}.devis [aria-invalid=true],.devis [aria-invalid=true]:focus{border-color:var(--err);box-shadow:inset 0 0 0 1px var(--err)}.devis label:has([aria-invalid=true]){opacity:1;color:var(--err)}.devis label:has([aria-invalid=true])>[data-label]:after{color:var(--err)}.devis-alert{position:absolute;width:1px;height:1px;margin:0;padding:0;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}@media (min-width:860px){.devis-bare>.devis-side{order:-1}}.reachlist li{position:relative;min-height:44px}.reachlist li>a:after{content:"";position:absolute;inset:0}main>.sec:has(+.sec>.devis-bare){padding-bottom:0}main>.sec:has(>.devis-bare){padding-top:clamp(20px,3vw,38px)}html.no-js .needpick{display:none}.needpick{display:grid;grid-gap:12px;gap:12px;margin-top:2px}.needtabs{display:flex;flex-wrap:wrap;gap:6px}.needtab{min-height:38px;padding:8px 14px;border:1px solid color-mix(in srgb,var(--ink) 16%,transparent);background:transparent;color:inherit;border-radius:2px;cursor:pointer;font-family:var(--cond);font-stretch:var(--cond-w);font-weight:600;font-size:var(--fs-label);letter-spacing:.02em;line-height:1.2;transition:background .18s var(--f-fast),border-color .18s var(--f-fast),color .18s var(--f-fast)}.needtab[aria-pressed=true]{background:color-mix(in srgb,var(--acc) 14%,transparent);border-color:color-mix(in srgb,var(--acc) 55%,transparent)}.needcard:focus-visible,.needtab:focus-visible{outline:2px solid var(--acc-text);outline-offset:2px}.needrail{display:flex;gap:8px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;padding-bottom:6px;scrollbar-width:thin}.needcard{flex:0 0 auto;max-width:78%;scroll-snap-align:start;min-height:44px;padding:11px 15px;border:1px solid color-mix(in srgb,var(--ink) 16%,transparent);background:color-mix(in srgb,var(--ink) 3%,transparent);color:inherit;text-align:start;border-radius:2px;cursor:pointer;font-family:inherit;font-size:var(--fs-label);line-height:1.35;white-space:nowrap;transition:background .18s var(--f-fast),border-color .18s var(--f-fast),color .18s var(--f-fast)}@media (hover:hover){.needcard:hover{border-color:color-mix(in srgb,var(--acc) 55%,transparent)}}.needcard[aria-pressed=true]{background:var(--acc);border-color:var(--acc);color:var(--btn-ink);font-weight:600}.reachhours{margin:16px 0 0;font-size:var(--fs-label);line-height:1.45;opacity:.62}.reachpath{margin-top:14px}.pathlist{list-style:none;margin:0;padding:0;display:grid;grid-gap:2px;gap:2px}.pathlist li{display:grid;grid-template-columns:26px 1fr;align-items:baseline;grid-gap:10px;gap:10px;padding:9px 0;border-top:1px solid color-mix(in srgb,var(--ink) 9%,transparent);font-size:var(--fs-body);line-height:1.4;transition:border-color var(--sw)}.pathlist li:first-child{border-top:0}.pathlist span:first-child{font-size:var(--fs-micro);letter-spacing:.08em;color:var(--acc-text);transition:color var(--sw)}@media (min-width:960px){.devis-bare>.devis-side{position:-webkit-sticky;position:sticky;top:24px;align-self:start}}.page .sec.quote-intro{padding-top:clamp(10px,2vw,22px);padding-bottom:0}.quote-intro .back{margin-bottom:clamp(14px,2vw,22px)}.quote-intro h1{margin:0}@media (min-width:960px){.sec.quote-intro{display:grid;grid-template-columns:1.15fr .85fr;grid-column-gap:clamp(28px,5vw,70px);column-gap:clamp(28px,5vw,70px);align-items:last baseline}.quote-intro>.back,.quote-intro>.eyebrow{grid-column:1/-1}.quote-intro>h1{grid-column:1}.quote-intro>.lede{grid-column:2;margin:0 0 6px;max-width:42ch}}[data-division=hygiene]{--acc:initial;--ink:initial;--bg:initial;--panel:initial;--acc-text:initial;--btn-ink:initial;--o-hyg:initial;--o-fire:initial;--heat:initial}html body:has(.page[data-division=hygiene]),html body:has(>.page[data-division=hygiene]){--acc:initial;--ink:initial;--bg:initial;--panel:initial;--acc-text:initial;--btn-ink:initial;--o-hyg:initial;--o-fire:initial;--heat:initial}.cross{--from-acc:var(--acc);display:block;content-visibility:auto;contain-intrinsic-size:auto 420px}.cross-in{position:relative;background:var(--bg);color:var(--ink);padding-block:clamp(46px,8vw,92px);padding-inline:var(--edge);transition:background var(--sw),color var(--sw)}.cross-seam{position:absolute;inset-block-start:0;inset-inline:0;display:block;height:3px;transform-origin:50% 50%;background:linear-gradient(to right,var(--from-acc) 0 50%,var(--acc) 50% 100%)}:root[dir=rtl] .cross-seam{background:linear-gradient(to left,var(--from-acc) 0 50%,var(--acc) 50% 100%)}.cross-eye{margin-bottom:clamp(20px,3vw,28px)}.cross-grid{display:grid;grid-gap:clamp(22px,4vw,30px);gap:clamp(22px,4vw,30px);align-items:center}@media (min-width:860px){.cross-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(36px,6vw,88px)}.cross-mark{order:2}.cross-say{order:1}}.cross-mark{display:grid;place-items:center;padding:clamp(22px,3.4vw,40px);background:color-mix(in srgb,var(--panel) 62%,transparent);border:1px solid color-mix(in srgb,var(--ink) 12%,transparent);transition:background var(--sw),border-color var(--sw)}.cross-mark img{display:block;width:100%;height:auto;max-width:clamp(190px,26vw,340px)}.cross-mark{-webkit-border-start:3px solid var(--acc);border-inline-start:3px solid var(--acc)}.cross-h{font-family:var(--cond);font-stretch:var(--cond-w);font-weight:700;font-size:clamp(30px,8.7vw,52px);line-height:var(--lh-3);letter-spacing:var(--tr-2);margin:0;max-width:15ch;text-wrap:balance}.cross-say{display:grid;grid-gap:clamp(14px,1.6vw,20px);gap:clamp(14px,1.6vw,20px);align-content:start}.cross-b{margin:0;max-width:52ch;font-size:clamp(14.8px,1.4vw,16.5px);line-height:1.62;opacity:.78}.cross-go{margin-top:clamp(18px,2.6vw,26px);display:inline-flex;align-items:center;gap:12px;min-height:44px;font-family:var(--cond);font-stretch:var(--cond-w);font-weight:600;font-size:clamp(15px,1.6vw,18px);letter-spacing:.06em;text-transform:uppercase;text-decoration:none;color:var(--acc-text);transition:color var(--sw)}.cross-go:after{content:"";flex:none;width:26px;height:1px;background:currentColor;transition:width .3s var(--f-fast)}@media (hover:hover){.cross-go:hover:after{width:46px}}:root[dir=rtl] .cross-go{letter-spacing:.02em}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){.cross-seam{animation:cross-seam linear both;animation-timeline:view();animation-range:entry 20% cover 20%}.cross-eye,.cross-h,.cross-mark,.cross-say{animation:rise-in linear both;animation-timeline:view();animation-range:cover 0 cover 30%}}}@keyframes cross-seam{0%{transform:scaleX(0)}to{transform:scaleX(1)}}