/* CSS Document */
/* FONTS */
* {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 300;
  font-size: 10pt;
  color: white;
  transition: 0.5s; }

.light {
  font-weight: 300; }

.semibold {
  font-weight: 700; }

h1 {
  font-size: 18pt;
  font-weight: 700; }

h2 {
  font-size: 12pt;
  font-weight: 300;
  line-height: 2.0;
  margin-top: 38px; }

h3 {
  font-size: 8pt;
  font-weight: 700;
  margin-top: 17px; }

h3.partners {
  font-size: 8pt;
  font-weight: 700;
  text-align: center; }

body {
  background-color: #242E48;
  margin: 0;
  padding: 0; }

a {
  text-decoration: none;
  margin: 0;
  padding: 0;
  border-radius: 15px; }

p {
  margin: 0;
  padding: 0; }

span {
  margin: 0;
  padding: 0; }

ul {
  list-style-type: none;
  margin: 0;
  padding: 0; }

.imprint-text > h1 {
  margin-top: 0px;
  margin-bottom: 38px; }

.imprint-text > ul {
  list-style-type: circle !important;
  padding: 0px 16px; }
  .imprint-text > ul > li {
    padding: 8px 0px; }

.imprint-text > p.en {
  font-style: italic;
  font-weight: 300; }

p > a, li > a {
  font-size: 9pt;
  opacity: 1.0;
  color: #FFF;
  font-weight: 700;
  margin-inline-start: 0px;
  margin-inline-end: 0px; }
  p > a:hover, li > a:hover {
    color: #FF8671;
    opacity: 1.0; }

p > a.en, li > a.en {
  font-size: 9pt;
  font-style: italic;
  font-weight: 700; }

.logo {
  margin-top: 100px;
  margin-left: 0;
  padding: 0px;
  height: 16pt; }

.content {
  margin-top: 90px; }

.description {
  margin-top: 50px; }

.persons {
  margin-top: 100px; }

.person {
  height: 100px;
  display: block;
  margin-top: 30px;
  padding: 15px; }
  .person-description {
    position: relative;
    float: left;
    width: 210px;
    margin-left: 25px;
    margin-top: 28px; }

.person:hover {
  background-color: rgba(255, 255, 255, 0.2); }

img.avatar {
  position: relative;
  float: left;
  border-radius: 50%;
  border: 1px solid white;
  height: 100px;
  width: auto;
  vertical-align: middle; }

.linkedin-logo {
  position: relative;
  float: left;
  height: 35px;
  width: auto;
  margin-right: 15px;
  vertical-align: middle; }

.mail-icon {
  position: relative;
  float: left;
  height: 36px;
  width: auto;
  margin-right: 15px;
  vertical-align: middle; }

.bg-image {
  position: fixed;
  width: 100%;
  height: 100%;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  background-repeat: no-repeat;
  opacity: 0.9;
  z-index: -1; }
  .bg-image_bottom-left {
    bottom: 0px;
    left: 0px;
    background-image: url("../images/left-bottom.png");
    background-position: 0% 100%;
    background-size: 1200px auto; }
  .bg-image_top-right {
    top: 0px;
    right: 0px;
    background-image: url("../images/right-top.png");
    background-position: 130% 0%;
    background-size: 800px auto; }

.vacancies {
  margin-top: 120px; }

.vacancy {
  height: 40px;
  display: block;
  margin-top: 30px;
  padding: 15px; }
  .vacancy-description {
    position: relative;
    float: left;
    width: 210px;
    margin-left: 25px;
    margin-top: 28px; }

.vacancy:hover {
  background-color: rgba(255, 255, 255, 0.2); }

.partner {
  margin-top: 100px;
  padding-bottom: 270px; }
  .partner-logo {
    position: relative;
    float: left;
    width: 50%;
    max-height: 30px;
    margin-top: 50px; }

.partner-logo:hover {
  opacity: 0.5; }

hr.vacancies {
  border: 0.5px solid rgba(255, 255, 255, 0.1);
  margin-top: 100px; }

hr {
  border: 0.5px solid rgba(255, 255, 255, 0.1);
  margin-top: 20px; }

.footer-brand {
  font-size: 8pt;
  text-align: center;
  width: 100%;
  margin-top: 20px; }
.footer-nav {
  text-align: center;
  margin-top: 30px;
  margin-bottom: 80px; }
  .footer-nav li {
    font-size: 8pt; }
    .footer-nav li a {
      font-size: 8pt;
      opacity: 0.6;
      color: #fff; }
      .footer-nav li a:hover {
        opacity: 1;
        color: #FF8671; }

.desktop {
  display: block; }

.non-desktop {
  display: none; }

/* responsive mobile WIDTH */
@media only screen and (max-width: 600px) {
  main {
    padding: 0px 30px; }

  .content {
    width: 100%;
    margin-top: 70px; }

  .persons {
    margin-top: 80px; }

  .person {
    padding: 0px; }
    .person-description {
      width: 210px; }

  .person:hover {
    background-color: rgba(255, 255, 255, 0); }

  .desktop {
    display: none; }

  .non-desktop {
    display: inline; } }
@media only screen and (max-width: 400px) {
  * {
    font-size: 8pt; }

  .person {
    padding: 0px; }
    .person-description {
      margin-top: 25px;
      margin-left: 15px;
      font-size: 6pt !important;
      width: 180px; }

  img.avatar {
    height: 80px; } }
@media only screen and (max-width: 355px) {
  .person-description {
    float: none;
    padding-top: 23px;
    font-size: 6pt !important;
    width: 100%; }

  img.avatar {
    margin-right: 10px; } }
@media only screen and (min-width: 600px) {
  main {
    top: 0px;
    width: 500px;
    margin-left: auto;
    margin-right: auto;
    -webkit-transition-property: none;
    -moz-transition-property: none;
    -o-transition-property: none;
    transition-property: none; } }
@media only screen and (min-width: 1400px) {
  main {
    width: 700px; } }
/* HEIGHT */
/*
@media only screen and (min-height: 1250px) and (min-width: 1400px) {
	main {
		position: absolute;
		top: 48%;
		left: 50%;
		transform: translate(-50%, -50%);
		-webkit-transition-property: none;
		-moz-transition-property: none;
		-o-transition-property: none;
		transition-property: none;
	}
}
*/
/* bg management */
@media only screen and (max-width: 600px) {
  .bg-image_bottom-left {
    opacity: 0.25;
    background-size: 1000px auto; }
  .bg-image_top-right {
    opacity: 0.0;
    background-size: 600px auto; } }
@media only screen and (min-width: 600px) {
  .bg-image_bottom-left {
    opacity: 0.75;
    background-size: 1000px auto; }
  .bg-image_top-right {
    opacity: 0.25;
    background-size: 600px auto; } }
@media only screen and (min-width: 1200px) {
  .bg-image_bottom-left {
    opacity: 0.8;
    background-size: 60% auto; }
  .bg-image_top-right {
    opacity: 0.25;
    background-size: 60% auto; } }
