
@keyframes breathe-enhanced-910de68b {
0%,
    100% {
        transform: scale(1) translateY(0px);
}
50% {
        transform: scale(1.08) translateY(-6px);
}
}

/* Enhanced glow pulse animation */
@keyframes glow-pulse-enhanced-910de68b {
0%,
    100% {
        opacity: 0.4;
        transform: scale(1);
}
50% {
        opacity: 0.8;
        transform: scale(1.15);
}
}

/* Secondary glow animation */
@keyframes glow-pulse-secondary-910de68b {
0%,
    100% {
        opacity: 0.2;
        transform: scale(1.1);
}
50% {
        opacity: 0.5;
        transform: scale(1.25);
}
}

/* Background pulse animation */
@keyframes pulse-bg-910de68b {
0%,
    100% {
        opacity: 0.8;
}
50% {
        opacity: 0.4;
}
}

/* Floating animations for background elements */
@keyframes float-1-910de68b {
0%,
    100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.05;
}
25% {
        transform: translateY(-20px) rotate(5deg);
        opacity: 0.08;
}
50% {
        transform: translateY(-10px) rotate(0deg);
        opacity: 0.03;
}
75% {
        transform: translateY(-30px) rotate(-5deg);
        opacity: 0.06;
}
}
@keyframes float-2-910de68b {
0%,
    100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.03;
}
33% {
        transform: translateY(-15px) rotate(10deg);
        opacity: 0.06;
}
66% {
        transform: translateY(-25px) rotate(-5deg);
        opacity: 0.02;
}
}
@keyframes float-3-910de68b {
0%,
    100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.04;
}
40% {
        transform: translateY(-18px) rotate(-8deg);
        opacity: 0.07;
}
80% {
        transform: translateY(-12px) rotate(3deg);
        opacity: 0.02;
}
}
@keyframes float-4-910de68b {
0%,
    100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.02;
}
50% {
        transform: translateY(-22px) rotate(15deg);
        opacity: 0.05;
}
}

/* Pulse animations for geometric shapes */
@keyframes pulse-slow-910de68b {
0%,
    100% {
        opacity: 0.1;
        transform: scale(1);
}
50% {
        opacity: 0.3;
        transform: scale(1.2);
}
}
@keyframes pulse-slower-910de68b {
0%,
    100% {
        opacity: 0.15;
        transform: scale(1);
}
50% {
        opacity: 0.4;
        transform: scale(1.5);
}
}

/* Animation classes */
.animate-breathe-enhanced[data-v-910de68b] {
    animation: breathe-enhanced-910de68b 3.5s ease-in-out infinite;
}
.animate-glow-pulse-enhanced[data-v-910de68b] {
    animation: glow-pulse-enhanced-910de68b 2.5s ease-in-out infinite;
}
.animate-glow-pulse-secondary[data-v-910de68b] {
    animation: glow-pulse-secondary-910de68b 3s ease-in-out infinite 0.5s;
}
.animate-pulse-bg[data-v-910de68b] {
    animation: pulse-bg-910de68b 4s ease-in-out infinite;
}
.animate-float-1[data-v-910de68b] {
    animation: float-1-910de68b 8s ease-in-out infinite;
}
.animate-float-2[data-v-910de68b] {
    animation: float-2-910de68b 10s ease-in-out infinite 1s;
}
.animate-float-3[data-v-910de68b] {
    animation: float-3-910de68b 9s ease-in-out infinite 2s;
}
.animate-float-4[data-v-910de68b] {
    animation: float-4-910de68b 7s ease-in-out infinite 3s;
}
.animate-pulse-slow[data-v-910de68b] {
    animation: pulse-slow-910de68b 4s ease-in-out infinite;
}
.animate-pulse-slower[data-v-910de68b] {
    animation: pulse-slower-910de68b 6s ease-in-out infinite 1s;
}

/* Gradient background utility */
.bg-gradient-radial[data-v-910de68b] {
    background: radial-gradient(circle, var(--tw-gradient-stops));
}

/* Typewriter effect */
.fade-text[data-v-910de68b] {
    display: inline-block;
    opacity: 0;
    animation: fadeInOut-910de68b 2s ease-in-out 0.5s forwards;
}

/* Fade in/out animation */
@keyframes fadeInOut-910de68b {
0% {
        opacity: 0;
}
15% {
        opacity: 1;
}
35% {
        opacity: 0.3;
}
50% {
        opacity: 1;
}
70% {
        opacity: 0.4;
}
85% {
        opacity: 1;
}
100% {
        opacity: 1;
}
}

