
  
  .app {
    width: 100%;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    mask-image: linear-gradient(to right, transparent 0%, black 20%, black 80%, transparent 100%);
    -webkit-mask-image: linear-gradient(to right, transparent 0%, black 20%, black 80%, transparent 100%);
  }
  
  .tag-list {
    display: flex;
    flex-shrink: 0;
    flex-direction: column;
    gap: 1rem 0;
    position: relative;
    padding: 1.5rem 0;
    overflow: hidden;
  }
  
  .loop-slider {
    .inner {
      display: flex;
      width: fit-content;
      animation-name: loop;
      animation-timing-function: linear;
      animation-iteration-count: infinite;
      animation-direction: var(--direction);
      animation-duration: var(--duration);
    }
  }
  
  .tag {
    display: flex;
    align-items: center;
    width: max-content;
    gap: 0 0.2rem;
    color: #e2e8f0;
    font-size: 0.9rem;
    background-color: #334155;
    border-radius: 0.4rem;
    padding: 0.7rem 1rem;
    margin-right: 1rem;
    box-shadow: 
      0 0.1rem 0.2rem rgb(0 0 0 / 20%),
      0 0.1rem 0.5rem rgb(0 0 0 / 30%),
      0 0.2rem 1.5rem rgb(0 0 0 / 40%);
    
    span {
      font-size: 1.2rem;
      color: #64748b;
    }
  }
  
  .fade {
    pointer-events: none;
    background: linear-gradient(90deg, #1e293b, transparent 30%, transparent 70%, #1e293b);
    position: absolute;
    inset: 0;
  }
  
  @keyframes loop {
    0% {
      transform: translateX(0);
    }
    100% {
      transform: translateX(-50%);
    }
  }

  .rotating-text {
    font-family: Lato, sans-serif;
    font-weight: 600;
    font-size: 36px;
    color: white;
  
    p {
      display: inline-flex;
      margin: 0;
      vertical-align: top;
  
      .word {
        position: absolute;
        display: flex;
        opacity: 0;
  
        .letter {
          transform-origin: center center 25px;
  
          &.out {
            transform: rotateX(90deg);
            transition: 0.32s cubic-bezier(0.6, 0, 0.7, 0.2);
          }
          &.in {
            transition: 0.38s ease;
          }
          &.behind {
            transform: rotateX(-90deg);
          }
        }
      }
    }
  }
  
  .alizarin {
    color: #e74c3c;
  }
  
  .wisteria {
    color: #8e44ad;
  }
  
  .peter-river {
    color: #3498db;
  }
  
  .emerald {
    color: #2ecc71;
  }
  
  .sun-flower {
    color: #f1c40f;
  }

  @media (max-width: 768px) {
    .rotating-text {
      font-size: 24px;
    }

    .tag {
      font-size: 0.7rem;
      padding: 0.5rem 0.8rem;
  }

  .btn-group-lg>.btn, .btn-lg {
    padding: .5rem 0.7rem;
    font-size: 1rem;
  }
  }
  