/* ---------- Award-layer motion: masks, line reveals, velocity stretch ---------- */
:root{--mx-ease:cubic-bezier(.16,1,.3,1)}

/* Scroll progress */
.mx-progress{position:fixed;top:0;left:0;height:2px;width:100%;transform-origin:0 50%;transform:scaleX(0);background:linear-gradient(90deg,var(--color-accent),rgba(143, 218, 250,.35));z-index:9999;pointer-events:none}

/* Clip-mask media reveal */
.mx-mask{clip-path:inset(0 0 100% 0);transition:clip-path 1.05s var(--mx-ease)}
.mx-mask.mx-in{clip-path:inset(0 0 0 0)}
.mx-mask>img,.mx-mask>image-slot,.mx-mask>picture>img{transform:scale(1.14);transition:transform 1.4s var(--mx-ease)}
.mx-mask.mx-in>img,.mx-mask.mx-in>image-slot,.mx-mask.mx-in>picture>img{transform:scale(1)}

/* Word / line reveal */
.mx-split{}
.mx-w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.06em;margin-bottom:-.06em}
.mx-w>i{display:inline-block;font-style:inherit;transform:translateY(115%);opacity:0;transition:transform .9s var(--mx-ease),opacity .6s ease}
.mx-split.mx-in .mx-w>i{transform:translateY(0);opacity:1}

/* Eyebrow rule draw */
.eyebrow{position:relative;width:fit-content;max-width:100%}
.eyebrow::after{content:"";position:absolute;left:calc(100% + 14px);top:50%;width:clamp(32px,5vw,90px);height:1px;background:var(--color-accent);opacity:.55;transform:scaleX(0);transform-origin:0 50%;transition:transform 1s var(--mx-ease) .1s}
.reveal.in-view .eyebrow::after,.eyebrow.mx-in::after{transform:scaleX(1)}

/* Velocity stretch on media */
.mx-stretch{will-change:transform}

/* Hover: subtle 3D lift on cards */
.work-click,.lifestyle-item,.ws-card-media{transition:transform .6s var(--mx-ease)}
.work-click:hover,.lifestyle-item:hover{transform:translateY(-6px)}

@media (prefers-reduced-motion:reduce){
  .mx-mask{clip-path:none!important}
  .mx-mask>img,.mx-mask>image-slot{transform:none!important}
  .mx-w>i{transform:none!important;opacity:1!important}
  .eyebrow::after{transform:scaleX(1)!important}
  .mx-progress{display:none}
}
