/* ============================================================
   TM Editorial v2 · chrome.css
   Header, footer, nav, breadcrumbs, hero, sumario, autor block,
   floating bar + overlay índice, home magazine.
   ============================================================ */

/* ─── HEADER ─── */
body.tm-editorial header.tm-site {
	padding: 24px 0;
	border-bottom: 1px solid var(--rule);
	background: var(--bg);
	position: sticky;
	top: 0;
	z-index: 50;
	backdrop-filter: saturate(180%) blur(8px);
}
body.tm-editorial .tm-site-grid {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	font-size: 14px;
	gap: 24px;
}
body.tm-editorial .tm-logo {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: var(--fg);
	text-decoration: none;
}
body.tm-editorial .tm-logo:hover { color: var(--fg); }
body.tm-editorial .tm-logo-icon { width: 28px; height: 28px; display: block; flex-shrink: 0; }
body.tm-editorial .tm-logo span { font-weight: 600; font-size: 17px; letter-spacing: -0.01em; }

body.tm-editorial nav.tm-nav,
body.tm-editorial ul.tm-nav {
	display: flex;
	gap: 24px;
	list-style: none;
	padding: 0;
	margin: 0;
}
body.tm-editorial ul.tm-nav li { list-style: none; }
body.tm-editorial nav.tm-nav a,
body.tm-editorial ul.tm-nav a {
	color: var(--fg-soft);
	text-decoration: none;
	font-weight: 400;
}
body.tm-editorial nav.tm-nav a:hover,
body.tm-editorial ul.tm-nav a:hover { color: var(--accent); }

@media (max-width: 768px) {
	body.tm-editorial nav.tm-nav,
	body.tm-editorial ul.tm-nav { display: none; }
}

/* Logo icon: forzar tamaño correcto del SVG */
body.tm-editorial .tm-logo-icon {
	width: 28px !important;
	height: 28px !important;
	object-fit: contain;
}

/* ─── BREADCRUMBS ─── */
body.tm-editorial .tm-breadcrumbs {
	padding: 24px 0 0;
	font-size: 13px;
	color: var(--fg-soft);
}
body.tm-editorial .tm-breadcrumbs a {
	color: var(--fg-soft);
	text-decoration: none;
}
body.tm-editorial .tm-breadcrumbs a:hover { color: var(--accent); }

/* ─── HERO chrome ─── */
body.tm-editorial .tm-hero {
	padding: 48px 0 56px;
	border-bottom: 1px solid var(--rule);
}
body.tm-editorial .tm-hero-grid {
	display: grid;
	grid-template-columns: 1.4fr 1fr;
	gap: 48px;
	align-items: start;
}
@media (max-width: 1024px) {
	body.tm-editorial .tm-hero-grid { grid-template-columns: 1fr; gap: 32px; }
}

body.tm-editorial .tm-hero-titulo {
	font-size: 64px;
	font-weight: 600;
	line-height: 1.02;
	letter-spacing: -0.025em;
	color: var(--fg);
	margin: 0 0 16px;
}
@media (max-width: 768px) {
	body.tm-editorial .tm-hero-titulo { font-size: 42px; }
}

body.tm-editorial .tm-hero-sub {
	font-size: 18px;
	color: var(--fg-soft);
	max-width: 580px;
	line-height: 1.55;
	margin-bottom: 28px;
}

body.tm-editorial .tm-hero-meta {
	display: flex;
	gap: 18px;
	font-size: 12px;
	color: var(--fg-soft);
	padding: 18px 0;
	border-top: 1px solid var(--rule);
	border-bottom: 1px solid var(--rule);
	flex-wrap: wrap;
	align-items: center;
}
body.tm-editorial .tm-hero-meta strong { color: var(--fg); font-weight: 600; }
body.tm-editorial .tm-hero-byline { display: inline-flex; align-items: center; gap: 8px; }
body.tm-editorial .tm-hero-byline-foto {
	width: 26px; height: 26px; border-radius: 50%; overflow: hidden;
	flex-shrink: 0; background: var(--bg-soft);
}
body.tm-editorial .tm-hero-byline-foto img { width: 100%; height: 100%; object-fit: cover; display: block; }

