@import url('https://fonts.googleapis.com/css2?family=Quicksand:wght@300;400;500;600;700&display=swap');

:root {
  --glitched-duration: 0.9s;
  --glitched-long-duration: 3s;
  --yellow-color: #f9f002;
  --yellow-color-opacity: #f9f00242;
  --orange-color: #ff9800;
  --border-color: #8ae66e;
  --red-color: #ff003c;
  --blue-color: #0c5f74;
  --green-color: #298d29;
  --purple-color: purple;
  --neon-color: #39ff14;
  --black-color: #000;
}

*
{
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: 'Quicksand', sans-serif;
	color: rgb(193 98 54);
}

body 
{
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 100vh;
  background: #00d0ff;
}

.glitched {
	animation-duration: 1.35s;
	animation-iteration-count: infinite;
	animation-name: liglitched;
	animation-timing-function: ease-in-out;
	list-style-image: none;
	list-style-position: outside;
	list-style-type: none;
	--glitched-duration: 0.9s;
	--glitched-long-duration: 3s;
}

form {
  margin: 0;
  padding: 0;
}

@keyframes animate 
{
  0%
  {
    transform: translateY(-100%);
  }
  100%
  {
    transform: translateY(100%);
  }
}

input[type="submit"]:active
{
  opacity: 0.6;
}
@media (max-width: 900px)
{
  .backward-animation span 
  {
    width: calc(10vw - 2px);
    height: calc(10vw - 2px);
  }
}
@media (max-width: 600px)
{
  .backward-animation span 
  {
    width: calc(20vw - 2px);
    height: calc(20vw - 2px);
  }
}

.backward-animation::before 
{
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  /*background: linear-gradient(#00d0ff,#0011ff,#00d0ff);*/
  background: linear-gradient(#00d0ff,#0011ff,#00d0ff);
  animation: animate 5s linear infinite;
}

.backward-animation {
	position: absolute;
	width: 100vw;
	height: 100vh;
	display: flex;
	justify-content: center;
/*	align-items: center;*/
	gap: 2px;
	flex-wrap: wrap;
	overflow: hidden;
}

.backward-animation span {
	position: relative;
	display: block;
	width: calc(2vw - 2px);
	height: calc(2vw - 2px);
	background: #fff;
	z-index: 2;
	transition: 1.5s;
}

.backward-animation span:hover  {
	 background: #0011ff;
	 transition: 0s;
}

#background-video {
height: 105vh;
width: 105vw;
object-fit: cover;
position: fixed;
left: 0;
right: 0;
top: 0;
bottom: 0;
z-index: -1;
}


button.btn,
a.btn {
  --background-color: #ff003c;
  background-color: var(--background-color);
  display: block;
  border: none;
  border-radius: 0%;
  font-size: 0.8rem;
  line-height: 10%;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-weight: 600;
  font-family: "Advent Pro", arial;
  padding: 25px 5px;
  margin: 10px;
  position: relative;
  color: #fff;
  border-right: 3px solid #8ae66e;
  clip-path: polygon(
    -15px 0%,
    calc(100% + 15px) 0%,
    calc(100% + 15px) 100%,
    20px 100%,
    -15px calc(100% - 35px)
  );
  cursor: pointer;
  outline: none;
}

button.btn:hover,
a.btn:hover,
button.btn:focus,
a.btn:focus {
  animation-name: hover;
  animation-duration: var(--glitched-duration);
  animation-iteration-count: infinite;
  animation-timing-function: linear;
}

button.btn.green,
a.btn.green {
  --background-color: #446d44;
}

button.btn.purple,
a.btn.purple {
  --background-color: purple;
}

button.btn.blue,
a.btn.blue {
  --background-color: #136377;
}

button.btn.blue.accueil:after {
  content: "R-00";
}

button.btn.blue.partenaires:after {
  content: "R-11";
}

button.btn.blue.essayeznous:after {
  content: "R-22";
}

button.btn.blue.news:after {
  content: "R-33";
}

button.btn.blue.apropos:after {
  content: "R-44";
}

button.btn.blue.contacts:after {
  content: "R-55";
}

