﻿
/* ----------------------------------------------------------------
	Basic
-----------------------------------------------------------------*/

* {
	margin: 0;
	padding:0;
	border: 0;
}

:root {font-size:16px}

@-webkit-viewport{width:device-width}
@-moz-viewport{width:device-width}
@-ms-viewport{width:device-width}
@-o-viewport{width:device-width}
@viewport{width:device-width}

html, body 
{
	background-color:#FFFFFF;
	margin:0px auto;
	text-align: center;
	color:#555555;
}

html 
{
	height: 100%;
	padding-bottom:1px;
	scroll-behavior: smooth;
}

body 
{
	position: relative;
	height: 100%;
	overflow-x: hidden;
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
	font-family: 'Open Sans', sans-serif;
	font-size:1.0rem;
	font-weight: 300;
	line-height:1.5;
	color: #555555;
}

body.modal-open 
{
	overflow-y: auto;
	padding-right: 0 !important;
}

.modal-content * , .card * 
{
	min-height: .01px;
}



/* ----------------------------------------------------------------
	selection
-----------------------------------------------------------------*/

::selection 
{
	background: var(--bs-primary);
	color: #FFFFFF;
	text-shadow: none;
}

::-moz-selection 
{
	background: var(--bs-primary); /* Firefox */
	color: #FFFFFF;
	text-shadow: none;
}

::-webkit-selection 
{
	background: var(--bs-primary); /* Safari */
	color: #FFFFFF;
	text-shadow: none;
}

:active,
:focus 
{
	outline: none !important;
}


/* ----------------------------------------------------------------
	Typography
-----------------------------------------------------------------*/

a 
{
	text-decoration: none !important;
	color: var(--bs-primary);
}
a:hover 
{
	color: #222222;
}


dl, dt, dd, ol, ul, li 
{
	margin: 0;
	padding: 0;
}


/* ----------------------------------------------------------------
	Icon Fonts
-----------------------------------------------------------------*/

@font-face {
	font-family: 'fontello';
	src: url('../fonts/fontello.eot?7004661');
	src: url('../fonts/fontello.eot?7004661#iefix') format('embedded-opentype'),
			 url('../fonts/fontello.woff2?7004661') format('woff2'),
			 url('../fonts/fontello.woff?7004661') format('woff'),
			 url('../fonts/fontello.ttf?7004661') format('truetype'),
			 url('../fonts/fontello.svg?7004661#fontello') format('svg');
	font-weight: normal;
	font-style: normal;
}


[class^="icon-"]:before, [class*=" icon-"]:before 
{
	font-family: "fontello";
	font-style: normal;
	font-weight: normal;
	speak: never;
	display: inline-block;
	text-decoration: inherit;
	width: 1rem;
	height:1rem;
	margin-right: .5rem;
	text-align: center;
	/* opacity: .8; */
	font-variant: normal;
	text-transform: none;
	line-height: 1rem;
	margin-left: 0;
	font-size: 120%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	/* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */
	color:var(--bs-primary);
}


.icon-search:before { content: '\e800'; }
.icon-user:before { content: '\e801'; }
.icon-down-open-big:before { content: '\e802'; }
.icon-left-open-big:before { content: '\e803'; }
.icon-right-open-big:before { content: '\e804'; }
.icon-up-open-big:before { content: '\e805'; }
.icon-check:before { content: '\e806'; }
.icon-phone:before { content: '\e807'; }
.icon-mail:before { content: '\e808'; }
.icon-menu:before { content: '\e809'; }
.icon-quote:before { content: '\e80a'; }
.icon-rss:before { content: '\e80b'; }
.icon-location:before { content: '\e80c'; }
.icon-home:before { content: '\e80d'; }
.icon-phone-right:before { content: '\e80e'; }
.icon-download:before { content: '\e80f'; }
.icon-link-ext:before { content: '\f08e'; }
.icon-twitter:before { content: '\f099'; }
.icon-facebook:before { content: '\f09a'; }
.icon-gplus:before { content: '\f0d5'; }
.icon-linkedin:before { content: '\f0e1'; }
.icon-mobile:before { content: '\f10b'; }
.icon-youtube:before { content: '\f167'; }
.icon-xing:before { content: '\f168'; }
.icon-instagram:before { content: '\f16d'; }
.icon-pinterest:before { content: '\f231'; }
.icon-whatsapp:before { content: '\f232'; }


/* ----------------------------------------------------------------
	Helper Classes
-----------------------------------------------------------------*/

#wrapper 
{
	position: relative;
	float: none;
	width: 100%;
	margin: 0 auto;
	margin-top: 0px;
}

@media (min-width: 1200px) {
	body:not(.stretched) #wrapper 
	{
		max-width: 1200px;
	}
}

@media (min-width: 1440px) {
	body:not(.stretched) #wrapper 
	{
		max-width: 1440px;
	}
}

.clear 
{
	clear: both;
	display: block;
	font-size: 0px;
	height: 0px;
	line-height: 0;
	width: 100%;
	overflow:hidden;
}


.p-6 
{
	padding: 4rem !important;
}

.pt-6,
.py-6 
{
	padding-top: 4rem !important;
}

.pr-6,
.px-6 
{
	padding-right: 4rem !important;
}

.pb-6,
.py-6 
{
	padding-bottom: 4rem !important;
}

.pl-6,
.px-6 
{
	padding-left: 4rem !important;
}



.add-border-all
{
	border: 1px solid #EEEEEE;
}
.add-border-top
{
	border-top: 1px solid #EEEEEE;
}
.add-border-right
{
	border-right: 1px solid #EEEEEE;
}
.add-border-bottom
{
	border-bottom: 1px solid #EEEEEE;
}
.add-border-left
{
	border-left: 1px solid #EEEEEE;
}


/* ----------------------------------------------------------------
	Typography
-----------------------------------------------------------------*/

h1,
h2,
h3,
h4,
h5,
h6 
{
	font-family: 'Open Sans', sans-serif;
	color: #555555;
	font-weight: 600;
	line-height: 1.5;
	margin: 0 0 1.5rem 0;
}

h5,
h6 
{
	margin-bottom: 1.2rem;
}

h1 
{
	font-size: 2.25rem;
}
h2 
{
	font-size: 1.875rem;
}
h3 
{
	font-size: 1.5rem;
}
h4 
{
	font-size: 1.125rem; 
}
h5 
{
	font-size: 1.0rem;
}
h6 
{
	font-size: 0.875;
}



@media (max-width: 767.98px) {

	h1 
	{
		font-size: 1.75rem;
	}

	h2 
	{
		font-size: 1.5rem;
	}

	h3 
	{
		font-size: 1.25rem;
	}

	h4 
	{
		font-size: 1rem;
	}

}


p,
pre,
ul,
ol,
dl,
dd,
blockquote,
address,
table,
fieldset,
form 
{
	margin-bottom: 1.2rem;
}

small 
{
	font-family: 'Open Sans', sans-serif;
}

ul.list, 
ul.checklist 
{
	background-image:none;
	list-style-type:none;
	margin:0px 0px 0px 30px;
	padding:0px 0px 5px 0px;
}

ul.list li, 
ul.checklist li 
{
	list-style-type:none;
	padding:0px 0px 0px 0px;
	margin: 0px 0px 4px 0px;
	text-align:left;
}

ul.list li:before 
{
	content: "■";
	padding-right: 8px;
	color: var(--bs-primary);
}

ul.checklist li:before
{
	font-family: "fontello";
	font-style: normal;
	font-weight: normal;
	font-size: 110%;
	content: '\e806';
	speak: never;
	display: inline-block;
	width: 30px;
	height:1rem;
	margin-left: -30px;
	margin-right: 0;
	text-align: left;
	text-transform: none;
	text-decoration: inherit;
	line-height: 1rem;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	color:var(--bs-primary);
}

ul.list > li > ul,
ul.checklist > li > ul 
{
	margin-left: 20px;
}


a img 
{
	border: none;
}

img 
{ 
	max-width: 100%;
}

figure.picture-item
{
	margin: 0 0 1.5rem;
}

iframe 
{
	width: 100%;
	border: 0 !important;
	overflow: hidden !important;
}


/* ----------------------------------------------------------------
	Button Classes
-----------------------------------------------------------------*/

.btn-outline-white 
{
	color: #FFFFFF;
	border-color: #FFFFFF;
}

.btn-outline-white:hover 
{
	color: #FFFFFF;
	background-color: rgba(50, 50, 50, 0.5);
	border-color: #FFFFFF;
}

.btn-outline-white:focus, 
.btn-outline-white.focus 
{
	box-shadow: 0 0 0 0.2rem rgba(255, 255, 255, 0.5);
}


/* ----------------------------------------------------------------
	Text Size Classes
-----------------------------------------------------------------*/

.text-small 
{
	font-size: 80% !important;
}

