@charset "UTF-8";
:root{--paper:#f3f3ef;--ink:#212422;--muted:#686c67;--line:#cfd2ca;--accent:#e74726;--serif:"Songti SC","STSong","Noto Serif CJK SC",serif;--sans:"Helvetica Neue","Arial","PingFang SC","Microsoft YaHei",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}body.dialog-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}img{display:block;width:100%;height:100%;object-fit:cover}p,h1,h2,h3{margin:0}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:6px}button:disabled{cursor:default}.page-gutter{padding-inline:4.6vw}.skip-link{position:fixed;top:10px;left:10px;z-index:100;background:var(--ink);color:white;padding:12px 24px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}
.site-header{min-height:118px;display:flex;align-items:center;justify-content:space-between;padding:22px 4.6vw;border-bottom:1px solid var(--line);gap:30px}.brand{display:flex;align-items:center;gap:13px;flex-shrink:0}.brand-cn{font-family:var(--serif);font-size:44px;font-weight:600;line-height:1}.brand-dot{color:var(--accent)}.brand-en{font-size:12px;line-height:1.2;font-weight:700;letter-spacing:1.5px;border-left:1px solid var(--ink);padding-left:13px}.site-header nav{display:flex;gap:38px;align-items:center;margin-left:auto}.nav-link{font-size:14px;display:flex;gap:9px;align-items:center;min-height:44px}.nav-link span{font-size:12px;color:var(--muted);letter-spacing:.08em}.nav-link:hover{color:var(--accent)}.header-caption{font-size:12px;letter-spacing:.08em;margin-left:4vw}
.intro{padding-top:48px;padding-bottom:34px}.intro-meta{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:13px;letter-spacing:.06em;color:var(--muted)}.intro-meta p:first-child{color:var(--ink);font-size:14px}.intro-title-row{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:35px 0 24px}.intro h1{font-family:var(--serif);font-size:clamp(48px,6.25vw,108px);font-weight:500;letter-spacing:-.055em;line-height:1.2}.orange-period{color:var(--accent)}.mobile-break{display:none}.viewfinder{width:64px;height:64px;background:linear-gradient(var(--accent),var(--accent)) left top/18px 3px no-repeat,linear-gradient(var(--accent),var(--accent)) left top/3px 18px no-repeat,linear-gradient(var(--accent),var(--accent)) right top/18px 3px no-repeat,linear-gradient(var(--accent),var(--accent)) right top/3px 18px no-repeat,linear-gradient(var(--accent),var(--accent)) left bottom/18px 3px no-repeat,linear-gradient(var(--accent),var(--accent)) left bottom/3px 18px no-repeat,linear-gradient(var(--accent),var(--accent)) right bottom/18px 3px no-repeat,linear-gradient(var(--accent),var(--accent)) right bottom/3px 18px no-repeat;display:grid;place-items:center;flex-shrink:0;transform:rotate(-4deg)}.viewfinder span{width:6px;height:6px;background:var(--accent)}.intro-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px}.intro-bottom>p{font-family:Georgia,serif;font-style:italic;font-size:24px;color:#5d655e}.text-link{display:flex;gap:16px;align-items:center;font-size:14px;min-height:44px}.link-line{height:1px;width:48px;background:currentColor;transition:width .2s}.text-link:hover .link-line{width:65px}
.hero-frame{position:relative}.hero-image-button{width:100%;height:clamp(370px,45vw,720px)}.image-open{display:block;position:relative;padding:0;border:0;background:#333b36;overflow:hidden;text-align:left}.image-open img{transition:transform .7s cubic-bezier(.2,.65,.3,1)}.image-open:hover img{transform:scale(1.035)}.hero-image{object-position:50% 48%}.hero-image-button::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.06) 40%,rgba(0,0,0,.38));pointer-events:none}.image-open-label{position:absolute;right:28px;bottom:26px;display:flex;align-items:center;gap:14px;font-size:14px;color:#fff;z-index:2}.image-open-label>span{display:grid;place-items:center;border:1px solid #ffffff80;width:38px;height:38px;border-radius:50%;font-size:24px;line-height:1;transition:background .2s}.image-open:hover .image-open-label>span{background:#ffffff25}.hero-overlay{position:absolute;top:0;left:0;right:0;height:clamp(370px,45vw,720px);padding:34px 4.6vw 48px;display:flex;flex-direction:column;justify-content:space-between;pointer-events:none;color:#fff}.hero-overlay>span{font-size:12px;letter-spacing:.14em}.hero-overlay p{font-family:var(--serif);font-size:clamp(32px,3.3vw,56px);line-height:1.55;letter-spacing:.12em;margin-bottom:14px}.hero-overlay div>span{font-size:12px;letter-spacing:.11em}.hero-caption{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-block:16px;font-size:13px;border-bottom:1px solid var(--line)}.concept-label{font-size:12px;color:var(--muted);letter-spacing:.01em}
.vision-section{padding-top:100px;padding-bottom:110px}.section-heading{display:grid;grid-template-columns:1fr 2fr;margin-bottom:60px;gap:35px}.eyebrow{font-size:12px;letter-spacing:.1em;font-weight:500}.eyebrow>span{color:var(--accent);margin-right:18px}.section-heading>div{display:flex;justify-content:space-between;gap:35px;align-items:end}.section-heading h2,.about-content h2{font-family:var(--serif);font-size:clamp(34px,3vw,50px);font-weight:500;letter-spacing:-.025em;line-height:1.5}.section-intro{font-size:15px;color:var(--muted);line-height:1.9}.vision-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:7vw}.card-image{width:100%;height:auto;aspect-ratio:1/1.07}.outdoor-card{padding-top:150px}.outdoor-card .card-image{aspect-ratio:1.28/1}.outdoor-card .card-image img{object-position:65% 50%}.image-category{position:absolute;top:20px;left:22px;font-size:12px;letter-spacing:.12em;color:white;background:#161a175c;padding:3px 7px}.card-caption{display:flex;align-items:center;justify-content:space-between;padding-top:26px;gap:15px}.card-caption .eyebrow{color:var(--muted)}.card-caption h3{font-family:var(--serif);font-size:27px;font-weight:500;margin-top:7px;line-height:1.45}.caption-plus{font-size:30px;font-weight:300;color:var(--accent)}.card-description{font-size:16px;color:#5d625c;max-width:34em;line-height:1.9;margin:16px 0 10px}
.about-section{background:#dfe2da;display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:6vw;padding-top:80px;padding-bottom:86px}.about-side{display:flex;flex-direction:column;min-width:0}.about-portrait{margin:28px 0 0}.about-photo{width:100%;background:#08090d}.about-photo img{width:100%;height:auto;aspect-ratio:1920/1161;object-fit:contain}.about-photo:hover img{transform:none}.about-portrait figcaption{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;padding-top:16px;font-size:14px;color:#444e45}.about-portrait figcaption>span:first-child{display:flex;align-items:baseline;gap:12px;font-size:18px;color:var(--ink)}.portrait-english-name{font-size:12px;letter-spacing:.08em}.about-content>.eyebrow{font-size:14px;letter-spacing:.05em;margin-bottom:20px}.about-content h2{font-size:clamp(40px,4.7vw,72px);line-height:1.35;margin-bottom:34px}.about-content>p:not(.eyebrow){font-size:17px;line-height:2;max-width:32em;color:#444e45;margin-top:15px}.about-signature{display:flex;align-items:center;gap:20px;margin-top:38px}.about-signature>span:first-child{font-family:var(--serif);font-size:31px}.about-signature>span:last-child{font-size:12px;line-height:1.5;letter-spacing:.1em;color:#515b52}
.site-footer{padding-top:55px;padding-bottom:30px}.footer-main{display:flex;justify-content:space-between;gap:25px;align-items:center;padding-bottom:38px}.footer-wordmark{font-family:var(--serif);font-size:44px;line-height:1.1}.footer-wordmark>span:first-child{color:var(--accent)}.footer-wordmark>span:last-child{font-family:var(--sans);font-size:clamp(19px,2.5vw,36px);font-weight:500;letter-spacing:-.04em;margin-left:12px}.back-top{min-height:44px;display:flex;gap:18px;align-items:center;font-size:14px;white-space:nowrap}.back-top span{font-size:25px;color:var(--accent)}.footer-meta{padding-top:23px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:12px;letter-spacing:.035em}.preview-notice{color:var(--muted);font-size:12px;margin-top:20px}
dialog{max-width:none;max-height:none;width:100%;height:100dvh;margin:0;padding:22px 4vw;background:#161a17;color:#fff;border:0}dialog::backdrop{background:#161a17}dialog[open]{display:flex;flex-direction:column}.lightbox-top{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-shrink:0;min-height:50px;font-size:16px}.close-dialog{background:transparent;color:white;border:0;padding:10px;display:flex;align-items:center;gap:14px}.close-dialog span{font-size:32px;line-height:1}.lightbox-image-wrap{min-height:0;flex:1;padding:15px 0}.lightbox-image-wrap img{object-fit:contain}.lightbox-note{font-size:13px;color:#bbc3bb;padding:10px 0;text-align:center}
@media(min-width:1800px){.page-gutter{padding-inline:max(5vw,calc((100vw - 1640px)/2))}.site-header{padding-inline:max(5vw,calc((100vw - 1640px)/2))}}
@media(max-width:1000px){.header-caption{display:none}.site-header{min-height:100px}.intro h1{font-size:7vw}.viewfinder{width:48px;height:48px}.section-heading{grid-template-columns:1fr;gap:24px}.section-heading>div{align-items:center}.vision-grid{gap:5vw}.card-caption h3{font-size:24px}.outdoor-card{padding-top:100px}.about-section{gap:5vw}}
@media(max-width:650px){.page-gutter{padding-inline:22px}.site-header{padding:18px 22px;min-height:90px;gap:16px}.brand-cn{font-size:34px}.brand{gap:8px}.brand-en{font-size:10px;padding-left:8px;letter-spacing:1px}.site-header nav{gap:18px}.nav-link{font-size:14px;white-space:nowrap}.nav-link span{display:none}.intro{padding-top:30px;padding-bottom:26px}.intro-meta>p:last-child{display:none}.intro-meta>p:first-child{font-size:13px}.intro-title-row{padding:28px 0 20px;align-items:center;gap:12px}.intro h1{font-size:clamp(43px,11vw,65px);letter-spacing:-.045em;line-height:1.32}.mobile-break{display:block}.viewfinder{width:40px;height:40px;transform:rotate(-4deg);align-self:flex-start;margin-top:10px}.intro-bottom{align-items:start;gap:12px;flex-direction:column}.intro-bottom>p{font-size:20px}.text-link{font-size:13px;min-height:36px}.hero-image-button,.hero-overlay{height:450px}.hero-image{object-position:54% center}.hero-overlay{padding:24px 22px 80px}.hero-overlay p{font-size:32px}.hero-overlay div>span{font-size:10px;letter-spacing:.06em}.image-open-label{right:20px;bottom:20px;font-size:13px}.hero-caption{align-items:start;flex-direction:column;gap:4px;padding-block:14px}.vision-section{padding-top:62px;padding-bottom:64px}.section-heading{margin-bottom:32px;gap:24px}.section-heading>div{display:block}.section-heading h2{font-size:34px}.section-intro{margin-top:18px;font-size:15px}.vision-grid{grid-template-columns:1fr;gap:42px}.outdoor-card{padding-top:0}.card-image{aspect-ratio:1/1.05}.card-caption{padding-top:20px}.card-caption h3{font-size:25px}.card-description{font-size:16px;margin-top:12px}.about-section{grid-template-columns:1fr;padding-top:45px;padding-bottom:50px;gap:40px}.about-portrait{margin-top:22px}.about-content h2{font-size:46px;margin-bottom:22px}.about-content>p:not(.eyebrow){font-size:16px}.about-content>.eyebrow{margin-bottom:14px}.about-signature{margin-top:28px}.site-footer{padding-top:38px;padding-bottom:28px}.footer-main{align-items:start;padding-bottom:28px;gap:10px}.footer-wordmark{font-size:34px;display:block}.footer-wordmark>span:last-child{font-size:18px;display:block;margin-left:0;margin-top:8px;letter-spacing:.005em}.back-top{font-size:13px;gap:8px}.footer-meta{flex-wrap:wrap;gap:8px 20px}.footer-meta>span:nth-child(2){display:none}.footer-meta>span:last-child{margin-left:auto}.preview-notice{line-height:1.8;font-size:12px}dialog{padding:15px 18px}.lightbox-top{font-size:14px}.close-dialog{font-size:14px}.lightbox-note{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* A complete photographic story, with every frame kept at its original ratio. */
.case-section{padding-top:80px;padding-bottom:96px;border-top:1px solid var(--line);background:#eaece7}
.case-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:6vw;align-items:end;margin-bottom:36px}
.case-heading h2{font-family:var(--serif);font-size:clamp(44px,5vw,76px);font-weight:500;letter-spacing:.025em;line-height:1.3;margin-top:22px}
.case-english{font-size:12px;letter-spacing:.22em;color:var(--muted);margin-top:12px}
.case-intro{max-width:28em;font-size:16px;line-height:2;color:#515b52;padding-bottom:4px}
.case-meta{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid #c6ccc2;padding:16px 0 30px;font-size:12px;color:#626b60;letter-spacing:.06em}
.case-meta strong{font-weight:500;color:var(--ink);margin-right:20px}
.case-gallery{column-count:3;column-gap:24px}
.case-photo{display:inline-block;vertical-align:top;width:100%;margin:0 0 26px;break-inside:avoid}
.case-image{width:100%;background:#dce1dd}
.case-image img{height:auto;object-fit:contain}
.case-image:hover img{transform:none}
.case-zoom{position:absolute;bottom:12px;right:12px;display:grid;place-items:center;width:32px;height:32px;border:1px solid #fff9;border-radius:50%;color:#fff;background:#19231e60;font-size:22px;line-height:1;opacity:0;transition:opacity .2s}
.case-image:hover .case-zoom,.case-image:focus-visible .case-zoom{opacity:1}
.case-photo figcaption{display:flex;align-items:baseline;gap:12px;padding-top:10px;color:#515b52;font-size:12px;line-height:1.5}
.case-photo-number{font-size:10px;color:#7b8378;font-variant-numeric:tabular-nums;letter-spacing:.08em}
.case-end{display:flex;justify-content:space-between;gap:20px;align-items:center;border-top:1px solid #c6ccc2;padding-top:25px;margin-top:12px;font-size:12px;color:#626b60;letter-spacing:.04em}
.case-end a{display:flex;align-items:center;gap:12px;min-height:44px;color:var(--ink)}
.case-end a span{color:var(--accent);font-size:20px}
.lightbox-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 36px;flex-shrink:0}
.lightbox-navigation{display:flex;align-items:center;justify-content:center;gap:16px}
.lightbox-navigation[hidden]{display:none}
.lightbox-navigation button{width:44px;height:44px;border:1px solid #677368;background:transparent;color:white;border-radius:50%;font-size:21px}
.lightbox-navigation button:disabled{opacity:.3}
.lightbox-navigation button:hover:not(:disabled){background:#ffffff15}
.lightbox-counter{font-size:12px;letter-spacing:.12em;font-variant-numeric:tabular-nums;min-width:60px;text-align:center}
@media(hover:none){.case-zoom{opacity:1}}
@media(max-width:900px){.case-gallery{column-count:2;column-gap:20px}.case-heading{gap:5vw}.case-intro{font-size:15px}}
@media(max-width:650px){
  .site-header{flex-wrap:wrap;row-gap:14px;padding-bottom:12px}
  .site-header nav{width:100%;justify-content:space-between;margin-left:0;gap:16px}
  .case-section{padding-top:48px;padding-bottom:52px}
  .case-heading{grid-template-columns:1fr;gap:24px;margin-bottom:24px}
  .case-heading h2{font-size:46px;margin-top:18px}
  .case-intro{max-width:32em}
  .case-meta{padding:14px 0 22px;font-size:11px;gap:10px;align-items:start}
  .case-meta strong{display:block;margin:0 0 3px}
  .case-gallery{column-gap:12px}
  .case-photo{margin-bottom:18px}
  .case-photo figcaption{font-size:11px;gap:7px;padding-top:8px}
  .case-photo-number{font-size:9px}
  .case-zoom{width:26px;height:26px;right:8px;bottom:8px;font-size:18px}
  .case-end{font-size:11px;gap:12px;padding-top:16px}
  .lightbox-bottom{flex-direction:column;gap:4px}
  .lightbox-bottom .lightbox-note{padding:4px 0}
}