body.tm-editorial .tm-hero-tags {
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
	align-items: baseline;
	margin-top: 20px;
	font-size: 14px;
	line-height: 1.6;
}
body.tm-editorial .tm-hero-tags-label {
	font-size: 11px;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	font-weight: 600;
	color: var(--accent);
	margin-right: 4px;
}
body.tm-editorial .tm-hero-tags a {
	color: var(--fg);
	text-decoration: underline;
	text-decoration-color: var(--accent);
	text-decoration-thickness: 1.5px;
	text-underline-offset: 3px;
	font-weight: 500;
}
body.tm-editorial .tm-hero-tags a:hover { color: var(--accent); }

body.tm-editorial .tm-hero-img {
	aspect-ratio: 1/1;
	background: var(--bg-soft);
	border: 1px solid var(--rule);
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 32px;
	margin-bottom: 24px;
	overflow: hidden;
}
body.tm-editorial .tm-hero-img img {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	display: block;
	mix-blend-mode: multiply;
}

/* ─── CTA card hero ─── */
body.tm-editorial .tm-cta-card {
	background: var(--bg-card);
	border: 1px solid var(--rule);
	padding: 24px;
}
body.tm-editorial .tm-cta-label {
	font-size: 11px;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--fg-soft);
	font-weight: 600;
	margin-bottom: 8px;
}
body.tm-editorial .tm-cta-precio {
	font-family: var(--font-mono);
	font-size: 36px;
	font-weight: 500;
	line-height: 1;
	color: var(--fg);
	margin-bottom: 6px;
	font-variant-numeric: tabular-nums;
}
body.tm-editorial .tm-cta-source {
	font-size: 13px;
	color: var(--fg-soft);
	margin-bottom: 18px;
}
body.tm-editorial .tm-cta-source strong { color: var(--accent); font-weight: 600; }

/* ─── SUMARIO ─── */
body.tm-editorial .tm-sumario {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	background: var(--bg-card);
	border: 1px solid var(--rule);
	margin-top: 48px;
}
@media (max-width: 768px) {
	body.tm-editorial .tm-sumario { grid-template-columns: repeat(2, 1fr); }
}
body.tm-editorial .tm-sumario-cell {
	padding: 24px;
	border-right: 1px solid var(--rule);
}
body.tm-editorial .tm-sumario-cell:last-child { border-right: 0; }
@media (max-width: 768px) {
	body.tm-editorial .tm-sumario-cell { border-right: 1px solid var(--rule); border-bottom: 1px solid var(--rule); }
	body.tm-editorial .tm-sumario-cell:nth-child(2),
	body.tm-editorial .tm-sumario-cell:nth-child(4) { border-right: 0; }
	body.tm-editorial .tm-sumario-cell:nth-child(3),
	body.tm-editorial .tm-sumario-cell:nth-child(4) { border-bottom: 0; }
}
body.tm-editorial .tm-sumario-label {
	font-size: 11px;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--fg-soft);
	font-weight: 600;
	margin-bottom: 14px;
}
body.tm-editorial .tm-sumario-val {
	font-family: var(--font-mono);
	font-weight: 500;
	font-size: 36px;
	line-height: 1;
	letter-spacing: -0.02em;
	color: var(--fg);
	font-variant-numeric: tabular-nums;
}
body.tm-editorial .tm-sumario-val small { font-size: 15px; color: var(--fg-soft); font-weight: 400; margin-left: 4px; }

