/* Factory page only. Reuses the existing palette, sans-serif stack and breakpoints. */
.factory-evidence {
  color: var(--ink);
  background: var(--white);
  font-family: var(--sans);
}

.factory-evidence h1,
.factory-evidence h2,
.factory-evidence h3 {
  margin: 0;
  font-family: var(--sans);
  font-weight: 650;
  letter-spacing: -.025em;
  line-height: 1.15;
  text-wrap: balance;
}

.factory-evidence h1 { max-width: 11ch; font-size: 44px; }
.factory-evidence h2 { max-width: 26ch; font-size: var(--section-title-size); font-weight: 600; }
.factory-evidence h3 { font-size: 18px; font-weight: 600; line-height: 1.3; letter-spacing: -.015em; }
.factory-evidence p { margin: 16px 0 0; color: var(--muted); }
.factory-evidence figure { min-width: 0; margin: 0; }
.factory-evidence figcaption { margin-top: 12px; font: 400 12px/1.5 var(--sans); }
.factory-evidence .button { min-height: 50px; font: var(--control-font); letter-spacing: var(--control-tracking); }
.factory-evidence .button:hover { color: var(--white); background: var(--leather-dark); border-color: var(--leather-dark); }
.factory-evidence .button:focus-visible { outline: 3px solid var(--leather-dark); outline-offset: 4px; }

.factory-evidence .factory-evidence__section {
  padding: 64px max(5vw, 34px);
}

.factory-evidence .factory-evidence__heading { max-width: 740px; margin-bottom: 30px; }
.factory-evidence .factory-evidence__heading p { max-width: 70ch; }

.factory-evidence .factory-evidence__hero {
  display: grid;
  grid-template-columns: minmax(0, .34fr) minmax(0, .66fr);
  min-height: 600px;
  background: var(--paper);
}

.factory-evidence .factory-evidence__hero-image {
  grid-column: 2;
  grid-row: 1;
  width: 100%;
  height: 600px;
  object-fit: cover;
  object-position: 50% 82%;
}

.factory-evidence .factory-evidence__hero-copy {
  grid-column: 1;
  grid-row: 1;
  align-self: center;
  padding: 44px 3.5vw 44px max(5vw, 34px);
}

.factory-evidence .factory-evidence__hero-copy p { max-width: 34ch; font-size: 16px; }
.factory-evidence .factory-evidence__hero-copy .button { margin-top: 28px; }
.factory-evidence .factory-evidence__facts { border-bottom: 1px solid var(--line); }

.factory-evidence .factory-evidence__metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.factory-evidence .factory-evidence__metrics > div { padding: 25px 24px; border-left: 1px solid var(--line); }
.factory-evidence .factory-evidence__metrics > div:first-child { padding-left: 0; border-left: 0; }
.factory-evidence .factory-evidence__metrics dt { font-size: 32px; font-weight: 600; line-height: 1.15; letter-spacing: -.025em; font-variant-numeric: tabular-nums; }
.factory-evidence .factory-evidence__metrics dd { margin: 10px 0 0; color: var(--muted); font-size: 14px; line-height: 1.5; }
.factory-evidence .factory-evidence__qualification { max-width: 105ch; margin-top: 20px; font-size: 13px; }

.factory-evidence .factory-evidence__environment-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.factory-evidence .factory-evidence__environment-grid img { width: 100%; aspect-ratio: 16 / 10; height: auto; object-fit: cover; }
.factory-evidence .factory-evidence__environment-grid .factory-evidence__sewing-image { object-position: 50% 90%; }

.factory-evidence .factory-evidence__craft {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr);
  align-items: center;
  gap: 5vw;
  background: var(--paper);
}

.factory-evidence .factory-evidence__craft img { aspect-ratio: 16 / 10; height: auto; object-fit: cover; object-position: 45% 75%; }
.factory-evidence .factory-evidence__craft-copy p { max-width: 50ch; }
.factory-evidence .factory-evidence__video video { display: block; width: 100%; max-width: 1120px; height: auto; margin: 0 auto; background: var(--ink); }
.factory-evidence .factory-evidence__quality { padding-top: 0; }

.factory-evidence .factory-evidence__checks {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px;
  margin: 0;
  padding: 24px 0 0;
  border-top: 1px solid var(--line);
  list-style: none;
}

