:root{--ink:#1e2d33;--ink-2:#3c4b4f;--deep:#11262b;--deep2:#18393e;--paper:#f5f1e8;--paper2:#ebe7dc;--white:#fffdf7;--muted:#6e7874;--line:#cfcfc4;--teal:#4e897e;--gold:#e3bc83;--font:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.75 var(--font);-webkit-font-smoothing:antialiased}
::selection{background:#bdd8c9;color:var(--deep)}
a{color:inherit;text-underline-offset:.23em}a:focus-visible{outline:3px solid #be9860;outline-offset:5px}button{font:inherit}
.shell{width:min(100% - 72px,1180px);margin-inline:auto}
.skip-link{position:absolute;left:16px;top:-100px;padding:10px 20px;background:var(--white);z-index:99}.skip-link:focus{top:12px}
.site-header{position:relative;z-index:5;background:var(--paper);border-bottom:1px solid rgba(17,38,43,.12)}
.nav{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.wordmark{text-decoration:none;font-size:1.55rem;font-weight:760;letter-spacing:-.07em;line-height:1}
.wordmark span:first-child{font-weight:400}.wordmark-dot{color:var(--teal);font-size:1.7rem}
.nav-links{display:flex;gap:38px;align-items:center;font-size:.87rem;letter-spacing:.035em}
.nav-links a{text-decoration:none;position:relative;padding:8px 0;color:var(--ink-2);font-weight:580}
.nav-links a:hover,.nav-links a[aria-current=page]{color:var(--ink)}
.nav-links a[aria-current=page]::after{content:"";height:2px;background:var(--teal);position:absolute;bottom:2px;left:0;right:0}
.hero{display:grid;grid-template-columns:1.07fr .93fr;min-height:680px;align-items:stretch}
.hero-copy{padding:102px 58px 112px 0;align-self:center}
.eyebrow,.overline{letter-spacing:.2em;font-size:.68rem;font-weight:770;text-transform:uppercase}
.eyebrow{display:flex;gap:14px;align-items:center;color:var(--teal)}
.eyebrow-line{height:1px;background:currentColor;width:38px;display:inline-block}
.intro-label{font-size:1rem;color:var(--ink-2);margin:43px 0 9px;letter-spacing:.07em}
h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.26}
.hero h1{font-size:clamp(2.5rem,4.25vw,4.4rem);font-weight:680;letter-spacing:-.05em;margin:0 0 36px}
.hero h1 em,.manifesto-hero h1 em{font-style:normal;color:var(--teal)}
.hero-english{font-size:1.16rem;line-height:1.48;font-weight:690;letter-spacing:.01em;color:var(--deep)}
.lead{margin:24px 0 30px;max-width:530px;color:var(--ink-2);font-size:.99rem}
.actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.button{min-height:52px;padding:11px 21px;display:inline-flex;justify-content:center;align-items:center;gap:32px;font-size:.91rem;text-decoration:none;font-weight:670;transition:transform .2s ease,background .2s ease}
.button:hover{transform:translateY(-2px)}.button-dark{color:var(--white);background:var(--deep)}.button-dark:hover{background:#315b60}
.text-link{font-weight:650;font-size:.9rem;text-decoration:none;border-bottom:1px solid currentColor;display:inline-block;padding-bottom:4px}
.text-link:hover{color:var(--teal)}
.hatch-art{margin:38px 0 38px;position:relative;overflow:hidden;min-height:530px;background:linear-gradient(165deg,#1d373c 3%,#243f44 48%,#0c252b 100%)}
.hatch-horizon{position:absolute;inset:0;background:radial-gradient(ellipse at 60% 49%,rgba(247,227,181,.23),transparent 40%),radial-gradient(ellipse at 56% 100%,#49625c 0%,transparent 38%);opacity:.95}
.hatch-light{position:absolute;left:36%;right:34%;top:11%;bottom:17%;background:linear-gradient(150deg,#d8ead4 0%,#e4ddae 38%,#f4bc78 77%,#f8ddb0 100%);clip-path:polygon(14% 0,87% 0,100% 100%,0 100%);filter:drop-shadow(0 0 22px #f3dba0);box-shadow:0 0 120px #f8d6ab}
.hatch-panel{position:absolute;top:-10%;bottom:13%;width:47%;background:linear-gradient(105deg,#1a3236 0%,#344a49 76%,#829082 100%);box-shadow:0 0 23px rgba(0,0,0,.32);transform-origin:bottom}
.hatch-left{left:-7%;transform:skewY(-10deg);clip-path:polygon(0 0,100% 10%,100% 94%,0 100%)}
.hatch-right{right:-6%;transform:skewY(10deg);background:linear-gradient(270deg,#1a3136 0%,#2e4645 75%,#a1a08a 100%);clip-path:polygon(0 10%,100% 0,100% 100%,0 94%)}
.hatch-floor{position:absolute;bottom:-14%;height:40%;left:-5%;right:-5%;background:linear-gradient(160deg,rgba(24,42,42,.1),#11262b 60%);transform:skewY(4deg);border-top:1px solid rgba(248,210,140,.54)}
.hatch-floor:after{content:"";position:absolute;top:0;left:40%;width:32%;height:105%;background:linear-gradient(180deg,rgba(241,206,140,.68),transparent);clip-path:polygon(43% 0,56% 0,100% 100%,0 100%);opacity:.52}
.art-label,.art-index{position:absolute;bottom:22px;color:#e5e8df;font-size:.6rem;letter-spacing:.2em}.art-label{left:26px}.art-index{right:26px}
.band{background:var(--deep);color:#f4f0e6}
.band-content{min-height:150px;display:grid;grid-template-columns:140px 1fr 230px;align-items:center;gap:30px}
.band span{font-size:.65rem;letter-spacing:.13em;color:#acc0b7}
.band p{font-size:clamp(1.08rem,1.8vw,1.42rem);margin:0}.band strong{font-weight:730}.band span:last-child{text-align:right;line-height:1.7}
.section{padding-block:115px;display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}
.section-heading .overline{color:var(--teal);margin-bottom:25px}
.section-heading h2{font-size:clamp(2rem,3.2vw,3.12rem);letter-spacing:-.04em;font-weight:650;max-width:450px}
.section-copy{max-width:615px;font-size:1.07rem;color:var(--ink-2)}
.section-copy p{margin:0 0 23px}.section-aside{border-left:3px solid var(--teal);padding:8px 0 8px 23px;font-weight:630;color:var(--ink)!important}
.manifesto-feature{background:var(--deep2);color:#f2f0e9;padding-block:115px;position:relative;overflow:hidden}
.manifesto-feature::after{content:"";position:absolute;right:-130px;bottom:-230px;width:650px;height:650px;border:1px solid rgba(209,230,206,.13);border-radius:50%;box-shadow:0 0 0 100px rgba(221,235,209,.025),0 0 0 200px rgba(221,235,209,.018);pointer-events:none}
.manifesto-layout{display:grid;grid-template-columns:1fr 1fr;gap:60px;position:relative;z-index:1}
.overline.light{color:#9ab9ae}.manifesto-layout h2{margin-top:40px;font-size:clamp(2.75rem,5vw,5.4rem);letter-spacing:-.06em;font-weight:680}
.manifesto-feature-right{align-self:end;color:#c9d6cd;font-size:.98rem}
.manifesto-quote{font-size:clamp(1.4rem,2.2vw,2.1rem);font-weight:580;line-height:1.55;color:var(--white);margin-bottom:27px}
.button-outline{border:1px solid #9cb7aa;color:var(--white);margin-top:22px}.button-outline:hover{background:#284f4f}
.work-section{grid-template-columns:.8fr 1.2fr}.work-section .section-heading>p:last-child{color:var(--muted)}
.work-card{background:var(--white);border:1px solid var(--line);display:grid;grid-template-columns:175px 1fr;min-height:310px}
.work-badge{background:#d9e4d9;padding:25px;display:flex;flex-direction:column;justify-content:space-between;color:var(--deep)}
.work-symbol{font-size:3.7rem;font-family:ui-monospace,monospace;font-weight:300;letter-spacing:-.35em}.work-badge small{font-size:.61rem;letter-spacing:.12em}
.work-copy{padding:27px 33px}.work-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:.66rem;font-weight:700;letter-spacing:.04em;color:var(--muted)}
.pill{padding:4px 10px;border:1px solid #99a99d;background:#eff3eb;color:#425b50;border-radius:100px;font-size:.68rem;letter-spacing:0}
.work-copy h3{font-size:2rem;letter-spacing:-.03em;margin:22px 0 14px}.work-copy p{color:var(--ink-2);font-size:.91rem}
.work-copy .fine-print{font-size:.8rem;border-top:1px solid #e1e3da;padding-top:14px;margin-top:19px;color:var(--muted)}
.closing{border-top:1px solid var(--line);padding-block:70px 115px;text-align:center}
.closing-index{font-size:.66rem;letter-spacing:.2em;font-weight:700;color:var(--teal)}
.closing>p{font-size:clamp(2.6rem,5.4vw,5rem);line-height:1.32;font-weight:660;letter-spacing:-.045em;margin:30px 0}.closing>p span{color:var(--teal)}
.site-footer{background:#e9e6dd;border-top:1px solid #d3d3c8}
.footer-inner{display:grid;grid-template-columns:1fr 1fr;gap:85px;padding-block:66px}
.footer-brand{font-size:2rem;font-weight:760;letter-spacing:-.055em}.footer-inner p{font-size:.88rem;color:var(--ink-2);margin:6px 0 16px}.footer-note{max-width:440px}
.footer-clarity h2{font-size:.86rem;font-weight:760;letter-spacing:.06em;margin:8px 0 18px}
.footer-clarity .sep{margin:0 13px;color:var(--muted)}
.bottomline{display:flex;justify-content:space-between;border-top:1px solid #cbd0c7;padding-block:19px 28px;color:var(--muted);font-size:.74rem}
.manifesto-hero{background:#eae6da;overflow:hidden;position:relative}
.manifesto-hero:after{content:"";position:absolute;right:-80px;top:-120px;width:630px;height:630px;border-radius:50%;border:110px solid #d6dfd3;opacity:.42;box-shadow:0 0 0 65px rgba(33,98,92,.08);pointer-events:none}
.manifesto-hero-inner{padding-block:95px 100px;position:relative;z-index:1}
.manifesto-hero .overline{color:var(--muted);margin-top:50px}.manifesto-hero h1{font-size:clamp(4rem,8vw,8.6rem);letter-spacing:-.08em;font-weight:680;max-width:900px;margin:5px 0 29px}
.manifesto-lead{font-size:clamp(1.3rem,2.5vw,1.9rem);line-height:1.4;font-weight:640}
.manifesto-rule{display:flex;align-items:center;margin:55px 0 26px}.manifesto-rule span{height:1px;background:var(--teal);width:115px}.manifesto-rule i{width:9px;height:9px;background:var(--teal);border-radius:50%}
.manifesto-intro{font-size:1.04rem;max-width:600px;color:var(--ink-2)}
.manifesto-article{display:grid;grid-template-columns:1fr 2fr;gap:75px;padding-block:100px 130px}
.article-sidebar{position:relative}.article-sidebar .overline{color:var(--teal)}
.sidebar-label{font-size:2rem;font-weight:620;letter-spacing:-.04em;position:sticky;top:34px;margin-top:38px;line-height:1.55}
.article-body section{margin-bottom:75px}.article-body h2{font-size:clamp(1.55rem,2.6vw,2.3rem);letter-spacing:-.035em;margin:0 0 25px}
.article-body p{font-size:1.07rem;line-height:2;color:var(--ink-2);margin:0 0 23px}
.article-body strong{color:var(--ink)}
.article-body blockquote{margin:40px 0 0;background:#e7e8df;border-left:3px solid var(--teal);font-size:1.36rem;line-height:1.7;font-weight:660;padding:30px 35px;color:var(--ink)}
.acronym{margin:22px 0;padding:25px 29px;border:1px solid var(--line);background:#f9f6ef}
.acronym-title{display:block;font-size:.75rem;font-weight:690;color:var(--teal);margin-bottom:11px}
.acronym strong{font-size:clamp(1rem,1.9vw,1.32rem);line-height:1.5;display:block;letter-spacing:-.015em}
.acronym p{margin:10px 0 0;font-size:.89rem}
.manifesto-signoff{border-top:1px solid var(--line);padding-top:45px;display:flex;justify-content:space-between;align-items:end;gap:20px}
.manifesto-signoff p{font-weight:650;font-size:1.65rem;line-height:1.5;color:var(--ink)}
.english-manifesto{padding-block:95px;background:var(--deep);color:#e6eee7}
.english-inner{display:grid;grid-template-columns:1fr 1fr;gap:90px}
.english-inner h2{font-size:clamp(2.1rem,3.5vw,3.65rem);font-weight:660;letter-spacing:-.04em;line-height:1.33}
.english-inner h2 em{font-style:normal;color:#9cbbae}.english-inner>div:last-child{font-size:1.02rem;color:#d3e0d9}
.notfound{padding-block:130px 180px;min-height:65vh}.notfound h1{font-size:clamp(2.8rem,5vw,5rem);letter-spacing:-.05em}.notfound>p:nth-of-type(2){margin-bottom:32px;color:var(--muted)}
@media(max-width:960px){.hero{grid-template-columns:1fr 1fr;min-height:580px}.hero-copy{padding:60px 30px 60px 0}.hatch-art{min-height:470px}.band-content{grid-template-columns:110px 1fr}.band-content span:last-child{display:none}.section{gap:35px}.work-card{grid-template-columns:100px 1fr}.work-symbol{font-size:2.2rem}.footer-inner{gap:40px}.manifesto-article{gap:40px}}
@media(max-width:720px){.shell{width:min(100% - 36px,1180px)}.nav{min-height:72px}.wordmark{font-size:1.35rem}.nav-links{gap:18px;font-size:.77rem}.hero{grid-template-columns:1fr}.hero-copy{padding:55px 0 35px}.intro-label{margin-top:34px}.hero h1{font-size:clamp(2.5rem,8.1vw,3.6rem)}.lead{font-size:.96rem}.hatch-art{min-height:370px;margin:15px 0 38px}.band-content{min-height:126px;grid-template-columns:1fr;gap:0;padding-block:23px}.band-content p{font-size:1.1rem}.band-content span:first-child{font-size:.55rem}.section,.manifesto-layout,.footer-inner,.english-inner,.manifesto-article{grid-template-columns:1fr;gap:28px}.section{padding-block:75px}.manifesto-feature{padding-block:76px}.manifesto-layout h2{margin-top:22px}.manifesto-quote{margin-top:10px}.work-section .section-heading{margin-bottom:0}.footer-inner{padding-block:46px}.bottomline{gap:12px;flex-wrap:wrap}.manifesto-hero-inner{padding-block:75px}.manifesto-hero h1{font-size:clamp(3.5rem,12vw,5.8rem)}.manifesto-hero::after{right:-390px}.manifesto-article{padding-block:75px}.sidebar-label{display:none}.article-body section{margin-bottom:54px}.english-manifesto{padding-block:70px}.manifesto-signoff{flex-wrap:wrap}.closing{padding-block:62px 90px}}
@media(max-width:420px){.nav-links{gap:12px;font-size:.72rem}.wordmark{font-size:1.2rem}.hero h1{font-size:2.45rem}.actions{gap:18px}.work-card{display:block}.work-badge{height:85px;flex-direction:row;align-items:center}.work-copy{padding:24px}.art-label{font-size:.51rem}.manifesto-hero h1{font-size:3.36rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.button:hover{transform:none}}
/* Bilingual navigation and Knowledge Notes; retain the original brand layout. */
.nav{flex-wrap:wrap}
.language-switch{display:flex;align-items:center;gap:8px;font-size:.75rem;white-space:nowrap}
.language-switch a{text-decoration:none;padding:8px 2px}
.language-switch [aria-current=true]{font-weight:750;color:var(--teal)}
.english-page .hero h1{font-size:clamp(2.5rem,3.7vw,3.8rem);line-height:1.13}
.knowledge-note{border-top:1px solid var(--line);padding-block:55px 65px}
.knowledge-note .overline{color:var(--teal)}
.knowledge-note h2{max-width:850px;font-size:clamp(1.55rem,2.7vw,2.4rem);letter-spacing:-.03em}
.knowledge-note h2 a{text-decoration:none}.knowledge-note h2 a:hover{text-decoration:underline}
.knowledge-note>p:not(.overline){color:var(--ink-2);max-width:760px}
.note-main{padding-block:70px 100px}
.note-article{max-width:780px;margin-inline:auto;overflow-wrap:anywhere}
.note-header h1{font-size:clamp(2.1rem,4.5vw,3.8rem);letter-spacing:-.045em;line-height:1.14;margin-bottom:25px}
.note-header .overline{color:var(--teal)}.note-dates{font-size:.83rem;color:var(--muted)}
.note-intro{font-size:1.2rem;color:var(--deep)}
.note-article p,.note-article li{line-height:1.85}
.note-article section{margin-top:60px;scroll-margin-top:24px}
.note-article h2{font-size:clamp(1.6rem,2.5vw,2rem);letter-spacing:-.025em}
.note-article h3{font-size:1.12rem;margin-top:30px}
.note-article li{padding-left:3px;margin-block:8px}
.note-article ul,.note-article ol{padding-left:24px}
.note-toc{border:1px solid var(--line);background:var(--white);padding:25px 30px;margin-top:40px}
.note-toc h2{font-size:1.1rem}.note-toc ol{margin-bottom:0}
.note-article pre{max-width:100%;overflow-x:auto;background:var(--deep);color:var(--white);padding:22px;font-size:.8rem;line-height:1.7;white-space:pre;overflow-wrap:normal}
.note-article code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.9em}
.note-article pre code{font-size:inherit}
.note-table-wrap{max-width:100%;overflow-x:auto;border:1px solid var(--line);background:var(--white)}
.note-table-wrap:focus-visible{outline:3px solid var(--teal);outline-offset:4px}
.note-article table{border-collapse:collapse;width:100%;min-width:540px;font-size:.9rem;text-align:left}
.note-article caption{text-align:left;padding:15px;font-weight:650}
.note-article th,.note-article td{padding:13px 15px;border-top:1px solid var(--line);vertical-align:top}
.note-article thead{background:var(--paper2)}
.sharing-checklist{list-style-type:square}.note-back{border-top:1px solid var(--line);padding-top:30px;margin-top:60px}
@media(max-width:720px){.nav{column-gap:14px;row-gap:0;padding-block:14px}.nav-links{order:3;flex-basis:100%;justify-content:center;gap:25px;margin-top:8px}.language-switch{margin-left:auto}.english-page .hero h1{font-size:clamp(2.5rem,8.1vw,3.6rem)}.note-main{padding-block:45px 70px}.note-toc{padding:22px}.note-article pre{padding:16px}.knowledge-note{padding-block:40px 50px}}
