@import url('font-icons.css');

:root {
  --base: 2rem;
  --main-bg-color: #e8e8e8;
}

* {
  margin: 0;
  padding: 0;
}

body {
  margin: 0;
  padding: 0;
  background: #fff;
  font-family: 'Helvetica Neue', 'Icons', sans-serif;
  /* overflow: hidden; */
}

.container {
  /* … */
}

.title {
  font-size: 5rem;
  font-weight: 500;
}

@keyframes rotate {
  from {
    -ms-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  to {
    -ms-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -webkit-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

.logo__container {
  position: fixed;
  bottom: var(--base);
  left: var(--base);
  z-index: 10;
  width: 150px;
  height: 150px;
}

.logo {
  -webkit-animation: rotate 15s linear infinite;
  -moz-animation: rotate 15s linear infinite;
  -ms-animation: rotate 15s linear infinite;
  -o-animation: rotate 15s linear infinite;
  animation: rotate 15s linear infinite;
}

header {
  height: 80vh;
  background-color: var(--main-bg-color);
  padding: var(--base) var(--base) 0;
  position: relative;

  h1 {
    color: rgb(57, 42, 45);
    font-size: 2.5rem;
    font-weight: 500;
    line-height: 0.9;

    span {
      display: block;
    }
  }

  .text {
    color: #392a2d;
    font-size: 2.25rem;
    position: absolute;
    bottom: var(--base);
  }
}

@media only screen and (min-width: 320px) {}

@media only screen and (min-width: 375px) {
  header {
    h1 {
      font-size: 3.25rem;

      span {}
    }

    .text {}
  }
}

@media only screen and (min-width: 425px) {}

@media only screen and (min-width: 768px) {
  header {
    h1 {
      font-size: 4.25rem;

      span {}
    }

    .text {}
  }
}

@media only screen and (min-width: 1024px) {
  header {
    h1 {
      font-size: 6.5rem;

      span {}
    }

    .text {}
  }
}

@media only screen and (min-width: 1366px) {}

@media only screen and (min-width: 1440px) {}

@media only screen and (min-width: 1664px) {}

@media only screen and (min-width: 2560px) {}

.cards {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: var(--base);

  .card {
    /* border: 1px solid black; */

    .cards {
      display: grid;
      grid-template-columns: 1fr;
    }
  }
}

#ifm {
  height: 100vh;
  background-color: #9b96a7;
  padding: var(--base) var(--base) 0;

  color: white;

  h2 {
    color: #b7cbd9;
    /* font-size: 2.25rem; */
  }
}

#best-regards {
  background: hsl(177deg 8.26% 52.55%);
}

#freeform-zone {
  position: relative;
  width: 100%;
  height: 100vh;
  overflow: hidden;
  touch-action: none;
  /* Empêche le scroll pendant le drag tactile */
}

.freeform-image {
  position: absolute;
  max-width: 300px;
  height: auto;
  cursor: grab;
  user-select: none;
  touch-action: none;
}

.freeform-image:active {
  cursor: grabbing;
}

#photo-stack {
  position: relative;
  width: 100%;
  height: 600px;
  background-color: #f3f3f3;
  overflow: hidden;
}

.photo {
  position: absolute;
  width: 200px;
  height: auto;
  border-radius: 8px;
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
  cursor: grab;
  user-select: none;
  transition: box-shadow 0.2s;
}

#archive {
  height: 100vh;
  background: hsl(187.06deg 9.94% 66.47%);
}

#info {
  height: 100vh;
  background: hsl(357.27deg 33.33% 12.94%);
}