/* PRIVACY only. Navigation, footer and base typography use the shared styles. */
.pv-hero {
  padding: calc(var(--header-height) + 24px) 0 64px;
  border-bottom: 1px solid #d9e5ed;
  background: linear-gradient(110deg, #fff 30%, #edf5fa);
}

.pv-hero-en {
  margin: 40px 0 12px;
  color: #0a304e;
  font-size: clamp(32px, 6vw, 82px);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: .04em;
}

.pv-hero .sub-eyebrow { margin-bottom: 8px; }
.pv-hero h1 { margin: 0; font-size: clamp(22px, 2.5vw, 30px); line-height: 1.7; letter-spacing: .08em; }
.pv-hero-copy { margin: 32px 0 20px; font-size: clamp(21px, 2.6vw, 32px); font-weight: 700; line-height: 1.8; }
.pv-hero-description { max-width: 680px; margin: 0; color: #344d60; font-size: 16px; line-height: 2; }

.pv-document { max-width: 880px; padding-block: 48px 88px; }
.pv-date { margin: 0 0 28px; color: #506779; font-size: 13px; line-height: 1.9; text-align: right; }

.pv-section {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr);
  gap: 24px;
  padding-block: 40px;
  border-top: 1px solid #d9e5ed;
}

.pv-number {
  margin: 5px 0 0;
  color: #086cba;
  font-size: 14px;
  font-weight: 700;
  line-height: 2;
  letter-spacing: .12em;
  font-variant-numeric: tabular-nums;
}

.pv-section h2 { font-size: clamp(22px, 2.2vw, 28px); line-height: 1.7; }
.pv-section-body { min-width: 0; color: #344d60; font-size: 16px; line-height: 2; }
.pv-section-body h2 { color: var(--navy); }
.pv-section-body p { margin: 18px 0 0; }
.pv-section-body ul { margin: 18px 0 0; padding-left: 1.5em; }
.pv-section-body li { padding-left: .25em; }
.pv-section-body li + li { margin-top: 8px; }
.pv-section-body li::marker { color: #086cba; }
.pv-inquiry { padding-bottom: 0; }
.pv-contact-link { gap: 24px; margin-top: 28px; color: #fff; background: var(--navy); line-height: 1.8; }
.pv-contact-link span { flex-shrink: 0; color: #7adfff; }
.pv-section-body .pv-inquiry-note { color: #506779; font-size: 13px; line-height: 1.9; }

@media (max-width: 768px) {
  .pv-section-body .pv-inquiry-note { font-size: 16px; }
}
@media (max-width: 600px) {
  .pv-hero { padding-bottom: 48px; }
  .pv-hero-en { margin-top: 32px; }
  .pv-document { padding-block: 32px 64px; }
  .pv-section { grid-template-columns: minmax(0, 1fr); gap: 8px; padding-block: 32px; }
  .pv-number { margin: 0; }
  .pv-inquiry { padding-bottom: 0; }
  .pv-contact-link { padding-inline: 20px; }
}