.text-large 
{
	font-size: 120% !important;
}

.text-verylarge 
{
	font-size: 200% !important;
}

.text-uppercase
{
	text-transform:uppercase;
}



/* ----------------------------------------------------------------
	Text Color Classes
-----------------------------------------------------------------*/

.text-black 
{
	color: #000000;
}

.text-colored
{
	color: #D6E3FF;
}

.text-grey 
{
	color: #555555;
}

.text-white 
{
	color: #FFFFFF;
}



/* ----------------------------------------------------------------
	BG Color Utility Classes
-----------------------------------------------------------------*/

.bg-ts 
{
	-webkit-transition: background-color .5s ease;
	transition: background-color .5s ease;
}

.bg-colored
{
	background-color: #D6E3FF;
}

.bg-grey 
{
	background-color: #F4F4F4;
}

.bg-white 
{
	background-color: #FFFFFF;
}




/* ----------------------------------------------------------------
	Top Bar
-----------------------------------------------------------------*/

#top-bar
{
	position: relative;
	display:block;
	width: 100%;
	min-height:40px;
	background-color: #FFFFFF;
	border-bottom: 1px solid #EEEEEE;
	font-size: 1rem;
	-webkit-transition:all 0.2s ease;
	-moz-transition:all 0.2s ease;
	-o-transition:all 0.2s ease;
	transition:all 0.2s ease;
}

#top-bar.transparent-top-bar 
{
	background: transparent;
	border-bottom: 0px;
	z-index: 1050;
}

#top-bar.position-fixed 
{
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	z-index: 1050;
}

#top-bar .top-links 
{
	position: relative;
	-ms-flex: 0 0 auto;
	flex: 0 0 auto;
	-ms-flex-positive: 0;
	flex-grow: 0;
	margin-top: 7px;
}

#top-bar .top-links a
{
	display:inline-block;
	color: #555555;
	font-size: 1rem;
	text-decoration:none;
	line-height: 1.1rem;
	margin-left: 20px;
	vertical-align: middle;
}

#top-bar.top-bar-dark .top-links a
{
	color: #FFFFFF;
}
#top-bar.top-bar-dark.scrolled .top-links a
{
	color: #555555;
}


@media (max-width: 768px) {

	#top-bar .top-links 
	{
		margin-top: 3px;
		float: right;
	}

	#top-bar .top-links a
	{
		display: inline-block;
		margin-left: 20px;
		margin-right: 0px;
		width: 36px;
		height: 36px;
		text-decoration: none;
		line-height: 1em;
		color:transparent;
		overflow: hidden;
		border: 1px solid var(--bs-primary);
	}

	#top-bar .top-links a.icon-phone-right:before,
	#top-bar .top-links a.icon-phone:before,
	#top-bar .top-links a.icon-mobile:before,
	#top-bar .top-links a.icon-mail:before
	{
		width: 36px;
		margin-right: 0;
		text-align: center;
		line-height: 36px;
		margin-left: 0em;
		font-size: 150%;
		color: var(--bs-primary);
	}

	#top-bar .top-links a span
	{
		display: none;
	}


	#top-bar.top-bar-dark .top-links a
	{
		border: 1px solid #FFFFFF;
	}

	#top-bar.top-bar-dark .top-links a.icon-phone-right:before,
	#top-bar.top-bar-dark .top-links a.icon-phone:before,
	#top-bar.top-bar-dark .top-links a.icon-mobile:before,
	#top-bar.top-bar-dark .top-links a.icon-mail:before
	{
		color: #FFFFFF;
	}

	#top-bar.top-bar-dark.scrolled .top-links a
	{
		border: 1px solid var(--bs-primary);
	}

	#top-bar.top-bar-dark.scrolled .top-links a.icon-phone-right:before,
	#top-bar.top-bar-dark.scrolled .top-links a.icon-phone:before,
	#top-bar.top-bar-dark.scrolled .top-links a.icon-mobile:before,
	#top-bar.top-bar-dark.scrolled .top-links a.icon-mail:before
	{
		color: var(--bs-primary);
	}

}


/* ----------------------------------------------------------------
	Header
-----------------------------------------------------------------*/

#header 
{
	position: relative;
	width: 100%;
	height: 94px;
	background-color: #FFFFFF;
	border-bottom: 1px solid #F5F5F5;
	-webkit-transition:all 0.2s ease;
	-moz-transition:all 0.2s ease;
	-o-transition:all 0.2s ease;
	transition:all 0.2s ease;
}
#header.position-fixed 
{
	position: fixed;
	top: 39px;
	right: 0;
	left: 0;
	z-index: 1050;
	width: 100%;
	background-color: #FFFFFF;
	border-bottom: 1px solid #F5F5F5;
}
#header.transparent-header.position-fixed 
{
	background-color: transparent;
	border-bottom: 0px;
}

#header-wrap 
{
	position: relative;
	background-color: #FFFFFF;
	width: 100%;
	height: 100%;
	-webkit-transition:all 0.2s ease;
	-moz-transition:all 0.2s ease;
	-o-transition:all 0.2s ease;
	transition:all 0.2s ease;
}
#header.transparent-header #header-wrap 
{
	background-color: transparent;
}

.header-row 
{
	position: relative;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

@media (max-width: 575.98px) {

	#header > #header-wrap > .container
	{
		padding-left: 0px;
		padding-right:0px;
	}

}

@media (min-width: 992px) {

	#header-wrap 
	{
		position: fixed;
		height: 100%;
		z-index: 1050;
		/* box-shadow: 0 0 0 rgba(0,0,0,0.1); */
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
		will-change: left, top, transform;
	}

	#top-bar + #header:not(.sticky-header) #header-wrap,
	div + #header-wrap,
	.no-sticky #header-wrap,
	[data-sticky-offset]:not([data-sticky-offset="full"]):not(.sticky-header) #header-wrap,
	body:not(.stretched) #header:not(.sticky-header) #header-wrap 
	{
		position: absolute;
	}

	#header.transparent-header,
	#header.transparent-header:not(.sticky-header) #header-wrap 
	{
		background: transparent;
		border-bottom: 0px;
		z-index: 1050;
	}

	#header.transparent-header.semi-transparent #header-wrap 
	{
		background-color: rgba(255,255,255,0.8);
	}

}

#top-bar.transparent-top-bar.scrolled
{
	background-color: rgba(255,255,255,1.0);
}
#header.transparent-header.scrolled
{
	background-color: rgba(255,255,255,1.0);
}
#top-bar.transparent-top-bar.add-border-bottom.scrolled
{
	border-bottom: 1px solid #EEEEEE;
}
#header.transparent-header.add-border-bottom.scrolled
{
	border-bottom: 1px solid #EEEEEE;
}
#header.transparent-header.scrolled #header-wrap
{
	background-color: rgba(255,255,255,1.0);
}


/* ----------------------------------------------------------------
	Logo
-----------------------------------------------------------------*/

#logo
{
	margin-top:6px;
}

#logo a 
{
	padding-top:0px;
	padding-bottom:0px;
	color: #000000;
	font-family: 'Open Sans', sans-serif;
	font-size: 36px;
	text-decoration:none;
}

#logo img
{
	position: relative;
	display: block;
	max-width: 100%;
	max-height: 100%;
	height:80px;
	opacity: 1;
	-webkit-transition: height .4s ease, padding .4s ease, margin .4s ease, opacity .3s ease;
	transition: height .4s ease, padding .4s ease, margin .4s ease, opacity .3s ease;
}

@media (max-width: 575.98px) {

	#logo 
	{
		margin-left: 15px;
	}

}


/* ----------------------------------------------------------------
	Main Menu
-----------------------------------------------------------------*/

#nav.navbar
{
	padding:0;
}

#mainnav
{
	position: relative;
	margin-top: 5px;
}


#mainnav ul.nav.navbar-nav li.nav-item
{
	position: relative;
	white-space: nowrap;
	background-color:transparent;
}

#mainnav ul.nav.navbar-nav li.nav-item a.nav-link
{
	font-size: 1.1rem;
	color: #555555;
	-webkit-transition: color .3s ease-in-out;
	transition: color .3s ease-in-out;
}

#header #nav.navbar.navbar-dark #mainnav ul.nav.navbar-nav li.nav-item a.nav-link
{
	color: #FFFFFF;
}

#header.scrolled #nav.navbar.navbar-dark #mainnav ul.nav.navbar-nav li.nav-item a.nav-link
{
	color: #555555;
}


#mainnav ul.navbar-nav .active .nav-link, 
#mainnav ul.navbar-nav .nav-link.active, 
#mainnav ul.navbar-nav .nav-link.show, 
#mainnav ul.navbar-nav .show > .nav-link, 
#mainnav ul.nav.navbar-nav li.nav-item a.nav-link.active,
#mainnav ul.nav.navbar-nav li.nav-item.active a.nav-link
{
	color: var(--bs-primary);
}

#header.scrolled #nav.navbar.navbar-dark #mainnav ul.nav.navbar-nav li.nav-item a.nav-link.active
{
	color: var(--bs-primary);
}


/* dropdown caret */
.dropdown-toggle::after 
{
	display:inline-block;
}

/* 	Main Menu - Level 2 */
#mainnav ul.navbar-nav ul.dropdown-menu 
{
	min-width: 10rem;
	padding: .5rem 0;
	margin: .125rem 0 0;
	font-size: 1.0rem;
	color: #555555;
	text-align: left;
	background-color: #FFFFFF;
	border: 0px solid #FFFFFF;
	border-radius: 0rem;
}

#mainnav ul.navbar-nav ul.dropdown-menu li.nav-item a.nav-link,
#mainnav ul.nav.navbar-nav li.nav-item.dropdown.active ul.dropdown-menu li.nav-item a.nav-link,
#mainnav ul.nav.navbar-nav li.nav-item.dropdown.show ul.dropdown-menu.show li.nav-item a.nav-link,
#mainnav ul.nav.navbar-nav li.nav-item.dropdown.active.show ul.dropdown-menu.show li.nav-item a.nav-link
{
	font-size: 1rem;
	color: #555555;
	-webkit-transition: color .3s ease-in-out;
	transition: color .3s ease-in-out;
}

#mainnav ul.nav.navbar-nav li.nav-item.dropdown.active ul.dropdown-menu li.nav-item.active a.nav-link,
#mainnav ul.nav.navbar-nav li.nav-item.dropdown.active.show ul.dropdown-menu.show li.nav-item.active a.nav-link
{
	color: var(--bs-primary);
}

#header .navbar-toggler,
#header .navbar-light .navbar-toggler 
{
	color: var(--bs-primary);
	position: absolute;
	padding: .25rem .5rem;
	font-size: 1.25rem;
	top: 20px;
	right: 0px;
	border-radius:0px;
	border-color: var(--bs-primary);
}

#header .navbar-toggler-icon,
#header .navbar-light .navbar-toggler-icon 
{
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='%23004588' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
}

#header .navbar-dark .navbar-toggler 
{
	color: #FFFFFF;
	position: absolute;
	padding: .25rem .5rem;
	font-size: 1.25rem;
	top: 20px;
	right: 0px;
	border-radius:0px;
	border-color: rgb(255,255,255);
}
#header.scrolled .navbar-dark .navbar-toggler 
{
	color: var(--bs-primary);
	border-color: var(--bs-primary);
}


#header .navbar-dark .navbar-toggler-icon 
{
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255,255,255, 1.0)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
}
#header.scrolled .navbar-dark .navbar-toggler-icon 
{
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='#004588' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
}


