/* Zygo / Merchant storefront — custom merchant profile.
   Loaded after zygo-refined and zygo-marketplace-v2 ONLY on storefront.show.
   The markup uses real merchant data, existing cart and marketplace routes. */
body.zm-store-view{--zsp-ink:#0b1e13;--zsp-dark:#061e10;--zsp-lime:#8af000;--zsp-sub:#536257;--zsp-edge:#e1e6e2;--zsp-paper:#fff;background:#fff!important;color:#111c15!important;padding-bottom:65px;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important}
body.zm-store-view .sf-foot{background:#f8faf8;border-top:1px solid var(--zsp-edge);margin-top:55px}
body.zm-store-view .zsp-page{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#fff;color:var(--zsp-ink);line-height:1.45;min-height:80vh}
.zsp-page *{box-sizing:border-box}
.zsp-page a{text-decoration:none}
.zsp-page :is(button,input,select){font:inherit}
.zsp-page :is(button,a,input,select,summary):focus-visible{outline:3px solid #71bd19;outline-offset:3px}
.zsp-page svg{flex-shrink:0;width:19px;height:19px}
.zsp-page [hidden]{display:none!important}
.zsp-wrap{width:min(1440px,calc(100% - 72px));margin-inline:auto}
/* Menu styled like the marketplace experience, navigation modelled after Uber's merchant page */
.zsp-top{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid #e9ece9;box-shadow:0 1px 0 rgba(4,24,10,.025)}
.zsp-top-inner{display:flex;align-items:center;gap:21px;min-height:76px}
.zsp-menu{position:relative;flex:0 0 auto}
.zsp-menu summary{height:40px;width:40px;display:flex;align-items:center;justify-content:center;border-radius:10px;list-style:none;cursor:pointer;color:#14271b}
.zsp-menu summary::-webkit-details-marker{display:none}
.zsp-menu summary:hover{background:#f0f4ef}
.zsp-menu summary svg{height:24px;width:24px}
.zsp-menu-panel{position:absolute;top:calc(100% + 10px);left:0;width:258px;padding:10px;border:1px solid #e1e8e2;background:#fff;border-radius:15px;box-shadow:0 20px 48px rgba(5,29,15,.16);display:grid;gap:4px}
.zsp-menu-panel a{display:flex;align-items:center;gap:12px;border-radius:10px;padding:13px 12px;font-size:13px;font-weight:750}
.zsp-menu-panel a:hover{background:#eef6e7}
.zsp-menu-panel svg{width:17px;height:17px}
.zsp-wordmark{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.zsp-wordmark img{width:35px;height:35px;object-fit:contain;border-radius:9px;background:#000}
.zsp-wordmark strong{font-weight:950;font-size:21px;letter-spacing:-1px;white-space:nowrap;color:#051b10}
.zsp-wordmark span{font-weight:700;color:#3f9a10;letter-spacing:-.055em}
.zsp-location{display:flex;align-items:center;gap:7px;white-space:nowrap;font-size:13px;font-weight:700;color:#25332a}
.zsp-location svg{width:16px;height:16px}
.zsp-location:hover{color:#308b0a}
.zsp-top-search{height:46px;display:flex;align-items:center;gap:13px;padding:0 19px;background:#f4f5f4;border-radius:25px;flex:1;min-width:90px;margin-left:12px;border:1px solid transparent}
.zsp-top-search:focus-within{border-color:#73b92c;background:#fff;box-shadow:0 0 0 2px #ebf8e4}
.zsp-top-search svg{width:19px;height:19px;color:#1b2d1f}
.zsp-top-search input{background:transparent;border:0;outline:0;width:100%;min-width:0;color:#18251b;font-weight:520;font-size:14px}
.zsp-top-search input::placeholder{color:#747e77}
.zsp-top-actions{display:flex;align-items:center;gap:17px;flex:0 0 auto}
.zsp-account-link{display:flex;align-items:center;gap:7px;color:#132218;font-size:13px;font-weight:750;white-space:nowrap}
.zsp-account-link svg{width:19px;height:19px}
.zsp-cart-link{position:relative;display:flex;align-items:center;justify-content:center;width:39px;height:39px;color:#101c13}
.zsp-cart-link svg{width:25px;height:25px}
.zsp-cart-link b{position:absolute;top:-4px;right:-8px;display:grid;place-items:center;font-size:11px;font-weight:850;background:#18834a;color:#fff;min-width:22px;height:22px;padding:0 4px;border-radius:20px}
.zsp-breadcrumbs{display:flex;align-items:center;gap:10px;min-height:52px;font-size:12px;color:#7a837c}
.zsp-breadcrumbs a{font-weight:700;color:#496053}
.zsp-breadcrumbs svg{height:15px;width:15px}
.zsp-breadcrumbs span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* Banner and merchant identity */
.zsp-banner{position:relative;height:298px;background:#e8efe8;border-radius:15px;overflow:visible}
.zsp-banner-photo{display:block;width:100%;height:100%;object-fit:cover;border-radius:15px}
.zsp-banner-fallback{width:100%;height:100%;border-radius:15px;display:flex;justify-content:center;align-items:center;text-align:center;padding:30px;background:linear-gradient(120deg,#0d3a21 0%,#157840 45%,#6bb93f 100%);color:#fff}
.zsp-banner-fallback span{font-size:clamp(25px,4vw,56px);font-weight:900;letter-spacing:-.035em;opacity:.95}
.zsp-banner-actions{position:absolute;right:22px;top:20px;display:flex;gap:10px}
.zsp-round-action{display:flex;align-items:center;justify-content:center;border:0;width:45px;height:45px;border-radius:50%;background:#fff;color:#0a1b10;box-shadow:0 3px 12px rgba(0,0,0,.12);cursor:pointer;transition:background .15s,color .15s}
.zsp-round-action:hover,.zsp-round-action.is-favorite{background:var(--zsp-lime);color:#12210f}
.zsp-round-action.is-favorite svg{fill:currentColor}
.zsp-round-action svg{width:20px;height:20px}
.zsp-overview{display:grid;grid-template-columns:minmax(0,1fr) minmax(290px,410px);align-items:end;gap:32px;padding:0 0 19px;border-bottom:1px solid #e7ebe8}
.zsp-overview-copy{display:flex;gap:14px;align-items:flex-end;min-width:0}
.zsp-store-logo{width:88px;height:88px;object-fit:cover;border-radius:50%;border:4px solid #fff;background:#fff;box-shadow:0 2px 9px rgba(5,21,9,.1);position:relative;top:-40px;flex:0 0 88px;margin-bottom:-28px}
.zsp-titleline{min-width:0;padding-top:17px}
.zsp-store-eyebrow{display:block;font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:#49812e;margin-bottom:4px}
.zsp-titleline h1{font-size:clamp(31px,3.2vw,48px);line-height:1.1;font-weight:900;letter-spacing:-.048em;color:#0c1c11;margin:0}
.zsp-titleline p{font-size:13px;color:#667068;margin:8px 0 0;line-height:1.5}
.zsp-search{height:44px;display:flex;align-items:center;gap:12px;min-width:0;align-self:end;background:#f5f6f5;border:2px solid #e0e3e0;border-radius:24px;padding:0 14px;margin-bottom:2px}
.zsp-search:focus-within{background:#fff;border-color:#85c645}
.zsp-search svg{width:18px;height:18px;color:#1a2920}
.zsp-search input{border:0;outline:0;background:transparent;width:100%;min-width:0;font-size:14px;color:#17231a}
.zsp-search input::placeholder{color:#798078}
.zsp-notice{margin:14px 0!important}
/* Sidebar and catalog follow the editorial merchant page layout */
.zsp-content{display:grid;grid-template-columns:296px minmax(0,1fr);column-gap:45px;align-items:start;padding-top:20px}
.zsp-side{position:sticky;top:91px;align-self:start;padding-bottom:26px;max-height:calc(100vh - 98px);overflow-y:auto;scrollbar-width:thin}
.zsp-store-facts{padding:4px 0 20px;border-bottom:1px solid #e7eae7}
.zsp-facts-line{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0 0 9px;font-size:13px}
.zsp-rating{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;font-weight:650}
.zsp-rating svg{width:15px;height:15px;fill:#101b12;stroke:#101b12}
.zsp-rating strong{font-weight:850}
.zsp-mid-dot{color:#6a756c}
.zsp-availability{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:700;color:#2f6d24}
.zsp-availability.is-off{color:#a56820}
.zsp-availability svg{width:15px;height:15px}
.zsp-address{display:flex;align-items:flex-start;gap:7px;margin:9px 0;color:#6c716d;font-size:12px;line-height:1.6}
.zsp-address svg{width:15px;height:15px;margin-top:2px;color:#536658}
.zsp-description{color:#667169;font-size:12px;line-height:1.65;margin:12px 0 0}
.zsp-minimum{font-size:12px;color:#496251;font-weight:650;margin-top:10px}
.zsp-menu-heading{padding:21px 0 13px;display:flex;align-items:baseline;gap:13px}
.zsp-menu-heading strong{font-size:18px;font-weight:850;letter-spacing:-.02em}
.zsp-menu-heading span{font-size:11px;color:#809085}
.zsp-side-menu{display:flex;flex-direction:column;align-items:stretch;gap:0;border-left:3px solid transparent}
.zsp-side-menu a{display:flex;align-items:center;padding:15px 18px;border-left:4px solid transparent;margin-left:-3px;color:#4a564c;font-size:15px;line-height:1.3;font-weight:550;min-height:50px;transition:background .15s}
.zsp-side-menu a:hover{background:#f5f7f5;color:#132019}
.zsp-side-menu a.is-active{background:#f0f2f0;color:#111d14;font-weight:750;border-left-color:#0d1f13}
.zsp-catalog{min-width:0}
.zsp-order-info{display:flex;align-items:center;gap:14px;flex-wrap:wrap;justify-content:space-between;border:1px solid #e3e7e3;border-radius:14px;padding:12px 15px;min-height:74px;margin-bottom:25px;background:#fff}
.zsp-order-methods{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.zsp-order-methods span{display:flex;gap:7px;align-items:center;background:#f4f5f4;color:#17271c;border-radius:25px;font-size:13px;padding:10px 14px;font-weight:780;white-space:nowrap}
.zsp-order-methods svg{width:16px;height:16px}
.zsp-cost-note{font-size:11px;color:#7f8981;max-width:215px;line-height:1.35}
.zsp-cart-cta{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:12px 14px;border-radius:9px;white-space:nowrap;background:#0b2315;color:#fff;font-size:12px;font-weight:850}
.zsp-cart-cta:hover{background:#205337;color:#fff}
.zsp-cart-cta svg{width:16px;height:16px}
.zsp-cart-cta b{background:#8af000;color:#0e2216;padding:1px 6px;border-radius:99px}
.zsp-section-heading{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:0 0 18px}
.zsp-section-heading h2{font-size:clamp(21px,2.25vw,30px);font-weight:890;line-height:1.12;letter-spacing:-.038em;margin:0;color:#0b1a11}
.zsp-section-heading p{color:#899289;font-size:12px;margin-top:5px}
.zsp-section-kicker{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.11em;font-weight:800;color:#468328;margin-bottom:7px}
.zsp-offers{margin-bottom:41px;scroll-margin-top:107px}
.zsp-offer-list{display:flex;gap:15px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding-bottom:6px}
.zsp-offer{display:flex;flex:0 0 min(410px,90%);height:156px;min-width:260px;overflow:hidden;border-radius:12px;background:#216c3b;color:#fff;scroll-snap-align:start}
.zsp-offer:nth-child(3n+2){background:#3c8028}
.zsp-offer:nth-child(3n+3){background:#14533b}
.zsp-offer>div:first-child{display:flex;flex:1;min-width:0;flex-direction:column;align-items:flex-start;padding:18px 15px 16px;gap:7px}
.zsp-offer small{color:#e0ffd5;font-size:11px;font-weight:800}
.zsp-offer strong{font-size:18px;font-weight:880;line-height:1.25;letter-spacing:-.03em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.zsp-offer span{font-size:15px;font-weight:850;margin-top:auto}
.zsp-offer s{font-size:11px;opacity:.7;font-weight:550;margin-left:4px}
.zsp-offer img,.zsp-offer-placeholder{object-fit:cover;height:100%;width:40%;background:#d5e9ce}
.zsp-offer-placeholder{display:grid;place-items:center;color:#306c3e}
.zsp-offer-placeholder svg{width:35px;height:35px}
.zsp-featured{margin:0 0 43px;scroll-margin-top:107px}
.zsp-slider-actions{display:flex;gap:9px}
.zsp-slider-actions button{width:38px;height:38px;display:grid;place-items:center;border:0;border-radius:50%;cursor:pointer;background:#f1f3f1;color:#1c271d}
.zsp-slider-actions button:hover{background:var(--zsp-lime)}
.zsp-slider-actions svg{width:17px;height:17px}
.zsp-featured-track{display:flex;gap:15px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding:2px 2px 12px}
.zsp-featured-track>.zsp-product{flex:0 0 clamp(200px,26%,260px);scroll-snap-align:start}
.zsp-category-section{scroll-margin-top:105px;margin:0 0 39px}
.zsp-products-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
/* Product cards: photo, name, honest current price, actual add-to-cart action */
.zsp-product{border:1px solid #e4e9e5;background:#fff;min-width:0;overflow:hidden;border-radius:14px;transition:box-shadow .18s,border-color .18s,transform .18s;display:flex;flex-direction:column}
.zsp-product:hover{border-color:#d3ded6;box-shadow:0 10px 22px rgba(4,25,12,.09);transform:translateY(-1px)}
.zsp-product-photo{width:100%;display:block;aspect-ratio:1.24;overflow:hidden;background:#f5f7f3}
.zsp-product-photo img{height:100%;width:100%;display:block;object-fit:cover;transition:transform .25s}
.zsp-product:hover .zsp-product-photo img{transform:scale(1.035)}
.zsp-photo-empty{height:100%;width:100%;display:flex;align-items:center;justify-content:center;background:#eaf3e6;color:#93ad94}
.zsp-photo-empty svg{height:36px;width:36px}
.zsp-product-info{padding:14px;flex:1;display:flex;flex-direction:column;gap:6px}
.zsp-product-name{font-weight:825;font-size:15px;letter-spacing:-.027em;line-height:1.32;color:#18271a;display:block}
.zsp-product-name:hover{color:#397b1a}
.zsp-product-info p{font-size:12px;line-height:1.45;color:#7b867e;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.zsp-product-footer{margin-top:auto;padding-top:6px}
.zsp-product-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px}
.zsp-product-price strong{font-size:17px;font-weight:900;letter-spacing:-.025em;color:#0e2014}
.zsp-product-price s{font-size:11px;color:#99a399}
.zsp-cart-form{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-top:10px}
.zsp-variant-label{flex:1 0 100%;font-size:11px;color:#758376;font-weight:700;display:flex;flex-direction:column;gap:3px}
.zsp-variant-label select{border:1px solid #dfe7df;background:#fff;border-radius:8px;width:100%;padding:7px;font-size:12px;min-width:0}
.zsp-add{border:0;background:#8af000;color:#14210f;border-radius:20px;min-height:32px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:12px;font-weight:830;padding:7px 12px;cursor:pointer;transition:background .15s}
.zsp-add:hover{background:#b2ff51}
.zsp-add svg{width:14px;height:14px;stroke-width:3px}
.zsp-add[disabled]{background:#e9ede9;color:#617263;cursor:not-allowed}
.zsp-add[disabled]:hover{background:#e9ede9}
.zsp-empty,.zsp-no-results{padding:45px 20px;border:1px solid #e9eae9;border-radius:12px;background:#f9faf9;text-align:center;color:#546658;margin:20px 0}
.zsp-empty svg{height:35px;width:35px;margin:0 auto 8px;opacity:.6}
.zsp-empty h2{font-size:19px;margin:6px 0}
.zsp-empty p{font-size:13px}
.zsp-no-results{font-size:14px;font-weight:650}
body.zm-store-view .sf-public-reviews{margin-top:35px;padding:21px 22px;background:#fafcf9;border-radius:15px;border:1px solid #e8ece8;box-shadow:none}
body.zm-store-view .sf-public-reviews-head h2{font-size:25px}
body.zm-store-view .sf-public-reviews-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.zsp-product.sf-hl{box-shadow:0 0 0 3px #8af000,0 15px 30px rgba(11,31,18,.14)}
body.zm-store-view .zsp-bottom-cart{background:#0a2314;box-shadow:0 -6px 24px rgba(0,0,0,.16);z-index:120}
body.zm-store-view .zsp-bottom-cart .inner{max-width:1440px}
body.zm-store-view .zsp-bottom-cart .sf-btn{background:#8af000;color:#092015}
@media(max-width:1250px){.zsp-content{grid-template-columns:245px minmax(0,1fr);gap:28px}.zsp-order-info{gap:10px}.zsp-cost-note{order:3;max-width:none;width:100%}.zsp-products-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.zsp-location{display:none}.zsp-featured-track>.zsp-product{flex-basis:245px}}
@media(max-width:880px){.zsp-wrap{width:min(100% - 38px,1440px)}.zsp-top-inner{gap:13px;min-height:67px}.zsp-top-search{margin-left:0}.zsp-account-link span{display:none}.zsp-banner{height:240px}.zsp-content{grid-template-columns:1fr;gap:0;padding-top:0}.zsp-side{position:static;max-height:none;overflow:visible;padding:14px 0 0}.zsp-store-facts{padding:0 0 14px}.zsp-menu-heading{display:none}.zsp-side-menu{flex-direction:row;overflow-x:auto;scrollbar-width:none;gap:5px;border:0;position:sticky;top:67px;z-index:35;background:#fff;padding:11px 0;border-bottom:1px solid #e6eae6;margin-bottom:19px}.zsp-side-menu::-webkit-scrollbar{display:none}.zsp-side-menu a{margin:0;white-space:nowrap;flex:0 0 auto;border:1px solid #e6e9e7;padding:10px 14px;border-radius:22px;min-height:0;font-size:12px}.zsp-side-menu a.is-active{border:1px solid #153019;background:#102719;color:#fff}.zsp-products-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.zsp-overview{grid-template-columns:1fr;gap:12px}.zsp-search{margin:0 0 14px}.zsp-order-info{margin-bottom:24px}.zsp-cost-note{order:0;width:auto;max-width:215px}}
@media(max-width:610px){.zsp-wrap{width:calc(100% - 28px)}.zsp-top-inner{gap:8px;min-height:60px}.zsp-menu summary{width:29px;height:36px}.zsp-menu summary svg{width:22px;height:22px}.zsp-wordmark img{width:29px;height:29px;border-radius:7px}.zsp-wordmark strong{font-size:18px}.zsp-wordmark span{display:none}.zsp-top-search{height:38px;padding:0 11px;gap:8px;min-width:0}.zsp-top-search input{font-size:11px}.zsp-top-search svg{width:15px;height:15px}.zsp-top-actions{gap:3px}.zsp-account-link{display:none}.zsp-cart-link{width:34px}.zsp-cart-link svg{width:23px;height:23px}.zsp-breadcrumbs{min-height:43px}.zsp-banner{height:178px;border-radius:10px}.zsp-banner-photo,.zsp-banner-fallback{border-radius:10px}.zsp-banner-actions{top:9px;right:9px;gap:6px}.zsp-round-action{width:35px;height:35px}.zsp-round-action svg{width:17px;height:17px}.zsp-overview{padding-bottom:15px;gap:8px}.zsp-overview-copy{gap:10px;align-items:flex-start}.zsp-store-logo{width:67px;height:67px;flex-basis:67px;top:-25px;border-width:3px;margin-bottom:-22px}.zsp-titleline{padding-top:14px}.zsp-titleline h1{font-size:28px}.zsp-store-eyebrow{font-size:9px}.zsp-titleline p{font-size:12px}.zsp-search{height:41px;margin-bottom:0}.zsp-store-facts{padding-top:9px}.zsp-address{font-size:12px}.zsp-side-menu{top:60px;margin-bottom:14px}.zsp-order-info{padding:10px;border-radius:11px;display:grid;grid-template-columns:1fr;gap:10px}.zsp-order-methods{flex-wrap:nowrap;overflow-x:auto}.zsp-order-methods span{font-size:11px;padding:9px 12px;white-space:nowrap}.zsp-cost-note{order:3;max-width:none;font-size:10px}.zsp-cart-cta{justify-self:stretch}.zsp-section-heading h2{font-size:24px}.zsp-offers{margin-bottom:31px}.zsp-offer{flex-basis:88%;height:146px}.zsp-featured{margin-bottom:28px}.zsp-featured-track>.zsp-product{flex-basis:230px}.zsp-products-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.zsp-product-info{padding:10px}.zsp-product-name{font-size:13px}.zsp-product-info p{font-size:11px}.zsp-product-price strong{font-size:15px}.zsp-product-photo{aspect-ratio:1.05}.zsp-add{font-size:11px;min-height:29px;padding:6px 10px}.zsp-category-section{margin-bottom:29px}.zsp-public-reviews{padding:14px}.zsp-slider-actions button{height:31px;width:31px}body.zm-store-view .sf-public-reviews{padding:15px}body.zm-store-view .sf-public-reviews-grid{grid-template-columns:1fr}.zsp-bottom-cart .count{font-size:11px}.zsp-bottom-cart .sf-btn{font-size:12px;padding:9px 11px}}
@media(max-width:355px){.zsp-wordmark strong{font-size:16px}.zsp-top-search{padding:0 7px}.zsp-top-search input{font-size:10px}.zsp-products-grid{gap:7px}.zsp-product-info{padding:8px}.zsp-product-name{font-size:12px}}
@media(prefers-reduced-motion:reduce){.zsp-page *{scroll-behavior:auto!important;transition:none!important}}
/* Ensure horizontally scrollable category/featured rails never widen narrow phones. */
@media(max-width:880px){.zsp-content{grid-template-columns:minmax(0,1fr)}.zsp-side,.zsp-catalog,.zsp-order-methods,.zsp-featured-track,.zsp-offer-list,.zsp-side-menu{min-width:0;max-width:100%}}
