
.brand-intro{display:none}
html.brand-intro-active{overflow:hidden}
html.brand-intro-active .brand-intro{position:fixed;inset:0;z-index:20000;display:grid;place-items:center;background:#141110;color:#d8b69e;pointer-events:auto;opacity:1;transition:opacity 350ms cubic-bezier(.4,0,.2,1),visibility 350ms}
.brand-intro-lockup{display:flex;flex-direction:column;align-items:center;text-align:center;padding:24px;gap:18px}
.brand-intro-name{font:200 clamp(42px,9vw,76px)/1.15 var(--serif);white-space:nowrap;letter-spacing:.01em;opacity:0}
.brand-intro-lion{display:block;width:clamp(110px,22vw,160px);height:auto;opacity:0}
.brand-intro.is-playing .brand-intro-name{animation:brand-name-in 1400ms cubic-bezier(.16,1,.3,1) 100ms both}
.brand-intro.is-playing .brand-intro-lion{animation:brand-lion-in 1500ms cubic-bezier(.16,1,.3,1) 650ms both}
.brand-intro.is-exiting{opacity:0!important;visibility:hidden;pointer-events:none!important}
@keyframes brand-name-in{from{opacity:0;transform:translateY(14px);filter:blur(6px);letter-spacing:.045em}to{opacity:1;transform:none;filter:blur(0);letter-spacing:.01em}}
@keyframes brand-lion-in{from{opacity:0;transform:translateY(10px) scale(.91);filter:blur(4px)}to{opacity:1;transform:none;filter:blur(0)}}
@media(prefers-reduced-motion:reduce){.brand-intro.is-playing .brand-intro-name,.brand-intro.is-playing .brand-intro-lion{animation:none;opacity:1}.brand-intro{transition:none!important}}


/* Reveal all homepage content, including navigation and lettering. */
html.hero-soft-start body.home > :not(.brand-intro):not(script):not(style){filter:blur(5px);opacity:.6;transition:filter 300ms cubic-bezier(.45,0,.55,1),opacity 300ms cubic-bezier(.45,0,.55,1);will-change:filter,opacity}
html.hero-soft-start.hero-soft-reveal body.home > :not(.brand-intro):not(script):not(style){filter:blur(0);opacity:1}
@media(prefers-reduced-motion:reduce){html.hero-soft-start body.home > :not(.brand-intro):not(script):not(style){filter:none;opacity:1;transition:none;will-change:auto}}