/* Smooth exit animations */
.fade-enter-active[data-v-910de68b],
.fade-leave-active[data-v-910de68b] {
    transition: all 1.5s cubic-bezier(0.4, 0, 0.2, 1);
}
.fade-enter-from[data-v-910de68b],
.fade-leave-to[data-v-910de68b] {
    opacity: 0;
    transform: scale(0.8);
}
.fade-enter-to[data-v-910de68b],
.fade-leave-from[data-v-910de68b] {
    opacity: 1;
    transform: scale(1);
}

/* Proxima Nova font is now imported globally in app.css via TypeKit */

/* Enhanced breathing animation for larger logo */
@keyframes breathe-enhanced-60e15957 {
0%,
    100% {
        transform: scale(1) translateY(0px);
}
50% {
        transform: scale(1.08) translateY(-6px);
}
}

/* Enhanced glow pulse animation using CSS variables */
@keyframes glow-pulse-enhanced-60e15957 {
0%,
    100% {
        opacity: 0.4;
        transform: scale(1);
}
50% {
        opacity: 0.8;
        transform: scale(1.15);
}
}

/* Secondary glow animation using CSS variables */
@keyframes glow-pulse-secondary-60e15957 {
0%,
    100% {
        opacity: 0.2;
        transform: scale(1.1);
}
50% {
        opacity: 0.5;
        transform: scale(1.25);
}
}

/* Background pulse animation */
@keyframes pulse-bg-60e15957 {
0%,
    100% {
        opacity: 0.8;
}
50% {
        opacity: 0.4;
}
}

/* Floating animations for background elements */
@keyframes float-1-60e15957 {
0%,
    100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.2;
}
25% {
        transform: translateY(-20px) rotate(5deg);
        opacity: 0.25;
}
50% {
        transform: translateY(-10px) rotate(0deg);
        opacity: 0.15;
}
75% {
        transform: translateY(-30px) rotate(-5deg);
        opacity: 0.22;
}
}
@keyframes float-2-60e15957 {
0%,
    100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.15;
}
33% {
        transform: translateY(-15px) rotate(10deg);
        opacity: 0.18;
}
66% {
        transform: translateY(-25px) rotate(-5deg);
        opacity: 0.12;
}
}
@keyframes float-3-60e15957 {
0%,
    100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.18;
}
50% {
        transform: translateY(-20px) rotate(8deg);
        opacity: 0.22;
}
}
@keyframes float-4-60e15957 {
0%,
    100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.12;
}
40% {
        transform: translateY(-18px) rotate(-8deg);
        opacity: 0.16;
}
80% {
        transform: translateY(-12px) rotate(4deg);
        opacity: 0.14;
}
}

/* Pulse animations with different timings */
@keyframes pulse-slow-60e15957 {
0%,
    100% {
        opacity: 0.4;
        transform: scale(1);
}
50% {
        opacity: 0.8;
        transform: scale(1.2);
}
}
@keyframes pulse-slower-60e15957 {
0%,
    100% {
        opacity: 0.5;
        transform: scale(1);
}
50% {
        opacity: 0.9;
        transform: scale(1.3);
}
}

/* Apply animations */
.animate-breathe-enhanced[data-v-60e15957] {
    animation: breathe-enhanced-60e15957 3s ease-in-out infinite;
}
.animate-glow-pulse-enhanced[data-v-60e15957] {
    animation: glow-pulse-enhanced-60e15957 2.5s ease-in-out infinite;
}
.animate-glow-pulse-secondary[data-v-60e15957] {
    animation: glow-pulse-secondary-60e15957 3s ease-in-out infinite 0.5s;
}
.animate-pulse-bg[data-v-60e15957] {
    animation: pulse-bg-60e15957 6s ease-in-out infinite;
}
.animate-float-1[data-v-60e15957] {
    animation: float-1-60e15957 8s ease-in-out infinite;
}
.animate-float-2[data-v-60e15957] {
    animation: float-2-60e15957 10s ease-in-out infinite 1s;
}
.animate-float-3[data-v-60e15957] {
    animation: float-3-60e15957 12s ease-in-out infinite 2s;
}
.animate-float-4[data-v-60e15957] {
    animation: float-4-60e15957 9s ease-in-out infinite 1.5s;
}
.animate-pulse-slow[data-v-60e15957] {
    animation: pulse-slow-60e15957 5s ease-in-out infinite;
}
.animate-pulse-slower[data-v-60e15957] {
    animation: pulse-slower-60e15957 7s ease-in-out infinite 2s;
}

/* Custom gradient for radial background */
.bg-gradient-radial[data-v-60e15957] {
    background: radial-gradient(circle, var(--tw-gradient-stops));
}
