/*
Theme Name: GeneratePress Child (iSirKael)
Template: generatepress
Version: 1.12.0
Description: Marca iSirKael sobre GeneratePress (docs/04-marca.md).
*/

/* Fuentes autoalojadas (OFL, @fontsource-variable 5.3.0, subconjunto latin) */
@font-face {
	font-family: "Inter";
	font-style: normal;
	font-weight: 100 900;
	font-display: swap;
	src: url("fonts/inter-latin-wght.woff2") format("woff2");
}
@font-face {
	font-family: "Space Grotesk";
	font-style: normal;
	font-weight: 300 700;
	font-display: swap;
	src: url("fonts/space-grotesk-latin-wght.woff2") format("woff2");
}

:root {
	--sk-green: #55b580;
	--sk-green-700: #3f9466;
	--sk-green-text: #2e7a52; /* enlaces: 5.2:1 sobre blanco */
	--sk-blue: #194d84;
	--sk-blue-900: #0f3460;
	--sk-cream: #fcefdc;
	--sk-dark: #1a1a1a;
	--sk-dark-2: #232323;
	--sk-ink: #424242;
	--sk-ink-2: #2b2b2b;
	--sk-mist: #c7c6c6;
	--sk-paper: #ffffff;
	--sk-font-head: "Space Grotesk", system-ui, sans-serif;
	--sk-font-body: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
	--sk-radius: 0;       /* D-51: sin esquinas redondeadas en toda la web (reemplaza D-44) */
	--sk-radius-sm: 0;
	--sk-shadow: 0 1px 0 rgba(0, 0, 0, .08);
	--sk-ancho: 1100px;
}

/* Tipografía */
body,
button,
input,
select,
textarea {
	font-family: var(--sk-font-body);
	color: var(--sk-ink);
}
h1, h2, h3, h4, h5, h6,
.main-title,
.main-navigation .main-nav ul li a,
.entry-title {
	font-family: var(--sk-font-head);
	color: var(--sk-ink-2);
}
h1, h2, h3 { font-weight: 700; letter-spacing: -.01em; }
h4, h5, h6 { font-weight: 600; }

/* Enlaces */
a { color: var(--sk-green-text); }
a:hover, a:focus { color: var(--sk-blue); }
.entry-title a, .main-title a { color: var(--sk-ink-2); }

/* Botones: fondo verde con texto oscuro (6.9:1), esquinas redondeadas */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"],
a.button,
.wp-block-button .wp-block-button__link,
.ff-btn-submit {
	background-color: var(--sk-green);
	color: var(--sk-dark);
	border: 0;
	border-radius: 0;
	box-shadow: var(--sk-shadow);
	font-family: var(--sk-font-head);
	font-weight: 600;
}
button:hover, button:focus,
html input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover, input[type="submit"]:focus,
a.button:hover, a.button:focus,
.wp-block-button .wp-block-button__link:hover, .wp-block-button .wp-block-button__link:focus,
.ff-btn-submit:hover, .ff-btn-submit:focus {
	background-color: var(--sk-green-700);
	color: var(--sk-paper);
}

/* Formularios */
input, select, textarea { border-radius: 0; }
input:focus, select:focus, textarea:focus { border-color: var(--sk-green-700); }

/* Cabecera */
.site-header { border-bottom: 1px solid var(--sk-mist); }
.site-logo img, .header-image { height: 56px; width: auto; }
.main-title { font-size: 22px; font-weight: 700; }
.site-description { color: var(--sk-ink); font-size: 13px; }
.main-navigation .main-nav ul li a { font-weight: 500; }
.main-navigation .main-nav ul li:hover > a,
.main-navigation .main-nav ul li.current-menu-item > a {
	color: var(--sk-green-text);
}

/* Pie oscuro */
.site-footer,
.site-info {
	background-color: var(--sk-dark);
	color: var(--sk-mist);
}
.site-info a, .footer-widgets a { color: var(--sk-green); }
.site-info a:hover, .footer-widgets a:hover { color: var(--sk-paper); }

/* Utilidades de sección para F5 */
.sk-bg-cream { background-color: var(--sk-cream); }
.sk-bg-dark { background-color: var(--sk-blue-900); color: var(--sk-paper); }
.sk-bg-dark h1, .sk-bg-dark h2, .sk-bg-dark h3 { color: var(--sk-paper); }
.sk-bg-dark a { color: var(--sk-green); }

/* Menú: botón de WhatsApp (F5.4) */
.main-navigation .main-nav ul li.sk-menu-wa > a {
	background-color: var(--sk-green);
	color: var(--sk-dark);
	font-weight: 600;
	line-height: 40px;
	margin: 10px 0 10px 12px;
	padding: 0 18px;
}
.main-navigation .main-nav ul li.sk-menu-wa:hover > a,
.main-navigation .main-nav ul li.sk-menu-wa > a:focus {
	background-color: var(--sk-green-700);
	color: var(--sk-paper);
}
@media (max-width: 768px) {
	.main-navigation .main-nav ul li.sk-menu-wa > a { margin: 8px 20px; text-align: center; }
}

/* Pie: Libro de Reclamaciones, legales y titular (F5.4) */
.site-info .copyright-bar {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	text-align: center;
	font-size: 14px;
	line-height: 1.6;
}
.sk-pie-libro a {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	border: 1px solid var(--sk-green);
	padding: 6px 12px;
	font-weight: 600;
}
.sk-pie-libro svg { flex: none; }
.sk-pie-titular { color: var(--sk-mist); font-size: 13px; }
.sk-link-btn,
.sk-link-btn:hover,
.sk-link-btn:focus {
	background: none;
	border: 0;
	box-shadow: none;
	padding: 0;
	font: inherit;
	color: var(--sk-green);
	cursor: pointer;
	text-decoration: underline;
}
.site-info .sk-link-btn:hover { color: var(--sk-paper); }

/* Botón flotante de WhatsApp (F5.4) */
.sk-wa-flotante {
	position: fixed;
	right: 20px;
	bottom: 20px;
	z-index: 900;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	border-radius: 0;
	background-color: var(--sk-green);
	color: var(--sk-dark);
	box-shadow: 0 4px 12px rgba(0, 0, 0, .25);
	transition: bottom .2s;
}
.sk-wa-flotante:hover, .sk-wa-flotante:focus { background-color: var(--sk-green-700); color: var(--sk-paper); }
body.sk-cookies-abierto .sk-wa-flotante { bottom: var(--sk-panel-alto, 220px); }

/* Panel de cookies (F5.6) */
.sk-cookies {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1000;
	max-height: 90vh;
	overflow-y: auto;
	padding: 20px max(16px, calc((100vw - 1100px) / 2));
	background-color: var(--sk-paper);
	border-top: 3px solid var(--sk-green);
	box-shadow: 0 -4px 16px rgba(0, 0, 0, .15);
	font-size: 15px;
}
.sk-cookies[hidden], .sk-cookies [hidden] { display: none; }
.sk-cookies p { margin: 0 0 12px; }
.sk-cookies-titulo { font-family: var(--sk-font-head); font-weight: 700; font-size: 18px; color: var(--sk-ink-2); }
.sk-cookies-opciones { display: grid; gap: 10px; margin: 0 0 14px; }
.sk-cookies-opciones label { display: block; line-height: 1.5; }
.sk-cookies-acciones { display: flex; flex-wrap: wrap; gap: 10px; }
.sk-cookies-acciones button { padding: 10px 18px; }
/* "Aceptar" y "Rechazar" con el mismo peso visual; "Configurar" secundario. */
.sk-cookies .sk-btn-sec {
	background: none;
	color: var(--sk-ink-2);
	box-shadow: inset 0 0 0 2px var(--sk-ink-2);
}
.sk-cookies .sk-btn-sec:hover, .sk-cookies .sk-btn-sec:focus { background-color: var(--sk-ink-2); color: var(--sk-paper); }

/* Foco visible */
:focus-visible { outline: 2px solid var(--sk-blue); outline-offset: 2px; }

/* ===== F10: componentes de diseño (tasks/codex/F10-marcado.md) ===== */

/* F10 · 0 Banda y sección */
html, body { overflow-x: clip; }
.entry-content .sk-banda { margin-inline: calc(50% - 50vw); max-width: none; }
.sk-banda > * { box-sizing: border-box; width: 100%; max-width: var(--sk-ancho); margin-inline: auto; padding-inline: 20px; }
.sk-seccion { padding-block: 64px; background-color: var(--sk-paper); } /* banda blanca, tapa el gris del body */
.sk-seccion h2 { font-size: 32px; text-align: center; }
.sk-seccion--crema { background-color: var(--sk-cream); }
.sk-seccion--oscura { background-color: var(--sk-blue-900); color: var(--sk-paper); }
.sk-seccion--oscura :is(h2, h3, h4) { color: var(--sk-paper); }
.sk-seccion--oscura a:not(.sk-btn) { color: var(--sk-green); }
.sk-seccion--oscura a:not(.sk-btn):hover, .sk-seccion--oscura a:not(.sk-btn):focus { color: var(--sk-paper); }
.sk-seccion--oscura :focus-visible, .sk-hero :focus-visible, .sk-portada :focus-visible { outline-color: var(--sk-green); }
.sk-tarjetas, .sk-planes, .sk-proyectos, .sk-clientes, .sk-logos { min-width: 0; }

