.systems-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px}
.systems-heading h2{flex:1;max-width:1080px}
.product-carousel{--visible-products:3}
.carousel-controls{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-shrink:0}
.carousel-controls[hidden]{display:none}
.carousel-arrow{display:grid;place-items:center;width:48px;height:48px;padding:11px;border:1px solid var(--blue);background:transparent;color:var(--blue);transition:background-color .18s,color .18s}
.carousel-arrow svg{width:24px;height:24px;stroke-width:1.8}
.carousel-arrow:hover:not(:disabled){background:var(--blue);color:#fff}
.carousel-arrow:disabled{color:var(--ink);border-color:var(--line);opacity:.45;cursor:default}
.carousel-count{min-width:80px;font-size:16px;line-height:1.3;font-weight:550;text-align:center;font-variant-numeric:tabular-nums;white-space:nowrap}
.product-carousel .products{display:flex;gap:0;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding-block:6px 12px;margin-top:38px}
.product-carousel .products::-webkit-scrollbar{display:none}
.product-carousel .product{display:block;flex:0 0 calc(100% / var(--visible-products));min-width:0;scroll-snap-align:start;scroll-snap-stop:always;padding:0 30px;border:0;text-align:center;column-gap:0}
.product-carousel .product+.product{border-left:1px solid var(--line)}
.product-carousel .product>img{width:100%;height:350px;margin:0 auto 14px;object-fit:contain;mix-blend-mode:multiply}
.product-carousel .product h3{font-size:32px;font-weight:780;line-height:1.1;padding:0;white-space:normal}
.product-carousel .product-finish{font-size:25px;font-style:italic;font-weight:550;line-height:1.3;margin-top:7px}
.product-carousel .product-description{font-size:24px;line-height:1.3;max-width:350px;margin:22px auto 0}
@media(max-width:1100px){.systems-heading{align-items:flex-start}.systems-heading h2{font-size:40px}.carousel-count{min-width:72px;font-size:15px}.carousel-controls{gap:8px}.carousel-arrow{width:44px;height:44px;padding:9px}.product-carousel .product{padding-inline:22px}.product-carousel .product>img{height:290px}.product-carousel .product h3{font-size:25px}.product-carousel .product-finish{font-size:21px}.product-carousel .product-description{font-size:20px}}
@media(max-width:900px){.product-carousel{--visible-products:2}.systems-heading{display:block}.systems-heading h2{font-size:34px}.carousel-controls{margin-top:24px}.product-carousel .products{margin-top:22px}.product-carousel .product>img{height:300px}}
@media(max-width:600px){.product-carousel{--visible-products:1}.carousel-controls{justify-content:space-between;gap:16px}.carousel-count{flex:1;font-size:16px}.product-carousel .products{margin-top:22px}.product-carousel .product,.product-carousel .product:first-child,.product-carousel .product:last-child{padding:0 18px 4px}.product-carousel .product+.product{border-top:0;border-left:1px solid var(--line)}.product-carousel .product>img{height:310px;margin-bottom:14px}.product-carousel .product h3{font-size:27px;align-self:auto;padding-top:0}.product-carousel .product-finish{font-size:21px;margin-top:7px}.product-carousel .product-description{font-size:19px;max-width:300px;margin:19px auto 0;min-height:75px}}
@media(max-width:370px){.product-carousel .product>img{height:270px}.product-carousel .product h3{font-size:25px}}
@media(prefers-reduced-motion:reduce){.carousel-arrow{transition:none}}
.projects-carousel{--visible-projects:2}
.projects-carousel .section-heading h2{margin-bottom:0}
.projects-carousel .project-grid{display:flex;gap:0;width:calc(100% + 24px);margin-inline:-12px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding-block:6px 14px}
.projects-carousel .project-grid::-webkit-scrollbar{display:none}
.projects-carousel .project{flex:0 0 calc(100% / var(--visible-projects));min-width:0;padding-inline:12px;scroll-snap-align:start;scroll-snap-stop:always}
.projects-carousel .project-image>img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center 55%}
.project-detail{display:block;font-size:16px;line-height:1.4;font-weight:400;margin-top:6px}
@media(max-width:900px){.projects-carousel .carousel-controls{margin-top:24px}.projects-carousel .section-heading{display:block}}
@media(max-width:600px){.projects-carousel{--visible-projects:1}.projects-carousel .project{padding-inline:12px}.projects-carousel .project figcaption{font-size:18px}.project-detail{font-size:15px}}
