:root {
    --main-color: yellow;
  }
  
  /* Overrides settings in :root */
  .red {
    --main-color: #e94d50;
  }

  .yellow {
    --main-color: yellow;
  }

  .green {
    --main-color: #4ab37d;
  }

  .blue {
    --main-color: #009fe3;
  }

  .violet {
    --main-color: #7666ab;
  }

  .pink {
    --main-color: #e6007e;
  }

  .grey {
    --main-color: #878787;
  }


  
body {
    margin: 0;
    padding: 0;
    font-family: 'sharp_medium_20', Arial, sans-serif;
    background-color: var(--main-color);
    color: black;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    box-sizing: border-box;
    hyphens: auto;
}

h1 .logo h4 {
    hyphens: none;
}

.container {
    display: flex;
    flex-direction: column;
    width: 100%;
    background-color: black;
    position: relative;
    box-shadow: inset 0px 0px 0px 40px var(--main-color);
    box-sizing: border-box;
}
.header {
    box-shadow: 1px 1px 4px 0 rgba(0,0,0,.1);
}

.header ul {
    margin: 0;
  padding: 0;
  list-style: none;
  overflow: hidden;
}

header {
    position: sticky;
    top: 0;
    background-color: darkgray;
    color: black;
    display: flex;
    justify-content: space-between;
    padding: 10px 0;
    z-index: 1000;
    margin-bottom: 20px; /* ABSTAND ZU */
    cursor:pointer;
}

header a {
    flex: 1;
    text-align: center;
    padding: 10px;
    box-sizing: border-box;
    background-color: darkgray;
}

header a:hover {
    background-color:  rgb(218, 218, 218);
}

header div:not(:last-child) {
    margin-right: 10px;
}

header div:not(:first-child) {
    margin-left: 10px;
}

header, .fact h1, .image-container, .section {
    border-left: 40px solid rgb(218, 218, 218);
    border-right: 40px solid rgb(218, 218, 218);
}

/* header */

.header {
   
    box-shadow: 1px 1px 4px 0 rgba(0,0,0,.1);
    /*position: fixed; */
    width: 100%;
    z-index: 1000;
  }
  
  .header ul {
    margin: 0;
    padding: 0;
    list-style: none;
    overflow: hidden;
    
  }
  
  .header li a {
    display: block;
    padding: 10px 10px;
    
    text-decoration: none;
  }
  
  .header li a:hover,
  .header .menu-btn:hover {
    background-color: #f4f4f4;
  }
  
  .header {
  /*  display: block;
    float: left; */
    padding: 10px 20px;
    text-decoration: none;
    position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;

  }
  


/* menu */

.header .menu {
    clear: both;
    max-height: 0;
    transition: .2s ease-out;
    
    
  }

  .menu {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: space-around;
  width: 100%;
}

.menu li {
  margin: 0;
  padding: 0;
}

.menu li a {
  text-decoration: none;
  padding: 10px 15px;
  display: block;
  text-align: center;
  font-size: 16px;
  transition: color 0.3s ease-in-out;
}
  
  /* menu icon */
  
  .header .menu-icon {
    cursor: pointer;
    display: inline-block;
    float: right;
    padding: 10px 10px;
    position: relative;
  }
  
  .header .menu-icon .navicon {
    background: #333;
    display: block;
    height: 2px;
    position: relative;
    transition: .2s ease-out;
    width: 25px;
  }
  
  .header .menu-icon .navicon:before,
  .header .menu-icon .navicon:after {
    background: #333;
    content: '';
    display: block;
    height: 100%;
    position: absolute;
    transition: all .2s ease-out;
    width: 100%;
  }
  
  .header .menu-icon .navicon:before {
    top: 5px;
  }
  
  .header .menu-icon .navicon:after {
    top: -5px;
  }
  
  /* menu btn */
  
  .header .menu-btn {
    display: none;
  }
  
  .header .menu-btn:checked ~ .menu {
    max-height: 100%;
  }
  
  .header .menu-btn:checked ~ .menu-icon .navicon {
    background: transparent;
  }
  
  .header .menu-btn:checked ~ .menu-icon .navicon:before {
    transform: rotate(-45deg);
  }
  
  .header .menu-btn:checked ~ .menu-icon .navicon:after {
    transform: rotate(45deg);
  }
  
  .header .menu-btn:checked ~ .menu-icon:not(.steps) .navicon:before,
  .header .menu-btn:checked ~ .menu-icon:not(.steps) .navicon:after {
    top: 0;
  }
  
  /* 48em = 768px */
  
  @media (min-width: 48em) {
    .header li {
      float: left;
    }
    .header li a {
      padding: 10px 10px;
    }
    .header .menu {
      clear: none;
      float: right;
      max-height: none;
    }
    .header .menu-icon {
      display: none;
    }
  }

/* FERTIG TEST */





.fact, .section {
    width: 100%;
    text-align: center;
    padding: 0px;
    box-sizing: border-box;
}

