.site-footer .site-footer-legal {
  margin-top: 8px;
}

.privacy-page {
  max-width: 900px;
}

.privacy-brand-name {
  color: var(--green-dark);
  font-size: 20px;
  font-weight: 700;
}

.privacy-article {
  padding: clamp(20px, 4vw, 40px);
  border: 1px solid var(--gray-200);
  border-radius: var(--radius);
  background: var(--white);
  box-shadow: var(--shadow);
  line-height: 1.7;
  overflow-wrap: anywhere;
}

.privacy-article h1 {
  margin: 0 0 12px;
  font-size: clamp(25px, 4vw, 36px);
  line-height: 1.2;
  letter-spacing: -0.025em;
}

.privacy-article h2 {
  margin: 0 0 12px;
  font-size: 22px;
  line-height: 1.35;
}

.privacy-article h3 {
  margin: 24px 0 8px;
  font-size: 17px;
  line-height: 1.5;
}

.privacy-article p {
  margin: 0 0 14px;
}

.privacy-article a {
  color: var(--green-dark);
  text-underline-offset: 3px;
}

.privacy-article a:hover {
  color: var(--green);
}

.privacy-article a:focus-visible,
.site-footer-legal a:focus-visible {
  outline: 2px solid var(--green-dark);
  outline-offset: 4px;
}

.privacy-date {
  color: var(--gray-500);
  font-size: 14px;
}

.privacy-contents {
  padding-bottom: 24px;
  border-bottom: 1px solid var(--gray-200);
}

.privacy-contents ol {
  margin: 0;
  padding-left: 24px;
}

.privacy-article li + li {
  margin-top: 8px;
}

.privacy-article section {
  margin-top: 32px;
  scroll-margin-top: 24px;
}

.privacy-article ul {
  padding-left: 22px;
}

@media print {
  body {
    background: white;
  }

  .privacy-page {
    max-width: none;
    padding: 0;
  }

  .privacy-page .header,
  .privacy-page .site-footer,
  .privacy-contents {
    display: none;
  }

  .privacy-article {
    padding: 0;
    border: 0;
    box-shadow: none;
    font-size: 11pt;
  }

  .privacy-article h2,
  .privacy-article h3 {
    break-after: avoid;
  }
}
