@font-face {
  font-family: 'Cabin';
  src: url('fonts/Cabin/static/Cabin-Regular.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'Cabin';
  src: url('fonts/Cabin/static/Cabin-Bold.ttf') format('truetype');
  font-weight: bold;
  font-style: normal;
}

@font-face {
  font-family: 'Cabin';
  src: url('fonts/Cabin/static/Cabin-Italic.ttf') format('truetype');
  font-weight: normal;
  font-style: italic;
}

@font-face {
  font-family: 'Cabin';
  src: url('fonts/Cabin/static/Cabin-BoldItalic.ttf') format('truetype');
  font-weight: bold;
  font-style: italic;
}

/* Cabin Condensed Font */

@font-face {
  font-family: 'Cabin Condensed';
  src: url('fonts/Cabin_Condensed/static/CabinCondensed-Regular.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'Cabin Condensed';
  src: url('fonts/Cabin_Condensed/static/CabinCondensed-Bold.ttf') format('truetype');
  font-weight: bold;
  font-style: normal;
}

@font-face {
  font-family: 'Cabin Condensed';
  src: url('fonts/Cabin_Condensed/static/CabinCondensed-Italic.ttf') format('truetype');
  font-weight: normal;
  font-style: italic;
}

@font-face {
  font-family: 'Cabin Condensed';
  src: url('fonts/Cabin_Condensed/static/CabinCondensed-BoldItalic.ttf') format('truetype');
  font-weight: bold;
  font-style: italic;
}


/* Cabin Semi Condensed Font */

@font-face {
  font-family: 'Cabin Semi Condensed';
  src: url('fonts/Cabin_Semi_Condensed/static/CabinSemiCondensed-Regular.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'Cabin Semi Condensed';
  src: url('fonts/Cabin_Semi_Condensed/static/CabinSemiCondensed-Bold.ttf') format('truetype');
  font-weight: bold;
  font-style: normal;
}

@font-face {
  font-family: 'Cabin Semi Condensed';
  src: url('fonts/Cabin_Semi_Condensed/static/CabinSemiCondensed-Italic.ttf') format('truetype');
  font-weight: normal;
  font-style: italic;
}

@font-face {
  font-family: 'Cabin Semi Condensed';
  src: url('fonts/Cabin_Semi_Condensed/static/CabinSemiCondensed-BoldItalic.ttf') format('truetype');
  font-weight: bold;
  font-style: italic;
}

/* Allgemeine Stildefinitionen */

body {
  margin: 0;
  padding: 0;
  font-family: 'Cabin', sans-serif;
  background-color: rgb(231, 231, 231);

}

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

a {
  color: #078256;
  text-decoration: none;

}

/* Header-Stile */

header {
  background-color: #f0f0f0;
  padding-left: 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;

}

/* CSS for desktop menu */
.menu {
  display: flex;
  justify-content: space-between;
  background-color: #f2f2f2;
  text-transform: uppercase;
  font-size: 12px;
  font-weight: bold;
  /* padding: 10px; */

}

.menu ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: flex;
  /* height: 50; */

}

.menu li {
  padding: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 30px;

}

.menu a {
  text-decoration: none;
  color: #078256;
  font-family: 'Cabin', sans-serif;
  font-style: normal;

}

.menu a :hover {
  background-color: black;
}

.menu .here {
  background-color: #102B45;
  color: white;
}

.menu .here a {
  color: white;
}

.menu .countryversion {
  background-color: #ffffff;
  color: black;
  border-left: 2px;
}

.menu .countryversion img {
  height: 15px;
}

.menu .country {
  display: flex;
  flex-direction: row;
  align-items: center;
}


.menu .user {
  background-color: #ffffff;
  color: black;
  border-left: 2px;
}

.menu .user img {
  height: 25px;
}

.menu .userpart {
  display: flex;
  flex-direction: row;
  align-items: center;
}

.username {
  font-weight: 200;
}

.activecase {

}



/* CSS for mobile menu */
.hamburger {
  display: none;
  cursor: pointer;
}

.mobile-menu {
  display: none;
  flex-direction: column;
  background-color: #f2f2f2;
  padding: 10px;
}

.mobile-menu li {
  margin: 10px 0;

}

.mobile-menu a {
  text-decoration: none;
  color: #333;
}


.logo {
  display: flex;
  align-items: center;
  font-size: 21px;

}

.logo img {
  height: 50px;
  margin-top: -0.5px;

}

.logo a {
  display: inline-block;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 20px;
  font-weight: bold;
  /* font-weight: bold; */

}

/* Hero-Stile */

.hero {
  width: 100%;
  position: relative;
  text-align: center;
  background-color: #102B45;
}

.hero img {
  width: 100%;
  height: calc(100vw/2.3);
  /* opacity: 0.65; */
}

.biglink {
  color: #d11e1e;
}

.hero-text {
    position: absolute;
    font-size: 19px;
    top: 10%;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 20px;
    background-color: rgba(16, 43, 69, 1);
    /* border-radius: 20px; */
    /* font-size: 2em; */
    color: white;

}

.hero-text p {
  background-color: rgb(219, 52, 52);
}

.hero-text H3{
  background-color: rgb(52, 219, 66);
}

.hero-text H1{
    /* background-color: rgb(52, 138, 219); */

}

.hero-text a {
    color: white;
}

.hero-text a:hover {
  color: #078256;
}

.hero-search {
  position: absolute;
  /* font-size: 21px; */
  bottom: 0px;
  right: 0px;
  /* transform: translate(-50%, -50%); */
  /* color: rgb(0, 0, 0); */
  background-color: #102b45;
  padding: 0px 20px 00px 20px;
  color: white;

}

.hero-search .textfield {
  width: 200px;
  background-color: black;

}



.hero-text h1 {
    font-size: 2em;

}


.hero-text p {
    padding: 20px;
    background-color: rgba(16, 43, 69, 1);
    /* border-radius: 20px; */
    /* font-size: 2em; */
    color: white;

}

/* Title-Stile */

.pagetitle {
  background-color: #102B45;
  padding: 20px 20px 20px 20px;
  color: white;
  min-height: 50px;

}

.pagetitle h2 {
  font-size: 1em;
  /* text-align: center; */

}

/* Footer-Stile */

footer {
  background-color: #f0f0f0;
  /* padding: 20px; */
  font-size: 14px;

}

.footer-columns {
  display: flex;
  justify-content: space-between;
}

.footer-column {
  flex: 1;
  margin: 20px;

}

.footer-column h3 {
  font-size: 16px;
}

.footer-column p {
  margin-bottom: 5px;
}

.footer-column img {
  height: 35px;
}


/* Boxes */

.content-section {
  display: flex;
  flex-wrap: wrap;
  padding: 20px;
  flex-direction: column;

}

.flex-section {
  display: flex;
  flex-wrap: wrap;
}

.box-container {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  justify-content: space-between;

}

.box {
  flex: 1 0 calc(33.33% - 45px);
  padding: 20px;
  box-sizing: border-box;
  border: 1px solid #ccc;
  border: 1px solid #ccc;
  margin: 20px;
  background-color: white;

}

.box-content {
  text-align: center;
}

.box-content img {
  max-width: 300px;
}

.icon {
  font-size: 24px;
  margin-bottom: 10px;
  height: 50px;

}

h3 {
  font-size: 18px;
  margin-bottom: 10px;
}

p {
  font-size: 14px;
}


/* Rest */

.copyright {
  /* width: 100%; */
  font-size: 10px;
  padding-top: 20px;
  background-color: color(srgb 0.9043 0.9044 0.9044);
  /* height: 20px; */
  padding: 20px;

}


/* Klapp */

.content-klapp {
    background-color: lightgrey;
    /* width: 90%; */
    padding: 20;

}

.klapp {
  /* background-color: lightsalmon; */
  flex-direction: column;
  /* background-color: white; */

}

.klapptitle {
    /* background-color: lightskyblue; */
    display: flex;
    flex-direction: column;
    padding-top: 5px;
    padding-bottom: 5px;
    border: 1px solid #d3d3d3;
    padding: 20px;
    background-color: white;
    /* border-radius: 4px; */
}

.klapptitle1 {
    /* background-color: lightskyblue; */
    display: flex;
    flex-direction: column;
    padding-top: 5px;
    padding-bottom: 5px;
    border-top: 1px solid #d3d3d3;
    padding: 20px;
    /* background-color: rgb(83, 196, 89); */
    /* border-radius: 4px; */

}

.klapptitle h5 {

  cursor: pointer;
  color: #078256;
}

.klapptext1 h5 {

  cursor: pointer;
  color: #000000;
}


.klapptext {
  flex-direction: column;
  padding-left: 30px;
  border-top: 1px solid #d3d3d3;
  background-color: white;
  /* border-radius: 4px; */
}

.klapptext1 {
  flex-direction: column;
  padding-left: 20px;
  border-top: 1px solid #d3d3d3;
  background-color: white;
  /* border-radius: 4px; */

}

.klapptext2 {
  flex-direction: column;
  padding-left: 30px;
  border-top: 1px solid #d3d3d3;
  background-color: white;
  /* border-radius: 4px; */

}

.klapptext3 {
  flex-direction: column;
  padding-left: 30px;
  border-top: 1px solid #d3d3d3;
  background-color: white;
  /* border-radius: 4px; */

}

.klapptext4 {
  flex-direction: column;
  padding-left: 30px;
  border: 1px solid #d3d3d3;
  background-color: white;
  border-radius: 4px;
}

/* Forms */


form {
  padding: 10px 40px 10px 40px;
}

section {
  padding: 0px;

}

select {
    background: #102B45;
    color: #e6e6e6;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    border: none;
    padding: 0px;
    padding-left: 9px;
    padding-right: 7px;
    height: 2em;
    font-weight: 400;
    font-size: 1em;
    background-image: linear-gradient(45deg, transparent 50%, gray 50%),
linear-gradient(135deg, gray 50%, transparent 50%),
linear-gradient(to right, #ccc, #ccc);
    background-position: calc(100% - 15px) calc(1em - 2px),
calc(100% - 10px) calc(1em - 2px),
calc(100% + 2.5em) 0.5em;
    background-size: 5px 5px,
5px 5px,
1px 1.5em;
    background-repeat: no-repeat;
    cursor: pointer;
    margin-right: 20px;
    width: 50%;
    /* padding-bottom: 10px; */

}

select:focus {
  outline: none;
}

button {
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  border: none;
  padding: 5px;
  padding-left: 9px;
  padding-right: 9px;
  background-color: #e6e6e6;
  font-size: 12px;
  height: 27px;
  font-weight: 500;
  cursor: pointer;
}


input[type=submit],
input[type=reset] {
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  border: none;
  padding: 5px;
  padding-left: 9px;
  padding-right: 9px;
  font-size: 1em;
  height: 2em;
  font-weight: 500;
  cursor: pointer;
  color: #e6e6e6;
  background-color: #102B45;

}


.slidecontainer {
  width: 100%;
}

.slider {
  -webkit-appearance: none;
  width: 100%;
  height: 15px;
  border-radius: 5px;
  background: #dddddd;
  outline: none;
  opacity: 0.7;
  -webkit-transition: .2s;
  transition: opacity .2s;
}

.slider:hover {
  opacity: 1;
}

.slider::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background: #000000;
  cursor: pointer;
}

.slider::-moz-range-thumb {
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background: #000000;
  cursor: pointer;
}


.slidertext {
  display: flex;
  justify-content: space-between;
  padding-bottom: 1em;
}

.checkcontainer {
    display: block;
    position: relative;
    padding-left: 35px;
    margin-right: 30px;
    margin-bottom: 15px;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    /* width: 400px; */

}

.checkcontainer:first-child {
    /* margin-left: 0px; */

}
.checklabel {
  padding-top: 3px;
}

.checkboxes {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;

}

/* Hide the browser's default checkbox */
.checkcontainer input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

/* Create a custom checkbox */
.checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 25px;
  width: 25px;
  background-color: #eee;
  border-radius: 5px;
}

/* On mouse-over, add a grey background color */
.checkcontainer:hover input~.checkmark {
  background-color: #e6e6e6;
}

/* When the checkbox is checked, add a blue background */
.checkcontainer input:checked~.checkmark {
  background-color: #000000;
}

/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

/* Show the checkmark when checked */
.checkcontainer input:checked~.checkmark:after {
  display: block;
}

/* Style the checkmark/indicator */
.checkcontainer .checkmark:after {
  left: 9px;
  top: 5px;
  width: 5px;
  height: 10px;
  border: solid white;
  border-width: 0 3px 3px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.textfield {
  border: 2px solid #000000;
  background-color: #000000;
  color: #eaeaea;
}

.textfield {
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  /* border: 2px solid #c2c2c2; */
  padding: 5px;
  padding-left: 9px;
  padding-right: 9px;
  background-color: #102B45;
  font-size: 1em;
  height: 32px;
  /* cursor: pointer; */
  width: 50%;
  margin-top: 8px;

}


/* lists */
.list-section {
  display: flex;
  flex-direction: column;
}

.glossaryol {
    font-size: 14;
    padding: 0px 0px 0px 20px;
}

.glossaryol li {
    /* background-color: #d11e1e; */
    padding-top: 10px;

}

.list {
  padding: 20px;
  box-sizing: border-box;
  /* border: 1px solid #ccc; */
  border-bottom: 1px solid #ccc;
  /* margin: 20px; */
  background-color: white;
  margin-left: 20px;
  margin-right: 20px;
  flex-direction: column;
}

.tipp {
    background-color: rgba(7, 130, 86, 0.18);
    display: inline-block;
    padding: 20px;
}



.listentry {
    padding: 0px 40px 40px 40px;
    box-sizing: border-box;
    /* border: 1px solid #ccc; */
    border-bottom: 1px solid #ccc;
    /* margin: 20px; */
    background-color: white;
    margin-left: 20px;
    margin-right: 20px;
    flex-direction: column;

}



.green {
  color: #078256 !important;
}

.accent {
  color: #078256;
  display: inline;
  cursor: pointer;

}

.alert {
  color: #d11e1e !important;
}

.clickable {
  cursor: pointer;
}

.normal-section {
    padding: 20px;

}

.explanationbox {
  position: absolute;
  top: 170px;
  right: 90px;
  /* width: 100%; */
  z-index: 3;
  color: #65ec7e;
  background-color: #343232;
  border: 1px solid #ccc;
  border-radius: 4px;
  padding: 20px;
  font-family: Courier New;

}

.formdings {
    padding-bottom: 20px;
    display: flex;

}

.tryme {
    content: "Try me";
    position: relative;
    background: #00e810fa;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    /* border-radius: 10px; */
    /* width: 280px; */
    /* height: 45px; */
    margin-left: 10px;
    padding-left: 10px;
    padding-right: 10px;
    padding-top: 2px;
    padding-bottom: 2px;
    color: white;
    font-size: 16px;

}

.tryme:before {
    content: "";
    position: absolute;
    top: 0px;
    left: -14px;
    z-index: 1;
    /* border: solid 10px transparent; */
    border-right-color: #07f117f4;

}

#signin {
  display: none;
}

.expert {
  padding-top: 20px;
}

.back {
  padding-top: 20px;
}

table, th, td {
  border: 1px solid black;
}

.normal-section {
  /* Add styling for the normal section if needed */
}

.selectsection {
    display: flex;
    flex-wrap: wrap;
    /* align-content: end; */
    gap: 10px;
    justify-content: start;
    align-content: left;

}

.selectiongroup {
    margin-bottom: 10px;
    /* max-width: 300px; */

}

.selecttitle {
    font-weight: bold;
    padding-bottom: 10px;
    height: 20px;
}

.formdings {
  /* Add styling for the form elements if needed */
}


.selectsection select {
    width: auto;

}

.selectionimage {
    /* width: 800px; */
    width: calc(100vw - 150px);

}
.announcement {
    display: flex;
    align-items: flex-start;
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #d3d3d3;
    flex-wrap: wrap;

}

.announcement-header {
    font-weight: bold;
    flex: 0 0 300px;
    text-align: left;

}

.announcement-content {
    flex: 1;
    margin-left: 10px;
    text-align: left;

}

.announcement-date {
  color: #777;
}

.selectionbox {
    /* flex: 1 0 calc(33.33% - 45px); */
    padding: 20px;
    box-sizing: border-box;
    /* border: 1px solid #ccc; */
    border: 1px solid #ccc;
    margin: 20px;
    background-color: white;
    flex-direction: column;

}

.selection-container {
    /* background-color: rgb(35, 207, 95); */
    display: flex;
    justify-content: space-evenly;

}

/* Media query for screen width less than 768px */
@media screen and (max-width: 767px) {

  .menu ul {
    display: none;
  }

  .hamburger {
    display: flex;
    font-size: 2.5em;

  }

  .mobile-menu {
    display: none;

  }

  .mobile-menu.active {
    display: flex;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 500;
    background-color: color(srgb 0.705 0.705 0.705);
    box-shadow: -3px 3px 8px rgba(0, 0, 0, 0.2);

  }

  .hero {
    width: 100%;
    position: relative;
    text-align: center;
    background-color: #102B45;

  }

  .hero img {
    width: 100%;
    height: auto;
    /* opacity: 0.65; */

  }

  .hero-text {
    position: absolute;
    font-size: 19px;
    top: 10%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: rgb(0, 0, 0);
  }


  .hero-text p {
    padding: 10px;
    font-size: 1em;

  }

  .box-content img {
    max-width: calc(100vw - 90px);
  }


  select {
        width: auto;
        /* max-width: calc(100vw - 60px); */
    }

    .textfield {
      width: auto;
  }

  input[type=submit] {
    margin-bottom: 10px;
  }

  .announcement {
    display: block;

}

}