/* ════════════════════════════════════════════════════════════════
 * CASHLY — CSS pulito, ispirato Product Hunt
 * Sostituisce ph.css. ~300 righe, niente strati sovrapposti.
 * ════════════════════════════════════════════════════════════════ */

/* ── Tokens ─────────────────────────────────────────────────── */
:root{
  --bg:#ffffff;
  --ink:#1f1f1f;
  --muted:#4d4d4d;
  --soft:#9b9b9b;
  --line:#d4d4d4;
  --line-2:#e8e8e8;
  --chip:#f6f6f7;
  --accent:#16a34a;
  --accent-d:#15803d;
  --accent-bg:#f0fdf4;
  --accent-2:#22c55e;
  --yellow:#fed053;
  --r:3.5px;
  --font:'Inter','SF Pro Text',-apple-system,system-ui,sans-serif;
  --shell:1140px;
}

/* ── Reset ──────────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;scroll-padding-top:80px;-webkit-text-size-adjust:100%;}
body{font-family:var(--font);font-size:15px;line-height:1.5;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;}
img,svg{display:block;max-width:100%;}
a{color:inherit;text-decoration:none;}
button{font:inherit;cursor:pointer;border:none;background:none;color:inherit;}
input,select,textarea{font:inherit;color:inherit;}
h1,h2,h3,h4{font-weight:700;letter-spacing:-.01em;line-height:1.25;}

/* ── Layout ─────────────────────────────────────────────────── */
.shell{max-width:var(--shell);margin:0 auto;padding:0 24px;width:100%;}
main.shell{padding-top:24px;padding-bottom:48px;}
.cols{display:grid;grid-template-columns:1fr 300px;gap:48px;align-items:start;}
.crumb{font-size:13px;color:var(--soft);margin-bottom:18px;}
.crumb a{color:var(--muted);}.crumb a:hover{color:var(--ink);}
.crumb .sep{margin:0 6px;}

