.hero {
  border: 1px solid var(--neutral-200);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-lg);
  padding: calc(var(--spacing) * 8);
  background-color: var(--neutral-100);

  h1 {
    margin-bottom: calc(var(--spacing) * 6);
  }

  p {
    margin-bottom: calc(var(--spacing) * 6);
  }

  ul {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    color: var(--neutral-700);
  }
}

section {
  margin-block: calc(var(--spacing) * 12);

  h2 {
    position: relative;
    padding-left: calc(var(--spacing) * 4);
    margin-bottom: calc(var(--spacing) * 8);

    &::before {
      content: "";
      position: absolute;
      left: 0;
      top: 0;
      bottom: 0;
      width: 4px;
      background: var(--primary-500);
      border-radius: var(--radius-sm);
    }
  }
}

/* Stack */
.personal-cards {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 4);

  a {
    position: relative;
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 4);

    border: 1px solid var(--neutral-200);
    border-radius: var(--radius-lg);
    padding: calc(var(--spacing) * 4);
    background-color: var(--neutral-100);
    transition: transform 300ms ease;

    &:hover {
      transform: scale(1.02);

      .arrow {
        opacity: 1;
      }
    }

    .icon {
      font-size: var(--text-2xl);
    }

    .content {
      display: flex;
      flex-direction: column;

      h3 {
        font-size: var(--text-lg);
        margin-bottom: var(--spacing);
      }
    }

    .arrow {
      position: absolute;
      top: 50%;
      right: calc(var(--spacing) * 4);
      transform: translateY(-50%);
      opacity: 0;
      transition: opacity 150ms ease;
      color: var(--neutral-500);
    }
  }
}

.card[data-hidden] {
  display: none;
}

.show-more {
  display: block;
  margin-inline: auto;
  margin-top: calc(var(--spacing) * 4);
}
