/* Opening brand moment: a brief animated introduction before the site is revealed. */
body.splash-active{overflow:hidden}
.opening-splash{position:fixed;z-index:9999;inset:0;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 42%,#fefefe 0%,#f8f5ef 38%,#dcebed 100%);color:#123247;opacity:1;visibility:visible;transition:opacity .62s ease,visibility .62s ease}
.opening-splash::before,.opening-splash::after{content:'';position:absolute;border-radius:50%;border:1px solid rgba(20,71,94,.14);pointer-events:none}.opening-splash::before{width:min(78vw,860px);height:min(78vw,860px);animation:splash-orbit 2.2s ease-out both}.opening-splash::after{width:min(57vw,620px);height:min(57vw,620px);border-color:rgba(217,154,69,.34);animation:splash-orbit 1.8s .12s ease-out both reverse}
.opening-splash.is-leaving{opacity:0;visibility:hidden}.opening-splash-content{position:relative;z-index:1;display:grid;justify-items:center;width:min(92vw,710px);text-align:center;animation:splash-content-in .45s .18s both ease-out}.opening-splash-glow{position:absolute;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(217,154,69,.25),rgba(217,154,69,0) 68%);filter:blur(4px);animation:splash-glow 2.4s ease-in-out infinite}.opening-splash-mark{display:block;width:min(84vw,650px);max-height:360px;object-fit:contain;mix-blend-mode:multiply;filter:drop-shadow(0 18px 24px rgba(13,46,63,.18));transform-origin:center;animation:splash-mark-arrive 2.05s cubic-bezier(.2,.85,.25,1) both}.opening-splash-content p{margin:12px 0 18px;color:#335d70;font-size:clamp(.72rem,1.6vw,1rem);font-weight:800;letter-spacing:.15em;text-transform:uppercase;opacity:0;animation:splash-copy-in .55s 1.15s both ease-out}.opening-splash-enter{padding:.55rem .85rem;border:0;border-bottom:1px solid rgba(18,50,71,.48);background:transparent;color:#123247;font:800 .76rem var(--sans);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;opacity:0;animation:splash-copy-in .55s 1.35s both ease-out}.opening-splash-enter:hover{color:#b97426;border-color:#b97426}.opening-splash-enter span{margin-left:.25rem;font-size:1rem}@keyframes splash-mark-arrive{0%{opacity:0;transform:perspective(1000px) translateZ(-600px) rotate(-210deg) scale(.12)}62%{opacity:1;transform:perspective(1000px) translateZ(0) rotate(16deg) scale(1.06)}82%{transform:rotate(-5deg) scale(.96)}100%{opacity:1;transform:rotate(0) scale(1)}}@keyframes splash-orbit{0%{opacity:0;transform:scale(.18) rotate(-100deg)}100%{opacity:1;transform:scale(1) rotate(0)}}@keyframes splash-content-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes splash-copy-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes splash-glow{0%,100%{transform:scale(.88);opacity:.48}50%{transform:scale(1.14);opacity:1}}
@media(max-width:650px){.opening-splash-mark{width:min(90vw,500px);max-height:280px}.opening-splash-content p{padding:0 1.1rem;line-height:1.45}.opening-splash::before{width:112vw;height:112vw}.opening-splash::after{width:83vw;height:83vw}}
@media(prefers-reduced-motion:reduce){.opening-splash *,.opening-splash::before,.opening-splash::after{animation:none!important}.opening-splash{transition:opacity .2s ease,visibility .2s ease}.opening-splash-content,.opening-splash-content p,.opening-splash-enter{opacity:1}}
