:root{--color-ink: #17191d;--color-text: #303640;--color-muted: #727783;--color-subtle: #ece9e1;--color-panel: #fffdfa;--color-canvas: #f7f3ec;--color-accent: #2f6f65;--color-accent-strong: #204f48;--color-line: #ddd7cb;--color-warm: #a86632;--color-wash: #efe8dc;--shadow-soft: 0 22px 52px rgba(35, 31, 25, .08);--radius: 8px;--container: 1120px;--content: 760px;--space-page: clamp(48px, 8vw, 96px);--space-section: clamp(58px, 9vw, 108px);--font-sans: "Inter", "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-serif: "Source Han Serif TC", "Noto Serif TC", "Songti TC", "PMingLiU", Georgia, serif}*{box-sizing:border-box}html{color:var(--color-ink);background:var(--color-canvas);font-family:var(--font-sans);scroll-behavior:smooth}body{margin:0;min-width:320px;font-size:16px;line-height:1.75;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}body:before{position:fixed;inset:0;z-index:-1;content:"";background:linear-gradient(180deg,#fffdf8f0,#f7f3ecfa),linear-gradient(90deg,rgba(47,111,101,.06),transparent 34%,rgba(168,102,50,.06))}a{color:inherit;text-decoration:none}a:hover{color:var(--color-accent)}a{transition:color .16s ease,border-color .16s ease,background-color .16s ease}img,svg{display:block;max-width:100%}p,h1,h2,h3,ul,ol,blockquote,figure{margin-top:0}p{color:var(--color-text);margin-bottom:1.1rem}h1,h2,h3{color:var(--color-ink);font-weight:760;letter-spacing:0;text-wrap:balance}strong{color:var(--color-ink)}.page-section{padding:var(--space-section) 0}.section-kicker{margin-bottom:12px;color:var(--color-accent);font-size:.76rem;font-weight:780;letter-spacing:.09em;text-transform:uppercase}.section-title{max-width:760px;margin-bottom:18px;font-size:clamp(1.72rem,3.4vw,3rem);line-height:1.16;letter-spacing:0}.section-copy{max-width:720px;color:var(--color-text);font-size:clamp(1rem,1.5vw,1.08rem)}.button-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border:1px solid var(--color-line);border-radius:999px;background:#fffdfac7;color:var(--color-ink);font-weight:720;line-height:1.2}.button:hover{border-color:#2f6f6561;background:#fff;color:var(--color-accent-strong)}.button.primary{border-color:var(--color-accent);background:var(--color-accent);color:#fff}.button.primary:hover{border-color:var(--color-accent-strong);background:var(--color-accent-strong);color:#fff}.grid{display:grid;gap:clamp(18px,2.5vw,26px)}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.panel{border:1px solid var(--color-line);border-radius:var(--radius);background:#fffdfad6;box-shadow:var(--shadow-soft)}.content-page{padding:var(--space-page) 0 calc(var(--space-page) + 16px)}.article-body{max-width:var(--content);font-family:var(--font-serif);font-size:clamp(1.05rem,1.8vw,1.16rem);line-height:1.92}.article-body h2{margin-top:2.5em;margin-bottom:.72em;font-family:var(--font-sans);font-size:clamp(1.45rem,3vw,1.9rem);line-height:1.34}.article-body h3{font-family:var(--font-sans)}.article-body ul{padding-left:1.2rem;color:var(--color-text)}.article-body p{color:var(--color-text);margin-bottom:1.28em}.image-well{position:relative;overflow:hidden;border:1px solid rgba(221,215,203,.9);border-radius:var(--radius);background:linear-gradient(135deg,#2f6f651f,#a8663214),linear-gradient(180deg,#fffdfa73,#efe8dcc7)}.image-well:after{position:absolute;inset:14px;border:1px solid rgba(255,253,250,.54);border-radius:calc(var(--radius) - 2px);content:"";pointer-events:none}.image-well-label{position:absolute;right:16px;bottom:14px;max-width:min(260px,calc(100% - 32px));color:#17191d94;font-size:.78rem;font-weight:760;letter-spacing:.08em;line-height:1.35;text-transform:uppercase}@media(max-width:640px){body{font-size:16px;line-height:1.74}.page-section{padding:54px 0}.content-page{padding:46px 0 68px}.section-title{font-size:clamp(1.6rem,8.2vw,2.16rem);line-height:1.2}.button-row{width:100%;gap:10px;margin-top:26px}.button{min-height:46px;padding-inline:16px}}@media(max-width:820px){.grid.three,.grid.two{grid-template-columns:1fr}}