.factory-evidence .factory-evidence__checks p { margin-top: 10px; font-size: 15px; }
.factory-evidence .factory-evidence__identity {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.35fr);
  align-items: center;
  gap: 5vw;
  background: var(--paper);
}

.factory-evidence .factory-evidence__identity img { aspect-ratio: 16 / 10; height: auto; object-fit: cover; object-position: 50% 60%; }
.factory-evidence .factory-evidence__identity .factory-evidence__company { color: var(--ink); font-weight: 600; }
.factory-evidence .factory-evidence__identity dl { margin: 22px 0 0; padding-top: 18px; border-top: 1px solid var(--line); }
.factory-evidence .factory-evidence__identity dt { color: var(--muted); font-size: 13px; }
.factory-evidence .factory-evidence__identity dd { margin: 4px 0 0; font-size: 15px; }
.factory-evidence .factory-evidence__inquiry { display: flex; justify-content: space-between; align-items: center; gap: 32px; }
.factory-evidence .factory-evidence__inquiry .button { flex-shrink: 0; }

@media (max-width: 1180px) {
  .factory-evidence h1 { font-size: 40px; }
  .factory-evidence h2 { font-size: var(--section-title-size); }
  .factory-evidence .factory-evidence__hero,
  .factory-evidence .factory-evidence__hero-image { min-height: 580px; }
  .factory-evidence .factory-evidence__hero-image { height: 580px; }
  .factory-evidence .factory-evidence__metrics dt { font-size: 28px; }
  .factory-evidence .factory-evidence__metrics > div { padding-right: 18px; padding-left: 18px; }
}

@media (max-width: 980px) {
  .factory-evidence .factory-evidence__section { padding: 48px 34px; }
  .factory-evidence .factory-evidence__hero { grid-template-columns: minmax(0, 1fr); min-height: 0; }
  .factory-evidence .factory-evidence__hero-image { grid-column: 1; grid-row: 1; min-height: 0; height: 420px; }
  .factory-evidence .factory-evidence__hero-copy { grid-column: 1; grid-row: 2; padding: 34px; }
  .factory-evidence h1 { max-width: 20ch; }
  .factory-evidence .factory-evidence__hero-copy p { max-width: 60ch; }
  .factory-evidence .factory-evidence__metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .factory-evidence .factory-evidence__metrics > div { padding: 22px 24px; }
  .factory-evidence .factory-evidence__metrics > div:nth-child(odd) { padding-left: 0; border-left: 0; }
  .factory-evidence .factory-evidence__metrics > div:nth-child(n + 3) { border-top: 1px solid var(--line); }
  .factory-evidence .factory-evidence__environment-grid { gap: 16px; }
  .factory-evidence .factory-evidence__craft,
  .factory-evidence .factory-evidence__identity { gap: 30px; }
  .factory-evidence .factory-evidence__quality { padding-top: 0; }
  .factory-evidence .factory-evidence__inquiry { align-items: flex-start; }
}

@media (max-width: 620px) {
  .factory-evidence h1 { font-size: 30px; }
  .factory-evidence h2 { font-size: var(--section-title-size); }
  .factory-evidence h3 { font-size: 18px; }
  .factory-evidence .factory-evidence__section { padding: 38px 20px; }
  .factory-evidence .factory-evidence__heading { margin-bottom: 24px; }
  .factory-evidence .factory-evidence__hero-image { height: 300px; object-position: 50% 100%; }
  .factory-evidence .factory-evidence__hero-copy { padding: 28px 20px 32px; }
  .factory-evidence .factory-evidence__hero-copy p { font-size: 16px; }
  .factory-evidence .factory-evidence__hero-copy .button { margin-top: 22px; }
  .factory-evidence .factory-evidence__metrics dt { font-size: 25px; }
  .factory-evidence .factory-evidence__metrics dd { font-size: 13px; }
  .factory-evidence .factory-evidence__metrics > div { padding: 20px 16px; }
  .factory-evidence .factory-evidence__environment-grid { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .factory-evidence .factory-evidence__craft,
  .factory-evidence .factory-evidence__identity { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .factory-evidence .factory-evidence__identity figure { grid-row: 1; }
  .factory-evidence .factory-evidence__checks { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .factory-evidence .factory-evidence__quality { padding-top: 0; }
  .factory-evidence .factory-evidence__inquiry { flex-direction: column; gap: 24px; }
}
