/* === Brand Origin === */
.brand-origin { background: var(--color-surface); }
.origin-quote {
  font-family: var(--font-display); font-size: clamp(1.2rem, 2.5vw, 1.8rem);
  color: var(--color-text); text-align: center;
  max-width: 800px; margin: 0 auto var(--space-lg);
  line-height: 2; position: relative; padding: 0 var(--space-md);
}
.origin-quote::before, .origin-quote::after {
  font-family: var(--font-en); font-size: 3rem;
  color: var(--color-accent); opacity: 0.4; position: absolute;
}
.origin-quote::before { content: '\201C'; top: -0.5rem; left: 0; }
.origin-quote::after { content: '\201D'; bottom: -1rem; right: 0; }
.origin-text {
  max-width: 700px; margin: 0 auto;
  color: var(--color-text-muted); line-height: 2; text-align: center;
}

/* === Timeline === */
.timeline-section { background: var(--color-white); }
.timeline-section h2 { text-align: center; }
.timeline-section .gold-line { margin: var(--space-sm) auto var(--space-lg); }
.timeline {
  position: relative; max-width: 800px; margin: 0 auto;
  padding: var(--space-md) 0;
}
.timeline::before {
  content: ''; position: absolute;
  left: 50%; top: 0; bottom: 0;
  width: 2px; background: var(--color-border);
  transform: translateX(-50%);
}
.timeline-item {
  display: flex; align-items: flex-start;
  margin-bottom: var(--space-lg); position: relative;
}
.timeline-item:nth-child(odd) { flex-direction: row-reverse; }
.timeline-year {
  flex: 0 0 50%; text-align: right; padding-right: var(--space-md);
  font-family: var(--font-en); font-size: 2rem;
  color: var(--color-accent); font-weight: 300;
}
.timeline-item:nth-child(odd) .timeline-year { text-align: left; padding-right: 0; padding-left: var(--space-md); }
.timeline-content {
  flex: 0 0 50%; padding-left: var(--space-md);
}
.timeline-item:nth-child(odd) .timeline-content { padding-left: 0; padding-right: var(--space-md); text-align: right; }
.timeline-content h3 { font-size: 1.1rem; margin-bottom: var(--space-xs); }
.timeline-content p { font-size: 0.9rem; color: var(--color-text-muted); line-height: 1.8; }

@media (max-width: 768px) {
  .timeline::before { left: 0; }
  .timeline-item, .timeline-item:nth-child(odd) { flex-direction: column; }
  .timeline-year, .timeline-item:nth-child(odd) .timeline-year {
    flex: none; text-align: left; padding: 0 0 var(--space-xs) var(--space-sm);
  }
  .timeline-content, .timeline-item:nth-child(odd) .timeline-content {
    flex: none; padding: 0 0 0 var(--space-sm); text-align: left;
  }
}

/* === Craftsmanship === */
.craftsmanship { background: var(--color-surface); }
.craftsmanship h2 { text-align: center; }
.craftsmanship .gold-line { margin: var(--space-sm) auto var(--space-lg); }
.craft-grid {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: var(--space-md);
}
.craft-item { text-align: center; }
.craft-item .step-num {
  font-family: var(--font-en); font-size: 2.5rem;
  color: var(--color-accent); font-weight: 300; margin-bottom: var(--space-xs);
}
.craft-item img { width: 100%; aspect-ratio: 4/3; object-fit: cover; margin-bottom: var(--space-sm); }
.craft-item h3 { margin-bottom: var(--space-xs); }
.craft-item p { font-size: 0.9rem; color: var(--color-text-muted); line-height: 1.8; }

/* === Values === */
.values { background: var(--color-primary); color: var(--color-white); }
.values h2 { text-align: center; }
.values .gold-line { margin: var(--space-sm) auto var(--space-lg); }
.values-grid {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: var(--space-lg); text-align: center;
}
.value-item h3 {
  font-size: 2rem; color: var(--color-accent); margin-bottom: var(--space-xs);
}
.value-item .text-en {
  font-size: 0.8rem; opacity: 0.5; margin-bottom: var(--space-sm);
}
.value-item p { font-size: 0.9rem; opacity: 0.7; line-height: 1.8; }
