/* Editorial case studies for the archive. Original media remains uncropped. */
.archive-page .case-intro h1 { font-size: clamp(2.6rem, 4.6vw, 4.8rem); overflow-wrap: anywhere; }
.archive-page .archive-featured { aspect-ratio: 16 / 9; }
.archive-featured .case-play img { width: 100%; object-fit: contain; }
.case-note.archive-note { grid-template-columns: minmax(0, 1fr); align-items: start; }
.archive-note ul { margin: 0; padding-left: 1.1rem; font-size: .98rem; line-height: 1.75; }
.archive-note li + li { margin-top: .6rem; }
.archive-section { margin-block: clamp(2rem, 4vw, 3.5rem); }
.archive-section > h2 { margin: 0 0 1.1rem; font-size: 1.8rem; line-height: 1.15; }
.archive-section > h2.eyebrow { font-family: var(--sans); font-size: .74rem; }
.archive-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.4rem 1rem; }
.archive-gallery figure { min-width: 0; margin: 0; }
.archive-image { display: block; overflow: hidden; border-radius: .3rem; background: #000; }
.archive-image img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: contain; }
.archive-image:hover, .archive-image:focus-visible { outline: 2px solid #a999ad; outline-offset: 3px; }
.archive-gallery figcaption { margin-top: .65rem; color: var(--muted); font-size: .82rem; line-height: 1.6; }
.archive-gallery--boards .archive-image { background: var(--paper); }
.archive-gallery--boards img { aspect-ratio: 16 / 10; }
.archive-gallery--applications .archive-image { background: #fff; }
.archive-gallery--applications img { aspect-ratio: 2 / 1; }
.archive-video-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.8rem 1rem; }
.archive-video-grid--single { grid-template-columns: minmax(0, 1fr); max-width: 56rem; }
.archive-video-card { min-width: 0; }
.archive-video-card h3, .archive-video-group h3, .archive-voice h3 { margin: 0 0 .85rem; font: 300 1.4rem/1.2 var(--serif); }
.archive-embed { aspect-ratio: 16 / 9; overflow: hidden; border-radius: .3rem; background: #000; }
.archive-embed iframe { display: block; width: 100%; height: 100%; border: 0; }
.archive-watch { display: inline-block; margin-top: .7rem; color: var(--muted); font-size: .76rem; text-underline-offset: .2em; }
.archive-video-group { padding-top: 1.5rem; margin-top: 2rem; border-top: 1px solid var(--line); }
.archive-concept-steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; list-style: none; padding: 0; margin: 0; }
.archive-concept-steps li { min-width: 0; padding: 1rem; border-radius: .3rem; background: #e5eade; }
.archive-step-index { display: block; margin-bottom: .8rem; font: 300 1.5rem var(--serif); color: #6b7561; }
.archive-concept-steps .archive-image { background: #fff; }
.archive-concept-steps img { aspect-ratio: 440 / 341; }
.archive-concept-steps p { margin: .85rem 0 0; font-size: .88rem; line-height: 1.75; }
.archive-voice { max-width: 62rem; margin-inline: auto; padding-top: 1.7rem; border-top: 1px solid var(--line); }
.archive-voice > p { max-width: 78ch; margin: 0 0 1.5rem; font-size: .98rem; line-height: 1.75; color: var(--muted); }
.archive-related { margin-block: 2rem; padding: 1.4rem 1.6rem; background: #e9e4ed; border-radius: .3rem; }
.archive-related .eyebrow { margin: 0 0 .6rem; }
.archive-related > a { font: 300 1.35rem var(--serif); text-underline-offset: .2em; }
.archive-page .case-pagination { margin-top: 2.5rem; }
@media (max-width: 1000px) {
  .archive-concept-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 800px) {
  .archive-page .case-intro h1 { font-size: clamp(2.6rem, 8vw, 4rem); }
  .archive-page .case-notes { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 600px) {
  .archive-gallery, .archive-video-grid { grid-template-columns: minmax(0, 1fr); }
  .archive-concept-steps { grid-template-columns: minmax(0, 1fr); }
  .archive-page .case-pagination a { overflow-wrap: anywhere; }
}
