/* Vertex Prime: finishing effects. Motion is skipped when the device asks for reduced motion. */

/* Photo reveal on scroll: only photos below the first screen are prepared, so nothing is hidden at load */
.vx-rv{transition:clip-path 1.3s cubic-bezier(.77,0,.18,1)}
.vx-rv.vx-armed{clip-path:inset(0 100% 0 0);transition:none}

/* Headlines rise word by word */
.vx-words .vx-w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.1em;margin-bottom:-.1em}
.vx-words .vx-w>span{display:inline-block;transition:transform 1.05s cubic-bezier(.2,.7,.2,1)}
.vx-words.vx-armed .vx-w>span{transform:translateY(112%);transition:none}

/* Project cards open on hover */
.pj-img{position:relative}
.pj-img::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(23,43,77,.62) 0%,rgba(23,43,77,0) 55%);opacity:0;transition:opacity .6s ease;pointer-events:none}
.pj-img img{transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.pj-go{position:absolute;z-index:1;left:22px;bottom:20px;display:inline-flex;align-items:center;gap:10px;color:#fff;font-size:15px;letter-spacing:.03em;border-bottom:1px solid #F93D53;padding-bottom:4px;opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s cubic-bezier(.2,.7,.2,1)}
.pj-card:hover .pj-img img,.pj-card:focus-visible .pj-img img{transform:scale(1.06)}
.pj-card:hover .pj-img::after,.pj-card:focus-visible .pj-img::after{opacity:1}
.pj-card:hover .pj-go,.pj-card:focus-visible .pj-go{opacity:1;transform:none}
@media (hover:none){.pj-go{display:none}}

@media (prefers-reduced-motion:reduce){
  .vx-rv,.vx-rv.vx-armed{clip-path:none;transition:none}
  .vx-words .vx-w>span,.vx-words.vx-armed .vx-w>span{transform:none;transition:none}
  .pj-img img,.pj-go,.pj-img::after{transition:none}
}
