.identity-mark{width:36px;height:36px;flex:none;align-self:center}
.identity-mark path,.opening-mark path{fill:none;stroke:#000;stroke-width:48;stroke-linecap:butt;stroke-linejoin:miter;vector-effect:none}
.identity{gap:15px}
.opening{display:none;position:fixed;inset:0;z-index:100;background:transparent;isolation:isolate}
.opening-active .opening{display:block;animation:opening-failsafe 1ms 4s forwards}
.opening-sheet{position:absolute;inset:0;background:#fff;transition:opacity 220ms linear}
.opening-mark{position:fixed;width:min(43vw,390px);height:min(43vw,390px);left:50%;top:45%;transform:translate(-50%,-50%)}
.opening-active .mark-outer{stroke-dasharray:1;stroke-dashoffset:1;animation:mark-draw 780ms cubic-bezier(.33,0,.17,1) 60ms forwards}
.opening-active .mark-inner{stroke-dasharray:1;stroke-dashoffset:1;animation:mark-draw 720ms cubic-bezier(.33,0,.17,1) 220ms forwards}
.opening-active .mark-beam{stroke-dasharray:1;stroke-dashoffset:1;animation:mark-draw 440ms cubic-bezier(.33,0,.17,1) 470ms forwards}
.opening-active .identity-mark path{animation:none;stroke-dasharray:none;stroke-dashoffset:0}
.opening-caption{position:absolute;top:calc(45% + min(21.5vw,195px) + 22px);left:24px;right:24px;text-align:center;font-size:11px;letter-spacing:.4px}
.opening-skip{position:absolute;right:36px;bottom:30px;padding:12px 0;font-size:11px;text-decoration:underline;text-underline-offset:4px;min-height:44px}
.opening-departing .opening-sheet,.opening-departing .opening-caption,.opening-departing .opening-skip{opacity:0;pointer-events:none}
.opening-caption,.opening-skip{transition:opacity 160ms linear}
.replay-opening{font-size:inherit;padding:0;text-decoration:underline;text-underline-offset:4px}
@keyframes mark-draw{to{stroke-dashoffset:0}}
@keyframes opening-failsafe{to{visibility:hidden;pointer-events:none}}
@media(max-width:760px){.identity-mark{width:31px;height:31px}.identity{gap:9px}.opening-mark{width:260px;height:260px}.opening-caption{top:calc(45% + 147px);font-size:10px}.opening-skip{right:22px;bottom:22px}}
@media(prefers-reduced-motion:reduce){.opening-active .opening{display:none}.replay-opening{display:none}.opening-mark path{animation:none!important;stroke-dashoffset:0}}
@media print{.opening,.replay-opening{display:none!important}}
.opening-active .identity-mark{visibility:hidden}
#page-title:focus{outline:none}

.entry-doors{display:none}.door-entry .opening-sheet,.door-entry .opening-mark,.door-entry .opening-caption{display:none}.door-entry .entry-doors{display:block;position:absolute;inset:0;perspective:1100px}.entry-door{position:absolute;top:0;bottom:0;width:50%;background:#fff;border:1px solid #000;backface-visibility:hidden}.entry-door.left{left:0;transform-origin:left center}.entry-door.right{right:0;transform-origin:right center}.entry-door:after{content:"";position:absolute;top:48%;width:3px;height:35px;background:#000}.entry-door.left:after{right:20px}.entry-door.right:after{left:20px}.door-entry.opening-active .entry-door.left{animation:door-left 1050ms cubic-bezier(.2,.6,.25,1) 100ms forwards}.door-entry.opening-active .entry-door.right{animation:door-right 1050ms cubic-bezier(.2,.6,.25,1) 100ms forwards}@keyframes door-left{to{transform:rotateY(-105deg)}}@keyframes door-right{to{transform:rotateY(105deg)}}
