@layer base {
  .section {
    margin-bottom: var(--spacing-12);
    scroll-margin-top: var(--spacing-8);
  }

  .sectionTitle {
    font-family: var(--font-family-heading);
    font-size: 1.5rem;
    font-weight: 600;
    color: var(--foreground);
    margin: 0 0 var(--spacing-6) 0;
    padding-bottom: var(--spacing-3);
    border-bottom: 2px solid var(--primary);
  }

  .content {
    margin-bottom: var(--spacing-6);
  }

  .paragraph {
    font-family: var(--font-family-base);
    font-size: 1rem;
    line-height: 1.6;
    color: var(--foreground);
    margin: 0 0 var(--spacing-4) 0;
  }

  .paragraph:last-child {
    margin-bottom: 0;
  }

  .subsections {
    margin-top: var(--spacing-8);
  }

  .subsection {
    margin-bottom: var(--spacing-8);
    padding-left: var(--spacing-6);
    border-left: 3px solid var(--border);
    scroll-margin-top: var(--spacing-8);
  }

  .subsectionTitle {
    font-family: var(--font-family-heading);
    font-size: 1.25rem;
    font-weight: 600;
    color: var(--foreground);
    margin: 0 0 var(--spacing-4) 0;
  }

  .subsectionContent {
    margin-bottom: var(--spacing-4);
  }

  /* Mobile responsiveness */
  @media (max-width: 768px) {
    .sectionTitle {
      font-size: 1.25rem;
    }

    .subsectionTitle {
      font-size: 1.125rem;
    }

    .paragraph {
      font-size: 0.9375rem;
    }

    .subsection {
      padding-left: var(--spacing-4);
    }
  }

  /* Print styles */
  @media print {
    .section {
      break-inside: avoid;
      margin-bottom: var(--spacing-8);
    }

    .sectionTitle {
      color: black;
      border-bottom-color: black;
    }

    .subsectionTitle {
      color: black;
    }

    .paragraph {
      color: black;
    }

    .subsection {
      border-left-color: black;
    }
  }
}