:root {
  --secondary-color: #111;
  --primary-color: #edf341;
  --supportive-color: #111;
}

html {
  scroll-behavior: smooth;
  scroll-padding-top: 2rem;
}

@font-face {
  font-family: 'moderat';
  font-weight: 400;
  src:  url('fonts/Moderat-Extended-Regular-Web/Moderat-Extended-Regular.woff2') format('woff2'),
        url('fonts/Moderat-Extended-Regular-Web/Moderat-Extended-Regular.woff') format('woff');
}

@font-face {
  font-family: 'moderat';
  font-weight: 500;
  src:  url('fonts/Moderat-Extended-Bold-Web/Moderat-Extended-Bold.woff2') format('woff2'),
        url('fonts/Moderat-Extended-Bold-Web/Moderat-Extended-Bold.woff') format('woff');
}

.hide {
	display: none;
}

body {
	color: var(--primary-color);
	font-family: moderat, helvetica, roboto, arial, -sans-serif;
 	font-size: 20px;
 	line-height: 1.3em;
	margin: 0;
	padding: 0; 
	background: var(--secondary-color);
}

h1, h2, h3 {
	font-size: 20px;
	font-weight: 500;
}

h1, h2, h3 {
	text-transform: uppercase;
}

a {
	color: var(--primary-color);
}

#container {
	padding:0 4vw;
}

#bsos-logo {
	width:50%;
}

#bsos-logo path,
#festival-visual path
{
	fill: var(--primary-color);
}

#festival-visual {
	width: 100%;
}

#intro {
	text-align: center;

}

#intro-temp {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	position: fixed;
	width: 100vw;
	height: 80vh;
	padding-bottom: 20vh;
}

#intro-temp svg {
	max-height: 70vh;
}

video {
  object-fit: cover;
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: -100;
}

#col {
	width: 100%;
}

#program {
	text-align: center;
	border: 2px solid var(--primary-color);
	border-radius: 30px;
	padding: 0em 1em 1em 1em;
	margin-top: 2em;
}

#program h2 {
	margin-top: 1em;
	margin-bottom: 1em;
}

hr {
	margin-top: 1.5em;
	border: none;
	border: 1px solid var(--primary-color);
}

#program h3 {
	margin-top: 2em;
	margin-bottom: 0;
}

.margin-top {
	margin-top: 5em;
}

#program ul {
	list-style: none;
	padding: 0;
	margin-top: 0;
}

#program ul span {
	display: block;
}

#program li {
	padding: 0;
	margin: 0;
	margin-top: 1em;
	margin-bottom: 0em;
	font-variant-numeric: tabular-nums;
}

#artists {
	text-align: left;
	margin-top: 2em;
}

#artists img {
	margin-top: 2em;
	width: 92vw;
	height: 92vw;
	object-fit: cover;
	border-radius: 25px;
}

#ramiabirafi {
	object-position: 0 20%;
}

#falyakon {
	object-position: 0 20%;
}

.button-m {
	border: 2px solid var(--primary-color);
	border-radius: 40px;
	display: inline-block;
	text-decoration: none;
	text-align: center;
	padding: 0.5em 1em;
	margin: .5em 0;
	transition: background 300ms, color 300ms;
}

.button-m:hover {
	background: var(--primary-color);
	color: var(--secondary-color);
}

#artists .button-m {
	display: inline-block;
}

#footer {
	margin-top: 5em;
	margin-bottom: 2em;
}

#footer p {
	font-size: 12px;
	text-align: left;
	margin-bottom: 2em;
	line-height: 1.2em;
}

#sponsor-logos {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: space-between;
	position: relative;
	gap: 8%;
}

#sponsor-logos img {
	width: 100%;
}

#sponsor-logos #musicboard-logo {
	width: 50%;
}

#sponsor-logos #bsos2-logo {
	width: 60%;
}

#sponsor-logos #acud-logo {
	width: 30%;
}

#sponsor-logos #goethe-logo {
	width: 140%;
}

#sponsor-logos #groove-logo {
	width: 50%;
}

#sponsor-logos #taz-logo {
	width: 50%;
}

@media screen and (min-width: 768px) {
	#intro {
		margin-top: 5em;
		margin-bottom: 5em;
	}

	#festival-visual {
		width: 80%;
	}

	#program {
		text-align: left;
		border-radius: 50px;
		padding: inherit 2em;
		margin-top: 0;
		padding: 1em 2em 1.5em 2em;
	}

	#program li {
		margin-top: 0;
	}

	#program ul span {
		display: inline;
	}

	#artists img {
		width: 92vw;
		height: 62vw;
	}
}

@media screen and (min-width: 1000px) {

	body::-webkit-scrollbar,
	div#program::-webkit-scrollbar {
 		width: 11px;
	}

	body::-webkit-scrollbar-track,
	div#program::-webkit-scrollbar {
  		background: var(--supportive-color);
	}

	body::-webkit-scrollbar-thumb,
	div#program::-webkit-scrollbar-thumb {
  		background-color: var(--primary-color) ;
  		border-radius: 6px;
 	}

 	#festival-visual {
		width: 80%;
	}

	#container {
		padding: 0;
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
	/*	align-items: flex-end;*/
		justify-content: space-between;
	}

	#col {
		margin-left: 55vw;
		width: 40vw;
		padding-top: 3em;
		padding-bottom: 3em;
	}

	#intro {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		position: fixed;
		gap: 1vh;
		width: 50vw;

		height: 85vh;
		padding-top:3vh;
		padding-bottom: 10vh;

		margin: auto;

	}

	#intro-temp {
		height: 100vh;
	padding-bottom: 0vh;
	}

	#artists {
		margin-top: 5em;
		margin-bottom: 5em;
	}

	#artists img {
		margin-top:2em;
		width: 40vw;
		height: 25vw;
	}

	#footer {
			margin-bottom: 0;
	}

}