.rosic-item { display: block; flex-shrink: 0; text-decoration: none; }
.rosic-item img,
.rosic-item picture { display: block; width: 100%; height: auto; }
.rosic-item picture img { width: 100%; height: auto; }
.rosic-track { display: flex; align-items: flex-start; }  .rosic-fit-natural .rosic-item img { width: 100%; height: auto; object-fit: contain; } .rosic-fit-contain .rosic-item img { width: 100%; object-fit: contain; } .rosic-fit-cover .rosic-item img { width: 100%; object-fit: cover; } .rosic-item {
width: calc((100% - (var(--rosic-items-d, 4) - 1) * var(--rosic-gap, 16px)) / var(--rosic-items-d, 4));
}
@media (max-width: 1024px) {
.rosic-item { width: calc((100% - (var(--rosic-items-t, 2) - 1) * var(--rosic-gap, 16px)) / var(--rosic-items-t, 2)); }
}
@media (max-width: 767px) {
.rosic-item { width: calc((100% - (var(--rosic-items-m, 1) - 1) * var(--rosic-gap, 16px)) / var(--rosic-items-m, 1)); } .rosic-item.rosic-hide-mobile { display: none !important; }
} .rosic-marquee {
--rosic-speed: 30s; --rosic-dir: normal; --rosic-gap: 16px;
width: 100%; overflow: hidden; position: relative; direction: ltr;
}
.rosic-marquee .rosic-viewport { display: flex; width: max-content; }
.rosic-marq-track {
gap: var(--rosic-gap); padding-left: var(--rosic-gap);
flex-shrink: 0; width: 100%; box-sizing: content-box;
animation: rosic-scroll var(--rosic-speed) linear infinite;
animation-direction: var(--rosic-dir);
}
@keyframes rosic-scroll { from { transform: translateX(0); } to { transform: translateX(-100%); } }
.rosic-pause-hover:hover .rosic-marq-track { animation-play-state: paused; }
@media (prefers-reduced-motion: reduce) { .rosic-marq-track { animation: none; } } .rosic-manual { --rosic-gap: 16px; width: 100%; position: relative; direction: rtl; }
.rosic-manual-outer { overflow: hidden; width: 100%; }
.rosic-manual-track {
gap: var(--rosic-gap);
transition: transform .45s cubic-bezier(.4,0,.2,1);
will-change: transform;
}
.rosic-arrows { }
.rosic-arrow {
position: absolute; top: 50%; transform: translateY(-50%);
width: 42px; height: 42px; border-radius: 50% !important;
border: 1.5px solid #111 !important;
background: #111 !important;
cursor: pointer;
display: flex; align-items: center; justify-content: center;
color: #fff !important; z-index: 5; box-shadow: 0 2px 10px rgba(0,0,0,.15);
transition: all .2s; padding: 0;
-webkit-appearance: none; appearance: none;
}
.rosic-arrow svg { width: 20px; height: 20px; stroke: #fff !important; }
.rosic-arrow:hover { background: #000 !important; border-color: #000 !important; color: #fff !important; }
.rosic-arrow:hover svg { stroke: #fff !important; }
.rosic-prev { right: -8px; }
.rosic-next { left: -8px; } .rosic-dot.on { width: 22px; background: #111 !important; }
.rosic-dots { display: flex; justify-content: center; gap: 6px; margin-top: 16px; }
.rosic-dot {
width: 7px; height: 7px; border-radius: 4px; background: #ddd;
border: none; cursor: pointer; padding: 0; transition: all .3s;
}
.rosic-dot.on { width: 22px; background: #111; }