#mainnav ul.navbar-nav li a.mobile-toggle
{
	display:none;
}


/* ----------------------------------------------------------------
	Main Menu responsive
-----------------------------------------------------------------*/

@media (max-width: 575.98px) {

	#header .navbar-light .navbar-toggler, 
	#header .navbar-dark .navbar-toggler 
	{
		right:15px;
	}

}

@media (max-width: 991.98px) {

	#mainnav {
		margin-top: 0px;
	}

	#nav.navbar.navbar-light #mainnav > ul.nav.navbar-nav
	{
		background-color: #FFFFFF;
	}

	#mainnav.navbar-collapse > ul.navbar-nav > li.nav-item, 
	#mainnav.navbar-collapse.collapse > ul.navbar-nav > li.nav-item, 
	#mainnav.navbar-collapse.collapsing > ul.navbar-nav > li.nav-item, 
	#mainnav.navbar-collapse.collapse.show > ul.navbar-nav > li.nav-item,
	#mainnav.navbar-collapse.collapse.show > ul.navbar-nav > li.nav-item.dropdown
	{
		display:block;
		float:none;
		height: auto;
		width:100%;
		margin:0px;
	}

	#mainnav.navbar-collapse.collapse.show > ul.nav.navbar-nav > li.nav-item > a.nav-link,
	#mainnav.navbar-collapse > ul.navbar-nav > li.nav-item > a.nav-link,
	#mainnav.navbar-collapse.collapse > ul.navbar-nav > li.nav-item > a.nav-link,
	#mainnav.navbar-collapse.collapse > ul.navbar-nav > li.nav-item.dropdown > a.nav-link,
	#mainnav.navbar-collapse.collapsing > ul.navbar-nav > li.nav-item > a.nav-link,
	#mainnav.navbar-collapse.collapsing > ul.navbar-nav > li.nav-item.dropdown > a.nav-link,
	#mainnav.navbar-collapse.collapse.show > ul.navbar-nav > li.nav-item > a.nav-link,
	#mainnav.navbar-collapse.collapse.show > ul.navbar-nav > li.nav-item.dropdown > a.nav-link
	{
		display:block;
		height: auto;
		height: 46px;
		line-height: 46px;
		width:100%;
		padding-left: 15px;
		padding-right: 10px;
		padding-top: 0px;
		padding-bottom: 0px;
		margin:0px;
		text-align:left;
		transition:none;
		border-bottom:1px solid #E5E5E5;
	}

	#mainnav.navbar-collapse > ul.nav.navbar-nav > li.nav-item.dropdown > a.nav-link.dropdown-toggle:after,
	#mainnav.navbar-collapse > ul.navbar-nav > li.nav-item > a.nav-link:after 
	{
		content: '';
		display: none;
		width:0;
	}


	#mainnav.navbar-collapse > ul.navbar-nav > li.nav-item.dropdown > a.nav-link.dropdown-toggle,
	#mainnav.navbar-collapse.collapse > ul.navbar-nav > li.nav-item.dropdown > a.nav-link.dropdown-toggle,
	#mainnav.navbar-collapse.collapsing > ul.navbar-nav > li.nav-item.dropdown > a.nav-link.dropdown-toggle,
	#mainnav.navbar-collapse.collapse.show > ul.navbar-nav > li.nav-item.dropdown > a.nav-link.dropdown-toggle,
	#mainnav.navbar-collapse.collapse > ul.navbar-nav > li.nav-item.dropdown.active > a.nav-link.dropdown-toggle,
	#mainnav.navbar-collapse.collapsing > ul.navbar-nav > li.nav-item.dropdown.active > a.nav-link.dropdown-toggle,
	#mainnav.navbar-collapse.collapse.show > ul.navbar-nav > li.nav-item.dropdown.active > a.nav-link.dropdown-toggle
	{
		float:left;
		text-align:left;
		display: inline-block;
		width: 75%;
		min-width:75%;
		border-bottom:1px solid #E5E5E5;
	}

	#mainnav ul.navbar-nav li a.mobile-toggle,
	#mainnav.navbar-collapse > ul.navbar-nav > li.nav-item.dropdown > a.mobile-toggle,
	#mainnav.navbar-collapse > ul.navbar-nav > li.nav-item.dropdown.active > a.mobile-toggle, 
	#mainnav.navbar-collapse.collapse > ul.navbar-nav > li.nav-item.dropdown > a.mobile-toggle,
	#mainnav.navbar-collapse.collapsing > ul.navbar-nav > li.nav-item.dropdown > a.mobile-toggle,
	#mainnav.navbar-collapse.collapse.show > ul.navbar-nav > li.nav-item.dropdown > a.mobile-toggle,
	#mainnav.navbar-collapse.collapse.show > ul.nav.navbar-nav > li.nav-item.dropdown a.mobile-toggle,
	#mainnav.navbar-collapse.collapse > ul.navbar-nav > li.nav-item.dropdown.active > a.mobile-toggle, 
	#mainnav.navbar-collapse.collapsing > ul.navbar-nav > li.nav-item.dropdown.active > a.mobile-toggle, 
	#mainnav.navbar-collapse.collapse.show > ul.navbar-nav > li.nav-item.dropdown.active > a.mobile-toggle,
	#mainnav.navbar-collapse.collapse.show > ul.nav.navbar-nav > li.nav-item.dropdown.active a.mobile-toggle
	{
		display:inline-block;
		width:25%;
		min-width:25%;
		background-image:url('../images/submenu-arrow-down.png');
		background-repeat:no-repeat;
		background-position:top right;
		padding: 0px;
		padding-top: 10px;
		padding-bottom: 10px;
		height:46px;
		line-height: 46px;
		margin:0px;
		border:0px;
		border-bottom:1px solid #E5E5E5 !important;
		cursor: pointer;
	}

	#mainnav.navbar-collapse.collapsing > ul.navbar-nav > li.nav-item.dropdown > a.mobile-toggle.openmenu,
	#mainnav.navbar-collapse.collapse.show > ul.navbar-nav > li.nav-item.dropdown > a.mobile-toggle.openmenu,
	#mainnav.navbar-collapse.collapse.show > ul.navbar-nav > li.nav-item.dropdown.active > a.mobile-toggle.openmenu,
	#mainnav.navbar-collapse.collapse > ul.navbar-nav > li.nav-item.dropdown > a.mobile-toggle.openmenu
	{
		background-image:url('../images/submenu-arrow-up.png');
	}

	#mainnav.navbar-collapse > ul.navbar-nav > li.nav-item.active > a,
	#mainnav.navbar-collapse.collapse > ul.navbar-nav > li.nav-item.active > a,
	#mainnav.navbar-collapse.collapse.show > ul.navbar-nav > li.nav-item.active > a,
	#mainnav.navbar-collapse.borderbottom > ul.navbar-nav > li.nav-item.active > a.nav-link
	{
		margin-bottom:-2px;
		border-bottom: 1px solid #E5E5E5 !important;
	}

	#mainnav.navbar-collapse.collapse.show > ul.navbar-nav > li.nav-item.dropdown.active > a.mobile-toggle
	{
		background-image:url('../images/submenu-arrow-down.png');
		border-bottom:0px;
	}
	#mainnav.navbar-collapse.collapse.show > ul.navbar-nav > li.nav-item.dropdown.active > a.mobile-toggle.openmenu
	{
		background-image:url('../images/submenu-arrow-up.png');
	}


	/* 	Main Menu - Level 2 */

	#mainnav.navbar-collapse > ul.navbar-nav > li.nav-item.dropdown > ul.dropdown-menu,
	#mainnav.navbar-collapse > ul.navbar-nav > li.nav-item.dropdown.show > ul.dropdown-menu.show,
	#mainnav.navbar-collapse.collapsing > ul.navbar-nav > li.nav-item.dropdown > ul.dropdown-menu, 
	#mainnav.navbar-collapse.collapse.show > ul.navbar-nav > li.nav-item.dropdown > ul.dropdown-menu, 
	#mainnav.navbar-collapse.collapse.show > ul.navbar-nav > li.nav-item.dropdown.active > ul.dropdown-menu
	{
		opacity: 1;
		height:auto;
		width:100%;
		padding:0px;
		margin: -6px 0px 0px 0px;
		border:0px;
		border-bottom:0px solid #E5E5E5;
	}

	#mainnav.collapse.navbar-collapse > ul.navbar-nav > li.nav-item.dropdown > ul.dropdown-menu > li > a,
	#mainnav.navbar-collapse.collapse > ul.navbar-nav > li.nav-item.dropdown > ul.dropdown-menu > li > a,
	#mainnav.navbar-collapse.collapsing > ul.navbar-nav > li.nav-item.dropdown > ul.dropdown-menu > li > a, 
	#mainnav.navbar-collapse.collapse.show > ul.navbar-nav > li.nav-item.dropdown > ul.dropdown-menu > li > a, 
	#mainnav.navbar-collapse.collapse.show > ul.navbar-nav > li.nav-item.dropdown.active > ul.dropdown-menu > li > a,
	#mainnav.navbar-collapse.collapsing > ul.navbar-nav > li.nav-item.dropdown.active > ul.dropdown-menu > li > a,
	#mainnav.navbar-collapse.collapse.show > ul.navbar-nav > li.nav-item.dropdown.active > ul.dropdown-menu > li.active > a
	{
		display:block;
		background-color:transparent;
		text-transform:none;
		width:auto;
		min-width:100%;
		margin: 0px 0px 0px 0px;
		line-height: 46px;
		padding:0px 15px 0px 40px;
		border-top:0px;
		border-bottom:1px solid #E5E5E5;
	}

}

