@import url('font.css');

:root {
	--color-success: #2DA4A8;
	--color-alert: #F25648;
	--color-error: #F25648;
	--color-accessibility: rgb(0, 48, 135);

	--color-theme: #ffaf19;
	--color-theme-500: #ffaf1988;
	--color-theme-ligther: #bb7a00;

	--color-white: #ffffff;
	--color-gray-100: #f1f1f1;
	--color-gray-200: #F5F6F7;
	--color-gray-300: #ddd;
	--color-gray-400: #999;
	--color-gray-500: #6D6D6D;
	--color-gray-600: #444;
	--color-gray-700: #3a3d3c;
	--color-gray-800: #2D3432;
	--color-gray-850: #1a1d1c;
	--color-gray-900: #202020;
	--color-black: #0f0f0f;

	--color-gray-800-t: #2D3432ec;

	--shadow-light: rgba(0, 0, 0, 0.2) 0px 2px 8px 0px;
	--shadow-medium: rgba(0, 0, 0, 0.1) 3px 4px 8px;
	--shadow-dark: rgba(50, 50, 50, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px;
	--shadow-big: rgba(0, 0, 0, 0.15) 0px 5px 15px 0px;

	--swiper-theme-color: var(--color-theme) !important;

	--tint-theme: brightness(0) saturate(100%) invert(64%) sepia(86%) saturate(734%) hue-rotate(345deg) brightness(106%) contrast(101%);

	/* invert(68%) sepia(98%) saturate(903%) hue-rotate(343deg) brightness(101%) contrast(103%); */

	font-size: calc(.8rem + 0.25vw);
}

body {
	font-family: "Sohne", sans-serif;
	font-weight: 200;
	
	background-color: var(--color-gray-800);
	color: var(--color-gray-100);
	overflow-x: hidden;

	max-width: 100vw;
}

body.dark-mode {
	--color-white: #0f0f0f;
	--color-gray-100: #181818;
	--color-gray-200: #2D3432;
	--color-gray-300: #3a3d3c;
	--color-gray-400: #444;
	--color-gray-500: #6D6D6D;
	--color-gray-600: #999;
	--color-gray-700: #ddd;
	--color-gray-800: #F5F6F7;
	--color-gray-900: #f1f1f1;
	--color-black: #ffffff;

	--color-gray-800-t: #F5F6F7ec;

	font-weight: 300;
}

body.dark-mode .filter-invert{
	filter: invert(1);
}

* {
	margin: 0;
	padding: 0;
}

a {
	color: var(--color-white);
	text-decoration: none;
}

a:hover {
	text-decoration: underline;
}

a.arrow::after{
    content: '';
    display: inline-block;
    width: .75em;
    height: .75em;
    background-image: url('../assets/icon-right.svg');
    filter: var(--tint-theme);
    background-size: contain;
    margin-left: .25em;
	margin-bottom: -.1em;
	opacity: 0;
	transition: opacity	.3s ease;
}

a.arrow:hover::after{
    opacity: 1;
}

ul,
ol {
	list-style: none;
}

b {
	font-weight: 700;
}

	.limited-text{
		max-height: 10em;
		overflow: hidden;
		-webkit-mask-image: linear-gradient(180deg, rgba(0, 0, 0, 1) 60%, rgba(0, 0, 0, .25) 80%, transparent 100%);
		mask-image: linear-gradient(180deg, rgba(0, 0, 0, 1) 60%, rgba(0, 0, 0, .25) 80%, transparent 100%);
		position: relative;
		display: block;
	}
	
	.limited-text-btn-wrap{
		position: relative;
		z-index: 3;
	}
	
	.limited-text-btn{
		display: block;
		font-size: .6rem;
		font-weight: 700;
		text-transform: uppercase;
		padding: .25em 1em;
		background-color: transparent;
		color: var(--color-white);
		border: 1px solid var(--color-white);
		outline: 0;
		cursor: pointer;
		transition: all .3s ease;
		margin: 0 auto;
	}
	.limited-text-btn:hover{
		color: var(--color-black);
		background-color: var(--color-theme);
		border-color: var(--color-theme);
	}
	
	.expo-group-description .limited-text-btn{
		font-size: 0.8rem;
		font-weight: 400;
		text-transform:none;
		padding: .25em 1em;
		margin: 0 auto 0 0;
	}


	
	.limited-text.full{
		max-height: inherit;
		overflow:auto;
		-webkit-mask-image: none;
		mask-image: none;
	}

	.limited-text.full::after{
		display: none;
	}

	.property-value .limited-text-btn{
		margin-bottom: 1.5em;
	}


/* MAIN HEADER */

.banner-gov{
    width: 100%;
    height: 98px;
    grid-column: 1 / -1;
    border: 0;
    outline: 0;
    background: #fff;
    overflow: hidden;
	@media( width < 800px){
		display: none;
	}
}

.header-wrap {
	position: sticky;
	top: 0;
	width: 100%;
	grid-column: 1 / -1;
	display: grid;
	grid-template-columns: subgrid;
	z-index: 10;
}

.wide-container {
    grid-column: 2 / -2;
	@media(width < 800px){
		grid-column: 1 / -1;

	}
}

.full-container {
	grid-column: 1 / -1;
}

.margin-container {
	grid-column: 1 / -1;
	margin-inline: 1.5em;
}

.subgrid-container {
	display: grid;
	grid-template-columns: subgrid;
}

    .video-player{
        position: relative;
    }

    .video-player::before{
        content: '';
        width: 3.5em;
        height: 3.5em;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        background-color: #00000066;
        background-image: url("../assets/video-play.svg");
        background-position: center;
        background-size: cover;
        border-radius: 50% ;
        border: 2px solid #fff;
        backdrop-filter: blur(5px);
        transition: all .3s ease-in-out;
        pointer-events: none;
		z-index: 8;
    }

    .video-player:hover::before{
        width: 4em;
        height: 4em;
    }

.btn{
    padding: .4em .75em .25em .75em;
    cursor: pointer;
    border: var(--color-white) 1px solid;
    color: var(--color-white);
    background: transparent;
	display: inline-flex !important;
	align-items: baseline;
	gap: .5em;
	line-height: 1;
	transition: all .3s ease;
	font-weight: 300;
	text-decoration: none;
}
button.btn{
    padding: .3em .75em .3em .75em;
}

.btn.big{
	font-size: 1.2em;
}
.btn.small{
	font-size: .8em;
}

.btn:hover{
    background: var(--color-white);
    color: var(--color-gray-900);
	text-decoration: none;
}

	.btn.color-theme{
		border-color: var(--color-theme);
		color: var(--color-theme);
	}
	
	.btn.color-theme:hover{
		background: var(--color-theme);
		color: var(--color-gray-900);
	}
	
	.btn.bgcolor-theme{
		border-color: var(--color-theme);
		background: var(--color-theme);
		color: var(--color-gray-900);
	}
	
	.btn.bgcolor-theme:hover{
		opacity: .8;
	}
	
	.btn.bgcolor-theme.hover-shadow:hover{
		opacity: 1;
		box-shadow: rgba(0, 0, 0, 0.19) 0px 10px 20px, rgba(0, 0, 0, 0.23) 0px 6px 6px;
		transform: translateY(-2px);
	}

	.btn.selected{
		background: var(--color-white);
		color: var(--color-gray-900);
		text-decoration: none;
		cursor: default !important;
	}

    .btn.link::after{
        content: '';
        width: .8em;
        height: .8em;
        display: inline-block;
        background-size: cover;
        background-position: center;
        background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' viewBox='0 0 60 60'><polygon points='51.72 26.43 34.19 43.96 34.19 0 25.81 0 25.81 43.96 8.28 26.43 2.36 32.36 30 60 57.64 32.36 51.72 26.43'/></svg>");
        filter:  invert(1) brightness(.1);
    }

	.btn .btn-total{
		font-weight: 600;
		font-size: 0.9em;
	}

	.row-btn{
		display: inline-flex;
		flex-wrap: wrap;
		gap: .5em;
		font-size: .8em;
	}

.btn-top{
	background-color: var(--color-gray-500);
	border: 0;
	width: 3em;
	height: 3em;
	border-radius: 50%;
	position: fixed;
	bottom: 2em;
	right: 2em;
	z-index: 999;
	box-shadow: rgba(0, 0, 0, 0.25) 0px 14px 28px, rgba(0, 0, 0, 0.22) 0px 10px 10px;
	cursor: pointer;
	background-image: url('../assets/icon-up.svg');
    background-size: 70%;
    background-repeat: no-repeat;
    background-position: center;
    transition: all .3s ease;
}
.btn-top:hover{
	background-color: var(--color-theme);
}

.date-formated{
	display: flex;
	gap: .25em;
}
.date-separator::before{
	content:' \2014 ';
}
.date-month{
	text-transform: uppercase;
}


/* MAIN */

main {
	grid-column: 1/-1;
	padding: 3.5rem 0 6rem 0;
	/* min-height: 60vh; */
	margin-inline: 1.5em;
}

main a:hover {
	text-decoration: none;
}

/* ----- SIDE COLUMN --- */

.side-column{
	display: grid;
	grid-template-columns: subgrid;
}

.side-column > header{
	grid-column: 1 / 5;
	margin-bottom: 3em;
    margin-right: 3em;
}
.side-column > section{
	grid-column: 5 / -1;
}
.side-column.narrow > section{
	grid-column: 5 / -3;
}

.side-column > section .header_tools{
    margin-bottom: 2.5em;
}

.side-column .default-landing-text{
    margin-top: 1em;
}
.side-column .default-landing-text p{
    margin-bottom: .75em;
}
.side-column .default-landing-text p b{
    font-weight: 600;
}

@media ( width < 1280px){
	.side-column.narrow > section{
		grid-column: 5 / -2;
	}
}

@media ( width < 1024px){
	.side-column > header{
		grid-column: 1 / -1;
		margin: 0;
	}
	.side-column > section{
		grid-column: 1 / -1;
	}
	.side-column.narrow > section{
		grid-column: 1 / -1;
}
}

.side-column > header{
	position: relative;
}
.side-column > header .list-header-container{
	position: sticky;
	top: 8em;
}
.side-column > header .list-header-container .btn.color-theme{
	margin-top: 1.5em;
}

/* BREADCRUMB */

.breadcrumb {
	background-color: var(--color-gray-800);
	grid-column: 1 / -1;
	display: grid;
	grid-template-columns: subgrid;
	
	display: none;
}

.breadcrumb a {
	color: var(--color-gray-500);
	font-weight: 500;
	text-decoration: none;
	transition: all .3s ease;
}
.breadcrumb a:hover {
	color: var(--color-white);
}

.breadcrumb .trail>*:not(:last-child):after {
	content: '>';
	margin: 0 .5rem;
	color: var(--color-white);
}


/*FOOTER*/

footer {
	grid-column: 1/-1;
	grid-template-columns: subgrid;
	display: grid;
	padding: 2.5em 0 4em 0;
	font-size: .85em;
	font-weight: 500;
	color: var(--color-gray-800);
	background-color: #fff;
}

footer .footer-content{
	display: flex;
	justify-content: space-between;
	gap: 2em;
	margin-top: 2em;
}

footer .footer-info{
	margin-top: 2.5em;
}

footer .footer-menu ul {
	display: flex;
	gap: .15em 1.5em;
}
footer .footer-menu ul li{
	text-align: start;
}
footer .footer-menu ul a{
	color: var(--color-gray-600);
	font-weight: 800;
}
footer .footer-menu ul a:hover{
	color: var(--color-black);
	text-decoration: none;
}
footer .footer-menu ul ul{
	flex-direction: column;
	margin-top: .15em;
}
footer .footer-menu ul ul a{
	font-weight: 300;
	font-size: .9em;
}

@media ( width < 900px){
	footer .footer-content{
		flex-direction: column;
	}
	footer .footer-menu > ul {
		flex-direction: column;
		gap: .75em;
		font-size: 1.25em;
		margin-left: 2em;
		margin-top: .75em;
	}
}

footer .linha-botoes{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-block: 2em 4em;
    gap: 2em 5em;

	@media( width < 800px){
		flex-direction: column;
	}
}
footer .linha-botoes a{
	display: block;
	padding: .5em 1em;
	gap: 3em;
	border-radius: 3em;
	background-color: var(--color-gray-300);
    color: var(--color-gray-600);
    min-width: 10em;
    max-width: 60vw;
	margin-inline: auto;
    text-align: center;
    font-size: 1.25em;
}
footer .linha-botoes a:hover{
	background-color: var(--color-theme);
	color: var(--color-white);
	text-decoration: none;
}

.cookie-notification {
	background-color: #000000dc;
	width: 100%;
	position: fixed;
	grid-template-columns: repeat(12, 1fr);
	bottom: 0;
	left: 0;
	grid-column: 1 / -1;
	color: white;
	padding: 2rem 0;
	font-size: 14px;
	display: grid;
}

.cookie-notification p {
	margin-bottom: 1.25em;
}

.cookie-notification a {
	border: var(--color-theme) 2px solid;
	border-radius: 5px;
	padding: .3rem;
	color: white;
	text-decoration: none;
}

.cookie-notification a:hover {
	background-color: var(--color-theme);
}

#cookie-consent #cookie-main h3 {
	color: #004676
}

