body				{
					margin: 0;
					padding: 0;
					font-family: "Hanken Grotesk", sans-serif;
					font-weight: 450;
/*					background-image: url(../images/texture2.png);
					background-attachment: fixed;
*/					background-color: #f9f9f9;
					color: #543906;
					-webkit-font-smoothing: antialiased;
					text-rendering: optimizeLegibility;
					}

					.grain
					{
					position: fixed;
					top: 0;
					left: 0;
					right: 0;
					bottom: 0;
					background-image: url(../images/texture2.png);
					background-attachment: fixed;
					pointer-events: none;
					z-index: 5000;
					opacity: .7;
					}


/*

custom cursor

html, body, a
{cursor: none;}					

.custom-cursor	{
					width: 13px;
					height: 13px;
					border: 2px solid #543906;
					background-color: ;
					border-radius: 50%;
					position: fixed;
					pointer-events: none;
					transform: translate(-50%, -50%);
					transition: background-color 0.2s ease;
					animation: pulsate 1s infinite alternate;
					z-index: 10000;
					}					

					@keyframes pulsate {
						0% {
							background: orange;
						}
						100% {
							background: #fff;
						}
					}*/

					.stuck
					{overflow: hidden;}

html *			{
					margin: 0;
					padding: 0;
					}

*:focus 			{outline: none;}

a 					{transition: all .2s;}

h1,
h2,
h3,
h4 				{font-family: "Bricolage Grotesque", sans-serif;}

input,
textarea,
select,
button 			{
					font-family: "Hanken Grotesk", sans-serif;
					font-weight: normal;
					}

video::-webkit-media-controls
{display: none;}

