
/* Full-width 3D service carousel. The original row remains a no-JS fallback. */
.solutions.wrap{width:100%;max-width:none;overflow:hidden}
.services-heading{width:min(1280px,calc(100% - 112px));margin-inline:auto;margin-bottom:22px}
.services-grid.has-carousel{--card-width:310px;position:relative;display:block;width:100%;height:585px;overflow:hidden;perspective:1200px;perspective-origin:50% 42%;margin:0;padding:0;scroll-snap-type:none;touch-action:pan-y;isolation:isolate;outline-offset:-5px}
.has-carousel .service-card{position:absolute;top:26px;left:50%;width:var(--card-width);min-width:0;margin-left:calc(var(--card-width) / -2);border-radius:18px;will-change:transform;backface-visibility:hidden;transform-style:preserve-3d;transition:filter .25s ease}
.has-carousel .service-card img{transition:transform .3s ease,filter .3s ease;transform-origin:50% 70%;user-select:none}
.has-carousel .service-card-action{font-size:12px;padding:15px 12px 0;color:#c1c1c1}
.has-carousel .service-card:focus-visible{outline-offset:5px;filter:drop-shadow(0 0 17px #f52d32aa)}
@media(hover:hover) and (pointer:fine){.has-carousel .service-card:hover img{transform:scale(1.025)}}
.carousel-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:5px}
.carousel-caption{display:flex;align-items:center;gap:18px}
.carousel-caption>span{font-size:10px;color:var(--red);letter-spacing:1.5px}
.carousel-caption>p{font-size:14px;margin:0;color:#ccc}
.carousel-controls{display:flex;align-items:center;gap:10px}
.carousel-controls button{height:42px;min-width:42px;border:1px solid #484848;background:#000;color:#eee;display:flex;align-items:center;justify-content:center;font-size:22px;transition:background .2s,border-color .2s}
.carousel-controls button:hover{border-color:var(--red);background:#200709}
.carousel-controls .carousel-pause{font-size:10px;gap:10px;padding:0 17px;min-width:120px}
.carousel-pause>span:first-child{font-size:16px;color:var(--red)}
@media(max-width:1100px){.services-heading{width:calc(100% - 64px)}}
@media(max-width:760px){.services-heading{width:calc(100% - 40px);margin-bottom:8px}.services-grid.has-carousel{perspective:850px}.has-carousel .service-card{top:22px}.has-carousel .service-card-action{font-size:11px}.carousel-footer{gap:17px;flex-wrap:wrap;justify-content:center}.carousel-caption{width:100%;justify-content:center}.carousel-caption>p{font-size:12px}.carousel-caption>span{font-size:9px}.carousel-controls{gap:12px}.carousel-controls button{height:42px;min-width:42px}.carousel-controls .carousel-pause{min-width:130px}}

