/* v24: local variable typography, photo-led arrival, and clear destinations. */
@font-face{font-family:'ZRZ Sans';src:url('assets/fonts/noto-sans-sc.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:'Manrope';src:url('assets/fonts/manrope.woff2') format('woff2');font-style:normal;font-weight:200 800;font-display:swap}
:root{--sans:'Manrope','ZRZ Sans','PingFang SC',sans-serif;--serif:var(--sans)}
body{font-family:var(--sans);-webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:var(--sans);font-weight:650;letter-spacing:-.035em}
button,input,select{font-family:var(--sans)}
.site-header{max-width:1344px;padding:24px 48px;gap:24px}
.wordmark strong{font-family:var(--sans);font-weight:750;letter-spacing:-.04em}
.site-header .header-links{gap:8px}
.site-header .header-links a{font:650 16px/1.4 var(--sans);padding:13px 14px;border-radius:8px;text-decoration:none;border:1px solid #627d7545;box-shadow:0 2px 14px #427a7310;transition:background .25s,box-shadow .25s,transform .25s}
.site-header .header-links a:hover,.site-header .header-links a:focus-visible{box-shadow:0 0 0 1px #91bdae,0 0 23px #65b6ad55;transform:translateY(-2px)}
.site-header .header-links a::after{display:none}
.site-header .header-links a[aria-current=page]{box-shadow:0 0 22px #90c1b936}
.index .site-header .header-links a{border-color:#98bcd246;color:#ece4db}
.index .site-header .header-links a[aria-current=page]{background:#e0c8b2;color:#111f30;box-shadow:0 0 25px #e0c8b23d}
.nav-cue{font-size:1em;opacity:.85}
/* One clear cue per link: no border + text-decoration double rule. */
a.text-link,a.inline-link,.origin-links a,.selected-photo-links a,.life-links a,.footer-nav a,.chapter-jumps a,.hero-film-links a,.next-page,.story-destinations a,.signature-tabs a,.signature-shelf a{ text-decoration:none!important }
a.text-link,a.inline-link,.origin-links a,.selected-photo-links a,.life-links a{border-bottom:0!important;box-shadow:none;font-size:17px;font-weight:650}
a.text-link::before,a.text-link::after,a.inline-link::before,a.inline-link::after,.origin-links a::before{border-bottom:0}
a.text-link:hover,a.inline-link:hover,.origin-links a:hover{text-shadow:0 0 20px #65b0a879}
.glow-link,.index .hero-actions>.text-link,.index .primary-link{display:inline-flex;align-items:center;justify-content:space-between;gap:18px;min-height:54px;padding:13px 21px;border-radius:8px;border:1px solid #c5e6e775!important;background:#d9c3ac;color:#132236;font:650 18px/1.5 var(--sans);text-decoration:none!important;box-shadow:0 0 27px #cfb49438,inset 0 0 12px #fff2;transition:box-shadow .25s,transform .25s,background .25s}
.glow-link span{font-size:23px}
.glow-link:hover,.glow-link:focus-visible,.index .hero-actions>a:hover{box-shadow:0 0 32px #90c4d866,0 0 0 1px #d8eced;transform:translateY(-3px)}
.glow-link.secondary,.index .hero-actions>.text-link{background:#162b3ddd;color:#e9f2f3;border-color:#8dc5d17d!important;box-shadow:0 0 22px #70bbd02b,inset 0 0 15px #6ba7be0a}
.index .hero-actions>.text-link::after{display:none}
.index .hero-actions>.text-link[href='#films']{display:none}
.index .primary-link.douyin-primary{flex-direction:column;align-items:start;gap:0;min-height:64px;font-size:17px}
.index .douyin-primary span{font-size:12px;line-height:1.7}
.chapter-jumps a,.origin-links a{font:650 16px/1.5 var(--sans);padding:12px 15px!important;border:1px solid #738b8870!important;border-radius:7px;background:#ffffff08;min-height:46px}
.origin-links a{color:#22574f;background:#dce9e2}
.chapter-jumps a:hover,.origin-links a:hover{box-shadow:0 0 22px #79afa343}
.next-page span{font-size:clamp(32px,4.4vw,64px);font-weight:650}
.story-destinations h3{font-size:29px;font-weight:650}.story-destinations a{box-shadow:0 0 20px #90b79b0b}
.story-destinations a:hover{box-shadow:0 0 24px #90b79b38}
.index .home-hero.portrait-hero{display:grid;grid-template-columns:1.13fr .87fr;grid-template-rows:auto auto;gap:0 65px;min-height:660px;padding:42px 0 44px;align-items:center}
.index .hero-words{grid-area:1/1;align-self:end;padding-top:0}
.index .home-hero::before{right:0}
.index .hero-summary{grid-area:2/1;align-self:start;padding-top:24px}
.index .hero-name{font-size:23px;letter-spacing:0;margin:24px 0 18px;font-weight:500}
.index .portrait-hero h1{font-size:clamp(38px,4.4vw,59px);font-weight:700;letter-spacing:-.055em;line-height:1.35;margin:0}
.index .portrait-hero h1 .arrival-line{color:#f0f2f1}
.index .portrait-hero h1 .arrival-line:last-child{color:#d9c2aa}
.index .hero-description{font-size:16px;line-height:1.95;max-width:490px}
.index .hero-actions{gap:14px;margin-top:24px;align-items:stretch;flex-wrap:wrap}
.hero-film-links{margin-top:24px;gap:10px}
.index .hero-film-links a{font-size:15px;padding:10px 13px;min-height:45px}
.entry-portrait{grid-area:1/2/3/3;position:relative;margin:0;isolation:isolate;border-radius:160px 160px 12px 12px;overflow:hidden;border:1px solid #b5d0df70;box-shadow:0 0 75px #56839727;height:540px;min-width:0;background:#183449}
.entry-portrait>a{display:block;height:100%;color:white;text-decoration:none}
.entry-portrait img{width:100%;height:100%;object-fit:cover;object-position:49% 42%;display:block;filter:none;transition:transform 1s cubic-bezier(.2,.7,.2,1)}
.entry-portrait .image-zoom-button{height:100%;width:100%;display:block;border:0;border-radius:0;aspect-ratio:auto}
.entry-portrait .image-zoom-button img{width:100%;height:100%;object-fit:cover}
.entry-portrait .image-zoom-button::after{top:24px;bottom:auto;right:18px}
.about-portrait figcaption{pointer-events:none}
.entry-portrait:hover img{transform:scale(1.035)}
.entry-portrait::after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#06121cdc);pointer-events:none;z-index:0}
.entry-portrait figcaption,.entry-portrait .portrait-caption{position:absolute;left:26px;right:26px;bottom:26px;color:#fff;z-index:1;display:flex;flex-direction:column;gap:8px;font:14px/1.6 var(--sans);padding:0;background:none}
.entry-portrait figcaption b,.entry-portrait .portrait-caption b{font-size:18px;font-weight:600}
.portrait-index{position:absolute;top:30px;left:0;right:0;text-align:center;letter-spacing:.17em;font-size:10px;color:#e6f0f1;text-shadow:0 1px 5px #000}
.orbit-section{display:grid;grid-template-columns:.75fr 1.25fr;align-items:center;gap:45px;padding:55px 0 70px;border-block:1px solid #99bbd133;margin-bottom:50px}
.orbit-intro h2{font:650 clamp(30px,3.4vw,46px)/1.4 var(--sans);margin:18px 0}
.orbit-intro>p:not(.section-label){color:#b3c0d0;font-size:17px;line-height:1.9;margin-bottom:25px}
.orbit-section .memory-orbit{grid-area:auto;max-width:670px;width:100%;animation:none!important}
.orbit-section .photo-sphere{height:530px}.sphere-caption{flex-wrap:wrap;font-size:13px}.sphere-toggle{font-size:13px;min-height:44px}
/* Inner-page ocean scene: actual evolving water rendered by water.js. */
.about .about-entry{position:relative;isolation:isolate;display:grid;grid-template-columns:1.05fr .8fr;gap:28px 65px;padding:65px 55px 20px;margin:20px -22px 70px;border-radius:16px;overflow:hidden;background:radial-gradient(ellipse at 70% 60%,#436375,#101e30 75%);color:#eef2f2;min-height:650px}
.living-water{position:absolute;inset:0;width:100%;height:100%;z-index:-2;pointer-events:none}
.about-entry::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#081526d9 0%,#08152688 44%,transparent 90%);z-index:-1;pointer-events:none}
.about-entry .entry-copy{align-self:center;min-width:0}
.about-entry .section-label{color:#c6d7de;letter-spacing:.12em}
.about .about-entry h1{font:700 clamp(38px,4.3vw,58px)/1.4 var(--sans);letter-spacing:-.05em;margin:25px 0}
.about-entry .arrival-line{display:block;overflow:hidden;white-space:nowrap;padding-bottom:.08em;margin-bottom:-.08em}
.about-entry .arrival-line:last-child{color:#dfc7af}
.about-entry .arrival-line i{font-style:normal;display:inline-block}
.about-entry .entry-description{color:#bbced9;font-size:17px;line-height:1.95;max-width:none;margin-bottom:27px}
.entry-actions{display:flex;gap:14px;flex-wrap:wrap}
.about-entry .about-portrait{height:440px;grid-area:1/2;margin:0;border-radius:130px 130px 8px 8px}
.about-portrait img{object-position:50% 45%}
.about-portrait figcaption span{font-size:12px;color:#cad6db}.about-portrait figcaption b{font-size:16px}
.entry-controls{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid #b5d7e538;padding-top:16px;position:relative;color:#acc4d3;font-size:12px}
.entry-controls>div{display:flex;gap:10px;flex-wrap:wrap}
.entry-controls button,.arrival-replay{font:500 13px/1.5 var(--sans);min-height:42px;padding:9px 13px;border:1px solid #a4d5e966;border-radius:7px;color:#dae6ea;background:#091b2c9c;cursor:pointer}
.entry-controls button[hidden],.arrival-replay[hidden]{display:none}
.about .about-feature.about-story{display:block;max-width:810px;margin:60px auto 85px;padding:0}
.about-story h2{font-size:clamp(28px,3vw,40px);font-weight:650}
/* Image expands first; type rises through a mask, then navigation arrives. */
.arrival-pending .entry-portrait{clip-path:inset(18% 22% 18% 22% round 130px);transform:scale(.88);opacity:.4}
.arrival-pending .entry-copy,.arrival-pending .hero-words,.arrival-pending .hero-summary{opacity:0}
.is-arriving .entry-portrait{animation:portraitUnfold 1.6s cubic-bezier(.2,.75,.2,1) both}
.is-arriving .entry-portrait img{animation:portraitSettle 2.5s cubic-bezier(.2,.7,.2,1) both}
.is-arriving .entry-portrait figcaption,.is-arriving .portrait-caption{animation:entryRise .8s 1.6s both}
.is-arriving .hero-words,.is-arriving .hero-summary,.is-arriving .entry-copy{animation:none;opacity:1}
.is-arriving .hero-words>.eyebrow,.is-arriving .entry-copy>.section-label{animation:entryRise .7s .65s both}
.is-arriving .hero-name{animation:entryRise .75s .85s both}
.is-arriving .arrival-line i{animation:entryType 1.05s cubic-bezier(.2,.75,.2,1) both;animation-delay:calc(.85s + var(--letter)*.035s)}
.is-arriving .arrival-line:last-child i{animation-delay:calc(1.02s + var(--letter)*.035s)}
.is-arriving .hero-description,.is-arriving .entry-description{animation:entryRise .8s 1.6s both}
.is-arriving .hero-film-links{animation:entryRise .8s 1.65s both}
.is-arriving .hero-actions,.is-arriving .entry-actions{animation:entryRise .8s 1.95s both}
.cinematic-skip{position:absolute;top:8px;right:10px;z-index:220;padding:10px 15px;min-height:42px;border:1px solid #9bc0cd88;border-radius:7px;background:#0b192bed;color:#e4edef;font:13px/1.5 var(--sans);cursor:pointer}
@keyframes portraitUnfold{0%{clip-path:inset(18% 22% 18% 22% round 130px);transform:translateY(30px) scale(.88);opacity:.4}100%{clip-path:inset(0 round 0);transform:none;opacity:1}}
@keyframes portraitSettle{from{transform:scale(1.17)}to{transform:scale(1)}}
@keyframes entryType{from{transform:translateY(115%);opacity:0}to{transform:none;opacity:1}}
@keyframes entryRise{from{transform:translateY(23px);opacity:0}to{transform:none;opacity:1}}
@media(min-width:1101px){.site-header{min-height:110px}.header-links{margin-left:auto}}
@media(max-width:1100px){.site-header .header-links{display:none}.site-header .menu-toggle{display:block;font:650 16px var(--sans);padding:12px 15px;min-height:46px;margin-left:auto}.index .home-hero.portrait-hero{gap:0 30px;min-height:610px}.entry-portrait{height:490px}.index .portrait-hero h1{font-size:42px}.about .about-entry{gap:25px;padding:55px 32px 20px}.about .about-entry h1{font-size:43px}.about-entry .about-portrait{height:410px}.entry-actions .glow-link{font-size:16px;padding:12px 15px}.orbit-section{gap:20px}}
@media(max-width:760px){.site-header{padding:20px 24px;min-height:90px}.index .home-hero.portrait-hero{grid-template-columns:1fr;grid-template-rows:auto auto auto;gap:24px;padding:18px 0 32px;min-height:0}.entry-portrait{grid-area:1/1;width:min(100%,340px);height:325px;justify-self:center;border-radius:110px 110px 8px 8px}.entry-portrait img{object-position:50% 30%}.index .hero-words{grid-area:2/1;align-self:auto}.index .hero-summary{grid-area:3/1;padding:0}.index .hero-name{font-size:19px;margin:12px 0}.index .hero-words>.eyebrow{font-size:11px}.index .portrait-hero h1{font-size:clamp(31px,8.3vw,47px);line-height:1.4;letter-spacing:-.05em}.index .hero-description{font-size:15px}.hero-film-links{margin-top:19px}.index .hero-film-links a{font-size:14px}.index .hero-actions{margin-top:18px}.index .hero-actions>.text-link{font-size:17px}.entry-portrait figcaption,.entry-portrait .portrait-caption{left:22px;bottom:20px;gap:4px}.entry-portrait .portrait-caption>span{font-size:12px}.entry-portrait .portrait-caption b{font-size:16px}.portrait-index{top:23px;font-size:9px}.chapter-jumps{gap:10px;flex-wrap:wrap}.chapter-jumps a{font-size:14px;padding:11px 13px!important}.orbit-section{grid-template-columns:1fr;gap:15px;padding:35px 0;margin-bottom:35px}.orbit-section .photo-sphere{height:370px}.orbit-intro h2{font-size:31px}.orbit-intro>p:not(.section-label){font-size:15px}.sphere-caption{font-size:11px;padding:0;gap:10px}.sphere-caption>div{gap:9px}.about .about-entry{grid-template-columns:1fr;gap:25px;margin:5px -6px 45px;padding:35px 22px 18px;min-height:0}.about-entry .about-portrait{grid-area:1/1;width:min(100%,285px);height:310px;border-radius:110px 110px 8px 8px}.about-entry .entry-copy{grid-area:2/1}.about .about-entry h1{font-size:clamp(29px,8.3vw,44px);margin:16px 0;line-height:1.4}.about-entry .entry-description{font-size:15px;margin-bottom:22px}.entry-actions{gap:10px}.entry-actions .glow-link{font-size:15px;gap:12px;padding:11px 14px;min-height:49px}.entry-controls{grid-row:3;flex-wrap:wrap;padding-top:15px;margin-top:10px}.entry-controls>span{font-size:11px}.about .about-feature.about-story{margin:40px 0 60px}.story-destinations h3{font-size:25px}a.text-link,a.inline-link{font-size:16px}.origin-links{flex-wrap:wrap;gap:10px}.origin-links a{font-size:14px}.cinematic-skip{top:2px;right:0;background:#0b192be6;font-size:11px}.about-entry .cinematic-skip{top:8px;right:8px}}
@media(max-width:360px){.entry-portrait{height:290px}.index .portrait-hero h1{font-size:29px}.about .about-entry{padding-left:17px;padding-right:17px}.about-entry .about-portrait{height:285px}.about .about-entry h1{font-size:29px}.entry-actions .glow-link{font-size:14px;gap:10px;padding:10px}.orbit-section .photo-sphere{height:320px}.site-header .menu-toggle{font-size:14px}.site-header{gap:12px}.index .hero-film-links a{padding:9px;font-size:13px}.index .hero-actions>.text-link{font-size:16px;padding:12px 16px}}
@media(prefers-reduced-motion:reduce){.entry-scene *{animation:none!important;transition:none!important}.entry-portrait,.entry-copy,.hero-words,.hero-summary{opacity:1!important;transform:none!important;clip-path:none!important}.arrival-line,.hero-words>*,.hero-summary>*{opacity:1!important}.cinematic-skip{display:none}}
[data-motion=off] .entry-scene *{animation:none!important;transition:none!important}
[data-motion=off] .entry-portrait,[data-motion=off] .entry-copy,[data-motion=off] .hero-words,[data-motion=off] .hero-summary{opacity:1!important;transform:none!important;clip-path:none!important}
[data-suspended=true] .entry-scene *{animation-play-state:paused!important}
.source-link,.interest-grid article>a,.book-action{border-bottom:0!important;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.book-detail-links a{font-size:16px;font-weight:600;text-decoration:none!important}
.index .signature-book-caption b{border-bottom:0}
.about-entry .section-label span{color:#b8ceda}
@media(max-width:760px){.about-entry::before{background:linear-gradient(180deg,#08152620 0%,#0815269c 46%,#081526b5 100%)}}
/* v25: the setting stays alive during entry and throughout page browsing. */
body{isolation:isolate}
.page-atmosphere{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden;background:var(--paper)}
.page-atmosphere .living-water{z-index:0;width:100%;height:100%}
.page-atmosphere::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#ffffff22,transparent 60%);pointer-events:none}
.index .page-atmosphere::after{background:linear-gradient(90deg,#080f1ec7, #080f1e45 72%),linear-gradient(180deg,#080f1e88,transparent 60%)}
.index .home-hero::before{background:none}
.index .hero-words,.index .hero-summary,.index .orbit-intro{ text-shadow:0 2px 20px #050e18aa }
.index .hero-footnote{background:#080f1e99;border-radius:8px;padding-inline:12px}
.index .chapter-heading,.index .orbit-intro{position:relative}
.page-atmosphere canvas[hidden]{display:none!important}
@media(max-width:760px){.index .page-atmosphere::after{background:linear-gradient(180deg,#080f1e55,#080f1e9c 45%,#080f1ec7)}.index .hero-footnote{padding-inline:8px}}

/* Visible music choices, with the original player kept intact. */
.sound-dock{isolation:isolate}.sound-dock [hidden]{display:none!important}.sound-dock button.sound-more{font:inherit;border:0;border-left:1px solid #9ba8b044;background:transparent;color:inherit;padding:8px 12px;cursor:pointer;min-height:40px}
.sound-picker{position:absolute;right:0;bottom:calc(100% + 12px);width:350px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 110px);overflow:auto;padding:18px;border:1px solid #546879;border-radius:14px;background:#0c1827;color:#e6edf3;box-shadow:0 16px 70px #0005;font:14px/1.5 var(--sans);text-align:left}
.sound-picker-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.sound-picker-heading strong{font-size:16px}.sound-picker-close{border:1px solid #536675;border-radius:50%;background:transparent;color:#eef5f9;width:36px;height:36px;font-size:23px;cursor:pointer}
.sound-choices{display:grid;grid-template-columns:1fr 1fr;gap:8px}.sound-choices button{background:#16283a;border:1px solid #41566a;border-radius:8px;text-align:left;color:#e9f0f3;padding:12px 9px;cursor:pointer}.sound-choices button[aria-pressed=true]{border-color:#bfd7e2;background:#294258}.sound-choices b{display:block;font:600 17px var(--sans)}.sound-choices small{display:block;font:11px/1.6 var(--sans);margin-top:5px;color:#bdd0db}
.qingkong-player:has(iframe){position:relative;width:100%;aspect-ratio:1/2;margin-top:14px;overflow:hidden;border-radius:6px;background:#000}.qingkong-player iframe{position:absolute;top:0;left:0;display:block;width:360px;height:720px;max-width:none;border:0;transform:scale(var(--player-scale,1));transform-origin:top left;background:#000}
.sound-picker .sound-source-note{margin:12px 0 8px;font:12px/1.7 var(--sans);color:#b5c6d2}.sound-picker .qingkong-original{font:13px var(--sans);color:#e0c5a4;text-underline-offset:5px}.qingkong-art{background:radial-gradient(circle at 75% 20%,#8dcfe0,#3e728b 50%,#172e46);color:#f0f3ed}.qingkong-art span{font:500 32px/1.4 var(--sans);letter-spacing:.3em}.music-track-list .qingkong-track{border-color:#6b9aaa55}
@media(max-width:600px){.sound-picker{width:320px}.sound-dock{max-width:calc(100vw - 24px)}.sound-picker{max-width:calc(100vw - 24px)}}

.sound-choices{grid-template-columns:1fr 1fr}.sound-choices [data-background=refreshing]{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:10px}.sound-choices [data-background=refreshing] small{margin:0}
