.retail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px}.retail-product{border:1px solid #dce2cf;border-radius:14px;padding:16px;background:#fff;overflow-wrap:anywhere}.retail-product>img{width:100%;max-height:220px;object-fit:contain;border-radius:10px}.retail-product h4{margin:12px 0 8px}.retail-product p{white-space:pre-wrap;font-size:14px}.retail-section{margin:20px 0;padding:18px;border:1px solid #dce2cf;border-radius:16px}.retail-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:10px 0}.retail-actions h3{flex:1;min-width:130px;margin:0}.retail-edit-form{padding:18px;background:#f4f6ef;border-radius:12px;margin:18px 0;display:grid;gap:12px}.retail-edit-form label{display:grid;gap:6px;font-size:13px}.retail-edit-form input:not([type=checkbox]),.retail-edit-form textarea{padding:12px;border:1px solid #cdd4bd;border-radius:8px;width:100%;box-sizing:border-box;background:#fff;color:#233018;font:inherit}.retail-edit-form .retail-check{display:flex;align-items:center;gap:8px}.retail-photo-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.retail-photo-preview img{width:84px;height:84px;object-fit:cover;border-radius:10px}.retail-photo-row input{flex:1;min-width:160px}.retail-status{color:#89462e;font-size:14px}.retail-confirm{padding:16px;background:#fff0e5;border-radius:10px}.retail-confirm button{margin:8px}.retail-public{padding:30px 0}.retail-public h2{font-family:Georgia,serif;font-size:32px}.retail-public [data-retail-currency]{font-size:13px}.retail-public .retail-section{border:0;padding:0;margin:28px 0}.retail-public .retail-section h3{font-family:Georgia,serif;font-size:25px;margin:10px 0}.retail-public .retail-section>p{white-space:pre-wrap}.retail-editor .btn{padding:9px 14px;cursor:pointer}.retail-editor [hidden]{display:none!important}

.retail-public{min-height:55vh}.retail-public h1{font-size:clamp(36px,5vw,60px);margin:12px 0 20px}.retail-public .retail-section h2{font-size:28px;margin:12px 0}.retail-product h3{font-size:18px;margin:12px 0 8px}.retail-categories{display:flex;gap:10px;flex-wrap:wrap;margin:26px 0}.retail-categories button[aria-pressed=true]{background:var(--olive);color:#fff}.retail-categories .btn{cursor:pointer}.retail-public .retail-product img{aspect-ratio:1;object-fit:contain}@media(max-width:650px){.mobile-bottom-nav{grid-template-columns:repeat(6,minmax(0,1fr))}.mobile-bottom-nav small{font-size:9px}.retail-public{padding-top:8px}.retail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.retail-product{padding:12px}.retail-product h3{font-size:16px}.retail-categories{gap:8px}}

.footer-contact a{display:inline-flex;align-items:center;justify-content:center;gap:9px}.social-icon{width:21px;height:21px;flex:none}@media(max-width:650px){.site-footer{align-items:center;text-align:center}.footer-contact{align-items:center;justify-content:center;width:100%}.footer-contact a{justify-content:center}}

.retail-page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.retail-page-heading h1{margin-bottom:10px}.retail-cart-status{min-height:1.5em;margin:4px 0;color:var(--olive);font-size:14px}.retail-public .retail-product{display:flex;flex-direction:column;align-items:stretch}.retail-public .retail-product>b{margin-top:auto}.retail-add-cart{width:100%;margin-top:14px;padding:10px 12px;min-height:44px}.retail-cart-floating{position:fixed;inset-inline-end:24px;bottom:24px;z-index:55;padding:15px 22px;border:0;border-radius:12px;background:var(--olive);color:white;box-shadow:0 6px 28px #24301833;font:inherit;font-size:14px}.retail-cart-floating[hidden]{display:none}.retail-cart-dialog{width:min(620px,calc(100vw - 28px));max-height:calc(100dvh - 40px);padding:0;border:1px solid var(--line);border-radius:18px;color:var(--ink);background:#fff;box-shadow:0 20px 90px #17201233;overflow:auto;overscroll-behavior:contain}.retail-cart-dialog::backdrop{background:#14200d75;backdrop-filter:blur(3px)}.retail-cart-heading{position:sticky;top:0;background:#fff;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:22px 24px;border-bottom:1px solid var(--line)}.retail-cart-heading h2{font-size:30px;margin:0}.retail-cart-close{border:1px solid var(--line);background:#fff;border-radius:50%;width:40px;height:40px;font-size:25px;line-height:1;flex:none}.retail-cart-body{padding:0 24px}.retail-cart-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:18px;padding:20px 0;border-bottom:1px solid var(--line)}.retail-cart-item{min-width:0;overflow-wrap:anywhere}.retail-cart-item h3{margin:0 0 5px;font-size:16px;font-weight:500}.retail-cart-item small,.retail-cart-item p{font-size:12px;color:var(--muted);margin:4px 0}.retail-cart-quantity{display:flex;align-items:center;gap:10px;direction:ltr}.retail-cart-step{width:34px;height:34px;border:1px solid var(--line);border-radius:8px;background:#f5f7f1;font:inherit}.retail-cart-step:disabled{opacity:.4;cursor:default}.retail-cart-row-end{text-align:end;display:grid;gap:8px;font-size:13px}.retail-cart-remove{padding:3px 0;border:0;background:none;color:var(--muted);font:inherit;font-size:12px;text-decoration:underline}.retail-cart-footer{padding:22px 24px}.retail-cart-total{display:flex;justify-content:space-between;gap:20px;font-size:19px;margin-bottom:18px}.retail-cart-order{width:100%}.retail-cart-order[aria-disabled=true]{opacity:.5;cursor:default;transform:none}.retail-cart-hint{font-size:12px;line-height:1.7;color:var(--muted);margin:14px 0 0}@media(max-width:650px){.retail-page-heading{gap:8px}.retail-page-heading>.btn{min-height:44px;padding:10px 12px}.retail-cart-floating{bottom:calc(106px + env(safe-area-inset-bottom));inset-inline:18px;padding:13px 18px;text-align:center}.retail-cart-dialog{max-height:calc(100dvh - 28px)}.retail-cart-heading{padding:18px}.retail-cart-body{padding-inline:18px}.retail-cart-row{grid-template-columns:minmax(0,1fr) auto;gap:10px}.retail-cart-quantity{grid-column:1;grid-row:2}.retail-cart-row-end{grid-column:2;grid-row:1 / 3;max-width:105px;overflow-wrap:anywhere}.retail-cart-footer{padding:20px 18px}.retail-cart-item h3{font-size:15px}.retail-cart-order{padding-inline:14px}}
/* Product names must not inherit the larger section-heading typography. */
.retail-public .retail-product h3{font-family:'DM Sans',Arial,sans-serif;font-size:18px;font-weight:500;line-height:1.4;margin:14px 0 10px;overflow-wrap:anywhere}
.retail-public .retail-product>p:empty{display:none}
.retail-public .retail-product>img{max-height:none;aspect-ratio:1;object-fit:contain;object-position:center;background:#fafbf8;flex:none}
@media(max-width:650px){.retail-public .retail-product h3{font-size:16px;line-height:1.45}.retail-cart-step{width:40px;height:40px}.retail-cart-quantity{gap:8px}}

.retail-photo-open{display:block;width:100%;aspect-ratio:1;padding:0;border:0;border-radius:10px;background:#fafbf8;overflow:hidden;cursor:zoom-in;flex:none}.retail-photo-open>img{display:block;width:100%;height:100%;max-height:none;object-fit:contain;border-radius:10px}.retail-has-photo h3{cursor:zoom-in}.retail-photo-dialog{width:min(760px,calc(100vw - 28px));max-height:calc(100dvh - 28px);padding:0;border:1px solid var(--line);border-radius:18px;background:#fff;color:var(--ink);box-shadow:0 20px 90px #17201233;overflow:auto;overscroll-behavior:contain}.retail-photo-dialog::backdrop{background:#14200d99;backdrop-filter:blur(4px)}.retail-photo-heading{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 24px;background:#fff;border-bottom:1px solid var(--line)}.retail-photo-heading h2{font-family:'DM Sans',Arial,sans-serif;font-weight:500;font-size:21px;line-height:1.4;margin:0;overflow-wrap:anywhere;min-width:0}.retail-photo-body{padding:18px 24px;background:#fafbf8}.retail-photo-image{display:block;width:100%;height:auto;max-height:60dvh;object-fit:contain;margin:0 auto}.retail-photo-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;padding:18px 24px}.retail-photo-footer>b{font-size:18px}.retail-photo-footer .retail-cart-hint{width:100%;margin:0}.retail-photo-footer .retail-cart-hint:empty{display:none}@media(max-width:650px){.retail-photo-heading,.retail-photo-footer{padding:16px}.retail-photo-heading h2{font-size:17px}.retail-photo-body{padding:14px}.retail-photo-footer .btn{padding:12px 18px;min-height:44px}}
