.quarry-hero {
  background: #202427;
  color: white;
}

.quarry-hero__scene {
  position: relative;
}

.quarry-hero__scene picture,
.quarry-hero__scene img {
  display: block;
  width: 100%;
}

.quarry-hero__scene img {
  height: auto;
  aspect-ratio: 2.35;
  object-fit: cover;
  object-position: center 48%;
}

.quarry-hero__scene .logo-container {
  position: absolute;
  top: clamp(8px, 1.5vw, 24px);
  right: clamp(8px, 2vw, 32px);
  box-sizing: border-box;
  width: clamp(82px, 11vw, 152px);
  padding: 5px 9px;
}

.quarry-hero__copy {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 24px;
  padding: clamp(20px, 2.5vw, 40px) clamp(18px, 4vw, 64px);
}

.quarry-hero .title {
  margin: 0;
  font-size: clamp(26px, 3vw, 48px);
  line-height: 1.08;
}

.quarry-hero .description {
  display: block;
  margin: 10px 0 0;
  font-size: clamp(16px, 1.45vw, 24px);
  line-height: 1.25;
}

.quarry-hero__copy p {
  margin: 12px 0 0;
  line-height: 1.45;
}

.quarry-hero .button-container {
  width: auto;
  margin: 0;
  padding: 0;
  justify-content: start;
}

@media (max-width: 1199px) {
  .quarry-hero__copy {
    flex-direction: column;
    align-items: stretch;
    gap: 16px;
  }
}

@media (max-width: 600px) {
  .quarry-hero__scene img {
    aspect-ratio: 2;
  }

  .quarry-hero .button-group {
    flex-wrap: wrap;
    width: 100%;
  }

  .quarry-hero .button {
    flex: 1 1 145px;
    padding: 14px 12px;
  }
}