/* F10 · 1 Portada de Inicio */
.sk-hero {
	background: linear-gradient(rgba(15,52,96,.72), rgba(26,26,26,.82)), url("img/portada-inicio.webp") center/cover;
	min-height: min(88vh, 720px);
	display: flex;
	align-items: center;
	text-align: center;
	color: var(--sk-paper);
}
.sk-hero-interior { padding-block: 56px; }
.sk-hero h1 { color: var(--sk-paper); font-size: 44px; line-height: 1.15; }
.sk-hero-rotativo { font-family: var(--sk-font-head); font-size: 20px; }
.sk-rot { display: inline-grid; color: var(--sk-green); vertical-align: bottom; }
.sk-rot > span { grid-area: 1/1; opacity: 0; animation: sk-rotar 7.5s steps(1, end) infinite; }
.sk-rot > span:nth-child(1) { animation-delay: 0s; }
.sk-rot > span:nth-child(2) { animation-delay: 2.5s; }
.sk-rot > span:nth-child(3) { animation-delay: 5s; }
@keyframes sk-rotar {
	0% { opacity: 1; }
	33.333333%, 100% { opacity: 0; }
}
.sk-entradilla { font-size: 19px; line-height: 1.6; max-width: 760px; }
.sk-hero .sk-entradilla { margin-inline: auto; }
.sk-hero .sk-botones { justify-content: center; }

/* F10 · 2 Portada de páginas internas */
.page .inside-article, .separate-containers .inside-article { padding-top: 0; }
.page.separate-containers .site-main { margin-top: 0; margin-bottom: 0; } /* portada pegada a la cabecera y al pie */
.page .inside-article { padding-bottom: 0; }
.sk-portada { background-color: var(--sk-blue-900); color: var(--sk-paper); padding-block: 56px; text-align: left; }
.sk-portada h1 { color: var(--sk-paper); font-size: 40px; line-height: 1.2; }
.sk-portada.sk-banda > .sk-entradilla {
	/* 760px de texto más los 40px del padding de banda; alineación con el H1. */
	max-width: min(var(--sk-ancho), 800px);
	margin-left: max(0px, calc((100% - var(--sk-ancho)) / 2));
	margin-right: auto;
}
.sk-portada .wp-block-buttons, .sk-seccion .wp-block-buttons { display: flex; flex-wrap: wrap; gap: 12px; }
.sk-seccion .wp-block-buttons { justify-content: center; }
.sk-seccion .wp-block-button__link { display: inline-block; padding: 12px 24px; text-decoration: none; }
.sk-seccion .is-style-outline .wp-block-button__link { border: 2px solid var(--sk-green-text); background: transparent; color: var(--sk-green-text); box-shadow: none; }
.sk-seccion .is-style-outline .wp-block-button__link:hover,
.sk-seccion .is-style-outline .wp-block-button__link:focus { background-color: var(--sk-green-text); color: var(--sk-paper); }
.sk-seccion--oscura .is-style-outline .wp-block-button__link { border-color: var(--sk-paper); color: var(--sk-paper); }
.sk-portada .wp-block-button__link { display: inline-block; padding: 12px 24px; text-decoration: none; }
.sk-portada .is-style-outline .wp-block-button__link { border: 2px solid var(--sk-paper); background: transparent; color: var(--sk-paper); }
.sk-portada .is-style-outline .wp-block-button__link:hover,
.sk-portada .is-style-outline .wp-block-button__link:focus { background-color: var(--sk-paper); color: var(--sk-dark); }

/* F10 · 3 Contadores */
.sk-contadores { background-color: var(--sk-dark); color: var(--sk-paper); padding-block: 40px; }
.sk-contadores-lista { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; list-style: none; margin-block: 0; text-align: center; }
.sk-cifra { display: block; font: 700 44px/1.2 var(--sk-font-head); color: var(--sk-green); }
.sk-etiqueta { display: block; font-size: 13px; text-transform: uppercase; letter-spacing: .15em; }