/* MODAL */
.modal-cover,
.trailer-cover	{
					position: fixed;
					top: 0;
					left: 0;
					right: 0;
					bottom: 0;
					background: rgba(0,0,0,.5);
					display: none;
					z-index: 500;
					overflow-y: auto;
					padding: 50px;
					}

					.trailer-cover
					{
					align-items: center;
					justify-content: center;
					background: rgba(84,57,6,.85);
					}

					.trailer-flex
					{display: flex;}

					.x-trailer
					{
					position: absolute;
					top: 20px;
					right: 20px;
					padding: 10px 20px;
					color: #543906;
					background: #fff;
					font-size: 20px;
					font-weight: 600;
					z-index: 10;
					cursor: pointer;
					transition: all .2s;
					}

					.x-trailer:hover
					{color: #000;}

					.modal
					{
					width: 700px;
					padding: 30px;
					margin: auto;
					background: #fff;
					box-shadow: 0 0 20px rgba(0,0,0,.2);
					position: relative;
					}

					.x-modal
					{
					position: absolute;
					top: 15px;
					right: 15px;
					width: 30px;
					height: 30px;
					line-height: 25px;
					text-align: center;
					display: block;
					cursor: pointer;
					background: #543906;
					color: #f9f9f9;
					font-size: 25px;
					outline: 3px solid #fff;
					z-index: 10;
					}

.loader 			{
  					height: 20px;
  					width: 20px;
  					animation: rotate 0.8s infinite linear;
  					border: 3px solid #543906;
  					border-top-color: transparent;
  					border-radius: 50%;
					}

					.load-more .loader
					{
					margin: auto;
					border-color: #fff;
  					border-top-color: transparent;
					}

					@keyframes rotate {
					0%    {transform: rotate(360deg);}
					100%  {transform: rotate(0deg);}
					}																		

/*//////////////////////////////
/* BUILD
///////////////////////////////
*/

.header  		{
					position: fixed;
					top: 0;
					left: 0;
					right: 0;
					background-color: #f9f9f9;
/*					background-image: url(../images/texture2.png);
					background-attachment: fixed;*/
					z-index: 100;
					}

					.menu-hold
					{
					display: flex;
					align-items: center;
					height: 90px;
					box-sizing: border-box;
					gap: 20px;
					padding: 20px 100px 20px 20px;
					border-bottom: 1px solid #54390650;
					box-shadow: 0 1px 0 0 #f9f9f9;
					}

					.logo
					{width: 120px;}

					.logo svg
					{
					display: block;
					height: 50px;
					margin-left: -7px;
					color: #3c2803;
					}

					.edition
					{
					width: 300px;
					font-size: 16px;
					line-height: 1;
					white-space: nowrap;
					}

					.edition p strong
					{
					font-family: "Bricolage Grotesque";
					font-weight: 700;
					text-transform: uppercase;
					}

					.header .top-menu
					{
					height: 20px;
					display: flex;
					justify-content: space-between;
					font-size: 15px;
					padding: 5px 100px 5px 480px;
					border-bottom: 1px solid #54390650;
					background: #fff;
					}

					.header .top-menu a
					{
					color: #543906;
					opacity: .75;
					text-decoration: none;
					}

					.header .top-menu a:hover
					{
					text-decoration: underline;
					text-decoration-thickness: 2px;
					text-underline-offset: 3px;
					}

					.header .top-menu div
					{
					display: flex;
					gap: 15px;
					}

					.header .menu,
					.archive .menu
					{
					display: flex;
					align-items: center;
					gap: 70px;
					flex-grow: 1;
					}

						.header .menu div,
						.archive .menu div
						{
						display: flex;
						gap: 20px;
						}

					.header .menu a,
					.archive .menu a
					{
					font-size: 17px;
					font-family: "Bricolage Grotesque";
					font-weight: 500;
					color: #543906;
					text-decoration: none;
					text-decoration-color: orange;
					}

						.archive .menu a
						{
						color: #fff;
						font-weight: 450;
						font-size: 16px;
						}

					.header .menu a:hover,
					.archive .menu a:hover,
					.header .menu a.current,
					.archive .menu a.current
					{
					text-decoration: underline;
					text-decoration-thickness: 3px;
					text-underline-offset: 5px;					
					}

					.header .menu a:hover,
					.archive .menu a:hover
					{text-decoration-color: orange;}

					.header .menu a.current,
					.archive .menu a.current,
					.header .menu a.current:hover,
					.archive .menu a.current:hover
					{text-decoration-color: orange;}

					.utility
					{
					display: flex;
					align-items: center;
					gap: 20px;
					flex-shrink: 1;
					}

						.language
						{
						display: flex;
						width: 40px;
						height: 40px;
						font-size: 14px;
						align-items: center;
						justify-content: center;
						border-radius: 100px;
						text-decoration: none;
						color: #54390690;
						background: #54390620;
						}

						.language:hover
						{
						color: #543906;
						background: #54390630;
						}

					.search
					{position: relative;}

						.search input
						{
						display: block;
						font-size: 16px;
						color: #543906;
						padding: 7px 0;
						border: 1px solid #54390650;
						border-radius: 100px;
						padding: 7px 35px 7px 13px;
						background: none;
						transition: all .2s;
						}

						.search input::placeholder
						{color: #54390680;}

						.search input:focus
						{
						background: #ffffff;
						border-color: #54390690;
						}

						.search span
						{
						display: flex;
						width: 30px;
						align-items: center;
						position: absolute;
						top: 0;
						right: 0;
						bottom: 0;
						}

							.search span svg
							{
							width: 20px;
							color: #543906;
							}

					.auth
					{
					display: inline-block;
					font-size: 16px;
					line-height: 1;
					color: #543906;
					background: #ffa500;
					border-radius: 2px;
					padding: 8px 11px;
					text-decoration: none;
					cursor: pointer;
					}

					.auth:hover
					{background: #ffa50090;}

.campaign 		{
					background: #000;
					padding: 20px 0 20px 20px;
					display: flex;
					align-items: center;
					gap: 5px;
					}

					.campaign div
					{
					display: flex;
					gap: 5px;
					}

					.campaign p
					{
					white-space: nowrap;
					font-size: 18px;
					font-weight: 600;
					text-transform: uppercase;					
					}

					.campaign p:nth-child(3n+1)
					{color: #fff;}

					.campaign p:nth-child(3n+2)
					{color: #15ff00;}
					
					.campaign p:nth-child(3n+3)
					{color: #d90000;}
					
.bottom 			{
					position: fixed;
					bottom: 30px;
					right: 30px;
					font-size: 13px;
					line-height: 1;				
					}


.content 		{
					display: flex;
					padding: 121px 100px 20px 160px;
					gap: 20px;
					}

					.content-archive
					{padding-top: 182px;}

					.no-flex
					{display: block;}

					.content-no-flex
					{
					padding: 121px 100px 20px 20px;
					position: relative;
					}

					.content-schedule
					{padding-top: 180px;}


.homepage 		{
					margin-bottom: 20px;
					position: relative;
					}			

							.homepage-top
							{
							display: flex;
							align-items: center;
							justify-content: space-between;
							padding: 20px 0;
							}		

								.homepage-top h1
								{
								font-size: 30px;
								font-weight: 550;
								display: flex;
								align-items: center;
								gap: 10px;
								}

								.homepage-top a
								{
								font-size: 20px;
								color: #543906;
								text-decoration-color: orange;
								text-decoration-thickness: 3px;
								text-underline-offset: 3px;
								}

								.homepage-top span
								{
								display: inline-flex;
								align-items: center;
								justify-content: center;
								width: 50px;
								height: 50px;
								font-size: 25px;
								border-radius: 100px;
								background: orange;
								}

							.homepage-actions
							{
							position: absolute;
							top: 0;
							right: 0;
							bottom: 0;
							display: flex;
							width: 100px;
							gap: 3px;
							flex-direction: column;
							padding-left: 3px;
							}

							.homepage-actions a
							{
							display: flex;
							align-items: center;
							justify-content: center;
							flex-grow: 1;
							background: #54390620;
							box-sizing: border-box;
							font-size: 25px;
							font-weight: 500;
							font-family: "Bricolage Grotesque", sans-serif;
							color: #54390650;
							cursor: pointer;
							transition: all .2s;
							}

							.homepage-actions a:hover
							{
							color: #54390690;
							background: #54390630;
							}

							.homepage-actions a.current
							{
							color: #54390690;
							background: #54390610;
							margin-left: -3px;
							margin-right: 10px;
							}

					.homepage-single
					{
					display: none;
					width: 100%;
					}

					.homepage-show
					{display: flex;}

					.homepage-image
					{
					width: calc((100% - 40px) * 2/3 + 20px);
					aspect-ratio: 1/.55;
					}

						.homepage-image img
						{
						object-fit: cover;
						width: 100%;
						height: 100%;
						vertical-align: middle;
						display: block;
						}

					.homepage-text
					{
					width: calc((100% - 40px) * 1/3 + 20px);
					position: relative;
					}

						.homepage-text-in
						{
						display: flex;
						flex-direction: column;
						align-items: center;
						justify-content: center;
						text-align: center;
						position: absolute;
						top: 0;
						left: 0;
						right: 0;
						bottom: 0;
						background: #54390610;
						padding: 0 50px;
						box-sizing: border-box;
						}

							.homepage-text-in-narrow
							{right: 103px;}

							.homepage-text h2
							{
							font-size: 35px;
							font-weight: 550;
							line-height: 1;
							}

							.homepage-text span
							{
							font-size: 70px;
							font-weight: 200;
							line-height: .5;
							margin-bottom: 10px;
							}

							.homepage-text p
							{
							font-size: 21px;
							line-height: 1.35;
							}

							.homepage-text a
							{
							display: inline-block;
							background: orange;
							color: #543906;
							padding: 13px 22px;
							font-size: 21px;
							text-decoration: none;
							border-radius: 5px;
							position: absolute;
							right: 20px;
							bottom: 20px;
							}
/* Archive on programme */
.archive
{
display: flex;
align-items: center;
background: #543906;
position: fixed;
top: 121px;
left: 0;
right: 0;
padding: 0 100px 0 160px;
z-index: 10;
border-bottom: 1px solid #f9f9f9;
}

	.archive h2
	{
	color: #fff;
	font: 500 21px "Bricolage Grotesque", sans-serif;
	line-height: 1;
	}
	
	.archive-side 
	{
	flex: 0 0 auto;
	width: 320px;
	padding: 20px 0;
	box-sizing: border-box;
	color: #543906;
	}

	.archive-menu
	{
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-grow: 1;
	padding: 20px 0;
	font-size: 18px;
	}

/* Archive /festival */
.festival
{
margin-top: 20px;
display: flex;
gap: 20px;
}

	.festival-side
	{
	flex: 0 0 auto;
	width: 300px;
	box-sizing: border-box;
	padding-right: 20px;
	}

		.festival-side h1
		{
		font-size: 24px;
		font-weight: 550;
		margin-bottom: 5px;
		}	

		.festival-side p
		{line-height: 1.2;}

	.festival-years
	{
	display: flex;
	flex-direction: column;
	gap: 20px;
	}

		.single-year
		{
		display: flex;
		gap: 20px;
		color: #543906;
		text-decoration: none;
		}

		.single-year:hover
		{background: #54390610;}

		.year-desc
		{
		display: flex;
		gap: 20px;
		}

			.year-image
			{
			flex: 0 0 auto;
			width: 300px;
			height: 250px;
			position: relative;
			}

				.year-image img
				{
				object-fit: cover;
				width: 100%;
				height: 100%;
				vertical-align: middle;			
				}

				.single-year h3
				{
				flex: 0 0 auto;
				width: 200px;
				font-size: 70px;
				font-weight: 550;
				line-height: 1;
				}

					.single-year h3 span
					{
					display: block;
					font-size: 25px;
					}

			.year-text
			{flex-grow: 1;}

				.year-text h2
				{
				width: auto;
				font-size: 70px;
				line-height: 1;
				font-weight: 550;				
				}

				.year-text p
				{font-size: 25px;}






/* NEWS PAGE */
.load-more
{
display: block;
width: 250px;
padding: 15px 25px;
margin: 30px 0;
color: #fff;
background: #543906;
text-decoration: none;
text-align: center;
font-size: 20px;
font-weight: 700;
text-transform: uppercase;
}

	/* using JS because it's the only class when the button is on */
	
	.load-articles-js
	{cursor: pointer;}

	.load-articles-js:hover
	{opacity: .8;}

/* INFO PAGE */

.info-all 			
{
width: 100%;
display: flex;
gap: 20px;
padding-top: 20px;
}

		.info-menu
		{
		width: 300px;
		display: flex;
		flex-direction: column;
		gap: 20px;
		flex: 0 0 auto;
		box-sizing: border-box;
		padding-right: 20px;
		}

				.info-menu a
				{
				opacity: .5;
				cursor: pointer;
				transition: all .15s;
				padding: 0 0 20px 20px;
				border-bottom: 1px solid #54390650;
				color: #543906;
				text-decoration: none;
				}

				.info-menu a.info-current,
				.info-menu a:hover
				{
				padding-left: 0;
				opacity: 1;
				}

				.info-menu h2
				{
				display: flex;
				align-items: center;
				justify-content: space-between;
				font-size: 24px;
				font-weight: 550;
				}

				.info-menu h2 svg
				{
				width: 24px;
				opacity: 0;
				padding-right: 10px;
				transition: all .3s;
				}

				.info-menu a:hover svg,
				.info-menu a.info-current svg
				{
				opacity: 1;
				padding-right: 0;
				}

		.info-content
		{flex-grow: 1;}

				.info-content-flex
				{
				display: flex;
				gap: 50px;
				}

				.info-left,
				.info-image
				{width: 50%}

				.info-image img
				{
				display: block;
				width: 100%;
				}

				.info-content h1
				{
				font-size: 60px;
				font-weight: 550;
				}

				.info-content h2
				{
				font-size: 30px;
				font-weight: 500;
				}

				.info-content-in
				{margin-top: 20px;}

					.info-content-in p
					{
					font-size: 25px;
					font-weight: 400;
					line-height: 1.4;
					}

						.info-content-in p a
						{
						color: #54390690;
						text-decoration-thickness: 3px;
						text-decoration-color: orange;
						}

						.info-content-in p a:hover
						{color: #543906;}

					.info-content-in p + p
					{margin-top: 15px;}
		
					.info-documents
					{margin-top: 30px;}

						.info-documents h3
						{
						font-size: 35px;
						font-weight: 550;
						margin-bottom: 5px;
						}

						.info-documents h3:not(:first-child)
						{margin-top: 50px;}

						.info-documents p
						{
						font-size: 21px;
						margin-bottom: 15px;
						}

						.info-file + .info-file
						{margin-top: 3px;}

						.info-file
						{
						max-width: 390px;
						display: flex;
						gap: 5px;
						align-items: center;
						padding: 15px 200px 15px 15px;
						color: #543906;
						background: #54390610;
						text-decoration: none;
						}

						.info-file:hover
						{background: #54390620;}

							h3 + .info-file,
							p + .info-file
							{margin-top: 15px;}

							.info-file span
							{
							font-size: 18px;
							color: #543906;
							}

							.info-file svg
							{
							width: 24px;
							color: orange;
							}

					.info-sections
					{margin-top: 30px;}

						.info-sections h3
						{
						font-size: 35px;
						font-weight: 550;
						margin-bottom: 5px;
						}

						.info-sections h3:not(:first-child)
						{margin-top: 30px;}

						.info-sections p
						{
						font-size: 25px;
						line-height: 1.4;
						margin-bottom: 15px;
						}

					.info-people
					{margin-top: 30px;}

						.info-people-wrap
						{
						display: flex;
						flex-wrap: wrap;
						gap: 20px;
						}

						.info-people-single
						{
						display: flex;
						flex-direction: column;
						width: calc((100% - 60px) / 4);
						padding: 20px;
						color: #543906;
						text-decoration: none;
						transition: all .2s;
						background: #54390620;
						box-sizing: border-box;
						}

							.info-people-wide
							{width: calc((100% - 40px) / 3);}

						.info-people-image
						{
						width: 100%;
						aspect-ratio: 1 / 1;
						position: relative;
						overflow: hidden;
						}

							.info-people-wide .info-people-image
							{aspect-ratio: 1 / .5;}

						.info-people-image img
						{
						object-fit: cover;
						width: 100%;
						height: 100%;
						vertical-align: middle;
						transition: transform .15s ease-out;
						transform-origin: center center;
						}

						.info-people h3
						{
						font-size: 35px;
						font-weight: 550;
						margin-bottom: 5px;
						}

						.info-people h3:not(:first-child)
						{margin-top: 70px;}

						.info-people-text
						{padding-top: 20px;}

								.info-people-text h4
								{
								font-size: 25px;
								font-weight: 550;
								}

								.info-people-text h5
								{
								font-size: 16px;
								font-weight: 550;
								text-transform: uppercase;
								margin: 3px 0 10px;
								}

								.info-people p
								{
								font-size: 18px;
								font-weight: 400;
								}

								.info-people p + p
								{margin-top: 10px;}

.info-supporters
{margin-top: 30px;}

.supporter-logos
{
display: flex;
flex-wrap: wrap;
gap: 20px;
}

.supporter-logos a
{
display: flex;
flex-direction: column;
border: 1px dotted #54390650;
border-radius: 5px;
padding: 3px;
box-sizing: border-box;
color: #543906;
text-decoration: none;
}

	.supporter-logos a.supporter-logo-small
	{
	width: calc((100% - (6 * 20px)) / 7);
	aspect-ratio: 1/1;
	}

	.supporter-logos a.supporter-logo-medium
	{
	width: calc(2 * ((100% - (6 * 20px)) / 7) + 20px);
	aspect-ratio: 2/1;
	}

	.supporter-logos a.supporter-logo-big
	{
	width: calc(3 * ((100% - (6 * 20px)) / 7) + (2 * 20px));
	aspect-ratio: 3/1;
	}

.supporter-logo
{
display: flex;
align-items: center;
justify-content: center;
flex: 1 1 0%;
background: #fff;
}

.supporter-logos a img
{
max-width: 80%;
max-height: 80%;
object-fit: contain;
display: flex;
flex: 1 1 0%;
align-items: center;
justify-content: center;
padding: 30px;
background: #fff;
box-sizing: border-box;
}

.supporter-logos a p
{
font-size: 15px;
font-weight: 500;
background: #54390610;
padding: 5px 10px;
}

						.info-supporters h3
						{
						font-size: 35px;
						font-weight: 550;
						margin-bottom: 5px;
						}

						.info-supporters h3:not(:first-child)
						{margin-top: 70px;}








					.single-news
					{
					display: flex;
					gap: 20px;
					}

					.text
					{width: 300px;}

/*					h1
					{
					font-size: 40px;
					font-family: "Bricolage Grotesque", sans-serif;
					font-weight: 700;
					line-height: 1;
					padding-top: 50px;
					margin-bottom: 20px;
					}*/

					.single-news p
					{font-size: 18px;}

					.image-hold
					{
					width: 700px;
					height: 400px;
					display: flex;
					align-items: center;
					overflow: hidden;
					}

					.single-news img
					{
					object-fit: cover;
					width: 100%;
					height: 100%;
					vertical-align: middle;
					}

.new-footer 	{height: 300px;}

/* programmes, categories, films */
.all-grid 		{
					width: 100%;
					display: flex;
					gap: 40px;
					box-sizing: border-box;
					}

					.left-grid
					{
					width: 280px;
					flex: 0 0 auto;
					padding-top: 20px;
					/*border-top: 1px solid #54390650;					*/
					}

					.all-films
					{flex-grow: 1;}

					.countries
					{
					width: 200px;
					flex: 0 0 auto;
					padding-top: 20px;
					/*border-top: 1px solid #54390650;*/
					text-align: right;
					white-space: nowrap;
					}

					.countries-in
					{margin-top: 20px;}

					.countries-in div + div
					{margin-top: 10px;}

					.countries-in h3
					{cursor: pointer;}

					.countries-in h3:hover
					{opacity: .8;}

					.countries-hide
					{
					display: none;
					margin-top: -5px;
					}


/*					.left-grid h1
					{
					font-size: 40px;
					font-family: "Bricolage Grotesque", sans-serif;
					font-weight: 700;
					line-height: 1;
					padding-top: 50px;
					}*/

					.long-menu
					{
					display: flex;
					justify-content: space-between;
					width: 100%;
					font-size: 16px;
					padding: 16px 0;
					/*border-top: 1px solid #54390650;					*/
					}

						.long-menu-in,
						.filter-holds
						{
						display: flex;
						align-items: center;
						gap: 20px;
						}

					.long-menu h1
					{
					font-size: 25px;
					font-weight: 550;
					text-transform: capitalize;
					}

					.long-menu h2
					{
					font-size: 16px;
					font-family: "Bricolage Grotesque", sans-serif;
					}

					.long-menu span
					{
					font-weight: 500;
					color: #543906;
					}

					a.long-links
					{
					color: #543906;
					text-decoration: underline;
					text-decoration-thickness: 2px;
					text-decoration-color: #54390650;
					text-underline-offset: 2px;
					text-transform: capitalize;
					}

					a.long-links:hover,
					a.long-links.current
					{					
					text-decoration: underline;
					text-decoration-thickness: 2px;
					text-underline-offset: 2px;
					}

					a.long-links:hover
					{text-decoration-color: #54390650;}

					a.long-links.current
					{text-decoration-color: orange;}

					.filter
					{
					border: 1px solid #54390650;
					padding: 5px 7px;
					border-radius: 5px;
					background: #fff;
					position: relative;
					display: none;
					}

					.filter-selection
					{
					display: flex;
					align-items: center;
					justify-content: space-between;
					gap: 10px;
					cursor: pointer;
					opacity: .7;
					}

						.filter-selection:hover
						{opacity: 1;}

					.filter-icon
					{
					display: flex;
					align-items: center;
					line-height: 1;
					gap: 3px;
					}

					.filter-selection svg
					{width: 16px;}

					.filter-hold
					{
					position: absolute;
					top: 28px;
					left: -3px;
					border: 1px solid #54390650;
					background: #fff;
					border-radius: 5px;
					max-height: 300px;
					overflow-y: scroll;
					display: none;
					}

					.filter-hold p
					{
					text-transform: uppercase;
					font-size: 13px;
					font-weight: 700;
					padding: 5px 7px;
					background: #543906;
					color: #fff;
					}

					.filter-hold a
					{
					display: block;
					font-size: 14px;
					padding: 5px 30px 5px 7px;
					color: #543906;
					border-bottom: 1px solid #54390650;
					text-decoration: none;
					text-transform: capitalize;
					white-space: nowrap;
					}

					.filter-hold a:hover
					{background: #54390610;}

					.filter-hold a:last-child
					{border: none;}

					.pagination
					{
					display: flex;
					gap: 10px;
					align-items: center;
					}

					.pagination a
					{
					display: flex;
					color: #543906;
					background: orange;
					border-radius: 3px;
					line-height: 1;
					padding: 6px 8px;
					cursor: pointer;
					text-decoration: none;
					}

						.pagination a.no-page
						{
						pointer-events: none;
						background: #54390630;
						color: #54390690;
						}

					.pagination a:hover
					{
					color: #fff;
					background: #543906;
					}

					.all-programmes-in
					{
					flex-grow: 1;
					display: flex;
					gap: 40px;
					flex-wrap: wrap;
					}

					.one-programme
					{
					width: calc((100% - (2 * 40px)) / 3);
					color: #543906;
					text-decoration: none;
					}

					.one-programme-image
					{
					width: 100%;
					aspect-ratio: 5/3;
					display: flex;
					align-items: center;
					overflow: hidden;
					margin-bottom: 10px;
					background: #00000020;
					position: relative;
					}

					.one-programme-image img
					{
					object-fit: cover;
					width: 100%;
					height: 100%;
					vertical-align: middle;
					}

					.one-programme h3
					{
					font-family: "Bricolage Grotesque", sans-serif;
					font-size: 20px;
					font-weight: 700;
					line-height: 1;
					}

.film 			{flex: 1;}

					.film-title
					{
					border-bottom: 1px solid #54390650;
					padding-bottom: 20px;
					margin-bottom: 20px;
					}

					.film-title h3
					{
					font-size: 15px;
					margin-bottom: 15px;
					}

					.film-title h1
					{
					font-family: "Bricolage Grotesque", sans-serif;
					font-size: 32px;
					font-weight: 700;
					line-height: .9;
					}

					.film-title h2
					{
					font-family: "Bricolage Grotesque", sans-serif;
					font-size: 18px;
					margin-top: 10px;
					}

					.film-details
					{margin-top: 20px;}

					.detail + .detail
					{margin-top: 20px;}

					.detail h3
					{
					font-family: "Bricolage Grotesque", sans-serif;
					font-size: 16px;
					font-weight: 700;
					line-height: 1;
					text-transform: uppercase;
					margin-bottom: 10px;
					}

						.film-details .detail h3
						{margin-bottom: 5px;}

					.detail h3 + h3
					{margin-top: 10px;}

					.detail p
					{
					font-size: 16px;
					line-height: 1.2;
					}

					.child-categories
					{margin: 5px 0 10px 15px;}

					.film-cats .detail p + p
					{margin-top: 10px;}

					.film-cats .child-categories p + p
					{margin-top: 5px;}

					.detail p a
					{
					text-decoration: none;
					text-transform: capitalize;
					color: #543906;
					text-decoration-color: #54390650;
					}

					.detail p a.detail-link
					{
					text-decoration: underline;
					text-underline-offset: 2px;
					text-decoration-thickness: 2px;
					text-decoration-color: #54390650;
					}

					.detail p a:hover,
					.detail p a.current,
					.detail p a.detail-link:hover
					{					
					text-decoration: underline;
					text-decoration-thickness: 2px;
					text-underline-offset: 2px;
					}

					.detail p a:hover
					{text-decoration-color: #54390650;}

					.detail p a.current
					{text-decoration-color: orange;}

					.film-image
					{
					width: 100%;
					display: flex;
					box-sizing: border-box;
					gap: 40px;
					}

					.film-image-big
					{
					flex: 1;
					}

					.film-image-hold
					{
					width: 100%;
					height: 800px;
					position: relative;
					overflow: hidden;
					}

						.film-bottom
						{
						display: flex;
						margin-top: 1px;
						padding-left: 120px;
						background: #54390620;
						}

						.film-bottom div
						{
						display: flex;
						align-items: center;
						}

						.film-bottom-left
						{
						flex: 1;
						gap: 1px;
						}

						.film-bottom-left a
						{
						display: flex;
						align-items: center;
						justify-content: center;
						white-space: nowrap;
						width: 60px;
						height: 60px;
						background: #543906;
						color: #fff;
						cursor: pointer;
						}

						.film-bottom-left a:hover
						{
						color: #543906;
						background: #54390650;
						}

						.film-bottom-left a.current
						{
						color: #543906;
						background: orange;
						}

						.film-bottom-right
						{
						width: 360px;
						flex-shrink: 1;
						}

						.film-bottom-right a
						{
						display: flex;
						align-items: center;
						gap: 5px;
						color: #54390690;
						cursor: pointer;
						}

						.film-bottom-right a:hover
						{color: #543906;}

						.film-bottom-right svg
						{width: 20px;}

					.film-image-hold img
					{
					display: none;
					object-fit: cover;
					width: 100%;
					height: 100%;
					vertical-align: middle;
					}

					.film-image-hold img.current
					{display: block;}

					.film-side img
					{
					display: block;
					width: 200px;
					margin-bottom: 40px;
					}

					.film-content
					{
					box-sizing: border-box;
					}

					.film-content-in
					{
					display: flex;
					box-sizing: border-box;
					padding-left: 120px;
					gap: 120px;
					}

					.film-text
					{flex: 1;}

					.film-content-side
					{
					width: 360px;
					flex: 0 0 auto;
					}

					.other-films
					{margin-top: 100px;}

						.other-films .all-programmes-in
						{gap: 40px;}

						.other-films .one-programme
						{width: calc((100% - (3 * 40px)) / 4);}

						.other-films .one-programme-image
						{height: 220px;}

					.film-info
					{
					display: flex;
					align-items: center;
					font-size: 16px;
					gap: 20px;
					padding: 20px 0;
					margin-bottom: 20px;
					border-bottom: 1px solid #54390650;
					}

						.film-info.film-right
						{justify-content: space-between;}

						.other-films .film-info
						{margin-bottom: 40px;}

					.film-side
					{
					width: 200px;
					}

					.film-side-detail
					{
					width: 200px;
					display: inline-block;
					}

					.film-side-detail p
					{
					border-bottom: 1px solid #54390650;
					padding-bottom: 5px;
					margin-bottom: 5px;
					}

					.film-side-detail p:last-child
					{border: 0;}

					.film-side-detail p + p
					{margin-top: 5px;}

					.film-text h3
					{
					font-size: 40px;
					font-family: "Bricolage Grotesque", sans-serif;
					font-weight: 600;
					line-height: 1;
					margin-bottom: 10px;
					}

						.film-text p + h3
						{margin-top: 70px;}

					.synopsis p
					{
					font-size: 23px;
					line-height: 1.4;
					}

					.synopsis p + p
					{margin-top: 20px;}

					.trailer
					{margin: 40px 0;}

					.trailer iframe
					{
					width: 100%;
					height: 25vw;
					}

.showtimes 		{
					width: 340px;
					flex-shrink: 0;
					}

					.auto-width
					{width: auto;}

					.showtimes a
					{
					flex-grow: 1;
					color: #543906;
					text-decoration-color: orange;
					text-decoration-thickness: 2px;
					text-underline-offset: 2px;
					}
					
					.showtimes h2
					{
					border-top: 1px solid #54390650;
					border-bottom: 1px solid #54390650;
					padding: 20px 0;
					margin-bottom: 20px;
					}

					.single
					{
					margin-bottom: 40px;
					}

					.time
					{
					width: 100%;
					display: flex;
					justify-content: space-between;
					gap: 40px;
					padding-bottom: 20px;
					}

					.time p
					{white-space: nowrap;}

					.other
					{
					line-height: 1.5;
					margin-bottom: 20px;
					}

					p.svg
					{
					display: flex;
					align-items: center;
					gap: 3px;
					}

					p.svg svg
					{
					width: 16px;
					color: #54390650;
					}

					p.left
					{
					font-weight: 550;
					margin-left: 19px;
					}

					.showtimes p.note
					{color: #543906cc;}

					.add-ticket
					{
					display: flex;
					align-items: center;
					justify-content: center;
					gap: 5px;
					background: orange;
					color: #543906;
					border-radius: 50px;
					padding: 10px 0;
					text-align: center;
					text-decoration: none;
					margin-bottom: 20px;
					cursor: pointer;
					}

					.add-ticket:hover
					{background: #ffc200;}



					.day-items .add-ticket
					{
					margin: 10px 0 0;
					}

					.schedule-wrap .add-ticket svg
					{
					width: 20px;
					color: #543906;
					}











.grid  			{
					pointer-events: none;
					position: fixed;
					top: 0;
					right: 0;
					left: 0;
					bottom: 0;
					z-index: 200;
					}

.line 			{
					position: absolute;
					width: 1px;
					background-color: #d9000030;
					top: 0;
					bottom: 0;
					left: 20px;
					}

.off 				{
					position: fixed;
					left: 5px;
					bottom: 5px;
					display: block;
					width: 30px;
					height: 30px;
					border-radius: 30px;
					background: red;
					cursor: pointer;
					transition: all .2s;
					z-index: 300;
					}

					.off:hover
					{background: #543906;}



/* FOOTER */
.footer 
{
position: relative;
background: #54390610;
padding: 50px 100px 50px 160px;
}

	.footer-in
	{display: flex;}

	.footer-block
	{width: 20%;}

	.footer-block-wide
	{width: 35%;}

	.footer-block-small
	{
	width: 5%;
	display: flex;
	justify-content: end;
	}

		.footer-block h3
		{
		text-transform: uppercase;
		font-size: 16px;
		margin-bottom: 10px;
		}

		.footer-block a.logo
		{display: block;}

		.footer-menu
		{
		display: flex;
		flex-direction: column;
		}

		.footer-menu a
		{
		color: #543906;
		line-height: 1.6;
		text-decoration: none;
		}

		.footer-menu a:hover
		{
		text-decoration: underline;
		text-underline-offset: 2px;
		text-decoration-thickness: 3px;
		}
		
		.footer-small p
		{
		margin-top: 20px;
		}

		.back-top
		{
		width: 50px;
		height: 50px;
		border-radius: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
		color: #fff;
		background: #54390690;
		cursor: pointer;
		}

		.back-top:hover
		{background: #543906;}


	.footer-bottom
	{margin-top: 100px;}

	.bottom-logo
	{
	width: 180px;
	display: block;
	position: absolute;
	right: 100px;
	bottom: 50px;
	}		

	.footer .social
	{
	display: flex;
	align-items: center;
	gap: 10px;
	}

		.footer .social a
		{
		color: #54390690;
		text-decoration: none;
		}

		.footer .social a:hover
		{
		text-decoration: underline;
		text-decoration-color: #543906;
		text-decoration-thickness: 2px;
		text-underline-offset: 3px;
		}

	.newsletter	{
					margin-top: 2vw;
					position: relative;
					}

					.side-right .newsletter
					{
					margin-top: .5vw;
					text-align: left;
					}

					.newsletter h4 		{
										font-size: 13px;
										font-weight: 600;
										}

										.footer .newsletter h4
										{margin-bottom: 2px;}

					.newsletter-in 		{
										border: 2px solid #543906;
										padding-right: 3px;
										width: 70%;				
										position: relative;	
										}

										.side-right .newsletter-in
										{width: auto;}

					.newsletter input#mce-EMAIL::placeholder
										{color: #54390690;}
					
					.newsletter input#mce-EMAIL
										{
										display: inline-block;
										font-size: 16px;
										border: none;
										color: #543906;
										box-sizing: border-box;
										vertical-align: middle;
										padding: 0 10px;
										height: 36px;
										width: 70%;
										}

					.newsletter input#mc-embedded-subscribe,
					.side-right .newsletter h4
										{
										position: absolute;
										display: block;
										font-size: 15px;
										font-weight: 600;
										top: 0;
										right: 0;
										bottom: 0;
										border: none;
										-webkit-appearance: none;
										vertical-align: middle;
										width: 30%;		
										cursor: pointer;	
										transition: all .2s;						
										color: #fff;
										background: #543906;
										border-radius: 0;
	/*									text-shadow: 0 1px 3px rgb(0 0 0 / 70%);
										background-size: 200%;
										background-repeat: no-repeat;
										background-position: center;
										background-image: url(../images/back-2023.png);
	*/									}

										.newsletter input#mc-embedded-subscribe:hover
										{opacity: .8;}

										.side-right .newsletter h4
										{
										width: auto;
										left: 0;
										z-index: 10;
										line-height: 40px;
										text-align: center;
										}

/* SEARCH */

.search-box
{display: none;}


/* TABLE SCHEDULE, July 2022 */

/*.schedule-wrap
{
background: #312e81;
padding: 20px 20px 20px 0;
border-radius: 5px;
}
*/
	.schedule-wrap h2
	{
	font-size: 21px;
	margin: 0 20px 20px 0;
	}

/*	.schedule-in
	{
	display: inline-block;
	padding: 20px;
	}*/

	.schedule-day
	{
	border-top-right-radius: 5px;
	border-bottom-right-radius: 5px;
	}

	.schedule-day + .schedule-night
	{margin-top: 50px;}

	.schedule-wrap svg
	{
	flex-shrink: 0;
	width: 16px;
	color: #54390670;
	}

/*	.schedule-night svg
	{color: #fff;}*/

/*	.schedule-night
	{margin-top: 50px;}*/

.table-schedule
{
width: 100%;
table-layout: fixed;
text-align: left;
border-spacing: 0;
padding: 0;
}

	.table-schedule th,
	.table-schedule td
	{
	font-size: 15px;
	box-sizing: border-box;
	vertical-align: top;
	}

		.table-schedule th.day-slot
		{color: #54390675;}

/*		.schedule-day td:not(td.day-slot)
		{background: #fff;}
*/
		.table-schedule th
		{
		padding-bottom: 3px;
		text-transform: uppercase;
		padding-left: 7px;
		}

/*		.schedule-night .table-schedule th
		{color: #fff;}*/

		.day-items
		{
		min-height: 150px;
		padding: 5px 7px;
		position: relative;
		}

		.day-items p
		{
		line-height: 100%;
		margin-bottom: 8px;
		}

			.day-items p:last-child
			{margin-bottom: 20px;}

		.day-items a
		{
		text-decoration: none;
		color: #543906;
		font-size: 16px;
		line-height: 1.05;
		font-weight: 590;
		display: flex;
		align-items: flex-start;
		gap: 3px;
		cursor: pointer;
		}

			.day-items a:hover span
			{color: #54390690;}

/*			.schedule-night .day-items a
			{color: #ffffff90;}

			.schedule-night .day-items a:hover
			{color: #fff;}*/

		.table-schedule td
		{
		border-right: 1px dotted #54390670;
		border-top: 1px dotted #54390670;
		}	

		.table-schedule tr:last-child td
		{border-bottom: 1px dotted #54390670;}

/*		.schedule-night .table-schedule td
		{
		border-right: 2px solid #ffffff30;
		border-top: 2px solid #ffffff30;
		}

		.schedule-night .table-schedule tr:last-child td
		{border-bottom: 2px solid #ffffff30;}*/


	.table-schedule th.day-slot,
	.table-schedule td.day-slot
	{
	width: 140px;
	padding: 0;
	}

	.table-schedule td.day-slot p
	{
	background: #54390650;
	padding: 2px 5px 3px 6px;
	font-size: 18px;
	font-weight: 700;
	white-space: nowrap;
	}

/*		.schedule-night .table-schedule td.day-slot p
		{
		background: #ffffff30;
		color: #fff;
		}
*/
	.table-schedule td.day-slot p span
	{
	display: inline-block;
	vertical-align: top;
	}

	.table-schedule td.day-slot p span:last-child
	{
	font-size: 12px;
	margin: 1px 0 0 1px;
	font-weight: 800;
	}

		.table-schedule tr:last-child td.day-slot
		{border-bottom: none;}

.days-wrap
{
display: flex;
align-items: center;
position: fixed;
top: 121px;
left: 0;
right: 0;
padding: 0 20px 1px;
border-bottom: 1px solid #54390650;
box-shadow: 0 1px 0 0 #f9f9f9;
z-index: 10;
background: #fff;
}

.days-wrap h2
{
width: 140px;
font-size: 18px;
color: #54390675;
}

	.days
	{
	display: flex;
	gap: 1px;
	}

	.days a
	{
	font-size: 15px;
	font-weight: 700;
	vertical-align: middle;
	padding: 5px 11px;
	color: #54390670;
	background: #54390620;
	text-decoration: none;
	}

		.days a:hover
		{color: #543906;}

		.days a.current
		{
		color: #543906;
		background: #54390650;
		}

		.category-header
		{
		background: #543906;
		color: #fff;
		margin: -3px -5px 9px -5px;
		font-size: 14px;
		font-weight: 500;
		line-height: 1;
		text-transform: uppercase;
		padding: 6px 7px;			
		}

/*
//////////////////////////
MODAL FILM 
on SCHEDULE
/////////////////////////
*/
.modal-film-image
{position: relative;}

.modal-film img
{
display: block;
width: 100%;
border-radius: 3px;
margin-bottom: 20px;
}

.modal-film h2
{
font-size: 35px;
line-height: 1;
padding-bottom: 20px;
margin-bottom: 20px;
border-bottom: 1px solid #54390650;
}

/*.film-content div + div
{margin-top: 15px;}
*/
.film-elements
{
display: flex;
gap: 20px;
padding-bottom: 20px;
margin-bottom: 20px;
border-bottom: 1px solid #54390650;
}

.film-synopsis
{
font-size: 18px;
line-height: 1.5;
padding: 10px 0;
}

.modal-film .add-ticket
{margin-bottom: 0;}

.add-ticket-gray,
.modal-film .add-ticket-gray
{background: #54390630;}

.add-ticket-gray:hover,
.modal-film .add-ticket-gray:hover
{background: #54390620;}

.modal-film .film-buttons
{
display: flex;
flex-direction: column;
gap: 10px;
margin-top: 20px;
}


/*//////////////
// DOKUTALKS
///////////////*/

.dokutalks-all 	{
						width: 100%	;
						display: flex;
						gap: 20px;
						padding-top: 20px;
						}

						.dokutalks-categories,
						.dokutalks-nights-left
						{
						width: 300px;
						display: flex;
						flex-direction: column;
						flex: 0 0 auto;
						box-sizing: border-box;
						padding-right: 20px;
						}

						.dokutalks-categories a:first-child
						{border-top: 1px solid #54390650;}

						.dokutalks-categories a
						{
						opacity: .5;
						cursor: pointer;
						transition: all .15s;
						padding: 20px 0 20px 20px;
						border-bottom: 1px solid #54390650;
						color: #543906;
						text-decoration: none;
						}

						.dokutalks-categories a.dokutalks-current,
						.dokutalks-categories a:hover
						{
						padding-left: 0;
						opacity: 1;
						}

						.dokutalks-categories h2
						{
						display: flex;
						align-items: center;
						justify-content: space-between;
						font-size: 24px;
						font-weight: 550;
						}

						.dokutalks-categories h2 svg
						{
						width: 24px;
						opacity: 0;
						padding-right: 10px;
						transition: all .3s;
						}

						.dokutalks-categories a:hover svg,
						.dokutalks-categories a.dokutalks-current svg
						{
						opacity: 1;
						padding-right: 0;
						}
						
						.dokutalks-categories a p
						{
						line-height: 1.2;
						margin-top: 10px;
						padding-left: 20px;
						display: none;
						}

						.dokutalks-categories a.dokutalks-current p
						{display: block;}

						.dokutalks-single
						{
						flex-wrap: wrap;
						gap: 20px;
						display: none;
						}

						.dokutalks-show
						{display: flex;}

.dokutalks 			{
						width: 100%;
						flex-grow: 1;
						}

.dokutalks-in		{
						display: flex;
						flex-direction: column;
						width: calc((100% - 40px) / 3);
						color: #543906;
						text-decoration: none;
						transition: all .2s;
						background: #54390620;
						}

						.dokutalks-in:hover
						{background: #54390610;}

						.dokutalks-desc
						{
						color: #543906;
						padding: 20px 20px 30px;
						flex: 1 1 0%;
						margin-top: 1px;
						}

							.dokunews .dokutalks-desc
							{
							background: #54390620;
							padding: 20px;
							}

							.dokunews-date
							{
							font-weight: 800;
							text-transform: uppercase;
							padding: 20px;
							}

						.dokutalks-details
						{
						display: flex;
						font-weight: 550;
						padding: 20px;
						border-top: 1px solid #54390650;
						justify-content: space-between;
						background: #54390610;
						}

						.dokutalks-details div
						{
						display: flex;
						gap: 5px;
						align-items: center;
						}

							.dokutalks-details .detail-side
							{gap: 20px;}

						.dokutalks-details svg
						{width: 16px;}


						.dokutalks-in h2
						{
						font-size: 25px;
						line-height: 1.1;
						font-weight: 550;
						margin-bottom: 15px;
						}

								.dokunews h2
								{
								font-size: 30px;
								margin-bottom: 0;
								}

						.dokutalks-in p
						{
						font-size: 18px;
						line-height: 1.3;
						}

						.dokutalks-image
						{
						height: 350px;
						overflow: hidden;
						position: relative;
						}

						.dokutalks-image img
						{
						object-fit: cover;
						width: 100%;
						height: 100%;
						vertical-align: middle;
						transition: transform .15s ease-out;
						transform-origin: center center;
						}

						.dokutalks-in:hover img
						{transform: scale(1.1);}

.dokutalks-middle	{
						display: flex;
						gap: 20px;
						}		

.talk-image 		{
						width: calc((100% - 40px) * 2/3 + 20px);
						position: relative;
						}

/*						.dokunights-middle
						{
						border-bottom: 1px solid #54390650;
						}
*/
						.dokunights-middle .talk-image,
						.dokunights-middle .dokutalks-side
						{width: 50%;}
						
						.dokutalks-middle img
						{
						display: block;
						width: 100%;
						}				

						.dokunights-image img
						{
						width: 100%;
						height: 100%;
						object-fit: cover;
						vertical-align: middle;
						}

						.dokunews-middle img
						{width: 100%;}

						.image-credit
						{
						margin-top: 10px;
						font-size: 18px;
						}

						.talk-section
						{
						font-size: 30px;
						font-weight: 550;
						padding-bottom: 15px;
						margin: 100px 0 0;
						}

.dokutalks-side 	{width: calc((100% - 40px) * 1/3);}

						.dokunews-middle .talk-image
						{
						aspect-ratio: 1 / 1;
						width: 50%;
						}

						.dokunews-middle .dokutalks-side
						{
						width: 50%;
						background: #54390620;
						box-sizing: border-box;
						}

						.dokutalks-side h2
						{
						display: inline-block;
						text-transform: uppercase;
						padding-bottom: 15px;
						border-bottom: 1px solid #54390650;
						margin-bottom: 15px;
						}

						.dokutalks-side h1
						{
						font-size: 60px;
						line-height: 1;
						margin-bottom: 15px;
						}

							.dokunews-middle .dokutalks-side h1
							{
							padding: 40px;
							background: #54390620;
							margin-bottom: 0;
							}

							.article-text
							{padding: 40px;}

							.article-date
							{
							text-transform: uppercase;
							font-weight: 800;
							margin-bottom: 20px;
							}

						.dokutalks-side .article-description p
						{
						font-size: 30px;
						line-height: 1.2;
						font-weight: 500;
						margin-bottom: 2.5%;
						}

						.dokutalks-side p
						{
						font-size: 23px;
						line-height: 1.35;
						}

							.dokunights-middle .dokutalks-side p
							{font-size: 18px;}

							.dokunights-middle .dokunights-text p
							{
							font-size: 25px;
							}

						.dokutalks-side p + p
						{margin-top: 2.5%;}

						.dokutalks-side img
						{max-width: 100%;}

						.dokutalks-side a
						{
						color: #543906;
						text-decoration-color: orange;
						text-underline-offset: 3px;
						}

.dokutalks-showtime
						{
						border-top: 1px solid #54390650;
						border-bottom: 1px solid #54390650;
						margin-top: 25px;
						padding: 20px 0;
						display: flex;
						align-items: center;
						justify-content: space-between;
						gap: 20px;
						}		

						.dokutalks-showtime div
						{
						display: flex;
						gap: 5px;
						align-items: center;
						}

						.dokutalks-showtime .talk-side
						{gap: 20px;}

						.dokutalks-showtime svg
						{width: 24px;}			


/*//////////////
// DOKUNIGHTS
///////////////*/

.dokunights-all 	{
						display: flex;
						flex-direction: column;
						gap: 20px;
						}

.dokunights 		{
						height: 400px;
						overflow: hidden;
						position: relative;
						color: #fff;
						text-decoration: none;
						}

						.dokunights img
						{
						object-fit: cover;
						width: 70%;
						height: 120%;
						vertical-align: middle;
						transition: transform .15s ease-out;
						transform-origin: center center;
						}

							.dokunights:hover img
							{transform: scale(1.3);}

						.dokunights-copy
						{
						position: absolute;
						top: 0;
						right: 0;
						bottom: 0;
						width: 30%;
						background: #543906;
						z-index: 10;
						transition: all .15s;
						padding: 20px;
						}

							.dokunights:hover .dokunights-copy
							{
							width: 35%;
							padding-right: 20px;
							}							

						.dokunights h2
						{
						position: absolute;
						right: 30px;
						bottom: 20px;
						color: #fff;
						font-size: 50px;
						font-weight: 500;
						}

						.dokunights h3,
						.dokunights h4
						{
						position: absolute;
						right: 30px;
						font-size: 12px;
						padding: 5px 7px;
						color: #543906;
						background: #fff;
						}

						.dokunights h3
						{top: 30px;}

						.dokunights h4
						{top: 50px;}

















.hidden
{visibility: hidden;}

.mobile-button
{
display: flex;
align-items: center;
justify-content: center;
gap: 10px;
position: fixed;
left: 0;
right: 0;
bottom: 0;
background: orange;
color: #543906;
font-size: 18px;
font-weight: 600;
letter-spacing: 1px;
border-top: 1px solid #fff;
padding: 25px;
z-index: 50;
}

	.mobile-button svg
	{width: 24px;}

.mobile-hold
{
position: fixed;
left: 0;
right: 0;
bottom: 74px;
background: orange;
padding: 10px 10px 0;
overflow: hidden;
z-index: 55;
}

	.mobile-menu
	{
	background: #f9f9f9;
	padding: 10px;
	}
	
.mobile-button,
.mobile-hold
{display: none;}



	/*//////////////////
	// MOBILE MAIN MENU
	//////////////////*/

	.mobile-menu .menu
	{
	border: 1px solid #54390650;
	margin-bottom: 10px;
	}

	.mobile-menu .menu a
	{
	display: block;
	font-size: 17px;
	font-family: "Bricolage Grotesque";
	font-weight: 500;
	padding: 10px 50px 10px 10px;
	color: #543906;
	text-decoration: none;
	text-decoration-color: orange;
	border-bottom: 1px solid #54390650;
	box-sizing: border-box;
	}

		.mobile-menu .menu a:last-child
		{border: none;}

		.mobile-menu .menu a.current
		{background: #54390620;}



	/*//////////////////
	// TOP LINKS
	//////////////////*/

	.mobile-menu .top-menu-links
	{
	background: #54390610;
	margin-bottom: 10px;
	}

		.mobile-menu .top-menu-links a
		{
		display: block;
		color: #54390690;
		padding: 7px 9px;
		border-bottom: 1px solid #f9f9f9;
		text-decoration: none;
		}

		.mobile-menu .top-menu-links a.current
		{color: #543906;}



	/*//////////////////
	// SOCIAL
	//////////////////*/

	.mobile-menu .social
	{
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	}

	.mobile-menu .social a
	{
	color: #54390690;
	text-decoration: none;
	background: #54390620;
	line-height: 1;
	padding: 5px 10px;
	border-radius: 20px;
	}



	/*//////////////////
	// SOCIAL
	//////////////////*/
	.mobile-close
	{
	display: block;
	color: #543906;
	background: #54390630;
	margin-top: 10px;
	padding: 10px;
	text-align: center;
	}

	.x-cats
	{display: none;}

/*
/////////////////////////////////
// 2300
/////////////////////////////////
*/
@media only screen 
and (max-width : 2300px)  {

	.one-programme,
	.other-films .one-programme
	{width: calc((100% - (2 * 40px)) / 3);}

}


/*
/////////////////////////////////
// 2000
/////////////////////////////////
*/
@media only screen 
and (max-width : 2000px)  {

	.header .top-menu
	{padding: 5px 20px 5px 120px}

	.logo
	{width: 80px;}

	.edition
	{
	width: 140px;
	padding-right: 20px;
	}

		.edition div
		{
		display: inline-block;
		text-align: left;
		}

	.archive
	{padding: 0 20px;}

	.archive-side
	{width: 280px;}

	.menu-hold
	{padding-right: 20px;}

	.dokutalks-categories,
	.dokutalks-nights-left
	{width: 260px;}

	.festival-side
	{width: 260px;}

	.content,
	.content-no-flex
	{
	padding-left: 20px;
	padding-right: 20px;
	}

	.single-year h3,
	.year-text h2
	{font-size: 60px;}

	.film-bottom,
	.film-content-in
	{padding-left: 0;}

	.left-grid
	{width: 240px;}

	.footer
	{padding: 20px;}

	.bottom-logo
	{
	right: 20px;
	bottom: 20px;
	}

	.info-menu
	{width: 260px;}


}


/*
///////////////////////////////// 
// 1600 smaller desktops
/////////////////////////////////
*/
@media only screen 
and (max-width : 1600px)  {

	.homepage-image,
	.homepage-text
	{width: 50%;}

	.homepage-text-in span,
	.homepage-text-in p
	{display: none;}

	.homepage-text-in-narrow
	{right: 0;}

	.homepage-text h2
	{font-size: 30px;}

	.homepage-text a
	{
	position: relative;
	right: auto;
	bottom: auto;
	margin-top: 20px;
	font-size: 16px;
	padding: 7px 12px;
	}

	.homepage-top a
	{font-size: 18px;}

	.homepage-actions-space
	{padding-top: 50px;}

	.homepage-actions
	{
	width: auto;
	height: 50px;
	left: 0;
	bottom: auto;
	flex-direction: row;
	padding: 0;
	}

		.homepage-actions a.current
		{
		margin: 0;
		color: #543906;
		background: #54390650;
		}

	.dokunights-categories p
	{display: none;}

	.dokutalks-all
	{display: block;}

	.dokutalks-categories a.dokutalks-current p
	{display: none;}

	.dokutalks-categories
	{
	flex-direction: row;
	margin-bottom: 20px;
	}

	.dokutalks-categories h2,
	.info-menu a h2
	{font-size: 18px;}

	.dokutalks-categories h2 svg,
	.info-menu a svg
	{display: none;}

	.dokutalks-categories a:first-child,
	.dokutalks-categories a.dokutalks-current,
	.dokutalks-categories a,
	.info-menu a
	{
	white-space: nowrap;
	padding: 10px 20px 10px 0;
	border: none;
	}

	.festival
	{display: block;}

	.festival-side
	{
	width: auto;
	margin-bottom: 20px;
	}

	.showtimes
	{display: none;}

	.countries
	{display: none;}

	.film-image-hold
	{height: auto;}

	.film-bottom-right
	{
	width: auto;
	padding-right: 30px;
	}

	.film-content-in
	{gap: 60px;}

	.long-menu h1
	{font-size: 16px;}

	.filter
	{display: block;}

	.x-cats
	{
	width: 40px;
	height: 40px;
	border-radius: 50px;
	background: #543906;
	color: orange;
	text-align: center;
	font-size: 30px;
	font-weight: 700;
	line-height: 35px;
	position: absolute;
	top: 5px;
	right: 5px;
	z-index: 300;
	display: block;
	}

	.film-cats,
	.countries
	{
	display: none;
	position: fixed;
	top: 10px;
	left: 10px;
	bottom: 10px;
	z-index: 100;
	background: #f9f9f9;
	padding: 10px;
	border-radius: 3px;
	box-shadow: 0 0 5px #54390650;
	overflow: hidden;
	}

	.film-cats-in,
	.countries .detail
	{
	position: absolute;
	top: 10px;
	left: 10px;
	right: 10px;
	bottom: 10px;
	border: 1px solid #54390650;
	border-radius: 3px;
	text-align: left;
	padding: 10px;
	overflow-y: auto;
	}

	.all-programmes-in
	{gap: 20px;}

	.one-programme,
	.other-films .one-programme
	{width: calc((100% - (3 * 20px)) / 4);}

	.info-all
	{display: block;}

	.info-menu
	{
	width: 100%;
	flex-direction: row;
	flex-wrap: wrap;
	margin-bottom: 20px;
	}

	.info-content-flex
	{display: block;}

	.info-left,
	.info-image
	{
	width: 100%;
	margin-bottom: 20px;
	}

}


/*
///////////////////////////////// 
// 1200 tablets
/////////////////////////////////
*/
@media only screen 
and (max-width : 1200px)  {

	.header .top-menu,
	.header .menu
	{display: none;}

	.menu-hold
	{border-top: 5px solid #543906;}

	.utility
	{
	flex-grow: 1;
	justify-content: end;
	}

	.mobile-button
	{display: flex;}

	.content
	{padding-top: 90px;}

	.content-archive
	{padding-top: 152px;}

	.homepage-top
	{padding: 10px 0;}

	.homepage-top h1
	{
	font-size: 20px;
	gap: 5px;
	}

	.homepage-top span
	{
	font-size: 20px;
	width: 40px;
	height: 40px;
	}

	.homepage-show
	{display: block;}

	.homepage-image,
	.homepage-text
	{width: 100%;}

	.homepage-image
	{height: 300px;}

	.homepage-text-in
	{
	position: relative;
	top: auto;
	left: auto;
	right: auto;
	bottom: auto;
	padding: 30px;
	}

	.left-grid
	{display: none;}

	.film-content-in
	{display: block;}

	.film-content-side
	{width: 100%;}

	.archive
	{top: 90px;}

	.dokunews
	{width: calc(50% - 10px);}

	.dokutalks-in
	{width: calc((100% - 20px) / 2)}

	.dokutalks-middle
	{display: block;}

	.talk-image,
	.dokutalks-side
	{width: 100%;}

	.dokutalks-side
	{margin-top: 20px;}

	.dokunights-middle .dokunights-text,
	.dokunights-middle .dokunights-image
	{width: 100%;}

	.dokunights-middle .dokunights-image
	{margin-top: 20px;}

	.dokunews-middle .dokutalks-side,
	.dokunews-middle .talk-image
	{width: 100%;}

	.dokunews-middle .talk-image
	{height: 300px;}

	.dokunews-middle img
	{
	object-fit: cover;
	width: 100%;
	height: 100%;
	vertical-align: middle;
	display: block;		
	}

	.dokunights-copy
	{width: 40%;}

	.single-year
	{
	width: 100%;
	display: block;
	}

		.single-year h3
		{
		width: 170px;
		font-size: 35px;
		}

		.year-text h2
		{
		font-size: 35px;
		}

		.year-image
		{
		width: auto;
		height: auto;
		}

		.year-desc
		{
		padding: 20px;
		background: #54390620;
		}


	.archive-side
	{
	width: auto;
	padding-right: 20px;
	}

	.archive h2
	{
	font-size: 16px;
	color: #ffffff90;
	}

	.archive-edition
	{display: none;}

	.all-programmes-in
	{gap: 30px;}

	.one-programme,
	.other-films .one-programme
	{width: calc((100% - (2 * 30px)) / 3);}



	.footer-hide
	{display: none;}

	.footer-in
	{justify-content: space-between;}

	.footer-bottom
	{
	width: 70%;
	margin-top: 50px;
	}

	.footer-block-wide
	{width: 100%;}

	.footer-block-small
	{width: 50px;}



	.supporter-logos
	{
	width: 100%;
	flex-wrap: wrap;
	}

	.supporter-logos a.supporter-logo-small
	{width: 200px;}

	.supporter-logos a.supporter-logo-medium
	{width: 300px;}

	.supporter-logos a.supporter-logo-big
	{width: 400px;}

.info-menu
{gap: 0;}

.info-menu a.info-current,
.info-menu a
{padding: 5px 7px;}

}


/*
/////////////////////////////////
// 900 mobile
/////////////////////////////////
*/
@media only screen 
and (max-width : 900px)  {

	.content, .content-no-flex
	{
	padding-left: 15px;
	padding-right: 15px;
	}

	.dokunews
	{width: 100%;}

	.dokutalks-in
	{width: 100%;}

	.dokunights
	{height: auto;}

	.dokunights img
	{width: 100%;}

	.dokunights-copy
	{
	width: 100%;
	padding: 20px;
	}

	.dokunights-copy,
	.dokunights-copy h2,
	.dokunights-copy h3,
	.dokunights-copy h4
	{
	position: relative;
	top: auto;
	left: auto;
	right: auto;
	bottom: auto;
	}

	.dokunights h3,
	.dokunights h4	
	{
	display: inline-block;
	}

	.one-programme,
	.other-films .one-programme
	{width: 100%;}

	.long-menu
	{display: block;}

	.cats-hold
	{display: block;}

	.filter-holds
	{margin-top: 10px;}

	.pagination-hold
	{
	margin-top: 10px;
	justify-content: space-between;
	}

	.homepage-actions-space
	{padding-top: 40px;}

	.homepage-actions
	{height: 40px;}

	.homepage-top a
	{display: none;}

	.homepage-actions a
	{font-size: 18px;}

	.homepage-text h2
	{font-size: 25px;}

	.dokunews h2
	{font-size: 21px;}

	.footer-block-small
	{
	position: absolute;
	top: 20px;
	right: 20px;
	}

	.footer
	{padding-bottom: 100px;}

	.footer-bottom
	{width: 100%;}

	.footer .social
	{flex-wrap: wrap;}

	.newsletter-in
	{width: 100%;}



	.dokunews-middle .dokutalks-side h1
	{
	padding: 20px;
	font-size: 25px;
	font-weight: 550;
	}

	.article-text
	{padding: 20px;}

	.dokutalks-side p
	{font-size: 16px;}

	.dokutalks-side .article-description p
	{font-size: 20px;}

	.year-desc
	{display: block;}

	.single-year h3
	{
	white-space: nowrap;
	font-size: 25px;
	}

	.single-year h3 span
	{
	display: inline-block;
	font-size: inherit;
	}

	.year-text h2
	{font-size: 30px;}

	.dokutalks-side h1,
	.info-content h1
	{font-size: 25px;}

	.info-sections h3,
	.info-documents h3
	{font-size: 23px;}

	.info-content h2,
	.info-people-text h4,
	.info-supporters h3
	{font-size: 20px;}

	.info-content p
	{font-size: 16px;}

	.info-file
	{width: auto;}

	.info-people-single
	{
	width: 100%;
	padding: 10px;
	}

	.info-people-text
	{padding-top: 10px;}

	.supporter-logos a.supporter-logo-big,
	.supporter-logos a.supporter-logo-medium
	{width: 100%;}

	.supporter-logos a.supporter-logo-small
	{width: calc((100% - 20px) / 2);}

}
