/* Custom styles for the minimal theme and bloom effect */
body {
    font-family: 'Inter', sans-serif;
    background-color: #000000;
    color: #ffffff;
    overflow-x: hidden;
}

.bloom-container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: -1;
    filter: blur(100px);
}

.bloom-shape {
    position: absolute;
    border-radius: 50%;
    opacity: 0.3;
}

.bloom1 {
    width: 500px;
    height: 500px;
    background: radial-gradient(circle, rgba(93, 2, 255, 0.5) 0%, rgba(93, 2, 255, 0) 70%);
    top: 10%;
    left: 10%;
    animation: move1 20s infinite alternate;
}

.bloom2 {
    width: 400px;
    height: 400px;
    background: radial-gradient(circle, rgba(0, 255, 194, 0.5) 0%, rgba(0, 255, 194, 0) 70%);
    bottom: 5%;
    right: 15%;
    animation: move2 25s infinite alternate;
}

.bloom3 {
    width: 300px;
    height: 300px;
    background: radial-gradient(circle, rgba(255, 87, 51, 0.4) 0%, rgba(255,87,51,0) 70%);
    top: 50%;
    right: 5%;
    animation: move3 18s infinite alternate;
}

@keyframes move1 {
    from { transform: translate(0, 0) scale(1); }
    to { transform: translate(100px, 50px) scale(1.2); }
}

@keyframes move2 {
    from { transform: translate(0, 0) scale(1); }
    to { transform: translate(-80px, -60px) scale(1.1); }
}

@keyframes move3 {
    from { transform: translate(0, 0) scale(1); }
    to { transform: translate(40px, -90px) scale(1.3); }
}

.glass-card {
    background: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.nav-link {
    transition: color 0.3s;
}
.nav-link:hover, .nav-link.active {
    color: #a78bfa; /* A soft violet for hover/active state */
}

.btn-primary {
    background-color: #ffffff;
    color: #000000;
    transition: all 0.3s ease;
}
.btn-primary:hover {
    background-color: #a78bfa;
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 10px 20px rgba(167, 139, 250, 0.2);
}
.payment-icon {
    height: 24px;
    filter: grayscale(1) brightness(1.5);
    opacity: 0.8;
    transition: all 0.3s;
}
.payment-icon:hover {
    filter: grayscale(0) brightness(1);
    opacity: 1;
}

/* Style for the new premium headline */
.premium-headline {
    font-size: 6rem; /* text-9xl */
    font-weight: 800; /* extrabold */
    letter-spacing: -0.05em; /* tracking-tighter */
    color: rgba(255, 255, 255, 0.9);
    margin-bottom: 0.5rem; /* space between it and the sub-headline */
}

/* Animation for page transitions */
@keyframes fadeIn {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}

.fade-in {
  animation: fadeIn 0.4s ease-in-out;
}
