/* Guarantee Section */
.bkbg-guarantee-section-wrap { box-sizing: border-box; }

.bkbg-gs-inner {
    max-width: var(--bkbg-gs-max, 1100px);
    margin: 0 auto;
    display: flex;
    align-items: center;
    gap: 64px;
    justify-content: center;
}

.bkbg-gs-inner.centered { flex-direction: column; text-align: center; }

.bkbg-gs-seal {
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    text-align: center;
    gap: 4px;
}

.bkbg-gs-seal-icon  { line-height: 1; }
.bkbg-gs-seal-icon svg { width: 1em; height: 1em; fill: currentColor; }
.bkbg-gs-seal-icon .dashicons { font-size: inherit; width: 1em; height: 1em; line-height: 1; }
.bkbg-gs-seal-icon .bkbg-icon-img { width: 1em; height: 1em; object-fit: contain; }
.bkbg-gs-seal-label { font-weight: 800; line-height: 1.1; }
.bkbg-gs-seal-sub   { line-height: 1.3; white-space: pre-line; opacity: .9; }

.bkbg-gs-text {
    display: flex;
    flex-direction: column;
    gap: 20px;
    max-width: 560px;
}

.bkbg-gs-heading {
    margin: 0;
    font-family: var(--bkbg-guar-hl-font-family, inherit);
    font-size: var(--bkbg-guar-hl-font-size-d, 36px);
    font-weight: var(--bkbg-guar-hl-font-weight, 700);
    font-style: var(--bkbg-guar-hl-font-style, normal);
    text-decoration: var(--bkbg-guar-hl-text-decoration, none);
    text-transform: var(--bkbg-guar-hl-text-transform, none);
    line-height: var(--bkbg-guar-hl-line-height-d, 1.2);
    letter-spacing: var(--bkbg-guar-hl-letter-spacing-d, normal);
    word-spacing: var(--bkbg-guar-hl-word-spacing-d, normal);
}

/* Heading specificity (0,2,0) beats editor theme h2 rules */
.bkbg-gs-text h2.bkbg-gs-heading {
    font-family: var(--bkbg-guar-hl-font-family, inherit);
    font-size: var(--bkbg-guar-hl-font-size-d, 36px);
    font-weight: var(--bkbg-guar-hl-font-weight, 700);
    font-style: var(--bkbg-guar-hl-font-style, normal);
    text-decoration: var(--bkbg-guar-hl-text-decoration, none);
    text-transform: var(--bkbg-guar-hl-text-transform, none);
    line-height: var(--bkbg-guar-hl-line-height-d, 1.2);
    letter-spacing: var(--bkbg-guar-hl-letter-spacing-d, normal);
    word-spacing: var(--bkbg-guar-hl-word-spacing-d, normal);
    margin: 0;
}

.bkbg-gs-body {
    margin: 0;
    font-family: var(--bkbg-guar-bd-font-family, inherit);
    font-size: var(--bkbg-guar-bd-font-size-d, 17px);
    font-weight: var(--bkbg-guar-bd-font-weight, 400);
    font-style: var(--bkbg-guar-bd-font-style, normal);
    text-decoration: var(--bkbg-guar-bd-text-decoration, none);
    text-transform: var(--bkbg-guar-bd-text-transform, none);
    line-height: var(--bkbg-guar-bd-line-height-d, 1.7);
    letter-spacing: var(--bkbg-guar-bd-letter-spacing-d, normal);
    word-spacing: var(--bkbg-guar-bd-word-spacing-d, normal);
}

