/* Utility variable - you should never need to modify this */
$gridsystem_width: $grid-columns * 1px;
$padding: $grid-gutter-width*0.5;

/* Ensure grid columns are set to border-boxes. This is essential */
@mixin border-box(){
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

@mixin content-box(){
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
}

/* Our row container */
@mixin row($padding:0){
    @include clearfix();
    @include border-box();

    display:block;
    /*max-width: $grid-max-width; NO MAX WIDTH*/
    margin-right: auto;
    margin-left: auto;
    padding-right: $padding;
    padding-left: $padding;
}

@mixin row-flush(){
    margin-left:-$padding;
    margin-right:-$padding;
}

/* Our column container */
@mixin column($x, $padding:$padding, $grid-columns:$grid-columns){
    @include border-box();

    display: inline;
    float: left;
    width: 100%*($x / $grid-columns);
    padding-right: $padding;
    padding-left: $padding;
}

@mixin table-column($x, $padding:$padding, $grid-columns:$grid-columns){
    @include border-box();

    width: 100%*($x / $grid-columns);
}

/* Push adds left padding */
@mixin push($offset:1, $grid-columns:$grid-columns) {
    margin-left: 100%*($offset / $grid-columns);
}
@mixin push-padding($offset:1, $grid-columns:$grid-columns) {
    padding-left:100%*($offset / $grid-columns);
}

/* Pull adds right padding */
@mixin pull($offset:1, $grid-columns:$grid-columns) {
    margin-right: 100%*($offset / $grid-columns);
}
@mixin pull-padding($offset:1, $grid-columns:$grid-columns){
    padding-right: 100%*($offset / $grid-columns);
}

/* only used in places where padding not applied to same elements as row or row-flush
 * most of the time this class should be applied directly to the html elements */
@mixin nice-padding{
    padding-left: $mobile-nice-padding;
    padding-right: $mobile-nice-padding;

    @media screen and (min-width: $breakpoint-mobile){
        padding-left: $desktop-nice-padding;
        padding-right: $desktop-nice-padding;
    }
}