@charset "utf-8";

:root {
    --primary: #007bff;
}

/* 버튼 ***********************************************/
.btn-glass {
    display: inline-flex;
    align-items: center;
    gap: 16px;

    padding: 18px 28px;
    border-radius: 999px;

    background: rgba(255,255,255,0.18);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);

    color: #fff;
    font-size: 18px;
    font-weight: 600;
    letter-spacing: -0.02em;
    text-decoration: none;

    transition: 
        background 0.25s ease,
        transform 0.25s ease;
}

.btn-glass.primary {
    background: var(--primary);
}

.btn-glass .arrow {
    font-size: 1.2rem;
    transition: transform 0.25s ease;
}

/* hover */
.btn-glass:hover {
    background: rgba(255,255,255,0.28);
    transform: translateY(-1px);
}

.btn-glass:hover .arrow {
    transform: translateX(4px);
}

.btn-glass.primary:hover {
    background: var(--primary);
}

/* object ***********************************************/
.feature-badge {
    width: 72px;
    height: 72px;
    margin: 0 auto 40px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: linear-gradient(145deg, #4f8cff, #2f5cff);

    border-radius: 42% 58% 55% 45% / 48% 44% 56% 52%;

    box-shadow:
        0 12px 30px rgba(0, 0, 0, 0.28),
        0 0 0 0 rgba(79, 140, 255, 0.6);

    animation: badge-pulse 2.8s cubic-bezier(.4, 0, .2, 1) infinite;

    will-change: transform, box-shadow;
}

.feature-badge .badge-icon {
    font-size: 28px;
    font-weight: 700;
    color: #ffe600;
    line-height: 1;
}

@keyframes badge-pulse {
    0% {
        transform: scale(1);
        box-shadow:
            0 0 0 0 rgba(79, 140, 255, 0.6),
            0 12px 30px rgba(0, 0, 0, 0.28);
    }

    50% {
        transform: scale(1.065);
        box-shadow:
            0 0 0 14px rgba(79, 140, 255, 0),
            0 18px 42px rgba(0, 0, 0, 0.38);
    }

    100% {
        transform: scale(1);
        box-shadow:
            0 0 0 0 rgba(79, 140, 255, 0),
            0 12px 30px rgba(0, 0, 0, 0.28);
    }
}