
@mixin cxb-heading(
   $name: 'heading',
   $besm: $cx-besm
) {

   $block: map-get($besm, block);
   $element: map-get($besm, element);
   $state: map-get($besm, state);
   $mod: map-get($besm, mod);

   .#{$block}#{$name} {

      @include cx-add-rules($cx-caption-style-map);

      &.#{$state}level-1 {
         @include cx-add-state-rules($cx-caption-level-style-map, 1);
      }

      &.#{$state}level-2 {
         @include cx-add-state-rules($cx-caption-level-style-map, 2);
      }

      &.#{$state}level-3 {
         @include cx-add-state-rules($cx-caption-level-style-map, 3);
      }

      &.#{$state}level-4 {
         @include cx-add-state-rules($cx-caption-level-style-map, 4);
      }

      &.#{$state}level-5 {
         @include cx-add-state-rules($cx-caption-level-style-map, 5);
      }

      &.#{$state}level-6 {
         @include cx-add-state-rules($cx-caption-level-style-map, 6);
      }
   }
}

@if (cx-should-include('cx/widgets/Caption')) {
   @include cxb-heading();
}