/* DesignNOW W-144 shine. Original CTA artwork and hit area retained. */
.fixed-line.bmo { --e: cubic-bezier(.65, 0, .35, 1); }
[data-variant="shine"] .bmo-btn { position:relative; isolation:isolate; overflow:hidden; border-radius:12px; background:#06c755; color:#fff; }
[data-variant="shine"] .bmo-btn::after { content:""; position:absolute; top:-20%; bottom:-20%; left:0; width:45%; background:linear-gradient(90deg,transparent,rgba(255,255,255,.7),transparent); transform:translateX(-160%) skewX(-20deg); pointer-events:none; }
[data-variant="shine"] .bmo-btn:is(:hover,:focus-visible,:active)::after { transform:translateX(320%) skewX(-20deg); transition:transform .7s var(--e); }
@media(prefers-reduced-motion:reduce) { .bmo-btn,.bmo-btn::before,.bmo-btn::after { transition:none!important; } }

/* User-requested automatic W-144 shine; 0.7s sweep every 3 seconds. */
[data-variant="shine"] .bmo-btn::after { animation:line-auto-shine 3s linear infinite; transition:none; }
[data-variant="shine"] .bmo-btn:is(:hover,:focus-visible,:active)::after { transition:none; }
@keyframes line-auto-shine {
  0% { transform:translateX(-160%) skewX(-20deg); animation-timing-function:cubic-bezier(.65,0,.35,1); }
  23.3333%,100% { transform:translateX(320%) skewX(-20deg); }
}
@media(prefers-reduced-motion:reduce) { [data-variant="shine"] .bmo-btn::after { animation:none!important; transform:translateX(-160%) skewX(-20deg); } }
