/* =========================
   HOME
========================= */


/* =========================
   HERO GENERALE
========================= */

.hero-global {
  position: relative;

  height: 100vh;

  overflow: hidden;

  margin-bottom: 120px;
}

.hero-global video {
  position: absolute;

  inset: 0;

  width: 100%;
  height: 100%;

  object-fit: cover;

  z-index: 0;
}

.overlay {
  position: absolute;

  inset: 0;

  background: rgba(0,0,0,.45);

  z-index: 1;

  pointer-events: none;
}


/* =========================
   HERO CONTENT
========================= */

.hero-global .content {
  position: absolute;

  top: 13%;
  right: 8%;

  z-index: 2;

  display: flex;

  flex-direction: column;

  align-items: flex-end;

  gap: 6px;

  text-align: right;

  color: white;

  max-width: 600px;
}

.hero-global .content h1 {
  margin: 0;

  font-size:
    clamp(2.5rem,4vw,4.5rem);

  line-height: 1.1;

  white-space: nowrap;
}

.hero-global .content p {
  margin: 0;

  font-size: 1.1rem;

  letter-spacing: 2px;

  text-transform: uppercase;

  opacity: .85;
}


/* =========================
   HERO NAV
========================= */

.hero-nav {
  display: flex;

  flex-direction: column;

  gap: 10px;

  margin-top: 18px;

  align-items: flex-end;

  padding: 0;
}


/* =========================
   SOCIAL HERO
========================= */

.hero-social {
  position: absolute;

  top: 3%;
  right: 8%;

  z-index: 3;

  display: flex;

  gap: 16px;
}

.hero-social a {
  opacity: .8;

  transition: opacity .3s ease;
}

.hero-social a:hover {
  opacity: 1;
}

.hero-social svg {
  width: 22px;
  height: 22px;

  fill: white;
}


/* =========================
   HOME CHAPTER
========================= */

.chapter {
  position: relative;

  min-height: 100vh;

  overflow: hidden;

  display: flex;

  align-items: flex-end;

  justify-content: flex-start;

  margin-bottom: 140px;

  border-top:
    1px solid rgba(255,255,255,.06);

  padding: 80px 10%;

  z-index: 0;
}

.chapter::before {
  content: "";

  position: absolute;

  inset: 0;

  background:
    linear-gradient(
      to top,
      rgba(0,0,0,0),
      rgba(0,0,0,0)
    );

  z-index: 1;

  pointer-events: none;
}

.media {
  position: absolute;

  inset: 0;

  width: 100%;
  height: 100%;

  object-fit: cover;

  transform: scale(1.02);

  z-index: 0;
}

.chapter-text {
  transform: translateX(-70px);

  position: relative;

  z-index: 2;

  max-width: 720px;

  color: white;

  padding-left: 40px;

  padding-bottom: 30px;
}

.chapter-text::before {
  content: "";

  position: absolute;

  left: -130px;

  top: -25px;
  bottom: -25px;

  width: 160%;

  background:
    linear-gradient(
      to right,
      rgba(0,0,0,.80),
      rgba(0,0,0,.60) 50%,
      rgba(0,0,0,0)
    );

  z-index: -1;

  border-radius: 6px;
}

.chapter-text h2 {
  font-size:
    clamp(4.5rem,8vw,6.5rem);

  margin: 0 0 10px;

  letter-spacing: 1px;

  text-shadow:
    0 10px 30px rgba(0,0,0,.35);
}

.chapter-text p {
  font-size: 1.25rem;

  line-height: 1.9;

  max-width: 560px;

  margin: 0 0 18px;
}

.chapter-text a {
  color: white;

  text-decoration: none;

  border-bottom:
    1px solid rgba(255,255,255,.4);

  padding-bottom: 4px;
}


/* =========================
   RESPONSIVE HOME
========================= */

@media (max-width: 900px) {

  .hero-global .content {
    top: 10%;
    right: 6%;
  }

  .hero-global .content h1 {
    white-space: normal;
  }

  .hero-nav {
    align-items: flex-end;
  }

  .chapter {
    padding: 60px 6%;

    margin-bottom: 100px;
  }

  .chapter-text {
    transform: none;

    padding-left: 20px;
    padding-right: 20px;
  }

  .chapter-text::before {
    left: -50px;

    width: 130%;
  }

  .chapter-text h2 {
    font-size:
      clamp(2.8rem,12vw,4rem);
  }

  .hero-social {
    right: 5%;
  }
}