/* fonts */

@font-face {
font-family: "Unica Regular";
src: url("fonts/Unica77LLWeb-Regular.woff") format("woff");
}

@font-face {
font-family: "Unica Regular";
src: url("fonts/Unica77LLWeb-Regular.woff2") format("woff2");
}

/* subset */
@font-face {
font-family: "UnicaSub Regular";
src: url("fonts/Unica77LLSub-Regular.woff") format("woff");
}

@font-face {
font-family: "UnicaSub Regular";
src: url("fonts/Unica77LLSub-Regular.woff2") format("woff2");
}



/* general */
body 						{
							margin: 0;
							padding: 0;
							font-family: "Unica Regular", sans-serif;
							font-size: 0;
							}

html * 					{
							margin: 0;
							padding: 0;
							}

*:focus 					{outline: none;}

.clear 					{clear:both;}

p+p 						{margin-top: 15px;}

.loader-cover 			{
							position: absolute;
							top: 0;
							left: 0;
							right: 0;
							bottom: 0;
							background: rgba(255,255,255,.8);
							z-index: 10;
							}

.loader  				{
							height: 20px;
							width: 20px;
							animation: rotate 0.8s infinite linear;
							border: 2px solid #000;
							border-top-color: transparent;
							border-radius: 50%;
							position: absolute;
							margin: -11px 0 0 -11px;
							top: 50%;
							left: 50%;
							z-index: 100;
							}

@keyframes rotate 	{
							0%    {transform: rotate(360deg);}
							100%  {transform: rotate(0deg);}
							}

.mt-20 					{margin-top: 20px;}
.mt-40 					{margin-top: 40px;}

.mx-25 					{
							margin-left: 25px;
							margin-right: 25px;
							}

/* Build */
.x-page 					{
							display: block;
							position: fixed;
							top: 33px;
							right: 30px;
							z-index: 10;
							cursor: pointer;
							}

							.x-page svg
							{width: 35px;}

.hold 					{padding: 0 25px;}

							.main 
							{
							width: 77%;
							position: absolute;
							top: 0;
							left: 0;
							bottom: 0;
							overflow-y: auto;
							}

								.main-hold
								{
								max-width: 1150px;
								margin: auto;
								}

								.main.full
								{
								width: auto;
								left: 76px;
								right: 0;
								transition: all .15s;
								}

									.main.article-full
									{left: 0;}

								.full-open .main.full
								{left: 20%;}

							.sidebar
							{
							width: 23%;
							position: fixed;
							top: 0;
							right: 0;
							bottom: 0;
							}

								.project-page-single
								{margin-top: 50px;}

							.menu-items
							{
							border-top: 1px solid transparent;
							margin-top: 50px;
							display: none;
							}

								.full-open .menu-items
								{display: block;}

								.menu a
								{
								display: block;
								font-size: 20px;
								padding: 12px 32px;
								text-transform: uppercase;
								text-decoration: none;
								border-bottom: 1px solid #000;
								}

									.menu a span
									{font-size: 15px;}

									.menu .projects a
									{
									border: none;
									margin: 10px auto 50px;
									text-align: center;
									}

									.menu a.no-border
									{border: none;}

/*								.menu a:last-child
								{border: none;}*/

									.menu p 
									{
									white-space: nowrap;
									font-size: 20px;
									padding: 12px 32px;
									text-transform: uppercase;
									display: block;
									position: absolute;
									top: -70px;
									left: -4px;
									transform: rotate(90deg);
									transform-origin: 0 100%;
									transition: all .15s;
									z-index: 10;
									cursor: pointer;
									}

									.menu p svg
									{
									display: inline-block;
									vertical-align: middle;
									width: 20px;
									margin-right: 5px;
									transform: rotate(90deg);
									}

									.full-open .menu p
									{
									top: 2px;
									left: -3px;
									transform: rotate(0deg);
									}

							.menu-projects
							{
							position: absolute;
							left: 0;
							right: 0;
							bottom: 0;
							overflow-y: auto;
							}

								.projects a img
								{
								display: block;
								width: 100%;
								margin-bottom: 10px;
								}

							.vertical
							{
							position: fixed;
							width: 75px;
							top: 0;
							left: 0;
							bottom: 0;
							border-right: 1px solid transparent;
							z-index: 10;
							transition: all .25s;
							overflow: hidden;
							}

									.full-open .vertical
									{width: 20%;}

