:root {
  --index: calc(1vw + 1vh);
  --transition: cubic-bezier(0.1, 0.7, 0, 1);
}
#skills {
  margin: 0;
  margin-left: min(7em, 7%);
  min-height: 60vh;
  min-height: 60dvh;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #11121a;
  overflow: hidden;
  font-family: system-ui, sans-serif;
}

.items {
  display: flex;
  gap: 0.4rem;
  perspective: calc(var(--index) * 35);
}

.item {
  width: calc(var(--index) * 3);
  height: calc(var(--index) * 12);
  background-color: #222;
  background-size: cover;
  background-position: center;
  cursor: pointer;
  filter: grayscale(0.5) brightness(0.5);
  transition: transform 1.25s var(--transition), filter 3s var(--transition), 
              width 1.25s var(--transition);
  will-change: transform, filter, rotateY, width;
}

.item::before,
.item::after {
  content: '';
  position: absolute;
  height: 100%;
  width: 20px;
  right: calc(var(--index) * -1);
}

.item::after {
  left: calc(var(--index) * -1);
}

.items .item:hover {
  filter: inherit;
  transform: translateZ(calc(var(--index) * 10));
  
}

.items .item:hover + * {
  filter: inherit;
  transform: translateZ(calc(var(--index) * 8.5)) rotateY(15deg);
  z-index: -1;
}

.items .item:hover + * + * {
  filter: inherit;
  transform: translateZ(calc(var(--index) * 6.0)) rotateY(30deg);
  z-index: -2;
}

.items .item:hover + * + * + * {
  filter: inherit;
  transform: translateZ(calc(var(--index) * 2.5)) rotateY(40deg);
  z-index: -3;
}

.items .item:hover + * + * + * + * {
  filter: inherit;
  transform: translateZ(calc(var(--index) * 0.6)) rotateY(50deg);
  z-index: -4;
}

.items .item:has(+ :hover) {
  filter: inherit;
  transform: translateZ(calc(var(--index) * 8.5)) rotateY(-10deg);
}

.items .item:has(+ * + :hover) {
  filter: inherit;
  transform: translateZ(calc(var(--index) * 6.0)) rotateY(-30deg);
}

.items .item:has(+ * + * + :hover) {
  filter: inherit;
  transform: translateZ(calc(var(--index) * 2.5)) rotateY(-40deg);
}

.items .item:has(+ * + * + * + :hover) {
  filter: inherit;
  transform: translateZ(calc(var(--index) * 0.6)) rotateY(-50deg);
}

.items .item:active,
.items .item:focus {
  width: 28vw;
  filter: inherit;
  transform: translateZ(calc(var(--index) * 10));
  z-index: 100;
  margin: 0 0.45vw;
}

.items .item-js{
  width: 28vw;
  filter: inherit;
  transform: translateZ(calc(var(--index) * 10));
  z-index: 100;
  margin: 0 0.45vw;
}