.bkbg-gs-bullets {
    list-style: none;
    margin: 0; padding: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.bkbg-gs-bullet {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: var(--bkbg-guar-bd-font-size-d, 17px);
    line-height: var(--bkbg-guar-bd-line-height-d, 1.7);
}

.bkbg-gs-check { font-weight: 700; font-size: 18px; flex-shrink: 0; line-height: 1.3; }

.bkbg-gs-cta {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 14px 32px;
    border-radius: 8px;
    font-weight: 700;
    font-size: var(--bkbg-guar-bd-font-size-d, 17px);
    text-decoration: none;
    transition: opacity .2s, transform .15s;
    align-self: flex-start;
}

.centered .bkbg-gs-cta { align-self: center; }
.bkbg-gs-cta:hover { opacity: .88; transform: translateY(-1px); }

@media (max-width: 768px) {
    .bkbg-gs-inner { flex-direction: column; }
}

/* Typography responsive – tablet */
@media (max-width: 1024px) {
    .bkbg-gs-text h2.bkbg-gs-heading {
        font-size: var(--bkbg-guar-hl-font-size-t, var(--bkbg-guar-hl-font-size-d, 36px));
        line-height: var(--bkbg-guar-hl-line-height-t, var(--bkbg-guar-hl-line-height-d, 1.2));
        letter-spacing: var(--bkbg-guar-hl-letter-spacing-t, var(--bkbg-guar-hl-letter-spacing-d, normal));
        word-spacing: var(--bkbg-guar-hl-word-spacing-t, var(--bkbg-guar-hl-word-spacing-d, normal));
    }
    .bkbg-gs-body,
    .bkbg-gs-bullet,
    .bkbg-gs-cta {
        font-size: var(--bkbg-guar-bd-font-size-t, var(--bkbg-guar-bd-font-size-d, 17px));
            line-height: var(--bkbg-guar-bd-line-height-t, var(--bkbg-guar-bd-line-height-d, 1.7));
            letter-spacing: var(--bkbg-guar-bd-letter-spacing-t, var(--bkbg-guar-bd-letter-spacing-d, normal));
            word-spacing: var(--bkbg-guar-bd-word-spacing-t, var(--bkbg-guar-bd-word-spacing-d, normal));
    }
    .bkbg-gs-body {
        line-height: var(--bkbg-guar-bd-line-height-t, var(--bkbg-guar-bd-line-height-d, 1.7));
        letter-spacing: var(--bkbg-guar-bd-letter-spacing-t, var(--bkbg-guar-bd-letter-spacing-d, normal));
        word-spacing: var(--bkbg-guar-bd-word-spacing-t, var(--bkbg-guar-bd-word-spacing-d, normal));
    }
}

/* Typography responsive – mobile */
@media (max-width: 767px) {
    .bkbg-gs-text h2.bkbg-gs-heading {
        font-size: var(--bkbg-guar-hl-font-size-m, var(--bkbg-guar-hl-font-size-t, var(--bkbg-guar-hl-font-size-d, 36px)));
        line-height: var(--bkbg-guar-hl-line-height-m, var(--bkbg-guar-hl-line-height-t, var(--bkbg-guar-hl-line-height-d, 1.2)));
        letter-spacing: var(--bkbg-guar-hl-letter-spacing-m, var(--bkbg-guar-hl-letter-spacing-t, var(--bkbg-guar-hl-letter-spacing-d, normal)));
        word-spacing: var(--bkbg-guar-hl-word-spacing-m, var(--bkbg-guar-hl-word-spacing-t, var(--bkbg-guar-hl-word-spacing-d, normal)));
    }
    .bkbg-gs-body,
    .bkbg-gs-bullet,
    .bkbg-gs-cta {
        font-size: var(--bkbg-guar-bd-font-size-m, var(--bkbg-guar-bd-font-size-t, var(--bkbg-guar-bd-font-size-d, 17px)));
            line-height: var(--bkbg-guar-bd-line-height-m, var(--bkbg-guar-bd-line-height-t, var(--bkbg-guar-bd-line-height-d, 1.7)));
            letter-spacing: var(--bkbg-guar-bd-letter-spacing-m, var(--bkbg-guar-bd-letter-spacing-t, var(--bkbg-guar-bd-letter-spacing-d, normal)));
            word-spacing: var(--bkbg-guar-bd-word-spacing-m, var(--bkbg-guar-bd-word-spacing-t, var(--bkbg-guar-bd-word-spacing-d, normal)));
    }
    .bkbg-gs-body {
        line-height: var(--bkbg-guar-bd-line-height-m, var(--bkbg-guar-bd-line-height-t, var(--bkbg-guar-bd-line-height-d, 1.7)));
        letter-spacing: var(--bkbg-guar-bd-letter-spacing-m, var(--bkbg-guar-bd-letter-spacing-t, var(--bkbg-guar-bd-letter-spacing-d, normal)));
        word-spacing: var(--bkbg-guar-bd-word-spacing-m, var(--bkbg-guar-bd-word-spacing-t, var(--bkbg-guar-bd-word-spacing-d, normal)));
    }
}
