.reading-progress{position:fixed;inset:0 0 auto;height:3px;background:linear-gradient(90deg,#27aed9,#9be8fb);z-index:100;transform:scaleX(0);transform-origin:left;pointer-events:none;box-shadow:0 0 12px #27aed955}
@media(prefers-reduced-motion:no-preference){.reveal{transition:opacity .85s ease var(--reveal-delay,0ms),transform .85s cubic-bezier(.16,1,.3,1) var(--reveal-delay,0ms)}.work-images figure.reveal,.clearing-photo.reveal,.office-banner.reveal{clip-path:inset(0 0 12% 0 round 22px);transition:opacity .9s ease,transform 1s cubic-bezier(.16,1,.3,1),clip-path 1.1s cubic-bezier(.16,1,.3,1)}.work-images figure.is-visible,.clearing-photo.is-visible,.office-banner.is-visible{clip-path:inset(0 round 22px)}.hero .hero-visual>img,.clearing-photo img,.office-banner img{translate:0 var(--scroll-shift,0px);scale:1.08}.region-label.reveal .area-map{opacity:.4;transform:scale(.95);transition:opacity 1.2s ease,transform 1.2s cubic-bezier(.16,1,.3,1)}.region-label.is-visible .area-map{opacity:1;transform:scale(1)}}
@media(prefers-reduced-motion:reduce){.reading-progress{display:none}.reveal{opacity:1;transform:none;clip-path:none}.hero .hero-visual>img,.clearing-photo img,.office-banner img{translate:none;scale:none}}
