/*
 * Local commercial full-film module.
 * Scoped to .ohsnap-film-module; the rest of the case study is unchanged.
 */

.ohsnap-film-module {
	box-sizing: border-box;
	max-width: var(--maxwidth-desktops);
	margin: 48px auto;
}

.ohsnap-film-module *,
.ohsnap-film-module *::before,
.ohsnap-film-module *::after {
	box-sizing: border-box;
}

.ohsnap-film-module__frame {
	background: var(--white, #fff);
}

.ohsnap-film-module__title {
	margin: 0;
	color: var(--case-study-ink, var(--main-gray));
	font-family: inherit;
	font-weight: 500;
	letter-spacing: -0.01em;
}

.ohsnap-film-module__meta {
	margin: 8px 0 0;
	color: var(--case-study-graphite, var(--medium-gray));
	font-size: 14px;
	line-height: 1.4;
}

.ohsnap-film-module__player {
	background: #000;
}

.ohsnap-film-module__player video {
	display: block;
	width: 100%;
	height: auto;
	object-fit: contain;
	background: #000;
}

.ohsnap-film-module__link {
	margin: 0;
	font-size: 14px;
	line-height: 1.4;
}

.ohsnap-film-module__link a {
	color: var(--case-study-ink, var(--main-gray));
	text-decoration: underline;
	text-underline-offset: 0.18em;
}

.ohsnap-film-module__link a:hover {
	color: var(--case-study-graphite, var(--medium-gray));
}

.ohsnap-film-module a:focus-visible,
.ohsnap-film-module video:focus-visible {
	outline: 2px solid var(--main-gray);
	outline-offset: 3px;
}

@media (max-width: 720px) {
	.ohsnap-film-module { margin: 32px auto; }
}
