@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Darker+Grotesque:wght@300..900&display=swap');
@import url('https://fonts.cdnfonts.com/css/mona-sans');

:root {
	/*--font-title: "Darker Grotesque", sans-serif;*/
	--font-title: "Mona-Sans", sans-serif;
	--font-body: "Darker Grotesque", sans-serif;
	--transition: all .5s ease-in-out;
}
/* custom scrollbar */
html{
	scroll-behavior: smooth;
}
* {
  scrollbar-color: #000 transparent;
  scrollbar-width: thin;
}
::-webkit-scrollbar {
  width: 4px;
}
::-webkit-scrollbar-track {
  background: #fff; 
}
/* Handle */
::-webkit-scrollbar-thumb {
  background: #000; 
  border-radius: 4px;
}
/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
  background: red; 
}
/* custom scrollbar end */
.scrollToTop{
  z-index: 999;
  position: fixed;
  right: 4rem;
  bottom: 2rem;
  transform: rotate(45deg);
  width: 35px;
  height: 35px;
  border-top: 0.5em solid var(--bs-body-color);
  border-left: 0.5em solid var(--bs-body-color);
  transition: var(--transition);
}
.goBack {
  display: flex;
  margin: 25px 0px 25px 10px;
  transform: rotate(-45deg);
  width: 35px;
  height: 35px;
  border-top: 0.5em solid var(--bs-body-color);
  border-left: 0.5em solid var(--bs-body-color);
  transition: var(--transition);
}
.scrollToTop:hover,
.goBack:hover{
	filter: drop-shadow(1.5rem 1.5rem);
}
a{
	text-decoration: none;
	color: inherit;
}
a[href="https://www.ao-norte.com"],
a[href="https://www.cm-viana-castelo.pt"],
a[href="https://www.publisitio.eu"],
a[href="https://g9.pt/"]{
  font-weight: 700;
  transition: var(--transition);
}
a[href="https://www.ao-norte.com"]:hover,
a[href="https://www.cm-viana-castelo.pt"]:hover,
a[href="https://www.publisitio.eu"]:hover,
a[href="https://g9.pt/"]:hover {
  opacity: .5 ;
}
.link-hover{
	transition: var(--transition);
	text-decoration: underline;
	font-weight: 700;

	&:hover{
		opacity: .5;
	}
}
body{
	font: normal 500 28px/110% var(--font-body), sans-serif;
	margin: 0 2rem;
	color: var(--bs-body-color);
}
@media screen and (max-width: 768px) {
	body{
		font: normal 400 26px/100% var(--font-body), sans-serif;
		margin: 0 .5rem;
	}
}

section{
	border-radius: 5vw;
	padding: 5rem;
	/*margin: 2rem;*/
}
	section:first-of-type{
		border-radius: 0rem;
		padding: 2rem 5rem;
		/*margin: .8rem;*/
	}
	@media screen and (max-width: 768px) {
		section{
			border-radius: 2rem;
			padding: 2rem 1rem;
			margin: .8rem;
		}
		section:first-of-type{
			padding: 1rem 1rem;
    	margin: 0rem;
		}
	}

.calendar{
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	height: 350px;
	padding: 2rem;
	color: var(--bs-body-color);
	overflow: hidden;
	border-radius: 2rem;
}
.calendar_img{
	position: absolute;
	top: 0;
	left: 100%;
	bottom: 0;
	width: 100%;
	height: 100%;
	transition: var(--transition);
}
.calendar_img img{
	width: 100%;
  height: 100%;
	object-fit: cover;
	object-position: center;
	mix-blend-mode: soft-light;
	border-radius: inherit;
}
	.calendar:hover .calendar_img{
		width: 100%;
		left: 0%;
	}
.calendar_title{
  font-weight: 400;
  line-height: 1;
  font-family: var(--font-title);
  color: var(--bs-body-color);

		& span{
		  display: block;
		}
		& span + span{
  		font-size: 1.5rem;
  	}
	}
	.calendar_date{
		font-size: 2.1rem;
		font-weight: 700;
		font-family: var(--font-title);
	}
	.calendar_date span{
		font-weight: 300;
	}
	.calendar_month{
		font-family: var(--font-title);
		font-weight: 300;
		display: block;
		font-size: 1.5rem;
		margin-top: -10px;
	}
	.calendar_local{
		font-size: 1.2rem;
		font-weight: 400;
		line-height: 0.8;
	}
		@media screen and (max-width: 768px) {
			.calendar{
				height: 280px;
			}
		}

