[data-grid~=row] {
  @include inline-block-fix;

  [data-grid~=col] {
    @include box-sizing(border-box);
    @include inline-block;
    vertical-align: top;
  }
}

@for $gridCount from 1 through 24 {
  [data-grid~=row#{$gridCount}] {
    @for $columnSize from 1 through $gridCount {
      [data-grid~=col#{$columnSize}] {
        width: $columnSize/$gridCount*100%;
      }
    }
  }
}

$grid-col-count: 24;
$grid-col-padding: .5em;

[data-grid~=row] {
  @include inline-block-fix;

  [data-grid~=col] {
    padding: $grid-col-padding;
    @include box-sizing(border-box);
    @include inline-block;
    vertical-align: top;
  }
}

@for $gridCount from 1 through $grid-col-count {
  [data-grid~=row#{$gridCount}] {
    @for $columnSize from 1 through $gridCount {
      [data-grid~=col#{$columnSize}] {
        width: $columnSize/$gridCount*100%;
      }

      [data-grid~=offset#{$columnSize}] {
        margin-left: $columnSize/$gridCount*100%
      }
    }
  }
}

Add offset to grid system
Add offset to grid system