#cookie-consent ul.cookie-buttons button {
	background: #004676;
	border: solid 2px #004676;
	color: white;
}
#cookie-consent ul.cookie-buttons button.custom {
	background: white;
	border: solid 2px #004676;
	color: #004676;
}

/* PAGINATION */

.pagination .pagination-prev:before,
.pagination .pagination-next:before {
	font-family: '<';
	line-height: 1em;
}

.pagination .pagination-next:before {
	content: ">";
}

/* -------------------------------------- */

	header .logo a {
		display: inline-flex;
		margin-block: .5em;
	}

	.footer-logo .logo {
		display: inline-flex;
	}

	.logo img {
		display: inline-block;
		height: 1.7em;
		width: auto;
	}

	.logo img.light {
		display: none !important;
	}

	body.dark-mode .logo img.dark {
		display: none !important;
	}
	body.dark-mode .logo img.light {
		display: inline-flex !important;
	}

	.home-links{
		display: flex;
		gap: 1.5em;
		margin-block: 1.5em;
	}

	.home-link{
		position: relative;
		height: 30vh;
		flex-grow: 1;
		background-color: var(--color-gray-900);
		overflow: hidden;
	}
		
	@media (width < 800px){
		.home-links{
			flex-direction: column;
		}
		.home-link{
			flex: auto;
			height: 25vh;
		}
	}

	.home-link::before{
		content: '';
		display: block;
		position: absolute;
		width: 100%;
		height: 100%;
		inset: 0 0 0 0;
		z-index: 2;
		flex-direction: column;
		justify-content: center;
		background: linear-gradient(0deg, rgba(0, 0, 0, .8) 30%, rgba(0, 0, 0, 0) 75%);
	}
	
	.home-link .link-image{
		position: absolute;
		inset: 0 0 0 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
		transition: all .5s ease;
	}
	
	.home-link:hover .link-image{
		scale: 1.05;
	}
	
	.home-link .link-image{
		position: absolute;
		inset: 0 0 0 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
		z-index: 1;
	}
	.home-link .link-body{
		position: absolute;
		bottom: 0;
		right: 0;
		padding: 1.5em;
		width: 75%;
		flex-direction: column;
		align-items: end;
		max-width: 400px;
		text-align: end;
		z-index: 3;
		text-wrap: balance;
	}

	.home-header h2{
		margin-bottom: .35em;
		line-height: 1.1;
	}

	.home-header p{
		font-size: .9em;
	}



    /* SWIPER */


.swiper-wrapper {
	align-items: stretch;
}
.swiper-slide {
	height: 100%;
	margin-block: auto;
}

.swiper-slide a{
    outline: 0;
    display: block;
    margin: 0 auto;
}

.swiper-slide a img{
	-webkit-user-select: none; /* Safari */
	-moz-user-select: none;    /* Firefox */
	-ms-user-select: none;     /* IE 10+ */
	user-select: none;         /* Standard syntax */
}

.swiper-pagination-bullet {
	border-radius: 0 !important;
	width: .6em;
	height: .6em;
}

.swiper-pagination .current-swipe-slide {
	font-weight: 800;
	margin-right: .35em;
}
.swiper-pagination .total-swipe-slide {
	font-size: .75em;
	margin-left: .5em;
}

.swiper-pagination-fraction {
    text-align: right !important;
    padding: .25em 1em;
	box-sizing: border-box;
	bottom: 0 !important;
}

