/* Title */
.feature-title {
    font-size: clamp(2.3rem, 4vw, 3.3rem);
    font-weight: 700;
    letter-spacing: -0.02em;
    color: #0f172a;
}

/* Cards */
.feature-card {
    position: relative;
    padding: 26px 28px;
    border-radius: 18px;
    background: white;
    font-weight: 500;
    color: #1f2937;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.06);
    transition: all .35s ease;
    cursor: default;
    overflow: hidden;
}

/* glow effect */
.feature-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(120deg, #2563eb, #06b6d4);
    opacity: 0;
    transition: .35s;
    z-index: 0;
}

.feature-card:hover::before {
    opacity: .08;
}

/* lift */
.feature-card:hover {
    transform: translateY(-8px) scale(1.02);
    box-shadow: 0 25px 60px rgba(0, 0, 0, 0.15);
}

/* background blobs */
.feature-blob {
    position: absolute;
    width: 550px;
    height: 550px;
    filter: blur(120px);
    opacity: .25;
}

.feature-blob.left {
    background: #60a5fa;
    left: -150px;
    top: -120px;
}

.feature-blob.right {
    background: #22d3ee;
    right: -150px;
    bottom: -120px;
}

/* reveal base */
.reveal {
    opacity: 0;
    transform: translateY(40px);
}