/* ----------------------------------------------------------------
	Fonts
-----------------------------------------------------------------*/

/* cabin-sketch-regular - latin */
@font-face {
  font-display: swap;
  font-family: 'Cabin Sketch';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/cabin-sketch-v23-latin-regular.woff2') format('woff2'), 
       url('../fonts/cabin-sketch-v23-latin-regular.ttf') format('truetype');
}

/* cabin-sketch-700 - latin */
@font-face {
  font-display: swap;
  font-family: 'Cabin Sketch';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/cabin-sketch-v23-latin-700.woff2') format('woff2'), 
       url('../fonts/cabin-sketch-v23-latin-700.ttf') format('truetype');
}

/* roboto-regular - latin */
@font-face {
  font-display: swap;
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/roboto-v50-latin-regular.woff2') format('woff2'), 
       url('../fonts/roboto-v50-latin-regular.ttf') format('truetype');
}

/* roboto-italic - latin */
@font-face {
  font-display: swap;
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 400;
  src: url('../fonts/roboto-v50-latin-italic.woff2') format('woff2'), 
       url('../fonts/roboto-v50-latin-italic.ttf') format('truetype');
}

/* roboto-700 - latin */
@font-face {
  font-display: swap;
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/roboto-v50-latin-700.woff2') format('woff2'), 
       url('../fonts/roboto-v50-latin-700.ttf') format('truetype');
}


/* ----------------------------------------------------------------
	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:#F6F6F6;
	margin:0px auto;
	text-align: center;
	color:#222222;
}

html 
{
	height: 100%;
	padding-bottom:1px;
	scroll-behavior: smooth;
}


body 
{
	height: 100%;
	overflow-x: hidden;
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
	font-family: 'Roboto', sans-serif;
	font-size:1.1rem;
	font-weight: 400;
	line-height:1.5;
	color: #222222;
}


/* ----------------------------------------------------------------
	accessibility
-----------------------------------------------------------------*/

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}
}



/* ----------------------------------------------------------------
	Main layout
-----------------------------------------------------------------*/

#main
{
	text-align:left;
}

@media (max-width: 991.98px) {

	#main
	{
		padding-top:60px;
	}

}

.row
{
	position: relative;
}



/* ----------------------------------------------------------------
	selection
-----------------------------------------------------------------*/

::selection 
{
	background: #0A7BAA;
	color: #FFFFFF;
	text-shadow: none;
}

::-moz-selection 
{
	background: #0A7BAA;
	color: #FFFFFF;
	text-shadow: none;
}

::-webkit-selection 
{
	background: #0A7BAA;
	color: #FFFFFF;
	text-shadow: none;
}


a:focus, input:focus, textarea:focus, button:focus,
#main a:focus, #main input:focus, #main textarea:focus, #main button:focus
{
	outline: 2px solid #000000;
	outline-offset: 1px;
}


/* ----------------------------------------------------------------
	Helper Classes
-----------------------------------------------------------------*/

.clear 
{
	clear: both;
	display: block;
	font-size: 0px;
	height: 0px;
	line-height: 0;
	width: 100%;
	overflow:hidden;
}

.arrow-contact
{
	margin-left: 410px;
	opacity: 0.5;
}

@media (max-width: 575.98px) {

	.arrow-contact
	{
		margin-left: 210px;
		transform: scaleX(-1);
	}

}


@media (max-width: 359.98px) {

	.arrow-contact
	{
		margin-left: 166px;
	}

}


.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;
}



/* ----------------------------------------------------------------
	Typography
-----------------------------------------------------------------*/

h1,
h2,
h3,
h4,
h5,
h6 
{
	font-family: 'Roboto', sans-serif;
	color: #222222;
	font-weight: 700;
	line-height: 1.5;
	margin: 0 0 1.5rem 0;
}

h5,
h6 
{
	margin-bottom: 1.2rem;
}

h1 
{
	font-family: 'Cabin Sketch';
	font-weight: 700;
	font-size: 3.25rem;
	color: #000000;
	line-height: 1.1;
	text-shadow: 1px 1px 0px rgba(0,0,0,0.2);
}

h2 
{
	font-family: 'Cabin Sketch';
	font-weight: 700;
	font-size: 1.875rem;
}

h3 
{
	font-family: 'Cabin Sketch';
	font-weight: 400;
	font-size: 1.6rem;
}

h4 
{
	color: #666666;
	font-size: 1.3rem; 
}
h5 
{
	font-size: 1.1rem;
}
h6 
{
	font-size: 0.875;
}



@media (max-width: 1399.98px) {

	h1 
	{
		font-size: 2.8rem;
	}

}

@media (max-width: 1199.98px) {

	h1 
	{
		font-size: 2.35rem;
	}

}

