{"product_id":"rheinlander","title":"Rheinländer","description":"\u003c!-- =====================================================\n     RHEINLANDER — BLOCCO 1\n     FroGames | Shopify tema Concept\n     CSS prefix: rhl1-\n     ===================================================== --\u003e\n\u003cdiv class=\"rhl1-wrap\"\u003e\n\u003c!-- COVER --\u003e\n\u003cdiv class=\"rhl1-cover\"\u003e\n\u003cimg loading=\"eager\" class=\"rhl1-cover-img\" alt=\"Rheinlander eurogame area control board game for 2-5 players - official 25th Century Games cover\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0887\/8905\/7863\/files\/Rheinlander.webp?v=1775554173\"\u003e\n\u003cdiv class=\"rhl1-cover-fade\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv class=\"rhl1-cover-content\"\u003e\n\u003cp class=\"rhl1-kicker\"\u003eFroGames — Moments You'll Remember\u003c\/p\u003e\n\u003cp class=\"rhl1-sub\"\u003eA timeless Knizia classic: tough decisions, ruthless interaction, and the Rhine flowing through your ambitions.\u003c\/p\u003e\n\u003cdiv class=\"rhl1-chips\"\u003e\n\u003cspan class=\"rhl1-chip rhl1-chip--accent\"\u003eClassic Eurogame\u003c\/span\u003e \u003cspan class=\"rhl1-chip\"\u003e25th Century Games\u003c\/span\u003e \u003cspan class=\"rhl1-chip\"\u003eArtwork by Ian O'Toole\u003c\/span\u003e \u003cspan class=\"rhl1-chip\"\u003eEnglish Edition\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- TECH SPECS --\u003e\n\u003cdiv class=\"rhl1-specs-bar\"\u003e\n\u003cdiv class=\"rhl1-specs\"\u003e\n\u003cdiv class=\"rhl1-spec\"\u003e\n\u003cspan class=\"rhl1-spec-icon\"\u003e👥\u003c\/span\u003e \u003cspan class=\"rhl1-spec-label\"\u003ePlayers\u003c\/span\u003e \u003cspan class=\"rhl1-spec-val\"\u003e2 – 5\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rhl1-spec\"\u003e\n\u003cspan class=\"rhl1-spec-icon\"\u003e⏱️\u003c\/span\u003e \u003cspan class=\"rhl1-spec-label\"\u003eDuration\u003c\/span\u003e \u003cspan class=\"rhl1-spec-val\"\u003e45–75 min\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rhl1-spec\"\u003e\n\u003cspan class=\"rhl1-spec-icon\"\u003e🎂\u003c\/span\u003e \u003cspan class=\"rhl1-spec-label\"\u003eAge\u003c\/span\u003e \u003cspan class=\"rhl1-spec-val\"\u003e10+ years\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rhl1-spec\"\u003e\n\u003cspan class=\"rhl1-spec-icon\"\u003e🃏\u003c\/span\u003e \u003cspan class=\"rhl1-spec-label\"\u003eMechanics\u003c\/span\u003e \u003cspan class=\"rhl1-spec-val\"\u003eHand Management\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rhl1-spec\"\u003e\n\u003cspan class=\"rhl1-spec-icon\"\u003e🏰\u003c\/span\u003e \u003cspan class=\"rhl1-spec-label\"\u003eSystem\u003c\/span\u003e \u003cspan class=\"rhl1-spec-val\"\u003eArea Control\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rhl1-spec\"\u003e\n\u003cspan class=\"rhl1-spec-icon\"\u003e⚔️\u003c\/span\u003e \u003cspan class=\"rhl1-spec-label\"\u003eInteraction\u003c\/span\u003e \u003cspan class=\"rhl1-spec-val\"\u003eDirect and constant\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- BODY --\u003e\n\u003cdiv class=\"rhl1-body\"\u003e\n\u003c!-- INTRO + EDITORIAL QUOTES --\u003e\n\u003cdiv class=\"rhl1-intro-grid\"\u003e\n\u003cdiv class=\"rhl1-intro-text\"\u003e\n\u003cp class=\"rhl1-label\"\u003eWhat it's about\u003c\/p\u003e\n\u003ch3 class=\"rhl1-h3\"\u003eConquer the Rhine, card by card\u003c\/h3\u003e\n\u003cp class=\"rhl1-p\"\u003eThe Rhine flows across the table. Along its banks, coveted lands, castles, cathedrals, and cities. Each player is a duke — and each duke wants control of the most valuable regions, while rivals do exactly the same.\u003c\/p\u003e\n\u003cp class=\"rhl1-p\"\u003e\u003cstrong\u003eRheinlander\u003c\/strong\u003e is a eurogame by \u003cstrong\u003eReiner Knizia\u003c\/strong\u003e designed in 1999 and now re-released by 25th Century Games with stunning artwork by Ian O'Toole. The mechanics are essential: play a card, place a knight, draw. But the decisions that arise from that simple action are anything but trivial.\u003c\/p\u003e\n\u003cp class=\"rhl1-p\"\u003eDuchies form when your knights touch. They expand, contend, conquer. Whoever controls the largest region becomes the duke — and the duke is worth much more than a simple knight in the final score.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rhl1-intro-side\"\u003e\n\u003cdiv class=\"rhl1-quote-solo\"\u003e\n\u003cspan class=\"rhl1-qs-icon\"\u003e🏰\u003c\/span\u003e\n\u003cp class=\"rhl1-qs-text\"\u003eThree things make Rheinlander a timeless classic: immediate rules, rapid turns, and continuous player interaction that never leaves anyone indifferent.\u003c\/p\u003e\n\u003cp class=\"rhl1-qs-note\"\u003eThe secret of Rheinlander in one line\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rhl1-quote-solo rhl1-quote-solo--alt\"\u003e\n\u003cspan class=\"rhl1-qs-icon\"\u003e⚔️\u003c\/span\u003e\n\u003cp class=\"rhl1-qs-text\"\u003eEvery card played can overturn the balance on the board. Luck exists, but every opponent's move becomes an opportunity to seize — not a fate to suffer.\u003c\/p\u003e\n\u003cp class=\"rhl1-qs-note\"\u003eFrom the game experience\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rhl1-divider\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003c!-- FROGSCORE --\u003e\n\u003cdiv class=\"rhl1-fs\"\u003e\n\u003cdiv class=\"rhl1-fs-header\"\u003e\n\u003cdiv class=\"rhl1-fs-brand\"\u003e\n\u003cimg class=\"rhl1-fs-frog-img\" alt=\"FroGames\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0887\/8905\/7863\/files\/FROG_FAVICON.webp?v=1774174794\"\u003e\n\u003cdiv\u003e\n\u003cspan class=\"rhl1-fs-brand-label\"\u003eFrogScore · FroGames.it\u003c\/span\u003e\n\u003cp class=\"rhl1-fs-game-name\"\u003eRheinlander\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cspan style=\"background: #eaf3de; border-color: #80b050; color: #2a5010;\" class=\"rhl1-fs-cat\"\u003eStrategy\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rhl1-fs-body\"\u003e\n\u003cdiv class=\"rhl1-fs-radar-panel\"\u003e\n\u003csvg style=\"overflow: visible;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 320 320\" id=\"rhl1-fs-svg\"\u003e\u003c\/svg\u003e\n\u003cdiv id=\"rhl1-fs-tip\" class=\"rhl1-fs-tip\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rhl1-fs-info\"\u003e\n\u003cspan class=\"rhl1-fs-feel-lbl\"\u003eThe experience\u003c\/span\u003e\n\u003cdiv class=\"rhl1-fs-feeling\"\u003e\n\u003cspan class=\"rhl1-fs-feel-tag\"\u003eTactical\u003c\/span\u003e \u003cspan class=\"rhl1-fs-feel-tag\"\u003eImmediate\u003c\/span\u003e \u003cspan class=\"rhl1-fs-feel-tag\"\u003eInteractive\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cspan class=\"rhl1-fs-section-label\"\u003eWho it's for\u003c\/span\u003e\n\u003cdiv class=\"rhl1-fs-targets\"\u003e\n\u003cdiv class=\"rhl1-fs-target rhl1-fs-si\"\u003e\n\u003cspan\u003e🎯\u003c\/span\u003eExperts\u003c\/div\u003e\n\u003cdiv class=\"rhl1-fs-target rhl1-fs-si\"\u003e\n\u003cspan\u003e🎲\u003c\/span\u003eFamily game\u003c\/div\u003e\n\u003cdiv class=\"rhl1-fs-target rhl1-fs-si\"\u003e\n\u003cspan\u003e🌱\u003c\/span\u003eGateway\u003c\/div\u003e\n\u003cdiv class=\"rhl1-fs-target rhl1-fs-no\"\u003e\n\u003cspan\u003e🍕\u003c\/span\u003eParty\u003c\/div\u003e\n\u003cdiv class=\"rhl1-fs-target rhl1-fs-no\"\u003e\n\u003cspan\u003e🧒\u003c\/span\u003eKids\u003c\/div\u003e\n\u003cdiv class=\"rhl1-fs-target rhl1-fs-no\"\u003e\n\u003cspan\u003e🧘\u003c\/span\u003eSolo\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rhl1-fs-verdict\"\u003e\n\u003cdiv class=\"rhl1-fs-verdict-title\"\u003eIn summary\u003c\/div\u003e\n\u003cdiv class=\"rhl1-fs-verdict-text\"\u003eFew rules, authentic depth, and continuous interaction. The classic Knizia that enchants veterans and immediately convinces those who have never played a eurogame.\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rhl1-fs-footer\"\u003e\n\u003cimg class=\"rhl1-fs-footer-frog\" alt=\"FroGames\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0887\/8905\/7863\/files\/FROG_FAVICON.webp?v=1774174794\"\u003e FrogScore · FroGames editorial rating · based on rules, game history, and play sessions\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cscript\u003e\n    (function(){\n      var PI2=Math.PI*2;\n      var dims=[\n        {l:'Interaction',    v:5, note:\"Every move directly affects opponents — duchies contend every turn\"},\n        {l:'Strategy',      v:4, note:\"Cards limit options, but the choice of where to place the knight is everything\"},\n        {l:'Replayability',  v:4, note:\"The Rhine board always offers new balances and different games\"},\n        {l:'Luck',        v:3, note:\"The hand depends on drawn cards, but skill decides how to exploit them\"},\n        {l:'Complexity',    v:2, note:\"Rules in 10 minutes, first game smooth — depth emerges with play\"},\n        {l:'Tension',       v:4, note:\"The final score is always uncertain until the last knight is placed\"}\n      ];\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('rhl1-fs-svg');\n      var tip=document.getElementById('rhl1-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 rhl1-draw{to{stroke-dashoffset:0}}@keyframes rhl1-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:rhl1-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        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:rhl1-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:rhl1-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\u003cdiv class=\"rhl1-divider\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003c!-- MECHANICS CARD --\u003e\n\u003cdiv class=\"rhl1-section-pad\"\u003e\n\u003cp class=\"rhl1-label\"\u003eHow it works\u003c\/p\u003e\n\u003ch3 class=\"rhl1-h3\"\u003eThe four tools of the duke\u003c\/h3\u003e\n\u003cdiv class=\"rhl1-cards\"\u003e\n\u003cdiv class=\"rhl1-card\"\u003e\n\u003cspan class=\"rhl1-card-icon\"\u003e🃏\u003c\/span\u003e\n\u003ch4 class=\"rhl1-card-name\"\u003eTerritory cards\u003c\/h4\u003e\n\u003cp class=\"rhl1-card-desc\"\u003eEach card corresponds to a number on the board. You play the card, place your knight in the right spot — if it's free. Your hand is your most valuable resource.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rhl1-card\"\u003e\n\u003cspan class=\"rhl1-card-icon\"\u003e⚔️\u003c\/span\u003e\n\u003ch4 class=\"rhl1-card-name\"\u003eKnights and duchies\u003c\/h4\u003e\n\u003cp class=\"rhl1-card-desc\"\u003eTwo adjacent knights of the same color form a duchy. When a larger duchy touches a smaller one, the duke changes — and the score shifts.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rhl1-card\"\u003e\n\u003cspan class=\"rhl1-card-icon\"\u003e🏰\u003c\/span\u003e\n\u003ch4 class=\"rhl1-card-name\"\u003eLandmarks and powers\u003c\/h4\u003e\n\u003cp class=\"rhl1-card-desc\"\u003eCastles, cathedrals, and cities add value to duchies and grant special abilities. Controlling a landmark is often the difference between victory and defeat.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rhl1-card\"\u003e\n\u003cspan class=\"rhl1-card-icon\"\u003e🚢\u003c\/span\u003e\n\u003ch4 class=\"rhl1-card-name\"\u003eThe Rhine boat\u003c\/h4\u003e\n\u003cp class=\"rhl1-card-desc\"\u003eWhen you draw a boat card, you move the boat on the river and can place a knight where it stops. Simple to understand — powerful to use at the right time.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- CLOSING --\u003e\n\u003cdiv class=\"rhl1-closing\"\u003e\n\u003cp class=\"rhl1-closing-text\"\u003eSomeone will smile, someone will protest, someone will already want to put everything back in the box to start over. It always happens with Rheinlander.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c!-- BOX CONTENT --\u003e\n\u003cdiv class=\"rhl1-box-section\"\u003e\n\u003cdetails class=\"rhl1-det rhl1-det--last\"\u003e\n\u003csummary class=\"rhl1-det-sum\"\u003e\u003cspan class=\"rhl1-det-ico\"\u003e📖\u003c\/span\u003e\u003cspan class=\"rhl1-det-title\"\u003eRulebook\u003c\/span\u003e\u003cspan class=\"rhl1-det-sub\"\u003eEnglish\u003c\/span\u003e\u003cspan class=\"rhl1-det-arr\"\u003e\u003c\/span\u003e\u003c\/summary\u003e\n\u003cdiv class=\"rhl1-det-body\"\u003e\n\u003cdiv class=\"rhl1-rl-wrap\"\u003e\n\u003cdiv class=\"rhl1-rl-langs\"\u003e\u003cspan class=\"rhl1-rl-lang\"\u003e🇬🇧 English\u003c\/span\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/details\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\u003cstyle\u003e\n.rhl1-wrap, .rhl1-wrap * { box-sizing: border-box; margin: 0; padding: 0; }\n.rhl1-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: #0a1c04;\n}\n\n\/* ── COPERTINA ── *\/\n.rhl1-cover { position: relative; width: 100%; height: 340px; overflow: hidden; display: flex; align-items: flex-end; }\n.rhl1-cover-img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center top; display: block; }\n.rhl1-cover-fade { position: absolute; inset: 0; background: linear-gradient(to bottom, rgba(10,28,4,0) 0%, rgba(10,28,4,0) 20%, rgba(10,28,4,0.55) 50%, rgba(10,28,4,0.88) 72%, rgba(10,28,4,0.99) 100%); }\n.rhl1-cover-content { position: relative; z-index: 2; padding: 18px 26px 24px; width: 100%; }\n.rhl1-kicker { display: block; color: #A8D060; font-family: sans-serif; font-size: 0.7rem; font-weight: 700; letter-spacing: 3px; text-transform: uppercase; margin-bottom: 8px; }\n.rhl1-sub { color: rgba(255,255,255,0.9); font-family: Georgia, serif; font-size: 1rem; font-style: italic; line-height: 1.55; max-width: 580px; margin-bottom: 16px; }\n.rhl1-chips { display: flex; flex-wrap: wrap; gap: 7px; }\n.rhl1-chip { background: rgba(255,255,255,0.12); border: 1px solid rgba(255,255,255,0.25); color: #fff; font-family: sans-serif; padding: 4px 12px; border-radius: 50px; font-size: 0.78rem; font-weight: 600; }\n.rhl1-chip--accent { background: #2E6B0A; border-color: #2E6B0A; }\n\n\/* ── SPECS ── *\/\n.rhl1-specs-bar { background: #0f2208; padding: 0 24px; border-top: 1px solid rgba(255,255,255,0.06); }\n.rhl1-specs { display: grid; grid-template-columns: repeat(3, 1fr); }\n.rhl1-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.rhl1-spec:nth-child(3n) { border-right: none; }\n.rhl1-spec:nth-last-child(-n+3) { border-bottom: none; }\n.rhl1-spec-icon { font-size: 1.2rem; }\n.rhl1-spec-label { color: rgba(255,255,255,0.4); font-family: sans-serif; font-size: 0.6rem; text-transform: uppercase; letter-spacing: 1px; }\n.rhl1-spec-val { color: #fff; font-family: sans-serif; font-size: 0.84rem; font-weight: 800; }\n\n\/* ── BODY ── *\/\n.rhl1-body { background: #F0EED8; }\n\n\/* ── INTRO ── *\/\n.rhl1-intro-grid { display: grid; grid-template-columns: 1fr; gap: 26px; padding: 36px 28px 8px; }\n.rhl1-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.rhl1-h3 { font-size: clamp(1.4rem, 2.5vw, 2.1rem); font-weight: 900; color: #0d1e06; line-height: 1.15; margin-bottom: 16px; }\n.rhl1-p { font-family: sans-serif; font-size: 0.95rem; color: #2a3a14; margin-bottom: 13px; line-height: 1.65; max-width: 700px; }\n\n\/* ── BOX EDITORIALI ── *\/\n.rhl1-quote-solo { background: #0d2006; border-radius: 14px; padding: 18px 20px; margin-bottom: 12px; border-left: 4px solid #A8D060; }\n.rhl1-quote-solo--alt { background: #1a3a0a; border-left-color: #5ea820; }\n.rhl1-qs-icon { font-size: 1.4rem; display: block; margin-bottom: 8px; }\n.rhl1-qs-text { color: #fff; font-style: italic; font-size: 0.9rem; line-height: 1.6; margin-bottom: 8px; font-family: Georgia, serif; }\n.rhl1-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.rhl1-divider { height: 1px; background: #c8c8a0; margin: 32px 28px 0; }\n\n\/* ── FROGSCORE ── *\/\n.rhl1-fs { background:#fff; border-top:1px solid #e0d8cc; border-bottom:1px solid #e0d8cc; }\n.rhl1-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.rhl1-fs-brand { display:flex; align-items:center; gap:9px; }\n.rhl1-fs-frog-img { width:28px; height:28px; object-fit:contain; flex-shrink:0; }\n.rhl1-fs-footer-frog { width:16px; height:16px; object-fit:contain; vertical-align:middle; margin-right:2px; }\n.rhl1-fs-brand-label { display:block; font-family:sans-serif; font-size:10px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:#6b5e48; }\n.rhl1-fs-game-name { font-family:sans-serif; font-size:14px; font-weight:700; color:#1a1208; margin-top:2px; }\n.rhl1-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.rhl1-fs-body { display:grid; grid-template-columns:1fr; background:#f7f4ef; }\n.rhl1-fs-radar-panel { padding:20px 16px; display:flex; justify-content:center; background:#f7f4ef; position:relative; }\n.rhl1-fs-radar-panel svg { width:100%; max-width:270px; height:auto; display:block; }\n.rhl1-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.rhl1-fs-info { padding:16px 18px 18px; background:#f7f4ef; border-top:1px solid #e8e2da; }\n.rhl1-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.rhl1-fs-feeling { display:flex; flex-wrap:wrap; gap:7px; margin-bottom:16px; }\n.rhl1-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.rhl1-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.rhl1-fs-targets { display:grid; grid-template-columns:repeat(auto-fill,minmax(110px,1fr)); gap:7px; margin-bottom:16px; }\n.rhl1-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.rhl1-fs-target span { font-size:14px; flex-shrink:0; }\n.rhl1-fs-si { background:#fff; border-color:#c8c0b0; color:#2a1a08; }\n.rhl1-fs-no { background:transparent; border-color:#e0d8d0; color:#b8a898; opacity:.45; text-decoration:line-through; }\n.rhl1-fs-verdict { background:#fff; border-radius:10px; padding:12px 14px; border:1px solid #e0d8cc; }\n.rhl1-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.rhl1-fs-verdict-text { font-family:sans-serif; font-size:12px; color:#3d2810; line-height:1.65; }\n.rhl1-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.rhl1-section-pad { padding: 32px 28px 8px; }\n.rhl1-cards { display: grid; grid-template-columns: 1fr; gap: 11px; margin-top: 16px; }\n.rhl1-card { background: #fff; border-radius: 14px; padding: 16px 18px; border: 1px solid #d4d8b4; box-shadow: 0 2px 10px rgba(0,0,0,0.05); transition: transform 0.2s ease, box-shadow 0.2s ease; }\n.rhl1-card:hover { transform: translateY(-2px); box-shadow: 0 6px 20px rgba(0,0,0,0.09); }\n.rhl1-card-icon { font-size: 1.6rem; display: block; margin-bottom: 7px; }\n.rhl1-card-name { font-size: 0.95rem; font-weight: 900; color: #2E6B0A; margin-bottom: 5px; }\n.rhl1-card-desc { font-family: sans-serif; font-size: 0.85rem; color: #2a3a14; line-height: 1.55; }\n\n\/* ── CLOSING ── *\/\n.rhl1-closing { background: #0d2006; padding: 26px 28px; border-top: 3px solid #A8D060; }\n.rhl1-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\n\/* ── CONTENUTO SCATOLA ── *\/\n.rhl1-box-section { background: #F0EED8; border-top: 1px solid #c8c8a0; }\n.rhl1-det { border-bottom: 1px solid #dce0b4; background: #fff; }\n.rhl1-det--last { border-bottom: none; }\n.rhl1-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.rhl1-det-sum::-webkit-details-marker { display: none; }\n.rhl1-det-sum::marker { display: none; }\n.rhl1-det[open] .rhl1-det-sum { background: #f8f9f0; }\n.rhl1-det-sum:hover { background: #f8f9f0; }\n.rhl1-det-left { display: flex; align-items: center; gap: 10px; }\n.rhl1-det-ico { font-size: 17px; flex-shrink: 0; }\n.rhl1-det-title { font-family: sans-serif; font-size: 13px; font-weight: 700; color: #0d1e06; display: block; }\n.rhl1-det-sub { font-family: sans-serif; font-size: 11px; color: #9c8e7a; margin-top: 1px; display: block; }\n.rhl1-det-arr { width: 16px; height: 16px; flex-shrink: 0; position: relative; }\n.rhl1-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.rhl1-det[open] .rhl1-det-arr::before { transform: translate(-50%,-30%) rotate(225deg); }\n.rhl1-det-body { padding: 0 20px 16px; background: #fff; }\n\n.rhl1-rl-wrap { padding-top:14px; display:flex; flex-direction:column; gap:10px; }\n.rhl1-rl-langs { display:flex; flex-wrap:wrap; gap:6px; }\n.rhl1-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\n\/* ── RESPONSIVE ── *\/\n@media screen and (min-width: 600px) {\n  .rhl1-specs { grid-template-columns: repeat(6, 1fr); }\n  .rhl1-spec { border-bottom: none; }\n  .rhl1-spec:nth-child(3n) { border-right: 1px solid rgba(255,255,255,0.07); }\n  .rhl1-spec:last-child { border-right: none; }\n  .rhl1-cards { grid-template-columns: repeat(2, 1fr); }\n  .rhl1-fs-body { grid-template-columns: 220px 1fr; }\n  .rhl1-fs-radar-panel { border-top: none; border-right: 1px solid #e8e2da; }\n  .rhl1-fs-info { border-top: none; }\n}\n@media screen and (min-width: 900px) {\n  .rhl1-cover { height: 440px; }\n  .rhl1-cover-content { padding: 22px 36px 30px; }\n  .rhl1-intro-grid { grid-template-columns: 3fr 2fr; align-items: start; padding: 40px 36px 8px; }\n  .rhl1-cards { grid-template-columns: repeat(4, 1fr); }\n  .rhl1-divider { margin-left: 36px; margin-right: 36px; }\n  .rhl1-section-pad { padding: 36px 36px 8px; }\n  .rhl1-closing { padding: 28px 36px; }\n  .rhl1-fs-body { grid-template-columns: 260px 1fr; }\n  .rhl1-fs-radar-panel svg { max-width: 260px; }\n}\n\u003c\/style\u003e","brand":"25th Century Games","offers":[{"title":"Default Title","offer_id":53660102689095,"sku":null,"price":44.99,"currency_code":"EUR","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0887\/8905\/7863\/files\/Rheinlander00.webp?v=1775546901","url":"https:\/\/frogames.it\/en\/products\/rheinlander","provider":"FroGames","version":"1.0","type":"link"}