.page-main {
  width: 100%;
  min-height: 100vh;
  min-height: 100svh;
  padding-top: var(--jaroni-header-height);
  overflow-x: clip;
  background: var(--jaroni-white);
}

.page-container {
  width: min(calc(100% - 40px), var(--container-width));
  margin-inline: auto;
  padding-block: clamp(42px, 7vw, 96px);
}

.page-content {
  width: 100%;
  min-width: 0;
  color: #4d5953;
  font-size: var(--text-92);
  line-height: 1.8;
  overflow-wrap: anywhere;
}

.page-content > :first-child { margin-top: 0; }
.page-content > :last-child { margin-bottom: 0; }
.page-content :where(h1, h2, h3, h4) { color: var(--color-heading); line-height: 1.3; }
.page-content h1 { margin: 0 0 var(--space-24); font-size: var(--text-section-title); letter-spacing: -.04em; }
.page-content h2 { margin: var(--space-32) 0 var(--space-14); font-size: clamp(1.55rem, 3vw, 2.25rem); letter-spacing: -.035em; }
.page-content h3 { margin: var(--space-24) 0 var(--space-10); font-size: 1.1rem; }
.page-content h4 { margin: var(--space-20) 0 var(--space-8); font-size: var(--text-base); }
.page-content p { margin: 0 0 var(--space-16); }
.page-content :where(ul, ol) { display: grid; gap: var(--space-8); margin: 0 0 var(--space-20); padding-left: var(--space-24); }
.page-content a { color: var(--color-green-readable); text-decoration: underline; text-underline-offset: 3px; }
.page-content strong { color: var(--color-heading); font-weight: var(--font-bold); }
.page-content img { max-width: 100%; height: auto; }
.page-content table { width: 100%; border-collapse: collapse; }
.page-content :where(th, td) { padding: var(--space-12) var(--space-14); border: 1px solid var(--jaroni-border); text-align: left; vertical-align: top; }
.page-content th { color: var(--color-heading); font-weight: var(--font-bold); }
.page-content blockquote { margin: var(--space-24) 0; padding: var(--space-14) var(--space-20); border-left: 4px solid var(--jaroni-green); background: var(--jaroni-light); }

@media (max-width: 640px) {
  .page-container {
    width: min(calc(100% - 28px), var(--container-width));
    padding-block: var(--space-36);
  }
}
