/**
 * Homepage-only motion — hero spectacle + section polish.
 * Scoped to body.home; respects prefers-reduced-motion.
 */

@keyframes es-home-grid-drift {
  0% {
    background-position: 0 0, 0 0;
  }
  100% {
    background-position: 64px 64px, 64px 64px;
  }
}

@keyframes es-home-beam-sweep {
  0%,
  100% {
    opacity: 0;
    transform: translateX(-120%) skewX(-12deg);
  }
  18% {
    opacity: 0.85;
  }
  42% {
    opacity: 0.35;
    transform: translateX(120%) skewX(-12deg);
  }
}

@keyframes es-home-particle-float {
  0%,
  100% {
    transform: translate3d(0, 0, 0) scale(1);
    opacity: 0.35;
  }
  50% {
    transform: translate3d(12px, -28px, 0) scale(1.15);
    opacity: 0.9;
  }
}

@keyframes es-home-scroll-cue {
  0%,
  100% {
    transform: translateY(0);
    opacity: 0.65;
  }
  50% {
    transform: translateY(7px);
    opacity: 1;
  }
}

@keyframes es-home-title-glow {
  0%,
  100% {
    text-shadow:
      0 2px 24px rgba(0, 0, 0, 0.5),
      0 0 0 rgba(11, 92, 168, 0);
  }
  50% {
    text-shadow:
      0 2px 28px rgba(0, 0, 0, 0.55),
      0 0 42px rgba(11, 92, 168, 0.35);
  }
}

@keyframes es-home-tag-pop {
  0% {
    opacity: 0;
    transform: translate3d(0, 16px, 0) scale(0.92);
  }
  70% {
    transform: translate3d(0, -2px, 0) scale(1.03);
  }
  100% {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
  }
}

@keyframes es-home-copy-rise {
  0% {
    opacity: 0;
    transform: translate3d(0, 36px, 0);
    filter: blur(8px);
  }
  100% {
    opacity: 1;
    transform: translate3d(0, 0, 0);
    filter: blur(0);
  }
}

@keyframes es-home-visual-in {
  0% {
    opacity: 0;
    transform: translate3d(40px, 0, 0) scale(0.92);
  }
  100% {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
  }
}

@keyframes es-home-arm-a {
  0%,
  100% {
    transform: rotate(-25deg);
  }
  50% {
    transform: rotate(-12deg);
  }
}

@keyframes es-home-arm-b {
  0%,
  100% {
    transform: rotate(25deg);
  }
  50% {
    transform: rotate(14deg);
  }
}

@keyframes es-home-core-pulse {
  0%,
  100% {
    box-shadow: 0 20px 60px rgba(11, 92, 168, 0.34);
  }
  50% {
    box-shadow: 0 24px 72px rgba(11, 92, 168, 0.52);
  }
}

@keyframes es-home-eye-bounce {
  0%,
  100% {
    transform: scale(1);
  }
  35% {
    transform: scale(1.14);
  }
  55% {
    transform: scale(0.96);
  }
  75% {
    transform: scale(1.08);
  }
}

@keyframes es-home-product-eye-bounce {
  0%,
  100% {
    transform: rotate(45deg) scale(1);
  }
  40% {
    transform: rotate(45deg) scale(1.12);
  }
  60% {
    transform: rotate(45deg) scale(0.97);
  }
  80% {
    transform: rotate(45deg) scale(1.06);
  }
}

@keyframes es-home-stat-shine {
  0% {
    background-position: -120% 0;
  }
  100% {
    background-position: 220% 0;
  }
}

@keyframes es-home-section-glow {
  0%,
  100% {
    opacity: 0.35;
  }
  50% {
    opacity: 0.75;
  }
}

