:root{
  --color-primary: #0000D0;
  --color-accent: #F4CD27;
  --bg-primary: #E1E4E3;
  --bg-secondary: #EDE7DE;
  --selection-color: #f8e37f;
}
*{
  box-sizing: border-box;
  word-break: keep-all;
}
*::selection{
  background: var(--selection-color);
}
body::-webkit-scrollbar {
  display: none;
}
.inner-photo::-webkit-scrollbar {
  display: none;
}
.inner-text::-webkit-scrollbar {
  display: none;
}
html, body{
  width: 100vw;
  height: 100vh;
  overflow: hidden;
  margin: 0;
  display: block;
  font-family: "IBM Plex Mono", monospace;
  background: var(--bg-secondary);

}
img{
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  background-size: cover;
}
video{
  display: block;
  height: 100.1%;
  width: 100.1%;
  object-fit: cover;
  background-size: cover;
}
a{
  text-decoration: none;
  color: var(--color-primary);
  cursor: pointer;
}
.text-big{
  font-size: 18px;
}
.text-normal{
  font-size: 16px;
}
.text-small{
  font-size: 12px;
}
.flex-centre{
  display: flex;
  justify-content: center;
  align-items: center;
}
.header{
  width: 100%;
  height: 48px;
  border-bottom: 1px solid var(--color-primary);
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 2%;
  z-index: 100;
  position: fixed;
  top: 0;
  left: 0;
  background-color: var(--bg-secondary);
}
.header-logo{
  width: 40px;
  height: 40px;
}
.nav ul{
  list-style: none;
}
.nav li{
  display: inline-flex;
  margin-left: 16px;
}
.footer{
  width: 100%;
  height: 48px;
  border-top: 1px solid var(--color-primary);
  background-color: var(--bg-secondary);
  text-align: center;
  z-index: 20;
  padding: 0 2%;
  margin: 0;
  color: var(--color-primary);
  display: flex;
  align-items: center;
  justify-content: right;
}
.inner{
  width: 100vw;
  height: calc(100vh - 98px);
  margin-top: 48px;
  overflow: scroll;
  display: flex;
}
.inner-text, .inner-photo{
  width: 50vw;
  height: auto;
  padding: 1.5% 2%;
  transition: width 500ms;
  overflow: scroll;
}
.inner-text{
  border-left: 1px solid var(--color-primary);
  position: relative;
}
.description-link{
  color: black;
  text-decoration: underline;
}
.description ul{
  list-style: none;
}

a.collapse{
  position: fixed;
  top: 49%;
  left: 49.9%;
  color: var(--color-primary);
  font-size: 24px;
}
.hide{
  display: none;
}

/*COLLAPSED*//*COLLAPSED*//*COLLAPSED*//*COLLAPSED*//*COLLAPSED*//*COLLAPSED*//*COLLAPSED*//*COLLAPSED*//*COLLAPSED*/

.collapsed .collapse{
  left: -11px;
}
.collapsed .inner-text{
  width: 50px;
  padding: 0;
  overflow: visible;
}
.collapsed .inner-photo{
  width: calc(100vw - 50px);
}
.collapsed .inner-photo .caption{
  font-size: 14px;
}
.collapsed .inner-text .show {
  display: none;
}
.collapsed .inner-text .hide {
  display: block;
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
  position: absolute;
  top: 50%;
  right: -105%;
  padding: 0;
  margin: 0;
  white-space: nowrap;
  color: var(--color-primary);
  cursor: pointer;
}


/*INNER TEXT*//*INNER TEXT*//*INNER TEXT*//*INNER TEXT*//*INNER TEXT*//*INNER TEXT*//*INNER TEXT*//*INNER TEXT*/

.tags{
  padding: 8px 0 16px 0;
}
.tags span{
  background-color: var(--bg-primary);
  padding: 2px 12px;
  border: 1px solid var(--color-primary);
  border-radius: 8px;
  margin-right: 6px;
  pointer-events: none;
  color: var(--color-primary);
  font-size: 14px;
}
.description{
  line-height: 1.5;
  width: 650px;
  max-width: 100%;
}
.photo-number > a{
  text-decoration: none;
  color: var(--color-primary);
}

/*INNER PHOTO*//*INNER PHOTO*//*INNER PHOTO*//*INNER PHOTO*//*INNER PHOTO*//*INNER PHOTO*//*INNER PHOTO*//*INNER PHOTO*/

.inner-photo > div{
  margin-bottom: 16px;
}
.image-container, .video-container{
  width: 100%;
  height: auto;
  position: relative;
}
.video-container{
  padding:56.25% 0 0 0;
}

.small-video{
  width: 70%;
  height: auto;
  margin: 0 auto 8px auto;
}
.very-small-video{
  width: 50%;
  height: auto;
  margin: 0 auto 8px auto;
}
.caption{
  margin-top: 8px;
  padding-left:1.6em;
  text-indent:-1.6em;
}

@media (orientation: portrait) {
  html, body{
    height: 100%;
    overflow: scroll;
    }
  .inner{
    flex-direction: column-reverse;
    height: auto;
  }
  .inner-text, .inner-photo{
    width: 100vw;
    padding: 4% 3%;
  }
  .inner-text{
    border-left: none;
    border-bottom: 1px solid var(--color-primary);
    position: relative;
  }
  .collapse{
    display: none;
  }
}
@media screen and (max-width: 1024px){
  .description{
    line-height: 1.5;
    width: 100%;
  }
}
@media screen and (max-width: 500px){
  .text-big{
    font-size: 16px;
  }
  .text-normal{
    font-size: 14px;
  }
  .text-small{
    font-size: 12px;
  }
  .header{
    padding: 0 3%;
  }
  .nav li{
    display: inline-flex;
    margin-left: 8px;
  }

}
