@import url("https://fonts.googleapis.com/css2?family=Oswald:wght@400;700&family=Outfit:wght@200;400;700;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Crimson+Pro:wght@400;700&family=Gruppo&family=Oswald:wght@400;700&family=Outfit:wght@100;400;700&family=Syncopate:wght@400;700&display=swap");
@font-face {
  font-family: "Anurati";
  src: url("../fonts/anurati-regular-webfont.woff2") format("woff2"), url("../fonts/anurati-regular-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "sabomastersabomaster";
  src: url("../fonts/sabomaster-webfont.woff2") format("woff2"), url("../fonts/sabomaster-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "cmx";
  src: url("../fonts/cmx.woff2") format("woff2"), url("../fonts/cmx.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "cmx2";
  src: url("../fonts/cmx2.woff2") format("woff2"), url("../fonts/cmx2.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "cybertronic";
  src: url("../fonts/cybertronic.woff2") format("woff2"), url("../fonts/cybertronic.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
:root {
  --transDelay: 0s;
  --transSpeed: 0s;
  --transEasing: linear;
}

/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
*, *:after, *:before {
  box-sizing: border-box;
}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

@media (min-aspect-ratio: 2) {
  .container {
    width: auto;
    height: 100vh;
    aspect-ratio: 2;
  }
}
@media (min-aspect-ratio: 1/1) and (max-aspect-ratio: 2) {
  .container {
    width: 100%;
    height: auto;
    aspect-ratio: 2;
  }
}
@media (min-aspect-ratio: 0.1/1) and (max-aspect-ratio: 0.6) {
  .container {
    width: 98%;
    height: auto;
    aspect-ratio: 0.6;
  }
}
@media (min-aspect-ratio: 0.6) and (max-aspect-ratio: 1/1) {
  .container {
    width: auto;
    height: 100vh;
    aspect-ratio: 0.6;
  }
}
.container .cadre {
  z-index: 200;
}
.container .monster {
  z-index: 300;
}
.container .site-nav {
  z-index: 100;
}
.container #btn-lang {
  z-index: 500;
}
.container #btn-false-lighting {
  z-index: 500;
}
.container #btn-burger {
  z-index: 500;
}

.stars {
  z-index: -1;
}

@keyframes rotation360 {
  from {
    rotate: 0;
  }
  to {
    rotate: 360deg;
  }
}
@keyframes countdown {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes strokeload {
  from {
    stroke-dashoffset: 100000;
  }
  50% {
    stroke-dashoffset: 0;
  }
  100% {
    stroke-dashoffset: 0;
  }
}
@keyframes wave {
  from {
    transform: scaleY(1);
  }
  to {
    transform: scaleY(1.3);
  }
}
@keyframes haloScale {
  from {
    scale: 1;
  }
  to {
    scale: 1.5;
  }
}
@keyframes cursor-blink {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes scroll-down {
  5% {
    translate: 0 1em;
  }
  10% {
    translate: 0 0;
  }
}
.btn {
  display: inline-block;
  min-width: 170rem;
  background-color: #2f608f;
  padding: 10rem 30rem;
  font-size: 0.7cqw;
  letter-spacing: 2rem;
  color: white;
  text-transform: uppercase;
  border: none;
  font-family: inherit;
  cursor: pointer;
  transition: all 0.2s;
}
.btn.is-white {
  border: 2rem solid white;
  background-color: transparent;
}
.btn.is-white:hover {
  color: #2f608f;
  background-color: white;
}
.btn:hover {
  color: #2f608f;
  background-color: white;
}

.btn-crop {
  width: fit-content;
  padding: 6rem 32rem;
  font-family: inherit;
  font-size: 14rem;
  font-weight: 200;
  color: rgba(255, 255, 255, 0);
  text-transform: uppercase;
  white-space: nowrap;
  overflow: hidden;
  color: white;
  background-color: #0b373c;
  border: none;
  transition: all 0.5s;
  clip-path: polygon(0 20rem, 20rem 0, 100% 0, 100% calc(100% - 20rem), calc(100% - 20rem) 100%, 0 100%);
}
.btn-crop.is-white {
  color: white;
  background-color: transparent;
  border: 1px solid white;
}

.btn-picto {
  display: flex;
  align-items: center;
  text-align: left;
  padding: 5rem 15rem;
  border: 2rem solid #2f608f;
  border: none;
  background-color: transparent;
  color: #2f608f;
  line-height: 1.5;
  border-radius: 5rem;
  font-family: inherit;
  font-size: 16rem;
  text-transform: uppercase;
  cursor: pointer;
  transition: all 0.5s;
}
.btn-picto a {
  display: inline-block;
  text-decoration: none;
  color: inherit;
  transition: all 0.3s;
}
.btn-picto a:hover {
  transform: skewX(-20deg);
  font-weight: 700;
}
.btn-picto:hover::before {
  filter: drop-shadow(0 0 14rem #2f608f);
  scale: 1.2;
}
.btn-picto::before {
  content: "B";
  font-family: "cmx2";
  font-size: 20rem;
  position: relative;
  margin: 0 14rem;
  transition: all 0.2s;
}
.btn-picto.is-active {
  color: white;
  filter: drop-shadow(0 0 14rem #fff);
}
.btn-picto.is-active::before {
  filter: drop-shadow(0 0 14rem #fff);
}

.btn-blink {
  display: box;
  position: relative;
  width: 100rem;
  height: 100rem;
  background: transparent;
  box-shadow: 0 4rem 4rem rgba(0, 0, 0, 0.3);
  border-radius: 50%;
  line-height: 100rem;
  text-align: center;
  text-decoration: none;
  color: white;
  border: 1px solid #27a6b3;
}
.btn-blink::before {
  display: block;
  position: absolute;
  z-index: -1;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background: rgb(255, 255, 255);
  opacity: 0;
  content: "";
  animation: pulse 1s infinite;
}
.btn-blink:hover::before {
  animation: none;
  opacity: 0.4;
  transform: scale(1.3);
}
.btn-blink.is-clicked {
  background: linear-gradient(to bottom, gray 0%, dimgray 100%);
}
.btn-blink.is-clicked:before {
  animation: blastOut 1s;
}
@keyframes pulse {
  from {
    transform: scale(0.1);
    opacity: 0.4;
  }
  to {
    transform: scale(1.3);
    opacity: 0;
  }
}
@keyframes blastOut {
  from {
    transform: scale(0.9);
    opacity: 0.4;
  }
  to {
    transform: scale(10);
    opacity: 0;
  }
}

.hud {
  pointer-events: none;
}
.hud--subtitle {
  margin-bottom: 15rem;
  font-size: 12rem;
  font-weight: 200;
  letter-spacing: 1rem;
  opacity: 0;
  color: white;
  position: absolute;
  left: 50%;
  bottom: -2vh;
  translate: -50% -50%;
  transform-origin: 50% 0;
  --pictoSize: 0;
}
.hud--subtitle::after {
  font-family: "cmx2";
  content: "Q";
  display: block;
  color: rgb(255, 255, 255);
  font-size: 20rem;
  margin: 0 auto;
  width: 0;
  scale: var(--pictoSize);
  transition: scale 0.5s;
}
.hud .infohud {
  position: absolute;
  bottom: 2vh;
}
.hud .infohud:nth-of-type(1) {
  left: 7%;
}
.hud .infohud:nth-of-type(2) {
  left: 20%;
}
.hud .infohud:nth-of-type(3) {
  right: 20%;
}
.hud .infohud:nth-of-type(4) {
  right: 7%;
}

#btn-false-lighting {
  position: absolute;
  top: 30rem;
  right: 2%;
  rotate: x -90deg;
  transition: all 0.5s;
}
#btn-false-lighting.is-visible {
  rotate: x 0deg;
}

#btn-lang {
  position: absolute;
  top: 30rem;
  left: 2%;
  rotate: x -90deg;
  transition: all 0.5s;
}
#btn-lang.is-visible {
  rotate: x 0deg;
}

.burger {
  position: absolute;
  left: 49%;
  height: 0vh;
  font-size: 0.5cqw;
  width: 6em;
  height: 6em;
  background-color: transparent;
  border: none;
  cursor: pointer;
  filter: drop-shadow(0 0 10rem #6380d7);
  transition: all 0.3s;
}
.burger.is-closed.is-active {
  filter: hue-rotate(180deg);
}
.burger.is-closed.is-active span:nth-child(1) {
  translate: -10em 0;
  opacity: 0;
}
.burger.is-closed.is-active span:nth-child(3) {
  translate: 10em 0;
  opacity: 0;
}
.burger.is-closed.is-active span:nth-child(2) {
  rotate: 45deg;
  translate: 0em 2.8em;
}
.burger.is-closed.is-active span:nth-child(4) {
  rotate: -45deg;
  translate: -1em 0em;
}
.burger.is-active span:nth-child(n) {
  translate: 0 0;
  opacity: 1;
}
.burger span {
  display: block;
  height: 0.4em;
  margin-bottom: 0.5em;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  transition: all 0.5s;
  opacity: 0;
}
.burger span:nth-child(1) {
  background-image: url("../media/svg/burger1.svg");
  width: 3.5em;
  translate: -10em 0;
}
.burger span:nth-child(2) {
  background-image: url("../media/svg/burger2.svg");
  width: 5em;
  margin-left: -1.5em;
  translate: 10em 0;
}
.burger span:nth-child(3) {
  background-image: url("../media/svg/burger3.svg");
  width: 3.5em;
  translate: -10em 0;
}
.burger span:nth-child(4) {
  background-image: url("../media/svg/burger4.svg");
  width: 5em;
  translate: 10em 0;
}

.scroll-down {
  position: absolute;
  bottom: 0cqh;
  left: 50%;
  translate: -50% 0;
  width: 10em;
  padding-bottom: 50rem;
  font-size: 0.8cqw;
  font-family: Oswald;
  font-weight: 200;
  color: #b6d1e4;
  text-transform: uppercase;
  text-align: center;
  transition: all 0.5s;
  filter: drop-shadow(0 0 10rem rgb(0, 255, 213));
}
.scroll-down--arrow {
  display: block;
  margin-top: 0.5em;
  rotate: 180deg;
  font-family: cmx;
  font-size: 0.75em;
  text-align: center;
  position: relative;
  left: 1em;
  animation: scroll-down 3s ease-in infinite;
}
.scroll-down.is-hidden {
  opacity: 0;
}

.cadre {
  pointer-events: none;
  transition: all 0.3s;
  left: -10rem;
}
.cadre.is-closed {
  filter: hue-rotate(180deg);
}
.cadre .cadre-right,
.cadre .cadre-left {
  --cadreHeight: 45%;
  --cadreWidth: 45%;
  pointer-events: none;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
.cadre .cadre-right::after, .cadre .cadre-right::before,
.cadre .cadre-left::after,
.cadre .cadre-left::before {
  content: "";
  display: block;
  width: var(--cadreWidth);
  height: var(--cadreHeight);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  background-image: url("../media/svg/hud-corner.svg");
  background-position: 0% 100%;
  filter: hue-rotate(120deg) drop-shadow(0 0 10rem rgb(0, 255, 213));
}
.cadre .cadre-left::before {
  left: 1.3%;
  top: 0.5vh;
  transform: scaleY(-1);
}
.cadre .cadre-left::after {
  left: 1.3%;
  bottom: 0.5vh;
}
.cadre .cadre-right::before {
  right: 0%;
  top: 0.5vh;
  transform: scale(-1, -1);
}
.cadre .cadre-right::after {
  right: 0%;
  bottom: 0.5vh;
  transform: scale(-1, 1);
}

.infohud {
  color: #207892;
  width: fit-content;
  display: flex;
  rotate: x 90deg;
  transition: all 0.3s;
}
.infohud:nth-child(1) {
  transition-delay: 0.2s;
}
.infohud:nth-child(2) {
  transition-delay: 0.4s;
}
.infohud:nth-child(3) {
  transition-delay: 0.6s;
}
.infohud:nth-child(4) {
  transition-delay: 0.8s;
}
.infohud--key {
  font-size: 10rem;
  text-transform: uppercase;
  border-bottom: 2px solid #207892;
  margin-right: 10rem;
  text-align: right;
}
.infohud--val {
  font-size: 20rem;
  line-height: 1;
}
.infohud--val img {
  width: 50rem;
}
.infohud.is-battery .infohud--val {
  color: darkred;
  animation: battery 1s linear 0s infinite;
}
.infohud.is-active {
  rotate: x 0deg;
  translate: 0rem 0;
}
@keyframes battery {
  to {
    opacity: 0;
  }
}

.stars {
  position: fixed;
  top: 0;
  left: 0;
}
.stars .star {
  position: fixed;
  transition: transform var(--transDelay);
}
.stars .star:nth-child(1) {
  left: 10%;
  bottom: -2.7011138743vh;
  width: 93.4222246231rem;
}
.stars .star:nth-child(2) {
  left: 20%;
  bottom: -8.5808984897vh;
  width: 21.3281659207rem;
}
.stars .star:nth-child(3) {
  left: 30%;
  bottom: -4.2255453148vh;
  width: 81.3578491457rem;
}
.stars .star:nth-child(4) {
  left: 40%;
  bottom: -5.3821333332vh;
  width: 90.2195908713rem;
}
.stars .star:nth-child(5) {
  left: 50%;
  bottom: -2.4016192553vh;
  width: 99.7562850563rem;
}
.stars .star:nth-child(6) {
  left: 60%;
  bottom: -1.8930956045vh;
  width: 95.6039648935rem;
}
.stars .star:nth-child(7) {
  left: 70%;
  bottom: -0.8527270242vh;
  width: 44.2259377822rem;
}
.stars .star:nth-child(8) {
  left: 80%;
  bottom: -1.8667671205vh;
  width: 77.0281071927rem;
}
.stars .star:nth-child(9) {
  left: 90%;
  bottom: -1.192216526vh;
  width: 78.0857293204rem;
}
.stars .star:nth-child(10) {
  left: 100%;
  bottom: -8.3221385973vh;
  width: 41.3266009018rem;
}

.site-nav {
  z-index: 999;
  text-align: center;
  position: absolute;
  z-index: 998;
  width: 100%;
  height: auto;
  aspect-ratio: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
  opacity: 0;
  pointer-events: none;
  transition: all 0.3s;
  text-shadow: 0 0 5rem #715014;
}
.site-nav.is-active {
  opacity: 1;
  pointer-events: all;
}
.site-nav--item {
  display: block;
  width: fit-content;
  margin: 0 auto 10rem;
  font-size: 20rem;
  font-family: Outfit;
  font-weight: 400;
  color: #BF7948;
  text-transform: uppercase;
  letter-spacing: 20rem;
  cursor: pointer;
  padding: 30rem;
  text-shadow: 0 0 10rem #BF7948;
  transition: all 0.3s;
}
.site-nav--item span {
  display: inline-block;
  transition: scale 0.2s, letter-spacing 0s;
  transition: all 0.3s;
}
.site-nav--item:hover span {
  letter-spacing: 10rem;
}
.site-nav--orbit {
  width: 100rem;
  display: block;
  margin: 50rem auto;
  animation: rotation360 10s linear 0s infinite;
}
.site-nav::before {
  content: "";
  width: 200%;
  height: 200vh;
  position: fixed;
  top: -50vh;
  left: -50%;
  z-index: -1;
  backdrop-filter: blur(5rem);
  background-color: rgba(0, 0, 0, 0.9215686275);
}

.nav {
  z-index: 999;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.nav.is-active .site-nav {
  opacity: 1;
  pointer-events: all;
}
.nav.is-active .site-nav::before {
  display: block;
}

.nav-social {
  text-align: center;
}
.nav-social a img {
  height: 30rem;
  filter: saturate(50%);
  border-radius: 5rem;
}

.nav-lang {
  display: flex;
  justify-content: space-between;
  text-align: center;
  font-size: 14rem;
  text-transform: uppercase;
}
.nav-lang a {
  margin: 0 2rem;
  padding: 2rem 5rem;
  border: 1px solid #715014;
}
.nav-lang a.current {
  background-color: #715014;
  color: white;
}

.nav-footer {
  text-align: center;
}
.nav-footer a {
  margin: 0 5rem;
  font-size: 12rem;
  color: black;
}

html {
  font-size: 0.05cqw;
}

body {
  width: 100%;
  height: 100vh;
  font-family: "Outfit";
  color: #BF7948;
  padding-bottom: 100px;
  font-size: 16rem;
  line-height: 1.5;
  background-color: rgb(0, 0, 0);
  -webkit-background: linear-gradient(45deg, rgb(8, 50, 77) 0%, rgb(0, 0, 0) 100%);
  background: linear-gradient(45deg, rgb(8, 50, 77) 0%, rgb(0, 0, 0) 100%);
  background-size: auto 100vh;
  background-attachment: fixed;
  counter-reset: minifiche 0 nav 0;
  height: 100vh;
  width: 100%;
}
body::after {
  content: "";
  display: block;
  background-image: url("../media/texture-pixel-1-5.png");
  width: 100%;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
  opacity: 0.1;
}
body::before {
  pointer-events: none;
  content: "";
  display: block;
  background-image: url("../media/noise.gif");
  width: 100%;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  opacity: 0.075;
}
body .site-header {
  margin-bottom: 50rem;
}
body .site-content {
  position: relative;
  z-index: 5;
}
body .site-footer {
  margin-top: 150rem;
}
body .nav-footer {
  margin-top: 20rem;
}
body .page {
  margin: 80rem auto 0;
}
body.index, body.fiche {
  background-color: transparent;
}
sup {
  position: relative;
  top: -5rem;
  font-size: 0.8em;
}

sub {
  position: relative;
  top: 5rem;
  font-size: 0.8em;
}

@media (max-width: 719px) {
  @supports (-webkit-touch-callout: none) {
    body::after {
      display: none;
    }
  }
}
body.the-project #btn-false-lighting {
  display: none;
}

#ratio {
  display: none;
}

.container {
  container-type: size;
  container-name: main-container;
  position: fixed;
  left: 49%;
  top: 50%;
  transform: translate(-50%, -50%);
}

.full {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.scroll-content {
  position: relative;
  transform: none !important;
  z-index: 1;
}

.scrollbar-track {
  z-index: 2;
  background: rgba(0, 0, 0, 0.7490196078);
}
.scrollbar-track .scrollbar-thumb {
  transition: all 0.2s;
  background-color: #2f608f;
}
.scrollbar-track:hover .scrollbar-thumb {
  background-color: #715014;
}

.global {
  height: 3000vh;
  width: 100%;
}

.data {
  margin-top: 100rem;
}
.data--cell {
  width: fit-content;
  /* height: 30rem; */
  text-transform: uppercase;
  background-color: rgba(47, 115, 122, 0.6509803922);
  color: white;
  text-align: center;
  padding: 10rem 65rem;
  font-size: 12rem;
  letter-spacing: 3rem;
}

.loader {
  position: fixed;
  left: 50%;
  top: 50%;
  translate: -50% -50%;
  width: 100%;
  height: 100vh;
  z-index: 9999;
  background-color: black;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 0.5s;
  background: linear-gradient(45deg, rgb(8, 50, 77) 0%, rgb(0, 0, 0) 100%);
}
.loader.is-hidden {
  pointer-events: none;
  opacity: 0;
}
.loader--wrapper {
  position: relative;
  width: fit-content;
  width: 500rem;
  height: 700rem;
  transition: all 0.2s;
  padding-top: 43rem;
  text-align: center;
}
.loader--wrapper::after, .loader--wrapper::before {
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: 50%;
  animation: rotation360 10s linear 0s infinite both;
}
.loader--wrapper::after {
  left: 0;
  top: 0;
  background-image: url("../media/svg/circle5.svg");
  background-size: 80%;
  animation-duration: 60s;
}
.loader--wrapper::before {
  right: 0;
  bottom: 0;
  background-image: url("../media/svg/circle4.svg");
  background-size: 60%;
  animation-direction: reverse;
}
.loader--picture {
  width: 200rem;
  filter: invert(100%);
  margin: 230rem 0 150rem;
}
.loader--picture path {
  stroke-width: 50rem;
  stroke: grey;
  fill: grey;
}
.loader--text {
  text-align: center;
  font-size: 25rem;
  font-family: Outfit;
  font-weight: 900;
  text-transform: uppercase;
  color: rgb(255, 255, 255);
  animation: countdown 1s linear 0s infinite alternate both;
}
.site-header {
  position: fixed;
  z-index: 30;
  display: flex;
  flex-direction: column;
  text-align: center;
  word-break: keep-all;
}
.site-header .nav-lang {
  position: relative;
  z-index: 20;
  margin-left: auto;
  margin-right: 10%;
  width: fit-content;
  margin-bottom: -37rem;
}
.site-header .site-nav {
  margin: 3rem 0;
}
.site-header .mobile {
  display: none;
}

.site-header--title {
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  width: 100%;
  z-index: 100;
  pointer-events: none;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: end;
  font-family: "Anurati";
  font-family: "sabomastersabomaster";
  font-size: 9cqw;
  color: white;
  letter-spacing: 2px;
  text-transform: uppercase;
  background-color: rgba(160, 79, 22, 0);
  transition: opacity 1s;
  color: rgba(255, 255, 255, 0);
  text-align: center;
}
.site-header--title br {
  display: none;
}
.site-header--title.is-active {
  opacity: 1;
}
.site-header--title.anim span {
  animation: reveal4 4s 0s ease-out both;
  animation-delay: calc(0s + 0.55s * (var(--index) - 2));
}
.site-header--title.callback-reveal5 span {
  scale: 1 1;
}
.site-header--title span {
  display: inline-block;
  transition: box-shadow 1s, background-color 1s, translate 0.1s linear;
  background-image: linear-gradient(90deg, rgb(255, 255, 255) 0%, rgb(255, 255, 255) 42%, rgba(254, 255, 255, 0) 42%, rgba(213, 235, 251, 0) 100%);
  background-repeat: no-repeat;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  filter: blur(2rem) drop-shadow(0 0 16rem rgba(63, 209, 187, 0.6509803922));
}
.site-header--title span.is-star {
  color: transparent;
  text-shadow: none;
  line-height: 1;
  border-radius: 50%;
}
.site-header--title::after {
  display: block;
  width: 100%;
  height: 120rem;
  position: absolute;
  bottom: 0;
  left: 0;
  background: linear-gradient(transparent 20%, rgb(0, 0, 0) 81%, rgb(0, 0, 0) 100%);
  background-image: url("../media/noise.gif");
}
.site-header--title.is-sticky::after {
  display: none;
}
@keyframes reveal2 {
  0% {
    transform: translateY(200rem);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes reveal3 {
  0% {
    letter-spacing: 0.5rem;
    opacity: 0;
    scale: 0.7;
  }
  100% {
    letter-spacing: 25rem;
    opacity: 1;
    scale: 1;
  }
}
@keyframes reveal4 {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes reveal5 {
  100% {
    scale: 1;
  }
}
@keyframes bg-progress {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: 100% 0;
  }
}
@keyframes reveal {
  100% {
    transform: scale(1.2);
  }
}

.edito {
  font-size: 0.5cqw;
  line-height: 1.5;
}
.edito h2 {
  font-size: 10.5em;
}
.edito h3 {
  font-size: 7em;
}
.edito div,
.edito p {
  font-size: 1.8em;
}

.planetdesc {
  position: fixed;
  top: 48%;
  transform: translateY(-50%);
  left: 135rem;
  z-index: 25;
  width: 510rem;
  text-align: left;
}
.planetdesc > * {
  opacity: 0;
  translate: -100rem 0rem;
  transition: all 0.5s;
}
.planetdesc > *:nth-child(1) {
  transition-delay: 0s;
}
.planetdesc > *:nth-child(2) {
  transition-delay: 0.1s;
}
.planetdesc > *:nth-child(3) {
  transition-delay: 0.2s;
}
.planetdesc > *:nth-child(4) {
  transition-delay: 0.3s;
}
.planetdesc--title {
  min-height: 90rem;
  margin-bottom: 30rem;
  margin-left: -80rem;
  padding-left: 80rem;
  font-family: "Oswald";
  font-size: 110rem;
  color: white;
  line-height: 1;
}
.planetdesc--intro {
  min-height: fit-content;
  margin-bottom: 4cqh;
  color: white;
  font-size: 18rem;
  font-weight: 200;
}
.planetdesc--subtitle {
  margin-bottom: 30rem;
  margin-left: -80rem;
  padding-left: 80rem;
  font-family: "Oswald";
  font-size: 40rem;
  color: white;
  line-height: 1;
}
.planetdesc--subtitle::before {
  content: "";
  opacity: 0;
  display: block;
  width: 70rem;
  height: 4cqh;
  margin: 0cqh auto 3cqh;
  background-image: url("../media/svg/picto-map.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  transition: all 0.5s 3s;
}
.planetdesc .btn {
  rotate: x -90deg;
  transition: all 0.2s;
}
.planetdesc .btn.is-active {
  rotate: x 0deg;
}
.planetdesc.is-active .planetdesc--subtitle::before {
  rotate: 180deg;
  opacity: 1;
}
.planetdesc.is-active > * {
  opacity: 1;
  translate: 0rem 0rem;
}

.dataplanet {
  pointer-events: none;
  width: 400rem;
  position: fixed;
  right: 8%;
  top: 50%;
  translate: 0% -50%;
  z-index: 25;
  scale: 1.25;
  counter-reset: my-counter;
}
.dataplanet h2,
.dataplanet h3,
.dataplanet li {
  transition: rotate 0.2s;
  rotate: x -90deg;
}
.dataplanet.is-active {
  pointer-events: all;
}
.dataplanet.is-active h2,
.dataplanet.is-active h3,
.dataplanet.is-active li {
  rotate: x 0deg;
}
.dataplanet--title {
  font-size: 3cqh;
  font-weight: 200;
  color: white;
  text-align: right;
  text-transform: uppercase;
  margin: -10rem 0 0rem;
}
.dataplanet--subtitle {
  font-size: 12rem;
  font-weight: 200;
  color: white;
  text-align: right;
  text-transform: uppercase;
  margin-right: 10rem;
  margin-bottom: 10rem;
}
.dataplanet--subtitle::before {
  content: "";
  display: block;
  width: 10%;
  margin-left: auto;
  margin-bottom: 5rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.466);
}
.dataplanet--item {
  display: flex;
  gap: 3rem;
  margin-bottom: 3rem;
  width: 100%;
  font-size: 10rem;
  font-weight: 400;
  color: white;
  text-align: left;
  text-transform: uppercase;
}
.dataplanet--item:hover > * {
  background-color: #711414;
}
.dataplanet--item > * {
  width: 50%;
  padding: 5rem 20rem;
  background-color: rgba(24, 60, 68, 0.7411764706);
  transition: all 0.2s 0s;
}
.dataplanet--item.is-header {
  margin: 10rem 0 5rem;
  position: relative;
}
.dataplanet--item.is-header > * {
  clip-path: polygon(0 10rem, 10rem 0, 100% 0, 100% 100%, calc(100% - 10rem) 100%, 0 100%);
  width: 100%;
  padding: 5rem 0 5rem;
  font-size: 9rem;
  text-align: center;
  background-color: rgba(80, 110, 118, 0.7607843137);
}
.dataplanet--item.is-header::after {
  position: absolute;
  left: 0;
  bottom: -5rem;
  content: "";
  display: block;
  width: 100%;
  height: 2rem;
  background-color: rgba(80, 110, 118, 0.7607843137);
}
.dataplanet--item.is-header::before {
  display: none;
}
.dataplanet--item:not(.is-header) .dataplanet--key {
  position: relative;
}
.dataplanet--item:not(.is-header) .dataplanet--key::before {
  position: absolute;
  left: -30rem;
  top: 0;
  content: "0" counter(my-counter, decimal-leading-zero);
  counter-increment: my-counter;
  width: 20rem;
  height: auto;
  font-size: 8rem;
  font-weight: 200;
  z-index: 10;
  border-bottom: 1rem solid rgba(255, 255, 255, 0.2666666667);
}
.section-bloccoord {
  perspective-origin: 25% 50vh;
  position: fixed;
  right: 150rem;
  top: 50%;
  z-index: 50;
  translate: 0 -50%;
  margin-top: 20rem;
  width: fit-content;
  height: fit-content;
}
.section-bloccoord .bloccoord {
  margin-bottom: 50rem;
  z-index: 20;
  rotate: x 90deg;
  translate: -30rem 0;
}

.section-bloccoord2 {
  perspective-origin: 25% 50vh;
  flex-direction: column;
  justify-content: center;
  position: absolute;
  right: 3cqw;
  top: 12cqh;
  z-index: 21;
  width: 20%;
}
.section-bloccoord2 .bloccoord2 {
  margin: 0rem 7% 4cqh auto;
  rotate: x 90deg;
}

.bloccoord {
  font-size: 0.5cqw;
  width: 17em;
  color: white;
  transition: all 0.3s;
  cursor: pointer;
  --line-width: 0rem;
}
.bloccoord.is-active {
  rotate: x 0deg;
  translate: 0rem 0;
}
.bloccoord.is-active::after {
  width: 300rem;
}
.bloccoord:hover .bloccoord--life {
  scale: 2;
  translate: -300rem 0;
}
.bloccoord:hover .bloccoord--temp span {
  scale: 1.5;
  translate: -125rem -17rem;
}
.bloccoord::after {
  position: absolute;
  bottom: 42%;
  right: 110%;
  transition: all 0.5s;
  filter: brightness(0) invert(1);
  opacity: 0.5;
  content: "";
  display: block;
  width: var(--line-width);
  height: 10rem;
  background-image: url("../media/svg/border-legend.svg");
  background-position: 0% 0;
  background-repeat: no-repeat;
  background-size: auto 100%;
}
.bloccoord--latlng {
  width: fit-content;
  font-size: 1em;
  font-weight: 400;
  color: white;
  text-transform: uppercase;
  text-shadow: 0 0 5rem rgba(255, 255, 255, 0.4666666667);
  clip-path: polygon(0 10rem, 10rem 0, 100% 0, 100% calc(100% - 10rem), calc(100% - 10rem) 100%, 0 100%);
  background-color: #715014;
  padding: 0.2em 3em;
}
.bloccoord--wind {
  margin: 0.5em 0;
  font-size: 1em;
  font-weight: 400;
  color: white;
  text-transform: uppercase;
  text-shadow: 0 0 5rem #608499;
}
.bloccoord--wind span {
  font-family: "Oswald";
}
.bloccoord--temp {
  margin-top: -2em;
  font-size: 1em;
  font-weight: 400;
  color: white;
  text-transform: uppercase;
  text-shadow: 0 0 5rem #608499;
}
.bloccoord--temp span {
  font-family: "Oswald";
  font-size: 2.5em;
  position: relative;
  top: 0.5em;
  display: inline-block;
  margin-bottom: 0em;
  transition: translate 0.2s, scale 0.2s 0.3s;
}
.bloccoord--life {
  transform-origin: 0 0;
  margin-top: 1.5em;
  font-size: 1em;
  font-weight: 400;
  color: white;
  text-shadow: 0 0 10rem rgba(0, 0, 0, 0.7882352941);
  width: 100%;
  margin-left: 20rem;
  transition: translate 0.2s, scale 0.2s 0.3s;
}
.bloccoord.is-life {
  background-color: #4b7114;
}
.bloccoord:nth-child(1) .bloccoord--latlng, .bloccoord:nth-child(2) .bloccoord--latlng {
  background-color: #715014;
}
.bloccoord:nth-child(3) .bloccoord--latlng {
  background-color: #4b7114;
}
.bloccoord:nth-child(4) .bloccoord--latlng, .bloccoord:nth-child(5) .bloccoord--latlng {
  background-color: #2f608f;
}

.bloccoord2 {
  --line-width: 0rem;
  font-size: 0.5cqw;
  width: 22em;
  color: white;
  transition: all 0.2s;
  cursor: pointer;
  width: fit-content;
  transition: all 0.3s;
  cursor: pointer;
}
.bloccoord2.is-active {
  rotate: x 0deg;
}
.bloccoord2:hover .bloccoord2--wind {
  translate: 20rem 0;
  transition: translate 0.2s 0s;
}
.bloccoord2:hover .bloccoord2--wind span {
  scale: 2;
  translate: 5rem 0;
  transform-origin: 0 50%;
  transition: translate 0s 0s, scale 0.2s 0.2s;
}
.bloccoord2:hover .bloccoord2--temp {
  translate: -14cqw 0cqh;
  transition: translate 0.2s 0s, scale 0.2s 0.3s;
}
.bloccoord2:hover .bloccoord2--temp span {
  scale: 2;
  translate: 5rem 0;
  transform-origin: 0 50%;
  transition: translate 0s 0s, scale 0.2s 0.2s;
}
.bloccoord2:hover .bloccoord2--life {
  scale: 1.5;
}
.bloccoord2 * {
  transition: all 0.2s;
}
.bloccoord2::after {
  position: absolute;
  bottom: 42%;
  right: 110%;
  transition: all 0.5s;
  filter: brightness(0) invert(1);
  opacity: 0.5;
  transition: all 1s;
  display: block;
  width: var(--line-width);
  height: 10rem;
  background-image: url("../media/svg/border-legend.svg");
  background-position: 0% 0;
  background-repeat: no-repeat;
  background-size: auto 100%;
}
.bloccoord2--latlng {
  width: max-content;
  font-size: 1em;
  font-weight: 400;
  color: white;
  text-transform: uppercase;
  text-shadow: 0 0 5rem rgba(255, 255, 255, 0.4666666667);
  clip-path: polygon(0 10rem, 10rem 0, 100% 0, 100% calc(100% - 10rem), calc(100% - 10rem) 100%, 0 100%);
  background-color: rgb(255, 94, 0);
  padding: 0.2em 3em;
}
.bloccoord2--latlng.is-life {
  background-color: #4b7114;
}
.bloccoord2--wind {
  margin: 0.5em 0;
  font-size: 1em;
  font-weight: 400;
  color: white;
  text-transform: uppercase;
  text-shadow: 0 0 5rem #608499;
  display: inline-block;
}
.bloccoord2--wind span {
  font-family: "Oswald";
  display: inline-block;
}
.bloccoord2--temp {
  margin-top: -2em;
  font-size: 1em;
  font-weight: 400;
  color: white;
  text-transform: uppercase;
  text-shadow: 0 0 5rem #608499;
}
.bloccoord2--temp span {
  font-family: "Oswald";
  font-size: 2.5em;
  position: relative;
  top: 0.5em;
  display: inline-block;
  margin-bottom: 10rem;
}
.bloccoord2--life {
  width: 19em;
  margin-top: 0.2em;
  font-size: 1.5em;
  font-weight: 400;
  color: white;
  text-shadow: 0 0 5rem rgba(255, 255, 255, 0.4666666667);
  margin-left: 20rem;
}
.bloccoord2.is-star .bloccoord2--latlng {
  background-color: rgb(255, 94, 0);
}
.bloccoord2.is-planet1 .bloccoord2--latlng {
  background-color: #86431d;
}
.bloccoord2.is-soline .bloccoord2--latlng {
  background-color: rgb(72, 124, 72);
}
.bloccoord2.is-kereone .bloccoord2--latlng {
  background-color: #3a6c6a;
}
.systeme {
  position: relative;
  z-index: 20;
  scale: 2;
  width: 2000rem;
  height: 2000rem;
  display: flex;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  perspective: 1500rem;
  perspective-origin: 50% 50%;
  rotate: z 30deg;
  animation: systeme-roulis 15s linear 0s infinite alternate;
  position: fixed;
  left: 50%;
  top: 50%;
  translate: -50% -50%;
  left: 57%;
  top: 41%;
  transition: all var(--transSpeed) var(--transDelay);
}
.systeme--star {
  width: 5%;
  position: absolute;
  left: 50%;
  top: 50%;
  translate: -50% -50%;
  filter: brightness(0) invert(1);
}
.systeme--star.is-active {
  filter: hue-rotate(300deg);
}
.systeme--planete-a {
  position: absolute;
  left: 50%;
  top: 50%;
  translate: -50% -50%;
  width: 10%;
  rotate: x -25deg;
  animation: orbite 5s linear 0s infinite reverse, eclip 5s ease-in-out 0s alternate infinite;
  filter: brightness(0) invert(1);
}
.systeme--planete-a.is-active {
  filter: hue-rotate(300deg);
}
.systeme--orbite-c {
  width: 70%;
  position: fixed;
  left: 50%;
  top: 50%;
  translate: -50% -50%;
  animation: orbite 30s linear 0s infinite, eclip 10s ease-in-out 0s alternate-reverse infinite;
  filter: brightness(0) invert(1);
}
.systeme--orbite-c.is-active {
  filter: hue-rotate(120deg);
}
.systeme--planete-c {
  position: absolute;
  left: 50%;
  top: 207rem;
  width: 10%;
  transform-origin: 0% 793rem;
  animation: orbite 30s linear 0s infinite, eclip 10s ease-in-out 0s alternate-reverse infinite;
  filter: brightness(0) invert(1);
}
.systeme--planete-c.is-active {
  filter: hue-rotate(120deg);
}
.systeme--planete-c-main {
  width: 100%;
  animation: orbite 30s linear 0s infinite reverse;
}
.systeme--planete-c-moon {
  position: absolute;
  width: 300rem;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  animation: orbite 3s linear 0s infinite reverse;
}
.systeme--orbite-b {
  width: 40%;
  position: fixed;
  left: 50%;
  top: 50%;
  translate: -50% -50%;
  animation: orbite 10s linear 0s infinite, eclip 15s ease-in-out 0s alternate infinite;
  filter: brightness(0) invert(1);
}
.systeme--orbite-b.is-active {
  filter: hue-rotate(0deg);
}
.systeme--planete {
  position: absolute;
  left: 50%;
  top: 25%;
  width: 15%;
  height: 15%;
  transform-origin: 0 500rem;
  animation: orbite 10s linear 0s infinite, eclip 15s ease-in-out 0s alternate infinite;
  filter: brightness(0) invert(1);
}
.systeme--planete.is-active {
  filter: hue-rotate(0deg);
}
.systeme--planete-soline {
  width: 40%;
  height: 40%;
  position: absolute;
  left: 50%;
  top: 50%;
  translate: -50% -50%;
  animation: orbite 3s linear 0s infinite;
}
.systeme--planete-lune {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0%;
  top: 0%;
  animation: orbite 5s linear 0s infinite reverse;
}
@keyframes eclip {
  from {
    rotate: x 30deg;
  }
  to {
    rotate: x 50deg;
  }
}
@keyframes orbite {
  to {
    transform: rotateZ(360deg);
  }
}
@keyframes systeme-roulis {
  from {
    transform: rotateZ(-30deg);
  }
  to {
    transform: rotateZ(30deg);
  }
}

.section-fastdata--centrale {
  display: none;
  position: absolute;
  left: 49.5%;
  translate: -50% 0;
  bottom: 14%;
  width: 396rem;
  height: 0rem;
  overflow: hidden;
  transition: all 0.3s linear;
  filter: hue-rotate(120deg) drop-shadow(0 0 10rem rgb(0, 255, 213));
}
.section-fastdata--centrale-left, .section-fastdata--centrale-right {
  position: absolute;
  bottom: 0;
}
.section-fastdata--centrale-left {
  right: 50%;
}
.section-fastdata--centrale-right {
  left: 50%;
  margin-left: 10rem;
}
.section-fastdata #fastdata-golmore {
  left: 15%;
  top: 24%;
}
.section-fastdata #fastdata-vers {
  left: 46%;
  top: 2%;
}
.section-fastdata .fastdata {
  position: absolute;
}
.section-fastdata .fastdata--key, .section-fastdata .fastdata--value, .section-fastdata .fastdata--btn {
  opacity: 0;
  translate: 0 -100rem;
  transition: opacity 1.5s 0s, width 0.5s 0s, translate 1.5s 0s;
}
.section-fastdata.is-active {
  opacity: 1;
  pointer-events: all;
  transition: opacity 0.5s 0s;
}
.section-fastdata.is-active .fastdata--key, .section-fastdata.is-active .fastdata--value, .section-fastdata.is-active .fastdata--btn {
  opacity: 1;
  translate: 0 0rem;
}
.section-fastdata.is-active .fastdata--key {
  transition-delay: 0s;
}
.section-fastdata.is-active .fastdata--value {
  transition-delay: 0.1s;
}
.section-fastdata.is-active .fastdata--btn {
  transition-delay: 0.2s;
}

.fastdata {
  position: relative;
  width: 450rem;
  z-index: 20;
  margin: 100rem 0 50rem 150rem;
  font-size: 0.5cqw;
}
.fastdata.is-active .fastdata--btn {
  width: 72%;
  padding: 6rem 32rem;
}
.fastdata--key {
  font-family: "sabomastersabomaster";
  font-size: 9em;
  -webkit-text-stroke: 1px rgb(255, 255, 255);
  font-weight: 200;
  color: rgba(255, 255, 255, 0);
  text-transform: uppercase;
  line-height: 1;
  text-shadow: 0 0 22rem rgba(255, 255, 255, 0.5098039216);
}
.fastdata--key span {
  opacity: 0;
  transition: all 0.25s;
}
.fastdata--key::before {
  top: -15%;
  left: -15%;
  transform: scale(1, 1);
}
.fastdata--key::after {
  top: -15%;
  right: -15%;
  transform: scale(-1, 1);
}
.fastdata--key::after, .fastdata--key::before {
  content: "";
  display: inline-block;
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url("../media/svg/smallangle.png");
  background-position: 0 0;
  height: 20rem;
  width: 20rem;
}
@keyframes appear-letters {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.fastdata--value {
  position: relative;
  z-index: 20;
  font-size: 1.5em;
  text-transform: uppercase;
  text-shadow: 0 0 6rem black;
  margin: 30rem 0;
  color: #27a6b3;
  line-height: 30rem;
  width: 70%;
  background-size: auto 30rem;
  background-position-y: -14.4%;
  color: white;
}
.fastdata--value::before {
  bottom: -15%;
  left: -15%;
  transform: scale(1, -1);
}
.fastdata--value::after {
  bottom: -15%;
  right: -15%;
  transform: scale(-1, -1);
}
.fastdata--value::after, .fastdata--value::before {
  content: "";
  display: inline-block;
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url("../media/svg/smallangle.png");
  background-position: 0 0;
  height: 20rem;
  width: 20rem;
}
.fastdata--picture {
  position: absolute;
  z-index: 10;
  top: 50rem;
  left: 100rem;
  width: 200rem;
  filter: invert(40%) drop-shadow(0 0 10rem rgba(83, 189, 241, 0.7803921569));
  transition: all 2s;
}
.fastdata--picture.is-active {
  filter: invert(40%) drop-shadow(0 0 10rem rgba(255, 255, 255, 0.7803921569)) blur(0px);
  opacity: 1;
}
@keyframes turn {
  to {
    transform: rotateY(10deg) scale(1.1);
  }
}
.fastdata--btn {
  width: 0%;
  padding: 0;
  transition: all 0.5s;
}
.fastdata#fastdata-vers {
  z-index: 10;
}
.fastdata#fastdata-vers .fastdata--picture {
  top: 43rem;
  left: -265rem;
  width: 1218rem;
}
.fastdata#fastdata-golmore {
  z-index: 20;
  text-align: right;
}
.fastdata#fastdata-golmore .fastdata--value {
  margin-left: auto;
}
.fastdata#fastdata-golmore .fastdata--picture {
  top: -541rem;
  left: -514rem;
  width: 758rem;
}
.fastdata svg.draw path {
  stroke-dashoffset: 0;
  fill: rgba(255, 255, 255, 0.7803921569);
  opacity: 1;
  transition: stroke-dashoffset 2s 0s, fill 2s 2s, opacity 0s 0s;
}
.fastdata svg path {
  opacity: 0;
  fill: rgba(134, 15, 15, 0);
  stroke: rgba(83, 189, 241, 0.7803921569);
  stroke-width: 15px;
  stroke-dasharray: 100000px;
  stroke-dashoffset: 100000px;
  transition: stroke-dashoffset 0s 1s, opacity 1s;
}
@keyframes draw {
  from {
    stroke-opacity: 0;
  }
  10% {
    stroke-opacity: 1;
  }
  90% {
    stroke-opacity: 1;
    fill: rgba(83, 189, 241, 0);
  }
  to {
    stroke-dashoffset: 0;
    fill: rgba(83, 189, 241, 0.7803921569);
  }
}
@keyframes undraw {
  from {
    stroke-dashoffset: 0;
    fill: rgba(83, 189, 241, 0.7803921569);
  }
  80% {
    stroke-opacity: 1;
    fill: rgba(83, 189, 241, 0);
  }
  to {
    stroke-dashoffset: 100000px;
    stroke-opacity: 0;
  }
}

.window-wrap {
  z-index: 100;
  display: none;
}

.window {
  position: absolute;
  top: 10%;
  left: 50%;
  margin-left: -525rem;
  box-shadow: 0 0 48rem rgba(148, 208, 222, 0.4705882353);
  -webkit-backdrop-filter: blur(15rem);
  backdrop-filter: blur(15px);
  width: 1050rem;
  color: white;
  padding: 55rem 55rem 12rem 55rem;
  background-color: rgba(58, 161, 178, 0.2);
  background-image: url("../media/svg/bgcross.svg");
  background-size: 10rem;
  text-shadow: 0 0 10px rgba(255, 255, 255, 0.4666666667);
}
.window::after, .window::before {
  content: "";
  display: inline-block;
  position: absolute;
  background-size: 20rem auto;
  background-repeat: no-repeat;
  height: 100%;
  width: 30rem;
  filter: saturate(30%) drop-shadow(0 0 4px #b5d8e6);
}
.window::before {
  top: 10rem;
  left: 10rem;
  background-image: url("../media/svg/angle3.svg");
  background-position: 0 0;
}
.window::after {
  bottom: 10rem;
  right: 10rem;
  background-image: url("../media/svg/angle3-180.svg");
  background-position: 100% 100%;
}
.window .gif img {
  width: 400rem;
  filter: invert(100%);
}
.window--content {
  margin: 80rem 0;
  display: flex;
  justify-content: space-between;
  text-shadow: 0 0 5rem black;
  text-transform: uppercase;
}
.window--content h2 {
  margin-bottom: 30rem;
  font-size: 40rem;
  font-weight: 200;
  line-height: 1.2;
}
.window--content p {
  font-size: 11rem;
  column-count: 2;
  column-gap: 15rem;
  column-fill: balance;
  line-height: 2;
}
.window--content p.window--data {
  font-size: 8rem;
  text-transform: uppercase;
  text-align: left;
  color: #d5ae75;
  margin-top: 15rem;
}
.window--text {
  width: 50%;
}
.window--footer {
  display: flex;
  justify-content: flex-end;
  margin-top: 50rem;
}
.window--footer .footdata {
  margin-left: 20rem;
}

.infodata {
  width: 100%;
  margin: 0 auto 30rem;
}
.infodata--row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10rem 1rem;
  border-top: 1rem solid grey;
  border-bottom: 1rem solid grey;
  font-weight: 200;
}
.infodata--row:first-child {
  font-weight: 400;
}
.infodata--row:last-child {
  border-top: none;
}
.infodata--cell {
  position: relative;
  padding-left: 50rem;
  font-size: 12rem;
  text-transform: uppercase;
  line-height: 1.2;
  width: 20%;
  overflow: hidden;
}
.infodata--cell.is-battery img {
  width: 40rem;
}
.infodata--cell::after, .infodata--cell:last-child::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  height: 30rem;
  width: 15rem;
  border-left: 1rem solid grey;
  background-image: url("../media/svg/square01.svg");
  background-size: 3rem;
  background-position: 5rem 0;
  background-repeat: no-repeat;
  filter: brightness(0) invert(1);
}
.infodata--cell:last-child::before {
  right: 0;
  left: initial;
}

:root {
  --thumbnailSize: 7.5cqw;
}

@container main-container (max-width: 9999px) {
  .section-gallery {
    padding-top: 1cqw;
    font-size: 1cqw;
  }
  .section-gallery--table {
    display: flex;
    flex-wrap: wrap;
    width: 86.2cqw;
    margin: 0cqh auto;
    position: relative;
    left: 2cqw;
  }
  .section-gallery--table .thumbnail {
    rotate: y 0deg;
  }
  .section-gallery--table .thumbnail:nth-child(odd) {
    top: calc(var(--thumbnailSize) / 2.23);
    margin-left: calc(var(--thumbnailSize) / -5.2);
    margin-right: calc(var(--thumbnailSize) * -0.2);
    margin-top: calc(var(--thumbnailSize) * 0.02);
  }
  .section-gallery--row {
    position: relative;
    display: flex;
    gap: calc(0.6 * var(--thumbnailSize));
  }
  .section-gallery--row:nth-child(even) {
    margin: calc(var(--thumbnailSize) * -0.43) 0 0 calc(var(--thumbnailSize) * 0.8);
  }
  .section-gallery--row:nth-child(odd) {
    margin: calc(var(--thumbnailSize) * -0.43) 0 0 0;
  }
  .section-gallery--intro {
    margin-top: 3cqh;
    padding-bottom: 2cqh;
  }
  .section-gallery--intro-flex {
    display: flex;
    gap: 12cqw;
    width: 54cqw;
    margin: auto;
  }
  .section-gallery--wrapper {
    width: 50%;
  }
  .section-gallery--wheel {
    position: relative;
    width: 300rem;
    height: 300rem;
  }
  .section-gallery--wheel-1, .section-gallery--wheel-2-l, .section-gallery--wheel-2-r, .section-gallery--wheel-3 {
    position: absolute;
    left: 50%;
    top: 50%;
    translate: -50% -50%;
    filter: drop-shadow(0px 0px 15rem #207892);
  }
  .section-gallery--wheel-1 {
    width: 402rem;
  }
  .section-gallery--wheel-2-r, .section-gallery--wheel-2-l {
    width: 84rem;
  }
  .section-gallery--wheel-2-l {
    left: 10%;
    transform-origin: 200% 50%;
  }
  .section-gallery--wheel-2-r {
    left: 90%;
    transform-origin: -90% 50%;
  }
  .section-gallery--wheel-3 {
    animation: wheel-rotate 5s linear 0s infinite;
  }
  @keyframes wheel-rotate {
    to {
      rotate: -360deg;
    }
  }
  .section-gallery--picture {
    width: 400rem;
    filter: drop-shadow(0 0 10rem rgba(83, 189, 241, 0.7803921569));
    margin-left: -65rem;
    z-index: 20;
  }
  .section-gallery--picture path {
    fill: rgba(54, 127, 163, 0);
    stroke: rgba(83, 189, 241, 0.7803921569);
    stroke-width: 15px;
    stroke-dasharray: 100000;
    stroke-dashoffset: 100000;
    transition: stroke-dashoffset 0.1s;
  }
  .section-gallery--piclegend {
    position: absolute;
    left: 48rem;
    top: 235rem;
    font-size: 10rem;
    color: #99cee7;
    text-transform: uppercase;
    transition: all 0.3s;
  }
  .section-gallery--piclegend::after {
    content: "___";
    display: block;
  }
  .section-gallery--barre {
    display: none;
    position: relative;
    width: 500rem;
    height: 100rem;
    margin: auto;
    overflow: hidden;
    filter: drop-shadow(0px 0px 15rem #207892);
    transition: all 0.25s;
  }
  .section-gallery--barre img {
    position: absolute;
    left: 50%;
    top: 50%;
    translate: -50% -50%;
  }
  .section-gallery--title {
    position: relative;
    min-height: 116rem;
    font-family: "Oswald";
    font-size: 70rem;
    font-weight: 200;
    color: white;
    line-height: 1;
    margin-bottom: 25rem;
    text-transform: uppercase;
  }
  .section-gallery--title span {
    display: inline-block;
  }
  .section-gallery--logo {
    font-family: "cmx2";
    font-size: 22rem;
    content: "B";
    color: #1e7c99;
    text-shadow: 0 0 24rem rgba(140, 197, 215, 0.6196078431);
    position: absolute;
    right: -79rem;
    top: 15rem;
    animation: blink 0.1s infinite;
  }
  .section-gallery--title::after, .section-gallery--text::after {
    content: "_";
    animation: cursor-blink 1s steps(2, end) 0s infinite both;
  }
  .section-gallery--text {
    width: 30cqw;
    font-size: 16rem;
    font-weight: 400;
    color: white;
    text-transform: uppercase;
  }
  .section-gallery--text::after {
    animation-delay: 0.75s;
  }
}
.thumbnail {
  position: relative;
  z-index: 1;
  width: var(--thumbnailSize);
  height: calc(var(--thumbnailSize) * 0.9);
  perspective: 300rem;
  perspective-origin: 50% 75%;
  transition: all 0.3s;
  clip-path: polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%);
  filter: hue-rotate(130deg);
  rotate: y 90deg;
  transition: all 0.25s;
  cursor: pointer;
}
.thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  scale: 0.75;
  filter: saturate(0%);
}
.thumbnail--id {
  position: absolute;
  top: 82%;
  left: 45%;
  font-size: 14rem;
  color: #ccff9a;
}
.thumbnail:hover {
  scale: 1.5;
  z-index: 10;
}
.thumbnail::after {
  display: block;
  content: "";
  position: absolute;
  z-index: 1;
  top: 5%;
  left: 0;
  width: 100%;
  height: 95%;
  background: linear-gradient(45deg, rgba(169, 198, 93, 0.4117647059) 0%, rgba(198, 198, 198, 0) 100%);
  clip-path: polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%);
  mix-blend-mode: multiply;
}
.thumbnail::before {
  display: block;
  content: "";
  position: absolute;
  z-index: 5;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("../media/svg/hexa.svg");
  background-position: 0 0;
  background-size: 100%;
  background-repeat: no-repeat;
  filter: drop-shadow(0 0 5rem rgba(171, 218, 159, 0.6352941176)) hue-rotate(-7deg);
}

