/* =====================================================================
   privacy-policy.html — standalone page (no sibling pages, root-level
   per CLAUDE.md folder-structure convention)
   Figma node 589:8130 ("プライバシーポリシー"), PC version per explicit
   instruction. Header/mobile-menu/footer are byte-identical copies of
   about.html's (same standalone-page precedent).
   ===================================================================== */

/* Figma's root frame sets a cream page background (watermark sits on
   top via the shared .page-watermark) — same precedent as
   contact.html's body.contact-page. */
body.privacy-page {
  background: var(--color-cream);
}

/* .guide-hero's own breadcrumb-sep is 30px; this page's Figma crumb
   uses a 46px separator, same one-off-override precedent as
   contact-hero__crumb-sep / column-hero__crumb-sep / works.css. */
.privacy-hero__crumb-sep {
  width: 46px;
}

/* ---- Policy content: a flat sequence of legal-clause blocks, each an
   <h2> (DOM-sibling structure matches Figma's own flat flex children),
   plus a nested <h3> list inside clause 2 and a bordered contact card
   closing the page. No existing component matches this shape, so it's
   bespoke rather than reused. ---- */

.privacy-content-section {
  padding-block: 24px 64px;
}

.privacy-content {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.privacy-block {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.privacy-block__lead {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.5;
}

.privacy-block__title {
  font-size: 17px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--color-gold);
}

.privacy-block__text {
  font-size: 14px;
  line-height: 1.7;
}

.privacy-list {
  margin-top: 16px;
  padding-left: 16px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.privacy-list__item {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.privacy-list__title {
  font-size: 14px;
  font-weight: 700;
  line-height: 1.5;
}

.privacy-list__text {
  font-size: 14px;
  line-height: 1.7;
}

.privacy-contact {
  margin-top: 8px;
  padding-left: 16px;
  border-left: 1px solid var(--color-gold);
  display: flex;
  flex-direction: column;
  gap: 2px;
  font-size: 14px;
  line-height: 1.7;
}

.privacy-contact__note {
  display: inline-block;
  margin-top: 4px;
  font-size: 12px;
}

@media (min-width: 992px) {
  .privacy-content-section {
    padding-block: 24px 104px;
  }

  .privacy-content {
    max-width: 976px;
    margin-inline: auto;
    gap: 40px;
  }

  .privacy-block {
    gap: 8px;
  }

  .privacy-block__lead {
    font-size: 22px;
  }

  .privacy-block__title {
    font-size: 18px;
  }

  .privacy-block__text {
    font-size: 15px;
    line-height: 1.5;
  }

  .privacy-list {
    margin-top: 24px;
    padding-left: 24px;
    gap: 24px;
  }

  .privacy-list__title,
  .privacy-list__text {
    font-size: 15px;
  }

  .privacy-list__text {
    line-height: 1.5;
  }

  .privacy-contact {
    margin-top: 16px;
    padding-left: 24px;
    font-size: 15px;
  }

  .privacy-contact__note {
    font-size: 13px;
  }
}