.fact h1, .fact h2, .section h1, .section h2, .section p {
    margin-top: 20px;
    margin-bottom: 20px;
    padding: 0px;
    box-sizing: border-box;
}

.fact h1 {
    font-family: 'sharp_black_16', Arial, sans-serif;
    background-color: var(--main-color);
    font-size: 20vw; /* responsive font size */
    line-height: 0.8;
    padding-top: 0px;
    padding-bottom: 0;
}

.fact h2, .section h2 {
    background-color: lightgray;
    width: 30%;
    font-size: calc(1 * 2vw);
    margin: auto;
}



.section {
    margin-top: 40px;
}

.section p {
    font-family: 'sharp_medium_20', Arial, sans-serif;
    color: black;
    font-size: calc(1 * 1,3vw);
    text-align: left;
    line-height: 1.2;
}

.placeholder {
    background-color: red;
    height: 200px;
    margin: 20px 0;
}

.image-container {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-height: 80vh;
    box-sizing: border-box;
}

.image-container img {
    max-width: 50%;
    max-height: auto;
    width: 100%;
    height: auto;
    
}

.image-container h4 {
    font-family: 'sharp_black_16', Arial, sans-serif;
    font-size: 7vw; /* responsive font size */
    line-height: 1;
   background-color: var(--main-color);
    width: 50%;
    padding: 0px;
    box-sizing: border-box;
    text-align: center;
    margin: 0px;
    line-height: 0.8;
    
}

.margin-text {
    width: 100%;
    text-align: left;
    padding: 5px;
    box-sizing: border-box;
}

.problem-section {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;

    border-radius: 0;
    z-index: 5;
}

.rahmen {
    border-top: 25px solid var(--main-color);
    border-bottom: 25px solid var(--main-color);
}

.problem-section div {
    flex: 0 0 49%;              /* Spalte */
    padding: 20px;
    box-sizing: border-box;
    background-color: lightgray;
}

.problem-section h3 {
    background-color: darkgray;
    font-size: 2vw;
    padding: 0px;
    margin: 0 0 10px 0;
    text-align: center;
    
}
h3 {
    text-align: center;
    padding: none;
}

.measures-section {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 50px;
    margin-bottom: 50px;
}

.measures-section li {
    flex: 0 0 25%;
    list-style-type: none;
    padding: 10px;
    background-color: none;  /*  lightgray */
    box-sizing: border-box;
    margin: 0 0% 0px 0;            /* % Stelle für abstand zwischen Bubbles */
    cursor: pointer;
    position: relative;
   /* border-left: 10px solid orange;
    border-right: 10px solid orange; */
}


.measures-section li span {
    display:ruby ;
    background-color: var(--main-color);
    border-radius: 30px;
    padding-left: 30px;
    padding-right: 30px;


    margin-bottom: 0px;

    font-size: calc(1 * 2vw);
    line-height: 1.2;
    
}
li .content {
    background-color: lightgray;
    text-align: left;
    padding: 15px;
    line-height: 120%;
}

.measures-section li .content {
    display: none;
}

.measures-section li .content.visible {
    display: block;
}

.logo {
    font-family: 'sharp_black_25', Arial, sans-serif;
    background-color: var(--main-color);
    padding: 0px;
    margin: 0px;
    font-size: 15vw; /* responsive font size */
    hyphens: none;
    
}

footer {
    text-align: center;
    background-color: #878787;
    align-items: center;
    
}



@media (max-width: 1400px) {
     .measures-section li {
        flex: 0 0 50%;
    }
}

@media (max-width: 600px) {

    .container {
        box-shadow: inset 0px 0px 0px 20px var(--main-color);
    }

    header, .fact h1, img, .section {
        border-left: 20px solid rgb(218, 218, 218);
        border-right: 20px solid rgb(218, 218, 218);
    }

    .fact h1, .section h1 {
        font-size: calc(3 * 5vw);
    }
    .fact h2, .section h2 {
        font-size: calc(1 * 5vw);
        width: 50%;
    }
    .section p {
        font-size: calc(1 * 3vw);
    }
    .problem-section div, .measures-section li {
        flex: 0 0 100%;
    }

    .problem-section h3 {
        font-size: 4vw;
    }

    .measures-section li span {
        font-size: 20px;
    }

    header div:not(:last-child):before, .measures-section li:not(:last-child):before {
        width: 25px;
    }
    .image-container {
        flex-direction: column;
        width: 100%;
        border-left: 0px solid rgb(218, 218, 218);
        border-right: 0px solid rgb(218, 218, 218);
    }
    .image-container img, .image-container h4 {
        display: block;
        width: 100%;
        max-width: 100%;
        font-size: 15vw;
        margin-top: 20px;
    }
    .logo {
        font-size: calc(2 * 5vw);
    }

    .menu {
        flex-direction: column; /* Setzt die Elemente untereinander */
        justify-content: center; /* Zentriert die Items */
        align-items: center; /* Zentriert die Items */
       
        top: 50px; /* Position des Dropdowns */
        width: 100%;
       
        z-index: 10;
    }
}