/* =========================================================
   NEXA — BLOG INDEX DINÁMICO V1
   WPCode:
   - Tipo: CSS Snippet
   - Auto Insert: Site Wide Header
   ========================================================= */

body.nexa-blog-index-page {
	background:
		radial-gradient(circle at 8% 6%, rgba(31,103,210,.12), transparent 30%),
		radial-gradient(circle at 88% 12%, rgba(137,217,200,.15), transparent 32%),
		linear-gradient(135deg,#EEF6FF 0%,#F8FBFF 46%,#EFFBF8 100%) !important;
	font-family:"DM Sans",Arial,sans-serif !important;
}

body.nexa-blog-index-page #content,
body.nexa-blog-index-page .site-content,
body.nexa-blog-index-page .content-area,
body.nexa-blog-index-page #primary,
body.nexa-blog-index-page main.site-main,
body.nexa-blog-index-page .site-main,
body.nexa-blog-index-page .woostify-container,
body.nexa-blog-index-page .container,
body.nexa-blog-index-page .entry-content,
body.nexa-blog-index-page article.page {
	width:100% !important;
	max-width:none !important;
	margin:0 !important;
	padding:0 !important;
	background:transparent !important;
}

body.nexa-blog-index-page .entry-header,
body.nexa-blog-index-page .page-header,
body.nexa-blog-index-page .page-title,
body.nexa-blog-index-page .entry-title {
	display:none !important;
}

.nexa-blog-index,
.nexa-blog-index * {
	box-sizing:border-box;
}

.nexa-blog-index {
	position:relative;
	width:100%;
	overflow:hidden;
	color:#172B3F;
}

.nexa-blog-index__bg {
	position:absolute;
	inset:0;
	z-index:0;
	pointer-events:none;
	overflow:hidden;
}

.nexa-blog-index__orb {
	position:absolute;
	width:460px;
	height:460px;
	border-radius:999px;
	filter:blur(10px);
	opacity:.24;
}

.nexa-blog-index__orb--blue {
	left:-220px;
	top:80px;
	background:radial-gradient(circle,rgba(31,103,210,.32),transparent 68%);
}

.nexa-blog-index__orb--mint {
	right:-210px;
	top:360px;
	background:radial-gradient(circle,rgba(137,217,200,.34),transparent 68%);
}

.nexa-blog-index__ring {
	position:absolute;
	right:-150px;
	top:70px;
	width:390px;
	height:390px;
	border:1px solid rgba(31,103,210,.09);
	border-radius:999px;
}

.nexa-blog-index__shell {
	position:relative;
	z-index:1;
	width:min(100% - 32px,1120px);
	margin:0 auto;
	padding:clamp(34px,5vw,58px) 0 clamp(72px,8vw,110px);
}

.nexa-blog-index__hero {
	max-width:860px;
	margin:0 auto 28px;
	text-align:center;
}

.nexa-blog-index__eyebrow {
	display:block;
	margin:0 0 9px;
	color:#3B9F91;
	font-size:9px;
	font-weight:950;
	letter-spacing:.15em;
	text-transform:uppercase;
}

.nexa-blog-index__hero h1 {
	margin:0 !important;
	color:#0C2742 !important;
	font-family:"DM Sans",Arial,sans-serif !important;
	font-size:clamp(42px,6vw,74px) !important;
	font-weight:950 !important;
	line-height:.95 !important;
	letter-spacing:-.06em !important;
	text-transform:none !important;
}

.nexa-blog-index__hero p {
	max-width:720px;
	margin:17px auto 0 !important;
	color:#5D7186 !important;
	font-size:clamp(15px,1.4vw,18px) !important;
	font-weight:600 !important;
	line-height:1.65 !important;
}

.nexa-blog-index__quicklinks {
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	gap:9px;
	margin-top:20px;
}

.nexa-blog-index__quicklinks a {
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:42px;
	padding:0 16px;
	border:1px solid rgba(31,103,210,.13);
	border-radius:999px;
	background:rgba(255,255,255,.72);
	color:#1858B8 !important;
	font-size:12px;
	font-weight:900;
	text-decoration:none !important;
	box-shadow:0 10px 24px rgba(12,39,66,.04);
}

/* Featured */
.nexa-blog-featured {
	display:grid;
	grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
	gap:0;
	margin:34px 0 26px;
	border:1px solid rgba(255,255,255,.82);
	border-radius:28px;
	background:
		linear-gradient(135deg,rgba(255,255,255,.90),rgba(255,255,255,.67)),
		radial-gradient(circle at 100% 0%,rgba(137,217,200,.16),transparent 35%);
	box-shadow:
		0 28px 72px rgba(12,39,66,.08),
		inset 0 1px 0 rgba(255,255,255,.90);
	overflow:hidden;
}

.nexa-blog-featured__media {
	min-height:330px;
	background:
		radial-gradient(circle at 25% 30%,rgba(31,103,210,.24),transparent 28%),
		radial-gradient(circle at 72% 70%,rgba(137,217,200,.40),transparent 30%),
		linear-gradient(135deg,#EAF3FF,#EFFBF8);
	overflow:hidden;
}

.nexa-blog-featured__media a,
.nexa-blog-featured__media img,
.nexa-blog-featured__placeholder {
	display:block;
	width:100%;
	height:100%;
}

.nexa-blog-featured__media img {
	object-fit:cover;
}

.nexa-blog-featured__placeholder {
	min-height:330px;
	background:
		radial-gradient(circle at 26% 28%,rgba(31,103,210,.25),transparent 25%),
		radial-gradient(circle at 72% 70%,rgba(137,217,200,.44),transparent 28%),
		linear-gradient(135deg,#EAF3FF,#EFFBF8);
}

.nexa-blog-featured__content {
	display:flex;
	flex-direction:column;
	justify-content:center;
	padding:clamp(24px,4vw,42px);
}

.nexa-blog-featured__label {
	display:block;
	margin:0 0 8px;
	color:#3B9F91;
	font-size:9px;
	font-weight:950;
	letter-spacing:.14em;
}

.nexa-blog-featured__cat {
	display:inline-flex;
	width:max-content;
	align-items:center;
	min-height:25px;
	padding:0 9px;
	margin:0 0 12px;
	border-radius:999px;
	background:#EAF3FF;
	color:#1858B8;
	font-size:8px;
	font-weight:950;
	letter-spacing:.08em;
	text-transform:uppercase;
}

.nexa-blog-featured__content h2 {
	margin:0 !important;
	color:#0C2742 !important;
	font-family:"DM Sans",Arial,sans-serif !important;
	font-size:clamp(30px,4vw,48px) !important;
	font-weight:950 !important;
	line-height:1 !important;
	letter-spacing:-.05em !important;
}

.nexa-blog-featured__content h2 a {
	color:inherit !important;
	text-decoration:none !important;
}

.nexa-blog-featured__content p {
	margin:15px 0 0 !important;
	color:#5F7489 !important;
	font-size:14px !important;
	font-weight:600 !important;
	line-height:1.65 !important;
}

.nexa-blog-featured__meta {
	display:flex;
	flex-wrap:wrap;
	gap:8px 14px;
	margin-top:17px;
	color:#7A8D9F;
	font-size:10px;
	font-weight:700;
}

.nexa-blog-featured__cta {
	display:inline-flex;
	width:max-content;
	align-items:center;
	gap:7px;
	min-height:46px;
	margin-top:20px;
	padding:0 19px;
	border-radius:999px;
	background:linear-gradient(135deg,#347CE7,#1858B8);
	color:#FFFFFF !important;
	font-size:12px;
	font-weight:900;
	text-decoration:none !important;
	box-shadow:0 12px 26px rgba(31,103,210,.18);
}

/* Categories */
.nexa-blog-categories {
	display:flex;
	align-items:center;
	gap:12px;
	margin:20px 0 34px;
	padding:12px 14px;
	border:1px solid rgba(31,103,210,.09);
	border-radius:16px;
	background:rgba(255,255,255,.62);
	box-shadow:0 12px 30px rgba(12,39,66,.04);
	overflow:hidden;
}

.nexa-blog-categories__label {
	flex:0 0 auto;
	color:#0C2742;
	font-size:10px;
	font-weight:900;
}

.nexa-blog-categories__list {
	display:flex;
	gap:8px;
	overflow-x:auto;
	scrollbar-width:none;
}

.nexa-blog-categories__list::-webkit-scrollbar {
	display:none;
}

.nexa-blog-categories__list a {
	display:inline-flex;
	flex:0 0 auto;
	align-items:center;
	min-height:32px;
	padding:0 11px;
	border:1px solid rgba(31,103,210,.10);
	border-radius:999px;
	background:#FFFFFF;
	color:#5C7186 !important;
	font-size:9px;
	font-weight:850;
	text-decoration:none !important;
}

.nexa-blog-categories__list a.is-active {
	border-color:#1F67D2;
	background:#EAF3FF;
	color:#1858B8 !important;
}

/* Latest */
.nexa-blog-section-head {
	margin:0 0 18px;
}

.nexa-blog-section-head h2,
.nexa-blog-resources h2 {
	margin:0 !important;
	color:#0C2742 !important;
	font-family:"DM Sans",Arial,sans-serif !important;
	font-size:clamp(28px,3.5vw,42px) !important;
	font-weight:950 !important;
	line-height:1.03 !important;
	letter-spacing:-.045em !important;
}

.nexa-blog-grid {
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:16px;
}

.nexa-blog-card {
	display:flex;
	flex-direction:column;
	min-width:0;
	border:1px solid rgba(255,255,255,.82);
	border-radius:22px;
	background:rgba(255,255,255,.78);
	box-shadow:
		0 18px 46px rgba(12,39,66,.055),
		inset 0 1px 0 rgba(255,255,255,.86);
	overflow:hidden;
}

.nexa-blog-card__media {
	display:block;
	aspect-ratio:16/10;
	background:
		radial-gradient(circle at 28% 25%,rgba(137,217,200,.38),transparent 30%),
		linear-gradient(135deg,#EAF3FF,#F2FCF9);
	overflow:hidden;
}

.nexa-blog-card__media img,
.nexa-blog-card__placeholder {
	display:block;
	width:100%;
	height:100%;
}

.nexa-blog-card__media img {
	object-fit:cover;
}

.nexa-blog-card__placeholder {
	background:
		radial-gradient(circle at 26% 30%,rgba(31,103,210,.24),transparent 24%),
		radial-gradient(circle at 74% 68%,rgba(137,217,200,.42),transparent 28%),
		linear-gradient(135deg,#EDF5FF,#EFFBF8);
}

.nexa-blog-card__body {
	display:flex;
	flex:1;
	flex-direction:column;
	padding:17px;
}

.nexa-blog-card__meta {
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:10px;
	margin-bottom:10px;
	color:#8192A2;
	font-size:8.5px;
	font-weight:800;
}

.nexa-blog-card__cat {
	color:#3B9F91;
	font-weight:950;
	letter-spacing:.08em;
	text-transform:uppercase;
}

.nexa-blog-card h3 {
	margin:0 0 9px !important;
	color:#0C2742 !important;
	font-family:"DM Sans",Arial,sans-serif !important;
	font-size:20px !important;
	font-weight:950 !important;
	line-height:1.12 !important;
	letter-spacing:-.035em !important;
}

.nexa-blog-card h3 a {
	color:inherit !important;
	text-decoration:none !important;
}

.nexa-blog-card p {
	margin:0 0 14px !important;
	color:#6B7F93 !important;
	font-size:11px !important;
	font-weight:600 !important;
	line-height:1.6 !important;
}

.nexa-blog-card__footer {
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:10px;
	margin-top:auto;
	padding-top:13px;
	border-top:1px solid rgba(12,39,66,.06);
	color:#8A9AA9;
	font-size:8.5px;
	font-weight:750;
}

.nexa-blog-card__footer a {
	color:#1858B8 !important;
	font-weight:900;
	text-decoration:none !important;
}

/* Pagination */
.nexa-blog-pagination {
	margin-top:26px;
}

.nexa-blog-pagination ul {
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	gap:7px;
	margin:0 !important;
	padding:0 !important;
	list-style:none !important;
}

.nexa-blog-pagination a,
.nexa-blog-pagination span {
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-width:36px;
	height:36px;
	padding:0 10px;
	border:1px solid rgba(31,103,210,.12);
	border-radius:10px;
	background:rgba(255,255,255,.78);
	color:#1858B8 !important;
	font-size:10px;
	font-weight:900;
	text-decoration:none !important;
}

.nexa-blog-pagination .current {
	border-color:#1F67D2;
	background:#1F67D2;
	color:#FFFFFF !important;
}

/* Resources */
.nexa-blog-resources {
	display:grid;
	grid-template-columns:minmax(0,1fr) auto;
	gap:20px;
	align-items:center;
	margin-top:clamp(40px,6vw,64px);
	padding:22px 24px;
	border:1px solid rgba(137,217,200,.30);
	border-radius:22px;
	background:
		radial-gradient(circle at 100% 0%,rgba(137,217,200,.15),transparent 40%),
		rgba(249,253,252,.88);
	box-shadow:0 18px 44px rgba(12,39,66,.05);
}

.nexa-blog-resources p {
	margin:8px 0 0 !important;
	color:#64798D !important;
	font-size:13px !important;
	font-weight:600 !important;
	line-height:1.6 !important;
}

.nexa-blog-resources__actions {
	display:flex;
	flex-wrap:wrap;
	justify-content:flex-end;
	gap:9px;
}

.nexa-blog-btn {
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:46px;
	padding:0 19px;
	border-radius:999px;
	font-size:12px;
	font-weight:900;
	text-decoration:none !important;
	white-space:nowrap;
}

.nexa-blog-btn--primary {
	border:1px solid #1F67D2;
	background:linear-gradient(135deg,#347CE7,#1858B8);
	color:#FFFFFF !important;
	box-shadow:0 12px 26px rgba(31,103,210,.18);
}

.nexa-blog-btn--ghost {
	border:1px solid rgba(31,103,210,.14);
	background:rgba(255,255,255,.78);
	color:#1858B8 !important;
}

.nexa-blog-empty {
	padding:24px;
	border:1px dashed rgba(31,103,210,.16);
	border-radius:18px;
	background:rgba(255,255,255,.60);
	text-align:center;
}

.nexa-blog-empty p {
	margin:0 !important;
	color:#6B7F93 !important;
	font-size:13px !important;
	font-weight:650 !important;
}

@media(max-width:900px){
	.nexa-blog-featured {
		grid-template-columns:1fr;
	}

	.nexa-blog-featured__media,
	.nexa-blog-featured__placeholder {
		min-height:260px;
	}

	.nexa-blog-grid {
		grid-template-columns:repeat(2,minmax(0,1fr));
	}

	.nexa-blog-resources {
		grid-template-columns:1fr;
	}

	.nexa-blog-resources__actions {
		justify-content:flex-start;
	}
}

@media(max-width:640px){
	.nexa-blog-index__shell {
		width:min(100% - 20px,1120px);
		padding-top:24px;
		padding-bottom:64px;
	}

	.nexa-blog-index__hero h1 {
		font-size:clamp(38px,12vw,54px) !important;
	}

	.nexa-blog-index__hero p {
		font-size:14px !important;
	}

	.nexa-blog-featured {
		margin-top:26px;
		border-radius:22px;
	}

	.nexa-blog-featured__media,
	.nexa-blog-featured__placeholder {
		min-height:220px;
	}

	.nexa-blog-featured__content {
		padding:20px 17px;
	}

	.nexa-blog-featured__content h2 {
		font-size:31px !important;
	}

	.nexa-blog-categories {
		align-items:flex-start;
		flex-direction:column;
		gap:8px;
	}

	.nexa-blog-categories__list {
		width:100%;
	}

	.nexa-blog-grid {
		grid-template-columns:1fr;
	}

	.nexa-blog-card h3 {
		font-size:19px !important;
	}

	.nexa-blog-resources {
		padding:18px;
		border-radius:18px;
	}

	.nexa-blog-resources__actions {
		display:grid;
		grid-template-columns:1fr;
	}

	.nexa-blog-btn {
		width:100%;
	}
}

/* =========================================================
   NEXA — BLOG INDEX V2 / AJUSTES DESKTOP
   - Imagen destacada completa, sin recorte
   - Botones con texto más legible
   ========================================================= */

@media (min-width:901px) {
	.nexa-blog-featured__media {
		display:flex;
		align-items:center;
		justify-content:center;
		background:#06111D;
	}

	.nexa-blog-featured__media a {
		display:flex;
		align-items:center;
		justify-content:center;
		width:100%;
		height:100%;
	}

	.nexa-blog-featured__media img {
		width:100%;
		height:100%;
		object-fit:contain;
		object-position:center center;
		background:#06111D;
	}
}

/* =========================================================
   NEXA — BLOG INDEX V3 / FILTROS EN LA MISMA PÁGINA
   ========================================================= */

.nexa-blog-categories {
	scroll-margin-top:90px;
}

.nexa-blog-categories__list a {
	cursor:pointer;
	transition:
		background .18s ease,
		border-color .18s ease,
		color .18s ease,
		transform .18s ease;
}

@media (hover:hover) {
	.nexa-blog-categories__list a:hover {
		transform:translateY(-1px);
		border-color:rgba(31,103,210,.22);
		background:#F7FAFF;
		color:#1858B8 !important;
	}
}

.nexa-blog-index .nexa-blog-latest {
	transition:opacity .18s ease, transform .18s ease;
}

.nexa-blog-index.is-filtering .nexa-blog-latest {
	opacity:.42;
	transform:translateY(2px);
	pointer-events:none;
}

.nexa-blog-index.is-filtering .nexa-blog-categories {
	pointer-events:none;
}

@media (prefers-reduced-motion:reduce) {
	.nexa-blog-categories__list a,
	.nexa-blog-index .nexa-blog-latest {
		transition:none;
	}
}