/* ----------------------------------------------------------------
	Offcanvas Menu
-----------------------------------------------------------------*/

#nav .offcanvas
{
	top:0px;
	width:300px !important;
	height:calc(100vh - 40px);
}


/* ----------------------------------------------------------------
	Offcanvas Standard Menu
-----------------------------------------------------------------*/

@media (max-width: 991.98px) {

	.offcanvas-collapse,
	#mainnav.offcanvas-collapse
	{
		position: fixed;
		top: 96px;
		bottom: 0;
		right: 0;
		margin-top: 0px;
		width: 100%;
		padding-right: 1rem;
		padding-left: 1rem;
		overflow-y: auto;
		visibility: hidden;
		background-color: #FFFFFF;
		transition: visibility .3s ease-in-out, -webkit-transform .3s ease-in-out;
		transition: transform .3s ease-in-out, visibility .3s ease-in-out;
		transition: transform .3s ease-in-out, visibility .3s ease-in-out, -webkit-transform .3s ease-in-out;
		z-index:1041;
	}

	.offcanvas-collapse.open, 
	#mainnav.offcanvas-collapse.open 
	{
		visibility: visible;
		-webkit-transform: translateX(-100%);
		transform: translateX(-100%);
	}

	#mainnav.offcanvas-collapse > ul.navbar-nav > li.nav-item > a.nav-link,
	#mainnav.offcanvas-collapse.open > ul.navbar-nav > li.nav-item > a.nav-link
	{
		display:block;
		height: auto;
		height: 46px;
		line-height: 46px;
		padding-left: 15px;
		padding-right: 10px;
		padding-top: 0px;
		padding-bottom: 0px;
		margin:0px;
		text-align:left;
		transition:none;
		border-bottom:1px solid #E5E5E5;
	}

	#mainnav.offcanvas-collapse > ul.navbar-nav > li.nav-item.dropdown > ul.dropdown-menu > li > a,
	#mainnav.offcanvas-collapse.open > ul.navbar-nav > li.nav-item.dropdown > ul.dropdown-menu > li > a, 
	#mainnav.offcanvas-collapse > ul.navbar-nav > li.nav-item.dropdown.active > ul.dropdown-menu > li > a,
	#mainnav.offcanvas-collapse.open > ul.navbar-nav > li.nav-item.dropdown.active > ul.dropdown-menu > li.active > a
	{
		display:block;
		background-color:transparent;
		text-transform:none;
		width:auto;
		min-width:100%;
		margin: 0px 0px 0px 0px;
		line-height: 46px;
		padding:0px 15px 0px 40px;
		border-top:0px;
		border-bottom:1px solid #E5E5E5;
	}

}



/* ----------------------------------------------------------------
	Offcanvas Toggle visible Menu
-----------------------------------------------------------------*/


/*
.offcanvas-collapse-toggle,
#mainnav.offcanvas-collapse-toggle
{
	position: fixed;
	top: 94px;
	bottom: 0;
	right: 0;
	margin-top: 0px;
	width: 300px;
	height: calc(100vh - 94px);
	box-sizing: border-box;
	padding-right: 1rem;
	padding-left: 1rem;
	overflow-y: auto;
	visibility: hidden;
	background-color: #FFFFFF;
	-ms-flex-align: start;
	align-items: start;
	transition: visibility .3s ease-in-out, -webkit-transform .3s ease-in-out;
	transition: transform .3s ease-in-out, visibility .3s ease-in-out;
	transition: transform .3s ease-in-out, visibility .3s ease-in-out, -webkit-transform .3s ease-in-out;
	z-index:1041;
}

.offcanvas-collapse-toggle.open,
#mainnav.offcanvas-collapse-toggle.open 
{
	visibility: visible;
	-webkit-transform: translateX(-100%);
	transform: translateX(-100%);
}
*/

#mainnav.offcanvas-collapse-toggle ul.navbar-nav li a.mobile-toggle
{
	display:block;
}

#mainnav.offcanvas-collapse-toggle > ul.nav.navbar-nav,
#mainnav.offcanvas-collapse-toggle > ul.navbar-nav, 
#mainnav.offcanvas-collapse-toggle.open > ul.navbar-nav
{
	-ms-flex-direction: column;
	flex-direction: column;
}

#mainnav.offcanvas-collapse-toggle > ul.nav.navbar-nav > li.nav-item,
#mainnav.navbar-collapse.offcanvas-collapse-toggle > ul.navbar-nav > li.nav-item, 
#mainnav.navbar-collapse.offcanvas-collapse-toggle.open > ul.navbar-nav > li.nav-item
{
	display:block;
	float:none;
	height: auto;
	width:100%;
	margin:0px;
}

#mainnav.offcanvas-collapse-toggle > ul.navbar-nav > li.nav-item > a.nav-link,
#mainnav.offcanvas-collapse-toggle.open > ul.navbar-nav > li.nav-item > a.nav-link
{
	display:block;
	height: auto;
	height: 46px;
	line-height: 46px;
	padding-left: 15px;
	padding-right: 10px;
	padding-top: 0px;
	padding-bottom: 0px;
	margin:0px;
	text-align:left;
	transition:none;
	border-bottom:1px solid #E5E5E5;
}

