/* GroceryOS extends the established Build2Exist tokens and shared page shell. */
.product-page main{padding-top:90px}
.product-page h1,.product-page h2,.flagship-section h2{font-weight:600;letter-spacing:-.055em;line-height:1.05}
.product-page h1{font-size:clamp(48px,6.3vw,90px)}
.product-page .eyebrow,.flagship-section .eyebrow{color:var(--b2e-muted);line-height:1.6}
.product-page h3{font-size:24px;letter-spacing:-.035em;line-height:1.18;font-weight:600}
.product-page p{line-height:1.75}
.product-page .section-heading h2{margin-top:20px}
.product-page .site-header{background:var(--b2e-white)}
.desktop-nav{gap:32px}
.desktop-nav a{min-height:44px;display:inline-flex;align-items:center}
.product-hero{display:grid;grid-template-columns:1.08fr 1fr;gap:7%;align-items:center;padding-top:95px;padding-bottom:100px}
.product-hero-copy{min-width:0}
.product-wordmark{font-size:clamp(58px,7vw,101px)!important;letter-spacing:-.075em!important;white-space:nowrap;color:var(--b2e-navy);line-height:1.05}
.product-wordmark span{color:var(--b2e-blue)}
.product-hero .product-wordmark{margin-top:24px}
.product-headline{font-size:clamp(27px,3vw,43px);letter-spacing:-.045em;line-height:1.13!important;margin-top:27px;font-weight:500;color:var(--b2e-navy)}
.product-lede{font-size:17px;line-height:1.8!important;color:var(--b2e-muted);max-width:650px;margin-top:24px}
.product-actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap;margin-top:32px}
.product-button{background:var(--b2e-blue);color:white;border-radius:6px;display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:52px;padding:16px 22px;font-size:13px;text-decoration:none;line-height:1.5}
.product-button:hover{background:#0059d6}
.product-actions .quiet-link{margin:0;min-height:44px;align-items:center;padding:10px 0}
.product-small{color:var(--b2e-muted);font-size:12px;max-width:430px;margin-top:26px}
.system-plate{border-radius:var(--b2e-radius);background:var(--b2e-paper);border:1px solid var(--b2e-line);padding:30px;min-width:0}
.plate-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:0 2px 23px}
.plate-heading .eyebrow{font-size:10px}.plate-index{font:10px var(--b2e-font-label);color:var(--b2e-muted)}
.system-stack{list-style:none;padding:0;margin:0;display:grid;gap:17px}
.system-stack li{position:relative;background:white;border:1px solid var(--b2e-line);border-radius:9px;display:flex;align-items:start;gap:22px;padding:22px}
.system-number,.card-number{font:11px var(--b2e-font-label);color:var(--b2e-muted);padding-top:4px}
.system-stack h2{font-size:22px;letter-spacing:-.035em}.system-stack p{font-size:12px;color:var(--b2e-muted);margin-top:8px}
.system-arrow{position:absolute;bottom:-20px;right:28px;z-index:1;background:var(--b2e-paper);color:#41678a;padding:0 7px}
.system-foundation{display:flex;align-items:start;gap:22px;background:var(--b2e-navy);color:white;border-radius:9px;margin-top:22px;padding:23px}
.system-foundation strong{font-size:26px;letter-spacing:-.045em}.system-foundation p{font-size:12px;color:#c3d2e9;margin-top:6px}.system-foundation .system-number{color:#b5c9e4}
.plate-note{font-size:10px;color:var(--b2e-muted);margin:18px 2px 0}.plate-note a{text-underline-offset:3px;display:inline-block;padding:7px 0}
.product-band{background:var(--b2e-paper);border-block:1px solid var(--b2e-line)}
.brand-hierarchy{padding-top:27px;padding-bottom:27px;display:flex;justify-content:space-between;align-items:center;gap:25px}
.brand-hierarchy p,.case-facts p{display:grid;gap:6px;line-height:1.4}.brand-hierarchy p>span,.case-facts p>span{font:10px var(--b2e-font-label);color:var(--b2e-muted);text-transform:uppercase;letter-spacing:.08em}
.brand-hierarchy strong{font-size:25px;letter-spacing:-.04em;font-weight:600}.hierarchy-arrow{color:#607796;font-size:26px}
.product-section{padding-top:100px;padding-bottom:100px}
.capability-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:55px}
.capability-summary{padding:24px 0;border-top:1px solid var(--b2e-line)}
.capability-summary>.card-number,.capability-detail>.card-number{display:block;margin-bottom:16px}
.capability-scope{font-size:16px;line-height:1.75;color:var(--b2e-muted);max-width:900px;margin-top:28px}
.capability-scope+.capability-summary-grid,.capability-scope+.capability-detail-grid{margin-top:30px}
.capability-summary .capability-qualification,.capability-detail .capability-qualification{font-size:14px;line-height:1.75}
.status-badge{display:inline-flex;align-items:center;font-size:10px;line-height:1.5;letter-spacing:.01em;padding:5px 9px;border:1px solid #bbd4c8;border-radius:4px;color:#20573e;background:#eef7f1;white-space:nowrap}
.status-built{border-color:#c7d6eb;color:#285389;background:#eef4fc}
.status-demo{border-color:#dbcda9;color:#6b541c;background:#fbf6e8}
.status-pending{border-color:#d4dce6;color:#53647e;background:#f4f7fb;margin-bottom:15px}
.capability-summary h3{font-size:21px}.capability-summary h3 a{text-decoration:none;display:inline-block;min-height:44px}.capability-summary h3 a:hover{text-decoration:underline;text-underline-offset:4px}
.capability-summary p{font-size:13px;color:var(--b2e-muted);margin-top:13px}
.section-tail{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:25px}.section-tail p{font-size:12px;color:var(--b2e-muted)}
.proof-section{background:#f0f4f9;padding:90px 0}
.proof-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:8%}
.proof-grid h2{font-size:clamp(40px,4.3vw,62px);margin-top:20px}
.proof-grid p:not(.eyebrow):not(.product-lede){color:var(--b2e-muted);font-size:14px;margin-top:21px}
.proof-grid .quiet-link{width:fit-content;margin-top:29px;white-space:normal}
.proof-grid .product-actions .quiet-link{margin-top:0}
.proof-visual{overflow:hidden;border-radius:12px;background:white;border:1px solid var(--b2e-line)}
.proof-visual img{width:100%;height:auto;display:block}
.proof-visual figcaption{font-size:11px;line-height:1.6;color:var(--b2e-muted);padding:17px 22px}
.availability{display:grid;grid-template-columns:1fr 1fr;gap:8%}
.availability h2{font-size:clamp(32px,3.3vw,47px);margin-top:20px}
.availability>div>p:not(.eyebrow){color:var(--b2e-muted);font-size:14px}.availability>div>p+p{margin-top:15px}
.availability .quiet-link{margin-top:26px;width:fit-content;white-space:normal}
.product-page .contact h2{font-size:clamp(42px,6.8vw,90px)}
.product-page .contact .eyebrow{color:#b1c8e7}
.breadcrumbs{display:flex;align-items:center;gap:13px;font-size:12px;color:var(--b2e-muted);margin-bottom:45px}.breadcrumbs a{min-height:44px;display:inline-flex;align-items:center;text-underline-offset:4px}
.walkthrough-hero,.case-hero{padding-top:40px;padding-bottom:80px}
.walkthrough-hero h1,.case-hero h1{margin-top:22px;max-width:1050px}
.walkthrough-hero .product-lede{max-width:650px}
.workflow-section{padding-top:30px}
.workflow-grid{list-style:none;padding:0;margin:52px 0 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.workflow-grid li{border-top:2px solid var(--b2e-blue);padding:22px 0 0}
.workflow-number{font:12px var(--b2e-font-label);color:var(--b2e-blue)}
.workflow-grid .eyebrow{font-size:9px;margin-top:30px;letter-spacing:.06em}
.workflow-grid h3{margin-top:10px;min-height:58px;font-size:23px}
.workflow-grid p:not(.eyebrow){font-size:13px;color:var(--b2e-muted);margin-top:14px}
.workflow-grid a{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:12px;text-underline-offset:5px;margin-top:16px}
.capabilities-section{background:var(--b2e-paper);padding:85px 0}
.capability-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}
.capability-detail{background:white;border:1px solid var(--b2e-line);padding:32px;border-radius:12px;scroll-margin-top:110px}
.capability-detail p{color:var(--b2e-muted);font-size:14px;margin-top:17px}
.capability-detail details{margin-top:25px;border-top:1px solid var(--b2e-line)}
.capability-detail summary{padding:17px 0;cursor:pointer;font-size:12px;min-height:48px}
.capability-detail details p{font-size:13px;margin:0 0 6px}
.case-hero h1 span{color:#607796}.case-hero-bottom{display:flex;align-items:center;justify-content:space-between;gap:40px;margin-top:20px}
.case-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px;padding-top:30px;padding-bottom:30px}
.case-facts strong,.case-facts a{font-size:15px;font-weight:500;min-height:36px;display:flex;align-items:center;text-underline-offset:4px}
.case-narrative{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:start}.case-narrative h2{font-size:clamp(32px,3.3vw,46px);margin-top:20px}.case-narrative>p{font-size:16px;color:var(--b2e-muted);padding-top:25px}
.storefront-section{padding-bottom:15px}.storefront-capture{margin-top:45px}.storefront-capture img{width:100%;height:auto;display:block;border:1px solid var(--b2e-line);border-radius:12px}
.storefront-capture figcaption,.capture-note{color:var(--b2e-muted);font-size:11px;line-height:1.7;margin-top:18px;max-width:720px}
.case-surface-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px;margin-top:45px}.case-surface-grid article{border-top:1px solid var(--b2e-line);padding-top:24px}.case-surface-grid h3{font-size:23px;margin:0 0 12px}.case-surface-grid p{font-size:13px;color:var(--b2e-muted)}
.case-app-screens{margin-top:55px}
.flagship-section{display:grid;grid-template-columns:1.2fr 1fr;gap:8%;align-items:center;padding-top:105px;padding-bottom:105px;border-bottom:1px solid var(--b2e-line)}
.flagship-section .product-wordmark{font-size:clamp(50px,6vw,78px)!important;margin-top:24px}
.flagship-headline{font-size:27px;letter-spacing:-.04em;line-height:1.25;margin-top:22px}.flagship-section .product-lede{font-size:15px}
.flagship-proof{border:1px solid var(--b2e-line);background:var(--b2e-paper);border-radius:12px;overflow:hidden}.flagship-proof img{display:block;width:100%;height:auto}.flagship-proof p{padding:23px;font-size:12px;line-height:1.7;color:var(--b2e-muted)}.flagship-proof strong{font-size:18px;color:var(--b2e-navy);font-weight:600}
.case-study-link{width:fit-content;margin-top:30px;min-height:44px;align-items:center}
@media(max-width:1100px){.capability-summary-grid,.case-surface-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.system-plate{padding:20px}.system-stack li{gap:15px;padding:20px 17px}.product-hero{gap:4%}.system-stack h2{font-size:20px}.workflow-grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:35px}.workflow-grid h3{min-height:0}}
@media(max-width:800px){
  .product-page main{padding-top:var(--mobile-header)}
  .product-hero{grid-template-columns:1fr;gap:45px;padding-top:58px;padding-bottom:60px}
  .product-wordmark{font-size:clamp(57px,12vw,83px)!important}
  .product-hero-copy .eyebrow{font-size:10px;letter-spacing:.08em}
  .product-headline{font-size:33px;margin-top:24px}
  .product-lede{font-size:15px;margin-top:20px}
  .product-actions{gap:20px;margin-top:27px}
  .system-plate{padding:24px}.system-stack li{padding:22px;gap:22px}.system-stack h2{font-size:22px}
  .brand-hierarchy{gap:18px;padding-top:25px;padding-bottom:25px}.brand-hierarchy strong{font-size:20px}.brand-hierarchy p>span{font-size:8px;letter-spacing:0}.hierarchy-arrow{font-size:17px}
  .product-section{padding-top:65px;padding-bottom:65px}
  .product-page .section-heading{align-items:start;flex-direction:column;gap:24px}.product-page .section-heading h2{font-size:43px}.product-page .section-intro{max-width:530px}
  .capability-summary-grid{margin-top:35px;gap:20px}.capability-summary h3{font-size:22px}
  .section-tail{align-items:start;flex-direction:column;gap:14px;margin-top:15px}.section-tail .quiet-link{margin-top:0}
  .proof-section{padding:65px 0}.proof-grid{grid-template-columns:1fr;gap:35px}.proof-grid h2{font-size:43px}.proof-grid .product-lede{max-width:560px}.proof-grid>div>p{max-width:620px}
  .availability{grid-template-columns:1fr;gap:26px}.availability h2{font-size:38px}.availability>div>p:not(.eyebrow){max-width:620px}
  .product-page .contact h2{font-size:clamp(39px,8vw,66px);overflow-wrap:anywhere}
  .walkthrough-hero,.case-hero{padding-top:20px;padding-bottom:55px}.breadcrumbs{margin-bottom:25px}.walkthrough-hero h1,.case-hero h1{font-size:clamp(42px,7.8vw,64px)}
  .workflow-section{padding-top:20px}.workflow-grid{margin-top:35px;gap:30px}.workflow-grid .eyebrow{margin-top:20px}
  .capabilities-section{padding:60px 0}.capability-detail-grid{gap:18px}.capability-detail{padding:25px}.capability-detail h3{font-size:24px}
  .case-facts{grid-template-columns:1fr 1fr;gap:20px}.case-narrative{grid-template-columns:1fr;gap:20px}.case-narrative>p{padding-top:0;font-size:15px}.case-hero-bottom .client-mark{width:85px;height:85px}
  .case-hero-bottom{gap:24px}.storefront-capture{margin-top:30px}.case-surface-grid{gap:28px 20px}.case-app-screens{margin-top:40px}
  .flagship-section{grid-template-columns:1fr;gap:35px;padding-top:65px;padding-bottom:65px}.flagship-section .product-wordmark{font-size:64px!important}.flagship-headline{font-size:28px}
}
@media(max-width:520px){
  .product-hero .product-actions{align-items:start;flex-direction:column;gap:12px}.product-small{margin-top:18px}
  .brand-hierarchy{display:grid;grid-template-columns:1fr;gap:18px}.brand-hierarchy p{display:flex;justify-content:space-between;align-items:center;gap:15px}.brand-hierarchy p>span{font-size:9px}.brand-hierarchy strong{font-size:22px}.hierarchy-arrow{display:none}
  .capability-summary-grid,.capability-detail-grid,.case-surface-grid,.workflow-grid{grid-template-columns:1fr}
  .capability-summary{padding:23px 0 8px}.capability-summary h3 a{min-height:0;padding-bottom:8px}.capability-summary p{margin-top:5px}
  .system-plate{padding:19px}.system-stack li{padding:20px 16px;gap:16px}.system-stack h2{font-size:21px}.system-foundation{gap:16px;padding:21px 17px}.plate-heading{gap:10px}.plate-heading .eyebrow{font-size:9px}
  .system-stack p,.system-foundation p{font-size:11px}.workflow-grid{gap:28px}.workflow-grid li{padding-top:18px}.workflow-grid .eyebrow{margin-top:15px}.workflow-grid h3{font-size:26px}
  .case-hero-bottom{align-items:start}.case-hero-bottom .client-mark{width:66px;height:66px;margin-top:25px}.case-hero-bottom .product-lede{font-size:14px}.case-facts p>span{font-size:9px}.case-facts strong,.case-facts a{font-size:13px}
  .product-page .site-footer p{margin-left:0}.flagship-section .eyebrow{font-size:9px;letter-spacing:.08em}.flagship-section .product-actions{gap:18px}
}

.groceryos-contact .contact-demo{margin:28px 0}
.groceryos-contact .email-action{font-size:18px}

/* Buyer journey: readable task descriptions and one place for setup questions. */
.product-button{background:#005edb;font-size:14px}
.product-page .product-small,.plate-note,.proof-visual figcaption,.storefront-capture figcaption,.capture-note{font-size:14px}
.product-page .capability-summary p,.product-page .capability-detail p,.product-page .case-surface-grid p,.workflow-grid p:not(.eyebrow),.product-page .section-intro{font-size:16px}
.capability-summary-grid,.capability-detail-grid,.case-surface-grid{align-items:start}
.capability-detail-grid{margin-top:36px}
.capability-detail ul{padding-left:20px;margin:16px 0 0;color:var(--b2e-muted);font-size:14px;line-height:1.65}
.capability-detail li+li{margin-top:6px}
.public-example{padding:25px;border:1px solid var(--b2e-line);border-radius:12px;background:white;color:var(--b2e-navy);margin-top:26px}
.public-example h3{font-size:22px}
.public-example p,.proof-grid .public-example p{font-size:16px!important;color:var(--b2e-muted);margin-top:16px;line-height:1.7}
.public-example .quiet-link{white-space:normal;line-height:1.6;min-height:44px}
.getting-started{display:grid;grid-template-columns:1fr 1fr;gap:8%}
.getting-started h2,.retailer-faq h2{font-size:clamp(32px,3.3vw,47px);margin:20px 0 26px}
.getting-started p{font-size:16px;color:var(--b2e-muted);margin-top:10px}
.getting-started ol{padding-left:24px;margin:0 0 28px}
.getting-started li{padding-left:8px;margin-bottom:24px;font-size:17px;line-height:1.6}
.retailer-faq{padding-top:15px;max-width:1100px}
.retailer-faq details{border-top:1px solid var(--b2e-line);padding:8px 0}
.retailer-faq summary{font-size:18px;padding:20px 5px;line-height:1.5;cursor:pointer;min-height:48px}
.retailer-faq details p{font-size:16px;max-width:800px;padding:0 5px 20px;color:var(--b2e-muted)}
.product-page .case-facts a{min-height:44px}
.service-row{grid-template-columns:35px 1fr 1fr;align-items:start}
.service-row>.service-number{grid-column:1;grid-row:1}
.service-row>div{grid-column:2;grid-row:1}
.service-row>.service-description{grid-column:3;grid-row:1}
.service-row .service-link{display:inline-flex;align-items:center;grid-row:2;grid-column:2/-1;width:fit-content;height:auto;min-height:44px;padding:12px 16px;border-radius:6px;font-size:14px;line-height:1.5;gap:18px;text-decoration:none;justify-self:start}
.service-row .service-link span{flex-shrink:0}
.case-footnote p{font-size:14px;line-height:1.7}
@media(max-width:800px){.getting-started{grid-template-columns:1fr;gap:30px}.service-row{grid-template-columns:20px 1fr}.service-row .service-description{grid-column:2;grid-row:2}.service-row .service-link{grid-column:2;grid-row:3}.product-page .product-lede{font-size:16px}.product-page .case-hero-bottom .product-lede{font-size:16px}.capability-summary h3 a{min-height:44px}.public-example{padding:22px}}
@media(max-width:350px){.service-row .service-link{padding:10px;gap:10px}.product-actions .product-button{gap:12px}.product-wordmark{font-size:54px!important}}
.screen-card figcaption span,.service-number,.service-detail{color:var(--b2e-muted)}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Reserve the responsive screen width before lazy images decode. */
.screen-image{width:100%}
