/* Calm, editorial motion. The admin's Animasi switch controls this entire layer. */
.motion-enabled .primary-nav a{position:relative}
.motion-enabled .primary-nav a::after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .32s ease}
.motion-enabled .primary-nav a:hover::after,.motion-enabled .primary-nav a:focus-visible::after{transform:scaleX(1)}
.motion-enabled .hero{--hero-parallax:0px}
.motion-enabled .hero-media:not(video){animation:hero-drift 19s ease-in-out infinite alternate;will-change:transform}
.motion-enabled .hero-media:is(video){transform:translate3d(0,var(--hero-parallax),0) scale(1.06)}
.motion-enabled .hero .hero-eyebrow{animation:hero-rise .8s .08s both}
.motion-enabled .hero h1{animation:hero-rise .95s .2s both}
.motion-enabled .hero .hero-lead{animation:hero-rise .9s .35s both}
.motion-enabled .hero .hero-actions{animation:hero-rise .9s .5s both}
.motion-enabled .hero::after{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background:rgba(255,255,255,.7);transform:scaleX(0);transform-origin:left;animation:hero-line 1.4s .75s ease-out both;pointer-events:none}
@keyframes hero-rise{from{opacity:0;transform:translate3d(0,30px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@keyframes hero-drift{from{transform:translate3d(0,var(--hero-parallax),0) scale(1.04)}to{transform:translate3d(-1.5%,calc(var(--hero-parallax) - 12px),0) scale(1.13)}}
@keyframes hero-line{to{transform:scaleX(1)}}
.motion-enabled.motion-ready .motion-target{opacity:0;transform:translate3d(0,32px,0);transition:opacity .85s cubic-bezier(.2,.65,.25,1),transform .85s cubic-bezier(.2,.65,.25,1);transition-delay:var(--reveal-delay,0ms)}
.motion-enabled.motion-ready .motion-target.is-visible{opacity:1;transform:translate3d(0,0,0)}
.motion-enabled .scroll-progress{position:fixed;z-index:45;top:0;left:0;width:100%;height:2px;background:var(--ui-accent);transform:scaleX(0);transform-origin:left;pointer-events:none;will-change:transform}
.motion-enabled .gallery-slide{flex-basis:68%}
.motion-enabled .project-row .gallery{transition:transform .45s ease,filter .45s ease}
.motion-enabled .project-row:hover .gallery{transform:translateY(-5px);filter:drop-shadow(0 14px 18px rgba(0,0,0,.12))}
.motion-enabled .gallery-controls button,.motion-enabled .rail-arrow{transition:transform .25s ease,background .25s ease,color .25s ease}
.motion-enabled .gallery-controls button:hover,.motion-enabled .rail-arrow:hover{transform:scale(1.09);background:var(--ui-accent);color:white}
.motion-enabled .experience-row{transition:background .35s ease,padding .35s ease}
.motion-enabled .experience-row:hover{background:color-mix(in srgb,var(--ui-accent) 6%,transparent);padding-inline:12px}
.motion-enabled .experience-row .text-action{transition:transform .25s ease}
.motion-enabled .experience-row:hover .text-action{transform:translateX(5px)}
.motion-enabled .skill-pills span{transition:transform .25s ease,background .25s ease}
.motion-enabled .skill-pills span:hover{transform:translateY(-4px);background:color-mix(in srgb,var(--ui-accent) 20%,var(--ui-surface))}
.motion-enabled .merch-card{transition:transform .4s ease,box-shadow .4s ease}
.motion-enabled .merch-card:hover{transform:translateY(-7px)}
.motion-enabled .button span,.motion-enabled .contact-buttons a span{transition:transform .25s ease}
.motion-enabled .button:hover span,.motion-enabled .contact-buttons a:hover span{transform:translate(3px,-3px)}
.motion-enabled .section-heading .eyebrow,.motion-enabled .section-aside .eyebrow{position:relative}
.motion-enabled .section-heading .eyebrow::before,.motion-enabled .section-aside .eyebrow::before{content:"";display:inline-block;width:18px;height:1px;margin-right:9px;vertical-align:middle;background:currentColor;transform-origin:left;animation:eyebrow-line 2.3s ease-in-out infinite alternate}
@keyframes eyebrow-line{to{transform:scaleX(.45)}}
@media(max-width:760px){.motion-enabled .gallery-slide{flex-basis:80%}.motion-enabled .project-row:hover .gallery{transform:none;filter:none}.motion-enabled .experience-row:hover{padding-inline:0}}
@media(max-width:520px){.motion-enabled .gallery-slide{flex-basis:84%}}
@media(prefers-reduced-motion:reduce){.motion-enabled .hero-media:not(video),.motion-enabled .hero .hero-eyebrow,.motion-enabled .hero h1,.motion-enabled .hero .hero-lead,.motion-enabled .hero .hero-actions,.motion-enabled .hero::after,.motion-enabled .section-heading .eyebrow::before,.motion-enabled .section-aside .eyebrow::before{animation:none!important}.motion-enabled.motion-ready .motion-target{opacity:1!important;transform:none!important}.motion-enabled .hero-media:is(video){transform:none!important}}
