/* ============================================================================
   NexoVenues — Blog (índice, single y sidebar)
   Estética oscura/dorada coherente con theme.css
   ============================================================================ */

:root {
	--nv-navy: #0A0E1A;
	--nv-navy-2: #080B14;
	--nv-gold: #C9A962;
	--nv-cream: #FAF8F5;
	--nv-off: #E0DDD8;
	--nv-gray: #888888;
	--nv-line: rgba(201, 169, 98, 0.18);
}

.blog-main {
	background: var(--nv-navy);
	color: var(--nv-cream);
	padding: 0 0 100px;
}

/* ── Hero del blog ───────────────────────────────────────────────────────── */
.blog-hero {
	text-align: center;
	padding: 140px 24px 60px;
	max-width: 820px;
	margin: 0 auto;
}
.blog-hero-tag {
	font-family: 'Inter', sans-serif;
	text-transform: uppercase;
	letter-spacing: 3px;
	font-size: 12px;
	color: var(--nv-gold);
	margin: 0 0 18px;
}
.blog-hero-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: clamp(2.4rem, 5vw, 4rem);
	font-weight: 600;
	line-height: 1.1;
	margin: 0 0 20px;
	color: var(--nv-cream);
}
.blog-hero-sub {
	font-size: 1.05rem;
	line-height: 1.7;
	color: var(--nv-off);
	margin: 0;
}

/* ── Layout 2 columnas ───────────────────────────────────────────────────── */
.blog-layout {
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 24px;
	gap: 56px;
	align-items: flex-start;
}
.blog-content {
	flex: 1 1 600px;
	min-width: 0;
}
.blog-sidebar {
	flex: 0 0 320px;
	max-width: 340px;
	position: sticky;
	top: 110px;
}
@media (max-width: 980px) {
	.blog-sidebar { flex-basis: 100%; max-width: 100%; position: static; }
}

/* ── Listado de posts ────────────────────────────────────────────────────── */
.blog-post-list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 36px;
	list-style: none;
	margin: 0;
	padding: 0;
}
@media (max-width: 640px) {
	.blog-post-list { grid-template-columns: 1fr; }
}
.blog-card {
	background: var(--nv-navy-2);
	border: 1px solid var(--nv-line);
	overflow: hidden;
	transition: transform .35s ease, border-color .35s ease;
}
.blog-card:hover {
	transform: translateY(-4px);
	border-color: var(--nv-gold);
}
.blog-card-image img {
	width: 100%;
	height: 220px;
	object-fit: cover;
	display: block;
}
.blog-card-body { padding: 24px 24px 28px; }
.blog-card-meta {
	gap: 14px;
	font-family: 'Inter', sans-serif;
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 1.5px;
	color: var(--nv-gray);
	margin-bottom: 12px;
}
.blog-card-cats a, .blog-card-cats { color: var(--nv-gold); text-decoration: none; }
.blog-card-title { margin: 0 0 12px; font-family: 'Cormorant Garamond', serif; font-size: 1.6rem; line-height: 1.2; }
.blog-card-title a { color: var(--nv-cream); text-decoration: none; transition: color .25s ease; }
.blog-card-title a:hover { color: var(--nv-gold); }
.blog-card-excerpt { color: var(--nv-off); font-size: .95rem; line-height: 1.6; }
.blog-card-excerpt a { color: var(--nv-gold); text-decoration: none; font-weight: 500; }

/* ── Paginación ──────────────────────────────────────────────────────────── */
.blog-pagination {
	margin-top: 56px;
	gap: 14px;
	font-family: 'Inter', sans-serif;
	letter-spacing: 1px;
}
.blog-pagination a, .blog-pagination .page-numbers {
	color: var(--nv-off);
	text-decoration: none;
	padding: 8px 14px;
	border: 1px solid var(--nv-line);
	transition: all .25s ease;
}
.blog-pagination a:hover, .blog-pagination .current {
	border-color: var(--nv-gold);
	color: var(--nv-gold);
}

