:root{--pj-green:#173f32;--pj-green-2:#255a46;--pj-cream:#fbf6e9;--pj-paper:#fffdf8;--pj-orange:#e58a45;--pj-ink:#1f2a25;--pj-muted:#737d75;--pj-line:#e8e1d3;--pj-shadow:0 18px 55px rgba(21,48,37,.14);--pj-radius:22px}
.pj-storefront{background:var(--pj-cream);color:var(--pj-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;min-height:100vh;padding:0 0 90px}.pj-storefront *{box-sizing:border-box}.pj-storefront button,.pj-storefront input,.pj-storefront textarea,.pj-storefront select{font:inherit}.pj-storefront button{cursor:pointer}.pj-topbar{align-items:center;background:rgba(251,246,233,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(23,63,50,.08);display:flex;gap:16px;justify-content:space-between;margin:0 auto;max-width:1280px;padding:16px 28px;position:sticky;top:0;z-index:10}.pj-brand{align-items:center;color:var(--pj-green);display:flex;font-size:16px;font-weight:800;gap:11px;text-decoration:none}.pj-brand small{color:var(--pj-muted);display:block;font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase}.pj-brand-mark{align-items:center;background:var(--pj-green);border-radius:14px;color:#fff;display:flex;font-size:20px;height:42px;justify-content:center;width:42px}.pj-back-button,.pj-search-trigger,.pj-delivery-chip,.pj-cart-link{background:transparent;border:0;color:var(--pj-green);font-weight:700}.pj-back-button{border:1px solid var(--pj-line);border-radius:50%;font-size:19px;height:40px;width:40px}.pj-delivery-chip{display:grid;gap:2px;text-align:left}.pj-delivery-chip small{color:var(--pj-muted);font-size:11px}.pj-cart-link{margin-left:auto;text-decoration:none}.pj-search-trigger{font-size:27px}.pj-hero{background:var(--pj-green);border-radius:0 0 34px 34px;color:#fff;display:grid;gap:28px;grid-template-columns:minmax(0,1.2fr) minmax(240px,.8fr);margin:0 auto;max-width:1280px;min-height:360px;overflow:hidden;padding:62px clamp(26px,7vw,92px) 35px;position:relative}.pj-hero-copy{align-self:center;max-width:620px;position:relative;z-index:1}.pj-eyebrow{color:var(--pj-orange);font-size:12px;font-weight:800;letter-spacing:.13em;margin:0 0 12px;text-transform:uppercase}.pj-hero h1{font-family:Georgia,serif;font-size:clamp(42px,6.4vw,78px);letter-spacing:-.055em;line-height:.98;margin:0 0 18px;max-width:650px}.pj-hero-copy>p:not(.pj-eyebrow){color:rgba(255,255,255,.78);font-size:16px;line-height:1.65;max-width:540px}.pj-primary-link{background:var(--pj-orange);border-radius:999px;color:#251d16;display:inline-flex;font-weight:800;gap:20px;margin-top:14px;padding:14px 20px;text-decoration:none}.pj-hero-art{align-items:center;align-self:center;aspect-ratio:1;background:radial-gradient(circle at 50% 50%,#f0b75f 0 47%,#d66b32 48% 52%,#f1e0ad 53% 58%,transparent 59%);display:flex;justify-content:center;margin:auto;max-width:300px;position:relative;width:100%}.pj-hero-art span{align-items:center;background:#fff2d2;border:10px solid #b84f2d;border-radius:50%;color:var(--pj-green);display:flex;font-family:Georgia,serif;font-size:96px;font-weight:800;height:150px;justify-content:center;opacity:.95;width:150px}.pj-hero-art i,.pj-hero-art i:before,.pj-hero-art i:after{background:#b7462b;border-radius:50%;content:"";height:19px;position:absolute;width:19px}.pj-hero-art i{left:17%;top:35%}.pj-hero-art i:before{left:128px;top:-96px}.pj-hero-art i:after{left:104px;top:93px}.pj-store-facts{align-self:end;color:rgba(255,255,255,.68);display:flex;flex-wrap:wrap;font-size:12px;gap:22px;grid-column:1/-1}.pj-store-facts strong{color:#fff}.pj-menu-section{margin:0 auto;max-width:1180px;padding:58px 28px}.pj-section-heading{align-items:end;display:flex;justify-content:space-between}.pj-section-heading h2{color:var(--pj-green);font-family:Georgia,serif;font-size:clamp(32px,4vw,48px);letter-spacing:-.04em;margin:0}.pj-demo-notice{background:#fff1d6;border:1px solid #f0d49e;border-radius:13px;color:#74521c;margin:20px 0;padding:14px 17px}.pj-search-panel{display:grid;gap:8px;margin-top:20px;max-width:480px}.pj-search-panel label,.pj-checkout-panel label{font-size:13px;font-weight:700}.pj-search-panel input,.pj-checkout-panel input,.pj-checkout-panel select,.pj-checkout-panel textarea,.pj-inline-form input,.pj-inline-form select{background:#fff;border:1px solid var(--pj-line);border-radius:11px;color:var(--pj-ink);padding:12px;width:100%}.pj-category-tabs{display:flex;gap:9px;overflow:auto;padding:24px 0 18px}.pj-category-tabs button{background:#fff;border:1px solid var(--pj-line);border-radius:999px;color:var(--pj-green);font-size:13px;font-weight:700;padding:10px 16px;white-space:nowrap}.pj-category-tabs button.active{background:var(--pj-green);border-color:var(--pj-green);color:#fff}.pj-menu-list{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.pj-menu-list .category-title{color:var(--pj-green);font-family:Georgia,serif;font-size:24px;grid-column:1/-1;margin:25px 0 4px}.product-row{align-items:center;background:var(--pj-paper);border:1px solid var(--pj-line);border-radius:17px;color:var(--pj-ink);display:flex;gap:18px;justify-content:space-between;min-height:140px;padding:20px;text-align:left;transition:transform .15s,border-color .15s;width:100%}.product-row:hover{border-color:#93ad9d;transform:translateY(-2px)}.product-row h3{color:var(--pj-green);font-size:17px;margin:0 0 7px}.product-row p{color:var(--pj-muted);font-size:13px;line-height:1.5;margin:0 0 11px}.price-line{align-items:center;display:flex;gap:12px}.price-line strong{color:var(--pj-green)}.popular{background:#fff0d7;border-radius:99px;color:#9b5723;font-size:10px;padding:4px 8px}.product-thumb{align-items:center;background:#f2e1bc;border:1px solid #ebd1a0;border-radius:15px;color:var(--pj-green);display:flex;flex:0 0 70px;font-family:Georgia,serif;font-size:22px;font-weight:800;height:70px;justify-content:center}.pj-cart-bar{align-items:center;background:var(--pj-green);border:0;border-radius:16px;bottom:16px;box-shadow:var(--pj-shadow);color:#fff;display:flex;gap:14px;left:50%;max-width:660px;padding:15px 20px;position:fixed;transform:translateX(-50%);width:calc(100% - 32px);z-index:20}.pj-cart-bar[hidden]{display:none}.pj-cart-bar>span{align-items:center;background:var(--pj-orange);border-radius:50%;color:#211e18;display:flex;font-weight:800;height:27px;justify-content:center;width:27px}.pj-cart-bar b{margin-left:auto}.pj-sheet,.pj-confirm-modal{border:0;border-radius:24px;box-shadow:var(--pj-shadow);max-height:min(90vh,850px);max-width:700px;padding:0;width:calc(100% - 24px)}.pj-sheet::backdrop,.pj-confirm-modal::backdrop{background:rgba(10,24,18,.55);backdrop-filter:blur(4px)}.pj-sheet-card{background:var(--pj-paper);border:0;border-radius:24px;display:grid;grid-template-columns:minmax(140px,.58fr) minmax(0,1fr);max-height:90vh;overflow:auto;position:relative}.pj-sheet-close{background:#fff;border:1px solid var(--pj-line);border-radius:50%;font-size:24px;height:40px;position:absolute;right:14px;top:14px;width:40px;z-index:1}.pj-sheet-image{align-items:center;background:radial-gradient(circle,#f0cf8f,#eddfc3);color:var(--pj-green);display:flex;font-family:Georgia,serif;font-size:60px;font-weight:800;justify-content:center;min-height:230px}.pj-sheet-body{padding:32px 26px}.pj-sheet-body h2{color:var(--pj-green);font-family:Georgia,serif;font-size:28px;margin:0 0 7px}.pj-sheet-body>p{color:var(--pj-muted);font-size:13px;line-height:1.5}.pj-option-group{display:grid;gap:7px;margin:20px 0}.pj-option-group h3{color:var(--pj-green);font-size:13px;margin:0 0 4px}.option{align-items:center;background:#fff;border:1px solid var(--pj-line);border-radius:10px;display:flex;font-size:12px;gap:8px;padding:9px}.option span{flex:1}.option strong{font-size:11px;white-space:nowrap}.pj-quantity-row{align-items:center;display:flex;gap:17px;justify-content:center;margin:18px}.pj-quantity-row button{background:#f2ebdd;border:0;border-radius:50%;font-size:21px;height:38px;width:38px}.pj-primary-action{background:var(--pj-green);border:0;border-radius:12px;color:#fff;font-weight:800;padding:14px 18px;width:100%}.pj-primary-action:disabled{cursor:not-allowed;opacity:.5}.pj-cart-card{display:block}.pj-cart-items{display:grid;gap:10px;max-height:180px;overflow:auto}.cart-item{align-items:center;border-bottom:1px solid var(--pj-line);display:flex;font-size:13px;gap:12px;padding:10px 0}.cart-item>span{flex:1}.cart-item h3,.cart-item p{margin:2px 0}.cart-item h3{font-size:13px}.cart-item p{color:var(--pj-muted);font-size:11px}.pj-checkout-panel{display:grid;gap:11px;grid-template-columns:1fr 1fr;margin:20px 0}.pj-checkout-panel>label,.pj-checkout-panel>#deliveryFields,.pj-checkout-panel>.delivery-rule,.pj-checkout-panel>.pj-honeypot,.pj-checkout-panel>.pj-pay-methods{grid-column:1/-1}.pj-checkout-panel label{display:grid;gap:6px}.pj-checkout-panel textarea{resize:vertical}.pj-optional{color:var(--pj-muted);font-size:11px;font-weight:500}.pj-honeypot{left:-9999px;position:absolute}.delivery-rule{color:var(--pj-muted);font-size:12px;margin:0}.delivery-rule.warning,.pj-checkout-error{color:#a34534}.pj-pay-methods{display:grid;gap:8px;grid-template-columns:1fr 1fr}.pay-method{background:#fff;border:1px solid var(--pj-line);border-radius:10px;color:var(--pj-green);font-size:12px;font-weight:700;padding:12px}.pay-method.active{background:#e9f1ec;border-color:var(--pj-green)}.pj-checkout-error{background:#fff0ed;border-radius:10px;font-size:13px;margin:10px 0;padding:12px}.pj-totals{display:grid;gap:8px;grid-template-columns:1fr auto;margin:20px 0}.pj-totals strong{color:var(--pj-green);text-align:right}.pj-confirm-card{background:var(--pj-paper);padding:36px;text-align:center}.pj-confirm-card h2{color:var(--pj-green);font-family:Georgia,serif;font-size:36px;margin:0 0 10px}.pj-confirm-card>p:not(.pj-eyebrow){color:var(--pj-muted);line-height:1.5}.pj-success-mark{align-items:center;background:#e2f0e7;border-radius:50%;color:var(--pj-green);display:flex;font-size:30px;height:60px;justify-content:center;margin:0 auto 20px;width:60px}.pj-order-progress{background:#f5f0e5;border-radius:12px;margin:22px 0;padding:16px;text-align:left}.pj-order-progress>span{color:var(--pj-green);font-weight:800}.pj-progress-track{background:#e4ddcf;border-radius:99px;height:7px;margin:10px 0;overflow:hidden}.pj-progress-track span{background:var(--pj-orange);display:block;height:100%;transition:width .3s}.pj-order-progress small{color:var(--pj-muted)}.pj-secondary-action{border:1px solid var(--pj-line);border-radius:10px;color:var(--pj-green);display:block;font-weight:700;margin:10px 0;padding:12px;text-decoration:none}.pj-tracking{background:var(--pj-paper);border:1px solid var(--pj-line);border-radius:22px;margin:48px auto;max-width:700px;padding:36px}.pj-tracking h1{color:var(--pj-green);font-family:Georgia,serif}.pj-tracking ol{display:grid;gap:14px;padding-left:22px}.pj-tracking li{padding-left:5px}.pj-tracking time{color:var(--pj-muted);display:block;font-size:12px;margin-top:4px}.pj-tracking-note{color:var(--pj-muted);font-size:13px}
@media(max-width:760px){.pj-topbar{gap:9px;padding:12px 15px}.pj-back-button{display:none}.pj-brand{font-size:14px}.pj-cart-link{display:none}.pj-delivery-chip{margin-left:auto}.pj-hero{border-radius:0 0 25px 25px;grid-template-columns:1fr;padding:44px 25px 25px}.pj-hero-art{display:none}.pj-store-facts{gap:9px 17px}.pj-menu-section{padding:42px 16px}.pj-menu-list{grid-template-columns:1fr}.product-row{min-height:120px;padding:16px}.pj-sheet-card{display:block}.pj-sheet-image{min-height:125px}.pj-sheet-body{padding:24px 18px}.pj-checkout-panel{grid-template-columns:1fr}.pj-checkout-panel>label{grid-column:1}.pj-confirm-card{padding:28px 20px}}
/* One scroll area per dialog; the page stays still while a sheet is open. */
html:has(.pj-sheet[open]),html:has(.pj-confirm-modal[open]){overflow:hidden}
.pj-sheet{overflow:hidden;max-height:min(90dvh,850px)}
.pj-sheet-card{max-height:min(90dvh,850px);overflow-y:auto;overscroll-behavior:contain}
.pj-cart-items{max-height:none;overflow:visible}
.pj-hero{box-shadow:0 20px 48px #173f3216}
.pj-hero-copy>p:not(.pj-eyebrow){font-size:17px}
.pj-primary-link:hover,.pj-primary-action:not(:disabled):hover{filter:brightness(1.08)}
.product-row:focus-visible,.pj-storefront button:focus-visible{outline:3px solid #e58a45;outline-offset:3px}
.pj-cart-card .pj-sheet-close{position:sticky;float:right;top:12px;margin:12px 12px -52px 0}
@media(max-width:760px){.pj-sheet{max-height:92dvh}.pj-sheet-card{max-height:92dvh}.pj-hero h1{font-size:clamp(38px,11vw,60px)}}

/* Customer storefront */
.pj-storefront{--pj-cream:#f9f6ef;--pj-paper:#fffefa;--pj-green:#153e30;--pj-line:#e8e4db;background:var(--pj-cream)}
.pj-topbar{max-width:1280px;padding:14px 28px;gap:18px}
.pj-brand-mark{border-radius:50%;background:#163f30;color:#f7db9c;font-family:Georgia,serif}
.pj-delivery-chip{background:#fff;border:1px solid #e7e3d8;border-radius:14px;padding:8px 14px;min-height:48px}
.pj-search-trigger{width:46px;height:46px;border-radius:50%;background:#fff;border:1px solid #e7e3d8;display:grid;place-items:center;line-height:1}
.pj-hero{border-radius:24px;max-width:1224px;margin:18px auto 0;padding:58px clamp(28px,6vw,80px) 32px;background:radial-gradient(circle at 85% 20%,#356a4d 0,transparent 38%),#173f32;box-shadow:none}
.pj-hero h1{font-size:clamp(42px,5.6vw,70px);line-height:1.04;max-width:600px}
.pj-hero-copy>p:not(.pj-eyebrow){font-size:16px;max-width:470px}
.pj-primary-link{background:#f2b670;color:#173f32;align-items:center;justify-content:space-between;min-height:52px;padding:14px 22px;gap:34px}
.pj-hero-art{max-width:260px;filter:drop-shadow(0 14px 20px #09291c55)}
.pj-store-facts{border-top:1px solid #ffffff2b;padding-top:22px;font-size:13px}
.pj-menu-section{max-width:1224px;padding-top:54px}
.pj-section-heading h2{font-size:clamp(32px,4vw,45px);line-height:1.1}
.pj-category-tabs{scrollbar-width:none;scroll-snap-type:x proximity;gap:8px}.pj-category-tabs::-webkit-scrollbar{display:none}.pj-category-tabs button{scroll-snap-align:start;min-height:44px;padding:10px 17px}
.pj-menu-list{gap:12px}.pj-menu-list .category-title{font-family:Inter,system-ui,sans-serif;font-size:21px;letter-spacing:-.025em;margin-top:30px}
.product-row{min-height:138px;padding:20px;border-radius:16px;box-shadow:0 3px 12px #173f3206}.product-row h3{font-size:17px}.product-row p{font-size:13px;line-height:1.55}.product-thumb{background:#f5e9d1;border:0;border-radius:14px;width:66px;height:66px;flex-basis:66px}
.pj-cart-bar{bottom:max(16px,env(safe-area-inset-bottom));min-height:60px;box-shadow:0 12px 32px #163f3240}
.pj-sheet-close{z-index:4}.pj-checkout-panel input,.pj-checkout-panel select,.pj-checkout-panel textarea{min-height:48px;font-size:16px}
@media(max-width:760px){.pj-topbar{padding:10px 16px;gap:10px}.pj-brand small{font-size:10px}.pj-brand-mark{width:38px;height:38px}.pj-delivery-chip{margin-left:auto;padding:6px 10px;min-height:44px}.pj-delivery-chip small{font-size:10px}.pj-delivery-chip strong{font-size:12px}.pj-search-trigger{width:44px;height:44px;flex-shrink:0}.pj-hero{margin:8px 12px 0;border-radius:20px;padding:34px 24px 24px;min-height:0;gap:22px}.pj-hero h1{font-size:clamp(38px,10vw,54px);max-width:340px}.pj-hero-copy>p:not(.pj-eyebrow){font-size:14px}.pj-primary-link{width:100%;justify-content:space-between}.pj-store-facts{display:grid;grid-template-columns:1fr 1fr;gap:10px;font-size:11px}.pj-menu-section{padding:36px 16px 100px}.pj-section-heading h2{font-size:34px}.pj-category-tabs{position:sticky;top:0;z-index:9;background:var(--pj-cream);margin:0 -16px;padding:14px 16px}.pj-menu-list{gap:9px}.product-row{min-height:110px;padding:16px;gap:12px}.product-row h3{font-size:16px}.product-row p{font-size:12px}.product-thumb{width:54px;height:54px;flex-basis:54px;font-size:18px}.pj-sheet{margin:auto auto 0;border-radius:22px 22px 0 0;width:100%;max-height:92dvh}.pj-sheet-card{border-radius:22px 22px 0 0;max-height:92dvh}.pj-sheet-body{padding:24px 20px calc(24px + env(safe-area-inset-bottom))}.pj-sheet-image{min-height:100px}.pj-confirm-modal{width:calc(100% - 24px)} }
.pj-storefront [hidden]{display:none!important}

/* ImageGen artwork is illustrative, separate from product photography. */
.pj-hero-art{display:block;position:relative;aspect-ratio:4/3;width:100%;max-width:510px;align-self:center;background:#1d4a38;border-radius:20px;overflow:hidden;filter:none;box-shadow:0 18px 35px #09291c40}
.pj-hero-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
@media(max-width:760px){.pj-hero-art{display:block;aspect-ratio:16/9;max-width:none;margin:0;border-radius:14px;grid-row:2}.pj-hero{gap:20px}.pj-hero-copy{grid-row:1}.pj-store-facts{grid-row:3}}

.pj-brand-logo{display:block;width:48px;height:48px;object-fit:contain;flex:none}@media(max-width:760px){.pj-brand-logo{width:44px;height:44px}}