.swiper-pagination-bullets {
    bottom: -1em !important;
}

		.swiper-wrapper-outer {
			position: relative;
		}
		.swiper-wrap{
			position: relative;
			padding-inline: 1px;
			padding-block: .5em;
		}



		.swiper-button-next.swiper-button-disabled,
		.swiper-button-prev.swiper-button-disabled {
			opacity: .15 !important;
		}

		.swiper-arrow-button-prev,
		.swiper-arrow-button-next{
			width: 2rem !important;
			height: 2rem !important;
		}

		.swiper-arrow-button-prev:after, .swiper-rtl .swiper-arrow-button-nest:after {
			content: '' !important;
			width: 100%;
			height: 100%;
			display: block;
			background-image: url('../assets/icon-prev.svg');
			background-position: center;
			background-repeat: no-repeat;
			background-size: contain;
		}
		
		.swiper-arrow-button-next:after, .swiper-rtl .swiper-arrow-button-prev:after {
			content: '' !important;
			width: 100%;
			height: 100%;
			display: block;
			background-image: url('../assets/icon-next.svg');
			background-position: center;
			background-repeat: no-repeat;
			background-size: contain;
		}


		@media (max-width: 800px) {
			.swiper-arrow-button-prev,
			.swiper-arrow-button-next{
				width: 1.5rem !important;
				height: 1.5rem !important;
			}
		}

		/* - Aritcle swiper */
		.gallery-swiper .swiper-wrapper{
			padding-block: .5em;
		}

	/* -- expo -- */

		.swiper.expoSwiper{
			height: 50vh;
			overflow: visible !important;
		}

		.swiper.expoSwiper img{
			max-height: 50vh;
			width: auto;
			height: 100%;
			object-fit: contain;
			display: block;
		}

		.swiper.expoSwiper .swiper-slide{
			width: auto;
			opacity: .25;
			transition: opacity .4s ease;
		}

		.swiper.expoSwiper .swiper-slide.swiper-slide-active {
			opacity: 1;
		}

		.swiper.expoSwiper .swiper-pagination{
			text-align: right !important;
			padding: .25em .75em;
			bottom: 0 !important;
		}

		/* - */

		.swiper.swiperRelated{
			width: 100%;
		}

		.swiper.swiperRelated .swiper-slide{
			--slide-spacing: 20px;
			--slides-per-view: 8;
			width: calc((100% - (var(--slide-spacing) * (var(--slides-per-view) - 1))) / var(--slides-per-view));
			@media( width < 1600px ){ --slides-per-view: 6; }
			@media( width < 1200px ){ --slides-per-view: 5; }
			@media( width < 1024px ){ --slides-per-view: 4; }
			@media( width < 600px ){ --slides-per-view: 3; }
		}

		.swiper.swiperModule {
			    padding-bottom: 1em;
		}

		.swiper.swiperModule .swiper-slide{
			--slide-spacing: 20px;
			--slides-per-view: 6;
			width: calc((100% - (var(--slide-spacing) * (var(--slides-per-view) - 1))) / var(--slides-per-view));
			@media( width < 1600px ){ --slides-per-view: 5; }
			@media( width < 1200px ){ --slides-per-view: 4; }
			@media( width < 1024px ){ --slides-per-view: 3; }
			@media( width < 800px ){ --slides-per-view: 4; }
			@media( width < 600px ){ --slides-per-view: 3; }
			@media( width < 420px ){ --slides-per-view: 2; }
		}

		.swiper-arrow-button-prev{
			left: -2.5rem !important;
			z-index: 9 !important;
			@media (max-width: 800px) { left: -1.5rem !important; }
		}
		.swiper-arrow-button-next{
			right: -2.5rem !important;
			z-index: 9 !important;
			@media (max-width: 800px) { right: -1.5rem !important; }
		}

		.swiperExpo .swiper-arrow-button-prev{
			left: -1.75rem !important;
			@media (max-width: 800px) { left: -1.5rem !important; }
		}
		.swiperExpo .swiper-arrow-button-next{
			right: -1.75rem !important;
			@media (max-width: 800px) { right: -1.5rem !important; }
		}


     /*- */


    .swiper-pagination-bullet {
        opacity: 1 !important;
        background-color: var(--color-gray-600) !important;
    }
    
    .swiper-pagination-bullet-active {
        background-color: var(--color-theme) !important;
    }


	#home-article .swiper {
		width: 100%;
		height: 65vh;
		margin-bottom: 3em;
		overflow: visible;
	}

	#home-article .swiper-wrapper {
		overflow: hidden;
	}

	#home-article .swiper-button-next { right: -1.75rem !important; }
	#home-article .swiper-button-prev { left: -1.75rem !important; }

		#home-article .swiper-slide {
			background: #444;
			position: relative;
			height: 65vh;
			width: 100%;
			overflow: hidden;
		}

		#home-article .swiper-slide::before {
			content: '';
			display: block;
			position: absolute;
			inset: 0 0 0 0;
			z-index: 2;
			background: linear-gradient(-90deg, rgba(0, 0, 0, 0.8) 25%, rgba(0, 0, 0, 0) 95%);
			scale: 1.1;
		}

		#home-article .swiper-slide img {
			display: block;
			width: 100%;
			height: 65vh;
			object-fit: cover;
			position: absolute;
			inset: 0 0 0 0;
			z-index: 1;
		}

		#home-article .swiper-slide .swiper-slide-text-wrap {
			display: block;
			position: absolute;
			z-index: 2;
			top: 4em;
			right: 0;
			margin: 2em 7% 5em 0;
			padding-left: 3em;
			color: var(--color-white);
			width: max(350px, 35%);
		}

		#home-article .swiper-slide .swiper-slide-text-wrap::after {
			content: '';
			width: 1.5em;
			height: 2.9em;
			display: block;
			background-position: center;
			background-repeat: no-repeat;
			background-size: contain;
			background-image: url('../assets/simbol-mlp.svg');
			top: 3px;
			left:0;
			position: absolute;
		}

		@media (width < 800px) {
			#home-article .swiper-slide::before {
				background: linear-gradient(0deg, rgba(0, 0, 0, 0.85) 40%, rgba(0, 0, 0, 0) 95%);
			}
			#home-article .swiper-slide .swiper-slide-text-wrap {
				top: auto;
				bottom: 0;
				width: 65%;
			}
		}

		#home-article .swiper-slide .swiper-slide-text-wrap h3 {
			font-size: 2em;
			line-height: 1.1;
			margin-bottom: 0.5em;
			text-wrap: balance;
		}

		#home-article .swiper-slide .swiper-slide-text-wrap .description{
			font-weight: 200;
			font-size: .9em;
			margin-top: 1em;
			margin-bottom: 1.5em;
		}

		#home-article .swiper-slide .swiper-slide-text-wrap .link a{
			display: inline-block;
			margin-top: 1em;
			background: var(--color-white);
			padding: .5em 1.5em;
			color: var(--color-black);
			text-decoration: none;
			font-weight: 300;
			transition: all .3s ease;
		}

		#home-article .swiper-slide .swiper-slide-text-wrap .link a:hover{
			background: var(--color-theme);
		}



	.swiperExpo{
		overflow: visible !important;
		margin-block: 2.5em 5em;
	}


/* ----- */

	#home-search{
		height: 65vh;
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
	}

	#home-search .home-hero{
		position: absolute;
		inset: 0 0 0 0;
		z-index: 1;
	}

	#home-search .hero-swiper img{
		width: 100%;
		height: 65vh;
		object-fit: cover;
		display: block;
	}

	#home-search .hero-swiper .swiper-slide-caption{
		position: absolute;
		bottom: 1em;
		right: 1.5em;
		z-index: 20;
		font-weight: 600;
		font-size: .8em;
		white-space: nowrap;
	}
	#home-search .hero-swiper .swiper-slide-caption a{
		opacity: .8;
		display: inline;
	}
	#home-search .hero-swiper .swiper-slide-caption .caption-type{
		font-weight: 200;
	}
	#home-search .hero-swiper .swiper-slide-caption a:hover{
		opacity: 1;
		text-decoration: none;
	}

	#home-search .hero-swiper .swiper-slide::before{
		content: '';
		background-color: #00000088;
		inset: 0 0 0 0;
		position: absolute;
		z-index: 2;
	}

/* --- */

