/* p-privacy-policy — プライバシーポリシー本文（Figma 3191:24310 実測値・全てトークン参照） */

.p-privacy-policy {
  padding-block: var(--space-120);
  background: var(--color-bg-beige); /* #FFF + #A89990 10%（Figma変数） */
  color: var(--color-text);
}

.p-privacy-policy__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-48);
  width: 100%;
  max-width: var(--container-width);
  margin-inline: auto;
  padding-inline: var(--space-40);
}

.p-privacy-policy__lead,
.p-privacy-policy__section {
  width: 40rem; /* 640px（Figma実測） */
  max-width: 100%;
}

.p-privacy-policy__section {
  display: flex;
  flex-direction: column;
  gap: var(--space-16);
}

.p-privacy-policy__lead,
.p-privacy-policy__text {
  margin: 0;
  font-size: var(--font-size-body);
  font-weight: var(--font-weight-medium);
  line-height: var(--line-height-loose); /* Figma: 28.8px = 1.8 */
}

.p-privacy-policy__title {
  margin: 0;
  font-size: var(--font-size-h3); /* 18.286px */
  font-weight: var(--font-weight-black);
  line-height: var(--line-height-loose);
}

/* 管理画面の本文（the_content）を表示する場合の最小限のスタイル */
.p-privacy-policy__content {
  display: flex;
  flex-direction: column;
  gap: var(--space-16);
  width: 40rem; /* 640px（Figma実測・.p-privacy-policy__section と揃える） */
  max-width: 100%;
  font-size: var(--font-size-body);
  font-weight: var(--font-weight-medium);
  line-height: var(--line-height-loose);
}

.p-privacy-policy__content :is(h2, h3, h4) {
  font-size: var(--font-size-h3);
  font-weight: var(--font-weight-black);
}

.p-privacy-policy__content p {
  margin: 0;
}

/* --- SP（767px以下・inferred） --- */
@media (max-width: 767px) {
  .p-privacy-policy {
    padding-block: var(--space-40) var(--space-64); /* SP共通のセクション上下余白 */
  }

  .p-privacy-policy__inner {
    padding-inline: var(--space-24);
  }
}
