:root {
  color-scheme: dark;
  --black: #050505;
  --ivory: #fff5d6;
  --gold: #f0c649;
  --bronze: #8f6723;
  --red: #d83a18;
}

* { box-sizing: border-box; }
body {
  margin: 0;
  background: var(--black);
  color: var(--ivory);
  font-family: Inter, "Noto Sans TC", "PingFang TC", system-ui, sans-serif;
  line-height: 1.7;
}
a { color: var(--gold); }
.legal-shell { width: min(100% - 2rem, 920px); margin: 0 auto; padding: 2rem 0 4rem; }
.legal-header { border-bottom: 1px solid var(--bronze); padding-bottom: 1.5rem; margin-bottom: 2rem; }
.brand { color: var(--gold); font-weight: 800; letter-spacing: .13em; text-decoration: none; }
.legal-brand { display: inline-flex; align-items: center; gap: .75rem; }
.legal-logo-frame { display: inline-block; width: 150px; max-width: 150px; max-height: 75px; line-height: 0; }
.legal-logo-frame img { display: block; width: 100%; max-width: 150px !important; max-height: 75px !important; height: auto; object-fit: contain; }
.legal-header h1 { margin: .55rem 0 .2rem; font-size: clamp(1.9rem, 7vw, 3.25rem); line-height: 1.12; }
.legal-header p { margin: 0; color: #d4bd83; }
.back { display: inline-block; margin-top: 1rem; }
.language-nav { display: flex; gap: .8rem; flex-wrap: wrap; margin: 1.25rem 0 0; }
.language-nav a { border: 1px solid var(--bronze); border-radius: 999px; padding: .35rem .85rem; text-decoration: none; }
.legal-section { background: #100d0b; border: 1px solid #3d2d15; border-radius: 18px; padding: clamp(1.15rem, 4vw, 2.25rem); margin: 1.25rem 0; }
.legal-section h2 { color: var(--gold); margin-top: 0; }
.legal-section h3 { color: #f4d477; margin-top: 1.6rem; }
.legal-section li + li { margin-top: .55rem; }
.callout { border-left: 4px solid var(--red); padding: .8rem 1rem; background: #1a100c; }
.benefits { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; padding: 0; list-style: none; }
.benefits li { border: 1px solid var(--bronze); border-radius: 14px; padding: 1rem; }
.benefits strong { display: block; color: var(--gold); font-size: 1.08rem; }
.legal-footer { text-align: center; color: #bda873; margin-top: 2.5rem; }
.legal-footer nav { display: flex; justify-content: center; flex-wrap: wrap; gap: .5rem 1rem; margin-bottom: .8rem; font-size: .7rem; }
@media (max-width: 620px) { .benefits { grid-template-columns: 1fr; } .legal-shell { width: min(100% - 1.2rem, 920px); padding-top: 1rem; } }
