.icon-textbox {
  background-color: rgb(var(--c-neutral-lightest));
  -webkit-box-shadow: 0px 0px 6px 0px rgba(var(--c-neutral-darkest), 0.15);
  box-shadow: 0px 0px 6px 0px rgba(var(--c-neutral-darkest), 0.15);
  padding: 2rem;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  transition: all 0.3s ease;
  margin-top: 1rem;
}

@media (hover: hover) {
  .icon-textbox:hover {
    background-color: rgb(var(--c-neutral-lighter));
    padding: 2.5rem 2rem;
    margin-top: 0;
  }
}

.icon-textbox__icon {
  position: relative;
  width: 35px;
  height: 35px;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10px;
  cursor: pointer;
  transition: transform 0.2s ease;
  transform: rotate(-45deg);
  border-radius: var(--b-radius-s);
  background: rgb(var(--c-primary));
  color: rgb(var(--c-neutral-lightest)) !important;
  margin-bottom: 1.5rem;

  & > span {
    transform: rotate(45deg);
  }
}

.icon-textbox__title {
  margin-bottom: 1rem;

  & h3 {
    font-size: var(--f-size-l-2);
  }
}

@media (min-width: 800px) {
  .icon-textbox {
    padding: 4rem 3rem;
  }

  @media (hover: hover) {
    .icon-textbox:hover {
      padding: 4.5rem 3rem;
    }
  }

  .icon-textbox__icon {
    display: flex;
    border: none;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    width: 45px;
    height: 45px;
    margin-bottom: 2.5rem;

    & > span {
      font-size: 26px;
    }
  }

  .icon-textbox__title {
    margin-bottom: 1.5rem;
  }

  & .icon-textbox__text {
    font-size: var(--f-size-l-1);
  }
}