@import "fonts/stylesheet.css";

:root{
	--rose : rgb(255, 59, 151);
	--lightgreen: rgb(94, 199, 100);
	--green: rgb(43, 60, 50);
}

*{
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

html, body {
  /*overflow: hidden;*/
}

body{
	margin:0;
	font-size: 30px;
	background: var(--rose);
  background: #000;
	font-family: "directrice", sans-serif;
  position: relative;
/*	overflow: hidden;
	height: auto;*/
}

img{
	width: 100%;
}

h1, h2, h3{
  font-weight: normal;
}

a{
  color: #FFF; 
  text-decoration: none;
}

a:hover{
  color: #FFF;
}

p a{
	text-decoration: underline;
}

.loading{
  background: #000; 
  width: 100vw;
  height: 100vh; 
  position: fixed;
  top:0;
  left:0; 
  z-index: 99999;
}

.loading .loading-wrapper{
  width: 50%;
  max-width: 800px;
  margin:auto; 
  top: 30vh;
  position:relative;
  color: #FFF;
  font-size: 2em;
}

header{
  /*background: var(--rose);*/
  background: #FFF;
  padding: 10px 20px;
  width: 100%;
  display: flex;
}

.header-right{
  display:flex;
  justify-content: flex-end;
  width: 30%;
  margin-right: 5px;
  margin-top: 7px;
}

h1{
  /*position: fixed;*/
  margin:0;
/*  top: 30px; 
  left: 30px;*/
  color: #000;
  font-size: 0.8em;
  /*text-align: center;*/
  width: 70%;
  /*text-shadow: -1px 0 #FFF, 0 1px #FFF, 1px 0 #FFF, 0 -1px #FFF;*/
/*  text-shadow:
    0 0 7px #FFF,
    0 0 10px #FFF,
    0 0 21px #FFF,
    0 0 42px #FFF;*/
}

h1 a{
  color: #000;
}

h1 a:hover{
  color: var(--rose);
}

.play-area {
  position: relative;
  /*height: 326px;*/
  height: 480px;
  width: 326px;
  margin:auto;
  margin-top: calc(((100vh - 80px) - 480px) / 2 );
  /*margin-top: 50%;*/
  /*transform: translateY(-100%);*/
  border: 3px solid #FFF;
  overflow: hidden;
  border-radius: 10%;
}

  .play-area .picto{
    position: absolute;
    z-index: 1000;
    top: 50%;
    left: 7px;
    transform: translateY(-50%) scale(1);
    background: rgba(255, 255, 255, 0.6);
    /*border-radius: 100%;*/
    /*width: 80px;*/
    padding: 30px 5px;
    box-shadow: 0 0 0 0 rgba(0, 0, 0, 1);
    animation: pulse 1.5s infinite;
    pointer-events: none;
    text-align: center;
  }

  .picto p{
    margin: 0;
  }


  @keyframes pulse {
    0% {
      transform: translateY(-50%) scale(0.9);
      box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.8);
    }

    70% {
      transform: translateY(-50%) scale(1);
      box-shadow: 0 0 0 10px rgba(0, 0, 0, 0);
    }

    100% {
      transform: translateY(-50%) scale(0.9);
      box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
    }
  }

  .play-area .picto figure{
    margin: 0;
  }

.reel-container {
  position: absolute;
  top:0px;
  transition: all 0.3s ease-in-out;
/*  user-select: none;
  height:300px;
  width: 320px;*/
  /*overflow: hidden;*/
/*  margin:auto;
  padding-left: 1rem;
  padding-right: 1rem;
  border: 3px solid #000;*/
}

.reel-item {
  width: 320px;
  height:320px;
  /*padding:25px;*/
  /*background: blue;*/
  /*margin:35px;*/
/*  animation-duration: 0.2s;
  animation-name: slidein;
  position: absolute;*/
}

.reel-item .reel-img-wrapper{
  cursor:grab;
}

.reel-item img{
  pointer-events: none;
  /*mix-blend-mode: multiply;*/
  /*mix-blend-mode: difference;*/
/*  mix-blend-mode: luminosity;
  -webkit-filter: grayscale(100%) contrast(200%);
  filter: grayscale(100%) contrast(200%);
  opacity: 1;*/
}

