/* ==========================================================================
   Page-Specific Overrides
   ========================================================================== */

/* About page values */
.dm-values-grid {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: var(--dm-space-6);
}

@media (min-width: 640px) {
  .dm-values-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1024px) {
  .dm-values-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}

.dm-value-card {
  text-align: center;
  padding: var(--dm-space-6);
}

.dm-value-card__icon {
  width: 56px;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto var(--dm-space-4);
  background-color: var(--dm-primary-50);
  color: var(--dm-primary);
  border-radius: var(--dm-radius-xl);
  transition: background-color var(--dm-transition-theme),
              transform var(--dm-transition-fast);
}

[data-theme="dark"] .dm-value-card__icon {
  background-color: rgba(37, 128, 187, 0.15);
}

.dm-value-card:hover .dm-value-card__icon {
  transform: scale(1.1);
}

.dm-value-card__icon svg {
  width: 28px;
  height: 28px;
}

.dm-value-card__title {
  font-size: var(--dm-text-lg);
  font-weight: var(--dm-font-semibold);
  margin-bottom: var(--dm-space-2);
}

.dm-value-card__text {
  font-size: var(--dm-text-sm);
  color: var(--dm-text-secondary);
  line-height: var(--dm-leading-relaxed);
}

/* About - Stats */
.dm-about-stat {
  text-align: center;
  padding: var(--dm-space-4);
}

.dm-about-stat__number {
  font-size: var(--dm-text-4xl);
  font-weight: var(--dm-font-extrabold);
  color: var(--dm-primary);
  letter-spacing: -0.02em;
  margin-bottom: var(--dm-space-1);
}

@media (min-width: 768px) {
  .dm-about-stat__number {
    font-size: 3.5rem;
  }
}

.dm-about-stat__label {
  font-size: var(--dm-text-sm);
  font-weight: var(--dm-font-medium);
  color: var(--dm-text-secondary);
}

/* About - Mission section */
.dm-mission {
  font-size: var(--dm-text-xl);
  color: var(--dm-text-primary);
  line-height: var(--dm-leading-relaxed);
  max-width: 800px;
  margin: 0 auto;
  text-align: center;
  font-weight: var(--dm-font-medium);
}

@media (min-width: 768px) {
  .dm-mission {
    font-size: var(--dm-text-2xl);
  }
}

/* 404 */
.dm-404 {
  text-align: center;
  padding: var(--dm-space-24) 0;
}

.dm-404__number {
  font-size: 8rem;
  font-weight: var(--dm-font-extrabold);
  color: var(--dm-primary);
  line-height: 1;
  opacity: 0.15;
  margin-bottom: var(--dm-space-4);
}

@media (min-width: 768px) {
  .dm-404__number {
    font-size: 12rem;
  }
}

/* Blog / Single Post */
.dm-post {
  max-width: var(--dm-container-md);
  margin: 0 auto;
}

.dm-post__header {
  margin-bottom: var(--dm-space-8);
}

.dm-post__meta {
  display: flex;
  flex-wrap: wrap;
  gap: var(--dm-space-4);
  font-size: var(--dm-text-sm);
  color: var(--dm-text-tertiary);
  margin-bottom: var(--dm-space-4);
}

.dm-post__content {
  font-size: var(--dm-text-lg);
  line-height: var(--dm-leading-relaxed);
}

.dm-post__content h2 {
  margin-top: var(--dm-space-10);
  margin-bottom: var(--dm-space-4);
}

.dm-post__content h3 {
  margin-top: var(--dm-space-8);
  margin-bottom: var(--dm-space-3);
}

.dm-post__content p {
  margin-bottom: var(--dm-space-5);
}

.dm-post__content ul,
.dm-post__content ol {
  margin-bottom: var(--dm-space-5);
}

.dm-post__content img {
  border-radius: var(--dm-radius-lg);
  margin: var(--dm-space-6) 0;
}

.dm-post__content blockquote {
  border-left: 3px solid var(--dm-primary);
  padding-left: var(--dm-space-5);
  margin: var(--dm-space-6) 0;
  font-style: italic;
  color: var(--dm-text-secondary);
}
