.zynovo-portfolio-generic a.edgtf-btn {
    min-height: 46px;
    width: auto !important;
    padding: 11px 18px !important;
    border-color: var(--z-ink) !important;
    border-radius: 999px !important;
    color: #ffffff !important;
    background: var(--z-ink) !important;
    box-shadow: none !important;
    font: 750 14px/1.4 Inter, ui-sans-serif, sans-serif !important;
}

/* Match the compact spacing used by the Burns Tools case-study CTA. */
.zynovo-portfolio-generic .vc_row:has(a.edgtf-btn) .vc_empty_space {
    height: 30px !important;
}

.zynovo-portfolio-generic a.edgtf-btn > .edgtf-btn-text:first-child::before {
    content: none !important;
}

.zynovo-portfolio-generic a.edgtf-btn > .edgtf-btn-text:first-child {
    padding-left: 0 !important;
}

.zynovo-portfolio-generic a.edgtf-btn > .edgtf-btn-text:first-child::after {
    content: " →";
}

.zynovo-portfolio-generic a.edgtf-btn .edgtf-btn-cover {
    display: none !important;
}

.zynovo-portfolio-generic a.edgtf-btn.edgtf-btn-with-cover-fx > .edgtf-btn-text:not(.edgtf-btn-cover-text),
.zynovo-portfolio-generic a.edgtf-btn.edgtf-btn-with-cover-fx:hover > .edgtf-btn-text:not(.edgtf-btn-cover-text),
.zynovo-portfolio-generic a.edgtf-btn.edgtf-btn-with-cover-fx:focus > .edgtf-btn-text:not(.edgtf-btn-cover-text) {
    opacity: 1 !important;
    color: #ffffff !important;
    transform: none !important;
    transition: none !important;
}

.zynovo-portfolio-generic .z-portfolio-cta {
    padding: 92px 0;
    color: #ffffff;
    background: var(--z-ink);
}

.zynovo-portfolio-generic .z-portfolio-cta h2 {
    max-width: 900px;
    margin: 0 0 24px;
    color: #ffffff;
    font: 500 clamp(40px, 5vw, 62px)/1.02 Inter, ui-sans-serif, sans-serif;
    letter-spacing: -0.048em;
    text-transform: none;
}

.zynovo-portfolio-generic .z-portfolio-cta p {
    max-width: 860px;
    margin: 0;
    color: #b9bec8;
    font: 400 21px/1.55 Inter, ui-sans-serif, sans-serif;
}

.zynovo-portfolio-generic .z-portfolio-cta .z-portfolio-container > p {
    color: #b9bec8 !important;
    font: 400 21px/1.55 Inter, ui-sans-serif, sans-serif !important;
}

.zynovo-portfolio-generic .vc_row:has(+ .vc_row .z-portfolio-cta) {
    padding-bottom: 84px !important;
}

.zynovo-portfolio-generic .edgtf-row-grid-section-wrapper:has(+ .vc_row .z-portfolio-cta) {
    padding-bottom: 84px !important;
}

.zynovo-portfolio-generic .z-portfolio-cta-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 18px;
    margin-top: 30px;
}

.zynovo-portfolio-generic .z-portfolio-cta-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 11px 18px;
    border-radius: 999px;
    color: var(--z-ink);
    background: #ffffff;
    font: 750 14px/1.4 Inter, ui-sans-serif, sans-serif;
    text-decoration: none !important;
}

.zynovo-portfolio-generic .z-portfolio-back-link {
    color: #ffffff;
    font: 700 14px/1.5 Inter, ui-sans-serif, sans-serif;
    text-decoration: none !important;
}

@media (max-width: 680px) {
    .zynovo-portfolio-generic .z-portfolio-cta {
        padding: 68px 0;
    }

    .zynovo-portfolio-generic .z-portfolio-cta p {
        font-size: 18px;
        line-height: 1.6;
    }
}
