.card-spotlight{position:relative;border-radius:1rem;border:1px solid hsl(var(--border));background-color:hsl(var(--card));padding:1.5rem;overflow:hidden;--mouse-x:50%;--mouse-y:50%;--spotlight-color:hsla(0,0%,100%,.07);box-shadow:none;transition:box-shadow .3s ease,border-color .3s ease}.card-spotlight:focus-within,.card-spotlight:hover{box-shadow:0 10px 15px -3px hsla(var(--foreground),.05),0 4px 6px -2px hsla(var(--foreground),.03);border-color:hsl(var(--primary)/.5)}.card-spotlight:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at var(--mouse-x) var(--mouse-y),var(--spotlight-color),transparent 70%);opacity:0;transition:opacity .5s ease;pointer-events:none;z-index:0}.card-spotlight:focus-within:before,.card-spotlight:hover:before{opacity:1}.card-spotlight>*{position:relative;z-index:1}.menu-wrap{width:100%;height:100%;overflow:hidden}.menu{display:flex;flex-direction:column;height:100%;margin:0;padding:0}.menu__item{flex:1;position:relative;overflow:hidden;text-align:center;box-shadow:0 -1px hsl(var(--border))}.menu__item-link{display:flex;align-items:center;justify-content:center;height:100%;position:relative;cursor:pointer;text-transform:uppercase;text-decoration:none;white-space:nowrap;font-weight:600;color:hsl(var(--foreground));font-size:4vh;transition:color .3s ease}.menu__item-link:focus:not(:focus-visible){color:hsl(var(--foreground))}.marquee{position:absolute;top:0;left:0;overflow:hidden;width:100%;height:100%;pointer-events:none;background:hsl(var(--card));transform:translate3d(0,101%,0)}.marquee__inner-wrap{width:100%;backface-visibility:hidden;contain:content}.marquee__inner,.marquee__inner-wrap{height:100%;display:flex;will-change:transform}.marquee__inner{align-items:center;position:relative;width:200%;animation:marquee var(--marquee-duration,15s) linear infinite}.marquee span{color:hsl(var(--card-foreground));white-space:nowrap;text-transform:uppercase;font-weight:400;font-size:4vh;line-height:1.2;padding:1vh 1vw 0}.marquee__img{width:150px;height:6vh;margin:0 2vw;border-radius:10px;background-size:cover;background-position:50% 50%;border:1px solid hsl(var(--border))}@keyframes marquee{0%{transform:translateX(0)}to{transform:translateX(-50%)}}@media (prefers-reduced-motion:reduce){.marquee__inner{animation:marquee calc(var(--marquee-duration, 15s) * 2) linear infinite}}