.section-monster {
  pointer-events: none;
  transition: all 0.2s;
}
.section-monster.is-open {
  pointer-events: auto;
  background-color: rgba(0, 0, 0, 0.768627451);
}

.monster {
  position: fixed;
  left: 50%;
  top: 50%;
  translate: -50% -50%;
  border-radius: 30rem;
  box-shadow: 0 0 10rem rgba(148, 208, 222, 0.4705882353);
  color: white;
  background-color: rgba(7, 29, 33, 0.6392156863);
  background-image: url("../media/svg/bgcross.svg");
  background-size: 10rem;
  text-shadow: 0 0 10px rgba(255, 255, 255, 0.4666666667);
  opacity: 0;
  width: 0;
  height: 1vh;
  padding: 0rem 55rem 0rem 55rem;
  overflow: hidden;
  transition: opacity 0.5s 1.5s, width 0.5s 1s, height 0.5s 0s;
  --heightAB: 0%;
}
.monster.is-open {
  opacity: 1;
  width: 90%;
  height: 95cqh;
  padding: 15rem 55rem 12rem 55rem;
  -webkit-backdrop-filter: blur(20rem);
  backdrop-filter: blur(20rem);
  transition: opacity 0.1s 0s, width 0.5s 0s, height 0.3s 0.75s, padding 0.3s 0.75s;
}
.monster.is-open h2 {
  rotate: x 0deg;
}
.monster.is-open h3 {
  overflow: hidden;
  width: 100%;
  padding: 0rem 0 2rem 15rem;
  transition: all 1s 1.5s;
}
.monster.is-open .monster--options .btn {
  rotate: x 0deg;
}
.monster.is-open .monster--options .btn:nth-child(2) {
  transition-delay: 1.5s;
}
.monster.is-open .monster--options .btn:nth-child(3) {
  transition-delay: 2s;
}
.monster::after, .monster::before {
  content: "";
  display: inline-block;
  position: absolute;
  background-size: 20rem auto;
  background-repeat: no-repeat;
  height: var(--heightAB);
  width: 100%;
  filter: saturate(30%) drop-shadow(0 0 4px #b5d8e6);
  z-index: -1;
  transition: all 3s;
}
.monster::before {
  top: 1%;
  left: 0;
  background-image: url("../media/svg/cadre-lt.svg"), url("../media/svg/cadre-rt.svg");
  background-position: 1% 1%, 99% 1%;
}
.monster::after {
  bottom: 1%;
  left: 0;
  background-image: url("../media/svg/cadre-lb.svg"), url("../media/svg/cadre-rb.svg");
  background-position: 1% 100%, 99% 100%;
}
.monster h2 {
  margin-bottom: 0rem;
  font-family: "Oswald";
  font-size: 80rem;
  font-weight: 200;
  line-height: 1.2;
}
.monster h2 span {
  display: none;
}
.monster h3 {
  width: 0rem;
  padding: 0rem 0 0 0;
  height: 20rem;
  overflow: hidden;
  margin-bottom: 30rem;
  font-family: "Oswald";
  font-size: 14rem;
  font-weight: 400;
  line-height: 1.2;
  color: #104555;
  background-color: #ffffff;
  text-transform: capitalize;
  clip-path: polygon(calc(100% - 10rem) 0, 100% 10rem, 100% 100%, 10rem 100%, 0 calc(100% - 10rem), 0 0);
}
.monster--close {
  position: absolute;
  top: 20rem;
  right: 60rem;
  width: 50rem;
  height: 50rem;
  background: none;
  border: none;
  cursor: pointer;
  transition: all 0.5s 0s;
}
.monster--close img {
  width: 100%;
}
.monster--close:hover {
  rotate: 90deg;
}
.monster--options {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 10rem;
}
.monster--options .btn {
  rotate: x -90deg;
}
.monster--info {
  width: fit-content;
  margin: 20rem auto 0 0;
  font-size: 10rem;
  text-decoration: underline;
  text-transform: uppercase;
  background-image: url("../media/svg/danger.png");
  background-size: auto 100%;
  background-repeat: no-repeat;
  background-position: 0 0;
  padding-left: 26rem;
}
.monster--info::before {
  width: 10rem;
}
.monster .latlng {
  width: fit-content;
  font-size: 16rem;
  font-family: "Oswald";
  text-transform: uppercase;
  background-image: url("../media/svg/picto-loc.svg");
  background-size: 20rem;
  background-repeat: no-repeat;
  background-position: 0 50%;
  padding-left: 26rem;
}
.monster .latlng--label {
  display: inline-block;
  border-bottom: 4rem solid white;
  margin: 0rem 5rem 0 0;
  position: relative;
  top: -7rem;
}
.monster .latlng--value {
  font-size: 1.8em;
}
.monster .latlng::before {
  width: 10rem;
}
.monster--level1 {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  align-items: flex-start;
}
.monster--content {
  position: relative;
  margin: 40rem 0 10rem;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  text-shadow: 0 0 5rem black;
  text-transform: uppercase;
  border-top: 2rem solid rgba(122, 157, 155, 0.7725490196);
  padding: 20rem 0 0;
}
.monster--content::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: -10rem;
  right: 0;
  background-image: url("../media/svg/barre.png");
  background-size: auto 100%;
  background-repeat: no-repeat;
  background-position: 100% 0;
  width: 100%;
  height: 5rem;
  opacity: 0.5;
}
.monster--skill {
  margin-top: -20rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 30rem;
  width: 20%;
}
.monster--picture {
  width: 45%;
  height: 40vh;
  text-align: center;
  padding: 0rem;
  filter: invert(22%) sepia(96%) saturate(117%) hue-rotate(132deg) brightness(93%) contrast(120%);
  position: relative;
  overflow: hidden;
  border-left: 2rem solid rgba(122, 157, 155, 0.7725490196);
  border-right: 2rem solid rgba(122, 157, 155, 0.7725490196);
  border-radius: 30rem;
  perspective: 500rem;
  perspective-origin: 50% 50%;
}
.monster--picture img {
  width: 100%;
  height: 100%;
  mix-blend-mode: overlay;
  filter: drop-shadow(0 0 15px rgba(0, 171, 255, 0.368627451));
  object-fit: cover;
  animation: zoom 20s linear 0s infinite alternate;
}
@keyframes zoom {
  to {
    scale: 1.5;
  }
}
.monster--picture::after {
  border-radius: 30rem;
  content: "";
  display: inline-block;
  position: absolute;
  background-size: cover;
  background-repeat: no-repeat;
  background-image: url("../media/noise.gif");
  opacity: 0.5;
  height: 100%;
  width: calc(100% - 0rem);
  top: 0;
  left: 0rem;
  z-index: 10;
  transition: all 0.5s;
}
.monster--picture:hover::after {
  opacity: 0.1;
}
.monster--picture:hover img {
  object-fit: contain;
}
.monster--picture.is-truecolor .monster--picture::after {
  display: none;
}
.monster--picture.is-truecolor {
  filter: none;
}
.monster--skills {
  width: 20%;
  display: flex;
  justify-content: space-between;
}
.monster--skills .btn {
  margin: 10rem 0;
}
.monster--text {
  width: 30%;
  font-size: 0.9cqw;
  line-height: 2;
}
.monster--text::after {
  content: "_";
  animation: cursor-blink 1s steps(2, end) 0s infinite both;
}
.monster--text.window--data {
  font-size: 8rem;
  text-transform: uppercase;
  text-align: left;
  color: #d5ae75;
  margin-top: 15rem;
}
.monster--text span {
  display: none;
}
.monster--footer {
  display: flex;
  justify-content: flex-end;
  margin-top: 10rem;
  padding-right: 40rem;
}
.monster--footer .footdata {
  margin-left: 20rem;
}