.reel-item .info{
  position: fixed; 
  top: 50%;
  left:calc(50% + (326px/2) + 50px);
  transform: translateY(-45%);
  z-index: 200;
  display: none;
/*  opacity: 0;*/
  width: 350px;
  padding: 20px;
  text-align: center;
  background: #FFF;
  line-height: 1.1;
  /*text-shadow: -1px 0 #FFF, 0 1px #FFF, 1px 0 #FFF, 0 -1px #FFF;*/
  font-size: 1em;
  /*border: 1px solid #FFF; */
  border-radius: 15%;
  padding: 10px 20px;
  /*height: 480px;*/
/*  transition: all 0.2s linear;*/
}

.reel-item .info .quote{
  /*font-style: italic;*/
  /*background: #00aabb;
  border-radius: .4em;
  position: relative;*/
}


.reel-item.active .info{
/*  transition: all 1s linear;
  opacity: 1;*/
}

.reel-item .info p{
  margin:5px;
}

.reel-item .info p.note{
  font-size: 0.6em;
  margin:0;
  margin-top: 0px;
}

.reel-itel .info p.quote + p.note{
  margin-top: 15px;
}

.reel-item .info a{
  color: #000;
  text-decoration: none;
} 

.reel-item .info a:hover{
  color: var(--rose);
}


/*.reel-item.deactivate {
  animation-duration: 1s;
  animation-name: slideOut;
  animation-fill-mode: forwards;

}*/

@keyframes slidein {
  from {
    top: 0;
    /*height: 50px;
    opacity: 0;
    /*height: 100%;*/
    /*opacity: 1;*/
  }

  to {
    top: -100%;
    /*height: 100px;*/
    /*opacity: 0;*/
    /*height: 100%;
    opacity: 1;*/
  }
}

@keyframes slideOut {
  to {
    top: 0;
    /*height: 50px;*/
    /*opacity: 0;*/
  }

  from {
    top: -100%;
    /*height: 100%;*/
    /*opacity: 1;*/
  }
}


  .credits, .infos{
    font-size: 0.8em;
    margin-left: 15px; 
    cursor: pointer; 
    padding-top: 0.3em;
  }

  .credits:hover, .infos:hover{
    color: var(--rose);
  }


  .infos-window, .credits-window{
    position: fixed;
    z-index: 1000; 
    background: rgba(0, 0, 0, 0.5);
    top: 0; 
    left: 0; 
    right: 0; 
    bottom: 0; 
    display: none;
  }

  .infos-window.is-active, .credits-window.is-active{
    display:block;
  }

  .infos-window-inner, .credits-window-inner{
    position: absolute;
    width: 60%;
    background: #FFF; 
    border: 1px solid #000; 
    padding: 20px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center; 
    min-width: 320px;
    max-height: 90vh;
    overflow: scroll; 
  }

  .infos-window-inner h2, .credits-window-inner h2{
    margin-top: 0;
    margin-bottom: 30px; 
    font-size: 1em;
  }

  .credits-window h2{
    margin-bottom:0px;
    /*margin-top: 30px;*/
  }

  .infos-window-inner p{
    font-size: 0.7em;
    line-height: 1.2;
  }

  .credits-window-inner p{
    font-size: 0.5em;
    line-height: 1.3;
    margin: 0px;
  }

  .close-window{
    position: absolute;
    right: 10px; 
    top: 10px;
    font-size: 1.5em;
    cursor: pointer;
  }

  .hide-for-small-only{
    display: block;
  }
  .show-for-small-only{
    display: none;
  }

@media only screen and (max-width: 560px){
  .hide-for-small-only{
    display: none;
  }
  .show-for-small-only{
    display: block;
  }

  .loading .loading-wrapper{
    font-size: 1.3em; 
    width: 80%;
  }

  header{
    padding: 10px;
  }

  header h1{margin-top: 7px; width:50%;}

  .header-right{
    margin-top: 0;
    font-size: 0.9em;
    width:50%;
  }

  .play-area{
    width: 300px;
    /*height: 80vh;*/
    /*margin-top: 30px;*/
  }

  .reel-item{
    position: relative;
  }

  .reel-item .info{
    position: absolute;
    left: 0;
    top:0;
    transform: translateY(0%);
    height: 320px;
    width: 300px;
    font-size: 0.65em;
    opacity: 0.8;
    padding-top: 20px;
    align-items: center;
    justify-content: center;
  }

    .infos-window-inner, .credits-window-inner{
      width: 95%;
    }

}