@media (max-width: 767.98px) {

	h1 
	{
		font-size: 2.05rem;
	}

	h2 
	{
		font-size: 1.5rem;
	}

	h3 
	{
		font-size: 1.3rem;
	}

	h4 
	{
		font-size: 1.1rem;
	}

}


@media (max-width: 575.98px) {

	h1 
	{
		font-size: 1.75rem;
	}

}

@media (max-width: 419.98px) {

	#start h1.fw-bold span.text-secondary:first-child
	{
		display:block;
	}

}




p,
pre,
ul,
ol,
dl,
dd,
blockquote,
address,
table,
fieldset,
form 
{
	margin-bottom: 1.2rem;
}

small 
{
	font-family: 'Roboto', 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: "■"; */
	content: '';
	display: inline-block;
	background: url("../img/icon-list-32.png");
	background-size: cover;
	width: 16px;
	height: 16px;
	speak: never;
	margin-left: -30px;
	margin-right: 14px;
	text-align: left;
	text-transform: none;
	text-decoration: inherit;
	line-height: 1rem;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

ul.checklist li:before
{
	content: '';
	display: inline-block;
	background: url("../img/icon-check-32.png");
	background-size: cover;
	width: 16px;
	height: 16px;
	speak: never;
	margin-left: -30px;
	margin-right: 14px;
	text-align: left;
	text-transform: none;
	text-decoration: inherit;
	line-height: 1.1rem;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

ul.list > li > ul,
ul.checklist > li > ul 
{
	margin-left: 20px;
}


a img 
{
	border: none;
}

a.link-grey
{
	color:#222222;
	text-decoration:underline;
}
a.link-grey:hover,
a.link-grey:focus
{
	color:#000000;
	text-decoration:underline;
}

a.link-external
{
	color:#222222;
	text-decoration:underline;
}
a.link-external:hover,
a.link-external:focus
{
	color:#000000;
	text-decoration:underline;
}

img 
{ 
	max-width: 100%;
}

figure.picture-item
{
	margin: 0 0 1.5rem;
}

figure.image img.ref-border
{
	border-bottom-left-radius: 15px 255px;
	border-bottom-right-radius: 225px 15px;
	border-top-left-radius: 255px 15px;
	border-top-right-radius: 15px 225px;
	border-color: #666666;
	border-style: solid;
	border-width: 2px;
}



/* ----------------------------------------------------------------
	Button Classes
-----------------------------------------------------------------*/

.button 
{
	align-self: center;
	background: transparent;
	padding: 0.5rem 1rem;
	margin: 0 1rem 0 0;
	transition: all 0.5s ease;
	color: #333333;
	font-size: 1.1rem;
	outline: none;
	text-decoration: none;
	box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0);
	border-radius: 255px 15px 225px 15px/15px 225px 15px 255px;
	/* Above is shorthand for: border-top-left-radius: 255px 15px;
	 border-top-right-radius: 15px 225px;
	 border-bottom-right-radius: 225px 15px;
	 border-bottom-left-radius:15px 255px;
	 */
}
.button:hover,
.button:focus
{
	/*box-shadow: 20px 38px 34px -26px rgba(0, 0, 0, .2);*/
	box-shadow: 2px 8px 4px -6px rgba(0, 0, 0, .3);
}


.button.button-outline 
{
	border: solid 2px #333333;
}

.button.button-outline-dark 
{
	border: solid 2px #333333;
	background-color: #333333;
	color: #FFFFFF;
}


@media (max-width: 359.98px) {

	.button 
	{
		margin-right: 0;
	}

}



/* ----------------------------------------------------------------
	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: #94C045;
}

.text-grey 
{
	color: #222222;
}

.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: #94C045;
}

.bg-grey 
{
	background-color: #F6F6F6;
}

.bg-white 
{
	background-color: #FFFFFF;
}




/* ----------------------------------------------------------------
	Header
-----------------------------------------------------------------*/

#header 
{
	position: relative;
	width: 100%;
	height: 60px;
	background-color: transparent;
	border-bottom: 0px 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: 0px;
	right: 0;
	left: 0;
	z-index: 1050;
	width: 100%;
	background-color: transparent;
	border-bottom: 0px solid #F5F5F5;
}


.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;
	}

}



/* ----------------------------------------------------------------
	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: #222222;
	-webkit-transition: color .3s ease-in-out;
	transition: color .3s ease-in-out;
}


#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: #94C045;
}


/* dropdown caret */
.dropdown-toggle::after 
{
	display:inline-block;
}