/* ─── Tabla specs auto ─── */
body.tm-editorial .tm-specs-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 15px;
	background: var(--bg-card);
	border: 1px solid var(--rule);
}
body.tm-editorial .tm-specs-table th {
	text-align: left;
	padding: 14px 16px;
	font-weight: 600;
	font-size: 12px;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--fg-soft);
	background: var(--bg-soft);
	border-bottom: 1px solid var(--rule-strong);
}
body.tm-editorial .tm-specs-table td {
	padding: 14px 16px;
	border-bottom: 1px solid var(--rule);
}
body.tm-editorial .tm-specs-table tr:last-child td { border-bottom: 0; }
body.tm-editorial .tm-specs-table td:first-child { color: var(--fg); font-weight: 500; }
body.tm-editorial .tm-specs-table td.tm-mono { color: var(--fg); font-weight: 500; }
body.tm-editorial .tm-specs-table tbody tr:hover { background: var(--bg-soft); }

/* ─── BLOQUE AUTOR ─── */
body.tm-editorial .tm-autor {
	display: flex;
	gap: 24px;
	align-items: center;
	padding: 28px 32px;
	background: var(--bg-card);
	border: 1px solid var(--rule);
	flex-direction: row;
}
body.tm-editorial .tm-autor-foto {
	width: 64px;
	height: 64px;
	min-width: 64px;
	flex: 0 0 64px;
	border-radius: 50%;
	overflow: hidden;
	background: var(--bg-soft);
}
body.tm-editorial .tm-autor-foto img {
	width: 64px; height: 64px;
	object-fit: cover;
	display: block;
	border-radius: 50%;
}
body.tm-editorial .tm-autor-info { flex: 1; }
body.tm-editorial .tm-autor-info h4 { font-size: 18px; font-weight: 600; margin: 0 0 6px; letter-spacing: -0.01em; }
body.tm-editorial .tm-autor-info p { font-size: 14px; color: var(--fg-soft); line-height: 1.55; margin: 0; }

@media (max-width: 640px) {
	body.tm-editorial .tm-autor { flex-direction: column; text-align: center; }
}

/* ─── FLOATING BAR + OVERLAY ÍNDICE ─── */
body.tm-editorial .floating-bar {
	position: fixed;
	bottom: 24px;
	left: 50%;
	z-index: 90;
	display: flex;
	gap: 12px;
	align-items: center;
	max-width: calc(100vw - 32px);
	transform: translateX(-50%) translateY(160%);
	transition: transform 380ms cubic-bezier(.2, .8, .2, 1);
	pointer-events: none;
}
body.tm-editorial .floating-bar.visible {
	transform: translateX(-50%) translateY(0);
	pointer-events: auto;
}
@media (max-width: 640px) {
	body.tm-editorial .floating-bar {
		bottom: 16px;
		width: calc(100vw - 32px);
		left: 16px;
		right: 16px;
		max-width: none;
		transform: translateY(160%);
	}
	body.tm-editorial .floating-bar.visible { transform: translateY(0); }
}

body.tm-editorial .nav-btn {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 14px 18px;
	background: var(--bg-card);
	color: var(--fg);
	font-family: inherit;
	font-weight: 600;
	font-size: 14px;
	border: 1px solid var(--rule);
	border-radius: 100px;
	cursor: pointer;
	text-decoration: none;
	box-shadow: 0 8px 28px rgba(26, 26, 31, 0.06), 0 2px 6px rgba(26, 26, 31, 0.04);
	transition: 200ms;
	letter-spacing: -0.005em;
}
body.tm-editorial .nav-btn:hover {
	border-color: var(--fg);
	transform: translateY(-2px);
	box-shadow: 0 12px 36px rgba(26, 26, 31, 0.1);
}
body.tm-editorial .nav-btn-num {
	font-family: var(--font-mono);
	font-weight: 500;
	font-size: 13px;
	color: var(--accent);
	font-variant-numeric: tabular-nums;
	background: var(--accent-faint);
	padding: 3px 8px;
	border-radius: 100px;
	letter-spacing: 0.04em;
}
body.tm-editorial .nav-btn-icon {
	font-size: 13px;
	color: var(--fg-soft);
	transition: transform 200ms;
}
body.tm-editorial .nav-btn:hover .nav-btn-icon { transform: translateY(-2px); }
@media (max-width: 640px) {
	body.tm-editorial .nav-btn { padding: 14px 16px; flex: 0 0 auto; }
	body.tm-editorial .nav-btn-text { display: none; }
}

