.bkbg-heatmap-wrap { box-sizing: border-box; }
/* heading specificity (0,2,0) beats editor theme h3 rules */
.bkbg-heatmap-wrap h3.bkbg-heatmap-title {
    font-family:      var(--bkbg-hm-tt-font-family, inherit);
    font-size:        var(--bkbg-hm-tt-font-size-d, 18px);
    font-weight:      var(--bkbg-hm-tt-font-weight, 700);
    line-height:      var(--bkbg-hm-tt-line-height-d, 1.2);
    font-style:       var(--bkbg-hm-tt-font-style, normal);
    text-transform:   var(--bkbg-hm-tt-text-transform, none);
    text-decoration:  var(--bkbg-hm-tt-text-decoration, none);
    letter-spacing:   var(--bkbg-hm-tt-letter-spacing-d);
    word-spacing:     var(--bkbg-hm-tt-word-spacing-d);
    margin:           0 0 .6em;
}
.bkbg-heatmap-svg svg { display: block; }

/* ── Responsive typography ──────────────────────────────── */
@media (max-width: 1024px) {
    .bkbg-heatmap-wrap h3.bkbg-heatmap-title {
        font-size:       var(--bkbg-hm-tt-font-size-t, var(--bkbg-hm-tt-font-size-d, 18px));
        line-height:     var(--bkbg-hm-tt-line-height-t, var(--bkbg-hm-tt-line-height-d, 1.2));
        letter-spacing:  var(--bkbg-hm-tt-letter-spacing-t, var(--bkbg-hm-tt-letter-spacing-d));
        word-spacing:    var(--bkbg-hm-tt-word-spacing-t, var(--bkbg-hm-tt-word-spacing-d));
    }
}
@media (max-width: 767px) {
    .bkbg-heatmap-wrap h3.bkbg-heatmap-title {
        font-size:       var(--bkbg-hm-tt-font-size-m, var(--bkbg-hm-tt-font-size-t, var(--bkbg-hm-tt-font-size-d, 18px)));
        line-height:     var(--bkbg-hm-tt-line-height-m, var(--bkbg-hm-tt-line-height-t, var(--bkbg-hm-tt-line-height-d, 1.2)));
        letter-spacing:  var(--bkbg-hm-tt-letter-spacing-m, var(--bkbg-hm-tt-letter-spacing-t, var(--bkbg-hm-tt-letter-spacing-d)));
        word-spacing:    var(--bkbg-hm-tt-word-spacing-m, var(--bkbg-hm-tt-word-spacing-t, var(--bkbg-hm-tt-word-spacing-d)));
    }
}
