/* v39: 266 strokes (was 392); glow is added only after the drawing finishes, not repainted every frame. */
/* Azem: filigree → seven empty orbits → central seal → warm filled heart. */
#azem-intro:not([open]){display:none}
#azem-intro{position:fixed;inset:0;width:100%;height:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;border-radius:0;overflow:hidden;background:radial-gradient(ellipse at 50% 48%,#182238 0%,#080e1c 40%,#03060d 76%);color:#f5dba2;z-index:10000;box-sizing:border-box;isolation:isolate}
#azem-intro::backdrop{background:#03060d}
#azem-intro:after{content:'';position:absolute;inset:18px;pointer-events:none;border:1px solid #d5b7771b;border-radius:8px}
.azem-stage{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:60px 18px 42px;box-sizing:border-box}
.azem-eyebrow{margin:0;color:#c5ae7e;font:10px Arial,sans-serif;letter-spacing:5px;text-align:center}
.azem-sigil{display:block;flex-shrink:1;min-height:0;width:min(86vw,70vh,660px);width:min(86vw,70svh,660px);height:auto;aspect-ratio:1;color:#f4d48b;overflow:visible;opacity:0;will-change:opacity}
.azem-caption{display:flex;align-items:center;justify-content:center;gap:18px;margin:3px 0 0;color:#ddc79e;font-size:13px;font-weight:400;letter-spacing:4px;line-height:1.8;text-align:center}
.azem-caption:before,.azem-caption:after{content:'';display:block;width:32px;height:1px;background:linear-gradient(90deg,transparent,#d2b57470)}
.azem-caption:after{transform:rotate(180deg)}
.azem-subtitle{margin:0;color:#738394;font:9px Arial,sans-serif;letter-spacing:3.6px;line-height:2}
#azem-skip{position:absolute;right:max(28px,env(safe-area-inset-right));top:max(24px,env(safe-area-inset-top));z-index:3;display:flex;align-items:center;gap:12px;min-height:42px;padding:9px 15px;border:1px solid #ad936949;border-radius:24px;color:#dbcaad;background:#0d1729cc;font-size:12px;letter-spacing:1px;cursor:pointer}
#azem-skip:hover{border-color:#e4cd9b;color:#fff3d6;background:#192438}
#azem-skip:focus-visible,.azem-replay:focus-visible{outline:2px solid #e4cd9b;outline-offset:4px}
#azem-skip:after{content:'→';color:#e6cb8c}
.azem-replay{margin:0 auto 25px;padding:7px 14px;border:1px solid #9f864f5c;border-radius:20px;background:transparent;color:#c7b283;font-size:11px;letter-spacing:1px;cursor:pointer}
.azem-replay:hover{color:#fff0c7;border-color:#b6a072}
.azem-trace{stroke-dasharray:1;stroke-dashoffset:1;opacity:0}
.azem-grain,.azem-core-fill,.azem-core-halo,.azem-core-edge{opacity:0}
.azem-core-fill,.azem-core-halo{transform-box:fill-box;transform-origin:center}
.is-playing .azem-sigil{animation:azem-arrive .4s ease-out both,azem-aureole 1.1s ease-out 4.55s forwards}
.is-playing .azem-trace{animation:azem-draw var(--draw-duration,.8s) cubic-bezier(.3,.05,.2,1) var(--draw-delay,0s) forwards}
.is-playing .azem-grain{animation:azem-spark .45s ease-out var(--draw-delay,.7s) forwards}
.is-playing .azem-core-fill{animation:azem-fill .64s cubic-bezier(.2,.65,.3,1) 4.55s forwards}
.is-playing .azem-core-halo{animation:azem-bloom 1.1s ease-out 4.55s forwards}
.is-playing .azem-core-edge{animation:azem-spark .55s ease-out 4.55s forwards}
#azem-intro.is-leaving{opacity:0;transition:opacity .45s ease}
#azem-intro.is-leaving::backdrop{background:transparent;transition:background .45s ease}
.azem-still .azem-sigil{filter:drop-shadow(0 0 2.5px #ebc57570)}.azem-still .azem-sigil,.azem-still .azem-grain,.azem-still .azem-core-fill,.azem-still .azem-core-edge{animation:none!important;opacity:1;transform:none}
.azem-still .azem-core-halo{animation:none!important;opacity:.5;transform:none}
.azem-still .azem-trace{animation:none!important;stroke-dashoffset:0;opacity:1}
body.azem-intro-active{overflow:hidden}
body.azem-intro-active .aurora,body.azem-intro-active .particle,body.azem-intro-active .parallax>use{animation-play-state:paused}
@keyframes azem-arrive{from{opacity:0}to{opacity:1}}
@keyframes azem-draw{0%{opacity:1;stroke-dashoffset:1}100%{opacity:1;stroke-dashoffset:0}}
@keyframes azem-spark{from{opacity:0}to{opacity:1}}
@keyframes azem-fill{0%{opacity:0;transform:scale(.12)}40%{opacity:.65}100%{opacity:1;transform:scale(1)}}
@keyframes azem-bloom{0%{opacity:0;transform:scale(.5)}60%{opacity:1;transform:scale(1.12)}100%{opacity:.58;transform:scale(1)}}
@keyframes azem-aureole{0%{filter:drop-shadow(0 0 0 #ebc57500)}65%{filter:drop-shadow(0 0 4px #f7d88990)}100%{filter:drop-shadow(0 0 2.5px #ebc57570)}}
@media(max-width:600px){.azem-stage{padding:65px 10px 44px;gap:15px}.azem-sigil{width:min(94vw,67svh)}.azem-eyebrow{font-size:8px;letter-spacing:3.5px}.azem-caption{font-size:12px;letter-spacing:2px;gap:12px}.azem-caption:before,.azem-caption:after{width:22px}.azem-subtitle{font-size:8px;letter-spacing:2.5px}#azem-skip{top:max(18px,env(safe-area-inset-top));right:max(18px,env(safe-area-inset-right));font-size:11px}#azem-intro:after{inset:10px}}
@media(max-height:520px){.azem-stage{gap:4px;padding:18px}.azem-sigil{width:min(63vh,520px)}.azem-caption{font-size:11px}.azem-eyebrow{font-size:8px}.azem-subtitle{display:none}}
@media(prefers-reduced-motion:reduce){#azem-intro.is-leaving,#azem-intro.is-leaving::backdrop{transition:none}}
