/* iofacciosoldi — Modern Light (Revolut style) */
@font-face{font-family:'Inter';font-style:normal;font-weight:400 800;font-display:swap;src:url('/assets/fonts/inter-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-weight:400 800;font-display:swap;src:url('/assets/fonts/inter-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Inter Fallback';src:local('Arial');size-adjust:107.4%;ascent-override:90.2%;descent-override:22.5%;line-gap-override:0%}

:root{
  --green:#15803d;
  --green-d:#166534;
  --green-l:#f0fdf4;
  --green-m:#dcfce7;
  --ink:#0f172a;
  --ink-2:#1e293b;
  --muted:#64748b;
  --muted-l:#64748b;
  --line:#e2e8f0;
  --line-l:#f1f5f9;
  --bg:#ffffff;
  --surface:#f8fafc;
  --max:1180px;
  --shadow-sm:0 1px 3px rgba(0,0,0,.08),0 1px 2px rgba(0,0,0,.06);
  --shadow:0 4px 16px rgba(0,0,0,.08),0 2px 6px rgba(0,0,0,.06);
  --shadow-lg:0 10px 40px rgba(0,0,0,.10),0 4px 12px rgba(0,0,0,.06);
  --radius:14px;
  --radius-sm:10px;
  --transition:.18s ease;
}

*{box-sizing:border-box;-webkit-font-smoothing:antialiased}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;font-family:'Inter','Inter Fallback',system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;color:var(--ink);background:var(--bg);line-height:1.65;font-size:16px}
a{color:var(--green);text-decoration:none;transition:color var(--transition)}
a:hover{color:var(--green-d);text-decoration:none}
img{max-width:100%;height:auto;display:block}
.skip{position:absolute;left:-9999px;top:0;background:var(--green);color:#fff;padding:10px 16px;border-radius:0 0 8px 0;z-index:200}
.skip:focus{left:0}

/* ── HEADER ── */
.site-hd{
  border-bottom:1px solid var(--line);
  position:sticky;top:0;
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  z-index:50;
  box-shadow:0 1px 0 var(--line),0 2px 12px rgba(0,0,0,.04);
}
.site-hd .bar{max-width:var(--max);margin:0 auto;padding:0 20px;display:flex;align-items:center;gap:20px;height:60px}
.logo{font-weight:800;font-size:1.22rem;color:var(--ink);letter-spacing:-.3px}
.logo b{color:var(--green)}
.logo:hover{text-decoration:none;opacity:.85}

/* nav */
.nav>ul{list-style:none;display:flex;gap:2px;margin:0;padding:0}
.nav>ul>li{position:relative}
.nav>ul>li>a{display:flex;align-items:center;gap:4px;padding:8px 11px;color:var(--ink-2);font-weight:600;font-size:.9rem;border-radius:8px;transition:background var(--transition),color var(--transition)}
.nav>ul>li>a:hover{background:var(--green-l);color:var(--green);text-decoration:none}
.nav .caret{font-size:.65em;color:var(--muted-l);transition:transform var(--transition)}
.nav .has-children:hover .caret{transform:rotate(180deg)}
.nav .sub{
  display:none;position:absolute;top:calc(100% + 6px);left:0;
  min-width:480px;background:#fff;
  border:1px solid var(--line);border-radius:var(--radius);
  box-shadow:var(--shadow-lg);
  list-style:none;margin:0;padding:10px;
  columns:2;column-gap:8px;
}
.nav .has-children:hover .sub,.nav .has-children:focus-within .sub{display:block}
.nav>ul>li>a:focus-visible,.search input:focus-visible,.nav .sub a:focus-visible{outline:2px solid var(--green);outline-offset:2px}
.nav .sub li{break-inside:avoid}
.nav .sub a{display:block;padding:9px 11px;border-radius:8px;color:var(--ink-2);font-size:.88rem;font-weight:500;transition:background var(--transition),color var(--transition)}
.nav .sub a:hover{background:var(--green-l);color:var(--green);text-decoration:none}

/* ── LAYOUT ── */
.wrap{max-width:var(--max);margin:32px auto 64px;padding:0 20px}
.wrap.has-side{display:flex;gap:36px;align-items:flex-start}
.col-main{flex:1 1 auto;min-width:0}
.col-main h1{font-size:2.1rem;line-height:1.18;margin:.1em 0 .5em;font-weight:800;letter-spacing:-.5px;color:var(--ink)}
.entry h2{margin:1.8em 0 .6em;font-size:1.42rem;font-weight:700;letter-spacing:-.2px;color:var(--ink)}
.entry h3{margin:1.4em 0 .4em;font-size:1.1rem;font-weight:700;color:var(--ink-2)}
.entry p,.entry ul,.entry ol{margin:0 0 1.1em}
.entry ul li,.entry ol li{margin-bottom:.35em}
.entry a:not([class]){font-weight:600;color:var(--green);border-bottom:1.5px solid transparent;transition:border-color var(--transition)}
.entry a:not([class]):hover{border-color:var(--green)}
.entry table{width:100%;border-collapse:collapse;margin:1.4em 0;font-size:.93rem}
.entry table th{background:var(--surface);font-weight:700;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);padding:10px 14px;border-bottom:2px solid var(--line);text-align:left}
.entry table td{padding:10px 14px;border-bottom:1px solid var(--line)}
.entry table tr:hover td{background:var(--green-l)}
.col-side{flex:0 0 288px;width:288px;position:sticky;top:72px}

/* ── SIDEBAR ── */
.side-box{border:1px solid var(--line);border-radius:var(--radius);padding:18px;margin-bottom:14px;background:#fff;box-shadow:var(--shadow-sm)}
.side-box .h{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--green);margin:0 0 12px}
.side-box a{display:block;color:var(--ink-2);font-size:.87rem;font-weight:500;padding:9px 0;border-top:1px solid var(--line);transition:color var(--transition)}
.side-box a:first-of-type{border-top:none}
.side-box a:hover{color:var(--green);text-decoration:none}
.side-box a::before{content:"→ ";color:var(--green);font-weight:700}
.side-cta{background:linear-gradient(135deg,var(--green),var(--green-d));border-radius:var(--radius);padding:20px;text-align:center;color:#fff;box-shadow:0 4px 20px rgba(22,163,74,.25)}
.side-cta strong{display:block;margin-bottom:4px;font-size:1rem}
.side-cta span{display:block;font-size:.83rem;color:rgba(255,255,255,.8);margin-bottom:14px}
.side-cta a{display:inline-block;background:#fff;color:var(--green);border-radius:8px;padding:9px 18px;font-weight:700;font-size:.9rem;transition:transform var(--transition),box-shadow var(--transition)}
.side-cta a:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.15);text-decoration:none}

/* ── HOME ── */
.hero{
  background:linear-gradient(135deg,#064e2a 0%,#0e3a24 50%,#0e1117 100%);
  color:#fff;border-radius:20px;padding:52px 40px;margin-bottom:32px;
  position:relative;overflow:hidden;
  box-shadow:0 8px 40px rgba(6,78,42,.30);
}
.hero::before{
  content:'';position:absolute;top:-60px;right:-60px;
  width:300px;height:300px;
  background:radial-gradient(circle,rgba(34,197,94,.18) 0%,transparent 70%);
  pointer-events:none;
}
.hero-inner{display:flex;align-items:center;gap:32px}
.hero-text{flex:1 1 auto;min-width:0}
.hero-chart{flex:0 0 280px;width:280px;opacity:.9}
.hero-chart svg{width:100%;height:auto;display:block}
@keyframes hcPulse{0%,100%{opacity:1;r:10}50%{opacity:.4;r:14}}
.hc-ring{animation:hcPulse 2.4s ease-in-out infinite}
.hero h1{margin:0 0 12px;font-size:2.4rem;font-weight:800;letter-spacing:-.5px;line-height:1.15;color:#fff}
.hero p{color:rgba(255,255,255,.92);max-width:560px;margin:0 0 24px;font-size:1.05rem;font-weight:500}
.hero .btns{display:flex;flex-wrap:wrap;gap:10px}
.hero .btns a{
  display:inline-flex;align-items:center;gap:6px;
  background:var(--green);color:#fff;
  border-radius:10px;padding:12px 22px;font-weight:700;font-size:.95rem;
  transition:background var(--transition),transform var(--transition),box-shadow var(--transition);
  box-shadow:0 2px 12px rgba(22,163,74,.35);
}
.hero .btns a:hover{background:#22c55e;transform:translateY(-2px);box-shadow:0 6px 20px rgba(22,163,74,.45);text-decoration:none;color:#fff}
.hero .btns a.secondary{background:rgba(255,255,255,.10);box-shadow:none;border:1.5px solid rgba(255,255,255,.3);color:rgba(255,255,255,.9)}
.hero .btns a.secondary:hover{background:rgba(255,255,255,.18);color:#fff}
.hero-stats{display:flex;gap:0;margin-top:28px;border-top:1px solid rgba(255,255,255,.12);padding-top:20px;flex-wrap:wrap}
.hs{flex:1 1 auto;padding:0 20px 0 0;border-right:1px solid rgba(255,255,255,.12)}
.hs:last-child{border-right:none}
.hs strong{display:block;font-size:1.6rem;font-weight:800;color:#4ade80;line-height:1}
.hs span{font-size:.78rem;color:rgba(255,255,255,.6);font-weight:500;margin-top:2px;display:block}

/* ── CARDS ── */
.cards{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
.card{
  border:1px solid var(--line);border-radius:var(--radius);padding:20px;
  background:#fff;
  transition:border-color var(--transition),box-shadow var(--transition),transform var(--transition);
  box-shadow:var(--shadow-sm);
  display:flex;flex-direction:column;gap:6px;
}
.card:hover{border-color:var(--green);box-shadow:var(--shadow);transform:translateY(-3px);text-decoration:none}
.card h3{margin:0;font-size:1rem;font-weight:700;color:var(--ink);line-height:1.35}
.card h3 .ci{display:inline-block;margin-right:4px;font-size:1.15em;line-height:1}
.card p{margin:0;color:var(--muted);font-size:.86rem;line-height:1.5}
.card .card-arrow{margin-top:auto;font-size:.8rem;color:var(--green);font-weight:700;padding-top:8px;border-top:1px solid var(--line-l)}

/* ── POST LIST (pagine interne) ── */
.postlist{list-style:none;padding:0}
.postlist li{padding:14px 0;border-bottom:1px solid var(--line)}
.postlist li:last-child{border-bottom:none}
.postlist a{font-weight:600;font-size:1.02rem;color:var(--ink);transition:color var(--transition)}
.postlist a:hover{color:var(--green)}
.postlist .cat{font-size:.7rem;text-transform:uppercase;letter-spacing:.5px;color:var(--green);font-weight:700;display:inline-block;margin-bottom:3px}

/* ── ARTICLE CARDS (home) ── */
.art-cards{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
.art-card{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fff;box-shadow:var(--shadow-sm);transition:transform var(--transition),box-shadow var(--transition);display:flex;flex-direction:column}
.art-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);text-decoration:none}
.art-card-hd{height:170px;position:relative;overflow:hidden;background:#e2e8f0}
.art-card-hd img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}
.art-card:hover .art-card-hd img{transform:scale(1.05)}
.art-card-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.55) 0%,transparent 60%);display:flex;align-items:flex-end;padding:10px 14px}
.art-cat{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:rgba(255,255,255,.95);background:rgba(0,0,0,.30);border-radius:999px;padding:3px 9px;backdrop-filter:blur(4px)}
.art-card-body{padding:14px 16px 16px;flex:1;display:flex;flex-direction:column;gap:6px}
.art-title{margin:0;font-size:.93rem;font-weight:700;color:var(--ink);line-height:1.42;flex:1}
.art-date{font-size:.74rem;color:var(--muted-l);font-weight:500}
/* Colori per categoria */
.ac-azioni-etf{background:linear-gradient(135deg,#1e40af,#3b82f6)}
.ac-criptovalute{background:linear-gradient(135deg,#6d28d9,#a78bfa)}
.ac-investire{background:linear-gradient(135deg,#15803d,#4ade80)}
.ac-trading{background:linear-gradient(135deg,#c2410c,#fb923c)}
.ac-immobiliare{background:linear-gradient(135deg,#92400e,#fbbf24)}
.ac-risparmio-conti{background:linear-gradient(135deg,#0e7490,#67e8f9)}
.ac-rendite-passive{background:linear-gradient(135deg,#3730a3,#818cf8)}
.ac-p2p-lending{background:linear-gradient(135deg,#b45309,#fcd34d)}
.ac-forex{background:linear-gradient(135deg,#0f766e,#5eead4)}
.ac-affiliazioni{background:linear-gradient(135deg,#166534,#86efac)}
.ac-lavorare-online{background:linear-gradient(135deg,#be123c,#fb7185)}
.ac-guadagnare-con-i-social{background:linear-gradient(135deg,#9d174d,#f9a8d4)}
.ac-scommesse-articoli{background:linear-gradient(135deg,#7f1d1d,#f87171)}

/* ── SEARCH ── */
.search{position:relative;margin-left:auto}
.search input{
  width:210px;padding:8px 14px 8px 36px;
  border:1.5px solid var(--line);border-radius:999px;
  font-size:.88rem;outline:none;background:var(--surface);
  transition:border-color var(--transition),box-shadow var(--transition),width var(--transition);
  font-family:inherit;
}
.search input:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(22,163,74,.12);width:250px;background:#fff}
.search::before{content:'🔍';position:absolute;left:12px;top:50%;transform:translateY(-50%);font-size:.8rem;pointer-events:none}
.search-res{display:none;position:absolute;top:calc(100% + 8px);right:0;width:360px;max-width:90vw;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:8px;z-index:60;max-height:70vh;overflow:auto}
.search-res a{display:block;padding:10px 12px;border-radius:8px;color:var(--ink-2);font-size:.9rem;font-weight:500;transition:background var(--transition)}
.search-res a:hover{background:var(--green-l);text-decoration:none}
.search-res .nor{display:block;padding:12px;color:var(--muted);font-size:.88rem;text-align:center}

/* ── CTA AFFILIAZIONE ── */
.ifs-aff-btn-wrap{display:block;margin:20px 0}
.ifs-aff-btn{
  display:inline-flex;align-items:center;gap:8px;
  background:linear-gradient(135deg,var(--green),var(--green-d));
  color:#fff;padding:13px 26px;border-radius:10px;
  text-decoration:none;font-weight:700;font-size:.95rem;
  box-shadow:0 2px 12px rgba(22,163,74,.30);
  transition:transform var(--transition),box-shadow var(--transition);
}
.ifs-aff-btn:hover{transform:translateY(-2px);box-shadow:0 6px 24px rgba(22,163,74,.40);text-decoration:none;color:#fff}

/* ── BREADCRUMB + META ── */
.crumbs{font-size:.8rem;color:var(--muted);margin:0 0 10px;display:flex;align-items:center;flex-wrap:wrap;gap:2px}
.crumbs a{color:var(--muted);transition:color var(--transition)}
.crumbs a:hover{color:var(--green)}
.crumbs .sep{color:var(--line);margin:0 3px}
.crumbs .cur{color:var(--ink-2);font-weight:500}
.meta-line{font-size:.8rem;color:var(--muted);margin:-4px 0 20px;display:flex;align-items:center;gap:12px;padding-bottom:16px;border-bottom:1px solid var(--line)}

/* ── LEGGI ANCHE ── */
.leggi-anche{margin:40px 0 0;padding-top:24px;border-top:2px solid var(--green-m)}
.leggi-anche h2{margin:0 0 16px;font-size:1.25rem;font-weight:700;color:var(--ink)}
.la-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
.la-grid a{display:block;border:1.5px solid var(--line);border-radius:var(--radius-sm);padding:14px 16px;color:var(--ink-2);font-weight:600;font-size:.92rem;transition:border-color var(--transition),color var(--transition),background var(--transition),transform var(--transition)}
.la-grid a:hover{border-color:var(--green);color:var(--green);background:var(--green-l);transform:translateY(-1px);text-decoration:none}

/* ── STRUMENTI CORRELATI ── */
.tools-box{margin:40px 0 0;padding-top:24px;border-top:2px solid var(--green-m)}
.tools-box h2{margin:0 0 16px;font-size:1.25rem;font-weight:700}
.tools-rel-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.tool-rel{display:flex;align-items:center;gap:12px;border:1.5px solid var(--line);border-radius:var(--radius-sm);padding:13px 15px;color:var(--ink-2);font-weight:600;font-size:.9rem;background:#fff;transition:border-color var(--transition),color var(--transition),box-shadow var(--transition),transform var(--transition)}
.tool-rel:hover{border-color:var(--green);color:var(--green);box-shadow:var(--shadow);transform:translateY(-2px);text-decoration:none}
.tool-rel .tr-ic{font-size:1.4rem;line-height:1;flex-shrink:0}

/* ── REVIEW QUICK COMPARE BOX ── */
.rqc-box{background:#0e1117;border:1px solid #222836;border-radius:12px;padding:20px 24px;margin:0 0 28px}
.rqc-head{display:flex;align-items:center;gap:12px;margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid #1f2937}
.rqc-head .broker-logo{border-radius:10px;width:48px;height:48px;background:#fff}
.rqc-label{font-size:.72rem;color:#6b7280;font-weight:700;text-transform:uppercase;letter-spacing:.05em}
.rqc-table{width:100%;border-collapse:collapse;font-size:.875rem}
.rqc-k{padding:8px 12px 8px 0;color:#9aa4b2;white-space:nowrap;width:42%;border-bottom:1px solid #1f2937;vertical-align:top}
.rqc-v{padding:8px 0;color:#f0f4f8;font-weight:600;border-bottom:1px solid #1f2937}
.rqc-table tr:last-child .rqc-k,.rqc-table tr:last-child .rqc-v{border-bottom:none}

/* ── TRADINGVIEW TICKER ── */
.ifs-tvlazy{border-radius:10px;overflow:hidden;box-shadow:var(--shadow)}

/* ── CATEGORIA INTRO + RICH ── */
.cat-intro{font-size:1.06rem;color:var(--muted);margin:0 0 20px;max-width:720px;line-height:1.7}
.cat-rich{background:var(--surface);border:1.5px solid var(--line);border-radius:var(--radius);padding:18px 22px;margin:0 0 28px}
.cat-rich-h{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--green);margin:0 0 12px}
.cat-rich ul{list-style:none;padding:0;margin:0}
.cat-rich li{border-top:1px solid var(--line);padding:8px 0}
.cat-rich li:first-child{border-top:none}
.cat-rich a{color:var(--ink-2);font-size:.9rem;font-weight:600;text-decoration:none;transition:color var(--transition)}
.cat-rich a:hover{color:var(--green)}

/* ── TOC ── */
.toc{background:var(--green-l);border:1.5px solid var(--green-m);border-radius:var(--radius);padding:18px 20px;margin:0 0 24px}
.toc-h{margin:0 0 10px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--green)}
.toc ul{margin:0;padding-left:16px}
.toc li{margin:5px 0}
.toc a{font-size:.91rem;color:var(--ink-2);font-weight:500;transition:color var(--transition)}
.toc a:hover{color:var(--green)}

/* ── NEWSLETTER SIDEBAR ── */
.side-nl{background:linear-gradient(135deg,#064e2a,#0e1117);border-radius:var(--radius);padding:20px;margin-bottom:14px;color:#fff;box-shadow:0 4px 20px rgba(6,78,42,.25)}
.side-nl .h{color:rgba(255,255,255,.9);margin-bottom:6px}
.side-nl .nl-sub{font-size:.83rem;color:rgba(255,255,255,.65);margin:0 0 14px}
.side-nl input{width:100%;padding:10px 14px;border:none;border-radius:8px;margin-bottom:8px;font-size:.9rem;font-family:inherit;outline:none}
.side-nl input:focus{box-shadow:0 0 0 3px rgba(34,197,94,.4)}
.side-nl button{width:100%;background:var(--green);color:#fff;border:none;border-radius:8px;padding:11px;font-weight:700;cursor:pointer;font-size:.9rem;font-family:inherit;transition:background var(--transition),transform var(--transition)}
.side-nl button:hover{background:#22c55e;transform:translateY(-1px)}

/* ── GLOSSARIO ── */
.entry a.gloss{color:var(--ink-2);text-decoration:underline;text-decoration-style:dotted;text-decoration-color:var(--green);text-underline-offset:3px}
.entry a.gloss:hover{color:var(--green);text-decoration-style:solid}

/* ── TABELLA COMPARATIVA ── */
.cmp{margin:32px 0}
.cmp-h{margin:0 0 14px;font-size:1.2rem;font-weight:800;letter-spacing:-.3px;color:var(--ink)}
.cmp-list{border:1.5px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.cmp-row{display:flex;align-items:center;gap:14px;padding:14px 18px;border-bottom:1px solid var(--line);background:#fff;transition:background var(--transition)}
.cmp-row:last-child{border-bottom:none}
.cmp-row:hover{background:var(--green-l)}
.cmp-top{border-left:3px solid var(--green)}
.cmp-brand{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:10px}
.broker-logo{border-radius:8px;object-fit:contain;flex-shrink:0;background:#f8fafc;border:1px solid var(--line)}
.cmp-brand-text{display:flex;flex-direction:column;min-width:0}
.cmp-medal{font-size:1rem;flex-shrink:0}
.cmp-brand strong{display:block;font-size:.97rem;font-weight:700;color:var(--ink);white-space:nowrap}
.cmp-brand .cmp-type{font-size:.75rem;color:var(--muted);font-weight:500;white-space:nowrap}
.cmp-forte{font-size:.76rem;color:var(--green);background:var(--green-l);border:1px solid var(--green-m);border-radius:999px;padding:3px 10px;font-weight:600;white-space:nowrap;flex-shrink:0}
.cmp-score{text-align:center;flex-shrink:0;min-width:52px}
.cmp-num{font-size:1.15rem;font-weight:800;color:var(--green)}
.cmp-den{font-size:.72rem;color:var(--muted);font-weight:500}
.cmp-stars{font-size:.7rem;color:#f59e0b;letter-spacing:1px}
.cmp-cta,a.cmp-cta,.cmp-list a{color:#fff;border-bottom:none;display:inline-block;background:#15803d;border-radius:8px;padding:8px 16px;font-weight:700;font-size:.82rem;white-space:nowrap;flex-shrink:0;letter-spacing:.01em;transition:transform var(--transition),background var(--transition),box-shadow var(--transition)}
.cmp-cta:hover,a.cmp-cta:hover,.cmp-list a:hover{background:#166534;transform:translateY(-1px);box-shadow:0 4px 12px rgba(22,163,74,.30);text-decoration:none;color:#fff;border-bottom:none}

/* ── CERCA ── */
.cerca-form{margin-bottom:24px}
.cerca-form input{width:100%;max-width:520px;padding:13px 18px;border:1.5px solid var(--line);border-radius:999px;font-size:1rem;outline:none;font-family:inherit;transition:border-color var(--transition),box-shadow var(--transition)}
.cerca-form input:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(22,163,74,.12)}

/* ── FOOTER ── */
.site-ft{border-top:1px solid var(--line);margin-top:60px;background:#0c1220;color:#94a3b8}
.site-ft .bar{max-width:var(--max);margin:0 auto;padding:32px 20px;font-size:.84rem;display:grid;gap:8px}
.site-ft a{color:#cbd5e1;transition:color var(--transition)}
.site-ft a:hover{color:#fff}
.site-ft .cw{color:#94a3b8;margin:0}

/* ── SIDEBAR: CALCOLATORI CORRELATI ── */
.side-calc-list{list-style:none;padding:0;margin:0}
.side-calc-item{display:flex;align-items:center;gap:10px;padding:8px 0;border-top:1px solid var(--line)}
.side-calc-item:first-child{border-top:none}
.sc-ic{font-size:1.2rem;flex-shrink:0;line-height:1;display:flex;align-items:center;justify-content:center;width:30px;height:30px;background:var(--green-l);border-radius:8px}
.side-calc-item a{color:var(--ink-2);font-size:.86rem;font-weight:600;flex:1;transition:color var(--transition);text-decoration:none}
.side-calc-item a:hover{color:var(--green)}

/* ── SIDEBAR: SEPARATORI ── */
.side-sep{border:none;height:1px;background:var(--line-l);margin:4px 0 12px}

/* ── SIDEBAR: NEWSLETTER PREMIUM ── */
.side-nl .nl-badge{display:inline-block;background:rgba(74,222,128,.18);border:1px solid rgba(74,222,128,.35);border-radius:999px;padding:2px 12px;font-size:.72rem;font-weight:700;color:#4ade80;letter-spacing:.3px;margin-bottom:10px}
.side-nl .nl-headline{display:block;font-size:1rem;font-weight:700;color:#fff;margin-bottom:4px}
.side-nl .nl-sub{font-size:.82rem;color:rgba(255,255,255,.6);margin:0 0 14px;line-height:1.5}

/* ── CTA BOX AFFILIAZIONE RECENSIONI ── */
.ifs-cta-box{background:var(--green-l);border:1.5px solid var(--green-m);border-radius:var(--radius);padding:20px 24px;margin:24px 0}
.ifs-cta-box .ifs-cta-label{display:block;font-size:.92rem;font-weight:700;color:var(--ink);margin-bottom:12px}
.ifs-broker-rating{display:flex;align-items:center;gap:8px;margin-bottom:12px}
.ifs-broker-name{font-size:.88rem;font-weight:700;color:var(--ink-2)}
.ifs-broker-stars{color:#b45309;font-size:.88rem;letter-spacing:1px;line-height:1}
.ifs-broker-score{font-size:.8rem;font-weight:600;color:var(--muted)}
.ifs-cta-box .ifs-aff-btn-wrap{display:block;margin:0}
.ifs-cta-box .ifs-aff-btn{width:100%;justify-content:center}

/* ── META LINE: badge categoria + icone ── */
.meta-cat-badge{display:inline-flex;align-items:center;background:var(--green-l);color:var(--green);border:1px solid var(--green-m);border-radius:999px;padding:3px 12px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.4px;text-decoration:none;transition:background var(--transition),color var(--transition)}
.meta-cat-badge:hover{background:var(--green-m);color:var(--green-d);text-decoration:none}
.meta-info{display:inline-flex;align-items:center;gap:4px;color:var(--muted);font-size:.8rem}
.meta-info a{color:var(--muted);transition:color var(--transition)}
.meta-info a:hover{color:var(--green)}

/* ── CATEGORY HERO ── */
.cat-hero{background:linear-gradient(135deg,#064e2a 0%,#0e3a24 60%,#0e1117 100%);border-radius:var(--radius);padding:28px 32px;margin-bottom:24px;color:#fff;position:relative;overflow:hidden;min-height:120px;display:flex;flex-direction:column;justify-content:center;box-shadow:0 6px 30px rgba(6,78,42,.25)}
.cat-hero::before{content:'';position:absolute;top:-50px;right:-50px;width:200px;height:200px;background:radial-gradient(circle,rgba(34,197,94,.15) 0%,transparent 70%);pointer-events:none}
.cat-hero h1{margin:0 0 8px;font-size:1.85rem;font-weight:800;letter-spacing:-.4px;color:#fff;line-height:1.15;position:relative}
.cat-hero-meta{display:flex;align-items:center;gap:14px;position:relative}
.cat-hero-count{font-size:.84rem;color:rgba(255,255,255,.65);font-weight:500;display:inline-flex;align-items:center;gap:5px}
.cat-hero-count strong{color:#4ade80;font-weight:700;font-size:.95rem}
@media(max-width:600px){.cat-hero{padding:22px 20px}.cat-hero h1{font-size:1.5rem}}

/* ── RESPONSIVE ── */
@media(max-width:960px){
  .site-hd .bar{gap:12px;height:56px;padding:0 16px}
  .nav>ul{flex-wrap:wrap;gap:1px}
  .nav .sub{position:static;min-width:0;columns:1;box-shadow:none;border:none;padding:0 0 4px 12px;border-radius:0}
  .nav .has-children:hover .sub{display:block}
  .wrap.has-side{flex-direction:column}
  .col-side{position:static;width:100%;flex-basis:auto}
  .hero{padding:36px 28px}
  .hero h1{font-size:1.9rem}
  .hero-chart{flex:0 0 200px;width:200px}
}
@media(max-width:700px){
  .hero-chart{display:none}
  .hero-stats{gap:0}
  .hs{padding:0 14px 0 0}
  .hs strong{font-size:1.3rem}
}
@media(max-width:600px){
  .col-main h1{font-size:1.7rem}
  .hero h1{font-size:1.55rem}
  .hero{padding:28px 20px;border-radius:14px}
  .cards{grid-template-columns:1fr}
  .wrap{padding:0 14px;margin:20px auto 48px}
  .hero-stats{flex-wrap:wrap;gap:12px}
  .hs{border-right:none;padding-right:0;flex:0 0 calc(50% - 6px)}
}

/* ── FONTI UFFICIALI (E-E-A-T) ── */
.fonti-box{background:#f0fdf4;border:1.5px solid #bbf7d0;border-radius:10px;padding:18px 22px;margin:32px 0 0;font-size:.88rem}
.fonti-box .fonti-title{font-weight:700;color:#15803d;margin:0 0 10px;font-size:.92rem}
.fonti-box ul{margin:0 0 10px;padding-left:18px}
.fonti-box li{margin-bottom:5px;color:var(--ink-2,#374151)}
.fonti-box a{color:var(--green,#16a34a);text-decoration:none;font-weight:600}
.fonti-box a:hover{text-decoration:underline}
.fonti-nota{margin:8px 0 0;color:#6b7280;font-size:.8rem;font-style:italic}

/* ── FIX MOBILE: tabelle larghe scorrono nel box, ricerca più stretta ── */
.fee-table-box{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}
@media(max-width:600px){
  .search input{width:120px}
  .search input:focus{width:150px}
  .fee-table-box table{min-width:520px}
}
.col-main{min-width:0}
@media(max-width:960px){.wrap.has-side{align-items:stretch}.col-main{width:100%}}
@media(max-width:600px){.entry table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.entry .fee-table-box table{display:table}}

/* Calcolatore semplice (:where(.ifs-calc,.ifs-pe,.ifs-ec,.ifs-im,.ifs-tx)) — prima senza stile */
:where(.ifs-calc,.ifs-pe,.ifs-ec,.ifs-im,.ifs-tx){background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:22px;margin:18px 0;box-shadow:var(--shadow-sm)}
:where(.ifs-calc,.ifs-pe,.ifs-ec,.ifs-im,.ifs-tx) .calc-title,:where(.ifs-calc,.ifs-pe,.ifs-ec,.ifs-im,.ifs-tx)>h2,:where(.ifs-calc,.ifs-pe,.ifs-ec,.ifs-im,.ifs-tx)>h3{margin:0 0 4px;font-size:1.15rem;color:var(--ink)}
:where(.ifs-calc,.ifs-pe,.ifs-ec,.ifs-im,.ifs-tx) .sub{color:var(--muted);margin:0 0 16px;font-size:.92rem}
:where(.ifs-calc,.ifs-pe,.ifs-ec,.ifs-im,.ifs-tx) .row{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px 16px;margin-bottom:16px}
:where(.ifs-calc,.ifs-pe,.ifs-ec,.ifs-im,.ifs-tx) label{display:block;font-size:.82rem;font-weight:600;color:var(--ink-2);margin-bottom:5px}
:where(.ifs-calc,.ifs-pe,.ifs-ec,.ifs-im,.ifs-tx) input,:where(.ifs-calc,.ifs-pe,.ifs-ec,.ifs-im,.ifs-tx) select{width:100%;padding:10px 12px;font:inherit;font-size:.97rem;color:var(--ink);background:#fff;border:1.5px solid var(--line);border-radius:var(--radius-sm);transition:border-color var(--transition),box-shadow var(--transition)}
:where(.ifs-calc,.ifs-pe,.ifs-ec,.ifs-im,.ifs-tx) input:focus,:where(.ifs-calc,.ifs-pe,.ifs-ec,.ifs-im,.ifs-tx) select:focus{outline:none;border-color:var(--green);box-shadow:0 0 0 3px var(--green-m)}
:where(.ifs-calc,.ifs-pe,.ifs-ec,.ifs-im,.ifs-tx) .btn,:where(.ifs-calc,.ifs-pe,.ifs-ec,.ifs-im,.ifs-tx) button{background:var(--green);color:#fff;border:0;border-radius:var(--radius-sm);padding:11px 22px;font:inherit;font-weight:700;cursor:pointer;transition:background var(--transition)}
:where(.ifs-calc,.ifs-pe,.ifs-ec,.ifs-im,.ifs-tx) .btn:hover,:where(.ifs-calc,.ifs-pe,.ifs-ec,.ifs-im,.ifs-tx) button:hover{background:var(--green-d)}
:where(.ifs-calc,.ifs-pe,.ifs-ec,.ifs-im,.ifs-tx) .out{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-top:18px}
:where(.ifs-calc,.ifs-pe,.ifs-ec,.ifs-im,.ifs-tx) .out .c{background:#fff;border:1px solid var(--line);border-radius:var(--radius-sm);padding:14px}
:where(.ifs-calc,.ifs-pe,.ifs-ec,.ifs-im,.ifs-tx) .out .k{font-size:.78rem;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}
:where(.ifs-calc,.ifs-pe,.ifs-ec,.ifs-im,.ifs-tx) .out .v{font-size:1.4rem;font-weight:800;color:var(--ink);margin-top:2px}
:where(.ifs-calc,.ifs-pe,.ifs-ec,.ifs-im,.ifs-tx) .out .v.neg{color:#b91c1c}
:where(.ifs-calc,.ifs-pe,.ifs-ec,.ifs-im,.ifs-tx) .out .v.pos{color:var(--green-d)}
:where(.ifs-calc,.ifs-pe,.ifs-ec,.ifs-im,.ifs-tx) .nota{font-size:.8rem;color:var(--muted);margin:14px 0 0}
input[aria-invalid="true"]{border-color:#dc2626!important;box-shadow:0 0 0 3px #fee2e2!important}
.ifs-err{color:#b91c1c;font-size:.88rem;font-weight:600;margin:12px 0 0}
.ifs-err:empty{display:none}

/* Avviso di rischio (CFD) */
.risk-warning{background:#fef2f2;border:1px solid #fecaca;border-left:4px solid #dc2626;color:#7f1d1d;border-radius:var(--radius-sm);padding:12px 16px;margin:16px 0;font-size:.92rem;line-height:1.55}

/* Menu a scomparsa (hamburger) sotto 960px */
.nav-toggle{display:none}
@media(max-width:960px){
  .site-hd .bar{height:auto;min-height:56px;flex-wrap:wrap;padding-top:8px;padding-bottom:8px}
  .nav-toggle{display:inline-flex;flex-direction:column;justify-content:center;gap:4px;width:42px;height:42px;padding:0 10px;margin-left:auto;order:2;background:#fff;border:1.5px solid var(--line);border-radius:var(--radius-sm);cursor:pointer}
  .nav-toggle span{display:block;height:2px;background:var(--ink);border-radius:2px;transition:transform var(--transition),opacity var(--transition)}
  .site-hd.nav-open .nav-toggle span:nth-child(1){transform:translateY(6px) rotate(45deg)}
  .site-hd.nav-open .nav-toggle span:nth-child(2){opacity:0}
  .site-hd.nav-open .nav-toggle span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
  .site-hd .search{order:2}
  .site-hd .nav{display:none;order:3;flex:0 0 100%;width:100%;max-height:calc(100vh - 80px);overflow-y:auto}
  .site-hd.nav-open .nav{display:block}
  .nav>ul{flex-direction:column;flex-wrap:nowrap}
  .site-hd.nav-open .nav .sub{display:block}
}
.cmp-note{font-size:.82rem;color:var(--muted);margin:-4px 0 12px}
.stale-note{background:#fffbeb;border-color:#fde68a;border-left-color:#d97706;color:#78350f}

/* /news/ — widget notizie (prima CSS inline dentro il contenuto) */
.ifs-news{max-width:760px;margin:22px auto;padding:0 12px;box-sizing:border-box}
.ifs-news h2{font-size:1.4rem;margin:0 0 10px}
.ifs-news .nota{font-size:.78rem;color:var(--muted);margin-top:10px}
.review-extras{margin:28px 0 0;padding:16px 20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm)}
.review-extras h2{font-size:1.05rem;margin:0 0 8px}
.review-extras ul{margin:0;padding-left:18px}
.adv-note{font-size:.85rem;color:var(--muted);margin:8px 0 12px}
.tool-links{margin:24px 0 0;padding:14px 18px;background:var(--green-l);border:1px solid var(--green-m);border-radius:var(--radius-sm)}
.tool-links h2{font-size:1rem;margin:0 0 6px}
.tool-links ul{margin:0;padding-left:18px}

/* Accessibilità e form */
.skip-link{position:absolute;left:-9999px;top:0;background:var(--green-d);color:#fff;padding:10px 16px;z-index:200;border-radius:0 0 var(--radius-sm) 0;font-weight:600}
.skip-link:focus{left:0;color:#fff}
.nl-priv{font-size:.75rem;color:var(--muted);margin:6px 0 0;line-height:1.4}
.nl-priv a{text-decoration:underline}

.nl-ok{margin:0;padding:6px 0;font-weight:600;line-height:1.5;font-size:.92rem}

/* footer a colonne */
.site-ft .ft-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:28px;padding-bottom:22px;border-bottom:1px solid #1e293b;margin-bottom:6px}
.site-ft .ft-h{margin:0 0 10px;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#e2e8f0}
.site-ft .ft-col ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.site-ft .ft-nl-sub{margin:0 0 10px;font-size:.82rem;line-height:1.5}
.site-ft .ft-nl input{width:100%;padding:9px 12px;border:1px solid #334155;border-radius:8px;background:#0f172a;color:#fff;font-size:.88rem;font-family:inherit;margin-bottom:8px;box-sizing:border-box}
.site-ft .ft-nl button{width:100%;background:var(--green);color:#fff;border:none;border-radius:8px;padding:9px;font-weight:700;font-size:.88rem;cursor:pointer;font-family:inherit}
.site-ft .ft-nl button:hover{background:#22c55e}
.site-ft .nl-priv{margin:8px 0 0;font-size:.74rem;color:#64748b}
.site-ft .ft-nl .nl-ok{color:#4ade80}
.site-ft .ft-co,.site-ft .ft-legal{margin:0}
@media(max-width:900px){.site-ft .ft-grid{grid-template-columns:repeat(2,1fr)}.site-ft .ft-nl{grid-column:1/-1}}
@media(max-width:480px){.site-ft .ft-grid{grid-template-columns:1fr 1fr;gap:22px 16px}}

@media(max-width:700px){.entry.ifs-lift{visibility:hidden;animation:ifsShow 0s linear 2.5s forwards}}
@keyframes ifsShow{to{visibility:visible}}

.risposta-diretta{border-left:4px solid var(--green,#16a34a);background:rgba(22,163,74,.07);padding:12px 16px;margin:0 0 20px;border-radius:0 8px 8px 0}.risposta-diretta p{margin:0}.risposta-diretta .rd-q{margin-bottom:4px}

/* Fonti e riferimenti: rimandi numerati nel testo, elenco piccolo in fondo */
sup.rif{font-size:.68em;line-height:0;margin-left:1px}
.entry a.rif-a{font-weight:500;color:var(--ink-2,#6b7280);text-decoration:none;border:0;padding:0 1px}
.entry a.rif-a:hover{color:var(--green)}
.fonti-ref{margin:28px 0 0;padding-top:12px;border-top:1px solid #e5e7eb;font-size:.78rem;color:#6b7280;line-height:1.5}
.fonti-ref-t{margin:0 0 6px;font-weight:600;font-size:.8rem;color:#6b7280}
.fonti-ref ol{margin:0;padding-left:20px}
.fonti-ref li{margin-bottom:3px}
.entry .fonti-ref a{font-weight:500;color:#6b7280;border-bottom:1px dotted #9ca3af}
.entry .fonti-ref a:hover{color:var(--green)}
.fonti-ref-host{color:#9ca3af}
.entry .fonti-ref a.rif-back{border:0;margin-left:4px;color:#9ca3af}

/* A11y: contrasto AA su sfondo scuro del footer */
.site-ft .nl-priv,.ft-nl .nl-priv{color:#94a3b8}
.site-ft .nl-priv a,.ft-nl .nl-priv a{color:#cbd5e1}