.section-place {
  z-index: 20;
  padding: 4% 4%;
  perspective: 2000rem;
  perspective-origin: 50% 50%;
  --blur: 30rem;
}
.section-place.is-geoloc::before {
  opacity: 0;
}
.section-place.is-geoloc .section-place--list-coord {
  opacity: 0;
}
.section-place::before {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 0;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: 0 0;
  height: 100%;
  width: 100%;
  background-image: url("../media/svg/map.png");
  background-size: 1000rem;
  background-repeat: no-repeat;
  background-position: 50% 80%;
  animation: turn2 15s linear 0s infinite alternate;
  opacity: 0.5;
  filter: blur(var(--blur));
}
@keyframes turn2 {
  from {
    transform: rotateX(-20deg) rotateY(-5deg) scale(1.1);
  }
  to {
    transform: rotateX(40deg) rotateY(-5deg) scale(1.1);
  }
}
.section-place--title, .section-place--intro {
  opacity: 0;
  translate: 0rem -150rem;
  transition: all 0.5s;
}
.section-place--title.is-active, .section-place--intro.is-active {
  opacity: 1;
  translate: 0rem 0rem;
}
.section-place--wrapper {
  min-height: 300rem;
  margin-bottom: 2cqw;
}
.section-place--title {
  min-height: 90rem;
  margin-bottom: 30rem;
  margin-left: -80rem;
  padding-left: 80rem;
  font-family: "Oswald";
  font-size: 80rem;
  color: white;
  line-height: 1;
  transition-delay: 0.2s;
}
.section-place--intro {
  margin-bottom: 50rem;
  min-height: 180rem;
  margin-bottom: 10rem;
  color: white;
  width: 500rem;
  font-weight: 200;
  text-shadow: 1px 1px 0rem black;
}
.section-place--intro::after {
  display: block;
  width: 80rem;
  height: 60rem;
  margin: auto;
  background-image: url("../media/svg/picto-map.svg");
  background-size: 70rem;
  background-repeat: no-repeat;
  background-position: 0% 10%;
}
.section-place--list-coord {
  position: absolute;
  top: 0%;
  left: 50%;
  translate: -50% 0;
  animation: move 5s steps(25, end) 0s infinite;
  transition: all 0.2s;
}
.section-place--list-coord.list-coord-2 {
  top: -100vh;
}
.section-place--list-coord > * {
  margin: 5rem 0;
  font-family: "Courier New", Courier, monospace;
  font-size: 10rem;
  color: white;
  letter-spacing: -1rem;
  text-shadow: 0 0 5rem rgba(255, 255, 255, 0.329);
  opacity: 0.25;
}
@keyframes move {
  to {
    transform: translateY(100vh);
  }
}
.section-place--columns {
  display: flex;
  justify-content: space-between;
}
.section-place--column.is-column2 {
  margin-top: -38cqh;
}
.section-place--column.is-column2 .place {
  text-align: right;
  margin-left: auto;
}
.section-place--column.is-column2 .place--key::before {
  right: 0%;
  left: initial;
}
.section-place .place {
  margin-bottom: 20rem;
}

