/* Shared motion language: assembled geometry, staggered type, scroll reveals. */
@keyframes studio-line-in {
  from { opacity:0; translate:0 85px; clip-path:inset(0 0 100%); }
  to { opacity:1; translate:0 0; clip-path:inset(0); }
}
@keyframes studio-fade-up { from {opacity:0;translate:0 28px} to {opacity:1;translate:0 0} }
@keyframes studio-orbit {to{rotate:360deg}}
@keyframes studio-grid {to{background-position:80px 80px}}
@keyframes studio-portrait-in {from{clip-path:inset(100% 0 0)}to{clip-path:inset(0)}}
@keyframes studio-portrait-zoom {from{scale:1.18}to{scale:1}}
@keyframes studio-scroll-cue {0%,100%{translate:0 -4px;opacity:.4}50%{translate:0 6px;opacity:1}}
@keyframes studio-accent-in {from{scale:0 1}to{scale:1 1}}
.hero-copy .headline-line,.staff-name-line{animation:studio-line-in 1.15s cubic-bezier(.16,1,.3,1) both;animation-delay:.12s}
.hero-copy .headline-line:last-child,.staff-name-line:last-child{animation-delay:.32s}
.hero-copy .lead,.staff-role{animation:studio-fade-up .9s .55s both}
.hero-buttons,.staff-copy>.button{animation:studio-fade-up .9s .75s both}
.staff-name-line{display:block;color:var(--navy)!important}
.staff-name-line:last-child{color:#70809e!important}
.staff-portrait{animation:studio-portrait-in 1.3s cubic-bezier(.16,1,.3,1) both;isolation:isolate}
.staff-portrait img{animation:studio-portrait-zoom 1.8s cubic-bezier(.16,1,.3,1) both;transform:translateY(var(--portrait-y,0px)) scale(1.06);will-change:transform}
.staff-portrait>span{z-index:2;animation:studio-fade-up .8s 1s both}
.staff-copy{position:relative}
.staff-copy:after{content:'';position:absolute;bottom:0;left:var(--gutter);right:var(--gutter);height:3px;background:var(--navy);transform-origin:left;animation:studio-accent-in 1.4s .4s both}
.staff-page .reading-progress{height:3px}
.staff-location:after{content:'↓';font-size:22px;animation:studio-scroll-cue 1.8s ease-in-out infinite}
.staff-focus-grid article{position:relative;isolation:isolate;overflow:hidden;transition:color .35s,padding .35s;min-height:200px}
.staff-focus-grid article:before{content:'';position:absolute;inset:0;background:var(--navy);z-index:-1;transform:translateY(102%);transition:transform .55s cubic-bezier(.16,1,.3,1)}
@media(hover:hover) and (pointer:fine){.staff-focus-grid article:hover{color:white;padding-left:24px}.staff-focus-grid article:hover:before{transform:none}.staff-focus-grid article:hover>span{color:#b8c9ed}}
.staff-focus-grid article:after{content:'↗';position:absolute;right:20px;top:28px;font-size:26px;opacity:.45;transition:rotate .4s}
.staff-focus-grid article:hover:after{rotate:45deg}
.staff-contact{position:relative;overflow:hidden;isolation:isolate}
.staff-contact:before{content:'';width:450px;aspect-ratio:1;position:absolute;right:-160px;top:-140px;border:1px solid #ffffff2b;border-radius:35%;animation:studio-orbit 25s linear infinite;z-index:-1}
.staff-contact:after{content:'';width:570px;aspect-ratio:1;position:absolute;right:-220px;top:-200px;border:1px solid #ffffff17;border-radius:35%;animation:studio-orbit 35s linear infinite reverse;z-index:-1}
.staff-contact a{transition:translate .3s,color .3s}.staff-contact a:hover{translate:10px 0;color:#b8c9ed}
.studio-word{opacity:calc(.55 + var(--word-p,1)*.45);transition:opacity .12s linear}
.studio-replay{position:fixed;bottom:20px;right:64px;z-index:45;width:36px;height:36px;border:1px solid var(--line);border-radius:50%;background:#ffffffed;color:var(--navy);font-size:20px;box-shadow:0 4px 20px #061b500b;transition:rotate .4s}
.studio-replay:hover{rotate:-50deg}
.motion-paused .staff-portrait,.motion-paused .studio-reveal,.motion-paused .staff-name-line,.motion-paused .headline-line{clip-path:none!important;opacity:1!important;translate:none!important}
.motion-paused .staff-portrait img{transform:none!important;scale:1!important}
.motion-paused .studio-word{opacity:1}
.motion-paused .signature-piece{translate:none!important;rotate:none!important;opacity:1!important}
.motion-background-paused *{animation-play-state:paused!important}
@media(max-width:800px){.staff-focus-grid article{min-height:100px}.staff-focus-grid article:after{right:4px;top:20px}.staff-focus-grid h3{padding-right:30px}.studio-replay{bottom:14px;right:58px}.staff-portrait img{transform:translateY(var(--portrait-y,0px)) scale(1.035)}}
@media(prefers-reduced-motion:reduce){.studio-replay{display:none}.studio-word{opacity:1}.staff-portrait{clip-path:none!important}.staff-portrait img{transform:none!important}.signature-piece{translate:none!important;rotate:none!important}.staff-name-line,.headline-line{opacity:1!important;translate:none!important;clip-path:none!important}}
