/* NAV CORE
-------------------------------------------------- */

.lang-switch-block {
	position: relative;
	right: 2em;
	margin-left: 15px;
	text-transform: uppercase;
	display: flex;
	gap: 1em;
	z-index: 3;
	/*opacity: 0.0;
	visibility: hidden;*/
	transition: .25s ease-in-out;
}

.lang-switch-block.show {
	opacity: 1;
	visibility: visible;
}

.navbar-menu {
	position: relative;
	right: 3em;
	display: flex;
	gap: 1em;
	list-style: none;
	margin: 0;
	z-index: 3;
}


.nav-link {
	color: #fff;
	padding: 8px 0;
	margin: 0 15px;

	cursor: pointer;
	font-size: 18px;

	display: block;
	text-decoration: none;
	transition: color .15s ease-in-out;
}
.nav-pills .nav-link {
    border-radius: 0;
    border-bottom: 3px solid #fff;
}
.nav-link:focus, .nav-link:hover {
	color: #ffffffbd;
}

.nav-pills .nav-link.active, .nav-pills .show > .nav-link {
    color: #000;
    background-color: inherit;
    border-bottom: 3px solid #000;
}

.lang-switch-block a {
	color: #fff;
	font-size: 18px;
}

.lang-switch-block a:focus, .lang-switch-block a:hover {
	color: #ffffffbd;
}

/* SITE-BRANDING
-------------------------------------------------- */

.site-branding {
	display: inline-block;
	padding: 12px 0 0 40px;
	z-index: 5;
}

.site-branding a {
    display: flex;

}
 
.site-branding img.img-logo {
    height: 15px;
    margin-right: 20px;
}
.site-branding img.img-foto {
    margin-top: -2px;
}

/* MAINMENU
-------------------------------------------------- */

.navbar {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	padding: 0;
}
.nav-link.active {
	color: white;
	font-weight: bolder;
}


/* DROPDOWN
-------------------------------------------------- */


.navbar-toggler {
	position: absolute;
	height: 25px;
	border: none;
	top: 5px;
	right: 40px;
	margin-top: 12px;
	padding: .25rem .75rem;
	font-size: 1.25rem;
	line-height: 1;
	background-color: transparent;
	border-radius: .25rem;

	cursor: pointer;
	z-index: 2;

	visibility: hidden;

	transition: box-shadow 0.15s ease-in-out;
}



/* DROPDOWN
-------------------------------------------------- */

.dropdown {
	position: relative;
}

.dropdown-toggle {
	white-space: nowrap;
}
.dropdown-toggle::after {
	display: inline-block;
	margin-left: .255em;
	vertical-align: .255em;
	content: "";
	border-top: .3em solid;
	border-right: .3em solid transparent;
	border-bottom: 0;
	border-left: .3em solid transparent;
}

.dropdown-menu {
	position: absolute;
	z-index: 1000;
	display: none;
	min-width: 10rem;
	padding: 2rem 0;
	margin: 0;
	font-size: 1rem;
	color: #212529;
	text-align: left;
	list-style: none;
	background-color: #fff;
	background-clip: padding-box;
	border: 1px solid rgba(0,0,0,.15);
	border-radius: .25rem;
	background-color: #0E1F55;
	border-radius: 0;
}
.dropdown-menu.show {
	display: flex;
	justify-content: center;
	align-items: center;
}
.dropdown-menu a{
	text-transform: none;
}

.navbar-menu > li > .nav-link {
	position: relative;
	z-index: 3;
}

.dropdown-menu {
	position: fixed;
	width: 100%;
	height: fit-content;
	min-height: 50vh;
	border: none;
	margin-top: 0;
	top: 50px;
	left: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	opacity: 0;
	visibility: hidden;
	transition: all 0.3s ease-in;
	z-index: 1;
}

.menu-item.menu-item-has-children:hover .dropdown-menu {
	visibility: visible;
	opacity: 1;
	height: fit-content;
}

.dropdown-item {
	display: block;
	width: 100%;
	padding: .25rem 1rem;
	clear: both;
	font-weight: 400;
	color: #212529;
	text-align: inherit;
	text-decoration: none;
	white-space: nowrap;
	background-color: transparent;
	border: 0;
}

.dropdown-item figure {
	border-radius: 20px;
	overflow: hidden;
	margin: 0;
	aspect-ratio: 1;
	width: 12em;
	margin-top: 1em;
}
.dropdown-item:hover img {
	scale: 1.1;
}
.dropdown-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.3s ease-in;
}

.dropdown-menu a {
	color: #fff;
	text-transform: none;
	padding: 20px 20px;
	font-weight: 400;
	font-size: 24px;
}
.dropdown-item.active, .dropdown-item:active {
	color: #ccc;
	background-color: inherit;
	font-weight: bolder;
}
.navbar .dropdown-item a:hover {
    color: #ccc;
}
.dropdown-item:focus, .dropdown-item:hover {
    background-color: inherit;
    color: #fff;
}