@media (prefers-reduced-motion: no-preference) {
  /*
   * Emergency: commercial-motion request introduced es-motion--slide-* { opacity:0 }
   * with higher specificity than .es-motion-visible — force home content visible.
   */
  body.home .es-section:not(#home-hero) .es-motion-hide,
  body.home .es-section:not(#home-hero) [class*="es-motion--"] {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    filter: none !important;
    clip-path: none !important;
  }

  body.home .es-section:not(#home-hero) .es-motion-hide.es-motion-visible,
  body.home .es-section:not(#home-hero) [class*="es-motion--"].es-motion-hide.es-motion-visible {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translate3d(0, 0, 0) !important;
    filter: none !important;
  }

  body.home #home-hero {
    isolation: isolate;
  }

  body.home .es-seadeal-hero__beam {
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: none;
    overflow: hidden;
  }

  body.home .es-seadeal-hero__beam::before {
    content: "";
    position: absolute;
    top: 18%;
    left: 0;
    width: 42%;
    height: 58%;
    background: linear-gradient(
      105deg,
      transparent,
      rgba(11, 92, 168, 0.14),
      rgba(255, 255, 255, 0.06),
      transparent
    );
    animation: es-home-beam-sweep 9s ease-in-out infinite;
  }

  body.home .es-seadeal-hero__ambient {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    overflow: hidden;
  }

  body.home .es-seadeal-hero__particle {
    position: absolute;
    width: calc(4px + (var(--es-particle, 0) % 3) * 2px);
    height: calc(4px + (var(--es-particle, 0) % 3) * 2px);
    border-radius: 50%;
    background: rgba(11, 92, 168, 0.75);
    box-shadow: 0 0 18px rgba(11, 92, 168, 0.45);
    top: calc(8% + (var(--es-particle, 0) * 7.3%));
    left: calc(6% + (var(--es-particle, 0) * 8.7%));
    animation: es-home-particle-float calc(5s + (var(--es-particle, 0) * 0.45s)) ease-in-out
      calc(var(--es-particle, 0) * -0.7s) infinite;
  }

  body.home .es-seadeal-hero__particle:nth-child(3n) {
    background: rgba(255, 255, 255, 0.55);
    box-shadow: 0 0 14px rgba(255, 255, 255, 0.25);
  }

  body.home .es-seadeal-hero__grid {
    animation: es-home-grid-drift 28s linear infinite;
    opacity: 0.72;
  }

  body.home .es-seadeal-hero__slide {
    transition:
      opacity 0.85s cubic-bezier(0.22, 1, 0.36, 1),
      visibility 0.85s step-end,
      transform 0.85s cubic-bezier(0.22, 1, 0.36, 1);
    transform: scale(1.05);
  }

  body.home .es-seadeal-hero__slide.is-active {
    transform: scale(1);
  }

  body.home .es-seadeal-hero__slide.is-active .es-seadeal-hero__media img {
    animation: es-hero-pan 16s ease-in-out infinite alternate;
  }

  body.home .es-seadeal-hero__slide.es-slide-enter .es-seadeal-hero__visual {
    animation: es-home-visual-in 1s cubic-bezier(0.22, 1, 0.36, 1) 0.12s both;
  }

  body.home .es-seadeal-hero__slide.es-slide-enter .es-hero__tags li {
    animation: es-home-tag-pop 0.62s cubic-bezier(0.22, 1, 0.36, 1) both;
  }

  body.home .es-seadeal-hero__slide.es-slide-enter .es-hero__tags li:nth-child(1) {
    animation-delay: 0.08s;
  }

  body.home .es-seadeal-hero__slide.es-slide-enter .es-hero__tags li:nth-child(2) {
    animation-delay: 0.16s;
  }

  body.home .es-seadeal-hero__slide.es-slide-enter .es-hero__tags li:nth-child(3) {
    animation-delay: 0.24s;
  }

  body.home .es-seadeal-hero__slide.es-slide-enter .es-hero__tags li:nth-child(4) {
    animation-delay: 0.32s;
  }

  body.home .es-seadeal-hero__slide.es-slide-enter .es-kicker,
  body.home .es-seadeal-hero__slide.es-slide-enter h1,
  body.home .es-seadeal-hero__slide.es-slide-enter .es-subtitle,
  body.home .es-seadeal-hero__slide.es-slide-enter .es-hero__actions {
    animation: es-home-copy-rise 0.82s cubic-bezier(0.22, 1, 0.36, 1) both;
  }

  body.home .es-seadeal-hero__slide.es-slide-enter .es-kicker {
    animation-delay: 0.18s;
  }

  body.home .es-seadeal-hero__slide.es-slide-enter h1 {
    animation-delay: 0.28s;
    animation-name: es-home-copy-rise, es-home-title-glow;
    animation-duration: 0.82s, 4.5s;
    animation-timing-function: cubic-bezier(0.22, 1, 0.36, 1), ease-in-out;
    animation-fill-mode: both, both;
    animation-iteration-count: 1, infinite;
  }

  body.home .es-seadeal-hero__slide.es-slide-enter .es-subtitle {
    animation-delay: 0.4s;
  }

  body.home .es-seadeal-hero__slide.es-slide-enter .es-hero__actions {
    animation-delay: 0.52s;
  }

  body.home .es-seadeal-hero__slide.es-slide-enter .es-hero__actions .es-btn {
    transition:
      transform 0.28s ease,
      box-shadow 0.28s ease;
  }

  body.home .es-seadeal-hero__slide.es-slide-enter .es-hero__actions .es-btn--primary {
    box-shadow: 0 14px 36px rgba(11, 92, 168, 0.45);
  }

  body.home .es-seadeal-hero__orbit--outer {
    animation: es-orbit-spin 18s linear infinite;
  }

  body.home .es-seadeal-hero__orbit--inner {
    animation: es-orbit-spin 12s linear infinite reverse;
  }

  body.home .es-seadeal-device__arm--a {
    animation: es-home-arm-a 3.8s ease-in-out infinite;
  }

  body.home .es-seadeal-device__arm--b {
    animation: es-home-arm-b 3.8s ease-in-out infinite 0.4s;
  }

  body.home .es-seadeal-device__core {
    animation: es-home-core-pulse 2.8s ease-in-out infinite;
  }

  body.home .es-seadeal-device__sensor {
    transform-origin: center center;
    animation: es-home-eye-bounce 2.4s ease-in-out infinite;
  }

  body.home .es-seadeal-device__sensor--a {
    animation-delay: 0s;
  }

  body.home .es-seadeal-device__sensor--b {
    animation-delay: 0.55s;
  }

  body.home .es-seadeal-hero__visual {
    transition: transform 0.2s ease-out;
    transform: perspective(900px) rotateX(var(--es-tilt-x, 0deg)) rotateY(var(--es-tilt-y, 0deg));
    transform-style: preserve-3d;
  }

  body.home .es-seadeal-hero__scroll-cue {
    position: absolute;
    left: 50%;
    bottom: 118px;
    z-index: 6;
    transform: translateX(-50%);
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    color: rgba(255, 255, 255, 0.78);
    font-size: 12px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    text-decoration: none;
    animation: es-home-scroll-cue 2.2s ease-in-out infinite;
  }

  body.home .es-seadeal-hero__scroll-cue-icon {
    width: 22px;
    height: 34px;
    border: 2px solid rgba(255, 255, 255, 0.45);
    border-radius: 999px;
    position: relative;
  }

  body.home .es-seadeal-hero__scroll-cue-icon::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 7px;
    width: 4px;
    height: 8px;
    margin-left: -2px;
    border-radius: 999px;
    background: #0b5ca8;
    animation: es-home-scroll-cue 2.2s ease-in-out infinite;
  }

  body.home .es-hero__stats--band > li {
    position: relative;
    overflow: hidden;
    transition:
      transform 0.32s cubic-bezier(0.22, 1, 0.36, 1),
      background-color 0.32s ease;
  }

  body.home .es-hero__stats--band > li::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
      105deg,
      transparent 30%,
      rgba(255, 255, 255, 0.12) 50%,
      transparent 70%
    );
    background-size: 220% 100%;
    opacity: 0;
    pointer-events: none;
  }

  body.home .es-hero__stats--band > li:hover {
    transform: translateY(-4px);
    background: rgba(255, 255, 255, 0.06);
  }

  body.home .es-hero__stats--band > li:hover::after {
    opacity: 1;
    animation: es-home-stat-shine 0.85s ease;
  }

  body.home .es-hero__stats--band > li strong {
    display: inline-block;
    transition: transform 0.3s ease, color 0.3s ease;
  }

  body.home .es-hero__stats--band > li:hover strong {
    transform: scale(1.06);
    color: #56a6e8;
  }

  /* Home sections — stronger than inner pages */
  body.home .es-section.es-section-ambient::before,
  body.home .es-section.es-section-ambient::after {
    animation-duration: 10s, 14s;
    animation-name: es-home-section-glow, es-home-section-glow;
  }

  /* Product center cards */
  body.home .es-product-type {
    transition:
      transform 0.38s cubic-bezier(0.22, 1, 0.36, 1),
      box-shadow 0.38s ease,
      border-color 0.38s ease;
  }

  body.home .es-product-type:hover {
    transform: translateY(-8px) scale(1.045);
    border-color: rgba(11, 92, 168, 0.45);
    box-shadow: 0 28px 58px rgba(0, 0, 0, 0.38);
  }

  body.home .es-product-type__visual span {
    transform-origin: center center;
    animation: es-home-product-eye-bounce 2.6s ease-in-out infinite;
  }

  body.home .es-product-type:nth-child(2) .es-product-type__visual span {
    animation-delay: 0.4s;
  }

  body.home .es-product-type:nth-child(3) .es-product-type__visual span {
    animation-delay: 0.8s;
  }

  body.home .es-product-type:nth-child(4) .es-product-type__visual span {
    animation-delay: 1.2s;
  }

  body.home .es-product-type:hover .es-product-type__visual span {
    animation-duration: 1.4s;
    box-shadow:
      inset 0 0 0 18px rgba(255, 255, 255, 0.12),
      0 24px 60px rgba(11, 92, 168, 0.28);
  }

  body.home .es-seadeal-advantages .es-feature-card.es-motion-visible,
  body.home .es-seadeal-solutions .es-card--link.es-motion-visible,
  body.home .es-seadeal-cases .es-project-card.es-motion-visible {
    transition:
      transform 0.38s cubic-bezier(0.22, 1, 0.36, 1),
      box-shadow 0.38s ease,
      border-color 0.38s ease;
  }

  body.home .es-seadeal-advantages .es-feature-card:hover,
  body.home .es-seadeal-solutions .es-card--link:hover,
  body.home .es-seadeal-cases .es-project-card:hover,
  body.home .es-hscroll--products .es-product-card:hover {
    transform: translateY(-10px) scale(1.02);
    box-shadow: 0 26px 56px rgba(13, 42, 67, 0.16);
  }

  /* Homepage buttons & links */
  body.home .es-btn,
  body.home .es-text-btn,
  body.home .es-seadeal-hero__arrow,
  body.home .es-seadeal-hero__dot,
  body.home .es-hscroll-btn,
  body.home .es-menu-toggle {
    transition:
      transform 0.28s cubic-bezier(0.22, 1, 0.36, 1),
      box-shadow 0.28s ease,
      background-color 0.28s ease,
      border-color 0.28s ease,
      color 0.28s ease,
      opacity 0.28s ease;
  }

  body.home .es-btn:hover,
  body.home .es-btn:focus-visible {
    transform: translateY(-3px) scale(1.04);
  }

  body.home .es-btn--primary:hover,
  body.home .es-btn--primary:focus-visible {
    box-shadow: 0 16px 36px rgba(11, 92, 168, 0.48);
  }

  body.home .es-btn--ghost:hover,
  body.home .es-btn--ghost:focus-visible {
    border-color: rgba(11, 92, 168, 0.55);
    color: var(--color-primary-dark);
    background: rgba(11, 92, 168, 0.08);
    box-shadow: 0 12px 28px rgba(13, 42, 67, 0.1);
  }

  body.home .es-text-btn:hover,
  body.home .es-text-btn:focus-visible {
    transform: translateX(5px) scale(1.05);
    color: #56a6e8;
  }

  body.home .es-text-btn::after {
    display: inline-block;
    transition: transform 0.28s ease;
  }

  body.home .es-text-btn:hover::after,
  body.home .es-text-btn:focus-visible::after {
    transform: translateX(4px) scale(1.1);
  }

  body.home .es-seadeal-hero__arrow:hover,
  body.home .es-seadeal-hero__arrow:focus-visible {
    transform: scale(1.12) translateY(-2px);
    background: #0b5ca8;
    box-shadow: 0 10px 24px rgba(11, 92, 168, 0.4);
  }

  body.home .es-seadeal-hero__dot:hover,
  body.home .es-seadeal-hero__dot:focus-visible {
    transform: scale(1.15);
    background: rgba(255, 255, 255, 0.55);
  }

  body.home .es-hscroll-btn:hover:not(:disabled),
  body.home .es-hscroll-btn:focus-visible:not(:disabled) {
    transform: scale(1.1);
    box-shadow: 0 10px 24px rgba(11, 92, 168, 0.32);
  }

  body.home .es-menu-toggle:hover,
  body.home .es-menu-toggle:focus-visible {
    transform: scale(1.06);
  }

  body.home .es-seadeal-hero__scroll-cue:hover {
    transform: translateX(-50%) scale(1.06);
    color: #fff;
  }

  body.home .es-hscroll-wrap .es-hscroll-btn {
    transition:
      transform 0.25s ease,
      background-color 0.25s ease,
      box-shadow 0.25s ease;
  }

  body.home .es-hscroll-wrap .es-hscroll-btn:hover:not(:disabled) {
    transform: scale(1.08);
    box-shadow: 0 10px 24px rgba(11, 92, 168, 0.28);
  }

  body.home #global-offices .es-global-map__marker.is-active,
  body.home #global-offices .es-global-map__marker:hover {
    filter: drop-shadow(0 0 12px rgba(11, 92, 168, 0.65));
  }

  body.home .es-seadeal-quote {
    position: relative;
    overflow: hidden;
  }

  body.home .es-home-grid-fx {
    perspective: 1200px;
  }

  body.home .es-seadeal-hero .es-hero__tags li {
    transition:
      transform 0.28s ease,
      box-shadow 0.28s ease,
      border-color 0.28s ease;
  }

  body.home .es-seadeal-hero .es-hero__tags li:hover {
    transform: translateY(-3px);
    border-color: rgba(11, 92, 168, 0.55);
    box-shadow: 0 8px 22px rgba(11, 92, 168, 0.22);
  }

  body.home .es-seadeal-quote::before {
    content: "";
    position: absolute;
    width: 320px;
    height: 320px;
    right: -80px;
    top: -100px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(11, 92, 168, 0.16), transparent 68%);
    animation: es-home-section-glow 8s ease-in-out infinite;
    pointer-events: none;
  }

  /* Scroll reveals — text blocks & split layouts (industrial-instrument-style) */
  body.home .es-split-panel {
    will-change: transform, opacity;
  }

  body.home .es-split-panel.es-motion-visible {
    transition:
      transform 0.88s cubic-bezier(0.22, 1, 0.36, 1),
      opacity 0.88s ease,
      box-shadow 0.4s ease;
  }

  body.home .es-quote-box__intro.es-motion-visible,
  body.home .es-quote-box__form.es-motion-visible {
    box-shadow: 0 18px 48px rgba(13, 42, 67, 0.1);
  }

  /* Homepage feature cards — hover pop (no scroll-reveal class required) */
  body.home .es-advantage-grid,
  body.home .es-solution-list--b2b,
  body.home .es-case-grid {
    overflow: visible;
  }

  body.home .es-advantage-card,
  body.home .es-solution-card--b2b,
  body.home .es-case-card {
    position: relative;
    z-index: 0;
    transition:
      transform 0.38s cubic-bezier(0.22, 1, 0.36, 1),
      box-shadow 0.38s ease,
      border-color 0.38s ease;
  }

  body.home .es-advantage-card:hover,
  body.home .es-advantage-card:focus-within,
  body.home .es-solution-card--b2b:hover,
  body.home .es-solution-card--b2b:focus-within,
  body.home .es-case-card:hover,
  body.home .es-case-card:focus-within {
    z-index: 3;
    transform: translateY(-10px) scale(1.02);
    box-shadow:
      0 24px 52px rgba(13, 42, 67, 0.14),
      0 10px 24px rgba(13, 42, 67, 0.08);
  }

  body.home .es-advantage-card:hover,
  body.home .es-advantage-card:focus-within {
    border-color: rgba(11, 92, 168, 0.35);
    background:
      linear-gradient(180deg, rgba(11, 92, 168, 0.1), transparent 48%),
      #fff;
  }

  body.home .es-advantage-card:hover .es-advantage-card__index,
  body.home .es-advantage-card:focus-within .es-advantage-card__index {
    transform: translateY(-6px) scale(1.06);
    color: rgba(11, 92, 168, 0.42);
  }

  body.home .es-advantage-card:hover h3,
  body.home .es-advantage-card:focus-within h3 {
    transform: translateY(-4px) scale(1.03);
  }

  body.home .es-advantage-card:hover i,
  body.home .es-advantage-card:focus-within i {
    transform: scaleX(1.2);
  }

  body.home .es-advantage-card:hover p,
  body.home .es-advantage-card:focus-within p {
    transform: translateY(-3px);
  }

  /* Global offices — list spacing + text pop on hover */
  body.home #global-offices .es-global-map__office-list {
    gap: clamp(14px, 1.8vw, 18px);
  }

  body.home #global-offices .es-global-map__office-item {
    transition:
      transform 0.36s cubic-bezier(0.22, 1, 0.36, 1),
      box-shadow 0.36s ease,
      border-color 0.36s ease,
      background-color 0.36s ease;
  }

  body.home #global-offices .es-global-map__office-item:hover,
  body.home #global-offices .es-global-map__office-item:focus-within,
  body.home #global-offices .es-global-map__office-item.is-highlight {
    transform: translateX(8px) scale(1.02);
    box-shadow: 0 14px 32px rgba(0, 0, 0, 0.28);
    border-color: rgba(120, 210, 255, 0.55);
    background: rgba(10, 111, 174, 0.28);
  }

  body.home #global-offices .es-global-map__office-item strong,
  body.home #global-offices .es-global-map__office-item p,
  body.home #global-offices .es-global-map__office-en {
    display: block;
    transition: transform 0.34s cubic-bezier(0.22, 1, 0.36, 1);
    transform-origin: left center;
  }

  body.home #global-offices .es-global-map__office-num {
    transition:
      transform 0.34s cubic-bezier(0.22, 1, 0.36, 1),
      box-shadow 0.34s ease;
  }

  body.home #global-offices .es-global-map__office-item:hover strong,
  body.home #global-offices .es-global-map__office-item:focus-within strong,
  body.home #global-offices .es-global-map__office-item.is-highlight strong {
    transform: translateX(4px) scale(1.04);
  }

  body.home #global-offices .es-global-map__office-item:hover p,
  body.home #global-offices .es-global-map__office-item:focus-within p,
  body.home #global-offices .es-global-map__office-item.is-highlight p,
  body.home #global-offices .es-global-map__office-item:hover .es-global-map__office-en,
  body.home #global-offices .es-global-map__office-item:focus-within .es-global-map__office-en,
  body.home #global-offices .es-global-map__office-item.is-highlight .es-global-map__office-en {
    transform: translateX(3px);
  }

  body.home #global-offices .es-global-map__office-item:hover .es-global-map__office-num,
  body.home #global-offices .es-global-map__office-item:focus-within .es-global-map__office-num,
  body.home #global-offices .es-global-map__office-item.is-highlight .es-global-map__office-num {
    transform: scale(1.12);
    box-shadow: 0 0 18px rgba(78, 184, 232, 0.65);
  }

  body.home .es-solution-card--b2b:hover,
  body.home .es-solution-card--b2b:focus-within,
  body.home .es-case-card:hover,
  body.home .es-case-card:focus-within {
    border-color: rgba(10, 111, 174, 0.28);
  }

  body.home .es-support-panel.es-motion-visible,
  body.home .es-geo-ai__card.es-motion-visible {
    transition:
      transform 0.85s cubic-bezier(0.22, 1, 0.36, 1),
      opacity 0.85s ease,
      box-shadow 0.35s ease,
      border-color 0.35s ease;
  }

  body.home .es-support-panel.es-motion-visible:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 48px rgba(13, 42, 67, 0.12);
  }

  body.home .es-about-timeline > div.es-motion-visible {
    border-left-width: 4px;
    transition:
      border-color 0.35s ease,
      transform 0.85s cubic-bezier(0.22, 1, 0.36, 1),
      opacity 0.85s ease;
  }

  body.home .es-about-timeline > div.es-motion-visible:hover {
    border-left-color: var(--color-primary);
    transform: translateX(4px);
  }

  body.home .es-spec-matrix.es-motion-visible,
  body.home .es-spec-matrix__table-wrap.es-motion-visible {
    box-shadow: 0 16px 40px rgba(13, 42, 67, 0.08);
  }

  body.home .es-brand-story__video.es-motion-visible .es-brand-story__video-shell {
    box-shadow: 0 24px 56px rgba(13, 42, 67, 0.14);
  }

  body.home .es-newsletter > div.es-motion-visible {
    transition:
      transform 0.85s ease,
      opacity 0.85s ease,
      box-shadow 0.35s ease;
  }

  body.home .es-faq details.es-motion-visible {
    transition:
      transform 0.82s cubic-bezier(0.22, 1, 0.36, 1),
      opacity 0.82s ease,
      box-shadow 0.3s ease;
  }

  body.home .es-faq details.es-motion-visible:hover {
    transform: translateX(4px);
  }
}

