@font-face {
  font-family: "Merriweather";
  src: url("/assets/fonts/Merriweather-Regular.ttf") format("truetype");
  src: url("../assets/fonts/Merriweather-Regular.ttf") format("truetype");
}
@font-face {
  font-family: "Merriweather-Bold";
  src: url("/assets/fonts/Merriweather-Bold.ttf") format("truetype");
  src: url("../assets/fonts/Merriweather-Bold.ttf") format("truetype");
}
@font-face {
  font-family: "Merriweather-Black";
  src: url("/assets/fonts/Merriweather-Black.ttf") format("truetype");
  src: url("../assets/fonts/Merriweather-Black.ttf") format("truetype");
}
@font-face {
  font-family: "Merriweather-Light";
  src: url("/assets/fonts/Merriweather-Light.ttf") format("truetype");
  src: url("../assets/fonts/Merriweather-Light.ttf") format("truetype");
}
@font-face {
  font-family: "Merriweather-Italic";
  src: url("/assets/fonts/Merriweather-Italic.ttf") format("truetype");
  src: url("../assets/fonts/Merriweather-Italic.ttf") format("truetype");
}
@font-face {
  font-family: "Merriweather-LightItalic";
  src: url("/assets/fonts/Merriweather-LightItalic.ttf") format("truetype");
  src: url("../assets/fonts/Merriweather-LightItalic.ttf") format("truetype");
}
body {
  display: flex;
  font-family: Merriweather, system-ui;
  background: #333345;
  color: white;
  margin: 0;
  transition: color 1s, background 1s;
}

.hidden {
  display: none !important;
}

a {
  all: unset;
  cursor: pointer;
}

.logo .title {
  display: flex;
}
.logo .title img {
  width: 45px;
  height: 45px;
}
.logo .title div {
  font-family: Merriweather-Black, system-ui;
  font-size: 36px;
}
.logo .title .logo-number {
  color: #FEF104;
}
.logo .subtitle {
  font-size: 13px;
  text-align: center;
}

#content {
  width: 100%;
  height: 96vh;
  overflow: scroll;
  padding: 2vh 20px;
  position: relative;
}

.browser {
  width: 100%;
  background: white;
  border-radius: 25px;
  display: flex;
  padding: 7px;
  border: 1px solid #cbcbcb;
}
.browser label {
  width: 100%;
}
.browser label input {
  width: 100%;
  background: transparent;
  border: none;
  outline: none;
}
.browser i {
  color: #A0A0A0;
  margin-right: 10px;
}

::-webkit-scrollbar {
  width: 12px;
  background-color: #333345;
  transition: background-color 1s;
}

::-webkit-scrollbar-track {
  border-radius: 10px;
}

::-webkit-scrollbar-thumb {
  border-radius: 10px;
  background-color: #51515E;
  transition: background-color 1s;
}

::-webkit-scrollbar-thumb:hover {
  background-color: #7d7d83;
  transition: background-color 1s;
}

button, .button {
  all: unset;
  font-family: Merriweather-Black, system-ui;
  border-radius: 10px;
  background: #51515E;
  padding: 15px 30px;
  transition: background-color 0.5s;
  display: block;
  width: fit-content;
  height: fit-content;
  cursor: pointer;
}
button:hover, .button:hover {
  background-color: #606097;
}

.row {
  display: flex;
  align-items: center;
}
.row.right {
  justify-content: flex-end;
}
.row.left {
  justify-content: flex-start;
}
.row.center {
  justify-content: center;
}

.column {
  display: flex;
  flex-direction: column;
}
.column.right {
  align-items: flex-end;
}

.no-margin-left {
  margin-left: 0 !important;
}

.invisible {
  opacity: 0;
}

.alert {
  position: absolute;
  bottom: 0;
  left: 10%;
  background-color: #eb3c34;
  z-index: 1;
  width: 80%;
  border-radius: 100px;
  animation: alertAnimation 2s;
  transition: opacity 1s;
  color: white;
}
.alert .row {
  align-items: center;
  position: relative;
}
.alert i {
  font-size: 3em;
  position: absolute;
  right: 15px;
  cursor: pointer;
}
.alert.invisible {
  z-index: -1;
}
.alert h2 {
  margin: 20px;
}
.alert .text {
  margin-right: 70px;
}