#mainnav.offcanvas-collapse-toggle > ul.nav.navbar-nav > li.nav-item > a.nav-link,
#mainnav.navbar-collapse.offcanvas-collapse-toggle > ul.nav.navbar-nav > li.nav-item > a.nav-link,
#mainnav.navbar-collapse.offcanvas-collapse-toggle.open > ul.navbar-nav > li.nav-item > a.nav-link
{
	display:block;
	height: auto;
	height: 46px;
	line-height: 46px;
	width:100%;
	padding-left: 15px;
	padding-right: 10px;
	padding-top: 0px;
	padding-bottom: 0px;
	margin:0px;
	text-align:left;
	transition:none;
	border-bottom:1px solid #E5E5E5;
}

#mainnav.offcanvas-collapse-toggle > ul.nav.navbar-nav > li.nav-item.dropdown > a.nav-link.dropdown-toggle:after,
#mainnav.offcanvas-collapse-toggle > ul.nav.navbar-nav > li.nav-item.dropdown.active > a.nav-link.dropdown-toggle:after
{
	content: '';
	display: none;
	width:0;
}

#mainnav.offcanvas-collapse-toggle > ul.nav.navbar-nav > li.nav-item.dropdown > a.nav-link.dropdown-toggle,
#mainnav.offcanvas-collapse-toggle > ul.nav.navbar-nav > li.nav-item.dropdown.active > a.nav-link.dropdown-toggle,
#mainnav.navbar-collapse.offcanvas-collapse-toggle > ul.navbar-nav > li.nav-item.dropdown > a.nav-link.dropdown-toggle,
#mainnav.navbar-collapse.offcanvas-collapse-toggle.open > ul.navbar-nav > li.nav-item.dropdown > a.nav-link.dropdown-toggle,
#mainnav.navbar-collapse.offcanvas-collapse-toggle > ul.navbar-nav > li.nav-item.dropdown.active > a.nav-link.dropdown-toggle,
#mainnav.navbar-collapse.offcanvas-collapse-toggle.open > ul.navbar-nav > li.nav-item.dropdown.active > a.nav-link.dropdown-toggle
{
	float:left;
	text-align:left;
	display: inline-block;
	width: 75%;
	min-width:75%;
	border-bottom:1px solid #E5E5E5;
}

#mainnav.offcanvas-collapse-toggle > ul.nav.navbar-nav > li.nav-item.dropdown > a.mobile-toggle,
#mainnav.offcanvas-collapse-toggle > ul.nav.navbar-nav > li.nav-item.dropdown.active > a.mobile-toggle,
#mainnav.navbar-collapse.offcanvas-collapse-toggle ul.navbar-nav li a.mobile-toggle,
#mainnav.navbar-collapse.offcanvas-collapse-toggle > ul.navbar-nav > li.nav-item.dropdown > a.mobile-toggle,
#mainnav.navbar-collapse.offcanvas-collapse-toggle > ul.navbar-nav > li.nav-item.dropdown.active > a.mobile-toggle, 
#mainnav.navbar-collapse.offcanvas-collapse-toggle.open > ul.navbar-nav > li.nav-item.dropdown.active > a.mobile-toggle
{
	display:inline-block;
	width:25%;
	min-width:25%;
	background-image:url('../images/submenu-arrow-down.png');
	background-repeat:no-repeat;
	background-position:top right;
	padding: 0px;
	padding-top: 10px;
	padding-bottom: 10px;
	height:46px;
	line-height: 46px;
	margin:0px;
	border:0px;
	border-bottom:1px solid #E5E5E5 !important;
	cursor: pointer;
}

#mainnav.navbar-collapse.offcanvas-collapse-toggle > ul.navbar-nav > li.nav-item.dropdown > a.mobile-toggle.openmenu,
#mainnav.navbar-collapse.offcanvas-collapse-toggle.open > ul.navbar-nav > li.nav-item.dropdown.active > a.mobile-toggle.openmenu,
#mainnav.navbar-collapse.offcanvas-collapse-toggle.open > ul.navbar-nav > li.nav-item.dropdown > a.mobile-toggle.openmenu
{
	background-image:url('../images/submenu-arrow-up.png');
}

#mainnav.navbar-collapse.offcanvas-collapse-toggle > ul.navbar-nav > li.nav-item.active > a,
#mainnav.navbar-collapse.offcanvas-collapse-toggle.open > ul.navbar-nav > li.nav-item.active > a,
#mainnav.navbar-collapse.offcanvas-collapse-toggle.open > ul.navbar-nav > li.nav-item.active > a.nav-link
{
	margin-bottom:-2px;
	border-bottom: 1px solid #E5E5E5 !important;
}

#mainnav.navbar-collapse.offcanvas-collapse-toggle.open > ul.navbar-nav > li.nav-item.dropdown.active > a.mobile-toggle
{
	background-image:url('../images/submenu-arrow-down.png');
	border-bottom:0px;
}
#mainnav.navbar-collapse.offcanvas-collapse-toggle.open > ul.navbar-nav > li.nav-item.dropdown.active > a.mobile-toggle.openmenu
{
	background-image:url('../images/submenu-arrow-up.png');
}


/*  Main Menu - Level 2 */

#mainnav.offcanvas-collapse-toggle > ul.nav.navbar-nav > li.nav-item.dropdown > ul.dropdown-menu,
#mainnav.offcanvas-collapse-toggle > ul.nav.navbar-nav > li.nav-item.dropdown.active > ul.dropdown-menu
{
	display:none;
	position:relative;
	opacity: 0;
	height:auto;
	width:100%;
	padding:0px;
	margin: -6px 0px 0px 0px;
	border:0px;
	border-bottom:0px solid #E5E5E5;
}

#mainnav.offcanvas-collapse-toggle > ul.nav.navbar-nav > li.nav-item.dropdown > ul.dropdown-menu.show,
#mainnav.offcanvas-collapse-toggle > ul.nav.navbar-nav > li.nav-item.dropdown.active > ul.dropdown-menu.show
{
	display:block;
	position:relative;
	opacity: 1;
	height:auto;
	width:100%;
	padding:0px;
	margin: -6px 0px 0px 0px;
	border:0px;
	border-bottom:0px solid #E5E5E5;
}

#mainnav.offcanvas-collapse-toggle > ul.nav.navbar-nav > li.nav-item.dropdown > ul.dropdown-menu > li.nav-item > a.nav-link,
#mainnav.offcanvas-collapse-toggle > ul.nav.navbar-nav > li.nav-item.dropdown.active > ul.dropdown-menu > li.nav-item > a.nav-link,
#mainnav.offcanvas-collapse-toggle > ul.navbar-nav > li.nav-item.dropdown > ul.dropdown-menu > li > a,
#mainnav.offcanvas-collapse-toggle.open > ul.navbar-nav > li.nav-item.dropdown > ul.dropdown-menu > li > a, 
#mainnav.offcanvas-collapse-toggle > ul.navbar-nav > li.nav-item.dropdown.active > ul.dropdown-menu > li > a,
#mainnav.offcanvas-collapse-toggle.open > ul.navbar-nav > li.nav-item.dropdown.active > ul.dropdown-menu > li.active > a,
#mainnav.navbar-collapse.offcanvas-collapse-toggle > ul.navbar-nav > li.nav-item.dropdown > ul.dropdown-menu > li > a,
#mainnav.navbar-collapse.offcanvas-collapse-toggle > ul.navbar-nav > li.nav-item.dropdown.active > ul.dropdown-menu > li > a,
#mainnav.navbar-collapse.offcanvas-collapse-toggle.open > ul.navbar-nav > li.nav-item.dropdown.active > ul.dropdown-menu > li > a,
#mainnav.navbar-collapse.offcanvas-collapse-toggle.open > ul.navbar-nav > li.nav-item.dropdown.active > ul.dropdown-menu > li.active > a
{
	display:block;
	background-color:transparent;
	text-transform:none;
	width:auto;
	min-width:100%;
	margin: 0px 0px 0px 0px;
	line-height: 46px;
	padding:0px 15px 0px 40px;
	border-top:0px;
	border-bottom:1px solid #E5E5E5;
}



/* ----------------------------------------------------------------
	Main Menu Hover Dropdown transition
-----------------------------------------------------------------*/

@media (min-width: 992px) {

	#mainnav ul.navbar-nav ul.dropdown-menu 
	{
		display:block;
		opacity: 0;
		visibility: hidden;
		transition:0.4s;
		margin-top:0;
	}

	#mainnav ul.navbar-nav ul.dropdown-menu.fade-down
	{
		top:80%; 
		transform: rotateX(-75deg); 
		transform-origin: 0% 0%; 
	}

	#mainnav ul.nav.navbar-nav li.nav-item.dropdown.active ul.dropdown-menu.show,
	#mainnav ul.nav.navbar-nav li.nav-item.dropdown.show ul.dropdown-menu.show
	{
		transition: 0.4s;
		opacity:1;
		visibility:visible;
		top:100%;
		transform: rotateX(0deg);
	}

}


