html, body {
    margin: 0; /* Remove default browser margins */
    padding: 0; /* Remove default browser padding */
    overflow: hidden; 
}

.full{
    width: 100vw; /* 100% of the viewport width */
    height: 100vh; /* 100% of the viewport height */
    /* Add other styles as needed */
    position: absolute;
}

#div{
    width: 100vw; /* 100% of the viewport width */
    height: 100vh; /* 100% of the viewport height */
    overflow: hidden;
}

.bg:not(.activeSlide):not(.activeSlideTrans):not(.nextSlide):not(.nextSlideTrans){
    display:none;
}

/************************************************************************/

.activeSlide{
    opacity: 1;
    transition: opacity 2s;
    transition-timing-function: ease-in;
}
.activeSlideTrans{
    opacity:0;
    transition: opacity 2s;
    transition-timing-function: ease-in;
}

.nextSlide{
    opacity: 0;
    transition: opacity 2s;
    transition-timing-function: linear;
}
.nextSlideTrans{
    opacity:1;
    transition: opacity 2s;
    transition-timing-function: linear;
}

/************************************************************************/

:root{
    --gifSpeed: 2.22s;
}

#texture1 {
  opacity: 0.15;
  animation: texture1 var(--gifSpeed) steps(1, end) infinite; /* 4 steps, jump at the end of each step */
}

#texture2{
    opacity: 0.05;
    animation: texture1 var(--gifSpeed) steps(1, end) infinite reverse; /* 4 steps, jump at the end of each step */
}

@keyframes texture1{
  0% {
    -webkit-transform: scaleX(1) scaleY(1);
    transform: scaleX(1) scaleY(1);
  }
  25% {
    -webkit-transform: scaleX(-1) scaleY(-1);
    transform: scaleX(-1) scaleY(-1);
  }
  50% {
    -webkit-transform: scaleX(1) scaleY(-1);
    transform: scaleX(1) scaleY(-1);
  }
  75% {
    -webkit-transform: scaleX(-1) scaleY(1);
    transform: scaleX(-1) scaleY(1);
  }
  100% {
    -webkit-transform: scaleX(1) scaleY(1);
    transform: scaleX(1) scaleY(1);
  }
}

/**********************************************************************/

#button3{
    transition: translate 0.5s;
}

#button3:no(.buttonPress){
    translate: 0px 0px;
}

#button3.buttonPress{
    translate: 0px 5px;
}

#screen{
    position:absolute;
    mix-blend-mode: screen;
    scale: 90%;
    translate: 595px 275px;
    transform: perspective(2000px) rotateX(0deg);
    transition: transform 1s;
}

#screen.buttonPress{
    transform: perspective(2000px) rotateX(-45deg);
}

/**************************************************************************/

#tape{
    position:absolute;
    width:100vw;
    height: 100vh;
    mask-image: linear-gradient(transparent, transparent, transparent, transparent, blue, blue, blue, blue, blue, blue, blue, blue, blue);
}

#tapeProper{
    margin-top: 0vh;
    transition:margin-top 1s;
}

#tapeProper.buttonPress{
    margin-top: -38vh;
}

#roll1{
    position:absolute;
    scale: 75%;
    translate: 41vw 41.2vh;
}
#roll2{
    position:absolute;
    scale: 75%;
    translate: 50.8vw 41.2vh;
}

.play{
    animation: play 8s infinite linear; /* 4 steps, jump at the end of each step */
}

@keyframes play{
  0% {
    rotate:0deg;
  }
  100% {
    rotate:360deg;
  }
}