/* ==========================================================================
   EQUILIBRIUM CHILD · eq-base.css · v0.2.0 · 2026-11-11 (header fijo y anclas)
   Prefijo: eq-  ·  Sistema: RKT/03-Diseno/Sistemas/Sistema visual EQUILIBRIUM
   Motor del sitio: reset, fuentes, tokens y base. Las secciones traen su propio
   CSS dentro de su widget HTML de Elementor.
   ========================================================================== */

/* Reset de Hello dentro de una capa: normaliza, pero pierde contra todo lo demás.
   Tiene que ser la primera regla del archivo. */
@import url("../../../hello-elementor/assets/css/reset.css") layer(hello-reset);
[hidden] { display: none !important; }

/* ── Fuentes (SIL OFL 1.1, licencias en assets/fonts) ─────────────────────
   Michroma: logotipo e intro · Rajdhani: títulos (provisional, ver sistema visual)
   Inter: texto. Solo latín. */
@font-face { font-family: "Michroma"; font-style: normal; font-weight: 400; font-display: swap;
	src: url("../fonts/michroma-400-latin.woff2") format("woff2"); }
@font-face { font-family: "Rajdhani"; font-style: normal; font-weight: 500; font-display: swap;
	src: url("../fonts/rajdhani-500-latin.woff2") format("woff2"); }
@font-face { font-family: "Rajdhani"; font-style: normal; font-weight: 600; font-display: swap;
	src: url("../fonts/rajdhani-600-latin.woff2") format("woff2"); }
@font-face { font-family: "Rajdhani"; font-style: normal; font-weight: 700; font-display: swap;
	src: url("../fonts/rajdhani-700-latin.woff2") format("woff2"); }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 400 700; font-display: swap;
	src: url("../fonts/inter-latin.woff2") format("woff2"); }

:root {
	/* Fondo y superficies */
	--eq-negro: #02050b;
	--eq-card: #051124;
	/* Azules */
	--eq-azul: #2064ec;        /* botón principal · 5.13:1 con blanco */
	--eq-azul-vivo: #0166fa;   /* hover, brillo */
	--eq-celeste: #38a0f0;     /* acentos de títulos, cifras · 7.24:1 sobre negro */
	--eq-azul-medio: #2c80e3;  /* enlaces · 5.15:1 */
	/* Texto */
	--eq-titulo: #e8e8e8;      /* 16.65:1 */
	--eq-texto: #959596;       /* 6.82:1 */
	/* Acento cálido: el eje del logo y la línea de luz */
	--eq-naranja: #f47c15;
	/* Forma */
	--eq-radio-boton: 4px;
	--eq-radio-card: 8px;
	--eq-borde: 1px solid rgba(56, 160, 240, .35);
	/* Tipografía */
	--eq-logo: "Michroma", "Segoe UI", Arial, sans-serif;
	--eq-display: "Rajdhani", "Segoe UI", Arial, sans-serif;
	--eq-sans: "Inter", system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
	--eq-track-logo: .18em;
	--eq-track-eyebrow: .2em;
	/* Movimiento */
	--eq-ease: cubic-bezier(.22, 1, .36, 1);
	/* Alto del header fijo (widget eq-header): el hero y las anclas lo descuentan */
	--eq-header-h: 72px;
}
@media (max-width: 1023px) { :root { --eq-header-h: 64px; } }

/* ── Base ─────────────────────────────────── */
html {
	background: var(--eq-negro);
	scroll-behavior: smooth;
	scroll-padding-top: calc(var(--eq-header-h) + 16px);
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
html.eq-hd-abierto, html.eq-hd-abierto body { overflow: hidden; }
.eq-sr {
	position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;
	overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
body {
	background: var(--eq-negro);
	color: var(--eq-texto);
	font-family: var(--eq-sans);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	overflow-x: clip;
}
::selection { background: rgba(32, 100, 236, .45); color: #fff; }
:focus-visible { outline: 2px solid var(--eq-celeste); outline-offset: 3px; }

/* Header y título por defecto de Hello mientras no exista el header propio */
.site-header .site-title a,
.site-header .site-navigation a,
.site-header .site-description { color: var(--eq-titulo); }

/* ── Secciones a todo el ancho ───────────────
   Un widget con [data-eq-ancho] pide que su contenedor de Elementor no tenga
   márgenes ni ancho máximo, aunque se haya armado con los valores por defecto. */
.e-con:has(> .elementor-widget-html [data-eq-ancho]),
.e-con:has(> .e-con-inner > .elementor-widget-html [data-eq-ancho]) {
	--padding-top: 0px; --padding-right: 0px; --padding-bottom: 0px; --padding-left: 0px;
	--content-width: 100%; --width: 100%; --gap: 0px; --row-gap: 0px; --column-gap: 0px;
	max-width: none;
}
.elementor-widget-html:has([data-eq-ancho]) { width: 100%; }
