/* =========================================================================
   Savorita Blog — Article, Archive, Magazine e i blocchi Savorita.
   Specifica: docs/blog.md · Mockup: mockups/blog/

   Regole di scrittura (le stesse degli altri widget Savorita):
   - ogni selettore parte da .sv-blog.sv-blog (specificità raddoppiata: il
     kit di Elementor veste titoli e bottoni con due classi più un elemento)
   - responsive a contenitore: i contenitori sono le sezioni interne
     (.svb-in), non la radice, che tiene la capsula fissa del telefono
   - niente !important su display; [hidden] vince sempre
   - link e bottoni si vestono da data-svb, mai dalla classe del <a>
   ========================================================================= */

/* ---------- radice, gettoni e azzeramenti ---------- */
.sv-blog.sv-blog{
  color-scheme:light;
  --green:#087F23; --green-d:#066a1d; --green-l:#61C685; --green-s:#E9F4EC; --red:#EC1B30; --gold:#D39D00; --gold-s:#FBF3DC;
  --ink:#293241; --muted:#6B8083; --line:rgba(41,50,65,.12); --soft:#F4F6F3; --paper:#FFFFFF;
  --f-head:"Nunito","Segoe UI",system-ui,sans-serif;
  --f-body:"Nunito Sans","Nunito","Segoe UI",system-ui,sans-serif;
  --hdr:var(--sv-bar-h,72px); --r:16px; --gut:16px;
  width:100%; color:var(--ink); background:transparent; font-family:var(--f-body); font-size:16px; line-height:1.5; text-align:left;
  -webkit-font-smoothing:antialiased;
}
@media (min-width:700px){ .sv-blog.sv-blog{ --gut:32px; } }
.sv-blog.sv-blog *{ box-sizing:border-box; }
.sv-blog.sv-blog :is(h1,h2,h3,h4,p,ul,ol,li,figure,figcaption,blockquote,dl,dt,dd){ margin:0; padding:0; text-transform:none; letter-spacing:inherit; color:inherit; }
.sv-blog.sv-blog :is(h1,h2,h3,h4){ font-family:var(--f-head); text-wrap:balance; line-height:1.15; font-weight:900; }
.sv-blog.sv-blog :is(ul,ol){ list-style:none; }
.sv-blog.sv-blog img{ max-width:100%; height:auto; display:block; border:0; box-shadow:none; }
.sv-blog.sv-blog a{ color:inherit; text-decoration:none; }
html .sv-blog.sv-blog button{
  font:inherit; color:inherit; background:none; border:0; padding:0; margin:0; cursor:pointer; box-shadow:none;
  text-transform:none; letter-spacing:inherit; line-height:inherit; min-height:0; white-space:normal; word-spacing:normal;
  text-align:inherit; -webkit-tap-highlight-color:transparent; border-radius:0;
}
.sv-blog.sv-blog :focus-visible{ outline:3px solid var(--gold); outline-offset:2px; }
.sv-blog.sv-blog [hidden][hidden][hidden]{ display:none; }
@media (prefers-reduced-motion:reduce){ .sv-blog.sv-blog *{ transition:none; animation:none; } }

.sv-blog.sv-blog .svb-in{ width:100%; max-width:1200px; margin-inline:auto; padding-left:max(var(--gut),env(safe-area-inset-left,0px)); padding-right:max(var(--gut),env(safe-area-inset-right,0px)); container-type:inline-size; }
.sv-blog.sv-blog .svb-note{ padding:14px 18px; border:2px dashed var(--line); border-radius:12px; color:var(--muted); font-weight:700; }

