.home-service-grid .service-card .cr-photo-gallery{
  position:relative;display:block;flex-shrink:0;width:100%;height:auto;aspect-ratio:16/9;
  overflow:hidden;background:#fff;margin:0;touch-action:pan-y pinch-zoom;
}
.home-service-grid .service-card>figure:not(.cr-photo-gallery){
  position:relative;display:block;flex-shrink:0;width:100%;height:auto;aspect-ratio:16/9;
  overflow:hidden;margin:0;
}
.home-service-grid .service-card>figure:not(.cr-photo-gallery)>img{
  position:absolute;inset:0;display:block;width:100%;height:100%;min-height:0;object-fit:cover;
}
.home-service-grid .service-card .cr-photo-gallery .cr-photo-slide{
  position:absolute;inset:0;display:block;width:100%;height:100%;min-height:0;
  object-fit:cover;object-position:var(--cr-photo-x,50%) var(--cr-photo-y,50%);
  opacity:0;transition:opacity 1.2s ease;pointer-events:none;z-index:0;
}
.service-card .cr-photo-gallery .cr-photo-slide.is-previous{opacity:1;z-index:1}
.service-card .cr-photo-gallery .cr-photo-slide.is-current{opacity:1;z-index:2}
.service-card .cr-photo-gallery .cr-stock-slide{background:#fff;text-decoration:none;pointer-events:none}
.service-card .cr-photo-gallery .cr-stock-slide.is-current{pointer-events:auto}
.service-card .cr-photo-gallery .cr-stock-slide img{display:block;width:100%;height:100%;min-height:0;object-fit:contain;padding:10px 18px 49px}
.cr-stock-caption{position:absolute;inset:auto 12px 9px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;text-align:center;font-size:12px;line-height:1.3;color:var(--ink);background:#fff}
.cr-stock-slide:focus-visible{outline:3px solid var(--cyan)!important;outline-offset:-4px!important}
.service-card .cr-photo-nav{
  position:absolute;top:50%;transform:translateY(-50%);z-index:3;
  display:grid;place-items:center;width:44px;height:44px;padding:0;
  border:1px solid rgba(255,255,255,.38);border-radius:8px;
  color:#fff;background:rgba(20,42,52,.38);box-shadow:0 1px 5px rgba(0,0,0,.12);
  opacity:1;pointer-events:auto;cursor:pointer;transition:background .2s ease;
}
.service-card .cr-photo-nav svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.service-card .cr-photo-next{right:10px}
.service-card .cr-photo-prev{left:10px}
.service-card .cr-photo-nav:hover{background:rgba(20,42,52,.6)}
.service-card .cr-photo-nav:focus-visible{outline:3px solid var(--cyan);outline-offset:2px;opacity:1;pointer-events:auto}
.service-card .cr-photo-dots{
  position:absolute;left:50%;bottom:8px;transform:translateX(-50%);z-index:4;
  display:none;align-items:center;justify-content:center;gap:6px;height:20px;padding:5px 8px;
  border-radius:20px;background:rgba(20,42,52,.28);pointer-events:none;
  opacity:0;transition:opacity .25s ease;
}
.service-card .cr-photo-dot{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.6);box-shadow:0 0 1px rgba(0,0,0,.4)}
.service-card .cr-photo-dot.is-edge-dot{width:4px;height:4px}
.service-card .cr-photo-dot.is-current-dot{width:8px;height:8px;background:#fff}
.service-card .cr-photo-gallery.cr-photo-product .cr-photo-dots{bottom:46px}
.home-service-grid .cr-photo-gallery .cr-photo-caption{
  position:absolute;inset:auto 0 0;z-index:3;margin:0;padding:6px 10px;
  color:var(--ink);background:rgba(255,255,255,.96);font-size:12px;line-height:1.35;
  font-weight:500;text-align:center;pointer-events:none;
}
.home-service-grid .cr-photo-gallery .cr-photo-caption[hidden]{display:none}
.home-service-grid .cr-photo-gallery.cr-photo-has-caption .cr-photo-dots{
  bottom:calc(var(--cr-photo-caption-height,29px) + 8px);
}
body.home .cr-photo-toggle{
  display:inline-flex;align-items:center;justify-content:center;min-height:44px;
  padding:8px 14px;border:1px solid var(--navy,#163c4a);border-radius:8px;
  color:var(--navy,#163c4a);background:#fff;font:inherit;font-size:14px;
  font-weight:600;line-height:1.3;cursor:pointer;white-space:nowrap;
}
body.home .cr-photo-toggle:hover{background:#eef7f9}
body.home .cr-photo-toggle:focus-visible{outline:3px solid var(--cyan);outline-offset:3px}
body.home .cr-photo-toggle[hidden]{display:none}
@media(max-width:640px),(hover:none),(pointer:coarse){
  body.home .cr-photo-toggle{display:none}
  .service-card .cr-photo-nav,.service-card .cr-photo-prev{display:grid;width:44px;opacity:1;pointer-events:auto}
  .service-card .cr-photo-nav{background:rgba(20,42,52,.32)}
  .service-card .cr-photo-dots{display:flex}
  .service-card .cr-photo-gallery.cr-photo-interacting .cr-photo-dots{opacity:1}
}
@media(prefers-reduced-motion:reduce){
  .home-service-grid .service-card .cr-photo-gallery .cr-photo-slide,.service-card .cr-photo-nav,.service-card .cr-photo-dots{transition:none}
}