#header .navbar-toggler,
#header .navbar-light .navbar-toggler 
{
	background-color: #F6F6F6;
	color: #222222;
	position: absolute;
	padding: .25rem .5rem;
	font-size: 1.25rem;
	top: 20px;
	right: 20px;
	border: solid 2px #222222;
	border-radius: 255px 15px 225px 15px/15px 225px 15px 255px;
}

#header .navbar-toggler:focus,
#header .navbar-light .navbar-toggler:focus
{
	background-color: #FFFFFF;
	outline: 2px solid #000000;
	outline-offset: 1px;
}

#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='rgba(34,34,34, 1.0)' 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;
	}

	#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.navbar-nav > li.nav-item > a.nav-link:after 
	{
		content: '';
		display: none;
		width:0;
	}

	#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;
	}

}

/* ----------------------------------------------------------------
	Offcanvas Menu
-----------------------------------------------------------------*/

#nav .offcanvas
{
	top:0px;
	width:300px !important;
	height:100vh;
}

@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;
	}

}


#offcanvasNav.offcanvas.show div.offcanvas-header button.btn-close,
#offcanvasNav.offcanvas div.offcanvas-header button.btn-close
{
	transition: all 0.5s ease;
	border: solid 2px #FFFFFF;
	border-radius: 255px 15px 225px 15px/15px 225px 15px 255px;
	opacity:1;
}
#offcanvasNav.offcanvas.show div.offcanvas-header button.btn-close:focus,
#offcanvasNav.offcanvas div.offcanvas-header button.btn-close:focus
{
	border: solid 2px #FFFFFF;
	border-radius: 255px 15px 225px 15px/15px 225px 15px 255px;
	opacity:1;
}

#offcanvasNav.offcanvas.show div#mainnav.offcanvas-body ul.navbar-nav > li.nav-item > a.nav-link:focus
{
	outline: 2px solid #FFFFFF;
	outline-offset: 1px;
}




/* ----------------------------------------------------------------
	Footer
-----------------------------------------------------------------*/

#footer 
{
	position: relative;
	display:block;
	width:100%;
	background-color: #575757;
	color: #FFFFFF;
	font-size:1.0rem;
	font-weight: 400;
	border-top: 0px;
}

#footer .container
{
	text-align:left;
}

#footer > .container > .row
{
	padding-top:30px;
	padding-bottom:20px;
}


#footer p
{
	margin-bottom: 0.2rem;
}


#footer .companyname
{
	margin-bottom:0;
}

#footer .footerheader
{
	font-size:1.125rem;
	font-weight:700;
	text-transform:uppercase;
	color: #FFFFFF;
}


#footer p.pbicons-phone a.tel,
#footer p.pbicons-mail a
{
	color:#FFFFFF;
	text-decoration:none;
}
#footer p.pbicons-phone a.tel:hover,
#footer p.pbicons-phone a.tel:focus,
#footer p.pbicons-mail a:hover,
#footer p.pbicons-mail a:focus
{
	color:#FFFFFF;
	text-decoration:underline;
}


#footer ul.footer-nav 
{
	list-style-type:none;
	margin: 0px 0px 0px 0px;
	padding:0px;
}

#footer ul.footer-nav > li 
{
	clear:both;
	list-style-type:none;
	padding:0px 0px 0px 0px;
	margin: 0px 0px 7px 0px;
}

#footer ul.footer-nav > li > a
{
	text-decoration:none;
	font-size:1.0rem;
	color:#FFFFFF;
	padding:0px 0px 0px 0px;
	margin: 0px 0px 0px 0px;
	line-height:1rem;
}
#footer ul.footer-nav > li > a:hover
{
	text-decoration:underline;
	color:#FFFFFF;
}

#footer .moreinfo
{
	display: none;
	visibility: hidden;
}

#footer a.typo3-community
{
	display:inline-block;
}

#footer a:focus
{
	outline: 2px solid #FFFFFF;
	outline-offset: 1px;
}

@media (max-width: 991.98px) {

	#metanav
	{
		margin-top:1.5rem;
	}

}


@media (max-width: 767.98px) {

	#metanav
	{
		margin-bottom:1.5rem;
	}

}


/* ----------------------------------------------------------------
	Go To Top
-----------------------------------------------------------------*/

#totop 
{
	display: block;
	z-index: 599;
	position: fixed;
	width: 50px;
	height: 50px;
	padding:3px;
	background-color: #FFFFFF;
	background-color: rgba(255,255,255,0.95);
	background-image:url('../img/arrow-up-80.png');
	background-size:40px;
	background-repeat:no-repeat;
	background-position:center;
	color: #222222;
	font-size: 1.25rem;
	line-height: 36px;
	text-align: center;
	top: auto;
	left: auto;
	right: 15px;
	bottom: 15px;
	cursor: pointer;
	border: solid 2px #41403E;
	border-radius: 255px 15px 225px 15px/15px 225px 15px 255px;
	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;
}

