@charset "utf-8";

.home-overview { color: var(--color-ink); background: var(--color-paper); }
.home-shell { max-width: 1280px; margin: 0 auto; padding: 0 var(--space-24); }
.home-intro { padding: var(--space-64) 0; }
.home-overview .home-company-name { margin: 0 0 var(--space-8); font-family: var(--font-body); font-size: 1.125rem; line-height: 1.6; font-weight: 400; }
/* Let the real showroom photograph lead, with the copy aligned to its top edge. */
.home-intro-grid { display: grid; grid-template-columns: minmax(0, 46fr) minmax(0, 54fr); gap: var(--space-40); align-items: start; }
.home-overview .home-definition { margin: 0 0 var(--space-24); font-family: var(--font-heading); font-size: clamp(2rem, 2.7vw, 2.5rem); line-height: 1.4; font-weight: 500; }
.home-lead, .home-overview .home-copy { font-size: 1rem; line-height: 1.9; margin: 0; }
.home-primary-actions { display: grid; grid-template-columns: 1fr 1fr; max-width: 470px; gap: var(--space-16); margin-top: var(--space-24); }
.home-primary-actions .site-button { padding-inline: var(--space-8); }
.home-intro-media { margin: 0; }
.home-overview .home-hero-image { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; }
.home-intro-media figcaption { margin-top: var(--space-8); font-size: .875rem; }
.home-section { padding: var(--space-64) 0; border-top: 1px solid rgba(0,42,65,.12); }
/* All four homepage guides are equal single-column sections. Ten Mincho's
   Regular face is used consistently rather than synthetic bold weights. */
.home-overview .home-section .home-section-title {
  margin: 0 0 var(--space-24);
  font-family: var(--font-heading);
  font-size: 2rem;
  line-height: 1.5;
  font-weight: 400;
  font-synthesis: none;
}
.home-overview .home-section .home-copy {
  max-width: 52rem;
  margin: 0 0 var(--space-16);
  font-size: 1rem;
  line-height: 1.9;
  font-weight: 400;
}
.home-overview .home-section .site-text-link { font-weight: 400; }
.home-craft-grid { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-40); align-items: center; }
.home-craft-images { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-16); }
.home-craft-images img { display: block; width: 100%; height: auto; }
@media (max-width: 1023px) {
  .home-intro-grid, .home-craft-grid { gap: var(--space-24); }
  /* Narrow tablets need balanced columns and full-width stacked CTAs. */
  .home-intro-grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .home-primary-actions { grid-template-columns: 1fr; max-width: 100%; }
}
@media (max-width: 767px) {
  .home-shell { padding: 0 var(--space-16); }
  .home-intro, .home-section { padding: var(--space-40) 0; }
  .home-intro-grid, .home-craft-grid { grid-template-columns: 1fr; }
  .home-primary-actions { grid-template-columns: 1fr; }
  .home-primary-actions .site-button { width: 100%; }
}