/* ── Sidebar ─────────────────────────────────────────────────────────────── */
.sidebar-widget {
	background: var(--nv-navy-2);
	border: 1px solid var(--nv-line);
	padding: 28px 26px;
	margin-bottom: 28px;
}
.sidebar-widget-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: 1.4rem;
	color: var(--nv-cream);
	margin: 0 0 20px;
	padding-bottom: 14px;
	border-bottom: 1px solid var(--nv-line);
}
.sidebar-latest-list { list-style: none; margin: 0; padding: 0; }
.sidebar-latest-list li { margin-bottom: 18px; padding-bottom: 18px; border-bottom: 1px solid rgba(255,255,255,.05); }
.sidebar-latest-list li:last-child { border-bottom: 0; margin-bottom: 0; padding-bottom: 0; }
.sidebar-latest-list a { color: var(--nv-cream); text-decoration: none; font-family: 'Cormorant Garamond', serif; font-size: 1.1rem; line-height: 1.3; transition: color .25s ease; }
.sidebar-latest-list a:hover { color: var(--nv-gold); }
.sidebar-latest-list .wp-block-latest-posts__post-date { display: block; font-family: 'Inter', sans-serif; font-size: 11px; letter-spacing: 1px; color: var(--nv-gray); margin-top: 6px; }
.sidebar-latest-list img { margin-bottom: 8px; }

/* Nube de categorías como chips */
.sidebar-category-cloud { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; }
.sidebar-category-cloud li { margin: 0; }
.sidebar-category-cloud a {
	display: inline-block;
	font-family: 'Inter', sans-serif;
	font-size: 12px;
	letter-spacing: .5px;
	color: var(--nv-off);
	text-decoration: none;
	padding: 6px 14px;
	border: 1px solid var(--nv-line);
	border-radius: 2px;
	transition: all .25s ease;
}
.sidebar-category-cloud a:hover { background: var(--nv-gold); color: var(--nv-navy); border-color: var(--nv-gold); }

.sidebar-cta { background: linear-gradient(150deg, rgba(201,169,98,.12), rgba(8,11,20,.4)); }
.sidebar-cta p { color: var(--nv-off); font-size: .95rem; line-height: 1.6; }
.sidebar-cta-btn a { background: var(--nv-gold); color: var(--nv-navy); padding: 12px 22px; font-family: 'Inter', sans-serif; font-size: 12px; letter-spacing: 1.5px; text-transform: uppercase; text-decoration: none; display: inline-block; transition: opacity .25s ease; }
.sidebar-cta-btn a:hover { opacity: .85; }

/* ── Single ──────────────────────────────────────────────────────────────── */
.single-hero { text-align: center; padding: 140px 24px 36px; max-width: 860px; margin: 0 auto; }
.single-meta { justify-content: center; gap: 16px; font-family: 'Inter', sans-serif; font-size: 12px; text-transform: uppercase; letter-spacing: 1.5px; color: var(--nv-gray); margin-bottom: 22px; }
.single-cats a, .single-cats { color: var(--nv-gold); text-decoration: none; }
.single-title { font-family: 'Cormorant Garamond', serif; font-size: clamp(2.2rem, 4.5vw, 3.6rem); line-height: 1.12; color: var(--nv-cream); margin: 0; }
.single-featured { max-width: 1100px; margin: 0 auto 50px; }
.single-featured img { width: 100%; height: auto; display: block; }
.single-content { flex: 1 1 640px; }
.single-content :where(p, li) { color: var(--nv-off); font-size: 1.08rem; line-height: 1.85; }
.single-content :where(h2, h3, h4) { font-family: 'Cormorant Garamond', serif; color: var(--nv-cream); margin-top: 1.8em; }
.single-content a { color: var(--nv-gold); }
.single-content blockquote { border-left: 3px solid var(--nv-gold); padding-left: 24px; font-style: italic; color: var(--nv-cream); }

.single-footer-nav { margin-top: 60px; padding-top: 30px; border-top: 1px solid var(--nv-line); gap: 20px; }
.single-footer-nav a { color: var(--nv-cream); text-decoration: none; font-family: 'Inter', sans-serif; font-size: 13px; letter-spacing: 1px; }
.single-footer-nav a:hover { color: var(--nv-gold); }

.single-comments { margin-top: 70px; padding-top: 40px; border-top: 1px solid var(--nv-line); }
.single-comments .wp-block-comment-author-name a { color: var(--nv-cream); text-decoration: none; }
.single-comments .wp-element-button, .single-comments .wp-block-button__link { background: var(--nv-gold); color: var(--nv-navy); border: 0; }
