/*
* Navigation CSS File
* Styling for navigation
*/
/*--------------------------------------------------------------
top menu
--------------------------------------------------------------*/
body.last_slide {}
header {
	position: absolute;
	z-index: 1000;
	width: 100%;
	height: 50px;
}

	header nav {
		height: 100%;
		text-align: right;
	}
		header nav div.top_navigation_menu {
			height: 100%;
			width: 100%;
			display: flex;
			align-items: center;
			justify-content: flex-end;
			padding:10px 50px 10px 0;
		}
			header nav div.logo {
				position: absolute;
				top:10px;
				left:10px;
				height:30px;
				width: 40%;
			}
				header nav div.logo a {
					display: block;
					width: 100%;
					height: 100%;
				}
					header nav div.logo a img {
						position: absolute;
						top:0;
						left:0;
						object-fit: contain;
						display: none;
					}
					header nav div.logo a img.logo-dark {display: block;}
					header nav div.logo img.logo-light {display: none;}
					body#dark_background header nav div.logo a img.logo-dark {display: none;}
					body#dark_background header nav div.logo img.logo-light {display: block;}
			header nav div.top_navigation_menu .navigation_menu_item  {
				display: flex;
			}
			header nav div.top_navigation_menu .navigation_menu_item.website_navigation  {
				display: block;
				position: absolute;
				top:10px;
				right:10px;
			}
				/*header nav div.top_navigation_menu .navigation_menu_item.website_navigation span.navigation_hamburger {*/
				span.navigation_hamburger {
					position: absolute;
					top:0;
					right:0;
					width: 30px;
					height: 30px;
				}
				/*header nav div.top_navigation_menu .navigation_menu_item.website_navigation span.navigation_hamburger hr,
				header nav div.top_navigation_menu .navigation_menu_item.website_navigation span.navigation_hamburger::before,
				header nav div.top_navigation_menu .navigation_menu_item.website_navigation span.navigation_hamburger::after {*/
				span.navigation_hamburger hr,
				span.navigation_hamburger::before,
				span.navigation_hamburger::after {
					content: '';
					position: absolute;
					left: 50%;
					height: 4px;
					width: 100%;
					border:none;
					border-style: collapse;
					padding:0;
					margin:0;
					transition: all .25s;
				}
				/*header nav div.top_navigation_menu .navigation_menu_item.website_navigation span.navigation_hamburger hr {*/
				span.navigation_hamburger hr {
					top:50%;
					transform: translateY(-50%) translateX(-50%);
				}
				/*header nav div.top_navigation_menu .navigation_menu_item.website_navigation span.navigation_hamburger::before {*/
				span.navigation_hamburger::before {
					top:0;
					transform:translateX(-50%);
				}
				/*header nav div.top_navigation_menu .navigation_menu_item.website_navigation span.navigation_hamburger::after {*/
				span.navigation_hamburger::after {
					top:100%;
					transform:translateX(-50%) translateY(-100%);
				}
				body.nav_open span.navigation_hamburger hr {
					width: 0;
				}
				body.nav_open span.navigation_hamburger::before {
					transform:translateX(-50%) rotate(45deg);
					top:50%;
				}
				body.nav_open span.navigation_hamburger::after {
					transform:translateX(-50%) rotate(-45deg);
					bottom:50%;
					bottom:auto;
					top: 50%;
				}
				header nav div.top_navigation_menu ul.navigation_container {
					list-style: none;
					padding:0;
					margin:0;
					height: 100%;
					/*display: none;*/
				}
					div.top_navigation_menu ul.navigation_container li {
						margin:;
					}
						div.top_navigation_menu ul.navigation_container li.menu-item a {
							text-decoration: none;
							text-transform: lowercase;
							position: relative;
							transition: all .5s;
						}
						div.top_navigation_menu ul.navigation_container li ul {}
							div.top_navigation_menu ul.navigation_container li ul li {}
								div.top_navigation_menu ul.navigation_container li ul li a {}
			header nav div.top_navigation_menu .navigation_menu_item.navigation_search_container {
				width: 30px;
				height: 30px;
				display: none;
			}
				.navigation_search_form_container::before {}
				.navigation_search_form_container {
					display: block;
					position: absolute;
					top:30px;
					right:-10px;					
					transition: all .25s;
					max-height: 0;
					overflow: hidden;
					box-sizing:border-box;
				}
					.navigation_search_container .navigation_search svg {
						position: absolute;
						top:50%;
						left: 50%;
						transform: translateX(-50%) translateY(-50%);
						object-fit: contain;
						width: 100%;
						height: 100%;
						display: block;
					}
			header nav div.top_navigation_menu .navigation_menu_item.navigation_button_container {}

