/* Three repeating name lists; no partner or integration status is implied. */
.v7-capabilities {
  --v7-capabilities-item-width: 176px;
  --v7-capabilities-gap: 16px;
  display: grid;
  gap: 6px;
  width: 100%;
  min-width: 0;
  container-type: inline-size;
}
.v7-capabilities-row {
  min-width: 0;
  overflow: hidden;
  -webkit-mask-image: linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);
  mask-image: linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);
}
.v7-capabilities-track {
  display: flex;
  gap: 0;
  width: max-content;
  animation: v7-capabilities-shift var(--v7-capabilities-duration,56s) linear infinite;
}
.v7-capabilities-row[data-direction='right'] .v7-capabilities-track { animation-direction: reverse; }
.v7-capabilities-sequence {
  box-sizing: border-box;
  display: flex;
  flex: none;
  align-items: center;
  justify-content: space-around;
  gap: var(--v7-capabilities-gap);
  min-width: 100vw;
  margin: 0;
  padding: 2px calc(var(--v7-capabilities-gap) / 2);
  list-style: none;
}
/* Percentages on a max-content track are indefinite. Container units ensure
   each identical sequence covers the actual viewport before it repeats. */
@supports (width: 1cqw) {
  .v7-capabilities-sequence { min-width: 100cqw; }
}
.v7-capability {
  box-sizing: border-box;
  display: flex;
  flex: 0 0 var(--v7-capabilities-item-width);
  align-items: center;
  justify-content: center;
  gap: 12px;
  height: 44px;
  padding: 4px 12px;
  border: 0;
  background: transparent;
  color: var(--v7-ink,#272a2e);
}
.v7-capability-icon {
  display: block;
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  object-fit: contain;
  color: #66717c;
}
img.v7-capability-icon { opacity: .88; }
.v7-capability-name {
  color: #4d5965;
  font-size: 17px;
  line-height: 1.4;
  font-weight: 550;
  white-space: nowrap;
}
body[data-motion='paused'] .v7-capabilities-track,
.v7-capabilities-row:hover .v7-capabilities-track,
.v7-capabilities-row:focus-within .v7-capabilities-track { animation-play-state: paused; }
@keyframes v7-capabilities-shift {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}
@media (max-width: 640px) {
  .v7-capabilities { --v7-capabilities-item-width: 144px; --v7-capabilities-gap: 12px; gap: 6px; }
  .v7-capability { height: 40px; padding: 4px 8px; gap: 10px; }
  .v7-capability-icon { flex-basis: 24px; width: 24px; height: 24px; }
  .v7-capability-name { font-size: 14px; }
}
@media (prefers-reduced-motion: reduce), (forced-colors: active) {
  .v7-capabilities-row { overflow: visible; -webkit-mask-image: none; mask-image: none; }
  .v7-capabilities-track { width: 100%; animation: none; transform: none; }
  .v7-capabilities-sequence { width: 100%; min-width: 0; justify-content: center; flex-wrap: wrap; padding-inline: 0; }
  .v7-capabilities-sequence[aria-hidden='true'] { display: none; }
}
@media (forced-colors: active) {
  .v7-capability { border-color: CanvasText; background: Canvas; color: CanvasText; }
  .v7-capability-name, svg.v7-capability-icon { color: CanvasText; }
  img.v7-capability-icon { filter: none; opacity: 1; }
}
