/* Policy Pages Specific Styles */
.policy-hero {
  padding-top: 120px;
  padding-bottom: var(--spacing-lg);
  background-color: var(--primary);
  color: var(--text-light);
  text-align: center;
}

.policy-subtitle {
  font-size: 18px;
  opacity: 0.9;
}

.policy-content {
  padding: var(--spacing-xl) 0;
}

.policy-toc {
  background-color: var(--bg-gray);
  padding: var(--spacing-md);
  border-radius: var(--radius);
  margin-bottom: var(--spacing-lg);
}

.policy-toc h3 {
  margin-bottom: var(--spacing-sm);
  color: var(--primary);
}

.policy-toc ul {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: var(--spacing-xs);
}

.policy-toc ul li {
  margin-bottom: var(--spacing-xs);
}

.policy-toc ul li a {
  color: var(--text-dark);
  transition: var(--transition);
}

.policy-toc ul li a:hover {
  color: var(--primary);
  text-decoration: underline;
}

.policy-section {
  margin-bottom: var(--spacing-xl);
  scroll-margin-top: 100px;
}

.policy-section h2 {
  color: var(--primary);
  border-bottom: 2px solid var(--primary-light);
  padding-bottom: var(--spacing-xs);
  margin-bottom: var(--spacing-md);
}

.policy-section h3 {
  color: var(--text-dark);
  margin-top: var(--spacing-md);
  margin-bottom: var(--spacing-sm);
}

.policy-section p {
  margin-bottom: var(--spacing-sm);
}

.policy-section ul, 
.policy-section ol {
  margin-bottom: var(--spacing-md);
  padding-left: 20px;
}

.policy-section ul li, 
.policy-section ol li {
  margin-bottom: var(--spacing-xs);
}

.policy-section ul {
  list-style-type: disc;
}

.policy-section ol {
  list-style-type: decimal;
}

/* Support Resources */
.support-resources {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: var(--spacing-md);
  margin-top: var(--spacing-md);
}

.resource-card {
  background-color: var(--bg-gray);
  padding: var(--spacing-md);
  border-radius: var(--radius);
  border-left: 4px solid var(--primary);
}

.resource-card h3 {
  color: var(--primary);
  margin-top: 0;
  margin-bottom: var(--spacing-sm);
}

.resource-card p {
  margin-bottom: var(--spacing-xs);
}

.resource-card a {
  color: var(--primary);
  text-decoration: underline;
}

.resource-card a:hover {
  color: var(--primary-light);
}

/* Help CTA */
.help-cta {
  background-color: var(--secondary-light);
  padding: var(--spacing-md);
  border-radius: var(--radius);
  margin-top: var(--spacing-lg);
  text-align: center;
  border-left: 4px solid var(--secondary);
}

.help-cta h3 {
  color: var(--text-dark);
  margin-bottom: var(--spacing-sm);
}

.help-cta p {
  margin-bottom: var(--spacing-md);
}

/* Media Queries */
@media (max-width: 768px) {
  .policy-hero {
    padding-top: 100px;
  }
  
  .policy-toc ul {
    grid-template-columns: 1fr;
  }
  
  .support-resources {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 480px) {
  .policy-hero {
    padding-top: 80px;
  }
  
  .policy-section h2 {
    font-size: 22px;
  }
  
  .policy-section h3 {
    font-size: 18px;
  }
}