body.tm-editorial .cta-amazon {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 14px 22px;
	background: var(--fg);
	color: var(--bg);
	font-weight: 600;
	font-size: 14px;
	text-decoration: none;
	border-radius: 100px;
	box-shadow: 0 8px 28px rgba(26, 26, 31, 0.18), 0 2px 6px rgba(26, 26, 31, 0.1);
	transition: 200ms;
	letter-spacing: -0.005em;
	white-space: nowrap;
}
body.tm-editorial .cta-amazon:hover {
	background: var(--accent);
	color: var(--bg);
	transform: translateY(-2px);
}
body.tm-editorial .cta-amazon-arrow { font-size: 13px; transition: transform 200ms; }
body.tm-editorial .cta-amazon:hover .cta-amazon-arrow { transform: translateX(3px); }
body.tm-editorial .cta-amazon-precio {
	font-family: var(--font-mono);
	font-weight: 500;
	font-size: 13px;
	padding-left: 10px;
	margin-left: 4px;
	border-left: 1px solid rgba(255, 255, 255, 0.2);
	color: rgba(255, 255, 255, 0.85);
}
@media (max-width: 640px) {
	body.tm-editorial .cta-amazon { flex: 1; justify-content: center; }
	body.tm-editorial .cta-amazon-precio { display: none; }
}

/* Overlay índice */
body.tm-editorial .nav-overlay {
	position: fixed;
	inset: 0;
	background: rgba(26, 26, 31, 0.6);
	backdrop-filter: saturate(180%) blur(8px);
	z-index: 200;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
	opacity: 0;
	visibility: hidden;
	transition: opacity 250ms;
}
body.tm-editorial .nav-overlay.open { opacity: 1; visibility: visible; }
body.tm-editorial .nav-panel {
	background: var(--bg);
	max-width: 520px;
	width: 100%;
	max-height: 80vh;
	border-radius: 16px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	box-shadow: 0 24px 80px rgba(0, 0, 0, 0.3);
	transform: translateY(20px);
	transition: transform 300ms cubic-bezier(.2, .8, .2, 1);
}
body.tm-editorial .nav-overlay.open .nav-panel { transform: translateY(0); }
body.tm-editorial .nav-panel-head {
	padding: 24px 28px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-bottom: 1px solid var(--rule);
}
body.tm-editorial .nav-panel-titulo {
	font-size: 11px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	font-weight: 600;
	color: var(--fg-soft);
}
body.tm-editorial .nav-close {
	background: transparent;
	border: 0;
	color: var(--fg-soft);
	font-size: 24px;
	cursor: pointer;
	width: 32px;
	height: 32px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	line-height: 1;
}
body.tm-editorial .nav-close:hover { background: var(--bg-soft); color: var(--fg); }
body.tm-editorial .nav-panel-list {
	list-style: none;
	overflow-y: auto;
	padding: 8px 0;
	margin: 0;
}
body.tm-editorial .nav-panel-list a {
	display: grid;
	grid-template-columns: 48px 1fr auto;
	gap: 14px;
	padding: 14px 28px;
	text-decoration: none;
	color: var(--fg);
	align-items: center;
	transition: 120ms;
	border-left: 2px solid transparent;
}
body.tm-editorial .nav-panel-list a:hover { background: var(--bg-soft); border-left-color: var(--accent); }
body.tm-editorial .nav-panel-list a.current { background: var(--accent-faint); border-left-color: var(--accent); }
body.tm-editorial .nav-panel-list .num {
	font-family: var(--font-mono);
	font-weight: 500;
	font-size: 13px;
	color: var(--fg-mute);
	font-variant-numeric: tabular-nums;
	letter-spacing: 0.04em;
}
body.tm-editorial .nav-panel-list a.current .num { color: var(--accent); }
body.tm-editorial .nav-panel-list .titulo { font-size: 15px; font-weight: 500; letter-spacing: -0.005em; }
body.tm-editorial .nav-panel-list a.current .titulo { font-weight: 600; color: var(--accent); }
body.tm-editorial .nav-panel-list .arrow { color: var(--fg-mute); font-size: 13px; }
body.tm-editorial .nav-panel-foot {
	padding: 14px 28px;
	border-top: 1px solid var(--rule);
	font-size: 12px;
	color: var(--fg-soft);
	display: flex;
	justify-content: space-between;
}
body.tm-editorial .nav-panel-foot kbd {
	font-family: var(--font-mono);
	font-size: 11px;
	padding: 2px 6px;
	background: var(--bg-soft);
	border: 1px solid var(--rule);
	border-radius: 3px;
}
@media (max-width: 640px) {
	body.tm-editorial .nav-overlay { padding: 0; align-items: flex-end; }
	body.tm-editorial .nav-panel { max-height: 88vh; border-radius: 16px 16px 0 0; }
	body.tm-editorial .nav-panel-list a { padding: 14px 20px; grid-template-columns: 36px 1fr auto; }
}

