/* ============================================================
   BLOG EDITORIALE — Antimo D'Andrea  (News & Ispirazioni)
   Namespace: .blog-ed  — nuovo layout news/blog (lista + dettaglio)
   Riusa font gia' caricati dal sito: Bodoni Moda (serif) + Poppins (sans)
   ============================================================ */

.blog-ed {
	--ed-bg:        #f6f1e7;   /* crema pagina            */
	--ed-paper:     #fbf8f1;   /* card / superfici        */
	--ed-ink:       #1c1a16;   /* testo titoli            */
	--ed-body:      #4a463d;   /* testo corrente          */
	--ed-muted:     #a29a88;   /* meta / date             */
	--ed-line:      #e4ddcd;   /* divisori                */
	--ed-gold:      #b8985a;   /* accento oro (brand)     */
	--ed-gold-dk:   #9a7d43;
	--ed-badge-bg:  #c8a94b;   /* badge categoria         */
	--ed-badge-tx:  #ffffff;
	--serif: 'Bodoni Moda', Georgia, serif;
	background: var(--ed-bg);
	color: var(--ed-body);
	font-family: 'Poppins', 'Noto Sans', sans-serif;
}

.blog-ed .ed-wrap { max-width: 880px; margin: 0 auto; padding: 0 20px; }
.blog-ed .ed-wrap--wide { max-width: 1180px; }

/* ---------- HERO / intestazione ---------- */
.blog-ed .ed-hero {
	background: var(--ed-bg);
	padding: 64px 0 28px;
	border-bottom: 1px solid var(--ed-line);
}
.blog-ed .ed-hero-inner { display:flex; align-items:flex-end; justify-content:space-between; flex-wrap:wrap; gap:16px; }
.blog-ed .ed-hero h1 {
	font-family: var(--serif);
	font-weight: 500;
	font-style: italic;
	font-size: 46px;
	line-height: 1.05;
	color: var(--ed-ink);
	margin: 0 0 8px;
	letter-spacing: -.01em;
}
.blog-ed .ed-hero p { color: var(--ed-muted); font-size: 15px; margin: 0; }
.blog-ed .ed-breadcrumb { font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--ed-muted); }
.blog-ed .ed-breadcrumb a { color: var(--ed-muted); text-decoration: none; }
.blog-ed .ed-breadcrumb a:hover { color: var(--ed-gold); }
.blog-ed .ed-breadcrumb .sep { margin: 0 6px; opacity: .5; }

/* ---------- TAB FILTRO CATEGORIE ---------- */
.blog-ed .ed-filters {
	position: sticky; top: 0; z-index: 20;
	background: var(--ed-bg);
	border-bottom: 1px solid var(--ed-line);
}
.blog-ed .ed-filters-inner { display:flex; gap:6px 26px; flex-wrap:wrap; padding: 16px 0; }
.blog-ed .ed-filter {
	appearance:none; background:none; border:0; padding: 4px 0 8px;
	font-size: 12.5px; letter-spacing: .11em; text-transform: uppercase;
	color: var(--ed-muted); cursor: pointer; position: relative; font-weight: 500;
	transition: color .2s;
}
.blog-ed .ed-filter::after {
	content:''; position:absolute; left:0; right:0; bottom:0; height:2px;
	background: var(--ed-gold); transform: scaleX(0); transform-origin:left; transition: transform .25s;
}
.blog-ed .ed-filter:hover { color: var(--ed-ink); }
.blog-ed .ed-filter.is-active { color: var(--ed-ink); }
.blog-ed .ed-filter.is-active::after { transform: scaleX(1); }

/* ---------- LISTA ARTICOLI ---------- */
.blog-ed .ed-list { padding: 40px 0 20px; }
.blog-ed .ed-post { padding: 0 0 46px; margin: 0 0 46px; border-bottom: 1px solid var(--ed-line); }
.blog-ed .ed-post:last-child { border-bottom: 0; }

.blog-ed .ed-media {
	display:block; width:100%; aspect-ratio: 16 / 8; overflow:hidden;
	background: #d9c7ad; margin-bottom: 26px; position: relative;
}
.blog-ed .ed-media img { width:100%; height:100%; object-fit: cover; display:block; transition: transform .6s ease; }
.blog-ed .ed-post:hover .ed-media img { transform: scale(1.03); }
/* blocco-colore placeholder (come nei mockup) */
.blog-ed .ed-media--block { display:flex; align-items:center; justify-content:center; }
.blog-ed .ed-media--block span {
	font-family: var(--serif); font-style: italic; font-size: 58px;
	color: rgba(0,0,0,.12);
}

