/* -----------------------
Base styles
------------------------*/

body
{
	margin: 0;
	padding: 0;
	color: #303030;
	background-color: #eee;
	/*font: 1.1em/1.2 "Helvetica Neue", Helvetica, Arial, Geneva, sans-serif;*/
	font: 1.1em/1.2 'Work Sans', sans-serif;
    text-align: left;
}

h1,h2,h3,h4,h5,h6
{
	margin: 0 0 1em;
	font-weight: 600;
	line-height: 1.1;
    color: #20d4b6;
}

h1 { font-size: 3.0em; text-align: center; } /* 36px */
h2 { font-size: 1.75em; } /* 28px */
h3 { font-size: 1.375em; } /* 22px */
h4 { font-size: 1.125em; } /* 18px */
h5 { font-size: 1em; } /* 16px */
h6 { font-size: .875em; } /* 14px */

p
{
	margin: 0 0 2.0em;
	line-height: 1.35;
    max-width: 40em;
}

blockquote
{
	padding: 1.5em 2em;
	border-left: 5px solid #fff;
	background-color: rgba(0,0,0,0.2);
	max-width: 70%;
	margin: auto;
	margin-bottom: 1em;
}

.quote
{
	margin: 0.5em 0 1em 0;
	line-height: 1.3;
	font-size: 1.2em;
}

.client
{
	font-size: 1em;
	color: #303030;
	margin-bottom: 0;
}

.client-position
{
	font-size: 1em;
	color: #303030;
	margin-bottom: 0;
	opacity: 0.6;
}

hr
{
	height: 0;
	margin-top: 4em;
	margin-bottom: 4em;
	border: 0;
	border-top: 1px solid #949494;
    /*max-width: 15em;*/
}

table
{
	background-color: transparent;
	border-spacing: 0;
	border-collapse: collapse;
	border-top: 1px solid #ddd;
}

th, td
{
	padding: .5em 1em;
	vertical-align: top;
	text-align: left;
	border-bottom: 1px solid #ddd;
}

a, a:link, a:visited, a:focus 
{
    text-decoration: none;
    color: #303027;
    border-bottom: 1px solid #00e0ba;
    padding-bottom: 1px;
}

a:hover, a:active
{
    color: #00e0ba;
}

/*a:visited { color: purple; }
a:focus { color: black; }
a:hover { color: green; }
a:active { color: red; }*/

ul
{
    text-align: left;
}

/* -----------------------
Layout styles
------------------------*/

.container
{
	max-width: 65em;
	margin: 0 auto;
}

#legal
{
	margin: 0 auto;
    display: none;
}

.header
{
	color: #fff;
	background: #20d4b6;
	/*padding: 1em 1.25em;*/
    height: 100vh;
    display: table;
    overflow: hidden;
    margin: 0 auto;
    width: 100%;
}

.header-content
{
    display: table-cell;
    vertical-align: middle;
}

.header-heading
{
    margin: 0;
    color: #fff;
    padding: 40px 80px;
    font-weight: 400;
}

.nav-bar
{
	background: #000;
	padding: 0;
}

.content-main
{
	padding: 5em 1.25em;
    color: #ccc;
	background-color: #303030;
}

.content-contact
{
    padding: 3.5em 1.25em 5em;
    color: #ffffff;
	background-color: #21d4b6;
}

.contact-heading
{
    margin: 0;
    color: #fff;
    padding: 40px 0 20px;
}

.content-additional
{
	padding: 5em 1.25em;
	background-color: #f0f0f0;
}

.footer
{
	color: #636363;
	background-color: #303030;
	padding: 2em 1.25em;
    font-size: 0.7em;
    text-align: left;
}

.footer a
{
    text-decoration: none;
    color: #636363;
    border-bottom: 1px solid #636363;
    cursor: pointer;
}

.footer p
{
	max-width: unset;
    
}

/* -----------------------
Nav
------------------------*/

.nav
{
	margin: 0;
	padding: 0;
	list-style: none;
}

.nav li
{
	display: inline;
	margin: 0;
}

.nav a
{
	display: block;
	padding: .7em 1.25em;
	color: #fff;
	text-decoration: none;
	border-bottom: 1px solid gray;
}

.nav a:link { color: white; }
.nav a:visited { color: white; }

.nav a:focus
{
	color: black;
	background-color: white;
}

.nav a:hover
{
	color: white;
	background-color: green;
}

.nav a:active
{
	color: white;
	background-color: red;
}

/* -----------------------
Single styles
------------------------*/

.img-responsive { max-width: 100%; }

