/*
 * Vistas editoriales LideraFest.
 *
 * Este archivo está deliberadamente aislado bajo .lfx-site para no alterar
 * las páginas creadas con WAW Builder ni las funciones anteriores del hijo.
 */

:root {
	--lfx-navy: #0d2746;
	--lfx-navy-deep: #062341;
	--lfx-teal: #22b8b4;
	--lfx-teal-soft: #e7f8f7;
	--lfx-coral: #ff684a;
	--lfx-coral-soft: #fff0ec;
	--lfx-gold: #f6b72d;
	--lfx-gold-soft: #fff8e7;
	--lfx-blue-soft: #eef4fb;
	--lfx-ink: #15233a;
	--lfx-muted: #687489;
	--lfx-line: #e2e7ec;
	--lfx-paper: #ffffff;
	--lfx-wash: #fafbfc;
	--lfx-shell: 1320px;
	--lfx-radius: 14px;
	--lfx-shadow: 0 10px 30px rgba(13, 39, 70, 0.08);
}

body:is(.blog, .archive, .search, .single-post) {
	margin: 0;
	background: var(--lfx-paper);
}

body:is(.blog, .archive, .search, .single-post) .wp-site-blocks {
	padding: 0 !important;
}

body:is(.blog, .archive, .search, .single-post) .wp-site-blocks > *,
body:is(.blog, .archive, .search, .single-post) .wp-block-shortcode {
	width: 100% !important;
	max-width: none !important;
	margin-block: 0 !important;
	margin-inline: 0 !important;
	padding: 0 !important;
}

.lfx-site,
.lfx-site * {
	box-sizing: border-box;
}

.lfx-site {
	width: 100%;
	min-height: 100vh;
	margin: 0;
	background: var(--lfx-paper);
	color: var(--lfx-ink);
	font-family: Inter, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	font-size: 16px;
	line-height: 1.5;
	-webkit-font-smoothing: antialiased;
}

.lfx-site img,
.lfx-site svg {
	display: block;
	max-width: 100%;
}

.lfx-site a {
	color: inherit;
	text-decoration: none;
	text-underline-offset: 0.16em;
}

.lfx-site button,
.lfx-site input {
	font: inherit;
}

.lfx-site .screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.lfx-shell {
	width: min(calc(100% - 40px), var(--lfx-shell));
	margin-inline: auto;
}

/* Cabecera */

.lfx-header {
	position: sticky;
	z-index: 100;
	top: 0;
	width: 100%;
	background: rgba(255, 255, 255, 0.98);
	border-bottom: 1px solid rgba(13, 39, 70, 0.08);
	backdrop-filter: blur(12px);
}

body.admin-bar .lfx-header {
	top: 32px;
}

.lfx-header__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 72px;
	gap: 24px;
}

.lfx-brand {
	display: inline-flex;
	align-items: center;
	flex: 0 0 auto;
}

.lfx-brand img {
	width: 124px;
	height: 56px;
	object-fit: contain;
}

.lfx-nav {
	display: flex;
	align-items: center;
	gap: clamp(19px, 2.1vw, 33px);
	color: var(--lfx-navy);
	font-size: 14px;
	font-weight: 600;
}

.lfx-nav > a:not(.lfx-register) {
	position: relative;
	padding: 25px 0 23px;
}

.lfx-nav > a:not(.lfx-register)::after {
	position: absolute;
	right: 0;
	bottom: 15px;
	left: 0;
	height: 2px;
	content: "";
	background: var(--lfx-teal);
	border-radius: 999px;
	opacity: 0;
	transform: scaleX(0.4);
	transition: 160ms ease;
}

.lfx-nav > a:hover::after,
.lfx-nav > a.is-current::after {
	opacity: 1;
	transform: scaleX(1);
}

.lfx-register {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 0 22px;
	background: var(--lfx-navy);
	color: #fff !important;
	border-radius: 9px;
	box-shadow: 0 6px 14px rgba(13, 39, 70, 0.14);
	transition: 160ms ease;
}

.lfx-register:hover {
	background: var(--lfx-coral);
	transform: translateY(-1px);
}

.lfx-menu-toggle {
	display: none;
	width: 42px;
	height: 42px;
	padding: 10px;
	background: transparent;
	border: 1px solid var(--lfx-line);
	border-radius: 9px;
}

.lfx-menu-toggle > span:not(.screen-reader-text) {
	display: block;
	width: 100%;
	height: 2px;
	margin: 4px 0;
	background: var(--lfx-navy);
	border-radius: 99px;
}

/* Archivo: cabecera editorial */

.lfx-archive {
	background: var(--lfx-paper);
}

.lfx-archive-hero {
	position: relative;
	overflow: hidden;
	padding: 22px 0 21px;
	background:
		radial-gradient(circle at 91% 22%, rgba(242, 182, 50, 0.15), transparent 19%),
		linear-gradient(105deg, #fffdfa 0%, #fff 48%, #fffbf4 100%);
	border-bottom: 1px solid #f0eee9;
}

.lfx-archive-hero::before {
	position: absolute;
	top: 9px;
	left: -44px;
	width: 138px;
	height: 138px;
	content: "";
	border: 8px solid rgba(37, 184, 180, 0.18);
	border-right-color: transparent;
	border-bottom-color: transparent;
	border-radius: 50%;
	transform: rotate(29deg);
}

.lfx-archive-hero::after {
	position: absolute;
	right: 6.5%;
	bottom: -26px;
	width: 34px;
	height: 108px;
	content: "";
	background:
		linear-gradient(90deg, transparent 0 7px, #0d9f9b 7px 14px, transparent 14px 18px, #f2b632 18px 25px, transparent 25px);
	border-radius: 8px;
	transform: rotate(7deg);
	opacity: 0.85;
}

.lfx-archive-hero__grid {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(330px, 470px);
	align-items: center;
	gap: 70px;
}

.lfx-kicker {
	margin: 0 0 5px;
	color: var(--lfx-coral);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.lfx-archive-hero h1 {
	max-width: 760px;
	margin: 0;
	color: var(--lfx-navy);
	font-size: clamp(29px, 2.5vw, 34px);
	font-weight: 800;
	letter-spacing: -0.035em;
	line-height: 1.12;
	text-wrap: balance;
}

.lfx-archive-hero h1::first-line {
	color: var(--lfx-navy);
}

.lfx-title-accent {
	color: var(--lfx-teal);
}

.lfx-archive-hero__grid > div > p:last-child {
	margin: 7px 0 0;
	color: #4e5a6e;
	font-size: 16px;
}

.lfx-search {
	display: flex;
	overflow: hidden;
	height: 46px;
	background: #fff;
	border: 1px solid #dfe4e9;
	border-radius: 9px;
	box-shadow: 0 7px 18px rgba(13, 39, 70, 0.06);
}

.lfx-search input {
	min-width: 0;
	flex: 1;
	padding: 0 16px;
	color: var(--lfx-ink);
	background: transparent;
	border: 0;
	outline: 0;
	font-size: 14px;
}

.lfx-search input:focus {
	box-shadow: inset 0 0 0 2px rgba(37, 184, 180, 0.35);
}

.lfx-search button {
	display: grid;
	width: 58px;
	place-items: center;
	background: var(--lfx-coral);
	color: #fff;
	border: 0;
	font-size: 28px;
	font-weight: 500;
	cursor: pointer;
}

.lfx-topic-tabs {
	display: flex;
	gap: 14px;
	align-items: center;
	padding: 18px 0 14px;
	overflow-x: auto;
	scrollbar-width: thin;
}

.lfx-topic-tabs a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 34px;
	padding: 0 19px;
	flex: 0 0 auto;
	color: #405068;
	background: #fff;
	border: 1px solid var(--lfx-line);
	border-radius: 999px;
	font-size: 13px;
	font-weight: 700;
}

.lfx-topic-tabs a:hover,
.lfx-topic-tabs a.is-active {
	color: #fff;
	background: var(--lfx-coral);
	border-color: var(--lfx-coral);
}

.lfx-breadcrumb {
	display: flex;
	align-items: center;
	gap: 11px;
	min-height: 41px;
	color: #53637a;
	font-size: 14px;
}

.lfx-breadcrumb a {
	color: var(--lfx-navy);
	font-size: 20px;
}

.lfx-archive-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 272px;
	align-items: start;
	gap: 36px;
	padding: 4px 0 34px;
}

.lfx-archive-results {
	min-width: 0;
}

/* Tarjetas del archivo */

.lfx-featured-card {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 48%) minmax(0, 52%);
	min-height: 310px;
	overflow: hidden;
	background: #fff;
	border: 1px solid var(--lfx-line);
	border-radius: var(--lfx-radius);
	box-shadow: 0 10px 28px rgba(13, 39, 70, 0.07);
	transition:
		border-color 180ms ease,
		box-shadow 180ms ease,
		transform 180ms ease;
}