/* strip multi-immagine (1 foto = full-width sopra; 2-5 foto = N colonne) */
.blog-ed .ed-strip { display:grid; gap:10px; margin-bottom: 26px; }
.blog-ed .ed-strip.cols-2 { grid-template-columns: repeat(2,1fr); }
.blog-ed .ed-strip.cols-3 { grid-template-columns: repeat(3,1fr); }
.blog-ed .ed-strip.cols-4 { grid-template-columns: repeat(4,1fr); }
.blog-ed .ed-strip.cols-5 { grid-template-columns: repeat(5,1fr); }
.blog-ed .ed-strip a { display:block; aspect-ratio: 1 / 1; overflow:hidden; background:#d9c7ad; }
.blog-ed .ed-strip img { width:100%; height:100%; object-fit:cover; display:block; transition: transform .5s ease; }
.blog-ed .ed-strip a:hover img { transform: scale(1.05); }

.blog-ed .ed-meta { display:flex; align-items:center; gap:14px; margin-bottom: 14px; flex-wrap:wrap; }
.blog-ed .ed-badge {
	display:inline-block; background: var(--ed-badge-bg); color: var(--ed-badge-tx);
	font-size: 10.5px; letter-spacing: .1em; text-transform: uppercase; font-weight: 600;
	padding: 5px 11px; line-height: 1;
}
.blog-ed .ed-dot { color: var(--ed-muted); font-size: 12px; }
.blog-ed .ed-metatxt { color: var(--ed-muted); font-size: 12px; letter-spacing: .04em; }

.blog-ed .ed-title {
	font-family: var(--serif); font-weight: 500; color: var(--ed-ink);
	font-size: 33px; line-height: 1.14; margin: 0 0 16px; letter-spacing: -.01em;
}
.blog-ed .ed-title a { color: inherit; text-decoration: none; transition: color .2s; }
.blog-ed .ed-title a:hover { color: var(--ed-gold-dk); }
.blog-ed .ed-title em { font-style: italic; }

.blog-ed .ed-excerpt { color: var(--ed-body); font-size: 15px; line-height: 1.75; margin: 0 0 22px; max-width: 62ch; }

.blog-ed .ed-more {
	display:inline-flex; align-items:center; gap:9px;
	font-size: 11.5px; letter-spacing: .16em; text-transform: uppercase; font-weight: 600;
	color: var(--ed-ink); text-decoration: none;
}
.blog-ed .ed-more .arw { transition: transform .25s; }
.blog-ed .ed-more:hover { color: var(--ed-gold-dk); }
.blog-ed .ed-more:hover .arw { transform: translateX(5px); }

/* card in evidenza (oro) */
.blog-ed .ed-post--feat .ed-title { color: var(--ed-gold-dk); }

/* ---------- PAGINAZIONE ---------- */
.blog-ed .ed-pager { display:flex; align-items:center; justify-content:space-between; padding: 30px 0 10px; }
.blog-ed .ed-pager-nums { display:flex; gap:6px; }
.blog-ed .ed-pager a, .blog-ed .ed-pager span.num {
	min-width: 34px; height: 34px; display:inline-flex; align-items:center; justify-content:center;
	font-size: 13px; color: var(--ed-muted); text-decoration:none; border:1px solid transparent;
}
.blog-ed .ed-pager .num.is-active { color: var(--ed-ink); border-color: var(--ed-line); }
.blog-ed .ed-pager a:hover { color: var(--ed-ink); }
.blog-ed .ed-pager .ed-pnav { font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--ed-muted); text-decoration:none; }
.blog-ed .ed-pager .ed-pnav:hover { color: var(--ed-ink); }

/* ============================================================
   DETTAGLIO ARTICOLO
   ============================================================ */
.blog-ed .ed-article { padding: 30px 0 10px; }
.blog-ed .ed-article-head { padding: 8px 0 26px; }
.blog-ed .ed-h1 {
	font-family: var(--serif); font-weight: 500; color: var(--ed-ink);
	font-size: 48px; line-height: 1.08; margin: 16px 0 0; letter-spacing: -.015em;
}
.blog-ed .ed-h1 em { font-style: italic; }

