.chain-video--reveal > .chain-video__surface {
	transform: scale(0.96);
}
.chain-video--in-view > .chain-video__surface {
	transform: scale(1);
	transition: transform 650ms cubic-bezier(0.22, 1, 0.36, 1);
}
.chain-video__surface {
	position: relative;
	aspect-ratio: 16 / 9;
	border-radius: 12px;
	overflow: hidden;
	background: #111;
}
.chain-video__surface iframe,
.chain-video__preview,
.chain-video__preview img,
.chain-video__trigger {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
}
.chain-video__surface iframe { display: block; }
.chain-video__preview { pointer-events: none; }
.chain-video__preview img { object-fit: cover; }
.chain-video__trigger { display: grid; place-items: center; text-decoration: none; }
.chain-video__play {
	display: grid;
	place-items: center;
	width: clamp(56px, 8vw, 80px);
	height: clamp(56px, 8vw, 80px);
	border-radius: 50%;
	background: var(--theme-orange, #ff5300);
	color: #fff;
	transition: transform 150ms ease;
}
.chain-video__trigger:hover .chain-video__play { transform: scale(1.1); }
.chain-video__trigger:focus-visible { outline: 3px solid #fff; outline-offset: -6px; }
.chain-video [hidden] { display: none !important; }
.chain-video-dialog {
	width: min(1100px, calc(100vw - 32px), calc((100dvh - 100px) * 16 / 9));
	max-width: none;
	max-height: none;
	padding: 0;
	border: 0;
	background: transparent;
	overflow: visible;
}
.chain-video-dialog::backdrop { background: rgb(0 0 0 / 80%); }
.chain-video-dialog .chain-video__close {
	position: absolute;
	right: 0;
	top: -44px;
	width: 36px;
	height: 36px;
	padding: 0;
	border: 1px solid #fff;
	border-radius: 50%;
	background: #111;
	color: #fff;
	font: 28px/1 sans-serif;
	cursor: pointer;
}
.chain-video__close::before { display: none; }
@media (prefers-reduced-motion: reduce) {
	.chain-video--reveal > .chain-video__surface { transform: none; transition: none; }
	.chain-video__play { transition: none; }
}
