This should make the sub menus as wide as the menu items rather than being full page width. Be sure to replace all CSS I gave you with this as it includes everything …
@media only screen and (max-width: 1200px) {
.primary-navigation > div > .menu-wrapper > li > .sub-menu:before, .primary-navigation > div > .menu-wrapper > li > .sub-menu:after {
display: none;
}
.primary-navigation .primary-menu-container > ul > .menu-item {
display: block;
}
.primary-navigation > div > .menu-wrapper .sub-menu-toggle {
display: none;
}
.primary-navigation > .primary-menu-container ul > li .sub-menu-toggle[aria-expanded=false] ~ ul {
display: block;
}
.primary-navigation > .primary-menu-container ul > li .sub-menu-toggle[aria-expanded=false] ~ ul,
.primary-navigation > .primary-menu-container ul > li .sub-menu-toggle[aria-expanded=true] ~ ul {
display: inline-block;
}
.primary-navigation > div > .menu-wrapper > li > .sub-menu {
margin-left: var(--primary-nav--padding);
position: relative;
top: auto;
padding-top: 0;
}
.primary-navigation > div > .menu-wrapper > li > .sub-menu {
transition: all 0s ease 0s;
}
}
.sticky-button.primary-navigation-open .primary-navigation > div > .menu-wrapper > li > .sub-menu:before, .primary-navigation > div > .menu-wrapper > li > .sub-menu:after {
display: none;
}
.sticky-button.primary-navigation-open .primary-navigation .primary-menu-container > ul > .menu-item {
display: block;
}
.sticky-button.primary-navigation-open .primary-navigation > div > .menu-wrapper .sub-menu-toggle {
display: none;
}
.sticky-button.primary-navigation-open .primary-navigation > .primary-menu-container ul > li .sub-menu-toggle[aria-expanded=false] ~ ul,
.sticky-button.primary-navigation-open .primary-navigation > .primary-menu-container ul > li .sub-menu-toggle[aria-expanded=true] ~ ul {
display: inline-block;
}
.sticky-button.primary-navigation-open .primary-navigation > div > .menu-wrapper > li > .sub-menu {
margin-left: var(--primary-nav--padding);
position: relative;
top: auto;
padding-top: 0;
}
.sticky-button.primary-navigation-open .primary-navigation > div > .menu-wrapper > li > .sub-menu {
transition: all 0s ease 0s;
}
.site-header,
.primary-navigation-open .primary-navigation,
.sticky-button.primary-navigation-open .primary-navigation {
z-index: 11;
}