.blog-ed .ed-hero-media {
	width:100%; aspect-ratio: 16 / 9; overflow:hidden; background:#d9c7ad; margin: 8px 0 34px;
	display:flex; align-items:center; justify-content:center;
}
.blog-ed .ed-hero-media img { width:100%; height:100%; object-fit:cover; }
.blog-ed .ed-hero-media span { font-family: var(--serif); font-style:italic; font-size: 84px; color: rgba(0,0,0,.10); }

/* occhiello / lead (Short Text campo1) */
.blog-ed .ed-lead { font-family: var(--serif); font-style: italic; font-size: 22px; line-height: 1.5; color: var(--ed-ink); margin: 0 0 30px; }

/* corpo articolo — stili applicati al contenuto WYSIWYG (.ed-body) */
.blog-ed .ed-body { font-size: 16.5px; line-height: 1.85; color: var(--ed-body); }
.blog-ed .ed-body p { margin: 0 0 24px; }
.blog-ed .ed-body h2, .blog-ed .ed-body h3 {
	font-family: var(--serif); color: var(--ed-ink); font-weight: 500;
	margin: 44px 0 18px; line-height: 1.2;
}
.blog-ed .ed-body h2 { font-size: 30px; }
.blog-ed .ed-body h3 { font-size: 24px; }
.blog-ed .ed-body h2 em, .blog-ed .ed-body h3 em { font-style: italic; }
.blog-ed .ed-body strong { color: var(--ed-ink); font-weight: 600; }
.blog-ed .ed-body img { width:100%; height:auto; margin: 32px 0 5px; display:block; }
.blog-ed .ed-body a { color: var(--ed-gold-dk); }

.blog-ed .ed-body blockquote {
	border-left: 3px solid var(--ed-gold); background: rgba(200,169,75,.08);
	margin: 34px 0; padding: 26px 30px; font-family: var(--serif); font-style: italic;
	font-size: 22px; line-height: 1.45; color: var(--ed-ink);
}
.blog-ed .ed-body blockquote cite {
	display:block; font-family: 'Poppins', sans-serif; font-style: normal; font-size: 11px;
	letter-spacing: .12em; text-transform: uppercase; color: var(--ed-muted); margin-top: 14px;
}

/* figura inline (segnaposto [fotoN]) */
.blog-ed .ed-figure { margin: 32px 0; }
.blog-ed .ed-figure a { display:block; overflow:hidden; }
.blog-ed .ed-figure img { width:100%; height:auto; display:block; }
.blog-ed .ed-figure figcaption { font-size: 12.5px; color: var(--ed-muted); font-style: italic; padding: 10px 2px 0; text-align:center; }

/* galleria in fondo all'articolo — carousel CSS (scroll-snap) + lightbox */
.blog-ed .ed-gallery { margin: 44px 0 10px; }
.blog-ed .ed-gallery-title { font-family: var(--serif); font-weight:500; font-size: 24px; color: var(--ed-ink); margin: 0 0 20px; }
.blog-ed .ed-gallery-track {
	display:flex; gap:12px; overflow-x:auto; scroll-snap-type:x mandatory;
	padding-bottom: 10px; -webkit-overflow-scrolling:touch;
	scrollbar-width:thin; scrollbar-color: var(--ed-gold) transparent;
}
.blog-ed .ed-gallery-track::-webkit-scrollbar { height:6px; }
.blog-ed .ed-gallery-track::-webkit-scrollbar-thumb { background: var(--ed-line); border-radius:3px; }
.blog-ed .ed-gallery-item {
	flex: 0 0 calc((100% - 24px) / 3); scroll-snap-align:start;
	aspect-ratio: 4/3; overflow:hidden; background:#d9c7ad; display:block;
}
.blog-ed .ed-gallery-item img { width:100%; height:100%; object-fit:cover; display:block; transition: transform .5s ease; }
.blog-ed .ed-gallery-item:hover img { transform: scale(1.05); }
@media (max-width: 767px) {
	.blog-ed .ed-gallery-item { flex-basis: calc((100% - 12px) / 1.6); }
}

/* tag */
.blog-ed .ed-tags { display:flex; align-items:center; flex-wrap:wrap; gap:10px; padding: 40px 0 0; }
.blog-ed .ed-tags .lbl { font-size: 11px; letter-spacing:.12em; text-transform:uppercase; color:var(--ed-muted); margin-right:4px; }
.blog-ed .ed-tag {
	display:inline-block; border:1px solid var(--ed-line); color: var(--ed-body);
	font-size: 12px; padding: 5px 13px; text-decoration:none; transition: all .2s;
}
.blog-ed .ed-tag:hover { border-color: var(--ed-gold); color: var(--ed-gold-dk); }