@media only screen and (max-width: 768px)  {
	header nav div.top_navigation_menu ul.navigation_container {
		position: absolute;
		left:0;
		transform:scale(0) translateX(100%) translateY(-100%);
		top: 50px;
		transition: all .25s;
		height: auto;
		padding:10px;
		width: 90vw;
	}
	body.nav_open header nav div.top_navigation_menu ul.navigation_container {
		transform:scale(1) translateX(-100%) translateY(0%);
		
	}
}
@media only screen and (min-width: 768px)  {
	header {
		height: 7vw;
		transition: all .5s;
		top:0;
	}
	body.nav_scrolled_state header {
		height: 4vw;
	}
	body.nav_scrolled_state {
		padding-top: 4vw;
	}
	body {transition:padding .25s;}
	body.nav_scrolled_state .pp-section {
		height: calc(100% - 4.1vw);
	}
	/*body.sliding header {top:-7vw;}*/
		header nav {
			padding:0 5vw;
			display: flex;
			flex-direction: row;
			flex-wrap: nowrap;
			flex-direction: flex-end;
		}
			header nav div.logo {
				top:1vw;
				left:0;
				height: 5vw;
				width: 20vw;
				transition:all .25s;
			}
			body.nav_scrolled_state header nav div.logo {
				height: 2vw;
				width: 8vw;
			}
				header nav div.logo img {
					object-fit: contain;
				}
			.navigation_menu_item {
				height: auto;
				align-self: center;
			}
			header nav div.top_navigation_menu .navigation_menu_item.website_navigation {
				display: flex;
				height: 100%;
				position: relative;
				top:auto;
				right:auto;
			}
				header nav div.top_navigation_menu .navigation_menu_item.website_navigation span.navigation_hamburger {display: none;}
			header nav div.top_navigation_menu .navigation_menu_item.navigation_search_container {
				display: flex;
				margin-right: 4vw;
				transition: all .25s;
				cursor: pointer;
				position: relative;
				width: auto;
				height: auto;
			}
				.navigation_search_form_container {
					top:2vw;
					right:-1vw;					
					max-height: 0;
				}
				.navigation_search_form_container::before {
					content: '';
					display: block;
					position: absolute;
					top:-1vw;
					left: 0;
					width: 100%;
					height: 1vw;
					background-color: 
				}
				.navigation_search_container:hover .navigation_search_form_container {
					max-height: 5.75vw;
					padding-top: 1vw;
				}
					.navigation_search_container .navigation_search_form_container form {
						position: relative;
						display: block;
						padding: 1vw;
						box-sizing: border-box;
						transition: all .25s;
					}
					.navigation_search_container:hover .navigation_search_form_container form {
					}
					.navigation_search_container .navigation_search_form_container input {
						border:none;
						line-height: 100%;
						padding:.75vw 1.25vw;
					}
					.navigation_search_container .navigation_search_form_container button {
						position: absolute;
						top:50%;
						right:2.25vw;
						transform: translateY(-50%);
						border-radius: 100%;
						height: 1.75vw;
						width: 1.75vw;
						text-align: center;
						cursor: pointer;
						transition: all .25s;
					}
			body.nav_scrolled_state .navigation_search_container {margin-right: 2vw;}
				.navigation_search_container .navigation_search {
					display: block;
					width: 2vw;
					height: 2vw;
					position: relative;
				}
					.navigation_search_container .navigation_search svg {
						/*position: absolute;
						top:50%;
						left: 50%;
						transform: translateX(-50%) translateY(-50%);
						object-fit: contain;
						width: 100%;
						height: 100%;
						display: block;*/
					}

			header nav div.top_navigation_menu {
				display: flex;
				justify-content: flex-end;
				padding:.1vw 0;
			}
				header nav div.top_navigation_menu ul.navigation_container {
					display: flex;
					flex-direction: row;
					justify-content: flex-end;
					width: auto;
				}
					div.top_navigation_menu ul.navigation_container li.menu-item {
						display: flex;
						margin:0 4vw 0 0;
						align-items: center;
						transition: all .5s;
					}
					body.nav_scrolled_state div.top_navigation_menu ul.navigation_container li.menu-item {margin-right: 2vw;}
					div.top_navigation_menu ul.navigation_container li.menu-item.menu_button {
						height: 2vw;
						align-self: center;
					}
						div.top_navigation_menu ul.navigation_container li.menu-item a {
							padding-bottom: .2vw;
						}
							li.menu-item a::before {
								content: '';
								display: block;
								position: absolute;
								left: 50%;
								transform:translateX(-50%);
								bottom:0;
								height: .2vw;
								width: 0;
								transition: all .15s;
							}
							div.top_navigation_menu ul.navigation_container li.menu-item a:hover::before {
								width: 100%;
							}
						header nav div.top_navigation_menu ul li ul {
							display: none;
						}
							header nav div.top_navigation_menu ul li ul li {}
}
/*--------------------------------------------------------------
bottom menu
--------------------------------------------------------------*/
footer {}
	footer div.footer_svg_container {
		padding: 0;
		margin:0;
		height:200px;
		position:relative;
	}
	    footer div.footer_svg_container svg {
	    	padding:0;
	    	margin:0;
	    	position:absolute;
	    	bottom:0;
	    	left:50%;
	    	transform:translateX(-50%);
	    	height:auto;
	    	width:100%;
	    	object-fit:contain;
	    	object-position: bottom center;
	    }
	footer div.footer_address_container {
		text-align: center;
	}
		footer div.footer_address_item  {
			margin-bottom: 20px;
		}
	footer div.integrate_footer_logo {
		width: 50%;
		margin:0 auto 20px auto;
	}
	footer div.footer_content_container {
		padding:20px;
	}
		footer nav {
			width: 100%;
		}
			footer nav {
				width: 100%;
			}
				footer nav ul.navigation_container {
					list-style: none;
					padding:0 0 20px 0;
					margin:0;
					display:flex;
					flex-wrap: wrap;
				}
					footer nav ul.navigation_container li.menu-item {
						margin-bottom: 30px;
					}
					footer nav ul.navigation_container li.menu-item:last-child {
						margin-right: 0;
					}
						footer nav ul.navigation_container li.menu-item a {
							text-decoration: none;
						}
						footer nav ul.navigation_container li.menu-item ul {
							list-style: none;
							padding:0;
							margin:0;
						}
							footer nav ul.navigation_container li.menu-item ul li {
								margin:0;
							}
		footer p.copyright {
			padding:0;
			margin:0;
		}
	footer div.footer_social_copyright {
		text-align: right;
		margin:0;
		padding-top: 20px;
		border-top-width: 1px;
		border-top-style: solid;
	}
	footer div.social_icons {
		margin-bottom: 20px;
	}
		footer div.social_icons ul {
			list-style: none;
			display: flex;
			flex-direction: row;
			justify-content: flex-end;
			padding:0;
			margin:0;
		}
			footer div.social_icons ul li {
				display: flex;
				width: 50px;
				height: 50px;
				margin:0 20px 0 0;
			}
			footer div.social_icons ul li:last-child {margin-right: 0;}
				footer div.social_icons ul li svg {
					width: 100%;
					height: 100%;
					object-fit: contain;
				}
	footer div.integrate_awards {
		display: block;
		margin-bottom: 40px;
	}
	footer div.integrate_awards ul.footer_award_link_items {
		 display: flex;
		 flex-direction: row;
		 padding:0;
		 margin:0 auto 20px auto;
		 justify-content: center;
		 flex-wrap: wrap;
	}
		footer div.integrate_awards ul.footer_award_link_items li.footer_award_icon {
			list-style: none;
			margin:0 20px 20px 0;
			flex-grow: 1;
			flex-shrink: 1;
			text-align: center;
			max-width: 30%;
		}
		
		footer div.integrate_awards ul.footer_award_link_items li.footer_award_icon:last-child {margin-right: 0;}
			footer div.integrate_awards ul.footer_award_link_items li.footer_award_icon a {
				display: block;
				position: relative;
				width: 100%;
				text-decoration: none;
			}
				footer div.integrate_awards ul.footer_award_link_items li.footer_award_icon a span {
					display: inline-block;
					position: relative;
					padding-bottom: 3px;
				}
					footer div.integrate_awards ul.footer_award_link_items li.footer_award_icon a span::after {
						content: '';
						height: 1px;
						width: 80%;
						position: absolute;
						bottom:0;
						left: 50%;
						transform:translateX(-50%);
						transition: all .25s;
					}
					footer div.integrate_awards ul.footer_award_link_items li.footer_award_icon a:hover span::after {
						width: 100%;
					}
				div.footer_award_icon_container {
					border-radius: 10000vw;
					overflow: hidden;
					display: block;
					width: 80px;
					height: 80px;
					margin:0 auto 5px auto;
				}
				footer div.integrate_awards ul.footer_award_link_items li.footer_award_icon a img {
					position: absolute;
					top:50%;
					left: 50%;
					transform:translate(-50%,-50%);
					width: 75%;
					height: 75%;
					object-fit:contain;
				}
