.ad { margin: 20px auto; display: flex; justify-content: center; }
.ad__box {
  width: 100%; display: grid; place-items: center; align-content: center; gap: 2px; text-align: center; padding: 12px;
  background: color-mix(in srgb, var(--text) 10%, var(--surface)); color: var(--text-muted);
  border-radius: 10px; border: 1px dashed var(--border); min-height: 100px;
}
.ad__label { font-weight: 700; font-size: 1.05rem; color: var(--text); }
.ad__sizes { font-size: .85rem; }

/* Mobile placements: 320x100 banner / 300x250 box */
.ad--home-top, .ad--games-bottom, .ad--page-bottom { max-width: 320px; }
.ad--home-bottom { max-width: 300px; }
.ad--home-bottom .ad__box { min-height: 250px; }
