/* Partner and community logo carousel (Amazon Ember inherited from the page; Squid Ink / Orange palette). */
.logo-carousel { position: relative; overflow: hidden; margin: 0 auto 2rem; max-width: 72rem;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
          mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent); }
.logo-track { display: flex; align-items: center; width: max-content; gap: 3rem; padding: .5rem 1.5rem;
  animation: logo-scroll var(--logo-dur, 30s) linear infinite; }
.logo-carousel:hover .logo-track,
.logo-carousel:focus-within .logo-track,
.logo-carousel.is-paused .logo-track { animation-play-state: paused; }
.logo-item { flex: none; display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 4.5rem; color: #232f3e; text-decoration: none; }
.logo-item-static { padding: .75rem; }
.logo-open { display: flex; flex-direction: column; align-items: center; gap: .3rem; padding: .25rem; color: inherit; text-decoration: none; border-radius: .25rem; }
a.logo-open { cursor: pointer; }
div.logo-open { cursor: default; }
.logo-open:hover .logo-caption, .logo-open:focus-visible .logo-caption { text-decoration: underline; }
.logo-caption { font-weight: 700; font-size: .9rem; white-space: nowrap; max-width: 14rem; overflow: hidden; text-overflow: ellipsis; }
.logo-li { font-size: .75rem; font-weight: 700; color: #0a66c2; text-decoration: underline; white-space: nowrap; }
.logo-item img { height: 3.5rem; width: auto; max-width: 11.25rem; object-fit: contain; }
.logo-item .logo-name { font-weight: 800; font-size: 1.1rem; white-space: nowrap; padding: .4rem 1rem; border: 2px solid #232f3e; border-radius: 9999px; }
.logo-item .logo-kind { margin-top: .25rem; font-size: .7rem; color: #4b5563; white-space: nowrap; }
a.logo-open:focus-visible, .logo-li:focus-visible { outline: 3px solid #ff9900; outline-offset: 4px; border-radius: .25rem; }
.logo-toggle { position: absolute; right: .5rem; bottom: .25rem; z-index: 1; font: inherit; font-size: .75rem; font-weight: 700;
  background: #232f3e; color: #fff; border: 0; border-radius: 9999px; padding: .2rem .7rem; cursor: pointer; }
.logo-toggle:focus-visible { outline: 3px solid #ff9900; outline-offset: 2px; }
@keyframes logo-scroll { from { transform: translateX(0); } to { transform: translateX(-50%); } }
/* People who ask their device for less motion get a still, wrapping grid instead. */
@media (prefers-reduced-motion: reduce) {
  .logo-carousel { -webkit-mask-image: none; mask-image: none; }
  .logo-track { animation: none; width: auto; flex-wrap: wrap; justify-content: center; }
  .logo-track [aria-hidden="true"], .logo-toggle { display: none; }
}