.place {
  position: relative;
  padding-top: 20rem;
  width: fit-content;
  max-width: 400rem;
  rotate: x -90deg;
  opacity: 0;
  transition: all 0.3s;
  cursor: pointer;
  font-size: 0.6cqw;
}
.place.is-active {
  opacity: 1;
  translate: 0rem 0rem;
  rotate: x 0deg;
}
.place--key {
  font-family: "Oswald";
  font-size: 1.8em;
  font-weight: 200;
  text-transform: uppercase;
  line-height: 1;
  color: white;
}
.place--key::before {
  top: 0%;
  left: 0%;
  transform: scale(1, 1);
}
.place--key::after {
  top: 0%;
  right: 0%;
  transform: scale(-1, 1);
}
.place--key::after, .place--key::before {
  content: "";
  display: inline-block;
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url("../media/svg/angle-place.svg");
  background-position: 0 0;
  height: 100rem;
  width: 100rem;
}
.place--key::after {
  display: none;
}
.place--value {
  width: fit-content;
  font-size: 1em;
  text-transform: uppercase;
  margin: 0rem 0 0rem;
  color: #27a6b3;
  text-shadow: 1px 1px 0rem black;
}
.place * {
  transition: all 0.3s;
}
.place:hover .place--value {
  margin: 0 0.2cqw;
  transform: skewX(-15deg);
}

