
/****************************/
/********** EVENTS **********/
/****************************/

.filtro_events {
	margin-top:45px;
	margin-bottom:75px;
	padding:30px;
	background-color:#f4f3f3;
	text-align:center;
	font-size:0;
}

.filtro_events a {
	display:inline-block;
	position:relative;
	font-size:16px;
	color:#060606;
	font-weight:bold;
	text-transform:uppercase;
	padding:0 25px 20px;
}
.filtro_events a::after {
	content:"";
	height:0;
	width:0;
	border-top:4px solid #a83134;
	border-left:4px solid transparent;
	border-right:4px solid transparent;
	position:absolute;
	bottom:0;
	left:0;right:0;
	margin:auto;
	opacity:0;
	transition:all .2s ease-in-out;
}
.filtro_events a:hover, .filtro_events a.ativo {
	color:#a83134;
}
.filtro_events a.ativo::after {
	opacity:1;
}

.listagem_events > div {
	display:flex;
	padding-bottom:20px;
	border-bottom:1px solid #ebeaea;
	margin-bottom:40px;
}
.listagem_events > div img {
	width:70px;
	padding-right:35px;
	height:35px;
}
.listagem_events > div .article-image {
	width:210px;
	padding-right:35px;
}
.listagem_events > div .article-image > img {
	height:auto;
	width:100%;
	padding:0;
}

.listagem_events > div .descricao {
	flex:1;
}
.listagem_events > div .descricao span {
	color:#a8a6a6;
	text-transform:uppercase;
	font-size:14px;
	font-weight:bold;
}
.listagem_events > div .descricao h2 {
	color:#1f1f1f;
	font-size:24px;
	margin-top:10px;
	margin-bottom:20px;
	line-height:1.25;
}
.listagem_events > div .descricao p {
	color:#6e6d6d;
	font-size:16px;
	margin:0;
}
.listagem_events > div .descricao a.readmore {
	margin-top:25px;
	margin-bottom:0;
}


@media(max-width:767px) {
	.listagem_events > div {
		display:block;
	}
	
	.listagem_events > div > img {
		width:auto;
		margin-bottom:25px;
	}
	.listagem_events > div .article-image {
		width:100%;
		padding:0;
		padding-bottom:25px;
	}
}


/**************************************/
/********** ARTICLES / BOOKS **********/
/**************************************/

.listagem_books > div .descricao h2 {
	margin-top:0;
	margin-bottom:30px;
}

.listagem_books > div .descricao label {
	display:inline-block;
	font-size:16px;
	font-weight:500;
	margin-bottom:2px;
}
.listagem_books > div .descricao span {
	display:inline-block;
	font-size:16px;
	font-weight:400;
	text-transform:none;
}
.listagem_books > div .descricao span.ano {
	display:block;
	font-size:16px;
	font-weight:bold;
	color:#a8a6a6;
	margin-bottom:2px;
}
.listagem_books > div .descricao span.ano + h2 {
	margin-bottom:5px;
}


.listagem_books > div .descricao p {
	margin-bottom:25px;
	line-height:1.5em;
}
.listagem_books > div .descricao p b {
	color:black;
}

.listagem_books > div .descricao .more_info {
	color:#a83134;
	font-weight:500;
	margin-bottom:25px;
	font-size:16px;
	display:block;
}


/**********************************/
/********** PUBLICATIONS **********/
/**********************************/

.listagem_items {
	display:flex;
	flex-wrap:wrap;
	margin-bottom:50px;
}
.listagem_items::before, .listagem_items::after {
	display:none;
}

.listagem_items .pesq-titulo {
	margin-bottom:20px;
}


/***********************************/
/********** BARRA LATERAL **********/
/***********************************/

.lateral .zona_calendario {
	background-color:#f4f3f3;
	padding:5px 30px 100px;
	margin-top:40px;
}
/*.lateral .zona_calendario .fc-icon-right-single-arrow:after, .lateral .zona_calendario .fc-icon-left-single-arrow:after {
	top:-6px !important;
}*/

.lateral .box {
	padding:35px 25px 40px;
	background-color:#f4f3f3;
	margin:40px 0;
}
.lateral .box:last-of-type {
	margin-bottom:0;
}
.lateral .box.red {
	background-color:#a83134;
}

.lateral .box p.h2 {
	font-size:20px;
	color:#1f1f1f;
	margin-top:0;
	margin-bottom:25px;
	line-height:1.25
}
.lateral .box.red p.h2 {
	color:white;
}


.lateral .box p {
	color:#6e6d6d;
	font-size:16px;
	margin-bottom:25px;
}

