Hi Shana.
This code works for all screen sizes and does not need to be added to media queries.
You just need to adjust the sizes of the elements .logo a and #sp-menu .sp-column so that they do not occupy the full width of the screen on mobile devices.
For #sp-menu .sp-column, I can recommend some code for media queries.
#sp-menu .sp-column {
    width: max-content !important;
}
But for .logo a, I can't do that because I would need access to your CSS to remove/rework everything you've done for the logo image. You need to redesign it so that the logo size is controlled specifically through .logo a and not through section#sp-logo .logo .sp-default-logo.
Overall, your CSS is quite messy.
Here are a few tips:
The template CSS field should be used exclusively for a small fragment of code and only if you are using multiple template styles and want to differentiate between them. For example, if in one style you want the header to be red and in another green, then you can use the template CSS field.
All code added to the template CSS field is placed directly inside the <head></head>. Right now, you have a lot of code there, which negatively affects performance.
Additionally, all CSS from SP Page Builder also goes into the head. To remove this, switch SP Page Builder to production mode in its settings.
For all general CSS code, create a custom.css file following Helix documentation and move everything there.
Organize your code. For example, all media queries should be at the very bottom and should have a specific order and standard values. These values are universal.

Here are the standard media queries.
/*Breakpoints*/
/* Desktop First */
@media (max-width: 1399.98px) {}
@media (max-width: 1199.98px) {}
@media (max-width: 991.98px) {}
@media (max-width: 767.98px) {}
@media (max-width: 575.98px) {}
/* Mobile First */
@media (min-width: 576px) {}
@media (min-width: 768px) {}
@media (min-width: 992px) {}
@media (min-width: 1200px) {}
@media (min-width: 1400px) {}
If you need custom media queries, integrate them in order. For example, if you need @media (max-width: 600px) {}, add it between @media (max-width: 767.98px) {} and @media (max-width: 575.98px) {}.
However, in 99% of cases, standard media queries are all you need. Stick to them, and only add custom ones if they do not cover your requirements.
If you have multiple rules for a single media query, write them all in one block.

Live example from my project
