/* =====================================================
   NextWave — Archive / Blog Styles
   ===================================================== */

/* ── Hero Banner ─────────────────────────────────── */

.nwb-hero {
	position: relative;
	/* Sube el hero para tapar el padding-top de .nw-main (topbar + nav = 124px) */
	margin-top: calc(-1 * var(--nw-header-h));
	/* Compensa internamente para que el texto quede por debajo del header flotante */
	padding: calc(var(--nw-header-h) + 88px) 24px 96px;
	text-align: center;
	overflow: hidden;
	background-image: url('https://nextwavebpo.com/wp-content/uploads/business-analysis5.webp');
	background-size: cover;
	background-position: center 30%;
	background-repeat: no-repeat;
}

/* Capa 1 — oscurece la foto de arriba a abajo */
.nwb-hero::before {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(
		to bottom,
		rgba(7, 17, 31, 0.38) 0%,
		rgba(7, 17, 31, 0.82) 100%
	);
	z-index: 1;
}

/* Capa 2 — acento diagonal azul/cyan desde la izquierda */
.nwb-hero::after {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(
		125deg,
		rgba(0, 119, 182, 0.45) 0%,
		rgba(0, 180, 216, 0.18) 38%,
		transparent 65%
	);
	z-index: 2;
}

.nwb-hero__inner {
	position: relative;
	z-index: 3;
	max-width: var(--nw-max-w);
	margin: 0 auto;
}

/* Línea decorativa sobre el título */
.nwb-hero__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--nw-cyan);
	margin-bottom: 18px;
}

.nwb-hero__eyebrow::before,
.nwb-hero__eyebrow::after {
	content: '';
	display: block;
	width: 32px;
	height: 1px;
	background: var(--nw-cyan);
	opacity: 0.7;
}

.nwb-hero__title {
	font-size: clamp(2rem, 5vw, 3.2rem);
	font-weight: 800;
	color: #ffffff !important;
	margin: 0 0 18px;
	letter-spacing: -0.025em;
	line-height: 1.15;
	text-shadow: 0 2px 28px rgba(0, 0, 0, 0.65), 0 1px 6px rgba(0, 0, 0, 0.5);
}

.nwb-hero__subtitle {
	font-size: clamp(0.95rem, 1.6vw, 1.1rem);
	color: rgba(255, 255, 255, 0.82);
	max-width: 520px;
	margin: 0 auto;
	line-height: 1.7;
	text-shadow: 0 1px 12px rgba(0, 0, 0, 0.45);
}

/* ── Page Layout ─────────────────────────────────── */

.nwb-layout {
	padding: 72px 24px 100px;
	background: var(--nw-off-white);
}

.nwb-layout__inner {
	max-width: var(--nw-max-w);
	margin: 0 auto;
	display: grid;
	grid-template-columns: 1fr 320px;
	gap: 48px;
	align-items: start;
}

/* ── Main Content Column ─────────────────────────── */

.nwb-main {
	min-width: 0;
}

/* ── Posts List ──────────────────────────────────── */

.nwb-posts {
	display: flex;
	flex-direction: column;
	gap: 36px;
}

/* ── Post Card ───────────────────────────────────── */

.nwb-post {
	background: none;
	transition: transform var(--nw-speed) var(--nw-ease);
}

.nwb-post:hover {
	transform: translateY(-3px);
}

/* ── Post Thumbnail ──────────────────────────────── */

.nwb-post__thumb {
	display: block;
	overflow: hidden;
	aspect-ratio: 16 / 7;
	border-radius: var(--nw-radius);
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.12), 0 12px 40px rgba(0, 0, 0, 0.08);
}

.nwb-post__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.45s var(--nw-ease);
}

.nwb-post:hover .nwb-post__thumb img {
	transform: scale(1.04);
}

/* ── Post Body ───────────────────────────────────── */

.nwb-post__body {
	padding: 22px 4px 8px;
}

/* ── Post Meta (date + author) ───────────────────── */

.nwb-post__meta {
	display: flex;
	align-items: center;
	gap: 20px;
	margin-bottom: 14px;
}

.nwb-post__date,
.nwb-post__author {
	display: flex;
	align-items: center;
	gap: 5px;
	font-size: 0.8125rem;
	color: var(--nw-text-muted);
}

.nwb-post__date svg,
.nwb-post__author svg {
	flex-shrink: 0;
	color: var(--nw-blue);
}

/* ── Post Title ──────────────────────────────────── */

