{"product_id":"gnomeville","title":"Gnomeville","description":"\u003cdiv class=\"fg1-wrap\"\u003e\n  \u003cdiv class=\"fg1-hero\"\u003e\n    \u003cdiv class=\"fg1-hero-content\"\u003e\n      \u003cp class=\"fg1-kicker\"\u003eFroGames — Momenti che Ricorderai\u003c\/p\u003e\n      \u003cp class=\"fg1-sub\"\u003eAlla fine del primo attacco tutti respirano. Dopo il secondo qualcuno inizia a contare le tessere rimaste. Dopo il terzo non contate più: sopravvivete.\u003c\/p\u003e\n      \u003cdiv class=\"fg1-chips\"\u003e\n\u003cspan class=\"fg1-chip fg1-chip--accent\"\u003eStrategico\u003c\/span\u003e\u003cspan class=\"fg1-chip\"\u003eAdam's Apple Games\u003c\/span\u003e\u003cspan class=\"fg1-chip\"\u003eMatch-3 da tavolo\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n  \u003cdiv class=\"fg1-specs-bar\"\u003e\n    \u003cdiv class=\"fg1-specs\"\u003e\n      \u003cdiv class=\"fg1-spec\"\u003e\n        \u003cspan class=\"fg1-spec-icon\"\u003e👥\u003c\/span\u003e\n        \u003cspan class=\"fg1-spec-label\"\u003eGiocatori\u003c\/span\u003e\n        \u003cspan class=\"fg1-spec-val\"\u003e1 – 4\u003c\/span\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"fg1-spec\"\u003e\n        \u003cspan class=\"fg1-spec-icon\"\u003e⏱️\u003c\/span\u003e\n        \u003cspan class=\"fg1-spec-label\"\u003eDurata\u003c\/span\u003e\n        \u003cspan class=\"fg1-spec-val\"\u003e45–60 min\u003c\/span\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"fg1-spec\"\u003e\n        \u003cspan class=\"fg1-spec-icon\"\u003e🎂\u003c\/span\u003e\n        \u003cspan class=\"fg1-spec-label\"\u003eEtà\u003c\/span\u003e\n        \u003cspan class=\"fg1-spec-val\"\u003e10+ anni\u003c\/span\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"fg1-spec\"\u003e\n        \u003cspan class=\"fg1-spec-icon\"\u003e🎲\u003c\/span\u003e\n        \u003cspan class=\"fg1-spec-label\"\u003eMeccanica\u003c\/span\u003e\n        \u003cspan class=\"fg1-spec-val\"\u003eBag-building simultaneo\u003c\/span\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"fg1-spec\"\u003e\n        \u003cspan class=\"fg1-spec-icon\"\u003e🗺️\u003c\/span\u003e\n        \u003cspan class=\"fg1-spec-label\"\u003eCaratteristica\u003c\/span\u003e\n        \u003cspan class=\"fg1-spec-val\"\u003eMatch-3 strategico\u003c\/span\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"fg1-spec\"\u003e\n        \u003cspan class=\"fg1-spec-icon\"\u003e💥\u003c\/span\u003e\n        \u003cspan class=\"fg1-spec-label\"\u003eCombattimento\u003c\/span\u003e\n        \u003cspan class=\"fg1-spec-val\"\u003eTower defense\u003c\/span\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n  \u003cdiv class=\"fg1-body\"\u003e\n    \u003cdiv class=\"fg1-intro-grid\"\u003e\n      \u003cdiv class=\"fg1-intro-text\"\u003e\n        \u003cp class=\"fg1-label\"\u003eDI COSA SI TRATTA\u003c\/p\u003e\n        \u003ch3 class=\"fg1-h3\"\u003eUn villaggio da ricostruire prima che i troll tornino\u003c\/h3\u003e\n        \u003cp class=\"fg1-p\"\u003eGnomeville nasce dalla mente di \u003cstrong\u003eBjörn Lindberg\u003c\/strong\u003e, pubblicato da Adam's Apple Games con le illustrazioni di \u003cstrong\u003eKatya Kirdoglo\u003c\/strong\u003e. È un gioco che prende il bag-building che conosciamo e lo spinge verso territori nuovi: piazzamento tessere, puzzle match-3, tower defense. Il tutto giocato in contemporanea da 1 a 4 giocatori, con un layer di push-your-luck che tiene alta la tensione.\u003c\/p\u003e\n        \u003cp class=\"fg1-p\"\u003ePesca dalla tua sacca, piazza tessere sul tuo villaggio, crea combo di tre elementi uguali per attivare effetti potenti. Addestra gnomi, forgia armi, costruisci difese. Quando arriva l'attacco dei troll, tutto deve reggere. E se regge, ricominci. Con meno risorse, meno tempo, più paura.\u003c\/p\u003e\n        \n      \u003c\/div\u003e\n      \u003cdiv class=\"fg1-intro-side\"\u003e\n        \u003cp class=\"fg1-quote-header\"\u003eCosa dicono all'estero\u003c\/p\u003e\n        \u003cdiv class=\"fg1-quote\" itemscope itemtype=\"https:\/\/schema.org\/Review\"\u003e\n          \u003cp class=\"fg1-quote-text\" itemprop=\"reviewBody\"\u003eUn mix di meccaniche che sulla carta non dovrebbero funzionare insieme. E invece funzionano.\u003c\/p\u003e\n          \n          \u003cp class=\"fg1-quote-source\"\u003e— \u003cspan itemprop=\"author\" itemscope itemtype=\"https:\/\/schema.org\/Organization\"\u003e\u003cspan itemprop=\"name\"\u003eFroGames\u003c\/span\u003e\u003c\/span\u003e\u003c\/p\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"fg1-quote fg1-quote--dark\" itemscope itemtype=\"https:\/\/schema.org\/Review\"\u003e\n          \u003cp class=\"fg1-quote-text\" itemprop=\"reviewBody\"\u003eLa sacca ti dà speranza. Il tabellone ti dà scelte. I troll ti tolgono entrambe.\u003c\/p\u003e\n          \n          \u003cp class=\"fg1-quote-source\"\u003e— \u003cspan itemprop=\"author\" itemscope itemtype=\"https:\/\/schema.org\/Organization\"\u003e\u003cspan itemprop=\"name\"\u003eFroGames\u003c\/span\u003e\u003c\/span\u003e\u003c\/p\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"fg1-divider\"\u003e\u003c\/div\u003e\n    \u003cdiv class=\"fg1-fs\"\u003e\n      \u003cdiv class=\"fg1-fs-header\"\u003e\n        \u003cdiv class=\"fg1-fs-brand\"\u003e\n          \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0887\/8905\/7863\/files\/FROG_FAVICON.webp?v=1774174794\" alt=\"FroGames\" class=\"fg1-fs-frog-img\"\u003e\n          \u003cdiv\u003e\n            \u003cspan class=\"fg1-fs-brand-label\"\u003eFrogScore · FroGames.it\u003c\/span\u003e\n            \u003cp class=\"fg1-fs-game-name\"\u003eGnomeville\u003c\/p\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cspan class=\"fg1-fs-cat\" style=\"background:#eaf3de;border-color:#80b050;color:#2a5010\"\u003eStrategia\u003c\/span\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"fg1-fs-body\"\u003e\n        \u003cdiv class=\"fg1-fs-radar-panel\"\u003e\n          \u003csvg id=\"fg1-fs-svg\" viewbox=\"0 0 320 320\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"overflow:visible\"\u003e\u003c\/svg\u003e\n          \u003cdiv class=\"fg1-fs-tip\" id=\"fg1-fs-tip\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"fg1-fs-info\"\u003e\n          \u003cspan class=\"fg1-fs-feel-lbl\"\u003eL'esperienza\u003c\/span\u003e\n          \u003cdiv class=\"fg1-fs-feeling\"\u003e\n\u003cspan class=\"fg1-fs-feel-tag\"\u003eFrenetico\u003c\/span\u003e\u003cspan class=\"fg1-fs-feel-tag\"\u003eCalcolato\u003c\/span\u003e\u003cspan class=\"fg1-fs-feel-tag\"\u003eCrescente\u003c\/span\u003e\n\u003c\/div\u003e\n          \u003cspan class=\"fg1-fs-section-label\"\u003ePer chi è\u003c\/span\u003e\n          \u003cdiv class=\"fg1-fs-targets\"\u003e\n\u003cdiv class=\"fg1-fs-target fg1-fs-si\"\u003e\n\u003cspan\u003e🎯\u003c\/span\u003eEsperti\u003c\/div\u003e\n\u003cdiv class=\"fg1-fs-target fg1-fs-si\"\u003e\n\u003cspan\u003e🎲\u003c\/span\u003eFamily game\u003c\/div\u003e\n\u003cdiv class=\"fg1-fs-target fg1-fs-no\"\u003e\n\u003cspan\u003e🌱\u003c\/span\u003eGateway\u003c\/div\u003e\n\u003cdiv class=\"fg1-fs-target fg1-fs-no\"\u003e\n\u003cspan\u003e🍕\u003c\/span\u003eParty\u003c\/div\u003e\n\u003cdiv class=\"fg1-fs-target fg1-fs-no\"\u003e\n\u003cspan\u003e🧒\u003c\/span\u003eBambini\u003c\/div\u003e\n\u003c\/div\u003e\n          \u003cdiv class=\"fg1-fs-verdict\"\u003e\n            \u003cdiv class=\"fg1-fs-verdict-title\"\u003eIn sintesi\u003c\/div\u003e\n            \u003cdiv class=\"fg1-fs-verdict-text\"\u003eGnomeville è un incrocio di generi che non dovrebbe funzionare, eppure funziona. Il bag-building incontra il match-3, il tower defense incontra il push-your-luck. È frenetico ma calcolato, competitivo ma giocabile in solitario. Se cercate un gioco che vi sorprenda a ogni pescata e vi lasci sempre una scelta in più da fare, Gnomeville è quel gioco.\u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"fg1-fs-solo\"\u003e\n        \u003cdiv class=\"fg1-fs-solo-row\"\u003e\n          \u003cspan class=\"fg1-fs-solo-icon\"\u003e🧘\u003c\/span\u003e\n          \u003cdiv class=\"fg1-fs-solo-text\"\u003e\n            \u003cspan class=\"fg1-fs-solo-label\"\u003eModalità solitario · Ufficiale\u003c\/span\u003e\n            \u003cspan class=\"fg1-fs-solo-stars\" aria-label=\"4 su 5\"\u003e★★★★☆\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cp class=\"fg1-fs-solo-note\"\u003eGnomeville in solitario funziona con le stesse regole del multiplayer: affronti gli attacchi dei troll e cerchi di costruire il villaggio più resistente. L'esperienza è completa e scalabile in difficoltà, ma manca il confronto diretto con gli altri giocatori. Ideale per chi vuole ottimizzare strategie e testare build diverse della sacca.\u003c\/p\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"fg1-fs-footer\"\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0887\/8905\/7863\/files\/FROG_FAVICON.webp?v=1774174794\" alt=\"FroGames\" class=\"fg1-fs-footer-frog\"\u003e FrogScore · valutazione editoriale FroGames · basata su regolamento, recensioni internazionali e sessioni di gioco\u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cscript\u003e\n    (function(){\n      var PI2=Math.PI*2;\n      var dims=[{\"label\": \"Tensione\", \"value\": 5, \"note\": \"Ogni pescata dalla sacca è un rischio calcolato, ogni turno prima dell'attacco alza la pressione\"}, {\"label\": \"Rigiocabilità\", \"value\": 5, \"note\": \"Setup variabile, eventi casuali, sacche che evolvono in modo diverso ogni partita\"}, {\"label\": \"Strategia\", \"value\": 4, \"note\": \"Ottimizzare le combo match-3 e il timing delle costruzioni è cruciale, ma la sacca introduce variabilità\"}, {\"label\": \"Complessità\", \"value\": 3, \"note\": \"Le meccaniche si intrecciano ma il flusso è chiaro: pesca, piazza, combatti. Regole in 20 minuti\"}, {\"label\": \"Interazione\", \"value\": 2, \"note\": \"Gioco simultaneo, poca interazione diretta. Gara per chi costruisce il villaggio più resistente\"}, {\"label\": \"Fortuna\", \"value\": 3, \"note\": \"La sacca introduce varianza, ma la costruisci tu: più ottimizzi, meno dipendi dal caso\"}];\n      var accent='#2E6B0A';\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('fg1-fs-svg');\n      var tip=document.getElementById('fg1-fs-tip');\n      if(!svg) return;\n      var ns='http:\/\/www.w3.org\/2000\/svg';\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      var st=document.createElement('style');\n      st.textContent='@keyframes fg1-draw{to{stroke-dashoffset:0}}@keyframes fg1-fade{to{opacity:1}}';\n      document.head.appendChild(st);\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      var dpts=dims.map(function(d,i){var p=pt(R*(d.value\/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.value\/5),i),p2=pt(R*(dims[(i+1)%n].value\/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:fg1-draw 0.9s ease-out 0.1s forwards';\n      svg.appendChild(shape);\n      dims.forEach(function(d,i){\n        var p=pt(R*(d.value\/5),i);\n        var angle=off+i*step;\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].label+' '+dims[idx].value+'\/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        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:fg1-fade 0.3s ease-out '+(0.8+i*0.07).toFixed(2)+'s forwards';\n        svg.appendChild(c);\n        var nd=R*(d.value\/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.value;\n        vt.style.cssText='opacity:0;animation:fg1-fade 0.3s ease-out '+(0.85+i*0.07).toFixed(2)+'s forwards';\n        svg.appendChild(vt);\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.value\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.label;\n        svg.appendChild(t);\n      });\n    })();\n    \u003c\/script\u003e\n    \u003cdiv class=\"fg1-divider\"\u003e\u003c\/div\u003e\n    \u003cdiv class=\"fg1-section-pad\"\u003e\n      \u003cp class=\"fg1-label\"\u003eI pezzi del villaggio\u003c\/p\u003e\n      \u003ch3 class=\"fg1-h3\"\u003eCosa costruisci e cosa rischi\u003c\/h3\u003e\n      \u003cdiv class=\"fg1-cards\"\u003e\n        \u003cdiv class=\"fg1-card\"\u003e\n          \u003cspan class=\"fg1-card-icon\"\u003e🏠\u003c\/span\u003e\n          \u003ch4 class=\"fg1-card-name\"\u003eTessere Villaggio\u003c\/h4\u003e\n          \u003cp class=\"fg1-card-desc\"\u003eOgni tessera rappresenta una parte del tuo insediamento. Piazzale per creare combo match-3 e attivare effetti speciali. Più costruisci, più il villaggio cresce. Ma ogni tessera esposta è un bersaglio per i troll.\u003c\/p\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"fg1-card\"\u003e\n          \u003cspan class=\"fg1-card-icon\"\u003e🎒\u003c\/span\u003e\n          \u003ch4 class=\"fg1-card-name\"\u003eSacca Personale\u003c\/h4\u003e\n          \u003cp class=\"fg1-card-desc\"\u003eIl cuore del gioco. Pesca risorse, gnomi, armi. Più la ottimizzi, più controlli il caso. Ma se peschi male al momento sbagliato, i troll non aspettano.\u003c\/p\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"fg1-card\"\u003e\n          \u003cspan class=\"fg1-card-icon\"\u003e⚔️\u003c\/span\u003e\n          \u003ch4 class=\"fg1-card-name\"\u003eGnomi e Armi\u003c\/h4\u003e\n          \u003cp class=\"fg1-card-desc\"\u003eI tuoi gnomi escono dall'accademia e devono essere equipaggiati. Spade, martelli, difese. Senza armi, un gnomo è solo un bersaglio. Con armi, è una speranza.\u003c\/p\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"fg1-card\"\u003e\n          \u003cspan class=\"fg1-card-icon\"\u003e👹\u003c\/span\u003e\n          \u003ch4 class=\"fg1-card-name\"\u003eAttacchi dei Troll\u003c\/h4\u003e\n          \u003cp class=\"fg1-card-desc\"\u003eEventi casuali che colpiscono il villaggio. Danni, distruzioni, panico. Ogni attacco è una prova: il tuo villaggio regge o crolla? Non c'è seconda possibilità.\u003c\/p\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"fg1-closing\"\u003e\n      \u003cp class=\"fg1-closing-text\"\u003eTra un'ora avrai ricostruito tre volte. E perso due. Ma quella terza volta, quando tutto regge, ti ricorderai perché ci hai provato.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n.fg1-wrap, .fg1-wrap * { box-sizing: border-box; margin: 0; padding: 0; }\n.fg1-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: #1a1a1a;\n}\n.fg1-hero {\n  background: linear-gradient(135deg, #1a1a1a 0%, #222222 50%, #1a1a1a 100%);\n  padding: 32px 26px 36px;\n  position: relative;\n  overflow: hidden;\n}\n.fg1-hero::before {\n  content: \"\";\n  position: absolute;\n  inset: 0;\n  background: radial-gradient(ellipse at top right, rgba(46,107,10,0.08) 0%, transparent 60%);\n  pointer-events: none;\n}\n.fg1-hero-content { position: relative; z-index: 2; }\n.fg1-kicker { display: block; color: #FFB800; font-family: sans-serif; font-size: 0.7rem; font-weight: 700; letter-spacing: 3px; text-transform: uppercase; margin-bottom: 10px; }\n.fg1-sub { color: rgba(255,255,255,0.88); font-family: Georgia, serif; font-size: 1rem; font-style: italic; line-height: 1.55; max-width: 580px; margin-bottom: 18px; }\n.fg1-chips { display: flex; flex-wrap: wrap; gap: 7px; }\n.fg1-chip { background: rgba(255,255,255,0.08); border: 1px solid rgba(255,255,255,0.2); color: #fff; font-family: sans-serif; padding: 4px 12px; border-radius: 50px; font-size: 0.78rem; font-weight: 600; }\n.fg1-chip--accent { background: #2E6B0A; border-color: #2E6B0A; }\n.fg1-specs-bar { background: #160a02; padding: 0 24px; border-top: 1px solid rgba(255,255,255,0.06); }\n.fg1-specs { display: grid; grid-template-columns: repeat(3, 1fr); }\n.fg1-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.fg1-spec:nth-child(3n) { border-right: none; }\n.fg1-spec:nth-last-child(-n+3) { border-bottom: none; }\n.fg1-spec-icon { font-size: 1.2rem; }\n.fg1-spec-label { color: rgba(255,255,255,0.4); font-family: sans-serif; font-size: 0.6rem; text-transform: uppercase; letter-spacing: 1px; }\n.fg1-spec-val { color: #fff; font-family: sans-serif; font-size: 0.84rem; font-weight: 800; }\n.fg1-body { background: #F5EDD8; }\n.fg1-intro-grid { display: grid; grid-template-columns: 1fr; gap: 26px; padding: 36px 28px 8px; }\n.fg1-label { display: block; font-family: sans-serif; font-size: 0.68rem; font-weight: 700; letter-spacing: 3px; text-transform: uppercase; color: #2E6B0A; margin-bottom: 7px; }\n.fg1-h3 { font-size: clamp(1.4rem, 2.5vw, 2.1rem); font-weight: 900; color: #1a0800; line-height: 1.15; margin-bottom: 16px; }\n.fg1-p { font-family: sans-serif; font-size: 0.95rem; color: #3d2810; margin-bottom: 13px; line-height: 1.65; max-width: 700px; }\n.fg1-quote-header { font-family: sans-serif; font-size: 0.68rem; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; color: #2E6B0A; margin-bottom: 12px; }\n.fg1-quote { background: #1a0800; border-radius: 14px; padding: 16px 18px; margin-bottom: 12px; border-left: 4px solid #FFB800; }\n.fg1-quote--dark { background: #3a0a00; }\n.fg1-quote-text { color: #fff; font-style: italic; font-size: 0.87rem; line-height: 1.6; margin-bottom: 6px; font-family: sans-serif; }\n.fg1-quote-transl { color: rgba(255,255,255,0.48); font-family: sans-serif; font-size: 0.76rem; line-height: 1.5; margin-bottom: 7px; font-style: italic; }\n.fg1-quote-source { color: rgba(255,255,255,0.43); font-family: sans-serif; font-size: 0.72rem; font-weight: 700; }\n.fg1-divider { height: 1px; background: #d4c0a0; margin: 32px 28px 0; }\n.fg1-fs { background:#fff; border-top:1px solid #e0d8cc; border-bottom:1px solid #e0d8cc; }\n.fg1-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.fg1-fs-brand { display:flex; align-items:center; gap:9px; }\n.fg1-fs-frog-img { width:28px; height:28px; object-fit:contain; flex-shrink:0; }\n.fg1-fs-footer-frog { width:16px; height:16px; object-fit:contain; vertical-align:middle; margin-right:2px; }\n.fg1-fs-brand-label { display:block; font-family:sans-serif; font-size:10px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:#6b5e48; }\n.fg1-fs-game-name { font-family:sans-serif; font-size:14px; font-weight:700; color:#1a1208; margin-top:2px; }\n.fg1-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.fg1-fs-body { display:grid; grid-template-columns:1fr; background:#f7f4ef; }\n.fg1-fs-radar-panel { padding:20px 16px; display:flex; justify-content:center; background:#f7f4ef; position:relative; }\n.fg1-fs-radar-panel svg { width:100%; max-width:270px; height:auto; display:block; }\n.fg1-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.fg1-fs-info { padding:16px 18px 18px; background:#f7f4ef; border-top:1px solid #e8e2da; }\n.fg1-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.fg1-fs-feeling { display:flex; flex-wrap:wrap; gap:7px; margin-bottom:16px; }\n.fg1-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.fg1-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.fg1-fs-targets { display:grid; grid-template-columns:repeat(auto-fill,minmax(110px,1fr)); gap:7px; margin-bottom:16px; }\n.fg1-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.fg1-fs-target span { font-size:14px; flex-shrink:0; }\n.fg1-fs-si { background:#fff; border-color:#c8c0b0; color:#2a1a08; }\n.fg1-fs-no { background:transparent; border-color:#e0d8d0; color:#b8a898; opacity:.45; text-decoration:line-through; }\n.fg1-fs-verdict { background:#fff; border-radius:10px; padding:12px 14px; border:1px solid #e0d8cc; }\n.fg1-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.fg1-fs-verdict-text { font-family:sans-serif; font-size:12px; color:#3d2810; line-height:1.65; }\n.fg1-fs-solo { background:#f0ece4; border-top:1px solid #e0d8cc; padding:14px 18px; }\n.fg1-fs-solo-row { display:flex; align-items:center; gap:12px; margin-bottom:8px; }\n.fg1-fs-solo-icon { font-size:1.4rem; flex-shrink:0; }\n.fg1-fs-solo-text { display:flex; flex-direction:column; gap:2px; flex-grow:1; }\n.fg1-fs-solo-label { font-family:sans-serif; font-size:10px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:#6b5e48; }\n.fg1-fs-solo-stars { font-family:sans-serif; font-size:14px; letter-spacing:2px; color:#2E6B0A; line-height:1; }\n.fg1-fs-solo-note { font-family:sans-serif; font-size:12px; color:#3d2810; line-height:1.65; }\n.fg1-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.fg1-section-pad { padding: 32px 28px 8px; border-top: 0 !important; border-bottom: 0 !important; box-shadow: none !important; }\n.fg1-cards { display: grid; grid-template-columns: 1fr; gap: 11px; margin-top: 16px; }\n.fg1-card { background: #fff; border-radius: 14px; padding: 16px 18px; border: 1px solid #e0ceb0; box-shadow: 0 2px 10px rgba(0,0,0,0.05); transition: transform 0.2s ease, box-shadow 0.2s ease; }\n.fg1-card:hover { transform: translateY(-2px); box-shadow: 0 6px 20px rgba(0,0,0,0.09); }\n.fg1-card-icon { font-size: 1.6rem; display: block; margin-bottom: 7px; }\n.fg1-card-name { font-size: 0.95rem; font-weight: 900; color: #2E6B0A; margin-bottom: 5px; }\n.fg1-card-desc { font-family: sans-serif; font-size: 0.85rem; color: #3d2810; line-height: 1.55; }\n.fg1-sleeve-toggle { background: #fff; border-radius: 14px; border: 1px solid #e0ceb0; box-shadow: 0 2px 10px rgba(0,0,0,0.05); overflow: hidden; }\n.fg1-sleeve-summary { list-style: none; cursor: pointer; padding: 16px 20px; display: flex; align-items: center; gap: 14px; font-family: sans-serif; user-select: none; transition: background 0.2s ease; }\n.fg1-sleeve-summary::-webkit-details-marker { display: none; }\n.fg1-sleeve-summary:hover { background: #faf2e2; }\n.fg1-sleeve-summary-icon { font-size: 1.5rem; flex-shrink: 0; }\n.fg1-sleeve-summary-text { flex-grow: 1; display: flex; flex-direction: column; gap: 2px; }\n.fg1-sleeve-summary-label { font-size: 0.95rem; font-weight: 800; color: #1a0800; }\n.fg1-sleeve-summary-count { font-size: 0.78rem; color: #7a6040; font-weight: 500; }\n.fg1-sleeve-summary-arrow { font-size: 0.75rem; color: #2E6B0A; transition: transform 0.25s ease; flex-shrink: 0; }\n.fg1-sleeve-toggle[open] .fg1-sleeve-summary-arrow { transform: rotate(180deg); }\n.fg1-sleeve-toggle[open] .fg1-sleeve-summary { border-bottom: 1px solid #f0e4ce; }\n.fg1-sleeve-body { padding: 16px 20px 20px; }\n.fg1-sleeve-intro { font-family: sans-serif; font-size: 0.9rem; color: #3d2810; line-height: 1.6; margin: 0 0 14px 0; max-width: 680px; }\n.fg1-sleeve-table { width: 100%; max-width: 420px; border-collapse: collapse; background: #fff; border-radius: 10px; overflow: hidden; border: 1px solid #e8dcba; font-family: sans-serif; }\n.fg1-sleeve-table th { background: #2E6B0A; color: #fff; text-transform: uppercase; letter-spacing: 1px; font-size: 0.72rem; font-weight: 700; padding: 10px 14px; text-align: left; }\n.fg1-sleeve-table td { padding: 10px 14px; border-bottom: 1px solid #f0e4ce; font-size: 0.9rem; color: #3d2810; }\n.fg1-sleeve-table tbody tr:last-child td { border-bottom: none; }\n.fg1-sleeve-dim { font-weight: 600; }\n.fg1-sleeve-qty { font-weight: 800; text-align: right; color: #2E6B0A; }\n.fg1-sleeve-total td { background: #faf2e2; font-weight: 900; font-size: 0.85rem; text-transform: uppercase; letter-spacing: 0.5px; }\n.fg1-sleeve-total .fg1-sleeve-qty { color: #1a0800; }\n.fg1-rulebook-pad { padding-top: 18px; border-top: 0 !important; border-bottom: 0 !important; box-shadow: none !important; }\n\/* Card cliccabile: border shorthand + accent verde a sinistra (etichetta \"risorsa speciale\").\n   Niente 4 border separati: il border-bottom da solo si leggeva come underline. *\/\na.fg1-rulebook,\na.fg1-rulebook:link,\na.fg1-rulebook:visited,\na.fg1-rulebook:hover,\na.fg1-rulebook:focus,\na.fg1-rulebook:active {\n  text-decoration: none !important;\n  border: 1px solid #e8dcba !important;\n  border-left: 4px solid #2E6B0A !important;\n  box-shadow: 0 2px 8px rgba(0,0,0,0.04) !important;\n  outline: none !important;\n  background-image: none !important;\n}\n.fg1-rulebook { display: flex; align-items: center; gap: 14px; background: #fffaf0; border-radius: 12px; padding: 14px 18px; color: #1a0800; transition: background 0.2s ease, transform 0.2s ease; }\n.fg1-rulebook:hover { background: #faf0d8 !important; transform: translateX(2px); }\n\/* Reset preventivo su figli e pseudo-elementi: alcuni temi Shopify (Concept, Dawn-derived,\n   Impulse, Prestige) iniettano underline animate via ::before\/::after con background-image\n   linear-gradient. Vanno nuke esplicitamente. *\/\n.fg1-rulebook *,\n.fg1-rulebook *::before,\n.fg1-rulebook *::after {\n  text-decoration: none !important;\n  border: 0 !important;\n  box-shadow: none !important;\n  background: transparent !important;\n  background-image: none !important;\n}\n.fg1-rulebook::before,\n.fg1-rulebook::after {\n  display: none !important;\n  content: none !important;\n}\n.fg1-rulebook-icon { font-size: 1.6rem; flex-shrink: 0; }\n.fg1-rulebook-text { display: flex; flex-direction: column; flex-grow: 1; gap: 2px; }\n.fg1-rulebook-label { font-weight: 800; font-size: 0.95rem; color: #1a0800; }\n.fg1-rulebook-meta { font-size: 0.78rem; color: #6b5a3a; }\n.fg1-rulebook-arrow { font-size: 1.1rem; color: #2E6B0A; font-weight: 700; flex-shrink: 0; }\n.fg1-closing { background: #1a0800; padding: 26px 28px; border-top: 3px solid #FFB800; }\n.fg1-closing-text { font-family: Georgia, serif; font-size: 1.05rem; font-style: italic; color: rgba(255,255,255,0.88); text-align: center; line-height: 1.6; }\n@media screen and (min-width: 600px) {\n  .fg1-specs { grid-template-columns: repeat(6, 1fr); }\n  .fg1-spec { border-bottom: none; }\n  .fg1-spec:nth-child(3n) { border-right: 1px solid rgba(255,255,255,0.07); }\n  .fg1-spec:last-child { border-right: none; }\n  .fg1-cards { grid-template-columns: repeat(2, 1fr); }\n  .fg1-fs-body { grid-template-columns: 220px 1fr; }\n  .fg1-fs-radar-panel { border-top: none; border-right: 1px solid #e8e2da; }\n  .fg1-fs-info { border-top: none; }\n}\n@media screen and (min-width: 900px) {\n  .fg1-hero { padding: 40px 36px 44px; }\n  .fg1-intro-grid { grid-template-columns: 3fr 2fr; align-items: start; padding: 40px 36px 8px; }\n  .fg1-cards { grid-template-columns: repeat(4, 1fr); }\n  .fg1-divider { margin-left: 36px; margin-right: 36px; }\n  .fg1-section-pad { padding: 36px 36px 8px; }\n  .fg1-closing { padding: 28px 36px; }\n  .fg1-fs-body { grid-template-columns: 260px 1fr; }\n  .fg1-fs-radar-panel svg { max-width: 260px; }\n}\n\u003c\/style\u003e","brand":"Adam's Apple Games","offers":[{"title":"Default Title","offer_id":54212518641991,"sku":null,"price":49.99,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0887\/8905\/7863\/files\/Gnomeville00.webp?v=1782267295","url":"https:\/\/frogames.it\/en\/products\/gnomeville","provider":"FroGames","version":"1.0","type":"link"}