.page_header{
	position: relative;
	margin-bottom: 6vh;
	justify-content: space-between;
	align-items: flex-end;
}
	.page_date{
	  font-size: 5rem;
	  font-family: var(--font-title);
	  width: min-content;
	  line-height: .8;

		& span{
			font-size: 2rem;
		}

		@media screen and (max-width: 768px) {
			font-size: 3rem;
		}
	}
	.page_local{
		font-size: 1rem;
		font-family: var(--font-title);
		line-height: 1;
		text-align: right;

		span{
			display: flex;
			justify-content: flex-end;
			font-size: 2rem;
			margin-bottom: .5rem;
			margin-right: .5rem;
		}
	}
	.page_title{
		font-size: calc(100% + 3vw); /*calc(2.375rem + 1.5vw) */;
		font-family: var(--font-title);
	  font-weight: 400;
	  line-height: .85;
	  margin: 0;
	}	
		.page_title span{
			display: block;
		}
hr{
	margin: 0;
	opacity: 1;
}
.vertical-divider{
	background: #000;
	width: 1px;
	padding: 0;
}
	@media screen and (max-width: 768px) {
		.vertical-divider {
		  background: #000;
		  width: 90%;
		  padding: 0;
		  height: 1px;
		  margin: 2rem auto;
		}
	}
/* arrow */
.graphic-elemt{
	position: absolute;
  top: -25%;
  left: 0;
  width: 50%;
  mix-blend-mode: difference;
	/*display: block;
	flex: 0 0 33.33333333%;
	padding: 3rem;
	z-index: 999;
	mix-blend-mode: difference;*/
}
.page_program{
	list-style: none;
	padding: 0;
	font-size: 3.2vh;
}
	/*.page_program li .page_program_event{
		font-variation-settings: "wght" 800;
	}*/
	.page_program li a{
		display: flex;
		justify-content: space-between;
		border-top: 1px solid #000;
		padding: 2rem 0;
		text-align: left;

		&:hover .page_program_event{
			text-decoration: underline;
			text-underline-offset: 5px;
			text-decoration-color: currentColor;
			text-decoration-thickness: .2rem;
		}
	}
		.page_program_date{
			flex: 0 0 10%;
			font-weight: 800;
		}
		.page_program_activity{
			flex: 0 0 15%;
		}
		.page_program_event{
			flex: 0 0 45%;
			text-wrap: balance;
			font-variation-settings: "wght" 800;
			text-decoration-thickness: 0rem;
			transition: var(--transition);
		}
		.page_program_local{
			flex: 0 0 25%;
		}

		@media screen and (max-width: 768px) {
			.page_local{
				margin-top: 1rem;
				line-height: 1;
				display: flex;
    		flex: 1 0 100%;
			}
			.page_program li a{
				justify-content: flex-start;
				flex-direction: column;
			}
			/* select all class starting with page_program_ */
			[class^="page_program_"] {
				width: 100%;
			}
		}

