/* Approved bilingual cover: one subtitle and a shared input/control diagram. */
.cover .page-body { display: block; }
.cover-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 42px; align-items: center; }
.cover .cover-title { font-size: 76px; line-height: 1.2; letter-spacing: -.04em; margin: 0 0 30px; text-wrap: initial; }
:lang(en) .cover .cover-title { font-size: 58px; }
.cover .cover-subtitle { font-size: 22px; line-height: 1.65; letter-spacing: -.025em; color: #dceafa; font-weight: 650; margin: 0 0 28px; text-wrap: initial; }
.cover-description { font-size: 17px; line-height: 1.9; color: #d0deec; max-width: 580px; margin: 0; }
.cover-diagram { display: block; width: 100%; height: auto; font-family: var(--site-font); }
.cover-legend { margin-top: 18px; padding: 18px 22px; border: 1px solid #45617c; background: #17344f; line-height: 1.8; font-size: 14px; color: #c0d2e6; }
.cover-legend strong { color: #8ed9e4; font-size: 12px; letter-spacing: 1px; display: block; margin-bottom: 4px; }
.cover-delivery { border-top: 1px solid #496077; margin-top: 36px; padding-top: 24px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
.cover-delivery b { font-size: 15px; color: #e1edfa; display: block; margin-bottom: 8px; }
.cover-delivery p { font-size: 14px; line-height: 1.8; color: #adc3d9; margin: 0; }
@media screen {
  .cover .eyebrow { margin: 0 0 34px; }
  .cover .cover-title { font-size: clamp(50px, 5.1vw, 76px); }
  :lang(en) .cover .cover-title { font-size: clamp(40px, 3.9vw, 58px); }
}
@media screen and (max-width: 1099px) {
  .cover-layout { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .cover-layout > div:last-child { width: 100%; max-width: 680px; margin-inline: auto; }
  .cover-description { max-width: none; }
}
@media screen and (max-width: 580px) {
  .cover .cover-title { font-size: 42px; }
  :lang(en) .cover .cover-title { font-size: 38px; }
  .cover .cover-subtitle { font-size: 20px; }
  .cover-description { font-size: 16px; }
  .cover-delivery { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .cover-legend { padding: 16px; }
}
@media print {
  .cover .running { margin-bottom: 24px; }
  .cover .eyebrow { margin-bottom: 20px; }
  .cover-layout { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  .cover .cover-title, :lang(en) .cover .cover-title { font-size: 54px; margin-bottom: 18px; }
  .cover .cover-subtitle { font-size: 19px; line-height: 1.6; margin-bottom: 18px; }
  .cover-description { font-size: 14px; line-height: 1.8; max-width: none; }
  .cover-diagram { height: 360px; }
  .cover-legend { margin-top: 0; padding: 12px 16px; font-size: 12px; line-height: 1.6; }
  .cover-legend strong { font-size: 9px; margin-bottom: 2px; }
  .cover-delivery { margin-top: 20px; padding-top: 16px; gap: 20px; }
  .cover-delivery b { font-size: 12px; margin-bottom: 5px; }
  .cover-delivery p { font-size: 12px; line-height: 1.6; }
}
