/* Zone placeholder — reserves space, prevents layout shift */
.anc-ad-zone {
	text-align: center;
}

/* In-content ad — NYT-style full-width band */
.anc-ad[class*="anc-ad--in-content"] {
	position: relative;
	left: 50%;
	transform: translateX(-50%);
	width: 100vw;
	background: #f7f7f7;
	border-top: 1px solid #e2e2e2;
	border-bottom: 1px solid #e2e2e2;
	padding: 1.25em 1em;
	margin-top: 2em;
	margin-bottom: 2em;
	text-align: center;
	box-sizing: border-box;
	overflow: hidden;
}

/* Static zone ads — simple centered block */
.anc-ad {
	text-align: center;
	margin: 0;
	padding: 0;
}

/* After-header ad — matches in-content ad background, spaced from top.
   Must come after the generic .anc-ad rule so padding-top wins source order. */
.anc-ad--after-header {
	background: #f7f7f7;
	padding-top: 0.5em;
}

/* Before-content ad — pull up into header gap, breathing room below. */
.anc-ad--before-content {
	margin-top: -0.5lh;
	margin-bottom: 1lh;
}

/* Label above the ad */
.anc-ad__label {
	display: block;
	font-size: 1rem;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: #999;
	margin-bottom: 0.75em;
	line-height: 1;
}

/* Ad image */
.anc-ad__image {
	max-width: 100%;
	height: auto;
	display: block;
	margin: 0 auto;
}

/* Scroll-triggered ad popup — ease in/out */
.brx-popup.anc-ad-popup {
	transition: opacity 300ms ease-in-out, visibility 300ms ease-in-out;
}

/* Click-through link */
.anc-ad__link {
	display: inline-block;
	max-width: 100%;
}
