.pp-hero {
  background:
    linear-gradient(0deg, #000f35, #000f35),
    linear-gradient(0deg, #172437, #172437);
  padding: 80px 24px 64px;
}

.pp-hero__inner {
  max-width: 860px;
  margin: 0 auto;
}

.pp-hero__title {
  font-size: clamp(2rem, 5vw, 3.25rem);
  font-weight: 700;
  color: #fff;
  line-height: 1.15;
  margin-bottom: 12px;
}

.pp-hero__meta {
  font-size: 0.95rem;
  font-weight: 450;
  color: rgba(255, 255, 255, 0.85);
}

.pp-content {
  padding: 72px 24px 96px;
  background: #fff;
}

.pp-content__inner {
  max-width: 860px;
  margin: 0 auto;
}

.pp-content__body {
  color: var(--text-color, #0c1937);
  font-size: 1rem;
  line-height: 1.75;
  font-weight: 450;
}

.pp-content__body h2 {
  font-size: clamp(1.25rem, 2.5vw, 1.625rem);
  font-weight: 700;
  color: var(--text-color, #0c1937);
  margin-top: 2.5em;
  margin-bottom: 0.6em;
  line-height: 1.25;
}

.pp-content__body h3 {
  font-size: 1.15rem;
  font-weight: 700;
  color: var(--text-color, #0c1937);
  margin-top: 2em;
  margin-bottom: 0.5em;
}

.pp-content__body p {
  margin-bottom: 1.2em;
}

.pp-content__body p:last-child {
  margin-bottom: 0;
}

.pp-content__body ul,
.pp-content__body ol {
  padding-left: 1.5em;
  margin-bottom: 1.2em;
}

.pp-content__body li {
  margin-bottom: 0.4em;
}

.pp-content__body a {
  color: var(--primary-color, #32baf6);
  text-decoration: underline;
  text-underline-offset: 2px;
  transition: opacity 0.2s;
}

.pp-content__body a:hover {
  opacity: 0.75;
}

.pp-content__body strong {
  font-weight: 700;
}

.pp-content__body--placeholder h2:first-of-type {
  margin-top: 0;
}

@media (max-width: 768px) {
  .pp-hero {
    padding: 56px 20px 48px;
  }

  .pp-content {
    padding: 48px 20px 72px;
  }
}