#cookie-alert {
  position: absolute;
  bottom: 160px;
  background: antiquewhite;
  color: #51515E;
  padding: 10px;
  border-radius: 100px;
  transition: opacity 1s;
}
#cookie-alert .row {
  align-items: center;
}
#cookie-alert .row i {
  font-size: 2em;
  padding: 0 5px;
}
#cookie-alert .row i.fa-times-circle {
  cursor: pointer;
}
#cookie-alert .row .text {
  text-align: center;
  cursor: default;
}

.full {
  width: 100%;
  height: 100%;
}
.full.centered {
  display: flex;
  align-items: center;
  justify-content: center;
}

#load-more {
  width: 100%;
  text-align: center;
  margin: 50px 0;
  cursor: pointer;
  font-size: 24px;
}

button.edit {
  display: unset;
  padding: 3px;
}

#editor {
  position: absolute;
  background: #51515E;
  color: white;
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  align-items: center;
  z-index: 1;
}
#editor input {
  width: 100%;
}

#nav-spacer {
  width: 75px;
}

nav {
  width: 260px;
  height: 100%;
  z-index: 2;
  position: absolute;
  background: #51515E;
  transition: background 0.6s, width 0.6s;
  justify-content: space-between;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: center;
}
nav a, nav div, nav #menu {
  transition: opacity 0.6s, font-size 0.6s;
}
nav #menu {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: 0;
  transition: font-size 0.6s;
  width: 75px;
  text-align: center;
  cursor: pointer;
}
nav #menu img {
  width: 0;
  padding: 0;
  transition: width 0.6s, padding 0.6s;
}
nav .logo {
  padding: 30px 0;
  border-bottom: 1px solid white;
}
nav .links {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-evenly;
  font-size: 26px;
  height: 100%;
  font-family: Merriweather-Light, system-ui;
  color: #BFBFBF;
  border-bottom: 1px solid white;
}
nav .links a {
  transition: color 0.6s;
}
nav .links a.current, nav .links a:hover {
  color: white;
}
nav .modes {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-around;
  height: 180px;
  text-align: left;
  align-items: flex-start;
  width: 100%;
}
nav .switch {
  position: relative;
  display: flex;
  padding-left: 200px;
}
nav .switch input {
  display: none;
}
nav .switch label {
  display: block;
  width: 50px;
  height: 24px;
  text-indent: -360%;
  color: white;
  user-select: none;
}
nav .switch label::before, nav .switch label::after {
  content: "";
  display: block;
  position: absolute;
  cursor: pointer;
}
nav .switch label::before {
  width: 50px;
  height: 100%;
  background-color: #dedede;
  border-radius: 100px;
  transition: background-color 0.25s;
}
nav .switch label::after {
  top: 0;
  right: 24px;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background-color: #fff;
  transition: right 0.25s;
}
nav .switch input:checked + label::before {
  background-color: #89c12d;
}
nav .switch input:checked + label::after {
  right: 0;
}
nav.rolled {
  width: 75px;
}
nav.rolled #menu {
  opacity: 1;
  font-size: 48px;
}
nav.rolled #menu img {
  width: 55px;
  padding: 10px 0;
}
nav.rolled a:not(.visible-if-rolled), nav.rolled div {
  font-size: 0;
  opacity: 0;
  cursor: default;
}

#news-browser {
  height: 7vh;
}
#news-browser .filters {
  display: flex;
  z-index: 1;
  overflow: scroll;
}
#news-browser .filters .filter {
  margin: 10px 2vw 10px 0;
  font-family: Merriweather-Light, system-ui;
  color: #BFBFBF;
  cursor: pointer;
  border-bottom: solid transparent 2px;
  transition: border-bottom 1s, color 1s;
}
#news-browser .filters .filter.selected, #news-browser .filters .filter:hover {
  color: white;
  border-bottom: solid white 2px;
}

#cards {
  height: 85vh;
  margin-top: 2vh;
  overflow-y: scroll;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}
#cards .card {
  width: 23%;
  position: relative;
  overflow: hidden;
  margin: 30px 10px 0;
  cursor: pointer;
  border-radius: 15px;
  height: 50%;
  background: white;
  box-shadow: #00000052 2px 3px 10px 0;
  transition: transform 0.3s;
  background-size: cover;
}
@media (max-width: 1131px) {
  #cards .card {
    width: 99%;
  }
}
#cards .card.embed {
  width: fit-content;
  height: fit-content;
}
#cards .card.embed:hover {
  transform: unset;
}
#cards .card:hover {
  transform: scale(1.08);
}
#cards .card .title {
  font-size: 23px;
  padding: 20px;
  position: absolute;
}
#cards .card .title span {
  background: white;
  line-height: 2.2;
  padding: 5px;
  color: black;
  box-shadow: 3px 4px 9px #0000008a;
}