/* buttons / links */
.link-group{
	margin: 2rem 0;
	padding: 0;
}
.link-group li{
	display: block;
	margin: 1rem 0;
}
.link-group li a{
	display: block;
	font-size: calc(1.6rem + 1.1vw);
	font-family: var(--font-title);
	padding: 1rem;
	transition: var(--transition);
	text-decoration: none;
	border-left: 1px solid #000;

	& span{
		font-weight: normal;
		font-size: 50%;
	}

	& .disabled{
		pointer-events: none;
  	cursor: default;
	}
}
.link-group li a:hover{
	padding-left: 4rem;
}
.highlight-block{
	position: relative;
	border: 4px solid currentColor;
  border-radius: 20px;
  padding: 15px 20px 20px;
  color: var(--bs-body-color);
  display: inline-block;
  mix-blend-mode: luminosity;
  line-height: 1;
  /*box-shadow: 
	  0px 5.7px 8.6px hsl(0deg 0% 0% / 0.07), 
	  0px 11px 16.5px hsl(0deg 0% 0% / 0.15), 
	  0px 19.6px 29.4px hsl(0deg 0% 0% / 0.22), 
	  0px 34.5px 51.8px hsl(0deg 0% 0% / 0.29);*/
}
.main-font{
	font-family: var(--font-title);
	font-weight: 400;
}
.eng{
	font-size: .775em;
	line-height: 100%;
	color: #6c6c6c;
	padding: 3rem;
	text-align: justify;
  text-justify: inter-word;
  text-align-last: start;
  hyphens: auto;

  & h1{
  	text-align: left;
  	font-weight: 700;
  }
}
.gal{
	color: #6c6c6c;
}
.txt-balance{
	text-wrap: balance;
}
.lh-0{
	line-height: .9;
}
.bio-id{
	font-family: var(--font-title);
  letter-spacing: -1.5px;
  line-height: 1;
}
.bio-note{
	margin-bottom: 0rem;
  line-height: inherit;
  text-align: justify;
  text-justify: inter-word;
  text-align-last: start;
  hyphens: auto;
}
.bio-note-sm-txt{
	font-size: 1.5rem !important;
	line-height: 1 !important;
}
/*
.bio-note-eng{
	font-size: .775em;
	line-height: 1;
	margin: 1rem 0 0 0;
	padding: 0 .75rem;
	color: #6c6c6c;
}*/
.bio-pic{
	position: relative;
  aspect-ratio: 1 /1;
  margin-bottom: 1rem;
  /*height: 100%;
  width: auto;*/
}
.bio-pic img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  border-radius: 2.5rem;
  filter: grayscale(1);
}
.bio-pic .photo_credtis {
  position: absolute;
  bottom: 50px;
  right: -23px;
  margin-right: -5px;
  transform: rotate(-90deg);
  font-size: 50%;
}
figure{
	position: relative;
	margin: 0;
}
figure img{
	border-radius: 5vw;
	box-shadow: 0px 5.7px 8.6px hsl(0deg 0% 0% / 0.07), 0px 11px 16.5px hsl(0deg 0% 0% / 0.15), 0px 19.6px 29.4px hsl(0deg 0% 0% / 0.22), 0px 34.5px 51.8px hsl(0deg 0% 0% / 0.29);
}
/*figure::before{
	content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: 0px;
  bottom: 0px;
  background: white;
  mix-blend-mode: exclusion;
}*/
figcaption{
	/*background: rgba(0, 0, 0, 0.8);
  right: 5vw;
  bottom: 0;
  position: absolute;
  width: fit-content;*/
  padding: 0.25rem 0.5rem 0.45rem;
  font-size: initial;
  line-height: 1;
  color: #000;
  text-align: right;
  margin-right: 5vw;
}
.esgotado{
	position: fixed;
  right: 37px;
  top: 35%;
  width: 350px;
  z-index: 9;
  padding: 25px;
  background: #231f20;
  border-radius: 2rem 2rem 0 0;
  transform: rotate(-90deg);
  transform-origin: right;

  & img{
  	filter: invert(1);
  }
}
.filme{
	border-radius: 3vw;
	border: 2px solid var(--bs-body-color);
	padding: 3vw;
	margin-bottom: 3rem;
	justify-content: flex-end;

		& .titulo{
			font-family: var(--font-title);
		  font-size: 2.5rem;
		  font-weight: 700;
		  line-height: 1;
		}
		& .ficha{
			font-size: 1.4rem;
		  line-height: 1;
		  font-weight: 400;
		  margin-top: .5rem;
		}

		& .still img{
			margin: 2vh 0;
			border-radius: 2vw;
  		box-shadow: 0px 5.7px 8.6px hsl(0deg 0% 0% / 0.07), 0px 11px 16.5px hsl(0deg 0% 0% / 0.15), 0px 19.6px 29.4px hsl(0deg 0% 0% / 0.22), 0px 34.5px 51.8px hsl(0deg 0% 0% / 0.29);
  		overflow: hidden;
		}
		& .data{
			font-size: 4.0rem;
		  font-family: var(--font-title);
		  line-height: .9;

		  & span{
		  	display: block;
		  	font-size: 2.5rem;
		  }
		}

		& ul{

			& li{
				list-style: none;
				padding-left: 11px;

				&::marker {
					content: url('https://www.encontrosdecinema.pt/img/geral/025/arrow.svg') ' ';
				  font-size: 2.2em;
				  line-height: 0;
				}
			}
		}
}
/* cinema escola mainpage */
.escola-cinema-menu{
	list-style: none;
	padding: 0;
	font-family: var(--font-title);
	font-size: calc(100% + 3vw);
  font-weight: 400;
  line-height: .8;

	& li a{
		display: block;
		padding: 2vh 0;
		margin-left: 60px;
		transition: var(--transition);
		color: dimgray;
		position: relative;

		&::before{
			content: '\2198';
			position: absolute;
			left: 0;
			margin-left: -70px;
			transition: var(--transition);
		}

		&:hover{
			color: #000;
			margin-left: 100px;

			&::before{
				margin-left: -100px;
				transform: rotate(-45deg);
			}
		}
	}
}
li a.disabled{
	color: dimgray;
	pointer-events: none;
	cursor: default;

	&:hover{
		margin-left: 60px;
		
		&::before{
			margin-left: -70px;
			transform: rotate(0deg);
		}
	}
}
/* programa geral + programa olhares frontais */
.programas{

	& h1{
			font-family: var(--font-title);
			font-weight: 600;
			line-height: inherit;
			text-wrap: balance;
			margin: 0;
			line-height: 1;

			& span{
				font-weight: normal;
			}
		}

	& .primeirOlhar_filmes{
		line-height: 1;

		& li{
			margin-bottom: 1rem;
		}

		& h2{
			font-size: 2.2rem;
			font-weight: 700;
			line-height: 1;
			margin-bottom: 0;
		}
	}
}
/* REGULAMENTO */
.regulamento{
	counter-reset: my-sec-counter;
}
.regulamento h1{
	font-family: var(--font-title);
	margin-top: 1.5rem;
	font-weight: normal;
}
.regulamento h1::before{
	counter-increment: my-sec-counter;
  content: counter(my-sec-counter) " . ";
  font-weight: 700;
}
.regulamento li{
	padding: 5px 0;
}
.comissao-cientifica{
	display: flex;
  flex-wrap: wrap;
  list-style-type: none;
  padding: 0;
  gap: 15px;
}
.comissao-cientifica li{
	flex: 1 0 25%;
}
.comissao-cientifica li div + div{
	font-size: 1.2rem;
	line-height: 1;
}
.comissao-cientifica li:last-child{
	flex: 6 0 25%;
}
	@media screen and (max-width: 768px) {
		.comissao-cientifica li{
			flex: 1 0 75%;
		}
	}

