/* Module presentation: a small, deliberate visual layer for the module pages.
   The content remains readable without the photograph, and all surfaces use
   solid colours and square corners so the page keeps its engineering character. */
body.pmc-unified .pmc-module-hero {
  align-items: stretch;
}

body.pmc-unified .pmc-module-hero > div {
  min-width: 0;
  justify-content: center;
}

body.pmc-unified .pmc-module-hero h1 {
  /* Long module names should form a calm two or three-line heading rather
     than the oversized four-line treatment visible in the previous build. */
  max-width: 18ch;
  font-size: clamp(2.15rem, 3.7vw, 3.55rem);
  line-height: 1.08;
}

body.pmc-unified .pmc-module-aside {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  min-height: 100%;
  padding: 0;
  overflow: hidden;
  background: #fff;
}

body.pmc-unified .pmc-module-aside > :not(.pmc-module-art) {
  margin-inline: 28px;
}

body.pmc-unified .pmc-module-aside h2 {
  margin-top: 24px;
}

body.pmc-unified .pmc-module-aside p:last-child {
  margin-bottom: 28px;
}

body.pmc-unified .pmc-module-art {
  margin: 0;
  width: 100%;
  background: #e8f2f4;
  border-bottom: 1px solid var(--line);
}

body.pmc-unified .pmc-module-art img {
  display: block;
  width: 100%;
  height: clamp(150px, 18vw, 230px);
  object-fit: cover;
  border-radius: 0;
}

body.pmc-unified .pmc-information-panel {
  display: flex;
  flex-direction: column;
}

body.pmc-unified .pmc-information-list {
  display: grid;
  grid-template-rows: repeat(5, minmax(0, 1fr));
  gap: 0;
  flex: 1;
  list-style: none;
  margin: 0;
  padding: 0;
}

body.pmc-unified .pmc-information-list li {
  display: flex;
  align-items: center;
  min-height: 46px;
  padding: 11px 0;
  border-top: 1px solid #dbe6ed;
  line-height: 1.45;
}

body.pmc-unified .pmc-information-list li:first-child {
  border-top: 0;
}

@media (max-width: 720px) {
  body.pmc-unified .pmc-module-hero h1 {
    max-width: 22ch;
    font-size: clamp(2rem, 10vw, 3rem);
  }

  body.pmc-unified .pmc-module-aside > :not(.pmc-module-art) {
    margin-inline: 22px;
  }

  body.pmc-unified .pmc-module-art img {
    height: 190px;
  }

  body.pmc-unified .pmc-information-list {
    grid-template-rows: none;
  }

  body.pmc-unified .pmc-information-list li {
    align-items: flex-start;
  }
}