#totop::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;
}

#totop:hover 
{
	background-color: #BBBBBB;
}



/* ----------------------------------------------------------------
	Section Container
-----------------------------------------------------------------*/

section
{
	position:relative;
}


section .section-title 
{
	text-align: left;
	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: 0.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: 100px;
	height: 1px;
	background: #666666;
	bottom: 0;
	left: 0;
}



/* ----------------------------------------------------------------
	Content Elements
-----------------------------------------------------------------*/

section .card, 
section .container
{
	text-align:left;
}


div.divider
{
	background-image:url('../img/divider-bw-thin.png');
	background-repeat:no-repeat;
	background-position:center;
	position:relative;
	display:block;
	width:100%;
	height:6px;
	opacity:0.7;
}



.tech-tag 
{
	align-self: center;
	background: transparent;
	padding: 0.5rem 1rem;
	margin: 0 1rem 0 0;
	transition: all 0.5s ease;
	color: #333333;
	font-size: 1.1rem;
	outline: none;
	text-decoration: none;
	border: solid 2px #333333;
	box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0);
	border-radius: 255px 15px 225px 15px/15px 225px 15px 255px;
}



/* ----------------------------------------------------------------
	Kontakt Icons 
-----------------------------------------------------------------*/

.icons-phone, 
.icons-envelope
{
	margin-bottom: 1.0rem;
}

.icons-phone > .phone, 
.icons-envelope > .email
{
	position:relative;
	display: inline-block;
	content: '';
	font-size:1.1rem;
	color: #222222;
	text-align: left;
	text-decoration:none;
}

.icons-phone > .phone::before,
.icons-envelope > .email::before
{
	background-size:32px;
	background-repeat:no-repeat;
	background-position:center;
	position:relative;
	display:inline-block;
	content: '';
	width:32px;
	height:32px;
	margin-right: .5rem;
	margin-bottom: -10px;
}

.icons-phone > .phone::before 
{
	background-image:url('../img/icon-phone-32.png');
}
.icons-envelope > .email::before 
{
	background-image:url('../img/icon-envelope-32.png');
}


/* ----------------------------------------------------------------
	Start responsive
-----------------------------------------------------------------*/

@media (orientation: portrait) {

	#start.animate.vh-100, 
	#start.animate.vh-100 > .container > .row.vh-100
	{
		height: auto !important;
	}

	#start.animate.vh-100 > .container
	{
		padding-top:2rem;
	}

}


@media (max-width: 767.98px) {

	#start.animate.vh-100, 
	#start.animate.vh-100 > .container > .row.vh-100
	{
		height: auto !important;
	}

}




/* ----------------------------------------------------------------
	Contact Form
-----------------------------------------------------------------*/

#frmContact input,
#frmContact select,
#frmContact textarea 
{
	color: #222222;
	border-color: #41403E;
	background: transparent;
	background-color: #FFFFFF;
	border-bottom-left-radius: 15px 255px;
	border-bottom-right-radius: 225px 15px;
	border-style: solid;
	border-top-left-radius: 255px 15px;
	border-top-right-radius: 15px 225px;
	border-width: 1px;
	display: block;
	font-size: 1.1rem;
	outline: none;
	padding: 0.5rem;
}

form fieldset
{
	margin-bottom:0px;
}

form fieldset.row,
form fieldset .row
{
	margin-bottom:15px;
}

form .form-control,
#frmContact .form-control
{
	font-size: 1.1rem;
	font-weight: 400;
	line-height: 1.2;
/*
	padding: 0.5rem;
	color: #222222;
	background-color: #FFFFFF;
	border: 1px solid #666666;
	border-radius: 0rem;
*/
}

form .form-label, 
#frmContact .form-label
{
	font-size: 1.1rem;
	font-weight: 400;
	color: #222222;
}

form#frmContact textarea.form-control,
form textarea.form-control 
{
	padding: 0.5rem;
	min-height: 8rem;
}

form input.keinfeld 
{
	position: absolute;
	left: -10000px;
	top: auto;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

form button.btn
{
	margin-top:25px;
}

#frmContact button#senden.button.button-outline:focus
{
	outline: 2px solid #000000;
	outline-offset: 1px;
}


#kontakt #response.alert.alert-success
{
	color:#386331 !important;
	background-color:#FFFFFF;
}

#kontakt #response.alert.alert-danger
{
	color:#9B2A29 !important;
	background-color:#FFFFFF;
}

#kontakt #response.alert.alert-info
{
	color:#0C5C7C !important;
	background-color:#FFFFFF;
}