:root {
  --maincolour: rgb(0, 74, 155);
  --headerfont: 1.6em;
}


* {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
}

body {
  font-family: fieldwork, 'Open Sans', sans-serif;
  /*font-size: 16px;*/
  font-size: 100%;
}

h1 {
  font-size: 2.5em;
}

h2 {
  font-size: 1.8em;
}

p {
  /*font-size: 0.875em;*/
}

.container {
  height: 100vh;
  display: grid;
  grid-template-areas:
    'header header header'
    'content content content'
    'section section section'
    'footer footer footer';
  grid-template-columns: 1fr 1fr 1fr;
  grid-template-rows: 120px 1fr 1fr 50px;
  background-color: white;
}

header,
footer,
main,
section,
nav {
  color: #000000;
}

header {
  grid-area: header;
}

nav {
  grid-area: nav;
}

main {
  padding-top: 3em;
  grid-area: content;
}

footer {
  grid-area: footer;
}

section {
  grid-area: section;
}


/*Beginn Abschnitt Header */


.flex-header-container {
  display: flex;
  justify-content: center;
  margin-top: 2em;
  column-gap: 2%;
}

.flex-header-container-item-1 {
  flex-basis: 10%;
  /*border: 1px solid red;*/
}

.flex-header-container-item-1 > img {
  /*max-width: 100%;*/
  /*min-width: 150px;*/
  width: 230px;
  /*border: 5px solid olive!important;*/
}

.flex-header-container-item-2 {
  flex-basis: 60%;
  /*border: 1px solid black;*/
  align-self: center;
  color: var(--maincolour);
}

.flex-header-container-item-2 p {
  font-size: var(--headerfont);
  margin: 0.1em 0;
}

.flex-header-container-item-3 {
  flex-basis: 5%;
  /*border: 1px solid blue;*/
}

.flex-header-container-item-3 div span img {
  font-weight: bold;
  width: 15%;
  vertical-align: middle;
}


.flex-header-container-item-3 > div {
  text-align: right;
}

/* Language Switcher */

.nav-wrapper {
  /*width: 300px;*/
  /*margin: 100px auto;*/
  /*text-align: center;*/
}

.sl-nav {
  display: inline;
}

.sl-nav ul li ul li span a {
  text-decoration: none;
  color: black;
}

.sl-nav ul {
  margin: 0;
  padding: 0;
  list-style: none;
  position: relative;
  display: inline-block;
}

.sl-nav li {
  cursor: pointer;
  padding-bottom: 10px;
}

.sl-nav li ul {
  display: none;
}

.sl-nav li:hover ul {
  position: absolute;
  top: 29px;
  right: -15px;
  display: block;
  background: #fff;
  width: 120px;
  padding-top: 0px;
  z-index: 1;
  border-radius: 5px;
  box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.2);
}

.sl-nav li ul li {
  position: relative;
  text-align: left;
  background: transparent;
  padding: 15px 15px;
  padding-bottom: 0;
  z-index: 2;
  font-size: 15px;
  color: #3c3c3c;
}

.sl-nav li ul li:last-of-type {
  padding-bottom: 15px;
}

.sl-nav li ul li span {
  padding-left: 5px;
}

.sl-nav li ul li span:hover a, .sl-nav li ul li span.active a {
  color: var(--maincolour);
}

.sl-nav ul li span b {
  color: var(--maincolour);
}

.sl-flag {
  display: inline-block;
  box-shadow: 0px 0px 3px rgba(0, 0, 0, 0.4);
  width: 15px;
  height: 15px;
  background: #aaa;
  border-radius: 50%;
  position: relative;
  top: 2px;
  overflow: hidden;
}

.flag-de {
  background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAIAAAAC64paAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTM0A1t6AAAAPUlEQVQ4T+3HMQ0AIBTE0NOHM8x9B7hgh71bIWGieUvze1m7kHGBr/AVvsJX+EpmP5dV5/gKX+ErfIUvVDYcX2NMxQC8PAAAAABJRU5ErkJggg==');
  background-size: cover;
  background-position: center center;
}

.flag-usa {
  background-size: cover;
  background-position: center center;
  background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAIAAAAC64paAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTM0A1t6AAABhUlEQVQ4T2Ows82PjGixsc4LD2tysC/09Kjw8622tyuICG8u0w/cpGSCBzF4e1VmZkzw9anOzOj38a4KCW4IC22ECHYk1l9tn4gHMeTlTnZxLikvm+XiUpKW2hvgX+vnV5OVOQEoOGfOtv94AYOzU3Fd7XxHh6Lq6rlurqUx0W0J8Z1AnbW18yotonaYuOJBDBXls4A+bGpaBCTz86YEBtQCvVBSPAPIbY0oP1/aiAcxABU1Ny+2tclvbFjo5FgUF9uenNwNDLnmpkWEnV1TPRcY1O1tS4H6i4umA/0MDK2K8tlAwRqHpP1uoXgQKKraWpcClTY3LQZaCLQ5NaUX5OaWJY3++SeTC/AgBmA4AXUClUJs9ver8fKsAAYEUJCws4G21dXNB1oFdD/Qz8DQTk4C+bm2dn6DZ9bRiDQ8iAEYt8CoBpK5YBIYw0AEEZwSXX4oMB4PYoC6gCzAcDqrjGzEsMfen2xEmbMv1rSTjRi26dqRjShz9o2+6WQjBrSShQSkZAIADvW/HLrLY6cAAAAASUVORK5CYII=');
}

/* Ende Abschnitt Header */


/*Beginn Abschnitt Main */

