body {
  background: linear-gradient(135deg, #0a0a0a 0%, #1a1a1a 50%, #0f0f0f 100%);
}

.glass-card {
  background: rgba(15, 15, 15, 0.7);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.08);
}

.gradient-border {
  position: relative;
  background: linear-gradient(
    135deg,
    rgba(15, 15, 15, 0.9),
    rgba(25, 25, 25, 0.8)
  );
  border-radius: 1.5rem;
}

.gradient-border::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border-radius: 1.5rem;
  padding: 1px;
  background: linear-gradient(
    135deg,
    rgba(255, 122, 182, 0.3),
    rgba(216, 154, 216, 0.2)
  );
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
}

.feature-icon {
  background: linear-gradient(
    135deg,
    rgba(255, 122, 182, 0.15),
    rgba(216, 154, 216, 0.1)
  );
  border: 1px solid rgba(255, 122, 182, 0.2);
}

.pink-glow {
  box-shadow: 0 0 20px rgba(255, 122, 182, 0.3);
}

.pink-glow:hover {
  box-shadow: 0 0 30px rgba(255, 122, 182, 0.5);
}

.heartbeat {
  animation: heartbeat 1.5s ease-in-out infinite both;
}

@keyframes heartbeat {
  from {
    transform: scale(1);
    transform-origin: center center;
    animation-timing-function: ease-out;
  }
  10% {
    transform: scale(0.91);
    animation-timing-function: ease-in;
  }
  17% {
    transform: scale(0.98);
    animation-timing-function: ease-out;
  }
  33% {
    transform: scale(0.87);
    animation-timing-function: ease-in;
  }
  45% {
    transform: scale(1);
    animation-timing-function: ease-out;
  }
}

/* Enhanced gradient backgrounds for the new hero design */
.hero-gradient {
  background: linear-gradient(135deg, #7c3aed 0%, #ff7ab6 50%, #f97316 100%);
}

/* AI overlay effects */
.ai-overlay {
  position: relative;
}

.ai-overlay::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: 
    radial-gradient(circle at 20% 30%, rgba(255,255,255,0.1) 1px, transparent 1px),
    radial-gradient(circle at 80% 70%, rgba(255,255,255,0.1) 1px, transparent 1px);
  background-size: 20px 20px;
  pointer-events: none;
}

/* Enhanced floating animations */
@keyframes float-enhanced {
  0%, 100% { 
    transform: translateY(0px) rotate(0deg) scale(1); 
  }
  25% { 
    transform: translateY(-15px) rotate(1deg) scale(1.02); 
  }
  50% { 
    transform: translateY(-25px) rotate(0deg) scale(1.05); 
  }
  75% { 
    transform: translateY(-15px) rotate(-1deg) scale(1.02); 
  }
}

.animate-float-enhanced {
  animation: float-enhanced 6s ease-in-out infinite;
}

/* Phone mockup styling */
.phone-mockup {
  background: linear-gradient(145deg, #1a1a1a, #2d2d2d);
  box-shadow: 
    0 20px 40px rgba(0, 0, 0, 0.3),
    inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

/* Enhanced button hover effects */
.btn-enhanced {
  position: relative;
  overflow: hidden;
}

.btn-enhanced::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.6s;
}

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

/* Responsive adjustments for the new design */
@media (max-width: 1024px) {
  .hero-gradient {
    background: linear-gradient(135deg, #7c3aed 0%, #ff7ab6 70%, #f97316 100%);
  }
}

@media (max-width: 768px) {
  .phone-mockup {
    width: 200px;
    height: 250px;
  }
  
  .ai-overlay::before {
    background-size: 15px 15px;
  }
}