.button  				{
							display: inline-block;
							text-transform: uppercase;
							text-decoration: none;
							font-size: 20px;
							padding: 7px;
							}										

.top 
{
padding: 10px;
height: 35px;
position: relative;
}

							.half
							{
							display: inline-block;
							vertical-align: top;
							width: 50%;
							}

								.text-right
								{text-align: right;}

							.menu-tri
							{
							position: absolute;
							top: 10px;
							left: 10px;
							width: 35px;
							height: 35px;
							cursor: pointer;
							display: none;	
							transform: rotate(-90deg);
							display: none;
							}

								.menu-tri svg
								{width: 35px;}	

							.menu-mobile
							{
							position: fixed;
							top: 55px;
							left: 0;
							right: 0;
							background: #ccc;
							z-index: 10;
							display: none;
							transition: all .15s;
							}						

								.menu-mobile .menu a
								{
								font-size: 50px;
								padding: 6px 16px;
								}

							.lang
							{
							display: block;
							position: absolute;
							top: 10px;
							left: 10px;
							width: 35px;
							height: 35px;
							font-size: 15px;
							line-height: 35px;
							text-align: center;
							text-decoration: none;
							border-radius: 100%;
							cursor: pointer;
							}

								.lang-solo
								{/*margin: 10px;*/}

								.vertical .lang
								{
								position: absolute;
								top: auto;
								left: 20px;
								bottom: 20px;
								}

							.colors
							{
							display: block;
							position: absolute;
							top: 10px;
							left: 55px;
							cursor: pointer;
							}

								.colors svg
								{width: 35px;}

							.search
							{
							display: block;
							position: absolute;
							top: 10px;
							right: 10px;
							width: 25px;
							height: 35px;
							padding-right: 10px;
							line-height: 49px;
							text-align: center;
							border-radius: 50px;
							cursor: pointer;
							transition: all .2s;
							text-align: right;
							overflow: hidden;
							}

								.search-hover
								{width: 265px;}

								.search input
								{
								width: 220px;
								position: absolute;
								right: 36px;
								height: 35px;
								padding-left: 0px;
								font-size: 15px;
								font-family: "Unica Regular", sans-serif;
								color: #fff;
								border: none;
								background: none;
								}

								.search input:placeholder
								{color: #555;}

								.search svg
								{
								width: 16px;
								color: #fff;
								}

.search-box 			{
							border: 1px solid #000;
							position: relative;
							}

							.search-box-hold p
							{
							text-align: center;
							margin-top: 10px;
							font-size: 15px;
							}

							.search-box input[type="text"]
							{
							width: 100%;
							box-sizing: border-box;
							font-size: 20px;
							font-family: "Unica Regular", sans-serif;
							color: #000;
							padding: 12px 30px;
							border: none;
							background: none;
							}			

							.search-box input::placeholder
							{color: #000;}

							.search-box a
							{
							display: block;
							width: 32px;
							height: 32px;
							position: absolute;
							top: 8px;
							right: 7px;
							background: #000;
							font-size: 20px;
							border-radius: 100%;
							text-align: center;
							line-height: 31px;
							cursor: pointer;
							}

							.search-page .search-box a
							{color: #dcdcdc;}

.trailer 				{
							position: fixed;
							top: 0;
							right: 0;
							bottom: 0;
							left: 0;
							z-index: 10;
							background: #000;
							overflow: hidden;
							margin: 0;
							padding: 0;
							display: none;
							}

							.trailer-code
							{display: none;}

							.trailer iframe
							{
							overflow:hidden;
							overflow-x:hidden;
							overflow-y:hidden;
							height:100%;
							width:100%;
							position:absolute;
							top:0px;
							left:0px;
							right:0px;
							bottom:0px;
							}

							.trailer-x
							{
							display: block;
							position: absolute;
							width: 50px;
							height: 40px;
							top: 80px;
							right: 50px;
							text-align: center;
							padding-top: 10px;
							z-index: 100;
							background: #000;
							border-radius: 100%;
							cursor: pointer;
							}

							.trailer-x svg
							{
							width: 30px;
							height: 30px;
							}

/* LOGO */
.logo 					{
							max-width: 600px;
							margin: 30px auto 70px;
							}

							.logo img
							{
							display: block;
							width: 100%;
							}

/* PROGRAMME */
.programme 				{
						position: relative;
						max-width: 600px;	/* match the logo width */
						margin: 0 auto;		/* center the program under the logo */
						}

.programme-month		{
							max-width: 800px;
							font-size: 40px;
							font-weight: normal;
							text-align: center;
							margin: 0 auto 40px;
							text-transform: unset;
							}

							.sp-hold + .programme-month
							{margin-top: 70px;}

							.no-hover
							{pointer-events: none;}
							
							.special-message
							{
							font-size: 20px;
							line-height: 25px;
							margin: 0 25px;
							}

							/* (A) FIXED WRAPPER */
							.hwrap {
							overflow: hidden; /* HIDE SCROLL BAR */
							border-top: 1px solid transparent;
							border-bottom: 1px solid transparent;
							padding: 10px;
							margin: 0 10px;
							}

							/* (B) MOVING TICKER WRAPPER */
							.hmove { display: flex; }

							/* (C) ITEMS - INTO A LONG HORIZONTAL ROW */
							.hitem {
							flex-shrink: 0;
							width: 50%;
							font-size: 20px;
							box-sizing: border-box;
							padding: 10px;
							text-align: center;
							white-space: nowrap;
							}

							/* (D) ANIMATION - MOVE ITEMS FROM RIGHT TO LEFT */
							/* 4 ITEMS -400%, CHANGE THIS IF YOU ADD/REMOVE ITEMS */
							@keyframes tickerh {
							0% { transform: translate3d(100%, 0, 0); }
							100% { transform: translate3d(-100%, 0, 0); }
							}
							.hmove { animation: tickerh linear 25s infinite; }
							.hmove:hover { animation-play-state: paused; }

							.no-program-image
							{margin: 0 10px;}

							.no-program-image img
							{
							display: block;
							width: 100%;
							margin-top: 20px;
							}

							.left-present
							{margin-left: 76px;}

							.center-content
							{
							max-width: 1200px;
							margin: auto;
							padding: 100px 0;
							}

								.center-content + .center-content
								{padding-top: 0;}

								.article-date
								{
								margin: 50px 0;
								text-align: center;
								font-size: 20px;
								}

								.article-image
								{
								max-width: 860px;
								margin: 0 -30px 50px;
								text-align: center;
								font-size: 15px;
								}

									.article-image img 
									{
									display: block;
									width: 100%;
									margin-bottom: 10px;
									}

								.article
								{
								max-width: 800px;
								margin: auto;
								}

								.article p,
								.article li
								{
								font-size: 20px;
								line-height: 25px;
								}

								.article ul,
								.article ol
								{margin: 50px 0 50px 20px;}

								.article blockquote
								{
								max-width: 80%;
								margin: 50px auto;
								}

								.article p + p
								{margin-top: 20px;}

								.article p a
								{
								text-decoration: none;
								border-bottom: 2px solid transparent;
								}

							.programme h2,
							.section-title
							{
							font-weight: normal;
							font-size: 20px;
							padding: 0 0 15px 25px;
							text-transform: uppercase;
							}

								.center-content h1,
								.center-content h2
								{
								max-width: 800px;
								font-size: 40px;
								font-weight: normal;
								text-align: center;
								margin: 0 auto 50px;
								text-transform: none;
								}

								.center-content .article h2
								{
								font-size: 30px;
								margin: 50px 0;
								}

							.sp-hold
							{
							padding: 0 25px;
							cursor: pointer;
							}

/*								.sp-hold:hover
								{background: #000;}*/

								.sp-open
								{cursor: inherit;}

								.sp-open:hover
								{background: none;}

							.single-programme 
							{
							display: block;
							border-top: 1px solid transparent;
							border-bottom: 1px solid transparent;
							text-decoration: none;
							}

								.sp-hold + .sp-hold
								{margin-top: -1px;}

							.element-hold
							{padding: 10px 0;}

							.single-programme .element
							{
							display: inline-block;
							vertical-align: top;
							font-size: 20px;
							margin-top: 3px;
							}

/*								.sp-hold:hover .single-programme .element
								{color: #fff;}*/

								.sp-open:hover .single-programme .element
								{color: initial;}

							.element.day
							{width: 15%;}

							.element.time
							{width: 10%;}

							.element.date
							{
							display: block;
							font-size: 15px;
							margin-bottom: 5px;
							}

							.element.title
							{width: 45%;}

							body:not(.project-side) .news-page .single-programme,
							body:not(.project-side) .news-page .single-programme .element,
							body:not(.project-side) .news-page .element-hold,
							body:not(.project-side) .news-page .element-hold .element
							{color: #000;}

							body.project-side .news-page .single-programme,
							body.project-side .news-page .single-programme .element,
							body.project-side .news-page .element-hold,
							body.project-side .news-page .element-hold .element
							{color: #FFF;}

								.news .element.title
								{
								display: block;
								width: auto;
								}

							.element-cap
							{text-transform: uppercase;}

							.element.tags
							{
							width: 30%;
							font-size: 0;
							text-align: right;
							margin-top: 0;
							}

								.element.tags span
								{
								display: inline-block;
								font-size: 15px;
								margin: 0 0 7px 7px;
								padding: 5px;
								border: 1px solid transparent;
								box-sizing: border-box;
								}

/*									.sp-hold:hover .element.tags span
									{border-color: #fff;}*/

/*									.sp-open:hover .element.tags span
									{border-color: #000;}*/

								.element.tags span.kind
								{}

/*									.sp-hold:hover .element.tags span.kind
									{
									background: #fff;
									color: #000;
									}

									.sp-open:hover .element.tags span.kind
									{
									background: #000;
									color: #fff;
									}*/

							.show-programme
							{
							margin: 5px 0 20px;
							display: none;
							}

								.sp-open .show-programme
								{display: block;}

							.show-programme-side
							{
							display: inline-block;
							vertical-align: top;
							width: 45%;
							padding-right: 30px;
							box-sizing: border-box;
							}

								.show-programme img 
								{
								display: block;
								width: 100%;
								margin-bottom: 20px;
								}

							.sp-right
							{
							width: 55%;
							padding-right: 0;
							}

							.show-programme p 
							{
							font-size: 15px;
							line-height: 19px;
							}

							.programme-buttons 
							{
							display: inline-block;
							font-size: 15px;	
							margin-bottom: 15px;
							text-decoration: none;
							cursor: pointer;
							}

							.programme-buttons svg
							{
							display: inline-block;
							vertical-align: middle;
							width: 21px;
							margin-right: 5px;
							}

							.tag
							{
							display: inline-block;
							padding: 5px;
							border: 1px solid transparent;
							box-sizing: border-box;
							cursor: pointer;
							}



/* FLUID FIELDS */
.fields 					{position: relative;}

							.margin-50-auto
							{margin: 50px auto;}

							.disclaimer
							{
							width: 90%;
							padding: 10px;
							box-sizing: border-box;
							border: 1px solid transparent;
							}

							.article .disclaimer p,
							.article .small-text p,
							.article .all-images p
							{
							font-size: 15px;
							line-height: 19px;
							}

							.embed-block
							{
							margin-left: -30px;
							margin-right: -30px;
							padding:75% 0 0 0;
							position:relative;
							}

							.embed-block iframe
							{
							position:absolute;
							top:0;
							left:0;
							width:100%;
							height:100%;
							}

<div style="padding:75% 0 0 0;position:relative;"><iframe src="https://player.vimeo.com/video/13636442?h=6e8a29204a&title=0&byline=0&portrait=0" style="position:absolute;top:0;left:0;width:100%;height:100%;" frameborder="0" allow="autoplay; fullscreen; picture-in-picture" allowfullscreen></iframe></div><script src="https://player.vimeo.com/api/player.js"></script>							

.all-images
{font-size: 0;}

.medium-image
{text-align: center;}

.col-2
{
margin-left: -115px;
margin-right: -115px;
}

.col-3
{
margin-left: -65px;
margin-right: -65px;
}

.col-5
{
margin-left: -115px;
margin-right: -115px;
}

							.single-image
							{
							display: inline-block;
							vertical-align: top;
							box-sizing: border-box;
							}

							.single-image img
							{
							display: block;
							width: 100%;
							margin-bottom: 10px;
							}

								.col-2 .single-image
								{
								width: 50%;
								padding: 15px 15px 0;
								text-align: center;
								}

								.col-3 .single-image
								{
								width: 33.33%;
								padding: 35px 35px 0;
								}

								.col-5 .single-image
								{
								width: 20%;
								padding: 15px 15px;
								}

								.col-5 .single-image img
								{margin-bottom: 0;}

.column-list
{text-align: center;}							
							
							.single-column
							{
							width: 280px;
							text-align: left;
							display: inline-block;
							vertical-align: top;
							}

							.single-column + .single-column
							{margin-left: 70px;}

.dropdown
{}

							.dropdown span.svg
							{
							display: inline-block;
							vertical-align: top;
							margin-right: 3px;
							}

							.dropdown svg
							{width: 17px;}

							.dropdown-click
							{
							display: inline-block;
							cursor: pointer;
							margin-bottom: 15px;
							font-size: 20px;
							}

							.dropdown-content
							{
							margin: 20px 0 70px;
							display: none;	
							}

								.dropdown-open + .dropdown-content
								{display: block;}

								.dropdown-open a span.svg
								{
								transform: rotate(90deg);
								margin: 0 6px 0 -3px;
								}

.buttons
{}

							.buttons a.button
							{
							margin-right: 10px;
							margin-bottom: 10px;
							text-transform: none;
							}

.slideshow
{
margin: 0 -30px;
margin-bottom: 100px;
}
							
							.slideshow-caption
							{
							position: absolute;
							left: 0;
							right: 0;
							padding-top: 5px;
							bottom: -43px;
							}

							.slideshow-caption p
							{
							font-size: 15px;
							line-height: 19px;
							}

							.slideshow .swiper
							{
							overflow: unset;
							position: relative;
							}

/* Nav arrows — base = overlay on image with contrast backdrop (mobile/narrow).
   Scoped to .slideshow (specificity 0,2,0) and margin-top:0 so these win over
   Swiper's own .swiper-horizontal .swiper-button-* rules. styles.css is loaded
   AFTER swiper-bundle.min.css on the about page so equal-specificity ties resolve
   in our favour. */
.slideshow .swiper-arrow
{
  position: absolute;
  top: 50%;
  margin-top: 0;            /* cancel Swiper's calc(-size/2); we centre via transform */
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: rgba(0, 0, 0, .45);
  border: none;
  padding: 0;
  cursor: pointer;
  color: #fff;              /* SVG (currentColor) forced white over the dark circle */
  opacity: 1;               /* always visible */
  z-index: 10;
  transition: opacity .2s;
}

.slideshow .swiper-arrow-prev { left: 8px; right: auto; }
.slideshow .swiper-arrow-next { right: 8px; left: auto; }
.slideshow .swiper-arrow svg { width: 26px; height: 26px; display: block; }

/* Wide desktop — arrows move into the side gutter, theme color, no backdrop */
@media (min-width: 1100px) {
  .slideshow .swiper-arrow
  {
    width: auto;
    height: auto;
    border-radius: 0;
    background: none;
    color: inherit;        /* currentColor = theme text, contrasts page bg */
    opacity: .8;
  }
  .slideshow .swiper-arrow:hover { opacity: 1; }
  .slideshow .swiper-arrow svg { width: 48px; height: 48px; }
  .slideshow .swiper-arrow-prev { left: auto; right: 100%; margin-right: 12px; }
  .slideshow .swiper-arrow-next { right: auto; left: 100%; margin-left: 12px; }
}


.pdf-upload
{
font-size: 0;
text-align: center;
}

							.pdf-half
							{
							display: inline-block;
							width: 50%;
							padding: 50px 0;
							}

							.pdf-single
							{
							cursor: pointer;
							text-decoration: none;
							font-size: 15px;
							}

							.pdf-single svg
							{
							width: 135px;
							margin-bottom: 5px;
							}




/* FOOTER */
.footer  				{
							margin: 100px 0 30px;
							border-top: 1px solid transparent;
							padding: 20px 0 40px;
							}

							.first-half
							{padding-right: 100px;}

							.footer-in
							{padding: 0 30px;}

							.footer p,
							.footer a 
							{font-size: 15px;}

							.subscribe
							{
							width: 80%;
							border: 1px solid #000;
							position: relative;
							margin-bottom: 15px;
							}

							.subscribe input[type=email]
							{
							width: 90%;
							border: none;
							font-size: 15px;
							padding: 5px;
							box-sizing: border-box;
							background: none;
							}

/*							.subscribe input::placeholder
							{color: #000;}

							.subscribe input:focus::placeholder
							{color: #999;}*/

							.subscribe input[type=submit]
							{
							-webkit-appearance: none;
							background: none;
							border: none;
							display: block;
							position: absolute;
							font-size: 15px;
							font-family: "Unica Regular", sans-serif;
							top: 0px;
							right: 0;
							height: 27px;
							cursor: pointer;
							line-height: 0;
							}

							.social a
							{
							display: inline-block;
							margin-right: 10px;
							text-decoration: none;
							}

.half
{
display: inline-block;
vertical-align: top;
box-sizing: border-box;
width: 50%;
}

.bottom-align
{vertical-align: bottom;}














.mobile-footer
{display: none;}

@media only screen 
	and (max-width: 900px) {

	.desktop-footer
	{display: none;}

	.mobile-footer
	{display: block;}

	.lang-solo
	{display: none;}

	.main,
	.sidebar
	{
	position: relative;
	width: auto;
	}

	.main
	{
	padding-top: 70px;
	padding-bottom: 100px;
	}

	.program-button
	{text-align: center;}

	.logo
	{
	padding: 0 25px;
	margin: 20px auto;
	}

	.top
	{
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 30;
	}

		.lang
		{
		left: auto;
		right: 10px;
		}

		.search
		{right: 55px;}

		.search-hover
		{width: 195px;}

		.search input
		{width: 150px;}

		.menu-tri
		{display: block;}

		.menu-mobile
		{display: block;}

		.right-side .all-menu-elements
		{display: none;}

		.right-side .vertical .all-menu-elements
		{display: block;}

		.menu-projects
		{
		position: relative;
		left: auto;
		right: auto;
		bottom: auto;
		}

		.menu .projects a img	
		{
		width: 80%;
		margin: auto;
		}


	.program-title
	{display: none;}

	.sp-hold
	{
	margin-bottom: 25px;
	padding: 0 15px;
	}

		.news-page .sp-hold
		{margin-bottom: 0;}

	.single-programme .element
	{padding: 5px 0;}

		.news-page .single-programme .element
		{padding: 0;}

	.element.day
	{
	display: block;
	width: auto;
	border-bottom: 1px solid transparent;
	}

	.single-programme
	{border-top: none;}

		.news-page .single-programme
		{border-top: 1px solid transparent;}

	.element.tags
	{
	display: block;
	width: auto;
	text-align: left;
	}

	.element.tags span
	{margin: 0 7px 7px 0;}

	.element.time
	{width: 20%}

	.element.title
	{width: 80%}

	.show-programme-side,
	.sp-right
	{
	display: block;
	width: auto;
	padding-right: 0;
	}

	.sp-right
	{padding-top: 20px;}

	.programme-dings
	{position: relative;}

	.ding
	{
	display: inline-block;
	margin-right: 10px;
	}

	.ding.imdb
	{
	position: absolute;
	top: 0;
	right: 0;
	}

	.footer-in
	{padding: 0 15px;}

	.half,
	.first-half
	{
	width: auto;
	display: block;
	padding: 0;
	}

	.subscribe
	{
	width: auto;
	margin-top: 15px;
	}

	.vertical
	{
	width: auto;
	right: 0;
	height: 50px;
	bottom: auto;
	overflow: visible;
	}	

	.pseudo-vertical
	{
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	height: 50px;
	z-index: 7;
	overflow: visible;
	}


		.vertical.border-color
		{border: none;}

		.full-open .vertical
		{width: auto;}

		.full-open .menu p
		{
		top: auto;
		left: auto;
		transform: none;
		}

	.menu p
	{
	width: 80%;
	position: relative;
	top: auto;
	left: auto;
	padding: 13px;
	transform: none;
	transition: unset;
	}

	.menu a
	{
	padding: 10px 15px;
	font-size: 30px;
	}

	.vertical .lang
	{display: none;}

	.left-present
	{margin: 0;}

	.x-page
	{
	z-index: 100;
	top: 10px;
	right: 15px;
	}

	.x-page svg
	{width: 30px;}

	.menu-items
	{margin-top: 0;}

	.article
	{padding: 0 14px;}

	.article-image
	{margin: 0 0 50px;}

	.embed-block
	{
	margin-left: 0;
	margin-right: 0;
	}

	.col-3
	{
	margin-left: -7px;
	margin-right: -7px;
	}

	.col-3 .single-image
	{
	width: 50%;
	padding: 7px;
	}

	.single-column
	{
	width: 50%;
	padding-right: 15px;
	box-sizing: border-box;
	}

	.single-column + .single-column
	{margin: 0;}

	.slideshow
	{margin: 0 0 100px;}

	.pdf-half
	{
	display: block;
	margin: auto;
	}

	.col-2
	{
	margin-left: -7px;
	margin-right: -7px;
	}

	.col-2 .single-image
	{padding: 7px;}

	.col-5
	{
	margin-left: -7px;
	margin-right: -7px;
	}

	.col-5 .single-image
	{
	width: 33.33%;
	padding: 7px;
	}

}



/*
 * Legal Disclaimer for Web licence
 *
 * Licence to use self-hosted webfonts for displaying dynamic text on specified website domains. Our package includes WOFF and WOFF2 font formats.
 *
 * Should the license page views limit be exceeded the license holder will be required to contact Lineto.com for an upgrade.
 * 
 * It is strictly prohibited to rename the font and to download or use these fonts in any other media. 
 * 
 * These Web fonts are licensed exclusively for the use on the following domain(s) and their subdomains:
 *
 * www.kinoarmata.org (monthly pageviews: <50K)
 *
 */


/* Weekly Program Styles */
.weekly-program {
	margin-bottom: 40px;
}

/* Fixed date + time columns so every title starts at the same x,
   regardless of how wide the weekday label is (e.g. "Mon 01.06" vs "Wed 03.06"). */
.weekly-program .element-hold.programme-js {
	display: grid;
	/* NB: body has font-size:0, so em units collapse to 0 here — use px. */
	grid-template-columns: 115px 75px 1fr;   /* date | time | title */
	column-gap: 10px;
	align-items: baseline;
}

.weekly-program .element        { margin-top: 0; }
.weekly-program .element.day    { grid-column: 1; width: auto; }
.weekly-program .element.time   { grid-column: 2; width: auto; }
.weekly-program .element.title  { grid-column: 3; width: auto; }
.weekly-program .element.tags   { display: none; }   /* always empty on the homepage */

/* Mobile: stack the date above the title so the fixed columns never crowd. */
@media (max-width: 900px) {
	.weekly-program .element-hold.programme-js {
		display: block;
	}
	.weekly-program .element {
		display: inline-block;
	}
	.weekly-program .element.day {
		display: block;
		width: auto;
		margin-bottom: 4px;
	}
	.weekly-program .element.time {
		width: auto;
		margin-right: 8px;
	}
	.weekly-program .element.title {
		display: inline;
		width: auto;
	}
}

.sp-hold {
	position: relative;
}

.synopsis-hover {
	display: none;
	position: absolute;
	left: 0;
	top: 100%;
	width: 100%;
	background-color: #f0f0f0;
	padding: 15px;
	box-sizing: border-box;
	z-index: 100;
	font-size: 15px;
	line-height: 1.4;
	color: #000;
	border: 1px solid #000;
	box-shadow: 0 4px 6px rgba(0,0,0,0.1);
	margin-top: -1px; /* Align with border */
}

/* Show synopsis on hover */
.sp-hold:hover .synopsis-hover {
	display: block;
}

/* Adjust synopsis for mobile if needed, or keep hidden/tap to show */
@media (max-width: 900px) {
	.synopsis-hover {
		position: static;
		width: auto;
		margin-top: 10px;
		border: none;
		border-top: 1px solid #000;
		box-shadow: none;
		background: none;
		padding: 10px 0;
	}
}

/* Default project-side treatment (Neo_School look). Per-entry injectProjectStyles
   overrides these when an entry sets background_color / text_color / border_color. */
body.project-side { background-color: #000000; }

.right-side.project-side { background-color: #000000; }

.right-text.project-text,
.right-text.project-text a,
.right-text.project-text svg,
.project-side .right-text,
.project-side .right-text a,
.project-side .right-text svg { color: #FFFFFF; fill: #FFFFFF; }

.right-border.project-border,
.project-text .right-border,
.project-text .right-border a,
.project-side .border-color,
.project-side .border-color a { border-color: #FFFFFF; }

.right-side .project-border .subscribe input::placeholder,
.right-side .project-border .subscribe input:focus::placeholder,
.project-side .subscribe input::placeholder,
.project-side .subscribe input:focus::placeholder { color: #FFFFFF; }

.right-text.project-text .lang,
.project-side .lang { background-color: #FFFFFF; color: #000000; }

.right-text.project-text .article p a,
.project-side .article p a { border-color: #FFFFFF; }

body.project-side::-webkit-scrollbar-track { background: #000000; }
body.project-side::-webkit-scrollbar { background: #000000; width: 7px; }
body.project-side::-webkit-scrollbar-thumb { background: #FFFFFF; }

.project-side .buttons a.button { color: #000000; background: #FFFFFF; }
.project-side .disclaimer { color: #FFFFFF; border-color: #FFFFFF; }
.project-side .slideshow-caption { background: #000000; }

.right-side.project-side .all-menu-elements a:hover { color: #000000; background: #FFFFFF; }
.project-side .secondary .single-programme { border-color: #FFFFFF; }
.project-side .sp-hold:not(.sp-open):hover { background-color: #FFFFFF; }
.project-side .sp-hold:not(.sp-open):hover .single-programme .element { color: #000000; }