.flex-main-container {
  display: flex;
  /*height: 100%;*/
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  /*gap: 3%;*/
}

.flex-main-container-item-image {
  /*border: 1px solid black;*/
  /*margin: 1em 0;*/
  margin: 20px 10px;
  min-width: 300px;
  max-width: 70%;
}

.main-container-image-wrapper {
  flex-basis: 26%;
}

/* Card Flipping */

.flip-card {
  background-color: transparent;
  min-width: 250px;
  max-width: 380px;
  height: 300px;
  perspective: 1000px;
}

.flip-card-inner {
  position: relative;
  width: 100%;
  height: 100%;
  text-align: center;
  transition: transform 0.6s;
  transform-style: preserve-3d;
  /*box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2);*/
}

.flip-card.hover .flip-card-inner {
  transform: rotateY(180deg);
}

.flip-card-front, .flip-card-back {
  position: absolute;
  width: 100%;
  height: 100%;
  backface-visibility: hidden;
}

.flip-card-front {
  /*background-color: #bbb;*/
  /*color: black;*/
}

.flip-card-back {
  /*background-color: #2980b9;*/
  /*color: white;*/
  transform: rotateY(180deg);
}

/* Ende Abschnitt Main */

/*Beginn Abschnitt Section */

.flex-section-container {
  height: 80%;
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  font-size: 1.3em;
}

.flex-section-container div > p {
  margin-bottom: 0.6em;
  color: var(--maincolour);
}

.flex-section-item-container {
  width: 50%;
  display: flex;
  justify-content: center;
  column-gap: 15%;
  /*border: 1px solid green;*/
}

.flex-section-item-container span {
  /*font-size: 1.4em;*/
}


.icons {
  width: 2em;
}

.icon-wrapper img, span {
  vertical-align: middle;
  margin: 0 0.2em
}

.icon-wrapper a {
  text-decoration: none;
  color: var(--maincolour);
}


/* Ende Abschnitt Section */

/*Beginn Abschnitt Footer */

.flex-footer-container {
  display: flex;
  height: 80%;
  width: 100%;
  justify-content: space-around;
  flex-flow: wrap;
  /*column-gap: 60%;*/
  align-items: center;
}


/* Ende Abschnitt Footer */

.flex-footer-container-item-left {
  flex-basis: 50%;
  /*text-align: start;*/
}

.flex-footer-container-item-right {
  flex-basis: 20%;
}

.flex-footer-container-item-right a {
  text-decoration: none;
  color: var(--maincolour);
}


@media screen and (min-width: 1200px) and (max-width: 1600px) {
  .flex-section-container {
    font-size: 1.2em;
  }
}

/* Medium devices (landscape tablets, 768px and up) */
@media screen and  (min-width: 620px) and (max-width: 1280px) {

  .flex-header-container-item-1 > img {
    max-width: 190px;
  }

  .flex-section-container div > p {
/*color: red;*/
    margin: 0.3em 0;
  }
  .flex-section-item-container {
    display: inline-flex;
    width: 100%;
    flex-direction: column;
    flex-wrap: wrap;
    align-content: center;
    gap: 0.6em;
    align-items: flex-start;
  }

  .flex-footer-container > div {
    font-size: 1em;
  }
  .flex-footer-container {
    display: flex;
    height: 100%;
    width: 100%;
    justify-content: center;
    flex-flow: wrap;
    align-items: center;
    flex-direction: column;
    flex-wrap: wrap;
    align-content: center;
  }
  .flex-footer-container-item-left {
    align-self: flex-end;
  }
}

/*Regel für Responsivness Handy */

@media (max-width: 600px) {
  main {
    padding-top: 1.5em;
  }
  .container {
    grid-template-columns: 1fr;
  }

  .sl-nav li ul li {
    padding: 1em;
  }



  .flex-section-item-container {
    display: inline-flex;
    width: 100%;
    flex-direction: column;
    flex-wrap: wrap;
    align-content: center;
    gap: 0.6em;
    align-items: flex-start;
  }

  .flex-header-container {
    margin: 0.5em 0.5em;
    display: flex;
    justify-content: flex-start;
    column-gap: 2%;
    align-content: flex-start;
    flex-wrap: wrap;
    flex-direction: column;
    align-items: flex-start;
  }

  .flex-header-container-item-2 p {
    font-size: 4vw;
  }

  .flex-header-container-item-3 div span img {
    width: 5%;
  }

  .flex-header-container-item-1 {
    flex-basis: 30%;
  }

  .flex-header-container-item-1 > img {
    max-width: 140px;
  }

  .flex-header-container-item-2 {
    margin-top: 1em;
    font-size: 0.7em;
    flex-basis: 50%;
  }

  .flex-header-container-item-3 {
    flex-basis: 15%;
    position: absolute;
  }

  .flex-main-container-item-image {
    margin: 1.1em 0;
  }

  .flex-section-container {
    height: 100%;
    font-size: 0.9em;
  }


  .flex-footer-container > div {
    font-size: 0.7em;
  }
.flex-footer-container {
  display: flex;
  height: 80%;
  width: 100%;
  justify-content: center;
  flex-flow: wrap;
  align-items: center;
  flex-direction: column;
  flex-wrap: wrap;
  align-content: center;
}
  .flex-footer-container-item-left {
    align-self: flex-end;
  }

  hr {
    margin-top: 0.3em;
  }

  /*Regel für Responsivness Handy ENDE */



  /*Flip Card */
  /*.flip-card {*/
  /*  background-color: transparent;*/
  /*  width: 380px;*/
  /*  height: 300px;*/
  /*  perspective: 1000px;*/
  /*}*/

}