.search-form{
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	gap: 3em;
	position: absolute;
	z-index: 3;
	margin: 7.5%;
}
.search-form .search-type-redirect{
	display: flex;
	flex-wrap: wrap;
	gap: 1em;
    justify-content: center;
}

.search-form .search-form-wrap{
    display: flex;
	gap: 1em;
    border: 1px solid var(--color-white);
    width: max(230px, 35vw);
    margin: 0 auto;
    padding: .5em 1em;
    background-color: #00000099;
    justify-content: space-between;
	align-items: center;
}

.search-form .search-form-wrap:has(:focus){
	border: 1px solid var(--color-white);
}

.search-form input[type='text']{
	width: 100%;
	background-color: transparent;
	outline: 0;
	border: 0;
	color: #fff;
	font-size: 1.25em;
}
.search-form button[type='submit']{
	width: 1.5em;
	height: 1.5em;
	background-color: transparent;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj48cGF0aCBmaWxsPSJ3aGl0ZSIgZD0iTTUwNC45NjkgNDcxLjAzMUwzNzAuOTU5IDMzNy4wMjNDMzk5LjA4NCAzMDEuNTQ3IDQxNiAyNTYuNzg1IDQxNiAyMDhDNDE2IDkzLjEyNSAzMjIuODc1IDAgMjA4IDBTMCA5My4xMjUgMCAyMDhTOTMuMTI1IDQxNiAyMDggNDE2QzI1Ni43ODUgNDE2IDMwMS41NDkgMzk5LjA4NiAzMzcuMDIxIDM3MC45NjFMNDcxLjAzMSA1MDQuOTY5QzQ3NS43MTkgNTA5LjY1NiA0ODEuODU5IDUxMiA0ODggNTEyUzUwMC4yODEgNTA5LjY1NiA1MDQuOTY5IDUwNC45NjlDNTE0LjM0NCA0OTUuNTk0IDUxNC4zNDQgNDgwLjQwNiA1MDQuOTY5IDQ3MS4wMzFaTTQ4IDIwOEM0OCAxMTkuNzc3IDExOS43NzUgNDggMjA4IDQ4UzM2OCAxMTkuNzc3IDM2OCAyMDhTMjk2LjIyNSAzNjggMjA4IDM2OFM0OCAyOTYuMjIzIDQ4IDIwOFoiPjwvcGF0aD48L3N2Zz4=);
	border: 0;
	cursor: pointer;
	background-position: center;
    background-repeat: no-repeat;
	flex-shrink: 0;
}

.search-form .search-type{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 1em 5em;
}
.search-form .search-type-wrap{
	display: flex;
	flex-direction: column;
	gap: .5em;
}

.search-form-toggle{
	content: '';
    position: absolute;
    display: block;
    width: 2.1em;
    height: 2.1em;
    background-color: transparent;
    background-image: url(../assets/icon-close.svg);
    border: 0;
    cursor: pointer;
    background-position: center;
    background-repeat: no-repeat;
    top: 7em;
    right: 5em;
	outline: 0;
}

/* -------------- */

.fancybox-caption__body {
    font-size: .9em;
    font-weight: 300;
	padding-inline: 10%;
}
.fancybox-caption__body .caption-link {
    background-color: #ffffff;
	color: #000000 !important;
	text-decoration: none !important;
	display: inline-block;
	padding: .25em .5em 0em .5em;
	margin-top: .25em;
	transition: all .3s ease;
}
.fancybox-caption__body .caption-link:hover {
    background-color: var(--color-theme);
}

/* -------------- */

.section-header{
	position: relative;
	/* width: min(950px, 75vw); */
	width: 100%;
	text-wrap: balance;
}

.section-header h2{
	font-size: 2.1em;
	line-height: 1.1;
	margin-bottom: .2em;
}

.section-header p{
	margin-top: .5em !important;
	font-size: .9em;
	opacity: 0.8;
}

.section-header :not(button) a{
	font-weight: 600;
	text-decoration: underline;
}

.side-btn{
	position: absolute;
	right: 1.5em;
	top: 50%;
	transform: translateY(-50%);
}

/* -------------- */

.home-expo-header-flex{
	display: flex;
	justify-content: space-between;
	align-items: baseline;
}

.home-expo-header-text{
	/* width: min(600px, 60%); */
	/* text-wrap: pretty; */
	width: min(950px, 75vw);
	text-wrap: balance;
}

.home-expo-grid{
	display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 2.5em 1.5em;
	margin-block: 2em 6em;
}

/* ------ */

.card-ExhibitionEvent{
	background-color: transparent;
	width: 100%;
	aspect-ratio: .75;
	position: relative;
	overflow: hidden;
	transition: all .3s ease;
}

.card-ExhibitionEvent:hover{
	box-shadow: rgb(0, 0, 0) 0px 10px 30px -10px;
}

.card-ExhibitionEvent .card_image{
	background-color: transparent;
	width: 100%;
	height: 100%;
	position: absolute;
	inset: 0 0 0 0;
	z-index: 1;
}

.card-ExhibitionEvent .card_image img{
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
	transition: all .75s ease;
}

.card-ExhibitionEvent:hover .card_image img{
	transform: scale(1.1);
}

.card-ExhibitionEvent .card_body{
	width: 100%;
	height: 100%;
	position: absolute;
	inset: 0 0 0 0;
	display: flex;
	flex-direction: column;
	justify-content: end;
	align-items: start;
	padding: 0.75em 1em;
	margin-inline: 0;
	box-sizing: border-box;
	z-index: 3;
}
.card-ExhibitionEvent::after{
	content: '';
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	top : 0;
	left: 0;
	right: 0;
	bottom: -10px;
	z-index: 2;
	flex-direction: column;
	justify-content: center;
    background: linear-gradient(0deg, rgba(0, 0, 0, .8) 40%, rgba(0, 0, 0, 0) 95%);
}

	.card-ExhibitionEvent .card_body .card_type{
		font-size: .6em;
	}
	.card-ExhibitionEvent .card_body .card_title{
		font-size: 1.5em;
		line-height: 1.1;
		color: #fff;
	}
	.card-ExhibitionEvent .card_body .card_subtitle{
		font-size: .8em;
		line-height: 1.2;
	}
	.card-ExhibitionEvent .card_body .card_date{
		margin-top: 2em;
	}


.card-Organization,
.card-Group,
.card-Person,
.card-Language,
.card-Thing{
	display: block !important;
	padding-block: 1.25em;
}

.card-Organization .card_image,
.card-Group .card_image,
.card-Place .card_image,
.card-Person .card_image,
.card-Language .card_image,
.card-Thing .card_image{
	display: none;
}

.card-Organization .card_footer:empty,
.card-Group .card_footer:empty,
.card-Place .card_footer:empty,
.card-Person .card_footer:empty,
.card-Language .card_footer:empty,
.card-Thing .card_footer:empty{
	display: none;
}
	

.card-Place{
    grid-template-rows: 1fr auto !important;
}
.card-Place .card_type{
	margin-top: 1em;
}


/* -------- DIALOG ----- */

       .dialog-overlay {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: var(--color-gray-800-t);
            display: none;
            justify-content: center;
            align-items: center;
            z-index: 1000;

            box-sizing: border-box;
            padding: 2em;
            backdrop-filter: blur(5px);
        }

        .dialog-content {
            background: transparent;
            width: 100%;
            height: 100%;
            overflow: hidden;
        }

        .dialog-content iframe{
            width: 100%;
            height: 100%;
            border: 0;
        }

        .dialog-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 15px;
            display: none;
        }

        .close-btn {
            background: none;
            border: none;
            font-size: 24px;
            cursor: pointer;
            position: absolute;
            top: 0;
            right: 0;
            padding: 0.2em;
            font-size: 2.5em;
            line-height: .5em;
            color: #fff;
            mix-blend-mode: difference;
            filter: saturate(0);
        }

/* -------------------------------------- */

/* ACCESSIBILITY */

.accessibility {
	position: fixed;
	right: 0px;
	bottom: 10%;
	z-index: 10;
	display: flex;
	flex-direction: column;
}


.accessibility button {
	pointer-events: auto;
	padding: 0px;
	display: flex;
	cursor: pointer;
	justify-content: center;
	align-items: center;
	background: var(--color-accessibility);
	width: 38px;
	height: 38px;
	border-style: solid;
	border-color: var(--color-white);
	border-width: 0 0 1px 1px;
}

