/* Small, finite motion; content stays visible before JavaScript runs. */
.hero-image,.product-visual,.portrait,.editorial-card{isolation:isolate}
.hero-image img,.product-visual img,.portrait img{transform-origin:50% 48%}
.button,.circle-button,.editorial-card,.email-row button{transition:background-color .2s ease,border-color .2s ease,transform .25s ease,box-shadow .25s ease}
.button>span:last-child:not(:first-child),.story-arrow,.nav-shop span{display:inline-block;transition:transform .25s ease}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .button:hover>span:last-child:not(:first-child),.nav-shop:hover span{transform:translate(2px,-2px)}
 .editorial-card:hover{transform:translateY(-4px);box-shadow:0 14px 28px #19191714}
 .editorial-card:hover img{transform:scale(1.035)}
 .editorial-card:hover .story-arrow{transform:translate(2px,-2px)}
 .circle-button:hover{transform:translateY(-2px)}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto!important}
 *,*::before,*::after{animation:none!important;transition:none!important}
 .editorial-card:hover,.editorial-card:hover img{transform:none!important}
}
html[data-motion='off']{scroll-behavior:auto!important}
html[data-motion='off'] *,html[data-motion='off'] *::before,html[data-motion='off'] *::after{animation:none!important;transition:none!important}
html[data-motion='off'] .editorial-card:hover,html[data-motion='off'] .editorial-card:hover img{transform:none!important}
