.services-wrapper {
  background-color: hsl(from var(--black) h s l / 0.05);
  background-image: repeating-radial-gradient(
    circle at 125% 50%,
    hsl(from var(--black) h s l / 0.05) 0.5px,
    transparent 2px,
    transparent 40px
  );

  padding-block: var(--spacing-xxl);

  @media screen and (max-width: 768px) {
    padding-block: var(--spacing-md);
  }
}

.services {
  .service {
    /* text-align: center; */
    /* box-shadow: 0 0 0.5rem rgba(0, 0, 0, 0.1); */
    cursor: pointer;

    /* border-right: 1px solid hsl(from var(--black) h s l / 0.1);
    border-bottom: 1px solid hsl(from var(--black) h s l / 0.1);

    &:nth-child(3n) {
      border-right: none;
    }

    &:nth-last-child(-n + 3) {
      border-bottom: none;
    } */

    position: relative;
    top: 5rem;
    opacity: 0;

    &.revealed {
      top: 0;
      opacity: 1;
      transition: top 0.6s ease, opacity 0.6s ease;
    }

    & .service-content {
      padding: clamp(2rem, 5svw, 5rem);
      transition-property: box-shadow, transform, background-color, color;
      transition-timing-function: ease;
      transition-duration: 0.3s;
      position: relative;

      @media screen and (max-width: 768px) {
        /* border-bottom: 1px solid hsl(from var(--black) h s l / 0.1); */
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 1rem;

        box-shadow: 0 0.5rem 2rem hsl(from var(--primary-color) h s l / 0.15);
        background-image: radial-gradient(circle at 50% 125%, hsl(from var(--accent-color) h s l / 0.05) 0.5px,
          var(--white)
        );
        border-radius: var(--radius-md);
        z-index: 1;
        margin-bottom: var(--spacing-sm);
        padding: var(--spacing-sm);
      }

      &:hover {
        box-shadow: 0 0.5rem 2rem hsl(from var(--primary-color) h s l / 0.15);
        background-image: radial-gradient(circle at 50% 125%, hsl(from var(--accent-color) h s l / 0.05) 0.5px,
          var(--white)
        );
        outline: 1px solid hsl(from var(--accent-color) h s l / 0.5);
        border-radius: var(--radius-md);
        border-color: hsl(from var(--accent-color) h s l / 0.5);
        z-index: 1;
      }
    }

    .h3 {
      font-weight: 700;
      font-size: clamp(1.25rem, 5svw, 2rem);
      margin-block: 2rem;
      position: relative;
      transition: top 0.3s 0.1s ease;
      top: 0;
      @media screen and (max-width: 768px) {
        margin: 0
      }
      .service-content:hover & {
        top: -0.55rem;
      }
    }

    .short {
      color: var(--text-color-light);
      /* margin-bottom: 0.5rem; */
      line-height: 1.618;
      font-size: 1rem;
      min-height: 7em;
      margin-bottom: 1rem;
      position: relative;
      top: 0;
      transition: color 0.3s ease, top 0.3s 0.2s ease;

      @media screen and (max-width: 768px) {
        font-size: clamp(0.75rem, 3svw, 1.15rem);
        min-height: auto;
        flex: 0 0 100%;
      }

      .service-content:hover & {
        /* color: var(--white); */
        top: -0.55rem;
      }
    }

    a {
      color: var(--accent-color);
      text-decoration: none;
      /* font-weight: 500; */
      font-size: 1rem;
      transition: color 0.3s ease;

      @media screen and (max-width: 768px) {
        display: none;
      }

      &:hover {
        color: hsl(from var(--accent-color) h s l / 0.75);
      }
    }

    .icon {
      background-color: hsl(from var(--accent-color) h s l / 0.25);
      display: flex;
      flex: 0 0 auto;
      justify-content: center;
      align-items: center;
      width: 3rem;
      height: 3rem;
      transition: background-color 0.3s ease;
      border-radius: var(--radius-md);
      /* border: 1px solid var(--accent-color); */
      position: relative;
      top: 0;
      transition: color 0.3s ease, top 0.3s 0.0s ease;
      .service-content:hover & {
        background-color: var(--accent-color);
        color: var(--white);
        top: -0.55rem;
      }
    }

    .icon svg {
      width: 2rem;
      height: 2rem;
      transition: transform 0.3s ease;
      stroke: var(--accent-color);
      stroke-width: 1;
      .service-content:hover & {
        stroke: var(--white);
      }
    }
  }
}
