.section__services__item {
  position: relative;
  z-index: 1;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  gap: 24px;
  border: 1px solid var(--white-30);
  border-radius: 24px;
  padding: 36px;
}
.section__services__item::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--black-100);
  opacity: 1;
  z-index: -1;
  pointer-events: none;
}
.section__services__item::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--item-bg);
  opacity: 0;
  transition: var(--transition-500);
  z-index: -1;
  pointer-events: none;
}
.section__services__item__glow {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: -1;
  opacity: 0;
  transition: var(--transition-300);
}
.section__services__item__glow::before {
  content: "";
  position: absolute;
  width: 100px;
  height: 100px;
  border-radius: 100%;
  background: var(--white-100);
  filter: blur(60px);
  transform: translate(-50%, -50%);
  top: var(--mouse-y, -9999px);
  left: var(--mouse-x, -9999px);
  z-index: 2;
}
.section__services__item__glow::after {
  content: "";
  position: absolute;
  width: 240px;
  height: 240px;
  border-radius: 100%;
  background: var(--cursor-color);
  filter: blur(136px);
  transform: translate(-50%, -50%);
  top: var(--mouse-y, -9999px);
  left: var(--mouse-x, -9999px);
}
@media (max-width: 380px) {
  .section__services__item__glow {
    display: block;
  }
  .section__services__item__glow::before {
    display: none;
  }
  .section__services__item__glow::after {
    width: 160px;
    height: 160px;
    top: -10px;
    right: -10px;
    filter: blur(62px);
    transform: unset;
  }
}
.section__services__item__icon {
  border-radius: 8px;
  background: var(--black-90);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 60px;
  height: 60px;
  border-width: 1px;
  border-style: solid;
}
.section__services__item__icon svg {
  width: 24px;
  height: 24px;
}
.section__services__item__icon svg path:not([fill=none]),
.section__services__item__icon svg circle:not([fill=none]),
.section__services__item__icon svg rect:not([fill=none]),
.section__services__item__icon svg line:not([fill=none]),
.section__services__item__icon svg polygon:not([fill=none]),
.section__services__item__icon svg polyline:not([fill=none]),
.section__services__item__icon svg ellipse:not([fill=none]) {
  fill: currentColor;
}
.section__services__item__icon svg path[stroke],
.section__services__item__icon svg circle[stroke],
.section__services__item__icon svg rect[stroke],
.section__services__item__icon svg line[stroke],
.section__services__item__icon svg polygon[stroke],
.section__services__item__icon svg polyline[stroke],
.section__services__item__icon svg ellipse[stroke] {
  stroke: currentColor;
}
.section__services__item__info {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
@media (max-width: 620px) {
  .section__services__item__info {
    display: contents;
  }
}
@media (max-width: 620px) {
  .section__services__item__text {
    grid-column: 1/3;
  }
}
.section__services__item__links {
  margin-top: auto;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}
@media (max-width: 620px) {
  .section__services__item__links {
    grid-column: 1/3;
  }
}
@media (max-width: 1600px) {
  .section__services__item__link {
    padding: 12px 16px;
  }
}
@media (any-hover: hover) {
  .section__services__item .btn__primary:hover {
    background: var(--cursor-color) !important;
    box-shadow: 0 0 48px 0 var(--cursor-color) !important;
  }
}
@media (any-hover: none) {
  .section__services__item {
    --item-bg: var(--item-bg-no-hover);
  }
}
@media (any-hover: hover) {
  .section__services__item:hover {
    --item-bg: var(--item-bg-hover);
  }
  .section__services__item:hover::before {
    opacity: 1;
  }
  .section__services__item:hover .section__services__item__glow {
    opacity: 1;
  }
  .section__services__item:hover .section__services__item__link {
    padding: 16px 24px;
  }
  .section__services__item:hover .section__services__item__link span {
    padding-right: 10px;
    max-width: 200px;
  }
  .section__services__item:hover .section__services__item__link {
    border: 1px solid transparent;
    background: var(--white-30);
  }
}
@media (any-hover: hover) and (max-width: 1600px) {
  .section__services__item:hover .section__services__item__link {
    padding: 12px 20px;
  }
}
@media (any-hover: none) {
  .section__services__item .section__services__item__glow {
    display: none;
  }
  .section__services__item::before {
    opacity: 1;
  }
}
@media (max-width: 1600px) {
  .section__services__item {
    padding: 24px;
  }
}
@media (max-width: 620px) {
  .section__services__item {
    display: grid;
    grid-template-columns: 60px auto;
    align-items: center;
  }
}