/* FoodPrint Width Contract V1 - unified fixed desktop shell */
:root{--fp-shell-max:1560px;--fp-shell-gutter:32px;--fp-shell-width:min(var(--fp-shell-max),calc(100% - (var(--fp-shell-gutter) * 2)))}
body.fp-width-v1{--v32-shell:var(--fp-shell-width)!important;--v31-wide:var(--fp-shell-max)!important}
/* Canonical site containers */
body.fp-width-v1 .wrap,
body.fp-width-v1 header .wrap,
body.fp-width-v1 header .top-nav,
body.fp-width-v1 .hero>.wrap,
body.fp-width-v1 .trust-grid,
body.fp-width-v1 footer .footer-grid,
body.fp-width-v1 footer .footer-bottom,
body.fp-width-v1 .secondary-footer .footer-grid,
body.fp-width-v1 .secondary-footer .footer-bottom{
  width:var(--fp-shell-width)!important;
  max-width:var(--fp-shell-max)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}
/* Secondary commercial pages and catalog use the exact same desktop shell */
body.fp-width-v1 .landing-shell,
body.fp-width-v1 main.landing-shell,
body.fp-width-v1 main.landing-shell.catalog-main,
body.fp-width-v1 .catalog-main,
body.fp-width-v1 main.catalog-main{
  width:var(--fp-shell-width)!important;
  max-width:var(--fp-shell-max)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}
/* Cancel historical ultra-wide expansion rules */
@media(min-width:1800px){body.fp-width-v1{--v32-shell:var(--fp-shell-width)!important;--v31-wide:var(--fp-shell-max)!important}}
@media(min-width:2400px){body.fp-width-v1{--v32-shell:var(--fp-shell-width)!important}body.fp-width-v1 .landing-shell,body.fp-width-v1 main.landing-shell.catalog-main,body.fp-width-v1 .catalog-main{width:var(--fp-shell-width)!important;max-width:var(--fp-shell-max)!important}}
@media(min-width:3200px){body.fp-width-v1{--v32-shell:var(--fp-shell-width)!important}}
/* Laptop / tablet */
@media(max-width:1180px){:root{--fp-shell-gutter:20px}}
@media(max-width:850px){:root{--fp-shell-gutter:16px}}
/* Phone */
@media(max-width:560px){:root{--fp-shell-gutter:14px}}
