/* Swap core */ 
.emon-img-swap-wrap { display: inline-block; line-height: 0; }
.emon-img-swap { position: relative; display: inline-block; vertical-align: middle; overflow: hidden; max-width: 100%; }
.emon-img-swap img { display: block; width: 100%; height: 100%; object-fit: contain; }
.emon-img-swap.emon-stretch img { object-fit: cover; width: 100%; height: 100%; }
.emon-img-swap .emon-img-back { position: absolute; inset: 0; opacity: 0; transition: opacity var(--emon-tr, 200ms) ease-in-out, visibility var(--emon-tr, 200ms) ease-in-out; visibility: hidden; }
.emon-img-swap .emon-img-front { position: relative; z-index: 1; transition: opacity var(--emon-tr, 200ms) ease-in-out, visibility var(--emon-tr, 200ms) ease-in-out; }
.emon-img-swap[data-trigger='hover']:hover .emon-img-back { opacity: 1; visibility: visible; }
.emon-img-swap[data-trigger='hover']:hover .emon-img-front { opacity: 0; visibility: hidden; }
.emon-img-swap[data-trigger='click'].is-active .emon-img-back { opacity: 1; visibility: visible; }
.emon-img-swap[data-trigger='click'].is-active .emon-img-front { opacity: 0; visibility: hidden; }

/* Items */
.emon-logo-item { display: inline-flex; align-items: center; justify-content: center; line-height: 0; }
.emon-logo-item .emon-logo-link { display: inline-block; }
.emon-logo-item .emon-img-swap { width: 140px; height: 70px; }

/* Marquee */
.emon-logo-marquee { overflow: hidden; width: 100%; }
.emon-logo-marquee .emon-marquee-track { display: inline-flex; align-items: center; will-change: transform; }
.emon-logo-marquee .emon-logo-item { margin-right: var(--emon-gap, 24px); }
.emon-logo-marquee[data-pause='1']:hover .emon-marquee-track { animation-play-state: paused; }
@media (prefers-reduced-motion: reduce) { .emon-logo-marquee .emon-marquee-track { animation: none !important; transform: translateX(0) !important; } }
@keyframes emon-marquee { from { transform: translateX(0); } to { transform: translateX(calc(-1 * var(--emon-marquee-distance, 500px))); } }

/* Carousel skin */
.emon-logo-carousel { position: relative; }
.emon-logo-carousel .swiper-wrapper { align-items: center; }
.emon-logo-carousel .swiper-slide { display: flex; justify-content: center; }
.emon-logo-carousel .emon-nav { position: absolute; top: 50%; transform: translateY(-50%); width: 32px; height: 32px; cursor: pointer; background: rgba(0,0,0,.08); border-radius: 999px; }
.emon-logo-carousel .emon-prev { left: 8px; } .emon-logo-carousel .emon-next { right: 8px; }
.emon-logo-carousel .emon-nav::before { content: ''; display: block; width: 100%; height: 100%; mask-size: cover; -webkit-mask-size: cover; background: #000; opacity: .5; }
.emon-logo-carousel .emon-prev::before { -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\"><path d=\"M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z\"/></svg>'); mask-image: url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\"><path d=\"M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z\"/></svg>'); }
.emon-logo-carousel .emon-next::before { -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\"><path d=\"M8.59 16.59L13.17 12 8.59 7.41 10 6l6 6-6 6z\"/></svg>'); mask-image: url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\"><path d=\"M8.59 16.59L13.17 12 8.59 7.41 10 6l6 6-6 6z\"/></svg>'); }
.emon-logo-carousel .emon-dots { position: static; margin-top: 8px; text-align: center; }
.emon-logo-carousel .emon-dots .swiper-pagination-bullet { width: 8px; height: 8px; }