.section-project {
  z-index: 4;
}
.section-project--wrapper {
  width: 35%;
  margin: 6cqh auto;
  display: flex;
  gap: 50rem;
}
.section-project--left {
  width: fit-content;
  flex-shrink: 0;
  padding-top: 100rem;
}
.section-project--title, .section-project--intro {
  transition: all 1.5s;
}
.section-project--title.is-active, .section-project--intro.is-active {
  opacity: 1;
  translate: 0rem 0rem;
}
.section-project h2 {
  min-height: 90rem;
  margin-bottom: 30rem;
  font-family: "Oswald";
  font-size: 80rem;
  color: white;
  line-height: 1;
  transition-delay: 0.2s;
}
.section-project h3 {
  font-family: "Oswald";
  font-size: 45rem;
  color: white;
  line-height: 1;
  transition-delay: 0.2s;
  margin: 40rem 0 20rem;
}
.section-project p {
  font-size: 16rem;
  font-weight: 200;
  color: white;
  margin-bottom: 15rem;
}
.section-project a {
  color: inherit;
  text-decoration: underline;
}
.section-project img {
  max-width: 100%;
}
.section-project .social {
  margin-top: 30rem;
}
.section-project--logo {
  width: 200rem;
  display: block;
  margin: 30rem auto 0;
}
.section-project--banner {
  display: block;
  width: 28%;
  margin: 2cqh auto;
  position: relative;
  left: -1.5cqw;
}
.section-project--me {
  width: 20%;
  filter: brightness(135%);
}