.accessibility button:first-child {
	border-width: 1px 0 1px 1px;
	border-radius: 12px 0px 0px 0px !important;
}

.accessibility button:last-child {
	border-radius: 0px 0px 0px 12px !important;
}

.access-contrast .light-mode {
	width: 18px !important;
	height: 18px;
	background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2ZXJzaW9uPSIxLjEiIHdpZHRoPSIyNTYiIGhlaWdodD0iMjU2IiB2aWV3Qm94PSIwIDAgMjU2IDI1NiIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+DQogICAgPGcgc3R5bGU9InN0cm9rZTogbm9uZTsgc3Ryb2tlLXdpZHRoOiAwOyBzdHJva2UtZGFzaGFycmF5OiBub25lOyBzdHJva2UtbGluZWNhcDogYnV0dDsgc3Ryb2tlLWxpbmVqb2luOiBtaXRlcjsgc3Ryb2tlLW1pdGVybGltaXQ6IDEwOyBmaWxsOiBub25lOyBmaWxsLXJ1bGU6IG5vbnplcm87IG9wYWNpdHk6IDE7IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxLjQwNjU5MzQwNjU5MzQwMTYgMS40MDY1OTM0MDY1OTM0MDE2KSBzY2FsZSgyLjgxIDIuODEpIj4NCiAgICAgICAgPHBhdGggZD0iTSA4OCA0NyBIIDc3Ljg2NiBjIC0xLjEwNCAwIC0yIC0wLjg5NiAtMiAtMiBzIDAuODk2IC0yIDIgLTIgSCA4OCBjIDEuMTA0IDAgMiAwLjg5NiAyIDIgUyA4OS4xMDQgNDcgODggNDcgeiIgc3R5bGU9InN0cm9rZTogd2hpdGU7IHN0cm9rZS13aWR0aDogMnB4OyBmaWxsOiByZ2IoMjU1LDI1NSwyNTUpOyIgLz4NCiAgICAgICAgPHBhdGggZD0iTSAxMi4xMzQgNDcgSCAyIGMgLTEuMTA0IDAgLTIgLTAuODk2IC0yIC0yIHMgMC44OTYgLTIgMiAtMiBoIDEwLjEzNCBjIDEuMTA0IDAgMiAwLjg5NiAyIDIgUyAxMy4yMzkgNDcgMTIuMTM0IDQ3IHoiIHN0eWxlPSJzdHJva2U6IHdoaXRlOyBzdHJva2Utd2lkdGg6IDJweDsgZmlsbDogcmdiKDI1NSwyNTUsMjU1KTsiIC8+DQogICAgICAgIDxwYXRoIGQ9Ik0gNDUgMTQuMTM0IGMgLTEuMTA0IDAgLTIgLTAuODk2IC0yIC0yIFYgMiBjIDAgLTEuMTA0IDAuODk2IC0yIDIgLTIgcyAyIDAuODk2IDIgMiB2IDEwLjEzNCBDIDQ3IDEzLjIzOSA0Ni4xMDQgMTQuMTM0IDQ1IDE0LjEzNCB6IiBzdHlsZT0ic3Ryb2tlOiB3aGl0ZTsgc3Ryb2tlLXdpZHRoOiAycHg7IGZpbGw6IHJnYigyNTUsMjU1LDI1NSk7IiAvPg0KICAgICAgICA8cGF0aCBkPSJNIDQ1IDkwIGMgLTEuMTA0IDAgLTIgLTAuODk2IC0yIC0yIFYgNzcuODY2IGMgMCAtMS4xMDQgMC44OTYgLTIgMiAtMiBzIDIgMC44OTYgMiAyIFYgODggQyA0NyA4OS4xMDQgNDYuMTA0IDkwIDQ1IDkwIHoiIHN0eWxlPSJzdHJva2U6IHdoaXRlOyBzdHJva2Utd2lkdGg6IDJweDsgZmlsbDogcmdiKDI1NSwyNTUsMjU1KTsiIC8+DQogICAgICAgIDxwYXRoIGQ9Ik0gNzUuNDA1IDc3LjQwNSBjIC0wLjUxMiAwIC0xLjAyMyAtMC4xOTUgLTEuNDE0IC0wLjU4NiBsIC03LjE2NiAtNy4xNjYgYyAtMC43ODEgLTAuNzgxIC0wLjc4MSAtMi4wNDcgMCAtMi44MjggcyAyLjA0NyAtMC43ODEgMi44MjggMCBsIDcuMTY2IDcuMTY2IGMgMC43ODEgMC43ODEgMC43ODEgMi4wNDcgMCAyLjgyOCBDIDc2LjQyOSA3Ny4yMSA3NS45MTcgNzcuNDA1IDc1LjQwNSA3Ny40MDUgeiIgc3R5bGU9InN0cm9rZTogd2hpdGU7IHN0cm9rZS13aWR0aDogMnB4OyBmaWxsOiByZ2IoMjU1LDI1NSwyNTUpOyIgLz4NCiAgICAgICAgPHBhdGggZD0iTSAyMS43NiAyMy43NiBjIC0wLjUxMiAwIC0xLjAyNCAtMC4xOTUgLTEuNDE0IC0wLjU4NiBsIC03LjE2NiAtNy4xNjYgYyAtMC43ODEgLTAuNzgxIC0wLjc4MSAtMi4wNDcgMCAtMi44MjggYyAwLjc4IC0wLjc4MSAyLjA0OCAtMC43ODEgMi44MjggMCBsIDcuMTY2IDcuMTY2IGMgMC43ODEgMC43ODEgMC43ODEgMi4wNDcgMCAyLjgyOCBDIDIyLjc4NCAyMy41NjUgMjIuMjcyIDIzLjc2IDIxLjc2IDIzLjc2IHoiIHN0eWxlPSJzdHJva2U6IHdoaXRlOyBzdHJva2Utd2lkdGg6IDJweDsgZmlsbDogcmdiKDI1NSwyNTUsMjU1KTsiIC8+DQogICAgICAgIDxwYXRoIGQ9Ik0gNjguMjM5IDIzLjc2IGMgLTAuNTEyIDAgLTEuMDIzIC0wLjE5NSAtMS40MTQgLTAuNTg2IGMgLTAuNzgxIC0wLjc4MSAtMC43ODEgLTIuMDQ3IDAgLTIuODI4IGwgNy4xNjYgLTcuMTY2IGMgMC43ODEgLTAuNzgxIDIuMDQ3IC0wLjc4MSAyLjgyOCAwIGMgMC43ODEgMC43ODEgMC43ODEgMi4wNDcgMCAyLjgyOCBsIC03LjE2NiA3LjE2NiBDIDY5LjI2MyAyMy41NjUgNjguNzUxIDIzLjc2IDY4LjIzOSAyMy43NiB6IiBzdHlsZT0ic3Ryb2tlOiB3aGl0ZTsgc3Ryb2tlLXdpZHRoOiAycHg7IGZpbGw6IHJnYigyNTUsMjU1LDI1NSk7IiAvPg0KICAgICAgICA8cGF0aCBkPSJNIDE0LjU5NCA3Ny40MDUgYyAtMC41MTIgMCAtMS4wMjQgLTAuMTk1IC0xLjQxNCAtMC41ODYgYyAtMC43ODEgLTAuNzgxIC0wLjc4MSAtMi4wNDcgMCAtMi44MjggbCA3LjE2NiAtNy4xNjYgYyAwLjc4IC0wLjc4MSAyLjA0OCAtMC43ODEgMi44MjggMCBjIDAuNzgxIDAuNzgxIDAuNzgxIDIuMDQ3IDAgMi44MjggbCAtNy4xNjYgNy4xNjYgQyAxNS42MTggNzcuMjEgMTUuMTA2IDc3LjQwNSAxNC41OTQgNzcuNDA1IHoiIHN0eWxlPSJzdHJva2U6IHdoaXRlOyBzdHJva2Utd2lkdGg6IDJweDsgZmlsbDogcmdiKDI1NSwyNTUsMjU1KTsiIC8+DQogICAgICAgIDxwYXRoIGQ9Ik0gNDUgNjYuMDM1IGMgLTExLjU5OSAwIC0yMS4wMzUgLTkuNDM3IC0yMS4wMzUgLTIxLjAzNSBTIDMzLjQwMSAyMy45NjUgNDUgMjMuOTY1IFMgNjYuMDM1IDMzLjQwMSA2Ni4wMzUgNDUgUyA1Ni41OTkgNjYuMDM1IDQ1IDY2LjAzNSB6IE0gNDUgMjcuOTY1IGMgLTkuMzkzIDAgLTE3LjAzNSA3LjY0MiAtMTcuMDM1IDE3LjAzNSBjIDAgOS4zOTQgNy42NDIgMTcuMDM1IDE3LjAzNSAxNy4wMzUgYyA5LjM5NCAwIDE3LjAzNSAtNy42NDIgMTcuMDM1IC0xNy4wMzUgQyA2Mi4wMzUgMzUuNjA3IDU0LjM5NCAyNy45NjUgNDUgMjcuOTY1IHoiIHN0eWxlPSJzdHJva2U6IHdoaXRlOyBzdHJva2Utd2lkdGg6IDJweDsgZmlsbDogcmdiKDI1NSwyNTUsMjU1KTsiIC8+DQogICAgPC9nPg0KPC9zdmc+);
	background-size: 18px;
}

