#skills-display-section {
  min-width: 100%;
  height: auto;

  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}

#skills-display-container {
  width: 80%;
  margin: 5% 0px;

  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  row-gap: min(5cqh, 2cqw);
}

#skills-display-title {
  height: 100%;

  display: grid;
  grid-template-columns: auto;
  grid-template-rows: auto;

  justify-items: center;
  align-items: center;
  justify-content: center;
  align-content: center;
}

#skills-display-title h1 {
  color: var(--text-inverse);
  font-family: 'Tomorrow';
  font-size: max(3cqw, 4cqh);

  grid-column: 1 / -1;
  grid-row: 1 / -1;

  text-wrap: nowrap;

  margin: max(1.2cqw, 1.5cqh) max(2.5cqw, 3cqh);
}

#skills-display-title-bg {
  grid-column: 1 / -1;
  grid-row: 1 / -1;

  background-color: var(--primary3);
  z-index: -1;
  height: 100%;
  width: calc(7 * max(3cqw, 4cqh));
  --shadow-offset: calc(0.2 * max(3cqw, 4cqh));

  box-shadow: 
    calc(-1 * var(--shadow-offset)) 0px var(--primary1),
    calc(1 * var(--shadow-offset)) 0px var(--primary2);

  transform: skewX(-20deg);
}

#skills-display-list {
  width: 100%;
  height: auto;

  display: flex;
  flex-wrap: wrap;
  grid-template-columns: repeat(3, 1fr);
  grid-auto-flow: row;

  align-items: flex-start;
  align-content: flex-start;
  justify-content: center;

  gap: 1cqh;
}

.skill-display-item {
  min-width: calc(50% - (1cqh * 1 / 2));
  max-width: calc(50% - (1cqh * 1 / 2));
  aspect-ratio: 3 / 1;

  border-radius: max(10px, 2cqw);
  border: 2px var(--bg-step-1) solid;

  display: grid;
  grid-template-columns: 33% auto;
  grid-template-rows: auto auto;

  align-items: center;
  justify-items: center;
  align-content: stretch;
  justify-content: stretch;
}

.skill-display-item-img {
  grid-column: 1 / 2;
  grid-row: 1 / -1;

  height: 70%;
  width: 70%;
  aspect-ratio: 1;
}

.skill-display-item > h3 {
  grid-column: 2 / -1;
  grid-row: 1 / 2;

  font-family: 'Tomorrow';
  font-weight: 400;
  font-size: 3.5cqw;

  align-self: end;
  justify-self: start;

  margin: 0% 1%;
}

.skill-display-item > p {
  grid-column: 2 / -1;
  grid-row: 2 / 3;

  align-self: start;
  justify-self: start;
  font-size: 1.9cqw;

  margin: 0% 1%;
  padding-right: 2%;

  line-height: 120%;
}

@media screen and (min-aspect-ratio: 577 / 844) {
  #skills-display-container {
    width: 75%;
  }

  .skill-display-item {
    width: calc(25% - (1cqh * 3 / 4));
    min-width: 25cqh;
  }

  .skill-display-item > h3 {
    font-size: max(19px, 1.5cqw);
  }

  .skill-display-item > p {
    font-size: max(10px, 0.9cqw);
  }
}