:root{--bg:#08131f;--panel:#0f2133;--ink:#eef3f8;--muted:#9fb3c8;--gold:#c9a24a;--line:#06c755;--rule:rgba(255,255,255,.12)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:"Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif;line-height:1.75;padding-bottom:64px}
a{color:var(--gold)}
img{display:block;width:100%;height:auto;border-radius:6px;background:var(--panel)}
.top{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 20px;background:rgba(8,19,31,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--rule)}
.brand{font-family:"Playfair Display",serif;color:var(--ink);text-decoration:none;font-size:18px;letter-spacing:.06em;white-space:nowrap}
.brand span{font-family:"Noto Sans TC",sans-serif;font-size:14px;color:var(--gold);margin-left:6px}
nav ul{list-style:none;margin:0;padding:0;display:flex;gap:4px;flex-wrap:wrap}
nav a{display:block;padding:6px 12px;color:var(--muted);text-decoration:none;border-radius:4px;font-size:15px}
nav a:hover,nav a[aria-current]{color:var(--ink);background:rgba(255,255,255,.07)}
.menu-toggle,.menu-btn{display:none}
.hero{text-align:center;padding:72px 20px 56px;background:radial-gradient(ellipse at top,#1b3a5a 0%,var(--bg) 70%)}
.hero-home{padding:96px 20px 72px}
.eyebrow{font-family:"Playfair Display",serif;letter-spacing:.25em;color:var(--gold);margin:0 0 8px;font-size:15px}
.hero h1{margin:0;font-size:clamp(28px,6vw,48px);line-height:1.3}
.where{color:var(--muted);font-size:18px;margin:8px 0 28px}
.contact-line{color:var(--muted);margin:12px 0 0}
.cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.btn{display:inline-block;padding:12px 24px;border-radius:999px;text-decoration:none;font-weight:700;font-size:16px}
.btn-gold{border:1.5px solid var(--gold);color:var(--gold)}
.btn-gold:hover{background:var(--gold);color:var(--bg)}
.btn-line{background:var(--line);color:#fff}
.fb{display:inline-block;margin-top:20px;color:var(--muted);font-size:14px}
.content{max-width:880px;margin:0 auto;padding:16px 16px 40px}
.sec{text-align:center;font-size:clamp(20px,4vw,26px);margin:56px 0 12px;line-height:1.5}
.sec:first-child{margin-top:24px}
.sub{text-align:center;font-size:18px;color:var(--gold);margin:40px 0 12px;font-weight:700}
.lead{text-align:center;color:var(--muted);margin:0 auto 20px;max-width:640px}
figure{margin:0 0 16px}
.pair{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}
.pair figure{margin:0}
.video{position:relative;aspect-ratio:16/9;margin:24px 0}
.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:6px}
.box{list-style:none;margin:0 auto 24px;padding:20px 24px;background:var(--panel);border:1px solid var(--rule);border-radius:8px;max-width:640px}
.box li{padding:6px 0;border-bottom:1px solid var(--rule)}
.box li:last-child{border-bottom:0}
.box li:first-child{color:var(--gold);font-weight:700;font-size:18px}
.closing{text-align:center;padding:56px 20px;background:var(--panel);border-top:1px solid var(--rule)}
.closing h2{margin:0 0 8px}
.closing p{color:var(--muted);margin:0 0 24px}
footer{text-align:center;padding:32px 20px;color:var(--muted);font-size:13px}
footer .tags{max-width:640px;margin:8px auto;opacity:.7}
.dock{position:fixed;left:0;right:0;bottom:0;display:flex;z-index:20;border-top:1px solid var(--rule)}
.dock a{flex:1;text-align:center;padding:16px 0;font-weight:700;text-decoration:none;background:var(--panel);color:var(--gold)}
.dock .dock-line{background:var(--line);color:#fff}
@media (min-width:900px){.dock{display:none}body{padding-bottom:0}}
@media (max-width:899px){
  .menu-btn{display:block;width:32px;height:32px;position:relative;cursor:pointer}
  .menu-btn span,.menu-btn span::before,.menu-btn span::after{position:absolute;left:4px;right:4px;height:2px;background:var(--ink);content:""}
  .menu-btn span{top:15px}.menu-btn span::before{top:-8px}.menu-btn span::after{top:8px}
  nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--bg);border-bottom:1px solid var(--rule)}
  nav ul{flex-direction:column;padding:8px 12px}
  nav a{padding:12px}
  .menu-toggle:checked ~ nav{display:block}
}
@media (max-width:520px){.pair{grid-template-columns:1fr}}