.nwb-post__title {
	font-size: clamp(1.15rem, 2vw, 1.45rem);
	font-weight: 800;
	color: var(--nw-text-h);
	margin: 0 0 12px;
	line-height: 1.25;
	text-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.nwb-post__title a {
	color: inherit;
	text-decoration: none;
	transition: color var(--nw-speed) var(--nw-ease);
}

.nwb-post__title a:hover {
	color: var(--nw-blue);
}

/* ── Post Excerpt ────────────────────────────────── */

.nwb-post__excerpt {
	font-size: 0.9375rem;
	color: var(--nw-text-body);
	line-height: 1.75;
	margin-bottom: 22px;
}

.nwb-post__excerpt p {
	margin: 0;
}

/* ── Read More Button ────────────────────────────── */

.nwb-post__btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: var(--nw-blue);
	color: var(--nw-white);
	font-size: 0.875rem;
	font-weight: 600;
	padding: 10px 22px;
	border-radius: 6px;
	text-decoration: none;
	transition: background var(--nw-speed) var(--nw-ease), gap var(--nw-speed) var(--nw-ease);
}

.nwb-post__btn:hover {
	background: #005f92;
	gap: 10px;
}

/* ── Pagination ──────────────────────────────────── */

.nwb-pagination {
	margin-top: 48px;
}

.nwb-pagination .nav-links {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	flex-wrap: wrap;
}

.nwb-pagination .page-numbers {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 40px;
	height: 40px;
	padding: 0 8px;
	border-radius: 6px;
	font-size: 0.875rem;
	font-weight: 600;
	color: var(--nw-text-body);
	text-decoration: none;
	background: var(--nw-white);
	border: 1px solid var(--nw-border);
	transition: background var(--nw-speed) var(--nw-ease), color var(--nw-speed) var(--nw-ease), border-color var(--nw-speed) var(--nw-ease);
}

.nwb-pagination .page-numbers.current,
.nwb-pagination .page-numbers:hover:not(.dots) {
	background: var(--nw-blue);
	color: var(--nw-white);
	border-color: var(--nw-blue);
}

.nwb-pagination .page-numbers.dots {
	background: none;
	border: none;
	cursor: default;
}

/* ── Empty State ─────────────────────────────────── */

.nwb-empty {
	font-size: 1rem;
	color: var(--nw-text-muted);
	padding: 48px;
	text-align: center;
	background: var(--nw-white);
	border-radius: var(--nw-radius);
}

/* ════════════════════════════════════════════════════
   SIDEBAR — dark navy theme
   ════════════════════════════════════════════════════ */

.nwb-sidebar {
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 20px;
	position: sticky;
	top: 100px;
}

/* ── Widget Container ────────────────────────────── */

.nwb-widget {
	background: var(--nw-navy-mid);
	border-radius: var(--nw-radius);
	padding: 22px 24px;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.25);
}

.nwb-widget__title {
	font-size: 1rem;
	font-weight: 700;
	color: #ffffff !important;
	margin: 0 0 16px;
	padding-bottom: 12px;
	border-bottom: 2px solid var(--nw-blue);
}

/* ── Search Form ─────────────────────────────────── */

.nwb-widget .search-form {
	display: flex;
	align-items: stretch;
	gap: 8px;
}

.nwb-widget .search-form label {
	flex: 1;
	display: flex;
	margin: 0;
}

.nwb-widget .search-field {
	flex: 1;
	width: 100%;
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 8px;
	padding: 0 14px;
	font-size: 0.875rem;
	font-family: var(--nw-font-body);
	color: var(--nw-white);
	background: rgba(255, 255, 255, 0.07);
	outline: none;
	transition: border-color var(--nw-speed) var(--nw-ease), background var(--nw-speed) var(--nw-ease);
	box-sizing: border-box;
	height: 44px;
	-webkit-appearance: none;
	appearance: none;
}

.nwb-widget .search-field::placeholder {
	color: rgba(255, 255, 255, 0.35);
}

.nwb-widget .search-field:focus {
	border-color: var(--nw-cyan);
	background: rgba(255, 255, 255, 0.11);
}

.nwb-widget .search-submit {
	flex-shrink: 0;
	width: 44px;
	height: 44px;
	background: var(--nw-blue);
	color: var(--nw-white);
	border: none;
	border-radius: 8px;
	padding: 0;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background var(--nw-speed) var(--nw-ease), transform var(--nw-speed) var(--nw-ease);
	-webkit-appearance: none;
	appearance: none;
}

.nwb-widget .search-submit:hover {
	background: var(--nw-cyan);
	transform: scale(1.05);
}

/* ── Recent Posts ────────────────────────────────── */