.social {
  display: flex;
  gap: 10rem;
  flex-direction: column;
}
.social--picto {
  width: 50rem;
  filter: invert(100%);
}
.social img {
  max-width: 100%;
}

.planet-wrapper {
  z-index: 5;
}
.planet-feat {
  z-index: 5;
}
.planet-feat--atm {
  width: 100%;
  height: 100%;
  background-image: radial-gradient(ellipse at center, #00747f 0%, #00747f 1%, #557599 54%, rgba(87, 117, 153, 0.8588235294) 55%, rgba(92, 126, 164, 0) 65%, rgba(125, 185, 232, 0) 100%);
  background-size: 100% 100%, 100% 100rem;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  opacity: 0.5;
  position: absolute;
  left: 50%;
  top: 50%;
  translate: -50% -50%;
  animation: atmosphere 10s ease-in-out 0s infinite alternate both;
}
.planet-feat--star {
  width: 200rem;
  height: 200rem;
  position: absolute;
  top: 0%;
  left: 0%;
  background: radial-gradient(ellipse at center, rgb(255, 255, 255) 0%, rgb(255, 255, 255) 1%, rgb(255, 255, 255) 54%, rgba(224, 238, 250, 0) 65%, rgba(125, 185, 232, 0) 100%);
}
@keyframes atmosphere {
  from {
    background-size: 800rem 700rem, 800rem 100rem;
  }
  to {
    background-size: 960rem 800rem, 1000rem 300rem;
  }
}

.planet-ui {
  display: none !important;
  position: fixed;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  width: 950rem;
  height: 950rem;
  opacity: 0;
  filter: grayscale(100%) sepia(100%) hue-rotate(132deg) saturate(250%);
}
.planet-ui svg {
  animation-duration: 120s;
  animation-direction: reverse;
  opacity: 0;
}
.planet-ui svg text {
  font-family: "cybertronic";
  font-size: 12px;
  fill: orange;
}
.planet-ui--circle {
  position: absolute;
  left: 50%;
  top: 50%;
  translate: -50% -50%;
  filter: drop-shadow(0 0 9rem rgba(92, 158, 170, 0.6549019608));
  opacity: 0.5;
  animation-name: rotate-planet-ui;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
}
.planet-ui--circle.is-c1 {
  width: 150%;
  animation-duration: 60s;
  animation-direction: reverse;
}
.planet-ui--circle.is-c2 {
  display: none;
  width: 90%;
  animation-duration: 50s;
  animation-direction: normal;
}
.planet-ui--circle.is-c3 {
  display: none;
  width: 70%;
  animation-duration: 20s;
  animation-direction: reverse;
}
@keyframes rotate-planet-ui {
  to {
    rotate: 360deg;
  }
}

.planet {
  position: absolute;
  z-index: 10;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10;
}
.planet--markers {
  display: none;
  position: absolute;
  top: 50%;
  right: 0;
  z-index: 10;
  transform: translateY(-50%);
}
.planet--markers .marker {
  margin-bottom: 20rem;
}
.planet--preview {
  width: 360rem;
  display: none;
  margin: 0rem auto;
}
.planet .follower {
  z-index: 30;
  position: absolute;
  top: 0;
  left: 0;
}
.planet canvas {
  position: absolute;
  left: 50%;
  top: 50%;
  translate: -50% -50%;
  z-index: 5;
  opacity: 0;
  max-height: 0;
}
.planet.is-blue {
  filter: hue-rotate(168deg) saturate(30%);
}

.halo {
  position: absolute;
  top: 29%;
  right: 31.5%;
  z-index: 52;
  width: 5cqw;
  height: 7.5cqh;
}
.halo img {
  width: 100%;
  filter: saturate(455%);
  animation: haloScale 5s ease-in-out infinite alternate both;
}

/*
.halo {
	// display: none;
	display: block;
	position: absolute;
	// opacity: 0;
	z-index: 52;
	scale: 5;
	width: 100rem;
	top: 29%;
	right: 31%;
	pointer-events: none;
	filter: saturate(455%);

	&.is-intro {}

	&.is-first-second {
		// transition: scale 3s ease-out 0s;
	}

	&.is-project {
		margin-left: 447px;
		margin-top: 86px;
		animation: haloScale 15s ease-in-out infinite alternate both;
	}
}
*/
.___halo {
  display: block;
  position: absolute;
  z-index: 52;
  scale: 5;
  width: 100rem;
  top: 29%;
  right: 31%;
  pointer-events: none;
  filter: saturate(455%);
}
.___halo.is-first-second {
  transition: scale 3s ease-out 0s;
}
.___halo.is-project {
  margin-left: 447px;
  margin-top: 86px;
  animation: haloScale 15s ease-in-out infinite alternate both;
}

.skill {
  width: 110rem;
  --width: 0%;
}
.skill--bar {
  margin: 10rem 0;
  position: relative;
  width: 100%;
  height: 16rem;
  background-image: url("../media/svg/jauge.svg");
  background-position: 0 0;
  background-size: contain;
  background-repeat: no-repeat;
}
.skill--bar::after {
  content: "";
  display: block;
  width: var(--width);
  height: 35%;
  background-color: #81993f;
  position: absolute;
  top: 34%;
  left: 5%;
  transition: all 2s;
}
.skill--label {
  margin-top: -5rem;
  font-size: 14rem;
  text-transform: uppercase;
}
.skill--value {
  font-family: "Oswald";
  font-size: 52rem;
}
.skill--value span {
  font-size: 0.5em;
}

.rate {
  --progress: 10%;
  position: relative;
  width: 80rem;
  height: 80rem;
  border: 2rem solid white;
  border-radius: 15rem;
  text-align: center;
}
.rate--picto {
  margin-top: 5rem;
  color: white;
  font-size: 10rem;
}
.rate--count {
  position: absolute;
  top: 38rem;
  left: 0;
  width: 100%;
  color: hotpink;
  font-size: 11rem;
}
.rate--jauge {
  width: 50rem;
  height: 50rem;
  margin: 5rem auto 0;
  border-radius: 50%;
  background: radial-gradient(closest-side, white 79%, transparent 80% 100%), conic-gradient(#A9577D var(--progress), #A9CF65 0);
}
.rate.is-life .rate--jauge {
  --progress: 100%;
}
.rate.is-heart .rate--jauge {
  --progress: 30%;
}
.rate.is-temperature .rate--jauge {
  --progress: 50%;
}

.footdata {
  position: relative;
  width: fit-content;
  font-size: 10rem;
  text-transform: uppercase;
  text-align: right;
  color: white;
  padding-left: 30rem;
}
.footdata::before {
  content: "";
  display: block;
  width: 15rem;
  height: 15rem;
  position: absolute;
  top: -2rem;
  left: -4rem;
  background-size: contain;
  background-position: 0 0;
  background-repeat: no-repeat;
}
.footdata::before {
  background-image: url("../media/svg/picto-octo.svg");
}

.banner {
  width: 400rem;
  display: block;
  margin: auto;
  filter: drop-shadow(0 0 10rem rgba(50, 104, 165, 0.5));
}

.helper {
  display: none;
}

.project-video {
  width: 100%;
  display: flex;
  column-gap: 40rem;
}
.project-video .columns {
  margin: 40rem 0;
}
.project-video .columns.col3 {
  flex-basis: 33.3333%;
}
.project-video figure {
  margin: 20rem 0 60rem;
}
.project-video figcaption {
  margin: 0 0 10rem;
  font-size: 16rem;
}
.project-video video,
.project-video img {
  max-width: 100%;
  object-fit: cover;
}
.follower {
  max-width: 350rem;
  padding: 15rem 10rem 30rem 30rem;
  background-color: rgba(0, 0, 0, 0.3882352941);
  border: 1px solid #27a6b3;
  font-size: 10rem;
  transition: transform 0.05s, background 0.2s, color 0.2s;
  color: #27a6b3;
}
.follower .btn-blink {
  position: absolute;
  top: -150rem;
  left: -150rem;
}
.follower--title {
  font-family: Oswald, sans-serif;
  font-weight: 700;
  font-size: 3em;
  line-height: 1;
  text-transform: uppercase;
}
.follower--title::before {
  top: 5%;
  left: 5%;
  transform: scale(1, 1);
}
.follower--title::after {
  top: 5%;
  right: 5%;
  transform: scale(-1, 1);
}
.follower--title::after, .follower--title::before {
  content: "";
  display: inline-block;
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url("../media/svg/angle-follower.svg");
  background-position: 0 0;
  height: 10rem;
  width: 10rem;
}
.follower--name {
  font-size: 2em;
  font-style: italic;
  text-transform: uppercase;
  margin-top: 15rem;
}
.follower--desc {
  font-size: 1.2em;
  margin: 5rem 0 0;
}
.follower--desc::before {
  bottom: 5%;
  left: 5%;
  transform: scale(1, -1);
}
.follower--desc::after {
  bottom: 5%;
  right: 5%;
  transform: scale(-1, -1);
}
.follower--desc::after, .follower--desc::before {
  content: "";
  display: inline-block;
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url("../media/svg/angle-follower.svg");
  background-position: 0 0;
  height: 10rem;
  width: 10rem;
}
.follower--data {
  font-size: 1.2em;
  margin: 5rem 0 0;
}
.follower--label {
  display: inline-flex;
  width: 100rem;
  overflow: hidden;
  vertical-align: middle;
}
.follower--label::after {
  content: ".................................................................................";
  margin: -5rem 5rem 0 5rem;
  font-size: 1.5em;
}
.follower--label img {
  width: 40rem;
}
.follower--value {
  font-size: 1.2em;
  font-weight: 700;
}
.follower.hidden {
  opacity: 0;
  pointer-events: none;
}
.follower:hover {
  background-color: #283845;
  color: rgb(220, 255, 255);
}
.follower::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 85rem;
  border: 0.5px solid #27a6b3;
  transform-origin: 0 0;
  rotate: -135deg;
  opacity: 0.5;
}

.marker {
  position: relative;
  padding-top: 10rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: 100rem;
  height: 100rem;
  border-radius: 50%;
  border: 1px solid #283845;
  background-color: white;
  transition: all 0.2s;
}
.marker:hover {
  color: #715014;
  background-color: #283845;
}
.marker:hover .marker--picture {
  filter: invert(100%) saturate(0%);
}
.marker:nth-child(2)::before {
  left: -80rem;
  width: 80rem;
}
.marker::before {
  content: "";
  position: absolute;
  top: 50%;
  left: -110rem;
  width: 110rem;
  display: block;
  height: 0;
  border-bottom: 1px solid #283845;
}
.marker--name {
  display: inline-block;
  font-size: 12rem;
  font-style: italic;
  text-align: center;
}
.marker--coord {
  display: inline-block;
  margin-top: -2rem;
  font-family: "Courier New", Courier, monospace;
  font-size: 10rem;
  text-transform: uppercase;
}
.marker--picture {
  width: 80%;
  height: 50rem;
  object-fit: contain;
}

.contact--me {
  width: 200rem;
}

.me {
  width: 15cqw;
  display: block;
  margin: auto;
  top: 40cqh;
  left: calc(50% - 7.5cqw);
  position: absolute;
}

#timeline {
  display: none;
}

