/* Whole-page arrival: layout builds from the brand mark outward. */
.hero-copy h1>.headline-line{display:block;overflow:hidden;padding-bottom:.055em;margin-bottom:-.055em}
.hero-copy h1>.headline-line:first-child{color:#0a2442}
.headline-line>span{display:block}
#intro.logo-entrance.docking::before{animation:stage-open 1.15s cubic-bezier(.4,0,.2,1) forwards}
#site.entrance-entering .hero{animation:none!important;opacity:1;transform:none}
#site.entrance-pending:not(.entrance-entering) .hero{transform:none}
.assembly-guides{position:fixed;inset:0;z-index:48;pointer-events:none;visibility:hidden;overflow:hidden}
.assembly-guides i{position:absolute;display:block;background:#0b79d5;opacity:0}
.assembly-guides i:nth-child(1){left:6%;top:0;bottom:0;width:1px;transform-origin:top}
.assembly-guides i:nth-child(2){right:6%;top:0;bottom:0;width:1px;transform-origin:bottom}
.assembly-guides i:nth-child(3){top:13%;left:0;right:0;height:1px;transform-origin:left}
.assembly-guides i:nth-child(4){top:66%;left:0;right:0;height:1px;transform-origin:right}
body:not(.effects-off).page-choreographed .assembly-guides{visibility:visible}
body:not(.effects-off).page-choreographed .assembly-guides i:nth-child(-n+2){animation:guide-vertical 2.3s .1s var(--motion-ease) both}
body:not(.effects-off).page-choreographed .assembly-guides i:nth-child(n+3){animation:guide-horizontal 2.3s .22s var(--motion-ease) both}
body:not(.effects-off).page-choreographed .topline{animation:panel-open .8s .3s var(--motion-ease) both;transform-origin:top}
body:not(.effects-off).page-choreographed .header{animation:header-build 1s .18s var(--motion-ease) both}
body:not(.effects-off).page-choreographed .header nav a{animation:nav-build .65s var(--motion-ease) both;animation-delay:calc(.65s + var(--nav-order,0)*.09s)}
body:not(.effects-off).page-choreographed .header-quote,body:not(.effects-off).page-choreographed .menu-toggle{animation:nav-build .7s 1s var(--motion-ease) both}
body:not(.effects-off).page-choreographed #site .hero{animation:page-depth 1.7s .05s var(--motion-ease) both!important;transform-origin:50% 12%}
body:not(.effects-off).page-choreographed .hero-copy h1{animation:none}
body:not(.effects-off).page-choreographed .headline-line>span{animation:headline-build 1.2s var(--motion-ease) both;animation-delay:.5s}
body:not(.effects-off).page-choreographed .headline-line:nth-child(2)>span{animation-delay:.72s}
body:not(.effects-off).page-choreographed .hero-copy>p{animation:copy-build 1s .85s var(--motion-ease) both}
body:not(.effects-off).page-choreographed .hero-copy>.button{animation:button-build .85s 1.08s var(--motion-ease) both}
body:not(.effects-off).page-choreographed .hero-families{animation:copy-build .8s 1.25s var(--motion-ease) both}
body:not(.effects-off).page-choreographed .flight-deck{animation:deck-build 1.15s 1s var(--motion-ease) both}
body:not(.effects-off).page-choreographed .deck-heading{animation:copy-build .8s 1.1s var(--motion-ease) both}
body:not(.effects-off).page-choreographed .flow-guides{animation:guides-build 1.3s 1.12s var(--motion-ease) both}
body:not(.effects-off).page-choreographed .flow-draw{animation:airflow-draw 1.9s 1.18s var(--motion-ease) both}
body:not(.effects-off).page-choreographed .flow-signal{animation:airflow-pass 2.7s 1.45s ease-in-out both}
body:not(.effects-off).page-choreographed .family-selector a{animation:tile-build .85s var(--motion-ease) both;animation-delay:calc(1.45s + var(--family-index,0)*.11s)}
body:not(.effects-off).page-choreographed .brand-bridge{animation:bridge-build 1.1s 1.55s var(--motion-ease) both}
body:not(.effects-off).page-choreographed .motion-review{animation:site-arrive .45s 2.8s both}
/* Continue the same visual language as visitors scroll through the site. */
body:not(.effects-off) .fleet-row.visible .fleet-index{animation:copy-build .8s .05s var(--motion-ease) both}
body:not(.effects-off) .fleet-row.visible .fleet-name{animation:copy-build .9s .13s var(--motion-ease) both}
body:not(.effects-off) .fleet-row.visible .fleet-detail{animation:copy-build .9s .23s var(--motion-ease) both}
body:not(.effects-off) .services-list.visible>details{animation:copy-build .8s var(--motion-ease) both;animation-delay:calc(var(--service-order,0)*.09s)}
body:not(.effects-off) .section-heading.visible h2,body:not(.effects-off) .story-copy.visible h2{animation:copy-build .9s .12s var(--motion-ease) both}
@keyframes stage-open{0%{opacity:1;clip-path:inset(0)}100%{opacity:0;clip-path:inset(0)}}
@keyframes panel-open{from{opacity:0;transform:scaleY(.1)}to{opacity:1;transform:none}}
@keyframes header-build{from{background:#e9f3fc;border-color:transparent}to{background:#fff;border-color:#cad8e6}}
@keyframes nav-build{from{opacity:0;transform:translateX(-16px)}to{opacity:1;transform:none}}
@keyframes page-depth{from{opacity:.1;transform:perspective(1600px) rotateX(3deg) translateY(55px) scale(.975)}to{opacity:1;transform:none}}
@keyframes headline-build{from{transform:translateY(108%)}to{transform:none}}
@keyframes copy-build{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@keyframes button-build{from{opacity:0;transform:translateY(22px);clip-path:inset(0 100% 0 0)}to{opacity:1;transform:none;clip-path:inset(0)}}
@keyframes deck-build{from{clip-path:inset(0 100% 0 0);border-color:#008dec}to{clip-path:inset(0);border-color:#bad0e4}}
@keyframes guides-build{from{opacity:0;transform:translateY(24px)}to{opacity:.58;transform:none}}
@keyframes tile-build{from{opacity:0;transform:perspective(700px) rotateX(-12deg) translateY(30px)}to{opacity:1;transform:none}}
@keyframes bridge-build{from{opacity:0;clip-path:inset(0 100% 0 0)}to{opacity:1;clip-path:inset(0)}}
@keyframes guide-vertical{0%{opacity:0;transform:scaleY(0)}30%{opacity:.18;transform:scaleY(1)}70%{opacity:.12}100%{opacity:0;transform:scaleY(1)}}
@keyframes guide-horizontal{0%{opacity:0;transform:scaleX(0)}30%{opacity:.18;transform:scaleX(1)}70%{opacity:.12}100%{opacity:0;transform:scaleX(1)}}
@media(max-width:620px){
 @keyframes page-depth{from{opacity:.1;transform:translateY(30px)}to{opacity:1;transform:none}}
 @keyframes tile-build{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
 .assembly-guides i:nth-child(4){top:75%}
}
@media(prefers-reduced-motion:reduce){
 #site *,#site *::before,#site *::after{animation:none!important;transition:none!important}
 .assembly-guides{display:none!important}
 .headline-line>span{transform:none!important}
 #intro.logo-entrance.docking::before{animation:none!important;opacity:0}
}
.entrance-color-logo{position:absolute;top:0;left:0;width:100%;height:auto;opacity:0;pointer-events:none}
#intro.docking .entrance-color-logo{opacity:1;transition:opacity .45s .2s}

body:not(.effects-off).page-choreographed .expertise>.section-heading{animation:copy-build 1s 1.85s var(--motion-ease) both}
