/* Inner pages: a big word, a rule, a meta row, then content on the 16-column grid. */
.kv-body { display: grid; grid-template-columns: repeat(16, minmax(0, 1fr)); gap: var(--gut); margin-bottom: var(--block); }
.kv-body__aside { grid-column: 1 / span 4; font-size: var(--t-meta); font-weight: 700; display: grid; gap: 8px; align-content: start; }
.kv-body__main { grid-column: 5 / span 9; }
.kv-body__wide { grid-column: 1 / -1; }
@media (max-width: 1023px) { .kv-body__aside, .kv-body__main { grid-column: 1 / -1; } }

/* Journal article */
.kv-article__cover { aspect-ratio: 3 / 2; background: var(--placeholder); overflow: hidden; margin-bottom: 64px; }
.kv-article__cover img { width: 100%; height: 100%; object-fit: cover; }
.kv-article__meta { display: flex; flex-wrap: wrap; gap: 8px 24px; font-size: var(--t-meta); font-weight: 700; margin-bottom: 40px; }

/* Collection / space heroes: one photo on the grid, not full-bleed. */
.kv-feature { display: grid; grid-template-columns: repeat(16, minmax(0, 1fr)); gap: var(--gut); align-items: end; margin-bottom: var(--block); }
.kv-feature__photo { grid-column: 1 / span 10; aspect-ratio: 3 / 2; background: var(--placeholder); overflow: hidden; }
.kv-feature__photo img { width: 100%; height: 100%; object-fit: cover; }
.kv-feature__text { grid-column: 12 / span 5; display: grid; gap: 24px; align-content: end; font-size: var(--t-ui); line-height: 1.25; letter-spacing: -0.025em; }
@media (max-width: 1023px) { .kv-feature__photo, .kv-feature__text { grid-column: 1 / -1; } }

/* Space page shoppable list: rows with 3px rules, like the bag. */
.kv-list { display: grid; }
.kv-list__row { display: grid; grid-template-columns: repeat(16, minmax(0, 1fr)); gap: 16px; align-items: center; padding: 24px 0 16px; border-bottom: 3px solid currentColor; font-size: var(--t-ui); letter-spacing: -0.025em; line-height: 1.1; }
.kv-list__row:first-child { border-top: 3px solid currentColor; }
.kv-list__row > :nth-child(1) { grid-column: 1 / span 6; }
.kv-list__row > :nth-child(2) { grid-column: 7 / span 4; font-size: var(--t-meta); font-weight: 700; }
.kv-list__row > :nth-child(3) { grid-column: 11 / span 3; }
.kv-list__row > :nth-child(4) { grid-column: 14 / span 3; justify-self: end; font-size: 16px; }
.kv-list__thumb { width: 96px; aspect-ratio: 1; background: var(--photo); object-fit: contain; padding: 6px; }
@media (max-width: 767px) { .kv-list__row { grid-template-columns: 1fr auto; } .kv-list__row > * { grid-column: auto !important; } }

/* Studio capabilities as rows */
.kv-caps { display: grid; }
.kv-caps__row { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: 24px; padding: 20px 0; border-bottom: 2px solid currentColor; font-size: 16px; line-height: 1.4; }
.kv-caps__row:first-child { border-top: 2px solid currentColor; }
.kv-caps__row strong { font-size: var(--t-ui); font-weight: 400; letter-spacing: -0.025em; line-height: 1.1; }
@media (max-width: 767px) { .kv-caps__row { grid-template-columns: 1fr; gap: 6px; } }

/* Bespoke steps */
.kv-steps { display: grid; }
.kv-steps li { display: grid; gap: 8px; padding: 20px 0; border-bottom: 2px solid currentColor; font-size: 14px; font-weight: 400; line-height: 1.4; }
.kv-steps li:first-child { border-top: 2px solid currentColor; }
.kv-steps li strong { display: block; font-size: var(--t-ui); font-weight: 400; letter-spacing: -0.025em; line-height: 1.1; }

/* 404 */
.kv-404 { padding: 40px 0 var(--block); display: grid; gap: 40px; justify-items: start; }
