The 2 ways recommended by Magento to override or extend the styles from a parent theme:
1. Simple way
In your theme directory, create a
web/css/source sub-directory. (You've already done this part) Create a
_extend.less file there.
According to the documentation:
"Extending a theme using _extend.less is the simplest option when you are happy with everything the parent theme has, but want to add more styles."
Instead of creating the
_extend.less file, you create a
_theme.less file. In this case you need to copy all variables you need from the parent
_theme.less, including those which will not be changed. Then make your changes.
According to the documentation, the drawback is :
"You need to monitor and manually update your files whenever the parent’s _theme.less is updated."
2. Structured way
This method lets you organize your code in a better way. Your changes will be structured. Instead of using a single
_extend.less file to include all your changes, you create an extend file for each component from the Magento UI library you want to change.
Say you want to extend styles from button and navigation components. In your theme directory create 2 files:
_navigation_extend.less, then add your changes for each component in the corresponding file.
Then you create the
_extend.less file adding this code:
In your theme, create a copy of the file corresponding to the UI component you want to change (
_navigation.less, etc) This file will override the
_buttons.less of the parent theme.
It is important to notice the difference between override and extend.
You can read more on overriding and extending in this documentation or about CSS in Magento 2 in the Frontend Developer's Guide.