/* Two equal, repeated groups create a continuous loop at every viewport width. */
.ticker{position:relative;display:block;overflow:hidden;padding:0;background:#29101a;color:#f4e7e5;min-height:42px;letter-spacing:.2em;font-size:10px}
.ticker-track{display:flex;width:max-content;will-change:transform;animation:perl-marquee 30s linear infinite}
.ticker-group{box-sizing:border-box;flex:0 0 auto;display:flex;align-items:center;justify-content:space-around;gap:clamp(28px,5vw,90px);min-width:100vw;height:42px;padding:0 clamp(24px,4vw,64px);white-space:nowrap}
.ticker-group i{color:#c699a9;font-style:normal}
@keyframes perl-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.ticker[data-running="false"] .ticker-track{animation-play-state:paused}
.ticker-control{position:absolute;z-index:2;right:6px;top:50%;transform:translateY(-50%);min-height:32px;padding:5px 12px;border:1px solid #d1afb966;border-radius:999px;background:#29101af5;color:#f4e7e5;font:500 10px/1.2 'Be Vietnam Pro',sans-serif;letter-spacing:0;opacity:0;transition:opacity .2s;cursor:pointer}
.ticker:hover .ticker-control,.ticker-control:focus-visible,.ticker[data-running="false"] .ticker-control{opacity:1}
.m-main .ticker{margin:20px -20px 0}
@media(prefers-reduced-motion:reduce){
 .ticker{overflow:hidden}
 .ticker-group[aria-hidden="true"]{display:flex!important}
 .ticker[data-running="false"] .ticker-track{animation:none!important}
 .ticker[data-running="true"] .ticker-track{animation:perl-marquee 30s linear infinite!important;animation-duration:30s!important;animation-iteration-count:infinite!important}
}