/* tables */
.table{
	color: var(--bs-body-color);
}
.table tr{
	border-color: #000;
	border-width: 0 0 1px 0;
}
.table td{
	padding: 2rem 0rem;
}
.table td:first-child{
	width: 10%;
	font-family: var(--font-title);
	font-weight: 700;
	padding-right: 1rem;
}
.table td:nth-child(2) {
		  width: 75%;
		}
.table td:last-child{
	font-size: 1.1rem;
  line-height: 1;
  text-align: right;
  text-wrap: balance;
}
.table tr:last-child{
	border-color: transparent;
}

.table > :not(caption) > * > *{
	background-color: transparent;
	color: inherit;
}

	@media screen and (max-width: 768px) {
		.table th,
		.table td {
		  display: block;
		  border-width: 0;
		  padding: 1rem 0rem;
		}
		.table td:nth-child(2) {
		  width: 100%;
		}
	}
/* tpc */
.tpc-filmes{
	list-style: none;
	margin-top: 2rem;
	text-align: left;
	padding: 0;

	& li{
		padding: .5rem 0;
		font-weight: 700;
	}

	& li:first-child{
		list-style: none;
		font-family: var(--font-title);
		font-size: 2.5rem;
		margin-bottom: 1rem;
		font-weight: 500;
	}

	& li span{
		display: block;
		font-size: 80%;
		line-height: 1;
		font-weight: 500;
	}
}
.acao-filmes{

	& li{
		list-style-position: outside;
		padding: .5rem 0;
		font-weight: 700;
	}

	& li span{
		font-size: 80%;
		font-weight: 500;
		line-height: 1;

		@media screen and (max-width: 768px) {
			display: block;
		}
	}
}
/* acao posters */
.publicacoes ul,
.acao-posters ul{
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	padding: 0;
}
.publicacoes ul li{
	flex: 0 1 calc(100% / 5);
	padding: 15px 15px;
}
.acao-posters ul li{
	flex: calc(100% / 5);
	padding: 15px 15px;
}
.publicacoes ul li:hover img:hover,
.acao-posters ul li:hover img:hover {
  filter: grayscale(0);
  opacity: 1;
  transform: translateY(-10px);
  box-shadow: 0 16px 20px -6px rgba(0, 0, 0, .5);
}
.publicacoes img,
.acao-posters img {
  box-shadow: 0 10px 12px -6px rgba(0,0,0,.9);
  transition: var(--transition);
  filter: grayscale(1);
}
	@media screen and (max-width: 768px) {
		.publicacoes ul li,
		.acao-posters ul li{
			flex: 0 0 50%;
			padding: 10px;
		}
		.publicacoes img,
		.acao-posters img{
			filter: grayscale(0);
		}
	}