/* ── Navbar ─────────────────────────────────────────────────── */
nav.nav{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.96);backdrop-filter:saturate(180%) blur(10px);border-bottom:1px solid var(--line);}
nav.nav .in{display:flex;align-items:center;gap:24px;height:60px;max-width:var(--shell);margin:0 auto;padding:0 24px;}
/* Logo brand cashly: wordmark Inter 600 + dot verde (spec brand ufficiale) */
.lg{font-family:var(--font);font-size:22px;font-weight:600;letter-spacing:-.045em;color:var(--ink);display:inline-flex;align-items:baseline;text-decoration:none;}
.lg .d{display:inline-block;width:.16em;height:.16em;border-radius:50%;background:var(--accent-2);margin-left:.04em;}
.lg:hover{color:var(--ink);}
.nav-search{flex:1;max-width:340px;position:relative;display:flex;align-items:center;}
.nav-search i{position:absolute;left:11px;color:var(--soft);font-size:15px;pointer-events:none;}
.nav-search input{width:100%;border:1.5px solid var(--line);background:var(--chip);border-radius:var(--r);padding:7px 11px 7px 33px;font-size:13px;color:var(--ink);outline:none;}
.nav-search input:focus{background:#fff;border-color:var(--ink);}
.nav-search .kbd{position:absolute;right:8px;font-size:10px;font-weight:700;color:var(--soft);background:#fff;border:1.5px solid var(--line);border-radius:3px;padding:1px 5px;pointer-events:none;}
.nav-menu{display:flex;gap:2px;}
.nav-menu a{padding:6px 11px;font-size:13.5px;font-weight:600;color:var(--muted);border-radius:var(--r);transition:.1s;}
.nav-menu a:hover,.nav-menu a.active{color:var(--ink);background:var(--chip);}
.nav-dd{position:relative;}
.nav-dd::after{content:"";position:absolute;top:100%;left:0;right:0;height:8px;}
.nav-dd-menu{position:absolute;top:calc(100% + 4px);left:0;background:#fff;border:1.5px solid var(--line);border-radius:var(--r);box-shadow:0 6px 24px rgba(0,0,0,.08);padding:5px;min-width:200px;display:none;flex-direction:column;z-index:50;}
.nav-dd:hover .nav-dd-menu{display:flex;}
.nav-dd-menu a{padding:7px 11px;font-size:13.5px;font-weight:500;color:var(--muted);border-radius:3.5px;}
.nav-dd-menu a:hover{background:var(--chip);color:var(--ink);}
.nav-right{margin-left:auto;display:flex;align-items:center;gap:10px;}
.theme-tg{width:34px;height:34px;border:1.5px solid var(--line);border-radius:var(--r);display:grid;place-items:center;color:var(--ink);font-size:16px;}
.theme-tg:hover{border-color:var(--ink);}
.btn-nav-fill{display:inline-flex;align-items:center;gap:6px;background:var(--accent);color:#fff;font-size:13px;font-weight:700;padding:8px 14px;border-radius:var(--r);border:1px solid var(--accent);transition:.1s;}
.btn-nav-fill:hover{background:var(--accent-d);border-color:var(--accent-d);}
.btn-nav-fill i{font-size:14px;}
.nav-burger{display:none;}

/* ── Filtri sopra directory ─────────────────────────────────── */
.cat-grid{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px;}
.cat-card{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border:1.5px solid var(--line);border-radius:var(--r);background:#fff;font-size:13px;color:var(--muted);font-weight:500;transition:.1s;}
.cat-card:hover{border-color:var(--ink);color:var(--ink);}
.cat-card.on{background:var(--ink);color:#fff;border-color:var(--ink);}
.cat-ic{display:inline-grid;place-items:center;width:18px;height:18px;font-size:13px;color:var(--accent);}
.cat-card.on .cat-ic{color:#fff;}
.cat-n{color:var(--soft);font-weight:400;font-size:12px;}
.cat-card.on .cat-n{color:rgba(255,255,255,.7);}
.cat-section-hd{display:none;}
.sub-filter{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap;}
.sub-filter select{appearance:none;-webkit-appearance:none;background:#fff url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%234d4d4d' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>") no-repeat right 9px center/10px;border:1.5px solid var(--line);border-radius:var(--r);padding:6px 28px 6px 11px;font-size:12.5px;font-weight:500;color:var(--muted);}
.sub-filter select:hover{border-color:var(--ink);color:var(--ink);}

/* ── Sezioni directory ──────────────────────────────────────── */
.sec{margin-bottom:32px;}
.sec-h{display:flex;align-items:baseline;gap:10px;margin-bottom:8px;}
.sec-h h2{font-size:15px;font-weight:700;color:var(--ink);}
.sec-h .c{font-size:13px;color:var(--soft);}

/* ── Righe tool (CORE element) ──────────────────────────────── */
.rows{display:flex;flex-direction:column;}
.prow{display:flex;align-items:center;gap:14px;padding:14px 0;border-top:1px solid var(--line-2);text-decoration:none;color:inherit;transition:background .1s;}
.prow:hover{background:var(--chip);margin:0 -10px;padding-left:10px;padding-right:10px;border-radius:var(--r);}
.prow > a.thumb,.prow > .thumb,a.prow > .thumb{width:52px;height:52px;flex-shrink:0;border-radius:3.5px;overflow:hidden;border:1.5px solid var(--line);background:#fff;display:grid;place-items:center;}
.prow > a.thumb img,.prow > .thumb img,a.prow > .thumb img{width:100%;height:100%;object-fit:contain;}
.prow > a.thumb .fb,.prow > .thumb .fb,a.prow > .thumb .fb{font-size:16px;font-weight:700;color:var(--soft);}
.prow .body{flex:1;min-width:0;}
.prow .nm{font-size:15.5px;font-weight:700;color:var(--ink);display:flex;align-items:baseline;gap:6px;}
.prow .nm .rk{font-size:13px;font-weight:700;color:var(--soft);}
.prow .nm:hover{color:var(--accent);}
.prow .tg{display:block;font-size:14px;color:var(--muted);margin-top:1px;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.prow .chips{display:flex;align-items:center;gap:0;margin-top:5px;}
.prow .chip,.prow .chip.cl,.prow .chip.green{background:transparent !important;border:none !important;color:var(--soft);font-size:12.5px;font-weight:500;padding:0;text-decoration:none;}
.prow a.chip.cl:hover{color:var(--ink);text-decoration:underline;text-underline-offset:2px;}
.prow .chip.green{color:var(--accent);font-weight:600;}
.prow .chip + .chip::before{content:"·";margin:0 6px;color:var(--line);}
.prow-stats{display:flex;gap:6px;flex-shrink:0;}
.pstat{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:46px;padding:5px 4px;border:1.5px solid var(--line);border-radius:var(--r);background:#fff;color:var(--muted);text-decoration:none;}
.pstat i{font-size:14px;}
.pstat b{font-size:10px;font-weight:700;color:var(--ink);margin-top:1px;}
.pstat.go-box{background:var(--accent-bg);border-color:#bbf7d0;color:var(--accent-d);}
.pstat.go-box b{color:var(--accent-d);}
.more-btn{margin-top:10px;width:100%;background:#fff;border:1.5px solid var(--line);border-radius:var(--r);padding:9px;font-size:13px;font-weight:600;color:var(--muted);}
.more-btn:hover{border-color:var(--ink);color:var(--ink);}

/* ── Sidebar ────────────────────────────────────────────────── */
.aside-col{position:sticky;top:80px;display:flex;flex-direction:column;gap:22px;}
.card{padding:0;}
.card h3{font-size:13px;font-weight:700;color:var(--ink);margin-bottom:10px;}
.scard{display:block;padding:11px 0;border-top:1px solid var(--line-2);text-decoration:none;color:inherit;}
.scard:first-of-type{border-top:none;padding-top:0;}
.scard .st{display:block;font-size:14px;font-weight:600;color:var(--ink);line-height:1.35;}
.scard:hover .st{color:var(--accent);}
.scard .sd{display:block;font-size:13px;color:var(--muted);margin-top:3px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.scard .sm{display:block;font-size:12px;color:var(--soft);margin-top:6px;}
.scard .sm span{margin-right:10px;}
.sc-top{display:none;}

/* ── Scheda tool ────────────────────────────────────────────── */
.detail{display:grid;grid-template-columns:1fr 280px;gap:48px;align-items:start;padding:8px 0 48px;}
.dmain{min-width:0;}
.phead{display:flex;gap:16px;align-items:flex-start;margin-bottom:14px;}
.phead .ico{width:64px;height:64px;flex-shrink:0;border-radius:3.5px;overflow:hidden;border:1.5px solid var(--line);background:#fff;display:grid;place-items:center;}
.phead .ico img{width:100%;height:100%;object-fit:contain;}
.phead h1{font-size:28px;font-weight:800;letter-spacing:-.02em;line-height:1.15;}
.phead .tagline{font-size:15.5px;color:var(--muted);margin-top:5px;line-height:1.5;}
.cat-chips{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0 18px;}
.cat-chips a{font-size:12.5px;font-weight:600;color:var(--muted);background:var(--chip);border-radius:3.5px;padding:3px 9px;}
.cat-chips a:hover{color:var(--ink);background:var(--line-2);}
.rev p{font-size:15.5px;color:#2a2a2a;margin-bottom:14px;line-height:1.65;}
.rev h2{font-size:21px;font-weight:800;letter-spacing:-.015em;margin:36px 0 12px;color:var(--ink);}
.rev h3{font-size:17px;font-weight:700;margin:24px 0 8px;}
.rev ul,.rev ol{margin:0 0 16px 22px;}
.rev li{font-size:15px;margin-bottom:6px;line-height:1.6;}
.rev a{color:var(--ink);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--soft);font-weight:600;}
.rev a:hover{text-decoration-color:var(--ink);}
.rev strong{font-weight:700;color:var(--ink);}
.procon{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:22px 0;}
.procon .box{border:1.5px solid var(--line);border-radius:var(--r);padding:14px 16px;background:#fff;}
.procon h4{font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;margin-bottom:10px;}
.procon .pro h4{color:#16a34a;}
.procon .con h4{color:#dc2626;}
.procon ul{list-style:none;margin:0;}
.procon li{font-size:13.5px;line-height:1.5;padding-left:18px;position:relative;margin-bottom:7px;}
.procon .pro li::before{content:'+';position:absolute;left:0;color:#16a34a;font-weight:800;}
.procon .con li::before{content:'\2013';position:absolute;left:0;color:#dc2626;font-weight:800;}
.faq{margin:18px 0;}
.faq .qa{border:1.5px solid var(--line);border-radius:var(--r);margin-bottom:8px;background:#fff;overflow:hidden;}
.faq .q{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 16px;font-size:14px;font-weight:700;cursor:pointer;}
.faq .qa.open .q i{transform:rotate(180deg);}
.faq .a{max-height:0;overflow:hidden;transition:max-height .25s;}
.faq .qa.open .a{max-height:400px;}
.faq .a p{font-size:14px;padding:0 16px 14px;color:#3a3a3a;}
.dt-table{width:100%;border-collapse:collapse;margin:14px 0;font-size:13.5px;}
.dt-table th,.dt-table td{border:1.5px solid var(--line);padding:9px 12px;text-align:left;}
.dt-table th{background:var(--chip);font-weight:700;}
.pside{padding:0;}
.pside h3{font-size:13px;font-weight:700;margin-bottom:10px;color:var(--ink);}
.pside .ptop{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px;font-size:13px;}
.pside .ptop a{font-weight:600;color:var(--muted);}
.pside .ptop .rank{font-size:11.5px;font-weight:700;color:var(--soft);background:var(--chip);border-radius:3.5px;padding:2px 8px;}
.pside .acts{display:flex;flex-direction:column;gap:8px;}
.btn-ph{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:var(--accent);color:#fff;font-size:14px;font-weight:700;padding:11px 18px;border-radius:var(--r);border:1px solid var(--accent);transition:.1s;}
.btn-ph:hover{background:var(--accent-d);border-color:var(--accent-d);}
.btn-out{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:#fff;color:var(--ink);font-size:14px;font-weight:600;padding:10px 18px;border-radius:var(--r);border:1.5px solid var(--line);}
.btn-out:hover{border-color:var(--ink);}
.info-card dl{display:grid;grid-template-columns:auto 1fr;gap:7px 14px;font-size:13px;}
.info-card dt{color:var(--muted);}
.info-card dd{color:var(--ink);text-align:right;font-weight:600;}

/* ── Blog ───────────────────────────────────────────────────── */
.pub-head{padding:32px 0 24px;border-bottom:1px solid var(--line);margin-bottom:24px;}
.pub-head h1{font-size:30px;font-weight:800;letter-spacing:-.025em;}
.pub-head .m{font-size:14.5px;color:var(--muted);margin-top:6px;}
.feat{display:grid;grid-template-columns:1.3fr 1fr;gap:28px;margin-bottom:34px;align-items:center;}
.feat .pic{aspect-ratio:16/10;border-radius:var(--r);background:var(--chip);overflow:hidden;}
.feat .pic img{width:100%;height:100%;object-fit:cover;}
.feat .ft-cat{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--accent);}
.feat h2{font-size:26px;font-weight:800;letter-spacing:-.02em;line-height:1.2;margin:8px 0 10px;}
.feat .ex{font-size:14.5px;color:var(--muted);line-height:1.55;}
.bgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding-bottom:40px;}
.bcard{display:flex;flex-direction:column;text-decoration:none;color:inherit;}
.bcard .pic{aspect-ratio:16/10;border-radius:var(--r);background:var(--chip);margin-bottom:11px;overflow:hidden;}
.bcard .pic img{width:100%;height:100%;object-fit:cover;}
.bcard .bc-cat{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--accent);}
.bcard h3{font-size:18px;font-weight:700;letter-spacing:-.015em;line-height:1.25;margin:5px 0 7px;}
.bcard:hover h3{color:var(--accent);}
.bcard .ex{font-size:13.5px;color:var(--muted);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.bcard .by{font-size:12.5px;color:var(--soft);margin-top:9px;}
.post{max-width:680px;margin:0 auto;padding:30px 0 60px;}
.post .p-cat{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--accent);}
.post h1{font-size:38px;font-weight:800;letter-spacing:-.025em;line-height:1.1;margin:10px 0 14px;}
.post .sub{font-size:18px;color:var(--muted);line-height:1.45;margin-bottom:22px;}
.post .author{display:flex;align-items:center;gap:12px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:24px;}
.post .author .av{width:42px;height:42px;border-radius:50%;background:var(--accent);color:#fff;font-size:18px;font-weight:700;display:grid;place-items:center;}
.post .author .au-n{font-size:14px;font-weight:700;}
.post .author .au-m{font-size:13px;color:var(--muted);}
.post .body{font-size:17px;line-height:1.7;color:#2a2a2a;}
.post .body p{margin-bottom:20px;}
.post .body h2{font-size:26px;font-weight:800;letter-spacing:-.015em;margin:32px 0 12px;color:var(--ink);}
.post .body h3{font-size:19px;font-weight:700;margin:24px 0 8px;}
.post .body a{color:var(--ink);text-decoration:underline;text-underline-offset:3px;}
.post .body blockquote{border-left:3px solid var(--accent);padding:4px 0 4px 20px;margin:24px 0;font-size:19px;color:var(--ink);line-height:1.45;font-style:italic;}

/* ── Forms + Suggerisci ─────────────────────────────────────── */
.sugg-page{max-width:600px;margin:24px auto 60px;}
.sugg-page h1{font-size:30px;font-weight:800;letter-spacing:-.02em;margin-bottom:8px;}
.sugg-lead{font-size:15px;color:var(--muted);line-height:1.6;margin-bottom:26px;}
.sugg-form .f-row{margin-bottom:16px;display:flex;flex-direction:column;gap:5px;}
.sugg-form label{font-size:13px;font-weight:700;}
.sugg-form .req{color:#dc2626;}
.sugg-form input,.sugg-form select,.sugg-form textarea{width:100%;border:1.5px solid var(--line);border-radius:var(--r);padding:9px 12px;font-size:14px;background:#fff;outline:none;}
.sugg-form input:focus,.sugg-form select:focus,.sugg-form textarea:focus{border-color:var(--ink);}
.sugg-form textarea{resize:vertical;min-height:90px;}
.sugg-form button{background:var(--ink);color:#fff;font-weight:700;border-radius:var(--r);padding:11px 22px;font-size:14px;margin-top:6px;}
.sugg-form button:hover{background:#000;}
.sugg-form button:disabled{opacity:.5;cursor:not-allowed;}
.f-msg{font-size:13px;margin-top:12px;line-height:1.55;}
.f-msg.ok{color:var(--accent-d);background:var(--accent-bg);border:1px solid #bbf7d0;border-radius:var(--r);padding:11px 13px;}
.f-msg.err{color:#b91c1c;}
.sugg-strip{display:flex;align-items:center;gap:16px;background:var(--chip);border-radius:var(--r);padding:16px 20px;margin:30px 0;flex-wrap:wrap;}
.sugg-strip-t{flex:1;min-width:200px;}
.sugg-strip-t b{display:block;font-size:15px;font-weight:700;margin-bottom:2px;}
.sugg-strip-t span{font-size:13px;color:var(--muted);}

/* ── Cookie banner ──────────────────────────────────────────── */
.ck-bn{position:fixed;left:16px;right:16px;bottom:16px;z-index:120;background:#fff;border:1.5px solid var(--line);border-radius:var(--r);box-shadow:0 10px 36px rgba(0,0,0,.12);padding:14px 18px;display:flex;align-items:center;gap:16px;flex-wrap:wrap;max-width:780px;margin:0 auto;}
.ck-bn .ck-t{flex:1;min-width:240px;font-size:13px;line-height:1.5;}
.ck-bn .ck-t b{font-weight:700;}
.ck-bn .ck-t a{color:var(--ink);text-decoration:underline;font-weight:600;}
.ck-bn .ck-b{display:flex;gap:8px;}
.ck-bn button{font-size:12.5px;font-weight:700;border-radius:var(--r);padding:8px 14px;border:1.5px solid var(--line);background:#fff;}
.ck-bn .ck-a{background:var(--ink);color:#fff;border-color:var(--ink);}

/* ── Banner sponsor ─────────────────────────────────────────── */
/* AD-banner Trading Matematico: sfondo immagine spaziale + overlay scuro + testo bianco */
.ad-banner{position:relative;display:flex;align-items:center;gap:18px;background:#0a0418 url('https://images.unsplash.com/photo-1462331940025-496dfbfc7564?auto=format&fit=crop&w=1600&q=80') center 35%/cover no-repeat;background-blend-mode:normal;border:1.5px solid #1f1530;border-radius:var(--r);padding:18px 22px;margin:0 0 22px;text-decoration:none;color:#fff;transition:.15s;overflow:hidden;min-height:96px;}
.ad-banner::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,4,24,.85) 0%,rgba(10,4,24,.55) 55%,rgba(10,4,24,.75) 100%);pointer-events:none;}
.ad-banner > *{position:relative;z-index:1;}
.ad-banner:hover{border-color:var(--accent);transform:translateY(-1px);}
.ab-tag{font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#fff;background:var(--accent);border:1px solid var(--accent);border-radius:3.5px;padding:4px 10px;flex-shrink:0;box-shadow:0 2px 8px rgba(22,163,74,.35);}
.ab-body{flex:1;min-width:0;}
.ab-body h3{font-size:18px;font-weight:800;margin-bottom:3px;color:#fff;letter-spacing:-.015em;text-shadow:0 1px 2px rgba(0,0,0,.4);}
.ab-body p{font-size:13.5px;color:rgba(255,255,255,.82);line-height:1.45;text-shadow:0 1px 2px rgba(0,0,0,.4);}
.ab-cta{flex-shrink:0;display:inline-flex;align-items:center;gap:5px;background:var(--accent);color:#fff;font-weight:700;font-size:13.5px;padding:9px 16px;border-radius:var(--r);box-shadow:0 2px 12px rgba(22,163,74,.4);}
.ad-banner:hover .ab-cta{background:var(--accent-d);}
@media(max-width:680px){
  .ad-banner{flex-direction:column;align-items:flex-start;gap:10px;padding:16px;min-height:140px;background-position:center 20%;}
  .ab-cta{width:100%;justify-content:center;}
}

/* ── Footer ─────────────────────────────────────────────────── */
footer.ft{background:#fff;border-top:1px solid var(--line);padding:40px 0 24px;margin-top:60px;color:var(--muted);font-size:13.5px;}
footer.ft .cat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;padding-bottom:24px;border-bottom:1px solid var(--line);}
footer.ft .cat-col h4{font-size:13px;font-weight:700;color:var(--ink);margin-bottom:9px;}
footer.ft .cat-col a{display:block;font-size:13px;color:var(--muted);padding:3px 0;}
footer.ft .cat-col a:hover{color:var(--ink);}
footer.ft .ft-disc{font-size:11.5px;color:var(--soft);line-height:1.55;margin:18px 0 4px;padding-top:14px;border-top:1px solid var(--line);}
footer.ft .ft-bottom{padding:18px 0 6px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;}
footer.ft .ft-bottom .cp{font-size:13px;color:var(--muted);}
footer.ft .ft-bottom .links{display:flex;gap:18px;flex-wrap:wrap;}
footer.ft .ft-bottom .links a{font-size:13px;color:var(--muted);font-weight:500;}
footer.ft .ft-bottom .links a:hover{color:var(--ink);}

/* ── Empty + share menu ─────────────────────────────────────── */
.empty{padding:50px 4px;color:var(--muted);font-size:14px;text-align:center;}
.share{display:none;gap:6px;margin-top:8px;flex-wrap:wrap;}
.share a,.share button{font-size:12px;color:var(--muted);background:#fff;border:1.5px solid var(--line);border-radius:var(--r);padding:6px 10px;text-decoration:none;}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);}

/* ── Mobile ─────────────────────────────────────────────────── */
@media(max-width:900px){
  .cols,.detail{grid-template-columns:1fr;gap:32px;}
  .aside-col{position:static;}
}
@media(max-width:680px){
  body{font-size:14.5px;}
  .shell,nav.nav .in{padding-left:16px;padding-right:16px;}
  nav.nav .in{height:54px;gap:12px;}
  .nav-search{display:none;}
  .nav-menu{display:none;position:absolute;top:54px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);flex-direction:column;padding:8px 16px;}
  .nav-menu.open{display:flex;}
  .nav-burger{display:grid;place-items:center;width:36px;height:36px;border:1.5px solid var(--line);border-radius:var(--r);color:var(--ink);}
  .btn-nav-fill span{display:none;}
  .btn-nav-fill{padding:7px 11px;}
  .phead h1{font-size:22px;}
  .phead .ico{width:52px;height:52px;}
  .feat{grid-template-columns:1fr;}
  .feat h2{font-size:22px;}
  .bgrid{grid-template-columns:1fr;}
  .post h1{font-size:28px;}
  .post .body{font-size:16px;}
  .procon{grid-template-columns:1fr;}
  footer.ft .cat-grid{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:420px){
  .prow > a.thumb{width:44px;height:44px;}
  .prow .nm{font-size:14.5px;}
  .prow .pstat:not(.go-box){display:none;}
  footer.ft .cat-grid{grid-template-columns:1fr;}
}

/* Welcome banner stile PH */
.wc-banner{display:flex;align-items:center;gap:14px;background:#fef3ea;border:1px solid #fbd9bc;border-radius:var(--r);padding:14px 18px;margin:18px 0 24px;}
.wc-ic{width:36px;height:36px;border-radius:50%;background:#fff;display:grid;place-items:center;color:var(--accent);font-size:18px;border:1px solid #fbd9bc;flex-shrink:0;}
.wc-t{flex:1;min-width:0;font-size:14px;line-height:1.5;}
.wc-t b{display:block;font-weight:700;color:var(--ink);}
.wc-t span{color:var(--muted);}
.wc-t a{color:var(--accent);font-weight:600;}
.wc-t a:hover{color:var(--accent-d);}
.wc-x{width:30px;height:30px;border-radius:50%;background:#fff;border:1px solid #fbd9bc;color:var(--muted);display:grid;place-items:center;font-size:14px;flex-shrink:0;}
.wc-x:hover{background:#fbd9bc;color:var(--ink);}

/* Outline button navbar (Subscribe-style PH) */
.btn-nav-out{display:inline-flex;align-items:center;gap:6px;background:#fff;color:var(--ink);font-size:13px;font-weight:700;padding:7px 14px;border-radius:var(--r);border:1.5px solid var(--line);}
.btn-nav-out:hover{border-color:var(--ink);}
.btn-nav-out i{font-size:14px;}

@media(max-width:680px){
  .wc-banner{padding:12px 14px;gap:10px;}
  .wc-t{font-size:13px;}
  .btn-nav-out{display:none;}
}

/* ── Impaginazione finale: respiro corretto stile PH ── */
main.shell{padding-top:22px;}
.wc-banner{margin:0 0 28px;}
.cat-grid{margin-bottom:14px;}
.sub-filter{margin-bottom:26px;}
.ad-banner{margin:0 0 28px;}
/* ── Sec-h stile Product Hunt: Inter, peso 700, dimensione media, nero ── */
.sec{margin-bottom:38px;}
.sec-h{display:flex;align-items:baseline;gap:8px;margin-bottom:6px;padding:0;border:none;}
.sec-h h2{font-family:var(--font);font-size:16px;font-weight:700;letter-spacing:-.01em;color:var(--ink);font-style:normal;}
.sec-h .c{font-size:14px;color:var(--soft);font-weight:400;font-family:var(--font);background:none;padding:0;border:none;letter-spacing:0;}
@media(max-width:680px){.sec-h h2{font-size:15px;}.sec-h .c{font-size:13px;}}
.prow{padding:18px 0;}
.prow:first-child{border-top:none;padding-top:8px;}
.cols{gap:56px;}
.aside-col{padding-top:6px;}
.aside-col .card h3{font-size:14px;font-weight:800;margin-bottom:14px;}
.aside-col .scard{padding:14px 0;}
.aside-col .scard .st{font-size:14.5px;line-height:1.4;}
.cat-card{padding:6px 11px;}

/* ════════ JOB-BOARD STYLE: hero + tag strip + sidebar filtri ════════ */
/* Hero card grande con search */
.hj-hero{background:#f4f5f7;border-radius:3.5px;padding:54px 44px 70px;margin:8px 0 -36px;text-align:left;position:relative;}
.hj-hero h1{font-size:38px;font-weight:800;letter-spacing:-.03em;line-height:1.12;color:var(--ink);max-width:560px;margin-bottom:14px;}
.hj-hero p{font-size:15px;color:var(--muted);max-width:520px;margin-bottom:30px;line-height:1.55;}
.hj-search{display:flex;align-items:center;background:#fff;border-radius:3.5px;padding:6px;box-shadow:0 8px 30px rgba(0,0,0,.06);max-width:780px;gap:0;}
.hjs-f{display:flex;align-items:center;gap:8px;flex:1;padding:0 14px 0 16px;min-width:0;}
.hjs-f i{color:var(--soft);font-size:17px;flex-shrink:0;}
.hjs-f input,.hjs-f select{flex:1;border:none;outline:none;background:none;font-size:14.5px;color:var(--ink);padding:14px 0;min-width:0;}
.hjs-f select{appearance:none;cursor:pointer;}
.hjs-div{width:1px;height:24px;background:var(--line);flex-shrink:0;}
.hjs-go{background:var(--accent);color:#fff;font-weight:700;font-size:14.5px;padding:13px 28px;border-radius:3.5px;border:none;flex-shrink:0;cursor:pointer;}
.hjs-go:hover{background:var(--accent-d);}

/* Tag strip scrollabile */
.tag-strip{display:flex;flex-wrap:wrap;gap:0;align-items:center;padding:14px 0 18px;margin-top:8px;border-bottom:1px solid var(--line);}
.t-chip{display:inline-block;font-size:13.5px;font-weight:600;color:var(--muted);background:transparent;border:none;padding:6px 0;flex-shrink:0;white-space:nowrap;cursor:pointer;transition:color .12s;text-decoration:none;}
.t-chip + .t-chip::before{content:"\B7";color:var(--line);margin:0 14px;font-weight:400;cursor:default;}
.t-chip:hover{color:var(--ink);}
.t-chip.on{color:var(--accent);font-weight:700;}

/* Layout 2 colonne: filter sidebar + main */
.cols-2{display:grid;grid-template-columns:170px 1fr;gap:28px;margin-top:24px;align-items:start;}
.side-filter{position:sticky;top:80px;}
.side-filter h3{font-size:12px;font-weight:800;color:var(--ink);margin-bottom:14px;letter-spacing:.04em;text-transform:uppercase;}
.sf-group{margin-bottom:22px;}
.sf-group h4{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);margin-bottom:8px;}
.sf-sel{width:100%;appearance:none;-webkit-appearance:none;background:#fff url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%234d4d4d' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>") no-repeat right 11px center/10px;border:1.5px solid var(--line);border-radius:var(--r);padding:9px 30px 9px 12px;font-size:13px;font-weight:600;color:var(--ink);cursor:pointer;font-family:inherit;}
.sf-sel:hover,.sf-sel:focus{border-color:var(--ink);outline:none;}
.main-col{min-width:0;}

/* Nascondi vecchi blocchi non usati */
.cat-grid:not(.tag-strip),.sub-filter,.cat-section,.cat-section-hd{display:none;}

@media(max-width:900px){
  .hj-hero{padding:38px 24px 50px;}
  .hj-hero h1{font-size:28px;}
  .hj-search{flex-wrap:wrap;border-radius:3.5px;padding:8px;}
  .hjs-f{padding:6px 12px;width:100%;}
  .hjs-div{display:none;}
  .hjs-go{width:100%;padding:12px;border-radius:3.5px;}
  .cols-2{grid-template-columns:1fr;gap:20px;}
  .side-filter{position:static;}
  .sf-group{margin-bottom:14px;}
  .tag-strip{margin-top:36px;}
}

/* Senza hero: spaziature più strette */
.tag-strip{margin-top:8px;padding:8px 0 18px;}
.cols-2{margin-top:20px;gap:40px;}
.wc-banner{margin-bottom:18px;}
.side-filter h3{margin-bottom:14px;}
.sf-group{margin-bottom:18px;}

/* Blog teaser inline sotto la lista */
.blog-teaser{background:#fff;border:1.5px solid var(--line);border-radius:var(--r);padding:18px 22px;margin:30px 0 0;}
.blog-teaser h3{font-size:14px;font-weight:800;margin-bottom:14px;}
.blog-teaser .scard{padding:10px 0;border-top:1px solid var(--line-2);display:block;text-decoration:none;color:inherit;}
.blog-teaser .scard:first-of-type{border-top:none;padding-top:0;}
.blog-teaser .scard .st{font-size:14.5px;font-weight:600;line-height:1.4;display:block;color:var(--ink);}
.blog-teaser .scard:hover .st{color:var(--accent);}
.blog-teaser .scard .sm{font-size:12.5px;color:var(--soft);margin-top:4px;display:block;}
.blog-teaser .scard .sm span{margin-right:10px;}

/* Allineamento menu navbar */
.nav-menu{align-items:center;}
.nav-menu a,.nav-dd .dd-t{padding:7px 12px;display:inline-flex;align-items:center;gap:5px;line-height:1;font-size:14px;font-weight:600;}
.nav-dd{display:inline-flex;align-items:center;}
.nav-dd .dd-t i{font-size:13px;color:var(--soft);}

/* Scheda prodotto: nuova struttura a sezioni */
.prod-hero{display:flex;align-items:flex-start;gap:18px;background:#fff;border:1.5px solid var(--line);border-radius:3.5px;padding:18px 20px;margin-bottom:24px;}
.prod-hero .ph-thumb{width:60px;height:60px;flex-shrink:0;border-radius:3.5px;overflow:hidden;border:1.5px solid var(--line);background:#fff;display:grid;place-items:center;}
.prod-hero .ph-thumb img{width:100%;height:100%;object-fit:contain;}
.prod-hero .ph-body{flex:1;min-width:0;}
.prod-hero h1{font-size:24px;font-weight:800;letter-spacing:-.02em;line-height:1.15;color:var(--ink);}
.prod-hero .ph-tag{font-size:14.5px;color:var(--muted);margin-top:4px;line-height:1.5;}
.prod-hero .ph-chips{display:flex;align-items:center;gap:0;margin-top:9px;flex-wrap:wrap;}
.prod-hero .ph-chips .chip{background:none;border:none;color:var(--soft);font-size:12.5px;font-weight:500;padding:0;text-decoration:none;}
.prod-hero .ph-chips .chip + .chip::before{content:"·";margin:0 6px;color:var(--line);}
.prod-hero .ph-chips a.chip:hover{color:var(--ink);}
.prod-block{margin-bottom:36px;padding-bottom:0;}
.prod-block .pb-h{font-size:19px;font-weight:800;letter-spacing:-.015em;margin-bottom:16px;color:var(--ink);}
.tool-disclaimer{margin-top:18px;padding:14px 16px;background:#fafbfc;border:1.5px solid var(--line-2);border-radius:var(--r);font-size:12.5px;color:var(--muted);line-height:1.6;}
.tool-disclaimer b{color:var(--ink);}
.prod-related .prow{padding:14px 0;border-top:1px solid var(--line-2);}
.prod-related .prow:hover{margin:0;padding-left:0;padding-right:0;background:none;}
.prod-related .prow:hover .nm{color:var(--accent);}
.detail{display:grid;grid-template-columns:1fr 280px;gap:48px;align-items:start;padding:8px 0 48px;}
.side{position:sticky;top:80px;}
.pside{padding:0;}
.pside .acts{display:flex;flex-direction:column;gap:9px;}
@media(max-width:900px){.detail{grid-template-columns:1fr;gap:28px;}.side{position:static;}}
@media(max-width:560px){.prod-hero{padding:14px 16px;}.prod-hero h1{font-size:20px;}.prod-hero .ph-thumb{width:52px;height:52px;}.prod-block .pb-h{font-size:17px;}}

/* Tabelle nei post del blog */
.post .body table{width:100%;border-collapse:collapse;margin:24px 0;font-size:15px;background:#fff;border:1.5px solid var(--line);border-radius:var(--r);overflow:hidden;}
.post .body table th,.post .body table td{padding:11px 14px;text-align:left;border-bottom:1px solid var(--line-2);vertical-align:top;line-height:1.5;}
.post .body table th{background:#fafbfc;font-size:13px;font-weight:700;color:var(--ink);letter-spacing:.01em;text-transform:none;border-bottom:2px solid var(--line);}
.post .body table tr:last-child td{border-bottom:none;}
.post .body table tr:hover td{background:#fafbfc;}
.post .body table td strong,.post .body table th strong{font-weight:700;color:var(--ink);}
.post .body table p{margin:0;}
@media(max-width:680px){
  .post .body{overflow-x:auto;-webkit-overflow-scrolling:touch;}
  .post .body table{font-size:13.5px;display:block;overflow-x:auto;white-space:nowrap;}
  .post .body table th,.post .body table td{padding:9px 11px;white-space:normal;}
}

/* ════════ Scheda tool: stili sezioni mancanti ════════ */
/* Livelli finanziari: cards FROM/TO */

/* Q&A people-also-ask in cima */
.qa-top{background:#fff;border:1.5px solid var(--line);border-radius:var(--r);padding:6px 22px;margin:8px 0 22px;}
.qa-item{padding:16px 0;border-top:1px solid var(--line-2);}
.qa-item:first-child{border-top:none;}
.qa-q{font-size:16px;font-weight:700;color:var(--ink);margin:0 0 6px;padding:0;border:none;text-transform:none;line-height:1.3;letter-spacing:-.01em;}
.qa-a{font-size:14.5px;line-height:1.6;color:#3a3a3a;margin:0;}

/* Verdetto */
.verdict{border-left:3px solid var(--accent);padding:6px 0 6px 18px;margin:22px 0;}
.verdict .vh{display:flex;align-items:center;gap:10px;margin-bottom:6px;}
.verdict .vh b{font-size:11.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);}
.verdict p{font-size:14.5px;color:#3a3a3a;line-height:1.6;margin:0;}

/* Pro/Contro grid */
.procon{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:22px 0;}
.procon .box{border:1.5px solid var(--line);border-radius:var(--r);padding:14px 16px;background:#fff;}
.procon h4{font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;margin-bottom:10px;}
.procon .pro h4{color:#16a34a;}
.procon .con h4{color:#dc2626;}
.procon ul{list-style:none;margin:0;}
.procon li{font-size:13.5px;line-height:1.5;padding-left:18px;position:relative;margin-bottom:7px;color:var(--ink);}
.procon .pro li::before{content:'+';position:absolute;left:0;color:#16a34a;font-weight:800;}
.procon .con li::before{content:'\2013';position:absolute;left:0;color:#dc2626;font-weight:800;}

/* Prezzo box */
.price-box{border:1.5px solid var(--line);border-radius:var(--r);padding:14px 16px;margin:18px 0;background:#fff;}
.price-box .pl{font-size:10.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:6px;}
.price-box .pv{font-size:20px;font-weight:800;color:var(--ink);letter-spacing:-.01em;}

/* CTA referral */
.ref-cta{display:flex;align-items:center;gap:14px;flex-wrap:wrap;background:#fff;border:1.5px solid var(--line);border-radius:var(--r);padding:14px 18px;margin:22px 0;}
.ref-cta .t{flex:1;min-width:200px;font-size:13.5px;color:var(--muted);}
.ref-cta .t b{color:var(--ink);font-weight:700;display:block;font-size:14.5px;margin-bottom:2px;}

/* FAQ accordion */
.faq{margin:18px 0;}
.faq .qa{border:1.5px solid var(--line);border-radius:var(--r);margin-bottom:8px;background:#fff;overflow:hidden;}
.faq .q{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 16px;font-size:14.5px;font-weight:700;color:var(--ink);cursor:pointer;}
.faq .q i{color:var(--muted);transition:.2s;}
.faq .qa.open .q i{transform:rotate(180deg);}
.faq .a{max-height:0;overflow:hidden;transition:max-height .25s;}
.faq .qa.open .a{max-height:400px;}
.faq .a p{font-size:14px;color:#3a3a3a;line-height:1.6;padding:0 16px 13px;margin:0;}

/* Specifiche table */
.dt-table{width:100%;border-collapse:collapse;margin:14px 0;font-size:13.5px;}
.dt-table th,.dt-table td{border:1.5px solid var(--line);padding:10px 12px;text-align:left;}
.dt-table th{background:#fafbfc;font-weight:700;color:var(--ink);}
.dt-note{font-size:12.5px;color:var(--muted);font-style:italic;margin:8px 0 18px;}

/* Sticky CTA mobile */
.sticky-cta{display:none;}
@media(max-width:900px){
  .sticky-cta{display:flex;position:fixed;left:14px;right:14px;bottom:14px;z-index:90;align-items:center;justify-content:center;gap:8px;background:var(--accent);color:#fff;font-size:14.5px;font-weight:800;padding:13px 18px;border-radius:var(--r);text-decoration:none;box-shadow:0 8px 24px rgba(22,163,74,.32);}
  .detail{padding-bottom:80px;}
  .procon{grid-template-columns:1fr;}
}

/* ════════ "È il tool giusto per te?" — metro livelli ════════ */
.prod-block .pb-sub{font-size:14px;color:var(--muted);margin:-4px 0 18px;line-height:1.5;}
.lvl-card{background:#fff;border:1.5px solid var(--line);border-radius:var(--r);padding:18px 20px;}
/* FROM/TO cards: più chiare, label visibile, numero grande, etichetta livello */
.lvl-fromto{display:grid;grid-template-columns:1fr auto 1fr;align-items:stretch;gap:12px;margin-bottom:18px;}
.lvl-fromto .lf,.lvl-fromto .lt{background:#fafbfc;border:1.5px solid var(--line-2);border-radius:var(--r);padding:14px 12px;text-align:center;}
.lvl-fromto .lf span,.lvl-fromto .lt span{display:block;font-size:10px;font-weight:800;letter-spacing:.12em;color:var(--muted);text-transform:uppercase;margin-bottom:8px;}
.lvl-fromto .lf b,.lvl-fromto .lt b{display:block;font-size:30px;font-weight:800;line-height:1;color:var(--ink);letter-spacing:-.02em;margin-bottom:4px;}
.lvl-fromto .lf em,.lvl-fromto .lt em{font-style:normal;display:block;font-size:12.5px;color:var(--ink);font-weight:600;line-height:1.25;}
.lvl-fromto i.ti-arrow-right{font-size:20px;color:var(--muted);align-self:center;}
/* Scala 1-7: barre + numeri sotto allineati */
.lvl-scale{display:flex;gap:4px;margin:6px 0 6px;}
.lvl-scale .seg{flex:1;height:8px;border-radius:3px;background:var(--chip);}
.lvl-axis{display:flex;justify-content:space-between;font-size:11px;font-weight:700;color:var(--muted);padding:0 1px;margin-bottom:18px;}
/* Tag chip: Guadagno / Salto */
.lvl-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px;}
.lvl-tag{display:inline-flex;align-items:center;gap:6px;background:#fafbfc;border:1.5px solid var(--line);border-radius:3.5px;padding:6px 12px;font-size:13px;color:var(--ink);}
.lvl-tag i{color:var(--accent);font-size:14px;}
.lvl-tag b{font-weight:700;color:var(--ink);}
/* Box "Perché": bordato normale, NO border-left, NO stile claude */
.lvl-why{background:#fafbfc;border:1.5px solid var(--line);border-radius:var(--r);padding:14px 16px;margin-bottom:12px;}
.lvl-why b{display:block;font-size:10.5px;font-weight:800;letter-spacing:.1em;color:var(--muted);text-transform:uppercase;margin-bottom:6px;}
.lvl-why p{font-size:13.5px;color:var(--ink);line-height:1.6;margin:0;}
/* Link legenda */
.lvl-legenda{display:inline-block;font-size:13px;color:var(--ink);font-weight:600;text-decoration:underline;text-underline-offset:3px;}
.lvl-legenda:hover{color:var(--accent);}
@media(max-width:680px){
  .lvl-fromto{grid-template-columns:1fr;gap:8px;}
  .lvl-fromto i.ti-arrow-right{transform:rotate(90deg);justify-self:center;}
}

/* ════════ MOBILE OPTIMIZATION ════════ */
@media(max-width:680px){
  /* Shell: padding laterale minimo */
  .shell{padding:0 14px;}
  /* Navbar compatta */
  .nav{padding:0 14px;height:54px;}
  .nav .logo{font-size:18px;}
  .nav-search{display:none;}
  .nav-links{gap:14px;}
  .nav-links a{font-size:13.5px;}
  .nav .btn-ph{padding:7px 12px;font-size:12.5px;}
  .nav .btn-ph i{font-size:13px;}
  /* Welcome banner: compatto, testo wrap, X visibile */
  .wc-banner{padding:14px 16px;flex-direction:column;align-items:flex-start;gap:8px;}
  .wc-banner .wc-ic{width:32px;height:32px;font-size:14px;}
  .wc-banner h3{font-size:14.5px;}
  .wc-banner p{font-size:12.5px;}
  .wc-banner .wc-x{position:absolute;top:8px;right:8px;}
  /* TAG-STRIP CATEGORIE: scroll orizzontale obbligato, NO wrap */
  .tag-strip{flex-wrap:nowrap !important;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:10px 0 12px;margin:6px -14px 0;padding-left:14px;padding-right:14px;}
  .tag-strip::-webkit-scrollbar{display:none;}
  .t-chip{font-size:13px;padding:5px 0;}
  .t-chip + .t-chip::before{margin:0 10px;}
  /* Side-filter su mobile: come strip orizzontale di select */
  .side-filter{position:static;display:flex;flex-direction:row;flex-wrap:wrap;gap:8px;margin:8px 0 14px;}
  .side-filter h3{display:none;}
  .sf-group{margin:0;flex:1 1 calc(50% - 4px);min-width:140px;}
  .sf-group h4{font-size:10.5px;margin-bottom:4px;}
  .sf-sel{font-size:12.5px;padding:8px 28px 8px 10px;}
  /* Cols-2: stack */
  .cols-2{grid-template-columns:1fr;gap:0;margin-top:8px;}
  /* Ad banner sponsor: stack verticale, padding ridotto */
  .ad-banner{flex-direction:column;align-items:flex-start;padding:14px 16px;gap:10px;}
  .ad-banner .ad-body{font-size:13.5px;}
  .ad-banner .btn-ph{width:100%;justify-content:center;}
  /* Prow (riga tool): compatta, thumb più piccola, chip stretti */
  .prow{padding:12px 0;gap:10px;}
  .prow .thumb{width:44px;height:44px;}
  .prow .nm{font-size:14.5px;}
  .prow .tg{font-size:12.5px;-webkit-line-clamp:2;}
  .prow .chips{gap:4px;margin-top:4px;}
  .prow .chip{font-size:11px;padding:2px 7px;}
  .prow-stats,.prow .go{display:none;}
  /* Sezione headings */
  .sec-h{font-size:18px;}
  .sec-h-tot{font-size:13px;}
  /* Blog teaser sotto lista */
  .blog-teaser{padding:14px 16px;}
  .blog-teaser h3{font-size:16px;}
  /* Suggerisci strip */
  .sugg-strip{padding:14px 16px;flex-direction:column;align-items:flex-start;gap:10px;}
  .sugg-strip .btn-ph,.sugg-strip .btn-out{width:100%;justify-content:center;}
  /* Footer */
  .ft{padding:24px 14px;}
  .ft-grid{grid-template-columns:1fr;gap:18px;}
  /* SCHEDA TOOL */
  .crumb{font-size:12px;}
  .prod-hero{padding:14px;gap:12px;flex-wrap:wrap;}
  .prod-hero .ph-thumb{width:46px;height:46px;}
  .prod-hero h1{font-size:19px;}
  .prod-hero .ph-tag{font-size:13px;}
  .prod-hero .ph-chips{font-size:11.5px;}
  .prod-block{margin-bottom:24px;}
  .prod-block .pb-h{font-size:17px;}
  .prod-block .pb-sub{font-size:13px;}
  /* Sidebar CTA su mobile: full width sopra il corpo */
  .detail{display:flex;flex-direction:column-reverse;gap:18px;}
  .detail aside.side{position:static;width:100%;}
  /* Q&A box e disclaimer */
  .qa-top{padding:4px 16px;}
  .qa-q{font-size:14.5px;}
  .qa-a{font-size:13.5px;}
  .price-box,.ref-cta,.lvl-why{padding:12px 14px;}
  /* Tabelle (specifiche/blog) scroll-x */
  .dt-table{font-size:13px;}
  .dt-table th,.dt-table td{padding:8px 10px;}
  /* Blog post body */
  .post .body{font-size:15.5px;}
  .post .body h2{font-size:21px;}
  .post .body h3{font-size:17px;}
}
@media(max-width:420px){
  .nav .logo{font-size:16px;}
  .nav-links{gap:10px;}
  .nav-links a{font-size:12.5px;}
  .prow .thumb{width:40px;height:40px;}
  .prow .nm{font-size:14px;}
  .prow .chip{font-size:10.5px;}
  /* tag strip: gap ancora più stretto */
  .t-chip + .t-chip::before{margin:0 8px;}
}
                                                                                        
/* ════════ Prow ora come <a> + badge laterale ════════ */
a.prow{display:flex;align-items:center;gap:14px;padding:14px 0;border-top:1px solid var(--line-2);text-decoration:none;color:inherit;transition:background .1s;cursor:pointer;}
a.prow:hover{background:var(--chip);margin:0 -10px;padding-left:10px;padding-right:10px;border-
/* Welcome banner: parola che ruota */
.wc-rot{display:inline-block;color:var(--accent);font-weight:700;transition:opacity .25s ease;min-width:90px;}

/* ════════════════════════════════════════════════════════════════
 * MOBILE UI — pass completa logica mobile
 * ════════════════════════════════════════════════════════════════ */
@media(max-width:680px){
  body{font-size:16px;}
  .shell{padding:0 14px;}
  main.shell{padding-top:14px;padding-bottom:80px;}

  /* NAVBAR: logo + search icon + hamburger */
  nav.nav .in{height:54px;gap:10px;padding:0 14px;}
  .lg{font-size:18px;}
  .nav-search{display:none;}
  .nav-menu{gap:0;}
  .nav-menu a{padding:6px 8px;font-size:12.5px;}
  .nav-menu .nav-dd > .dd-t i.ti-chevron-down{display:none;}
  .nav-dd-menu{position:fixed;left:0;right:0;top:54px;border-radius:0;width:100%;max-width:none;min-width:0;border-left:none;border-right:none;border-top:none;border-bottom:1.5px solid var(--line);box-shadow:0 6px 12px rgba(0,0,0,.04);padding:8px;max-height:60vh;overflow-y:auto;}
  .nav-right{gap:6px;}
  .btn-nav-fill{padding:7px 12px;font-size:12.5px;}
  .btn-nav-fill i{font-size:13px;}

  /* WELCOME BANNER: compact */
  .wc-banner{padding:12px 14px;flex-direction:row;align-items:flex-start;gap:10px;border-radius:3.5px;}
  .wc-ic{width:30px;height:30px;font-size:14px;flex-shrink:0;}
  .wc-t b{font-size:14px;}
  .wc-t span{font-size:12.5px;line-height:1.4;}
  .wc-rot{min-width:60px;}
  .wc-x{position:relative;top:0;right:0;flex-shrink:0;}

  /* TAG-STRIP: scroll orizzontale fluido, fade laterali */
  .tag-strip{position:relative;flex-wrap:nowrap !important;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin:6px -14px 0;padding:8px 14px 14px;border-bottom:1px solid var(--line);}
  .tag-strip::-webkit-scrollbar{display:none;}
  .t-chip{font-size:13.5px;padding:4px 0;flex-shrink:0;}
  .t-chip + .t-chip::before{margin:0 10px;}

  /* SIDE FILTER → strip orizzontale 2x2 sotto categorie */
  .cols-2{grid-template-columns:1fr;gap:8px;margin-top:6px;}
  .side-filter{position:static;display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:6px 0 14px;padding:0;}
  .side-filter h3{display:none;}
  .sf-group{margin:0;}
  .sf-group h4{font-size:10px;letter-spacing:.08em;margin-bottom:4px;color:var(--muted);}
  .sf-sel{padding:8px 26px 8px 10px;font-size:13px;font-weight:600;background-position:right 8px center;}

  /* AD BANNER: stack */
  .ad-banner{flex-direction:column;align-items:flex-start;gap:10px;padding:14px;min-height:120px;background-position:center 25%;border-radius:3.5px;margin-bottom:16px;}
  .ab-tag{font-size:10px;padding:3px 8px;}
  .ab-body h3{font-size:16px;}
  .ab-body p{font-size:12.5px;}
  .ab-cta{width:100%;justify-content:center;padding:10px;font-size:14px;}

  /* SEZIONE LISTA */
  .sec-h{margin-bottom:4px;}
  .sec-h h2{font-size:16px;}
  .sec-h .c{font-size:13.5px;}

  /* PROW (riga tool) */
  a.prow,.prow{gap:11px;padding:13px 0;}
  a.prow > .thumb,.prow > .thumb,.prow > a.thumb{width:42px;height:42px;}
  .prow .nm{font-size:14.5px;}
  .prow .nm .rk{font-size:12px;}
  .prow .tg{font-size:13px;-webkit-line-clamp:2;}
  .prow .chips{margin-top:3px;}
  .prow .chip{font-size:11.5px;}
  .pbadge{font-size:11px;padding:4px 9px;letter-spacing:0;}
  .pbadge i{font-size:11px;}

  /* BLOG TEASER + SUGGERISCI */
  .blog-teaser{padding:14px;border-radius:3.5px;}
  .blog-teaser h3{font-size:16px;}
  .sugg-strip{padding:14px;flex-direction:column;align-items:flex-start;gap:10px;border-radius:3.5px;}
  .sugg-strip .btn-ph,.sugg-strip .btn-out{width:100%;justify-content:center;padding:11px;font-size:14px;}

  /* COOKIE consent banner: full-width compatto */
  #cookieBanner,.cookie-banner{left:8px !important;right:8px !important;bottom:8px !important;padding:14px !important;border-radius:3.5px !important;font-size:13px !important;}

  /* FOOTER */
  .ft{padding:22px 14px;}
  .ft-grid{grid-template-columns:1fr;gap:18px;}
  .ft-col h4{font-size:13px;}

  /* SCHEDA TOOL (post-layout) */
  .post-layout{grid-template-columns:1fr;gap:14px;}
  .post-layout .post{max-width:100%;padding-top:14px;}
  .post-aside{position:static;padding-top:0;}
  .post .p-cat{font-size:11.5px;}
  .post h1{font-size:26px;line-height:1.15;}
  .post .sub{font-size:15px;line-height:1.45;}
  .post .author{padding:14px 0;gap:10px;}
  .post .author .av{width:36px;height:36px;font-size:13px;}
  .post .au-n{font-size:14px;}
  .post .au-m{font-size:12px;}
  .post .body{font-size:15.5px;}
  .post .body h2{font-size:20px;margin-top:28px;}
  .post .body h3{font-size:17px;}
  .post .body p{margin-bottom:14px;}
  .aside-box{padding:14px;border-radius:3.5px;}
  .aside-box .btn-ph{padding:12px;font-size:14.5px;}

  /* Pro/Contro: 1 colonna */
  .procon{grid-template-columns:1fr;gap:10px;}
  .procon .box{padding:13px;}
  .lvl-fromto{grid-template-columns:1fr;gap:6px;}
  .lvl-fromto i.ti-arrow-right{transform:rotate(90deg);justify-self:center;}
  .lvl-fromto .lf b,.lvl-fromto .lt b{font-size:24px;}
  .lvl-card{padding:14px;}

  /* RELATED grid → 1 colonna */
  .related-wrap{padding:22px 0 80px;}
  .rel-h{font-size:18px;}
  .rel-grid{grid-template-columns:1fr;gap:12px;}
  .rp-pic{aspect-ratio:21/9;}
  .rp-t{font-size:15px;}

  /* FORM (suggerisci) full-width */
  form input,form textarea,form select{font-size:16px;padding:11px 12px;border-radius:3.5px;}
  form label{font-size:13px;}

  /* TABELLE (specifiche/blog) scroll-x */
  .dt-table,.post .body table{display:block;overflow-x:auto;font-size:13.5px;}
  .dt-table th,.dt-table td{padding:9px 11px;}
}

/* SUB 420px */
@media(max-width:420px){
  .lg{font-size:16px;}
  .nav-menu a{font-size:11.5px;padding:5px 6px;}
  .btn-nav-fill{padding:6px 10px;font-size:11.5px;}
  .post h1{font-size:23px;}
  .sec-h h2{font-size:15px;}
  .t-chip{font-size:13px;}
  .t-chip + .t-chip::before{margin:0 8px;}
  a.prow > .thumb,.prow > .thumb{width:38px;height:38px;}
  .prow .nm{font-size:14px;}
  .pbadge{font-size:10.5px;padding:3px 7px;}
}

/* Mobile: blog teaser sempre visibile e in evidenza dopo banner */
@media(max-width:680px){
  .main-col{display:flex;flex-direction:column;}
  .ad-banner{order:1;}
  #mainCol{order:3;}
  .blog-teaser{order:2;margin:0 0 18px;padding:16px;background:var(--accent-bg);border:1.5px solid var(--accent);display:block !important;}
  .blog-teaser h3{font-size:15px;color:var(--accent-d);margin-bottom:10px;letter-spacing:.02em;}
  .blog-teaser .scard .st{font-size:14.5px;}
  .blog-teaser:empty{display:none !important;}
  .sugg-strip{order:4;}
}

/* Global mobile: previeni overflow orizzontale */
html,body{max-width:100%;overflow-x:hidden;}
@media(max-width:680px){
  main.shell,.post-layout,.shell{max-width:100%;overflow-x:hidden;}
  h1,h2,h3,p{overflow-wrap:break-word;word-wrap:break-word;}
  img,iframe{max-width:100%;height:auto;}
}
