/* Blog */
.blog-hero { background:var(--color-surface);padding:3rem 0 2rem;border-bottom:1px solid var(--color-border); }
.blog-filtri { display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:2rem; }
.blog-cat-btn { padding:.375rem 1rem;border-radius:9999px;border:1.5px solid var(--color-border);background:var(--color-white);font-size:.8rem;font-weight:600;cursor:pointer;transition:all .15s;font-family:var(--font-body); }
.blog-cat-btn.active,.blog-cat-btn:hover { background:var(--color-brand);border-color:var(--color-brand);color:#fff; }
.blog-grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem; }
.blog-card { border-radius:var(--radius-lg);overflow:hidden;background:var(--color-white);box-shadow:var(--shadow-sm);text-decoration:none;color:inherit;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s; }
.blog-card:hover { transform:translateY(-5px);box-shadow:var(--shadow-md); }
.blog-card__img { aspect-ratio:16/9;overflow:hidden; }
.blog-card__img img { width:100%;height:100%;object-fit:cover;transition:transform .4s; }
.blog-card:hover .blog-card__img img { transform:scale(1.04); }
.blog-card__body { padding:1.25rem 1.5rem;flex:1;display:flex;flex-direction:column;gap:.75rem; }
.blog-card__meta { display:flex;align-items:center;gap:.75rem;font-size:.75rem;color:var(--color-text-light); }
.blog-card__cat { background:var(--color-surface);border-radius:9999px;padding:.125rem .625rem;font-weight:600;font-size:.7rem;letter-spacing:.06em;text-transform:uppercase; }
.blog-card__title { font-size:var(--text-lg);font-family:var(--font-heading);font-weight:700;line-height:1.3; }
.blog-card__excerpt { font-size:.875rem;color:var(--color-text-light);line-height:1.6;flex:1; }
.blog-card__footer { padding:.75rem 1.5rem;border-top:1px solid var(--color-border);font-size:.8rem;color:var(--color-brand);font-weight:600; }
/* Articolo singolo */
.article-layout { display:grid;grid-template-columns:1fr 300px;gap:3rem;align-items:start; }
.article-header { margin-bottom:2rem; }
.article-header__cat { display:inline-block;background:var(--color-surface);border-radius:9999px;padding:.25rem .875rem;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-brand);margin-bottom:1rem; }
.article-header__title { font-size:clamp(1.75rem,4vw,2.5rem);line-height:1.2;margin-bottom:1rem; }
.article-header__meta { font-size:.875rem;color:var(--color-text-light);display:flex;gap:1rem;flex-wrap:wrap; }
.article-hero-img { border-radius:var(--radius-xl);overflow:hidden;aspect-ratio:16/9;margin-bottom:2.5rem; }
.article-hero-img img { width:100%;height:100%;object-fit:cover; }
.article-body { font-size:1.0625rem;line-height:1.85;color:var(--color-text-light); }
.article-body h2,.article-body h3 { color:var(--color-text);margin:2rem 0 .875rem;font-family:var(--font-heading); }
.article-body h2 { font-size:1.5rem; }
.article-body h3 { font-size:1.2rem; }
.article-body p { margin-bottom:1.25rem; }
.article-body strong { color:var(--color-text); }
.article-sidebar { position:sticky;top:calc(var(--header-height)+1.5rem);display:flex;flex-direction:column;gap:1.5rem; }
.sidebar-card { background:var(--color-surface);border-radius:var(--radius-lg);padding:1.5rem;border:1px solid var(--color-border); }
.sidebar-card__title { font-size:.875rem;font-weight:700;margin-bottom:1rem;color:var(--color-text);text-transform:uppercase;letter-spacing:.06em; }
.sidebar-tag { display:inline-flex;background:var(--color-white);border:1px solid var(--color-border);border-radius:9999px;padding:.25rem .75rem;font-size:.75rem;margin:.25rem;cursor:pointer;transition:all .15s; }
.sidebar-tag:hover { border-color:var(--color-brand);color:var(--color-brand); }
@media (max-width:768px) { .article-layout { grid-template-columns:1fr; } .article-sidebar { display:none; } }
