/* Welcoming ensemble, contextual companion, and unclipped finale. */
.hero-welcome{width:min(640px,100%);margin:0 auto 33px}.welcome-crew{height:135px;display:flex;align-items:flex-end;justify-content:center;gap:5px;padding:9px 8px 25px}.welcome-member{position:relative;background:none;border:0;padding:0;width:74px;height:74px;cursor:pointer;flex-shrink:0;transform-origin:50% 85%;animation:welcome-entrance .9s cubic-bezier(.16,1,.3,1) both;animation-delay:calc(var(--order)*75ms)}.welcome-member .crew-art{border-radius:0;transition:transform .5s cubic-bezier(.16,1,.3,1),filter .3s}.welcome-bokbok{width:102px;height:102px;margin:0 3px}.welcome-member:hover .crew-art,.welcome-member:focus-visible .crew-art{transform:translateY(-9px) rotate(-4deg)}.welcome-member[aria-pressed="true"] .crew-art{filter:drop-shadow(0 4px 8px #b3923220)}.welcome-name{position:absolute;left:50%;bottom:-21px;translate:-50% 0;font-size:10px;color:#a4a098;opacity:.6;transition:opacity .25s}.welcome-member:hover .welcome-name,.welcome-member[aria-pressed="true"] .welcome-name{opacity:1;color:#756653}.welcome-message{min-height:23px;font-size:12px;color:#a39c90;margin:16px 0 0;line-height:1.5}.welcome-message b{font-weight:500;color:#84725d}.hero{padding-top:24px}.finale-stage{height:clamp(960px,112svh,1150px)}.finale-copy{top:18%}.kinetic-crew .character-label{bottom:-25px;opacity:1!important}.character-label b{color:#b4a98c}.finale-bottomline{bottom:23px}.crew-companion{position:fixed;right:22px;bottom:22px;z-index:45;max-width:300px;--companion-color:#f5df9c;--scroll-lean:0deg;pointer-events:none}.crew-companion[hidden],.crew-reopen[hidden],.companion-panel[hidden]{display:none!important}.companion-dock{position:relative;display:flex;align-items:center;justify-content:flex-end;gap:10px;min-height:91px;pointer-events:none}.companion-main{width:76px;height:76px;padding:0;border:0;background:none;cursor:pointer;z-index:3;pointer-events:auto;transform:rotate(var(--scroll-lean));transition:transform .35s cubic-bezier(.16,1,.3,1);filter:drop-shadow(0 5px 9px #45352c13)}.companion-main .crew-art{border-radius:0;transition:transform .35s}.companion-main:hover .crew-art,.companion-main:focus-visible .crew-art{transform:translateY(-5px)}.companion-main:focus-visible,.companion-friend:focus-visible{outline:2px solid #b6a27a;outline-offset:6px;border-radius:30px}.companion-label{font-size:10px;line-height:1.4;pointer-events:none;background:#fcfcfce8;border:1px solid #e6e2d9;border-radius:10px;padding:7px 10px;color:#9b9180;min-width:90px;box-shadow:0 3px 12px #00000003;backdrop-filter:blur(12px)}.companion-label strong{display:block;font-size:11px;font-weight:500;color:#746652}.companion-friend{position:absolute;width:37px;height:37px;background:none;border:0;padding:0;pointer-events:auto;cursor:pointer;opacity:.78;transition:transform .6s cubic-bezier(.16,1,.3,1),opacity .3s;z-index:1}.friend-first{left:14px;bottom:11px;transform:rotate(-12deg)}.friend-second{left:42px;bottom:36px;transform:rotate(-6deg)}.companion-friend:hover{opacity:1;transform:translateY(-5px) rotate(0)}.companion-dock{padding-left:80px}.is-travelling .friend-first{transform:translate(-5px,2px) rotate(-17deg)}.is-travelling .friend-second{transform:translate(-3px,3px) rotate(-11deg)}.companion-panel{width:282px;margin:0 0 10px 0;border:1px solid #e8dfce;background:#fffdf7f5;backdrop-filter:blur(18px);border-radius:22px;padding:17px 18px 13px;pointer-events:auto;box-shadow:0 12px 50px #5140250d;animation:companion-open .35s cubic-bezier(.16,1,.3,1)}.companion-panel-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:9px}.companion-context{font-size:8px;letter-spacing:1.1px;color:#aa9775}.companion-close{border:0;background:none;color:#b9a78a;font-size:21px;width:25px;height:25px;padding:0;cursor:pointer;line-height:1}.companion-title{font-size:15px;font-weight:500;line-height:1.4;letter-spacing:-.3px;color:#6c593a;display:block}.companion-text{font-size:12px;line-height:1.6;color:#a29378;margin:9px 0 13px}.companion-links{display:flex;gap:8px}.companion-links button{font-size:10px;padding:9px 12px;border:1px solid #e4d8c3;border-radius:999px;background:transparent;color:#9b825c;cursor:pointer}.companion-links .companion-action{background:#51402c;color:#fff7e5;border-color:#51402c}.companion-dismiss{font-size:9px;color:#baab91;background:none;border:0;border-bottom:1px solid #e8e0d0;padding:3px 0;margin-top:13px;cursor:pointer}.crew-reopen{position:fixed;right:18px;bottom:16px;z-index:45;border:1px solid #e0d8c9;background:#fffdf6ee;color:#a38d69;font-size:10px;padding:8px 12px;border-radius:999px;cursor:pointer}.crew-guided-focus{outline:2px solid #c2aa7d;outline-offset:7px;transition:outline-color .3s}@keyframes welcome-entrance{0%{opacity:0;transform:translateY(26px) rotate(-9deg) scale(.78)}65%{opacity:1;transform:translateY(-6px) rotate(3deg) scale(1.035)}100%{opacity:1;transform:translateY(0) rotate(0) scale(1)}}@keyframes companion-open{from{opacity:0;transform:translateY(9px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@media(min-width:1500px){.crew-companion{right:32px;bottom:28px}.hero{padding-top:36px}}@media(max-width:1100px){.crew-companion{right:13px;bottom:15px}.companion-label{display:none}.companion-dock{padding-left:58px}.companion-main{width:65px;height:65px}.companion-friend{width:32px;height:32px}.friend-first{left:0;bottom:12px}.friend-second{left:27px;bottom:32px}.companion-panel{margin-left:auto}}@media(max-width:650px){.hero{padding-top:18px}.hero-welcome{margin-bottom:27px}.welcome-crew{height:100px;gap:0;padding:8px 0 20px}.welcome-member{width:12%;height:auto;aspect-ratio:1}.welcome-bokbok{width:18%;height:auto;margin:0 2px}.welcome-name{font-size:8px;bottom:-15px}.welcome-message{font-size:10px;max-width:300px;min-height:30px;margin:15px auto 0;line-height:1.6}.welcome-message b{display:block}.finale-stage{height:880px}.finale-copy{top:22%}.finale-role{min-height:115px}.finale-bottomline{bottom:15px}.kinetic-crew .character-label{bottom:-22px}.character-label b{font-size:8px}.character-label small{font-size:6px}.crew-companion{right:12px;bottom:max(14px,env(safe-area-inset-bottom));max-width:calc(100vw - 30px)}.companion-dock{min-height:67px;padding-left:42px}.companion-main{width:55px;height:55px}.companion-friend{width:26px;height:26px}.friend-first{left:0;bottom:4px}.friend-second{left:19px;bottom:23px}.companion-panel{width:270px;max-width:calc(100vw - 30px);margin-left:auto;padding:16px}.companion-title{font-size:14px}.companion-text{font-size:12px}.companion-links button{min-height:37px}.companion-close{width:30px;height:30px}.crew-reopen{font-size:9px;right:12px}.drag-hint{max-width:160px}}
@media(prefers-reduced-motion:reduce){.welcome-member,.companion-panel{animation:none!important}.welcome-member .crew-art,.companion-main,.companion-main .crew-art,.companion-friend{transition:none!important}.companion-main{transform:none!important}.is-travelling .companion-friend{transform:none}.crew-guided-focus{transition:none}}
