/* Gold card style used across site */
.card-gold {
    background-color: rgb(2 6 23);
    /* slate-950 to match section background */
    border: none !important;
    /* Force removal of gold border */
    border-radius: 1rem;
    /* rounded-2xl */
    box-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.4), 0 4px 6px -4px rgb(0 0 0 / 0.4);
    /* shadow-lg shadow-black/40 */
    transition-property: transform, box-shadow;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.card-gold:hover {
    transform: translateY(-0.25rem);
    /* -translate-y-1 */
    box-shadow: 0 10px 15px -3px rgb(250 204 21 / 0.4), 0 4px 6px -4px rgb(250 204 21 / 0.4);
    /* shadow-yellow-400/40 */
}

/* Killer Button Style - Reflection */
.btn-reflection {
    font-size: 1.2rem;
    padding: 1rem 2.5rem;
    border: none;
    outline: none;
    border-radius: 0.4rem;
    cursor: pointer;
    text-transform: uppercase;
    background-color: rgb(14, 14, 26);
    color: rgb(234, 234, 234);
    font-weight: 700;
    transition: 0.6s;
    box-shadow: 0px 0px 60px #1f4c65;
    -webkit-box-reflect: below 10px linear-gradient(to bottom, rgba(0, 0, 0, 0.0), rgba(0, 0, 0, 0.4));
}

.btn-reflection:active {
    scale: 0.92;
}

.btn-reflection:hover {
    background: rgb(2, 29, 78);
    background: linear-gradient(270deg, rgba(2, 29, 78, 0.681) 0%, rgba(31, 215, 232, 0.873) 60%);
    color: rgb(4, 4, 38);
}

/* Outline variant with reflection */
.btn-reflection-outline {
    font-size: 1.2rem;
    padding: 1rem 2.5rem;
    border: 2px solid rgba(31, 215, 232, 0.5);
    outline: none;
    border-radius: 0.4rem;
    cursor: pointer;
    text-transform: uppercase;
    background-color: transparent;
    color: rgb(234, 234, 234);
    font-weight: 700;
    transition: 0.6s;
    box-shadow: 0px 0px 60px rgba(31, 215, 232, 0.3);
    -webkit-box-reflect: below 10px linear-gradient(to bottom, rgba(0, 0, 0, 0.0), rgba(0, 0, 0, 0.4));
}

.btn-reflection-outline:active {
    scale: 0.92;
}

.btn-reflection-outline:hover {
    background: linear-gradient(270deg, rgba(2, 29, 78, 0.681) 0%, rgba(31, 215, 232, 0.873) 60%);
    border-color: rgba(31, 215, 232, 0.9);
    color: rgb(4, 4, 38);
}

/* Agent Float Animation */
@keyframes agent-float {

    0%,
    100% {
        transform: translateY(0);
        box-shadow: 0 0 18px rgba(250, 204, 21, 0.18);
    }

    50% {
        transform: translateY(-2px);
        box-shadow: 0 0 26px rgba(250, 204, 21, 0.32);
    }
}

.animate-agent-float {
    animation: agent-float 3.2s ease-in-out infinite;
}

/* Icon Pulse Animation */
@keyframes icon-pulse {

    0%,
    100% {
        transform: scale(1);
        opacity: 1;
    }

    50% {
        transform: scale(1.1);
        opacity: 0.85;
    }
}

.animate-icon-pulse {
    animation: icon-pulse 2s ease-in-out infinite;
}

/* Icon Gentle Spin */
@keyframes icon-spin-gentle {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

.animate-icon-spin {
    animation: icon-spin-gentle 20s linear infinite;
}

/* Icon Bounce */
@keyframes icon-bounce {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-4px);
    }
}

.animate-icon-bounce {
    animation: icon-bounce 2.5s ease-in-out infinite;
}