.solution-detail-page { padding-top: 96px; background: #fff; min-height: 100vh; }
.solution-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; }

.solution-header { margin-bottom: 32px; }
.solution-status {
  display: inline-block; font-size: 11px; font-weight: 600;
  text-transform: uppercase; letter-spacing: 0.05em;
  padding: 6px 12px; border-radius: 999px; border: 1px solid;
}
.solution-status.active { color: #B36B00; background: #FFF8E7; border-color: #FFE4B5; }
.solution-status.muted { color: #666; background: #F0F0F0; border-color: #ddd; }
.solution-header h1 { font-size: clamp(30px, 4.5vw, 52px); font-weight: 700; line-height: 1.1; letter-spacing: -0.02em; margin-top: 16px; }

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

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

.solution-fallback { font-size: 18px; color: #666; line-height: 1.7; margin-bottom: 40px; }

.solution-gallery { margin-top: 48px; display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
.solution-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) { .solution-gallery { grid-template-columns: 1fr; } }
