.trial-cta,
.trial-card-cta {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: #d7ff2f !important;
  color: #000 !important;
  border-color: #e7ff70 !important;
  font-weight: 800;
  letter-spacing: 0;
  box-shadow: 0 0 0 1px rgba(231, 255, 112, .95), 0 0 34px rgba(215, 255, 47, .44);
  animation: trial-pulse 2.8s ease-in-out infinite;
}

.trial-cta::before,
.trial-card-cta::before {
  content: "";
  position: absolute;
  inset: -40%;
  z-index: -1;
  background: linear-gradient(115deg, transparent 30%, rgba(0, 0, 0, .08) 43%, rgba(255, 255, 255, .82) 50%, rgba(0, 0, 0, .08) 57%, transparent 70%);
  transform: translateX(-70%) rotate(10deg);
  animation: trial-shine 3.4s ease-in-out infinite;
}

.trial-cta:hover,
.trial-card-cta:hover {
  transform: translateY(-2px);
  background: #ecff79 !important;
  color: #000 !important;
  box-shadow: 0 0 0 1px rgba(236, 255, 121, .98), 0 14px 38px rgba(215, 255, 47, .36);
}

.trial-card-cta {
  min-height: 56px;
  font-size: 1rem;
}

@keyframes trial-pulse {
  0%, 100% {
    box-shadow: 0 0 0 1px rgba(231, 255, 112, .95), 0 0 24px rgba(215, 255, 47, .32);
  }
  50% {
    box-shadow: 0 0 0 1px rgba(236, 255, 121, .98), 0 0 46px rgba(215, 255, 47, .58);
  }
}

@keyframes trial-shine {
  0%, 62% {
    transform: translateX(-70%) rotate(10deg);
  }
  100% {
    transform: translateX(70%) rotate(10deg);
  }
}

@media (max-width: 640px) {
  .trial-cta {
    min-height: 56px;
    width: 100%;
  }
}
