/* An advertisement view with no ad to show still rendered its flex container,
   reserving empty space -- a blank band above the content, gaps down the
   sidebar. Collapse the block when it holds no ad row. Specificity (0,2,0)
   from :not(:has()) wins over the display:flex below without !important. */
[id*="views-block-advertisements"]:not(:has(.views-row)) {
  display: none;
}

.advertisement, div [id*="block-advertisement"] {
  display: flex;
  justify-content: center;
  margin: var(--spacing-m) 0;
}

.advertisement .content, div [id*="block-advertisement"] .content {
  display: flex;
  align-items: center;
}

.advertisement .views-row, div [id*="block-advertisement"] .views-row {
  display: flex;
  justify-content: center;
  margin-bottom: 40px;
}

.advertisement .views-row, div [id*="block-advertisement"] .views-row:last-child,
.advertisement .views-row:last-child {
  margin-bottom: 0;
}