/* ─── FOOTER ─── */
body.tm-editorial footer.tm-site-footer {
	background: var(--bg-soft);
	border-top: 1px solid var(--rule);
	margin-top: 80px;
	padding: 48px 0 32px;
}
body.tm-editorial .tm-footer-grid {
	display: grid;
	grid-template-columns: 2fr 1fr 1fr 1fr;
	gap: 40px;
	margin-bottom: 32px;
}
@media (max-width: 768px) {
	body.tm-editorial .tm-footer-grid { grid-template-columns: 1fr 1fr; gap: 32px; }
}
body.tm-editorial .tm-footer-col h5 {
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	margin-bottom: 12px;
	color: var(--fg-soft);
}
body.tm-editorial .tm-footer-col ul { list-style: none; padding: 0; margin: 0; }
body.tm-editorial .tm-footer-col li { padding: 4px 0; font-size: 13px; }
body.tm-editorial .tm-footer-col a { color: var(--fg); text-decoration: none; }
body.tm-editorial .tm-footer-col a:hover { color: var(--accent); }
body.tm-editorial .tm-footer-tagline { font-size: 13px; color: var(--fg-soft); line-height: 1.55; max-width: 340px; margin-top: 12px; }
body.tm-editorial .tm-footer-bottom {
	padding-top: 24px;
	border-top: 1px solid var(--rule);
	display: flex;
	justify-content: space-between;
	font-size: 12px;
	color: var(--fg-soft);
}
@media (max-width: 640px) {
	body.tm-editorial .tm-footer-bottom { flex-direction: column; gap: 8px; }
}

/* ─── HOME ─── */
body.tm-editorial .tm-home-hero {
	padding: 80px 0;
	border-bottom: 1px solid var(--rule);
	background: var(--bg);
}
body.tm-editorial .tm-home-hero-kicker {
	font-size: 11px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	font-weight: 600;
	color: var(--accent);
	margin-bottom: 18px;
}
body.tm-editorial .tm-home-hero-titulo {
	font-size: 72px;
	font-weight: 600;
	line-height: 1.02;
	letter-spacing: -0.025em;
	color: var(--fg);
	max-width: 900px;
	margin-bottom: 18px;
}
@media (max-width: 768px) {
	body.tm-editorial .tm-home-hero-titulo { font-size: 42px; }
	body.tm-editorial .tm-home-hero { padding: 48px 0; }
}
body.tm-editorial .tm-home-hero-sub {
	font-size: 20px;
	color: var(--fg-soft);
	max-width: 720px;
	line-height: 1.55;
	margin-bottom: 32px;
}
body.tm-editorial .tm-home-hero-cta {
	display: flex;
	gap: 16px;
	flex-wrap: wrap;
	align-items: center;
}
body.tm-editorial .tm-home-hero-cta .tm-btn-primary { width: auto; }