/* ---------- pezzi comuni ---------- */
.sv-blog.sv-blog .svb-eyebrow{ font-family:var(--f-head); font-weight:800; font-size:12.5px; letter-spacing:.12em; text-transform:uppercase; color:var(--green); }
.sv-blog.sv-blog .svb-crumbs{ display:flex; flex-wrap:wrap; gap:6px; font-size:13.5px; font-weight:600; color:var(--muted); }
.sv-blog.sv-blog .svb-crumbs a:hover{ color:var(--green); }
.sv-blog.sv-blog a[data-svb="btn"]{ display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:46px; padding:0 22px; border-radius:999px; background:var(--green); color:#fff; font-family:var(--f-head); font-weight:900; font-size:16px; line-height:1.1; text-align:center; word-spacing:normal; transition:background .15s,transform .15s; }
.sv-blog.sv-blog a[data-svb="btn"]:hover{ background:var(--green-d); color:#fff; }
.sv-blog.sv-blog a[data-svb="btn"]:active{ transform:scale(.97); }
.sv-blog.sv-blog a[data-svb="btn"][data-k="light"]{ background:#fff; color:var(--green); }
.sv-blog.sv-blog a[data-svb="btn"][data-k="ghost"]{ background:transparent; color:inherit; box-shadow:inset 0 0 0 1.5px currentColor; }
.sv-blog.sv-blog a[data-svb="more"]{ font-family:var(--f-head); font-weight:800; font-size:15px; color:var(--green); white-space:nowrap; }
.sv-blog.sv-blog a[data-svb="more"]::after{ content:" \2192"; }
.sv-blog.sv-blog .svb-sec-h{ display:flex; align-items:flex-end; justify-content:space-between; gap:12px 20px; flex-wrap:wrap; margin-bottom:18px; }
.sv-blog.sv-blog .svb-sec-h h2{ font-size:clamp(22px,2.4vw,30px); letter-spacing:-.01em; }
.sv-blog.sv-blog .svb-sec-h p{ color:var(--muted); font-weight:600; margin-top:4px; max-width:56ch; }
.sv-blog.sv-blog .svb-flag{ display:inline-block; width:14px; height:10px; margin-right:6px; border-radius:2px; vertical-align:-1px; background:linear-gradient(90deg,#009246 0 33.3%,#fff 33.3% 66.6%,#CE2B37 66.6%); box-shadow:0 0 0 1px var(--line); }
.sv-blog.sv-blog .svb-tri{ display:flex; width:42px; height:4px; border-radius:2px; overflow:hidden; }
.sv-blog.sv-blog .svb-tri i{ flex:1; background:var(--green); }
.sv-blog.sv-blog .svb-tri i + i{ background:#fff; box-shadow:inset 0 0 0 1px var(--line); }
.sv-blog.sv-blog .svb-tri i + i + i{ background:var(--red); box-shadow:none; }
.sv-blog.sv-blog .svb-lbl{ font-size:12px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:var(--muted); }

/* barra delle sezioni */
.sv-blog.sv-blog .svb-navbar{ border-block:1px solid var(--line); padding-block:12px; position:sticky; top:var(--hdr); z-index:5; background:rgba(255,255,255,.92); -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); }
.sv-blog.sv-blog .svb-chips{ display:flex; gap:8px; overflow-x:auto; scrollbar-width:none; padding-block:2px; }
.sv-blog.sv-blog .svb-chips::-webkit-scrollbar{ display:none; }
.sv-blog.sv-blog a[data-svb="chip"]{ flex:none; font-family:var(--f-head); font-weight:800; font-size:14px; padding:8px 14px; border-radius:999px; background:var(--soft); color:var(--ink); white-space:nowrap; }
.sv-blog.sv-blog a[data-svb="chip"]:hover{ background:var(--green-s); }
.sv-blog.sv-blog a[data-svb="chip"][data-it]{ background:#fff; box-shadow:inset 0 0 0 1.5px var(--line); }
.sv-blog.sv-blog a[data-svb="chip"][aria-current="page"]{ background:var(--ink); color:#fff; box-shadow:none; }

/* ---------- card dell'articolo ---------- */
.sv-blog.sv-blog a[data-svb="card"]{ display:flex; flex-direction:column; gap:10px; min-width:0; color:inherit; }
.sv-blog.sv-blog .svb-card-img{ position:relative; display:block; aspect-ratio:1; border-radius:var(--r); overflow:hidden; background:var(--soft); }
.sv-blog.sv-blog .svb-card-img img{ width:100%; height:100%; object-fit:cover; transition:transform .4s; }
.sv-blog.sv-blog a[data-svb="card"]:hover .svb-card-img img{ transform:scale(1.03); }
.sv-blog.sv-blog .svb-card-ph{ position:absolute; inset:0; display:grid; place-items:end start; padding:16px; background:var(--green-s); }
.sv-blog.sv-blog .svb-card-ph b{ font-family:var(--f-head); font-weight:900; font-size:clamp(20px,2vw,26px); line-height:1.05; color:var(--green); max-width:8ch; }
.sv-blog.sv-blog .svb-card-ph[data-c="market-insights"]{ background:#E7ECF4; } .sv-blog.sv-blog .svb-card-ph[data-c="market-insights"] b{ color:#33507a; }
.sv-blog.sv-blog .svb-card-ph[data-c="buyer-guides"]{ background:var(--gold-s); } .sv-blog.sv-blog .svb-card-ph[data-c="buyer-guides"] b{ color:#7a5a00; }
.sv-blog.sv-blog .svb-card-ph[data-c="food-trends-culture"]{ background:#F6E9E4; } .sv-blog.sv-blog .svb-card-ph[data-c="food-trends-culture"] b{ color:#9b3b22; }
.sv-blog.sv-blog .svb-card-brand{ position:absolute; left:10px; bottom:10px; font-family:var(--f-head); font-weight:900; font-size:12.5px; color:var(--ink); background:rgba(255,255,255,.9); border-radius:999px; padding:5px 10px; }
.sv-blog.sv-blog .svb-card-body{ display:grid; gap:8px; min-width:0; }
.sv-blog.sv-blog .svb-card-meta{ display:flex; align-items:center; flex-wrap:wrap; gap:4px 10px; font-size:12.5px; font-weight:700; color:var(--muted); }
.sv-blog.sv-blog .svb-card-meta .svb-eyebrow{ font-size:11.5px; }
.sv-blog.sv-blog .svb-pick{ font-family:var(--f-head); font-weight:900; font-size:11.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--green); background:var(--green-s); border-radius:6px; padding:4px 8px; }
.sv-blog.sv-blog .svb-card-t{ font-family:var(--f-head); font-size:19px; font-weight:900; line-height:1.18; letter-spacing:-.005em; text-wrap:balance; transition:color .15s; }
.sv-blog.sv-blog a[data-svb="card"]:hover .svb-card-t{ color:var(--green); }
.sv-blog.sv-blog .svb-card-ex{ color:var(--muted); font-size:15px; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.sv-blog.sv-blog a[data-svb="card"][data-svb-v="lead"]{ display:grid; grid-template-columns:minmax(0,1fr); gap:16px; }
.sv-blog.sv-blog a[data-svb="card"][data-svb-v="lead"] .svb-card-t{ font-size:clamp(24px,3vw,34px); }
.sv-blog.sv-blog a[data-svb="card"][data-svb-v="lead"] .svb-card-ex{ font-size:17px; -webkit-line-clamp:4; }
.sv-blog.sv-blog a[data-svb="card"][data-svb-v="row"]{ display:grid; grid-template-columns:92px minmax(0,1fr); gap:14px; align-items:start; }
.sv-blog.sv-blog a[data-svb="card"][data-svb-v="row"] .svb-card-img{ border-radius:12px; }
.sv-blog.sv-blog a[data-svb="card"][data-svb-v="row"] .svb-card-t,
.sv-blog.sv-blog a[data-svb="card"][data-svb-v="tiny"] .svb-card-t{ font-size:16.5px; }
.sv-blog.sv-blog a[data-svb="card"][data-svb-v="row"] :is(.svb-card-ex,.svb-card-brand),
.sv-blog.sv-blog a[data-svb="card"][data-svb-v="tiny"] .svb-card-ex{ display:none; }
.sv-blog.sv-blog a[data-svb="card"][data-svb-v="row"] .svb-card-ph{ padding:8px; }
.sv-blog.sv-blog a[data-svb="card"][data-svb-v="row"] .svb-card-ph b{ font-size:11px; }

/* ===================================================================
   ARTICOLO
   =================================================================== */
.sv-blog.sv-blog .svb-prog{ position:sticky; top:var(--hdr); z-index:6; height:3px; margin-bottom:-3px; }
.sv-blog.sv-blog .svb-prog i{ display:block; height:100%; width:0; background:var(--green-l); }
.sv-blog.sv-blog .svb-top{ padding-block:20px 8px; }
.sv-blog.sv-blog .svb-open{ display:grid; gap:22px; margin-top:16px; }
.sv-blog.sv-blog .svb-open-t{ display:flex; flex-direction:column; align-items:flex-start; gap:14px; min-width:0; }
.sv-blog.sv-blog .svb-open h1{ font-size:clamp(32px,4.4vw,52px); letter-spacing:-.025em; line-height:1.05; }
.sv-blog.sv-blog .svb-deck{ font-size:clamp(18px,1.8vw,21px); line-height:1.5; color:var(--ink); opacity:.82; max-width:44ch; }
.sv-blog.sv-blog .svb-byline{ display:flex; align-items:center; gap:12px; font-size:14.5px; color:var(--muted); font-weight:600; }
.sv-blog.sv-blog .svb-byline img{ width:44px; height:44px; border-radius:50%; object-fit:cover; background:var(--soft); border:1px solid var(--line); }
.sv-blog.sv-blog .svb-byline b{ color:var(--ink); font-weight:800; }
.sv-blog.sv-blog a[data-svb="bchip"]{ display:inline-flex; align-items:center; gap:10px; padding:6px 14px 6px 6px; border-radius:999px; background:var(--soft); font-weight:700; font-size:14px; }
.sv-blog.sv-blog a[data-svb="bchip"] img{ width:32px; height:32px; border-radius:50%; background:#fff; object-fit:contain; }
.sv-blog.sv-blog a[data-svb="bchip"] b{ font-family:var(--f-head); font-weight:900; }
.sv-blog.sv-blog a[data-svb="bchip"]:hover{ background:var(--green-s); }
.sv-blog.sv-blog .svb-series-l{ font-size:14px; font-weight:700; color:var(--muted); }
.sv-blog.sv-blog a[data-svb="series"]{ color:var(--ink); font-family:var(--f-head); font-weight:900; border-bottom:2px solid var(--green-l); }
.sv-blog.sv-blog .svb-cover{ border-radius:22px; overflow:hidden; aspect-ratio:1; background:var(--soft); }
.sv-blog.sv-blog .svb-cover img{ width:100%; height:100%; object-fit:cover; }
@container (min-width:860px){
  .sv-blog.sv-blog .svb-open{ grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); align-items:center; gap:56px; }
  .sv-blog.sv-blog .svb-cover{ max-width:480px; justify-self:end; width:100%; }
}

.sv-blog.sv-blog .svb-grid{ display:grid; grid-template-columns:minmax(0,1fr); gap:28px; padding-block:28px 40px; }
.sv-blog.sv-blog .svb-main{ display:grid; gap:22px; min-width:0; }
.sv-blog.sv-blog .svb-toc,
.sv-blog.sv-blog .svb-side{ display:none; }
.sv-blog.sv-blog .svb-toc-pill{ border:1px solid var(--line); border-radius:14px; background:var(--paper); }
.sv-blog.sv-blog .svb-toc-pill summary{ list-style:none; display:flex; justify-content:space-between; align-items:center; gap:10px; padding:12px 16px; font-family:var(--f-head); font-weight:900; font-size:15px; cursor:pointer; }
.sv-blog.sv-blog .svb-toc-pill summary::-webkit-details-marker{ display:none; }
.sv-blog.sv-blog .svb-toc-pill summary span{ color:var(--muted); font-weight:700; font-size:13.5px; }
.sv-blog.sv-blog .svb-toc-pill ol{ list-style:decimal; padding:0 16px 14px 34px; display:grid; gap:8px; font-weight:700; font-size:15px; }
@container (min-width:1060px){
  .sv-blog.sv-blog .svb-grid{ grid-template-columns:190px minmax(0,680px) 250px; justify-content:space-between; gap:40px; }
  .sv-blog.sv-blog .svb-toc-pill{ display:none; }
  .sv-blog.sv-blog .svb-toc,
  .sv-blog.sv-blog .svb-side{ display:block; }
  .sv-blog.sv-blog .svb-toc > div,
  .sv-blog.sv-blog .svb-side > div{ position:sticky; top:calc(var(--hdr) + 28px); display:grid; gap:14px; }
}
.sv-blog.sv-blog .svb-toc h2{ font-size:12px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:var(--muted); margin-bottom:0; }
.sv-blog.sv-blog .svb-toc ol{ display:grid; gap:2px; border-left:2px solid var(--line); }
.sv-blog.sv-blog .svb-toc li a{ display:block; padding:6px 0 6px 14px; margin-left:-2px; border-left:2px solid transparent; font-weight:700; font-size:14px; color:var(--muted); line-height:1.35; }
.sv-blog.sv-blog .svb-toc li a:hover{ color:var(--ink); }
.sv-blog.sv-blog .svb-toc li a[aria-current="true"]{ color:var(--green); border-left-color:var(--green); }
.sv-blog.sv-blog .svb-share{ display:flex; flex-wrap:wrap; gap:6px; margin-top:8px; }
.sv-blog.sv-blog .svb-share :is(button,a){ font-family:var(--f-head); font-weight:800; font-size:13px; border-radius:999px; background:var(--soft); padding:7px 12px; }
.sv-blog.sv-blog .svb-share :is(button,a):hover{ background:var(--green-s); }

/* corpo: i blocchi ammessi */
.sv-blog.sv-blog .svb-prose{ min-width:0; font-size:18.5px; line-height:1.72; display:flex; flex-direction:column; gap:22px; }
.sv-blog.sv-blog .svb-prose > *{ margin:0; }
.sv-blog.sv-blog .svb-prose h2{ font-size:clamp(24px,2.6vw,30px); letter-spacing:-.015em; margin-top:22px; scroll-margin-top:calc(var(--hdr) + 20px); }
.sv-blog.sv-blog .svb-prose h3{ font-size:clamp(20px,2vw,23px); margin-top:10px; }
.sv-blog.sv-blog .svb-prose a{ color:var(--green); text-decoration:underline; text-decoration-thickness:1.5px; text-underline-offset:3px; font-weight:700; }
.sv-blog.sv-blog .svb-prose :is(strong,b){ font-weight:700; }
.sv-blog.sv-blog .svb-prose mark{ background:none; color:inherit; }
.sv-blog.sv-blog .svb-prose :is(ul,ol){ padding-left:1.3em; display:grid; gap:8px; }
.sv-blog.sv-blog .svb-prose ul{ list-style:disc; }
.sv-blog.sv-blog .svb-prose ol{ list-style:decimal; }
.sv-blog.sv-blog .svb-prose figcaption{ font-size:13.5px; color:var(--muted); margin-top:8px; font-weight:600; text-align:left; }
.sv-blog.sv-blog .svb-prose .wp-block-image img{ border-radius:var(--r); width:100%; }
.sv-blog.sv-blog .svb-prose hr{ border:0; border-top:1px solid var(--line); margin-block:6px; }
.sv-blog.sv-blog .svb-prose blockquote{ position:relative; padding:30px 0 0; border:0; font-family:var(--f-head); font-weight:800; font-size:clamp(23px,2.4vw,28px); line-height:1.3; letter-spacing:-.01em; color:var(--green); text-wrap:balance; background:none; font-style:normal; }
.sv-blog.sv-blog .svb-prose blockquote::before{ content:"\201C"; position:absolute; top:-14px; left:-2px; font-size:72px; line-height:1; color:var(--green-l); }
.sv-blog.sv-blog .svb-prose blockquote p{ font:inherit; color:inherit; }
.sv-blog.sv-blog .svb-prose blockquote cite{ display:block; margin-top:8px; font-size:14px; font-weight:700; font-style:normal; color:var(--muted); }
.sv-blog.sv-blog .svb-prose .wp-block-media-text{ display:grid; gap:14px 24px; align-items:start; background:none; }
.sv-blog.sv-blog .svb-prose .wp-block-media-text__media img{ border-radius:14px; width:100%; }
.sv-blog.sv-blog .svb-prose .wp-block-media-text__content{ padding:0; }
.sv-blog.sv-blog .svb-prose .wp-block-media-text__content > *{ margin:0; }
.sv-blog.sv-blog .svb-prose .wp-block-media-text.is-small-media{ grid-template-columns:72px minmax(0,1fr); }
@container (min-width:620px){ .sv-blog.sv-blog .svb-prose .wp-block-media-text.is-small-media{ grid-template-columns:120px minmax(0,1fr); } }
@container (max-width:619px){
  .sv-blog.sv-blog .svb-prose .wp-block-media-text.is-stacked-on-mobile:not(.is-small-media){ grid-template-columns:minmax(0,1fr); }
  .sv-blog.sv-blog .svb-prose .wp-block-media-text.is-stacked-on-mobile:not(.is-small-media) > *{ grid-column:1; grid-row:auto; }
}
/* galleria: una fila che scorre, con il contatore */
.sv-blog.sv-blog .svb-prose .wp-block-gallery{ position:relative; display:flex; flex-wrap:nowrap; gap:10px; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; padding:0; }
.sv-blog.sv-blog .svb-prose .wp-block-gallery::-webkit-scrollbar{ display:none; }
.sv-blog.sv-blog .svb-prose .wp-block-gallery > figure.wp-block-image{ flex:none; width:min(78%,420px); margin:0; scroll-snap-align:start; }
.sv-blog.sv-blog .svb-prose .wp-block-gallery > figure.wp-block-image img{ aspect-ratio:1; object-fit:cover; height:auto; }
.sv-blog.sv-blog .svb-gal{ position:relative; }
.sv-blog.sv-blog .svb-gal-n{ position:absolute; top:12px; left:12px; z-index:2; font-family:var(--f-head); font-weight:900; font-size:13px; background:rgba(41,50,65,.75); color:#fff; border-radius:999px; padding:4px 10px; pointer-events:none; }

/* etichette dei tag */
.sv-blog.sv-blog .svb-tagrow{ display:flex; flex-wrap:wrap; gap:8px; padding-top:22px; border-top:1px solid var(--line); }
.sv-blog.sv-blog a[data-svb="tag"]{ display:inline-flex; align-items:baseline; gap:7px; border-radius:999px; padding:8px 14px; background:var(--soft); font-family:var(--f-head); font-weight:800; font-size:14.5px; color:var(--ink); transition:background .15s; }
.sv-blog.sv-blog a[data-svb="tag"] small{ font-size:10.5px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); }
.sv-blog.sv-blog a[data-svb="tag"]:hover{ background:var(--green-s); }

/* binario destro */
.sv-blog.sv-blog .svb-bcard{ border-radius:20px; background:var(--soft); padding:18px; display:grid; gap:12px; justify-items:start; }
.sv-blog.sv-blog .svb-bcard-h{ display:flex; gap:12px; align-items:center; }
.sv-blog.sv-blog .svb-bcard-h img{ width:56px; height:56px; border-radius:50%; background:#fff; object-fit:contain; }
.sv-blog.sv-blog .svb-bcard h3{ font-size:19px; }
.sv-blog.sv-blog .svb-bcard small{ display:block; font-size:13px; color:var(--muted); font-weight:700; }
.sv-blog.sv-blog .svb-bcard p{ font-size:14.5px; opacity:.85; }
.sv-blog.sv-blog .svb-bcard a[data-svb="btn"]{ min-height:40px; font-size:14.5px; width:100%; }
.sv-blog.sv-blog .svb-bcard[data-k="green"]{ background:var(--green); color:#fff; }
.sv-blog.sv-blog .svb-bcard[data-k="green"] p{ opacity:.92; }
.sv-blog.sv-blog .svb-bcard[data-k="it"]{ background:#fff; box-shadow:inset 0 0 0 1.5px var(--line); }

/* blocchi Savorita in fondo: fascia a tutta larghezza */
.sv-blog.sv-blog .svb-after{ background:var(--soft); padding-block:40px 44px; }
.sv-blog.sv-blog .svb-after .svb-in{ display:grid; gap:22px; }

/* ---------- blocco prodotti (anche fuori dal widget) ---------- */
.svb-prods{ display:grid; gap:0; font-family:"Nunito Sans","Nunito",system-ui,sans-serif; color:#293241; }
.svb-prods .svb-sec-h{ display:flex; align-items:flex-end; justify-content:space-between; gap:12px 20px; flex-wrap:wrap; margin-bottom:18px; }
.svb-prods .svb-sec-h h2{ margin:2px 0 0; font-family:"Nunito",system-ui,sans-serif; font-weight:900; font-size:clamp(22px,2.4vw,30px); line-height:1.15; }
.svb-prods .svb-eyebrow{ font-family:"Nunito",system-ui,sans-serif; font-weight:800; font-size:12.5px; letter-spacing:.12em; text-transform:uppercase; color:#087F23; }
.sv-blog.sv-blog .svb-pc a[data-svb="pc"]{ color:var(--ink); }
.svb-prods a[data-svb="more"]{ font-family:"Nunito",system-ui,sans-serif; font-weight:800; font-size:15px; color:#087F23; text-decoration:none; }
.svb-prods a[data-svb="more"]::after{ content:" \2192"; }
.svb-prow{ display:grid; grid-auto-flow:column; grid-auto-columns:minmax(200px,1fr); gap:14px; overflow-x:auto; scrollbar-width:none; scroll-snap-type:x mandatory; }
.svb-prow::-webkit-scrollbar{ display:none; }
.svb-pc{ scroll-snap-align:start; background:#fff; border-radius:18px; padding:10px 10px 14px; display:flex; flex-direction:column; gap:8px; min-width:0; }
.svb-pc a[data-svb="pc"]{ display:flex; flex-direction:column; gap:8px; color:inherit; text-decoration:none; }
.svb-pc-img{ display:block; aspect-ratio:1; border-radius:12px; background:#F4F6F3; overflow:hidden; }
.svb-pc-img img{ width:100%; height:100%; object-fit:cover; display:block; }
.svb-pc-it{ font-size:12.5px; font-weight:700; color:#6B8083; padding-inline:4px; }
.svb-pc-n{ font-family:"Nunito",system-ui,sans-serif; font-size:16px; font-weight:900; line-height:1.2; padding-inline:4px; }
.svb-pc-by{ font-size:12.5px; font-weight:700; color:#6B8083; padding-inline:4px; }
.svb-pc-price{ margin-top:auto; padding:8px 4px 0; border-top:1px solid rgba(41,50,65,.12); font-family:"Nunito",system-ui,sans-serif; font-size:13.5px; font-weight:800; }
.svb-pc-price a,
.sv-blog.sv-blog .svb-pc-price a{ color:#087F23; text-decoration:none; }
.svb-prods .svb-flag{ display:inline-block; width:14px; height:10px; margin-right:6px; border-radius:2px; vertical-align:-1px; background:linear-gradient(90deg,#009246 0 33.3%,#fff 33.3% 66.6%,#CE2B37 66.6%); box-shadow:0 0 0 1px rgba(41,50,65,.12); }
/* dentro il testo (blocco non in fondo): sfondo leggero */
.sv-blog.sv-blog .svb-prose .svb-prods{ background:var(--soft); border-radius:20px; padding:18px; }

/* ---------- blocco marchio ---------- */
.svb-bband{ position:relative; border-radius:22px; overflow:hidden; min-height:180px; display:flex; align-items:flex-end; background:#F4F6F3; font-family:"Nunito Sans","Nunito",system-ui,sans-serif; color:#293241; }
.svb-bband > img.svb-bband-bg{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.svb-bband-in{ position:relative; margin:14px; padding:14px 16px; border-radius:16px; background:rgba(255,255,255,.88); -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px); display:flex; align-items:center; gap:14px; flex-wrap:wrap; }
.svb-bband-in img.svb-logo{ width:48px; height:48px; border-radius:50%; background:#fff; object-fit:contain; }
.svb-bband-in h3{ margin:0; font-family:"Nunito",system-ui,sans-serif; font-size:18px; font-weight:900; line-height:1.2; }
.svb-bband-in small{ display:block; font-size:13px; color:#6B8083; font-weight:700; }
.svb-bband a[data-svb="btn"]{ display:inline-flex; align-items:center; min-height:40px; padding:0 18px; border-radius:999px; background:#087F23; color:#fff; font-family:"Nunito",system-ui,sans-serif; font-weight:900; font-size:14.5px; text-decoration:none; }
.svb-bband[data-noimg]{ min-height:0; }
@container (max-width:619px){
  .svb-bband{ flex-direction:column; align-items:stretch; min-height:0; background:#fff; }
  .svb-bband > img.svb-bband-bg{ position:static; aspect-ratio:4/1; height:auto; }
  .svb-bband-in{ margin:0; border-radius:0; background:#fff; }
}

/* serie */
.sv-blog.sv-blog .svb-end{ padding-block:36px 0; }
.sv-blog.sv-blog .svb-series{ max-width:760px; margin-inline:auto; border-radius:18px; box-shadow:inset 0 0 0 1.5px var(--line); padding:18px 20px; }
.sv-blog.sv-blog .svb-series h2{ font-size:19px; margin-bottom:4px; }
.sv-blog.sv-blog .svb-series p{ color:var(--muted); font-size:14.5px; font-weight:600; margin-bottom:10px; }
.sv-blog.sv-blog .svb-series ol{ list-style:decimal; padding-left:20px; display:grid; gap:8px; }
.sv-blog.sv-blog .svb-series li{ font-weight:700; font-size:15.5px; }
.sv-blog.sv-blog .svb-series li a:hover{ color:var(--green); }
.sv-blog.sv-blog .svb-series li[aria-current="true"]{ color:var(--muted); }
.sv-blog.sv-blog .svb-series li span{ display:block; font-weight:600; color:var(--muted); font-size:13px; }

/* invito per chi guarda */
.sv-blog.sv-blog .svb-cta-wrap{ padding-block:24px 0; }
.sv-blog.sv-blog .svb-cta{ border-radius:26px; background:var(--green); color:#fff; padding:clamp(24px,4vw,44px); display:grid; gap:18px; }
.sv-blog.sv-blog .svb-cta-t{ display:grid; gap:14px; }
.sv-blog.sv-blog .svb-cta h2{ font-size:clamp(26px,3.2vw,38px); letter-spacing:-.02em; max-width:22ch; }
.sv-blog.sv-blog .svb-cta p{ font-size:17px; max-width:52ch; opacity:.95; }
.sv-blog.sv-blog .svb-acts{ display:flex; flex-wrap:wrap; gap:10px; }
.sv-blog.sv-blog .svb-pts{ display:flex; flex-wrap:wrap; gap:8px 18px; font-weight:700; font-size:15px; }
.sv-blog.sv-blog .svb-pts li::before{ content:"\2713  "; color:var(--green-l); }
.sv-blog.sv-blog .svb-cta[data-k="buyer"]{ background:var(--ink); }
.sv-blog.sv-blog .svb-cta[data-k="buyer"] a[data-svb="btn"]:not([data-k]){ background:var(--green-l); color:var(--ink); }
.sv-blog.sv-blog .svb-cta[data-k="it"]{ background:var(--paper); color:var(--ink); box-shadow:inset 0 0 0 1.5px var(--line); }
.sv-blog.sv-blog .svb-cta[data-k="it"] .svb-tri{ width:64px; height:5px; }
@container (min-width:860px){ .sv-blog.sv-blog .svb-cta{ grid-template-columns:minmax(0,1fr) auto; align-items:end; } }

.sv-blog.sv-blog .svb-related{ padding-block:44px 56px; }
.sv-blog.sv-blog .svb-rgrid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }

/* capsula del telefono */
.sv-blog.sv-blog .svb-cap{ position:fixed; left:50%; bottom:calc(14px + env(safe-area-inset-bottom,0px)); transform:translate(-50%,140%); z-index:60; display:flex; align-items:center; gap:10px; padding:6px 6px 6px 8px; border-radius:999px; background:rgba(255,255,255,.84); -webkit-backdrop-filter:blur(16px) saturate(1.5); backdrop-filter:blur(16px) saturate(1.5); box-shadow:0 12px 30px -12px rgba(41,50,65,.5),inset 0 0 0 1px var(--line); transition:transform .35s cubic-bezier(.2,.8,.2,1); white-space:nowrap; }
.sv-blog.sv-blog .svb-cap[data-on]{ transform:translate(-50%,0); }
.sv-blog.sv-blog .svb-cap img{ width:34px; height:34px; border-radius:50%; background:#fff; object-fit:contain; }
.sv-blog.sv-blog .svb-cap b{ font-family:var(--f-head); font-weight:900; font-size:14.5px; }
.sv-blog.sv-blog a[data-svb="cap"]{ font-family:var(--f-head); font-weight:900; font-size:14px; color:#fff; background:var(--green); border-radius:999px; padding:9px 14px; }
@media (min-width:1100px){ .sv-blog.sv-blog .svb-cap{ visibility:hidden; } }

/* ===================================================================
   ARCHIVIO
   =================================================================== */
.sv-blog.sv-blog .svb-xtop{ padding-block:22px 18px; display:grid; gap:14px; justify-items:start; }
.sv-blog.sv-blog .svb-xtop h1{ font-size:clamp(34px,5vw,58px); letter-spacing:-.03em; line-height:1; }
.sv-blog.sv-blog .svb-xdesc{ font-size:clamp(17px,1.7vw,20px); color:var(--muted); font-weight:600; max-width:52ch; }
.sv-blog.sv-blog .svb-xcount{ font-family:var(--f-head); font-weight:800; font-size:14px; color:var(--muted); }
.sv-blog.sv-blog .svb-xlist{ padding-block:18px 56px; display:grid; gap:30px; }
.sv-blog.sv-blog .svb-filters{ display:flex; flex-wrap:wrap; gap:10px 22px; }
.sv-blog.sv-blog .svb-fgroup{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.sv-blog.sv-blog .svb-fgroup > span{ font-size:12px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); }
html .sv-blog.sv-blog .svb-fgroup button{ font-family:var(--f-head); font-weight:800; font-size:13.5px; padding:6px 12px; border-radius:999px; background:var(--soft); color:var(--ink); }
html .sv-blog.sv-blog .svb-fgroup button[aria-pressed="true"]{ background:var(--ink); color:#fff; }
html .sv-blog.sv-blog [data-svb-clear]{ font-family:var(--f-head); font-weight:800; font-size:13.5px; color:var(--green); padding:6px 0; }
.sv-blog.sv-blog .svb-xgrid{ display:grid; grid-template-columns:minmax(0,1fr); gap:22px; }
.sv-blog.sv-blog .svb-empty{ padding:30px; border-radius:18px; background:var(--soft); text-align:center; font-weight:700; color:var(--muted); }
.sv-blog.sv-blog .svb-xfoot{ display:flex; justify-content:center; }
html .sv-blog.sv-blog [data-svb-more]{ min-height:46px; padding:0 22px; border-radius:999px; box-shadow:inset 0 0 0 1.5px var(--line); font-family:var(--f-head); font-weight:900; font-size:16px; }
html .sv-blog.sv-blog [data-svb-more]:hover{ box-shadow:inset 0 0 0 1.5px var(--ink); }
.sv-blog.sv-blog .svb-pages{ display:flex; justify-content:center; gap:8px; font-family:var(--f-head); font-weight:800; }
.sv-blog.sv-blog .svb-pages :is(a,span){ padding:8px 12px; border-radius:10px; background:var(--soft); }
.sv-blog.sv-blog .svb-pages .current{ background:var(--ink); color:#fff; }
.sv-blog.sv-blog .svb-xband{ border-radius:22px; box-shadow:inset 0 0 0 1.5px var(--line); padding:20px 22px; display:grid; gap:12px; justify-items:start; }
.sv-blog.sv-blog .svb-xband h2{ font-size:22px; }
.sv-blog.sv-blog .svb-xband p{ color:var(--muted); font-weight:600; }
@container (min-width:620px){
  .sv-blog.sv-blog .svb-xgrid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .sv-blog.sv-blog .svb-xgrid > a[data-svb-v="lead"]{ grid-column:1/-1; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:center; gap:28px; }
}
@container (min-width:960px){
  .sv-blog.sv-blog .svb-xgrid{ grid-template-columns:repeat(3,minmax(0,1fr)); gap:34px 26px; }
  .sv-blog.sv-blog .svb-xgrid[data-cols="4"]{ grid-template-columns:repeat(4,minmax(0,1fr)); }
  .sv-blog.sv-blog .svb-xgrid[data-cols="2"]{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .sv-blog.sv-blog .svb-xgrid[data-cols="4"] > a:not([data-svb-v]) .svb-card-t{ font-size:17.5px; }
  .sv-blog.sv-blog .svb-xgrid > a[data-svb-v="lead"]{ grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:44px; }
  .sv-blog.sv-blog .svb-xband{ grid-template-columns:minmax(0,1fr) auto; align-items:center; }
}
@container (max-width:619px){
  .sv-blog.sv-blog .svb-filters{ flex-wrap:nowrap; overflow-x:auto; scrollbar-width:none; margin-inline:calc(-1 * var(--gut)); padding-inline:var(--gut); }
  .sv-blog.sv-blog .svb-filters::-webkit-scrollbar{ display:none; }
  .sv-blog.sv-blog .svb-fgroup{ flex-wrap:nowrap; flex:none; }
}

/* card compatte in colonna stretta: foto piccola a sinistra */
@container (max-width:619px){
  .sv-blog.sv-blog :is(.svb-xgrid,.svb-mgrid,.svb-rgrid) > a[data-svb="card"]:not([data-svb-v]){ display:grid; grid-template-columns:96px minmax(0,1fr); gap:14px; align-items:start; }
  .sv-blog.sv-blog :is(.svb-xgrid,.svb-mgrid,.svb-rgrid) > a[data-svb="card"]:not([data-svb-v]) .svb-card-img{ border-radius:12px; }
  .sv-blog.sv-blog :is(.svb-xgrid,.svb-mgrid,.svb-rgrid) > a[data-svb="card"]:not([data-svb-v]) .svb-card-t{ font-size:17px; }
  .sv-blog.sv-blog :is(.svb-xgrid,.svb-mgrid,.svb-rgrid) > a[data-svb="card"]:not([data-svb-v]) :is(.svb-card-ex,.svb-card-brand){ display:none; }
  .sv-blog.sv-blog :is(.svb-xgrid,.svb-mgrid,.svb-rgrid) > a[data-svb="card"]:not([data-svb-v]) .svb-card-ph{ padding:8px; }
  .sv-blog.sv-blog :is(.svb-xgrid,.svb-mgrid,.svb-rgrid) > a[data-svb="card"]:not([data-svb-v]) .svb-card-ph b{ font-size:11px; }
}
@container (max-width:759px){
  .sv-blog.sv-blog :is(.svb-mgrid,.svb-rgrid){ grid-template-columns:minmax(0,1fr); }
}

/* ===================================================================
   MAGAZINE
   =================================================================== */
.sv-blog.sv-blog .svb-mast{ padding-block:28px 18px; display:grid; gap:14px; justify-items:start; }
.sv-blog.sv-blog .svb-mast h1{ font-size:clamp(38px,6.4vw,84px); letter-spacing:-.035em; line-height:.98; max-width:13ch; }
.sv-blog.sv-blog .svb-mast h1 em{ font-style:normal; color:var(--green); }
.sv-blog.sv-blog .svb-mast p{ font-size:clamp(17px,1.7vw,20px); color:var(--muted); font-weight:600; max-width:54ch; }
.sv-blog.sv-blog .svb-lead{ display:grid; gap:28px; padding-block:22px 36px; }
.sv-blog.sv-blog .svb-latest h2{ font-size:12px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:var(--muted); margin-bottom:14px; }
.sv-blog.sv-blog .svb-latest ol{ display:grid; gap:18px; }
.sv-blog.sv-blog :is(.svb-latest li,.svb-itband-l > *,.svb-lead > *,.svb-mlist > *){ min-width:0; }
@container (min-width:620px){ .sv-blog.sv-blog .svb-lead a[data-svb-v="lead"] .svb-card-img{ aspect-ratio:16/11; } }
@container (min-width:960px){ .sv-blog.sv-blog .svb-lead{ grid-template-columns:minmax(0,1.7fr) minmax(0,1fr); gap:48px; } }
.sv-blog.sv-blog .svb-seg{ border-radius:26px; background:var(--soft); padding:clamp(20px,3vw,32px); }
.sv-blog.sv-blog .svb-segsw{ display:flex; gap:6px; flex-wrap:wrap; }
html .sv-blog.sv-blog .svb-segsw button{ font-family:var(--f-head); font-weight:800; font-size:14px; padding:8px 14px; border-radius:999px; background:#fff; color:var(--ink); }
html .sv-blog.sv-blog .svb-segsw button[aria-pressed="true"]{ background:var(--ink); color:#fff; }
.sv-blog.sv-blog .svb-seg[data-locked] .svb-segsw{ display:none; }
.sv-blog.sv-blog .svb-mgrid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.sv-blog.sv-blog .svb-bstories{ background:var(--green); color:#fff; padding-block:40px 44px; margin-top:36px; }
.sv-blog.sv-blog .svb-bstories .svb-sec-h p{ color:#fff; opacity:.85; }
.sv-blog.sv-blog .svb-bstories a[data-svb="more"]{ color:#fff; }
.sv-blog.sv-blog .svb-hscroll{ display:flex; gap:14px; overflow-x:auto; scroll-snap-type:x mandatory; scroll-padding-left:var(--gut); scrollbar-width:none; margin-inline:calc(-1 * var(--gut)); padding-inline:var(--gut); padding-bottom:6px; }
.sv-blog.sv-blog .svb-hscroll::-webkit-scrollbar{ display:none; }
.sv-blog.sv-blog .svb-hscroll > a[data-svb="card"]{ flex:none; width:clamp(220px,24vw,280px); scroll-snap-align:start; }
.sv-blog.sv-blog .svb-bstories .svb-card-meta{ color:rgba(255,255,255,.8); }
.sv-blog.sv-blog .svb-bstories .svb-card-meta .svb-eyebrow{ display:none; }
.sv-blog.sv-blog .svb-bstories a[data-svb="card"]:hover .svb-card-t{ color:var(--green-l); }
.sv-blog.sv-blog .svb-msec{ padding-block:36px; }
.sv-blog.sv-blog .svb-msec + .svb-msec{ border-top:1px solid var(--line); }
.sv-blog.sv-blog .svb-mlist{ display:grid; grid-template-columns:minmax(0,1fr); gap:20px 34px; }
@container (min-width:760px){ .sv-blog.sv-blog .svb-mlist{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
.sv-blog.sv-blog .svb-itband{ border-radius:26px; box-shadow:inset 0 0 0 1.5px var(--line); padding:clamp(20px,3vw,32px); display:grid; gap:20px; }
.sv-blog.sv-blog .svb-itband-t{ display:grid; gap:12px; justify-items:start; }
.sv-blog.sv-blog .svb-itband-t .svb-tri{ width:64px; height:5px; }
.sv-blog.sv-blog .svb-itband h2{ font-size:clamp(24px,2.8vw,32px); }
.sv-blog.sv-blog .svb-itband p{ color:var(--muted); font-weight:600; max-width:52ch; }
.sv-blog.sv-blog .svb-itband-l{ display:grid; gap:16px; }
@container (min-width:860px){ .sv-blog.sv-blog .svb-itband{ grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); align-items:center; gap:40px; } }
.sv-blog.sv-blog[data-svb-root="magazine"] .svb-cta-wrap{ padding-block:36px 10px; }

/* in fondo, dopo le griglie del magazine: in colonna stretta una card per riga */
@container (max-width:759px){
  .sv-blog.sv-blog :is(.svb-mgrid,.svb-rgrid){ grid-template-columns:minmax(0,1fr); }
}
