.motion-hero {
  background:
    radial-gradient(circle at 50% 42%, rgba(195, 107, 255, 0.2), rgba(0, 0, 0, 0) 34%),
    #000;
}

#attractor-metaballs {
  width: 100%;
  height: 100%;
  min-height: inherit;
  background: #000;
  overflow: hidden;
  position: relative;
}

#attractor-metaballs canvas {
  width: 100% !important;
  height: 100% !important;
  display: block;
}

.crawling-chaos-section {
  display: grid;
  grid-template-columns: minmax(0, 1.32fr) minmax(260px, 0.68fr);
  gap: clamp(28px, 5vw, 76px);
  align-items: center;
  padding-top: clamp(56px, 8vw, 104px);
  padding-bottom: clamp(56px, 8vw, 104px);
}

.crawling-chaos-video {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(255, 238, 50, 0.18);
  border-radius: 8px;
  background: #050505;
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.45);
  aspect-ratio: 16 / 9;
}

.crawling-chaos-video iframe {
  width: 100%;
  height: 100%;
  display: block;
  border: 0;
}

.crawling-chaos-copy h2 {
  margin: 0 0 18px;
  font-size: clamp(2.6rem, 5.2vw, 5.8rem);
  line-height: 0.92;
  letter-spacing: 0;
}

.crawling-chaos-copy p:last-child {
  margin: 0;
  font-size: clamp(1.08rem, 1.55vw, 1.34rem);
  font-weight: 400;
  line-height: 1.48;
}

.moshn-may-section {
  width: 90%;
  margin: 0 auto;
  padding: clamp(48px, 7vw, 92px) 0 clamp(56px, 8vw, 104px);
}

.moshn-may-copy {
  max-width: 900px;
  align-self: end;
}

.moshn-may-copy h2 {
  margin: 0 0 18px;
  font-size: clamp(2.8rem, 6vw, 6.4rem);
  line-height: 0.92;
  letter-spacing: 0;
}

.moshn-may-copy p:last-child {
  max-width: 680px;
  margin: 0;
  font-size: clamp(1.08rem, 1.55vw, 1.34rem);
  font-weight: 400;
  line-height: 1.48;
}

.moshn-may-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-areas:
    "video-one video-two"
    "copy video-two"
    "video-three video-three";
  gap: clamp(10px, 1.6vw, 18px);
  align-items: start;
}

.moshn-may-video:nth-child(1) {
  grid-area: video-one;
}

.moshn-may-video:nth-child(2) {
  grid-area: video-two;
}

.moshn-may-copy {
  grid-area: copy;
}

.moshn-may-video:nth-child(4) {
  grid-area: video-three;
  grid-column: 1 / -1;
}

.three-d-section {
  width: 90%;
  margin: 0 auto;
  padding: clamp(48px, 7vw, 92px) 0 clamp(56px, 8vw, 104px);
}

.three-d-copy {
  max-width: 980px;
  margin-bottom: clamp(26px, 4vw, 48px);
}

.three-d-copy h2 {
  margin: 0 0 18px;
  font-size: clamp(2.8rem, 6vw, 6.4rem);
  line-height: 0.92;
  letter-spacing: 0;
}

.three-d-copy p:last-child {
  max-width: 860px;
  margin: 0;
  font-size: clamp(1.08rem, 1.55vw, 1.34rem);
  font-weight: 400;
  line-height: 1.48;
}

.three-d-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: clamp(10px, 1.6vw, 18px);
  align-items: start;
}

.three-d-media {
  width: 100%;
  height: auto;
  display: block;
  border: 1px solid rgba(255, 238, 50, 0.18);
  border-radius: 8px;
  background: #050505;
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.45);
  object-fit: contain;
}

.three-d-video {
  grid-column: span 3;
}

.three-d-image {
  grid-column: span 2;
}

.free-work-section {
  width: 90%;
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(220px, 0.62fr) minmax(0, 1.38fr);
  gap: clamp(28px, 5vw, 82px);
  align-items: center;
  padding-top: clamp(56px, 8vw, 104px);
  padding-bottom: clamp(64px, 9vw, 122px);
}

.free-work-copy {
  position: sticky;
  top: 144px;
  align-self: start;
}

.free-work-copy h2 {
  margin: 0 0 18px;
  font-size: clamp(2.6rem, 5.4vw, 6rem);
  line-height: 0.92;
  letter-spacing: 0;
}

.free-work-copy p:last-child {
  max-width: 420px;
  margin: 0;
  font-size: clamp(1.08rem, 1.6vw, 1.42rem);
  font-weight: 400;
  line-height: 1.45;
}

.motion-video-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: clamp(10px, 1.6vw, 18px);
  align-items: start;
}

.motion-video {
  width: 100%;
  height: auto;
  display: block;
  border: 1px solid rgba(255, 238, 50, 0.18);
  border-radius: 8px;
  background: #050505;
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.45);
  object-fit: contain;
}

.motion-video--top {
  grid-column: span 2;
}

.motion-video--bottom {
  grid-column: span 3;
}

@media (max-width: 720px) {
  .motion-hero {
    height: clamp(380px, 64vh, 560px);
  }

  .crawling-chaos-section {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .crawling-chaos-video {
    order: 2;
  }

  .crawling-chaos-copy {
    order: 1;
  }

  .free-work-section {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .moshn-may-grid {
    grid-template-columns: 1fr;
    grid-template-areas:
      "copy"
      "video-one"
      "video-two"
      "video-three";
  }

  .moshn-may-copy {
    align-self: auto;
    margin-bottom: 0;
  }

  .moshn-may-video:nth-child(4) {
    grid-column: auto;
  }

  .three-d-grid {
    grid-template-columns: 1fr;
  }

  .three-d-video,
  .three-d-image {
    grid-column: auto;
  }

  .free-work-copy {
    position: static;
  }

  .motion-video-grid {
    grid-template-columns: 1fr;
  }

  .motion-video,
  .motion-video--top,
  .motion-video--bottom {
    grid-column: auto;
  }
}
