/* A continuous identity and queen, followed by a staggered editorial reveal. */
@view-transition{navigation:auto}
#hero-title,.about-page .jm-identity .name{view-transition-name:site-name}
.jm-barnav{view-transition-name:site-navigation}
.about-page .about-floating-piece{view-transition-name:site-piece}
.about-page .audience-tabs{view-transition-name:about-tabs}
.about-page .audience-messages{view-transition-name:about-message}
.about-page .about-email{view-transition-name:about-contact}
.about-page .about-offers{view-transition-name:about-services}
::view-transition{pointer-events:none}
::view-transition-group(*){animation-duration:820ms;animation-timing-function:cubic-bezier(.22,1,.36,1)}
::view-transition-group(site-name){animation-duration:880ms;z-index:3}
::view-transition-group(site-piece){animation-duration:960ms;overflow:visible;z-index:2}
::view-transition-group(site-navigation){animation-duration:620ms;z-index:4}
::view-transition-old(root){animation:page-away 360ms cubic-bezier(.4,0,.6,1) both}
::view-transition-new(root){animation:page-arrive 800ms cubic-bezier(.22,1,.36,1) both}
::view-transition-old(site-piece){animation:piece-away 340ms ease-out both}
::view-transition-new(site-piece){animation:piece-arrive 960ms cubic-bezier(.22,1,.36,1) both;transform-origin:50% 70%}
::view-transition-old(about-tabs),::view-transition-old(about-message),::view-transition-old(about-contact),::view-transition-old(about-services){animation:page-away 260ms ease-in both}
::view-transition-new(about-tabs){animation:copy-arrive 700ms 100ms cubic-bezier(.22,1,.36,1) both}
::view-transition-new(about-message){animation:copy-arrive 760ms 190ms cubic-bezier(.22,1,.36,1) both}
::view-transition-new(about-contact){animation:copy-arrive 650ms 280ms cubic-bezier(.22,1,.36,1) both}
::view-transition-new(about-services){animation:copy-arrive 700ms 260ms cubic-bezier(.22,1,.36,1) both}
@keyframes page-away{to{opacity:0;transform:translateY(-64px) scale(.985)}}
@keyframes page-arrive{from{opacity:0;transform:translateY(48px)}to{opacity:1;transform:translateY(0)}}
@keyframes copy-arrive{from{opacity:0;transform:translateY(46px);clip-path:inset(0 0 100% 0)}to{opacity:1;transform:translateY(0);clip-path:inset(0)}}
@keyframes piece-away{to{opacity:0}}
@keyframes piece-arrive{0%{opacity:0;transform:translate(-28px,30px) rotate(-7deg) scale(.94)}68%{opacity:1;transform:translate(3px,-5px) rotate(1deg) scale(1.01)}100%{opacity:1;transform:none}}
@media(max-width:679px),(max-height:500px){
 @keyframes page-away{to{opacity:0;transform:translateY(-32px)}}
 @keyframes page-arrive{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
 @keyframes copy-arrive{from{opacity:0;transform:translateY(26px);clip-path:inset(0 0 100% 0)}to{opacity:1;transform:translateY(0);clip-path:inset(0)}}
}
@media(prefers-reduced-motion:reduce){
 @view-transition{navigation:none}
 ::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}
}