.nwb-recent-posts {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.nwb-recent-posts__item {
	display: flex;
	gap: 12px;
	align-items: flex-start;
}

.nwb-recent-posts__thumb {
	flex-shrink: 0;
	width: 68px;
	height: 56px;
	border-radius: 6px;
	overflow: hidden;
	display: block;
	border: 1px solid rgba(255, 255, 255, 0.08);
}

.nwb-recent-posts__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform var(--nw-speed) var(--nw-ease);
}

.nwb-recent-posts__thumb:hover img {
	transform: scale(1.06);
}

.nwb-recent-posts__info {
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 0;
}

.nwb-recent-posts__date {
	font-size: 0.75rem;
	color: rgba(255, 255, 255, 0.42);
}

.nwb-recent-posts__title {
	font-size: 0.875rem;
	font-weight: 600;
	color: rgba(255, 255, 255, 0.85);
	text-decoration: none;
	line-height: 1.4;
	transition: color var(--nw-speed) var(--nw-ease);
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.nwb-recent-posts__title:hover {
	color: var(--nw-cyan);
}

/* ── Category List ───────────────────────────────── */

.nwb-cat-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.nwb-cat-list__item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 9px 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.07);
}

.nwb-cat-list__item:last-child {
	border-bottom: none;
	padding-bottom: 0;
}

.nwb-cat-list__item:first-child {
	padding-top: 0;
}

.nwb-cat-list__link {
	font-size: 0.875rem;
	color: rgba(255, 255, 255, 0.75);
	text-decoration: none;
	transition: color var(--nw-speed) var(--nw-ease);
}

.nwb-cat-list__link:hover {
	color: var(--nw-cyan);
}

.nwb-cat-list__count {
	font-size: 0.72rem;
	font-weight: 700;
	color: var(--nw-white);
	background: var(--nw-blue);
	padding: 2px 9px;
	border-radius: 20px;
	min-width: 26px;
	text-align: center;
	flex-shrink: 0;
}

/* ── Archives ────────────────────────────────────── */

.nwb-archives {
	list-style: none;
	margin: 0;
	padding: 0;
}

.nwb-archives li {
	padding: 8px 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.07);
}

.nwb-archives li:last-child {
	border-bottom: none;
	padding-bottom: 0;
}

.nwb-archives li:first-child {
	padding-top: 0;
}

.nwb-archives a {
	font-size: 0.875rem;
	color: rgba(255, 255, 255, 0.75);
	text-decoration: none;
	display: flex;
	align-items: center;
	gap: 8px;
	transition: color var(--nw-speed) var(--nw-ease);
}

.nwb-archives a::before {
	content: '›';
	color: var(--nw-cyan);
	font-size: 1.2rem;
	line-height: 1;
}

.nwb-archives a:hover {
	color: var(--nw-cyan);
}

/* ── Tag Cloud ───────────────────────────────────── */

.nwb-tag-cloud {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.nwb-tag {
	display: inline-block;
	padding: 5px 13px;
	border: 1px solid rgba(255, 255, 255, 0.15);
	border-radius: 20px;
	font-size: 0.8125rem;
	color: rgba(255, 255, 255, 0.7);
	text-decoration: none;
	background: rgba(255, 255, 255, 0.05);
	transition: background var(--nw-speed) var(--nw-ease), color var(--nw-speed) var(--nw-ease), border-color var(--nw-speed) var(--nw-ease);
}

.nwb-tag:hover {
	background: var(--nw-cyan);
	color: var(--nw-navy);
	border-color: var(--nw-cyan);
}

/* ── Follow Us ───────────────────────────────────── */

.nwb-social {
	display: flex;
	gap: 10px;
}

.nwb-social__link {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 8px;
	color: var(--nw-white);
	text-decoration: none;
	transition: transform var(--nw-speed) var(--nw-ease), opacity var(--nw-speed) var(--nw-ease);
}

.nwb-social__link:hover {
	transform: translateY(-3px);
	opacity: 0.85;
}

.nwb-social__link--fb { background: #1877f2; }
.nwb-social__link--tw { background: #1a2332; border: 1px solid rgba(255,255,255,0.15); }
.nwb-social__link--ig { background: linear-gradient(135deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%); }
.nwb-social__link--li { background: #0a66c2; }

/* ════════════════════════════════════════════════════
   RESPONSIVE
   ════════════════════════════════════════════════════ */

@media (max-width: 900px) {
	.nwb-layout__inner {
		grid-template-columns: 1fr;
	}

	.nwb-sidebar {
		position: static;
		order: 2;
	}
}

@media (max-width: 640px) {
	.nwb-hero {
		padding: 64px 20px 52px;
	}

	.nwb-layout {
		padding: 48px 20px 72px;
	}

	.nwb-post__body {
		padding: 20px;
	}

	.nwb-post__meta {
		flex-wrap: wrap;
		gap: 10px;
	}
}
