.blog-ad-slot:not(.is-filled) {
  position: absolute;
  height: 0;
  min-height: 0;
  margin: 0;
  padding: 0;
  border: 0;
  overflow: hidden;
  pointer-events: none;
  width: min(100%, 1000px);
}
.blog-ad-slot.is-filled { position: static; width: auto; }
.blog-ad-slot iframe.blog-ad-frame { display: block; border: 0; max-width: 100%; margin: 0 auto; }
.blog-ad-content { max-width: 100%; margin: 0 auto; }
.blog-ad-content iframe { max-width: 100%; border: 0; }
.blog-page .blog-ad-slot.is-filled {
  padding: 12px 0;
  border: 0;
  background: transparent;
  border-radius: 0;
}
.blog-ad-slot--banner.is-filled { margin: 0 0 20px; }
.blog-ad-slot--sidebar.is-filled { margin: 0; }
.blog-ad-slot--sidebar.blog-ad-slot--in-feed { inset: auto; }
.blog-ad-slot--sidebar.blog-ad-slot--in-feed.is-filled { grid-column: auto; }
.blog-ad-slot.is-unfilled,
.blog-ad-slot[hidden] { display: none !important; }
.blog-post-hero > * { min-width: 0; }
.blog-post-copy h1 { overflow-wrap: anywhere; }
@media (min-width: 961px) {
  .blog-page .blog-sidebar,
  .blog-page .blog-post-aside { top: 122px; }
}
.blog-ad-consent {
  position: fixed; z-index: 1000; bottom: 12px; left: 12px; right: 12px;
  max-width: 680px; margin: 0 auto; padding: 16px; background: #fff;
  color: #172033; border: 1px solid #ccd5dc; border-radius: 6px;
  box-shadow: 0 4px 20px #0002; font: 14px/1.5 Arial, sans-serif;
}
.blog-ad-consent p { margin: 0 0 12px; }
.blog-ad-consent div { display: flex; gap: 12px; flex-wrap: wrap; }
.blog-ad-consent button { padding: 8px 16px; border: 1px solid #06777c; border-radius: 4px; background: #fff; color: #065d62; cursor: pointer; }
.blog-ad-preferences { border: 0; background: transparent; color: inherit; font: inherit; padding: 0; cursor: pointer; text-decoration: underline; }

.blog-page #qc-cmp2-persistent-link {
  left: 12px !important;
  right: auto !important;
  bottom: 12px !important;
  transform: none !important;
}
.blog-advertising-consent {
  position: fixed;
  bottom: 56px;
  left: 12px;
  right: 12px;
  max-width: 440px;
  z-index: 1000;
  padding: 16px;
  background: #fff;
  color: #222;
  border: 1px solid #aaa;
  border-radius: 6px;
  box-shadow: 0 2px 12px #0002;
}
.blog-advertising-consent p { margin: 0 0 12px; font-size: 14px; }
.blog-advertising-consent a { display: block; margin-bottom: 12px; }
.blog-advertising-consent details { margin-bottom: 12px; font-size: 14px; }
.blog-advertising-consent summary { cursor: pointer; }
.blog-advertising-consent details[open] summary { margin-bottom: 12px; }
.blog-advertising-consent button { padding: 8px 16px; margin-right: 8px; border: 1px solid #666; border-radius: 4px; background: #fff; color: #222; cursor: pointer; }
