@view-transition { navigation: auto; }
::view-transition-old(root){animation:page-out .25s ease both}
::view-transition-new(root){animation:page-in .6s cubic-bezier(.22,1,.36,1) both}
@keyframes page-out{to{opacity:0;transform:translateY(-10px)}}
@keyframes page-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
.hero{overflow:hidden}
.gallery-tile.photo-pending{opacity:0}
@media(prefers-reduced-motion:reduce){.gallery-tile.photo-pending{opacity:1}}
header nav a{position:relative;transition:color .25s ease}
header nav a:after{content:'';position:absolute;bottom:-7px;left:0;right:0;height:1px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.22,1,.36,1)}
header nav a:hover:after,header nav a:focus-visible:after,header nav a[aria-current]:after{transform:scaleX(1)}
.button{transition:background .3s,border-color .3s,translate .4s cubic-bezier(.22,1,.36,1),box-shadow .3s}
.button span{transition:translate .4s cubic-bezier(.22,1,.36,1)}
.button:hover{translate:0 -2px}.button:hover span{translate:4px 0}.button:active{translate:0 0}
.floating{transition:transform .4s cubic-bezier(.22,1,.36,1),background .3s}.floating:hover{transform:translateY(-4px)}
.service-summary a{transition:transform .55s cubic-bezier(.22,1,.36,1)}
#menu:not([hidden]){animation:menu-in .5s cubic-bezier(.22,1,.36,1) both}
.shade:not([hidden]){animation:fade-in .35s ease both}
@keyframes menu-in{from{opacity:0;translate:40px 0}to{opacity:1;translate:0 0}}
@keyframes fade-in{from{opacity:0}to{opacity:1}}
[role=tabpanel]:not([hidden]){animation:content-in .55s cubic-bezier(.22,1,.36,1) both}
.photo-dialog[open]{animation:content-in .35s cubic-bezier(.22,1,.36,1) both}
.photo-dialog[open]::backdrop{animation:fade-in .3s ease both}
@keyframes content-in{from{opacity:0;translate:0 12px}to{opacity:1;translate:0 0}}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 ::view-transition-old(root),::view-transition-new(root){animation:none!important}
 *,*:before,*:after{animation:none!important;transition:none!important}
 .button:hover,.button:hover span,.floating:hover{translate:none;transform:none}
}
