/* Small extensions of the existing green/cream storefront. */
.featured-badge{display:inline-block;align-self:flex-start;border:1px solid #dfd1b4;border-radius:20px;color:#775721;background:#f7f0df;font-size:11px;font-weight:500;padding:1px 9px;margin:8px;line-height:1.8}
.product-category .featured-badge{margin:0 10px 0 0;vertical-align:middle}
.product-status{display:block;align-self:flex-start;font-size:12px;line-height:1.8;border-radius:5px;padding:3px 8px;margin:6px 0;background:var(--green-light);color:var(--green)}
.status-temporarily_unavailable{background:#f7eee8;color:#824a35}
.recent-card>.product-status{margin-inline:8px}
.availability-inquiry{display:flex;justify-content:center;align-items:center;min-height:44px;font-size:14px;color:var(--green);text-decoration:underline;text-underline-offset:4px}
.product-facts{font-size:14px;margin:10px 0 0;padding-top:12px;border-top:1px solid var(--line)}
.product-facts>div{display:flex;gap:12px;justify-content:space-between;padding:5px 0}
.product-facts dt{color:var(--muted);flex-shrink:0}.product-facts dd{margin:0;overflow-wrap:anywhere}
.detail-content>.product-card{align-items:start}
.detail-content>.product-card>.product-media{align-self:start;position:sticky;top:80px}
.detail-content>.product-card .product-body{gap:0}
.detail-content .product-body>.product-tools{margin-top:12px;margin-bottom:0}
.detail-content>.product-card .order-button{width:100%}
.detail-content>.product-card .flavor-error{height:1.8em}
.detail-occasion{min-height:46px;width:100%;margin-top:12px;padding:8px;line-height:1.8}
.related-products{border-top:1px solid var(--line);margin-top:22px;padding-top:16px}
.related-products h3{font-size:19px;margin:0 0 12px}
.related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.related-grid .recent-card{max-width:none}
.related-grid .recent-open h3{font-size:14px;margin:8px 10px 4px}
.related-grid .recent-open p{font-size:13px}
.related-grid .product-tools{margin:0;padding:0 6px;justify-content:flex-end}
.related-grid .order-button{font-size:12px;min-height:44px}
.order-information{margin-bottom:40px;padding:22px 26px;border:1px solid var(--line);border-radius:8px;background:#eff1e7}
.order-information h2{font-size:23px}.order-information>p{margin:8px 0;font-size:14px}
.order-information a{text-decoration:underline;text-underline-offset:4px}
.order-information .delivery-note{font-weight:600;color:var(--green)}
.store-optional-info{font-size:14px;margin:0}.store-optional-info p{margin:6px 0}
.occasion-product-context{padding:10px;background:var(--green-light);border-radius:6px;overflow-wrap:anywhere}
.footer .privacy-link{font-size:12px;text-decoration:underline;text-underline-offset:4px}
.privacy-page{max-width:800px;margin:40px auto;padding:28px;border:1px solid var(--line);border-radius:10px;background:white}
.privacy-page h1{font-size:30px;letter-spacing:0}.privacy-page h2{font-size:20px;margin-top:24px}.privacy-page p{font-size:16px}.privacy-page a{text-decoration:underline;text-underline-offset:4px}
@media(max-width:760px){
  .detail-content>.product-card{align-items:stretch}
  .detail-content>.product-card>.product-media{position:static}
  .related-grid{display:flex;overflow-x:auto;gap:12px;padding-bottom:12px;scroll-snap-type:x proximity;overscroll-behavior-x:contain}
  .related-grid>.recent-card{flex:0 0 165px;height:auto;scroll-snap-align:start}
  .order-information{padding:18px;margin-bottom:32px}.order-information h2{font-size:21px}
  .privacy-page{margin:16px auto;padding:20px}.privacy-page h1{font-size:26px}
}