.lateral .box a {
    text-transform: uppercase;
    font-size: 14px;
    letter-spacing: 0.7px;
    padding: 15px;
    display: block;
    color:white;
    font-weight:bold;
	text-align:center;
	position:relative;
}
.lateral .box.red a {
    color:#a83134;
}
.lateral .box a span {
	position:relative;
	z-index:1;
}
.lateral .box a::before {
    content:"";
	position:absolute;
	top:0;bottom:0;
	left:0;right:0;
	border-radius:50px;
	background-color:#a83134;
	transition:all .2s ease-in-out;
}
.lateral .box.red a::before {
	background-color:white;
}
.lateral .box a:hover::before {
    transform:scale(1.05)
}


/**************************/
/********** FORM **********/
/**************************/

form.formulario {
	margin-top:45px;
	position:relative;
	margin-bottom:70px;
}

#header3 form.formulario .row {
	padding:0;
	margin:0 -10px;
}
#header3 form.formulario .row > div {
	padding:0 10px;
	width:50%;
}

form.formulario input, form.formulario textarea {
	display:block;
	border:1px solid #dfdddd;
	width:100%;
	font-size:16px;
	color:#6e6d6d;
	padding:18px 20px;
	margin-bottom:30px;
}
form.formulario textarea {
	resize:none;
	height:200px;
}

form.formulario label {
	display:block;
	font-size:18px;
	color:#1f1f1f;
	margin-bottom:12px;
}

form.formulario input[type='checkbox'] {
	display:none
}
form.formulario input[type='checkbox'] + label {
	display:inline-block;
	width:27px;
	height:27px;
	border:1px solid #dfdddd;
	cursor:pointer;
}
form.formulario input[type='checkbox'] + label::before {
	content:"\f00c";
	font-family:Font Awesome\ 5 Free;
	font-weight:900;
	color:#6e6d6d;
	font-size:16px;
	position:relative;
	left:4px;
	opacity:0;
	transition:all .2s ease-in-out;
}
form.formulario input[type='checkbox']:checked + label::before {
	opacity:1;
}

form.formulario input[type='checkbox'] + label + label {
	display:inline-block;
	color:#6e6d6d;
	font-size:16px;
	padding-left:20px;
	font-weight:400;
}
form.formulario input[type='checkbox'] + label + label a {
	text-decoration:underline;
}
form.formulario input[type='checkbox'] + label + label a:hover {
	text-decoration:none;
}

form.formulario span.required {
	font-size:14px;
	color:rgba(110,109,109,0.61);
	font-style:italic;
	font-weight:300;
	position:absolute;
	margin-top:5px;
	right:0;
}

form.formulario button {
	display:block;
	padding:15px 50px;
	border-radius:25px;
	background-color:#a83134;
	color:white;
	font-weight:bold;
	text-transform:uppercase;
	border:none;
	margin-top:30px;
}
form.formulario button:hover {
    background-color: #7c0c0f;
    color: white;
}


/*******************************/
/********** CONTACTOS **********/
/*******************************/

.morada > div {
	display:flex;
	margin-bottom:50px;
}

.morada > div img {
	width:76px;
	height:51px;
	padding-right:36px;
}
.morada > div div {
	flex:1;
	padding-top:10px;
	font-size:18px;
}

.morada .h3 {
	font-weight:400;
	margin:0;
	line-height:28px;
}
.morada a {
	color:#a83134;
	text-decoration:underline;
}
.morada a:hover {
	text-decoration:none;
}

.morada p:not(.h3) {
	color:#6e6d6d;
	font-size:18px;
	line-height:28px;
	margin:0;
}

.membership {
	margin-top:30px;
	margin-bottom:85px;
}

.membership p a {
	color:#a83134;
	text-decoration:underline;
}

.membership a.button {
	padding:15px 50px;
	background-color:#a83134;
	border-radius:25px;
	font-size:14px;
	letter-spacing:0.7px;
	color:white;
	font-weight:bold;
	text-transform:uppercase;
	margin-top:30px;
	display:inline-block;
}
.membership a.button:hover {
	background-color:#7c0c0f;
}


/********************************/
/********** SWEETALERT **********/
/********************************/

.swal-overlay--show-modal .swal-modal {
	border-radius:0;
}

.swal-title {
	color:#1f1f1f;
}
.swal-text {
	line-height:1.25;
}

.swal-footer {
	text-align:center;
}

.swal-button {
	padding: 15px 40px;
    border-radius: 25px;
    background-color: #a83134;
    color: white;
    font-weight: bold;
    text-transform: uppercase;
    border: none;
}
.swal-button:hover {
    background-color: #7c0c0f;
    color: white;
}
.swal-button:focus {
	outline:none;
	box-shadow:none;
}