/* F10 · 4 Tarjetas de servicio */
.sk-tarjetas { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 24px; }
.sk-tarjeta { display: flex; flex-direction: column; min-width: 0; padding: 28px; background-color: var(--sk-paper); color: var(--sk-ink); border: 1px solid var(--sk-mist); border-radius: 0; box-shadow: 0 5px 30px rgba(214,215,216,.57); }
.sk-tarjeta-img { width: 96px; height: 96px; object-fit: cover; margin: 0 auto 20px; }
.sk-tarjeta-titulo { font-size: 22px; color: var(--sk-ink-2); margin: 0 0 12px; }
.sk-tarjeta .sk-tarjeta-titulo a { color: inherit; text-decoration: none; }
.sk-tarjeta .sk-tarjeta-titulo a:hover, .sk-tarjeta .sk-tarjeta-titulo a:focus { text-decoration: underline; }
.sk-tarjeta-texto { margin: 0 0 16px; line-height: 1.6; }
.sk-etiquetas { display: flex; flex-wrap: wrap; gap: 6px; list-style: none; margin: 0 0 16px; padding: 0; }
.sk-etiquetas li { font-size: 12px; padding: 4px 8px; border: 1px solid #e2e2e2; background: #f8f8f8; border-radius: 0; color: var(--sk-ink); }
.sk-etiquetas li::before { content: "✓"; color: var(--sk-green-text); margin-right: 4px; }
.sk-precio { font-size: 15px; }
.sk-precio strong { font: 700 22px/1.3 var(--sk-font-head); }
.sk-tarjeta > .sk-btn { margin-top: auto; align-self: flex-start; }

/* F10 · 5 Tarjetas de planes: filas alineadas entre columnas con subgrid (como Blogger) */
.sk-planes { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); column-gap: 24px; row-gap: 0; align-items: start; }
.sk-plan { display: grid; grid-template-rows: subgrid; row-gap: 0; min-width: 0; margin-bottom: 24px; overflow: hidden; border: 1px solid var(--sk-mist); border-top: 5px solid var(--sk-green); border-radius: 0; background-color: var(--sk-paper); color: var(--sk-ink); box-shadow: 0 5px 30px rgba(214,215,216,.57); text-align: center; }
.sk-plan > :is(h3, p) { margin: 0; padding-inline: 24px; }
.sk-plan-nombre { padding-top: 24px; font-size: 22px; color: var(--sk-ink-2); }
.sk-plan-precio { padding-top: 12px; font: 700 36px/1.2 var(--sk-font-head); color: var(--sk-ink-2); align-self: end; }
.sk-plan-precio--largo { font-size: 20px; overflow-wrap: anywhere; }
.sk-plan-precio-nota { font-size: 13px; text-transform: uppercase; letter-spacing: .1em; color: var(--sk-ink); padding-bottom: 16px; }
.sk-plan > .sk-btn { justify-self: center; align-self: start; margin: 4px 0 20px; }
.sk-plan-incluye { padding-block: 10px; background-color: var(--sk-blue-900); color: var(--sk-paper); font: 600 14px/1.4 var(--sk-font-head); text-transform: uppercase; letter-spacing: .15em; }
.sk-plan-lista { display: grid; grid-template-rows: subgrid; row-gap: 0; list-style: none; margin: 0; padding: 0; }
.sk-plan-lista li { display: flex; flex-wrap: wrap; align-items: center; align-content: center; justify-content: center; column-gap: 6px; row-gap: 2px; margin: 0; padding: 10px 20px; line-height: 1.45; font-size: 15px; }
.sk-plan-lista li:nth-child(even) { background-color: #f6f7f8; }
.sk-plan-lista li:last-child { padding-bottom: 16px; }
.sk-si::before { content: "✓"; color: var(--sk-green-text); font-weight: 700; }
.sk-no { color: #767676; text-decoration: line-through; text-decoration-color: rgba(118,118,118,.5); }
.sk-plan-k { flex-basis: 100%; overflow-wrap: anywhere; }
.sk-plan-v { flex-basis: 100%; }
.sk-plan-v { font-weight: 700; color: var(--sk-ink-2); }
@supports not (grid-template-rows: subgrid) {
	.sk-plan { display: flex; flex-direction: column; }
}

/* F10 · 6 Proyectos */
.sk-proyectos { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px; }
.sk-proyecto { margin: 0; }
.sk-proyecto blockquote { position: relative; margin: 0; padding: 40px 0 0; border: 0; font-size: 20px; font-style: italic; color: var(--sk-paper); }
.sk-proyecto blockquote::before { content: "“"; position: absolute; top: 0; left: 0; font: 80px/1 var(--sk-font-head); color: var(--sk-green); }
.sk-proyecto blockquote p { margin: 0 0 16px; }
.sk-proyecto figcaption { font-weight: 700; color: var(--sk-green); }

/* F10 · 7 Clientes: grupo con sus marcas al pasar el ratón o al tocar (como Blogger) */
.sk-clientes { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.sk-cliente { aspect-ratio: 1/1; position: relative; overflow: hidden; margin: 0; border-radius: 0; box-shadow: 0 5px 30px rgba(214,215,216,.57); cursor: pointer; }
.sk-cliente-fondo { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .5s cubic-bezier(.23,1,.32,1), filter .3s ease; }
.sk-cliente::after { content: ""; position: absolute; inset: 40% 0 0; background: linear-gradient(transparent, rgba(0,0,0,.75)); pointer-events: none; }
.sk-cliente-logo { position: absolute; width: 110px; height: 110px; object-fit: contain; bottom: 16px; left: 50%; transform: translateX(-50%); z-index: 1; filter: drop-shadow(0 2px 4px rgba(0,0,0,.7)); }
.sk-cliente-marcas { position: absolute; inset: 0; z-index: 2; display: flex; flex-direction: column; justify-content: center; gap: 16px; padding: 24px; overflow-y: auto; background-color: rgba(0,0,0,.3); -webkit-backdrop-filter: blur(10px) saturate(1.1); backdrop-filter: blur(10px) saturate(1.1); color: var(--sk-paper); text-shadow: 0 1px 3px rgba(0,0,0,.85); opacity: 0; visibility: hidden; transition: opacity .3s, visibility .3s; }
.sk-cliente-grupo { font: 700 19px/1.2 var(--sk-font-head); text-align: center; color: var(--sk-paper); letter-spacing: .01em; }
.sk-cliente-grupo::after { content: ""; display: block; width: 32px; height: 3px; margin: 8px auto 0; border-radius: 0; background-color: var(--sk-green); }
.sk-cliente-marcas ul { display: grid; grid-template-columns: repeat(auto-fit, minmax(118px, 1fr)); gap: 12px; list-style: none; margin: 0; padding: 0; text-align: center; }
.sk-cliente-marcas li { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; margin: 0; padding: 12px 8px; border: 1px solid rgba(255,255,255,.22); border-radius: 0; background-color: rgba(255,255,255,.08); }
.sk-cliente-marcas li:only-child { max-width: 220px; justify-self: center; width: 100%; }
.sk-cliente-marcas a { color: inherit; text-decoration: none; }
.sk-cliente-marcas img { width: 48px; height: 48px; object-fit: contain; margin-bottom: 6px; filter: drop-shadow(0 1px 3px rgba(0,0,0,.6)); }
.sk-marca-nombre { font-size: 13px; font-weight: 700; line-height: 1.25; }
.sk-marca-tipo { font-size: 12px; line-height: 1.3; color: #f1f1f1; }
.sk-cliente:hover .sk-cliente-marcas,
.sk-cliente:focus .sk-cliente-marcas,
.sk-cliente:focus-within .sk-cliente-marcas { opacity: 1; visibility: visible; }
.sk-cliente:focus-visible { outline: 3px solid var(--sk-green); outline-offset: 3px; }
.sk-cliente:hover .sk-cliente-fondo,
.sk-cliente:focus .sk-cliente-fondo,
.sk-cliente:focus-within .sk-cliente-fondo { transform: scale(1.05); filter: brightness(.72); }
.sk-logos { display: grid; grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); gap: 16px; list-style: none; margin-block: 32px 0; padding: 0; }
.sk-logos img { display: block; width: 100%; height: auto; filter: grayscale(1); opacity: .75; }
.sk-logos li { margin: 0; padding: 12px; background: var(--sk-blue-900); border-radius: 0; } /* logos blancos: necesitan fondo oscuro */
.sk-logos li:hover img, .sk-logos li:focus-within img { filter: grayscale(0); opacity: 1; }

/* F10 · 8 Botones */
.sk-botones { display: flex; flex-wrap: wrap; gap: 12px; }
.sk-btn { display: inline-block; box-sizing: border-box; padding: 12px 24px; border: 0; border-radius: 0; background-color: var(--sk-green); color: var(--sk-dark); box-shadow: var(--sk-shadow); font-family: var(--sk-font-head); font-weight: 600; text-decoration: none; }
.sk-btn:hover, .sk-btn:focus,
.sk-portada .wp-block-button__link:hover, .sk-portada .wp-block-button__link:focus {
	background-color: var(--sk-green-700);
	/* Texto oscuro para conservar AA en hover; no cambia la regla previa. */
	color: var(--sk-dark);
}
.sk-btn--sec { border: 2px solid var(--sk-paper); background: transparent; color: var(--sk-paper); }
.sk-btn--sec:hover, .sk-btn--sec:focus { background-color: var(--sk-paper); color: var(--sk-dark); }

@media (max-width: 900px) {
	.sk-clientes { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 768px) {
	.sk-seccion { padding-block: 40px; }
	.sk-seccion h2 { font-size: 26px; }
	.sk-hero h1 { font-size: 30px; }
	.sk-portada { padding-block: 36px; }
	.sk-portada h1 { font-size: 28px; }
	.sk-contadores-lista { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.sk-proyectos { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 560px) {
	/* Carrusel deslizable: una tarjeta y un trozo de la siguiente */
	.sk-clientes { display: flex; gap: 14px; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: 12px; scrollbar-width: thin; }
	.sk-cliente { flex: 0 0 86%; scroll-snap-align: center; }
	.sk-cliente-marcas { padding: 18px; gap: 12px; }
	.sk-cliente-marcas ul { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
	.sk-cliente-marcas li { padding: 8px 6px; }
	.sk-cliente-marcas img { width: 36px; height: 36px; margin-bottom: 2px; }
	.sk-marca-tipo { display: none; }
}
@media (prefers-reduced-motion: reduce) {
	.sk-rot > span { animation: none; opacity: 0; }
	.sk-rot > span:first-child { opacity: 1; }
	.sk-cliente, .sk-cliente-fondo, .sk-cliente-marcas { transition: none; }
	.sk-cliente:hover .sk-cliente-fondo,
	.sk-cliente:focus .sk-cliente-fondo,
	.sk-cliente:focus-within .sk-cliente-fondo { transform: none; }
	.sk-hero { background-image: linear-gradient(rgba(15,52,96,.72), rgba(26,26,26,.82)), url("img/portada-inicio-fija.webp"); }
}

/* F10 · 9 Pie en tres columnas (como Blogger) */
.sk-pie { background-color: var(--sk-dark); color: var(--sk-mist); border-top: 4px solid var(--sk-green); }
.sk-pie-cols { display: grid; grid-template-columns: 1.3fr 1fr 1fr; gap: 40px; max-width: var(--sk-ancho); margin-inline: auto; padding: 56px 20px 40px; box-sizing: border-box; }
.sk-pie-col { min-width: 0; font-size: 15px; line-height: 1.6; }
.sk-pie-col p { margin: 0 0 14px; }
.sk-pie-col ul { list-style: none; margin: 0; padding: 0; }
.sk-pie-col li { margin: 0 0 10px; }
.sk-pie a { color: var(--sk-mist); text-decoration: none; transition: color .2s; }
.sk-pie a:hover, .sk-pie a:focus { color: var(--sk-green); text-decoration: underline; }
.sk-pie-marca img { display: block; margin-bottom: 12px; }
.sk-pie-nombre { font: 700 24px/1.2 var(--sk-font-head); color: var(--sk-paper); }
.sk-pie-marca strong { color: var(--sk-paper); }
.sk-pie-titulo { font: 700 17px/1.3 var(--sk-font-head); color: var(--sk-paper); }
.sk-pie-titulo::after { content: ""; display: block; width: 36px; height: 3px; margin-top: 8px; border-radius: 0; background-color: var(--sk-green); }
.sk-pie-redes { display: flex; flex-wrap: wrap; gap: 10px; }
.sk-pie-redes a { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 0; background-color: var(--sk-dark-2); color: var(--sk-paper); transition: background-color .2s, color .2s, transform .2s; }
.sk-pie-redes a:hover, .sk-pie-redes a:focus { background-color: var(--sk-green); color: var(--sk-dark); transform: translateY(-2px); text-decoration: none; }
.sk-pie-contacto a, .sk-pie-contacto span { display: inline-flex; align-items: center; gap: 10px; }
.sk-pie-contacto svg { flex: none; color: var(--sk-green); }
.sk-pie :focus-visible { outline: 2px solid var(--sk-green); outline-offset: 3px; }
.site-info { border-top: 1px solid #2c2c2c; }
.sk-pie-libro a { border-radius: 0; }
@media (max-width: 900px) {
	.sk-pie-cols { grid-template-columns: 1fr 1fr; }
	.sk-pie-marca { grid-column: 1 / -1; }
}
@media (max-width: 560px) {
	.sk-pie-cols { grid-template-columns: minmax(0, 1fr); gap: 32px; padding-top: 40px; }
}

/* F10 · 10 Movimiento ligero (D-45). Recreado en CSS/JS propio, sin librerías:
   aparición con desenfoque (Magic UI Blur Fade), contador (Number Ticker),
   foco que sigue al ratón (Aceternity Card Spotlight), brillo en botones
   (Shimmer Button) y botón flotante tipo isla (Cult UI Dynamic Island). */
.sk-js .sk-revela { transition: opacity .6s ease, transform .6s ease, filter .6s ease; transition-delay: var(--sk-retraso, 0s); }
.sk-js .sk-revela:not(.sk-visto) { opacity: 0; transform: translateY(18px); filter: blur(6px); }

.sk-tarjeta, .sk-plan { position: relative; transition: transform .25s ease, box-shadow .25s ease; }
.sk-tarjeta { overflow: hidden; }
.sk-tarjeta::before, .sk-plan::before { content: ""; position: absolute; inset: 0; z-index: 0; border-radius: 0; pointer-events: none; opacity: 0; transition: opacity .3s; background: radial-gradient(360px circle at var(--sk-x, 50%) var(--sk-y, 0%), rgba(85,181,128,.16), transparent 70%); }
.sk-tarjeta > *, .sk-plan > * { position: relative; z-index: 1; }
@media (hover: hover) {
	.sk-tarjeta:hover, .sk-plan:hover { transform: translateY(-4px); box-shadow: 0 14px 40px rgba(15,52,96,.16); }
	.sk-tarjeta:hover::before, .sk-plan:hover::before { opacity: 1; }
}

.sk-btn, .wp-block-button .wp-block-button__link { position: relative; overflow: hidden; isolation: isolate; }
.sk-btn::after, .wp-block-button .wp-block-button__link::after { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: linear-gradient(105deg, transparent 35%, rgba(255,255,255,.45) 50%, transparent 65%); transform: translateX(-120%); }
.sk-btn:hover::after, .sk-btn:focus-visible::after,
.wp-block-button .wp-block-button__link:hover::after, .wp-block-button .wp-block-button__link:focus-visible::after { transform: translateX(120%); transition: transform .7s ease; }

.main-navigation .main-nav ul li:not(.sk-menu-wa) > a { background-image: linear-gradient(var(--sk-green), var(--sk-green)); background-repeat: no-repeat; background-position: 50% calc(100% - 9px); background-size: 0 2px; transition: background-size .25s ease, color .2s; }
.main-navigation .main-nav ul li:not(.sk-menu-wa):hover > a,
.main-navigation .main-nav ul li:not(.sk-menu-wa).current-menu-item > a { background-size: calc(100% - 40px) 2px; }
.main-navigation .main-nav ul ul li:not(.sk-menu-wa) > a { background-position: 20px calc(100% - 4px); }
.main-navigation .main-nav ul ul li:not(.sk-menu-wa):hover > a,
.main-navigation .main-nav ul ul li:not(.sk-menu-wa).current-menu-item > a { background-size: calc(100% - 40px) 2px; }

.sk-wa-flotante { text-decoration: none; width: auto; min-width: 56px; padding: 0 13px; box-sizing: border-box; border-radius: 0; transition: bottom .2s, background-color .2s, box-shadow .3s; }
.sk-wa-texto { max-width: 0; overflow: hidden; white-space: nowrap; opacity: 0; font: 600 15px/1 var(--sk-font-head); transition: max-width .4s ease, opacity .3s ease, margin .4s ease; }
.sk-wa-flotante:hover .sk-wa-texto, .sk-wa-flotante:focus .sk-wa-texto, .sk-wa-flotante.sk-isla .sk-wa-texto { max-width: 110px; margin: 0 4px 0 8px; opacity: 1; }
.sk-wa-flotante.sk-isla { box-shadow: 0 6px 22px rgba(85,181,128,.45); }

@media (prefers-reduced-motion: reduce) {
	.sk-js .sk-revela { opacity: 1; transform: none; filter: none; transition: none; }
	.sk-tarjeta, .sk-plan, .sk-pie-redes a, .sk-wa-texto { transition: none; }
	.sk-tarjeta:hover, .sk-plan:hover, .sk-pie-redes a:hover { transform: none; }
	.sk-btn::after, .wp-block-button .wp-block-button__link::after { display: none; }
}

/* F10 · 11 Lenguaje gráfico estratégico (D-47): curva de crecimiento en portadas,
   cifras tabulares, línea de tiempo de pasos, proyector y gráficos SVG. */
:root { --sk-ease: cubic-bezier(.23, 1, .32, 1); --sk-claro: #dce6f0; /* texto secundario sobre azul (el gris --sk-mist se ve lavado) */ }
.sk-cifra, .sk-kpi-valor, .sk-proy-n, .sk-proy-monto, .sk-plan-precio, .sk-embudo-n { font-variant-numeric: tabular-nums; }

/* Portadas: curva ascendente de fondo */
.sk-portada, .sk-hero { position: relative; isolation: isolate; overflow: hidden; }
.sk-portada::after { content: ""; position: absolute; right: -2%; bottom: 0; z-index: -1; width: min(46%, 520px); height: 78%; pointer-events: none; opacity: .5;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 200' preserveAspectRatio='none'%3E%3Cpath d='M0 190 C60 180 90 150 140 140 S220 120 250 85 S330 40 400 12' fill='none' stroke='%2355b580' stroke-width='2.5'/%3E%3Cpath d='M0 190 C60 180 90 150 140 140 S220 120 250 85 S330 40 400 12 V200 H0Z' fill='%2355b580' fill-opacity='.10'/%3E%3Cg fill='%2355b580'%3E%3Ccircle cx='140' cy='140' r='4'/%3E%3Ccircle cx='250' cy='85' r='4'/%3E%3Ccircle cx='400' cy='12' r='5'/%3E%3C/g%3E%3C/svg%3E") no-repeat right bottom / 100% 100%; }
.sk-kicker { margin: 0 0 10px; font: 600 13px/1.3 var(--sk-font-head); letter-spacing: .14em; text-transform: uppercase; color: var(--sk-green-text); }
.sk-portada .sk-kicker, .sk-seccion--oscura .sk-kicker, .sk-proyector .sk-kicker { color: var(--sk-green); }

/* Títulos de sección con acento */
.sk-seccion > h2::after, .sk-seccion > .wp-block-heading:first-child::after { content: ""; display: block; width: 44px; height: 4px; margin: 12px auto 0; border-radius: 0; background-color: var(--sk-green); }
.sk-seccion.sk-centro, .sk-centro { text-align: center; }
.sk-centro > h2::after { margin-inline: auto; }
.sk-botones--centro { justify-content: center; }
.sk-btn:active, .wp-block-button .wp-block-button__link:active { transform: scale(.97); }
.sk-btn--borde { background: transparent; color: var(--sk-paper); box-shadow: inset 0 0 0 2px var(--sk-paper); }
.sk-btn--borde:hover, .sk-btn--borde:focus { background-color: var(--sk-paper); color: var(--sk-dark); }

/* Pasos de un proceso: línea de tiempo numerada */
.sk-pasos { counter-reset: paso; display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 28px; list-style: none; margin-top: 32px; margin-bottom: 0; padding: 0; position: relative; }
.sk-pasos::before { content: ""; position: absolute; top: 22px; left: 22px; right: 22px; height: 2px; background: linear-gradient(90deg, var(--sk-green), rgba(85,181,128,.15)); }
.sk-pasos li { counter-increment: paso; position: relative; margin: 0; padding-top: 64px; line-height: 1.6; }
.sk-pasos li::before { content: counter(paso, decimal-leading-zero); position: absolute; top: 0; left: 0; display: grid; place-items: center; width: 46px; height: 46px; border-radius: 0; background-color: var(--sk-paper); box-shadow: inset 0 0 0 2px var(--sk-green); font: 700 15px/1 var(--sk-font-head); color: var(--sk-ink-2); }
.sk-pasos li:last-child::before { background-color: var(--sk-green); color: var(--sk-dark); }
.sk-pasos strong { display: block; margin-bottom: 4px; font: 700 18px/1.3 var(--sk-font-head); color: var(--sk-ink-2); }
.sk-seccion--crema .sk-pasos li::before { background-color: var(--sk-cream); }
@media (max-width: 700px) {
	.sk-pasos { grid-template-columns: minmax(0, 1fr); gap: 22px; }
	.sk-pasos::before { top: 22px; bottom: 22px; left: 22px; right: auto; width: 2px; height: auto; background: linear-gradient(var(--sk-green), rgba(85,181,128,.15)); }
	.sk-pasos li { padding: 8px 0 0 66px; min-height: 46px; }
}

/* Proyector de alcance (D-46) */
.sk-proyector { margin-top: 28px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); gap: 0; overflow: hidden; border: 1px solid rgba(255,255,255,.12); border-radius: 0; background-color: #0b2747; box-shadow: 0 30px 60px rgba(0,0,0,.25); }
.sk-proy-panel { display: flex; flex-direction: column; gap: 6px; padding: 32px; }
.sk-proy-label { font-size: 15px; color: var(--sk-claro); }
.sk-proy-monto { display: block; font: 700 40px/1.15 var(--sk-font-head); color: var(--sk-paper); }
.sk-proy-rango { --sk-pct: 7%; width: 100%; height: 28px; margin: 14px 0 2px; background: transparent; cursor: pointer; -webkit-appearance: none; appearance: none; }
.sk-proy-rango::-webkit-slider-runnable-track { height: 8px; border-radius: 0; background: linear-gradient(90deg, var(--sk-green) var(--sk-pct), rgba(255,255,255,.16) var(--sk-pct)); }
.sk-proy-rango::-moz-range-track { height: 8px; border-radius: 0; background: rgba(255,255,255,.16); }
.sk-proy-rango::-moz-range-progress { height: 8px; border-radius: 0; background: var(--sk-green); }
.sk-proy-rango::-webkit-slider-thumb { -webkit-appearance: none; width: 26px; height: 26px; margin-top: -9px; border: 4px solid var(--sk-green); border-radius: 0; background: var(--sk-paper); box-shadow: 0 0 0 6px rgba(85,181,128,.25); transition: transform .15s var(--sk-ease); }
.sk-proy-rango::-moz-range-thumb { width: 18px; height: 18px; border: 4px solid var(--sk-green); border-radius: 0; background: var(--sk-paper); box-shadow: 0 0 0 6px rgba(85,181,128,.25); }
.sk-proy-rango:active::-webkit-slider-thumb { transform: scale(1.12); }
.sk-proy-rango:focus-visible { outline: 2px solid var(--sk-green); outline-offset: 4px; border-radius: 0; }
.sk-proy-limites { display: flex; justify-content: space-between; font-size: 13px; color: var(--sk-claro); }
.sk-proy-resultado { display: flex; flex-direction: column; justify-content: flex-end; padding: 32px 32px 0; background: radial-gradient(120% 90% at 100% 0%, rgba(85,181,128,.22), transparent 60%), #0f3460; }
.sk-proy-etq { margin: 0; font-size: 15px; color: var(--sk-claro); }
.sk-proy-cifra { display: flex; align-items: baseline; gap: 8px; margin: 2px 0 12px; font: 700 clamp(44px, 6vw, 68px)/1 var(--sk-font-head); color: var(--sk-green); letter-spacing: -.02em; }
.sk-proy-aprox { font-size: .5em; color: var(--sk-claro); }
.sk-proy-grafica { position: relative; margin: 0 -32px; }
.sk-proy-curva { display: block; width: 100%; height: 150px; }
.sk-proy-fondo { fill: rgba(255,255,255,.05); }
.sk-proy-lleno { fill: rgba(85,181,128,.32); }
.sk-proy-linea { fill: none; stroke: var(--sk-green); stroke-width: 2.5; vector-effect: non-scaling-stroke; }
.sk-proy-guia { stroke: rgba(255,255,255,.45); stroke-dasharray: 3 4; vector-effect: non-scaling-stroke; }
.sk-proy-punto { position: absolute; width: 16px; height: 16px; margin: -8px 0 0 -8px; box-sizing: border-box; border: 3px solid var(--sk-green); border-radius: 0; background-color: var(--sk-paper); box-shadow: 0 0 0 6px rgba(85,181,128,.25); pointer-events: none; }
.sk-proy-nota { grid-column: 1 / -1; margin: 0; padding: 16px 32px; border-top: 1px solid rgba(255,255,255,.1); font-size: 13px; line-height: 1.55; color: var(--sk-claro); }
@media (max-width: 760px) {
	.sk-proyector { grid-template-columns: minmax(0, 1fr); }
	.sk-proy-panel, .sk-proy-resultado { padding: 24px 22px 0; }
	.sk-proy-panel { padding-bottom: 20px; }
	.sk-proy-grafica { margin: 0 -22px; }
	.sk-proy-curva { height: 120px; }
	.sk-proy-monto { font-size: 34px; }
	.sk-proy-nota { padding: 14px 22px; }
}

/* Páginas de clientes */
.sk-portada--cliente { padding-block: 72px 56px; background-color: var(--sk-dark); }
.sk-portada--cliente::after { display: none; }
.sk-portada--cliente > .sk-portada-foto { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; max-width: none; padding: 0; object-fit: cover; filter: brightness(.38) saturate(.9); }
.sk-cliente-cab { display: flex; align-items: center; gap: 32px; }
.sk-cliente-cab-logo { flex: none; width: 140px; height: 140px; padding: 18px; box-sizing: border-box; object-fit: contain; border: 1px solid rgba(255,255,255,.2); border-radius: 0; background-color: rgba(0,0,0,.3); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }
.sk-portada--cliente h1 { margin: 0 0 8px; font-size: clamp(36px, 6vw, 60px); letter-spacing: -.02em; }
.sk-portada--cliente .sk-entradilla { margin: 0 0 16px; color: var(--sk-claro); }
.sk-etiquetas--claras li { border-color: rgba(255,255,255,.25); background: rgba(255,255,255,.08); color: var(--sk-paper); }
.sk-etiquetas--claras li::before { color: var(--sk-green); }
.sk-aviso-ejemplo { margin-top: 28px; margin-bottom: 0; padding: 10px 14px; border: 1px dashed #f2c46d; border-radius: 0; background: rgba(242,196,109,.12); color: #ffe2a8; font-size: 14px; }
.sk-kpis { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; list-style: none; margin-top: 28px; margin-bottom: 0; padding: 0; }
.sk-kpis li { display: flex; flex-direction: column; gap: 4px; margin: 0; padding: 22px; border: 1px solid #e6e8ea; border-radius: 0; background: linear-gradient(180deg, #fff, #f8faf9); position: relative; overflow: hidden; }
.sk-kpi-valor { font: 700 32px/1.1 var(--sk-font-head); color: var(--sk-ink-2); letter-spacing: -.01em; }
.sk-kpi-etq { font-size: 14px; color: var(--sk-ink); }
.sk-kpi-delta { font-size: 13px; font-weight: 600; color: var(--sk-green-text); }
.sk-dos-col { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px; }
.sk-dos-col h2::after { content: ""; display: block; width: 44px; height: 4px; margin-top: 12px; border-radius: 0; background-color: var(--sk-green); }
.sk-marcas { display: grid; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: 16px; list-style: none; margin-top: 28px; margin-bottom: 0; padding: 0; }
.sk-marcas li { margin: 0; }
.sk-marcas a { display: flex; flex-direction: column; align-items: center; gap: 4px; height: 100%; box-sizing: border-box; padding: 20px 14px; border-radius: 0; background-color: var(--sk-blue-900); color: var(--sk-paper); text-align: center; text-decoration: none; transition: transform .25s var(--sk-ease), box-shadow .25s ease; }
.sk-marcas a:hover, .sk-marcas a:focus-visible { transform: translateY(-3px); box-shadow: 0 12px 30px rgba(0,0,0,.18); color: var(--sk-paper); }
.sk-marcas img { width: 64px; height: 64px; object-fit: contain; margin-bottom: 6px; }
.sk-marcas .sk-marca-tipo { color: var(--sk-claro); font-size: 12px; }
.sk-cliente-marcas a { display: flex; flex-direction: column; align-items: center; gap: 3px; }
.sk-cliente-marcas a:hover .sk-marca-nombre, .sk-cliente-marcas a:focus .sk-marca-nombre { text-decoration: underline; text-decoration-color: var(--sk-green); }

/* Gráficos SVG */
.sk-graficos { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin-top: 28px; }
.sk-grafico { margin: 0; padding: 22px 22px 16px; border: 1px solid #ece3d3; border-radius: 0; background-color: var(--sk-paper); box-shadow: 0 8px 30px rgba(120,100,60,.08); min-width: 0; }
.sk-grafico--linea { grid-column: 1 / -1; }
.sk-g-titulo { margin: 0 0 12px; font: 700 17px/1.3 var(--sk-font-head); color: var(--sk-ink-2); }
.sk-grafico svg { display: block; width: 100%; height: auto; overflow: visible; font-family: var(--sk-font-body); }
.sk-g-rejilla line { stroke: #e9ecef; stroke-width: 1; }
.sk-g-rejilla text, .sk-g-ejex text { fill: #6b6b6b; font-size: 13px; }
.sk-g-trazo { stroke: var(--sk-green-700); stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 1; stroke-dashoffset: 0; transition: stroke-dashoffset 1.6s var(--sk-ease); }
.sk-g-area { transition: opacity 1s ease .5s; }
.sk-g-punto { fill: var(--sk-paper); stroke: var(--sk-green-700); stroke-width: 3; }
.sk-g-valor { font: 700 16px var(--sk-font-head); fill: var(--sk-ink-2); }
.sk-g-barra { fill: #9fd6b8; transform-box: fill-box; transform-origin: bottom; transition: transform .7s var(--sk-ease); transition-delay: calc(var(--sk-i) * 40ms); }
.sk-g-barra--ultima { fill: var(--sk-green-700); }
.sk-g-dona { display: flex; align-items: center; gap: 24px; }
.sk-g-dona svg { flex: none; width: 46%; max-width: 200px; transition: transform 1s var(--sk-ease), opacity .6s ease; }
.sk-g-seg { fill: none; stroke-width: 26; }
.sk-g-centro { font: 700 34px var(--sk-font-head); fill: var(--sk-ink-2); }
.sk-g-centro-etq { font-size: 13px; fill: #6b6b6b; }
.sk-g-leyenda { flex: 1; list-style: none; margin: 0; padding: 0; }
.sk-g-leyenda li { display: flex; align-items: center; gap: 10px; margin: 0; padding: 9px 0; border-bottom: 1px solid #eee; font-size: 15px; }
.sk-g-leyenda strong { margin-left: auto; font-family: var(--sk-font-head); color: var(--sk-ink-2); }
.sk-g-color { flex: none; width: 12px; height: 12px; border-radius: 0; }
.sk-embudo { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; align-items: center; gap: 4px; }
.sk-embudo li { width: var(--sk-ancho-etapa); margin: 0; text-align: center; transition: transform .7s var(--sk-ease), opacity .5s ease; transition-delay: calc(var(--sk-i) * 90ms); }
.sk-embudo-barra { display: flex; flex-direction: column; padding: 10px 12px; border-radius: 0; background: linear-gradient(90deg, var(--sk-blue-900), var(--sk-blue)); color: var(--sk-paper); }
.sk-embudo li:last-child .sk-embudo-barra { background: var(--sk-green); color: var(--sk-dark); }
.sk-embudo-n { font: 700 20px/1.2 var(--sk-font-head); }
.sk-embudo-etq { font-size: 13px; opacity: .9; }
.sk-embudo-tasa { display: inline-block; margin-bottom: 4px; padding: 1px 8px; border-radius: 0; background-color: #eef7f2; color: var(--sk-green-text); font-size: 12px; font-weight: 700; }
/* Dibujo al aparecer (solo con JS y sin "reducir movimiento") */
.sk-dibuja:not(.sk-dibujado) .sk-g-trazo { stroke-dashoffset: 1; }
.sk-dibuja:not(.sk-dibujado) .sk-g-area { opacity: 0; }
.sk-dibuja:not(.sk-dibujado) .sk-g-barra { transform: scaleY(0); }
.sk-dibuja:not(.sk-dibujado) .sk-g-dona svg { transform: rotate(-90deg) scale(.85); opacity: 0; }
.sk-dibuja:not(.sk-dibujado) .sk-embudo li { transform: translateY(10px); opacity: 0; }

@media (max-width: 900px) {
	.sk-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 700px) {
	.sk-graficos, .sk-dos-col { grid-template-columns: minmax(0, 1fr); }
	.sk-dos-col { gap: 8px; }
	.sk-cliente-cab { flex-direction: column; align-items: flex-start; gap: 20px; }
	.sk-cliente-cab-logo { width: 104px; height: 104px; padding: 14px; }
	.sk-g-ejex text:nth-child(even) { display: none; }
	.sk-g-rejilla text, .sk-g-ejex text { font-size: 18px; }
	.sk-g-dona { flex-direction: column; }
	.sk-g-leyenda { width: 100%; }
	.sk-portada::after { width: 70%; height: 50%; opacity: .3; }
}
@media (max-width: 340px) {
	.sk-kpis { grid-template-columns: minmax(0, 1fr); }
	.sk-kpi-valor { font-size: 28px; }
}
@media (prefers-reduced-motion: reduce) {
	.sk-g-trazo, .sk-g-area, .sk-g-barra, .sk-g-dona svg, .sk-embudo li, .sk-marcas a, .sk-proy-rango::-webkit-slider-thumb { transition: none; }
}
/* Piezas con borde dentro de una banda: el ancho del texto, sin el padding de banda */
.sk-banda > .sk-proyector, .sk-banda > .sk-aviso-ejemplo { width: calc(100% - 40px); max-width: calc(var(--sk-ancho) - 40px); }
.sk-banda > .sk-proyector { padding: 0; }
.sk-dos-col h2 { text-align: left; }
.sk-grafico--embudo { grid-column: 1 / -1; }
.sk-grafico--embudo .sk-embudo { max-width: 760px; margin-inline: auto; }
.sk-grafico--linea .sk-g-rejilla text, .sk-grafico--linea .sk-g-ejex text { font-size: 12px; }
@media (max-width: 700px) {
	/* el SVG se encoge con el ancho; las letras se compensan en unidades del viewBox */
	.sk-grafico--linea .sk-g-rejilla text, .sk-grafico--linea .sk-g-ejex text { font-size: 28px; }
	.sk-grafico--linea .sk-g-valor { font-size: 32px; }
	.sk-grafico { padding: 18px 14px 12px; }
}
@media (max-width: 560px) {
	.sk-kpis { gap: 10px; }
	.sk-kpis li { padding: 16px 14px; }
	.sk-kpi-valor { font-size: 24px; }
}

/* ===== F11 · Pulido Impeccable (2026-10-17) ===== */
/* Medida de lectura: párrafos y listas de sección a ~70 caracteres (ch de Inter es ancho), columna centrada bajo el h2. */
.sk-seccion .wp-block-group__inner-container > :is(p, ul, ol) { max-width: 54ch; margin-inline: auto; }
.sk-proy-nota { padding-inline-end: max(32px, calc(100% - 64ch)); }
.sk-cookies :is(p, .sk-cookies-opciones) { max-width: 64ch; }
/* Planes: sin barra de acento; borde fino y sombra suave. */
.sk-plan { border-top-width: 1px; border-top-color: var(--sk-mist); box-shadow: 0 5px 30px rgba(214,215,216,.57); }
/* Proyector: superficie lisa, sin halo radial. */
.sk-proy-resultado { background: var(--sk-blue-900); }
/* Contraste AA: tachados de planes y placeholders. */
.sk-no { color: #5f6368; text-decoration-color: rgba(95,99,104,.55); }
::placeholder, .fluentform .ff-el-form-control::placeholder { color: #646b73 !important; opacity: 1; }
/* Superficies del navegador con la paleta de marca. */
::selection { background-color: rgba(85,181,128,.32); color: var(--sk-ink-2); }
.sk-seccion--oscura ::selection, .sk-portada ::selection, .sk-hero ::selection, .sk-pie ::selection { background-color: var(--sk-green); color: var(--sk-dark); }
input, textarea { caret-color: var(--sk-green-700); }
:root { accent-color: var(--sk-green-700); }
a { text-underline-offset: .18em; text-decoration-thickness: 1px; }
@media (hover: hover) {
	.sk-plan:hover { box-shadow: 0 14px 40px rgba(15,52,96,.16); }
}
.sk-seccion .wp-block-group__inner-container > h2 + p { text-align: center; }
/* Cabecera de cliente: velo degradado sobre la foto, rubro bajo el h1 y aviso legible. */
.sk-portada--cliente::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(10,22,38,.55) 0%, rgba(10,22,38,.82) 100%); pointer-events: none; }
.sk-portada--cliente h1 { margin-bottom: 6px; }
.sk-cliente-rubro { margin: 0 0 12px; font-size: 16px; line-height: 1.4; color: var(--sk-claro); }
.sk-aviso-ejemplo { background: rgba(26,26,26,.88); color: #ffe2a8; border-color: #f2c46d; max-width: 62ch; }
.sk-proy-titulo { margin: 0 0 14px; font: 700 17px/1.3 var(--sk-font-head); color: var(--sk-paper); }
.sk-entradilla { max-width: 52ch; }
.sk-portada.sk-banda > .sk-entradilla { max-width: calc(52ch + 40px); }
/* Rendimiento (F11): revelado solo con opacidad y transform (compuestos), sin blur;
   cabecera de cliente oscurecida con el velo en vez de filter sobre la foto. */
.sk-js .sk-revela { transition: opacity .6s ease, transform .6s ease; transition-delay: var(--sk-retraso, 0s); }
.sk-js .sk-revela:not(.sk-visto) { filter: none; }
.sk-portada--cliente > .sk-portada-foto { filter: none; }
.sk-portada--cliente::before { background: linear-gradient(180deg, rgba(8,16,28,.72) 0%, rgba(8,16,28,.9) 100%); }
.sk-cliente-cab-logo { -webkit-backdrop-filter: none; backdrop-filter: none; background-color: rgba(0,0,0,.45); }
@media (max-width: 767px) {
	.sk-hero { background-image: linear-gradient(rgba(15,52,96,.72), rgba(26,26,26,.82)), url("img/portada-inicio-fija.webp"); }
}

/* F11.1 · Plan destacado como en Blogger ("Mayor preferencia") y frases completas en la lista */
.sk-plan.sk-plan--destacado { border-color: var(--sk-green); box-shadow: 0 0 0 1px var(--sk-green), 0 5px 30px rgba(214,215,216,.57); }
.sk-plan > .sk-plan-sello { position: absolute; top: 0; left: 50%; z-index: 2; transform: translateX(-50%); margin: 0; padding: 4px 14px; border-radius: 0; background-color: var(--sk-green); color: var(--sk-dark); font: 700 12px/1.4 var(--sk-font-head); letter-spacing: .08em; text-transform: uppercase; white-space: nowrap; }
.sk-planes:has(.sk-plan--destacado) .sk-plan-nombre { padding-top: 36px; }

/* F11.2 · D-51: todo recto. Anula los redondeos de bloques de WP, GeneratePress y plugins */
.wp-block-button__link, .wp-element-button, .wp-block-image img, .wp-block-search__input, .wp-block-search__button, .gp-icon, .generate-back-to-top, .ff-el-form-control, .ff-btn, .fluentform .ff-el-form-control, .fluentform .ff-btn, button, input, select, textarea, img, iframe, video,
.fluentform .ff_input-group-text, .fluentform .ff_input-group .ff-el-form-control, .fluentform .ff_input-group > * { border-radius: 0; }

/* F11.3 · D-52: hero de Inicio como el de Blogger. H1 (SEO) arriba y discreto;
   lo grande es el saludo y «Servicios de…» que se escribe solo (sk.js). */
.sk-hero-interior { padding-block: 72px; }
.sk-hero .sk-hero-titulo { display: inline-flex; align-items: center; gap: 12px; margin: 0 0 20px; font: 600 13px/1.4 var(--sk-font-body); letter-spacing: .2em; text-transform: uppercase; color: var(--sk-mist); }
.sk-hero .sk-hero-titulo::before, .sk-hero .sk-hero-titulo::after { content: ""; flex: none; width: 28px; height: 2px; background-color: var(--sk-green); }
.sk-hero-saludo { margin: 0; font: 700 clamp(34px, 6.2vw, 68px)/1.05 var(--sk-font-head); text-transform: uppercase; letter-spacing: .01em; color: var(--sk-paper); }
.sk-hero .sk-hero-rotativo { margin: 16px 0 0; font: 500 clamp(18px, 2.6vw, 30px)/1.3 var(--sk-font-head); text-transform: uppercase; letter-spacing: .04em; color: var(--sk-paper); }
.sk-rot.sk-rot--escribe { display: inline-block; text-align: left; }
.sk-rot-txt::after { content: ""; display: inline-block; width: 3px; height: 1em; margin-left: 4px; vertical-align: -.12em; background-color: var(--sk-green); animation: sk-cursor 1s steps(1, end) infinite; }
@keyframes sk-cursor { 50% { opacity: 0; } }
.sk-hero .sk-botones { margin-top: 34px; }
.sk-hero-redes { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin: 28px 0 0; }
.sk-hero-redes a { display: grid; place-items: center; width: 40px; height: 40px; border: 1px solid rgba(255,255,255,.35); color: var(--sk-paper); transition: background-color .2s, border-color .2s, color .2s; }
.sk-hero-redes a:hover, .sk-hero-redes a:focus-visible { background-color: var(--sk-green); border-color: var(--sk-green); color: var(--sk-dark); }
.sk-hero-redes svg { width: 18px; height: 18px; }
@media (max-width: 768px) {
	.sk-hero-interior { padding-block: 52px; }
	.sk-hero .sk-hero-titulo { gap: 8px; font-size: 11px; letter-spacing: .14em; }
	.sk-hero .sk-hero-titulo::before, .sk-hero .sk-hero-titulo::after { width: 16px; }
	.sk-hero .sk-rot { display: block; min-height: 1.3em; text-align: center; min-width: 0 !important; } /* la palabra en su línea: no salta al escribirse */
	.sk-hero-redes a { width: 36px; height: 36px; }
}

/* F11.3 · Así trabajamos: una sola fila de 4 pasos; en móvil, fila deslizable */
.sk-pasos { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.sk-seccion .wp-block-group__inner-container > .sk-pasos { max-width: none; } /* el 54ch de los textos la partía en dos filas */
.sk-pasos::before { content: none; }
.sk-pasos li::after { content: ""; position: absolute; top: 22px; left: 58px; right: -16px; height: 2px; background: linear-gradient(90deg, var(--sk-green), rgba(85,181,128,.2)); }
.sk-pasos li:last-child::after { content: none; }
@media (max-width: 700px) {
	.sk-pasos { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 76%; gap: 20px; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: 12px; scrollbar-width: thin; }
	.sk-pasos li { padding: 64px 0 0; min-height: 0; scroll-snap-align: start; }
	.sk-pasos li::after { right: -8px; }
}

/* F11.3 · Submarcas como en Blogger: la rejilla llena la tarjeta y se encoge según
   cuántas marcas hay (1-2, 4, 6). Nunca hay scroll dentro de la tarjeta. */
.sk-cliente-marcas { justify-content: flex-start; gap: 10px; padding: 16px; overflow: hidden; }
.sk-cliente-grupo { flex: none; font-size: 15px; text-transform: uppercase; letter-spacing: .06em; }
.sk-cliente-grupo::after { width: 24px; margin-top: 6px; }
.sk-cliente-marcas ul { flex: 1 1 auto; min-height: 0; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: minmax(0, 1fr); gap: 8px; }
.sk-cliente-marcas li { min-width: 0; min-height: 0; overflow: hidden; padding: 8px 6px; gap: 2px; }
.sk-cliente-marcas a { min-height: 0; max-width: 100%; }
.sk-cliente-marcas img { flex: none; width: 44px; height: 44px; margin-bottom: 4px; }
.sk-cliente-marcas .sk-marca-nombre { font-size: 13px; overflow-wrap: anywhere; }
.sk-cliente-marcas .sk-marca-tipo { font-size: 11px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
/* 1 o 2 marcas: una fila centrada, más grande */
.sk-cliente-marcas:not(:has(li:nth-child(3))) { justify-content: center; }
.sk-cliente-marcas ul:not(:has(> li:nth-child(3))) { flex: none; grid-auto-rows: auto; }
.sk-cliente-marcas ul:has(> li:only-child) { grid-template-columns: minmax(0, 220px); justify-content: center; }
.sk-cliente-marcas ul:not(:has(> li:nth-child(3))) li { padding: 14px 10px; }
.sk-cliente-marcas ul:not(:has(> li:nth-child(3))) img { width: 60px; height: 60px; }
/* 5 o 6 marcas: 3 × 2 compacto */
.sk-cliente-marcas ul:has(> li:nth-child(5)) { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
.sk-cliente-marcas ul:has(> li:nth-child(5)) li { padding: 6px 4px; }
.sk-cliente-marcas ul:has(> li:nth-child(5)) img { width: 34px; height: 34px; margin-bottom: 2px; }
.sk-cliente-marcas ul:has(> li:nth-child(5)) .sk-marca-nombre { font-size: 11.5px; }
.sk-cliente-marcas ul:has(> li:nth-child(5)) .sk-marca-tipo { font-size: 10px; line-height: 1.25; }
@media (max-width: 560px) {
	.sk-cliente-marcas { padding: 12px; gap: 8px; }
	.sk-cliente-grupo { font-size: 13px; }
	.sk-cliente-marcas li { padding: 6px 4px; }
	.sk-cliente-marcas img { width: 36px; height: 36px; }
}

/* ===== F12.1 — tecleo visible, catálogo de portada, FAQ y figuras ===== */
/* La rotación CSS (.sk-rot > span: opacity 0 + animación) también alcanzaba al span del tecleo y lo ocultaba a ratos. */
.sk-rot.sk-rot--escribe > .sk-rot-txt { opacity: 1; animation: none; grid-area: auto; }

/* Catálogo de la portada: título con acento, entradilla protagonista y cierre en banda */
.sk-catalogo .wp-block-group__inner-container > h2 { margin-bottom: 0; }
.sk-catalogo .wp-block-group__inner-container > h2::after { content: ""; display: block; width: 56px; height: 4px; margin: 18px auto 0; background: var(--sk-green); }
.sk-catalogo .wp-block-group__inner-container > h2 + p { max-width: 64ch; margin: 24px auto 48px; font-size: 19px; line-height: 1.65; color: var(--sk-ink-2); text-align: center; }
.sk-catalogo .wp-block-group__inner-container > .sk-tarjetas + p { max-width: none; margin: 48px 0 0; padding: 26px 32px; background: var(--sk-cream); border-left: 6px solid var(--sk-green); font-family: var(--sk-font-head); font-size: 19px; line-height: 1.5; color: var(--sk-ink-2); text-align: center; }
.sk-catalogo .sk-tarjetas + p a { font-weight: 700; color: var(--sk-blue); text-decoration-thickness: 2px; text-underline-offset: 3px; }
.sk-catalogo .wp-block-group__inner-container > .sk-tarjetas + p + p { max-width: none; margin: 16px 0 0; font-size: 14px; color: #666; text-align: center; }

/* Preguntas frecuentes: una columna alineada, pregunta con marcador y separador */
.sk-faq > .wp-block-group__inner-container { max-width: 860px; margin-inline: auto; }
.sk-faq .wp-block-group__inner-container > h2 { margin-bottom: 32px; }
.sk-faq .wp-block-group__inner-container > h3 { position: relative; margin: 0; padding: 24px 0 10px 44px; border-top: 1px solid #e5e5e5; font-size: 19px; line-height: 1.4; text-align: left; }
.sk-faq .wp-block-group__inner-container > h3::before { content: "?"; position: absolute; left: 0; top: 22px; width: 28px; height: 28px; background: var(--sk-green); color: #fff; font: 700 16px/28px var(--sk-font-head); text-align: center; }
.sk-faq .wp-block-group__inner-container > :is(p, ul, ol) { max-width: none; margin: 0 0 0 44px; padding-bottom: 18px; text-align: left; }
.sk-faq .wp-block-group__inner-container > :is(p, ul, ol):last-child { padding-bottom: 26px; border-bottom: 1px solid #e5e5e5; margin-bottom: 0; }

/* Figura junto al texto (fotos Unsplash License y gráficos propios) */
.sk-seccion--figura > .wp-block-group__inner-container { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); gap: 64px; align-items: center; }
.sk-seccion--figura .sk-figura-texto .wp-block-group__inner-container > :is(h2, p, ul, ol, div) { max-width: none; margin-inline: 0; text-align: left; }
.sk-seccion--figura .sk-figura-texto h2::after { content: ""; display: block; width: 56px; height: 4px; margin-top: 16px; background: var(--sk-green); }
.sk-seccion--figura .sk-figura-texto p { font-size: 18px; line-height: 1.65; }
.sk-seccion--figura .sk-botones { justify-content: flex-start; }
.sk-figura { position: relative; margin: 0 16px 16px 0; }
.sk-figura::before { content: ""; position: absolute; inset: 16px -16px -16px 16px; background: var(--sk-green); }
.sk-seccion--oscura .sk-figura::before { background: var(--sk-blue); }
.sk-figura-img { position: relative; display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }

@media (max-width: 860px) {
	.sk-seccion--figura > .wp-block-group__inner-container { grid-template-columns: minmax(0, 1fr); gap: 36px; }
	.sk-figura { margin: 0 10px 10px 0; }
	.sk-figura::before { inset: 10px -10px -10px 10px; }
}
@media (max-width: 700px) {
	.sk-catalogo .wp-block-group__inner-container > h2 + p { font-size: 17px; margin-bottom: 36px; }
	.sk-catalogo .wp-block-group__inner-container > .sk-tarjetas + p { padding: 20px 18px; font-size: 16px; margin-top: 36px; }
	.sk-faq .wp-block-group__inner-container > h3 { padding-left: 38px; font-size: 17px; }
	.sk-faq .wp-block-group__inner-container > h3::before { width: 26px; height: 26px; line-height: 26px; }
	.sk-faq .wp-block-group__inner-container > :is(p, ul, ol) { margin-left: 38px; }
	.sk-seccion--figura .sk-figura-texto p { font-size: 17px; }
}

/* D-59: rueda de servicios de Inicio, como la rueda de emotes de Minecraft.
   8 casillas numeradas en sentido horario; el centro muestra la elegida. Todo recto (D-51). */
.sk-rueda { --sk-rueda-c: 168px; --sk-rueda-m: 340px; --sk-rueda-negro: #0b0d10; position: relative; margin-top: 8px; padding: 80px 24px 44px; text-align: center; color: var(--sk-paper); background-color: var(--sk-blue-900); background-image: linear-gradient(rgba(255,255,255,.04) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.04) 1px, transparent 1px); background-size: 32px 32px; }
.sk-rueda-cruz { display: grid; grid-template-columns: var(--sk-rueda-c) var(--sk-rueda-m) var(--sk-rueda-c); grid-template-rows: var(--sk-rueda-c) var(--sk-rueda-m) var(--sk-rueda-c); gap: 8px; justify-content: center; }
.sk-rueda-c1 { grid-area: 1 / 1; } .sk-rueda-c2 { grid-area: 1 / 2; } .sk-rueda-c3 { grid-area: 1 / 3; } .sk-rueda-c4 { grid-area: 2 / 3; }
.sk-rueda-c5 { grid-area: 3 / 3; } .sk-rueda-c6 { grid-area: 3 / 2; } .sk-rueda-c7 { grid-area: 3 / 1; } .sk-rueda-c8 { grid-area: 2 / 1; }
.sk-rueda-casilla { position: relative; display: grid; place-items: center; min-width: 0; background-color: rgba(0,0,0,.38); border: 3px solid var(--sk-mist); box-shadow: inset 0 0 0 2px rgba(0,0,0,.55); text-decoration: none; transition: border-color .15s ease, background-color .15s ease; }
.sk-rueda-img { display: block; width: min(76%, 128px); height: auto; aspect-ratio: 1; object-fit: cover; transition: transform .2s cubic-bezier(.2,.8,.2,1); }
.sk-rueda-casilla:hover, .sk-rueda-casilla.is-activa { border-color: var(--sk-green); background-color: rgba(85,181,128,.16); }
.sk-rueda-casilla.is-activa .sk-rueda-img { transform: scale(1.06); }
.sk-rueda-casilla:focus-visible { outline: 3px solid var(--sk-paper); outline-offset: 3px; }
.sk-rueda-num { position: absolute; display: grid; place-items: center; width: 34px; height: 34px; box-sizing: border-box; background-color: var(--sk-ink-2); border: 2px solid var(--sk-mist); color: var(--sk-paper); font: 700 16px/1 var(--sk-font-head); transition: background-color .15s ease, color .15s ease; }
.sk-rueda-c1 .sk-rueda-num, .sk-rueda-c2 .sk-rueda-num, .sk-rueda-c3 .sk-rueda-num { left: 50%; top: -50px; transform: translateX(-50%); }
.sk-rueda-c5 .sk-rueda-num, .sk-rueda-c6 .sk-rueda-num, .sk-rueda-c7 .sk-rueda-num { left: 50%; bottom: -50px; transform: translateX(-50%); }
.sk-rueda-c4 .sk-rueda-num { right: -52px; top: 50%; transform: translateY(-50%); }
.sk-rueda-c8 .sk-rueda-num { left: -52px; top: 50%; transform: translateY(-50%); }
.sk-rueda-casilla.is-activa .sk-rueda-num { background-color: var(--sk-green); border-color: var(--sk-paper); color: var(--sk-dark); }
.sk-rueda-centro { grid-area: 2 / 2; display: flex; min-width: 0; box-sizing: border-box; padding: 24px; background-color: var(--sk-rueda-negro); border: 3px solid var(--sk-mist); text-align: left; }
.sk-rueda-panel { display: flex; flex-direction: column; width: 100%; animation: sk-rueda-entra .2s ease-out; }
.sk-rueda-panel[hidden] { display: none; }
@keyframes sk-rueda-entra { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: none; } }
.sk-rueda-tecla { margin: 0 0 6px; font: 700 13px/1 var(--sk-font-head); letter-spacing: .08em; color: var(--sk-green); }
.sk-rueda-titulo { margin: 0 0 8px; font-size: 22px; line-height: 1.2; color: var(--sk-paper); }
.sk-rueda-texto { margin: 0 0 12px; font-size: 15px; line-height: 1.5; color: rgba(255,255,255,.86); }
.sk-rueda .sk-etiquetas { margin-bottom: 12px; }
.sk-rueda .sk-precio { margin: 0 0 14px; color: rgba(255,255,255,.86); }
.sk-rueda .sk-precio strong { color: var(--sk-paper); }
.sk-rueda-panel > .sk-btn { margin-top: auto; align-self: flex-start; }
.sk-rueda-vacio { display: none; }
.sk-rueda-ayuda { display: table; margin: 72px auto 18px; padding: 14px 28px; background-color: rgba(0,0,0,.55); font: 600 18px/1.4 var(--sk-font-head); }
.sk-rueda-ayuda-toque { display: none; }
.sk-rueda-todos { display: table; margin: 0 auto; box-shadow: 0 0 0 3px var(--sk-paper); }
.sk-catalogo .wp-block-group__inner-container > .sk-rueda + p { max-width: none; margin: 16px 0 0; font-size: 14px; color: #666; text-align: center; }
@media (hover: none) {
	.sk-rueda-ayuda-raton { display: none; }
	.sk-rueda-ayuda-toque { display: inline; }
	.sk-rueda-casilla:hover:not(.is-activa) { border-color: var(--sk-mist); background-color: rgba(0,0,0,.38); }
}
@media (max-width: 900px) {
	.sk-rueda { --sk-rueda-c: 140px; --sk-rueda-m: 300px; }
	.sk-rueda-centro { padding: 18px; }
	.sk-rueda-texto { font-size: 14px; }
}
/* Móvil: la misma figura, más pequeña; el número va dentro de la casilla y el detalle baja bajo la figura. */
@media (max-width: 700px) {
	.sk-rueda { padding: 24px 12px 28px; margin-inline: -8px; }
	.sk-rueda-cruz { grid-template-columns: repeat(3, minmax(0, 104px)); grid-template-rows: auto; gap: 6px; }
	.sk-rueda-casilla, .sk-rueda-vacio { aspect-ratio: 1; }
	.sk-rueda-casilla { border-width: 2px; }
	.sk-rueda-img { width: 72%; }
	.sk-rueda .sk-rueda-num { inset: 4px auto auto 4px; transform: none; width: 22px; height: 22px; border-width: 1px; font-size: 12px; }
	.sk-rueda-vacio { grid-area: 2 / 2; display: grid; place-items: center; background-color: var(--sk-rueda-negro); border: 2px solid var(--sk-mist); font: 700 40px/1 var(--sk-font-head); color: var(--sk-green); }
	.sk-rueda-centro { grid-area: 4 / 1 / 5 / 4; margin-top: 10px; padding: 20px 18px; border-width: 2px; scroll-margin-bottom: 24px; }
	.sk-rueda-ayuda { margin: 20px auto 14px; padding: 10px 16px; font-size: 15px; }
}
@media (prefers-reduced-motion: reduce) {
	.sk-rueda-casilla, .sk-rueda-img, .sk-rueda-num { transition: none; }
	.sk-rueda-casilla.is-activa .sk-rueda-img { transform: none; }
	.sk-rueda-panel { animation: none; }
}
/* D-60 · Ajustes móviles de servicios y proyector por mes */
/* El número de la rueda siempre por encima de la imagen agrandada. */
.sk-rueda-num { z-index: 2; }
.sk-pie-titular > span { display: block; }
.sk-proy-campo { display: flex; flex-direction: column; gap: 6px; margin: 0 0 14px; }
.sk-proy-campo[hidden] { display: none; }
.sk-proy-mes { width: 100%; min-height: 44px; padding: 8px 12px; border: 1px solid rgba(255,255,255,.25); border-radius: 0; background-color: #0f3460; color: #fff; font-family: inherit; font-size: 16px; font-weight: 600; line-height: 1.3; cursor: pointer; }
.sk-proy-mes:focus-visible { outline: 2px solid #55b580; outline-offset: 2px; }
.sk-planes-flecha { display: none; }
@media (max-width: 700px) {
	/* "Compara los planes" justo después de la portada. */
	.entry-content:has(> .sk-seccion--planes) { display: flex; flex-direction: column; }
	.entry-content > .sk-portada { order: -2; }
	.entry-content > .sk-seccion--planes { order: -1; }
	/* Planes: uno por pantalla, deslizables. */
	.sk-planes-marco { position: relative; }
	.sk-planes { display: flex; gap: 14px; overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; scrollbar-width: none; padding: 6px 0 4px; }
	.sk-planes::-webkit-scrollbar { display: none; }
	.sk-plan { flex: 0 0 88%; display: flex; flex-direction: column; scroll-snap-align: center; margin-bottom: 0; }
	.sk-plan-lista { display: block; }
	.sk-plan-lista li { display: block; text-align: left; padding: 7px 12px; font-size: 14px; line-height: 1.35; }
	.sk-plan-lista li::before { margin-right: 6px; }
	.sk-planes-marco.is-deslizable .sk-planes-flecha { position: absolute; top: 118px; z-index: 3; display: grid; place-items: center; width: 40px; height: 40px; padding: 0; border: 2px solid #fff; border-radius: 0; background-color: #55b580; color: #0f3460; box-shadow: 0 4px 14px rgba(15,52,96,.25); cursor: pointer; transition: opacity .2s ease; }
	.sk-planes-flecha--ant { left: -8px; }
	.sk-planes-flecha--ant svg { transform: scaleX(-1); }
	.sk-planes-flecha--sig { right: -8px; }
	.sk-planes-marco .sk-planes-flecha:disabled { opacity: 0; pointer-events: none; }
	.sk-planes-flecha:focus-visible { outline: 2px solid #0f3460; outline-offset: 2px; }
}
@media (prefers-reduced-motion: reduce) {
	.sk-planes-flecha { transition: none; }
}
