.photo-marquee{grid-template-columns:minmax(0,1fr);gap:8px;min-width:0;display:grid}.pm-row{border-radius:var(--radius-s);overflow:hidden}.pm-track{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.pm-track img{aspect-ratio:1;object-fit:cover;border-radius:var(--radius-s);width:100%}.pm-copy{display:none}@media (max-width:600px){.pm-track{grid-template-columns:repeat(2,1fr)}}.motion .pm-row{-webkit-mask-image:linear-gradient(90deg,#0000,#000 7% 93%,#0000);mask-image:linear-gradient(90deg,#0000,#000 7% 93%,#0000)}.motion .pm-track{gap:0;width:max-content;animation:38s linear infinite sgma-slide;display:flex}.motion .pm-rev .pm-track{animation-duration:46s;animation-direction:reverse}.motion .pm-copy{display:block}.motion .pm-track img{width:clamp(150px,15vw,214px);margin-right:8px;transition:transform .4s}.motion .pm-track img:hover{transform:scale(1.04)}.motion .photo-marquee:hover .pm-track{animation-play-state:paused}@keyframes sgma-slide{to{transform:translate(-50%)}}.motion [data-reveal]{opacity:0;transition:opacity .75s,transform .75s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--i,0) * 90ms);transform:translateY(26px)}.motion [data-reveal].in{opacity:1;transform:none}.motion:not(.motion-ready) [data-reveal],.motion:not(.motion-ready) .mh{animation:0s 2.5s forwards sgma-show}@keyframes sgma-show{to{opacity:1;transform:none}}.banner{overflow:hidden}.motion .banner img{animation:12s cubic-bezier(.2,.7,.2,1) backwards sgma-zoom}@keyframes sgma-zoom{0%{transform:scale(1.08)}}.motion .hero-grid>*{animation:.9s cubic-bezier(.2,.7,.2,1) backwards sgma-rise}.motion .hero-grid>:nth-child(2){animation-delay:.15s}.motion .hero .tape{animation:.9s cubic-bezier(.2,.7,.2,1) .3s backwards sgma-rise}@keyframes sgma-rise{0%{opacity:0;transform:translateY(28px)}}.motion .hero .btn-tape{position:relative;overflow:hidden}.motion .hero .btn-tape:after{content:"";pointer-events:none;background:linear-gradient(100deg,#0000,#ffffffa6,#0000);width:40%;animation:5s ease-in-out 1.6s infinite sgma-shine;position:absolute;top:0;bottom:0;left:-60%;transform:skew(-18deg)}@keyframes sgma-shine{0%{left:-60%}22%,to{left:130%}}.motion .ticket{transition:transform .3s,box-shadow .3s}.motion .ticket:hover{transform:translateY(-4px)rotate(-.6deg);box-shadow:0 18px 40px #00000047}.motion .tape-fill{background-image:repeating-linear-gradient(-45deg,#1d1a4e1a 0 8px,#0000 8px 16px);background-size:22.63px 22.63px;transition:width 1.6s cubic-bezier(.2,.7,.2,1);animation:2.4s linear infinite sgma-tape}@keyframes sgma-tape{to{background-position:22.63px 0}}.motion .tape-fill:after{animation:2.4s ease-out 1.8s infinite sgma-pulse}@keyframes sgma-pulse{0%{box-shadow:0 0 #8b1d6899}to{box-shadow:0 0 0 10px #8b1d6800}}.motion .feature-map[data-reveal]{transition:opacity .75s,transform .75s cubic-bezier(.2,.7,.2,1),box-shadow .3s}.motion .feature-map.in:hover{box-shadow:0 14px 40px #1d1a4e1f}.motion .feature-map .mh{transform-box:fill-box;transform-origin:50%;opacity:0}.motion .feature-map.in .mh{animation:sgma-pop .5s cubic-bezier(.2, .7, .2, 1) var(--d) both}.motion .feature-map.in .mh-on{animation:sgma-pop .5s cubic-bezier(.2, .7, .2, 1) var(--d) both, sgma-breathe 6s ease-in-out calc(var(--d) + 2s) infinite}@keyframes sgma-pop{0%{opacity:0;transform:scale(.3)}to{opacity:1;transform:none}}@keyframes sgma-breathe{0%,70%,to{opacity:1}85%{opacity:.45}}.motion .mini-hall-link svg{transition:transform .4s}.motion .mini-hall-link:hover svg{transform:scale(1.02)}.motion .link-list a{position:relative}.motion .link-list a:before{content:"";background:var(--tape);transform-origin:0;height:3px;transition:transform .35s cubic-bezier(.2,.7,.2,1);position:absolute;bottom:-1px;left:0;right:0;transform:scaleX(0)}.motion .link-list a:hover:before{transform:scaleX(1)}.motion .link-list a strong:after{content:"→";opacity:0;margin-left:6px;transition:opacity .25s,transform .25s;display:inline-block;transform:translate(-6px)}.motion .link-list a:hover strong:after{opacity:1;transform:none}.motion .btn{transition:background .15s,color .15s,border-color .15s,transform .15s,box-shadow .15s}.motion .btn:hover{transform:translateY(-2px);box-shadow:0 8px 18px #1d1a4e2e}.motion .btn:active{box-shadow:none;transform:none}
