*,
::before,
::after {
  box-sizing: border-box;
}

:root {
  --color-1: #6b0fd7;
  --color-2: #d8e203;
  --color-3: #583481;
  --color-4: #575631;
  --color-5: #ebedf8;
}

::selection {
  background-color: #d8e203;
  color: #6b0fd7;
}

html,
body {
  min-height: 100vh;
  margin: 0;
}

body {
  background-color: #fff;
  font-family: "Inter", sans-serif;
  line-height: 1.5;
}

button {
  user-select: none;
  font: inherit;
  cursor: pointer;
}

.arrow {
  display: none;
  position: fixed;
  top: 50%;
  transform: translateY(-50%);
  height: 100%;
  background-color: transparent;
  border: none;
}

#left-arrow {
  left: 100px;
}

#right-arrow {
  right: 100px;
}

.arrow svg {
  width: 100%;
  height: 100px;
}

.arrow svg path {
  transition: stroke 0.2s;
}

.arrow.white svg path {
  stroke: rgba(255, 255, 255, 0.5);
}

.arrow.white:hover svg path {
  stroke: #fff;
}

.arrow.black svg path {
  stroke: rgba(0, 0, 0, 0.5);
}

.arrow.black:hover svg path {
  stroke: #000;
}

article {
  display: none;
  justify-content: center;
  min-width: 100%;
  min-height: 100vh;
  padding: 4em 0;
  background-color: var(--color-5);
}

article .article-text {
  max-width: 800px;
  padding: 4em 0;
  font-size: 1.3em;
}

article .article-text h1 {
  margin-top: 0;
  font-size: 2.2em;
}

#main,
#footer {
  align-items: center;
  background-color: var(--color-1);
}

#main .text,
#footer .text {
  max-width: 800px;
  padding: 4em;
  border: 10px solid var(--color-2);
  border-radius: 30px;
}

#main h1,
#footer h1 {
  margin: 0;
  margin-bottom: 1em;
  color: var(--color-2);
  font-size: 3em;
}

#main p,
#footer p {
  color: #fff;
  font-size: 1.5em;
}

.background-color-1 {
  background-color: var(--color-3);
  color: #fff;
}

.background-color-2 {
  background-color: var(--color-4);
  color: #fff;
}

.background-color-1 a,
.background-color-2 a,
#main a,
#footer a {
  color: var(--color-2);
}

#reference-list li {
  overflow-wrap: break-word;
  word-break: break-all;
  word-wrap: break-word;
}

.big-list li {
  margin-bottom: 3em;
}

li:target {
  background-color: rgba(216, 226, 3, 0.5);
}

a {
  color: var(--color-1);
  text-decoration: underline;
  font-weight: bold;
}

img {
  width: 100%;
  border-radius: 30px;
}

@media only screen and (max-width: 1250px) {
  article {
    display: flex;
    padding: 2.5em;
  }

  .arrow {
    display: none;
  }
}

@media only screen and (max-width: 600px) {
  body {
    font-size: 14px;
  }

  #main .text,
  #footer .text {
    padding: 2em 0;
    border: none;
  }
}
