/* Perspective dock 3D */
.dock3d-stage {
  display: grid;
  min-height: 76vh;
  grid-template-columns: minmax(280px, 0.58fr) minmax(320px, 1fr);
  gap: clamp(24px, 6vw, 78px);
  align-items: center;
  overflow: hidden;
  padding: 32px max(16px, calc((100vw - 1180px) / 2));
  perspective: 1200px;
}

.dock3d-lab {
  display: grid;
  min-height: clamp(420px, 58vw, 620px);
  place-items: center;
  perspective: 1200px;
}

.dock3d-rig {
  position: relative;
  width: min(86vw, 620px);
  height: min(66vw, 480px);
  transform-style: preserve-3d;
  will-change: transform;
}

.dock3d-card {
  position: absolute;
  left: 50%;
  top: 50%;
  display: grid;
  width: clamp(132px, 20vw, 190px);
  min-height: clamp(172px, 27vw, 240px);
  align-content: space-between;
  border: 1px solid rgba(17, 19, 21, 0.16);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.76), rgba(255, 255, 255, 0.42)),
    var(--tone);
  box-shadow: 0 26px 70px rgba(17, 19, 21, 0.16);
  padding: 18px;
  transform-style: preserve-3d;
  will-change: transform, opacity;
}

.dock3d-card small {
  color: rgba(17, 19, 21, 0.58);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.dock3d-card strong {
  font-size: clamp(28px, 5vw, 52px);
  line-height: 0.9;
  text-transform: uppercase;
}

.dock3d-card span {
  display: block;
  height: 10px;
  border-radius: 999px;
  background: rgba(17, 19, 21, 0.18);
}

@media (max-width: 840px) {
  .dock3d-stage {
    grid-template-columns: 1fr;
  }

  .dock3d-rig {
    width: min(88vw, 430px);
    height: 430px;
  }
}
