.news-detail-page { padding-top: 96px; background: #fff; min-height: 100vh; }
.news-detail-page .section { max-width: 820px; }
.back-link {
  display: inline-flex; align-items: center; gap: 8px;
  font-size: 14px; color: #666; margin-bottom: 24px;
  transition: color 0.2s;
}
.back-link:hover { color: #1E1E1E; }

.article-header { margin-bottom: 32px; }
.article-date {
  font-size: 12px; font-weight: 600; letter-spacing: 0.2em;
  text-transform: uppercase; color: #F78500; margin-bottom: 12px;
}
.article-header h1 { font-size: clamp(30px, 4.5vw, 52px); font-weight: 700; line-height: 1.1; letter-spacing: -0.02em; }
.article-subtitle { margin-top: 16px; font-size: 18px; color: #666; line-height: 1.6; }
.article-header .tags { margin-top: 16px; }

.article-hero {
  border-radius: 20px; overflow: hidden; border: 1px solid rgba(0,0,0,0.06);
  background: linear-gradient(135deg, #FFF3D6, #FFE4B5); margin-bottom: 40px;
}
.article-hero img { width: 100%; height: auto; max-height: 480px; object-fit: cover; }

.article-body { font-size: 17px; line-height: 1.75; color: #333; }
.article-body h2, .article-body h3 { margin-top: 40px; margin-bottom: 16px; font-weight: 700; letter-spacing: -0.01em; }
.article-body h2 { font-size: 26px; }
.article-body h3 { font-size: 22px; }
.article-body p { margin-bottom: 18px; }
.article-body a { color: #F78500; text-decoration: underline; }
.article-body blockquote {
  margin: 28px 0; padding-left: 20px; border-left: 4px solid #F78500;
  color: #555; font-style: italic;
}
.article-body ul, .article-body ol { margin: 18px 0; padding-left: 24px; }
.article-body li { margin-bottom: 8px; }
.article-body img { border-radius: 12px; border: 1px solid rgba(0,0,0,0.06); margin: 24px 0; }

.article-gallery { margin-top: 48px; display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
.article-gallery img { width: 100%; height: 260px; object-fit: cover; border-radius: 16px; border: 1px solid rgba(0,0,0,0.06); }
@media (max-width: 640px) { .article-gallery { grid-template-columns: 1fr; } }
