/* ── Nationalism News — Ad Units — Responsive ── */

/* Base ad containers — no fixed height so they collapse when unfilled */
.ad-728x90  { width: 100%; max-width: 728px;  min-height: 90px;  margin: 20px auto; overflow: hidden; }
.ad-970x250 { width: 100%; max-width: 970px;  min-height: 250px; margin: 20px auto; overflow: hidden; }
.ad-300x250 { width: 100%; max-width: 300px;  margin: 20px auto; }
.ad-300x600 { width: 100%; max-width: 300px;  min-height: 0; }

/* Collapse wrapper when AdSense reports slot as unfilled */
.ad-728x90:empty,
.ad-970x250:empty,
.ad-300x250:empty,
.ad-300x600:empty { display: none; }

ins.adsbygoogle[data-ad-status="unfilled"] { display: none !important; }
ins.adsbygoogle[data-ad-status="unfilled"] + script { display: none; }

/* When ins collapses, collapse the parent wrapper too */
.ad-728x90:has(ins[data-ad-status="unfilled"]),
.ad-970x250:has(ins[data-ad-status="unfilled"]),
.ad-300x250:has(ins[data-ad-status="unfilled"]),
.ad-300x600:has(ins[data-ad-status="unfilled"]) {
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Mobile sticky footer ad */
.ad-320x50 {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 50px;
  z-index: 9999;
  background: #fff;
  text-align: center;
}

/* Sticky sidebar ad */
.sidebar-ad {
  position: sticky;
  top: 80px;
}

/* Hide large-format ads on mobile */
@media (max-width: 767px) {
  .ad-728x90,
  .ad-970x250,
  .ad-300x600 { display: none; }

  .ad-300x250 {
    width: 100%;
    max-width: 320px;
  }
}

/* Show large ads only on tablet+ */
@media (min-width: 768px) {
  .ad-728x90  { display: block; }
  .ad-970x250 { display: none; }
}

@media (min-width: 1024px) {
  .ad-970x250 { display: block; }
}