/* ----------------------------------------------------------------
	Main Menu Hover Effects
-----------------------------------------------------------------*/

@media (min-width: 992px) {

	#mainnav .navbar-nav 
	{
		-ms-flex-direction: row;
		flex-direction: row;
	}

	#mainnav ul.navbar-nav .nav-link 
	{
		padding-right: .5rem;
		padding-left: .5rem;
	}

	#mainnav ul.navbar-nav li a.nav-link,
	#mainnav ul.navbar-nav li a.nav-link:after,
	#mainnav ul.navbar-nav li a.nav-link:before 
	{
		-webkit-transition: all .5s;
		transition: all .5s;
	}

	/* stroke */
	#mainnav.stroke ul.navbar-nav li a.nav-link,
	#mainnav.fill ul.navbar-nav li a.nav-link 
	{
		position: relative;
	}
	#mainnav.stroke ul.navbar-nav li a.nav-link:after,
	#mainnav.fill ul.navbar-nav li a.nav-link:after 
	{
		position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
		margin: auto;
		width: 0%;
		content: '.';
		color: transparent;
		background: var(--bs-primary);
		height: 1px;
	}
	#mainnav.stroke ul.navbar-nav li a.nav-link:hover:after 
	{
		width: 100%;
	}

	/* fill */
	#mainnav.fill ul.navbar-nav li a.nav-link 
	{
		-webkit-transition: all 2s, color 4s;
		transition: all 2s, color 4s;
	}

	#mainnav.fill ul.navbar-nav li a.nav-link:after 
	{
		text-align: left;
		content: '.';
		margin: 0;
		opacity: 0;
	}
	#mainnav.fill ul.navbar-nav li a.nav-link:hover 
	{
		color: #FFFFFF;
		z-index: 1;
	}
	#mainnav.fill ul.navbar-nav li a.nav-link:hover:after 
	{
		z-index: -10;
		animation: fill 1s forwards;
		-webkit-animation: fill 1s forwards;
		-moz-animation: fill 1s forwards;
		opacity: 1;
	}

	/* shift */
	#mainnav.shift ul.navbar-nav li a.nav-link 
	{
		position:relative;
		z-index: 1;
	}
	#mainnav.shift ul.navbar-nav li a.nav-link:hover 
	{
		color: #FFFFFF;
	}
	#mainnav.shift ul.navbar-nav li a.nav-link:after 
	{
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		bottom: 0;
		right: 0;
		margin: auto;
		width: 100%;
		height: 1px;
		content: '.';
		color: transparent;
		background: var(--bs-primary);
		visibility: none;
		opacity: 0;
		z-index: -1;
	}
	#mainnav.shift ul.navbar-nav li a.nav-link:hover:after 
	{
		opacity: 1;
		visibility: visible;
		height: 100%;
	}

	/* Keyframes */
	@-webkit-keyframes fill {
		0% {
			width: 0%;
			height: 1px;
		}
		50% {
			width: 100%;
			height: 1px;
		}
		100% {
			width: 100%;
			height: 100%;
			background: var(--bs-primary);
		}
	}

	/* back */
	#mainnav.back ul.navbar-nav li a.nav-link 
	{
		background-color: transparent;
		color: #555555;
		-webkit-transition: background-color .4s, color .4s;
		transition: background-color .4s, color .4s;
	}
	#mainnav.back ul.navbar-nav li a.nav-link:hover 
	{
		background-color: var(--bs-primary);
		color: #FFFFFF;
	}

}





/* ----------------------------------------------------------------
	Footer
-----------------------------------------------------------------*/

#footer 
{
	position: relative;
	display:block;
	width:100%;
	background-color: #EEEEEE;
	font-weight: 300;
	border-top: 0px;
}

#footer .container
{
	text-align:left;
}

#footer > .container > .row
{
	padding-top:30px;
	padding-bottom:20px;
}

#footer img.footer-logo
{
	position: relative;
	display: block;
	max-width: 100%;
	max-height: 100%;
	height:64px;
	opacity: 1;
	-webkit-transition: height .4s ease, padding .4s ease, margin .4s ease, opacity .3s ease;
	transition: height .4s ease, padding .4s ease, margin .4s ease, opacity .3s ease;
}

#footer .companyname
{
	margin-bottom:0;
}

#footer .footerheader
{
	font-size:1.125rem;
	font-weight:600;
	text-transform:uppercase;
	color: #555555;
}

#footer ul.listfooter 
{
	list-style-type:none;
	margin: 0px 0px 0px 0px;
	padding:0px;
}

#footer ul.listfooter > li 
{
	clear:both;
	list-style-type:none;
	padding:0px 0px 0px 0px;
	margin: 0px 0px 7px 0px;
}

#footer ul.listfooter > li > a
{
	text-decoration:none;
	font-size:1rem;
	color:#555555;
	padding:0px 0px 0px 0px;
	margin: 0px 0px 0px 0px;
	line-height:1rem;
}
#footer ul.listfooter > li > a:hover
{
	text-decoration:none;
	color:var(--bs-primary);
}
#footer ul.listfooter > li > a.icon-listfooter:before 
{
	content: '\e804';
	color:var(--bs-primary);
}


/* ----------------------------------------------------------------
	Footer Social-Media icons
-----------------------------------------------------------------*/

#footer a.social-icon
{
	display: block;
	float:left !important;
	margin: 0 10px 5px 0;
	width: 2.5rem;
	height: 2.5rem;
	line-height: 2.5rem !important;
	border: 0px;
	border-radius: 0px;
	overflow: hidden;
	text-align:center;
}

.social-icon i 
{
	display: block;
	width: 2.5rem;
	height: 2.5rem;
	padding-top:0.3rem;
	position: relative;
	overflow: hidden;
	color:#FFFFFF;
}
.social-icon i::before
{
	text-align:center;
	font-size:180%;
	color:#FFFFFF;
}
#footer .social-icon i.icon-facebook 
{
	background-color:#39549F;
	padding-top: 0.7rem;
	padding-left: 0.7rem;
}
#footer .social-icon i.icon-twitter 
{
	background-color:#1DA1F2;
}
#footer .social-icon i.icon-youtube 
{
	background-color:#DC462D;
}
#footer .social-icon i.icon-instagram 
{
	background-color:#C5008F;
}
#footer .social-icon i.icon-linkedin 
{
	background-color:#0077B5;
}
#footer .social-icon i.icon-xing 
{
	background-color:#015F5D;
}
#footer .social-icon i.icon-kununu 
{
	background-color:#A3CE37;
}


body:not(.device-touch) .social-icon i 
{
	-webkit-transition: all .3s ease;
	-o-transition: all .3s ease;
	transition: all .3s ease;
}

.social-icon:hover i:first-child 
{
	margin-top: -2.5rem;
}


/* ----------------------------------------------------------------
	Copyrights
-----------------------------------------------------------------*/

#copyrights 
{
	padding: 10px 0 10px 0;
	background-color: #DDDDDD;
	color:#555555;
	font-size: 0.875rem;
	line-height: 1.0;
}

#copyrights p
{
	margin-bottom:0;
}

#copyrights p.copy 
{
	float: right;
	text-align:right;
	line-height:25px;
}
#copyrights p.copy span
{
	line-height:25px;
	display: inline-block;
	vertical-align: top;
}




/* ----------------------------------------------------------------
	Meta-Navigation Copyrights
-----------------------------------------------------------------*/

#copyrights ul.metanavigation 
{
	list-style-type:none;
	margin: 5px 0px 0px -7px;
	padding:0px;
}

#copyrights ul.metanavigation > li 
{
	list-style-type:none;
	display:inline-block;
	padding:0px;
	margin: 0px;
}

#copyrights ul.metanavigation > li > a
{
	text-decoration:none;
	font-size: 0.875rem;
	color:#555555;
	padding:0px 6px 0px 7px;
	margin: 0px 0px 0px 0px;
	line-height:1rem;
	border-right:1px solid #555555;
}
#copyrights ul.metanavigation > li:last-child > a
{
	border-right:0px;
}


#copyrights ul.metanavigation > li.active > a,
#copyrights ul.metanavigation > li > a:hover
{
	text-decoration:none;
	color:var(--bs-primary);
}



/* ----------------------------------------------------------------
	Go To Top
-----------------------------------------------------------------*/

