a {
    text-decoration: none;
    color: #005BAA;
}

a:hover {
    text-decoration: none;
}

/* Card hover effects for all card-like content */
.card-hover-effect {
    position: relative;
    overflow: hidden;
    transition: all 0.3s ease;
}

.card-hover-effect::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
    transition: left 0.5s;
    pointer-events: none;
    z-index: 1;
}

.card-hover-effect:hover::before {
    left: 100%;
}

.card-hover-effect:hover {
    transform: scale(1.02);
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
}

/* Enhanced version with more dramatic effect */
.card-hover-effect-enhanced {
    position: relative;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.card-hover-effect-enhanced::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.3), transparent);
    transition: left 0.6s cubic-bezier(0.4, 0, 0.2, 1);
    pointer-events: none;
    z-index: 1;
}

.card-hover-effect-enhanced:hover::before {
    left: 100%;
}

.card-hover-effect-enhanced:hover {
    transform: scale(1.03) translateY(-2px);
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
}

/* Button hover effects */
.button-hover-effect {
    position: relative;
    overflow: hidden;
    transition: all 0.3s ease;
}

.button-hover-effect::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.3), transparent);
    transition: left 0.4s;
    pointer-events: none;
    z-index: 1;
}

.button-hover-effect:hover::before {
    left: 100%;
}

.button-hover-effect:hover {
    transform: translateY(-1px);
    box-shadow: 0 10px 20px -10px rgba(0, 0, 0, 0.3);
}

.gs-button {
  @apply tw-inline-flex tw-justify-center tw-items-center tw-py-3 tw-px-5 tw-text-base tw-font-medium tw-text-center tw-text-white tw-rounded-lg tw-bg-gs-primary;
  position: relative;
  overflow: hidden;
  transition: all 0.3s ease;
}

.gs-button::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.3), transparent);
  transition: left 0.4s;
  pointer-events: none;
  z-index: 1;
}

.gs-button:hover::before {
  left: 100%;
}

.gs-button:hover {
  @apply tw-bg-blue-800 tw-text-white tw-shadow-lg;
  transform: translateY(-1px);
}

.gs-button:focus {
  @apply tw-outline-none tw-ring-4 tw-ring-blue-300;
}