/* ============================================
   LEGAL — 隱私權政策／使用條款／聲明等純文件頁
   沒有設計稿：以全站 token 為準，走「單欄長文」的可讀版型。
   ============================================ */

.legal {
  padding-block: clamp(var(--space-10), 6vw, var(--space-20));
}
.legal__inner {
  width: 100%;
  /* 中文長文一行約 36～40 字最好讀，760 是 --fs-base 下的甜蜜點 */
  max-width: calc(760px + var(--container-pad) * 2);
  margin-inline: auto;
  padding-inline: var(--container-pad);
}

/* ── 標頭 ── */
.legal__head {
  padding-bottom: var(--space-6);
  margin-bottom: var(--space-8);
  border-bottom: 1px solid var(--color-border);
}
.legal__eyebrow {
  margin: 0 0 var(--space-2);
  font-size: var(--fs-sm);
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--color-accent);
}
.legal__title {
  margin: 0;
  font-size: var(--fs-3xl);
  line-height: 1.25;
  color: var(--color-heading);
}
.legal__meta {
  margin: var(--space-3) 0 0;
  font-size: var(--fs-sm);
  color: var(--color-text-muted);
}

/* ── 內文 ──
   內容由後台編輯器產出，所以這裡用型別選擇器，不能靠 class。 */
.legal__body {
  font-size: var(--fs-base);
  line-height: 1.9;                /* 長文比全站基準再鬆一點 */
  color: var(--color-text);
}
.legal__body > :first-child { margin-top: 0; }
.legal__body > :last-child { margin-bottom: 0; }

.legal__body h2 {
  margin: var(--space-10) 0 var(--space-4);
  padding-left: var(--space-4);
  font-size: var(--fs-xl);
  line-height: 1.4;
  color: var(--color-heading);
  border-left: 4px solid var(--color-brand);
}
.legal__body h3 {
  margin: var(--space-6) 0 var(--space-2);
  font-size: var(--fs-lg);
  line-height: 1.5;
  color: var(--color-heading);
}
.legal__body p { margin: 0 0 var(--space-4); }

.legal__body ul,
.legal__body ol {
  margin: 0 0 var(--space-4);
  padding-left: 1.4em;
}
.legal__body li { margin-bottom: var(--space-2); }
.legal__body li::marker { color: var(--color-brand); }

.legal__body a {
  color: var(--color-brand);
  text-underline-offset: .2em;
}
.legal__body strong { color: var(--color-heading); }

/* 摘要／提醒框：內容裡用 <div class="legal-note"> 標記 */
.legal__body .legal-note {
  margin: 0 0 var(--space-8);
  padding: var(--space-5) var(--space-6);
  background: var(--color-brand-soft);
  border-radius: var(--radius-md);
  font-size: var(--fs-sm);
  line-height: 1.8;
}
.legal__body .legal-note p:last-child,
.legal__body .legal-note ul:last-child { margin-bottom: 0; }

/* 聯絡資訊：條列式的定義區塊 */
.legal__body .legal-contact {
  margin: var(--space-6) 0 0;
  padding: var(--space-5) var(--space-6);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
}
.legal__body .legal-contact ul { margin: 0; padding: 0; list-style: none; }
.legal__body .legal-contact li { margin-bottom: var(--space-2); }
.legal__body .legal-contact li:last-child { margin-bottom: 0; }

@media (max-width: 640px) {
  .legal__body h2 {
    padding-left: var(--space-3);
    border-left-width: 3px;
  }
  .legal__body .legal-note,
  .legal__body .legal-contact { padding: var(--space-4) var(--space-5); }
}
