:root {
    --border: rgb(136, 3, 244);
    
    --g1: rgb(98, 0, 234);
    --g2: rgb(219, 64, 236);
    --g3: rgb(42, 15, 46);
  }
  
  .card {
    aspect-ratio: 1 / 1.3;
    border: 0.35vmin solid var(--border);
    border-radius: 1rem;
    cursor: pointer;
    position: absolute;
    right: 0px;
    width: 56vmin;
  }
  
  .card:hover:before {
    background-position: 100% 100%;
    transform: scale(1.08, 1.03);
  }
  
  .card:hover > .card-content {
    background-position: -10% 0%;
  }
  
  .card:hover > .card-icon {
    color: white; 
  }
  
  .card:hover > .card-content > .card-subtitle > .card-subtitle-word {  
    opacity: 1;
    transform: translateY(0%);
    transition: opacity 0ms, transform 200ms cubic-bezier(.90, .06, .15, .90);
  }
  
  .card:before {
    background: linear-gradient(
      130deg, 
      transparent 0% 33%, 
      var(--g1) 66%, 
      var(--g2) 83.5%, 
      var(--g3) 100%
    );
    background-position: 0% 0%;
    background-size: 300% 300%;
    border-radius: 1rem;
    content: "";
    height: 100%;
    left: 0px;
    pointer-events: none;
    position: absolute;
    top: 0px;
    transition: background-position 350ms ease, transform 350ms ease;
    width: 100%;
    z-index: 1;
  }
  
  .card-content {
    background-image: radial-gradient(
      rgba(255, 255, 255, 0.2) 8%, 
      transparent 8%
    );
    background-position: 0% 0%;
    background-size: 5vmin 5vmin;
    height: calc(100% - 10vmin);
    padding: 5vmin;
    position: relative;
    transition: background-position 350ms ease;
    width: calc(100% - 10vmin);
    z-index: 2;
  }
  
  .card-title,
  .card-subtitle {
    color: white;
    font-weight: 400;
    margin: 0px;
  }
  
  .card-title {
    font-size: 2.85vmin;
  }
  
  .card-subtitle {
    font-size: 2.5vmin;
    margin-top: 2vmin;
  }
  
  .card-subtitle-word {
    display: inline-block;
    margin: 0vmin 0.3vmin;
    opacity: 0;
    position: relative;  
    transform: translateY(40%);
    transition: none;
  }
  
  .card-icon {
    bottom: 0px;
    color: rgba(255, 255, 255, 0.5);
    font-size: 7vmin;
    left: 0px;
    margin: 5vmin;
    position: absolute;
    transition: color 250ms ease;
    z-index: 2;
  }
  
  
@media only screen and (max-width: 600px) {
    .card {
   visibility: hidden;
    }
  }