/* ============================================================
   Unsui — 法務ページ（privacy / terms / support）専用スタイル
   ------------------------------------------------------------
   色・字・寸法の定義は tokens.css が正本。ここでは var() を使うだけ。
   読み込み順は tokens.css → legal.css（このファイルが後）。

   これらのページは長文で語彙が広いため、ランディングの自前サブセットでは
   字が足りない。フォントは Google Fonts のフル Noto Serif JP を使う
   （HTML 側の <link> で読み込み、tokens.css の --font が既定でそれを指す）。

   HTML は tools/build-legal.mjs が生成する。見た目を直すならこのファイルを、
   構造を直すなら同スクリプトのテンプレートを編集すること。
   ============================================================ */

.wrap {
  max-width: 760px;
  margin-inline: auto;
  padding: clamp(2.5rem, 7vw, 6rem) clamp(1.4rem, 6vw, 3rem) 6rem;
}

/* ランディングへ戻る導線 */
.back {
  display: inline-flex;
  align-items: center;
  gap: .6rem;
  color: var(--gold);
  text-decoration: none;
  font-size: .84rem;
  letter-spacing: .18em;
  margin-bottom: 3rem;
}
.back:hover { opacity: .8; }

.brand { display: flex; align-items: center; gap: .7rem; margin-bottom: 2.4rem; }
.brand img { width: 34px; height: 34px; border-radius: 8px; }
.brand b { font-weight: 700; letter-spacing: .18em; font-size: 1.1rem; }

/* ── 本文 ─────────────────────────────────────────────────── */
h1 {
  font-weight: 700;
  font-size: clamp(1.7rem, 4vw, 2.3rem);
  letter-spacing: .08em;
  line-height: 1.4;
  margin: 1.2rem 0 .4rem;
}
/* 節の区切りは金の罫（ランディングの footer / .plan と同じ --line-gold）。 */
h2 {
  font-weight: 600;
  font-size: 1.3rem;
  letter-spacing: .1em;
  color: var(--gold);
  margin: 2.6rem 0 .6rem;
  padding-top: 1.4rem;
  border-top: 1px solid var(--line-gold);
}
h3 { font-weight: 500; font-size: 1.05rem; letter-spacing: .06em; margin: 1.8rem 0 .3rem; color: var(--text); }
h4 { font-weight: 500; font-size: .95rem; color: var(--text-2); margin: 1.2rem 0 .2rem; }

p { font-size: .94rem; color: var(--text-2); margin: .7rem 0; }
ul { margin: .6rem 0 .6rem 1.2rem; }
li { font-size: .92rem; color: var(--text-2); margin: .35rem 0; }
strong { color: var(--text); font-weight: 500; }
a { color: var(--gold); }

hr { border: 0; height: 1px; background: var(--line-gold); margin: 2rem 0; }
blockquote {
  border-left: 2px solid var(--line-gold);
  padding: .4rem 0 .4rem 1.2rem;
  margin: 1rem 0;
  color: var(--text-3);
  font-size: .86rem;
}

/* ── 相談窓口カード（support.html）─────────────────────────── */
.res {
  display: block;
  border: 1px solid var(--line-gold);
  border-radius: 6px;
  padding: 1rem 1.2rem;
  margin: .7rem 0;
  text-decoration: none;
}
.res .nm { color: var(--text); font-weight: 500; font-size: .98rem; }
.res .vl { color: var(--gold); font-size: 1.05rem; letter-spacing: .04em; margin: .2rem 0; }
.res .nt { color: var(--text-3); font-size: .8rem; }

footer {
  margin-top: 4rem;
  padding-top: 1.6rem;
  border-top: 1px solid var(--line-gold);
  font-size: .78rem;
  color: var(--text-3);
}
