/**
 * 全站共用基礎樣式 (Base / Layout)
 */
* { box-sizing: border-box; }
:root { --ink: #263238; --muted: #607078; --brand: #5d2e46; --brand-dark: #351d2c; --paper: #f6f3ee; --line: #ddd5cd; }
body { margin: 0; color: var(--ink); background: #fff; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; }
a { color: #007bff; text-decoration: none; }
a:hover { color: #0056b3; text-decoration: underline; }

/* 頂部導覽列與固定頁首 */
.site-header { background: #6c757d; position: fixed; top: 0; right: 0; left: 0; z-index: 1030; border-radius: 0 0 .25rem .25rem; }
.navbar { min-height: 101px; padding: 0 1rem; }
.brand-logo { height: 75px; width: auto; max-width: 196px; object-fit: contain; }
.navbar-dark .navbar-nav .nav-link { color: rgba(255, 255, 255, 0.5); margin-left: 0; letter-spacing: 0; }
.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus { color: rgba(255, 255, 255, 0.75); }
.navbar-dark .navbar-nav .nav-link.active { color: #fff; }
.contact-strip { min-height: 29px; padding: 0; color: #212529; background: gainsboro; font-size: 1rem; }
.contact-strip a { color: #007bff; margin-right: 0; }

/* 主內容區固定間距 */
.site-main { min-height: 0; padding-top: 150px; padding-bottom: 0; }

/* 頁尾 */
.site-footer { height: 25px; padding: 0; color: #212529; background: #fff; text-align: center; font-size: 1rem; }
.site-footer p { margin: 0; padding: 0 15px 10px; line-height: 25px; }

/* 全站響應式通用設定 */
@media (max-width: 767px) {
  .brand-logo { height: 50px; }
  .contact-strip { font-size: .78rem; }
}