.lfx-featured-card:hover {
	border-color: rgba(37, 184, 180, 0.4);
	box-shadow: 0 16px 36px rgba(13, 39, 70, 0.1);
	transform: translateY(-2px);
}

.lfx-featured-card__media,
.lfx-compact-card__media,
.lfx-related__media {
	display: block;
	overflow: hidden;
	background: var(--lfx-teal-soft);
}

.lfx-featured-card__media {
	height: 100%;
	min-height: 310px;
	background:
		radial-gradient(circle at 18% 14%, rgba(37, 184, 180, 0.12), transparent 30%),
		linear-gradient(135deg, #f5fcfb, #fffdfa);
	border-right: 1px solid #edf1f2;
}

.lfx-featured-card__media > img,
.lfx-compact-card__media > img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
	transition: transform 220ms ease;
}

.lfx-related__media > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 220ms ease;
}

.lfx-featured-card:hover img,
.lfx-compact-card:hover img,
.lfx-related article:hover img {
	transform: scale(1.025);
}

.lfx-post-visual__placeholder,
[class$="__visual__placeholder"] {
	width: 100%;
	height: 100%;
	min-height: inherit;
}

.lfx-post-visual__placeholder svg,
[class$="__visual__placeholder"] svg {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.lfx-featured-card__body {
	position: relative;
	align-self: center;
	padding: 34px 72px 34px 34px;
}

.lfx-category-badge {
	display: inline-flex;
	align-items: center;
	min-height: 23px;
	padding: 2px 10px;
	color: #0b807c !important;
	background: var(--lfx-teal-soft);
	border: 1px solid rgba(37, 184, 180, 0.26);
	border-radius: 999px;
	font-size: 10px;
	font-weight: 800;
	line-height: 1.2;
}

.lfx-featured-card h2,
.lfx-compact-card h2 {
	margin: 8px 0 5px;
	color: var(--lfx-navy);
	font-weight: 800;
	letter-spacing: -0.025em;
	line-height: 1.17;
}

.lfx-featured-card h2 {
	margin-top: 12px;
	font-size: clamp(26px, 2.05vw, 32px);
	line-height: 1.12;
}

.lfx-featured-card h2 a:hover,
.lfx-compact-card h2 a:hover {
	color: var(--lfx-coral);
}

.lfx-featured-card__body > p,
.lfx-compact-card__body > p {
	margin: 0;
	color: var(--lfx-muted);
	line-height: 1.43;
}

.lfx-featured-card__body > p {
	max-width: 560px;
	font-size: 15px;
	line-height: 1.55;
}

.lfx-post-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 7px;
	margin-top: 12px;
	color: #68778b;
	font-size: 12px;
}

.lfx-card-arrow {
	position: absolute;
	right: 24px;
	bottom: 26px;
	display: grid;
	width: 43px;
	height: 43px;
	place-items: center;
	color: var(--lfx-coral) !important;
	border: 1.5px solid var(--lfx-coral);
	border-radius: 50%;
	font-size: 22px;
	line-height: 1;
	transition: 160ms ease;
}

.lfx-card-arrow:hover {
	color: #fff !important;
	background: var(--lfx-coral);
	transform: translateX(2px);
}

.lfx-compact-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
	margin-top: 20px;
}

.lfx-compact-card {
	display: grid;
	grid-template-columns: minmax(170px, 43%) minmax(0, 57%);
	min-height: 205px;
	overflow: hidden;
	background: #fff;
	border: 1px solid var(--lfx-line);
	border-radius: 14px;
	box-shadow: 0 7px 20px rgba(13, 39, 70, 0.055);
	transition:
		border-color 180ms ease,
		box-shadow 180ms ease,
		transform 180ms ease;
}

.lfx-compact-card:hover {
	border-color: rgba(255, 104, 74, 0.38);
	box-shadow: 0 13px 30px rgba(13, 39, 70, 0.09);
	transform: translateY(-2px);
}

.lfx-compact-card__media {
	min-height: 205px;
	background:
		linear-gradient(145deg, rgba(231, 248, 247, 0.82), rgba(255, 255, 255, 0.96));
	border-right: 1px solid #edf1f2;
}

.lfx-compact-card__body {
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-width: 0;
	padding: 21px 20px;
}

.lfx-compact-card h2 {
	margin: 9px 0 7px;
	font-size: 18px;
	line-height: 1.2;
}

.lfx-compact-card__body > p {
	display: -webkit-box;
	overflow: hidden;
	font-size: 13px;
	line-height: 1.5;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}

.lfx-compact-card__footer {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 9px 14px;
	margin-top: 15px;
}

.lfx-compact-card__footer .lfx-post-meta {
	margin-top: 0;
	font-size: 11px;
}

.lfx-compact-card__link {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	color: var(--lfx-coral) !important;
	font-size: 11.5px;
	font-weight: 800;
	white-space: nowrap;
}