button.btn:after,
a.btn:after {
  display: block;
  position: absolute;
  bottom: 0px;
  right: 25px;
  padding: 2px 2px 0px 2px;
  font-size: 0.6rem;
  line-height: 9px;
  color: #000;
  background-color: #f9f002;
  border-left: 2px solid #8ae66e;
}

button.btn:hover:after,
a.btn:hover:after,
button.btn:focus:after,
a.btn:focus:after {
  animation-name: hoverafter;
  animation-duration: var(--glitched-duration);
  animation-iteration-count: infinite;
  animation-timing-function: linear;
}

button.btn:before,
a.btn:before {
  --outside: 4px;
  content: "";
  position: absolute;
  display: none;
  background-color: var(--background-color);
  width: calc(100% + (var(--outside) * 2));
  height: 12px;
  top: 0px;
  left: calc(0px - 1px - var(--outside));
  border-left: 2px solid #8ae66e;
  border-right: 2px solid #8ae66e;
}

button.btn:hover:before,
a.btn:hover:before,
button.btn:focus:before,
a.btn:focus:before {
  display: block;
  animation-name: hoverbefore;
  animation-duration: var(--glitched-duration);
  animation-iteration-count: infinite;
  animation-timing-function: linear;
}

@keyframes plop {
        0% {
                transform: skew(-25deg);
        }
        100% {
                text-shadow: -5px 5px var(--c), -10px 10px var(--c), -15px 15px var(--c), -20px 20px var(--c), -40px 40px 15px var(--c);
                transform: skew(25deg);
        }
}

@keyframes hover {
  0% {
    transform: skew(0deg);
  }
  60% {
    transform: skew(0deg);
  }
  61% {
    transform: skew(10deg);
  }
  70% {
    transform: skew(10deg);
  }
  71% {
    transform: skew(0deg);
  }
  100% {
    transform: skew(0deg);
  }
}

@keyframes hoverbefore {
  0% {
    display: none;
    top: 0px;
  }
  10% {
    display: none;
    top: 0px;
  }
  11% {
    display: block;
    top: 10px;
    left: calc(0px - 0px - var(--outside));
  }
  29% {
    top: 10px;
  }
  30% {
    display: none;
    top: 0px;
  }
  50% {
    display: none;
    top: 0px;
  }
  51% {
    display: block;
    top: 55px;
    filter: blur(1px);
    height: 22px;
  }
  90% {
    display: block;
    top: 55px;
    height: 22px;
  }
  91% {
    filter: blur(0px);
    display: none;
    top: 0px;
    height: 12px;
  }
  100% {
    display: none;
    top: 0px;
  }
}

@keyframes hoverafter {
  0% {
    right: 45px;
  }

  10% {
    right: 45px;
  }
  11% {
    right: 35px;
  }
  20% {
    transform: skew(0deg);
  }
  21% {
    transform: skew(-10deg);
  }
  40% {
    transform: skew(-10deg);
  }
  41% {
    transform: skew(0deg);
  }
  49% {
    right: 35px;
  }
  50% {
    right: 55px;
  }

  60% {
    right: 55px;
  }
  61% {
    right: 35px;
  }
  70% {
    transform: skew(0deg);
  }
  71% {
    transform: skew(10deg);
  }
  80% {
    transform: skew(10deg);
  }
  81% {
    transform: skew(0deg);
  }
  100% {
    right: 35px;
  }
}


