/* ================================================================
   ADS — slot placeholders for TheStyleOwl.
   CLS-safe: each slot reserves space immediately.
   ================================================================ */

.ad-slot {
  display: block;
  margin: 24px auto;
  position: relative;
  overflow: hidden;
  border-radius: 6px;
  box-sizing: border-box;
}

.ad-slot__label {
  position: absolute;
  top: 6px; left: 8px;
  font: 10px/1 system-ui, -apple-system, sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.85);
  z-index: 1;
}

.ad-slot__size {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font: 600 14px/1.4 system-ui, -apple-system, sans-serif;
  color: rgba(255, 255, 255, 0.95);
  text-align: center;
}

.ad-slot__size small {
  display: block;
  font-weight: 400;
  font-size: 11px;
  opacity: 0.75;
  margin-top: 2px;
}

/* TheStyleOwl — gold tone, contrasts against the editorial-black page bg */
.ad-slot--placeholder { background: #D4AF37; color: #1a1a1a; }
.ad-slot--placeholder .ad-slot__label,
.ad-slot--placeholder .ad-slot__size { color: #1a1a1a; }

/* Desktop slot dimensions */
.ad-slot--header        { width: 728px; height: 90px;  max-width: 100%; }
.ad-slot--in-article    { width: 300px; height: 250px; max-width: 100%; }
.ad-slot--end-article   { width: 728px; height: 90px;  max-width: 100%; }
.ad-slot--footer        { width: 728px; height: 90px;  max-width: 100%; }

/* Sticky right + left standing-banner slots — ride the gutters on wide viewports. */
.ad-slot--sidebar,
.ad-slot--sidebar-left {
  width: 300px; height: 600px;
  position: fixed; top: 120px;
  margin: 0; z-index: 10;
}
.ad-slot--sidebar      { left: calc(50% + 410px); }
.ad-slot--sidebar-left { left: calc(50% - 710px); }
@media (max-width: 1279px) {
  .ad-slot--sidebar,
  .ad-slot--sidebar-left { display: none; }
}

/* Mobile slot dimensions */
@media (max-width: 600px) {
  .ad-slot--header      { width: 320px; height: 50px;  }
  .ad-slot--in-article  { width: 320px; height: 100px; }
  .ad-slot--end-article { width: 300px; height: 250px; }
  .ad-slot--footer      { width: 320px; height: 50px;  }
}
