:root{--construct-paper:#f7f8fa}
html.is-loading,html.is-introducing{background:var(--construct-paper,#f7f8fa);overflow:hidden}
.site-loader{display:none}
html.is-loading body>:not(.site-loader):not(.journey-world){visibility:hidden!important}
html.is-loading .site-loader,.site-loader.leaving{display:flex;position:fixed;inset:0;z-index:9999;background:var(--construct-paper,#f7f8fa);align-items:center;justify-content:center;flex-direction:column;gap:24px}
.loader-symbol{width:44px;height:44px;opacity:1}
.loader-line{width:76px;height:2px;border-radius:2px;background:#dce1dc;overflow:hidden}
.loader-line:after{content:'';display:block;width:28px;height:2px;border-radius:2px;background:#64766a;animation:loader-pass 1.15s ease-in-out infinite}
@keyframes loader-pass{from{transform:translateX(-28px)}to{transform:translateX(76px)}}
.site-loader.leaving{pointer-events:none;animation:loader-away .3s ease-out forwards}
@keyframes loader-away{to{opacity:0}}
html.is-introducing :is(.header,footer,.journey-position,.journey-motion,.hero-lede,.hero-actions,main>section:not(.hero),.journey-content:not(.hero)){visibility:hidden!important;pointer-events:none!important}
.intro-letter{opacity:0}
.intro-letter.visible{opacity:1}
html.is-introducing #hero-title .fullstop{animation:none!important}
@media(prefers-reduced-motion:no-preference){.phone-static .site-loader .loader-line:after{animation:loader-pass 1.15s ease-in-out infinite!important}.site-ready :is(.hero-lede,.hero-actions,.header){animation:arrival .45s ease-out both}}
@media(prefers-reduced-motion:reduce){.loader-line:after{animation:none!important;transform:translateX(24px)}.site-loader.leaving{animation:none!important}.intro-letter{opacity:1}}
@keyframes arrival{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}

/* The quiet opening shares the same white as the rendered Construct. */
body.phone-static.native-journey .hero.white-cover{background:var(--construct-paper,#f7f8fa)!important}
body.phone-static.native-journey{--header-surface:var(--construct-paper,#f7f8fa)}
body.native-journey.reduced-view .hero.white-cover,body.phone-static .header,body.phone-static .mobile-menu-panel{background:var(--construct-paper,#f7f8fa)!important}

/* First paint uses the construct before the journey classes are installed. */
html.phone-static-start,html.phone-static-start body{background:#f7f8fa!important}
html.phone-static-start .header{background:#f7f8fa!important;--header-surface:#f7f8fa;--header-ink:#14221a;--header-night:0}
html.phone-static-start .header::before{display:none!important}
html.phone-static-start.is-loading .header,html.phone-static-start.is-introducing .header{visibility:hidden!important;opacity:0!important}
