/* Final call to action shared by the homepage and the services pages. */

.final-cta {
    padding: 3rem 0 1rem;
}

.service-vector-hero-cta {
    max-width: 600px;
    margin-right: auto;
    margin-left: auto;
    padding: 2rem;
    background:
        radial-gradient(
            ellipse at top right,
            rgba(var(--secondary-rgb), 0.16),
            transparent 70%
        ),
        var(--card-bg);
    border: 1.5px solid rgba(var(--secondary-rgb), 0.45);
    border-radius: var(--border-radius-lg);
    box-shadow:
        var(--shadow-lg),
        0 0 32px rgba(var(--secondary-rgb), 0.12);
    text-align: left;
}

.service-vector-hero-cta__head {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    margin-bottom: 1rem;
}

.service-vector-hero-cta__avatar {
    position: relative;
    flex: 0 0 auto;
    width: 68px;
    height: 68px;
    padding: 4px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(var(--secondary-rgb), 0.65);
    border-radius: 1.2rem;
    background: linear-gradient(
        145deg,
        rgba(var(--secondary-rgb), 0.24),
        rgba(var(--secondary-rgb), 0.06)
    );
    color: var(--secondary-soft);
    box-shadow:
        0 0 0 4px rgba(var(--secondary-rgb), 0.06),
        0 8px 24px rgba(var(--secondary-rgb), 0.18);
    font-size: 2rem;
}

.service-vector-hero-cta__avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 0.8rem;
    display: block;
}

.service-vector-hero-cta__desc {
    color: var(--text-color);
    font-size: 0.98rem;
    line-height: 1.6;
    margin-bottom: 1.5rem;
}

.service-vector-hero-cta .btn {
    min-height: 52px;
    font-size: 1.05rem;
    font-weight: var(--font-weight-semibold);
}

@media (max-width: 767.98px) {
    .service-vector-hero-cta {
        padding: 1.5rem;
    }
}