.access-contrast .dark-mode {
	width: 16px !important;
	height: 16px;
	background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2ZXJzaW9uPSIxLjEiIHdpZHRoPSIyNTYiIGhlaWdodD0iMjU2IiB2aWV3Qm94PSIwIDAgMjU2IDI1NiIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+DQogICAgPGcgc3R5bGU9InN0cm9rZTogbm9uZTsgc3Ryb2tlLXdpZHRoOiAwOyBzdHJva2UtZGFzaGFycmF5OiBub25lOyBzdHJva2UtbGluZWNhcDogYnV0dDsgc3Ryb2tlLWxpbmVqb2luOiBtaXRlcjsgc3Ryb2tlLW1pdGVybGltaXQ6IDEwOyBmaWxsOiBub25lOyBmaWxsLXJ1bGU6IG5vbnplcm87IG9wYWNpdHk6IDE7IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxLjQwNjU5MzQwNjU5MzQwMTYgMS40MDY1OTM0MDY1OTM0MDE2KSBzY2FsZSgyLjgxIDIuODEpIj4NCiAgICAgICAgPHBhdGggZD0iTSA4OS42MzQgNTkuNjgzIGMgLTAuMzM4IC0wLjI3NiAtMC44MTYgLTAuMzAyIC0xLjE4NCAtMC4wNjIgYyAtMTYuNTE0IDEwLjg2NCAtMzguNjYxIDguNTg5IC01Mi42NjEgLTUuNDEgQyAyMS43OSA0MC4yMTIgMTkuNTE1IDE4LjA2NSAzMC4zOCAxLjU1MSBjIDAuMjQgLTAuMzY2IDAuMjE1IC0wLjg0NSAtMC4wNjIgLTEuMTgzIGMgLTAuMjc3IC0wLjMzOSAtMC43NDEgLTAuNDYgLTEuMTQ4IC0wLjI5NCBjIC01LjgyNiAyLjM0OSAtMTEuMDQ4IDUuODA5IC0xNS41MjMgMTAuMjgzIGMgLTE4LjE5NSAxOC4xOTUgLTE4LjE5NSA0Ny44MDIgMCA2NS45OTcgQyAyMi43NDQgODUuNDUxIDM0LjY5NSA5MCA0Ni42NDUgOTAgYyAxMS45NTEgMCAyMy45MDEgLTQuNTQ5IDMyLjk5OSAtMTMuNjQ2IGMgNC40NzUgLTQuNDc2IDcuOTM1IC05LjY5OSAxMC4yODQgLTE1LjUyMyBDIDkwLjA5MSA2MC40MjUgODkuOTcyIDU5Ljk2IDg5LjYzNCA1OS42ODMgeiIgc3R5bGU9InN0cm9rZTogbm9uZTsgc3Ryb2tlLXdpZHRoOiAxOyBzdHJva2UtZGFzaGFycmF5OiBub25lOyBzdHJva2UtbGluZWNhcDogYnV0dDsgc3Ryb2tlLWxpbmVqb2luOiBtaXRlcjsgc3Ryb2tlLW1pdGVybGltaXQ6IDEwOyBmaWxsOiByZ2IoMjU1LDI1NSwyNTUpOyBmaWxsLXJ1bGU6IG5vbnplcm87IG9wYWNpdHk6IDE7IiB0cmFuc2Zvcm09IiBtYXRyaXgoMSAwIDAgMSAwIDApICIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+DQogICAgICAgIDxwYXRoIGQ9Ik0gNzcuMjU0IDQwLjE3IGMgLTQuODk0IC0xLjYzIC04Ljc4OCAtNS41MjUgLTEwLjQyIC0xMC40MTkgYyAtMC4yNyAtMC44MSAtMC45OTIgLTEuMzM0IC0xLjg0MSAtMS4zMzQgYyAtMC44NDggMCAtMS41NzEgMC41MjQgLTEuODQgMS4zMzUgYyAtMS42MzEgNC44OTMgLTUuNTI2IDguNzg3IC0xMC40MTkgMTAuNDE4IGMgLTAuODExIDAuMjcgLTEuMzM0IDAuOTkzIC0xLjMzNCAxLjg0MSBjIDAgMC44NDggMC41MjQgMS41NzEgMS4zMzQgMS44NDEgYyA0Ljg5NCAxLjYzMSA4Ljc4OCA1LjUyNSAxMC40MTggMTAuNDE5IGggMC4wMDEgYyAwLjI3IDAuODExIDAuOTkyIDEuMzM0IDEuODQgMS4zMzQgYyAwLjg0OSAwIDEuNTcyIC0wLjUyNCAxLjg0MSAtMS4zMzQgYyAxLjYzMSAtNC44OTMgNS41MjYgLTguNzg4IDEwLjQxOSAtMTAuNDE5IGMgMC44MTIgLTAuMjcgMS4zMzUgLTAuOTkyIDEuMzM1IC0xLjg0MSBDIDc4LjU4OCA0MS4xNjIgNzguMDY0IDQwLjQzOSA3Ny4yNTQgNDAuMTcgeiIgc3R5bGU9InN0cm9rZTogbm9uZTsgc3Ryb2tlLXdpZHRoOiAxOyBzdHJva2UtZGFzaGFycmF5OiBub25lOyBzdHJva2UtbGluZWNhcDogYnV0dDsgc3Ryb2tlLWxpbmVqb2luOiBtaXRlcjsgc3Ryb2tlLW1pdGVybGltaXQ6IDEwOyBmaWxsOiByZ2IoMjU1LDI1NSwyNTUpOyBmaWxsLXJ1bGU6IG5vbnplcm87IG9wYWNpdHk6IDE7IiB0cmFuc2Zvcm09IiBtYXRyaXgoMSAwIDAgMSAwIDApICIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+DQogICAgICAgIDxwYXRoIGQ9Ik0gODEuNjM1IDExLjU3NyBjIC0yLjU5NyAtMC44NjUgLTQuNjY0IC0yLjkzMiAtNS41MyAtNS41MjkgYyAtMC4yMDggLTAuNjI2IC0wLjc4OSAtMS4wNDYgLTEuNDQ2IC0xLjA0NiBjIC0wLjY1NyAwIC0xLjIzOSAwLjQyMSAtMS40NDggMS4wNDcgYyAtMC44NjQgMi41OTYgLTIuOTMgNC42NjMgLTUuNTI3IDUuNTI4IGMgLTAuNjI2IDAuMjA4IC0xLjA0NyAwLjc4OSAtMS4wNDcgMS40NDYgcyAwLjQyMSAxLjIzOCAxLjA0NiAxLjQ0NiBjIDIuNTk2IDAuODY1IDQuNjYzIDIuOTMyIDUuNTI5IDUuNTI5IGMgMC4yMDggMC42MjUgMC43ODggMS4wNDYgMS40NDUgMS4wNDcgYyAwLjAwMSAwIDAuMDAxIDAgMC4wMDIgMCBjIDAuNjU2IDAgMS4yMzggLTAuNDIxIDEuNDQ2IC0xLjA0NiBjIDAuODY2IC0yLjU5NyAyLjkzMyAtNC42NjQgNS41MyAtNS41MjkgYyAwLjYyNSAtMC4yMDkgMS4wNDYgLTAuNzkgMS4wNDYgLTEuNDQ2IEMgODIuNjgxIDEyLjM2NyA4Mi4yNiAxMS43ODYgODEuNjM1IDExLjU3NyB6IiBzdHlsZT0ic3Ryb2tlOiBub25lOyBzdHJva2Utd2lkdGg6IDE7IHN0cm9rZS1kYXNoYXJyYXk6IG5vbmU7IHN0cm9rZS1saW5lY2FwOiBidXR0OyBzdHJva2UtbGluZWpvaW46IG1pdGVyOyBzdHJva2UtbWl0ZXJsaW1pdDogMTA7IGZpbGw6IHJnYigyNTUsMjU1LDI1NSk7IGZpbGwtcnVsZTogbm9uemVybzsgb3BhY2l0eTogMTsiIHRyYW5zZm9ybT0iIG1hdHJpeCgxIDAgMCAxIDAgMCkgIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz4NCiAgICAgICAgPHBhdGggZD0iTSA1Mi4yNzQgMTguNjg5IGMgLTMuMjMyIC0xLjA3NiAtNS44MDUgLTMuNjQ5IC02Ljg4MiAtNi44ODEgYyAtMC4yMjQgLTAuNjc0IC0wLjg0OSAtMS4xMjYgLTEuNTU2IC0xLjEyNiBjIC0wLjcwNiAwIC0xLjMzMSAwLjQ1MyAtMS41NTYgMS4xMjYgYyAtMS4wNzcgMy4yMzIgLTMuNjQ5IDUuODA0IC02Ljg4MSA2Ljg4MSBjIC0wLjY3NCAwLjIyNCAtMS4xMjYgMC44NDkgLTEuMTI2IDEuNTU2IHMgMC40NTMgMS4zMzEgMS4xMjYgMS41NTYgYyAzLjIzMiAxLjA3NyA1LjgwNSAzLjY1IDYuODgxIDYuODgyIGMgMC4yMjQgMC42NzQgMC44NDkgMS4xMjYgMS41NTYgMS4xMjYgYyAwLjcwNiAwIDEuMzMxIC0wLjQ1MyAxLjU1NiAtMS4xMjYgYyAxLjA3NyAtMy4yMzIgMy42NDkgLTUuODA1IDYuODgxIC02Ljg4MiBjIDAuNjc0IC0wLjIyNCAxLjEyNyAtMC44NDkgMS4xMjcgLTEuNTU2IFMgNTIuOTQ3IDE4LjkxMyA1Mi4yNzQgMTguNjg5IHoiIHN0eWxlPSJzdHJva2U6IG5vbmU7IHN0cm9rZS13aWR0aDogMTsgc3Ryb2tlLWRhc2hhcnJheTogbm9uZTsgc3Ryb2tlLWxpbmVjYXA6IGJ1dHQ7IHN0cm9rZS1saW5lam9pbjogbWl0ZXI7IHN0cm9rZS1taXRlcmxpbWl0OiAxMDsgZmlsbDogcmdiKDI1NSwyNTUsMjU1KTsgZmlsbC1ydWxlOiBub256ZXJvOyBvcGFjaXR5OiAxOyIgdHJhbnNmb3JtPSIgbWF0cml4KDEgMCAwIDEgMCAwKSAiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPg0KICAgIDwvZz4NCjwvc3ZnPg==);
	background-size: 18px;
	background-size: 16px;
}