body.tm-editorial .tm-home-bloque { padding: 80px 0; border-top: 1px solid var(--rule); }
body.tm-editorial .tm-home-bloque-soft { background: var(--bg-soft); }

body.tm-editorial .tm-cards-grid-3 {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
}
@media (max-width: 1024px) { body.tm-editorial .tm-cards-grid-3 { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 640px)  { body.tm-editorial .tm-cards-grid-3 { grid-template-columns: 1fr; } }

body.tm-editorial .tm-card-link {
	display: block;
	background: var(--bg-card);
	border: 1px solid var(--rule);
	padding: 24px;
	text-decoration: none;
	color: var(--fg);
	transition: 150ms;
}
body.tm-editorial .tm-card-link:hover {
	border-color: var(--accent);
	transform: translateY(-2px);
	color: var(--fg);
}
body.tm-editorial .tm-card-link-meta {
	font-size: 11px;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	font-weight: 600;
	color: var(--accent);
	margin-bottom: 10px;
}
body.tm-editorial .tm-card-link-titulo {
	font-size: 20px;
	font-weight: 600;
	line-height: 1.25;
	letter-spacing: -0.015em;
	margin-bottom: 10px;
}
body.tm-editorial .tm-card-link-desc {
	font-size: 14px;
	color: var(--fg-soft);
	line-height: 1.55;
	margin-bottom: 14px;
}
body.tm-editorial .tm-card-link-arrow {
	font-size: 13px;
	color: var(--fg-soft);
	font-weight: 500;
}
body.tm-editorial .tm-card-link:hover .tm-card-link-arrow { color: var(--accent); }

/* Marca tile (home) */
body.tm-editorial .tm-marca-grid {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 14px;
}
@media (max-width: 1024px) { body.tm-editorial .tm-marca-grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 480px)  { body.tm-editorial .tm-marca-grid { grid-template-columns: repeat(2, 1fr); } }
body.tm-editorial .tm-marca-tile {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 32px 16px;
	background: var(--bg-card);
	border: 1px solid var(--rule);
	text-decoration: none;
	color: var(--fg);
	transition: 150ms;
}
body.tm-editorial .tm-marca-tile:hover {
	border-color: var(--accent);
	color: var(--accent);
}
body.tm-editorial .tm-marca-tile-name {
	font-size: 20px;
	font-weight: 700;
	letter-spacing: -0.015em;
}
body.tm-editorial .tm-marca-tile-meta {
	margin-top: 4px;
	font-size: 12px;
	color: var(--fg-soft);
	letter-spacing: 0.04em;
}

/* ─── 404 ─── */
body.tm-editorial .tm-404 {
	padding: 120px 0;
	text-align: center;
}
body.tm-editorial .tm-404-num {
	font-family: var(--font-mono);
	font-size: 72px;
	color: var(--accent);
	font-weight: 500;
	margin-bottom: 16px;
	letter-spacing: -0.03em;
}
body.tm-editorial .tm-404-titulo {
	font-size: 42px;
	font-weight: 600;
	margin-bottom: 16px;
	letter-spacing: -0.025em;
}
body.tm-editorial .tm-404-sub {
	font-size: 18px;
	color: var(--fg-soft);
	margin-bottom: 32px;
	line-height: 1.55;
	max-width: 560px;
	margin-left: auto;
	margin-right: auto;
}
body.tm-editorial .tm-404-cta {
	display: flex;
	gap: 16px;
	justify-content: center;
	flex-wrap: wrap;
}
body.tm-editorial .tm-404-cta .tm-btn-primary { width: auto; }

/* ─── PAGE estática ─── */
body.tm-editorial .tm-page {
	padding: 48px 0 24px;
	border-bottom: 1px solid var(--rule);
}
body.tm-editorial .tm-page-titulo {
	font-size: 54px;
	font-weight: 600;
	letter-spacing: -0.025em;
	line-height: 1.05;
	margin: 16px 0;
}
@media (max-width: 768px) {
	body.tm-editorial .tm-page-titulo { font-size: 36px; }
}
body.tm-editorial .tm-page-deck {
	font-size: 20px;
	color: var(--fg-soft);
	line-height: 1.55;
	max-width: 640px;
}

body.tm-editorial .tm-page-content {
	padding: 48px 0 80px;
}
body.tm-editorial .tm-page-content p,
body.tm-editorial .tm-page-content ul,
body.tm-editorial .tm-page-content ol {
	font-size: 17px;
	line-height: 1.7;
	margin: 0 0 18px;
}
body.tm-editorial .tm-page-content ul,
body.tm-editorial .tm-page-content ol {
	padding-left: 22px;
}
body.tm-editorial .tm-page-content h2 {
	font-size: 28px;
	margin: 36px 0 14px;
}
body.tm-editorial .tm-page-content h3 {
	font-size: 20px;
	margin: 28px 0 10px;
}

/* Contacto */
body.tm-editorial .tm-contacto-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 18px;
	margin-bottom: 48px;
}
@media (max-width: 640px) {
	body.tm-editorial .tm-contacto-grid { grid-template-columns: 1fr; }
}
body.tm-editorial .tm-contacto-card {
	background: var(--bg-card);
	border: 1px solid var(--rule);
	padding: 28px;
}
body.tm-editorial .tm-contacto-card-l {
	font-size: 11px;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--fg-soft);
	font-weight: 600;
	margin-bottom: 8px;
}
body.tm-editorial .tm-contacto-card-v {
	display: block;
	font-size: 22px;
	font-weight: 600;
	color: var(--fg);
	margin-bottom: 12px;
	letter-spacing: -0.015em;
	text-decoration: none;
}
body.tm-editorial .tm-contacto-card-v:hover { color: var(--accent); }
body.tm-editorial .tm-contacto-card-desc {
	font-size: 14px;
	color: var(--fg-soft);
	line-height: 1.6;
	margin: 0;
}

