{"product_id":"a-message-from-the-stars-extinction-protocol","title":"A Message From The Stars - Extinction Protocol","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 — Moments You'll Remember\u003c\/p\u003e\n      \u003cp class=\"fg1-sub\"\u003eJust when you thought you'd figured out how to communicate with aliens, the expansion changes the rules on you. And everyone at the table realizes they've been wrong from the very first word.\u003c\/p\u003e\n      \u003cdiv class=\"fg1-chips\"\u003e\n\u003cspan class=\"fg1-chip fg1-chip--accent\"\u003eCooperative\u003c\/span\u003e\u003cspan class=\"fg1-chip\"\u003eAllplay\u003c\/span\u003e\u003cspan class=\"fg1-chip\"\u003eImpossible languages\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\"\u003ePlayers\u003c\/span\u003e\n        \u003cspan class=\"fg1-spec-val\"\u003e2 – 8\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\"\u003eDuration\u003c\/span\u003e\n        \u003cspan class=\"fg1-spec-val\"\u003e45 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\"\u003eAge\u003c\/span\u003e\n        \u003cspan class=\"fg1-spec-val\"\u003e11+ years\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\"\u003eMechanics\u003c\/span\u003e\n        \u003cspan class=\"fg1-spec-val\"\u003ePattern Recognition\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\"\u003eCommunication\u003c\/span\u003e\n        \u003cspan class=\"fg1-spec-val\"\u003eVariable limits\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\"\u003eFeature\u003c\/span\u003e\n        \u003cspan class=\"fg1-spec-val\"\u003eHidden rules\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\"\u003eWHAT IT'S ABOUT\u003c\/p\u003e\n        \u003ch3 class=\"fg1-h3\"\u003eWhen even the rules become a riddle to decipher\u003c\/h3\u003e\n        \u003cp class=\"fg1-p\"\u003eExtinction Protocol is the expansion that \u003cstrong\u003eClarence Simpson\u003c\/strong\u003e designed for those who thought they understood everything about A Message From The Stars. Art by \u003cstrong\u003eLéonard Dupond and Alexandra Preda\u003c\/strong\u003e, published by Allplay, it adds two new game modes that hide not only secret letters, but also the rules themselves. The aliens have decided to complicate everything.\u003c\/p\u003e\n        \u003cp class=\"fg1-p\"\u003eAt the table, you still have to decipher extraterrestrial messages, but now \u003cstrong\u003ethe rules of the language change without warning\u003c\/strong\u003e. Hidden letters, scrambled patterns, communication constraints that change game after game. The team must collaborate without truly knowing what tools it has at its disposal. And by the time you figure out how it works, it's already too late.\u003c\/p\u003e\n        \n      \u003c\/div\u003e\n      \u003cdiv class=\"fg1-intro-side\"\u003e\n        \u003cp class=\"fg1-quote-header\"\u003eWhat they say abroad\u003c\/p\u003e\n        \u003cdiv class=\"fg1-quote\" itemscope itemtype=\"https:\/\/schema.org\/Review\"\u003e\n          \u003cp class=\"fg1-quote-text\" itemprop=\"reviewBody\"\u003eAn expansion that transforms a puzzle party game into a meta-linguistic challenge. You're not just deciphering words: you're deciphering the system itself.\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\"\u003eIf the base game seemed too simple after a few plays, Extinction Protocol puts you back at square one. With a cruel smile.\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\"\u003eA Message From The Stars: Extinction Protocol\u003c\/p\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cspan class=\"fg1-fs-cat\" style=\"background:#e0f5ee;border-color:#60c090;color:#0a4a30\"\u003eCooperative · Puzzle\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\"\u003eThe experience\u003c\/span\u003e\n          \u003cdiv class=\"fg1-fs-feeling\"\u003e\n\u003cspan class=\"fg1-fs-feel-tag\"\u003eCryptic\u003c\/span\u003e\u003cspan class=\"fg1-fs-feel-tag\"\u003eCerebral\u003c\/span\u003e\u003cspan class=\"fg1-fs-feel-tag\"\u003eFrustrating (in a good way)\u003c\/span\u003e\n\u003c\/div\u003e\n          \u003cspan class=\"fg1-fs-section-label\"\u003eWho it's for\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\u003eParty\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-si\"\u003e\n\u003cspan\u003e🎯\u003c\/span\u003eExperts\u003c\/div\u003e\n\u003cdiv class=\"fg1-fs-target fg1-fs-no\"\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\u003eChildren\u003c\/div\u003e\n\u003c\/div\u003e\n          \u003cdiv class=\"fg1-fs-verdict\"\u003e\n            \u003cdiv class=\"fg1-fs-verdict-title\"\u003eIn summary\u003c\/div\u003e\n            \u003cdiv class=\"fg1-fs-verdict-text\"\u003eIf the base game was a clever puzzle party game, Extinction Protocol is its sadistic version. Perfect for groups that want to sweat. Challenging, meta, memorable.\u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\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 · FroGames editorial rating · based on rules, international reviews and play sessions\u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cscript\u003e\n    (function(){\n      var PI2=Math.PI*2;\n      var dims=[{\"label\": \"Interazione\", \"value\": 5, \"note\": \"Comunicazione limitata e pattern recognition collettiva: ogni errore coinvolge tutti\"}, {\"label\": \"Rigiocabilità\", \"value\": 5, \"note\": \"Due nuove modalità che cambiano radicalmente il modo di giocare al base game\"}, {\"label\": \"Complessità\", \"value\": 4, \"note\": \"Non le regole in sé, ma il fatto che devi scoprirle mentre giochi\"}, {\"label\": \"Tensione\", \"value\": 4, \"note\": \"Ogni turno è un passo nel buio: stai usando la regola giusta o hai appena sabotato il team?\"}, {\"label\": \"Fortuna\", \"value\": 2, \"note\": \"Zero fortuna: solo deduzione pura e comunicazione efficace (o disastrosa)\"}];\n      var accent='#0a7a5a';\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\"\u003eWhat this expansion adds\u003c\/p\u003e\n      \u003ch3 class=\"fg1-h3\"\u003eTwo modes that change everything\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\"\u003eHidden rules\u003c\/h4\u003e\n          \u003cp class=\"fg1-card-desc\"\u003eThe rules of the alien language are no longer fixed. Each game can have secret variations that you must deduce as you play. It's not enough to decipher the letters: you have to understand how the system works.\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\"\u003eAdvanced encrypted letters\u003c\/h4\u003e\n          \u003cp class=\"fg1-card-desc\"\u003eSecret letters can now be scrambled in new ways. Patterns that seem familiar turn out to be traps. The first half-hour is always a bloodbath.\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\"\u003eVariable communication constraints\u003c\/h4\u003e\n          \u003cp class=\"fg1-card-desc\"\u003eCommunication limits change between modes. Sometimes you can speak freely, sometimes only with gestures, sometimes with cryptic phrases. The team must adapt on the fly.\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\"\u003eExtinction Protocol Mode\u003c\/h4\u003e\n          \u003cp class=\"fg1-card-desc\"\u003eThe mode that gives the expansion its name: a final scenario where everything is allowed for the aliens. Rules, letters, patterns: nothing is as it seems. The ultimate challenge for expert teams.\u003c\/p\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"fg1-section-pad fg1-rulebook-pad\"\u003e\n      \u003ca class=\"fg1-rulebook\" href=\"https:\/\/boardgamegeek.com\/filepage\/320304\" target=\"_blank\" rel=\"nofollow noopener\"\u003e\n        \u003cspan class=\"fg1-rulebook-icon\"\u003e📕\u003c\/span\u003e\n        \u003cspan class=\"fg1-rulebook-text\"\u003e\n          \u003cspan class=\"fg1-rulebook-label\"\u003eOfficial Rulebook (PDF)\u003c\/span\u003e\n          \u003cspan class=\"fg1-rulebook-meta\"\u003eA Message From The Stars: Extinction Protocol Rulebook · on BoardGameGeek\u003c\/span\u003e\n        \u003c\/span\u003e\n        \u003cspan class=\"fg1-rulebook-arrow\"\u003e↗\u003c\/span\u003e\n      \u003c\/a\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"fg1-closing\"\u003e\n      \u003cp class=\"fg1-closing-text\"\u003eIn an hour, you'll have decoded the message. Or you'll have argued about what the rule really was. In either case, you'll demand a rematch.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\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(10,122,90,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: #FFC857; 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: #0a7a5a; border-color: #0a7a5a; }\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: #0a7a5a; 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: #0a7a5a; margin-bottom: 12px; }\n.fg1-quote { background: #1a0800; border-radius: 14px; padding: 16px 18px; margin-bottom: 12px; border-left: 4px solid #FFC857; }\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:#0a7a5a; 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: #0a7a5a; 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: #0a7a5a; 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: #0a7a5a; 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: #0a7a5a; }\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: #0a7a5a; font-weight: 700; flex-shrink: 0; }\n.fg1-closing { background: #1a0800; padding: 26px 28px; border-top: 3px solid #FFC857; }\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":"Allplay","offers":[{"title":"Default Title","offer_id":53919218729287,"sku":null,"price":19.99,"currency_code":"EUR","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0887\/8905\/7863\/files\/AMessageFromTheStars-ExtinctionProtocol00.webp?v=1778849455","url":"https:\/\/frogames.it\/en\/products\/a-message-from-the-stars-extinction-protocol","provider":"FroGames","version":"1.0","type":"link"}