.access-zoom-in {
	width: 22px;
	height: 22px;
	background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4NCiAgICA8cGF0aCBmaWxsPSIjRkZGRkZGIiBkPSJNMTIuOSw3LjRsNi42LDE3LjJoLTMuN2wtMS40LTMuOEg3LjZsLTEuNCwzLjhIMi41TDkuMiw3LjRIMTIuOXogTTExLDExLjVsLTAuMywxbC0yLDUuNGg0LjdsLTItNS40TDExLDExLjV6Ij48L3BhdGg+DQogICAgPHBhdGggZmlsbD0iI0ZGRkZGRiIgZD0iTTI1LjksMTAuOXYzLjdoMy42djIuOGgtMy42djMuNkgyM3YtMy42aC0zLjZ2LTIuOEgyM3YtMy43SDI1Ljl6Ij48L3BhdGg+DQo8L3N2Zz4=);
	background-size: 22px;
}

.accessibility button.access-zoom-in {

	background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4NCiAgICA8cGF0aCBmaWxsPSIjRkZGRkZGIiBkPSJNMTIuOSw3LjRsNi42LDE3LjJoLTMuN2wtMS40LTMuOEg3LjZsLTEuNCwzLjhIMi41TDkuMiw3LjRIMTIuOXogTTExLDExLjVsLTAuMywxbC0yLDUuNGg0LjdsLTItNS40TDExLDExLjV6Ij48L3BhdGg+DQogICAgPHBhdGggZmlsbD0iI0ZGRkZGRiIgZD0iTTI1LjksMTAuOXYzLjdoMy42djIuOGgtMy42djMuNkgyM3YtMy42aC0zLjZ2LTIuOEgyM3YtMy43SDI1Ljl6Ij48L3BhdGg+DQo8L3N2Zz4=);
	background-size: 22px;
	background-position: center;
	background-repeat: no-repeat;
}

.accessibility button.access-zoom-out {
	background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4NCiAgICA8cGF0aCBmaWxsPSIjRkZGRkZGIiBkPSJNMTQuMSw3LjRsNi42LDE3LjJoLTMuN2wtMS40LTMuOEg4LjhsLTEuNCwzLjhIMy44bDYuNi0xNy4ySDE0LjF6IE0xMi4yLDExLjVsLTAuMywxbC0yLDUuNGg0LjdsLTItNS40IEwxMi4yLDExLjV6Ij48L3BhdGg+DQogICAgPHBhdGggZmlsbD0iI0ZGRkZGRiIgZD0iTTI4LjIsMTYuOHYyLjhoLTcuN3YtMi44SDI4LjJ6Ij48L3BhdGg+DQo8L3N2Zz4=);
	background-size: 22px;
	background-position: center;
	background-repeat: no-repeat;
}

/* ----- */

.infograph{
	display: block;
	width: 100%;
	background-color: var(--color-gray-900);
	height: 60vh;
	grid-column: 1 / -1;
	display: flex;
	justify-content: center;
	align-items: center;
	color: var(--color-gray-800);
	font-size: 4em;
	font-weight: 700;
}


/* ------ FOOTER LOGOS -------- */

.footer-line{
	grid-column: 1 / -1;
	width: 100%;
	height: 2px;
	background-color: var(--color-theme);
}


        .logos{
            display: flex;
            flex-direction: column;
            gap: 3em;
            margin-block: 2em 5em;
			justify-content: center;
        }

        .logos img.horizontal{
            width: 100%;
			max-width: 1030px;
			display: block;
			margin-inline: auto;
        }
        .logos img.vertical{
            display: none;
        }

		@media( width < 900px){
			.logos img.vertical{
				width: 90%;
				max-width: 550px;
				display: block;
				margin-inline: 5%;
				box-sizing: border-box;
			}
			.logos img.horizontal{
				display: none;
			}
		}


        .logos-group{
            display: flex;
            gap: 4em 15%;
            flex-wrap: wrap;
            align-items: end;
			justify-content: center;
			margin-inline: 2em;
        }

        .logos-item{
            display: flex;
            flex-direction: column;
            gap: 1em;
        }

        .logos-item .assignment{
            font-size: .7em;
            font-weight: 600;
            text-transform: uppercase;
            text-align: left;
			color: #444444;
        }

        .logos-list{
            display: flex;
            gap: 1em 2em;
            flex-wrap: wrap;
			justify-content: center;
			max-width: 90vw;
        }

        .footer-logo{
            display: flex;
            height: 2.5rem;
            aspect-ratio: 1;
			max-width: 80vw;

            background-repeat: no-repeat;
            background-position: center;
            background-size: contain;
        }

        .footer-logo span{
            display: none;
        }

        .logos-list.big{
            gap: 0 2em;
        }

        .logos-list.big .footer-logo {
            height: 3.5em;
        }

        .logos-list.medium .footer-logo {
            height: 2.75em;
        }

        .footer-logo.lei-rouanet { background-image: url('../assets/logo/lei-de-incentivo-a-cultura.png');     aspect-ratio: 2; }
        .footer-logo.vale-cultura { background-image: url('../assets/logo/vale-cultura.png');     aspect-ratio: 2; }

        .footer-logo.petrobras { background-image: url('../assets/logo/petrobras.png');     aspect-ratio: 5; }
        .footer-logo.motiva { background-image: url('../assets/logo/motiva.png');     aspect-ratio: 3; }

        .footer-logo.vale { background-image: url('../assets/logo/vale.png');     aspect-ratio: 2.6; }

        .footer-logo.idbrasil { background-image: url('../assets/logo/idbrasil.png');     aspect-ratio: 2.4; }
        .footer-logo.mlp { background-image: url('../assets/logo/mlp.png');     aspect-ratio: 2.4; }

        .footer-logo.fundacao-roberto-marinho { background-image: url('../assets/logo/fundacao-roberto-marinho.png');     aspect-ratio: 3; }

        .footer-logo.tudo-vira-cultura-sp { background-image: url('../assets/logo/cultsp.png');     aspect-ratio: 4; }
        .footer-logo.secretaria-cultura-sp { background-image: url('../assets/logo/secretaria-da-cultura-sp.png');     aspect-ratio: 13; }
        .footer-logo.ministerio-da-cultura-brasil { background-image: url('../assets/logo/ministerio-da-cultura-brasil.png');     aspect-ratio: 4; }
       

