:root {
  font-family: Inter, sans-serif;
  font-feature-settings: "liga" 1, "calt" 1;
}

@supports (font-variation-settings: normal) {
  :root {
    font-family: InterVariable, sans-serif;
  }
}

@font-face {
  font-family: InterVariable;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("InterVariable.woff2") format("woff2");
}

* {
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  font-size: 18px;
}

html,
body {
  height: 86%;
}

.outerwrapper {
  min-height: 86%;
  height: auto !important;
  height: 86%;
  margin: 0 auto -1em;
}

.fixedfooter,
.push {
  height: 1em;
}

.header-lang {
  text-align: right;
  margin-left: auto;
  margin-right: auto;
  width: min(90vw, 720px);
}

.btn {
  border-radius: 4px;
  border: 2px solid transparent;
  background-color: #14325a;
  color: #ffffff;
  padding: clamp(0.2em, 1.8vw, 0.5em) clamp(0.8em, 1.8vw, 1.15em);
  font-weight: bold;
  font-size: clamp(0.65em, 1.9vw, 0.8em);
  margin: 0;
  cursor: pointer;
  transition: all 0.3s ease 0s;
}

.lang {
  margin-top: 10px;
  color: #ffffff;
}

.lang:hover {
  border: 2px solid #0082a0;
  background-color: #ffffff;
  color: #14325a;
}

.header-logo {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  margin-top: -30px;
  width: min(90vw, 720px);
}

.navbar {
  background-color: #404040;
  color: #e0e0e0;
  text-shadow: 0px 0px 2px black;
  font-weight: normal;
  overflow: hidden;
  margin-left: auto;
  margin-right: auto;
  margin-top: 15px;
  width: min(90vw, 720px);
}

.navbar a {
  float: left;
  display: block;
  color: #e0e0e0;
  font-weight: normal;
  text-align: center;
  padding: clamp(0.1em, 2.4vw, 0.7em) clamp(1em, 2.4vw, 0.8em);
  text-decoration: none;
  font-size: clamp(0.85em, 2.4vw, 1.1em);
}

.navbar a.active {
  background-color: #ff4d00;
  color: white;
}

.navbar .icon {
  display: none;
}

.title {
  margin-top: -10px;
  font-size: clamp(1.7em, 6.2vw, 2.8em);
  font-weight: 800;
  text-align: center;
  color: #323c46;
}

.version {
  font-size: clamp(1.1em, 3.3vw, 1.5em);
  text-align: center;
  color: #64788c;
}

.blocktext {
  font-size: clamp(0.8em, 2.2vw, 1em);
  text-align: justify;
  margin-left: auto;
  margin-right: auto;
  width: min(90vw, 720px);
  word-wrap: break-word;
  margin-bottom: 1.2em;
  color: #323c46;
}

.sectiontitle {
  font-size: clamp(1.1em, 3.3vw, 1.5em);
  font-weight: bold;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  margin-top: 0.6em;
  margin-bottom: 1em;
  width: min(90vw, 720px);
  color: #64788c;
}

.subtitle {
  font-size: clamp(0.9em, 2.1vw, 1.1em);
  font-weight: bold;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 0.1em;
  width: min(75vw, 664px);
  color: #64788c;
}

.items {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 0.5em;
  width: min(60vw, 576px);
  word-wrap: break-word;
  color: #323c46;
}

li {
  font-size: clamp(0.8em, 2vw, 1em);
}

.author {
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  color: #323c46;
}

.authorprofession {
  font-size: 16px;
  text-align: center;
  color: #64788c;
}

.copyright {
  font-size: 14px;
  margin-left: auto;
  margin-right: auto;
  width: min(90vw, 720px);
  word-wrap: break-word;
  color: #64788c;
}

.wrapper {
  display: grid;
  text-align: center;
  grid-template-columns: auto auto;
  gap: 15px;
  margin-left: auto;
  margin-right: auto;
  width: min(75vw, 664px);
}

.hover-opacity:hover {
  opacity: 0.6;
}

.modal {
  z-index: 3;
  display: none;
  padding-top: 100px;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgb(0, 0, 0);
  background-color: rgba(0, 0, 0, 0.4);
}

.modal-content {
  margin: auto;
  background-color: transparent;
  position: relative;
  padding: 0;
  outline: 0;
  width: 600px;
}

@media (max-width: 600px) {
  .modal-content {
    margin: 0 10px;
    width: auto !important;
  }

  .modal {
    padding-top: 30px;
  }
}

@media (max-width: 768px) {
  .modal-content {
    width: 500px;
  }

  .modal {
    padding-top: 50px;
  }
}

@media (min-width: 993px) {
  .modal-content {
    width: 850px;
  }
}

.animate-zoom {
  animation: animatezoom 0.6s;
}

@keyframes animatezoom {
  from {
    transform: scale(0);
  }

  to {
    transform: scale(1);
  }
}

a {
  font-weight: bold;
  font-size: 20px;
  text-decoration: none;
  text-align: center;
  display: block;
  color: #0066cc;
}

a:hover {
  color: #0080ff;
}
