How to make changes that survive updates.
USE A CHILD THEME
If you edit theme files directly, the next theme update erases your changes. A child theme keeps them separate.
Most modern themes provide a child theme download, or a plugin can generate one.
USE THE CUSTOMISER FIRST
Appearance > Customise handles colours, fonts, layout and often shop-specific options without touching code. Changes here survive updates.
FOR CSS CHANGES
Appearance > Customise > Additional CSS. Changes are stored in the database and survive theme updates.
FOR FUNCTIONALITY
Use a code snippets plugin rather than editing functions.php directly. Snippets can be disabled individually if one breaks the site, which is much easier than editing a file over FTP on a broken shop.
WHAT NOT TO DO
Do not edit WooCommerce plugin files. Updates overwrite them, and you will not remember what you changed. Do not edit core WordPress files, ever.
BEFORE ANY CUSTOMISATION
Back up, and test on a staging copy for anything substantial.