/* ─── BLOG single hero ─── */
body.tm-editorial .tm-hero-blog {
	padding: 64px 0 32px;
}
body.tm-editorial .tm-hero-titulo-blog {
	font-size: 48px;
	font-weight: 600;
	letter-spacing: -0.025em;
	line-height: 1.1;
	margin: 16px 0;
	max-width: 760px;
}
@media (max-width: 768px) {
	body.tm-editorial .tm-hero-titulo-blog { font-size: 32px; }
}
body.tm-editorial .tm-deck {
	font-size: 20px;
	color: var(--fg-soft);
	line-height: 1.55;
	max-width: 640px;
	margin-bottom: 24px;
	font-family: var(--font-serif);
	font-style: italic;
}

/* ─── PAGINACIÓN ─── */
body.tm-editorial .nav-links,
body.tm-editorial .pagination {
	display: flex;
	gap: 8px;
	justify-content: center;
	margin-top: 64px;
	flex-wrap: wrap;
}
body.tm-editorial .nav-links a,
body.tm-editorial .nav-links .current,
body.tm-editorial .pagination a,
body.tm-editorial .pagination .current {
	padding: 8px 14px;
	border: 1px solid var(--rule);
	color: var(--fg);
	text-decoration: none;
	font-size: 14px;
	border-radius: 4px;
}
body.tm-editorial .nav-links a:hover,
body.tm-editorial .pagination a:hover {
	border-color: var(--accent);
	color: var(--accent);
}
body.tm-editorial .nav-links .current,
body.tm-editorial .pagination .current {
	background: var(--accent);
	color: #fff;
	border-color: var(--accent);
}

/* ─── BLOG single content ─── */
body.tm-editorial .tm-ficha-content-blog .tm-narrow {
	padding-top: 32px;
	padding-bottom: 64px;
}