.lfx-compact-card__link span {
	font-size: 16px;
	transition: transform 160ms ease;
}

.lfx-compact-card__link:hover span {
	transform: translateX(3px);
}

/*
 * El tema de bloques y algunos maquetadores aplican reglas genéricas a article,
 * sus enlaces e imágenes. Este aislamiento conserva el layout editorial real
 * y evita que las tarjetas vuelvan a apilarse o a reducir la imagen a una tira.
 */
body:is(.blog, .archive, .search) .wp-site-blocks .lfx-site .lfx-featured-card {
	display: grid !important;
	grid-template-columns: minmax(0, 48%) minmax(0, 52%) !important;
}

body:is(.blog, .archive, .search) .wp-site-blocks .lfx-site .lfx-featured-card__media {
	grid-column: 1 !important;
	grid-row: 1 !important;
	width: 100% !important;
	max-width: none !important;
	height: 100% !important;
	min-height: 310px !important;
	margin: 0 !important;
}

body:is(.blog, .archive, .search) .wp-site-blocks .lfx-site .lfx-featured-card__body {
	grid-column: 2 !important;
	grid-row: 1 !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
}

body:is(.blog, .archive, .search) .wp-site-blocks .lfx-site .lfx-featured-card__media > img,
body:is(.blog, .archive, .search) .wp-site-blocks .lfx-site .lfx-compact-card__media > img {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	height: 100% !important;
	margin: 0 !important;
	object-fit: contain !important;
	object-position: center !important;
}

body:is(.blog, .archive, .search) .wp-site-blocks .lfx-site .lfx-compact-card {
	display: grid !important;
	grid-template-columns: minmax(170px, 43%) minmax(0, 57%) !important;
}

body:is(.blog, .archive, .search) .wp-site-blocks .lfx-site .lfx-compact-card__media {
	grid-column: 1 !important;
	grid-row: 1 !important;
	width: 100% !important;
	max-width: none !important;
	height: 100% !important;
	min-height: 205px !important;
	margin: 0 !important;
}

body:is(.blog, .archive, .search) .wp-site-blocks .lfx-site .lfx-compact-card__body {
	grid-column: 2 !important;
	grid-row: 1 !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
}

.lfx-empty-state {
	padding: 48px 28px;
	background: var(--lfx-wash);
	border: 1px dashed var(--lfx-teal);
	border-radius: var(--lfx-radius);
	text-align: center;
}

.lfx-empty-state h2 {
	margin: 0 0 7px;
	color: var(--lfx-navy);
	font-size: 24px;
}

.lfx-empty-state p {
	margin: 0;
	color: var(--lfx-muted);
}

.lfx-pagination {
	margin: 19px 0 0;
}

