/*
 * Base de las páginas con IA en HTML (landings). Copiada de Juankerman AI Pages 2.1 (frontend.css)
 * para que las páginas creadas con ese plugin se vean igual con Site Manager.
 * El CSS propio de cada página va aparte (meta _jkap_landing_css, ya aislado con .jkap-landing-runtime).
 */
:root { color-scheme: light dark; }
html { box-sizing: border-box; scroll-behavior: smooth; }
*, *::before, *::after { box-sizing: inherit; }
html, body.jkap-clean-page { margin: 0; min-height: 100%; }
body.jkap-clean-page { overflow-x: clip; background: #07090d; color: #f7f9fc; }
.jkap-page-shell, .jkap-ai-document { width: 100%; max-width: none; margin: 0; padding: 0; }
.jkap-ai-document > :first-child { margin-top: 0; }
.jkap-ai-document > :last-child { margin-bottom: 0; }
.jkap-ai-document img:where(:not(.jkm-theme-page img)) { max-width: 100%; height: auto; }
.jkap-ai-document :where(a, button, input, textarea, select) { max-width: 100%; }
.jkap-legal-footer { background: #0c0f14; border-top: 1px solid rgba(255,255,255,.1); color: #c9d1dc; padding: 24px; }
.jkap-legal-footer > div { width: min(1120px, 100%); margin: 0 auto; display: flex; justify-content: space-between; gap: 20px; flex-wrap: wrap; }
.jkap-legal-footer nav { display: flex; gap: 18px; flex-wrap: wrap; }
.jkap-legal-footer a { color: inherit; }

/* Acabado premium opcional. Solo actúa dentro de páginas que usan esta clase. */
.jkap-ai-premium {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	background-color: #050914;
	background-image:
		linear-gradient(rgba(56,189,248,.055) 1px, transparent 1px),
		linear-gradient(90deg, rgba(56,189,248,.055) 1px, transparent 1px),
		radial-gradient(circle at 12% 8%, rgba(14,165,233,.22), transparent 28rem),
		radial-gradient(circle at 88% 28%, rgba(99,102,241,.18), transparent 30rem),
		linear-gradient(180deg, #030712, #0a1020 48%, #030712);
	background-size: 42px 42px, 42px 42px, auto, auto, auto;
}
.jkap-ai-premium::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	pointer-events: none;
	background: linear-gradient(180deg, transparent 0, rgba(3,7,18,.08) 35%, rgba(3,7,18,.72) 100%);
}
.jkap-ai-premium :where(section, header) { scroll-margin-top: 5.5rem; }
.jkap-ai-premium .jkap-ai-language-bar {
	position: sticky;
	top: 0;
	z-index: 20;
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
	box-shadow: 0 12px 35px rgba(0,0,0,.24);
}
.jkap-ai-premium :where(.jkap-ai-hero-en, .jkap-ai-hero-es) {
	box-shadow: 0 28px 80px rgba(2,132,199,.13), inset 0 1px 0 rgba(255,255,255,.05);
}
.jkap-ai-premium .jkap-ai-brand-logo img {
	filter: drop-shadow(0 0 24px rgba(56,189,248,.34));
}
.jkap-ai-premium .wp-block-column {
	transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}
.jkap-ai-premium .wp-block-column:hover {
	transform: translateY(-3px);
	border-color: rgba(125,211,252,.55) !important;
	box-shadow: 0 18px 46px rgba(0,0,0,.24);
}
.jkap-ai-premium .wp-block-button__link {
	transition: transform .18s ease, filter .18s ease, box-shadow .18s ease;
}
.jkap-ai-premium .wp-block-button__link:hover {
	transform: translateY(-2px);
	filter: brightness(1.1);
	box-shadow: 0 12px 30px rgba(14,165,233,.2);
}
.jkap-ai-premium .jkap-ai-section-index {
	display: inline-flex;
	align-items: center;
	gap: .55rem;
}
.jkap-ai-premium .jkap-ai-section-index::before {
	content: "";
	width: 2.25rem;
	height: 2px;
	background: currentColor;
	box-shadow: 0 0 12px currentColor;
}
.jkap-ai-premium .wp-block-details[open] {
	border-color: rgba(125,211,252,.4) !important;
	box-shadow: 0 14px 40px rgba(0,0,0,.2);
}
.jkap-ai-premium :where(a, button, summary):focus-visible {
	outline: 3px solid #7dd3fc;
	outline-offset: 4px;
}
@media (max-width: 600px) {
	.jkap-legal-footer > div { justify-content: center; text-align: center; }
	.jkap-legal-footer nav { justify-content: center; }
	.jkap-ai-premium { background-size: 28px 28px, 28px 28px, auto, auto, auto; }
	.jkap-ai-premium .jkap-ai-language-bar { position: relative; }
	.jkap-ai-premium .wp-block-buttons > .wp-block-button { width: 100%; }
	.jkap-ai-premium .wp-block-button__link { width: 100%; justify-content: center; text-align: center; }
	.jkap-ai-premium .wp-block-column:hover { transform: none; }
}
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* Páginas traídas de una plantilla del tema: la caja que hace de <body> original ocupa toda la pantalla */
.jkm-theme-page { display: flow-root; min-height: 100vh; overflow-x: clip; }
