/* Service feature strips */
.service-motion .trust-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin: 24px 0 58px;
  padding: 0;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.service-motion .trust-strip .trust-item {
  position: relative;
  display: flex;
  min-width: 0;
  min-height: 78px;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
  padding: 16px 14px;
  overflow: hidden;
  border: 1px solid rgba(229, 234, 242, .9);
  border-radius: 17px;
  background: #fff;
  box-shadow: 0 6px 20px rgba(28, 44, 91, .035);
  color: var(--navy);
  font-size: 14px;
  line-height: 1.35;
  text-align: left;
}

.service-motion .trust-strip .trust-item::before {
  position: absolute;
  top: 0;
  left: 14px;
  width: 36px;
  height: 3px;
  border-radius: 0 0 3px 3px;
  background: #5ce1e6;
  content: "";
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 420ms cubic-bezier(.2, .75, .25, 1);
}

.service-motion .trust-strip .trust-item strong,
.service-motion .trust-strip .trust-item b {
  display: block;
  margin-bottom: 2px;
  color: var(--navy);
  font-size: .9rem;
  font-weight: 700;
}

.service-motion .trust-strip .mini-icon,
.service-motion .trust-strip .trust-icon,
.service-motion .trust-strip .service-proof-icon {
  display: grid;
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
  place-items: center;
  border: 1px solid rgba(128, 53, 253, .08);
  border-radius: 13px;
  background: linear-gradient(145deg, #f3edff, #eafcfd);
  color: var(--purple);
  transition: transform 420ms cubic-bezier(.2, .75, .25, 1), color 300ms ease, box-shadow 420ms ease, border-color 300ms ease;
}

.service-motion .trust-strip .mini-icon svg,
.service-motion .trust-strip .trust-icon svg,
.service-motion .trust-strip .service-proof-icon svg {
  display: block;
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.service-motion .trust-strip .trust-item > span:last-child,
.service-motion .trust-strip .trust-item > div {
  min-width: 0;
}

.service-motion .info-grid .info-card {
  position: relative;
  display: grid;
  min-height: 100px;
  grid-template-columns: 45px minmax(0, 1fr);
  grid-template-rows: auto auto;
  align-content: center;
  gap: 3px 12px;
  padding: 16px 14px;
  overflow: hidden;
  border: 1px solid rgba(229, 234, 242, .9);
  border-radius: 17px;
  background: #fff;
  box-shadow: 0 6px 20px rgba(28, 44, 91, .035);
  color: var(--navy);
  text-align: left;
}

.service-motion .info-grid .info-card::before {
  position: absolute;
  top: 0;
  left: 14px;
  width: 36px;
  height: 3px;
  border-radius: 0 0 3px 3px;
  background: #5ce1e6;
  content: "";
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 420ms cubic-bezier(.2, .75, .25, 1);
}

.service-motion .info-grid .info-card h3 {
  display: grid;
  grid-column: 1 / -1;
  grid-template-columns: 45px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  margin: 0;
  color: var(--navy);
  font-size: .91rem;
  line-height: 1.2;
}

.service-motion .info-grid .info-card h3 .icon-box {
  grid-column: 1;
  grid-row: 1;
  width: 45px;
  height: 45px;
  margin: 0;
  border-radius: 14px;
  transition: transform 420ms cubic-bezier(.2, .75, .25, 1), color 300ms ease, box-shadow 420ms ease, border-color 300ms ease;
}

.service-motion .info-grid .info-card p {
  grid-column: 2;
  grid-row: 2;
  margin: 0;
  color: var(--muted);
  font-size: .78rem;
  line-height: 1.3;
}

.service-motion .steps-line .step-card {
  position: relative;
  display: grid;
  min-height: 100px;
  grid-template-columns: 45px minmax(0, 1fr);
  grid-template-rows: auto auto;
  align-content: center;
  gap: 4px 12px;
  padding: 16px 14px;
  overflow: visible;
  border: 1px solid rgba(229, 234, 242, .9);
  border-radius: 17px;
  background: #fff;
  box-shadow: 0 6px 20px rgba(28, 44, 91, .035);
}

.service-motion .steps-line .step-card::before {
  position: absolute;
  top: 0;
  left: 14px;
  width: 36px;
  height: 3px;
  border-radius: 0 0 3px 3px;
  background: #5ce1e6;
  content: "";
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 420ms cubic-bezier(.2, .75, .25, 1);
}

.service-motion .steps-line .step-card .step-arrow {
  position: absolute;
  z-index: 2;
  top: 50%;
  right: -13px;
  display: grid;
  width: 24px;
  height: 24px;
  place-items: center;
  border: 1px solid rgba(92, 225, 230, .45);
  border-radius: 50%;
  background: #fff;
  color: var(--purple);
  font-size: 15px;
  font-weight: 700;
  line-height: 1;
  transform: translateY(-50%);
}

.service-motion .steps-line .step-card .step-number {
  grid-column: 1;
  grid-row: 1 / 3;
  width: 45px;
  height: 45px;
  margin: 0;
  border: 1px solid rgba(128, 53, 253, .08);
  border-radius: 14px;
  background: linear-gradient(145deg, #f3edff, #eafcfd);
  color: var(--purple);
  font-size: 1rem;
  transition: transform 420ms cubic-bezier(.2, .75, .25, 1), color 300ms ease, box-shadow 420ms ease, border-color 300ms ease;
}

.service-motion .steps-line .step-card h3 {
  grid-column: 2;
  grid-row: 1;
  align-self: end;
  margin: 0;
  color: var(--navy);
  font-size: .91rem;
  line-height: 1.2;
}

.service-motion .steps-line .step-card p {
  grid-column: 2;
  grid-row: 2;
  margin: 0;
  color: var(--muted);
  font-size: .78rem;
  line-height: 1.3;
}

.service-motion .faq .faq-documents {
  grid-column: 1 / -1;
  border-color: #d8c8f3;
  background: #fbf8ff;
}

@media (max-width: 760px) {
  .service-motion .trust-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 42px;
  }

  .service-motion .info-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  .service-motion .steps-line .step-card:nth-child(2) .step-arrow {
    top: auto;
    right: 50%;
    bottom: -13px;
    rotate: 90deg;
    transform: translateX(50%);
  }
}

@media (max-width: 640px) {
  .service-motion .steps-line .step-card .step-arrow {
    top: auto;
    right: 50%;
    bottom: -13px;
    rotate: 90deg;
    transform: translateX(50%);
  }
}

@media (max-width: 420px) {
  .service-motion .trust-strip .trust-item {
    min-height: 74px;
    gap: 9px;
    padding: 12px 10px;
  }

  .service-motion .trust-strip .mini-icon,
  .service-motion .trust-strip .trust-icon,
  .service-motion .trust-strip .service-proof-icon {
    width: 34px;
    height: 34px;
    flex-basis: 34px;
  }

  .service-motion .info-grid {
    grid-template-columns: 1fr;
  }
}

@media (prefers-reduced-motion: no-preference) {
  .service-motion .card,
  .service-motion .doc-card,
  .service-motion .step {
    animation: service-card-enter 520ms cubic-bezier(.2, .8, .2, 1) var(--card-delay, 0ms) backwards;
    transition: transform 220ms cubic-bezier(.2, .8, .2, 1), border-color 220ms ease, box-shadow 220ms ease;
  }

  .service-motion .trust-strip .trust-item {
    animation: service-card-enter 520ms cubic-bezier(.2, .8, .2, 1) var(--card-delay, 0ms) backwards;
    transition: transform 420ms cubic-bezier(.2, .75, .25, 1), border-color 420ms ease, box-shadow 420ms cubic-bezier(.2, .75, .25, 1);
  }

  .service-motion .info-grid .info-card {
    animation: service-card-enter 520ms cubic-bezier(.2, .8, .2, 1) var(--card-delay, 0ms) backwards;
    transition: transform 420ms cubic-bezier(.2, .75, .25, 1), border-color 420ms ease, box-shadow 420ms cubic-bezier(.2, .75, .25, 1);
  }

  .service-motion .steps-line .step-card {
    animation: service-card-enter 520ms cubic-bezier(.2, .8, .2, 1) var(--card-delay, 0ms) backwards,
      step-card-highlight 12s ease-in-out var(--step-cycle-delay, 0s) infinite;
    transition: transform 420ms cubic-bezier(.2, .75, .25, 1), border-color 420ms ease, box-shadow 420ms cubic-bezier(.2, .75, .25, 1);
  }

  .service-motion .amount-grid .amount-card {
    transition: opacity 550ms ease, transform 300ms cubic-bezier(.2, .8, .2, 1), border-color 300ms ease, box-shadow 300ms ease;
  }

  .service-motion .security-note {
    transition: transform 300ms cubic-bezier(.2, .8, .2, 1), border-color 300ms ease, box-shadow 300ms ease;
  }

  .service-motion .steps-line .step-card .step-arrow {
    animation: step-arrow-forward 1s ease-in-out infinite;
  }

  .service-motion .steps-line .step-card .step-number {
    animation: step-number-highlight 12s ease-in-out var(--step-cycle-delay, 0s) infinite;
  }

  .service-motion .steps-line > :nth-child(2) { --step-cycle-delay: 3s; }
  .service-motion .steps-line > :nth-child(3) { --step-cycle-delay: 6s; }
  .service-motion .steps-line > :nth-child(4) { --step-cycle-delay: 9s; }
  .service-motion .steps-line:hover .step-card,
  .service-motion .steps-line:focus-within .step-card,
  .service-motion .steps-line:hover .step-number,
  .service-motion .steps-line:focus-within .step-number,
  .service-motion .steps-line:hover .step-arrow,
  .service-motion .steps-line:focus-within .step-arrow { animation-play-state: paused; }

  .service-motion .faq details {
    transition: transform 220ms cubic-bezier(.2, .8, .2, 1), border-color 220ms ease, box-shadow 220ms ease;
  }

  .service-motion .notice {
    transition: transform 220ms cubic-bezier(.2, .8, .2, 1), background-color 220ms ease, border-left-color 220ms ease, box-shadow 220ms ease;
  }

  .service-motion .cards > :nth-child(2) { --card-delay: 70ms; }
  .service-motion .cards > :nth-child(3) { --card-delay: 140ms; }
  .service-motion .cards > :nth-child(4) { --card-delay: 210ms; }
  .service-motion .cards > :nth-child(5) { --card-delay: 280ms; }
  .service-motion .cards > :nth-child(6) { --card-delay: 350ms; }
  .service-motion .trust-strip > :nth-child(2) { --card-delay: 70ms; }
  .service-motion .trust-strip > :nth-child(3) { --card-delay: 140ms; }
  .service-motion .trust-strip > :nth-child(4) { --card-delay: 210ms; }
  .service-motion .info-grid > :nth-child(2) { --card-delay: 70ms; }
  .service-motion .info-grid > :nth-child(3) { --card-delay: 140ms; }
  .service-motion .steps-line > :nth-child(2) { --card-delay: 70ms; }
  .service-motion .steps-line > :nth-child(3) { --card-delay: 140ms; }
  .service-motion .steps-line > :nth-child(4) { --card-delay: 210ms; }

  @keyframes service-card-enter {
    from { opacity: 0; transform: translateY(14px) scale(.985); }
    to { opacity: 1; transform: translateY(0) scale(1); }
  }

  @keyframes step-arrow-forward {
    0%, 100% { transform: translateY(-50%) translateX(0); }
    50% { transform: translateY(-50%) translateX(4px); }
  }

  @keyframes step-arrow-down {
    0%, 100% { transform: translateX(50%) translateY(0); }
    50% { transform: translateX(50%) translateY(4px); }
  }

  @keyframes step-card-highlight {
    0%, 18% {
      border-color: rgba(128, 53, 253, .48);
      background-color: #fbf8ff;
      box-shadow: 0 12px 28px rgba(28, 44, 91, .1);
    }
    25%, 100% {
      border-color: rgba(229, 234, 242, .9);
      background-color: #fff;
      box-shadow: 0 6px 20px rgba(28, 44, 91, .035);
    }
  }

  @keyframes step-number-highlight {
    0%, 18% { filter: drop-shadow(0 0 7px rgba(128, 53, 253, .38)); }
    25%, 100% { filter: drop-shadow(0 0 0 rgba(128, 53, 253, 0)); }
  }

  @media (max-width: 900px) {
    .service-motion .steps-line .step-card:nth-child(2) .step-arrow {
      animation-name: step-arrow-down;
    }
  }

  @media (max-width: 640px) {
    .service-motion .steps-line .step-card .step-arrow {
      animation-name: step-arrow-down;
    }
  }

  @media (hover: hover) {
    .service-motion #temas .card:hover,
    .service-motion #temas .card:focus-visible {
      transform: translateY(-5px);
      border-color: #b9dce6;
      box-shadow: 0 16px 34px rgba(28, 44, 91, .12);
    }

    .service-motion .card:hover,
    .service-motion .card:focus-visible,
    .service-motion .doc-card:hover,
    .service-motion .doc-card:focus-within,
    .service-motion .step:hover,
    .service-motion .step:focus-within {
      transform: translateY(-5px);
      border-color: #b9dce6;
      box-shadow: 0 16px 34px rgba(28, 44, 91, .12);
    }

    .service-motion .trust-strip .trust-item:hover {
      transform: translateY(-4px);
      border-color: rgba(92, 225, 230, .7);
      box-shadow: 0 14px 30px rgba(28, 44, 91, .12);
    }

    .service-motion .info-grid .info-card:hover {
      transform: translateY(-4px);
      border-color: rgba(92, 225, 230, .7);
      box-shadow: 0 14px 30px rgba(28, 44, 91, .12);
    }

    .service-motion .info-grid .info-card:hover::before {
      transform: scaleX(1);
    }

    .service-motion .steps-line .step-card:hover,
    .service-motion .steps-line .step-card:focus-within {
      transform: translateY(-4px);
      border-color: rgba(92, 225, 230, .7);
      box-shadow: 0 14px 30px rgba(28, 44, 91, .12);
    }

    .service-motion .amount-grid .amount-card:hover {
      transform: translateY(-4px);
      border-color: rgba(128, 53, 253, .45);
      box-shadow: 0 14px 30px rgba(28, 44, 91, .12);
    }

    .service-motion .security-note:hover {
      transform: translateY(-4px);
      border-color: rgba(92, 225, 230, .7);
      box-shadow: 0 14px 30px rgba(28, 44, 91, .12);
    }

    .service-motion .steps-line .step-card:hover::before,
    .service-motion .steps-line .step-card:focus-within::before {
      transform: scaleX(1);
    }

    .service-motion .faq details:hover,
    .service-motion .faq details:focus-within {
      transform: translateY(-2px);
      border-color: #d7c3ff;
      box-shadow: 0 8px 20px rgba(28, 44, 91, .08);
    }

    .service-motion .notice:hover,
    .service-motion .notice:focus-within {
      transform: translateY(-2px);
      border-left-color: #31cfd8;
      background: #eafcfd;
      box-shadow: 0 8px 20px rgba(28, 44, 91, .08);
    }

    .service-motion .card:hover .icon,
    .service-motion .card:focus-visible .icon,
    .service-motion .card:hover .mini-icon,
    .service-motion .card:focus-visible .mini-icon,
    .service-motion .trust-strip .trust-item:hover .mini-icon,
    .service-motion .trust-strip .trust-item:hover .trust-icon,
    .service-motion .trust-strip .trust-item:hover .service-proof-icon {
      transform: rotate(-7deg) scale(1.06);
      color: #5ce1e6;
      box-shadow: 0 5px 14px rgba(92, 225, 230, .2);
    }

    .service-motion .info-grid .info-card:hover .icon-box {
      transform: rotate(-7deg) scale(1.06);
      color: #5ce1e6;
      box-shadow: 0 5px 14px rgba(92, 225, 230, .2);
    }

    .service-motion .steps-line .step-card:hover .step-number,
    .service-motion .steps-line .step-card:focus-within .step-number {
      transform: rotate(-7deg) scale(1.06);
      color: #5ce1e6;
      box-shadow: 0 5px 14px rgba(92, 225, 230, .2);
      filter: drop-shadow(0 0 7px rgba(92, 225, 230, .4));
    }

    .service-motion .trust-strip .trust-item:hover::before {
      transform: scaleX(1);
    }
  }
}

@media (prefers-reduced-motion: reduce) {
  .service-motion .trust-strip .trust-item,
  .service-motion .trust-strip .trust-item::before,
  .service-motion .trust-strip .mini-icon,
  .service-motion .trust-strip .trust-icon,
  .service-motion .trust-strip .service-proof-icon,
  .service-motion .info-grid .info-card,
  .service-motion .info-grid .info-card::before,
  .service-motion .info-grid .info-card .icon-box,
  .service-motion .steps-line .step-card,
  .service-motion .steps-line .step-card::before,
  .service-motion .steps-line .step-card .step-arrow,
  .service-motion .steps-line .step-card .step-number {
    animation: none !important;
    transition: none !important;
  }
}