*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --ts-gold:#AE9B7E;
  --ts-gold-deep:#8D7E66;
  --ts-ink:#2B2620;
  --ts-gray:#6B6357;
  --ts-gray-light:#9A9284;
  --ts-border:#E6E0D4;
  --ts-bg-warm:#F5F2EC;
  --ts-bg:#FFFFFF;
  --ts-serif:'Noto Serif TC',serif;
  --ts-sans:'Nunito Sans',sans-serif;
}
html{font-size:16px}
body{background:var(--ts-bg);color:var(--ts-ink);font-family:var(--ts-sans);line-height:1.8}
a{color:var(--ts-gold-deep);text-decoration:none}
a:hover{text-decoration:underline}

.ts-topbar{background:var(--ts-gold);color:#fff;text-align:center;font-size:0.8125rem;letter-spacing:0.15em;padding:11px 0}
.ts-header{background:var(--ts-bg)}
.ts-header-inner{max-width:1240px;margin:0 auto;padding:22px 32px;display:flex;align-items:center;justify-content:space-between;gap:32px}
.ts-logo{display:flex;align-items:center;gap:10px;text-decoration:none!important}
.ts-logo-mark{width:36px;height:36px;border:1.5px solid var(--ts-gold);display:flex;align-items:center;justify-content:center;font-family:var(--ts-serif);font-size:1.125rem;color:var(--ts-gold-deep)}
.ts-logo-text{font-family:var(--ts-serif);font-size:1.25rem;font-weight:700;color:var(--ts-ink);letter-spacing:0.05em}
.ts-nav{display:flex;align-items:center;gap:30px}
.ts-nav a{font-size:0.8125rem;color:var(--ts-gray)!important;letter-spacing:0.03em;text-decoration:none!important}
.ts-nav a:hover{color:var(--ts-gold-deep)!important}

.ts-page-hero{background:var(--ts-bg-warm);border-bottom:1px solid var(--ts-border);padding:44px 20px;text-align:center}
.ts-page-hero h1{font-family:var(--ts-serif);font-size:1.75rem;font-weight:700;color:var(--ts-ink);margin-bottom:8px}
.ts-page-hero .ts-updated{font-size:0.8125rem;color:var(--ts-gray-light)}

.ts-page-main{max-width:840px;margin:0 auto;padding:40px 20px 56px}
.ts-page-main h2{font-family:var(--ts-serif);font-size:1.0625rem;font-weight:700;color:var(--ts-gold-deep);margin:32px 0 14px;padding-bottom:8px;border-bottom:2px solid var(--ts-border)}
.ts-page-main h2:first-child{margin-top:0}
.ts-page-main p{font-size:0.9375rem;color:var(--ts-gray);margin-bottom:12px}
.ts-page-main ul{margin:8px 0 12px 22px}
.ts-page-main li{font-size:0.9375rem;color:var(--ts-gray);margin-bottom:6px}
.ts-page-main strong{color:var(--ts-ink)}
.ts-contact-box{background:var(--ts-bg-warm);border:1px solid var(--ts-border);padding:16px 18px;margin-top:12px;font-size:0.9375rem}

.ts-footer{background:var(--ts-bg-warm);padding:48px 0 24px;border-top:1px solid var(--ts-border)}
.ts-footer-inner{max-width:1240px;margin:0 auto;padding:0 32px}
.ts-footer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;margin-bottom:32px}
.ts-footer-col h5{font-family:var(--ts-serif);font-size:0.9375rem;font-weight:700;color:var(--ts-ink);margin-bottom:16px}
.ts-footer-col p{font-size:0.8125rem;color:var(--ts-gray);line-height:1.75}
.ts-footer-links{list-style:none;display:flex;flex-direction:column;gap:8px}
.ts-footer-links a{font-size:0.8125rem;color:var(--ts-gray)!important;text-decoration:none!important}
.ts-footer-links li{font-size:0.8125rem;color:var(--ts-gray)}
.ts-footer-bottom{border-top:1px solid var(--ts-border);padding-top:16px}
.ts-footer-bottom p{font-size:0.75rem;color:var(--ts-gray-light)}

@media(max-width:900px){
  .ts-nav{display:none}
  .ts-footer-grid{grid-template-columns:1fr;gap:24px}
}
