{"product_id":"asterton","title":"Asterton","description":"\u003c!-- =====================================================\n     ASTERTON — BLOCK 1\n     FroGames | Shopify Theme Concept\n     Hero without image — only game colors.\n     ===================================================== --\u0026gt;\n\n\u003cdiv class=\"ast1-wrap\"\u003e\n\n\n  \u003c!-- HERO (only colors, no image) --\u003e\n  \u003cdiv class=\"ast1-hero\"\u003e\n\n    \u003cdiv class=\"ast1-hero-content\"\u003e\n\n      \u003cp class=\"ast1-kicker\"\u003eFroGames — Moments You'll Remember\u003c\/p\u003e\n\n      \u003cp class=\"ast1-sub\"\u003eSome study form, some follow instinct, some bluff behind a screen. And in the end, the one who read the race best wins.\u003c\/p\u003e\n\n      \u003cdiv class=\"ast1-chips\"\u003e\n\n        \u003cspan class=\"ast1-chip ast1-chip--green\"\u003eBetting\u003c\/span\u003e\n        \u003cspan class=\"ast1-chip\"\u003eRafael Prado\u003c\/span\u003e\n        \u003cspan class=\"ast1-chip\"\u003eSemi-cooperative\u003c\/span\u003e\n        \u003cspan class=\"ast1-chip\"\u003eEN \/ ES Edition\u003c\/span\u003e\n      \u003c\/div\u003e\n\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n\n  \u003c!-- TECH SPECS --\u003e\n  \u003cdiv class=\"ast1-specs-bar\"\u003e\n\n    \u003cdiv class=\"ast1-specs\"\u003e\n\n      \u003cdiv class=\"ast1-spec\"\u003e\n\n        \u003cspan class=\"ast1-spec-icon\"\u003e👥\u003c\/span\u003e\n        \u003cspan class=\"ast1-spec-label\"\u003ePlayers\u003c\/span\u003e\n        \u003cspan class=\"ast1-spec-val\"\u003e2 – 4\u003c\/span\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"ast1-spec\"\u003e\n\n        \u003cspan class=\"ast1-spec-icon\"\u003e⏱️\u003c\/span\u003e\n        \u003cspan class=\"ast1-spec-label\"\u003eDuration\u003c\/span\u003e\n        \u003cspan class=\"ast1-spec-val\"\u003e30–45 min\u003c\/span\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"ast1-spec\"\u003e\n\n        \u003cspan class=\"ast1-spec-icon\"\u003e🎂\u003c\/span\u003e\n        \u003cspan class=\"ast1-spec-label\"\u003eAge\u003c\/span\u003e\n        \u003cspan class=\"ast1-spec-val\"\u003e8+ years\u003c\/span\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"ast1-spec\"\u003e\n\n        \u003cspan class=\"ast1-spec-icon\"\u003e🎲\u003c\/span\u003e\n        \u003cspan class=\"ast1-spec-label\"\u003eMechanics\u003c\/span\u003e\n        \u003cspan class=\"ast1-spec-val\"\u003eBetting\u003c\/span\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"ast1-spec\"\u003e\n\n        \u003cspan class=\"ast1-spec-icon\"\u003e🏇\u003c\/span\u003e\n        \u003cspan class=\"ast1-spec-label\"\u003eTrack\u003c\/span\u003e\n        \u003cspan class=\"ast1-spec-val\"\u003eFabric\u003c\/span\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"ast1-spec\"\u003e\n\n        \u003cspan class=\"ast1-spec-icon\"\u003e🤝\u003c\/span\u003e\n        \u003cspan class=\"ast1-spec-label\"\u003eMode\u003c\/span\u003e\n        \u003cspan class=\"ast1-spec-val\"\u003eSemi-coop\u003c\/span\u003e\n      \u003c\/div\u003e\n\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n\n  \u003c!-- BODY --\u003e\n  \u003cdiv class=\"ast1-body\"\u003e\n\n\n    \u003c!-- INTRO + EDITORIAL BOXES --\u003e\n    \u003cdiv class=\"ast1-intro-grid\"\u003e\n\n      \u003cdiv class=\"ast1-intro-text\"\u003e\n\n        \u003cp class=\"ast1-label\"\u003eWhat it's about\u003c\/p\u003e\n\n        \u003ch3 class=\"ast1-h3\"\u003eWelcome to Asterton Racecourse\u003c\/h3\u003e\n\n        \u003cp class=\"ast1-p\"\u003eRacing Society, since 1954. \u003cstrong\u003eAsterton\u003c\/strong\u003e takes you inside an elegant racing club where owning the fastest horse doesn't count, but reading the race before others does. A betting and racing game by \u003cstrong\u003eRafael Prado\u003c\/strong\u003e, with vintage illustrations by Marie — pardon, by \u003cstrong\u003eAnastasiya Ki\u003c\/strong\u003e — that transform the table into a vintage poster.\u003c\/p\u003e\n\n        \u003cp class=\"ast1-p\"\u003eStudy the horses' form with press and expert cards, place your bets shielded by the screen, and build the right combinations. Then the dice move the horses along the fabric track, the final sprint overturns everything at the last breath, and it's revealed who was right. Do you have the instinct to become the Duke of Asterton?\u003c\/p\u003e\n\n      \u003c\/div\u003e\n\n\n      \u003cdiv class=\"ast1-intro-side\"\u003e\n\n        \u003cp class=\"ast1-quote-header\"\u003eThe spirit of the game\u003c\/p\u003e\n\n        \u003cdiv class=\"ast1-quote-solo\"\u003e\n\n          \u003cspan class=\"ast1-qs-icon\"\u003e🏇\u003c\/span\u003e\n          \u003cp class=\"ast1-qs-text\"\u003eThe winner isn't the one with the fastest horse, but the one who best predicted how the race would end.\u003c\/p\u003e\n\n          \u003cp class=\"ast1-qs-note\"\u003eAsterton's secret in one line\u003c\/p\u003e\n\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"ast1-quote-solo ast1-quote-solo--alt\"\u003e\n\n          \u003cspan class=\"ast1-qs-icon\"\u003e🎩\u003c\/span\u003e\n          \u003cp class=\"ast1-qs-text\"\u003eBehind every screen is a plan. And the beauty is discovering, at the sprint, who was right.\u003c\/p\u003e\n\n          \u003cp class=\"ast1-qs-note\"\u003eFrom the game experience\u003c\/p\u003e\n\n        \u003c\/div\u003e\n\n      \u003c\/div\u003e\n\n    \u003c\/div\u003e\n\n\n    \u003cdiv class=\"ast1-divider\"\u003e\u003c\/div\u003e\n\n\n    \u003c!-- FROGSCORE --\u003e\n    \u003cdiv class=\"ast1-fs\"\u003e\n\n      \u003cdiv class=\"ast1-fs-header\"\u003e\n\n        \u003cdiv class=\"ast1-fs-brand\"\u003e\n\n          \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0887\/8905\/7863\/files\/FROG_FAVICON.webp?v=1774174794\" alt=\"FroGames\" class=\"ast1-fs-frog-img\"\u003e\n          \u003cdiv\u003e\n\n            \u003cspan class=\"ast1-fs-brand-label\"\u003eFrogScore · frogames.business\u003c\/span\u003e\n            \u003cp class=\"ast1-fs-game-name\"\u003eAsterton\u003c\/p\u003e\n\n          \u003c\/div\u003e\n\n        \u003c\/div\u003e\n\n        \u003cspan class=\"ast1-fs-cat\" style=\"background:#e8f0e4;border-color:#7ba070;color:#2c4a20\"\u003eBetting · Semi-coop\u003c\/span\u003e\n      \u003c\/div\u003e\n\n\n      \u003cdiv class=\"ast1-fs-body\"\u003e\n\n        \u003cdiv class=\"ast1-fs-radar-panel\"\u003e\n\n          \u003csvg id=\"ast1-fs-svg\" viewbox=\"0 0 320 320\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"overflow:visible\"\u003e\u003c\/svg\u003e\n          \u003cdiv class=\"ast1-fs-tip\" id=\"ast1-fs-tip\"\u003e\u003c\/div\u003e\n\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"ast1-fs-info\"\u003e\n\n          \u003cspan class=\"ast1-fs-feel-lbl\"\u003eThe experience\u003c\/span\u003e\n          \u003cdiv class=\"ast1-fs-feeling\"\u003e\n\n            \u003cspan class=\"ast1-fs-feel-tag\"\u003eSocial\u003c\/span\u003e\n            \u003cspan class=\"ast1-fs-feel-tag\"\u003eUnpredictable\u003c\/span\u003e\n            \u003cspan class=\"ast1-fs-feel-tag\"\u003eFun\u003c\/span\u003e\n          \u003c\/div\u003e\n\n          \u003cspan class=\"ast1-fs-section-label\"\u003eWho it's for\u003c\/span\u003e\n          \u003cdiv class=\"ast1-fs-targets\"\u003e\n\n            \u003cdiv class=\"ast1-fs-target ast1-fs-si\"\u003e\n\n\u003cspan\u003e🎲\u003c\/span\u003eFamily game\u003c\/div\u003e\n\n            \u003cdiv class=\"ast1-fs-target ast1-fs-si\"\u003e\n\n\u003cspan\u003e🌱\u003c\/span\u003eGateway\u003c\/div\u003e\n\n            \u003cdiv class=\"ast1-fs-target ast1-fs-si\"\u003e\n\n\u003cspan\u003e🍕\u003c\/span\u003eParty\u003c\/div\u003e\n\n            \u003cdiv class=\"ast1-fs-target ast1-fs-no\"\u003e\n\n\u003cspan\u003e🎯\u003c\/span\u003eExperts\u003c\/div\u003e\n\n            \u003cdiv class=\"ast1-fs-target ast1-fs-no\"\u003e\n\n\u003cspan\u003e🧠\u003c\/span\u003eHeavy game\u003c\/div\u003e\n\n            \u003cdiv class=\"ast1-fs-target ast1-fs-no\"\u003e\n\n\u003cspan\u003e🧘\u003c\/span\u003eSolo\u003c\/div\u003e\n\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"ast1-fs-verdict\"\u003e\n\n            \u003cdiv class=\"ast1-fs-verdict-title\"\u003eIn brief\u003c\/div\u003e\n\n            \u003cdiv class=\"ast1-fs-verdict-text\"\u003eBetting, dice, and plot twists around the track. Perfect for light evenings with family or friends — not for those seeking deep strategy.\u003c\/div\u003e\n\n          \u003c\/div\u003e\n\n        \u003c\/div\u003e\n\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"ast1-fs-footer\"\u003e\n\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0887\/8905\/7863\/files\/FROG_FAVICON.webp?v=1774174794\" alt=\"FroGames\" class=\"ast1-fs-footer-frog\"\u003e FrogScore · FroGames editorial rating · based on rules, components, and play sessions\u003c\/div\u003e\n\n    \u003c\/div\u003e\n\n\n    \u003cscript\u003e\n    (function(){\n      var PI2=Math.PI*2;\n      var dims=[\n        {l:'Accessibilit\\u00e0', v:5, note:\"Regole in pochi minuti: si punta e si corre, lo capiscono tutti\"},\n        {l:'Fortuna',           v:4, note:\"Dadi forma e dado volata decidono molto — ma le scommesse le scegli tu\"},\n        {l:'Energia',           v:4, note:\"Si tifa, si esulta, si impreca: il tavolo si accende a ogni volata\"},\n        {l:'Rigiocabilit\\u00e0',v:3, note:\"Ogni corsa \\u00e8 diversa: puntate e combinazioni sempre nuove\"},\n        {l:'Cooperazione',      v:3, note:\"Semi-cooperativo: gli interessi a volte si incrociano, poi ci si tradisce\"},\n        {l:'Complessit\\u00e0',  v:2, note:\"Adatto dagli 8 anni, prima partita fluida e immediata\"}\n      ];\n      var accent='#2E7D4F';\n      var VB=320,CX=160,CY=160,R=74;\n      var n=dims.length,step=PI2\/n,off=-Math.PI\/2;\n      var svg=document.getElementById('ast1-fs-svg');\n      var tip=document.getElementById('ast1-fs-tip');\n      var ns='http:\/\/www.w3.org\/2000\/svg';\n\n      function pt(r,i){return[CX+r*Math.cos(off+i*step),CY+r*Math.sin(off+i*step)];}\n      function el(tag,attrs){\n        var e=document.createElementNS(ns,tag);\n        Object.keys(attrs).forEach(function(k){e.setAttribute(k,attrs[k]);});\n        return e;\n      }\n\n      var st=document.createElement('style');\n      st.textContent='@keyframes ast1-draw{to{stroke-dashoffset:0}}@keyframes ast1-fade{to{opacity:1}}';\n      document.head.appendChild(st);\n\n      for(var ring=1;ring\u003c=5;ring++){\n        var rr=R*(ring\/5);\n        var pts=dims.map(function(_,i){var p=pt(rr,i);return p[0].toFixed(1)+','+p[1].toFixed(1);}).join(' ');\n        svg.appendChild(el('polygon',{points:pts,fill:'none',stroke:ring===5?'#c0b8b0':'#ddd8d0','stroke-width':ring===5?'1':'0.5'}));\n      }\n      dims.forEach(function(_,i){\n        var p=pt(R,i);\n        svg.appendChild(el('line',{x1:CX,y1:CY,x2:p[0].toFixed(1),y2:p[1].toFixed(1),stroke:'#d0c8c0','stroke-width':'0.5'}));\n      });\n\n      var dpts=dims.map(function(d,i){var p=pt(R*(d.v\/5),i);return p[0].toFixed(1)+','+p[1].toFixed(1);}).join(' ');\n      var perim=dims.reduce(function(acc,d,i){\n        var p1=pt(R*(d.v\/5),i),p2=pt(R*(dims[(i+1)%n].v\/5),(i+1)%n);\n        return acc+Math.sqrt(Math.pow(p2[0]-p1[0],2)+Math.pow(p2[1]-p1[1],2));\n      },0);\n      var shape=el('polygon',{points:dpts,fill:accent+'1a',stroke:accent,'stroke-width':'2.5','stroke-linejoin':'round'});\n      shape.style.cssText='stroke-dasharray:'+perim.toFixed(0)+';stroke-dashoffset:'+perim.toFixed(0)+';animation:ast1-draw 0.9s ease-out 0.1s forwards';\n      svg.appendChild(shape);\n\n      dims.forEach(function(d,i){\n        var p=pt(R*(d.v\/5),i);\n        var angle=off+i*step;\n\n        var hit=el('circle',{cx:p[0].toFixed(1),cy:p[1].toFixed(1),r:'10',fill:'transparent',cursor:'pointer'});\n        (function(idx){\n          hit.addEventListener('mouseenter',function(e){\n            tip.innerHTML='\u003cstrong\u003e'+dims[idx].l+' '+dims[idx].v+'\/5\u003c\/strong\u003e\u003cbr\u003e'+dims[idx].note;\n            tip.style.display='block';\n            var rect=svg.parentElement.getBoundingClientRect();\n            var ex=e.clientX-rect.left, ey=e.clientY-rect.top;\n            tip.style.left=Math.min(ex+12,rect.width-220)+'px';\n            tip.style.top=Math.max(ey-55,4)+'px';\n          });\n          hit.addEventListener('mouseleave',function(){tip.style.display='none';});\n        })(i);\n        svg.appendChild(hit);\n\n        var c=el('circle',{cx:p[0].toFixed(1),cy:p[1].toFixed(1),r:'4.5',fill:accent,stroke:'white','stroke-width':'2'});\n        c.style.cssText='opacity:0;animation:ast1-fade 0.3s ease-out '+(0.8+i*0.07).toFixed(2)+'s forwards';\n        svg.appendChild(c);\n\n        var nd=R*(d.v\/5)+15;\n        var nx=CX+nd*Math.cos(angle),ny=CY+nd*Math.sin(angle);\n        var vt=el('text',{x:nx.toFixed(1),y:(ny+1).toFixed(1),'text-anchor':'middle','dominant-baseline':'middle','font-size':'10','font-weight':'800',fill:accent,'font-family':'-apple-system,sans-serif'});\n        vt.textContent=d.v;\n        vt.style.cssText='opacity:0;animation:ast1-fade 0.3s ease-out '+(0.85+i*0.07).toFixed(2)+'s forwards';\n        svg.appendChild(vt);\n      });\n\n      dims.forEach(function(d,i){\n        var angle=off+i*step;\n        var lx=CX+(R+40)*Math.cos(angle),ly=CY+(R+40)*Math.sin(angle);\n        var anchor='middle';\n        if(Math.cos(angle)\u003e0.2) anchor='start';\n        else if(Math.cos(angle)\u003c-0.2) anchor='end';\n        var dy=Math.sin(angle)\u003e0.6?7:Math.sin(angle)\u003c-0.6?-5:0;\n        var isHi=d.v\u003e=4;\n        var t=el('text',{x:lx.toFixed(1),y:(ly+dy).toFixed(1),'text-anchor':anchor,'dominant-baseline':'middle','font-size':isHi?'12':'11','font-weight':'700',fill:'#1a1208','font-family':'-apple-system,sans-serif'});\n        t.textContent=d.l;\n        svg.appendChild(t);\n      });\n    })();\n    \u003c\/script\u003e\n\n    \u003cdiv class=\"ast1-divider\"\u003e\u003c\/div\u003e\n\n\n    \u003c!-- ARSENAL --\u003e\n    \u003cdiv class=\"ast1-section-pad\"\u003e\n\n      \u003cp class=\"ast1-label\"\u003eWhat you have in hand\u003c\/p\u003e\n\n      \u003ch3 class=\"ast1-h3\"\u003eYour betting table\u003c\/h3\u003e\n\n      \u003cdiv class=\"ast1-cards\"\u003e\n\n        \u003cdiv class=\"ast1-card\"\u003e\n\n          \u003cspan class=\"ast1-card-icon\"\u003e🏇\u003c\/span\u003e\n          \u003ch4 class=\"ast1-card-name\"\u003e4 horses on the track\u003c\/h4\u003e\n\n          \u003cp class=\"ast1-card-desc\"\u003eWooden horses running on a real fabric track. Beautiful to look at, ruthless to predict.\u003c\/p\u003e\n\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"ast1-card\"\u003e\n\n          \u003cspan class=\"ast1-card-icon\"\u003e🎴\u003c\/span\u003e\n          \u003ch4 class=\"ast1-card-name\"\u003ePress and expert cards\u003c\/h4\u003e\n\n          \u003cp class=\"ast1-card-desc\"\u003eClues about the horses' form. Those who read them best start with an advantage even before betting.\u003c\/p\u003e\n\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"ast1-card\"\u003e\n\n          \u003cspan class=\"ast1-card-icon\"\u003e🎩\u003c\/span\u003e\n          \u003ch4 class=\"ast1-card-name\"\u003eScreen and top hats\u003c\/h4\u003e\n\n          \u003cp class=\"ast1-card-desc\"\u003eYou place bets shielded from prying eyes. No one knows where you bet — until the sprint.\u003c\/p\u003e\n\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"ast1-card\"\u003e\n\n          \u003cspan class=\"ast1-card-icon\"\u003e🎲\u003c\/span\u003e\n          \u003ch4 class=\"ast1-card-name\"\u003eForm dice + sprint die\u003c\/h4\u003e\n\n          \u003cp class=\"ast1-card-desc\"\u003eThey move the horses and ignite the final sprint. This is where predictions are confirmed or crumble.\u003c\/p\u003e\n\n        \u003c\/div\u003e\n\n      \u003c\/div\u003e\n\n    \u003c\/div\u003e\n\n\n    \u003c!-- CLOSING --\u003e\n    \u003cdiv class=\"ast1-closing\"\u003e\n\n      \u003cp class=\"ast1-closing-text\"\u003eSoon you'll know if your prediction was right — and if it wasn't, you'll want to play again immediately. It always happens in Asterton.\u003c\/p\u003e\n\n    \u003c\/div\u003e\n\n\n    \u003c!-- BOX CONTENT --\u003e\n    \u003cdiv class=\"ast1-box-section\"\u003e\n\n\n      \u003cdetails class=\"ast1-det\"\u003e\n        \u003csummary class=\"ast1-det-sum\"\u003e\n          \u003cdiv class=\"ast1-det-left\"\u003e\n\n\u003cspan class=\"ast1-det-ico\"\u003e🎲\u003c\/span\u003e\u003cdiv\u003e\n\n\u003cspan class=\"ast1-det-title\"\u003eComponents\u003c\/span\u003e\u003cspan class=\"ast1-det-sub\"\u003e11 types · 75 total pieces\u003c\/span\u003e\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n          \u003cspan class=\"ast1-det-arr\"\u003e\u003c\/span\u003e\n        \u003c\/summary\u003e\n        \u003cdiv class=\"ast1-det-body\"\u003e\n\n          \u003cdiv class=\"ast1-comp-grid\"\u003e\n\n            \u003cdiv class=\"ast1-comp\"\u003e\n\n\u003cspan class=\"ast1-comp-qty\"\u003e1\u003c\/span\u003e\u003cspan class=\"ast1-comp-lbl\"\u003eFabric race track\u003c\/span\u003e\n\n\u003c\/div\u003e\n\n            \u003cdiv class=\"ast1-comp\"\u003e\n\n\u003cspan class=\"ast1-comp-qty\"\u003e4\u003c\/span\u003e\u003cspan class=\"ast1-comp-lbl\"\u003eWooden horses\u003c\/span\u003e\n\n\u003c\/div\u003e\n\n            \u003cdiv class=\"ast1-comp\"\u003e\n\n\u003cspan class=\"ast1-comp-qty\"\u003e12\u003c\/span\u003e\u003cspan class=\"ast1-comp-lbl\"\u003ePress and expert cards\u003c\/span\u003e\n\n\u003c\/div\u003e\n\n            \u003cdiv class=\"ast1-comp\"\u003e\n\n\u003cspan class=\"ast1-comp-qty\"\u003e4\u003c\/span\u003e\u003cspan class=\"ast1-comp-lbl\"\u003eForm dice\u003c\/span\u003e\n\n\u003c\/div\u003e\n\n            \u003cdiv class=\"ast1-comp\"\u003e\n\n\u003cspan class=\"ast1-comp-qty\"\u003e24\u003c\/span\u003e\u003cspan class=\"ast1-comp-lbl\"\u003eFinal sprint cards\u003c\/span\u003e\n\n\u003c\/div\u003e\n\n            \u003cdiv class=\"ast1-comp\"\u003e\n\n\u003cspan class=\"ast1-comp-qty\"\u003e1\u003c\/span\u003e\u003cspan class=\"ast1-comp-lbl\"\u003eSprint die\u003c\/span\u003e\n\n\u003c\/div\u003e\n\n            \u003cdiv class=\"ast1-comp\"\u003e\n\n\u003cspan class=\"ast1-comp-qty\"\u003e4\u003c\/span\u003e\u003cspan class=\"ast1-comp-lbl\"\u003eBetting and score boards\u003c\/span\u003e\n\n\u003c\/div\u003e\n\n            \u003cdiv class=\"ast1-comp\"\u003e\n\n\u003cspan class=\"ast1-comp-qty\"\u003e4\u003c\/span\u003e\u003cspan class=\"ast1-comp-lbl\"\u003eBetting screens\u003c\/span\u003e\n\n\u003c\/div\u003e\n\n            \u003cdiv class=\"ast1-comp\"\u003e\n\n\u003cspan class=\"ast1-comp-qty\"\u003e12\u003c\/span\u003e\u003cspan class=\"ast1-comp-lbl\"\u003eBetting cylinders\u003c\/span\u003e\n\n\u003c\/div\u003e\n\n            \u003cdiv class=\"ast1-comp\"\u003e\n\n\u003cspan class=\"ast1-comp-qty\"\u003e8\u003c\/span\u003e\u003cspan class=\"ast1-comp-lbl\"\u003eScore cubes (2 per player)\u003c\/span\u003e\n\n\u003c\/div\u003e\n\n            \u003cdiv class=\"ast1-comp\"\u003e\n\n\u003cspan class=\"ast1-comp-qty\"\u003e1\u003c\/span\u003e\u003cspan class=\"ast1-comp-lbl\"\u003eForbidden cylinder\u003c\/span\u003e\n\n\u003c\/div\u003e\n\n          \u003c\/div\u003e\n\n        \u003c\/div\u003e\n\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"ast1-det ast1-det--last\"\u003e\n        \u003csummary class=\"ast1-det-sum\"\u003e\n          \u003cdiv class=\"ast1-det-left\"\u003e\n\n\u003cspan class=\"ast1-det-ico\"\u003e📖\u003c\/span\u003e\u003cdiv\u003e\n\n\u003cspan class=\"ast1-det-title\"\u003eRules\u003c\/span\u003e\u003cspan class=\"ast1-det-sub\"\u003eEnglish · Official PDF\u003c\/span\u003e\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n          \u003cspan class=\"ast1-det-arr\"\u003e\u003c\/span\u003e\n        \u003c\/summary\u003e\n        \u003cdiv class=\"ast1-det-body\"\u003e\n\n          \u003cdiv class=\"ast1-rl-wrap\"\u003e\n\n            \u003cdiv class=\"ast1-rl-langs\"\u003e\u003cspan class=\"ast1-rl-lang\"\u003e🇬🇧 English\u003c\/span\u003e\u003c\/div\u003e\n\n            \u003ca href=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0872\/7016\/2762\/files\/Asterton_Rulebook_EN_compressed.pdf?v=1781179051\" target=\"_blank\" class=\"ast1-rl-link\" style=\"display:flex;align-items:center;gap:10px;padding:12px 16px;background:#16281c;border-radius:10px;text-decoration:none;color:#fff;\"\u003e\n              \u003cspan class=\"ast1-rl-ico\"\u003e📄\u003c\/span\u003e\n              \u003cdiv class=\"ast1-rl-body\"\u003e\n\n\u003cspan class=\"ast1-rl-title\"\u003eDownload official rules\u003c\/span\u003e\u003cspan class=\"ast1-rl-sub\"\u003eFree PDF · in English\u003c\/span\u003e\n\n\u003c\/div\u003e\n\n              \u003cspan class=\"ast1-rl-arr-ext\"\u003e↗\u003c\/span\u003e\n            \u003c\/a\u003e\n          \u003c\/div\u003e\n\n        \u003c\/div\u003e\n\n      \u003c\/details\u003e\n\n    \u003c\/div\u003e\n\n\n\u003cstyle\u003e\n.ast1-wrap, .ast1-wrap * { box-sizing: border-box; margin: 0; padding: 0; }\n.ast1-wrap {\n  font-family: Georgia, 'Times New Roman', serif;\n  border-radius: 24px;\n  overflow: hidden;\n  box-shadow: 0 20px 60px rgba(0,0,0,0.32);\n  max-width: 1200px;\n  margin-left: auto;\n  margin-right: auto;\n  background: #16281c;\n}\n\n\/* ── HERO (solo colori) ── *\/\n.ast1-hero { position: relative; width: 100%; background: linear-gradient(150deg, #12241a 0%, #1f3a29 55%, #274a33 100%); overflow: hidden; }\n.ast1-hero::before { content: \"\"; position: absolute; inset: 0; background: repeating-linear-gradient(115deg, rgba(255,255,255,0.04) 0px, rgba(255,255,255,0.04) 2px, transparent 2px, transparent 22px); pointer-events: none; }\n.ast1-hero::after { content: \"\"; position: absolute; left: 0; right: 0; bottom: 0; height: 4px; background: linear-gradient(90deg, #2E7D4F 0%, #C6A863 100%); }\n.ast1-hero-content { position: relative; z-index: 2; padding: 26px 26px 28px; width: 100%; }\n.ast1-kicker { display: block; color: #C6A863; font-family: sans-serif; font-size: 0.7rem; font-weight: 700; letter-spacing: 3px; text-transform: uppercase; margin-bottom: 10px; }\n.ast1-sub { color: rgba(255,255,255,0.92); font-family: Georgia, serif; font-size: 1rem; font-style: italic; line-height: 1.55; max-width: 620px; margin-bottom: 16px; }\n.ast1-chips { display: flex; flex-wrap: wrap; gap: 7px; }\n.ast1-chip { background: rgba(255,255,255,0.12); border: 1px solid rgba(255,255,255,0.28); color: #fff; font-family: sans-serif; padding: 4px 12px; border-radius: 50px; font-size: 0.78rem; font-weight: 600; }\n.ast1-chip--green { background: #2E7D4F; border-color: #2E7D4F; }\n\n\/* ── SPECS ── *\/\n.ast1-specs-bar { background: #10201644; background: #101d15; padding: 0 24px; border-top: 1px solid rgba(255,255,255,0.06); }\n.ast1-specs { display: grid; grid-template-columns: repeat(3, 1fr); }\n.ast1-spec { padding: 13px 10px; display: flex; flex-direction: column; align-items: center; text-align: center; gap: 2px; border-right: 1px solid rgba(255,255,255,0.07); border-bottom: 1px solid rgba(255,255,255,0.07); }\n.ast1-spec:nth-child(3n) { border-right: none; }\n.ast1-spec:nth-last-child(-n+3) { border-bottom: none; }\n.ast1-spec-icon { font-size: 1.2rem; }\n.ast1-spec-label { color: rgba(255,255,255,0.42); font-family: sans-serif; font-size: 0.6rem; text-transform: uppercase; letter-spacing: 1px; }\n.ast1-spec-val { color: #fff; font-family: sans-serif; font-size: 0.84rem; font-weight: 800; }\n\n\/* ── BODY ── *\/\n.ast1-body { background: #F2ECDD; }\n\n\/* ── INTRO ── *\/\n.ast1-intro-grid { display: grid; grid-template-columns: 1fr; gap: 26px; padding: 36px 28px 8px; }\n.ast1-label { display: block; font-family: sans-serif; font-size: 0.68rem; font-weight: 700; letter-spacing: 3px; text-transform: uppercase; color: #256B42; margin-bottom: 7px; }\n.ast1-h3 { font-size: clamp(1.4rem, 2.5vw, 2.1rem); font-weight: 900; color: #16281c; line-height: 1.15; margin-bottom: 16px; }\n.ast1-p { font-family: sans-serif; font-size: 0.95rem; color: #3d3320; margin-bottom: 13px; line-height: 1.65; max-width: 700px; }\n\n\/* ── BOX EDITORIALI ── *\/\n.ast1-quote-header { font-family: sans-serif; font-size: 0.68rem; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; color: #256B42; margin-bottom: 12px; }\n.ast1-quote-solo { background: #16281c; border-radius: 14px; padding: 18px 20px; margin-bottom: 12px; border-left: 4px solid #2E7D4F; }\n.ast1-quote-solo--alt { background: #3a2818; border-left-color: #C6A863; }\n.ast1-qs-icon { font-size: 1.4rem; display: block; margin-bottom: 8px; }\n.ast1-qs-text { color: #fff; font-style: italic; font-size: 0.9rem; line-height: 1.6; margin-bottom: 8px; font-family: Georgia, serif; }\n.ast1-qs-note { color: rgba(255,255,255,0.4); font-family: sans-serif; font-size: 0.72rem; font-weight: 700; text-transform: uppercase; letter-spacing: 1px; }\n\n\/* ── DIVIDER ── *\/\n.ast1-divider { height: 1px; background: #d6cbae; margin: 32px 28px 0; }\n\n\/* ── FROGSCORE ── *\/\n.ast1-fs { background:#fff; border-top:1px solid #e0d8cc; border-bottom:1px solid #e0d8cc; }\n.ast1-fs-header { padding:14px 20px 13px; background:#fff; border-bottom:1px solid #e8e2da; display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; }\n.ast1-fs-brand { display:flex; align-items:center; gap:9px; }\n.ast1-fs-frog-img { width:28px; height:28px; object-fit:contain; flex-shrink:0; }\n.ast1-fs-footer-frog { width:16px; height:16px; object-fit:contain; vertical-align:middle; margin-right:2px; }\n.ast1-fs-brand-label { display:block; font-family:sans-serif; font-size:10px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:#6b5e48; }\n.ast1-fs-game-name { font-family:sans-serif; font-size:14px; font-weight:700; color:#1a1208; margin-top:2px; }\n.ast1-fs-cat { font-family:sans-serif; font-size:10px; padding:3px 11px; border-radius:50px; font-weight:700; border:1.5px solid; white-space:nowrap; }\n.ast1-fs-body { display:grid; grid-template-columns:1fr; background:#f7f4ef; }\n.ast1-fs-radar-panel { padding:20px 16px; display:flex; justify-content:center; background:#f7f4ef; position:relative; }\n.ast1-fs-radar-panel svg { width:100%; max-width:270px; height:auto; display:block; }\n.ast1-fs-tip { display:none; position:absolute; background:#1a1208; color:rgba(255,255,255,0.92); font-family:sans-serif; font-size:11px; line-height:1.55; padding:8px 12px; border-radius:9px; z-index:20; max-width:210px; box-shadow:0 4px 18px rgba(0,0,0,0.22); pointer-events:none; }\n.ast1-fs-info { padding:16px 18px 18px; background:#f7f4ef; border-top:1px solid #e8e2da; }\n.ast1-fs-feel-lbl { display:block; font-family:sans-serif; font-size:10px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:#6b5e48; margin-bottom:9px; }\n.ast1-fs-feeling { display:flex; flex-wrap:wrap; gap:7px; margin-bottom:16px; }\n.ast1-fs-feel-tag { font-family:Georgia,serif; font-size:13px; font-style:italic; color:#3d2810; padding:5px 14px; background:#fff; border-radius:7px; border:1px solid #d8d0c4; }\n.ast1-fs-section-label { display:block; font-family:sans-serif; font-size:10px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:#6b5e48; margin-bottom:10px; }\n.ast1-fs-targets { display:grid; grid-template-columns:repeat(auto-fill,minmax(110px,1fr)); gap:7px; margin-bottom:16px; }\n.ast1-fs-target { display:flex; align-items:center; gap:6px; padding:6px 10px; border-radius:10px; border:1px solid; font-family:sans-serif; font-size:11px; font-weight:600; }\n.ast1-fs-target span { font-size:14px; flex-shrink:0; }\n.ast1-fs-si { background:#fff; border-color:#c8c0b0; color:#2a1a08; }\n.ast1-fs-no { background:transparent; border-color:#e0d8d0; color:#b8a898; opacity:.45; text-decoration:line-through; }\n.ast1-fs-verdict { background:#fff; border-radius:10px; padding:12px 14px; border:1px solid #e0d8cc; }\n.ast1-fs-verdict-title { font-family:sans-serif; font-size:10px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:#6b5e48; margin-bottom:5px; }\n.ast1-fs-verdict-text { font-family:sans-serif; font-size:12px; color:#3d2810; line-height:1.65; }\n.ast1-fs-footer { padding:9px 20px; background:#eeeae4; border-top:1px solid #e0d8cc; font-family:sans-serif; font-size:11px; color:#6b5e48; line-height:1.5; }\n\n\/* ── CARDS ── *\/\n.ast1-section-pad { padding: 32px 28px 8px; }\n.ast1-cards { display: grid; grid-template-columns: 1fr; gap: 11px; margin-top: 16px; }\n.ast1-card { background: #fff; border-radius: 14px; padding: 16px 18px; border: 1px solid #e2d8bc; box-shadow: 0 2px 10px rgba(0,0,0,0.05); transition: transform 0.2s ease, box-shadow 0.2s ease; }\n.ast1-card:hover { transform: translateY(-2px); box-shadow: 0 6px 20px rgba(0,0,0,0.09); }\n.ast1-card-icon { font-size: 1.6rem; display: block; margin-bottom: 7px; }\n.ast1-card-name { font-size: 0.95rem; font-weight: 900; color: #256B42; margin-bottom: 5px; }\n.ast1-card-desc { font-family: sans-serif; font-size: 0.85rem; color: #3d3320; line-height: 1.55; }\n\n\/* ── CLOSING ── *\/\n.ast1-closing { background: #16281c; padding: 26px 28px; border-top: 3px solid #C6A863; }\n.ast1-closing-text { font-family: Georgia, serif; font-size: 1.05rem; font-style: italic; color: rgba(255,255,255,0.9); text-align: center; line-height: 1.6; }\n\n\/* ── CONTENUTO SCATOLA ── *\/\n.ast1-box-section { background: #F2ECDD; border-top: 1px solid #d6cbae; }\n.ast1-det { border-bottom: 1px solid #e8deca; background: #fff; }\n.ast1-det--last { border-bottom: none; }\n.ast1-det-sum { list-style: none; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 20px; cursor: pointer; transition: background .18s; }\n.ast1-det-sum::-webkit-details-marker { display: none; }\n.ast1-det-sum::marker { display: none; }\n.ast1-det[open] .ast1-det-sum { background: #faf7f2; }\n.ast1-det-sum:hover { background: #faf7f2; }\n.ast1-det-left { display: flex; align-items: center; gap: 10px; }\n.ast1-det-ico { font-size: 17px; flex-shrink: 0; }\n.ast1-det-title { font-family: sans-serif; font-size: 13px; font-weight: 700; color: #16281c; display: block; }\n.ast1-det-sub { font-family: sans-serif; font-size: 11px; color: #9c8e7a; margin-top: 1px; display: block; }\n.ast1-det-arr { width: 16px; height: 16px; flex-shrink: 0; position: relative; }\n.ast1-det-arr::before { content: \"\"; position: absolute; top: 50%; left: 50%; width: 8px; height: 8px; border-right: 2px solid #9c8e7a; border-bottom: 2px solid #9c8e7a; transform: translate(-50%,-70%) rotate(45deg); transition: transform .22s; }\n.ast1-det[open] .ast1-det-arr::before { transform: translate(-50%,-30%) rotate(225deg); }\n.ast1-det-body { padding: 0 20px 16px; background: #fff; }\n\n.ast1-comp-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:7px; padding-top:14px; }\n.ast1-comp { display:flex; align-items:center; gap:8px; padding:8px 10px; background:#f7f4ef; border-radius:8px; border:1px solid #e8deca; }\n.ast1-comp-qty { font-family:sans-serif; font-size:0.85rem; font-weight:800; color:#256B42; min-width:26px; flex-shrink:0; }\n.ast1-comp-lbl { font-family:sans-serif; font-size:0.78rem; color:#3d3320; line-height:1.3; }\n\n.ast1-rl-wrap { padding-top:14px; display:flex; flex-direction:column; gap:10px; }\n.ast1-rl-langs { display:flex; flex-wrap:wrap; gap:6px; }\n.ast1-rl-lang { font-family:sans-serif; font-size:0.75rem; font-weight:600; padding:3px 10px; border-radius:50px; background:#eaf3de; border:1px solid #80b050; color:#2a5010; }\n.ast1-rl-link:hover { opacity:.85; }\n.ast1-rl-ico { font-size:1.2rem; flex-shrink:0; }\n.ast1-rl-body { flex:1; min-width:0; }\n.ast1-rl-title { display:block; font-family:sans-serif; font-size:0.82rem; font-weight:700; color:#fff; }\n.ast1-rl-sub { display:block; font-family:sans-serif; font-size:0.7rem; color:rgba(255,255,255,0.55); margin-top:2px; }\n.ast1-rl-arr-ext { font-size:0.9rem; color:rgba(255,255,255,0.5); flex-shrink:0; }\n\n\/* ── RESPONSIVE ── *\/\n@media screen and (min-width: 600px) {\n  .ast1-specs { grid-template-columns: repeat(6, 1fr); }\n  .ast1-spec { border-bottom: none; }\n  .ast1-spec:nth-child(3n) { border-right: 1px solid rgba(255,255,255,0.07); }\n  .ast1-spec:last-child { border-right: none; }\n  .ast1-cards { grid-template-columns: repeat(2, 1fr); }\n  .ast1-fs-body { grid-template-columns: 220px 1fr; }\n  .ast1-fs-radar-panel { border-top: none; border-right: 1px solid #e8e2da; }\n  .ast1-fs-info { border-top: none; }\n}\n@media screen and (min-width: 900px) {\n  .ast1-hero-content { padding: 30px 36px 32px; }\n  .ast1-intro-grid { grid-template-columns: 3fr 2fr; align-items: start; padding: 40px 36px 8px; }\n  .ast1-cards { grid-template-columns: repeat(4, 1fr); }\n  .ast1-divider { margin-left: 36px; margin-right: 36px; }\n  .ast1-section-pad { padding: 36px 36px 8px; }\n  .ast1-closing { padding: 28px 36px; }\n  .ast1-fs-body { grid-template-columns: 260px 1fr; }\n  .ast1-fs-radar-panel svg { max-width: 260px; }\n  .ast1-comp-grid { grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); }\n}\n\u003c\/style\u003e\n\n\u003c\/div\u003e\n\n\n","brand":"Ludicatessen","offers":[{"title":"Default Title","offer_id":54315817238855,"sku":null,"price":29.99,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0887\/8905\/7863\/files\/Asterton00.webp?v=1783599503","url":"https:\/\/frogames.business\/en\/products\/asterton","provider":"FroGames","version":"1.0","type":"link"}