/* balcony-lighting-replacement.html 전용 — 사진 풀블리드 히어로 + 조명 설계 타임라인 */
:root {
  --color-primary: #223327;
  --color-secondary: #4F6B55;
  --color-accent: #74A57F;
  --color-bg: #EFF6F1;
  --color-surface: #FFFFFF;
  --color-text: #16211A;
  --color-text-muted: #4E5F53;
  --color-border: rgba(34, 51, 39, 0.14);
  --font-display: 'Outfit', sans-serif;
  --font-body: 'Noto Sans KR', sans-serif;
}

.hero--photo {
  position: relative;
  min-height: 420px;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
}
.hero--photo::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(15,25,18,0.2), rgba(10,18,13,0.82));
}
.hero--photo .hero__bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}
.hero--photo .container { position: relative; z-index: 1; padding-bottom: var(--space-7); max-width: 640px; }
.hero--photo h1, .hero--photo .hero__eyebrow, .hero--photo .hero__sub { color: #fff; }

.side-figures { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--space-4); max-width: 680px; margin: 0 auto; }
.side-figures figure { margin: 0; }
.side-figures img { width: 100%; border-radius: var(--radius-md); display: block; }
.side-figures figcaption { margin-top: var(--space-2); text-align: center; font-size: var(--fs-sm); color: var(--color-text-muted); }
.side-figures .tag { display: inline-block; font-size: var(--fs-sm); letter-spacing: 0.08em; font-weight: 700; color: var(--color-accent); margin-bottom: var(--space-2); }
@media (max-width: 640px) { .side-figures { grid-template-columns: 1fr; } }

.faq-list { display: grid; gap: var(--space-4); }
.faq-list h3 { font-family: var(--font-display); color: var(--color-primary); margin-bottom: var(--space-2); }
.faq-list p { color: var(--color-text-muted); }