#about-us .logo {
  display: flex;
  flex-direction: column;
  align-items: center;
}
#about-us .logo .title {
  flex-direction: column;
  align-items: center;
}
#about-us .logo .title img {
  width: 240px;
  height: 240px;
}
#about-us .logo .title div {
  font-size: 68px;
  text-align: center;
}
@media (max-width: 400px) {
  #about-us .logo .title div {
    font-size: 46px;
  }
}
#about-us .tag {
  width: fit-content;
  padding: 10px;
  background-color: #FEF104;
  margin: 25px auto;
  font-size: 32px;
  text-align: center;
  color: #333345;
  font-family: Merriweather-Black, system-ui;
}
#about-us .timeline {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 75px;
}
#about-us .timeline .argument {
  width: 50%;
  position: relative;
  padding-bottom: 50px;
}
#about-us .timeline .argument .index {
  position: absolute;
  width: 40px;
  height: 40px;
  background-color: #FEF104;
  border-radius: 100px;
  top: -21px;
  color: #333345;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  font-family: Merriweather-Black, system-ui;
}
#about-us .timeline .argument .text {
  text-align: center;
  border-top: solid white 2px;
  padding-top: 10px;
}
#about-us .timeline .argument.left {
  margin-right: 50%;
  border-right: solid white 3px;
}
#about-us .timeline .argument.left .index {
  right: -21px;
}
#about-us .timeline .argument.left .text {
  padding-right: 40px;
}
#about-us .timeline .argument.right {
  margin-left: 50%;
  border-left: solid white 3px;
}
#about-us .timeline .argument.right .index {
  left: -21px;
}
#about-us .timeline .argument.right .text {
  padding-left: 40px;
}
#about-us .timeline.tags .index {
  border-radius: 0;
  width: 70px;
}
#about-us .timeline.tags .argument.left .index {
  right: -37px;
}
#about-us .timeline.tags .argument.right .index {
  left: -37px;
}

#contact {
  display: flex;
  flex-direction: column;
  height: 100%;
  align-items: center;
}
#contact .logo {
  display: flex;
  flex-direction: column;
  align-items: center;
}
#contact .logo .title {
  flex-direction: column;
  align-items: center;
}
#contact .logo .title img {
  width: 200px;
  height: 200px;
}
#contact .logo .title div {
  font-size: 68px;
  text-align: center;
}
@media (max-width: 875px) {
  #contact .logo .title div {
    font-size: 42px;
  }
}
#contact .methods {
  display: flex;
  justify-content: space-around;
  margin-bottom: 150px;
  flex-wrap: wrap;
}
#contact .methods .method {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 250px;
  margin: 10px 0;
}
#contact .methods .method i {
  font-size: 160px;
}
#contact .methods .method .details {
  font-family: Merriweather-Black, system-ui;
  text-align: center;
}
#contact .methods .method .details .action-caller {
  font-size: 40px;
}
#contact .methods .method .details span {
  font-size: 26px;
}
@media (max-width: 875px) {
  #contact .methods .method i {
    font-size: 100px;
  }
  #contact .methods .method .details .action-caller {
    font-size: 28px;
  }
  #contact .methods .method .details span {
    font-size: 20px;
  }
}

body.light.contrast i.fas.fa-bars {
  color: white;
}

#covid .title {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-family: Merriweather-Black, system-ui;
  font-size: 30px;
  text-align: center;
}
@media (max-width: 400px) {
  #covid .title {
    font-size: 21px;
  }
}
#covid .title .date {
  font-family: Merriweather-Light, system-ui;
  font-size: 22px;
}
#covid ol {
  margin: 30px 0;
}
#covid ol li {
  margin-bottom: 10px;
  text-align: justify;
  font-size: 16px;
  font-family: Merriweather-Light, system-ui;
}
#covid ol li ul li {
  margin-bottom: initial;
}
#covid .text-and-button {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-family: Merriweather-Light, system-ui;
  font-size: 26px;
  text-align: center;
}
#covid .text-and-button a {
  margin-left: 20px;
}

#exam {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  font-family: Merriweather-Black, system-ui;
}
#exam .schedule {
  width: 40%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
