/* VGaint v6.23: one shared shell used by the header, hero and content on all new pages. */
:root{--vg-container-max:1440px;--vg-container-gutter:28px;--vg-content-max:1440px;--vg-content-gutter:28px;}
/* Match the original homepage's 1440px content grid, not an unrelated 1348px override. */
html body .v564-header-shell .v51-topbar>.container,
html body .v564-header-shell .site-header>.container,
html body .v564-header-shell .site-header .header-inner,
html body main .container,
html body main .vg-site-container,
html body footer.v564-footer>.container{
  box-sizing:border-box!important;
  width:min(1440px,calc(100% - 56px))!important;
  max-width:1440px!important;
  margin-left:auto!important;margin-right:auto!important;
  min-width:0!important;
}
/* The home hero and service panels must start at exactly the same grid edge. */
html body main .v530-hero-content.container,
html body main .v530-services>.container,
html body main.about-fresh .ab-hero-inner.container,
html body main.about-fresh .ab-intro-grid.container,
html body main.about-fresh .ab-feature-layout.container,
html body main.about-fresh .ab-cta-grid.container{
  width:min(1440px,calc(100% - 56px))!important;
  max-width:1440px!important;
  margin-inline:auto!important;
  padding-inline:0!important;
}
@media(max-width:780px){
  :root{--vg-container-gutter:18px;--vg-content-gutter:18px;}
  html body .v564-header-shell .v51-topbar>.container,
  html body .v564-header-shell .site-header>.container,
  html body .v564-header-shell .site-header .header-inner,
  html body main .container,html body main .vg-site-container,
  html body footer.v564-footer>.container,
  html body main .v530-hero-content.container,
  html body main .v530-services>.container,
  html body main.about-fresh .ab-hero-inner.container,
  html body main.about-fresh .ab-intro-grid.container,
  html body main.about-fresh .ab-feature-layout.container,
  html body main.about-fresh .ab-cta-grid.container {
    width:calc(100% - 36px)!important;max-width:none!important;
  }
}
