@view-transition{navigation:auto}
::view-transition-group(root){animation-duration:800ms;isolation:isolate;background:#EB1D23}
::view-transition-image-pair(root){isolation:isolate}
::view-transition-old(root),::view-transition-new(root){mix-blend-mode:normal;animation-duration:800ms;animation-timing-function:cubic-bezier(.65,0,.25,1);animation-fill-mode:both;transform-origin:center;backface-visibility:hidden}
::view-transition-old(root){animation-name:laugh-page-out;z-index:2}
::view-transition-new(root){animation-name:laugh-page-in;z-index:1}
html[data-transition-direction=back]::view-transition-old(root){animation-name:laugh-page-out-back}
html[data-transition-direction=back]::view-transition-new(root){animation-name:laugh-page-in-back}
@keyframes laugh-page-out{0%{transform:translateY(0) scale(1);border-radius:0}12%{transform:translateY(0) scale(.975);border-radius:6px}88%,100%{transform:translateY(-105%) scale(.975);border-radius:6px}}
@keyframes laugh-page-in{0%,12%{transform:translateY(105%) scale(.975);border-radius:6px}88%{transform:translateY(0) scale(.975);border-radius:6px}100%{transform:translateY(0) scale(1);border-radius:0}}
@keyframes laugh-page-out-back{0%{transform:translateY(0) scale(1);border-radius:0}12%{transform:translateY(0) scale(.975);border-radius:6px}88%,100%{transform:translateY(105%) scale(.975);border-radius:6px}}
@keyframes laugh-page-in-back{0%,12%{transform:translateY(-105%) scale(.975);border-radius:6px}88%{transform:translateY(0) scale(.975);border-radius:6px}100%{transform:translateY(0) scale(1);border-radius:0}}
html.transition-fallback{background:#EB1D23!important}
html.transition-fallback body{animation:laugh-fallback-in 400ms cubic-bezier(.65,0,.25,1) both;transform-origin:50% 50vh}
html.transition-fallback[data-transition-direction=back] body{animation-name:laugh-fallback-in-back}
@keyframes laugh-fallback-in{from{transform:translateY(105vh) scale(.975)}to{transform:translateY(0) scale(1)}}
@keyframes laugh-fallback-in-back{from{transform:translateY(-105vh) scale(.975)}to{transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:reduce){::view-transition-group(root),::view-transition-old(root),::view-transition-new(root){animation:none!important}html.transition-fallback body{animation:none}}
/* Project media morphs use their own overlay, without the red site transition. */
html.case-motion-arrival{background:#000!important}
html.case-motion-arrival body{opacity:0!important}
.case-motion-layer{position:fixed;z-index:2147483646;overflow:hidden;background:#000;pointer-events:none;contain:layout paint}
.case-motion-layer>img,.case-motion-layer>div{position:absolute;display:block;max-width:none}
.case-motion-layer img{display:block;max-width:none;object-fit:fill}
