/* Il Salvagente 2026 — design system (same language as the subscription landings) */
@font-face{font-family:"Benton Sans";src:url(../fonts/BentonSans-Regular.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Benton Sans";src:url(../fonts/BentonSans-Medium.woff) format("woff");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Benton Sans";src:url(../fonts/BentonSans-Bold.woff) format("woff");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Benton Sans";src:url(../fonts/BentonSans-Black.woff) format("woff");font-weight:900;font-style:normal;font-display:swap}

:root{
  --navy:#003058;--navy-2:#00213d;--navy-3:#0b4a7e;--red:#c41414;--red-2:#9e0f0f;
  --paper:#f4efe8;--paper-2:#ebe3d8;--white:#fff;--ink:#1c2533;--muted:#4f5b69;--line:#e3dbd0;
  --gold:#ffd28a;--yellow:#f2be1a;--green:#1f7a4d;
  --sans:"Benton Sans","Helvetica Neue",Arial,sans-serif;
  --wrap:1220px;--gutter:24px;--radius:16px;--radius-lg:24px;
  --shadow:0 18px 40px rgba(0,48,88,.08);--shadow-lg:0 30px 60px rgba(0,48,88,.18);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;font-family:var(--sans);font-size:18px;line-height:1.6;color:var(--ink);background:var(--white);-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--navy);text-underline-offset:3px}
a:hover{color:var(--red)}
:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}
h1,h2,h3,h4{font-family:var(--sans);font-weight:900;color:var(--navy);letter-spacing:-.015em;line-height:1.1;margin:0;text-wrap:balance}
p{margin:0 0 1em}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.skip-link:focus{position:fixed;top:8px;left:8px;z-index:9999;width:auto;height:auto;clip:auto;background:#fff;padding:12px 18px;border-radius:8px}
.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 var(--gutter)}
.narrow{max-width:760px}
.ico{width:1em;height:1em;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;vertical-align:-.15em}
.section{padding-block:64px}
.section--paper{background:var(--paper)}
.section--navy{background:var(--navy);color:#fff}
.section--navy h2,.section--navy h3{color:#fff}
@media(max-width:767px){:root{--gutter:18px}.section{padding-block:44px}}

/* labels (content type) */
.label{display:inline-flex;align-items:center;gap:6px;font-weight:900;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--red);line-height:1.2}
.label--test{color:#fff;background:var(--red);padding:5px 10px;border-radius:6px}
.label--inchiesta{color:#fff;background:var(--navy);padding:5px 10px;border-radius:6px}
.label--notizia{color:var(--navy);background:var(--paper-2);padding:5px 10px;border-radius:6px}
.label--richiamo{color:#7a4a00;background:#ffe7b3;padding:5px 10px;border-radius:6px}
.eyebrow{font-weight:900;font-size:14px;letter-spacing:.16em;text-transform:uppercase;color:var(--red)}
.section--navy .eyebrow{color:var(--gold)}
.meta{font-size:15px;color:var(--muted);display:flex;flex-wrap:wrap;gap:4px 12px;align-items:center}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 26px;border-radius:999px;background:var(--red);color:#fff!important;font-weight:900;font-size:17px;text-decoration:none;border:0;cursor:pointer;box-shadow:0 12px 26px rgba(196,20,20,.28);transition:transform .2s,background .2s}
.btn:hover{background:var(--red-2);transform:translateY(-2px)}
.btn--yellow{background:var(--yellow);color:var(--navy)!important;box-shadow:0 10px 22px rgba(242,190,26,.35)}
.btn--yellow:hover{background:#ffcd33}
.btn--ghost{background:transparent;color:var(--navy)!important;border:2px solid var(--navy);box-shadow:none}
.btn--ghost:hover{background:var(--navy);color:#fff!important}
.section--navy .btn--ghost{color:#fff!important;border-color:rgba(255,255,255,.6)}
.btn--sm{min-height:44px;padding:0 18px;font-size:15px}
.link-arrow{font-weight:900;text-decoration:none;display:inline-flex;align-items:center;gap:6px}

/* ---------- top bar + header ---------- */
.topbar{background:var(--navy-2);color:#dce5ee;font-size:14px}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:40px}
.topbar a{color:#fff;text-decoration:none;font-weight:700}
.topbar a:hover{color:var(--gold)}
.topbar .issue-note b{color:var(--gold)}
@media(max-width:767px){.topbar .hide-sm{display:none}}
.site-header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50}
.site-header .wrap{display:flex;align-items:center;gap:22px;min-height:84px}
.brand img{height:60px;width:auto} /* +30%, Matteo Fago 28/09: «il logo è un po' piccolo» */
.primary-nav{flex:1}
.primary-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:4px;justify-content:center;flex-wrap:wrap}
.primary-nav a{display:block;padding:10px 12px;font-weight:700;font-size:16px;color:var(--navy);text-decoration:none;border-radius:10px}
.primary-nav a:hover,.primary-nav .current-menu-item>a,.primary-nav .current-menu-ancestor>a{background:var(--paper);color:var(--red)}
.header-actions{display:flex;align-items:center;gap:10px}
.icon-btn{width:46px;height:46px;border-radius:50%;border:1.5px solid var(--line);background:#fff;display:grid;place-items:center;color:var(--navy);cursor:pointer;font-size:20px}
.icon-btn:hover{border-color:var(--navy)}
.menu-toggle{display:none}
.search-panel{display:none;border-top:1px solid var(--line);background:var(--paper)}
.search-panel.open{display:block}
.search-form{display:flex;gap:10px;padding:18px 0}
.search-form input[type=search]{flex:1;min-height:52px;border:2px solid var(--line);border-radius:999px;padding:0 22px;font:inherit;font-size:18px}
@media(max-width:1060px){
  .primary-nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--line);box-shadow:var(--shadow)}
  .primary-nav.open{display:block}
  .primary-nav ul{flex-direction:column;padding:10px var(--gutter) 18px}
  .primary-nav a{padding:14px 12px;font-size:19px;border-bottom:1px solid var(--paper)}
  .menu-toggle{display:grid}
  .site-header .wrap{justify-content:space-between}
  .brand img{height:46px}
}
@media(max-width:420px){.header-actions .btn{padding:0 14px;font-size:15px}.header-actions .search-toggle{display:none}}

/* ---------- cards ---------- */
.card{display:flex;flex-direction:column;gap:10px;text-decoration:none;color:var(--ink)}
.card__img{position:relative;border-radius:var(--radius);overflow:hidden;aspect-ratio:16/10;background:var(--paper-2)}
.card__img img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.card:hover .card__img img{transform:scale(1.04)}
.card__img .label{position:absolute;top:12px;left:12px}
.card__title{font-weight:900;font-size:21px;line-height:1.2;color:var(--navy);margin:0}
.card:hover .card__title{color:var(--red)}
.card__excerpt{font-size:16px;color:var(--muted);margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.card--h{flex-direction:row;gap:14px;align-items:flex-start}
.card--h .card__img{flex:0 0 120px;aspect-ratio:1/1;border-radius:12px}
.card--h .card__title{font-size:18px}
.grid{display:grid;gap:28px}
.grid--3{grid-template-columns:repeat(3,1fr)}
.grid--4{grid-template-columns:repeat(4,1fr)}
@media(max-width:1000px){.grid--4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:767px){.grid--3,.grid--4{grid-template-columns:1fr}.grid{gap:22px}}
.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:26px;flex-wrap:wrap}
.section-head h2{font-size:clamp(28px,3.2vw,40px)}
.section-head .link-arrow{font-size:16px}

/* ---------- home: lead ---------- */
.lead{padding:34px 0 50px}
.lead__grid{display:grid;grid-template-columns:2fr 1fr;gap:34px}
.lead__main{display:flex;flex-direction:column;gap:16px;text-decoration:none;color:var(--ink)}
.lead__main .card__img{aspect-ratio:16/9;border-radius:var(--radius-lg)}
.lead__main h1,.lead__main h2{font-size:clamp(32px,4vw,52px)}
.lead__main:hover h1,.lead__main:hover h2{color:var(--red)}
.lead__main .standfirst{font-size:20px;color:var(--muted);margin:0}
.evidenza{border-left:1px solid var(--line);padding-left:28px;display:flex;flex-direction:column;gap:18px}
.evidenza h2{font-size:15px;letter-spacing:.16em;text-transform:uppercase;color:var(--red);font-weight:900}
.evidenza .card{padding-bottom:18px;border-bottom:1px solid var(--line)}
.evidenza .card:last-child{border-bottom:0}
@media(max-width:900px){.lead__grid{grid-template-columns:1fr}.evidenza{border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:22px}}

/* ultime notizie strip */
.latest{background:var(--paper);padding:26px 0}
.latest__list{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;list-style:none;margin:0;padding:0}
.latest__list li{border-left:3px solid var(--red);padding-left:14px}
.latest__list time{display:block;font-size:14px;font-weight:700;color:var(--red)}
.latest__list a{font-weight:700;font-size:17px;line-height:1.3;text-decoration:none;color:var(--navy)}
.latest__list a:hover{color:var(--red)}
@media(max-width:900px){.latest__list{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.latest__list{grid-template-columns:1fr}}

/* ---------- issue band ---------- */
.issue-band{background:var(--navy);color:#fff;overflow:hidden;position:relative}
.issue-band::before{content:"";position:absolute;inset:0;background:radial-gradient(90% 90% at 85% 20%,var(--navy-3) 0%,transparent 60%)}
.issue-band .wrap{position:relative;display:grid;grid-template-columns:auto 1fr;gap:56px;align-items:center;padding-top:60px;padding-bottom:60px}
.issue-band .cover{width:280px;border-radius:6px;box-shadow:0 30px 60px rgba(0,0,0,.45);transform:rotate(-2deg)}
.issue-band h2{color:#fff;font-size:clamp(30px,3.6vw,46px);margin:10px 0 16px}
.issue-band ul{list-style:none;margin:0 0 26px;padding:0;display:flex;flex-direction:column;gap:10px}
.issue-band li{display:flex;gap:12px;font-size:18px;color:#dce5ee}
.issue-band li b{color:#fff}
.issue-band li .ico{color:var(--gold);margin-top:4px}
.issue-band .ctas{display:flex;flex-wrap:wrap;gap:12px}
@media(max-width:800px){.issue-band .wrap{grid-template-columns:1fr;gap:30px}.issue-band .cover{width:200px;margin:0 auto}}

/* ---------- test cards ---------- */
.test-card{position:relative;display:flex;flex-direction:column;background:#fff;border:1.5px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;text-decoration:none;color:var(--ink);transition:transform .25s,box-shadow .25s}
.test-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.test-card__img{aspect-ratio:16/10;background:var(--paper-2);position:relative;overflow:hidden}
.test-card__img img{width:100%;height:100%;object-fit:cover}
.test-card__num{position:absolute;left:14px;bottom:14px;background:var(--red);color:#fff;border-radius:12px;padding:8px 12px;font-weight:900;font-size:26px;line-height:1}
.test-card__num small{font-size:13px;font-weight:700;margin-left:4px}
.test-card__body{padding:20px 20px 22px;display:flex;flex-direction:column;gap:10px;flex:1}
.test-card h3{font-size:21px;line-height:1.2}
.test-card .facts{font-size:15px;color:var(--muted);margin:0}
.lockline{margin-top:auto;display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:12px;background:var(--paper);font-weight:700;font-size:15px;color:var(--navy)}
.lockline .ico{color:var(--red);font-size:20px}
.areas{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-bottom:30px}
.area{display:flex;flex-direction:column;gap:6px;padding:16px;border-radius:16px;background:#fff;border:1.5px solid var(--line);text-decoration:none;color:var(--navy);font-weight:900}
.area span{font-weight:500;font-size:14px;color:var(--muted)}
.area:hover{border-color:var(--red)}
@media(max-width:900px){.areas{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.areas{grid-template-columns:repeat(2,1fr)}}

/* ---------- subscribe band ---------- */
.sub-band{background:var(--navy-2);color:#fff;position:relative;overflow:hidden}
.sub-band__bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.18}
.sub-band .wrap{position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center;padding-top:70px;padding-bottom:70px}
.sub-band h2{color:#fff;font-size:clamp(32px,4vw,52px)}
.sub-band h2 em{font-style:normal;color:var(--gold)}
.sub-band p.lead-p{font-size:20px;color:#dce5ee;margin:18px 0 24px}
.offer{background:#fff;color:var(--ink);border-radius:var(--radius-lg);padding:30px;box-shadow:var(--shadow-lg)}
.offer .price{display:flex;align-items:baseline;gap:10px}
.offer .price b{font-weight:900;font-size:60px;line-height:1;color:var(--navy)}
.offer .price span{color:var(--muted)}
.offer .perday{font-weight:700;color:var(--red);font-size:16px;margin:6px 0 16px}
.checks{list-style:none;margin:0 0 22px;padding:0;display:flex;flex-direction:column;gap:10px}
.checks li{display:flex;gap:10px;font-size:17px;line-height:1.4}
.checks .ico{color:var(--green);font-size:22px;stroke-width:3}
.offer .btn{width:100%}
.offer .fine{font-size:14px;color:var(--muted);text-align:center;margin-top:12px}
.proof{display:flex;gap:18px;flex-wrap:wrap;margin-top:6px;font-size:15px;color:#c9d6e3}
.proof span{display:inline-flex;gap:8px;align-items:center}
.proof .ico{color:var(--gold);font-size:20px}
@media(max-width:900px){.sub-band .wrap{grid-template-columns:1fr}}

/* newsletter */
.newsletter{background:var(--paper)}
.newsletter .wrap{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center}
.newsletter h2{font-size:clamp(26px,3vw,36px)}
.nl-form{display:flex;gap:10px}
.nl-form input{flex:1;min-height:56px;border:2px solid var(--line);border-radius:999px;padding:0 22px;font:inherit;font-size:18px;background:#fff}
@media(max-width:800px){.newsletter .wrap{grid-template-columns:1fr}.nl-form{flex-direction:column}}

/* shop cards */
.product{display:flex;flex-direction:column;gap:10px;text-decoration:none;color:var(--ink);background:#fff;border-radius:var(--radius);padding:16px;border:1.5px solid var(--line)}
.product img{aspect-ratio:3/4;object-fit:contain;background:var(--paper);border-radius:10px}
.product h3{font-size:17px;line-height:1.25}
.product .p-price{font-weight:900;font-size:22px;color:var(--red);margin-top:auto}
.product:hover{border-color:var(--red)}

/* ---------- article ---------- */
.article-head{padding:40px 0 10px}
.breadcrumb{font-size:15px;color:var(--muted);margin-bottom:16px}
.breadcrumb a{color:var(--muted)}
.article-head h1{font-size:clamp(34px,4.4vw,54px);margin:14px 0 16px}
.standfirst{font-size:22px;line-height:1.45;color:var(--muted)}
.article-hero{margin:26px auto 10px;max-width:1000px}
.article-hero img{width:100%;border-radius:var(--radius-lg)}
.article-hero figcaption{font-size:14px;color:var(--muted);margin-top:8px}
.article-layout{display:grid;grid-template-columns:minmax(0,700px) 300px;gap:60px;justify-content:center;padding:26px var(--gutter) 60px;max-width:var(--wrap);margin:0 auto}
.entry{font-size:20px;line-height:1.7}
.entry p{margin:0 0 1.1em}
.entry h2{font-size:30px;margin:1.6em 0 .6em}
.entry h3{font-size:24px;margin:1.4em 0 .5em}
.entry a{color:var(--red)}
.entry img{border-radius:12px;margin:1em 0}
.entry blockquote{margin:1.4em 0;padding:4px 0 4px 22px;border-left:4px solid var(--red);font-size:22px;font-weight:700;color:var(--navy)}
.entry ul,.entry ol{padding-left:1.2em}
.entry li{margin-bottom:.4em}
.teaser-box{margin:34px 0;border-radius:var(--radius-lg);background:var(--paper);padding:26px;display:grid;grid-template-columns:120px 1fr;gap:22px;align-items:center;border:1.5px solid var(--line)}
.teaser-box img{border-radius:6px;box-shadow:0 12px 26px rgba(0,0,0,.2);transform:rotate(-3deg)}
.teaser-box h3{font-size:22px;margin:4px 0 8px}
.teaser-box p{font-size:17px;color:var(--muted);margin:0 0 14px}
.teaser-box .ctas{display:flex;flex-wrap:wrap;gap:10px}
@media(max-width:560px){.teaser-box{grid-template-columns:1fr}.teaser-box img{width:120px}}
.trust-note{display:flex;gap:12px;align-items:flex-start;font-size:16px;color:var(--muted);border-top:1px solid var(--line);padding-top:18px;margin-top:30px}
.trust-note .ico{color:var(--navy);font-size:24px}
.share{display:flex;gap:10px;margin:26px 0}
.share a{min-height:44px;padding:0 16px;border-radius:999px;border:1.5px solid var(--line);display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-weight:700;font-size:15px}
.aside-box{position:sticky;top:100px;display:flex;flex-direction:column;gap:22px}
.aside-card{border-radius:var(--radius);background:var(--navy);color:#fff;padding:22px}
.aside-card h3{color:#fff;font-size:20px;margin:6px 0 10px}
.aside-card p{color:#c9d6e3;font-size:15px}
.aside-card .btn{width:100%}
.aside-list{border:1.5px solid var(--line);border-radius:var(--radius);padding:18px}
.aside-list h3{font-size:15px;letter-spacing:.14em;text-transform:uppercase;color:var(--red);margin-bottom:12px}
.aside-list a{display:block;font-weight:700;font-size:16px;line-height:1.3;text-decoration:none;padding:10px 0;border-bottom:1px solid var(--line)}
.aside-list a:last-child{border-bottom:0}
@media(max-width:1000px){.article-layout{grid-template-columns:minmax(0,1fr)}.aside-box{position:static}}

/* archive */
.archive-head{background:var(--paper);padding:44px 0 34px}
.archive-head h1{font-size:clamp(34px,4vw,50px);margin-top:8px}
.archive-head p{font-size:19px;color:var(--muted);max-width:720px;margin:12px 0 0}
.pagination{display:flex;gap:8px;justify-content:center;margin-top:40px;flex-wrap:wrap}
.pagination .page-numbers{min-width:48px;height:48px;display:grid;place-items:center;border-radius:12px;border:1.5px solid var(--line);text-decoration:none;font-weight:700;padding:0 12px}
.pagination .current{background:var(--navy);color:#fff;border-color:var(--navy)}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.chips a{padding:8px 14px;border-radius:999px;background:#fff;border:1.5px solid var(--line);text-decoration:none;font-weight:700;font-size:15px}
.chips a.on,.chips a:hover{background:var(--navy);color:#fff;border-color:var(--navy)}

/* issue archive */
.issues{display:grid;grid-template-columns:repeat(6,1fr);gap:24px}
.issue-tile{text-decoration:none;color:var(--ink);display:flex;flex-direction:column;gap:10px}
.issue-tile img{border-radius:6px;box-shadow:0 14px 30px rgba(0,48,88,.2);aspect-ratio:3/4.1;object-fit:cover;transition:transform .3s}
.issue-tile:hover img{transform:translateY(-6px) rotate(-1deg)}
.issue-tile b{font-size:16px;color:var(--navy)}
@media(max-width:1000px){.issues{grid-template-columns:repeat(4,1fr)}}
@media(max-width:600px){.issues{grid-template-columns:repeat(2,1fr)}}

/* test single */
.test-head{background:var(--navy);color:#fff;padding:44px 0}
.test-head h1{color:#fff;font-size:clamp(34px,4.4vw,54px);margin:12px 0}
.test-head .facts-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}
.fact{background:rgba(255,255,255,.08);border-radius:14px;padding:12px 16px;font-size:15px;color:#c9d6e3}
.fact b{display:block;color:#fff;font-size:22px;font-weight:900}
.locked-table{border:1.5px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;margin:26px 0}
.locked-table .row{display:grid;grid-template-columns:1fr auto;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line);align-items:center;font-size:17px}
.locked-table .row:last-child{border-bottom:0}
.locked-table .row .lock{display:inline-flex;align-items:center;gap:8px;background:var(--paper);border-radius:999px;padding:6px 12px;font-weight:700;font-size:14px;color:var(--navy)}
.locked-table .row .lock .ico{color:var(--red)}
.unlock{background:var(--paper);border-radius:var(--radius-lg);padding:26px;text-align:center}
.unlock h3{font-size:24px;margin-bottom:8px}
.unlock .ctas{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:14px}

/* footer */
.site-footer{background:var(--navy-2);color:#b8c7d6;font-size:15px}
.footer-top{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:34px;padding:56px 0 40px}
.site-footer h3{color:#fff;font-size:15px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:14px}
.site-footer ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.site-footer a{color:#dce5ee;text-decoration:none}
.site-footer a:hover{color:var(--gold)}
.phone{display:inline-flex;align-items:center;gap:12px;background:rgba(255,255,255,.08);border-radius:16px;padding:14px 18px;margin-top:16px}
.phone b{display:block;color:#fff;font-size:22px}
.phone .ico{font-size:28px;color:var(--gold)}
.footer-legal{border-top:1px solid rgba(255,255,255,.12);padding:22px 0 30px;font-size:13px;color:#8fa3b7}
@media(max-width:900px){.footer-top{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.footer-top{grid-template-columns:1fr}}

/* sticky subscribe (mobile) */
.sticky-sub{position:fixed;left:0;right:0;bottom:0;z-index:60;display:none;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:#fff;box-shadow:0 -10px 30px rgba(0,0,0,.15);transform:translateY(110%);transition:transform .35s}
.sticky-sub.show{transform:none}
.sticky-sub p{margin:0;font-size:13px;line-height:1.3;color:var(--muted)}
.sticky-sub p b{display:block;color:var(--navy);font-size:16px}
.sticky-sub .close{background:none;border:0;font-size:22px;color:var(--muted);cursor:pointer;width:40px;height:40px}
@media(max-width:767px){.sticky-sub{display:flex}body{padding-bottom:0}}

/* reveal */
.js .rv{opacity:0;transform:translateY(22px);transition:opacity .6s cubic-bezier(.2,.7,.2,1),transform .6s cubic-bezier(.2,.7,.2,1)}
.js .rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.js .rv{opacity:1;transform:none}}

/* WooCommerce light touch */
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(4,1fr);gap:24px}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none!important}
.woocommerce ul.products li.product{width:auto!important;margin:0!important;background:#fff;border:1.5px solid var(--line);border-radius:var(--radius);padding:16px!important}
.woocommerce .button,.woocommerce button.button,.woocommerce a.button{background:var(--red)!important;color:#fff!important;border-radius:999px!important;font-weight:900!important;padding:14px 22px!important}
.woocommerce .price{color:var(--red)!important;font-weight:900!important}
@media(max-width:900px){.woocommerce ul.products{grid-template-columns:repeat(2,1fr)}}

/* test card: copertina del numero su fondo navy */
.test-card__img--cover{background:linear-gradient(135deg,var(--navy) 0%,var(--navy-3) 100%);display:flex;align-items:center;justify-content:flex-end;padding:16px 26px}
.test-card__img--cover img{width:auto;height:100%;object-fit:contain;border-radius:3px;box-shadow:0 14px 28px rgba(0,0,0,.4);transform:rotate(3deg);transition:transform .4s}
.test-card:hover .test-card__img--cover img{transform:rotate(0) scale(1.03)}
.test-card__img--cover .test-card__num{left:18px;bottom:auto;top:50%;transform:translateY(-50%);font-size:54px;padding:12px 16px;display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.test-card__img--cover .test-card__num small{margin:0;font-size:14px;letter-spacing:.04em}
.ph{width:100%;height:100%;background:linear-gradient(135deg,var(--paper-2),var(--paper))}
.byline{font-size:15px;color:var(--muted);font-weight:700;margin-top:-.4em}
.issue-band .btn--ghost,.test-head .btn--ghost{color:#fff!important;border-color:rgba(255,255,255,.6)}
.issue-band .btn--ghost:hover{background:#fff;color:var(--navy)!important}
.sub-band__bg{opacity:.07;filter:blur(3px);transform:scale(1.05)}
.entry table{width:100%;border-collapse:collapse;font-size:16px;line-height:1.4;margin:1.4em 0;display:block;overflow-x:auto}
.entry th{background:var(--navy);color:#fff;text-align:left;padding:10px 12px;font-weight:900}
.entry td{padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}
.entry tr:nth-child(even) td{background:var(--paper)}
.entry iframe,.entry video{max-width:100%}
/* newsletter: modulo demo + Gravity Forms (Keap) */
.nl-form--demo{flex-direction:column;align-items:stretch}
.nl-row{display:flex;gap:10px}
.nl-consent{font-size:14px;color:var(--muted);display:flex;gap:8px;align-items:flex-start;margin-top:10px;line-height:1.4}
.nl-consent input{width:20px;height:20px;margin-top:1px;flex-shrink:0}
.nl-note{font-size:13px;color:var(--muted);margin:6px 0 0}
@media(max-width:800px){.nl-row{flex-direction:column}}
.nl-box .gform_wrapper{margin:0!important}
.nl-box .gform_wrapper .gform_title,.nl-box .gform_wrapper .gform_description{display:none}
.nl-box .gform_wrapper input[type=text],.nl-box .gform_wrapper input[type=email]{min-height:52px;border:2px solid var(--line)!important;border-radius:12px!important;padding:0 16px!important;font:inherit!important;font-size:17px!important;background:#fff}
.nl-box .gform_wrapper .gfield_label,.nl-box .gform_wrapper label{font-family:var(--sans)!important;font-size:15px!important;color:var(--ink)!important}
.nl-box .gform_wrapper .gfield_consent_label,.nl-box .gform_wrapper .ginput_container_consent label{font-weight:400!important;color:var(--muted)!important;font-size:14px!important}
.nl-box .gform_wrapper .gform_footer input[type=submit],.nl-box .gform_wrapper .gform_footer button{background:var(--red)!important;color:#fff!important;border:0!important;border-radius:999px!important;min-height:52px;padding:0 28px!important;font-family:var(--sans)!important;font-weight:900!important;font-size:17px!important;cursor:pointer}
.woo-wrap .woocommerce-breadcrumb{font-size:15px;color:var(--muted)}
.woo-wrap .product .product_title{display:none}
.woo-wrap .woocommerce-loop-product__title{font-family:var(--sans)!important;font-weight:900;color:var(--navy);font-size:17px!important}
.woo-wrap div.product div.summary .price{font-size:32px!important}
.woo-wrap .single_add_to_cart_button{min-height:52px}
.woo-wrap input.qty{min-height:52px;border:2px solid var(--line);border-radius:12px}
/* schede test: copertina, filtro per numero, testata */
.badge-cover{position:absolute;right:12px;top:12px;background:var(--yellow);color:var(--navy);font-weight:900;font-size:12px;letter-spacing:.08em;text-transform:uppercase;padding:5px 9px;border-radius:6px}
.badge-cover--inline{position:static;display:inline-block;vertical-align:middle;margin-left:6px}
.issue-filter{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:14px;font-weight:700;font-size:15px}
.issue-filter select{min-height:48px;border:2px solid var(--line);border-radius:12px;padding:0 14px;font:inherit;font-weight:500;background:#fff;color:var(--ink)}
.test-head__grid{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center}
.test-head__cover{border-radius:4px;box-shadow:0 26px 50px rgba(0,0,0,.45);transform:rotate(3deg)}
.breadcrumb--dark,.breadcrumb--dark a{color:#c9d6e3}
@media(max-width:767px){.test-head__grid{grid-template-columns:1fr}}
/* prodotti digitali: avviso «niente spedizione» */
.sg-digital-notice{background:#fff7e0;border:2px solid var(--yellow);border-radius:14px;padding:14px 16px;margin:0 0 20px;font-size:17px;line-height:1.45;color:var(--ink)}
.sg-digital-notice strong{color:var(--red);font-weight:900}
.sg-digital-line{font-size:14px;font-weight:700;color:var(--green);margin-top:4px}
#ship-to-different-address{display:none!important}
.sg-ship-title{font-size:20px;margin:18px 0 10px;color:var(--navy)}
.sg-ship-link{display:block!important;width:100%!important;min-height:52px!important;margin:14px 0;padding:12px 16px!important;border:2px dashed var(--navy)!important;border-radius:14px!important;background:#fff!important;color:var(--navy)!important;font-family:var(--sans)!important;font-weight:700!important;font-size:17px!important;line-height:1.35!important;text-align:left!important;cursor:pointer;text-transform:none!important}
.sg-ship-link:hover{background:var(--paper)}

.phone-note{font-size:14px;color:#b8c7d6;margin:10px 0 0;max-width:320px}
.phone-note a{color:#fff;font-weight:700}
.sg-ship-link[hidden],.sg-ship-title[hidden]{display:none!important}

/* ---------- card test (28/09): foto del prodotto, mai la copertina ---------- */
.tcard{display:flex;flex-direction:column;background:#fff;border:1.5px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;transition:transform .25s,box-shadow .25s}
.tcard:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}
.tcard__media{position:relative;display:block;aspect-ratio:3/2;background:var(--paper-2);overflow:hidden}
.tcard__media img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.tcard:hover .tcard__media img{transform:scale(1.04)}
.tcard__tile{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#fff;background:var(--navy)}
.tcard__tile .ico{font-size:54px;stroke-width:1.6;opacity:.9}
.tcard__tile b{font-weight:900;font-size:18px;letter-spacing:.06em;text-transform:uppercase}
.tcard__tile--alimentari{background:#2f6b3f}.tcard__tile--bevande{background:#0b4a7e}.tcard__tile--bambini{background:#8a4b8f}
.tcard__tile--casa{background:#7a5a2e}.tcard__tile--cosmetici{background:#a33b5b}.tcard__tile--tecnologia{background:#3b4a5e}.tcard__tile--auto{background:#5a5f66}
.tcard .badge-cover{top:12px;right:12px}
.tcard__body{display:flex;flex-direction:column;gap:10px;padding:18px 18px 20px;flex:1}
.tcard__labels{display:flex;flex-wrap:wrap;gap:6px}
.tcard__title{font-size:22px;line-height:1.2;margin:2px 0 0}
.tcard__title a{color:var(--navy);text-decoration:none}
.tcard__title a:hover{color:var(--red)}
.tcard__teaser{margin:0;font-size:16px;line-height:1.45;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.tcard__issue{display:flex;align-items:center;gap:10px;margin-top:2px;font-size:15px;color:var(--ink);text-decoration:none}
.tcard__issue img{width:30px;height:40px;object-fit:cover;border-radius:2px;box-shadow:0 2px 6px rgba(0,0,0,.25)}
.tcard__issue:hover b{color:var(--red)}
.tcard__facts{margin:0;font-size:15px;font-weight:700;color:var(--navy)}
.tcard__cta{margin-top:auto;align-self:flex-start;min-height:48px}
/* testata della scheda: foto del prodotto */
.test-hero{margin:0;border-radius:var(--radius-lg);overflow:hidden;aspect-ratio:3/2;max-width:460px;box-shadow:0 26px 50px rgba(0,0,0,.35)}
.test-hero img{width:100%;height:100%;object-fit:cover}
.test-hero .tcard__tile{position:static;height:100%}
.unlock__issue{display:flex;gap:18px;align-items:center;text-align:left;justify-content:center;flex-wrap:wrap}
.unlock__issue img{width:96px;border-radius:3px;box-shadow:0 12px 24px rgba(0,0,0,.25);transform:rotate(-2deg)}
/* fascia del numero: i pezzi con la loro foto */
.issue-band .iqn{list-style:none;margin:0 0 26px;padding:0;display:flex;flex-direction:column;gap:12px}
.issue-band .iqn a{display:flex;gap:14px;align-items:center;color:#fff;text-decoration:none}
.issue-band .iqn img,.issue-band .iqn .ph{width:84px;height:56px;border-radius:8px;object-fit:cover;flex-shrink:0;background:rgba(255,255,255,.12)}
.issue-band .iqn b{font-size:18px;line-height:1.25}
.issue-band .iqn a:hover b{color:var(--gold)}
.tcard__tile--bevande .ico{fill:currentColor;stroke:none}
/* 404 / 410 */
.notfound h1{font-size:clamp(34px,4.4vw,50px);margin:10px 0 14px}
.notfound .search-form{padding:18px 0 8px}
.notfound__links{list-style:none;margin:10px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.notfound__links .btn{width:100%;justify-content:flex-start;min-height:56px}
.notfound__help{margin-top:22px;color:var(--muted)}
@media(max-width:560px){.notfound__links{grid-template-columns:1fr}}
.search-form input[type=search]{min-width:0}
.search-form{flex-wrap:wrap}
.search-form .btn{flex:0 0 auto}
/* pagina-numero (0.3.11) */
.issue-band--page .issue-h1{color:#fff;font-size:clamp(34px,4.4vw,54px);margin:10px 0 12px}
.issue-lead{color:#dce5ee;font-size:19px;margin:0 0 22px;max-width:560px}
.issue-reader{margin:16px 0 0;font-size:16px;color:#c9d6e3}
.issue-reader a{color:#fff;font-weight:700}
.sommario .som-t{font-size:22px;line-height:1.25;margin:28px 0 6px;color:var(--navy)}
.sommario .som-t:first-child{margin-top:0}
.sommario .som-p{font-size:19px;line-height:1.6;margin:0 0 6px;color:var(--ink)}
.sommario .som-by{font-size:15px;font-style:italic;color:var(--muted);margin:0 0 4px}
.issues--4{grid-template-columns:repeat(4,1fr)}
@media(max-width:600px){.issues--4{grid-template-columns:repeat(2,1fr)}}
/* negozio (0.3.12) */
.section-head .sub{margin:8px 0 0;color:var(--muted)}
.year{border-top:1px solid var(--line);padding:6px 0}
.year summary{cursor:pointer;list-style:none;display:flex;gap:10px;align-items:baseline;min-height:52px;padding:12px 0;font-weight:900;font-size:22px;color:var(--navy)}
.year summary::-webkit-details-marker{display:none}
.year summary::before{content:"+";width:24px;color:var(--red)}
.year[open] summary::before{content:"–"}
.year summary span{font-weight:500;font-size:15px;color:var(--muted)}
.year .issues{padding:6px 0 22px}
.issue-tile .p-price{font-weight:900;color:var(--red);font-size:17px}
.product h3{display:block;overflow:visible;white-space:normal;text-overflow:clip;-webkit-line-clamp:unset}
.locked-note{display:flex;gap:12px;align-items:flex-start;background:var(--paper);border-radius:var(--radius);padding:18px 20px;font-size:19px;line-height:1.45;margin:0 0 22px}
.locked-note .ico{color:var(--red);font-size:24px;margin-top:3px}
.nl-lead{margin:0 0 12px;font-size:17px;color:var(--ink)}
/* Aiuto */
.aiuto-q{width:100%;min-height:56px;margin-top:18px;border:2px solid var(--line);border-radius:14px;padding:0 18px;font:inherit;font-size:19px;background:#fff}
.aiuto-group h2{font-size:22px;margin:0 0 10px}
.aiuto-group{margin-bottom:30px}
.aiuto-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.aiuto-list a{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:56px;padding:12px 4px;border-bottom:1px solid var(--line);font-weight:700;font-size:19px;color:var(--navy);text-decoration:none}
.aiuto-list a:hover{color:var(--red)}
.aiuto-entry ol,.aiuto-entry ul{padding-left:1.3em}
.aiuto-entry li{margin-bottom:.5em}
.aiuto-close{margin-top:30px;background:var(--paper);border-radius:var(--radius);padding:18px 20px;font-size:18px}
.aiuto-close p{margin:0 0 6px}
mark.sg-todo{background:#fff1a8;color:#5a4300;padding:1px 4px;border-radius:4px;font-size:.9em}
/* apertura home: il test del mese */
.tlead{background:var(--paper);padding:34px 0 40px;border-bottom:1px solid var(--line)}
.tlead__grid{display:grid;grid-template-columns:1.15fr 1fr;gap:40px;align-items:center}
.tlead__media{display:block;aspect-ratio:3/2;border-radius:var(--radius-lg);overflow:hidden;background:var(--paper-2);position:relative}
.tlead__media img{width:100%;height:100%;object-fit:cover}
.tlead__body{display:flex;flex-direction:column;gap:14px}
.tlead h1{font-size:clamp(32px,3.8vw,50px);margin:0}
.tlead h1 a{color:var(--navy);text-decoration:none}
.tlead h1 a:hover{color:var(--red)}
.tlead .standfirst{margin:0;font-size:20px}
.tlead .ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:6px}
.lead__main .lead__title{font-size:clamp(28px,3vw,40px)}
@media(max-width:900px){.tlead__grid{grid-template-columns:1fr;gap:20px}.tlead{padding:20px 0 30px}}
/* paywall */
.sg-free{position:relative}
.sg-free::after{content:"";position:absolute;left:0;right:0;bottom:0;height:90px;background:linear-gradient(rgba(255,255,255,0),#fff);pointer-events:none}
.paywall{margin:10px 0 34px;border:2px solid var(--navy);border-radius:var(--radius-lg);padding:24px;background:var(--paper)}
.paywall__lock{display:flex;gap:10px;align-items:center;font-weight:900;font-size:22px;color:var(--navy);margin:0 0 8px}
.paywall__lock .ico{color:var(--red)}
.paywall__rest{margin:0 0 16px;font-size:18px}
.paywall .ctas{display:flex;flex-wrap:wrap;gap:12px}
.paywall__login{margin:14px 0 0;font-size:16px}
/* ---------- Cassa Salvagente: checkout a blocchi (/cassa/) ---------- */
.wc-block-checkout{font-size:18px}
.wc-block-checkout .wc-block-components-title,.wc-block-checkout h2{font-family:var(--sans)!important;font-weight:900!important;color:var(--navy)!important;font-size:22px!important}
.wc-block-checkout .wc-block-components-text-input input,.wc-block-checkout .wc-blocks-components-select__select,.wc-block-checkout .wc-block-components-combobox input{min-height:56px!important;font-size:18px!important;border:2px solid var(--line)!important;border-radius:12px!important}
.wc-block-checkout .wc-block-components-text-input label{font-size:16px!important}
.wc-block-checkout .wc-block-components-checkout-place-order-button{min-height:60px!important;border-radius:999px!important;background:var(--red)!important;color:#fff!important;font-weight:900!important;font-size:20px!important;border:0!important;box-shadow:0 12px 26px rgba(196,20,20,.28)}
.wc-block-checkout .wc-block-components-checkout-place-order-button:hover{background:var(--red-2)!important}
.wc-block-checkout .wc-block-components-express-payment{border-radius:18px}
.wc-block-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{font-weight:900;color:var(--navy);font-size:22px}
.wc-block-checkout .wc-block-components-radio-control__label{font-size:18px}
/* Offerte in cassa (sg/bump): carta con bordo tratteggiato navy, foto vera, prezzo barrato, scelta grande */
.sg-bumps{display:grid;gap:16px;margin:8px 0 24px}
.sg-bumps.is-busy{opacity:.6;pointer-events:none}
.sg-bump{border:2px dashed var(--navy);border-radius:var(--radius);background:var(--white);padding:16px;display:grid;gap:14px}
.sg-bump.is-chosen{border-style:solid;box-shadow:var(--shadow)}
.sg-bump__head{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:start}
.sg-bump__img{width:84px;height:84px;object-fit:cover;border-radius:12px;background:var(--paper)}
.sg-bump__title{margin:0 0 4px;font-weight:900;color:var(--navy);font-size:19px;line-height:1.2}
.sg-bump__text{margin:0;font-size:16px;color:var(--ink);line-height:1.4}
.sg-bump__choices{display:grid;gap:8px}
.sg-bump__choice{display:grid;grid-template-columns:28px 1fr auto;gap:10px;align-items:center;min-height:56px;padding:10px 14px;border:2px solid var(--line);border-radius:12px;background:#fff7e0;cursor:pointer;font-size:17px}
.sg-bump__choice.is-on{border-color:var(--navy);background:var(--white)}
.sg-bump__choice input{width:24px;height:24px;margin:0;accent-color:var(--navy)}
.sg-bump__choice--yes .sg-bump__label{font-weight:900;color:var(--navy)}
.sg-bump__price{white-space:nowrap;text-align:right}
.sg-bump__price s{color:var(--muted);font-size:15px}
.sg-bump__price strong{color:var(--red);font-weight:900}
@media(max-width:420px){.sg-bump__choice{grid-template-columns:28px 1fr}.sg-bump__price{grid-column:2;text-align:left}}
/* Pagina di grazie (C5): prima si legge, poi il riepilogo */
.sg-grazie{display:grid;gap:22px;font-size:18px}
.sg-grazie__ok{margin:0 0 6px;color:var(--green);font-weight:700;font-size:16px;display:flex;align-items:center;gap:8px}
.sg-grazie__title{margin:0 0 8px;color:var(--navy);font-weight:900;font-size:clamp(28px,6vw,40px);line-height:1.1;text-wrap:balance}
.sg-grazie__lead{margin:0;color:var(--muted)}
.sg-leggi{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.sg-leggi__row{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:center;background:var(--white);border:1.5px solid var(--line);border-radius:var(--radius-lg);padding:16px;box-shadow:var(--shadow)}
.sg-leggi__img{width:88px;height:auto;max-height:120px;object-fit:cover;border-radius:10px;background:var(--paper)}
.sg-leggi__body{display:grid;gap:10px;justify-items:start;min-width:0}
.sg-leggi__title{margin:0;font-weight:900;color:var(--navy);font-size:20px;line-height:1.2}
.sg-leggi__btn{min-height:56px;font-size:18px}
.sg-leggi__note{margin:0;font-size:16px;color:var(--ink)}
.sg-grazie__info{background:var(--paper);border-radius:var(--radius);padding:16px 18px;font-size:16px}
.sg-grazie__info p{margin:0 0 8px}.sg-grazie__info p:last-child{margin:0}
.sg-grazie__riepilogo{border-top:1.5px solid var(--line);padding-top:12px}
.sg-grazie__riepilogo summary{cursor:pointer;font-weight:700;color:var(--navy);min-height:44px;display:flex;align-items:center}
.sg-grazie__riepilogo .woocommerce-order-overview{list-style:none;padding:0;margin:8px 0 16px;display:grid;gap:4px;font-size:16px}
@media(max-width:480px){.sg-leggi__row{grid-template-columns:64px 1fr}.sg-leggi__img{width:64px}.sg-leggi__btn{width:100%;justify-content:center}}
.sg-ship-note{margin:0 0 14px;padding:12px 14px;border-left:4px solid var(--navy);background:#fff7e0;border-radius:8px;font-size:17px;font-weight:700;color:var(--navy)}
.sg-grazie__entra{display:grid;gap:12px;justify-items:start;background:#fff7e0;border:2px solid var(--yellow);border-radius:var(--radius);padding:16px 18px}
.sg-grazie__entra p{margin:0}
/* Cassa a blocchi: larghezza piena e riepilogo leggibile (nomi che non si spezzano lettera per lettera) */
.wrap--cassa{max-width:1100px}
.wc-block-components-order-summary-item__description{min-width:0}
.wc-block-components-order-summary-item .wc-block-components-product-name{word-break:normal;overflow-wrap:break-word;hyphens:auto}
.wc-block-components-order-summary-item__total-price{white-space:nowrap}
.wc-block-components-order-summary-item .wc-block-components-sale-badge{white-space:normal;text-align:right}
/* Già cliente non collegato (cassa): riquadro neutro, non un errore; pagamento in attesa dell'accesso */
.sg-gate{margin:12px 0 4px;padding:14px 16px;border:1.5px solid var(--line);border-radius:14px;background:var(--paper);display:grid;gap:10px;justify-items:start;font-size:17px;color:var(--ink)}
.sg-gate p{margin:0}
.sg-gate__btn{min-height:52px;padding:0 24px;border:0;border-radius:999px;background:var(--navy);color:#fff;font-weight:900;font-size:17px;cursor:pointer}
.sg-gate__btn:disabled{opacity:.6}
.sg-gate-on .wc-block-components-checkout-place-order-button{opacity:.35;pointer-events:none}
