:root {
  --difference-color: #ffeee2;
}

html,
body {
  overflow-x: hidden;
}

header {
  position: fixed;
  z-index: 999;
}
#landing {
  height: 100dvh;
}

#big-title {
  margin-bottom: 3rem;
}

#carrousel {
  max-width: 100vw;
  position: relative;
  overflow: hidden;
}

#carrousel-container {
  display: flex;
  height: 50dvh;
  grid-gap: 2rem;
  flex-wrap: wrap;
}

#carrousel[data-animated="true"] {
  overflow: hidden;
}

#carrousel[data-animated="true"] #carrousel-container {
  width: max-content;
  flex-wrap: nowrap;
  -webkit-animation: infinite-slide 30s linear infinite;
  animation: infinite-slide 30s linear infinite;
  will-change: transform;
}

@-webkit-keyframes infinite-slide {
  to {
    -webkit-transform: translateX(calc(-50% - 1.5rem));
    transform: translateX(calc(-50% - 1.5rem));
  }
}

@keyframes infinite-slide {
  to {
    transform: translateX(calc(-50% - 1.5rem));
  }
}

.carrousel-img img {
  height: 100%;
  width: auto;
}

#distinctions {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-column-gap: var(--gutter-width);
  min-height: 50dvh;
  height: auto;
  padding: 0 var(--gutter-width) !important;
}

#schemas-all {
  background-color: #2d2d2d;
}

.schema-section {
  width: 100%;
  box-sizing: border-box;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  column-gap: var(--gutter-width);
  align-items: center;
  padding: 0 var(--gutter-width) !important;
  left: 0;
  position: absolute;
}

.grid-text-schema .text-section {
  grid-column: 4 / span 6;
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: justify;
  padding: 0 var(--gutter-width);
}

.schema-section h1 {
  grid-column: 4 / span 3;
  color: var(--light-color);
  word-break: break-word;
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
}

.schema-container {
  height: 50dvh;
  grid-column: span 3;
}

#clients {
  justify-content: flex-end;
}

.section-align-bottom {
  align-content: end;
}

.col--1 {
  grid-column: 4 / span 3;
}

#animation-planete {
  grid-column: span 3;
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: justify;
  align-items: flex-end;
}

/* SVG */

.arrow-head,
.arrow-dot {
  fill: var(--light-color);
}

.legend-pointer {
  fill: none;
  stroke: var(--light-color);
  stroke-width: 0.5px;
}

.legend-paragraphe {
  fill: var(--light-color);
  font-family: "nobel", sans-serif;
  font-weight: 300;
  font-style: normal;
  font-size: 26px;
}

.thin-stroke {
  stroke-width: 0.25px;
  stroke-linecap: round;
  fill: none;
  stroke: var(--light-color);
}

.medium-stroke {
  stroke-width: 1px;
  stroke-linecap: round;
  fill: none;
  stroke: var(--light-color);
}

.large-stroke {
  stroke-width: 2px;
  stroke-linecap: round;
  fill: none;
  stroke: var(--light-color);
}

.dotted {
  stroke-dasharray: 0 0 0 4.9 !important;
  stroke-miterlimit: 10 !important;
}

.plain-form {
  fill: var(--light-color);
}

.negative-plain-form {
  fill: #2d2d2d;
}

.negative-stroke {
  stroke: #2d2d2d;
}

.big-letter {
  fill: var(--light-color);
  font-family: "nobel", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 25px;
}

.big-letter.bold {
  font-weight: 700;
}

@media screen and (max-width: 750px) {
  #schemas-all {
    min-height: 100dvh;
  }

  .schema-section h1 {
    grid-column: 2 / span 10;
    height: 33dvh;
    display: flex;
    justify-content: center;
    grid-row: 2;
    height: 25dvh;
    align-items: start;
  }
  .schema-container {
    grid-column: 1 / span 12;
    align-items: center;
    height: 75dvh;
  }

  .text-section {
    grid-column: 2 / span 10;
  }

  .text-section {
    grid-column: 2 / span 10;
  }

  #animation-planete {
    grid-column: span 12;
  }
}
