/* CSS-only opening: content stays accessible even without JavaScript. */
.opening{position:fixed;inset:0;z-index:100;background:#fff;display:grid;place-items:center;pointer-events:none;animation:opening-out .45s ease 1.3s both}
.opening img{width:clamp(170px,42vw,280px);height:auto;object-fit:contain;opacity:0;animation:opening-logo .8s ease both}
@keyframes opening-logo{from{opacity:0}to{opacity:1}}
@keyframes opening-out{from{opacity:1;visibility:visible}to{opacity:0;visibility:hidden}}
/* Never cover a focused link, an anchor destination, or a printed page. */
body:focus-within .opening,html:has(:target) .opening{display:none}
@media(prefers-reduced-motion:reduce){.opening{display:none}}
@media print{.opening{display:none}}