#showscroll {
  display: none;
}

.site-header--title {
  width: 100%;
  line-height: 1.2;
}
@media (min-aspect-ratio: 0.1/1) and (max-aspect-ratio: 0.6) {
  .site-header--title {
    font-size: 160rem;
  }
}

@media (orientation: portrait) {
  html {
    font-size: 0.1cqw;
  }
  body {
    font-size: 30rem;
    font-weight: 400;
    line-height: 1.3;
  }
  body.discover-soline .section-place.is-geoloc .section-place--column.is-column1 {
    translate: -300rem 0;
  }
  body.discover-soline .section-place.is-geoloc .section-place--column.is-column2 {
    translate: 300rem 0;
  }
  body.discover-soline .planet.is-side {
    top: 20cqw;
    left: 0rem;
  }
  body.discover-soline .planet-wrapper {
    filter: blur(10rem) brightness(50%);
  }
  body.discover-soline .planet-wrapper.is-geoloc {
    filter: blur(0rem) brightness(100%);
  }
  body.the-project .planet.is-side {
    top: 0rem;
    left: 0rem;
  }
  .burger {
    font-size: 1cqw;
    top: -21rem;
    top: 33rem;
    scale: 1.5;
  }
  .burger.is-closed {
    scale: 2.2;
    top: 60rem;
  }
  .scroll-down {
    font-size: 3cqw;
  }
  #btn-false-lighting {
    top: 2cqh;
    right: 6cqw;
    margin: 0;
    scale: 1.2;
  }
  #btn-planet-knowmore {
    display: none;
    margin: 0;
  }
  .edito {
    font-size: 1cqw;
  }
  .edito h2 {
    font-size: 10.5em;
    margin-bottom: 3.5cqw;
  }
  .edito h3 {
    font-size: 7em;
    margin-bottom: 2.5cqw;
  }
  .edito p,
  .edito div {
    font-size: 2.8em;
    margin-bottom: 1cqw;
  }
  .site-nav {
    height: 100vh;
    justify-content: flex-start;
    padding-top: 20cqh;
  }
  .site-nav--item {
    font-size: 2.5cqw;
    font-weight: 200;
    margin: 0 auto 0;
  }
  .site-nav--orbit {
    width: 120rem;
    margin: 150rem auto 0;
  }
  .site-header--title {
    font-size: 17.5cqw;
  }
  .site-header--subtitle {
    margin-bottom: 78rem;
    font-size: 24rem;
    font-weight: 400;
    bottom: -1vh;
  }
  .planet-feat {
    display: none;
  }
  .planetdesc {
    width: 90%;
    margin-top: 0;
    transform: none;
    left: 6%;
    top: 5%;
  }
  .planetdesc--title {
    margin: 0;
    padding: 0;
    font-size: 7.6cqw;
  }
  .planetdesc--intro {
    margin-bottom: 50rem;
    font-size: 3cqw;
    font-weight: 400;
  }
  .planetdesc--left {
    width: 95%;
    margin-right: 70rem;
  }
  .planetdesc--right {
    width: 100%;
    padding-top: 0;
  }
  .planetdesc--subtitle,
  .planetdesc #intro-red-dwarf {
    display: none;
  }
  .planet {
    transition: all 1s;
  }
  .planet.is-side {
    top: 15cqh;
    left: -45%;
  }
  .halo {
    width: 20cqw;
    height: 7.5cqh;
    transition: opacity 1s;
  }
  .halo.is-side {
    opacity: 0;
  }
  .halo.is-intro {
    top: 29%;
    right: 0%;
  }
  .btn {
    font-size: 2cqw;
  }
  .hud--subtitle {
    bottom: -1vh;
  }
  .hud .infohud {
    bottom: -3vh;
    scale: 1.3;
  }
  .hud .infohud:nth-of-type(1) {
    left: 7%;
  }
  .hud .infohud:nth-of-type(2) {
    left: 32%;
  }
  .hud .infohud:nth-of-type(3) {
    right: 30%;
  }
  .hud .infohud:nth-of-type(4) {
    right: 7%;
  }
  .cadre .cadre-right::before,
  .cadre .cadre-right::after {
    right: 1.5cqw;
  }
  .dataplanet {
    top: 63%;
    right: 29%;
    scale: 2;
  }
  .section-bloccoord {
    translate: 0 0;
    margin-right: 0;
    margin-top: 0;
    top: 32cqh;
    right: 20cqw;
  }
  .section-bloccoord .bloccoord {
    margin-bottom: 3.5cqh;
  }
  .section-bloccoord2 {
    scale: 1.4;
    height: auto;
    margin-top: 0;
    margin-right: 0;
    transform-origin: 0 0;
    bottom: initial;
    position: absolute;
    top: 34cqh;
    right: 23cqw;
    z-index: 21;
  }
  .section-bloccoord2 .bloccoord2 {
    margin: 0rem 7% 3cqh auto;
  }
  .bloccoord {
    font-size: 1.5cqw;
  }
  .bloccoord:hover .bloccoord--life {
    scale: 2;
    translate: -40cqw 0;
  }
  .bloccoord:hover .bloccoord--temp span {
    scale: 1.5;
    translate: -40cqw -1.4cqh;
  }
  .bloccoord.is-active::after {
    width: 146rem;
  }
  .bloccoord2 {
    font-size: 1cqw;
  }
  .bloccoord2--life {
    transform-origin: 100% 0;
  }
  .bloccoord2:hover .bloccoord2--temp {
    translate: -30cqw -1cqh;
  }
  .bloccoord2:hover .bloccoord2--wind {
    translate: 0 1.2cqh;
    transition: translate 0.2s 0s;
  }
  .bloccoord2:hover .bloccoord2--wind span {
    scale: 2;
    translate: 0 0;
    transition: translate 0s 0s, scale 0.2s 0.2s;
  }
  .systeme {
    left: 14cqw;
    top: 55%;
  }
  .section-fastdata {
    padding: 5cqh 10cqw;
  }
  .section-fastdata .fastdata {
    position: static;
    font-size: 12cqw;
    width: 85cqw;
    margin: 0 0 5cqh 0;
  }
  .section-fastdata .fastdata--key {
    font-size: 0.9em;
    margin-bottom: 1cqh;
  }
  .section-fastdata .fastdata--value {
    font-size: 0.3em;
    background: none;
    line-height: 1.7;
    width: 90%;
    color: #fff;
    margin: 0;
  }
  .section-fastdata .fastdata--picture {
    position: fixed;
    top: initial;
    bottom: initial;
    left: initial;
    right: initial;
    width: 20rem;
    transform: scaleX(-1);
  }
  .section-fastdata #fastdata-golmore {
    text-align: left;
  }
  .section-fastdata #fastdata-golmore .fastdata--value {
    margin-left: 0;
  }
  .section-fastdata #fastdata-golmore .fastdata--picture {
    top: -22cqh;
    right: -14cqw;
    bottom: initial;
    left: initial;
  }
  .section-fastdata #fastdata-vers {
    text-align: left;
  }
  .section-fastdata #fastdata-vers .fastdata--picture {
    top: 49cqh;
    right: -24cqw;
    bottom: initial;
    left: initial;
    transform: scaleX(1);
  }
  .meet-the-people #btn-false-lighting {
    display: none;
  }
  :root {
    --thumbnailSize: 15.5cqw;
  }
  .section-gallery--wrapper {
    width: 56cqw;
  }
  .section-gallery--intro {
    margin: 7cqh 9cqw 1cqh;
    padding-bottom: 1cqh;
  }
  .section-gallery--table {
    position: absolute;
    top: 37cqh;
    left: 12cqw;
    width: 79cqw;
  }
  .section-gallery--intro-flex {
    gap: 0;
    width: 805rem;
    margin: auto;
  }
  .section-gallery--title {
    width: auto;
    margin-bottom: 30rem;
  }
  .section-gallery--text {
    width: 70cqw;
  }
  .section-gallery--wheel {
    display: none;
  }
  .infodata--cell {
    padding-left: 1cqw;
    font-size: 1.5cqw;
    text-align: center;
  }
  .monster--close {
    top: 40rem;
    right: 60rem;
    scale: 2;
  }
  .monster h2 {
    font-size: 70rem;
  }
  .monster h3 {
    height: 35rem;
    font-size: 25rem;
    margin-bottom: 30rem;
    margin-top: 10rem;
  }
  .monster--text {
    width: 100%;
    font-size: 1.8cqw;
  }
  .monster--picture {
    width: 100%;
    height: 28cqh;
    margin-top: 1cqh;
    transition: all 0.3s;
  }
  .monster--content {
    flex-direction: column;
  }
  .monster--info {
    font-size: 1.4cqw;
  }
  .monster--skill {
    margin: 2cqh 0 1cqh;
    gap: 0;
    width: 100%;
    justify-content: space-between;
  }
  .monster--skill .skill {
    scale: 1.2;
  }
  .monster.is-open h3 {
    width: 85%;
    padding: 0rem 0 2rem 15rem;
  }
  .section-place::before {
    display: none;
  }
  .section-place--wrapper {
    margin-top: 55rem;
  }
  .section-place--coords {
    margin: 70rem 0 70rem;
  }
  .section-place--column {
    transition: all 0.3s;
  }
  .section-place--column.is-column2 {
    margin-top: 0cqw;
  }
  .section-place--title {
    margin-bottom: 30rem;
    margin-left: -80rem;
    font-size: 110rem;
  }
  .section-place--intro {
    margin-bottom: 50rem;
    margin-bottom: 10rem;
    width: 100%;
    font-weight: 400;
  }
  .section-place--list-coord {
    display: none;
  }
  .section-place .place {
    margin-bottom: 35rem;
  }
  .place {
    font-size: 1.7cqw;
  }
  .place--key {
    margin-bottom: 0.5cqh;
  }
  .section-project--wrapper {
    width: 85%;
  }
  .section-project--left {
    position: absolute;
    right: 5%;
    bottom: 3cqh;
  }
  .section-project--banner {
    display: block;
    margin: 2cqh auto;
    position: relative;
    left: -1.5cqw;
  }
  .social--picto {
    width: 100rem;
  }
  .me {
    width: 55cqw;
    left: calc(50% - 27.5cqw);
  }
}
/*
@media (orientation: portrait) {

	@container main-container (720px <= width <= 1200px) {
		div {
			background-color: pink;
		}
	}

	@container main-container (max-width: 1200px) {

		.burger.is-closed {
			scale: 1.2;
			top: 2cqh;
		}

		.site-nav {
			padding-top: 15cqh;

			&--item {
				font-size: 2cqh;
				font-weight: 200;
				margin: 0 auto 2cqh;
			}
		}







		//------------------------------	
		// end of container
	}
}
*/
@media (orientation: portrait) {
  @container main-container (max-width: 719px) {}
}
.mobile {
  display: none;
}

