.cw-ad {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 1.5rem auto;
  max-width: 100%;
}

.cw-ad img { max-width: 100%; height: auto; display: block; }

/* Unsold inventory carries a house ad. An empty dashed box always read as a
   hole in the layout; a designed self-promotion keeps the slot working. */

.cw-ad__house {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: .25rem;
  width: var(--cw-ad-w, 728px);
  max-width: 100%;
  min-height: var(--cw-ad-h, 90px);
  padding: 1rem 1.25rem;
  border-radius: 8px;
  text-decoration: none;
  background:
    radial-gradient(120% 180% at 100% 0%, rgba(17, 96, 212, .55) 0%, transparent 62%),
    linear-gradient(135deg, #0e1522 0%, #0a0d13 100%);
  color: #fff;
  overflow: hidden;
}

.cw-ad__house--wide {
  flex-direction: row;
  align-items: center;
  gap: 1rem;
}

.cw-ad__house-eyebrow {
  flex: 0 0 auto;
  font-size: .64rem;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: #9dc2f5;
}

.cw-ad__house-line {
  flex: 1 1 auto;
  font-size: .95rem;
  font-weight: 600;
  line-height: 1.35;
}

.cw-ad__house-cta {
  flex: 0 0 auto;
  align-self: flex-start;
  padding: .35rem .8rem;
  border-radius: 4px;
  background: var(--icrt-accent, #1160d4);
  font-size: .78rem;
  font-weight: 600;
}

.cw-ad__house--wide .cw-ad__house-cta { align-self: center; }
.cw-ad__house:hover .cw-ad__house-cta { background: var(--icrt-accent-dark, #0c47a0); }

.cw-ad--sidebar { margin: 0 0 1.5rem; }

@media (max-width: 900px) {
  .cw-ad__house--wide { flex-direction: column; align-items: flex-start; }
}