ul.equipa{
	padding: 0;
}
ul.equipa li{
	list-style: none;
	display: flex;
	justify-content: space-between;
	font-family: var(--font-title);
	border-top: 1px solid #000;
	padding: 2.5rem 0;
}
ul.equipa ul {
  flex: 0 0 50%;
  padding: 0;
}
ul.equipa li li{
	border: none;
	padding: 0;
	line-height: 1.2;
	white-space: pre-line;
}
ul.equipa li li span{
	font-size: 60%;
	font-weight: 300;
	display: contents;
}
	@media screen and (max-width: 768px) {
		ul.equipa li{
			display: block;
			font-weight: 600;
		}
		ul.equipa ul li{
		  margin-top: 15px;
		  font-weight: 400;
		}
	}
/* edicoes anteriores */
.edicoes-posters ul{
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	padding: 0;
}
.edicoes-posters ul li{
	flex: 0 0 16.666667%;
	padding: 7.5px 15px;
}
.edicoes-posters ul li:hover img:hover {
  filter: grayscale(0);
  opacity: 1;
  transform: translateY(-10px);
  box-shadow: 0 16px 20px -6px rgba(0, 0, 0, .5);
}
.edicoes-posters img {
  box-shadow: 0 10px 12px -6px rgba(0,0,0,.9);
  transition: var(--transition);
  filter: grayscale(1);
}
	@media screen and (max-width: 768px) {
		.edicoes-posters ul li{
			flex: 0 0 50%;
			padding: 10px;
		}
	}
/* parceiros */
.partners h1{
	font-family: var(--font-title);
	margin: 0;
}
.partners img{
	padding: 10px;
}
.partners a{
	transition: var(--transition);

	&:hover{
		opacity: .5;
	}
}
/* imprensa */
.press{
	& ul{
		list-style: none;
		padding: 0;

		& li{
			display: flex;
			flex-wrap: wrap;
			justify-content: space-between;
			border-top: 1px solid #000;
  		padding: 2rem 0;
  		font-size: 2rem;

  		/*@media screen and (max-width: 768px) {
				flex: 0 0 100%;
			}*/
			&:hover a{
  				margin-right: 15px;
  				color: red;
  			}

  		& a{
  			font-variation-settings: "wght" 800;
  			transition: var(--transition);

  			&.disabled{
  				color: #ccc;
  				pointer-events: none;
  				margin-right: 0px;
  			}
  		}
		}
	}
}
/* homepage */
.splash{
	position: relative;
	border-radius: 2rem;
	padding: 5rem;
	margin: .8rem 0;
	background: #a0d9f6;
	/*
	background: linear-gradient(
							to right,
							#e3816b 50%, burlywood 50%);
	*/
	height: 100vh;
	overflow-x: clip;
}
.splash_date{
	font-family: var(--font-title);
	font-weight: 700;
	color: #fff;
	font-size: calc(2.575rem + 1.8vw);
	line-height: 0.8;
}
	.splash_date span{
		font-weight: 400;
	}
