@mixin spacing($multiplier: 1, $spacing: $spacing, $rec: false) {
    &.horizontal>* {
        margin: 0 calc($spacing * $multiplier / 2);

        &:first-child {
            margin-left: 0;
        }

        &:last-child {
            margin-right: 0;
        }
    }

    &.vertical>* {
        margin: calc($spacing * $multiplier / 2) 0;

        &:first-child {
            margin-top: 0;
        }

        &:last-child {
            margin-bottom: 0;
        }
    }

    @if $rec {
        box {
            &.horizontal>* {
                margin: 0 $spacing * $multiplier / 2;

                &:first-child {
                    margin-left: 0;
                }

                &:last-child {
                    margin-right: 0;
                }
            }

            &.vertical>* {
                margin: $spacing * $multiplier / 2 0;

                &:first-child {
                    margin-top: 0;
                }

                &:last-child {
                    margin-bottom: 0;
                }
            }
        }
    }
}