#exam .schedule .title {
  font-size: 38px;
  text-align: center;
}
#exam .schedule table {
  background: linear-gradient(201.63deg, #F16235 0%, #FF7A00 100%);
  border-radius: 25px;
  padding: 10px 5px 20px;
  text-align: center;
  width: fit-content;
  margin: 40px 0;
}
#exam .schedule table th {
  font-size: 30px;
}
#exam .schedule table td {
  font-size: 22px;
}
@media (max-width: 480px) {
  #exam .schedule table th {
    font-size: 5vw;
  }
  #exam .schedule table td {
    font-size: 4vw;
  }
}
#exam .schedule table tr {
  height: 50px;
}
#exam .schedule table tr.date {
  height: auto;
  font-family: Merriweather, system-ui;
}
#exam .schedule table tr.date td:first-child {
  text-align: right;
}
#exam .rules {
  width: 60%;
}
#exam .rules .title {
  font-size: 30px;
  text-align: center;
}
#exam .rules ul li {
  font-size: 16px;
  margin-bottom: 10px;
}
@media (max-width: 1050px) {
  #exam {
    flex-direction: column;
    align-items: center;
  }
  #exam .schedule {
    width: 100%;
  }
  #exam .schedule .title {
    font-size: 28px;
  }
  #exam .schedule table {
    margin: 20px 0;
  }
  #exam .rules {
    width: 100%;
  }
  #exam .rules .title {
    font-size: 28px;
  }
}

#docs, #faq {
  text-align: center;
}
#docs h1, #faq h1 {
  font-family: Merriweather-Black, system-ui;
  font-size: 52px;
  line-height: 1;
}
@media (max-width: 430px) {
  #docs h1, #faq h1 {
    font-size: 32px;
  }
}
#docs h2, #faq h2 {
  font-family: Merriweather-Light, system-ui;
  font-size: 22px;
  font-weight: initial;
}
#docs #files, #faq #files {
  display: flex;
  justify-content: space-around;
  margin-top: 30px;
}
@media (max-width: 850px) {
  #docs #files, #faq #files {
    flex-direction: column;
  }
}
#docs #files .category, #faq #files .category {
  display: flex;
  flex-direction: column;
  font-size: 18px;
  text-align: initial;
  margin: 0 20px 30px;
}
#docs #files .category .name, #faq #files .category .name {
  font-family: Merriweather-Black, system-ui;
  font-size: 22px;
  margin-bottom: 15px;
}
#docs ol, #faq ol {
  text-align: left;
}
#docs ol li, #faq ol li {
  font-family: Merriweather-Black, system-ui;
  font-size: 28px;
  cursor: pointer;
  margin: 5px 0;
}
#docs ol .answer, #faq ol .answer {
  display: none;
  font-size: 20px;
  margin-bottom: 30px;
  white-space: break-spaces;
}
#docs ol li.selected + .answer, #faq ol li.selected + .answer {
  display: block;
}

#rodo {
  font-family: Merriweather-Light, system-ui;
}
#rodo .title {
  font-size: 28px;
  font-family: Merriweather-Black, system-ui;
}
#rodo .terms {
  font-size: 18px;
}
#rodo .inspector {
  margin: 20px 0 50px;
}
#rodo .inspector .line {
  font-size: 22px;
  margin: 10px 0;
}
#rodo .inspector .line b {
  font-family: Merriweather-Italic, system-ui;
  font-size: 24px;
}
#rodo .list-title {
  font-size: 28px;
}
#rodo ul {
  font-size: 20px;
  margin: 10px;
}

#admin-title {
  display: flex;
  align-items: center;
}
#admin-title a {
  margin-left: 10px;
  padding: 10px;
}

#admin {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  margin-left: -20px;
}
#admin a.logout {
  color: white;
  background-color: #51515E;
  padding: 10px;
  border-radius: 5px;
}
#admin form {
  display: flex;
  background-color: #51515E;
  padding: 20px;
  margin: 20px;
  border-radius: 10px;
  height: fit-content;
}
#admin form h3 {
  margin-top: 0;
}
#admin form input[type=text] {
  margin-bottom: 10px;
}
#admin form .button, #admin form input[type=file], #admin form select, #admin form input[type=text], #admin form textarea {
  font-family: Merriweather-Black, system-ui;
  border: 0;
  color: white;
  border-radius: 10px;
  background-color: #333345;
  padding: 10px;
}
#admin form .button, #admin form input[type=file], #admin form select {
  transition: background-color 1s;
}
#admin form .button:hover, #admin form input[type=file]:hover, #admin form select:hover {
  background-color: #9d480c;
}
#admin form input[type=file] {
  display: none;
}
#admin .row.right .button, #admin .row.right button, #admin .row.right select {
  margin: 10px 0 0 10px;
  border-radius: 10px;
}
#admin .row.split .column:not(:last-child) {
  margin-right: 30px;
}

