/* GD Sticky Banners */
.gdsb-rail {
	position: fixed;
	top: var(--gdsb-top, 120px);
	width: var(--gdsb-w, 160px);
	z-index: 900;
	display: none;
	will-change: transform;
}
.gdsb-rail.is-on { display: block; }
.gdsb-left  { left: calc(50% - var(--gdsb-cw, 1200px) / 2 - var(--gdsb-gap, 20px) - var(--gdsb-w, 160px)); }
.gdsb-right { left: calc(50% + var(--gdsb-cw, 1200px) / 2 + var(--gdsb-gap, 20px)); }

.gdsb-rail img {
	display: block;
	width: 100%;
	height: auto;
	border: 0;
}

.gdsb-label {
	display: block;
	margin: 0 0 4px;
	font: 500 10px/1.4 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
	letter-spacing: .08em;
	text-transform: uppercase;
	text-align: center;
	color: #8a8a8a;
}

/* Mobile anchor */
.gdsb-mobile {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 9990;
	display: none;
	padding: 4px 8px calc(6px + env(safe-area-inset-bottom, 0px));
	background: #fff;
	box-shadow: 0 -2px 12px rgba(0, 0, 0, .15);
	transform: translateY(110%);
	transition: transform .35s ease;
}
.gdsb-mobile.is-ready { display: block; }
.gdsb-mobile.is-on { transform: translateY(0); }
.gdsb-mobile .gdsb-label { margin-bottom: 2px; }
.gdsb-mobile .gdsb-slot { max-width: 420px; margin: 0 auto; text-align: center; }
.gdsb-mobile .gdsb-slot img {
	display: block;
	width: auto;
	max-width: 100%;
	height: auto;
	max-height: 100px;
	margin: 0 auto;
	border: 0;
}
.gdsb-close {
	position: absolute;
	top: -26px;
	right: 8px;
	width: 30px;
	height: 26px;
	padding: 0;
	border: 0;
	border-radius: 6px 6px 0 0;
	background: #fff;
	color: #333;
	font-size: 20px;
	line-height: 26px;
	cursor: pointer;
	box-shadow: 0 -2px 6px rgba(0, 0, 0, .1);
}
body.gdsb-pad { padding-bottom: var(--gdsb-mh, 0px) !important; }

.gdsb-rail video,
.gdsb-mobile video { display: block; max-width: 100%; height: auto; margin: 0 auto; }
.gdsb-mobile video { max-height: 100px; width: auto; }

/* Mid-article scroll reveal */
.gdsb-inline {
	display: none;
	position: relative;
	margin: 2em 0;
	clear: both;
}
.gdsb-inline.is-ready { display: block; }
.gdsb-inline-stage {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	text-align: center;
	will-change: transform, clip-path;
	clip-path: inset(var(--gdsb-r, 50%) 0 var(--gdsb-r, 50%) 0 round 8px);
	-webkit-clip-path: inset(var(--gdsb-r, 50%) 0 var(--gdsb-r, 50%) 0 round 8px);
}
.gdsb-inline.is-calm .gdsb-inline-stage { clip-path: none; -webkit-clip-path: none; }
.gdsb-inline .gdsb-slot img,
.gdsb-inline .gdsb-slot video {
	display: block;
	width: auto;
	max-width: 100%;
	height: auto;
	max-height: var(--gdsb-imax, 80vh);
	margin: 0 auto;
	border: 0;
	border-radius: 8px;
}
.gdsb-inline .gdsb-slot a,
.gdsb-inline .gdsb-slot span { display: block; }

/* Shortcode banner (normal style) */
.gdsb-sc { display: none; margin: 1.5em 0; clear: both; }
.gdsb-sc.is-ready { display: block; }
.gdsb-sc .gdsb-slot a,
.gdsb-sc .gdsb-slot span { display: inline-block; max-width: 100%; }
.gdsb-sc .gdsb-slot img,
.gdsb-sc .gdsb-slot video { display: block; max-width: 100%; height: auto; border: 0; }
.gdsb-align-center { text-align: center; }
.gdsb-align-center .gdsb-slot img,
.gdsb-align-center .gdsb-slot video { margin: 0 auto; }
.gdsb-align-left { text-align: left; }
.gdsb-align-left .gdsb-label { text-align: left; }
.gdsb-align-right { text-align: right; }
.gdsb-align-right .gdsb-label { text-align: right; }
.gdsb-align-right .gdsb-slot img,
.gdsb-align-right .gdsb-slot video { margin-left: auto; }

@media print { .gdsb-rail, .gdsb-mobile, .gdsb-inline, .gdsb-sc { display: none !important; } }
