.pg-verse-grid {
  display: grid;
}
.pg-verse-item {
  position: relative;
  overflow: hidden;
}
.pg-verse-content,
.pg-verse-readmore {
  position: absolute;
  inset-inline-start: 0;
  padding: 30px;
  z-index: 1;
}
.pg-verse-content {
  inset-block-start: 0;
}
.pg-verse-readmore {
  inset-block-end: 0;
}
.pg-verse-image-wrap {
  position: relative;
  width: 100%;
  height: 100%;
  .pg-verse-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}
.pg-verse-image-wrap::before {
  position: absolute;
  content: "";
  inset-block-start: 0;
  inset-inline-start: 0;
  width: 0;
  height: 100%;
  background: #fff;
  transition: all 0.4s cubic-bezier(0.31, 0.67, 0.36, 1);
}
.pg-verse-item:hover .pg-verse-image-wrap::before {
  width: 100%;
}
.pg-verse-title,
.pg-verse-text,
.pg-verse-readmore {
  --pg-dir-factor: 1;
  opacity: 0;
  transform: translate(calc(-60px * var(--pg-dir-factor)), 0);
  transition: all 0.4s cubic-bezier(0.31, 0.67, 0.36, 1);

  :dir(rtl) & {
    --pg-dir-factor: -1;
  }
}
.pg-verse-item:hover .pg-verse-title,
.pg-verse-item:hover .pg-verse-text,
.pg-verse-item:hover .pg-verse-readmore {
  opacity: 1;
  transform: translate(0, 0);
}
.pg-verse-item:hover .pg-verse-title {
  transition-delay: 0.3s;
}
.pg-verse-item:hover .pg-verse-text {
  transition-delay: 0.4s;
}
.pg-verse-item:hover .pg-verse-readmore {
  transition-delay: 0.5s;
}
.pg-verse-title {
  font-size: 35px;
  text-transform: capitalize;
  font-weight: 700;
  margin-block: 0 12px;
  margin-inline: 0;
  color: rgba(13, 59, 84, 0.8);
}
.pg-verse-text {
  font-size: 14px;
  text-transform: capitalize;
  color: #747e96;
  line-height: 1.7;
  p {
    margin: 0;
  }
}
.pg-verse-readmore a {
  --pg-readmore-dir-factor: 1;
  text-decoration: none;
  color: #fff;
  padding: 14px 35px;
  display: inline-flex;
  align-items: center;
  position: relative;
  background-color: rgba(13, 59, 84, 0.8);
  overflow: hidden;
  transition: all 300ms ease;
  font-weight: 500;
  text-transform: uppercase;
  font-size: 12px;
  border-radius: 4px;
  text-decoration: none;

  :dir(rtl) & {
    --pg-readmore-dir-factor: -1;
  }
}
.pg-verse-readmore a:hover {
  padding: 14px 45px;
  background-color: #0d3b54;
  border-start-start-radius: 0px;
  border-end-start-radius: 0px;
}
.pg-verse-readmore a span {
  transition: all 300ms ease;
}
.pg-verse-readmore a:hover span {
  transform: translate(calc(12px * var(--pg-readmore-dir-factor, 1)), 0);
}
.pg-verse-readmore a::before,
.pg-verse-readmore a::after {
  content: "";
  position: absolute;
  transition: all 300ms ease;
}
.pg-verse-readmore a::before {
  background-color: #fff;
  inset-inline-start: 0;
  inset-block-start: 0;
  width: 45px;
  height: 100%;
  transform: translate(calc(-150% * var(--pg-readmore-dir-factor)), 0)
    rotate(45deg);
}
.pg-verse-readmore a:hover::before {
  transform: translate(calc(-50% * var(--pg-readmore-dir-factor)), 0)
    rotate(45deg);
}
.pg-verse-readmore a::after {
  inset-inline-start: 24px;
  width: 0px;
  height: 2px;
  background-color: #fff;
}
.pg-verse-readmore a:hover::after {
  width: 20px;
  transition-delay: 200ms;
}

.pg-verse-item.pg-verse-effect-right {
  .pg-verse-image-wrap::before {
    inset-inline-start: auto;
    inset-inline-end: 0;
  }
  .pg-verse-title,
  .pg-verse-text,
  .pg-verse-readmore {
    transform: translate(calc(60px * var(--pg-dir-factor)), 0);
  }
  &:hover .pg-verse-title,
  &:hover .pg-verse-text,
  &:hover .pg-verse-readmore {
    transform: translate(0, 0);
  }
}

.pg-verse-item.pg-verse-effect-bottom {
  .pg-verse-image-wrap::before {
    width: 100%;
    height: 0;
  }
  &:hover .pg-verse-image-wrap::before {
    width: 100%;
    height: 100%;
  }
  .pg-verse-title,
  .pg-verse-text,
  .pg-verse-readmore {
    transform: translateY(-60px);
  }
  &:hover .pg-verse-title,
  &:hover .pg-verse-text,
  &:hover .pg-verse-readmore {
    transform: translateY(0);
  }
}

.pg-verse-item.pg-verse-effect-top {
  .pg-verse-image-wrap::before {
    inset-block-start: auto;
    inset-block-end: 0;
    width: 100%;
    height: 0;
  }
  &:hover .pg-verse-image-wrap::before {
    width: 100%;
    height: 100%;
  }
  .pg-verse-title,
  .pg-verse-text,
  .pg-verse-readmore {
    transform: translate(0, 60px);
  }
  &:hover .pg-verse-title,
  &:hover .pg-verse-text,
  &:hover .pg-verse-readmore {
    transform: translate(0, 0);
  }
}