body.light {
  background: white;
  color: #0254a6;
}
body.light .logo .title .logo-number {
  color: red;
}
body.light nav {
  background: linear-gradient(180deg, #D8FFD8 0%, #4FD5FF 100%);
}
body.light nav .switch label {
  color: black;
}
body.light nav .links a {
  color: black;
}
body.light nav .links a:hover {
  color: #0254a6;
}
body.light .cards .card .title span {
  color: black;
}
body.light #news-browser .filters .filter, body.light #news-browser .filters nav .links {
  color: black;
}
body.light #news-browser .filters .filter.selected {
  color: #0254a6;
  border-color: #0254a6;
}
body.light ::-webkit-scrollbar {
  background-color: white;
}
body.light ::-webkit-scrollbar-thumb {
  background-color: #cbcbcb;
}
body.light ::-webkit-scrollbar-thumb:hover {
  background-color: #a9a9a9;
}
body.light #about-us .timeline .argument {
  border-color: #0254a6;
}
body.light #about-us .timeline .argument .text {
  border-color: #0254a6;
}
body.light #about-us .timeline .argument .index {
  color: #0254a6;
}
body.light #about-us .tag {
  color: #0254a6;
}
body.light #covid button, body.light #exam .schedule table {
  background: linear-gradient(180deg, #D8FFD8 0%, #4FD5FF 100%);
}
body.light #admin-title h1 {
  color: black;
}
body.light #admin-title a.button {
  color: white;
}
body.light form h3, body.light button.edit {
  color: white;
}

body.zoomed {
  font-size: 18px;
}
body.zoomed .cards .card .title {
  font-size: 26px;
}
body.zoomed nav .links {
  font-size: 28px;
}
body.zoomed #about-us .tag {
  font-size: 36px;
}
body.zoomed #about-us .timeline .argument .index {
  font-size: 28px;
}
body.zoomed #contact .methods .method .details .action-caller {
  font-size: 48px;
}
body.zoomed #contact .methods .method .details span {
  font-size: 32px;
}
body.zoomed #contact .message-on-bottom {
  font-size: 24px;
}
body.zoomed #covid .title {
  font-size: 32px;
}
body.zoomed #covid .title .date {
  font-size: 26px;
}
body.zoomed #covid ol li {
  font-size: 18px;
}
body.zoomed #exam .schedule .title {
  font-size: 42px;
}
body.zoomed #exam .schedule table th {
  font-size: 32px;
}
body.zoomed #exam .schedule table td {
  font-size: 24px;
}
body.zoomed #exam .rules .title {
  font-size: 32px;
}
body.zoomed #exam .rules ul li {
  font-size: 18px;
}
body.zoomed #docs h1, body.zoomed #faq h1 {
  font-size: 54px;
}
body.zoomed #docs h2, body.zoomed #faq h2 {
  font-size: 24px;
}
body.zoomed #docs .files .category .name, body.zoomed #faq .files .category .name {
  font-size: 24px;
}
body.zoomed #docs .files .category a, body.zoomed #faq .files .category a {
  font-size: 20px;
}
body.zoomed #docs ol li, body.zoomed #faq ol li {
  font-size: 32px;
}
body.zoomed #docs ol .answer, body.zoomed #faq ol .answer {
  font-size: 22px;
}
body.zoomed #rodo .title {
  font-size: 54px;
}
body.zoomed #rodo .terms {
  font-size: 24px;
}
body.zoomed #rodo .inspector .line {
  font-size: 28px;
}
body.zoomed #rodo .inspector .line b {
  font-size: 36px;
}

body.contrast {
  background: black;
  color: white;
}
body.contrast nav {
  background: #181818;
}
body.contrast nav .switch label {
  color: white;
}
body.contrast nav .links a {
  color: white;
}
body.contrast nav .links a:hover {
  color: #FFC700;
}
body.contrast .cards .card .title span {
  color: black;
}
body.contrast #news-browser .filters .filter, body.contrast #news-browser .filters nav .links {
  color: white;
}
body.contrast #news-browser .filters .filter.selected {
  color: #FFC700;
  border-color: #FFC700;
}
body.contrast ::-webkit-scrollbar {
  background-color: black;
}
body.contrast ::-webkit-scrollbar-thumb {
  background-color: white;
}
body.contrast ::-webkit-scrollbar-thumb:hover {
  background-color: white;
}
body.contrast #about-us .timeline .argument {
  border-color: white;
}
body.contrast #about-us .timeline .argument .text {
  border-color: white;
}
body.contrast #about-us .timeline .argument .index {
  color: black;
}
body.contrast #about-us .tag {
  color: black;
}
body.contrast #covid button, body.contrast #exam .schedule table {
  background: white;
  color: black;
}

