.ep-showcase{--ep-ink:#eeeede;--ep-muted:#a1a3a3;--ep-line:rgba(234,234,232,.15);--ep-accent:#e3a28b;--ep-bg:#1e1f20;position:relative;isolation:isolate;box-sizing:border-box;min-height:720px;height:100svh;max-height:1200px;overflow:hidden;color:var(--ep-ink);background-color:var(--ep-bg);background-image:radial-gradient(ellipse at 24% 24%,#393a3b66,transparent 56%),radial-gradient(ellipse at 80% 54%,#3032336b,transparent 49%),linear-gradient(135deg,#232425,#1b1c1d 57%,#252627);font-family:"Noto Sans CJK SC","PingFang SC","Microsoft YaHei",sans-serif;font-weight:400;color-scheme:dark;-webkit-font-smoothing:antialiased;transition:background-color .8s;outline:none;-webkit-tap-highlight-color:transparent}
/* Match the homepage's charcoal atmosphere, warm white type and fine grain. */
.ep-showcase{overflow-anchor:none}
.ep-showcase:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse at 50% 29%,#ffffff14,transparent 45%),radial-gradient(ellipse at 5% 62%,#c8cbcc0d,transparent 42%),radial-gradient(ellipse at 89% 39%,#e2e4e510,transparent 38%)}
.ep-showcase:after{content:"";position:absolute;inset:0;z-index:6;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.88' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' opacity='.6' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}
.ep-showcase *,.ep-showcase *:before,.ep-showcase *:after{box-sizing:border-box}
.ep-showcase button{font:inherit;color:inherit;border:0;cursor:pointer;background:none}
.ep-showcase button:focus-visible,.ep-showcase a:focus-visible{outline:2px solid var(--ep-accent);outline-offset:6px}
.ep-showcase button:disabled{opacity:.25;cursor:default}
.ep-showcase h2,.ep-showcase h3,.ep-showcase p{margin:0}
.ep-grid{position:absolute;inset:0;pointer-events:none;z-index:0;background-image:linear-gradient(rgba(188,192,192,.012) 1px,transparent 1px),linear-gradient(90deg,rgba(188,192,192,.012) 1px,transparent 1px);background-size:26px 26px;mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 77%,transparent)}
.ep-grid:after{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='104' height='104'%3E%3Cpath d='M26.5 20.5v12m-6-6h12' stroke='%23bcc0c0' stroke-width='.7' opacity='.065'/%3E%3C/svg%3E")}.ep-stage{position:absolute;inset:0;width:100%;height:100%;cursor:grab;touch-action:pan-y;z-index:1;opacity:0;transform:translateY(24px);transition:opacity 1s,transform 1.2s cubic-bezier(.16,1,.3,1)}
.ep-showcase.ep-ready .ep-stage{opacity:1;transform:translateY(0)}
.ep-stage.ep-grabbing{cursor:grabbing}
.ep-stage canvas{width:100%;height:100%;display:block;outline:none}
.ep-caption{position:absolute;z-index:3;left:50%;bottom:106px;width:min(720px,76%);transform:translateX(-50%);text-align:center}
.ep-category{font-size:10px;letter-spacing:.14em;color:var(--ep-accent);display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:9px!important}
.ep-category:before,.ep-category:after{content:"";height:1px;width:18px;background:currentColor;opacity:.55}
.ep-title{font-size:clamp(38px,4.65vw,72px);font-weight:550;line-height:1.2;letter-spacing:-.045em;white-space:nowrap}
.ep-title .ep-latin{letter-spacing:-.05em}
.ep-phrase{color:#d1d2ce;margin-top:12px!important;font-size:16px;letter-spacing:.08em;font-weight:400}
.ep-caption-text{will-change:transform,opacity}
.ep-step{position:absolute;top:51px;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--ep-line)!important;transition:background .2s,transform .2s}
.ep-step:hover:not(:disabled){background:rgba(238,238,222,.07);transform:scale(1.06)}
.ep-step svg{width:16px;height:16px}
.ep-prev{left:0}.ep-next{right:0}
.ep-indicators{margin-top:22px;display:flex;align-items:center;justify-content:center;gap:10px}
.ep-indicators button{width:26px;height:16px;padding:6px 0;position:relative}
.ep-indicators button:before{content:"";display:block;width:100%;height:2px;background:#62676a;transition:background .35s,transform .35s}
.ep-indicators button[aria-current="true"]:before{background:var(--ep-accent);transform:scaleY(1.6)}
.ep-inspect{position:absolute;bottom:129px;right:3.7%;z-index:4;display:flex;align-items:center;gap:21px;padding:12px 0!important;font-size:12px!important;letter-spacing:.08em}
.ep-inspect:before{position:absolute;bottom:4px;left:0;width:100%;height:1px;content:"";background:var(--ep-ink);transform-origin:left;transition:transform .25s}
.ep-inspect:hover:before{transform:scaleX(.55)}
.ep-inspect svg{width:20px;height:20px;transition:transform .3s}
.ep-inspect:hover svg{transform:translate(3px,-3px)}
.ep-loader{position:absolute;z-index:2;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;pointer-events:none;transition:opacity .5s}
.ep-loader-ring{border:1px solid var(--ep-line);border-top-color:var(--ep-accent);width:32px;height:32px;border-radius:50%;animation:ep-spin 1.5s linear infinite}
.ep-loader span{font-size:10px;letter-spacing:.13em;color:var(--ep-muted)}
.ep-ready .ep-loader{opacity:0}
.ep-fallback{display:none;position:absolute;inset:10% 15%;align-items:center;justify-content:center;pointer-events:none}
.ep-fallback-shape{width:200px;height:200px;border-radius:45% 55% 38% 62% / 55% 42% 58% 45%;background:radial-gradient(circle at 30% 25%,#fff6e5 1%,#e3a087 36%,#a0533a 84%);box-shadow:inset -14px -16px 28px #78392038,12px 70px 35px -40px #484d393e;transform:rotate(-20deg)}
.ep-no-webgl .ep-fallback{display:flex}.ep-no-webgl .ep-stage canvas{display:none}
.ep-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.ep-detail{position:absolute;inset:104px 3.7% 90px;z-index:5;visibility:hidden;pointer-events:none;opacity:0;}
.ep-detail-inner{max-width:430px;width:39%;padding-top:90px}
.ep-detail-back{position:absolute;top:26px;left:0;display:flex;align-items:center;gap:10px;font-size:11px!important;letter-spacing:.08em}
.ep-detail-back svg{width:16px;height:16px}
.ep-detail-code{font:10px monospace;letter-spacing:.15em;color:var(--ep-accent);margin-bottom:19px!important}
.ep-detail h3{font-size:clamp(35px,4.5vw,64px);font-weight:550;line-height:1.2;letter-spacing:-.04em}
.ep-detail-phrase{font-size:20px;letter-spacing:.04em;margin-top:20px!important;line-height:1.6}
.ep-detail-copy{color:var(--ep-muted);line-height:2.1;font-size:13px;letter-spacing:.025em;margin-top:24px!important;max-width:370px}
.ep-detail-tags{display:flex;gap:16px;margin-top:27px;color:var(--ep-muted);font-size:10px;letter-spacing:.1em}
.ep-detail-tags span{border-bottom:1px solid var(--ep-line);padding-bottom:8px}
.ep-product-link{display:inline-block;margin-top:18px;color:var(--ep-accent);font-size:11px;letter-spacing:.06em;text-decoration:none;text-underline-offset:5px}
.ep-product-link:hover{text-decoration:underline}
.ep-product-link[hidden]{display:none}
.ep-suspended *{animation-play-state:paused!important}
@media(max-width:760px){.ep-product-link{margin-top:12px;font-size:10px}}
.ep-draft-note{font-size:9px;color:var(--ep-muted);opacity:.65;position:absolute;bottom:20px;left:0;letter-spacing:.05em}
.ep-detail-model{position:absolute;right:2%;bottom:36px;text-align:right;font-size:10px;line-height:1.8;color:var(--ep-muted);max-width:270px}
.ep-detail-model strong{display:block;font-size:11px;font-weight:400;margin-bottom:6px;color:var(--ep-accent)}
.ep-detail-open .ep-detail{opacity:1;visibility:visible;transform:none;pointer-events:auto}
.ep-detail-open .ep-caption,.ep-detail-open .ep-inspect{pointer-events:none}.ep-detail-open .ep-stage{cursor:default}
.ep-reduced *{animation-duration:.001ms!important;transition-duration:.001ms!important}
@keyframes ep-spin{to{transform:rotate(360deg)}}
@media(min-width:1600px){.ep-caption{bottom:12%}}
@media(max-height:790px) and (min-width:761px){.ep-showcase{min-height:650px}.ep-caption{bottom:93px}.ep-title{font-size:49px}.ep-category{margin-bottom:6px!important}.ep-phrase{color:#d1d2ce;margin-top:7px!important;font-size:14px}.ep-indicators{margin-top:13px}.ep-inspect{bottom:110px}.ep-detail{top:85px}.ep-detail-inner{padding-top:67px}.ep-detail-copy{font-size:12px;margin-top:16px!important}.ep-detail-phrase{margin-top:15px!important}}
@media(max-width:1050px){.ep-inspect{bottom:109px}.ep-inspect span{display:none}.ep-caption{width:70%}.ep-step{width:34px;height:34px}.ep-detail-inner{width:42%}}
@media(max-width:760px){.ep-showcase{height:100svh;min-height:680px;max-height:1000px}.ep-caption{bottom:167px;width:88%}.ep-category{font-size:9px;margin-bottom:9px!important}.ep-title{font-size:43px}.ep-phrase{font-size:13px;margin-top:11px!important;letter-spacing:.04em}.ep-step{top:43px;width:32px;height:32px}.ep-prev{left:0}.ep-next{right:0}.ep-step svg{width:13px}.ep-indicators{margin-top:18px;gap:7px}.ep-indicators button{width:21px}.ep-inspect{bottom:112px;right:50%;transform:translateX(50%);font-size:11px!important;gap:20px;padding:9px 0!important;white-space:nowrap}.ep-inspect span{display:block}.ep-inspect svg{width:15px;height:15px}.ep-detail{inset:84px 6% 105px}.ep-detail-back{top:21px;font-size:10px!important}.ep-detail-inner{width:100%;max-width:100%;padding-top:65px}.ep-detail-code{font-size:8px;margin-bottom:12px!important}.ep-detail h3{font-size:37px}.ep-detail-phrase{font-size:16px;margin-top:12px!important}.ep-detail-copy{font-size:11px;line-height:1.9;margin-top:13px!important;max-width:96%}.ep-detail-tags{font-size:9px;margin-top:16px}.ep-detail-open .ep-stage{cursor:default}.ep-detail-model{right:0;bottom:2px;font-size:8px;max-width:205px}.ep-detail-model strong{font-size:9px;margin-bottom:4px}.ep-draft-note{bottom:-1px;font-size:8px;max-width:110px;line-height:1.8}.ep-fallback-shape{width:130px;height:130px}}
@media(max-width:760px) and (max-height:730px){.ep-showcase{min-height:620px}.ep-caption{bottom:148px}.ep-title{font-size:36px}.ep-category{margin-bottom:6px!important}.ep-phrase{color:#d1d2ce;margin-top:8px!important;font-size:12px}.ep-indicators{margin-top:11px}.ep-inspect{bottom:102px}.ep-detail{top:74px}.ep-detail-inner{padding-top:58px}.ep-detail-phrase{font-size:14px}.ep-detail-copy{font-size:10px;margin-top:10px!important}.ep-detail-tags{margin-top:10px}.ep-detail-open .ep-stage{cursor:default}.ep-detail-model{font-size:7px;max-width:180px}}
@media(prefers-reduced-motion:reduce){.ep-showcase *{animation-duration:.001ms!important;transition-duration:.001ms!important}}

.ep-detail-inner > *, .ep-detail-back{will-change:transform,opacity}
.ep-no-webgl .ep-fallback{inset:18% 15% 38%}
.ep-no-webgl.ep-detail-open .ep-fallback{inset:22% 8% 18% 50%}
@media(max-width:760px){.ep-no-webgl.ep-detail-open .ep-fallback{inset:50% 15% 15%}}

.ep-stage.ep-hovering{cursor:pointer}
.ep-hover{position:absolute;inset:0;z-index:4;pointer-events:none;opacity:0;transition:opacity .15s;color:#eeeede}
.ep-hover-visible{opacity:1}
.ep-hover-line{position:absolute;inset:0;width:100%;height:100%;overflow:visible;fill:none;stroke:currentColor;stroke-width:1;stroke-opacity:.72}
.ep-hover-line circle{fill:currentColor;stroke:none}
.ep-hover-label{position:absolute;width:150px;transform-origin:bottom left;will-change:transform;line-height:1.4;text-shadow:0 1px 5px #101112}
.ep-hover-number{display:block;font-family:monospace;font-size:24px;letter-spacing:-.04em}
.ep-hover-name{display:block;font-size:14px;letter-spacing:.06em;margin-top:3px;white-space:nowrap}
@media(prefers-reduced-motion:reduce){.ep-hover{transition:none}}

/* Give the larger turntable a clear gap above its caption. */
@media(min-width:761px){.ep-caption{bottom:72px}}
@media(max-height:790px) and (min-width:761px){.ep-caption{bottom:60px}}
