@import 'font.css';

:root {
	--primary-font: 'Arial Narrow', sans-serif;
	--secondary-font: 'Arial', sans-serif;
	--film-title: 'Arial Black', 'Arial Narrow', sans-serif;
	--light-color: #f1fff0;
	--text-color: #000000;
	--secondary-color: #1aff00;
	--grey: #909090cc;
	--link-hover-color: #c0b1dc;
	color: var(--text-color);
	font-size: calc(0.8em + 0.25vw);
	letter-spacing: 0.025em;
	line-height: 1.3em;
	font-family: var(--primary-font);
}

* {
	-webkit-text-size-adjust: none;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	scroll-behavior: smooth;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	text-rendering: optimizeLegibility;
}

html,
body {
	margin: 0;
	padding: 0;
}

body {
	height: 100%;
	width: 100%;
}

a {
	text-decoration: none;
	color: var(--text-color);
}

a:active,
a:focus {
	text-decoration: none;
}

a:hover {
	color: var(--secondary-color);
}

.videoloop {
	position: fixed;
	top: 0;
	left: 0;
	/* filter: invert(1) saturate(0.1); */
	z-index: -1;
}

.hidden {
	display: none;
}

header {
	padding: 0.25rem;
	margin: 0;
}

header nav {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	margin: 0;
	padding: 0;
}

header nav a,
header nav span a {
	cursor: default;
	font-size: 0.85rem;
	font-family: var(--primary-font);
	text-transform: uppercase;
	/* text-shadow: 0px 0px 1px var(--text-color); */
	background: transparent;
	outline: none;
	color: var(--light-color);
}

header nav a:hover {
	cursor: grab;
	color: var(--light-color);
	text-decoration: underline;
	text-underline-offset: 3px;
	text-decoration-color: var(--light-color);
}

header nav .home {
	flex-grow: 1;
}

.inactive {
	margin-left: 1rem;
	color: var(--grey);
}

.inactive:hover {
	cursor: not-allowed;
	color: var(--grey);
	text-decoration-color: var(--grey);
}

.filter__container {
	display: flex;
	flex-direction: row;
	position: fixed;
	border-radius: 1rem;
	/* box-shadow: 0 0 12px 2px white inset; */
	text-transform: uppercase;
	z-index: 2;
	left: 50%;
	transform: translateX(-50%);
	width: max-content;
	background: rgba(255, 255, 255, 0.25);
}

.filter--item {
	margin: 0 0.5rem;
	font-size: 0.85rem;
}

.filter--item input {
	appearance: none;
	margin: 0;

	border-radius: 1rem;
	width: 10px;
	height: 11px;

	border: 1px solid var(--light-color);
	transition: 0.2s all linear;

	position: relative;
	top: 0;
}

.filter--item input:checked {
	background-image: none;
	background: var(--text-color);
	border: 1px solid var(--light-color);
	border-radius: 0;
}

.filter--item label {
	text-transform: capitalize;
}

.program__container {

	display: grid; 
	grid-template-columns: repeat(6, 1fr);
	font-family: var(--secondary-font);
	flex-wrap: wrap;
	padding: 0 0.125rem;

}

.program--item {
	min-width: 180px;
	padding: 0;
	/* margin: 0 0.125rem 0.25rem 0.125rem; */
	position: relative;
	border: 1px dotted var(--light-color);
	margin-right: -1px;
	margin-bottom: -1px;
}


.program--item[href="#"] {
cursor: default
}

.program--item[data-confirm='hide'],
.program--item[data-confirm='undefined'] {
	display: none !important;
}

.program--item[data-upcoming='upcoming'] {
	border: 1px solid var(--secondary-color);
}

.program--item[data-upcoming='upcoming'] .program--details::after {
	content: '\2726  upcoming \2726';
	text-align: center;
	display: block;
	font-size: 10px;
	line-height: 2ch;
	text-align: center;
	padding: 0.375rem 0.25rem;
	text-transform: uppercase;
	text-shadow: 1px 0 2px var(--secondary-color);
	color: var(--secondary-color);
}

.program--item[data-upcoming='upcoming'] .filter--upcoming {
	display: block;
	margin-top: -1.125rem;
	color: var(--secondary-color);
}

.program--item .program--details {
	margin: 0 0.25rem 1rem 0.25rem;
	text-align: center;
	color: var(--light-color);
	text-shadow: 1px 0px 2px var(--light-color);
	opacity: 0.85;
	mix-blend-mode: overlay;
}

.program--item .program--details h4,
.program--item .program--details h5,
.program--item .program--details p {
	font-weight: normal;
	margin: 0;
	line-height: 1.9ch;
	font-size: 0.85rem;
}

.program--item .program--details h4 {
	font-family: var(--film-title);
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}

.program--item .program--details span {
	display: flex;
	flex-direction: row;
	justify-content: center;
}

.program--item .program--details h5,
.program--item .program--details p {
	font-family: var(--secondary-font);
}

.program--item
	.program--details
	p:not(.program--item .program--details p[data-year=''])::before {
	content: '\00B7';
	margin: 0 2px;
}