#gototop 
{
	display: block;
	z-index: 599;
	position: fixed;
	width: 40px;
	height: 40px;
	background-color: #555555;
	background-color: rgba(85,85,85,0.95);
	color: #FFFFFF;
	font-size: 1.25rem;
	line-height: 36px;
	text-align: center;
	top: auto;
	left: auto;
	right: 10px;
	bottom: 10px;
	cursor: pointer;
	border-radius: 0px;
	opacity: 0.0;
	-webkit-transition:opacity 0.4s ease-out, background-color 0.4s ease-out;
	-moz-transition:opacity 0.4s ease-out, background-color 0.4s ease-out;
	-o-transition:opacity 0.4s ease-out, background-color 0.4s ease-out;
	transition:opacity 0.4s ease-out, background-color 0.4s ease-out;
}

#gototop::before 
{
	color: #FFFFFF;
	-webkit-transition:opacity 0.4s ease-out, background-color 0.4s ease-out;
	-moz-transition:opacity 0.4s ease-out, background-color 0.4s ease-out;
	-o-transition:opacity 0.4s ease-out, background-color 0.4s ease-out;
	transition:opacity 0.4s ease-out, background-color 0.4s ease-out;
}

#gototop:hover 
{
	background-color: var(--bs-primary);
	background-color: var(--bs-primary);
}


/* ----------------------------------------------------------------
	Section Container
-----------------------------------------------------------------*/

section
{
	position:relative;
}


section .section-title 
{
	text-align: center;
	padding-bottom: 1.5rem;
}

section .section-title h1,
section .section-title h2,
section .section-title h3, 
section .section-title h4 
{
	margin-bottom: 1rem;
	padding-bottom: 1rem;
	position: relative;
}

section .section-title h1::after,
section .section-title h2::after, 
section .section-title h3::after,
section .section-title h4::after 
{
	content: '';
	position: absolute;
	display: block;
	width: 200px;
	height: 1px;
	background: var(--bs-primary);
	bottom: 0;
	left: calc(50% - 100px);
}



/* ----------------------------------------------------------------
	Section shadow Effect
-----------------------------------------------------------------*/

div.shadow,
section.shadow
{
	position:relative;
	-webkit-box-shadow:0 1px 4px rgba(0, 0, 0, 0.3);
	box-shadow:0 1px 4px rgba(0, 0, 0, 0.3);
}

div.shadow:after,
section.shadow:after
{
	content:"";
	position:absolute;
	z-index:-1;
	top:100%;
	bottom:0;
	width:120%;
	height:50px;
	left:-10%;
	right:-10%;
	background:-webkit-radial-gradient(50% -3%, ellipse cover, rgba(0, 0, 0, 0.5), rgba(97, 97, 97, 0.0) 40%);
	background:radial-gradient(ellipse at 50% -3%, rgba(0, 0, 0, 0.5), rgba(97, 97, 97, 0.0) 40%);
}



/* ----------------------------------------------------------------
	Section diagonal Effects
-----------------------------------------------------------------*/

section.skew-03 
{
	position: relative;
	-webkit-transform: skewY(-3deg);
	-moz-transform: skewY(-3deg);
	-ms-transform: skewY(-3deg);
	-o-transform: skewY(-3deg);
	transform: skewY(-3deg);
	backface-visibility: hidden;
}

section.skew-03 > .container 
{
	position: relative;
	-webkit-transform: skewY(3deg);
	-moz-transform: skewY(3deg);
	-ms-transform: skewY(3deg);
	-o-transform: skewY(3deg);
	transform: skewY(3deg);
}

section.skew-06 
{
	position: relative;
	-webkit-transform: skewY(-6deg);
	-moz-transform: skewY(-6deg);
	-ms-transform: skewY(-6deg);
	-o-transform: skewY(-6deg);
	transform: skewY(-6deg);
	backface-visibility: hidden;
}
section.skew-06 > .container 
{
	position: relative;
	-webkit-transform: skewY(6deg);
	-moz-transform: skewY(6deg);
	-ms-transform: skewY(6deg);
	-o-transform: skewY(6deg);
	transform: skewY(6deg);
}

section.skew-10 
{
	position: relative;
	-webkit-transform: skewY(-10deg);
	-moz-transform: skewY(-10deg);
	-ms-transform: skewY(-10deg);
	-o-transform: skewY(-10deg);
	transform: skewY(-10deg);
	backface-visibility: hidden;
}
section.skew-10 > .container 
{
	position: relative;
	-webkit-transform: skewY(10deg);
	-moz-transform: skewY(10deg);
	-ms-transform: skewY(10deg);
	-o-transform: skewY(10deg);
	transform: skewY(10deg);
}


section.skew-03cc 
{
	position: relative;
	-webkit-transform: skewY(3deg);
	-moz-transform: skewY(3deg);
	-ms-transform: skewY(3deg);
	-o-transform: skewY(3deg);
	transform: skewY(3deg);
	backface-visibility: hidden;
}

section.skew-03cc > .container 
{
	position: relative;
	-webkit-transform: skewY(-3deg);
	-moz-transform: skewY(-3deg);
	-ms-transform: skewY(-3deg);
	-o-transform: skewY(-3deg);
	transform: skewY(-3deg);
}

section.skew-06cc 
{
	position: relative;
	-webkit-transform: skewY(6deg);
	-moz-transform: skewY(6deg);
	-ms-transform: skewY(6deg);
	-o-transform: skewY(6deg);
	transform: skewY(6deg);
	backface-visibility: hidden;
}
section.skew-06cc > .container 
{
	position: relative;
	-webkit-transform: skewY(-6deg);
	-moz-transform: skewY(-6deg);
	-ms-transform: skewY(-6deg);
	-o-transform: skewY(-6deg);
	transform: skewY(-6deg);
}

section.skew-10cc 
{
	position: relative;
	-webkit-transform: skewY(10deg);
	-moz-transform: skewY(10deg);
	-ms-transform: skewY(10deg);
	-o-transform: skewY(10deg);
	transform: skewY(10deg);
	backface-visibility: hidden;
}
section.skew-10cc > .container 
{
	position: relative;
	-webkit-transform: skewY(-10deg);
	-moz-transform: skewY(-10deg);
	-ms-transform: skewY(-10deg);
	-o-transform: skewY(-10deg);
	transform: skewY(-10deg);
}



/* ----------------------------------------------------------------
	Content Elements
-----------------------------------------------------------------*/

section .card, 
section .container
{
	text-align:left;
}



/* ----------------------------------------------------------------
	Content Info-Box 
-----------------------------------------------------------------*/

.info-box 
{
	color: #555555;
	text-align: center;
	box-shadow: 0 0 30px rgba(214, 215, 216, 0.6);
	padding: 20px 0 30px 0;
	background: #FFFFFF;
	border-radius: 4px;
}

.info-box [class^="icon-"]::before, 
.info-box [class*=" icon-"]::before 
{
	font-size: 200%;
	margin-top: 20px;
}


/* ----------------------------------------------------------------
	Content Hover-Box 
-----------------------------------------------------------------*/

.hoverbox
{
	position: relative;
	width: 100%;
	margin: auto auto 30px auto;
	overflow: hidden;
}

@media (min-width: 768px) {

	.hoverbox
	{
		position: relative;
		width: 100%;
		margin: auto;
		overflow: hidden;
	}

}

.hoverbox .hoverbox-overlay 
{
	background: rgba(0, 0, 0, 0.7);
	position: absolute;
	height: 100%;
	width: 100%;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
	opacity: 0;
	-webkit-transition: all 0.4s ease-in-out 0s;
	-moz-transition: all 0.4s ease-in-out 0s;
	transition: all 0.4s ease-in-out 0s
}

.hoverbox:hover .hoverbox-overlay 
{
	opacity: 1;
}

.hoverbox .hoverbox-image 
{
	width: 100%
}

.hoverbox .hoverbox-details 
{
	position: absolute;
	text-align: center;
	padding-left: 1em;
	padding-right: 1em;
	width: 100%;
	top: 50%;
	left: 50%;
	opacity: 0;
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	-webkit-transition: all 0.3s ease-in-out 0s;
	-moz-transition: all 0.3s ease-in-out 0s;
	transition: all 0.3s ease-in-out 0s;
}

.hoverbox:hover .hoverbox-details 
{
	top: 50%;
	left: 50%;
	opacity: 1;
}

.hoverbox .hoverbox-details .hoverbox-title 
{
	color: #FFFFFF;
	font-weight: 600;
	letter-spacing: 0.15em;
	margin-bottom: 0.5rem;
	text-transform: uppercase;
}

.hoverbox .hoverbox-details .hoverbox-text
{
	color: #FFFFFF;
	font-size: 1.0rem;
}



/* ----------------------------------------------------------------
	Content Flip-Box 
-----------------------------------------------------------------*/

.flipbox 
{
	background-color: transparent;
	width: 510px;
	height: 382px;
	max-width: 100%;
	margin: auto auto 30px auto;
	perspective: 1000px;
}

@media (min-width: 768px) {

	.flipbox
	{
		background-color: transparent;
		position: relative;
		width: 350px;
		height: 262px;
		max-width: 100%;
		margin: auto;
		perspective: 1000px;
	}

}



