/* 서비스상세 C계열(03·08·13·18) — 편집형 제목 · 큰 전후사진 · 단계 도식 */
:root {
  --color-primary: #653C32;
  --color-secondary: #8A5C4E;
  --color-accent: #9C4832;
  --color-bg: #FBF6F4;
  --color-surface: #FFFFFF;
  --color-text: #2C1F1A;
  --color-text-muted: #6B564D;
  --color-border: rgba(101, 60, 50, 0.16);
  --font-display: 'Noto Serif KR', serif;
  --font-body: 'Noto Sans KR', sans-serif;
}
.kw-hero--editorial h1 { font-family: var(--font-display); font-weight: 700; }
.kw-hero--editorial { border-bottom: 1px solid var(--color-border); }
.kw-imgset--large { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-4); max-width: 900px; margin: 0 auto; }
.kw-imgset--large figure { margin: 0; text-align: center; }
.kw-imgset--large img { width: 100%; aspect-ratio: 4/3; object-fit: cover; border-radius: var(--radius-md); display: block; }
.kw-imgset--large figcaption { margin-top: var(--space-2); font-size: var(--fs-sm); letter-spacing: 0.1em; color: var(--color-accent); font-weight: 600; }
@media (max-width: 560px) { .kw-imgset--large { grid-template-columns: 1fr; } }
.kw-steps { display: flex; flex-wrap: wrap; gap: var(--space-3); counter-reset: step; }
.kw-steps li { list-style: none; flex: 1 1 150px; background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-md); padding: var(--space-4); position: relative; }
.kw-steps li::before { counter-increment: step; content: counter(step); font-family: var(--font-display); font-size: var(--fs-lg); color: var(--color-accent); display: block; margin-bottom: var(--space-2); }
