/* OZIO Motion V85 — performant, accessible motion system */
:root{--oz-ease:cubic-bezier(.22,1,.36,1)}
html{scroll-behavior:smooth}
body{overflow-x:clip}
/* Fixed-price GPU animations: transform and opacity only */
.oz85-reveal{opacity:0;transform:translate3d(0,35px,0);transition:opacity .85s var(--oz-ease),transform .85s var(--oz-ease);transition-delay:var(--oz85-delay,0ms)}
.oz85-reveal.oz85-visible{opacity:1;transform:translateZ(0)}
.oz85-image{overflow:hidden}
.oz85-image img{transition:transform .8s var(--oz-ease)}
.oz85-image:hover img{transform:scale(1.045)}
/* Navigation remains the original V84 structure, with premium microinteractions */
.oz82-header,.header{transition:box-shadow .35s ease,background-color .35s ease}
.oz85-scrolled .oz82-header,.oz85-scrolled .header{box-shadow:0 12px 36px rgba(36,52,32,.12)}
.oz82-nav a,.main-nav a{transition:color .25s ease,background-color .25s ease,transform .3s var(--oz-ease)}
.oz82-nav a:hover,.main-nav a:hover{transform:translateY(-2px)}
.oz82-actions a,.header-actions .icon-btn{transition:transform .28s var(--oz-ease),background-color .25s ease}
.oz82-actions a:hover,.header-actions .icon-btn:hover{transform:translateY(-3px)}
/* Product and editorial cards: staggered entrance, floating lift */
.product-card,.v80-style-card,.v80-video-card,.oz-utility-card,.oz-utility-grid article,.v79-product-card{transition:transform .42s var(--oz-ease),box-shadow .42s ease}
.product-card:hover,.v80-style-card:hover,.v80-video-card:hover,.oz-utility-card:hover,.v79-product-card:hover{transform:translateY(-8px);box-shadow:0 22px 55px rgba(57,70,52,.17)}
.product-card img,.v80-style-card img,.v79-product-card img{transition:transform .8s var(--oz-ease)}
.product-card:hover img,.v80-style-card:hover img,.v79-product-card:hover img{transform:scale(1.035)}
/* Button glint */
.btn,.v80-button,.oz-flow-primary,.oz-utility-submit{position:relative;isolation:isolate;overflow:hidden;transition:transform .28s var(--oz-ease),box-shadow .28s ease}
.btn:hover,.v80-button:hover,.oz-flow-primary:hover,.oz-utility-submit:hover{transform:translateY(-3px);box-shadow:0 10px 25px rgba(57,70,52,.2)}
/* Section headings animate only once they enter the viewport */
.oz85-text-rise{animation:oz85-text-in 1s var(--oz-ease) both}
@keyframes oz85-text-in{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
/* Slow, elegant hero atmospheric layer (no costly blur/filter) */
.v80-hero,.hero{position:relative;isolation:isolate}
.v80-hero:after{content:'';position:absolute;z-index:-1;pointer-events:none;width:32vw;height:32vw;min-width:250px;min-height:250px;border:1px solid rgba(136,146,109,.22);border-radius:50%;right:-7vw;top:-11vw;animation:oz85-orbit 14s ease-in-out infinite alternate}
@keyframes oz85-orbit{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(-22px,25px,0) scale(1.13)}}
/* Improve page switches without hijacking links */
.oz85-page-enter{animation:oz85-page-enter .65s var(--oz-ease) both}
@keyframes oz85-page-enter{from{opacity:.65;transform:translateY(9px)}to{opacity:1;transform:none}}
/* Motion preferences and low-end devices */
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.oz85-reveal{opacity:1!important;transform:none!important;transition:none!important}.oz85-text-rise,.oz85-page-enter{animation:none!important}.v80-hero:after{animation:none!important}.product-card,.v80-style-card,.v80-video-card,.oz-utility-card,.v79-product-card{transition:none!important}}
@media(max-width:640px){.oz85-reveal{transform:translateY(18px);transition-duration:.6s}.v80-hero:after{opacity:.35}}
