/* Cinematic aperture reveals shared by the hero and promoted properties. */
@keyframes hz-aperture-reveal{0%{clip-path:circle(0% at var(--aperture-x,72%) 48%);transform:none;filter:brightness(1.08)}70%{filter:brightness(1.01)}100%{clip-path:circle(125% at var(--aperture-x,72%) 48%);transform:none;filter:brightness(1)}}
@keyframes hz-depth-depart{0%{transform:none;opacity:1}100%{transform:none;opacity:.42}}
@keyframes hz-aperture-light{0%{opacity:0;transform:translate(-50%,-50%) scale(.04)}14%{opacity:.3}70%{opacity:.12}100%{opacity:0;transform:translate(-50%,-50%) scale(3.8)}}
@keyframes hz-copy-arrive{from{opacity:0;transform:translate3d(0,17px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
.home-hero-scenes{--aperture-x:var(--hero-aperture-x,72%)}
.home-hero-scenes .home-hero-scene{backface-visibility:hidden;transform-origin:50% 50%}
.home-hero-scenes .home-hero-scene.is-active:not(.is-entering){animation:none}
.home-hero-scenes .home-hero-scene.is-entering,.home-hero-scenes .home-hero-scene.is-entering.reveal-from-right{animation:hz-aperture-reveal 2.8s cubic-bezier(.45,0,.2,1) both;will-change:clip-path,transform}
.home-hero-scenes .home-hero-scene.is-leaving{animation:hz-depth-depart 2.8s cubic-bezier(.45,0,.2,1) both}
.home-hero-scenes:after{content:'';position:absolute;z-index:4;left:var(--hero-aperture-x,72%);top:48%;width:min(74vw,950px);aspect-ratio:1;pointer-events:none;border:1px solid #efffe9a6;border-radius:50%;box-shadow:0 0 42px 14px #deefd829;opacity:0;mix-blend-mode:screen}
.home-hero-scenes.is-transitioning:after{animation:hz-aperture-light 2.8s cubic-bezier(.45,0,.2,1) both}
.hero-motion-paused .home-hero-scene.is-active:not(.is-entering),.hero-motion-idle .home-hero-scene.is-active:not(.is-entering),.hero:has(.floating-search.is-open) .home-hero-scene.is-active:not(.is-entering){animation-play-state:paused}
.hero-motion-static .home-hero-scene{animation:none!important;transform:none!important;filter:none!important;clip-path:none!important}
.hero-motion-static .home-hero-scenes:after{display:none}
.fp-showcase{--aperture-x:var(--fp-aperture-x,72%)}
.fp-showcase .fp-card{transition:none}
.fp-showcase .fp-card.is-entering{animation:none;background:transparent}
.fp-showcase .fp-card.is-entering .fp-scene,.fp-showcase .fp-card.is-entering.reveal-from-right .fp-scene{animation:hz-aperture-reveal 2.8s cubic-bezier(.45,0,.2,1) both;will-change:clip-path,transform}
.fp-showcase .fp-card.is-leaving .fp-scene{animation:hz-depth-depart 2.8s cubic-bezier(.45,0,.2,1) both}
.fp-showcase .fp-card.is-entering .fp-copy{animation:hz-copy-arrive 1.2s cubic-bezier(.19,1,.22,1) .35s both}
.fp-showcase .fp-card.is-entering .fp-media-top,.fp-showcase .fp-card.is-entering .fp-media-brand{animation:hz-copy-arrive 1.1s cubic-bezier(.19,1,.22,1) .3s both}
.fp-showcase .fp-card.is-active .fp-photo.is-current{animation:none;backface-visibility:hidden}
.fp-showcase .fp-card .fp-photo.is-current.is-photo-entering{animation:hz-aperture-reveal 2.8s cubic-bezier(.45,0,.2,1) both;will-change:clip-path,transform}
.fp-showcase .fp-scene:before{content:'';position:absolute;z-index:1;left:var(--fp-aperture-x,72%);top:48%;width:min(74vw,850px);aspect-ratio:1;pointer-events:none;border:1px solid #efffe99c;border-radius:50%;box-shadow:0 0 38px 12px #deefd822;opacity:0;mix-blend-mode:screen}
.fp-showcase .fp-card.is-entering .fp-scene:before,.fp-showcase .fp-scene.is-photo-changing:before{animation:hz-aperture-light 2.8s cubic-bezier(.45,0,.2,1) both}
.fp-showcase.is-paused .fp-photo.is-current:not(.is-photo-entering),.fp-showcase.is-held .fp-photo.is-current:not(.is-photo-entering),.fp-showcase:not(.is-visible) .fp-photo.is-current:not(.is-photo-entering),body:has(#premium-dialog[open]) .fp-photo.is-current:not(.is-photo-entering){animation-play-state:paused}
.fp-showcase.is-save-data :is(.fp-card,.fp-scene,.fp-photo,.fp-copy,.fp-media-top,.fp-media-brand){animation:none!important;transform:none!important;clip-path:none!important;filter:none!important}
.fp-showcase.is-save-data .fp-scene:before{display:none}
@media(prefers-reduced-motion:reduce){.home-hero-scenes .home-hero-scene,.fp-showcase :is(.fp-card,.fp-scene,.fp-photo,.fp-copy,.fp-media-top,.fp-media-brand){animation:none!important;transition:none!important;transform:none!important;clip-path:none!important;filter:none!important;will-change:auto!important}.home-hero-scenes:after,.fp-showcase .fp-scene:before{display:none!important}}
@supports not (clip-path:circle(50% at 50% 50%)){.home-hero-scenes .home-hero-scene.is-entering,.fp-showcase .fp-card.is-entering .fp-scene{animation:hz-copy-arrive .8s ease both}.home-hero-scenes:after,.fp-showcase .fp-scene:before{display:none}}

@keyframes hz-copy-depart{from{opacity:1;transform:translate3d(0,0,0)}to{opacity:0;transform:translate3d(0,-9px,0)}}
.fp-showcase .fp-card.is-leaving .fp-copy,.fp-showcase .fp-card.is-leaving .fp-media-top,.fp-showcase .fp-card.is-leaving .fp-media-brand{animation:hz-copy-depart .3s ease both}
@media(prefers-reduced-motion:reduce){.fp-showcase .fp-card.is-leaving :is(.fp-copy,.fp-media-top,.fp-media-brand){animation:none!important}}

/* Photographs remain stationary at every stage of the reveal. */
.home-hero-scenes .home-hero-scene,.fp-showcase .fp-photo,.fp-showcase .fp-scene{transform:none!important}

/* Text moves independently; photographs remain completely stationary. */
body.home-view [data-home-text-state=pending]{opacity:0;transform:translate3d(0,28px,0)}
body.home-view [data-home-text-state=playing]{will-change:transform,opacity}
@media(prefers-reduced-motion:reduce){body.home-view [data-home-text-state]{opacity:1!important;transform:none!important;will-change:auto}}

/* Local contrast for navigation, fading out before the hero content. */
body.home-view .header.wrap{width:100%;max-width:none;box-sizing:border-box;padding-inline:clamp(16px,3vw,48px)}
body.home-view .header::before{
 content:"";position:absolute;top:0;left:50%;width:100%;height:calc(100% + 44px);transform:translateX(-50%);z-index:-1;pointer-events:none;
 background:linear-gradient(180deg,rgba(8,27,24,.76) 0%,rgba(8,27,24,.64) 46%,rgba(8,27,24,.28) 76%,rgba(8,27,24,0) 100%);
 -webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);
 -webkit-mask-image:linear-gradient(#000 0%,#000 55%,transparent 100%);mask-image:linear-gradient(#000 0%,#000 55%,transparent 100%);
}
body.home-view .header .desktop-nav a,body.home-view .header .header-search{ text-shadow:0 1px 5px rgba(0,0,0,.4) }
body.home-view .header .desktop-nav a:focus-visible{outline:2px solid #d8f5df;outline-offset:6px;border-radius:3px}
@media(max-width:760px){body.home-view .header::before{height:calc(100% + 30px);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}}
