/* Shared first-visit opening. Hidden unless the early script opts in. */
.ms-opening{display:none;position:fixed;inset:0 0 auto;height:100%;height:100dvh;z-index:10000;overflow:hidden;pointer-events:none;margin:0}
.ms-opening-pending .ms-opening{display:block;pointer-events:auto}
html.ms-opening-pending,html.ms-opening-pending body{overflow:hidden}
.ms-opening-pending body>:not(.ms-opening),.ms-opening-pending body>:not(.ms-opening) *,.ms-opening-pending body>:not(.ms-opening) *::before,.ms-opening-pending body>:not(.ms-opening) *::after{animation-play-state:paused!important}
.ms-opening-white,.ms-opening-wipe{position:absolute;inset:0}
.ms-opening-white{display:grid;place-items:center;background:#fff}
.ms-opening-logo{display:block;width:min(500px,72vw);height:auto;object-fit:contain;opacity:0}
.ms-opening-wipe{background:#007b42;transform:translateX(-100%)}
.ms-opening-brand{display:flex;flex-direction:column;align-items:center;gap:24px;opacity:0}
.ms-opening-mark{display:block;width:min(400px,66vw);height:auto;aspect-ratio:1770 / 892;overflow:visible}
.ms-opening-name{display:block;width:min(360px,70vw);height:auto;object-fit:contain}
.ms-opening-positioned .ms-opening-logo,.ms-opening-positioned .ms-opening-brand{position:absolute;left:50%;top:var(--ms-opening-center-y);transform:translate(-50%,-50%)}
.ms-opening-glow,.ms-opening-core{fill:none;stroke-linecap:round;stroke-linejoin:round;opacity:0}
.ms-opening-glow{stroke:#bdffbd;stroke-width:24;filter:drop-shadow(0 0 10px #acffa6)}
.ms-opening-core{stroke:#fff;stroke-width:8}
@media(max-width:680px){
 .ms-opening-brand{gap:16px;width:min(360px,70vw)}
 .ms-opening-mark{width:min(240px,52vw)}
}
@media(prefers-reduced-motion:reduce){.ms-opening{display:none!important}}
