.dgf-b360-cta {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    border-top: 1px solid rgba(255,255,255,.08);
    color: var(--dgf-color-dark-text);
    background:
        radial-gradient(circle at 12% 18%, rgba(245,130,31,.14), transparent 30%),
        radial-gradient(circle at 92% 82%, rgba(125,168,255,.08), transparent 34%),
        linear-gradient(145deg, var(--dgf-color-dark-950), var(--dgf-color-dark-800));
}

.dgf-b360-cta::before,
.dgf-b360-cta::after {
    content: '';
    position: absolute;
    z-index: -1;
    pointer-events: none;
}

.dgf-b360-cta::before {
    inset: 0;
    opacity: .26;
    background-image:
        linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
    background-size: 64px 64px;
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 18%, #000 82%, transparent);
    mask-image: linear-gradient(90deg, transparent, #000 18%, #000 82%, transparent);
}

.dgf-b360-cta::after {
    top: -210px;
    right: clamp(-230px, -10vw, -90px);
    width: 460px;
    height: 460px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 50%;
}

.dgf-b360-cta__inner {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(250px, 320px);
    grid-template-areas:
        'title actions'
        'copy actions';
    align-items: center;
    column-gap: clamp(52px, 7vw, 104px);
    padding: clamp(76px, 8vw, 106px) 0;
}

.dgf-b360-cta__inner .dgf-b360-section-title {
    grid-area: title;
    max-width: 790px;
    margin: 0;
    color: #fff;
    font-size: clamp(36px, 4.4vw, 58px);
    line-height: 1.03;
}

.dgf-b360-cta__inner .dgf-b360-section-title em {
    color: var(--dgf-color-primary);
}

.dgf-b360-cta__inner .dgf-b360-section-copy {
    grid-area: copy;
    max-width: 720px;
    margin: 20px 0 0;
    color: var(--dgf-color-dark-body);
    font-size: clamp(16px, 1.45vw, 18px);
    line-height: 1.65;
}

.dgf-b360-cta__actions {
    grid-area: actions;
    display: grid;
    align-self: stretch;
    align-items: center;
    padding-left: clamp(34px, 4vw, 62px);
    border-left: 1px solid rgba(255,255,255,.12);
}

.dgf-b360-cta__actions .dgf-b360-btn {
    width: 100%;
    min-height: 58px;
    padding-inline: 28px;
    font-size: 16px;
    box-shadow: 0 18px 38px -22px rgba(245,130,31,.70);
}

@media (max-width: 820px) {
    .dgf-b360-cta__inner {
        grid-template-columns: 1fr;
        grid-template-areas:
            'title'
            'copy'
            'actions';
        padding: 72px 0 76px;
    }

    .dgf-b360-cta__inner .dgf-b360-section-title {
        max-width: 680px;
    }

    .dgf-b360-cta__inner .dgf-b360-section-copy {
        max-width: 620px;
    }

    .dgf-b360-cta__actions {
        display: block;
        max-width: 340px;
        margin-top: 30px;
        padding-left: 0;
        border-left: 0;
    }
}

@media (max-width: 640px) {
    .dgf-b360-cta::before { background-size: 46px 46px; }
    .dgf-b360-cta__inner { padding: 64px 0 68px; }
    .dgf-b360-cta__inner .dgf-b360-section-title { font-size: clamp(32px, 10.2vw, 42px); }
    .dgf-b360-cta__inner .dgf-b360-section-copy { margin-top: 18px; font-size: 16px; }
    .dgf-b360-cta__actions { max-width: none; margin-top: 26px; }
}
