/* ASOY 0.4.0 — actual separate elements, no autoplay before the second click. */
.asoy-intro{position:fixed;inset:0;z-index:9000;height:100vh;height:100dvh;isolation:isolate;overflow:hidden;background:#0b1217;color:#efdab0;font-family:'Malgun Gothic','Apple SD Gothic Neo',sans-serif}
.asoy-intro *{box-sizing:border-box}.asoy-intro[hidden]{display:none!important}.gate-canvas{display:block;position:absolute;inset:0;width:100%;height:100%;cursor:pointer}.gate-rest-backdrop{display:none}.gate-vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#03111b4f,transparent 18%,transparent 70%,#030c16b5),radial-gradient(ellipse at center,transparent 50%,#0a151b2c)}
.gate-brand{position:absolute;top:max(28px,env(safe-area-inset-top));left:35px;letter-spacing:.15em;font-family:Georgia,serif;color:#f0e4cd;text-shadow:0 1px 12px #000;pointer-events:none}.gate-brand span{font-size:13px}.gate-brand small{display:block;font:8px/2.1 Arial,sans-serif;letter-spacing:.25em;color:#e2d9c8}
.memorial-scrim{position:absolute;inset:0;background:linear-gradient(180deg,#06121a4f,#041018ba 44%,#041018b3 66%,#07121a75);opacity:0;visibility:hidden;transition:opacity .85s ease,visibility .85s;cursor:pointer}
.gate-dedication{position:absolute;left:50%;top:47%;transform:translate(-50%,-50%);width:min(85vw,970px);text-align:center;opacity:0;visibility:hidden;transition:opacity 1.0s ease,visibility 1.0s;filter:drop-shadow(0 3px 10px #0009);cursor:pointer}.dedication-title svg{width:100%;height:auto;display:block;overflow:visible}.dedication-eyebrow{font:10px/1.8 Arial,sans-serif;letter-spacing:.45em;color:#d6c39b;margin:22px 0 32px}.dedication-sub{font:italic 25px/1.8 Georgia,'Times New Roman',serif;color:#efdcb9;margin:1px 0 22px}.dedication-rule{height:1px;width:180px;margin:auto;background:linear-gradient(90deg,transparent,#dec188,transparent)}.dedication-rule.lower{width:120px;margin-top:25px}
[data-stage=dedication] .memorial-scrim,[data-stage=dedication] .gate-dedication{opacity:1;visibility:visible}
[data-stage=journey] .memorial-scrim,[data-stage=journey] .gate-dedication{opacity:0;visibility:hidden;transition:opacity .75s ease,visibility .75s}
.gate-entry-controls{position:absolute;left:50%;bottom:max(42px,env(safe-area-inset-bottom));transform:translateX(-50%);width:min(92%,460px);text-align:center;transition:opacity .5s ease,visibility .5s}.gate-step-number{font:9px/1.5 Arial,sans-serif;color:#eed7ac;letter-spacing:.36em;margin:0 0 12px;text-shadow:0 2px 9px #000}
.gate-enter{display:grid;grid-template-columns:1fr 26px;text-align:left;width:100%;padding:17px 24px;border:1px solid #e0c49099;background:#09151fd6;color:#ead1a6;backdrop-filter:blur(12px);cursor:pointer;box-shadow:0 10px 30px #0002}.gate-enter:hover{background:#17232c;border-color:#f1d9ab}.gate-enter:disabled{opacity:.6;cursor:wait}.gate-button-main{font-size:14px;letter-spacing:.09em;line-height:1.8}.gate-button-hint{grid-row:2;font-size:10px;line-height:1.6;color:#bdb5a6;margin-top:3px}.gate-button-arrow{grid-column:2;grid-row:1/3;align-self:center;justify-self:end;font:24px Georgia,serif}
[data-stage=journey] .gate-entry-controls{opacity:0;visibility:hidden;pointer-events:none}.gate-controls{position:absolute;top:max(25px,env(safe-area-inset-top));right:max(27px,env(safe-area-inset-right));display:flex;gap:8px;z-index:8}.gate-controls button{font:11px/1.5 'Malgun Gothic',sans-serif;background:#09121cad;backdrop-filter:blur(10px);border:1px solid #d1b67b66;color:#f2e4c9;padding:10px 14px;cursor:pointer}.gate-controls button:hover{background:#1c2934;border-color:#e4c786}.asoy-intro button:focus-visible{outline:2px solid #f4dca2;outline-offset:4px}.asoy-intro button[hidden]{display:none!important}
.intro-poster{position:absolute;inset:0;opacity:0;background:#070d15;pointer-events:none}.intro-poster>img,.intro-poster>video{height:100%;width:100%;object-fit:cover;object-position:70% center}.intro-poster-shade{position:absolute;inset:0;background:linear-gradient(90deg,#040b14ba 0,#06111a8c 44%,#05101914 85%),linear-gradient(0deg,#03071188,transparent 36%)}
.intro-title-wrap{position:absolute;left:5%;top:50%;transform:translateY(-44%);width:min(63vw,940px);text-align:center;pointer-events:none;filter:drop-shadow(0 3px 7px #0009);opacity:0}.intro-calligraphy{display:block;width:100%;height:auto;overflow:visible}.intro-eyebrow{font-size:10px;letter-spacing:.38em;color:#edddb7;opacity:0;margin:0 0 0 8%;font-weight:500}.intro-korean{width:42%;margin:-1.8% auto 0;opacity:0}.intro-korean svg{display:block;width:100%;height:auto}.intro-title-glint{position:absolute;width:42px;height:42px;opacity:0;background:radial-gradient(ellipse,#fffce2,transparent 62%);filter:drop-shadow(0 0 8px #ffda90)}.intro-title-glint:before,.intro-title-glint:after{content:"";position:absolute;inset:47% 0;background:linear-gradient(90deg,transparent,#fff8d5,transparent)}.intro-title-glint:after{transform:rotate(90deg);inset:49% -15%}.glint-a{left:26%;top:6%}.glint-b{left:59%;top:42%}.glint-c{left:80%;top:66%}.intro-global-ray{position:absolute;inset:-50%;pointer-events:none;background:linear-gradient(115deg,transparent 42%,#ffde8300 46%,#fff0b215 49%,#fff0c123 50%,#fff0b20a 51%,transparent 54%);mix-blend-mode:screen;opacity:0}
.intro-caption{position:absolute;left:5%;bottom:32px;font-size:10px;letter-spacing:.15em;color:#eddfc3;pointer-events:none}.intro-progress{position:absolute;bottom:0;left:0;width:100%;height:2px;background:#ead19b0a}.intro-progress span{display:block;width:100%;height:100%;background:linear-gradient(90deg,#66512d,#eed6a6);transform-origin:0 50%;transform:scaleX(0)}
body.intro-playing{overflow:hidden!important}body.intro-playing #main *,body.intro-playing .topbar *{animation-play-state:paused!important}
.intro-preview-page{margin:0;background:#080f18;color:#e3d4b6;font-family:'Malgun Gothic',sans-serif}.intro-preview-shell{min-height:100svh;display:grid;place-items:center;padding:35px}.intro-preview-card{max-width:740px;text-align:center;line-height:1.9}.intro-preview-card h1{font-size:30px;font-weight:400}.intro-preview-card img{display:block;width:100%;margin:25px auto;border:1px solid #cab37b44}.intro-preview-card button,.intro-preview-card a{display:inline-block;background:#d6ba81;color:#101b24;border:0;padding:13px 20px;cursor:pointer;text-decoration:none;margin:8px;font:14px 'Malgun Gothic',sans-serif}.intro-preview-card small{display:block;color:#afad9f;margin:22px 0}.intro-preview-card code{color:#e3bd74}.intro-settings{border:1px solid #c9a66955;padding:22px;margin:24px 0}.intro-settings legend{padding:0 10px;color:#d9ba79}.intro-settings .form-note{margin:16px 0 0}.intro-replay{white-space:nowrap}
@media(max-width:750px){.gate-brand{left:19px;top:21px}.gate-brand span{font-size:10px;letter-spacing:.09em}.gate-brand small{font-size:7px}.gate-controls{top:auto;bottom:max(16px,env(safe-area-inset-bottom));right:14px;left:14px;justify-content:center;gap:6px}.gate-controls button{padding:9px 10px;font-size:10px}.gate-entry-controls{bottom:86px;width:calc(100% - 36px);max-width:380px}.gate-enter{padding:14px 19px}.gate-button-main{font-size:13px}.gate-step-number{font-size:8px}.gate-dedication{top:46%;width:91%}.dedication-eyebrow{font-size:8px;letter-spacing:.3em;margin-bottom:27px}.dedication-sub{font-size:16px;line-height:1.8;margin-top:10px}.dedication-rule{width:120px}.dedication-rule.lower{width:80px}.intro-title-wrap{left:4%;width:92%;top:46%;transform:translateY(-35%)}.intro-poster-shade{background:linear-gradient(180deg,#050c155c,#050b1694 58%,#040a149e)}.intro-eyebrow{font-size:8px;letter-spacing:.26em}.intro-korean{width:46%;margin-top:2%}.intro-title-glint{width:25px;height:25px}.intro-caption{bottom:68px;left:5%;font-size:9px}}
@media(max-height:500px) and (min-width:751px){.gate-entry-controls{bottom:16px;width:330px}.gate-enter{padding:8px 14px}.gate-step-number{display:none}.gate-dedication{top:45%;width:55%}.dedication-sub{font-size:17px}.dedication-eyebrow{margin:9px 0 10px}.dedication-rule.lower{margin-top:10px}}
@media(prefers-reduced-motion:reduce){.gate-dedication,.memorial-scrim,.gate-entry-controls{transition:opacity .2s}.intro-global-ray,.intro-title-glint{display:none!important}}

/* 1.4.2: disable smooth scroll / anchoring only during the entrance handoff. */
html.asoy-home-landing{scroll-behavior:auto!important;overflow-anchor:none}
html.asoy-home-landing body{overflow-anchor:none}

/* 1.4.7: the persistent site header owns identity and entrance controls. */
body.shared-header-ready .asoy-intro .gate-brand,
body.shared-header-ready .asoy-intro .gate-controls{display:none!important}
