/* Most5 home-only corrections. Keep the Most3 comparison immutable. */
/* Photo rows retain their natural height; one black label never stretches to the other. */
.most5-home .node-case__heading { align-self:end; }
.most5-home .node-case__information { align-self:end; padding-block:1em; }
.most5-home .node-case__information > div { row-gap:0; }
.most5-home .node-case__information dt,
.most5-home .node-case__information dd,
.most5-home .node-case__information a { font-weight:400; }
/* Put caption and playback above the image, with one full-width entry below it. */
.most5-home #open-lab .most-openlab { padding-block:1.5rem; }
.most5-home #open-lab .most-openlab__topbar {
  display:flex; align-items:center; justify-content:space-between; gap:.75rem;
  min-width:0; padding:0 0 .75rem; color:var(--signal);
}
.most5-home #open-lab .most-openlab .most-openlab__topbar .most-openlab__caption {
  display:flex; align-items:baseline; flex-wrap:wrap; flex:1 1 auto;
  min-width:0; padding:0; gap:.2rem .65rem; font-size:.875rem; line-height:1.45;
}
.most5-home #open-lab .most-openlab__topbar .most-openlab__toggle {
  flex:0 0 44px; width:44px; min-height:44px; align-self:center;
  padding:.5rem; border:1px solid var(--signal); background:var(--ink); color:var(--signal);
}
.most5-home #open-lab .most-openlab__toggle svg {
  fill:none; stroke:currentColor; stroke-width:1.8; stroke-linejoin:round;
}
.most5-home #open-lab .most-openlab > figcaption {
  display:block; margin:0; border:0; width:100%;
}
.most5-home #open-lab .most-openlab > figcaption > .most-openlab__entry {
  display:flex; width:100%; min-height:44px; align-items:center;
  justify-content:space-between; gap:1rem; padding:.85rem 1rem;
  background:var(--signal); color:var(--ink); border:1px solid var(--signal);
  font-size:.875rem; line-height:1.45; text-decoration:none;
}
.most5-home #open-lab .most-openlab__entry:hover { background:var(--ink); color:var(--signal); }
.most5-home #open-lab .most-openlab__entry:focus-visible { outline:2px solid var(--paper); outline-offset:-5px; }
/* The mobile slideshow uses normal flow: photo, caption, controls, then the introduction.
   This removes the grid/stretch/absolute-height dependency while preserving 4:3 crop. */
@media (max-width:900px) {
  .most5-home .hero-most { display:block; min-height:0; }
  .most5-home .hero-most > .main-display {
    display:block; position:relative; width:100%; min-height:0;
    align-self:auto; aspect-ratio:auto; overflow:visible;
  }
  .most5-home .hero-most > .main-display::before { content:none; }
  .most5-home .hero-most .main-slideshow { display:block; position:static; inset:auto; width:100%; }
  .most5-home .hero-most .main-slide-stage { display:grid; position:relative; width:100%; min-height:0; }
  .most5-home .hero-most .main-slide {
    display:grid; grid-template-rows:auto 1fr; align-items:stretch;
    width:100%; position:relative; min-width:0; margin:0;
  }
  .most5-home .hero-most .main-slide img {
    display:block; position:relative; inset:auto; grid-row:1;
    width:100%; height:auto; aspect-ratio:4 / 3; object-fit:cover;
  }
  .most5-home .hero-most .main-slide figcaption {
    grid-row:2; width:100%; min-height:0; padding:.6rem var(--gutter);
    font-size:.75rem; line-height:1.4; background:var(--ink);
  }
  .most5-home .hero-most .main-slide-controls { min-height:44px; }
  .most5-home .node-case__heading { align-self:start; }
}
@media (max-width:600px) {
  .most5-home .hero-most > .hero-intro { grid-template-columns:minmax(0,1fr); }
  .most5-home .hero-most .hero-statement { overflow-wrap:normal; word-break:normal; }
  .most5-home .hero-most .hero-detail { padding-top:0; }
}