.img-portrait
{
    max-width: 250px;
    border-radius: 50%;
    margin: 1em 0 1em 2em;
    float: right;
}

.bold-white
{
    font-weight: 600;
    color: #fff;
}

.bold-black
{
    font-weight: 600;
    color: #000;
}

.btn
{
	color: #fff !important;
    background-color: #303030;
    border-color: #222;
    display: inline-block;
    padding: 0.6em 1.2em !important;
    margin: 0.2em 0.25em;
    font-weight: 400;
    line-height: 1.2;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    cursor: pointer;
    border-bottom: none !important;
    text-decoration: none;
}

.btn:hover
{
	color: #fff !important;
	background-color: #21d4b6;
}

.btn:focus
{
	color: #fff !important;
	background-color: black;
}

.btn:active
{
	color: #fff !important;
	background-color: #21d4b6;
}

.linkwhite
{
    color: #fff !important;
    border-bottom: 1px solid #303030 !important;
}

.linkwhite:hover
{
	color: #303030 !important;
    border-bottom: 1px solid #303030 !important;
}

.table
{
	width: 100%;
	max-width: 100%;
	margin-bottom: 20px;
}

.list-unstyled
{
	padding-left: 0;
	list-style: none;
    text-align: center;
    line-height: 1.3;
    font-size: 1.2em;
}

.list-unstyled-branchen
{
	padding-left: 0;
	list-style: none;
    /*text-align: center;*/
    /*font-weight: 600;*/
    line-height: 1.3;
    font-size: 1.2em;
}

.list-inline
{
	padding-left: 0;
	margin-left: -5px;
	list-style: none;
}

.list-inline > li
{
	display: inline-block;
	padding-right: 5px;
	padding-left: 5px;
}

.hr-wide
{
    max-width: 100%;
}

#topBtn {
  display: none;
  position: fixed;
  bottom: 15px;
  right: 11px;
  z-index: 999;
  font-size: 18px;
  border: none;
  outline: none;
  background-color: transparent;
  border: 1px solid #20d4b6;
  color: #20d4b6;
  cursor: pointer;
  padding: 15px;
}

#topBtn:hover {
  background-color: #20d4b6;
  color: #fff;
}

.about {
    max-width: 100%;
}

.video {
    outline: none;
}

.tags {
    opacity: 0.5;
    font-size: 0.85em;
    max-width: none;
}

.description {
    margin-bottom: 1em;
}

/* -----------------------
Wide styles
------------------------*/

@media (min-width: 1441px)
{
    .header-heading
    {
        font-size: 4.0em;
        max-width: 1350px;
        margin: auto;
    }
}

@media (min-width: 42em)
{
	/*.header { padding: 5em 3em; }*/
	.nav-bar { padding: 1em 3em; }
	.content { padding: 2em 3em; }
	.footer { padding: 3em 3em; }
	
	.nav li
	{
		display: inline;
		margin: 0 1em 0 0;
	}
	
	.nav a
	{
		display: inline;
		padding: 0;
		border-bottom: 0;
	}
}

/* -----------------------
Mobile styles
------------------------*/

@media (max-width: 640px)
{
h1 { font-size: 2.5em }
.header-heading { padding: 40px; }
.img-portrait { float: none; margin: 0; }
.about { text-align: center; }
blockquote {padding: 1.0em 1.0em; max-width: 100%; margin-bottom: 1em;}
}


/* -----------------------
Embedded fonts
------------------------*/

/* work-sans-regular - latin */
@font-face {
  font-family: 'Work Sans';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/work-sans-v4-latin-regular.eot'); /* IE9 Compat Modes */
  src: local('Work Sans'), local('WorkSans-Regular'),
       url('../fonts/work-sans-v4-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/work-sans-v4-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/work-sans-v4-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/work-sans-v4-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/work-sans-v4-latin-regular.svg#WorkSans') format('svg'); /* Legacy iOS */
}
/* work-sans-600 - latin */
@font-face {
  font-family: 'Work Sans';
  font-style: normal;
  font-weight: 600;
  src: url('../fonts/work-sans-v4-latin-600.eot'); /* IE9 Compat Modes */
  src: local('Work Sans SemiBold'), local('WorkSans-SemiBold'),
       url('../fonts/work-sans-v4-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/work-sans-v4-latin-600.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/work-sans-v4-latin-600.woff') format('woff'), /* Modern Browsers */
       url('../fonts/work-sans-v4-latin-600.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/work-sans-v4-latin-600.svg#WorkSans') format('svg'); /* Legacy iOS */
}