/* share */
.blog-ed .ed-share { display:flex; align-items:center; gap:16px; padding: 26px 0; border-top:1px solid var(--ed-line); border-bottom:1px solid var(--ed-line); margin: 34px 0; }
.blog-ed .ed-share .lbl { font-size: 11px; letter-spacing:.12em; text-transform:uppercase; color:var(--ed-muted); }
.blog-ed .ed-share a { color: var(--ed-body); font-size: 16px; transition: color .2s; }
.blog-ed .ed-share a:hover { color: var(--ed-gold); }

/* prev/next */
.blog-ed .ed-prevnext { display:grid; grid-template-columns: 1fr 1fr; gap: 20px; padding: 4px 0 30px; }
.blog-ed .ed-pn { text-decoration:none; }
.blog-ed .ed-pn .k { font-size: 10.5px; letter-spacing:.12em; text-transform:uppercase; color:var(--ed-muted); }
.blog-ed .ed-pn .t { font-family: var(--serif); font-style: italic; font-size: 19px; color: var(--ed-ink); display:block; margin-top:6px; line-height:1.25; }
.blog-ed .ed-pn.next { text-align:right; }
.blog-ed .ed-pn:hover .t { color: var(--ed-gold-dk); }

/* author box */
.blog-ed .ed-author { display:flex; gap:22px; align-items:flex-start; background: rgba(184,152,90,.09); padding: 30px 32px; margin: 10px 0 46px; }
.blog-ed .ed-author .ava {
	width: 58px; height: 58px; border-radius: 50%; flex:0 0 58px; background: var(--ed-gold);
	color:#fff; display:flex; align-items:center; justify-content:center;
	font-family: var(--serif); font-size: 26px; font-style: italic;
}
.blog-ed .ed-author .k { font-size: 10.5px; letter-spacing:.12em; text-transform:uppercase; color:var(--ed-muted); }
.blog-ed .ed-author h4 { font-family: var(--serif); font-weight:500; font-size: 21px; color: var(--ed-ink); margin: 4px 0 8px; }
.blog-ed .ed-author p { font-size: 14px; line-height: 1.7; margin: 0; color: var(--ed-body); }

/* articoli correlati */
.blog-ed .ed-related { padding: 20px 0 60px; }
.blog-ed .ed-related > h3 { font-family: var(--serif); font-weight:500; font-size: 30px; color: var(--ed-ink); margin: 0 0 28px; }
.blog-ed .ed-related > h3 em { font-style: italic; }
.blog-ed .ed-rel-grid { display:grid; grid-template-columns: repeat(4, 1fr); gap: 26px; }
.blog-ed .ed-rel-card { text-decoration:none; display:block; }
.blog-ed .ed-rel-media { width:100%; aspect-ratio: 4/3; overflow:hidden; background:#d9c7ad; margin-bottom:14px; display:flex; align-items:center; justify-content:center; }
.blog-ed .ed-rel-media img { width:100%; height:100%; object-fit:cover; }
.blog-ed .ed-rel-media span { font-family:var(--serif); font-style:italic; font-size:34px; color:rgba(0,0,0,.12); }
.blog-ed .ed-rel-card .b { font-size: 10px; letter-spacing:.1em; text-transform:uppercase; color: var(--ed-gold-dk); }
.blog-ed .ed-rel-card .t { font-family: var(--serif); font-size: 18px; line-height:1.2; color: var(--ed-ink); display:block; margin: 6px 0 8px; }
.blog-ed .ed-rel-card .t em { font-style:italic; }
.blog-ed .ed-rel-card .x { font-size: 13px; color: var(--ed-body); line-height:1.55; }

/* ---------- responsive ---------- */
@media (max-width: 767px) {
	.blog-ed .ed-hero { padding: 40px 0 20px; }
	.blog-ed .ed-hero h1 { font-size: 34px; }
	.blog-ed .ed-title { font-size: 26px; }
	.blog-ed .ed-h1 { font-size: 32px; }
	.blog-ed .ed-rel-grid { grid-template-columns: 1fr 1fr; gap: 20px; }
	.blog-ed .ed-prevnext { grid-template-columns: 1fr; }
	.blog-ed .ed-pn.next { text-align:left; }
	.blog-ed .ed-media--block span { font-size: 40px; }
	.blog-ed .ed-hero-media span { font-size: 52px; }
	.blog-ed .ed-strip.cols-4, .blog-ed .ed-strip.cols-5 { grid-template-columns: repeat(3,1fr); }
}
