/* 05 AXIS: the approved wordmark and the card's fine construction lines.
   Vector logo is inline: no image request, font substitution or loading gate. */
[data-yayoi-intro][hidden]{display:none!important}
/* First paint is white with an invisible logo. A CSS-only fallback always releases the page. */
html[data-intro-pending] [data-yayoi-intro][hidden]{display:block!important}
[data-yayoi-intro]{position:fixed;inset:0;z-index:1000;isolation:isolate;overflow:hidden;color:#525b64;animation:yayoiIntroFallback 4s linear both}
.intro-veil{position:absolute;inset:0;background:#fff;opacity:1}
.intro-drawing{position:absolute;inset:0;overflow:hidden;opacity:0;transform:translate3d(0,12px,0) scale(.975)}
.intro-lines{position:absolute;inset:0;width:100%;height:100%;opacity:.9}
.intro-lines path{vector-effect:non-scaling-stroke}
.intro-blue{stroke:#c3dff2}
.intro-lavender{stroke:#d9cff0}
.intro-mint{stroke:#d0e8e1}
.intro-pink{stroke:#eecfdf}
.intro-arc{position:absolute;right:3vw;top:-15vmin;width:68vmin;aspect-ratio:1;border:1px solid #eecfdf;border-radius:50%;opacity:.8;mask-image:linear-gradient(#000 0 57%,transparent 57% 92%,#000 92%);-webkit-mask-image:linear-gradient(#000 0 57%,transparent 57% 92%,#000 92%)}
.intro-signature{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:0 24px 1vh;opacity:0;transform:translate3d(0,12px,0) scale(.99);filter:blur(4px)}
.intro-logo{display:block;width:clamp(246px,37.8vw,493px);max-width:100%;height:auto;max-height:52vh;overflow:visible}
/* Start only after the white frame has painted, so parsing never consumes the reveal. */
[data-yayoi-intro][data-playing]{animation:yayoiIntroExit 3.2s linear both}
[data-playing] .intro-signature{animation:yayoiIntroSignature 3.2s cubic-bezier(.4,0,.2,1) both}
[data-playing] .intro-drawing{animation:yayoiIntroDrawing 3.2s cubic-bezier(.4,0,.2,1) both}
[data-playing] .intro-veil{animation:yayoiIntroVeil 3.2s cubic-bezier(.45,0,.2,1) both}
@keyframes yayoiIntroSignature{0%,10%{opacity:0;transform:translate3d(0,12px,0) scale(.99);filter:blur(4px)}46%{opacity:1;transform:translate3d(0,0,0) scale(1);filter:blur(0)}62%{opacity:1;transform:translate3d(0,-2px,0) scale(1);filter:blur(0)}95%,100%{opacity:0;transform:translate3d(0,-10px,0) scale(1.012);filter:blur(3px)}}
@keyframes yayoiIntroDrawing{0%,14%{opacity:0;transform:translate3d(0,12px,0) scale(.975)}52%{opacity:.85;transform:translate3d(0,0,0) scale(1)}64%{opacity:.8;transform:translate3d(0,-3px,0) scale(1.008)}100%{opacity:0;transform:translate3d(0,-10px,0) scale(1.035)}}
@keyframes yayoiIntroVeil{0%,55%{opacity:1}100%{opacity:0}}
@keyframes yayoiIntroExit{0%,99%{visibility:visible}100%{visibility:hidden;pointer-events:none}}
@keyframes yayoiIntroFallback{0%,99%{visibility:visible}100%{visibility:hidden;pointer-events:none}}
@media(max-width:720px){.intro-lines{inset:4% -25%;width:150%;height:92%}.intro-arc{right:-24vmin;top:3vh;width:98vmin}.intro-signature{padding-inline:24px}.intro-logo{width:clamp(246px,70.4vw,378px)}}
@media(max-height:450px) and (min-width:721px){.intro-logo{width:317px;max-height:60vh}}
@media(prefers-reduced-motion:reduce){[data-yayoi-intro],html[data-intro-pending] [data-yayoi-intro][hidden]{display:none!important;animation:none!important}[data-yayoi-intro] *{animation:none!important}}
