/* Blog Editoria e scrittura — FiloEdizioni 1.27.17. Stili circoscritti. */
.fe-blog-hero { background:var(--color-paper-alt,#f7f4ed); padding:54px 0 64px; }
.fe-blog-hero-content { max-width:1040px; }
.fe-blog-hero h1 { font-family:var(--font-display, Georgia, serif); font-size:clamp(2.8rem,6vw,5rem); font-weight:500; line-height:1.09; letter-spacing:-.035em; max-width:900px; margin:14px 0 22px; }
.fe-blog-hero h1 em { color:var(--color-brand-deep,#6b1934); font-weight:400; }
.fe-blog-lede { max-width:800px; font-size:clamp(1.05rem,1.6vw,1.3rem); line-height:1.75; color:var(--color-ink-soft,#596059); }
.fe-blog-breadcrumb { display:flex; flex-wrap:wrap; align-items:center; gap:11px; font-size:.83rem; color:var(--color-ink-soft,#596059); margin-bottom:40px; }
.fe-blog-breadcrumb a { color:inherit; text-decoration:none; }.fe-blog-breadcrumb a:hover { text-decoration:underline; }
.fe-blog-kicker { display:block; color:var(--color-brand-deep,#6b1934); font-size:.73rem; font-weight:750; letter-spacing:.15em; }
.fe-blog-page-intro { max-width:780px; margin-top:25px; line-height:1.75; }.fe-blog-page-intro p:last-child { margin-bottom:0; }
.fe-blog-section { padding:72px 0; }.fe-blog-latest { background:var(--color-paper-alt,#f7f4ed); }
.fe-blog-heading { max-width:750px; margin-bottom:32px; }.fe-blog-heading h2 { font-family:var(--font-display,Georgia,serif); font-weight:500; font-size:clamp(2rem,3.2vw,3rem); line-height:1.2; margin:10px 0 12px; }.fe-blog-heading p { color:var(--color-ink-soft,#596059); line-height:1.7; }
.fe-blog-categories { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.fe-blog-category { min-width:0; display:flex; flex-direction:column; min-height:235px; padding:30px; border:1px solid var(--color-line-soft,#e8e0d3); border-radius:13px; background:var(--color-paper,#fff); color:inherit; text-decoration:none; transition:transform .17s ease,box-shadow .17s ease,border-color .17s ease; }
.fe-blog-category:hover,.fe-blog-category:focus-visible { transform:translateY(-3px); border-color:var(--color-brand-deep,#6b1934); box-shadow:0 14px 30px rgba(23,25,24,.07); }
.fe-blog-category-index { font-size:.69rem; font-weight:750; letter-spacing:.12em; color:var(--color-brand-deep,#6b1934); }
.fe-blog-category h3 { font-family:var(--font-display,Georgia,serif); font-size:clamp(1.3rem,2vw,1.85rem); line-height:1.24; margin:16px 0 9px; }.fe-blog-category p { line-height:1.65; color:var(--color-ink-soft,#596059); margin:0 0 20px; }
.fe-blog-category-more { color:var(--color-brand-deep,#6b1934); margin-top:auto; font-size:.9rem; font-weight:700; }
.fe-blog-articles { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.fe-blog-article-card { background:var(--color-paper,#fff); min-width:0; overflow:hidden; border:1px solid var(--color-line-soft,#e8e0d3); border-radius:12px; display:flex; flex-direction:column; }
.fe-blog-article-image { display:block; aspect-ratio:16/10; overflow:hidden; background:#e8e0d3; }.fe-blog-article-image img { display:block; width:100%; height:100%; object-fit:cover; }.fe-blog-article-placeholder { width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-family:Georgia,serif; font-size:1.3rem; letter-spacing:.18em; text-align:center; color:#695a5b; }
.fe-blog-article-body { padding:22px; display:flex; flex:1; flex-direction:column; }.fe-blog-article-meta { font-size:.76rem; color:var(--color-brand-deep,#6b1934); font-weight:650; }.fe-blog-article-body h3 { font-family:var(--font-display,Georgia,serif); font-size:1.43rem; line-height:1.28; margin:11px 0; }.fe-blog-article-body h3 a { color:inherit; text-decoration:none; }.fe-blog-article-body h3 a:hover { color:var(--color-brand-deep,#6b1934); }.fe-blog-article-body p { font-size:.93rem; line-height:1.65; color:var(--color-ink-soft,#596059); margin:0 0 20px; }.fe-blog-read-more { margin-top:auto; font-weight:700; color:var(--color-brand-deep,#6b1934); text-decoration:none; }
.fe-blog-empty { border:1px solid var(--color-line-soft,#e8e0d3); border-radius:12px; padding:36px; background:var(--color-paper,#fff); }.fe-blog-empty h2,.fe-blog-empty h3 { font-family:var(--font-display,Georgia,serif); font-weight:500; font-size:1.6rem; margin:0 0 10px; }.fe-blog-empty p { margin:0; line-height:1.7; color:var(--color-ink-soft,#596059); }
.fe-blog-pagination { display:flex; justify-content:center; margin-top:40px; }.fe-blog-pagination .page-numbers { padding:9px 13px; margin:0 3px; display:inline-flex; text-decoration:none; border-radius:6px; }.fe-blog-pagination .current { background:var(--color-brand-deep,#6b1934); color:#fff; }
.fe-blog-hero-small { padding-bottom:46px; }.fe-blog-back { display:inline-block; color:var(--color-brand-deep,#6b1934); font-weight:700; margin-top:15px; }
.fe-blog-single-hero { padding-bottom:56px; }.fe-blog-single-hero h1 { max-width:960px; font-size:clamp(2.5rem,5.2vw,4.5rem); }.fe-blog-tags { display:flex; gap:10px; flex-wrap:wrap; }.fe-blog-tags a { color:var(--color-brand-deep,#6b1934); text-decoration:none; font-size:.83rem; font-weight:700; border-bottom:1px solid currentColor; }.fe-blog-single-meta { display:flex; gap:12px; color:var(--color-ink-soft,#596059); font-size:.89rem; margin-top:23px; }
.fe-blog-reading { max-width:930px; padding-top:52px; padding-bottom:85px; }.fe-blog-cover img { width:100%; height:auto; max-height:590px; object-fit:cover; border-radius:12px; margin-bottom:36px; }.fe-blog-prose { max-width:790px; margin:0 auto; font-size:1.04rem; line-height:1.88; overflow-wrap:anywhere; }.fe-blog-prose h2,.fe-blog-prose h3 { font-family:var(--font-display,Georgia,serif); font-weight:500; line-height:1.25; margin:1.7em 0 .65em; }.fe-blog-prose h2 { font-size:2rem; }.fe-blog-prose h3 { font-size:1.48rem; }.fe-blog-prose p { margin-bottom:1.15em; }.fe-blog-prose img { max-width:100%; height:auto; }.fe-blog-prose a { text-decoration:underline; }
.fe-blog-end { max-width:790px; margin:58px auto 0; border-top:1px solid var(--color-line-soft,#e8e0d3); padding-top:28px; }.fe-blog-end>strong { font-family:var(--font-display,Georgia,serif); font-size:1.55rem; font-weight:500; }.fe-blog-end p { color:var(--color-ink-soft,#596059); line-height:1.7; margin:10px 0 20px; }.fe-blog-end-links { display:flex; flex-wrap:wrap; gap:14px 22px; }.fe-blog-end-links a { color:var(--color-brand-deep,#6b1934); font-weight:700; }
@media (max-width:950px) { .fe-blog-articles { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:640px) { .fe-blog-hero { padding:28px 0 43px; }.fe-blog-breadcrumb { margin-bottom:28px; }.fe-blog-section { padding:44px 0; }.fe-blog-categories,.fe-blog-articles { grid-template-columns:1fr; gap:14px; }.fe-blog-category { min-height:0; padding:23px; }.fe-blog-article-body { padding:20px; }.fe-blog-empty { padding:25px; }.fe-blog-reading { padding-top:30px; padding-bottom:50px; }.fe-blog-prose { font-size:1rem; } }
