::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}::-webkit-scrollbar-thumb{background:#e83e8c;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#d33a7e}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.will-change-transform{will-change:transform}*{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges;backface-visibility:hidden;transform:translateZ(0)}.timeline-dot{position:relative}.timeline-dot:before{content:"";z-index:1;background-color:#e83e8c;border-radius:50%;width:12px;height:12px;position:absolute;top:50%;left:-30px;transform:translateY(-50%)}.timeline-dot:after{content:"";z-index:1;border-top:6px solid #0000;border-bottom:6px solid #0000;border-left:6px solid #e83e8c;width:0;height:0;position:absolute;top:50%;left:-24px;transform:translateY(-50%)}.card-hover-effect{will-change:transform;transition:all .3s cubic-bezier(.4,0,.2,1)}.card-hover-effect:hover{transform:translateY(-5px)scale(1.02);box-shadow:0 20px 40px #00000026}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.pulse-animation{will-change:transform;animation:2s ease-in-out infinite pulse}.sticky-nav{z-index:50;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background-color:#ffffffe6;transition:all .3s;position:sticky;top:0}.sticky-nav.scrolled{box-shadow:0 2px 10px #0000001a}.event-card{will-change:transform;position:relative;overflow:hidden}.event-card:after{content:"";transform-origin:100% 100%;background:linear-gradient(90deg,#e83e8c,#8bc34a);width:100%;height:3px;transition:transform .3s cubic-bezier(.4,0,.2,1);position:absolute;bottom:0;left:0;transform:scaleX(0)}.event-card:hover:after{transform-origin:0 100%;transform:scaleX(1)}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@keyframes gradient-shift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}.gradient-animate{background-size:200% 200%;animation:3s infinite gradient-shift}.glass-effect{-webkit-backdrop-filter:blur(10px);background:#ffffffb3;border:1px solid #ffffff4d}img{transition:opacity .3s}img[loading=lazy]{opacity:0;animation:.3s forwards fadeIn}@keyframes fadeIn{to{opacity:1}}
