@charset "utf-8";

@font-face {
   font-family: "Istok Web";
   font-style: normal;
   font-weight: 400;
   src: url("../fonts/istok-web-v20-latin-regular.eot");
   src: local(""), url("../fonts/istok-web-v20-latin-regular.eot?#iefix") format("embedded-opentype"), url("../fonts/istok-web-v20-latin-regular.woff2") format("woff2"), url("../fonts/istok-web-v20-latin-regular.woff") format("woff"), url("../fonts/istok-web-v20-latin-regular.ttf") format("truetype"), url("../fonts/istok-web-v20-latin-regular.svg#IstokWeb") format("svg");
}

@font-face {
   font-display: swap;
   font-family: 'Istok Web';
   font-style: normal;
   font-weight: 700;
   src: url('../fonts/istok-web-v24-latin-700.eot');
   src: url('../fonts/istok-web-v24-latin-700.eot?#iefix') format('embedded-opentype'), url('../fonts/istok-web-v24-latin-700.woff2') format('woff2'), url('../fonts/istok-web-v24-latin-700.woff') format('woff'), url('../fonts/istok-web-v24-latin-700.ttf') format('truetype'), url('../fonts/istok-web-v24-latin-700.svg#IstokWeb') format('svg');
}

:root {
   font-size: 16px;
}

* {
   margin: 0;
   padding: 0;
   box-sizing: border-box;
}

body {
   color: #5c6971;
   font-family: "Istok Web", "Arial", sans-serif;
   font-size: 1rem;
   font-weight: 400;
   line-height: 1.4;
}

img {
   max-width: 100%;
   height: auto;
}

#wrapper {
   position: relative;
   max-width: 62.5rem;
   margin: 1rem auto;
   overflow: hidden;
   background: #fff;
   border: 1px solid #000;
}

:is(a:link, a:visited, a:hover, a:active) {
   color: inherit;
   text-decoration: none;
   white-space: nowrap;
}

span {
   white-space: nowrap;
}

p {
   margin: 0 0 0.687rem;
}

h1 {
   padding: 1.25rem 0.937rem 0.625rem 0.937rem;
   color: #fff;
   font-weight: normal;
   line-height: 3rem;
   background-color: #00adee;
   border-top-right-radius: 1.875rem;
   border-top-left-radius: 1.875rem;
   margin: 0;
   font-size: 1.8em;
}

h2 {
   font-size: 1.25rem;
   margin: 1.375rem 0 0.687rem;
}

ul {
   list-style: none;
   margin: 0 0 0.625rem;
   padding: 0;
}

ul li {
   padding-left: 1.375rem;
}

ul li:before {
   content: "\2022";
   float: left;
   color: #00adee;
   margin-left: -1.375rem;
   font-size: 2em;
   line-height: 0.8;
}

header {
   border-bottom: 0.25rem solid #00adee;
   border-top: 1.875rem solid #00adee;
   padding: 0.937rem 6.875rem 0.625rem;
}

.title {
   margin: -5.35rem 5rem 0;
   position: relative;
}

.info {
   display: flex;
   align-items: center;
   box-shadow: 0 0.125rem 0.25rem 0 rgb(0 0 0 / 25%);
   border-bottom-left-radius: 1.875rem;
   border-bottom-right-radius: 1.875rem;
}

.fa-solid,
.fa-regular {
   color: #00adee;
   font-size: 1.375rem;
   width: 1.25rem;
   margin-right: 0.625rem;
   text-align: center;
}

.links {
   border-right: solid 0.125rem rgb(238, 239, 241);
}

.links,
.rechts {
   width: 50%;
   padding: 0.625rem 1rem;
   margin: 0.937rem 0 0.625rem;
}

.links p:last-of-type,
.rechts p:last-of-type {
   margin-bottom: 0;
}

.rechts {
   padding-left: 0.625rem;
}

article {
   display: flex;
   justify-content: space-between;
   align-items: flex-start;
   margin: 1rem 0;
   padding: 1rem 5rem;
}

article section:first-of-type {
   width: 60%;
   margin: 0;
}

article section:last-of-type {
   width: 37%;
   background: #d6dce5;
   padding: 0.937rem;
   border-radius: 1.875rem;
}

article section:first-of-type p:last-of-type {
   margin-bottom: 0;
}

article section:last-of-type p:last-of-type {
   margin-bottom: 1.437rem;
}

article section:last-of-type h2 {
   font-size: 1.437rem;
}

.justify {
   text-align: justify;
}

footer {
   margin: 2.187rem 5rem;
   border-top: 0.0625rem solid #eee;
   padding: 3.125rem 0 2.187rem;
}

.button a {
   color: #fff;
   background-color: #00adee;
   border-color: #0081b1;
   transition: all ease-in-out 0.2s;
   text-align: center;
   border-radius: 1.875rem;
   padding: 0.937rem 1.562rem;
   display: inline-block;
}

.button a:hover {
   background-color: #08b;
}

a.blau {
   color: #00adee;
   text-decoration: none;
}

a.blau:hover {
   text-decoration: underline;
   color: inherit;
}

@media only screen and (max-width: 62.5rem) {
   #wrapper {
      border: none;
      margin: 0 auto;
      padding: 0;
   }

   p,
   ul {
      -moz-hyphens: auto;
      -webkit-hyphens: auto;
      -ms-hyphens: auto;
      hyphens: auto;
   }
}

@media only screen and (max-width: 56.187rem) {
   .justify {
      text-align: left;
   }

   h1 {
      font-size: 1.875rem;
      line-height: 1.2;
      text-align: center;
   }

   header {
      padding: 1rem;
   }

   article,
   footer,
   .title {
      padding: 1rem;
      margin: 0;
   }

   .title {
      width: 100%;
   }

   footer {
      margin: 0 1rem;
      padding: 1.25rem 0;
      display: flex;
      justify-content: center;
   }
}

@media only screen and (max-width: 48.75rem) {
   .title {
      padding: 1rem 1rem 0;
   }

   .info {
      display: block;
   }

   .rechts {
      width: 100%;
      padding: 0.625rem 0.7rem;
      margin: 0;
   }

   .links {
      border-right: none;
      width: 100%;
      padding: 0.625rem 0.7rem 0;
      margin: 0;
   }

   article {
      display: block;
      padding: 0 1rem 1rem;
   }

   article section:first-of-type,
   article section:last-of-type {
      width: 100%;
      margin: 1rem 0 0;
   }
}

@media only screen and (max-width: 43.75rem) {
   h2 {
      margin: 0.625rem 0 0.312rem;
   }

   article section:last-of-type h2 {
      margin-top: 0;
   }

   article section:last-of-type p:last-of-type {
      margin-bottom: 0;
   }
}

@media only screen and (max-width: 35rem) {
   h1 {
      font-size: 1.7rem;
   }

   header,
   footer {
      display: flex;
      justify-content: center;
   }
}
