
.scroll-progress{position:fixed;top:0;left:0;width:100%;height:3px;background:#61e4c5;transform:scaleX(0);transform-origin:left;z-index:100;pointer-events:none;box-shadow:0 0 12px #61e4c580}
.btn{transition:transform .24s ease,box-shadow .24s ease,background .24s ease!important}.btn:active{transform:scale(.96)!important;box-shadow:0 0 18px #61e4c550}.card h3,.card-bottom{transition:transform .35s cubic-bezier(.22,1,.36,1)}.thumbs{position:relative}.thumb-indicator{position:absolute;top:5px;left:0;height:69px;width:100px;border:2px solid #61e4c5;border-radius:8px;pointer-events:none;transition:transform .32s cubic-bezier(.22,1,.36,1),width .32s ease;z-index:2}.thumbs.has-indicator button[aria-pressed=true]{border-color:transparent}.main-photo .photo-outgoing{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;z-index:1;pointer-events:none;opacity:1}.main-photo .loader{z-index:3}.main-photo.busy img{opacity:1}.main-photo.busy .loader{animation:loaderPulse 1s ease-in-out infinite}.review-list{transition:opacity .16s ease}.mobile-navigation nav a{transition:background .2s,color .2s,transform .2s}.mobile-navigation nav a:active{transform:translateX(4px)}
@keyframes cinematicArrival{from{transform:scale(1.075)}to{transform:scale(1)}}
@keyframes loaderPulse{50%{opacity:.65}}
@media(prefers-reduced-motion:no-preference){.hero-image{animation:cinematicArrival 5s cubic-bezier(.16,1,.3,1) both;transform-origin:62% 50%}}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.card:hover h3,.card:hover .card-bottom{transform:translateY(-3px)}.card:hover img{transform:scale(1.055)}.btn:hover{box-shadow:0 7px 30px #61e4c54d!important;transform:translateY(-2px)}}
@media(prefers-reduced-motion:reduce){.thumb-indicator,.review-list,.card h3,.card-bottom,.btn{transition:none!important}.hero-image,.mobile-navigation[open] nav a,.main-photo.busy .loader{animation:none!important}}
