/* Same artwork, carried from the entrance to the portfolio; navigation never waits on JS. */
@view-transition{navigation:auto}
.entrance-identity h1 img,.portfolio-page .nav__brand img{view-transition-name:studio-mark}
::view-transition-group(studio-mark){animation-duration:760ms;animation-timing-function:cubic-bezier(.22,.75,.18,1);z-index:2}
::view-transition-old(studio-mark),::view-transition-new(studio-mark){height:100%;object-fit:contain;mix-blend-mode:normal}
::view-transition-old(studio-mark){animation:mark-out 760ms ease both}
::view-transition-new(studio-mark){animation:mark-in 760ms ease both}
::view-transition-old(root){animation:page-away 180ms ease both;mix-blend-mode:normal}
::view-transition-new(root){animation:page-arrive 560ms 130ms cubic-bezier(.22,.75,.18,1) both;mix-blend-mode:normal}
@keyframes mark-out{0%,40%{opacity:1}100%{opacity:0}}
@keyframes mark-in{0%,30%{opacity:0}100%{opacity:1}}
@keyframes page-away{to{opacity:0}}
@keyframes page-arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.entrance-identity h1{position:relative}
.entrance-identity h1::after{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 11% 16% at 69.8% 28.9%,#ffc58e 0%,#e8743b 38%,transparent 100%);mask:url('../brand/logo/momentito-full-hero.svg') center/contain no-repeat;-webkit-mask:url('../brand/logo/momentito-full-hero.svg') center/contain no-repeat;opacity:0;transition:opacity .35s ease}
.motion-enabled .entrance-identity:has(.enter-work:is(:hover,:focus-visible)) h1::after{opacity:.85}
/* One full logo on every viewport, so a page change never morphs unrelated artwork. */
.portfolio-page .nav__brand{display:flex;align-items:center;flex-shrink:0}
.portfolio-page .nav__logo,.portfolio-page .nav.is-scrolled .nav__logo{width:96px;height:96px;object-fit:contain}
@media(max-width:900px),(max-aspect-ratio:3/4){.portfolio-page .nav__logo,.portfolio-page .nav.is-scrolled .nav__logo{width:74px;height:74px}.portfolio-page .nav__brand{margin-right:auto}}
html.reduce-motion::view-transition-group(*),html.reduce-motion::view-transition-old(*),html.reduce-motion::view-transition-new(*){animation:none!important}
@media(prefers-reduced-motion:reduce){html:not(.motion-enabled)::view-transition-group(*),html:not(.motion-enabled)::view-transition-old(*),html:not(.motion-enabled)::view-transition-new(*){animation:none!important}}