@media only screen and (max-width: 768px) {
	footer nav ul.navigation_container li.menu-item {
		width: 50%;
		margin-right:0;
	}
	footer div.social_icons ul {
		justify-content: center;
	}
	footer p.copyright {
		text-align: center;
	}
	footer div.integrate_awards ul.footer_award_link_items li.footer_award_icon:nth-child(3n) {
		margin-right: 0;
	}
}
@media only screen and (min-width: 768px) {
	footer div.footer_content_container {
		padding:1vw 5vw 5vw 5vw;
	}
	div.footer_address_container {
		display: flex;
		margin-bottom: 4vw;
		justify-content: space-between;
		position: relative;
	}
		
		div.footer_address_container div.footer_address_item {
			width: 45%;
			margin-bottom: 0;
			flex-grow: 1;
		}
			div.footer_address_container div.footer_address_item::after {
				content: '';
				width: .5vw;
				height: .5vw;
				position: absolute;
				top:50%;
				right: 0;
				transform: translateX(-50%) translateY(-50%);
				border-radius: 100%;
			}
			div.footer_address_container div.footer_address_item:last-child::after {
				display: none;
			}
		div.footer_address_container div.footer_address_item.footer_address_item_left {
			text-align: right;
			align-self: flex-start;
		}
		div.footer_address_container div.footer_address_item.footer_address_item_right {
			text-align: left;
			align-self: flex-end;
		}
	footer div.footer_svg_container {
		height:30vh;
	}
	footer div.integrate_footer_logo {
		width: 25%;
		margin:0 auto 2vw auto;
	}
	footer nav {
		margin-bottom: 2vw;
	}
		footer nav ul.navigation_container {
			display: flex;
			justify-content: center;
			flex-wrap: wrap;
		}
			footer nav ul.navigation_container li.menu-item {
				margin:0 2vw;
				max-width: 20vw;
				flex-grow: 0;
			}

	footer div.footer_social_copyright {
		text-align: right;
		padding-top: 2vw;
		border-top-width: .1vw;

	}
	footer div.social_icons {
		margin-bottom: 2vw;
	}
		footer div.social_icons ul {}
			footer div.social_icons ul li {
				width: 1.5vw;
				height: 1.5vw;
				margin:0 1vw 0 0;
			}
				footer div.social_icons ul li svg {
					width: 100%;
					height: 100%;
					object-fit: contain;
				}
		footer div.integrate_awards {
			margin-bottom: 2vw;
		}
		footer div.integrate_awards ul.footer_award_link_items {
			width: auto;
			margin:auto;
		}
			footer div.integrate_awards ul.footer_award_link_items li.footer_award_icon {
				margin-right: 2vw;
				margin-bottom: 1vw;
				max-width: 12vw;
			}
				footer div.integrate_awards ul.footer_award_link_items li.footer_award_icon a {}
					div.footer_award_icon_container {
						width: 5vw;
						height: 5vw;
						margin-bottom: .75vw;
					}
					footer div.integrate_awards ul.footer_award_link_items li.footer_award_icon a span {
						padding-bottom: .25vw;
					}
						footer div.integrate_awards ul.footer_award_link_items li.footer_award_icon a span::after {
							height: .05vw;
						}
						
}