/* Advertising is separate from editorial content and existing media. */
.display-ad { box-sizing: border-box; width: calc(var(--ad-width) + 2px); max-width: 100%; margin: 24px auto; color: #b9d1da; background: #071e2b; border: 1px solid #294552; border-radius: 6px; }
.display-ad[hidden] { display: none !important; }
.display-ad-heading { display: flex; justify-content: space-between; align-items: center; min-height: 28px; padding-left: 10px; font: 12px/1.4 sans-serif; color: #b9d1da; }
.display-ad-heading button { flex: none; width: 44px; height: 32px; padding: 0; border: 0; background: transparent; color: #e9f2f5; cursor: pointer; font: 22px/1 sans-serif; }
.display-ad-heading button:focus-visible { outline: 2px solid #8cf5e6; outline-offset: -3px; }
[data-ad-container] { width: 100%; min-height: var(--ad-height); overflow: hidden; line-height: 0; }
[data-ad-container] iframe { max-width: 100%; border: 0; }
.display-ad:has([data-ad-format="native"]) { width: min(1120px, calc(100% - 32px)); }
.display-ad [data-ad-format="native"] { line-height: normal; }
/* Keep the full-width hero outside the content/sidebar grid. */
.page-body, .page-content { display: flow-root; min-width: 0; }
.ad-rail { display: none; }
[data-ad-placement="topMobile"] { width: 320px; border: 0; margin: 12px auto; }
[data-ad-placement="topDesktop"] { border: 0; }
@media (min-width: 1340px) {
  body.ads-enabled .ad-page-grid { display: grid; grid-template-columns: minmax(0, 1fr) 160px; gap: 24px; width: min(calc(100% - 48px), 1600px); margin-inline: auto; align-items: start; }
  body.ads-enabled .ad-rail { display: block; position: sticky; top: 100px; }
  .ad-rail .display-ad { width: 160px; margin-top: 16px; border: 0; }
}
@media (max-width: 767px) {
  body.has-ad-anchor { padding-bottom: calc(94px + env(safe-area-inset-bottom)); }
  body.ad-mobile-docked [data-ad-placement="topMobile"] { position: fixed; bottom: 0; left: 50%; transform: translateX(-50%); z-index: 90; margin: 0; padding-bottom: env(safe-area-inset-bottom); box-shadow: 0 -4px 24px #0005; }
  body:has(dialog[open]) [data-ad-placement="topMobile"],
  body:has(#analytics-consent:not([hidden])) [data-ad-placement="topMobile"],
  body:has([data-menu-toggle][aria-expanded="true"]) [data-ad-placement="topMobile"] { visibility: hidden; pointer-events: none; }
}

.display-ad [data-ad-format="native"] { box-sizing: border-box; padding: 14px; background: #f6f1e7; color: #18313d; border-radius: 0 0 5px 5px; }

/* A 300px creative must not be clipped by the article card's mobile padding. */
.display-ad[data-ad-placement="inContent"] { width: 302px; max-width: none; position: relative; left: 50%; transform: translateX(-50%); margin-inline: 0; }
