.snap-track{--snap-cols:1;--snap-gap:1rem;--snap-size:calc((100% - var(--snap-gap)*(var(--snap-cols) - 1))/var(--snap-cols));grid-auto-flow:column;grid-auto-columns:var(--snap-size);gap:var(--snap-gap);padding-block:1.5rem;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;display:grid;position:relative;overflow-x:auto}
@media(prefers-reduced-motion:no-preference){.snap-track{scroll-behavior:smooth}}
.snap-track>*{scroll-snap-align:start}
@media(min-width:768px){.snap-track{--snap-cols:2}}
@media(min-width:1024px){.snap-track{--snap-cols:3}}
@media(min-width:1280px){.snap-track{--snap-cols:4}}
.snap-pager{justify-content:center;align-items:center;gap:0.75rem;min-block-size:2.75rem;padding-block:0.5rem;flex-wrap:wrap;display:flex}
.snap-marker{block-size:1rem;inline-size:1rem;border-width:1px;border-color:#475569;border-radius:1rem;flex-shrink:0;transition-property:border-color,background-color;transition-duration:.3s}
@media(prefers-reduced-motion:no-preference){.snap-marker{will-change:inline-size;transition-property:inline-size,border-color,background-color}}
.snap-marker[aria-current=true]{inline-size:1.75rem;background-color:var(--color-primary, #dc2626);border-color:transparent}
