@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--bg:#d6d7d8;--ink:#191b1b;--muted:#555958;--acid:#d4fa4b;--line:rgba(25,27,27,.17)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',Arial,'PingFang SC','Microsoft YaHei',sans-serif;font-size:16px}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid #647d08;outline-offset:5px}button{border:0}button:disabled{cursor:default}button, a{touch-action:manipulation}.topbar{height:98px;margin:0 4%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:3}.wordmark{font-size:20px;font-weight:800;letter-spacing:-1px;display:flex;align-items:center}.wordmark span{font-weight:400}.wordmark i{width:9px;height:9px;background:var(--ink);margin-left:7px;transform:rotate(-12deg)}.top-right{display:flex;gap:42px;align-items:center}.edition{font-size:12px;letter-spacing:1.6px}.text-button{background:none;font-size:14px;padding:12px 0}.text-button span{margin-left:14px;font-size:21px}.experience{position:relative;min-height:850px;height:calc(100svh - 99px);max-height:1120px;overflow:hidden}.intro{position:relative;z-index:2;margin-left:4%;padding-top:70px;width:35%;pointer-events:none}.eyebrow{font-size:12px;letter-spacing:2px;display:flex;align-items:center;gap:10px;font-weight:600}.tiny-line{height:2px;width:23px;background:var(--ink)}h1{font-family:'Barlow Condensed','Arial Narrow',Impact,sans-serif;font-size:clamp(64px,6.8vw,112px);line-height:.88;letter-spacing:-1.5px;margin:28px 0 26px;font-weight:800}h1 em{font-style:normal;color:#545b50}.intro-copy{font-size:20px;line-height:1.8;margin:0}.author{display:flex;gap:12px;margin-top:34px;align-items:center}.author-mark{width:39px;height:39px;display:grid;place-items:center;border:1px solid var(--ink);border-radius:50%;font-size:18px;font-weight:800}.author strong{display:block;font-size:14px}.author div>span{display:block;font-size:12px;color:var(--muted);margin-top:5px}.intro-note{margin-top:100px;display:flex;gap:13px;align-items:center}.intro-note p{font-size:14px;line-height:1.7;color:var(--muted)}.cross{font-size:30px;font-weight:400}.portrait-area{position:absolute;left:49%;transform:translateX(-50%);bottom:0;width:min(64vw,730px)}.portrait{position:relative;width:100%;aspect-ratio:1086/1448}.portrait img{display:block;width:100%;height:auto;mix-blend-mode:multiply;mask-image:linear-gradient(to right,transparent,#000 11%,#000 89%,transparent);user-select:none;pointer-events:none}.image-caption{display:flex;justify-content:space-between;position:absolute;bottom:19px;left:10%;right:10%;font-size:11px;letter-spacing:1.1px;color:var(--ink);background:rgba(214,215,216,.8);padding:8px 10px}.hotspot{position:absolute;transform:translate(-50%,-50%);min-height:44px;min-width:44px;display:flex;align-items:center;justify-content:center;gap:5px;padding:7px 11px;border:1px solid rgba(255,255,255,.72);background:rgba(244,245,242,.7);backdrop-filter:blur(8px);border-radius:5px;font-size:12px;box-shadow:0 3px 20px #0000000a;transition:background .16s,box-shadow .16s;white-space:nowrap;z-index:3}.hotspot::before{content:'+';font-size:18px;line-height:1}.hotspot:hover,.hotspot[aria-pressed=true]{background:var(--acid);border-color:#8ba432;box-shadow:0 0 0 4px #d4fa4b33}.hotspot[aria-pressed=true]::before{content:'✓';font-size:14px}.booking{position:absolute;z-index:4;right:4%;top:50%;transform:translateY(-43%);width:290px;background:rgba(247,248,245,.94);border:1px solid #ffffff88;box-shadow:0 18px 60px #2222220a;padding:24px;border-radius:10px;backdrop-filter:blur(12px)}.booking-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:29px}.pill{background:#e3e8d9;border:1px solid #d0d7c1;border-radius:4px;padding:5px 7px;font-size:12px}.slot-counter{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.detail-label{font-size:12px;color:var(--muted)}h2{font-size:23px;letter-spacing:-.8px;margin:10px 0 11px}.slot-description{font-size:14px;color:var(--muted);line-height:1.8;min-height:51px;margin:0 0 18px}.price-row{padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.price-row>span{font-size:12px;color:var(--muted)}.price-row strong{font-size:30px;font-weight:600;letter-spacing:-1px}.price-row strong span{font-size:11px;font-weight:400;letter-spacing:0}label{display:block;font-size:12px;margin-bottom:9px}.input-wrap{position:relative}.input-wrap>span{position:absolute;right:12px;top:12px;color:#777}input{width:100%;height:45px;padding:10px 34px 10px 12px;border:1px solid #bfc3ba;background:transparent;border-radius:3px;font-size:14px;color:var(--ink)}input:focus{outline:2px solid #899d39;outline-offset:2px}input::placeholder{color:#8a8f84;letter-spacing:1px;font-size:12px}.primary{margin-top:12px;background:var(--ink);color:white;width:100%;min-height:47px;padding:12px 15px;display:flex;align-items:center;justify-content:space-between;border-radius:3px;font-size:14px}.primary:hover{background:#384121}.primary span{font-size:23px;color:var(--acid)}.demo-note{font-size:11px;color:#6b7067;line-height:1.6;margin:12px 0 23px}.panel-bottom{padding-top:16px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;font-size:12px}.panel-bottom>span{color:var(--muted)}.panel-bottom button{padding:6px 0;background:none;font-size:12px}.panel-bottom button span{margin-left:6px}.reset{background:none;text-decoration:underline;font-size:12px;padding:12px 0 0}.bottom-strip{margin:0 4%;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:30px 0;display:flex;align-items:center;justify-content:space-between}.strip-kicker{font-size:12px;letter-spacing:1.6px}.bottom-strip p{font-size:20px;margin:10px 0 0}.bottom-strip button{background:var(--acid);padding:17px 23px;border:1px solid #98b132;border-radius:4px;font-size:14px}.bottom-strip button span{padding-left:24px}footer{display:flex;justify-content:space-between;gap:15px;padding:25px 4%;font-size:11px;color:#5c605d}.mobile-jump{display:none}#brand-stamp{position:absolute;z-index:2;transform:translate(-50%,-50%) rotate(-3deg);color:#171918;font-family:'Barlow Condensed',Impact,sans-serif;font-weight:800;font-size:clamp(16px,2.5vw,35px);text-align:center;line-height:.95;width:26%;overflow-wrap:anywhere;mix-blend-mode:multiply;pointer-events:none}#brand-stamp.on-shorts{color:var(--acid);mix-blend-mode:normal;width:22%}dialog{border:1px solid #e6e8e0;padding:30px;border-radius:12px;width:min(500px,calc(100% - 30px));max-height:85svh;background:#f5f6f1;color:var(--ink);box-shadow:0 30px 100px #0003}dialog::backdrop{background:#151b1866;backdrop-filter:blur(5px)}.dialog-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.dialog-head button{background:transparent;font-size:30px;padding:0 0 0 20px;line-height:1}.dialog-head .eyebrow{font-size:11px}dialog h2{font-size:30px;margin:0 0 25px}dialog ol{padding-left:22px}dialog li{padding:0 0 18px 8px;font-size:16px;line-height:1.8}dialog li span{display:block;font-size:14px;color:var(--muted)}.dialog-note{padding:16px;background:#e8ebdf;font-size:13px;line-height:1.8}.spot-list{display:grid;gap:9px}.spot-list button{display:flex;justify-content:space-between;gap:15px;align-items:center;background:transparent;border:1px solid #ccd1c3;border-radius:4px;padding:15px;text-align:left;font-size:14px}.spot-list button:hover{background:var(--acid)}.spot-list small{display:block;color:var(--muted);margin-top:4px;font-size:12px}.toast{position:fixed;z-index:20;bottom:25px;left:50%;transform:translate(-50%,15px);opacity:0;pointer-events:none;max-width:calc(100% - 35px);background:var(--ink);color:white;padding:14px 20px;border-radius:6px;font-size:14px;transition:opacity .2s,transform .2s;white-space:nowrap}.toast.show{opacity:1;transform:translate(-50%,0)}[hidden]{display:none!important}
@media(min-width:1600px){.portrait-area{width:790px;left:51%}.booking{right:7%;width:320px}.intro{margin-left:6%}}
@media(min-width:1001px) and (max-height:900px){.experience{min-height:790px}.portrait-area{width:660px}.intro{padding-top:52px}.intro-note{margin-top:70px}}
@media(max-width:1100px) and (min-width:761px){.booking{width:252px;right:3%;padding:20px}.intro{margin-left:3%}.portrait-area{left:46%;width:680px}.intro h1{font-size:73px}.intro-copy{font-size:18px}.intro-note{margin-top:85px}.experience{min-height:860px}.booking h2{font-size:20px}}
@media(max-width:760px){.topbar{height:74px;margin:0 6%}.wordmark{font-size:18px}.edition{display:none}.text-button{font-size:13px}.experience{min-height:0;max-height:none;height:auto;overflow:hidden;display:flex;flex-direction:column}.intro{padding:36px 6% 0;width:100%;margin:0;position:relative}.eyebrow{font-size:11px;letter-spacing:1.4px}h1{font-size:clamp(66px,15.5vw,110px);line-height:.9;margin:21px 0 18px;letter-spacing:-1px}h1 br{display:none}h1 em{display:block}.intro-copy{font-size:16px;line-height:1.7}.author{position:absolute;right:6%;bottom:1px;gap:7px}.author-mark{width:32px;height:32px;font-size:15px}.author strong{font-size:12px}.author div>span{font-size:10px}.intro-note{margin:22px 0 0;gap:8px}.intro-note p{font-size:12px}.intro-note br{display:none}.cross{font-size:23px}.portrait-area{position:relative;left:auto;bottom:auto;transform:none;width:100%;max-width:550px;margin:-6px auto 0}.portrait img{mask-image:linear-gradient(to bottom,#000 96%,transparent)}.image-caption{bottom:18px;font-size:9px;left:6%;right:6%}.hotspot{font-size:11px;padding:6px;min-height:40px;min-width:44px;border-radius:4px;gap:4px}.hotspot::before{font-size:15px}.booking{position:relative;right:auto;top:auto;transform:none;width:auto;margin:16px 6% 28px;padding:24px;order:3;border-radius:8px}.booking-top{margin-bottom:22px}h2{font-size:25px}.slot-description{min-height:0}.detail-label,label{font-size:13px}.price-row>span,.demo-note,.panel-bottom,.panel-bottom button{font-size:12px}.primary{min-height:51px}.mobile-jump{display:block;order:2;background:var(--acid);border:1px solid #a1b856;padding:12px 18px;margin:-8px auto 0;position:relative;z-index:4;border-radius:30px;font-size:13px}.bottom-strip{margin:0 6%;padding:24px 0;display:block}.strip-kicker{font-size:10px}.bottom-strip p{font-size:18px}.bottom-strip button{margin-top:20px;width:100%;text-align:left;display:flex;justify-content:space-between}footer{padding:25px 6%;flex-wrap:wrap;line-height:1.7;font-size:10px}footer a{width:100%}#brand-stamp{font-size:clamp(18px,5vw,30px)}.toast{font-size:12px;white-space:normal;width:max-content;text-align:center}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}

@media(min-width:761px){.portrait-area{height:calc(100% - 10px);width:auto;max-width:64vw;aspect-ratio:3/4;}.portrait{height:100%;}.portrait img{height:100%;width:100%;object-fit:contain;}}

/* 中文标题与三维人物入口。 */
.model-link{font-size:14px;white-space:nowrap;padding:10px 0;border-bottom:1px solid currentColor}
.intro h1{font-family:'PingFang SC','Microsoft YaHei',sans-serif;font-size:clamp(34px,3.5vw,58px);line-height:1.35;letter-spacing:-1.5px;margin:30px 0 24px}
.wordmark{letter-spacing:0}.top-right{gap:28px}.author-mark{font-size:16px}
@media(max-width:1100px) and (min-width:761px){.intro h1{font-size:34px}.top-right{gap:20px}}
@media(max-width:760px){.intro h1{font-size:clamp(30px,7.4vw,52px);margin:20px 0}.intro h1 br{display:block}.intro h1 em{display:inline}.top-right{gap:16px}.model-link{font-size:12px}.wordmark{font-size:16px}.author{position:static;margin-top:18px}.intro-note{margin-top:12px}}

/* 首页三维人物与跟随模型的广告位。 */
.portrait-area{display:flex;flex-direction:column;justify-content:flex-end;padding-top:20px}
.sponsor-model{display:block;width:100%;height:calc(100% - 90px);min-height:580px;--min-hotspot-opacity:0;--poster-color:transparent}
.sponsor-model .hotspot{position:relative;transform:none;min-height:36px;min-width:44px;padding:6px 8px;font-size:11px;z-index:auto;box-shadow:0 2px 8px #191b1b15;backdrop-filter:none;background:#f1f3ecee;transition:background .16s}
.sponsor-model .hotspot:not([data-visible]),.sponsor-model:not(.is-ready) .hotspot{visibility:hidden;pointer-events:none}
.sponsor-model .hotspot[aria-pressed=true]{background:var(--acid)}
.sponsor-model .hotspot.brand-preview{white-space:normal;overflow-wrap:anywhere;max-width:110px;padding:5px 8px;font-size:16px;font-weight:800;background:#d4fa4bd9;border-color:#829737;line-height:1.25}
.sponsor-model .hotspot.brand-preview::before{display:none}
.sponsor-model .hotspot.brand-preview.on-shorts{color:var(--acid);background:#191b1bdf;border-color:#d4fa4b}
.model-status{position:absolute;top:43%;left:50%;transform:translate(-50%,-50%);max-width:90%;width:max-content;background:#edf0e6;padding:14px 18px;border:1px solid var(--line);border-radius:5px;font-size:13px;text-align:center}
.model-toolbar{display:flex;justify-content:center;gap:6px;padding:10px 0 0;position:relative;z-index:3}
.model-toolbar button{min-height:42px;padding:9px 12px;background:#eef0e9;border:1px solid #b2b8aa;border-radius:4px;font-size:12px;white-space:nowrap}
.model-toolbar button:hover,.model-toolbar button[aria-pressed=true]{background:var(--acid)}
.model-toolbar button:disabled{opacity:.45;cursor:wait}
.model-hint{text-align:center;font-size:11px;line-height:1.7;color:var(--muted);margin:11px 0 18px}
@media(max-width:1100px) and (min-width:761px){.portrait-area{left:48%;max-width:54vw}.sponsor-model{min-height:600px}.model-toolbar{gap:4px}.model-toolbar button{padding:8px 9px}}
@media(max-width:760px){.portrait-area{padding:0;margin:6px auto 0;max-width:550px}.sponsor-model{height:min(150vw,720px);min-height:450px}.sponsor-model .hotspot{font-size:10px;min-height:34px;min-width:42px;padding:5px 6px;gap:3px}.sponsor-model .hotspot::before{font-size:13px}.sponsor-model .hotspot.brand-preview{font-size:14px;max-width:94px}.model-toolbar{gap:5px;padding-top:0}.model-toolbar button{padding:9px 11px;font-size:11px}.model-hint{font-size:10px;margin:10px 0 20px}.model-status{font-size:12px}.model-link{font-size:11px}}
.model-toolbar{order:-1;flex-shrink:0}.model-hint{flex-shrink:0}
