/* 1006v3 · Two exclusive openings; keep the approved SVG and complete 16:9 film. */
.echo-opening{position:fixed;inset:0;width:100%;height:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;overflow:hidden;color:#ecf2f5;background:#0c0f10;font:inherit;color-scheme:dark;opacity:1;transition:opacity .28s ease}
.echo-opening::backdrop{background:#0c0f10}
.echo-opening:focus{outline:none}
.echo-opening[open]{display:grid;place-items:center}
.echo-opening[data-variant=film][data-phase=entering]{opacity:0;pointer-events:none}
.echo-opening[data-variant=classic]{background:transparent;transition:none}
.echo-opening[data-variant=classic]::backdrop{background:transparent}
.opening-classic[hidden],.opening-film[hidden],.opening-guidance[hidden]{display:none}
.opening-classic{position:absolute;inset:0;display:grid;place-items:center;overflow:hidden}
.opening-ground{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 42%,#202a2d 0%,#14191b 38%,#101314 70%,#0c0f10 100%)}
.opening-ground::before,.opening-ground::after{content:"";position:absolute;inset:-45%;border-radius:50%;pointer-events:none;opacity:.24;background:radial-gradient(ellipse at center,transparent 35%,#a8c4cc14 42%,#adc2ca40 44%,#28323912 49%,transparent 57%);transform:translate3d(-10%,20%,0) rotate(-22deg) scale(1.25,.68)}
.opening-ground::after{opacity:.14;transform:translate3d(20%,-15%,0) rotate(-24deg) scale(1.25,.74)}
.opening-classic-center{position:relative;display:grid;justify-items:center;gap:clamp(24px,5vh,48px);width:100%;padding:70px 24px;transform:translateY(-2vh)}
.opening-mark{position:relative;display:block;width:min(56vw,650px,calc(65svh * 1.746));aspect-ratio:1240/710;margin:0;padding:0;border:0;border-radius:16px;background:none;color:inherit;transform-origin:center;isolation:isolate;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.opening-mark svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.opening-mark .opening-glyphs>g>g{transform-box:fill-box;transform-origin:50% 50%}
.opening-wave{position:absolute;width:max(160vw,220vh);aspect-ratio:1.7;border-radius:50%;opacity:0;pointer-events:none;background:radial-gradient(closest-side,transparent 74%,#bcdfe608 79%,#dcf5fc88 84%,#b8dfe830 86%,transparent 92%);transform:translate(-50%,-50%) scale(.025)}
.opening-tagline{margin:0;text-align:center;font-size:clamp(13px,1.22vw,18px);font-weight:300;line-height:1.9;letter-spacing:.18em;color:#c3cfd6}
.opening-tagline span{display:inline-block}
.opening-guidance{font-size:11px;letter-spacing:.18em;color:#94a4ab}
.echo-opening[data-variant=classic] .opening-foot{flex-direction:column;gap:12px}
.opening-top{position:absolute;z-index:1;inset:max(16px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) auto;display:flex;align-items:center;justify-content:space-between;gap:20px}
.opening-signature{font-size:11px;letter-spacing:.24em;color:#a8b5bc}
.opening-center{display:grid;place-items:center;width:100%;padding:76px 16px 86px}
.opening-video{display:block;width:min(94vw,1200px,calc((100svh - 162px) * 16 / 9));height:auto;aspect-ratio:16/9;object-fit:contain;background:#0c0f10;pointer-events:none}
.opening-foot{position:absolute;z-index:1;inset:auto 20px max(24px,env(safe-area-inset-bottom));display:flex;justify-content:center;align-items:center;gap:12px;min-height:44px}
.opening-skip,.opening-sound,.opening-play,.opening-preview-replay{min-height:44px;padding:0 20px;border:1px solid #dceef32b;border-radius:999px;background:#b3d0da0a;color:#e3edf2;font:inherit;font-size:13px;white-space:nowrap;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.opening-skip{min-width:72px;padding-inline:15px;font-size:12px;color:#c7d1d7}
.opening-sound{color:#bac8cf}
.opening-play span{padding-left:16px}
.opening-preview-replay[hidden],.opening-sound[hidden]{display:none}
.opening-mark:focus-visible,.opening-skip:focus-visible,.opening-sound:focus-visible,.opening-play:focus-visible,.opening-preview-replay:focus-visible{outline:2px solid #d4e9f2;outline-offset:4px}
.home-utility .opening-preview-replay{flex:none;min-height:44px;padding-inline:12px;background:#101719ed;font-size:12px}
html.opening-active{overflow:hidden}
html.opening-active .site-header .header-logo{visibility:hidden}
html.opening-active .home-logo-intro{display:none}
@media(hover:hover) and (pointer:fine){.opening-skip:hover,.opening-sound:hover,.opening-play:hover,.opening-preview-replay:hover{background:#d3e5ed1c}}
@media(max-width:600px){.opening-top{inset:max(12px,env(safe-area-inset-top)) 20px auto}.opening-signature{font-size:9px;letter-spacing:.18em}.opening-center{padding-inline:8px}.opening-foot{bottom:max(22px,env(safe-area-inset-bottom))}.home-utility .opening-preview-replay{padding-inline:8px;font-size:11px}#home .home-utility:has(.opening-preview-replay:not([hidden])){flex-wrap:wrap;gap:0 16px}}
@media(max-height:500px) and (orientation:landscape){.opening-top{inset:max(6px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) auto}.opening-center{padding:58px max(16px,env(safe-area-inset-left)) 64px}.opening-video{width:min(84vw,calc((100svh - 122px) * 16 / 9))}.opening-foot{bottom:max(8px,env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){.echo-opening{transition:none}}
@media(max-width:600px){.opening-mark{width:min(82vw,420px)}.opening-classic-center{padding-inline:20px;gap:30px;transform:translateY(-3vh)}.opening-tagline{font-size:13px;letter-spacing:.15em}.opening-tagline span{display:block}}
@media(max-height:500px) and (orientation:landscape){.opening-mark{width:min(42vw,calc(56svh * 1.746))}.opening-classic-center{gap:8px;padding:58px 20px 64px;transform:none}.opening-tagline{font-size:11px}.echo-opening[data-variant=classic] .opening-foot{flex-direction:row;gap:18px}.opening-guidance{font-size:10px}}
@media(prefers-reduced-motion:reduce){.opening-wave{display:none}.opening-ground::before,.opening-ground::after{opacity:.08}}
