{"product_id":"beppu-buffalo-bar","title":"Beppu Buffalo Bar","description":"\u003cdiv class=\"shogun-root\" data-shogun-id=\"6a0f7eec7ccd890e3b93d201\" data-shogun-site-id=\"d921f9ba-aa7a-4156-9e44-53aad23b56fb\" data-shogun-page-id=\"6a0f7eec7ccd890e3b93d201\" data-shogun-page-version-id=\"6a0f7fc6b4c356a854ebb98e\" data-shogun-platform-type=\"shopify\" data-shogun-variant-id=\"6a0f7fc6b4c356a854ebb98f\" data-shogun-page-type=\"product\" data-shogun-power-up-type=\"\" data-shogun-power-up-id=\"\" data-region=\"main\"\u003e \u003cdiv id=\"s-d49099c8-6302-4579-98c6-9ece7d2cf238\" class=\"shg-c shg-align-left\"\u003e \u003cstyle\u003e\n  .bzb-hero {\n    --bzb-bg: #f5f5f5;\n    --bzb-ink: #2a2a2a;\n    --bzb-white: #ffffff;\n    --bzb-off: #faf7f2;\n    --bzb-sand: #e8e0d3;\n    --bzb-black: #111111;\n    --bzb-accent: #1972bc;\n    --bzb-accent-d: #155a96;\n    --bzb-muted: #8a8378;\n    --bzb-chrome: #5d6d80;\n    --bzb-chrome-d: #3f4c5c;\n    --bzb-chrome-bg: #e8ecf0;\n    --fo: \"Oswald\", Impact, sans-serif;\n    --fd: \"Bebas Neue\", Impact, sans-serif;\n    --fb: \"Barlow\", system-ui, sans-serif;\n    --fc: \"Barlow Condensed\", system-ui, sans-serif;\n\n    background: var(--bzb-bg);\n    color: var(--bzb-ink);\n    padding: 24px 16px 48px;\n    box-sizing: border-box;\n  }\n  .bzb-hero *, .bzb-hero *::before, .bzb-hero *::after { box-sizing: border-box; }\n\n  .bzb-hero__grid {\n    max-width: 1240px; margin: 0 auto;\n    display: grid; grid-template-columns: 1fr; gap: 24px;\n  }\n  @media (min-width: 860px) {\n    .bzb-hero { padding: 40px 24px 64px; }\n    .bzb-hero__grid { grid-template-columns: 1.1fr 1fr; gap: 48px; align-items: start; }\n  }\n\n  .bzb-hero .bzb-block--in, .bzb-hero .bzb-block--out { display: none; }\n  .bzb-hero[data-stock=\"in\"]  .bzb-block--in  { display: flex; flex-direction: column; gap: 10px; }\n  .bzb-hero[data-stock=\"in\"]  .bzb-stock--in  { display: flex; }\n  .bzb-hero[data-stock=\"out\"] .bzb-block--out { display: flex; flex-direction: column; gap: 10px; }\n  .bzb-hero[data-stock=\"out\"] .bzb-stock--out { display: flex; }\n  .bzb-stock--in, .bzb-stock--out { display: none; }\n\n  \/* Gallery *\/\n  .bzb-gallery { display: flex; flex-direction: column; gap: 10px; }\n  .bzb-gallery__stage {\n    position: relative; background: var(--bzb-white);\n    border-radius: 6px; overflow: hidden; aspect-ratio: 1 \/ 1;\n  }\n  .bzb-gallery__track {\n    display: flex; width: 100%; height: 100%;\n    overflow-x: auto;\n    scroll-snap-type: x mandatory; scroll-behavior: smooth;\n    scrollbar-width: none; -ms-overflow-style: none;\n  }\n  .bzb-gallery__track::-webkit-scrollbar { display: none; }\n  .bzb-gallery__slide {\n    flex: 0 0 100%; width: 100%; height: 100%;\n    scroll-snap-align: start; scroll-snap-stop: always;\n    position: relative;\n  }\n  .bzb-gallery__slide img { width: 100%; height: 100%; object-fit: cover; display: block; }\n  .bzb-gallery__badge {\n    position: absolute; top: 12px; left: 12px;\n    background: var(--bzb-chrome); color: var(--bzb-white);\n    font-family: var(--fc); font-size: 12px; letter-spacing: .08em;\n    text-transform: uppercase;\n    padding: 6px 10px; border-radius: 6px; z-index: 3; pointer-events: none;\n  }\n  .bzb-gallery__feature {\n    position: absolute; top: 12px; right: 12px;\n    background: var(--bzb-black); color: var(--bzb-white);\n    font-family: var(--fc); font-size: 12px; letter-spacing: .12em;\n    text-transform: uppercase; font-weight: 700;\n    padding: 6px 10px; border-radius: 6px; z-index: 3; pointer-events: none;\n  }\n  .bzb-gallery__arrow {\n    position: absolute; top: 50%; transform: translateY(-50%);\n    width: 44px; height: 44px;\n    background: rgba(255,255,255,.92); border: 0; border-radius: 50%;\n    display: flex; align-items: center; justify-content: center;\n    cursor: pointer; z-index: 3;\n    transition: background .12s ease, transform .12s ease, opacity .12s ease;\n    color: var(--bzb-black); box-shadow: 0 2px 12px rgba(0,0,0,.12);\n  }\n  .bzb-gallery__arrow:hover { background: var(--bzb-white); transform: translateY(-50%) scale(1.06); }\n  .bzb-gallery__arrow:active { transform: translateY(-50%) scale(.96); }\n  .bzb-gallery__arrow:disabled { opacity: .35; cursor: not-allowed; }\n  .bzb-gallery__arrow svg { width: 20px; height: 20px; }\n  .bzb-gallery__arrow--prev { left: 12px; }\n  .bzb-gallery__arrow--next { right: 12px; }\n  .bzb-gallery__counter {\n    position: absolute; bottom: 12px; right: 12px;\n    background: rgba(0,0,0,.65); color: var(--bzb-white);\n    font-family: var(--fc); font-size: 11px; letter-spacing: .08em;\n    padding: 4px 10px; border-radius: 999px;\n    z-index: 3; pointer-events: none;\n  }\n\n  .bzb-gallery__thumbs {\n    position: relative;\n    display: flex; gap: 6px;\n    overflow-x: auto; overflow-y: hidden;\n    scroll-behavior: smooth;\n    scrollbar-width: none; -ms-overflow-style: none;\n    padding: 4px 0; margin: 0 -4px;\n  }\n  .bzb-gallery__thumbs::-webkit-scrollbar { display: none; }\n  .bzb-gallery__thumb {\n    flex: 0 0 calc((100% - 30px) \/ 8.6);\n    aspect-ratio: 1 \/ 1;\n    background: var(--bzb-white);\n    border: 2px solid transparent; border-radius: 6px;\n    overflow: hidden; cursor: pointer; padding: 0;\n    transition: border-color .15s ease, transform .15s ease;\n  }\n  .bzb-gallery__thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }\n  .bzb-gallery__thumb[aria-current=\"true\"] { border-color: var(--bzb-chrome); }\n  .bzb-gallery__thumb:hover { transform: scale(1.04); }\n  @media (max-width: 600px) {\n    .bzb-gallery__thumb { flex: 0 0 calc((100% - 24px) \/ 8.5); }\n  }\n\n  \/* Info *\/\n  .bzb-info { display: flex; flex-direction: column; gap: 16px; }\n  .bzb-info__eyebrow {\n    font-family: var(--fc); font-size: 13px; letter-spacing: .14em;\n    text-transform: uppercase;\n    color: var(--bzb-chrome);\n  }\n  .bzb-info__title {\n    font-family: var(--fo); font-weight: 600;\n    font-size: clamp(30px, 5vw, 56px); line-height: 1;\n    margin-top: -10px;\n    text-transform: uppercase; margin: 0; color: var(--bzb-black);\n  }\n  .bzb-info__title b {\n    color: var(--bzb-chrome);\n    font-weight: inherit;\n  }\n  .bzb-info__subtitle {\n    font-family: var(--fb); font-size: 16px; line-height: 1.5;\n    color: var(--bzb-ink); margin: 0; max-width: 54ch;\n  }\n  .bzb-info__subtitle b { font-weight: 600; color: var(--bzb-black); }\n\n  \/* Price *\/\n  .bzb-info__price-row {\n    display: flex; align-items: baseline; gap: 12px;\n    margin-top: -5px;\n    flex-wrap: wrap;\n  }\n  .bzb-info__price {\n    font-family: var(--fo); font-size: 32px; font-weight: 600;\n    color: var(--bzb-black);\n    visibility: hidden;\n  }\n  .bzb-info__installments {\n    font-family: var(--fb); font-size: 13px; color: var(--bzb-ink);\n    visibility: hidden;\n  }\n  .bzb-info__installments b { font-weight: 600; }\n\n  \/* Specs strip *\/\n  .bzb-specs {\n    display: grid;\n    grid-template-columns: repeat(4, 1fr);\n    gap: 1px;\n    background: var(--bzb-sand);\n    border-radius: 6px;\n    overflow: hidden;\n  }\n  .bzb-specs__cell {\n    background: var(--bzb-white);\n    padding: 12px 8px;\n    text-align: center;\n    display: flex; flex-direction: column; gap: 4px;\n  }\n  .bzb-specs__k {\n    font-family: var(--fc); font-size: 10px; letter-spacing: .1em;\n    text-transform: uppercase; color: var(--bzb-muted);\n  }\n  .bzb-specs__v {\n    font-family: var(--fd); font-size: 18px; line-height: 1;\n    letter-spacing: .02em; color: var(--bzb-black);\n  }\n\n  \/* Use case grid *\/\n  .bzb-uses {\n    background: var(--bzb-white);\n    border-radius: 6px;\n    padding: 14px;\n    display: flex; flex-direction: column; gap: 10px;\n  }\n  .bzb-uses__head {\n    font-family: var(--fc); font-size: 12px; letter-spacing: .12em;\n    text-transform: uppercase; color: var(--bzb-ink);\n  }\n  .bzb-uses__grid {\n    display: grid;\n    grid-template-columns: repeat(2, 1fr);\n    gap: 6px;\n  }\n  @media (min-width: 480px) {\n    .bzb-uses__grid { grid-template-columns: repeat(3, 1fr); }\n  }\n  .bzb-uses__item {\n    display: flex; align-items: center; gap: 8px;\n    padding: 8px 10px;\n    background: var(--bzb-off);\n    border: 1px solid var(--bzb-sand);\n    border-radius: 4px;\n    font-family: var(--fb);\n    font-size: 13px;\n    color: var(--bzb-ink);\n    line-height: 1.2;\n  }\n  .bzb-uses__icon {\n    flex: 0 0 16px;\n    width: 16px; height: 16px;\n    color: var(--bzb-chrome);\n  }\n  .bzb-uses__icon svg { width: 100%; height: 100%; }\n\n  \/* Curved shaft feature card *\/\n  .bzb-feature {\n    background: var(--bzb-white);\n    border-radius: 6px;\n    padding: 16px;\n    display: flex; flex-direction: column; gap: 12px;\n  }\n  .bzb-feature__title {\n    font-family: var(--fd);\n    font-size: 18px; letter-spacing: .04em;\n    margin: 0; color: var(--bzb-black);\n    text-transform: uppercase;\n    display: flex; align-items: baseline; justify-content: space-between;\n    gap: 8px;\n  }\n  .bzb-feature__tag {\n    font-family: var(--fc);\n    font-size: 11px; letter-spacing: .12em;\n    text-transform: uppercase;\n    color: var(--bzb-white);\n    background: var(--bzb-chrome);\n    padding: 3px 8px; border-radius: 4px;\n    font-weight: 600;\n  }\n  .bzb-feature__main {\n    display: flex; align-items: center; gap: 16px;\n  }\n  .bzb-feature__visual {\n    flex: 0 0 130px;\n    width: 130px; height: 130px;\n    color: var(--bzb-chrome);\n    background: var(--bzb-off);\n    border: 1px solid var(--bzb-sand);\n    border-radius: 6px;\n    display: flex; align-items: center; justify-content: center;\n    overflow: hidden;\n    padding: 12px;\n  }\n  .bzb-feature__visual svg { width: 100%; height: 100%; }\n  .bzb-feature__copy { flex: 1; display: flex; flex-direction: column; gap: 4px; }\n  .bzb-feature__hint {\n    font-family: var(--fb); font-size: 13px;\n    color: var(--bzb-ink); line-height: 1.45;\n  }\n  .bzb-feature__hint b { color: var(--bzb-black); font-weight: 600; }\n  @media (max-width: 500px) {\n    .bzb-feature__main { flex-direction: column; align-items: flex-start; }\n    .bzb-feature__visual { flex-basis: 110px; width: 100%; max-width: 130px; height: 110px; }\n  }\n\n  \/* Pre-order callout *\/\n  .bzb-preorder {\n    display: flex; align-items: center; gap: 10px;\n    padding: 10px 12px;\n    background: var(--bzb-chrome-bg);\n    border-left: 3px solid var(--bzb-chrome);\n    border-radius: 6px;\n    font-family: var(--fb);\n    font-size: 13px;\n    color: var(--bzb-ink);\n    line-height: 1.4;\n  }\n  .bzb-preorder__icon {\n    flex: 0 0 22px;\n    width: 22px; height: 22px;\n    color: var(--bzb-chrome-d);\n  }\n  .bzb-preorder__icon svg { width: 100%; height: 100%; }\n  .bzb-preorder__text b { color: var(--bzb-black); font-weight: 700; }\n\n  .bzb-stock {\n    font-family: var(--fb); font-size: 13px; color: var(--bzb-ink);\n    align-items: center; gap: 8px;\n    padding: 10px 12px; background: var(--bzb-white); border-radius: 6px;\n  }\n  .bzb-stock__dot { width: 8px; height: 8px; border-radius: 50%; flex: 0 0 8px; }\n  .bzb-stock--in .bzb-stock__dot { background: #2ecc71; box-shadow: 0 0 0 3px rgba(46,204,113,.2); }\n  .bzb-stock--out .bzb-stock__dot { background: #e25c3b; box-shadow: 0 0 0 3px rgba(226,92,59,.2); }\n\n  .bzb-cta__group { display: flex; gap: 8px; align-items: stretch; }\n  .bzb-cta__btn {\n    display: flex; align-items: center; justify-content: center; gap: 10px;\n    flex: 1;\n    background: var(--bzb-accent); color: var(--bzb-white);\n    font-family: var(--fo); font-size: 16px; letter-spacing: .06em;\n    text-transform: uppercase; border: 0; border-radius: 6px;\n    padding: 16px 18px; cursor: pointer;\n    transition: transform .12s ease, background .12s ease;\n  }\n  .bzb-cta__btn:hover { background: var(--bzb-accent-d); }\n  .bzb-cta__btn:active { transform: scale(.98); }\n\n  .bzb-notify__label {\n    font-family: var(--fc); font-size: 12px; letter-spacing: .1em;\n    text-transform: uppercase; color: var(--bzb-ink); margin: 0;\n  }\n  .bzb-notify__row { display: flex; gap: 8px; }\n  .bzb-notify__input {\n    flex: 1; font-family: var(--fb); font-size: 15px;\n    padding: 14px 16px; border: 1px solid var(--bzb-sand); border-radius: 6px;\n    background: var(--bzb-white); color: var(--bzb-ink);\n    outline: none; transition: border-color .12s ease; min-width: 0;\n  }\n  .bzb-notify__input:focus { border-color: var(--bzb-chrome); }\n  .bzb-notify__btn {\n    display: flex; align-items: center; justify-content: center; gap: 10px;\n    background: var(--bzb-black); color: var(--bzb-white);\n    font-family: var(--fo); font-size: 15px; letter-spacing: .06em;\n    text-transform: uppercase; border: 0; border-radius: 6px;\n    padding: 0 22px; cursor: pointer;\n    transition: transform .12s ease, background .12s ease; white-space: nowrap;\n  }\n  .bzb-notify__btn:hover { background: var(--bzb-chrome); }\n  .bzb-notify__btn:disabled { opacity: .6; cursor: not-allowed; }\n  .bzb-notify__hint { font-family: var(--fb); font-size: 12px; color: var(--bzb-muted); margin: 0; }\n  .bzb-notify__status {\n    display: none; font-family: var(--fb); font-size: 13px;\n    padding: 12px 14px; border-radius: 6px; margin: 0; line-height: 1.4;\n  }\n  .bzb-notify__status--ok { background: #e8f5ea; color: #1e6b2e; border: 1px solid #c6e5cc; }\n  .bzb-notify__status--err { background: #fbece8; color: #a83a1f; border: 1px solid #f0cfc6; }\n  .bzb-notify[data-state=\"success\"] .bzb-notify__row,\n  .bzb-notify[data-state=\"success\"] .bzb-notify__hint,\n  .bzb-notify[data-state=\"success\"] .bzb-notify__label { display: none; }\n  .bzb-notify[data-state=\"success\"] .bzb-notify__status--ok { display: block; }\n  .bzb-notify[data-state=\"error\"] .bzb-notify__status--err { display: block; }\n\n  .bzb-trust {\n    display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px;\n    padding-top: 4px; margin: 0; list-style: none;\n  }\n  .bzb-trust__item {\n    display: flex; align-items: center; gap: 8px;\n    font-family: var(--fb); font-size: 12px; line-height: 1.25; color: var(--bzb-ink);\n  }\n  .bzb-trust__item svg { flex: 0 0 18px; width: 18px; height: 18px; color: var(--bzb-chrome); }\n\u003c\/style\u003e \u003csection class=\"bzb-hero\" data-stock=\"in\" data-product-handle=\"beppu-buffalo-bar\" aria-label=\"beppu Buffalo Bar\"\u003e \u003cdiv class=\"bzb-hero__grid\"\u003e \u003cdiv class=\"bzb-gallery\"\u003e \u003cdiv class=\"bzb-gallery__stage\"\u003e \u003cspan class=\"bzb-gallery__badge\"\u003eBuffalo · Cromo · 40 lb\u003c\/span\u003e \u003cspan class=\"bzb-gallery__feature\"\u003ePre-ordine\u003c\/span\u003e \u003cbutton type=\"button\" class=\"bzb-gallery__arrow bzb-gallery__arrow--prev\" aria-label=\"Previous image\"\u003e \u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpolyline points=\"15 18 9 12 15 6\"\u003e\u003c\/polyline\u003e\u003c\/svg\u003e \u003c\/button\u003e \u003cdiv class=\"bzb-gallery__track\" id=\"bzb-gallery-track\"\u003e \u003cdiv class=\"bzb-gallery__slide\"\u003e \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0229\/1249\/9792\/files\/buffalo-bar.jpg?v=1779399772\u0026amp;width=1024\" alt=\"beppu Buffalo Bar\" width=\"1024\" height=\"1024\" loading=\"eager\" fetchpriority=\"high\"\u003e \u003c\/div\u003e \u003cdiv class=\"bzb-gallery__slide\"\u003e \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0229\/1249\/9792\/files\/buffalo-on-rack.jpg?v=1779399854\u0026amp;width=1024\" alt=\"Barra Buffalo appoggiata sul rack per squat\" width=\"1024\" height=\"1024\" loading=\"lazy\"\u003e \u003c\/div\u003e \u003cdiv class=\"bzb-gallery__slide\"\u003e \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0229\/1249\/9792\/files\/buffalo-squat.jpg?v=1779399854\u0026amp;width=1024\" alt=\"Squat con barra Buffalo\" width=\"1024\" height=\"1024\" loading=\"lazy\"\u003e \u003c\/div\u003e \u003cdiv class=\"bzb-gallery__slide\"\u003e \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0229\/1249\/9792\/files\/buffalo-good-morning.jpg?v=1779399854\u0026amp;width=1024\" alt=\"Good morning con barra Buffalo\" width=\"1024\" height=\"1024\" loading=\"lazy\"\u003e \u003c\/div\u003e \u003cdiv class=\"bzb-gallery__slide\"\u003e \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0229\/1249\/9792\/files\/buffalo-bench.jpg?v=1779399855\u0026amp;width=1024\" alt=\"Distensioni su panca con barra Buffalo\" width=\"1024\" height=\"1024\" loading=\"lazy\"\u003e \u003c\/div\u003e \u003cdiv class=\"bzb-gallery__slide\"\u003e \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0229\/1249\/9792\/files\/buffalo-shoulder-press.jpg?v=1779399854\u0026amp;width=1024\" alt=\"Spinte sopra la testa con barra Buffalo\" width=\"1024\" height=\"1024\" loading=\"lazy\"\u003e \u003c\/div\u003e \u003c\/div\u003e \u003cbutton type=\"button\" class=\"bzb-gallery__arrow bzb-gallery__arrow--next\" aria-label=\"Next image\"\u003e \u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpolyline points=\"9 18 15 12 9 6\"\u003e\u003c\/polyline\u003e\u003c\/svg\u003e \u003c\/button\u003e \u003cdiv class=\"bzb-gallery__counter\" id=\"bzb-gallery-counter\"\u003e1 \/ 6\u003c\/div\u003e \u003c\/div\u003e \u003cdiv class=\"bzb-gallery__thumbs\" id=\"bzb-gallery-thumbs\" role=\"tablist\" aria-label=\"Gallery thumbnails\"\u003e\u003c\/div\u003e \u003c\/div\u003e \u003cdiv class=\"bzb-info\"\u003e \u003ch1 class=\"bzb-info__title\"\u003e\n\u003cb\u003ebeppu\u003c\/b\u003e Buffalo Bar\u003c\/h1\u003e \u003cp class=\"bzb-info__subtitle\"\u003e Metti spalle e polsi in una posizione più naturale sotto carico pesante. Incavo centrale che si blocca sulla schiena. \u003c\/p\u003e \u003cspan style=\"margin-bottom:-25px\" id=\"judgeme_badge_placeholder\"\u003e\u003c\/span\u003e \u003cdiv class=\"bzb-info__price-row\"\u003e \u003cspan class=\"bzb-info__price\" id=\"bzb-price\"\u003e$0\u003c\/span\u003e \u003cspan class=\"bzb-info__installments\" id=\"bzb-installments\"\u003e o 4 pagamenti da \u003cb id=\"bzb-installment\"\u003e$0\u003c\/b\u003e \u003c\/span\u003e \u003c\/div\u003e \u003cdiv class=\"bzb-feature\"\u003e \u003ch2 class=\"bzb-feature__title\"\u003e \u003cspan\u003ePerché l'asta curva\u003c\/span\u003e \u003cspan class=\"bzb-feature__tag\"\u003eGeometria Buffalo\u003c\/span\u003e \u003c\/h2\u003e \u003cdiv class=\"bzb-feature__main\"\u003e \u003cdiv class=\"bzb-feature__visual\" aria-hidden=\"true\"\u003e \u003csvg viewbox=\"0 0 200 120\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"\u003e \u003cline x1=\"20\" y1=\"60\" x2=\"180\" y2=\"60\" stroke=\"currentColor\" stroke-width=\"3\" opacity=\".25\"\u003e\u003c\/line\u003e \u003ccircle cx=\"20\" cy=\"60\" r=\"6\" fill=\"currentColor\" opacity=\".25\"\u003e\u003c\/circle\u003e \u003ccircle cx=\"180\" cy=\"60\" r=\"6\" fill=\"currentColor\" opacity=\".25\"\u003e\u003c\/circle\u003e \u003ctext x=\"100\" y=\"52\" font-family=\"Barlow Condensed, sans-serif\" font-size=\"9\" fill=\"currentColor\" opacity=\".5\" text-anchor=\"middle\" letter-spacing=\".5\"\u003eSTRAIGHT\u003c\/text\u003e \u003cpath d=\"M 20 78 Q 50 64 80 60 L 120 60 Q 150 64 180 78\" stroke=\"currentColor\" stroke-width=\"3.5\" fill=\"none\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003c\/path\u003e \u003ccircle cx=\"20\" cy=\"78\" r=\"6\" fill=\"currentColor\"\u003e\u003c\/circle\u003e \u003ccircle cx=\"180\" cy=\"78\" r=\"6\" fill=\"currentColor\"\u003e\u003c\/circle\u003e \u003crect x=\"78\" y=\"56\" width=\"44\" height=\"8\" fill=\"currentColor\" opacity=\".3\" rx=\"1\"\u003e\u003c\/rect\u003e \u003ctext x=\"100\" y=\"98\" font-family=\"Bebas Neue, sans-serif\" font-size=\"10\" fill=\"currentColor\" text-anchor=\"middle\" letter-spacing=\".5\"\u003eCENTER KNURL\u003c\/text\u003e \u003c\/svg\u003e \u003c\/div\u003e \u003cdiv class=\"bzb-feature__copy\"\u003e \u003cspan class=\"bzb-feature__hint\"\u003eUna barra dritta costringe le spalle in rotazione esterna durante gli squat con bilanciere. La \u003cb\u003eleggera curva in avanti\u003c\/b\u003e della beppu permette ai manicotti di ruotare verso il basso e in avanti — \u003cb\u003ele spalle restano neutre, i polsi rilassati\u003c\/b\u003e, il peso si mantiene più vicino al centro di massa.\u003c\/span\u003e \u003c\/div\u003e \u003c\/div\u003e \u003c\/div\u003e \u003cdiv class=\"bzb-preorder\"\u003e \u003cspan class=\"bzb-preorder__icon\" aria-hidden=\"true\"\u003e \u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003crect x=\"3\" y=\"4\" width=\"18\" height=\"18\" rx=\"2\" ry=\"2\"\u003e\u003c\/rect\u003e\u003cline x1=\"16\" y1=\"2\" x2=\"16\" y2=\"6\"\u003e\u003c\/line\u003e\u003cline x1=\"8\" y1=\"2\" x2=\"8\" y2=\"6\"\u003e\u003c\/line\u003e\u003cline x1=\"3\" y1=\"10\" x2=\"21\" y2=\"10\"\u003e\u003c\/line\u003e\u003c\/svg\u003e \u003c\/span\u003e \u003cspan class=\"bzb-preorder__text\"\u003e\u003cb\u003ePre-ordine.\u003c\/b\u003e Il primo lotto sarà spedito \u003cb\u003eLuglio–Agosto 2026\u003c\/b\u003e. Prenota ora — verrai addebitato solo quando la barra sarà spedita.\u003c\/span\u003e \u003c\/div\u003e \u003cdiv class=\"bzb-stock bzb-stock--in\"\u003e \u003cspan class=\"bzb-stock__dot\" aria-hidden=\"true\"\u003e\u003c\/span\u003e \u003cspan\u003eDisponibile per pre-ordine. Consegna prevista \u003cb\u003eLuglio–Agosto\u003c\/b\u003e.\u003c\/span\u003e \u003c\/div\u003e \u003cdiv class=\"bzb-stock bzb-stock--out\"\u003e \u003cspan class=\"bzb-stock__dot\" aria-hidden=\"true\"\u003e\u003c\/span\u003e \u003cspan\u003e\u003cb\u003eEsaurito\u003c\/b\u003e — inserisci la tua email qui sotto per essere avvisato.\u003c\/span\u003e \u003c\/div\u003e \u003cform class=\"bzb-block bzb-block--in\" method=\"post\" action=\"\/cart\/add\"\u003e \u003cinput type=\"hidden\" name=\"id\" id=\"bzb-cart-variant\" value=\"47969376075988\"\u003e \u003cinput type=\"hidden\" name=\"quantity\" value=\"1\"\u003e \u003cdiv class=\"bzb-cta__group\"\u003e \u003cbutton type=\"submit\" class=\"bzb-cta__btn\" id=\"bzb-cta-btn\"\u003e \u003csvg width=\"18\" height=\"18\" viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"\u003e \u003ccircle cx=\"9\" cy=\"21\" r=\"1\"\u003e\u003c\/circle\u003e\u003ccircle cx=\"20\" cy=\"21\" r=\"1\"\u003e\u003c\/circle\u003e \u003cpath d=\"M1 1h4l2.7 13.4a2 2 0 0 0 2 1.6h9.7a2 2 0 0 0 2-1.6L23 6H6\"\u003e\u003c\/path\u003e \u003c\/svg\u003e \u003cspan id=\"bzb-cta-label\"\u003ePrenota il tuo — pre-ordine\u003c\/span\u003e \u003c\/button\u003e \u003c\/div\u003e \u003c\/form\u003e \u003cform class=\"bzb-block bzb-block--out bzb-notify\" method=\"post\" action=\"#\" id=\"bzb-notify-form\"\u003e \u003clabel class=\"bzb-notify__label\" for=\"bzb-notify-email\"\u003eAvvisami quando disponibile\u003c\/label\u003e \u003cdiv class=\"bzb-notify__row\"\u003e \u003cinput class=\"bzb-notify__input\" id=\"bzb-notify-email\" type=\"email\" name=\"contact[email]\" placeholder=\"you@example.com\" required\u003e \u003cinput type=\"hidden\" name=\"variant_id\" id=\"bzb-notify-variant\" value=\"47969376075988\"\u003e \u003cbutton class=\"bzb-notify__btn\" type=\"submit\"\u003e \u003csvg width=\"18\" height=\"18\" viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"\u003e \u003cpath d=\"M18 8A6 6 0 0 0 6 8c0 7-3 9-3 9h18s-3-2-3-9\"\u003e\u003c\/path\u003e \u003cpath d=\"M13.73 21a2 2 0 0 1-3.46 0\"\u003e\u003c\/path\u003e \u003c\/svg\u003e \u003cspan class=\"bzb-notify__btn-label\"\u003eAvvisami\u003c\/span\u003e \u003c\/button\u003e \u003c\/div\u003e \u003cp class=\"bzb-notify__hint\"\u003eTi invieremo solo email riguardo a questo riassortimento. Niente spam.\u003c\/p\u003e \u003cp class=\"bzb-notify__status bzb-notify__status--ok\" role=\"status\"\u003e ✓ Sei nella lista. Ti invieremo un'email non appena sarà di nuovo disponibile. \u003c\/p\u003e \u003cp class=\"bzb-notify__status bzb-notify__status--err\" role=\"alert\"\u003e Qualcosa è andato storto. Riprova o scrivi a support@kensui.com. \u003c\/p\u003e \u003c\/form\u003e \u003cul class=\"bzb-trust\" aria-label=\"Guarantees\"\u003e \u003cli class=\"bzb-trust__item\"\u003e \u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"\u003e\u003cpath d=\"M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e Prova senza rischi di 100 giorni \u003c\/li\u003e \u003cli class=\"bzb-trust__item\"\u003e \u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"\u003e\u003crect x=\"1\" y=\"3\" width=\"15\" height=\"13\"\u003e\u003c\/rect\u003e\u003cpath d=\"M16 8h4l3 3v5h-7zM5.5 20a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5zM18.5 20a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e Spedizione gratuita \u003c\/li\u003e \u003cli class=\"bzb-trust__item\"\u003e \u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"\u003e\u003cpath d=\"M9 11H5a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7a2 2 0 0 0 -2-2h-4\"\u003e\u003c\/path\u003e\u003cpolyline points=\"9 11 9 7 15 7 15 11\"\u003e\u003c\/polyline\u003e\u003ccircle cx=\"12\" cy=\"16\" r=\"1\"\u003e\u003c\/circle\u003e\u003c\/svg\u003e Affidato da oltre 200.000+ \u003c\/li\u003e \u003c\/ul\u003e \u003cdiv class=\"bzb-specs\" aria-label=\"Specifications\"\u003e \u003cdiv class=\"bzb-specs__cell\"\u003e \u003cdiv class=\"bzb-specs__k\"\u003ePeso della barra\u003c\/div\u003e \u003cdiv class=\"bzb-specs__v\"\u003e40 LB\u003c\/div\u003e \u003c\/div\u003e \u003cdiv class=\"bzb-specs__cell\"\u003e \u003cdiv class=\"bzb-specs__k\"\u003eAsta\u003c\/div\u003e \u003cdiv class=\"bzb-specs__v\"\u003e32 MM\u003c\/div\u003e \u003c\/div\u003e \u003cdiv class=\"bzb-specs__cell\"\u003e \u003cdiv class=\"bzb-specs__k\"\u003eManicotti\u003c\/div\u003e \u003cdiv class=\"bzb-specs__v\"\u003e14″\u003c\/div\u003e \u003c\/div\u003e \u003cdiv class=\"bzb-specs__cell\"\u003e \u003cdiv class=\"bzb-specs__k\"\u003eDischi\u003c\/div\u003e \u003cdiv class=\"bzb-specs__v\"\u003eOLYMPIC\u003c\/div\u003e \u003c\/div\u003e \u003c\/div\u003e \u003c\/div\u003e \u003c\/div\u003e \u003c\/section\u003e \u003cscript\u003e\n(function () {\n  var root = document.querySelector('.bzb-hero[data-product-handle]');\n  if (!root) return;\n\n  var KLAVIYO_PUBLIC_KEY = 'QeupfE';\n\n  function formatPrice(priceCents) {\n    var currency = (window.Shopify \u0026\u0026 window.Shopify.currency \u0026\u0026 window.Shopify.currency.active)\n      ? window.Shopify.currency.active : 'USD';\n    var fractionDigits;\n    try {\n      fractionDigits = new Intl.NumberFormat('en-US', { style: 'currency', currency: currency })\n                         .resolvedOptions().maximumFractionDigits;\n    } catch (e) { fractionDigits = 2; }\n    var amount = fractionDigits === 0 ? priceCents : priceCents \/ 100;\n    try {\n      return new Intl.NumberFormat(navigator.language || 'en-US', {\n        style: 'currency', currency: currency,\n        minimumFractionDigits: fractionDigits,\n        maximumFractionDigits: fractionDigits\n      }).format(amount);\n    } catch (e) {\n      return currency + ' ' + amount.toFixed(fractionDigits);\n    }\n  }\n\n  \/\/ Strip trailing \".00\" \/ \",00\" — keeps \".66\" intact for non-round prices\n  function formatPriceCompact(priceCents) {\n    var full = formatPrice(priceCents);\n    return full.replace(\/[.,]00\\b\/, '');\n  }\n\n  function setText(selector, value) {\n    var el = root.querySelector(selector);\n    if (el) el.textContent = value;\n  }\n\n  function revealPrices() {\n    root.querySelectorAll('.bzb-info__price, .bzb-info__installments').forEach(function (el) {\n      el.style.visibility = 'visible';\n    });\n  }\n\n  function updatePriceDisplays(priceCents) {\n    var fullPrice = formatPriceCompact(priceCents);\n    var installment = formatPriceCompact(priceCents \/ 4);\n    setText('#bzb-price', fullPrice);\n    setText('#bzb-installment', installment);\n    revealPrices();\n  }\n\n  \/\/ Initial price (overridden by Shopify fetch)\n  var initialPriceCents = 149866; \/\/ $1,498.66\n  updatePriceDisplays(initialPriceCents);\n\n  \/\/ Gallery\n  var track = root.querySelector('#bzb-gallery-track');\n  var slides = track ? track.querySelectorAll('.bzb-gallery__slide') : [];\n  var prevBtn = root.querySelector('.bzb-gallery__arrow--prev');\n  var nextBtn = root.querySelector('.bzb-gallery__arrow--next');\n  var counter = root.querySelector('#bzb-gallery-counter');\n  var thumbsEl = root.querySelector('#bzb-gallery-thumbs');\n  var currentIndex = 0;\n\n  if (counter) counter.textContent = '1 \/ ' + slides.length;\n\n  if (thumbsEl \u0026\u0026 slides.length) {\n    for (var i = 0; i \u003c slides.length; i++) {\n      var slideImg = slides[i].querySelector('img');\n      var rawSrc = slideImg ? slideImg.src : '';\n      var thumbSrc = rawSrc;\n      if (rawSrc) {\n        thumbSrc = rawSrc.replace(\/\u0026width=\\d+\/, '\u0026width=160');\n      }\n      var btn = document.createElement('button');\n      btn.type = 'button';\n      btn.className = 'bzb-gallery__thumb';\n      btn.setAttribute('role', 'tab');\n      btn.setAttribute('aria-label', 'Go to image ' + (i + 1));\n      btn.setAttribute('aria-current', i === 0 ? 'true' : 'false');\n      btn.setAttribute('data-index', i);\n      btn.innerHTML = '\u003cimg src=\"' + thumbSrc + '\" alt=\"\" loading=\"lazy\" width=\"160\" height=\"160\"\u003e';\n      thumbsEl.appendChild(btn);\n    }\n  }\n  var thumbs = thumbsEl ? thumbsEl.querySelectorAll('.bzb-gallery__thumb') : [];\n\n  function goToSlide(index) {\n    if (!track || !slides.length) return;\n    index = Math.max(0, Math.min(slides.length - 1, index));\n    currentIndex = index;\n    track.scrollTo({ left: slides[index].offsetLeft, behavior: 'smooth' });\n    updateSliderUI();\n  }\n  function updateSliderUI() {\n    if (counter) counter.textContent = (currentIndex + 1) + ' \/ ' + slides.length;\n    thumbs.forEach(function (t, i) { t.setAttribute('aria-current', i === currentIndex ? 'true' : 'false'); });\n    if (prevBtn) prevBtn.disabled = currentIndex === 0;\n    if (nextBtn) nextBtn.disabled = currentIndex === slides.length - 1;\n\n    if (thumbsEl \u0026\u0026 thumbs[currentIndex]) {\n      var t = thumbs[currentIndex];\n      var stripRect = thumbsEl.getBoundingClientRect();\n      var thumbRect = t.getBoundingClientRect();\n      if (thumbRect.left \u003c stripRect.left || thumbRect.right \u003e stripRect.right) {\n        thumbsEl.scrollTo({\n          left: t.offsetLeft - thumbsEl.clientWidth \/ 2 + t.clientWidth \/ 2,\n          behavior: 'smooth'\n        });\n      }\n    }\n  }\n  if (prevBtn) prevBtn.addEventListener('click', function () { goToSlide(currentIndex - 1); });\n  if (nextBtn) nextBtn.addEventListener('click', function () { goToSlide(currentIndex + 1); });\n  thumbs.forEach(function (t) {\n    t.addEventListener('click', function () { goToSlide(parseInt(t.getAttribute('data-index'), 10)); });\n  });\n  if (track) {\n    var scrollTimer;\n    track.addEventListener('scroll', function () {\n      clearTimeout(scrollTimer);\n      scrollTimer = setTimeout(function () {\n        var idx = Math.round(track.scrollLeft \/ track.clientWidth);\n        if (idx !== currentIndex) { currentIndex = idx; updateSliderUI(); }\n      }, 80);\n    });\n  }\n  updateSliderUI();\n\n  \/\/ Live Shopify product fetch — single variant\n  var handle = root.getAttribute('data-product-handle');\n  fetch('\/products\/' + handle + '.js', { headers: { 'Accept': 'application\/json' } })\n    .then(function (r) { return r.ok ? r.json() : null; })\n    .then(function (data) {\n      if (!data || !data.variants || !data.variants.length) return;\n\n      var variant = data.variants[0];\n      if (variant.price) {\n        updatePriceDisplays(variant.price);\n      }\n\n      var anyAvailable = variant.available;\n      root.setAttribute('data-stock', anyAvailable ? 'in' : 'out');\n    })\n    .catch(function () {});\n\n  document.addEventListener('currency:changed', function () {\n    updatePriceDisplays(initialPriceCents);\n  });\n\n  \/\/ Klaviyo back-in-stock\n  var form = root.querySelector('#bzb-notify-form');\n  if (!form) return;\n\n  form.addEventListener('submit', function (e) {\n    e.preventDefault();\n    var emailInput = form.querySelector('input[name=\"contact[email]\"]');\n    var variantInput = form.querySelector('input[name=\"variant_id\"]');\n    var btn = form.querySelector('.bzb-notify__btn');\n    var btnLabel = form.querySelector('.bzb-notify__btn-label');\n    var email = (emailInput.value || '').trim();\n    var variantId = (variantInput.value || '').trim();\n\n    if (!email || !variantId) {\n      form.setAttribute('data-state', 'error');\n      return;\n    }\n\n    btn.disabled = true;\n    var originalLabel = btnLabel.textContent;\n    btnLabel.textContent = 'Submitting…';\n    form.removeAttribute('data-state');\n\n    var payload = {\n      data: {\n        type: 'back-in-stock-subscription',\n        attributes: {\n          profile: { data: { type: 'profile', attributes: { email: email } } },\n          channels: ['EMAIL']\n        },\n        relationships: {\n          variant: { data: { type: 'catalog-variant', id: '$shopify:::$default:::' + variantId } }\n        }\n      }\n    };\n\n    fetch('https:\/\/a.klaviyo.com\/client\/back-in-stock-subscriptions\/?company_id=' + KLAVIYO_PUBLIC_KEY, {\n      method: 'POST',\n      headers: { 'Content-Type': 'application\/json', 'revision': '2024-10-15' },\n      body: JSON.stringify(payload)\n    })\n      .then(function (res) {\n        if (res.ok || res.status === 202) {\n          form.setAttribute('data-state', 'success');\n        } else {\n          form.setAttribute('data-state', 'error');\n          btn.disabled = false;\n          btnLabel.textContent = originalLabel;\n        }\n      })\n      .catch(function () {\n        form.setAttribute('data-state', 'error');\n        btn.disabled = false;\n        btnLabel.textContent = originalLabel;\n      });\n  });\n})();\n\u003c\/script\u003e \u003c\/div\u003e \u003c\/div\u003e","brand":"Kensui","offers":[{"title":"Default Title","offer_id":47969376075988,"sku":"rek-buffalo-bar","price":279.0,"currency_code":"USD","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0229\/1249\/9792\/files\/buffalo-bar.jpg?v=1779399772","url":"https:\/\/kensui.com\/it\/products\/beppu-buffalo-bar","provider":"Kensui","version":"1.0","type":"link"}