/* ==========================================================================
   MarlSystem — プライバシーポリシー（page-privacy-policy.php）
   本文は固定ページ（ブロックエディター）の内容。既存の配色・フォント変数を使用する。
   ========================================================================== */

.policy{
  padding: clamp(56px, 8vw, 112px) 0 clamp(72px, 10vw, 140px);
}

.policy-content{
  max-width: 760px;
  margin: 0 auto;
  font-size: 15px;
  line-height: 2.1;
  letter-spacing: .03em;
  color: var(--paper);
  overflow-wrap: anywhere;
}
.policy-content > *:first-child{ margin-top: 0; }
.policy-content > *:last-child{ margin-bottom: 0; }

.policy-content p{ margin: 0 0 1.7em; }

/* ---------- 条項見出し ---------- */
.policy-content h2,
.policy-content h3,
.policy-content h4{
  font-family: var(--serif);
  font-weight: 600;
  color: var(--paper);
  letter-spacing: .05em;
  line-height: 1.7;
}
.policy-content h2{
  margin: 3.6em 0 1.2em;
  padding-bottom: .8em;
  border-bottom: 1px solid var(--line);
  font-size: clamp(18px, 2.1vw, 21px);
}
.policy-content h3{
  margin: 2.4em 0 .9em;
  padding-left: 14px;
  border-left: 1px solid var(--brass);
  font-size: 16.5px;
}
.policy-content h4{
  margin: 2em 0 .7em;
  font-size: 15px;
}

/* ---------- リスト ---------- */
.policy-content ul,
.policy-content ol{
  margin: 0 0 1.7em;
  padding-left: 1.6em;
}
.policy-content li{ margin: .35em 0; }
.policy-content li::marker{ color: var(--brass); }
.policy-content li > ul,
.policy-content li > ol{ margin: .35em 0 0; }

/* ---------- リンク・強調 ---------- */
.policy-content a{
  color: var(--brass);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: .25em;
  transition: color .3s var(--ease);
}
.policy-content a:hover{ color: var(--brass-bright); }
.policy-content strong,
.policy-content b{ font-weight: 700; }

/* ---------- 表（お問い合わせ窓口など） ---------- */
.policy-content .wp-block-table{
  margin: 0 0 1.7em;
  overflow-x: auto;
}
.policy-content table{
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
  line-height: 1.9;
}
.policy-content .wp-block-table thead,
.policy-content .wp-block-table tfoot{ border: none; }
.policy-content th,
.policy-content td{
  padding: 12px 16px;
  border: 1px solid var(--line);
  text-align: left;
  vertical-align: top;
}
.policy-content th,
.policy-content thead td{
  background: var(--ink-2);
  font-weight: 500;
}

/* ---------- 引用・区切り線 ---------- */
.policy-content blockquote,
.policy-content .wp-block-quote{
  margin: 2em 0;
  padding: .2em 0 .2em 22px;
  border-left: 1px solid var(--brass);
  color: var(--paper-dim);
}
.policy-content hr,
.policy-content .wp-block-separator{
  margin: 3em auto;
  border: none;
  border-top: 1px solid var(--line);
}

/* 制定日・事業者名などの右寄せ（ブロックエディターの配置指定） */
.policy-content .has-text-align-right{ text-align: right; }

/* ---------- スマートフォン ---------- */
@media (max-width: 640px){
  .policy-content{
    font-size: 14.5px;
    line-height: 2;
  }
  .policy-content h2{ margin-top: 3em; }
  .policy-content th,
  .policy-content td{ padding: 10px 12px; }
}
