.kla-immersive-edition .services .service {
  transition: transform .42s cubic-bezier(.22,.61,.36,1), box-shadow .42s ease, border-color .35s ease;
  backface-visibility: visible;
}

.kla-immersive-edition .service .service-top {
  justify-content: flex-end;
  margin-bottom: 13px;
  min-height: 15px;
}

.kla-immersive-edition .service h3 {
  margin-top: 0;
  margin-bottom: 16px;
}

/* L'animation reste perceptible, avec une silhouette gris perle plutôt que bleue. */
.kla-immersive-edition .service--ambient-light:after {
  background: linear-gradient(115deg, rgba(255,255,255,.06), rgba(249,250,250,.02));
}

.kla-immersive-edition .service-ambient-video {
  object-position: center;
  opacity: .75;
  mix-blend-mode: normal;
  filter: grayscale(.88) brightness(1.035) contrast(1.11) saturate(.18);
  transform: scale(1.035);
}

/* Le contenu reste sur son propre plan, sans filtre ni rendu rasterisé. */
.kla-immersive-edition .service--ambient-light > :not(.service-ambient-video),
.kla-immersive-edition .service-featured > :not(.service-featured-video) {
  position: relative;
  z-index: 3;
  transform: none;
  filter: none;
}

/* Reflet unique façon verre taillé : étroit, net et sans flou. */
.kla-immersive-edition .services .service:before {
  display: block;
  content: '';
  position: absolute;
  z-index: 2;
  top: 0;
  bottom: 0;
  left: -55%;
  width: 40%;
  pointer-events: none;
  opacity: 0;
  background: linear-gradient(
    106deg,
    transparent 0%,
    transparent 41%,
    rgba(255,255,255,.52) 45%,
    rgba(224,195,134,.3) 49%,
    rgba(255,255,255,.36) 52%,
    transparent 56%,
    transparent 100%
  );
  transform: translateX(0) skewX(-9deg);
  will-change: transform, opacity;
}

.kla-immersive-edition .services .service:hover:before {
  animation: kla-expertise-crystal-sweep 1.05s cubic-bezier(.22,.61,.36,1) 1 both;
}

@keyframes kla-expertise-crystal-sweep {
  0% { opacity: 0; transform: translateX(0) skewX(-9deg); }
  12% { opacity: 1; }
  86% { opacity: 1; }
  100% { opacity: 0; transform: translateX(430%) skewX(-9deg); }
}

.kla-immersive-edition .services .service:hover {
  transform: translateY(-4px);
  background: #f8f9f9;
  border-color: rgba(164,136,80,.48);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,1),
    inset 1px 0 0 rgba(216,229,236,.72),
    inset -1px 0 0 rgba(255,255,255,.82),
    inset 0 -1px 0 rgba(152,177,190,.3);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.kla-immersive-edition .services .service:hover h3,
.kla-immersive-edition .services .service:hover p,
.kla-immersive-edition .services .service:hover .service-tag {
  filter: none;
}

.kla-immersive-edition .services .service--ambient-light:hover h3 { color: #102638; }
.kla-immersive-edition .services .service--ambient-light:hover p { color: #50616d; }
.kla-immersive-edition .services .service--ambient-light:hover .service-tag { color: #4f606c; }

.kla-immersive-edition .services .service-featured:hover {
  background: #132d3d;
  border-color: rgba(225,200,148,.62);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    inset 1px 0 0 rgba(171,200,214,.28),
    inset -1px 0 0 rgba(255,255,255,.11),
    inset 0 -1px 0 rgba(146,178,194,.22);
}

.kla-immersive-edition .services .service-featured:hover h3 {
  color: #fff;
}

@media (max-width: 600px) {
  .kla-immersive-edition .service .service-top { margin-bottom: 11px; }
  .kla-immersive-edition .service h3 { margin-bottom: 15px; }
}

.kla-immersive-edition .services .service-title-prospecting {
  max-width: 190px;
}

@media (prefers-reduced-motion: reduce) {
  .kla-immersive-edition .services .service { transition: none; }
  .kla-immersive-edition .services .service:hover { transform: none; }
}
