.world-hero{padding:clamp(28px,5vw,72px) 0 0;background:#f8f8f2;color:#273e37}
.world-intro{display:grid;grid-template-columns:minmax(0,1fr) clamp(170px,23vw,280px);align-items:end;gap:clamp(18px,5vw,84px);padding:12px 0 35px}
.world-eyebrow{font-size:11px;letter-spacing:.18em;color:#768d80;font-weight:700;margin:0 0 23px}
.world-intro h1{font-family:'Noto Serif SC','Songti SC',serif;font-size:clamp(42px,5vw,76px);font-weight:600;line-height:1.2;letter-spacing:.04em;margin:0 0 22px}
.world-intro h1 em{font-style:normal;color:#547e6e}
.world-intro__lead{max-width:660px;color:#647e71;font-size:clamp(14px,1.35vw,17px);line-height:1.9;margin:0}
.world-intro__character{margin:0;align-self:end}
.world-intro__character .cq-character__stage{border-radius:48% 48% 12px 12px}
.world-intro__character figcaption{display:block;padding:9px 0 0;font-size:11px;color:#456c5c}
.world-intro__character [data-character-status]{display:none!important}
.world-scene{position:relative;isolation:isolate;overflow:hidden;aspect-ratio:1672/941;border-radius:7px;border:1px solid #d9e1d5;background:#293e4d}
.world-scene__image{display:block;width:100%;height:100%;object-fit:contain}
.world-scene .scene-effects{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.world-scene .scene-effects__drawing{display:block;width:100%;height:100%}
.world-scene .scene-cloud{stroke:none;opacity:.7;transform-box:fill-box;transform-origin:center;animation:world-cloud-drift 12s ease-in-out infinite alternate}
.world-scene .scene-cloud--right{animation-duration:16s;animation-direction:alternate-reverse}
.world-scene .scene-cloud path+path{fill:none;stroke:#ffe8cb;stroke-width:3;stroke-linecap:round;opacity:.8}
.world-scene .scene-ripple{fill:none;stroke:#d6eee4;stroke-width:5;opacity:0;transform-box:fill-box;transform-origin:center;animation:world-water-ripple 3.1s ease-out infinite}
.world-scene .scene-ripple ellipse+ellipse{stroke-width:3;opacity:.7}
.world-scene .scene-ripple--late{animation-delay:-.9s}.world-scene .scene-ripple--later{animation-delay:-1.8s}.world-scene .scene-ripple--latest{animation-delay:-2.6s}
.world-scene .scene-current{fill:none;stroke:#a8d1c5;stroke-width:3;stroke-linecap:round;stroke-dasharray:4 15;opacity:.48;animation:world-water-current 2.5s linear infinite}
.world-scene .scene-character{position:absolute;left:53%;top:66%;width:clamp(24px,3.6%,58px);aspect-ratio:192/256;filter:drop-shadow(1px 2px 1px #1b1716aa);transform:translate(-50%,-88%)}
.world-scene .scene-character.is-occluded{opacity:0}
.world-scene .scene-character__shadow{position:absolute;left:23%;right:23%;bottom:1%;height:5%;border-radius:50%;background:#17171780;filter:blur(2px)}
.world-scene .scene-character__sprite{position:absolute;inset:0;display:block;background-image:url('../images/world/ciqiong-rigged-walk-turn-v3.png');background-repeat:no-repeat;background-size:4000% 100%;background-position:0 0}
.world-hotspots{position:absolute;inset:0;pointer-events:none}
.world-hotspot{position:absolute;transform:translate(-50%,-100%);display:inline-flex;align-items:center;gap:8px;padding:8px 13px 8px 9px;border-radius:22px;background:#fffdf1ee;color:#31554b;text-decoration:none;box-shadow:0 5px 16px #2c554042;white-space:nowrap;font-size:clamp(9px,1vw,13px);font-weight:700;letter-spacing:.04em;pointer-events:auto;transition:background .2s,scale .2s}
.world-hotspot::before{content:'';height:17px;width:17px;display:block;border-radius:50%;background:#d68d58;box-shadow:inset 0 0 0 5px #fff7e5,0 0 0 4px #d68d5840;flex:none}
.world-hotspot:hover,.world-hotspot:focus-visible{background:#fff;scale:1.06;outline:2px solid #d79b61}
.world-hotspot[data-active="true"]{background:#fff;outline:2px solid #b77549}
.world-detail-backdrop{position:fixed;inset:0;z-index:90;background:#172b2b9c}
.world-detail{position:fixed;z-index:91;inset:0 0 0 auto;width:min(470px,100vw);height:100dvh;overflow:auto;background:#f8f8f2;color:#28463b;box-shadow:-16px 0 40px #132b2940}
.world-detail[hidden],.world-detail-backdrop[hidden]{display:none}
.world-detail__inner{padding:clamp(72px,9vh,108px) clamp(24px,4vw,42px) 32px}
.world-detail__close{position:absolute;top:22px;right:24px;width:42px;height:42px;border:1px solid #c9d5ca;border-radius:50%;background:#fffdf6;color:#456b5b;font-size:26px;line-height:1;cursor:pointer}
.world-detail__eyebrow{margin:0 0 15px;color:#9b7654;font-size:11px;font-weight:700;letter-spacing:.16em}
.world-detail h2{margin:0 0 32px;font-family:'Noto Serif SC','Songti SC',serif;font-size:clamp(27px,4vw,37px);font-weight:600;line-height:1.4}
.world-detail__accordion{border-top:1px solid #d6dfd4}
.world-detail__item{border-bottom:1px solid #d6dfd4}
.world-detail__item summary{display:flex;align-items:center;gap:15px;min-height:69px;cursor:pointer;list-style:none;font-family:'Noto Serif SC','Songti SC',serif;font-size:18px}
.world-detail__item summary::-webkit-details-marker{display:none}
.world-detail__number{color:#a78563;font-family:var(--font-sans);font-size:11px;letter-spacing:.12em}
.world-detail__mark{margin-left:auto;color:#8aa496;font-family:var(--font-sans);font-size:20px;transition:transform .2s}
.world-detail__item[open] .world-detail__mark{transform:rotate(45deg)}
.world-detail__body{padding:0 0 22px 32px}
.world-detail__body p{margin:0 0 18px;color:#647e71;font-size:14px;line-height:1.85}
.world-detail__link{display:flex;justify-content:space-between;align-items:center;padding:13px 16px;background:#527b69;color:#fff;text-decoration:none;font-size:13px}
.world-detail__link:hover,.world-detail__link:focus-visible{background:#3d6654;outline:2px solid #b77549;outline-offset:2px}
.world-detail__foot{margin:36px 0 0;padding-top:18px;border-top:1px solid #d6dfd4;color:#8aa092;font-size:11px;letter-spacing:.08em}
.world-after{display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid #d5d8cc;min-height:80px;color:#81958b;font-size:11px;letter-spacing:.1em}
.world-after p{font-family:'Noto Serif SC',serif;color:#42685c;font-size:clamp(13px,1.3vw,17px);letter-spacing:0;margin:0}
@keyframes world-cloud-drift{from{transform:translateX(-30px);opacity:.4}to{transform:translateX(50px);opacity:.8}}
@keyframes world-water-ripple{0%{transform:scale(.5);opacity:0}30%{opacity:.78}100%{transform:scale(1.3);opacity:0}}
@keyframes world-water-current{to{stroke-dashoffset:-36}}
.world-scene .scene-effects.is-paused *{animation-play-state:paused!important}
@media(max-width:767px){.world-intro{grid-template-columns:minmax(0,1fr) 150px;gap:10px;padding-bottom:22px}.world-intro h1{font-size:clamp(34px,7vw,52px)}.world-intro__lead{font-size:13px;line-height:1.7}.world-after>span:last-child{display:none}.world-hotspot{width:34px;height:34px;padding:0;transform:translate(-50%,-50%);font-size:0;display:grid;place-items:center;border:2px solid #fff}.world-hotspot::before{width:14px;height:14px;box-shadow:inset 0 0 0 4px #fff7e5,0 0 0 3px #d68d5840}}
@media(max-width:520px){.world-intro{grid-template-columns:1fr}.world-intro__character{display:none}.world-after{min-height:55px}.world-after>span:first-child{display:none}.world-scene .scene-character{width:clamp(16px,3.6%,35px)}}
@media(prefers-reduced-motion:reduce){.world-scene .scene-effects *{animation:none!important}.world-scene .scene-cloud{opacity:.48}.world-scene .scene-ripple{opacity:.18}}

.world-destinations{display:none}
@media(max-width:767px){.world-destinations{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0}.world-destinations a{display:block;padding:9px 4px;text-align:center;border:1px solid #c9d5ca;border-radius:5px;color:#31574a;text-decoration:none;font-size:11px;background:#fffdf6}.world-destinations a:focus-visible{outline:2px solid #b17043}}
@media(max-width:430px){.world-destinations{grid-template-columns:repeat(2,minmax(0,1fr))}}
.world-destinations a[data-active="true"]{border-color:#b77549;background:#fff}
@media(prefers-reduced-motion:reduce){.world-detail__mark{transition:none}}