@keyframes initText{
  0% {content:"Initializing system . . ." }
  17% {content:"Initializing system . . . \00000a Loading core modules . . ." }
  27% {content:"Initializing system . . . \00000a Loading core modules . . . \00000a Verifying user permissions . . . " }
  36% {content:"Initializing system . . . \00000a Loading core modules . . . \00000a Verifying user permissions . . . \00000a Compiling source code . . . " }
  42% {content:"Initializing system . . . \00000a Loading core modules . . . \00000a Verifying user permissions . . . \00000a Compiling source code . . . \00000a Running diagnostics . . ." }
  49% {content:"Loading core modules . . . \00000a Verifying user permissions . . . \00000a Compiling source code . . . \00000a Running diagnostics . . . \00000a Establishing secure connection . . ." }
  60% {content:"Verifying user permissions . . . \00000a Compiling source code . . . \00000a Running diagnostics . . . \00000a Establishing secure connection . . . \00000a Scanning for vulnerabilities . . ." }
  66% {content:"Compiling source code . . . \00000a Running diagnostics . . . \00000a Establishing secure connection . . . \00000a Scanning for vulnerabilities . . . \00000a Loading user interface . . . \00000a" }
  78% {content:"Running diagnostics . . . \00000a Establishing secure connection . . . \00000a Scanning for vulnerabilities . . . \00000a Loading user interface . . . \00000a Executing startup procedures . . . \00000a" }
  85% {content:"Establishing secure connection . . . \00000a Scanning for vulnerabilities . . . \00000a Loading user interface . . . \00000a Executing startup procedures . . . \00000a Initializing database connections . . . \00000a"   }
  100% {content:"\00000a Scanning for vulnerabilities . . . \00000a Loading user interface . . . \00000a Executing startup procedures . . . \00000a Initializing database connections . . . \00000aUp and Running !"   }
}

@keyframes opcty{
  0% { opacity:0 }
  100% { opacity:1 }
}

@keyframes opcty{
  0% { opacity:0 }
  100% { opacity:1 }
}

@keyframes counting{
    0% { --num: 0 }
    60% { --num: 66 }
    100% { --num: 100 }
}

@keyframes charging {
  0%{ width:0% }
  60%{ width:66% }
  100%{ width:100% }
}

@keyframes rotate{
  0%{
    transform: rotate(0)
  }
  100%{
    transform: rotate(360deg)
  }
}
.flex{
  display:flex;
}

/*description: good for images. Effect of a dying flickering screen. Sometimes bright, sometimes dark.*/
.cyber-glitch-0
{
    animation: cyber-glitch-0 5s linear infinite;
}

@keyframes cyber-glitch-0
{
    0% {filter: blur(0) brightness(100%) contrast(100%);}
    2% {filter: blur(.05rem) brightness(120%) contrast(120%);}
    4% {filter: blur(.10rem) brightness(150%) contrast(150%);}
    6% {filter: blur(.20rem) brightness(170%) contrast(170%);}
    8% {filter: blur(0) brightness(100%) contrast(100%);}
    10% {filter: blur(0) brightness(100%) contrast(100%);}
    60% {filter: blur(0) brightness(100%) contrast(100%);}
    62% {filter: blur(.05rem) brightness(60%) contrast(100%);}
    64% {filter: blur(.10rem) brightness(40%) contrast(100%);}
    66% {filter: blur(0) brightness(100%) contrast(100%);}
    68% {filter: blur(.05rem) brightness(60%) contrast(100%);}
    70% {filter: blur(.10rem) brightness(40%) contrast(100%);}
    72% {filter: blur(0) brightness(100%) contrast(100%);}
    100% {filter: blur(0) brightness(100%) contrast(100%);}
}

@keyframes liglitched {
  0% {
    transform: skew(-3deg);
    margin-left: -2px;
  }
  10% {
    transform: skew(3deg);
    margin-left: inherit;
  }
  11% {
    transform: skew(0deg);
    margin-left: 2px;
  }
  50% {
    transform: skew(0deg);
    margin-left: inherit;
  }
  51% {
    transform: skew(3deg);
    margin-left: 5px;
  }
  59% {
    transform: skew(-3deg);
    margin-left: 5px;
  }
  60% {
    transform: skew(0deg);
    margin-left: inherit;
  }
  100% {
    transform: skew(0deg);
  }
}

@keyframes scannedv {
  0% {
    left: 0px;
  }
  50% {
  }
  51% {
  }
  100% {
    left: 100%;
  }
}

::-webkit-scrollbar {
    background-color: rgb(30 25 6 / 0.8);
}

::-webkit-scrollbar-button {
    display: none;
}

::-webkit-scrollbar-corner {
    display: none;
}

::-webkit-scrollbar-thumb {
    background-color: rgb(193 98 54);
    transition: background var(--glitched-duration);
}

::-webkit-scrollbar-track {
    display: none;
}

::-webkit-scrollbar-track-piece {
    display: none;
}

@keyframes scanneda {
  0% {
    bottom: -1px;
  }
  100% {
    bottom: calc(100% + 1px);
  }
}