.flipbox-inner 
{
	position: relative;
	width: 100%;
	height: 100%;
	text-align: center;
	transition: transform 0.8s;
	transform-style: preserve-3d;
}

.flipbox .flipbox-image 
{
	width: 100%;
}

.flipbox:hover .flipbox-inner 
{
	transform: rotateY(180deg);
}


.flipbox-front, .flipbox-back 
{
	position: absolute;
	width: 100%;
	height: 100%;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.flipbox-front 
{
	background-color: #CCCCCC;
	color: #555555;
}

.flipbox-back 
{
	background: rgba(0, 0, 0, 0.7);
	color: #FFFFFF;
	transform: rotateY(180deg);
}

.flipbox-back .flipbox-title 
{
	color: #FFFFFF;
	font-weight: 600;
	letter-spacing: 0.15em;
	margin-top: 2.5rem;
	margin-bottom: 0.5rem;
	text-transform: uppercase;
}

.flipbox-back .flipbox-text
{
	color: #FFFFFF;
	font-size: 1.0rem;
}



/* ----------------------------------------------------------------
	Header image
-----------------------------------------------------------------*/

.header-image
{
	position:relative;
	overflow:hidden;
}

.header-image > figcaption
{
	position:absolute;
	bottom: 2px;
	width:100%;
}

.header-image > figcaption h1
{
	margin-bottom: 0.3rem;
}

.header-image .img-fluid
{
	width: auto;
	max-width: none;
	height: 280px;
	margin: 0 auto;
}

@media (min-width: 576px) {

	.header-image .img-fluid
	{
		width: 100%;
		max-width: 100%;
		height: auto;
		min-height: 280px;
		margin: 0 auto;
	}

	.header-image > figcaption
	{
		position:absolute;
		bottom: 20px;
		width:100%;
	}

}



/* ----------------------------------------------------------------
	Video
-----------------------------------------------------------------*/

.video-container > .video-caption
{
	position:absolute;
	bottom: 2px;
	width:100%;
}

.video-container > .video-caption h1
{
	margin-bottom: 0.3rem;
}

@media (min-width: 576px) {

	.video-container > .video-caption
	{
		position:absolute;
		bottom: 20px;
		width:100%;
	}

}


/* ----------------------------------------------------------------
	Slider Element
-----------------------------------------------------------------*/

#start, 
#slider, 
#cardslider 
{
	position: relative;
	float: none;
	width: 100%;
	margin: 0 auto;
}

.swiper-slide figure
{
	margin-bottom: 0px;
}

.cardslider > .swiper-container 
{
	overflow: hidden;
	padding: 15px 15px 45px 15px;
}

.cardslider .swiper-slide
{
	padding-left: 0px;
	padding-right: 0px;
}

.cardslider > .swiper-buttons
{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	height: 100%;
	width: 100%;
	border:0px;
}

.swiper-button-prev-custom,
.swiper-button-next-custom 
{
	position: absolute;
	top: 50%;
	width: calc(44px / 44 * 27);
	height: 44px;
	margin-top: calc(-1 * 44px / 2);
	z-index: 10;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--bs-primary);
}

.swiper-button-prev-custom:after,
.swiper-button-next-custom:after 
{
	font-family: swiper-icons;
	font-size: 44px;
	text-transform: none !important;
	letter-spacing: 0;
	text-transform: none;
	font-variant: initial;
	line-height: 1;
}
.swiper-button-prev-custom 
{
	left: -25px;
	right: auto;
}
.swiper-button-prev-custom:after
{
	content: 'prev';
}
.swiper-button-next-custom
{
	right: -25px;
	left: auto;
}
.swiper-button-next-custom:after
{
	content: 'next';
}

@media (min-width: 768px) {

	.swiper-button-prev-custom 
	{
		left: -25px;
		right: auto;
	}

	.swiper-button-next-custom
	{
		right: -25px;
		left: auto;
	}

}

.animate .swiper-slide-active h2,
.animate .swiper-slide-active p
{
	-webkit-animation-delay:1.0s;
	animation-delay:1.0s;
	-webkit-animation-duration: 0.8s;
	animation-duration: 0.8s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-name:fadeInUp;
	animation-name:fadeInUp;
}




/* ----------------------------------------------------------------
	Parallax Element
-----------------------------------------------------------------*/

.parallax, 
section.parallax 
{
	background-color: transparent;
	background-attachment:fixed;
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-size: cover;
	min-height: 350px;
}

/* Safari 11+ */
@supports (-webkit-marquee-speed: 0) and (font-optical-sizing: none) {
	section.parallax {
		background-attachment: scroll;
	}
}
/* Safari 13+ */
@supports (-webkit-marquee-speed: 0) and (paint-order: fill) and (white-space: break-spaces) {
	section.parallax {
		background-attachment: scroll;
	}
}
/* Safari 14+ */
@supports (-webkit-marquee-speed: 0) and (paint-order: fill) {
	_:is(_), section.parallax {
		background-attachment: scroll;
	}
}

.parallax.bg1 
{
	background-image: linear-gradient(rgba(2, 2, 2, 0.1), rgba(0, 0, 0, 0.5)), url('../../images/parallax.png');
}


section.parallax.textshadow
{
	text-shadow: 0px 0px 20px #000000;
}



/* ----------------------------------------------------------------
	Accordion
-----------------------------------------------------------------*/

.accordion .accordion-header .accordion-title
{
	display:block;
	width: 100%;
	padding: 0;
	margin-bottom: 0rem;
}

.accordion .accordion-button
{
	color: #555555;
	background-color: transparent;
	box-shadow: inset 0 -1px 0 rgba(0,0,0,.125);
}

.accordion .accordion-button:not(.collapsed) 
{
	color: #FFFFFF;
	background-color: #555555;
	box-shadow: inset 0 -1px 0 rgba(0,0,0,.125);
}

.accordion .accordion-button::after
{
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23555555'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}
.accordion .accordion-button:not(.collapsed)::after
{
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ffffff'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}



/* ----------------------------------------------------------------
	News Element
-----------------------------------------------------------------*/

.news
{
	display: block;
	padding-left: 15px;
	padding-right: 15px;
	margin-bottom: 1.8rem;
}
.news:last-child
{
	margin-bottom: 0;
}

.news .news-image 
{
	-ms-flex: 0 0 100%;
	flex: 0 0 100%;
	max-width: 100%;
}

.news .news-body
{
	text-align:left;
	-ms-flex: 0 0 100%;
	flex: 0 0 100%;
	max-width: 100%;
}

.news .news-body .news-title
{
	margin-top:1rem;
}

@media (min-width: 768px) {

	.news
	{
		display: flex;
	}

	.news .news-image 
	{
		-ms-flex: 0 0 33.333333%;
		flex: 0 0 33.333333%;
		max-width: 33.333333%;
	}
	.news .news-body
	{
		text-align:left;
		-ms-flex: 0 0 66.666667%;
		flex: 0 0 66.666667%;
		max-width: 66.666667%;
	}

	.news .news-body .news-title
	{
		margin-top:0rem;
	}

}






/* ----------------------------------------------------------------
	Contact Form
-----------------------------------------------------------------*/

form fieldset
{
	margin-bottom:0px;
}

form fieldset.row,
form fieldset .row
{
	margin-bottom:15px;
}

form .form-control,
#frmContact .form-control
{
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.2;
	color: #555555;
	background-color: #FFFFFF;
	border: 1px solid #CCCCCC;
	border-radius: 0rem;
}

form .form-label, 
#frmContact .form-label
{
	font-size: 1rem;
	font-weight: 400;
	color: #555555;
}

form textarea.form-control 
{
	min-height: 8rem;
}

form input.keinfeld 
{
	position: absolute;
	left: -10000px;
	top: auto;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

form button.btn
{
	margin-top:25px;
}


/* ----------------------------------------------------------------
	Contact Form v2
-----------------------------------------------------------------*/

form.info-box 
{
	color: #555555;
	text-align: left;
	box-shadow: 0 0 30px rgba(214, 215, 216, 0.6);
	padding: 25px 25px 10px 25px;
	background: #FFFFFF;
	border-radius: 4px;
}

form.info-box.form-horizontal > fieldset > .form-row > .form-group.col-sm-6:last-child > .col-sm-12
{
	padding-right:0px;
}

form.info-box.form-horizontal > fieldset > .form-group.col-sm-12,
form.info-box.form-horizontal > fieldset > .form-group.col-sm-12 > .col-sm-12
{
	padding-left:0px;
	padding-right:0px;
}

form.info-box.form-horizontal > fieldset.form-row > .form-group.col-sm-12.checkbox > label
{
	text-align:left;
	font-size:0.9rem;
	padding-left: 5px;
	padding-right: 5px;
}