.contain-layout{contain:layout}.contain-style{contain:style}.contain-paint{contain:paint}.contain-size{contain:size}.contain-strict{contain:strict}.gpu-accelerated{will-change:transform;transform:translateZ(0)}.animate-optimized{will-change:transform,opacity;backface-visibility:hidden;perspective:1000px}.smooth-scroll{scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.scroll-snap-container{scroll-snap-type:y mandatory;overflow-y:scroll}.scroll-snap-item{scroll-snap-align:start}.gradient-optimized{background-attachment:fixed;will-change:background-position}.shadow-optimized{filter:drop-shadow(0 4px 6px rgba(0,0,0,.1))}.blur-optimized{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.loading-skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:loading 1.5s infinite}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.shimmer{background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.2) 50%,rgba(255,255,255,0));background-size:200% 100%;animation:shimmer 2s infinite}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.focus-optimized:focus{outline:2px solid #3b82f6;outline-offset:2px}.focus-visible-only:focus:not(:focus-visible){outline:none}.focus-visible-only:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}.performance-hint{content-visibility:auto;contain-intrinsic-size:200px}.transform-gpu{transform:translateZ(0)}.above-fold{contain:layout style paint;will-change:auto}.image-container{position:relative;overflow:hidden;contain:layout style paint}.image-container img{transition:transform .3s ease;will-change:transform}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.animate-optimized{will-change:auto}}@media (prefers-contrast:high){.shadow-optimized{filter:none;box-shadow:0 0 0 2px currentColor}.blur-optimized{backdrop-filter:none;-webkit-backdrop-filter:none;background-color:rgba(0,0,0,.8)}}@media print{.no-print{display:none!important}.gpu-accelerated{will-change:auto;transform:none}.animate-optimized{will-change:auto;animation:none}}