.hero-bento{
	grid-column: 1 / -1;
	margin-top: 2em;
	width: 100%;
}

.bento{
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	position: relative;
}

.bento::before{
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	background-color: rgba(0, 0, 0, 0.85);
	background: linear-gradient(0deg,rgba(0, 0, 0, .9) 0%, rgba(0, 0, 0, 0.7) 50%, rgba(0, 0, 0, .1) 100%);
	z-index: 1;
}
.bento.bg-color::before{
	background: linear-gradient(0deg,rgba(0, 0, 0, .7) 0%, rgba(0, 0, 0, 0.5) 50%, rgba(0, 0, 0, 0) 100%);
	transition: all .8s ease;
	pointer-events: none;
}
.bento.bg-color:hover::before{
		background: linear-gradient(0deg,rgba(0, 0, 0, .7) 0%, rgba(0, 0, 0, 0.5) 50%, rgba(0, 0, 0, 0) 100%);

}

.bento.bg-color::after{
	content: '';
	display: block;
    width: 1.75em;
    height: 3.5em;
	margin: 1em;
	background-image: url('../assets/simbol-mlp-w.svg');
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	z-index: 2;
	top: 0;
	right: 0;
}

.hero-bento .bento-grid{
	display: grid;
	grid-template-columns: repeat(7, minmax(12%, 1fr));
	grid-template-rows: repeat(2, 25vh);
    gap: 1em;
	padding: 1em;
	background: var(--color-black);
	box-sizing: border-box;
}

.hero-bento .bento-grid .bento:nth-child(1){
	grid-row: span 2;
}
.hero-bento .bento-grid .bento:nth-child(2){
	grid-column: span 2;
}

@media( width >= 1500px){
	.hero-bento .bento-grid .bento:nth-child(4){
		grid-row: span 2;
	}
	.hero-bento .bento-grid .bento:nth-child(8){
		grid-column: span 2;
	}
}
@media( width < 1500px){
	.hero-bento .bento-grid{
		grid-template-columns: repeat(6, minmax(12%, 1fr));
	}
	.hero-bento .bento-grid .bento:nth-child(8){
		grid-column: span 2;
	}
	.hero-bento .bento-grid .bento:nth-child(10){
		display: none;
	}
}

@media (width < 1250px) {
	.hero-bento .bento-grid{
		grid-template-columns: repeat(5, minmax(12%, 1fr));
	}
	.hero-bento .bento-grid .bento:nth-child(6){
		grid-column: span 2;
	}
	.hero-bento .bento-grid .bento:nth-child(7),
	.hero-bento .bento-grid .bento:nth-child(8){
		display: none;
	}
}

@media (width < 1024px) {
	.hero-bento .bento-grid{
		grid-template-columns: repeat(4, minmax(12%, 1fr));
	}
	.hero-bento .bento-grid .bento:nth-child(6){
		grid-column: span 1;
	}
	.hero-bento .bento-grid .bento:nth-child(9),
	.hero-bento .bento-grid .bento:nth-child(10){
		display: none;
	}
}

@media (width < 800px) {
	.hero-bento .bento-grid{
		grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
			grid-template-rows: auto;
	}
	.hero-bento .bento-grid .bento {
		grid-column: span 1 !important;
		grid-row: span 1 !important;
	}
}

@media (width < 450px) {
	.hero-bento .bento-grid{
		grid-template-columns: repeat(2, minmax(120px, 1fr));
	}
	.hero-bento .bento-grid .bento {
		grid-column: span 1 !important;
		grid-row: span 1 !important;
	}
}


.bento .card_image {
	width: 100%;
	height: 100%;
	overflow: hidden;
}
.bento .card_image img{
	transition: scale .8s ease-in-out;
}

.bento:hover .card_image img{
	scale: 1.1;
}

.bento .card_body {
	position: absolute;
	inset: 0 0 0 0 ;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 1em;
	box-sizing: border-box;
	z-index: 2;
	display: flex;
    align-items: end;
	text-decoration: none;
}

.bento .card_body .card_title {
    font-size: 1.3em;
	    line-height: 1em;
}
.bento .card_body .card_subtitle {
	font-size: .8em;
	margin-top: .5em;
	font-weight: 300;
    opacity: .8;
    color: var(--color-gray-200);
}

.research-landing header{
	    width: min(550px, 60%);
    text-wrap: pretty;
}

/*   ---- MAPA ---- */

	.map-home {
		width: 100%;
		height: 65vh;
		z-index: 1;
	}
	
	.home-map {
		/* width: 100%; */
		height: 65vh;
		background-color: var(--color-black);
		position: relative;
		margin-bottom: 1.5em;
	}
	
	.home-map-header{
		position: absolute;
		margin: 1.5em;
		z-index: 2;
		width: 80%;
		max-width: 400px;
	}

	.home-map-control{
		display: flex;
		gap: .5em;
		margin-top: 1em;
	}
    
    #controls {
        position: absolute;
        top: 20px;
        right: 20px;
        z-index: 100;
        background: rgba(0,0,0, 0.25);
        border-radius: 5px;
        box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.6);

		display: flex;
		gap: .5rem;
		padding: .5rem;
        z-index: 1;

        & button {
            background: var(--color-gray-500);
            color: white;
            border: none;
            padding: 8px 12px;

            border-radius: 4px;
            cursor: pointer;
        }

        & button:hover {
            background: var(--color-theme);
        }
    }

	/* ----  FANCYBOX navigation ----- */

	.fancybox-navigation .fancybox-button[disabled],
	.fancybox-navigation .fancybox-button[disabled]:hover {
		opacity: 0 !important;
	}
	.fancybox-navigation .fancybox-button {
		opacity: .8 !important;
		padding: 0 !important;
		width: 50px !important;
		height: 50px !important;
		@media( width < 800px){
			width: 35px !important;
			height: 35px !important;
		}
	}
	.fancybox-navigation .fancybox-button:hover {
		opacity: 1 !important;
	}
	.fancybox-navigation .fancybox-button div {
		display: none;
	}
	.fancybox-navigation .fancybox-button--arrow_right {
		background-image: url('../assets/icon-next.svg');
		background-size: contain;
		background-repeat: no-repeat;
	}
	.fancybox-navigation .fancybox-button--arrow_left {
		background-image: url('../assets/icon-prev.svg');
		background-size: contain;
		background-repeat: no-repeat;
	}

	/* SITEMAP */

	#sitemap header{
		margin-bottom: 5em;
	}

	#sitemap section{
		display: flex;
		gap: 3em 15%;
		flex-wrap: wrap;
		padding-top: 1em;
	}

	#sitemap nav > ul{
		display: flex;
		flex-direction: column;
		gap: 1.5em;
		margin-bottom: .25em;
	}

	#sitemap nav > ul > li > a{
		font-weight: 700;
	}

	#sitemap nav > ul > li > ul >li {
		margin-left: 1.5em;
	}

	#sitemap nav.info a{
		font-weight: 300 !important;
		/* font-size: .9em; */
		color: var(--color-gray-400);
	}

	#sitemap nav a{
		transition: .3s;
	}

	#sitemap nav a:hover{
		color: var(--color-theme);
	}