@media (max-width: 900px) {
  body.home .es-seadeal-hero__scroll-cue {
    display: none;
  }

  body.home .es-seadeal-hero__visual {
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.home .es-seadeal-hero__beam::before,
  body.home .es-seadeal-hero__particle,
  body.home .es-seadeal-hero__grid,
  body.home .es-seadeal-hero__scroll-cue,
  body.home .es-seadeal-device__arm--a,
  body.home .es-seadeal-device__arm--b,
  body.home .es-seadeal-device__core,
  body.home .es-seadeal-device__sensor,
  body.home .es-product-type__visual span {
    animation: none !important;
  }

  body.home .es-product-type:hover,
  body.home .es-btn:hover,
  body.home .es-text-btn:hover,
  body.home .es-advantage-card:hover,
  body.home .es-solution-card--b2b:hover,
  body.home .es-case-card:hover,
  body.home #global-offices .es-global-map__office-item:hover {
    transform: none;
  }

  body.home .es-advantage-card:hover h3,
  body.home .es-advantage-card:hover p,
  body.home .es-advantage-card:hover .es-advantage-card__index,
  body.home #global-offices .es-global-map__office-item:hover strong,
  body.home #global-offices .es-global-map__office-item:hover p,
  body.home #global-offices .es-global-map__office-item:hover .es-global-map__office-en,
  body.home #global-offices .es-global-map__office-item:hover .es-global-map__office-num {
    transform: none;
  }

  body.home .es-seadeal-hero__slide.es-slide-enter .es-hero__tags li,
  body.home .es-seadeal-hero__slide.es-slide-enter .es-kicker,
  body.home .es-seadeal-hero__slide.es-slide-enter h1,
  body.home .es-seadeal-hero__slide.es-slide-enter .es-subtitle,
  body.home .es-seadeal-hero__slide.es-slide-enter .es-hero__actions,
  body.home .es-seadeal-hero__slide.es-slide-enter .es-seadeal-hero__visual {
    animation: none !important;
  }
}
