.language-switch{display:flex;align-items:center;gap:2px;padding:3px;border:1px solid #353535;border-radius:999px;flex-shrink:0}
.language-switch button{border:0;background:transparent;color:#aaa;padding:7px 11px;border-radius:999px;cursor:pointer;font:inherit;font-size:12px}
.language-switch button[aria-pressed="true"]{background:#eee;color:#111}
html[lang="zh-Hans"] body{font-family:Inter,"PingFang SC","Microsoft YaHei",sans-serif}
html[lang="zh-Hans"] .intro-formats>a{transform:none;letter-spacing:.06em}
html[lang="zh-Hans"] .eyebrow{letter-spacing:.1em}
header{overflow:visible}
.photo-journey{position:relative;margin:0;min-width:0}
.photo-journey.is-pinned>.photo-stage{position:sticky;top:90px}
.photo-stage{min-width:0;background:var(--bg);padding:8px 0 15px}
.photo-stage .photo-track{display:flex!important;gap:18px;overflow-x:auto;scroll-snap-type:none;padding-bottom:0;scrollbar-width:none;overscroll-behavior-x:contain}
.photo-track::-webkit-scrollbar{display:none}

.photo-stage .photo-track .shot{flex:0 0 34vw;min-width:0;max-width:none}
.photo-stage .photo-track .shot img{height:min(55svh,640px);width:100%;aspect-ratio:auto;object-fit:cover}
.photo-stage .photo-track figcaption{font-size:12px;margin-top:12px}
.gallery-controls{display:flex;align-items:center;gap:18px;color:#aaa;font-size:11px;padding-top:19px}
.gallery-hint{letter-spacing:.04em}
.gallery-progress{flex:1;height:1px;background:#333;position:relative}
.gallery-progress span{position:absolute;inset:0;background:#d5d5d0;transform:scaleX(0);transform-origin:left}
.gallery-controls button{border:1px solid #333;background:transparent;color:#ccc;border-radius:50%;width:30px;height:30px;cursor:pointer;font-size:16px;flex-shrink:0}
.gallery-controls button:disabled{opacity:.25;cursor:default}
.reel-overlay h3{line-height:1.2;min-height:1.2em}
@media(max-width:800px){.nav-links{gap:10px}.language-switch button{padding:7px 9px}.photo-stage .photo-track .shot{flex-basis:72vw}.photo-stage .photo-track{gap:12px}.photo-journey.is-pinned>.photo-stage{top:78px}.gallery-controls{gap:12px}.gallery-hint{max-width:180px;line-height:1.5}}
@media(max-width:480px){.nav-links>.pill{display:none}.brand{font-size:12px}.language-switch{font-size:11px}.photo-stage .photo-track .shot{flex-basis:76vw}}
@media(prefers-reduced-motion:reduce){.photo-journey.is-pinned>.photo-stage{position:relative;top:auto}}

@media(max-width:800px){.reel-overlay h3{min-height:2.4em;display:flex;align-items:flex-end}}
/* A shallow arc keeps the photography readable while suggesting a rotating carousel. */
.photo-stage .photo-track{--card-width:clamp(220px,32vw,480px);position:relative;gap:20px;padding:28px max(0px,calc((100% - var(--card-width))/2)) 34px;scroll-padding-inline:max(0px,calc((100% - var(--card-width))/2));}
.photo-stage .photo-track .shot{flex-basis:var(--card-width);}
.photo-stage .photo-track .shot button{transform-origin:center;backface-visibility:hidden;will-change:transform;border-radius:3px;box-shadow:0 18px 28px #0005;}
.photo-stage .photo-track .shot img{height:min(52svh,600px);object-fit:contain;background:#0b0b0b;}
.photo-stage .photo-track .shot button:hover img{transform:none;}
.photo-stage .photo-track figcaption{text-align:center;display:block;color:#bcbcb6;}
.gallery-count{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:10px;color:#aaa;}
@media(max-width:800px){.photo-stage .photo-track{--card-width:70vw;gap:14px;padding-top:22px;padding-bottom:28px;}.photo-stage .photo-track .shot{flex-basis:var(--card-width);}.gallery-controls{gap:9px}.gallery-hint{font-size:10px;max-width:145px}.photo-stage .photo-track .shot img{height:min(49svh,520px)}}
@media(prefers-reduced-motion:reduce){.photo-stage .photo-track .shot button{transform:none!important;will-change:auto;}}
/* Viewed from outside: center forward, outer edges recede. */
.photo-stage .orbit-track{display:block!important;position:relative;height:calc(min(52svh,600px) + 90px);padding:0;overflow:hidden;perspective:1100px;perspective-origin:50% 46%;touch-action:pan-y;cursor:grab;}
.photo-stage .orbit-track:active{cursor:grabbing;}
.photo-stage .orbit-track .shot{position:absolute;left:50%;top:50%;width:var(--card-width);margin:0;transform-origin:center;will-change:transform;}
.photo-stage .orbit-track .shot button{transform:none!important;box-shadow:none;border:0;border-radius:0;background:transparent;will-change:auto;}
.photo-stage .orbit-track .shot img{background:transparent;}
.photo-stage .orbit-track figcaption{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
@media(max-width:800px){.photo-stage .orbit-track{height:calc(min(49svh,520px) + 80px)}}
@media(prefers-reduced-motion:reduce){.photo-stage .orbit-track .shot{will-change:auto}}
/* Wide-radius, closely spaced photography with consistent portrait crops. */
.photo-stage .orbit-track{--card-width:min(32vw,calc(52svh * .666667),400px);height:calc(var(--card-width) * 1.5 + 76px);perspective:2600px;perspective-origin:50% 50%;}
.photo-stage .orbit-track .shot button{aspect-ratio:2/3;overflow:hidden;}
.photo-stage .orbit-track .shot img{width:100%;height:100%;aspect-ratio:2/3;object-fit:cover;object-position:center;}
@media(max-width:800px){.photo-stage .orbit-track{--card-width:min(70vw,calc(49svh * .666667));height:calc(var(--card-width) * 1.5 + 70px);}}
/* Keep the gallery nearly flat; soften only the viewport edges. */
.photo-stage .orbit-track{-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 8%,#000 92%,transparent 100%);mask-image:linear-gradient(to right,transparent 0%,#000 8%,#000 92%,transparent 100%);}
/* Slight display crop: keep the cable connector near the center. Originals stay intact. */
.photo-stage .orbit-track .cable-detail img,.photo-stage .orbit-track .cable-detail button:hover img{transform:translate(4%,-1%) scale(1.10);transform-origin:center;}

/* Audience follows the gallery in normal page flow. */
#photography{padding-bottom:16px;}
#reach{padding-top:20px;}
.gallery-autoplay[aria-pressed="false"]{border-color:#777;color:#eee;}
.gallery-controls button:focus-visible{outline:2px solid #eee;outline-offset:4px;}
.photo-stage .orbit-track{touch-action:pan-y pinch-zoom;}
@media(max-width:480px){.gallery-controls{flex-wrap:wrap}.gallery-hint{flex-basis:100%;max-width:none}.gallery-progress{min-width:24px}}
/* Alternate product photographs retain the original card dimensions. */
.hero-triptych .shot button{position:relative;}
.hero-triptych .shot .hero-hover-image{position:absolute;inset:0;width:100%;height:100%;opacity:0;pointer-events:none;transition:opacity .4s ease,transform .5s ease;}
.hero-triptych .shot button.show-alternate .hero-hover-image{opacity:1;}
@media(prefers-reduced-motion:reduce){.hero-triptych .shot img{transition:none;}}
.review-thumbnail{position:relative;overflow:hidden;}
.review-thumbnail .review-preview{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;pointer-events:none;z-index:1;transition:opacity .3s ease;}
.video-link.preview-playing .review-preview{opacity:1;}
.video-link.preview-playing .review-play{opacity:0;}
@media(prefers-reduced-motion:reduce){.review-thumbnail .review-preview{transition:none;}}
.reel-hover-card{position:relative;min-width:0;}
.reel-hover-card .reel-preview{display:block;}
.reel-video{z-index:1;display:block;border:0;outline:0;box-shadow:none;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;pointer-events:none;transition:opacity .3s ease;}
.reel-hover-card.preview-playing .reel-video{opacity:1;}
.reel-hover-card .reel-overlay,.reel-hover-card .reel-badge{z-index:2;}
.reel-sound{position:absolute;right:14px;top:48px;z-index:3;width:34px;height:34px;border:1px solid #ffffff60;border-radius:50%;background:#111b;color:white;cursor:pointer;font-size:18px;}
.reel-sound[hidden]{display:none;}
.reel-sound[aria-pressed="false"]{opacity:.65;}
.reel-sound:focus-visible{outline:2px solid white;outline-offset:3px;}
@media(prefers-reduced-motion:reduce){.reel-video{transition:none;}}
/* Let the film breathe, then bring back a quiet centered invitation. */
.reel-hover-card .reel-overlay{transition:opacity 1.1s ease;pointer-events:none;}
.reel-hover-card.preview-playing .reel-preview .reel-overlay{opacity:0;}
.reel-hover-card .reel-badge{transition:opacity 1.1s ease;pointer-events:none;}
.reel-hover-card.preview-playing .reel-badge{opacity:0;}
.reel-hover-card .reel-end-message{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;background:linear-gradient(transparent,rgba(0,0,0,.42),transparent);opacity:0;transition:opacity 1.2s ease;pointer-events:none;text-shadow:0 2px 12px #0008;}
.reel-hover-card .reel-end-message h3{font-size:clamp(16px,2.2vw,32px);line-height:1.2;margin:0 0 12px;font-weight:500;}
.reel-hover-card .reel-end-message p{font-size:12px;letter-spacing:.04em;color:#eee;margin:0;}
.reel-hover-card.preview-invitation .reel-end-message{opacity:1;}
@media(max-width:480px){.reel-hover-card .reel-end-message{padding:10px}.reel-hover-card .reel-end-message p{font-size:10px}}
@media(prefers-reduced-motion:reduce){.reel-hover-card .reel-overlay,.reel-hover-card .reel-badge,.reel-hover-card .reel-end-message{transition:none;}}
/* The lens is independent of the carousel and never captures input. */
.photo-magnifier{position:fixed;z-index:900;width:149.71px;height:149.71px;border-radius:50%;border:1px solid #ffffff70;box-shadow:0 5px 24px #0007;background-color:#111;background-repeat:no-repeat;pointer-events:none;opacity:0;transition:opacity .12s cubic-bezier(.2,0,.2,1);}
.photo-magnifier.visible{opacity:1;transition-duration:.45s;}
@media(hover:hover) and (pointer:fine){.photo-stage .orbit-track .shot button,.photo-stage .orbit-track .shot img{cursor:zoom-in;}}
@media(prefers-reduced-motion:reduce){.photo-magnifier{transition:none;}}

@media(hover:hover) and (pointer:fine){.photo-stage .orbit-track.magnifier-active .shot button,.photo-stage .orbit-track.magnifier-active .shot img{cursor:none;}}
/* Fixed translucent triangles: the page scrolls in front of the mark. */
body{isolation:isolate;}
body>.ambient-logo{position:fixed;inset:0;z-index:0;display:block;overflow:hidden;pointer-events:none;}
body>.ambient-logo img{position:absolute;top:-145px;left:50%;width:min(95vw,900px);max-width:none;height:auto;opacity:.23;filter:blur(9px);transform:translateX(-50%);will-change:auto;}
header#top{position:relative;z-index:1;isolation:isolate;overflow:hidden;}
header#top>.wrap{position:relative;z-index:1;}
body>main,body>footer{position:relative;z-index:1;background:var(--bg);}
.hero-identity>img{visibility:hidden;}
@media(max-width:800px){body>.ambient-logo img{width:850px;top:-110px;opacity:.20;filter:blur(10px);}}
@media(max-width:480px){body>.ambient-logo img{width:650px;top:-40px;opacity:.19;}}

/* Keep the background mark continuous behind the top navigation. */
body>nav{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;transition:background .3s ease;}
body>nav.nav-scrolled{background:rgba(11,11,11,.94);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);}
/* Render a small full-resolution crop; move the lens without layout or large background repaint. */
canvas.photo-magnifier{left:0;top:0;box-sizing:content-box;contain:layout paint;will-change:transform;}

/* Stable cursor across the whole gallery; no repeated fades at photo edges. */
.photo-magnifier,.photo-magnifier.visible{transition:none;}
@media(hover:hover) and (pointer:fine){
.photo-stage .orbit-track,.photo-stage .orbit-track:active,.photo-stage .orbit-track .shot,.photo-stage .orbit-track .shot button,.photo-stage .orbit-track .shot img{cursor:default;}
.photo-stage .orbit-track.magnifier-active,.photo-stage .orbit-track.magnifier-active .shot,.photo-stage .orbit-track.magnifier-active .shot button,.photo-stage .orbit-track.magnifier-active .shot img{cursor:none;}
}
/* Keep phone rendering flat and limit compositing to the photographs near the viewport. */
.photo-stage .orbit-track picture{display:block;}
@media(max-width:800px){
.photo-stage .orbit-track{perspective:none;}
.photo-stage .orbit-track .shot{will-change:auto;}
.photo-stage .orbit-track .shot[aria-hidden="false"]{will-change:transform;}
}
/* Native touch scrolling keeps the browser's own inertia and vertical page gestures. */
.photo-stage .orbit-track.native-touch-track{display:flex!important;gap:8px;align-items:center;overflow-x:auto;overflow-y:hidden;scroll-snap-type:none;scroll-behavior:auto;touch-action:auto;overscroll-behavior-x:contain;scrollbar-width:none;perspective:none;overflow-anchor:none;}
.photo-stage .orbit-track.native-touch-track::-webkit-scrollbar{display:none;}
.photo-stage .orbit-track.native-touch-track .shot{position:relative;left:auto;top:auto;flex:0 0 var(--card-width);width:var(--card-width);transform:none!important;will-change:auto;visibility:visible!important;opacity:1!important;}
