/* Independent of the template grid, AOS and universal slider. */
.kr-technology-partners.kr-partner-motion { width: 100%; min-width: 0; max-width: 100%; padding-block: 48px; }
.kr-partner-motion .kr-partner-intro { max-width: 850px; margin: 0 auto 28px; text-align: center; }
.kr-partner-motion .kr-partner-intro h2 { margin: 0 0 20px; }
.kr-partner-motion .kr-partner-intro p { margin: 0; line-height: 1.8; }
.kr-partner-motion .kr-partner-viewport { width: 100%; min-width: 0; overflow: hidden; padding-block: 8px; }
.kr-partner-motion .kr-partner-track { display: flex; width: max-content; animation: krPartnerScroll 32s linear infinite; }
.kr-partner-motion .kr-partner-group { display: flex; flex: 0 0 auto; gap: 24px; padding: 8px 24px 16px 0; }
.kr-partner-motion .kr-partner-card { display: flex; flex: 0 0 220px; align-items: center; justify-content: center; box-sizing: border-box; width: 220px; min-width: 0; height: 124px; padding: 20px; overflow: hidden; background: #fff; border: 1px solid #e5eaf0; border-radius: 12px; box-shadow: 0 4px 12px rgba(16,44,90,.06); text-decoration: none; }
.kr-partner-motion .kr-partner-card img { display: block; flex: 0 1 auto; width: 100%; max-width: 180px; height: 64px; max-height: 100%; object-fit: contain; }
.kr-partner-motion .kr-partner-microsoft { gap: 10px; }
.kr-partner-motion .kr-partner-microsoft img { flex: 0 0 28px; width: 28px; height: 28px; }
.kr-partner-motion .kr-partner-microsoft span { color: #5e5e5e; font: 18px Arial, sans-serif; white-space: nowrap; }
.kr-partner-motion .kr-partner-aws { background: #232f3e; }
.kr-partner-motion .kr-partner-viewport:hover .kr-partner-track,
.kr-partner-motion .kr-partner-viewport:focus-within .kr-partner-track,
.kr-partner-motion.kr-partner-paused .kr-partner-track { animation-play-state: paused; }
.kr-partner-motion .kr-partner-controls { display: flex; justify-content: center; margin-top: 16px; }
.kr-partner-motion .kr-partner-toggle { padding: 8px 16px; border: 1px solid #64748b; border-radius: 8px; background: #fff; color: #1e293b; font: inherit; font-size: 14px; cursor: pointer; }
.kr-partner-motion .kr-partner-toggle[hidden] { display: none; }
.kr-partner-motion .kr-partner-card:focus-visible { outline: 3px solid #1674d1; outline-offset: -4px; }
@keyframes krPartnerScroll { to { transform: translateX(-50%); } }
@media (max-width: 575px) {
    .kr-technology-partners.kr-partner-motion { padding-block: 32px; }
    .kr-partner-motion .kr-partner-card { flex-basis: 180px; width: 180px; height: 108px; padding: 16px; }
    .kr-partner-motion .kr-partner-group { gap: 16px; padding-right: 16px; }
    .kr-partner-motion .kr-partner-microsoft span { font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) {
    .kr-partner-motion .kr-partner-track { width: 100%; animation: none; transform: none; }
    .kr-partner-motion .kr-partner-group { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(160px, 100%), 1fr)); width: 100%; box-sizing: border-box; padding: 8px 0 16px; gap: 16px; }
    .kr-partner-motion .kr-partner-card { width: 100%; }
    .kr-partner-motion .kr-partner-group[aria-hidden="true"],
    .kr-partner-motion .kr-partner-controls { display: none; }
}