.lfx-pagination .page-numbers {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.lfx-pagination a,
.lfx-pagination span {
	display: grid;
	min-width: 31px;
	height: 31px;
	padding: 0 8px;
	place-items: center;
	color: var(--lfx-navy);
	border: 1px solid var(--lfx-line);
	border-radius: 50%;
	font-size: 12px;
	font-weight: 700;
}

.lfx-pagination .current,
.lfx-pagination a:hover {
	color: #fff;
	background: var(--lfx-coral);
	border-color: var(--lfx-coral);
}

/* Sidebar del archivo */

.lfx-archive-sidebar {
	display: grid;
	gap: 11px;
}

.lfx-sidebar-card,
.lfx-single-sidecard,
.lfx-toc {
	padding: 15px 16px;
	background: #fff;
	border: 1px solid var(--lfx-line);
	border-radius: 12px;
}

.lfx-sidebar-card > h2,
.lfx-single-sidecard > h2,
.lfx-toc > h2 {
	margin: 0 0 10px;
	color: var(--lfx-navy);
	font-size: 14px;
	font-weight: 800;
	line-height: 1.25;
}

.lfx-theme-list {
	display: grid;
	gap: 4px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.lfx-theme-list li {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	min-height: 23px;
	padding-left: 15px;
	color: #41516a;
	font-size: 12px;
}

.lfx-theme-list li::before {
	position: absolute;
	left: 1px;
	width: 6px;
	height: 6px;
	content: "";
	background: var(--lfx-teal);
	border-radius: 50%;
}

.lfx-theme-list li.is-color-1::before {
	background: var(--lfx-coral);
}

.lfx-theme-list li.is-color-2::before {
	background: var(--lfx-gold);
}

.lfx-theme-list li.is-color-3::before {
	background: #445d85;
}

.lfx-theme-list li.is-color-4::before {
	background: #15375b;
}

.lfx-theme-list a:hover {
	color: var(--lfx-coral);
}

.lfx-theme-list span {
	color: #707d8f;
}

.lfx-subcategory-list details {
	border-bottom: 1px solid #edf0f3;
}

.lfx-subcategory-list details:last-child {
	border: 0;
}

.lfx-subcategory-list summary {
	position: relative;
	padding: 8px 18px 8px 13px;
	color: #35465e;
	font-size: 12px;
	font-weight: 750;
	cursor: pointer;
	list-style: none;
}

.lfx-subcategory-list summary::before {
	position: absolute;
	top: 15px;
	left: 1px;
	width: 6px;
	height: 6px;
	content: "";
	background: var(--lfx-teal);
	border-radius: 50%;
}

.lfx-subcategory-list summary::after {
	position: absolute;
	right: 1px;
	content: "⌄";
}

.lfx-subcategory-list ul {
	margin: 0 0 7px 26px;
	padding: 0;
	list-style: none;
}

.lfx-subcategory-list li {
	margin: 4px 0;
	color: #5a687b;
	font-size: 11.5px;
}

.lfx-subcategory-list a:hover {
	color: var(--lfx-coral);
}

.lfx-sidebar-empty {
	margin: 0;
	color: var(--lfx-muted);
	font-size: 11.5px;
}

.lfx-tag-list {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
}

.lfx-tag-list a {
	display: inline-flex;
	align-items: center;
	min-height: 27px;
	padding: 2px 9px;
	color: #158e8a;
	background: var(--lfx-teal-soft);
	border: 1px solid rgba(37, 184, 180, 0.17);
	border-radius: 6px;
	font-size: 10px;
	font-weight: 700;
}

.lfx-tag-list a:hover {
	color: #fff;
	background: var(--lfx-teal);
}

/* Single: cabecera del artículo */

.lfx-single {
	background: #fff;
}

.lfx-single-hero {
	padding: 20px 0;
	background:
		radial-gradient(circle at 88% 17%, rgba(242, 182, 50, 0.09), transparent 18%),
		linear-gradient(120deg, #fffdf9, #fff);
	border-bottom: 1px solid var(--lfx-line);
}

.lfx-single-breadcrumb {
	display: flex;
	align-items: center;
	gap: 9px;
	margin-bottom: 12px;
	color: #425574;
	font-size: 12.5px;
	font-weight: 650;
}

.lfx-single-breadcrumb a:hover {
	color: var(--lfx-coral);
}

.lfx-single-hero__grid {
	display: flex;
	align-items: center;
	gap: 40px;
}

.lfx-single-hero__copy {
	flex: 1 1 0;
	min-width: 0;
	width: 100%;
	max-width: 610px;
}

.lfx-single-hero h1 {
	max-width: 650px;
	margin: 13px 0 11px;
	color: var(--lfx-navy);
	font-size: clamp(38px, 2.85vw, 46px);
	font-weight: 850;
	letter-spacing: -0.045em;
	line-height: 1.04;
	text-wrap: balance;
}

.lfx-single-deck {
	display: block;
	overflow: visible;
	max-width: 640px;
	max-height: none;
	margin: 0;
	color: #637086;
	font-size: 16px;
	line-height: 1.5;
	text-wrap: pretty;
	-webkit-box-orient: initial;
	-webkit-line-clamp: unset;
}

.lfx-author-row {
	display: flex;
	align-items: center;
	gap: 12px;
	width: 100%;
	margin-top: 16px;
}

.lfx-author-avatar {
	flex: 0 0 50px;
	width: 50px;
	height: 50px;
	object-fit: cover;
	border: 3px solid var(--lfx-teal-soft);
	border-radius: 50%;
}

.lfx-author-row > div {
	flex: 1 1 auto;
	min-width: 0;
	width: auto;
	max-width: none;
}

.lfx-author-row strong {
	display: block;
	width: auto;
	max-width: none;
	color: var(--lfx-navy);
	font-size: 13px;
	line-height: 1.3;
}

.lfx-author-row p {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	width: auto;
	max-width: none;
	margin: 4px 0 0;
	color: #6b788a;
	font-size: 11px;
}

.lfx-single-hero__media {
	flex: 0 1 670px;
	width: min(52%, 670px);
	height: 285px;
	margin-top: -30px;
	overflow: hidden;
	background: #fff;
	border: 1px solid #e4e4df;
	border-radius: 18px;
	box-shadow: var(--lfx-shadow);
}

.lfx-single-hero__media > img,
.lfx-single-hero__media > div {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.lfx-single-hero__media > div > svg {
	width: 100%;
	height: 100%;
}

.lfx-taxonomy-strip {
	border-bottom: 1px solid var(--lfx-line);
}

.lfx-taxonomy-strip > div {
	display: flex;
	align-items: center;
	gap: 10px;
	min-height: 54px;
	overflow-x: auto;
}

.lfx-taxonomy-strip > div > span {
	color: #536681;
	font-size: 20px;
}

.lfx-taxonomy-strip a {
	display: inline-flex;
	align-items: center;
	min-height: 30px;
	padding: 3px 13px;
	flex: 0 0 auto;
	color: #257e7b;
	background: var(--lfx-teal-soft);
	border: 1px solid rgba(37, 184, 180, 0.18);
	border-radius: 7px;
	font-size: 11.5px;
	font-weight: 750;
}

/* Single: zona de lectura */

.lfx-single-layout {
	display: grid;
	grid-template-columns: 220px minmax(0, 752px) 300px;
	align-items: start;
	gap: 24px;
	padding: 24px 0 46px;
}

/*
 * Refuerzo contra reglas globales de maquetadores y plugins.
 *
 * Algunos estilos del sitio asignan anchos intrínsecos a los hijos de layouts
 * flexibles. Estas reglas solo actúan en entradas y evitan que el autor, el
 * hero o la tarjeta de compartir vuelvan a reducirse al ancho de una palabra.
 */
body.single-post .wp-site-blocks .lfx-site .lfx-single-hero__grid,
body.single-post .wp-site-blocks .lfx-site .lfx-author-row,
body.single-post .wp-site-blocks .lfx-site .lfx-share-rail__heading,
body.single-post .wp-site-blocks .lfx-site .lfx-share-list > a,
body.single-post .wp-site-blocks .lfx-site .lfx-share-list > button {
	display: flex !important;
}

body.single-post .wp-site-blocks .lfx-site .lfx-single-hero__copy,
body.single-post .wp-site-blocks .lfx-site .lfx-author-row > div,
body.single-post .wp-site-blocks .lfx-site .lfx-share-rail__heading > div,
body.single-post .wp-site-blocks .lfx-site .lfx-share-list strong {
	min-width: 0 !important;
	width: auto !important;
}

.lfx-share-rail {
	position: sticky;
	top: 98px;
	overflow: hidden;
	padding: 18px 15px 16px;
	background:
		linear-gradient(180deg, rgba(231, 248, 247, 0.78), rgba(255, 255, 255, 0) 104px),
		#fff;
	border: 1px solid var(--lfx-line);
	border-top: 4px solid var(--lfx-teal);
	border-radius: 15px;
	box-shadow: 0 9px 26px rgba(13, 39, 70, 0.07);
}

body.admin-bar .lfx-share-rail {
	top: 130px;
}

.lfx-share-rail__heading {
	display: flex;
	align-items: start;
	gap: 10px;
	width: 100%;
	margin-bottom: 15px;
}

.lfx-share-rail__heading > span {
	display: grid;
	flex: 0 0 34px;
	width: 34px;
	height: 34px;
	place-items: center;
	color: #fff;
	background: var(--lfx-teal);
	border-radius: 10px;
}

.lfx-share-rail__heading > span svg {
	width: 18px;
	height: 18px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.9;
}

.lfx-share-rail__heading > div {
	flex: 1 1 auto;
	min-width: 0;
	width: auto;
	max-width: none;
}

.lfx-share-rail__heading h2 {
	width: auto;
	max-width: none;
	margin: 0;
	color: var(--lfx-navy);
	font-size: 14.5px;
	font-weight: 850;
	letter-spacing: -0.015em;
	line-height: 1.18;
}

.lfx-share-rail__heading p {
	width: auto;
	max-width: none;
	margin: 5px 0 0;
	color: #69768a;
	font-size: 10.5px;
	line-height: 1.35;
}

.lfx-share-list {
	display: grid;
	gap: 8px;
}

.lfx-share-list a,
.lfx-share-list button {
	display: flex;
	align-items: center;
	gap: 9px;
	width: 100%;
	min-height: 42px;
	padding: 4px 8px 4px 5px;
	color: #435168;
	background: #f8fafc;
	border: 1px solid #e6ebf0;
	border-radius: 10px;
	font-size: 12px;
	text-align: left;
	cursor: pointer;
	transition:
		color 160ms ease,
		border-color 160ms ease,
		box-shadow 160ms ease,
		transform 160ms ease;
}

.lfx-share-icon {
	display: grid;
	flex: 0 0 34px;
	width: 34px;
	height: 34px;
	place-items: center;
	background: #fff;
	border-radius: 8px;
	box-shadow: 0 2px 7px rgba(13, 39, 70, 0.08);
}

.lfx-share-icon svg {
	width: 18px;
	height: 18px;
}

.lfx-share-button--whatsapp .lfx-share-icon,
.lfx-share-button--email .lfx-share-icon,
.lfx-share-button--copy .lfx-share-icon,
.lfx-share-button--x .lfx-share-icon {
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
}

.lfx-share-button--linkedin .lfx-share-icon,
.lfx-share-button--facebook .lfx-share-icon {
	fill: currentColor;
	stroke: none;
}

.lfx-share-button--whatsapp .lfx-share-icon {
	color: #159b61;
	background: #ebf9f1;
}

.lfx-share-button--linkedin .lfx-share-icon {
	color: #0a66c2;
	background: #edf6ff;
}

.lfx-share-button--x .lfx-share-icon {
	color: #111827;
	background: #eef0f3;
}

.lfx-share-button--facebook .lfx-share-icon {
	color: #1877f2;
	background: #edf4ff;
}

.lfx-share-button--email .lfx-share-icon {
	color: var(--lfx-coral);
	background: var(--lfx-coral-soft);
}

.lfx-share-button--copy .lfx-share-icon {
	color: #0a8e89;
	background: var(--lfx-teal-soft);
}

.lfx-share-list strong {
	flex: 1 1 auto;
	min-width: 0;
	width: auto;
	max-width: none;
	font-weight: 750;
}

.lfx-share-list a:hover,
.lfx-share-list button:hover {
	color: var(--lfx-coral);
	background: #fff;
	border-color: rgba(255, 104, 74, 0.55);
	box-shadow: 0 5px 13px rgba(13, 39, 70, 0.08);
	transform: translateY(-1px);
}

.lfx-share-list button.is-copied {
	color: #087d79;
	border-color: rgba(37, 184, 180, 0.65);
}

.lfx-article {
	min-width: 0;
	width: 100%;
	max-width: 752px;
}

.lfx-quick-summary {
	display: grid;
	grid-template-columns: 52px 1fr;
	gap: 15px;
	margin: 0 0 22px;
	padding: 18px 19px;
	background: linear-gradient(90deg, #f3fbfb, #fff);
	border: 1px solid rgba(37, 184, 180, 0.4);
	border-radius: 12px;
}

.lfx-article-content .lfx-quick-summary {
	margin-top: 20px;
}

.lfx-article-content .lfx-quick-summary ul {
	margin: 0;
	padding: 0;
}

.lfx-article-content .lfx-quick-summary li {
	margin: 0;
	padding: 0;
}

.lfx-quick-summary > div:first-child {
	display: grid;
	width: 44px;
	height: 44px;
	place-items: center;
	color: #fff;
	background: var(--lfx-teal);
	border-radius: 50%;
	font-size: 22px;
}

.lfx-quick-summary strong {
	display: block;
	margin-bottom: 5px;
	color: var(--lfx-teal);
	font-size: 12.5px;
	text-transform: uppercase;
}

.lfx-quick-summary ul {
	display: grid;
	gap: 4px;
	margin: 0;
	padding: 0;
	list-style: none;
	color: #3f4d61;
	font-size: 13px;
}

.lfx-quick-summary li::before {
	margin-right: 6px;
	color: var(--lfx-teal);
	content: "●";
	font-size: 6px;
	vertical-align: 2px;
}

.lfx-article-content {
	color: #2f3c50;
	font-size: 17.25px;
	line-height: 1.74;
}

.lfx-article-content > :first-child {
	margin-top: 0;
}

.lfx-article-content p {
	margin: 0 0 18px;
}

/*
 * Twenty Twenty-Five puede resolver "bolder" como 400 cuando el texto base
 * usa un peso ligero. Fijamos un peso real para que las negritas creadas en el
 * editor mantengan la jerarquía visual esperada dentro de cada artículo.
 */
.lfx-article-content strong,
.lfx-article-content b {
	color: var(--lfx-ink);
	font-weight: 700 !important;
	font-synthesis: weight;
}

.lfx-article-content h2,
.lfx-article-content h3,
.lfx-article-content h4 {
	color: var(--lfx-navy);
	font-weight: 850;
	letter-spacing: -0.025em;
	line-height: 1.18;
	scroll-margin-top: 100px;
	text-wrap: balance;
}

.lfx-article-content h2 {
	margin: 31px 0 10px;
	font-size: 28px;
}

.lfx-article-content h3 {
	margin: 25px 0 8px;
	font-size: 22px;
}

.lfx-article-content h4 {
	margin: 22px 0 7px;
	font-size: 18px;
}

.lfx-article-content a {
	color: #087d79;
	font-weight: 650;
	text-decoration: underline;
}

.lfx-article-content ul,
.lfx-article-content ol {
	margin: 12px 0 21px;
	padding-left: 25px;
}

.lfx-article-content li {
	margin: 7px 0;
}

.lfx-article-content li::marker {
	color: var(--lfx-coral);
	font-weight: 800;
}

.lfx-article-content blockquote {
	margin: 23px 0;
	padding: 17px 20px;
	background: var(--lfx-teal-soft);
	border: 0;
	border-left: 4px solid var(--lfx-teal);
	border-radius: 0 11px 11px 0;
	color: var(--lfx-navy);
}

.lfx-article-content blockquote p:last-child {
	margin-bottom: 0;
}

.lfx-article-content figure {
	margin: 26px 0;
}

.lfx-article-content figure img {
	width: 100%;
	height: auto;
	border-radius: 10px;
}

.lfx-article-content table {
	width: 100%;
	margin: 21px 0;
	border-spacing: 0;
	border-collapse: separate;
	overflow: hidden;
	border: 1px solid var(--lfx-line);
	border-radius: 9px;
	font-size: 14px;
}

.lfx-article-content th,
.lfx-article-content td {
	padding: 11px 12px;
	border-right: 1px solid var(--lfx-line);
	border-bottom: 1px solid var(--lfx-line);
	text-align: left;
}

.lfx-article-content th {
	color: var(--lfx-navy);
	background: var(--lfx-teal-soft);
}

.lfx-article-content tr:last-child td {
	border-bottom: 0;
}

.lfx-article-content th:last-child,
.lfx-article-content td:last-child {
	border-right: 0;
}

.lfx-article-end {
	margin-top: 34px;
	padding-top: 24px;
	border-top: 1px solid var(--lfx-line);
}

.lfx-post-navigation {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 15px;
	margin-top: 0;
}

.lfx-post-navigation a {
	padding: 13px 15px;
	color: var(--lfx-navy);
	background: var(--lfx-wash);
	border: 1px solid var(--lfx-line);
	border-radius: 10px;
	font-size: 12.5px;
	font-weight: 750;
}

.lfx-post-navigation a:last-child {
	text-align: right;
}

.lfx-post-navigation a:hover {
	color: var(--lfx-coral);
	border-color: var(--lfx-coral);
}

.lfx-single-sidebar {
	position: sticky;
	top: 98px;
	display: grid;
	gap: 15px;
}

body.admin-bar .lfx-single-sidebar {
	top: 130px;
}

.lfx-single-sidebar .lfx-toc,
.lfx-single-sidebar .lfx-single-sidecard {
	padding: 20px;
	border-radius: 14px;
	box-shadow: 0 6px 20px rgba(13, 39, 70, 0.035);
}

.lfx-single-sidebar .lfx-toc > h2,
.lfx-single-sidebar .lfx-single-sidecard > h2 {
	margin-bottom: 13px;
	font-size: 16px;
}

.lfx-toc-list {
	display: grid;
	gap: 3px;
	margin: 0;
	padding: 0;
	list-style: none;
	counter-reset: lfx-toc;
}

.lfx-toc-list li {
	position: relative;
	display: grid;
	grid-template-columns: 30px minmax(0, 1fr);
	align-items: center;
	min-height: 36px;
	padding: 6px 7px;
	color: #4d5b70;
	border-radius: 7px;
	counter-increment: lfx-toc;
	font-size: 12.5px;
	line-height: 1.35;
}

.lfx-toc-list li::before {
	color: var(--lfx-teal);
	content: counter(lfx-toc, decimal-leading-zero);
	font-size: 10.5px;
	font-weight: 850;
}

.lfx-toc-list li.is-subsection {
	padding-left: 16px;
}

.lfx-toc-list li.is-subsection::before {
	content: "—";
}

.lfx-toc-list li.is-active {
	color: var(--lfx-navy);
	background: var(--lfx-teal-soft);
	font-weight: 750;
}

.lfx-toc-list a:hover {
	color: var(--lfx-coral);
}

.lfx-single-sidecard > p {
	margin: 0 0 4px;
	color: var(--lfx-navy);
	font-size: 11.5px;
	font-weight: 750;
}

.lfx-single-sidecard > h2 {
	font-size: 16px;
}

.lfx-single-sidecard h2 a:hover {
	color: var(--lfx-coral);
}

.lfx-single-sidecard ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.lfx-single-sidecard li {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 34px;
	color: #58667a;
	border-top: 1px solid #edf0f3;
	font-size: 12.5px;
}

.lfx-single-sidecard li a:hover {
	color: var(--lfx-coral);
}

.lfx-related {
	padding: 31px 0 42px;
	border-top: 1px solid var(--lfx-line);
}

.lfx-related > h2 {
	margin: 0 0 16px;
	color: var(--lfx-navy);
	font-size: 21px;
	font-weight: 850;
}

.lfx-related__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 17px;
}

.lfx-related article {
	display: grid;
	grid-template-columns: 42% 58%;
	min-height: 118px;
	overflow: hidden;
	background: #fff;
	border: 1px solid var(--lfx-line);
	border-radius: 12px;
}

.lfx-related article > div:last-child {
	align-self: center;
	min-width: 0;
	padding: 12px;
}

.lfx-related h3 {
	margin: 7px 0 4px;
	color: var(--lfx-navy);
	font-size: 14px;
	font-weight: 800;
	line-height: 1.2;
}

.lfx-related h3 a:hover {
	color: var(--lfx-coral);
}

.lfx-related article p {
	margin: 0;
	color: var(--lfx-muted);
	font-size: 10.5px;
}

/* Comentarios nativos */

.lfx-comments {
	margin: 0 0 44px;
	padding: 30px;
	background: #fff;
	border: 1px solid var(--lfx-line);
	border-radius: 16px;
	box-shadow: 0 14px 42px rgba(8, 43, 73, 0.06);
}

.lfx-comments__heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 24px;
	padding-bottom: 18px;
	border-bottom: 1px solid var(--lfx-line);
}

.lfx-comments__heading p {
	margin: 0 0 4px;
	color: var(--lfx-coral);
	font-size: 12px;
	font-weight: 850;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.lfx-comments__heading h2 {
	margin: 0;
	color: var(--lfx-navy);
	font-size: clamp(23px, 2.4vw, 31px);
	font-weight: 850;
	line-height: 1.15;
}

.lfx-comments__heading > span {
	flex: 0 0 auto;
	padding: 7px 11px;
	color: #0b7f7d;
	background: var(--lfx-teal-soft);
	border-radius: 999px;
	font-size: 12px;
	font-weight: 800;
}

.lfx-comment-list,
.lfx-comment-list .children {
	margin: 0;
	padding: 0;
	list-style: none;
}

.lfx-comment-list .children {
	margin: 14px 0 0 44px;
}

.lfx-comment-list > li,
.lfx-comment-list .children > li {
	margin: 0 0 16px;
}

.lfx-comment-list .comment-body {
	position: relative;
	padding: 20px 22px 18px 82px;
	background: #fbfcfc;
	border: 1px solid #e6edef;
	border-radius: 13px;
}

.lfx-comment-list .comment-author .avatar {
	position: absolute;
	top: 20px;
	left: 20px;
	width: 46px;
	height: 46px;
	object-fit: cover;
	border: 3px solid #fff;
	border-radius: 50%;
	box-shadow: 0 3px 12px rgba(8, 43, 73, 0.12);
}

.lfx-comment-list .comment-author .fn {
	color: var(--lfx-navy);
	font-size: 14px;
	font-style: normal;
	font-weight: 850;
}

.lfx-comment-list .comment-author .says {
	display: none;
}

.lfx-comment-list .comment-meta {
	margin: 3px 0 10px;
	font-size: 11px;
}

.lfx-comment-list .comment-meta a {
	color: var(--lfx-muted);
}

.lfx-comment-list .comment-content {
	color: #384a60;
	font-size: 14.5px;
	line-height: 1.65;
}

.lfx-comment-list .comment-content > :first-child {
	margin-top: 0;
}

.lfx-comment-list .comment-content > :last-child {
	margin-bottom: 0;
}

.lfx-comment-list .reply {
	margin-top: 10px;
}

.lfx-comment-list .reply a,
.lfx-comment-list .comment-edit-link {
	color: var(--lfx-coral);
	font-size: 11.5px;
	font-weight: 800;
}

.lfx-comment-awaiting-moderation,
.lfx-comments-closed {
	color: #6a7685;
	font-size: 13px;
	font-style: normal;
}

.lfx-comment-form-wrap {
	margin-top: 26px;
	padding-top: 24px;
	border-top: 1px solid var(--lfx-line);
}

.lfx-comment-respond .comment-reply-title {
	margin: 0 0 8px;
	color: var(--lfx-navy);
	font-size: 22px;
	font-weight: 850;
}

.lfx-comment-respond .comment-reply-title small {
	margin-left: 8px;
	font-size: 11px;
}

.lfx-comment-note,
.lfx-comment-form .logged-in-as,
.lfx-comment-form .comment-notes {
	margin: 0 0 18px;
	color: var(--lfx-muted);
	font-size: 12.5px;
}

.lfx-comment-form {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 15px 18px;
}

.lfx-comment-form > p {
	margin: 0;
}

.lfx-comment-form .comment-form-comment,
.lfx-comment-form .comment-form-url,
.lfx-comment-form .comment-form-cookies-consent,
.lfx-comment-form .form-submit,
.lfx-comment-form .logged-in-as,
.lfx-comment-form .comment-notes,
.lfx-comment-form > .cf-turnstile,
.lfx-comment-form > [data-sitekey] {
	grid-column: 1 / -1;
}

.lfx-comment-form label {
	display: block;
	margin-bottom: 6px;
	color: var(--lfx-navy);
	font-size: 12.5px;
	font-weight: 800;
}

.lfx-comment-form input[type="text"],
.lfx-comment-form input[type="email"],
.lfx-comment-form input[type="url"],
.lfx-comment-form textarea {
	box-sizing: border-box;
	width: 100%;
	color: var(--lfx-navy);
	background: #fff;
	border: 1px solid #d9e2e6;
	border-radius: 9px;
	outline: none;
	box-shadow: none;
	font: inherit;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.lfx-comment-form input[type="text"],
.lfx-comment-form input[type="email"],
.lfx-comment-form input[type="url"] {
	height: 46px;
	padding: 0 13px;
}

.lfx-comment-form textarea {
	min-height: 145px;
	padding: 12px 13px;
	resize: vertical;
}

.lfx-comment-form input:focus,
.lfx-comment-form textarea:focus {
	border-color: var(--lfx-teal);
	box-shadow: 0 0 0 3px rgba(37, 184, 180, 0.14);
}

.lfx-comment-form .comment-form-cookies-consent {
	display: flex;
	align-items: flex-start;
	gap: 9px;
}

.lfx-comment-form .comment-form-cookies-consent input {
	margin-top: 3px;
}

.lfx-comment-form .comment-form-cookies-consent label {
	margin: 0;
	color: #536276;
	font-weight: 500;
	line-height: 1.45;
}

.lfx-comment-submit {
	min-height: 44px;
	padding: 0 21px;
	color: #fff;
	background: var(--lfx-coral);
	border: 0;
	border-radius: 9px;
	cursor: pointer;
	font-size: 13px;
	font-weight: 850;
	transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.lfx-comment-submit:hover {
	background: #e85339;
	box-shadow: 0 8px 22px rgba(243, 107, 67, 0.25);
	transform: translateY(-1px);
}

.lfx-comment-form .cf-turnstile,
.lfx-comment-form [data-sitekey],
.lfx-comment-form iframe {
	max-width: 100%;
}

/* Pie */

.lfx-footer {
	padding: 26px 0;
	color: #fff;
	background: linear-gradient(115deg, #062341, #0d3153);
}

.lfx-footer__grid {
	display: grid;
	grid-template-columns: minmax(280px, 1.8fr) repeat(3, minmax(120px, 1fr));
	align-items: center;
	gap: 34px;
}

.lfx-footer__brand {
	display: grid;
	grid-template-columns: 118px 1fr;
	align-items: center;
	gap: 18px;
}

.lfx-footer__brand img {
	width: 110px;
	height: 54px;
	padding: 3px;
	object-fit: contain;
	background: #fff;
	border-radius: 7px;
}

.lfx-footer__brand p {
	margin: 0;
	font-size: 14px;
	font-weight: 750;
}

.lfx-footer h2 {
	margin: 0 0 6px;
	color: #fff;
	font-size: 12px;
	font-weight: 800;
}

.lfx-footer > div > div:not(.lfx-footer__brand) > a {
	display: block;
	width: fit-content;
	margin: 3px 0;
	color: rgba(255, 255, 255, 0.78);
	font-size: 10.5px;
}

.lfx-footer a:hover {
	color: var(--lfx-gold) !important;
}

.lfx-footer__social {
	display: flex;
	gap: 7px;
}

.lfx-footer__social a {
	display: grid;
	width: 25px;
	height: 25px;
	place-items: center;
	color: #fff;
	border: 1px solid rgba(255, 255, 255, 0.55);
	border-radius: 50%;
	font-size: 9px;
	font-weight: 800;
}

.lfx-footer__social svg {
	width: 14px;
	height: 14px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
}

.lfx-footer__social svg .is-fill {
	fill: currentColor;
	stroke: none;
}

/* Responsive */

@media (max-width: 1360px) {
	.lfx-nav {
		gap: 16px;
		font-size: 13px;
	}

	.lfx-single-hero__grid {
		gap: 32px;
	}

	.lfx-single-hero__copy {
		max-width: 560px;
	}

	.lfx-single-hero__media {
		flex-basis: 620px;
		width: min(52%, 620px);
	}

	.lfx-single-hero h1 {
		font-size: clamp(36px, 4vw, 44px);
	}

	.lfx-single-layout {
		grid-template-columns: minmax(0, 1fr) 280px;
		gap: 28px;
	}

	.lfx-share-rail {
		position: static;
		display: grid;
		grid-template-columns: 230px minmax(0, 1fr);
		align-items: start;
		gap: 20px;
		grid-column: 1 / -1;
	}

	.lfx-share-rail__heading {
		margin-bottom: 0;
	}

	.lfx-share-list {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.lfx-archive-layout {
		grid-template-columns: minmax(0, 1fr) 245px;
		gap: 24px;
	}
}

@media (max-width: 1120px) {
	.lfx-compact-grid {
		grid-template-columns: 1fr;
	}

	.lfx-compact-card {
		grid-template-columns: minmax(220px, 38%) minmax(0, 62%);
	}

	body:is(.blog, .archive, .search) .wp-site-blocks .lfx-site .lfx-compact-card {
		grid-template-columns: minmax(220px, 38%) minmax(0, 62%) !important;
	}
}

@media (max-width: 900px) {
	.lfx-menu-toggle {
		display: block;
		margin-left: auto;
	}

	.lfx-nav {
		position: absolute;
		top: calc(100% + 1px);
		right: 20px;
		left: 20px;
		display: none;
		align-items: stretch;
		gap: 0;
		padding: 10px;
		background: #fff;
		border: 1px solid var(--lfx-line);
		border-radius: 12px;
		box-shadow: var(--lfx-shadow);
	}

	.lfx-nav.is-open {
		display: grid;
	}

	.lfx-nav > a:not(.lfx-register) {
		padding: 10px 12px;
	}

	.lfx-nav > a:not(.lfx-register)::after {
		display: none;
	}

	.lfx-register {
		margin-top: 6px;
	}

	.lfx-archive-hero__grid {
		grid-template-columns: 1fr;
		gap: 18px;
	}

	.lfx-single-hero__grid {
		flex-direction: column;
		align-items: stretch;
		gap: 22px;
	}

	.lfx-single-hero__copy {
		max-width: 720px;
	}

	.lfx-search {
		max-width: 570px;
	}

	.lfx-archive-layout {
		grid-template-columns: 1fr;
	}

	.lfx-archive-sidebar {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.lfx-single-hero__media {
		flex: none;
		width: 100%;
		max-width: none;
		height: min(48vw, 390px);
		margin-top: 0;
	}

	.lfx-single-layout {
		grid-template-columns: 1fr;
	}

	.lfx-share-rail {
		grid-template-columns: 210px minmax(0, 1fr);
		grid-column: auto;
	}

	.lfx-article {
		max-width: none;
	}

	.lfx-single-sidebar {
		position: static;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		align-items: start;
	}

	.lfx-single-sidebar .lfx-toc {
		grid-column: 1 / -1;
	}

	.lfx-related__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.lfx-footer__grid {
		grid-template-columns: repeat(3, 1fr);
	}

	.lfx-footer__brand {
		grid-column: 1 / -1;
	}
}

@media (max-width: 680px) {
	body.admin-bar .lfx-header {
		top: 46px;
	}

	.lfx-shell {
		width: min(calc(100% - 28px), var(--lfx-shell));
	}

	.lfx-header__inner {
		min-height: 64px;
	}

	.lfx-brand img {
		width: 108px;
		height: 50px;
	}

	.lfx-archive-hero {
		padding: 25px 0;
	}

	.lfx-archive-hero__grid {
		gap: 17px;
	}

	.lfx-archive-hero h1 {
		font-size: 31px;
	}

	.lfx-archive-hero__grid > div > p:last-child {
		font-size: 14px;
	}

	.lfx-topic-tabs {
		margin-inline: -14px;
		padding-inline: 14px;
	}

	.lfx-breadcrumb {
		min-height: 37px;
	}

	.lfx-featured-card {
		grid-template-columns: 1fr;
		height: auto;
	}

	.lfx-featured-card__media {
		min-height: 0;
		aspect-ratio: 16 / 10;
	}

	.lfx-featured-card__body {
		padding: 24px 58px 25px 22px;
	}

	.lfx-compact-grid {
		grid-template-columns: 1fr;
	}

	.lfx-compact-card {
		grid-template-columns: 1fr;
		min-height: 0;
	}

	.lfx-compact-card__media {
		min-height: 0;
		aspect-ratio: 16 / 9;
		border-right: 0;
		border-bottom: 1px solid #edf1f2;
	}

	.lfx-compact-card__body {
		padding: 20px;
	}

	body:is(.blog, .archive, .search) .wp-site-blocks .lfx-site .lfx-featured-card {
		grid-template-columns: 1fr !important;
	}

	body:is(.blog, .archive, .search) .wp-site-blocks .lfx-site .lfx-featured-card__media {
		grid-column: 1 !important;
		grid-row: 1 !important;
		height: auto !important;
		min-height: 0 !important;
		aspect-ratio: 16 / 10 !important;
	}

	body:is(.blog, .archive, .search) .wp-site-blocks .lfx-site .lfx-featured-card__body {
		grid-column: 1 !important;
		grid-row: 2 !important;
	}

	body:is(.blog, .archive, .search) .wp-site-blocks .lfx-site .lfx-compact-card {
		grid-template-columns: 1fr !important;
	}

	body:is(.blog, .archive, .search) .wp-site-blocks .lfx-site .lfx-compact-card__media {
		grid-column: 1 !important;
		grid-row: 1 !important;
		height: auto !important;
		min-height: 0 !important;
		aspect-ratio: 16 / 9 !important;
	}

	body:is(.blog, .archive, .search) .wp-site-blocks .lfx-site .lfx-compact-card__body {
		grid-column: 1 !important;
		grid-row: 2 !important;
	}

	.lfx-archive-sidebar {
		grid-template-columns: 1fr;
	}

	.lfx-single-hero {
		padding-top: 15px;
	}

	.lfx-single-hero h1 {
		font-size: clamp(33px, 9vw, 40px);
	}

	.lfx-single-deck {
		font-size: 16px;
	}

	.lfx-author-row {
		grid-template-columns: 40px minmax(0, 1fr);
	}

	.lfx-author-avatar {
		width: 40px;
		height: 40px;
	}

	.lfx-single-hero__media {
		height: 58vw;
		min-height: 235px;
	}

	.lfx-single-layout {
		grid-template-columns: 1fr;
		gap: 24px;
		padding-top: 24px;
	}

	.lfx-share-rail {
		display: block;
		padding: 18px;
	}

	.lfx-share-rail__heading {
		margin-bottom: 15px;
	}

	.lfx-share-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.lfx-single-sidebar {
		position: static;
		grid-template-columns: 1fr;
	}

	.lfx-single-sidebar .lfx-toc {
		grid-column: auto;
	}

	.lfx-article-content {
		font-size: 16.5px;
		line-height: 1.72;
	}

	.lfx-article-content h2 {
		font-size: 25px;
	}

	.lfx-article-content h3 {
		font-size: 21px;
	}

	.lfx-article-content table {
		display: block;
		overflow-x: auto;
	}

	.lfx-related__grid {
		grid-template-columns: 1fr;
	}

	.lfx-related article {
		min-height: 110px;
	}

	.lfx-footer__grid {
		grid-template-columns: repeat(2, 1fr);
		align-items: start;
	}

	.lfx-footer__brand {
		grid-template-columns: 100px 1fr;
	}
}

@media (max-width: 680px) {
	.lfx-comments {
		padding: 22px 18px;
	}

	.lfx-comments__heading {
		align-items: flex-start;
		flex-direction: column;
		gap: 11px;
	}

	.lfx-comment-list .children {
		margin-left: 18px;
	}

	.lfx-comment-list .comment-body {
		padding: 72px 17px 17px;
	}

	.lfx-comment-list .comment-author .avatar {
		top: 16px;
		left: 16px;
	}

	.lfx-comment-form {
		grid-template-columns: 1fr;
	}

	.lfx-comment-form > p {
		grid-column: 1;
	}
}

@media (max-width: 430px) {
	.lfx-featured-card h2 {
		font-size: 25px;
	}

	.lfx-featured-card__body > p {
		font-size: 14px;
	}

	.lfx-compact-card__footer {
		align-items: flex-start;
		flex-direction: column;
	}

	.lfx-post-navigation {
		grid-template-columns: 1fr;
	}

	.lfx-post-navigation a:last-child {
		text-align: left;
	}

	.lfx-footer__grid {
		grid-template-columns: 1fr;
	}

	.lfx-footer__brand {
		grid-column: auto;
	}
}

@media (prefers-reduced-motion: reduce) {
	.lfx-site *,
	.lfx-site *::before,
	.lfx-site *::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}
}
