/**
 * Content Base Styles
 */

/* Article Entry Styles */
article {
  margin-bottom: calc(var(--spacing-unit) * 2);
  padding-bottom: calc(var(--spacing-unit) * 2);
  border-bottom: 1px solid var(--border-color);
}

.entry-header {
  margin-bottom: calc(var(--spacing-unit));
}

.entry-title {
  font-family: var(--heading-font-family);
  font-size: 2rem;
  font-weight: 700;
  color: var(--heading-color);
  margin: 0 0 calc(var(--spacing-unit) * 0.5) 0;
  line-height: 1.2;
}

.entry-title a {
  color: inherit;
  text-decoration: none;
  transition: var(--transition-default);
}

.entry-title a:hover {
  color: var(--primary-color);
}

.entry-content {
  margin-bottom: calc(var(--spacing-unit));
  line-height: 1.6;
  overflow-x: visible !important; /* Allow images to break out */
  width: 100%;
  max-width: 100%;
}

/* Allow full-width images in content - only when explicitly needed */
.entry-content .full-width-image-wrapper,
.page-content .full-width-image-wrapper {
  width: 100vw;
  max-width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  display: block;
}

/* Full-width images - allow resizing */
.entry-content img.full-width,
.page-content img.full-width {
  max-width: 100%;
  width: 100%;
  height: auto;
  display: block;
}

/* ALL images in content - allow resizing */
.entry-content img,
.page-content img {
  max-width: 100%;
  width: auto;
  height: auto;
}

.entry-footer {
  margin-top: calc(var(--spacing-unit));
  font-size: 0.9rem;
  color: var(--meta-color);
}

.post-type-label {
  display: inline-block;
  background-color: var(--primary-color);
  color: var(--bg-color);
  padding: calc(var(--spacing-unit) * 0.25) calc(var(--spacing-unit) * 0.5);
  border-radius: 4px;
  font-size: 0.8rem;
  font-weight: 600;
  text-transform: uppercase;
}

/* ============================================
   Responsive Styles
   ============================================ */

/* Mobile - Extra Small (320px - 359px) */
@media (min-width: 320px) and (max-width: 359px) {
  article {
    margin-bottom: calc(var(--spacing-unit) * 1.5);
    padding-bottom: calc(var(--spacing-unit) * 1.5);
  }

  .entry-title {
    font-size: 1.5rem;
  }

  .entry-content {
    font-size: 0.9rem;
    line-height: 1.5;
  }

  .entry-footer {
    font-size: 0.8rem;
  }

  .post-type-label {
    font-size: 0.7rem;
    padding: calc(var(--spacing-unit) * 0.2) calc(var(--spacing-unit) * 0.4);
  }
}

/* Mobile - Small to Medium (360px - 479px) */
@media (min-width: 360px) and (max-width: 479px) {
  .entry-title {
    font-size: 1.75rem;
  }

  .entry-content {
    font-size: 0.95rem;
  }
}

/* Mobile - Large (480px - 575px) */
@media (min-width: 480px) and (max-width: 575px) {
  .entry-title {
    font-size: 1.875rem;
  }
}

/* Tablet (576px - 991px) */
@media (min-width: 576px) and (max-width: 991px) {
  .entry-title {
    font-size: 2rem;
  }
}

/* Desktop (992px+) */
@media (min-width: 992px) {
  .entry-title {
    font-size: 2rem;
  }

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