/*
@media (orientation: portrait) and (min-width: 720px) and (max-width: 1200px) {



	.planetdesc {
		width: 100%;
		margin-top: -705rem;
		transform: none;
	}

	.fastdata {

		&--value {
			width: 70%;
			margin-left: auto;
		}

		&--picture {
			position: fixed;
			top: 50rem;
			left: 100rem;
			width: 200rem;
			transform: scaleX(-1);
		}
	}

	.section-fastdata {


		.fastdata#fastdata-golmore {
			left: -7%;
			top: 0%;

			.fastdata--picture {
				margin-left: auto;
				right: -317rem;
				left: initial;
				width: 1216rem;
				top: -1159rem;
			}

			svg {
				top: -126rem;
				left: 617rem;
				width: 568rem;
			}
		}

		.fastdata#fastdata-vers {
			top: 28%;

			.fastdata--value {
				margin-left: 0;
			}

			.fastdata--picture {
				top: 386rem;
				left: -88rem;
				width: 1460rem;
			}
		}
	}

	.section-gallery {
		margin-top: 100rem;

		&--table {
			top: 527rem;
			left: 60%;
			width: 1040rem;
			scale: 1.15;
		}
	}



	.monster {

		&--content {
			padding-top: 220rem;
		}

		&--text {
			width: 34%;
			font-size: 16rem;
		}

		&--picture {
			width: 63%;
			height: 33vh;
		}

		&--skill {
			margin-top: -20rem;
			display: flex;
			flex-wrap: wrap;
			justify-content: space-between;
			gap: 30rem;
			position: absolute;
			top: 50rem;
			width: 99%;
			height: auto;
			left: 3%;
		}

		&.is-open {
			width: 99%;
			height: 90vh;
			padding: 15rem 55rem 12rem 55rem;
		}
	}

	.skill {
		scale: 1.4;
	}





	.section-project--wrapper {
		width: 65%;
	}



	.bloccoord {
		font-size: 10rem;
	}

	.planetdesc {
		width: 94%;
		margin: 118rem 0 0 42rem;
		transform: none;

		position: absolute;
		top: 0;
		transform: translateY(0%);
		left: 0;

		&--title {
			font-size: 94rem;
		}


		&--intro {
			margin-bottom: 0;
		}


		&--left {
			width: 50%;
			display: inline-block;
			margin-right: 70rem;
		}

		&--right {
			width: 40%;
			display: inline-block;
			padding-top: 55rem;
			vertical-align: top;
		}

		&--subtitle {
			font-size: 30rem;
		}

		&--subtitle::before {
			display: none;
		}
	}

	.dataplanet {
		top: 60%;
	}

	.systeme {
		translate: -50% -50%;
		left: 50%;
		top: 50%;
		margin-left: -285rem;
		margin-top: 86rem;
	}

	.section-bloccoord {
		margin-top: 236rem;
		scale: 1.2;
		margin-right: 88rem;
	}

	.section-bloccoord2 {
		margin-top: 235rem;
		margin-right: 100rem;
	}

	.bloccoord.is-active::after {
		width: 200rem;
	}

	#btn-planet-knowmore {
		margin: 50rem 0;
	}





	.section-place {
		&--column {
			transition: all .3s;
		}
	}

	.place {

		.place--key {
			font-size: 32rem;
			margin-bottom: 10rem;
		}

		.place--value {
			font-size: 18rem;
		}
	}

	body.portrait {

		&.discover-soline {

			.section-place.is-geoloc {
				.section-place--column.is-column1 {
					translate: -300rem 0;
				}

				.section-place--column.is-column2 {
					translate: 300rem 0;
				}
			}

			.planet.is-side {
				top: 0rem;
				left: 0rem;
			}

			.planet-wrapper {
				filter: blur(10rem) brightness(50%);

				&.is-geoloc {
					filter: blur(0rem) brightness(100%);
				}
			}
		}

		&.the-project {
			.planet.is-side {
				top: 0rem;
				left: 0rem;
			}
		}
	}

	.halo.is-intro {
		top: 33%;
		right: 15%;
	}
}
*//*# sourceMappingURL=style.css.map */