@font-face {
  font-family: "Walsheim";
  src: url("../fonts/GTWalsheimPro-Regular.woff2"); }

* {
  font-family: "Walsheim" !important; }

a {
  text-decoration: none;
  color: black; }

.info-button > path {
  fill: #BC0D0D; }

.pause-button > svg > path,
.play-button > svg > path {
  fill: #FFFFFF; }

.footer-option > path, .footer-option > g > path {
  fill: #CC2031; }

#settings-button > path {
  fill: #1C1B1F; }

.x-settings > path {
  fill: #CC2031; }

#x-review > path {
  fill: #FFFFFF; }

textarea {
  font-size: 1em; }

.button {
  background-color: #FFFFFF;
  margin: 12px 0 12px 0;
  width: fit-content;
  padding: 0 24px;
  height: 37px;
  border-radius: 32px;
  text-decoration: none;
  color: black;
  font-size: 16px;
  text-align: center;
  line-height: 21px;
  align-items: center;
  display: grid; }
  .button:active {
    background-color: #BC0D0D; }

h2 {
  font-weight: 500;
  font-size: 24px;
  line-height: 24px;
  color: #FFFFFF;
  margin: 0; }

.small-text-2,
.small-text-1 {
  font-style: normal;
  font-weight: 500;
  font-size: 16px;
  line-height: 24px;
  /* identical to box height, or 150% */
  letter-spacing: -0.408px;
  font-variant: small-caps;
  color: #CC2031; }

.small-text-1 {
  color: #FFFFFF; }

.flex-center-vertical {
  display: flex;
  flex-direction: column;
  align-items: center; }

.flex-center-horizontal {
  display: flex;
  align-items: center; }

.info-bubble {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding: 16px 24px;
  background: #FFFFFF;
  box-shadow: 0px 1px 16px rgba(179, 179, 179, 0.24);
  border-radius: 16px;
  margin: 12px 0;
  font-weight: 500;
  font-size: 16px;
  line-height: 21px; }
  .info-bubble > img {
    width: 100%;
    border-radius: 16px; }
  .info-bubble h3, .info-bubble h2, .info-bubble h1 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px; }
  .info-bubble a {
    color: blue;
    background-color: #5f67b642;
    padding: 5px;
    border-radius: 5px; }

.info-title {
  display: flex;
  align-items: center;
  gap: 20px; }

#ui-container {
  width: 100%;
  height: 100%;
  left: 0%;
  position: fixed;
  bottom: 0%;
  display: flex;
  flex-direction: column;
  align-items: center; }

#camera-container {
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: -1; }

#camera-player-container {
  position: absolute;
  bottom: 70px;
  width: 80%;
  height: auto;
  margin: auto; }
  #camera-player-container > img {
    margin: auto;
    margin-top: 40px;
    position: relative; }
  #camera-player-container > div:nth-child(1) {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 26px; }

#camera-background {
  height: 100%;
  width: 100%; }
  #camera-background > g > path {
    fill: #BC0D0D; }

#blur-element {
  width: 100%;
  height: 100%;
  left: 0;
  position: fixed;
  background-color: #8b8b8b99;
  z-index: 3; }

#info-container {
  height: 100%;
  width: 100%;
  padding: 80px 10px 100px 10px;
  background-color: #faf8f6;
  position: relative;
  overflow-y: scroll; }
  #info-container h2 {
    color: #CC2031;
    font-weight: 500;
    font-size: 24px;
    line-height: 32px;
    letter-spacing: -0.408px; }
  #info-container > div {
    /* The div created through JQuery load function */
    height: fit-content;
    padding: 0 32px 55px 32px; }

#library-container {
  height: 100%;
  width: 100vw;
  padding: 55px 10px 100px 10px;
  background-color: #FFFFFF;
  position: relative; }

#library-content {
  overflow-y: scroll;
  overflow-x: hidden;
  height: 90%;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 12px; }
  #library-content .library-element {
    width: 95%;
    height: fit-content;
    border-radius: 8px;
    position: relative;
    padding: 12px;
    font-weight: 400;
    font-size: 16px;
    line-height: 21px; }
  #library-content > div:nth-child(odd) {
    background-color: lightgray; }
  #library-content > div:nth-last-child(1) {
    margin-bottom: 200px; }

.text-1 {
  font-weight: 500;
  font-size: 16px;
  line-height: 24px;
  color: #FFFFFF; }

#audio-popup {
  position: fixed;
  width: fit-content;
  height: fit-content;
  background-color: #BC0D0D;
  padding: 42px 51px 48px 32px;
  top: 20%;
  border-radius: 16px;
  z-index: 4; }
  #audio-popup > div {
    display: flex;
    gap: 24px; }

#popup-x {
  top: 12px;
  position: absolute;
  right: 12px; }

#player {
  position: fixed;
  bottom: 60px;
  padding: 20px;
  width: 80%;
  height: fit-content;
  background: #CC2031;
  border-radius: 16px; }
  #player > div {
    display: flex;
    align-items: center;
    width: 90%;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
    margin: auto; }

#html-container {
  width: 100vw;
  height: 100vh;
  justify-content: center;
  position: fixed; }

#loading-info {
  border-radius: 16px;
  text-align: center;
  width: 200px;
  z-index: 5;
  top: 40%;
  position: fixed;
  background: #CC2031;
  padding: 20px 0; }

a-scene {
  z-index: -1; }

html {
  width: 100vw;
  height: 100%;
  overflow: hidden; }

.slider {
  -webkit-appearance: none;
  width: 100%;
  height: 5px;
  border-radius: 10px;
  background: darkgrey;
  outline: none;
  -webkit-transition: 0.2s;
  transition: opacity 0.2s;
  margin: 0px 5px; }

object {
  width: 100%;
  /* to deal with info object */ }

.slider::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 5px;
  height: 5px;
  border-radius: 100%;
  background: lightskyblue;
  cursor: pointer; }

.slider::-moz-range-thumb {
  width: 5px;
  height: 5px;
  border-radius: 100%;
  background: lightskyblue;
  cursor: pointer; }

.a-modal {
  display: none !important; }

#timeline-container {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: center; }
  #timeline-container > div {
    display: flex;
    justify-content: space-between;
    width: 100%; }

#volume-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 90%; }

.flex {
  display: flex;
  align-items: center;
  justify-content: space-around; }

.timeline-status-container {
  width: fit-content; }

/* Extra small devices (phones, 600px and down) */
/* Small devices (portrait tablets and large phones, 600px and up) */
/* Medium devices (landscape tablets, 768px and up) */
/* Large devices (laptops/desktops, 992px and up) */
/* Extra large devices (large laptops and desktops, 1200px and up) */
