.blog-body{background:#f8f8f5}.blog-site-header{position:fixed}.blog-header-nav{display:flex;gap:22px;align-items:center}.blog-header-nav a{color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.12em;text-decoration:none}.blog-header-nav a.is-active,.blog-header-nav a:hover{color:var(--green)}.blog-main,.article-main{padding-top:76px;background: #fff;}
.blog-hero{
    display:grid;
    grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);
    gap:clamp(40px,7vw,100px);
    padding: clamp(78px, 9vw, 130px) clamp(20px, 7vw, 110px) 40px clamp(20px, 7vw, 110px);
    background:radial-gradient(circle at 12% 8%,rgba(221,235,130,.55),transparent 27%),#fff}
.blog-hero>div{max-width:900px}
.blog-hero h1{font-family:Georgia,serif;font-size:clamp(48px,6.4vw,92px);font-weight:400;letter-spacing:-.055em;line-height:.98;margin:0}.blog-hero h1 em{color:var(--green);font-weight:400}.blog-hero>div>p{max-width:830px;color:#53615b;font-size:clamp(17px,1.35vw,20px);line-height:1.7;margin:32px 0 0}.blog-manifesto{align-self:end;background:var(--ink);color:#fff;border-radius:24px;padding:30px}.blog-manifesto>span,.blog-section-heading span,.article-small-label,.blog-cta>span{display:block;color:var(--lime);font-size:10px;font-weight:900;letter-spacing:.16em;margin-bottom:14px}.blog-manifesto strong{display:block;font-family:Georgia,serif;font-size:25px;font-weight:400;line-height:1.1}.blog-manifesto p{color:#b9c5bf;font-size:13px;line-height:1.65;margin:16px 0 0}.blog-category-nav{display:flex;gap:10px;overflow:auto;padding:24px clamp(20px,7vw,110px);background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.blog-category-nav a{display:flex;align-items:center;gap:8px;white-space:nowrap;border:1px solid var(--line);border-radius:999px;padding:9px 13px;color:var(--muted);font-size:12px;font-weight:800;text-decoration:none}.blog-category-nav a small{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#eef2ef;font-size:9px}.blog-category-nav a.active,.blog-category-nav a:hover{background:var(--green);border-color:var(--green);color:#fff}.blog-category-nav a.active small,.blog-category-nav a:hover small{background:rgba(255,255,255,.16)}.blog-feed{padding:30px clamp(20px,7vw,110px) 100px;max-width:1700px;margin:auto;background-color: #fff;}.blog-section-heading{display:flex;justify-content:space-between;gap:0px;align-items:end;margin-bottom:34px}.blog-section-heading span{color:var(--green)}.blog-section-heading h2{font-family:Georgia,serif;font-size:clamp(30px,3.2vw,50px);font-weight:400;line-height:1.05;margin:0;max-width:840px}.blog-section-heading>p{color:var(--muted);font-size:12px}.blog-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.blog-card{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;display:flex;flex-direction:column;min-width:0}.blog-card-image{display:block;aspect-ratio:3/2;background:linear-gradient(135deg,var(--ink),var(--green));overflow:hidden;text-decoration:none}.blog-card-image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .35s ease}.blog-card:hover .blog-card-image img{transform:scale(1.02)}.blog-image-fallback{display:grid;place-items:center;width:100%;height:100%;font-family:Georgia,serif;font-size:68px;color:var(--lime)}.blog-card-copy{padding:23px 24px 26px;display:flex;flex-direction:column;flex:1}.blog-card-meta{display:flex;justify-content:space-between;gap:20px;color:var(--green);font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.blog-card h3{font-family:Georgia,serif;font-weight:400;font-size:25px;line-height:1.12;margin:15px 0 12px}.blog-card h3 a{color:var(--ink);text-decoration:none}.blog-card p{color:var(--muted);font-size:13px;line-height:1.6;margin:0 0 20px}.blog-read-link{color:var(--green);font-size:12px;font-weight:900;text-decoration:none;margin-top:auto}.blog-empty{grid-column:1/-1;padding:70px;border:1px dashed #bdc8c2;border-radius:22px;text-align:center;background:#fff}.blog-empty span{color:var(--green);font-size:10px;font-weight:900;letter-spacing:.16em}.blog-empty h2{font-family:Georgia,serif;font-weight:400;font-size:34px;margin:15px 0 10px}.blog-empty p{color:var(--muted)}.blog-pagination{display:flex;justify-content:center;gap:24px;align-items:center;margin-top:42px;font-size:12px}.blog-pagination a{color:var(--green);font-weight:900;text-decoration:none}.blog-cta{margin:0 clamp(20px,7vw,110px) 100px;padding:65px clamp(28px,6vw,90px);background:var(--ink);border-radius:28px;color:#fff;text-align:center}.blog-cta>span{color:var(--lime)}.blog-cta h2{font-family:Georgia,serif;font-size:clamp(34px,4.2vw,62px);font-weight:400;line-height:1.02;margin:0}.blog-cta p{color:#b9c5bf;line-height:1.6;max-width:720px;margin:22px auto 0}.blog-cta .primary-button{display:inline-flex;width:auto;margin-top:28px;text-decoration:none}.blog-cta.compact{margin-top:70px}.blog-footer{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:34px clamp(20px,7vw,110px);border-top:1px solid var(--line);background:#fff}.blog-footer p{color:var(--muted);font-size:11px;max-width:620px;text-align:center}.article-main{background: radial-gradient(circle at 12% 8%,rgba(221,235,130,.55),transparent 27%),#fff;}.article-hero{padding:74px clamp(20px,7vw,110px) 48px;max-width:1500px;margin:auto}.article-hero-copy{max-width:1060px}.article-meta{display:flex;flex-wrap:wrap;gap:12px 22px;color:var(--muted);font-size:11px}.article-meta a{color:var(--green);font-weight:900;text-decoration:none}.article-hero h1{font-family:Georgia,serif;font-size:clamp(46px,6vw,86px);font-weight:400;letter-spacing:-.05em;line-height:.98;margin:24px 0}.article-hero-copy>p{color:#52615a;font-size:clamp(18px,1.5vw,23px);line-height:1.55;max-width:920px}.article-hero figure{margin:52px 0 0;border-radius:28px;overflow:hidden;aspect-ratio:3/2;background:#eef2ef}.article-hero figure img{width:100%;height:100%;object-fit:cover;display:block}.article-layout{display:grid;grid-template-columns:minmax(0,820px) minmax(240px,310px);justify-content:center;gap:80px;padding:35px clamp(20px,7vw,110px) 100px}.article-content{font-family:Georgia,"Times New Roman",serif;font-size:19px;line-height:1.8;color:#25342e}.article-content h2{font-size:36px;line-height:1.12;font-weight:400;letter-spacing:-.025em;margin:58px 0 20px;color:var(--ink)}.article-content h2:first-child{margin-top:0}.article-content p{margin:0 0 24px}.article-content ul{padding-left:24px;margin:0 0 28px}.article-content li{margin:8px 0}.article-callout{margin:36px 0;padding:24px 26px;background:#ebfdc1;border-radius: 0px 30px 30px 0px;border-left:4px solid var(--green);font-family:Arial,sans-serif}.article-callout span{color:var(--green);font-size:9px;font-weight:900;letter-spacing:.13em}.article-callout p{font-size:20px;line-height:1.35;margin:9px 0 0;font-style:italic;color:var(--ink);}.article-side{padding-top:3px}.article-side-card{
    position:static;
    background:var(--ink);
    color:#fff;
    border-radius:20px;
    padding:25px;
}.article-side-card span{color:var(--lime);font-size:9px;font-weight:900;letter-spacing:.14em}.article-side-card p{color:#c2cdc7;font-size:13px;line-height:1.65;margin:14px 0 0}.article-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:18px}.article-tags span{border:1px solid var(--line);border-radius:999px;padding:7px 9px;color:var(--muted);font-size:10px}.article-faq,.article-sources{margin-top:65px;padding-top:34px;border-top:1px solid var(--line);font-family:Arial,sans-serif}.article-faq .article-small-label,.article-sources .article-small-label{color:var(--green)}.article-faq h2,.article-sources h2{font-family:Georgia,serif;margin:0 0 22px}.article-faq details{border-top:1px solid var(--line);padding:16px 0}.article-faq details:last-child{border-bottom:1px solid var(--line)}.article-faq summary{font-weight:800;cursor:pointer;color: #034e3a;font-size: 16px;}.article-faq details p{font-size:14px;line-height:1.6;color:var(--muted);margin:12px 0 0}.article-sources ol{padding-left:21px}.article-sources li{font-size:13px;line-height:1.4;margin:12px 0;font-weight: 800;}.article-sources a{color:var(--green);font-weight:800;text-decoration:none}.article-sources small{display:block;color:var(--muted);margin-top:3px}.related-posts{padding:70px clamp(20px,7vw,110px);background:#f8f8f5}.related-posts>.article-small-label{color:var(--green)}.related-posts>h2{font-family:Georgia,serif;font-weight:400;font-size:40px;margin:0 0 30px}.blog-card-grid.compact .blog-card-copy{padding-bottom:22px}.blog-card-grid.compact .blog-card h3{font-size:21px;margin-bottom:0}
@media(max-width:1000px){.blog-hero{grid-template-columns:1fr}.blog-manifesto{max-width:620px}.blog-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.article-layout{grid-template-columns:minmax(0,800px);gap:35px}.article-side{order:-1}.article-side-card{position:static}.article-tags{margin-bottom:15px}}
@media(max-width:680px){.blog-header-nav{gap:12px}.blog-header-nav a{font-size:9px}.blog-hero{padding-top:62px}.blog-hero h1{font-size:48px}.blog-section-heading{align-items:flex-start;flex-direction:column}.blog-card-grid{grid-template-columns:1fr}.blog-feed{padding-top:30px}.blog-cta{margin-left:14px;margin-right:14px;padding:45px 24px}.blog-footer{align-items:flex-start;flex-direction:column}.blog-footer p{text-align:left}.article-hero{padding-top:55px}.article-hero h1{font-size:46px}.article-layout{padding-top:10px}.article-content{font-size:18px}.article-content h2{font-size:31px}.blog-card-grid.compact{grid-template-columns:1fr}}

/* === Blog refinements · v2 === */
.blog-brand b{display:block}.blog-brand small{display:block}.blog-header-nav a{white-space:nowrap}.blog-hero-title{align-self:center}.blog-category-cloud{align-self:center;justify-self:end;max-width:470px;display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:11px 17px;padding:22px 0}.blog-category-cloud a{position:relative;display:inline-flex;align-items:flex-start;gap:5px;color:#65716b;font-size:var(--cloud-size,15px);font-family:Georgia,serif;line-height:1.05;text-decoration:none;transition:color .2s ease,transform .2s ease;opacity:.82}.blog-category-cloud a small{font-family:Arial,sans-serif;font-size:8px;font-weight:900;color:var(--green);transform:translateY(-2px)}.blog-category-cloud a:hover,.blog-category-cloud a.active{color:var(--green);opacity:1;transform:translateY(-1px)}.blog-category-cloud a.active{font-style:italic}.blog-category-cloud .blog-cloud-all{font-family:Arial,sans-serif;font-weight:900;letter-spacing:.04em}.article-sources{margin-top:65px;padding-top:0;border-top:1px solid var(--line);font-family:Arial,sans-serif}.article-sources>summary{display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  cursor: pointer;
  list-style: none;
  padding: 6px 10px 6px 18px;
  color: var(--green);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .14em;
  background: #f6f6f6;
  margin-top: 10px;
  border-radius: 19px;
  border: 1px solid #d4d4d4;}.article-sources>summary::-webkit-details-marker{display:none}.article-sources>summary::after{content:'+';display:grid;place-items:center;width:26px;height:26px;border:1px solid var(--line);border-radius:50%;color:var(--green);font-size:16px;letter-spacing:0;line-height: 12px;}.article-sources[open]>summary::after{content:'–';line-height: 12px;}.article-sources>summary small{margin-left:auto;color:var(--muted);font-size:10px;font-weight:700;letter-spacing:0}.article-sources ol{margin:0 0 8px;padding:0 0 0 21px}.article-sources li{font-size:13px;line-height:1.4;margin:12px 0;font-weight: 800;}.article-sources a{color:var(--green);font-weight:800;text-decoration:none}.article-sources li small{display:block;color:var(--muted);margin-top:3px}.article-meta span{white-space:nowrap}
@media(max-width:1000px){.blog-category-cloud{justify-self:start;justify-content:flex-start;max-width:760px;padding-top:0}.blog-hero{gap:34px}}
@media(max-width:680px){.blog-site-header .brand b{font-size:12px}.blog-category-cloud{gap:10px 14px}.blog-category-cloud a{font-size:min(var(--cloud-size,15px),18px)}.article-meta span{white-space:normal}}
.article-content h3{font-size:27px;line-height:1.2;font-weight:400;margin:38px 0 16px;color:var(--ink)}.article-content ol{padding-left:24px;margin:0 0 28px}.article-content blockquote{margin:30px 0;padding:5px 0 5px 22px;border-left:3px solid var(--green);color:#506159;font-style:italic}.article-content a{color:var(--green);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}

/* === Category cloud · v3 === */
.blog-hero{
  grid-template-columns:minmax(360px,.85fr) minmax(520px,1.55fr);
  gap:clamp(34px,4vw,70px);
}
.blog-category-cloud{
  align-self:stretch;
  justify-self:stretch;
  width:100%;
  max-width:none;
  min-height:260px;
  padding:20px clamp(10px,2vw,26px);
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-content:center;
  align-items:center;
  gap:clamp(13px,1.7vw,27px) clamp(18px,2.4vw,38px);
  text-align:center;
}
.blog-category-cloud a{
  display:inline-flex;
  align-items:flex-start;
  justify-content:center;
  gap:4px;
  margin:0;
  color:#78827d;
  font-size:var(--cloud-size,18px);
  font-family:Georgia,serif;
  line-height:.98;
  letter-spacing:-.025em;
  text-decoration:none;
  opacity:.82;
  transform:translateY(var(--cloud-shift,0));
  transition:color .2s ease,opacity .2s ease,transform .2s ease;
}
.blog-category-cloud a span{display:inline-block}
.blog-category-cloud a small{
  display:inline-block;
  min-width:auto;
  width:auto;
  height:auto;
  margin:0;
  padding:0;
  background:none;
  border-radius:0;
  color:var(--green);
  font-family:Arial,sans-serif;
  font-size:.38em;
  font-weight:900;
  line-height:1;
  transform:translateY(-.28em);
}
.blog-category-cloud a:hover,
.blog-category-cloud a.active{
  color:var(--green);
  opacity:1;
  transform:translateY(calc(var(--cloud-shift,0) - 2px));
}
.blog-category-cloud a.active{font-style:italic}
.blog-category-cloud .blog-cloud-all{
  font-family:Georgia,serif;
  font-size:21px !important;
  font-weight:700;
  letter-spacing:-.015em;
  transform:translateY(-7px);
}
.blog-category-cloud .blog-cloud-all:hover,
.blog-category-cloud .blog-cloud-all.active{transform:translateY(-9px)}
@media(max-width:1100px){
  .blog-hero{grid-template-columns:minmax(320px,.9fr) minmax(430px,1.2fr)}
  .blog-category-cloud{min-height:220px;gap:16px 24px;padding-inline:0}
}
@media(max-width:1000px){
  .blog-hero{grid-template-columns:1fr}
  .blog-category-cloud{justify-self:stretch;justify-content:center;max-width:820px;min-height:0;padding:12px 0 0;align-content:flex-start}
}
@media(max-width:680px){
  .blog-category-cloud{justify-content:flex-start;text-align:left;gap:13px 18px}
  .blog-category-cloud a{font-size:min(var(--cloud-size,18px),24px);transform:none}
  .blog-category-cloud a:hover,.blog-category-cloud a.active{transform:translateY(-1px)}
  .blog-category-cloud .blog-cloud-all,.blog-category-cloud .blog-cloud-all:hover,.blog-category-cloud .blog-cloud-all.active{transform:none}
}

.article-share {
    margin-top: 28px;
    padding-top: 22px;
    border-top: 1px solid var(--line);
    font-family: Arial, sans-serif;
}

.article-share > span {
    display: block;
    margin-bottom: 13px;
    color: var(--green);
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .14em;
}

.article-share-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.article-share-links a {
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    background: var(--green);
    border-color: var(--green);
    color: #fff;
    border-radius: 50%;
    font-size: 11px;
    font-weight: 900;
    text-decoration: none;
    transition:
        background .2s ease,
        color .2s ease,
        border-color .2s ease,
        transform .2s ease;
}

.article-share-links a:hover {
    border: 1px solid var(--line);
    background: #fff;
    color: var(--ink);
}

/* Sticky social share - desktop */

/*
 * app.css usa overflow-x:hidden su html/body.
 * Per position:sticky è meglio clip, che taglia l'overflow
 * senza creare un nuovo scroll container.
 */
html,
body.article-page {
    overflow-x: clip !important;
    overflow-y: visible;
}

@media (min-width: 1001px) {

    .article-layout {
        align-items: stretch;
    }

    .article-side {
        position: relative;
        align-self: stretch;
        height: 100%;
        overflow: visible;
    }

    .article-side-card {
        position: static;
    }

    .article-share-sticky {
        position: -webkit-sticky;
        position: sticky;
        top: 95px;
        z-index: 20;
        width: 100%;
        height: max-content;
        margin-top: 28px;
    }

    .article-share-sticky .article-share {
        margin-top: 0;
    }
}

.blog-hero-subline {
    line-height: 1.2!important;
  font-style: italic;
}

.article-spalla {
  font-style: italic;
  color:#595959;
}