/* =========================================================================
 * ads.css — ad slot wrappers. Tuned to stay inside the clean look:
 * centered, muted "Advertisement" label, reserved height to avoid layout
 * shift (CLS) as units load.
 * ========================================================================= */

.lb-ad {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.45rem;
	text-align: center;
}

/* Keep any unit (AdSense <ins> or a pasted iframe/div) within its column. */
.lb-ad > :not(.lb-ad__label) {
	max-width: 100%;
}
.lb-ad .adsbygoogle {
	display: block;
	width: 100%;
}

.lb-ad__label {
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--lb-muted);
}

/* -------- In-article: separated from the surrounding text -------- */

.lb-ad--in-article {
	margin-block: var(--lb-s-5);
	min-height: 100px;
}

/* -------- After-content: sits inside the bordered .lb-after-content -------- */

.lb-ad--after-content {
	min-height: 100px;
}

/* -------- Sidebar: desktop right rail only -------- */

.lb-ad--sidebar {
	min-height: 250px;
}

@media (max-width: 1024px) {
	/* Rail collapses below the article on tablet/mobile — drop the sidebar
	   unit there and rely on the in-article + after-content slots. */
	.lb-ad--sidebar {
		display: none;
	}
}
