:root{--ink:#1c2430;--mute:#5d6673;--line:#d9dde3;--bg:#fff;--alt:#f4f6f8;--brand:#1f3a5f;--accent:#b4562b;
font-family:"PingFang TC","Noto Sans TC","Noto Sans CJK TC","Microsoft JhengHei",system-ui,sans-serif}
*{box-sizing:border-box}
body{margin:0;color:var(--ink);background:var(--bg);line-height:1.75;font-size:16px}
.wrap{max-width:1120px;margin:0 auto;padding:0 20px}
.top{border-bottom:1px solid var(--line);position:sticky;top:0;background:#fff;z-index:5}
.top .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 24px;padding-top:12px;padding-bottom:12px}
.brand{font-weight:700;color:var(--brand);text-decoration:none;letter-spacing:.04em}
nav{display:flex;gap:16px;font-size:14px}
nav a{color:var(--mute);text-decoration:none}
nav a:hover{color:var(--brand)}
h1,h2,h3{line-height:1.4;margin:0}
.hero{background:var(--brand);color:#fff;padding:64px 0 72px}
.eyebrow{font-size:13px;letter-spacing:.2em;color:#c9d4e3;margin:0 0 12px}
.hero h1{font-size:1.85rem;max-width:18em}
.sub{color:#dbe3ee;max-width:36em;margin:16px 0 0;font-size:1.05rem}
.sec{padding:56px 0}
.alt{background:var(--alt)}
.sec h2{font-size:1.5rem;color:var(--brand);padding-left:14px;border-left:4px solid var(--accent);margin-bottom:24px}
.lead{color:var(--mute);margin:-8px 0 28px}
.principles{display:grid;gap:28px}
.pr{border-top:1px solid var(--line);padding-top:16px}
.num{font-size:13px;color:var(--accent);font-weight:700;font-variant-numeric:tabular-nums}
.pr h3{font-size:1.1rem;margin:4px 0 6px}
.pr p{margin:0;color:var(--mute)}
/* org chart */
.org{display:flex;flex-direction:column;align-items:center}
.node{background:#fff;border:1px solid var(--brand);padding:10px 22px;text-align:center;font-weight:700;min-width:200px}
.node small{display:block;font-weight:400;font-size:13px;color:var(--mute)}
.node.top{background:var(--accent);border-color:var(--accent);color:#fff}
.node.top small{color:#f6e3d9}
.node.ceo{background:var(--brand);color:#fff}
.vline{width:2px;height:24px;background:var(--brand)}
.depts{width:100%;display:grid;gap:14px;border-top:2px solid var(--brand);padding-top:20px;position:relative}
.dept{background:#fff;border:1px solid var(--line);position:relative}
.dept::before{content:"";position:absolute;top:-21px;left:50%;width:2px;height:20px;background:var(--brand)}
.dh{background:#e6ebf2;color:var(--brand);font-weight:700;padding:8px 14px;border-bottom:1px solid var(--line)}
.dept ul{list-style:none;margin:0;padding:8px 14px 10px}
.dept li{font-size:14px;padding:3px 0 3px 14px;position:relative}
.dept li::before{content:"";position:absolute;left:0;top:.85em;width:8px;height:1px;background:var(--mute)}
/* cards */
.cards{display:grid;gap:18px}
.card{border:1px solid var(--line);padding:22px}
.card h3{font-size:1.15rem;color:var(--brand)}
.cd{color:var(--mute);margin:4px 0 14px;font-size:14px}
dl{margin:0}
dt{font-weight:700;margin-top:12px}
dd{margin:2px 0 0;color:var(--mute);font-size:15px}
/* flow */
.flow{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:26px}
.flow li{background:#fff;border:1px solid var(--brand);padding:12px 16px;font-weight:700;position:relative;display:flex;align-items:center;gap:12px}
.flow li span{font-size:13px;color:#fff;background:var(--brand);width:24px;height:24px;display:inline-grid;place-items:center;border-radius:50%;flex:none}
.flow li.human{border-color:var(--accent);border-width:2px}
.flow li.human span{background:var(--accent)}
.flow li:not(:last-child)::after{content:"";position:absolute;left:27px;bottom:-22px;border:7px solid transparent;border-top:10px solid var(--brand);border-bottom:0}
.foot{padding:28px 0;color:var(--mute);font-size:13px;border-top:1px solid var(--line)}
@media(min-width:720px){
 .hero{padding:96px 0 104px}.hero h1{font-size:2.5rem}
 .principles{grid-template-columns:repeat(2,1fr);gap:32px 40px}
 .cards{grid-template-columns:repeat(2,1fr)}
 .depts{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:719px){
 .depts{border-top:0;border-left:2px solid var(--brand);padding:0 0 0 18px;width:auto;align-self:stretch;margin-left:calc(50% - 1px)}
 .org .depts{margin-left:0;margin-top:-2px}
 .dept::before{top:18px;left:-19px;width:18px;height:2px}
}
@media(min-width:1000px){
 .principles{grid-template-columns:repeat(3,1fr)}
 .cards{grid-template-columns:repeat(3,1fr)}
 .depts{grid-template-columns:repeat(6,1fr);gap:10px}
 .flow{flex-direction:row;gap:22px}
 .flow li{flex:1;flex-direction:column;text-align:center;padding:14px 6px;font-size:15px}
 .flow li:not(:last-child)::after{left:auto;right:-18px;bottom:auto;top:50%;transform:translateY(-50%);border:7px solid transparent;border-left:10px solid var(--brand);border-right:0}
}
@media(min-width:720px){
 .depts{border-top:0}
 .depts::before{content:"";position:absolute;top:0;height:2px;background:var(--brand);left:calc(100%/6);right:calc(100%/6)}
}
@media(min-width:1000px){.depts::before{left:calc(100%/12);right:calc(100%/12)}}
@media(max-width:719px){
 .org .depts{border-left:0;gap:14px;padding-left:20px}
 .depts::before{content:"";position:absolute;top:0;left:0;width:calc(50% + 1px);height:2px;background:var(--brand)}
 .dept::after{content:"";position:absolute;left:-21px;top:-14px;width:2px;height:calc(100% + 14px);background:var(--brand)}
 .dept:first-child::after{top:0;height:100%}
 .dept:last-child::after{height:33px}
 .dept:first-child:last-child::after{height:19px}
 .dept::before{left:-21px;width:20px}
 .org .depts{margin-top:0}
}
.cond{font-style:normal;font-size:12px;font-weight:400;color:var(--accent);border:1px solid var(--accent);border-radius:3px;padding:0 6px;line-height:1.6}
@media(max-width:999px){.cond{margin-left:auto}}
/* articles */
.alist{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.alist li{border-bottom:1px solid var(--line);padding:14px 0;display:flex;flex-direction:column;gap:2px}
.alist a{color:var(--ink);font-weight:700;text-decoration:none;font-size:1.05rem}
.alist a:hover{color:var(--brand)}
.alist time,.post-meta{color:var(--mute);font-size:14px}
.narrow{max-width:720px}
.post{padding:32px 0 64px}
.back{font-size:14px;color:var(--brand);text-decoration:none}
.post-meta{margin:24px 0 6px}
.post h1{font-size:1.6rem;color:var(--ink);margin-bottom:28px}
.prose{font-size:17px;line-height:1.95}
.prose p{margin:0 0 1.2em}
.prose h2{font-size:1.25rem;color:var(--brand);margin:2em 0 .7em;padding:0;border:0}
.prose h3{font-size:1.1rem;margin:1.6em 0 .5em}
.prose ul,.prose ol{padding-left:1.4em;margin:0 0 1.2em}
.prose li{margin:.3em 0}
.prose blockquote{margin:1.4em 0;padding:4px 0 4px 16px;border-left:3px solid var(--line);color:var(--mute)}
.prose code{font-size:.9em;background:var(--alt);padding:1px 5px;border-radius:3px;word-break:break-all}
.prose pre{background:var(--alt);padding:14px;overflow-x:auto}
.prose a{color:var(--brand);word-break:break-word}
.prose table{border-collapse:collapse;display:block;overflow-x:auto}
.prose th,.prose td{border:1px solid var(--line);padding:6px 10px}
.post-end{margin-top:40px;padding-top:20px;border-top:1px solid var(--line);font-size:15px}
@media(min-width:720px){.alist li{flex-direction:row;justify-content:space-between;align-items:baseline}.post{padding-top:48px}.post h1{font-size:2rem}}
.lang-switch{display:flex;border:1px solid var(--line);border-radius:999px;overflow:hidden;font-size:13px}
.lang-switch a{padding:6px 12px;min-height:32px;display:inline-flex;align-items:center;color:var(--mute);text-decoration:none}
.lang-switch a[aria-current]{background:var(--brand);color:#fff}
@media(max-width:719px){nav{order:3;width:100%;flex-wrap:wrap;gap:6px 14px}}
