.site-opening{display:none}
html.opening-active,html.opening-active body{overflow:hidden}
.opening-active .site-opening{display:grid;place-items:center;position:fixed;inset:0;z-index:100;min-height:100svh;background:#0d0f12;animation:opening-curtain .55s 1.8s ease-in-out both}
.opening-composition{width:calc(100% - 48px);max-width:1120px;text-align:center;animation:opening-title-out .45s 1.65s ease-in-out both}
.opening-title{font-family:'Barlow Condensed','Arial Narrow',Impact,sans-serif;font-weight:800;font-size:min(14vw,8.5rem);letter-spacing:-.015em;line-height:.95}
.opening-line{display:block;overflow:hidden;padding:0 .05em .09em;white-space:nowrap}
.opening-line>span{display:inline-block;animation:opening-title-in .75s .08s cubic-bezier(.16,1,.3,1) both}
.opening-line+.opening-line{color:#d1d7dd}
.opening-line+.opening-line>span{animation-delay:.27s}
.opening-stop{color:#a8d4e4}
.opening-rule{width:36%;height:1px;margin:30px auto 0;background:linear-gradient(90deg,transparent,#a8d4e4,transparent);transform-origin:center;animation:opening-rule-in .9s .35s ease-out both}
.opening-skip{position:absolute;right:max(24px,env(safe-area-inset-right));bottom:max(24px,env(safe-area-inset-bottom));min-height:44px;padding:8px 18px;border:1px solid #586473;background:transparent;color:#d1d7dd;font-size:.875rem}
.opening-skip:hover{border-color:#a8d4e4;color:#f3f4f5}
@keyframes opening-title-in{from{opacity:0;transform:translateY(115%)}to{opacity:1;transform:translateY(0)}}
@keyframes opening-rule-in{from{opacity:0;transform:scaleX(.1)}to{opacity:1;transform:scaleX(1)}}
@keyframes opening-title-out{from{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.985)}}
@keyframes opening-curtain{from{opacity:1}to{opacity:0;visibility:hidden}}
@media(max-width:760px){.opening-composition{width:calc(100% - 36px)}.opening-rule{width:50%;margin-top:24px}.opening-skip{right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){.opening-active .site-opening{display:none;animation:none}html.opening-active,html.opening-active body{overflow:auto}.opening-composition,.opening-line>span,.opening-rule{animation:none}}
