.content-article {
   max-width: 800px;
   margin: 2rem auto;
   padding: 0 1rem;
}

.content-header {
   margin-bottom: 3rem;
   text-align: center;
   padding-bottom: 2rem;
   border-bottom: 2px solid var(--border-color);
}

.content-header h1 {
   font-size: 2.5rem;
   font-weight: 700;
   color: var(--text-primary);
   margin-bottom: 1rem;
   line-height: 1.2;
}

.content-subtitle {
   font-size: 1.125rem;
   color: var(--text-secondary);
   font-style: italic;
   max-width: 600px;
   margin: 0 auto;
}

.content-section {
   margin-bottom: 3rem;
}

.content-section h2 {
   font-size: 1.875rem;
   font-weight: 600;
   color: var(--text-primary);
   margin-bottom: 1.5rem;
   padding-bottom: 0.5rem;
   border-bottom: 1px solid var(--border-color);
}

.content-section h3 {
   font-size: 1.5rem;
   font-weight: 600;
   color: var(--text-primary);
   margin: 2rem 0 1rem 0;
}

.content-section p {
   font-size: 1rem;
   line-height: 1.7;
   color: var(--text-primary);
   margin-bottom: 1.25rem;
}

.content-section ul,
.content-section ol {
   margin: 1.25rem 0;
   padding-left: 2rem;
}

.content-section ul ul,
.content-section ol ol,
.content-section ul ol,
.content-section ol ul {
   margin: 0.75rem 0;
}

.content-section li {
   font-size: 1rem;
   line-height: 1.7;
   color: var(--text-primary);
   margin-bottom: 0.5rem;
}

.content-table {
   width: 100%;
   border-collapse: collapse;
   margin: 2rem 0;
   background-color: var(--background-white);
   border-radius: var(--radius-lg);
   overflow: hidden;
   box-shadow: var(--shadow-sm);
}

.content-table th {
   background-color: var(--primary-color);
   color: white;
   font-weight: 600;
   padding: 1rem;
   text-align: left;
   font-size: 0.9rem;
}

.content-table td {
   padding: 1rem;
   border-bottom: 1px solid var(--border-color);
   font-size: 0.9rem;
   color: var(--text-primary);
}

.content-table tr:last-child td {
   border-bottom: none;
}

.content-table tr:nth-child(even) {
   background-color: var(--background-light);
}

.definition-list {
   margin: 2rem 0;
}

.definition-list dt {
   font-weight: 600;
   font-size: 1.1rem;
   color: var(--primary-color);
   margin-top: 1.5rem;
   margin-bottom: 0.5rem;
}

.definition-list dd {
   margin-left: 1.5rem;
   margin-bottom: 1rem;
   color: var(--text-primary);
   line-height: 1.6;
}

.nested-definition-list {
   margin: 1rem 0;
}

.nested-definition-list dt {
   font-weight: 500;
   font-size: 1rem;
   color: var(--text-primary);
   margin-top: 1rem;
   margin-bottom: 0.25rem;
}

.nested-definition-list dd {
   margin-left: 1rem;
   margin-bottom: 0.75rem;
   font-size: 0.95rem;
   color: var(--text-secondary);
}

@media (max-width: 768px) {
   .content-article {
       margin: 1rem auto;
       padding: 0 0.75rem;
   }

   .content-header h1 {
       font-size: 2rem;
   }

   .content-subtitle {
       font-size: 1rem;
   }

   .content-section h2 {
       font-size: 1.5rem;
   }

   .content-section h3 {
       font-size: 1.25rem;
   }

   .content-table {
       font-size: 0.8rem;
   }

   .content-table th,
   .content-table td {
       padding: 0.75rem 0.5rem;
   }

   .definition-list dt {
       font-size: 1rem;
   }

   .definition-list dd {
       margin-left: 1rem;
   }

   .nested-definition-list dd {
       margin-left: 0.75rem;
   }
}

@media (max-width: 480px) {
   .content-header {
       margin-bottom: 2rem;
       padding-bottom: 1.5rem;
   }

   .content-header h1 {
       font-size: 1.75rem;
   }

   .content-section {
       margin-bottom: 2rem;
   }

   .content-section ul,
   .content-section ol {
       padding-left: 1.5rem;
   }

   .content-table {
       overflow-x: auto;
       display: block;
       white-space: nowrap;
   }
}