.navbar-toggler-icon {
    width: 2em; 
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='%23000' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.navbar-toggler:focus {
    box-shadow: none;
}


.navbar-toggler span{
    display: block;
    position: absolute;
    height: 2px;
    width: 100%;
    background: #fff;
    border-radius: 9px;
    opacity: 1;
    left: 0;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .25s ease-in-out;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
  }

.navbar-toggler span:nth-child(1) {
    top: 0px;
  }
  
  .navbar-toggler span:nth-child(2),.navbar-toggler span:nth-child(3) {
    top: 8px;
  }
  
  .navbar-toggler span:nth-child(4) {
    top: 16px;
  }
  

	.site-header.mobile-menu-open .navbar-toggler span:nth-child(1) {
		top: 8px;
		width: 0%;
		left: 50%;
		background: white;
		height: 2px;
	}
  
	.site-header.mobile-menu-open .navbar-toggler span:nth-child(2){
		-webkit-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		-o-transform: rotate(45deg);
		transform: rotate(45deg);
		background: white;
		height: 2px;
	}
  
	.site-header.mobile-menu-open .navbar-toggler span:nth-child(3) {
		-webkit-transform: rotate(-45deg);
		-moz-transform: rotate(-45deg);
		-o-transform: rotate(-45deg);
		transform: rotate(-45deg);
		background: white;
		height: 2px;
	}

	.site-header.mobile-menu-open .navbar-toggler span:nth-child(4) {
		width: 0%;
	}





main,
footer {
	transition: filter 0.3s ease-in;
}

body:has(.site-header .menu-item.menu-item-has-children:hover) main,
body:has(.site-header .menu-item.menu-item-has-children:hover) footer {
	filter: blur(8px) brightness(1.2);
}




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

.menu-footermenu-container a {
    text-decoration: none;
}
.footernav {
	display: flex;
	flex-direction: column;
}

.navbar-nav {
	display: flex;
	padding-left: 0;
	margin-bottom: 0;
	list-style: none;
	flex-direction: column;
	flex-wrap: wrap;
}

.navbar-nav .menu-item {
	flex: 1;
	letter-spacing: +0.02em;
	transition: ease-in 0.2s all;
}





/* RESPONSIVE
-------------------------------------------------- */

@media only screen and (max-width: 1400px) {
    .site-header .container {
        flex-wrap: wrap;
        justify-content: center;
    }


    .site-branding {
        
    }
    .site-branding a {
        display: flex;
        justify-content: center;
    }
    .img-foto {
        height: 23px;
    }

}
@media only screen and (max-width: 1200px) {
	
	.navbar-toggler {
		visibility: visible;
	}

	.navbar {
		background: #142b70;
		margin-top: 0px;
		height: calc(100vh - 50px);
		height: 0;
		overflow-y: scroll;
		z-index: 2;
		transition: ease-in 0.2s all;
		max-width: inherit;
		min-width: inherit;
		width: 100%;
		position: absolute;
		margin-left: 0;
		margin-right: 0;
		top: 50px;
		top: calc(var(--wp-admin--admin-bar--height) + 50px);
		top: 50px;
	}
	.navbar-menu {
		display: flex;
		right: 0;
		padding-left: 0;
		margin-bottom: 0;
		list-style: none;
		flex-direction: column;
		/*flex-wrap: wrap;*/
	}
	
	.lang-switch-block {
		position: fixed;
		z-index: 5;
		right: 6em;
		top: 13px;
		/*top: calc(var(--wp-admin--admin-bar--height) + 13px);*/
	}
	
	.site-header.mobile-menu-open {
		background: #142b70;
	}

	body:has(.site-header.mobile-menu-open) {
		overflow-y: hidden;
	}
	
	.site-header.mobile-menu-open .navbar {
		/*height: calc(100vh - 50px);*/
		height: 100vh;
		height: calc(100vh - 50px - var(--wp-admin--admin-bar--height));
		height: calc(100vh - 50px);
	}

	.navbar-menu .menu-item {
		/*min-width: 51%;
		min-height: 3em;*/
		line-height: 2em;
	}

	.navbar ul {
		margin: 0;
		border: none;
	}
	.navbar > ul {
		padding: 1em 2em;
		width: 100%;
		/*height: 100%;*/
		height: fit-content;
	}


	.navbar-menu .dropdown-menu {
		position: relative;
		height: unset;
		min-height: unset;
		display: block;
		opacity: 1;
		visibility: visible;
		top: 0;
		padding: 0 0 0 2em;
		background-color: inherit;
		display: flex;
		flex-direction: row;
		gap: 2em;
		justify-content: flex-start;
	}

	.menu-item.menu-item-has-children:hover .dropdown-menu {
		height: fit-content;
	}

	.navbar-menu .dropdown-menu a {
		font-size: 18px;
		padding: 8px 0;
	}

	.navbar-menu .dropdown-item figure {
		display: none;
	}
	
}
@media only screen and (max-width: 650px) {
	
	.site-branding {
		padding: 12px 0 0 15px;
	}

	.navbar-menu .dropdown-menu {
		display: block;
	}
	
	.navbar-toggler {
		right: 15px;
	}
	
	.lang-switch-block {
		right: 4em;
	}
}