.splash_img{
	position: absolute;
  bottom: 10vh;
  right: 0;
  height: 100%;	
}
.splash_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center right;
  filter: drop-shadow(-6px 0px 0 #fff);
}
	@media screen and (max-width: 768px) {
		.splash{
			border-radius: 2rem;
			padding: 2rem;
			margin: .8rem;
			height: 120vh;
		}
		.splash_img{
			bottom: 0;
		  right: 0;
		  height: 70vh;
		  margin: auto;
		  top: 15vh;
		  left: 4vw;
		}
		.splash_img img {
		  object-position: bottom left;
		  filter: drop-shadow(-4px 0px 0 #fff);
		}
	}

/* FX */
.img-shadow {
  position: relative;
  z-index: 1;
  box-shadow: 0px 5.7px 8.6px hsl(0deg 0% 0% / 0.07), 0px 11px 16.5px hsl(0deg 0% 0% / 0.15), 0px 19.6px 29.4px hsl(0deg 0% 0% / 0.22), 0px 34.5px 51.8px hsl(0deg 0% 0% / 0.29);
}
/* imagem filters */
.fx-multiply{
	mix-blend-mode: multiply;
}
.fx-overlay{
	mix-blend-mode: overlay;
}
.border-full{
	width: 100%;
	border: 1px solid #000;
	border-radius: 2rem;
	padding: 2rem;
}
	.border-full .link-group{
		margin: 0;
	}
/* colors */
.festival{
	border: 1px solid #000;
	background: #fff;
}
.olharesFrontais{
	background: #defbce;
}
.acao{
	background: #fef200/*#cfe0ff*/;
}
.primeirOlhar{
	background: #f5f5dc;
}
.conferencia{
	background: #ffe4c4;
}
.antropologia{
	background: #f2c1f4;
}
.escola-cinema{
	background: #d7f3fa;
}
.oficinas{
	background: #d6f05b;
}
.oficina-valter{
	background: #95B9C7;
}
.historias{
	background: #e8e186;
}
.tpc{
	background: #e9edc9;
}
.formacao{
	background: #dbccb9 /*antiquewhite*/;
}
.ods{
	background: #edfff3;
}
.autobiografias{
	background: #f7ef7d;
}
.forum{
	background: #fbc58b;
}
.luso-galaico{
	background: #fdffc2;
}
.filmedaminhavida{
	background: #ffd05e;
}
.exposicoes{
	background: #EAE9E9 /*#9BE87D*/;
}
.credits{
	font-size: 13px;
}
.footer{
	position: relative;
	font-family: var(--font-title);
	font-weight: 400;
	padding: 5rem;
}
.footer h1{
	font-size: 1rem;
}
.footer p{
	font-size: 1rem;
}
.footer-menu{
	list-style: none;
	margin: 0;
	padding: 0;
}
.footer-menu li{
	padding: .25rem 0;
}
.footer-menu li a{
	position: relative;
	display: block;
	overflow: hidden;

	&.disabled{
		pointer-events: none;
		opacity: .5;
	}
}
.footer-menu li a:after{
	content: attr(data-link-en);
	font-weight: 600;
	display: inline;
  position: absolute;
  transition: top 500ms ease-in-out;
  top: 100%;
  left: 0;
  color: #000;
  letter-spacing: -1.1px;
}
.footer-menu li a:hover::after{
	top: 0;
}
.footer-menu li a span{
  display: block;
  transition: transform 500ms ease-in-out;
}
.footer-menu li a:hover span{
	transform: translateY(-100%);
}
	@media screen and (max-width: 768px) {
		.footer{
			padding: 2rem;
		}
	}

.footer-organizacao{
	display: flex;
	flex-wrap: wrap;
	margin: 4rem 0;
	gap: 15px;
}
.footer-organizacao ul{
	list-style: none;
	padding: 0;
}
.footer-organizacao ul li:first-child{
	display: block;
	font-size: .75rem;
}
.footer-organizacao ul li{
	display: inline-block;
}
.footer-organizacao ul:nth-child(2) li a{
	display: block;
	margin: .5rem;
}

.navbar{
	z-index: 3;
	--bs-navbar-nav-link-padding-x: 0.4rem;
}
.navbar .nav-item a{
	font-family: var(--font-title);
	font-size: 1.0rem; /*1.5rem;*/
}
.dropdown-item,
.nav-link{
	font-weight: 600;
	color: #000;

		@media screen and (max-width: 768px) {
			white-space: wrap;
		}
}
.dropdown-item:hover,
.nav-link:hover{
	color: #e27676;
	background-color: transparent;
}
.dropdown-menu{
	border-color: #000;
}
/* bootstrap override */
.mt-n1 { margin-top: -0.25rem !important; }
.mt-n2 { margin-top: -0.5rem !important; }
.mt-n3 { margin-top: -1rem !important; }
.mt-n4 { margin-top: -1.5rem !important; }
.mt-n5 { margin-top: -3rem !important; }
/*
.dropdown-toggle::after {
  margin-left: 0em;
  vertical-align: 0.155em;
}*/

/* forms */
.form-control {
  font-size: 1.4rem;
}
form h1 span{
	display: block;
	font-size: 80%;
}
label {
  margin: 0.5rem 0;
}
label span{
	display: block;
}
input, textarea {
  border: 1px solid var(--bs-body-color) !important;
  outline: 0;
  border-radius: 10px !important;
  padding: 10px !important;
  background-color: transparent !important;
}
.required .control-label::after {
  content: "*";
  color: red;
}
.required-asterisk{
	color: red;
}
input[type=submit] {
  border: 4px solid var(--bs-body-color) !important;
  padding: 1rem 2rem !important;
  cursor: pointer;
  animation: pulse 2s infinite;
  font-weight: bold;
  transition: var(--transition);
  background: var(--bs-body-color) !important;
  color: #fff;

  &:hover{
  	background: transparent !important;
  	color: var(--bs-body-color);
  }
}
	@keyframes pulse {
		0% {
			transform: scale(1);
			box-shadow: 0 0 0 0 rgba(0,0,0, 0.5);
		}
		75% {
			transform: scale(1);
			box-shadow: 0 0 0 15px rgba(0,0,0, 0);
		}
		100% {
			transform: scale(1);
			box-shadow: 0 0 0 0 rgba(0,0,0, 0);
		}
	}

details {
  width: 100%;
  overflow: hidden;
}
	details:open p,
	details:open ul,
	details:open div {
	  animation: animateDown 0.5s linear forwards;
	}
/*
	details[open] p,
	details[open] ul,
	details[open] div {
	  animation: animateDown 0.5s linear forwards;
	}
*/
	@keyframes animateDown {
	  0% {
	    opacity: 0;
	    transform: translatey(-15px);
	  }
	  100% {
	    opacity: 1;
	    transform: translatey(0);
	  }
	}

	details[open] summary:has(h1){
		opacity: 1;
	}
summary {
  list-style: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px 0px;
  font-weight: bold;
  transition: 0.5s;
}
summary{
	opacity: .5;
}
summary:hover{
  opacity: 1;
}
summary::after {
  content: '';
  width: 18px;
  height: 10px;
  background: url('https://encontrosdecinema.pt/img/geral/details-arrow.svg') no-repeat center;
  background-size: cover;
  transition: 0.5s;
}
summary h1{
	font-family: var(--font-title);
	width: 95%;
}

/* THE MAGIC */
details[open] > summary::after {
  transform: rotate(180deg);
}
details summary::-webkit-details-marker {
  display: none;
}
.vencedores-acao-categoria{
	font-family: var(--font-title);
	font-size: 1.8rem;
	
	& span{
		display: block;
	}
}
.vencedores-acao-filme{
	font-family: var(--font-title);
	font-size: 2.5rem;
	font-weight: 700;
	line-height: 1;
}
.vencedores-acao-autores{
	font-family: var(--font-title);
	font-size: 1.1rem;
	line-height: 1;
	margin-top: .5rem;
	font-weight: 400;
}
.juriVencedores {
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  padding: 5px 0 13px;
  margin-bottom: 25px;
  display: inline-block;
}
  @media screen and (max-width: 800px){

  }

  .form-check-input:checked[type="checkbox"],
  .form-check-input:checked[type="radio"]{
  	filter: invert(100%) brightness(0%);
  }
  .form-control:focus {
	  box-shadow: 0 0 0 .25rem rgba(10, 11, 11, 0.25);
	}