@font-face{font-family:SALora;src:url('/fonts/lora-roman.woff2') format('woff2');font-weight:400 700;font-style:normal;font-display:swap}
@font-face{font-family:SALora;src:url('/fonts/lora-italic.woff2') format('woff2');font-weight:400 700;font-style:italic;font-display:swap}
@font-face{font-family:SANews;src:url('/fonts/newsreader-roman.woff2') format('woff2');font-weight:200 800;font-style:normal;font-display:swap}
@font-face{font-family:SALatin;src:url('/fonts/instrument-sans.woff2') format('woff2');font-weight:400 700;font-style:normal;font-display:swap}
@font-face{font-family:SAChinese;src:url('/fonts/noto-sans-sc.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
:root{color-scheme:light;--paper:#f1e9dd;--ink:#213d31;--sub:#536355;--line:#bac1b1;--tint:#e7e2d5;--display:SALora,Georgia,serif;--body:SANews,Georgia,serif;--sans:SALatin,SAChinese,sans-serif;--zh:SAChinese,sans-serif}
:root[data-theme=wine]{--paper:#faf7f1;--ink:#742c3b;--sub:#725d5e;--line:#d4c4c2;--tint:#eee8e1}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--zh);font-synthesis:none;-webkit-text-size-adjust:100%}
[hidden]{display:none!important}
a{color:inherit;text-underline-offset:4px}
button,input{font:inherit;color:inherit}
button,a,input{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
button{border:0;background:transparent;padding:0}
img{display:block;max-width:100%;height:auto}
h1,h2,h3,p,figure{margin:0}
[lang=en]{font-family:var(--sans)}
.display{font-family:var(--display);font-weight:430;font-kerning:normal;letter-spacing:-.008em}
.site{max-width:1320px;margin:0 auto}
.skip{position:absolute;left:16px;top:8px;z-index:10;background:var(--ink);color:var(--paper);padding:12px;transform:translateY(-200%)}
.skip:focus{transform:translateY(0)}
.preview-ribbon{text-align:center;padding:7px 18px;border-bottom:1px solid var(--line);font:11px/1.7 var(--sans);color:var(--sub)}
.masthead{padding:29px 48px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:30px}
.brand-logo{flex-shrink:0}
.brand-logo img{width:240px;height:auto}
.navigation{display:flex;gap:29px}
.navigation a{text-decoration:none;display:grid;gap:5px;font-size:11px;line-height:1.7;white-space:nowrap}
.navigation [lang=en]{font-size:12px;font-weight:500}
.navigation [aria-current=page]{text-decoration:underline;text-underline-offset:5px}
.themes{display:flex;gap:3px;flex-shrink:0}
.themes button{width:32px;min-height:40px;display:grid;place-items:center}
.swatch{position:relative;width:13px;height:13px;border-radius:50%}
.swatch.green{background:#315843}
.swatch.wine{background:#7d3042}
.themes [aria-pressed=true] .swatch:after{content:'';position:absolute;inset:-4px;border:1px solid var(--ink);border-radius:50%}
main{padding:35px 48px 60px}
.overline{display:flex;justify-content:space-between;gap:20px;color:var(--sub);font-size:11px;line-height:1.8;margin-bottom:32px}
.hero{display:grid;grid-template-columns:1.05fr .95fr;gap:52px;align-items:center}
.photo{width:100%;aspect-ratio:3/4;object-fit:contain;background:var(--tint)}
.feature-image{display:block;min-width:0;text-decoration:none}
.feature-image:hover{text-decoration:none}
.feature-image:focus-visible{outline:2px solid var(--ink);outline-offset:6px}
figcaption{font-size:11px;line-height:1.8;color:var(--sub);margin-top:12px}
figcaption [lang=en]{display:block;margin-top:5px}
.eyebrow{font:500 11px/1.8 var(--sans);letter-spacing:.055em}
.eyebrow [lang=en]{margin-left:9px}
.hero-brand{font-size:clamp(66px,7.2vw,104px);line-height:1.03;margin:19px 0 26px;letter-spacing:-.018em}
.hero h1{font-size:29px;line-height:1.55;font-weight:400}
.hero-title{font-size:35px;line-height:1.23;margin-top:17px;text-wrap:pretty}
.intro{font-size:15px;line-height:1.9;color:var(--sub);margin-top:24px}
.intro-en{font-size:15px;line-height:1.65;color:var(--sub);margin-top:11px}
.read-link{display:flex;align-items:center;justify-content:space-between;gap:30px;width:max-content;max-width:100%;border-bottom:1px solid var(--ink);padding:13px 0;margin-top:25px;font-size:12px;line-height:1.8;text-decoration:none}
.read-link [lang=en]{margin-left:9px}
.section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:20px;border-top:1px solid var(--line);padding-top:23px;margin:52px 0 29px}
.section-heading h2{font-size:41px;line-height:1.15}
.section-heading>a,.section-heading>span{font-size:12px}
.section-heading>a{text-decoration:none}
.feature-secondary{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center}
.feature-secondary h2{font-size:27px;line-height:1.6;font-weight:400;margin:15px 0}
.feature-secondary .display{font-size:40px;line-height:1.2;text-wrap:pretty}
.story-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:46px 38px}
.story-card{min-width:0}
.story-image{display:block;margin-bottom:21px}
.story-title{display:block;text-decoration:none;margin-top:11px}
.story-title h2{font:400 22px/1.6 var(--zh)}
.story-title p{font-size:29px;line-height:1.25;margin-top:9px;text-wrap:pretty}
.card-intro{font-size:13px;line-height:1.85;color:var(--sub);margin-top:15px}
.card-intro [lang=en]{display:block;font-size:14px;line-height:1.65;margin-top:8px}
.back{display:inline-block;font-size:11px;line-height:1.8;text-decoration:none;margin-bottom:38px}
.article-heading{max-width:870px;margin:0 auto 43px;text-align:center}
.article-heading h1{font-size:31px;line-height:1.6;font-weight:400;margin:16px 0 16px}
.article-heading .english-title{font-size:50px;line-height:1.15;text-wrap:pretty}
.article-heading .intro,.article-heading .intro-en{max-width:730px;margin-left:auto;margin-right:auto}
.byline{font:11px/1.8 var(--sans);color:var(--sub);margin-top:23px}
.reading{display:grid;grid-template-columns:.95fr 1.05fr;gap:48px;align-items:start}
.paragraph{margin-bottom:28px}
.paragraph p{font-size:16px;line-height:1.95;font-weight:400}
.paragraph p[lang=en]{font:400 21px/1.6 var(--body);font-optical-sizing:auto;letter-spacing:0;color:var(--ink);margin-top:15px}
.takeaway{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0;margin:9px 0 28px}
.takeaway p{font-size:19px;line-height:1.8;font-weight:500}
.takeaway [lang=en]{font-family:var(--display);font-size:28px;line-height:1.35;font-weight:400;margin-top:16px}
.takeaway em{font:italic 400 1em/1.35 var(--display)}
.second-look{display:grid;grid-template-columns:.75fr 1fr;gap:43px;align-items:center;max-width:870px;margin:46px auto}
.second-look h2{font-size:37px;line-height:1.2;margin-bottom:20px}
.second-look h2 span{display:block;font:500 20px/1.6 var(--zh);letter-spacing:0;margin-top:11px}
.source-block{border-top:1px solid var(--line);padding-top:24px;color:var(--sub);font-size:12px;line-height:1.85}
.source-block p{margin-bottom:12px}
.source-block [lang=en]{display:block;margin-top:5px}
.source-block a [lang=en]{display:inline}
.source-block,.credit-list{overflow-wrap:anywhere}
.gallery-heading{border-top:1px solid var(--line);padding-top:25px;margin:42px 0 26px}
.gallery-heading h2{font:400 23px/1.7 var(--zh)}
.gallery-heading [lang=en]{display:block;font:430 34px/1.25 var(--display);letter-spacing:-.008em;margin-top:8px}
.full-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 28px;margin-bottom:38px}
.image-number{display:block;font:12px/1.7 var(--sans);margin-bottom:5px}
.pagination{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:38px;padding-top:22px;border-top:1px solid var(--line);font:12px/1.8 var(--sans)}
.pagination button{min-height:44px}.pagination button[disabled]{opacity:.4;cursor:default}
.pagination button [lang=en]{display:block;font-size:11px}
.page-heading{max-width:880px;margin:10px 0 42px}
.page-heading h1{font-size:28px;line-height:1.6;font-weight:400;margin:14px 0}
.page-heading>.display{font-size:65px;line-height:1.12;text-wrap:pretty}
.filter{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:25px 0;margin-bottom:36px}
.search-label{display:block;font-size:12px;line-height:1.8;color:var(--sub);margin-bottom:11px}
.search-row{display:flex;gap:20px;align-items:center}
.search-row input{flex:1;min-width:0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;color:var(--ink);padding:10px 0;font:18px/1.5 var(--sans)}
.search-row button{font-size:12px;white-space:nowrap;padding:11px 0}
.filter-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:21px}
.categories{display:flex;gap:26px;flex-wrap:wrap}
.categories button{font-size:12px;line-height:1.8}
.categories button [lang=en]{margin-left:5px;font-size:11px}
.categories [aria-pressed=true]{text-decoration:underline;text-underline-offset:6px}
.result{font:11px/1.8 var(--sans);color:var(--sub);white-space:nowrap}
.empty{padding:60px 0}
.empty h2{font-size:24px;font-weight:400;line-height:1.8}
.empty [lang=en]{display:block;margin-top:10px}
.empty p{font-size:14px;line-height:1.8;color:var(--sub);margin-top:18px}
.brand-list{border-top:1px solid var(--line)}
.brand-list>a{display:flex;justify-content:space-between;align-items:center;gap:25px;border-bottom:1px solid var(--line);padding:25px 0;text-decoration:none}
.brand-list .display{font-size:40px;line-height:1.2}
.brand-list>a>span:last-child{font-size:12px}
.text-page{max-width:900px;margin:auto;min-height:600px}
.text-page .page-heading{margin-bottom:40px}
.text-page .paragraph{margin-bottom:34px}
.about-follow{border-top:1px solid var(--line);padding-top:25px;margin-top:38px}
.about-follow h2,.text-subheading{font:400 21px/1.7 var(--zh)}
.about-follow h2 [lang=en]{display:block;margin-top:6px}
.contact-address{font-size:16px;line-height:1.7;margin-top:14px}
.contact-address>span{font-size:14px}
.text-subheading{margin:40px 0 20px}
.credit-list section{border-top:1px solid var(--line);padding:22px 0}
.credit-list h3{font-size:17px;line-height:1.7;font-weight:400}
.credit-list [lang=en]{display:block;margin-top:7px}
.credit-list p,.credit-list section>a{font-size:13px;line-height:1.9;color:var(--sub);margin-top:14px}
.credit-list section>a [lang=en]{display:inline}
.not-found h1{font-size:28px;font-weight:400;margin:25px 0}
.not-found>.display{font-size:50px;line-height:1.2;margin-bottom:27px}
.not-found>p:last-of-type{font-size:14px;line-height:1.8}
.not-found>p:last-of-type [lang=en]{display:block}
.follow{margin:0 48px;padding:34px 0;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:30px}
.follow h2{font-size:45px;line-height:1.2}
.follow p{font-size:13px;line-height:1.8;margin-top:13px}
.follow p [lang=en]{display:block;margin-top:5px}
.socials{display:flex;gap:28px;flex-wrap:wrap;margin-top:18px;font:12px/1.8 var(--sans)}
.socials>a{text-decoration:none;border-bottom:1px solid var(--ink);display:flex;gap:7px;align-items:center;padding-bottom:8px}
.social-pending{display:block;color:var(--sub)}
.social-pending>[lang=en]{margin-left:6px}
.social-pending small{display:block;font-size:11px;margin-top:4px}
.social-pending small [lang=en]{margin-left:5px}
.footer{padding:28px 48px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:25px;color:var(--sub);font-size:11px;line-height:1.8}
.footer>div>[lang=en]{display:block;margin-top:4px}
.footer nav{display:flex;gap:24px;flex-wrap:wrap}
.footer nav a{text-decoration:none}
.footer nav [lang=en]{display:block;margin-top:4px}
@media(max-width:900px){.masthead{padding:24px 28px;gap:22px}.navigation{gap:19px}.brand-logo img{width:200px}main{padding:30px 28px 48px}.hero,.feature-secondary{gap:34px}.hero-brand{font-size:76px}.hero h1{font-size:24px}.hero-title{font-size:29px}.article-heading .english-title{font-size:46px}.reading{gap:32px}.follow{margin:0 28px}.footer{padding:25px 28px}}
@media(max-width:700px){
 .full-gallery{grid-template-columns:1fr}
 .masthead{padding:21px 22px;gap:17px;flex-wrap:wrap}
 .brand-logo img{width:clamp(172px,48vw,196px)}
 .navigation{order:3;width:100%;justify-content:space-between;gap:12px;padding-top:16px;border-top:1px solid var(--line)}
 .navigation a{font-size:11px}.navigation [lang=en]{font-size:11px}
 .themes{margin-left:auto}
 main{padding:25px 22px 39px}
 .overline{display:block;margin-bottom:25px}.overline [lang=en]{display:block;margin-top:5px}
 .hero,.feature-secondary,.reading,.second-look{grid-template-columns:1fr;gap:27px}
 .hero-brand{font-size:clamp(42px,14vw,68px);margin-top:14px;margin-bottom:19px}
 .hero h1{font-size:25px}.hero-title{font-size:31px}
 .intro,.intro-en{font-size:14px}
 .section-heading{margin-top:40px;gap:17px}.section-heading h2{font-size:31px}.section-heading>a,.section-heading>span{font-size:11px}
 .feature-secondary h2{font-size:24px}.feature-secondary .display{font-size:33px}
 .story-grid{grid-template-columns:1fr;gap:35px}.story-title h2{font-size:22px}.story-title p{font-size:27px}
 .article-heading h1{font-size:25px}.article-heading .english-title{font-size:35px;line-height:1.2}.article-heading{margin-bottom:30px}
 .back{margin-bottom:29px}
 .paragraph p{font-size:15px}.paragraph p[lang=en]{font-size:20px;line-height:1.6}
 .takeaway p{font-size:18px}.takeaway [lang=en]{font-size:25px}
 .second-look h2{font-size:32px}.second-look{margin:31px 0}.second-look h2 span{font-size:18px}
 .page-heading>.display{font-size:44px}.page-heading h1{font-size:25px}
 .filter-bottom{display:block}.categories{gap:20px}.categories button [lang=en]{display:block;margin-left:0;margin-top:3px}.result{margin-top:18px}
 .search-label [lang=en]{display:block}
 .brand-list .display{font-size:clamp(24px,6.5vw,32px);min-width:0;overflow-wrap:anywhere}.brand-list>a{align-items:flex-start}.brand-list>a>span:last-child{font-size:11px;flex-shrink:0}.brand-list>a>span:last-child [lang=en]{display:block}
 .follow{display:block;margin:0 22px;padding:29px 0}.follow h2{font-size:35px}.socials{margin-top:23px}
 .footer{display:block;padding:24px 22px}.footer nav{margin-top:22px;gap:25px}
 .text-page{min-height:500px}.not-found>.display{font-size:39px}
}
@media(pointer:coarse){.themes button{width:36px;min-height:44px}.categories button,.search-row button{min-height:44px}.read-link{min-height:44px}.navigation a{min-height:44px}}
@media(prefers-reduced-motion:no-preference){a:hover{text-decoration:underline;text-underline-offset:5px}}