.program--item ul {
	list-style: none;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	margin: 0;
	padding: 0.25rem;
	left: 0;
	top: 0;
	position: absolute;
	opacity: 0;
	width: calc(100% - 0.5rem);
}

.program--item li {
	line-height: 2ch;
}

.program--item li,
.program--item .filter--upcoming p,
.program--item .filter--online {
	font-size: 10px;
	text-align: center;
	padding: 0.125rem 0.25rem;
}

.program--item li[data-filter-type='FALSE'],
.program--item .filter--upcoming[data-filter-type='current'],
.program--item .filter--upcoming[data-filter-type='archive'],
.program--item .filter--online[data-online='irl'] {
	display: none;
}

.program--item .filter--upcoming,
.program--item .filter--online[data-online='online'] {
	opacity: 0;
}

.program--item .filter--online[data-online='online'] {
	transform: translateY(-0.5rem);
	margin-bottom: 1rem;
}

.program--item .filter--upcoming p,
.program--item .filter--online {
	margin: 0;
	line-height: 1.4ch;
}

.program--item .filter--online {
	color: var(--light-color);
}

.program--item .filter--online::before {
	content: '#';
}

.program--item .filter--series {
	color: var(--light-color);
	border: 1px solid var(--light-color);
	border-radius: 1rem;
	padding-right: 0.5rem;
	background: var(--text-color);
}

.program--item .filter--series::before {
	content: '';
	width: 5px;
	height: 5px;
	background: var(--light-color);
	display: inline-block;
	margin: 0 0.25rem 0.075rem;
	border-radius: 1rem;
}

.program--item img {
	width: 100%;
	/* filter: grayscale(100%) contrast(2);
	mix-blend-mode: exclusion; */
	filter: grayscale(100%) contrast(4) invert(1);
  mix-blend-mode: soft-light;
}

.program--item:hover {
	border: 1px solid white;
	background: var(--text-color);
}

.program--item[data-upcoming='upcoming']:hover {
	border: 1px solid var(--secondary-color);
	/* box-shadow: none; */
}

.program--item[data-upcoming='upcoming']:hover .filter--upcoming,
.program--item[data-upcoming='current']:hover
	.filter--online[data-online='online'],
.program--item[data-upcoming='archive']:hover
	.filter--online[data-online='online'] {
	opacity: 1;
}

.program--item:hover img {
	filter: grayscale(0%) contrast(1) brightness(1);
	mix-blend-mode: normal;
	box-shadow: none;
}

.program--item:hover ul {
	opacity: 1;
	z-index: 1;
}

.program--item:hover .program--details,
.program--item:hover .filter--upcoming {
	mix-blend-mode: normal;
	text-shadow: none;
	opacity: 1;
}

/* mobile */

@media (max-width: 1080px) {

.program__container {
	grid-template-columns: repeat(4, 1fr);
}
}

@media (max-width: 720px) {
.program__container {
	grid-template-columns: repeat(3, 1fr);
}

	header nav span a {
		display: none;
	}
}

@media (max-width: 640px) {

	.program__container {
	grid-template-columns: 1fr;
}
	.videoloop {
		display: none;
	}

	body {
		background: var(--text-color);
	}

	main {
		margin-bottom: 3.75rem;
	}


	.filter__container {
		background: rgba(255, 255, 255, 0.85);
		bottom: 0.5rem;
		width: calc(100% - 1.75rem);
		height: auto;
		justify-content: space-between;
		flex-wrap: wrap;
		/* border: 1px solid var(--light-color); */
		align-items: center;
		padding: 0 1rem;
	}

	.filter--item,
	header nav a {
		font-size: 1rem;
		margin: 0.25rem 0;
		padding: 0.5rem;
	}

	header nav a {
		color: white;
		text-align: center;
	}

	.filter--item input {
		border: 1px solid var(--text-color);
	}


	.program--item img {
		filter: none;
		mix-blend-mode: normal;
	}

	.program--item .filter--upcoming,
	.program--item .filter--online[data-online='online'] {
		opacity: 1;
	}

	.program--item[data-upcoming='upcoming']:hover {
		border: 1px solid var(--secondary-color);
	}
	.program--item:hover {
		border: 1px dotted var(--light-color);
	}

	.program--item[data-upcoming='upcoming'] .filter--upcoming,
	.program--item[data-upcoming='current'] .filter--online[data-online='online'],
	.program--item[data-upcoming='archive'] .filter--online[data-online='online'],
	.program--item ul,
	.program--item .program--details,
	.program--item .filter--upcoming {
		opacity: 1;
	}

	.program--item {
		padding-bottom: 4rem;
	}

	.program--item .program--details,
	.program--item .filter--upcoming {
		mix-blend-mode: normal;
		text-shadow: none;
	}

}

@media (max-width: 450px) {
	.filter__container {
		flex-direction: column;
		width: auto;
		align-items: flex-start;
		justify-content: flex-end;
		transform: translateX(0);
		right: 0.75rem;
		bottom: 0.5rem;
		left: revert;
		padding: 0.5rem;
		box-shadow: 0 0 12px 3px white inset;
		border: 1px solid var(--text-color);
	}

	.filter--item input {
		margin-right: 0.25rem;
	}
}
