/* Restore a dense media-first work gallery while keeping complete explanations. */
.r25-compact-grid.r25-compact-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  grid-auto-rows: auto !important;
  gap: 16px !important;
  align-items: start !important;
}
.r25-compact-grid[hidden] { display: none !important; }
.r25-compact-card.r24-work {
  grid-row: auto !important;
  padding: 0 !important;
  background: #fff !important;
  border: 1px solid #d8e2ef !important;
  border-radius: 10px !important;
  overflow: hidden;
}
.r25-compact-card .r24-work-body {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
}
.r25-compact-card .r24-work-media { width: 100%; max-width: none !important; }
.r25-compact-card.r24-work .r24-work-media > button,
.r25-compact-card.r24-work .r24-work-media > a,
.r22-home-wall .r25-compact-card.r24-work .r24-work-media .matrix-r18-media {
  width: 100% !important;
  height: 230px !important;
  min-height: 0 !important;
  max-height: 230px !important;
  aspect-ratio: auto !important;
  border-radius: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #0a1422 !important;
}
.r25-compact-card.r24-work .r24-work-media img,
.r25-compact-card.r24-work .r24-work-media video {
  width: 100% !important;
  height: 100% !important;
  max-height: 230px !important;
  object-fit: contain !important;
}
.r25-compact-card .r24-work-reading { width: 100%; padding: 17px; box-sizing: border-box; }
.r25-compact-card .r24-work-title { margin: 0 0 10px !important; }
.r25-compact-card .r24-work-title h3 { font-size: 18px !important; line-height: 1.45 !important; color: #122944; }
.r25-compact-card .r24-work-reading > strong { font-size: 14px; }
.r25-compact-card .r24-work-reading > p { margin: 7px 0 12px !important; font-size: 16px !important; line-height: 1.65 !important; }
.r25-compact-card .folio-tags { flex-wrap: wrap; gap: 5px; margin: 8px 0; }
.r25-compact-card .folio-disclosure { margin: 10px 0 0 !important; padding-top: 9px !important; }
.r25-compact-card .folio-copy > a { margin: 10px 0 0 !important; }
.r25-creative-details { margin-top: 10px; border-top: 1px solid #d9e4ef; }
.r25-creative-details summary { padding-top: 10px; color: #0756ff; font-size: 14px; cursor: pointer; }
.r25-creative-details p { font-size: 16px; line-height: 1.75; }
.r25-matrix-compact { padding: 32px 0 !important; margin: 30px 0 0; border-top: 1px solid #cedbec; }
.r25-matrix-compact > header { margin-bottom: 24px; gap: 28px; }
.r25-matrix-compact > header h2 { font-size: clamp(26px, 2.5vw, 36px); line-height: 1.3; }
.r25-matrix-compact > header p { font-size: 16px; line-height: 1.75; }
.r25-matrix-compact .matrix-target > strong { font-size: 42px; }
.r25-matrix-compact .matrix-target small { font-size: 18px; }
.r25-matrix-compact .eyebrow { font-size: 14px; }
@media (max-width: 1100px) {
  .r25-compact-grid.r25-compact-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
}
@media (max-width: 800px) {
  .r25-compact-grid.r25-compact-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 14px !important; }
  .r25-matrix-compact > header { grid-template-columns: 1fr; }
}
@media (max-width: 520px) {
  .r25-compact-grid.r25-compact-grid { grid-template-columns: 1fr !important; }
  .r25-compact-card .r24-work-reading { padding: 16px; }
}
/* Six selected matrix films form one continuous row, never a 4 + 2 grid. */
#matrix-project .r26-matrix-row.r25-compact-grid {
  grid-template-columns: repeat(6, minmax(200px, 1fr)) !important;
  grid-auto-flow: column !important;
  gap: 14px !important;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scroll-snap-type: x proximity;
  scrollbar-width: auto;
  scrollbar-color: #0756ff #dce7f7;
  padding: 0 0 14px;
  align-items: stretch !important;
}
#matrix-project .r26-matrix-row > article { scroll-snap-align: start; min-width: 0; }
#matrix-project .r26-matrix-row:focus-visible { outline: 3px solid #0756ff; outline-offset: 5px; }
#matrix-project .r26-matrix-row .r24-work-reading { padding: 14px; }
#matrix-project .r26-matrix-row::-webkit-scrollbar { height: 10px; }
#matrix-project .r26-matrix-row::-webkit-scrollbar-track { background: #dce7f7; border-radius: 8px; }
#matrix-project .r26-matrix-row::-webkit-scrollbar-thumb { background: #0756ff; border-radius: 8px; }
.r26-event-project .r26-event-preview { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 3px; background: #0a1422; }
.r26-event-project .r26-event-preview .folio-media { min-width: 0; }
.r26-event-project .r26-event-preview small { display: none; }
.r26-event-project .r26-event-preview a:focus-visible { outline: 3px solid #0756ff; outline-offset: -3px; }
.r26-event-project:has(.r26-event-details[open]) { grid-column: 1 / -1; }
.r26-event-project:has(.r26-event-details[open]) .r26-event-preview { max-width: 580px !important; }
.r26-event-details > summary { color: #0756ff; font-size: 16px; }
.r26-event-intro { padding: 16px 0 20px; max-width: 900px; }
.r26-event-intro h4 { margin: 0 0 8px; font-size: 18px; }
.r26-event-intro p { margin: 0; font-size: 16px !important; line-height: 1.75 !important; }
.r26-event-gallery { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.r26-event-item { min-width: 0; margin: 0; scroll-margin-top: 120px; }
.r26-event-item .folio-media { display: block; height: 210px !important; min-height: 0 !important; aspect-ratio: auto !important; background: #0a1422; overflow: hidden; position: relative; }
.r26-event-item .folio-media img { width: 100%; height: 100%; object-fit: contain; }
.r26-event-item figcaption h4 { margin: 12px 0 6px; font-size: 16px; line-height: 1.5; }
.r26-event-item figcaption p { margin: 6px 0; font-size: 16px !important; line-height: 1.65 !important; }
@media (max-width: 800px) {
  #matrix-project .r26-matrix-row.r25-compact-grid { grid-template-columns: repeat(6, minmax(220px, 70vw)) !important; }
  .r26-event-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 520px) {
  .r26-event-gallery { grid-template-columns: 1fr; }
}