body.light.contrast {
  background: white;
  color: black;
}
body.light.contrast nav {
  background: #181818;
}
body.light.contrast nav .logo {
  color: white;
}
body.light.contrast nav .logo .title .logo-number {
  color: #FFC700;
}
body.light.contrast nav .switch label {
  color: white;
}
body.light.contrast nav .links a {
  color: white;
}
body.light.contrast nav .links a:hover {
  color: #FFC700;
}
body.light.contrast .cards .card .title span {
  color: black;
}
body.light.contrast #news-browser .filters .filter, body.light.contrast #news-browser .filters nav .links {
  color: black;
}
body.light.contrast ::-webkit-scrollbar {
  background-color: white;
}
body.light.contrast ::-webkit-scrollbar-thumb {
  background-color: black;
}
body.light.contrast ::-webkit-scrollbar-thumb:hover {
  background-color: black;
}
body.light.contrast #about-us .timeline .argument {
  border-color: black;
}
body.light.contrast #about-us .timeline .argument .text {
  border-color: black;
}
body.light.contrast #about-us .timeline .argument .index {
  color: black;
}
body.light.contrast #about-us .tag {
  color: black;
}
body.light.contrast #covid button, body.light.contrast #exam .schedule table {
  background: black;
  color: white;
}

#post .date {
  font-size: 2em;
  line-height: 1;
}
#post h2:not(#editor h2) {
  font-size: 4em;
  line-height: 1;
  margin: 25px 0 0;
}
#post .text {
  white-space: break-spaces;
  border-top: 1px solid;
  padding-top: 30px;
  margin-bottom: 50px;
}
#post .full-split {
  justify-content: space-around;
}
#post .full-split .column {
  margin-right: 20px;
}

#gallery {
  display: flex;
  flex-wrap: wrap;
}
#gallery .image {
  position: relative;
  width: 300px;
  margin: 0 20px 20px 0;
}
#gallery .image:hover .img-overlay {
  opacity: 1;
}
#gallery .image img {
  width: 100%;
}
#gallery .img-overlay {
  background: radial-gradient(50% 50% at 50% 50%, #000 0%, #6b6b6b00 100%);
  width: 100%;
  position: absolute;
  top: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 0;
  transition: opacity 1s;
  height: 70%;
}
#gallery .img-overlay i {
  color: #fff;
  font-size: 3em;
}
#gallery #overlay {
  background: #000000b3;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
#gallery #overlay img {
  height: 90%;
  padding: 5%;
}
#gallery #nextButton {
  color: #fff;
  font-size: 2em;
  transition: opacity 0.8s;
}
#gallery #nextButton:hover {
  opacity: 0.7;
}
#gallery #prevButton {
  color: #fff;
  font-size: 2em;
  transition: opacity 0.8s;
}
#gallery #prevButton:hover {
  opacity: 0.7;
}
#gallery #exitButton {
  color: #fff;
  font-size: 2em;
  transition: opacity 0.8s;
  position: absolute;
  top: 15px;
  right: 15px;
}
#gallery #exitButton:hover {
  opacity: 0.7;
}

#curtain {
  display: flex;
  flex-direction: column;
  height: 100%;
  align-items: center;
  width: 100%;
  justify-content: center;
}
#curtain .logo {
  display: flex;
  flex-direction: column;
}
#curtain .logo .title {
  flex-direction: column;
  align-items: center;
}
#curtain .logo .title img {
  width: 240px;
  height: 240px;
}
#curtain .logo .title div {
  font-size: 68px;
  text-align: center;
}

@keyframes alertAnimation {
  0% {
    width: 6%;
    color: transparent;
    background-color: transparent;
  }
  33% {
    width: 6%;
    background-color: #eb3c34;
  }
  66% {
    width: 80%;
    color: transparent;
  }
  100% {
    color: white;
  }
}

#requirements .requirement {
  margin: 1%;
  font-size: 1.5em;
}
