/* Krake — tema visual compartido (index.html y mentor.html)
   Estilo: negro con brillos rojos, Outfit + Space Mono, tarjetas con borde fino, animaciones suaves. */

:root {
  --kr-red: #ef0a10;
  --kr-red-soft: #ff3b40;
  --kr-red-deep: #b5080c;
  --kr-bg: #050203;
  --kr-surface: #0b0607;
  --kr-surface-2: #120809;
  --kr-line: rgba(255, 120, 120, 0.16);
  --kr-line-strong: rgba(239, 10, 16, 0.55);
  --kr-ink: #f6f2f2;
  --kr-soft: #b9a9aa;
  --kr-font: "Outfit", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --kr-mono: "Space Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

html { scroll-behavior: smooth; }
html, body { overflow-x: hidden; }   /* evita que algún elemento suelto empuje el ancho de la página y desplace el encabezado fijo */

body,
body.bg-black {
  font-family: var(--kr-font) !important;
  background-color: var(--kr-bg) !important;
  color: var(--kr-ink);
}

/* Fondo global: brillos radiales rojos + rejilla de puntos */
body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    radial-gradient(circle at 82% 8%, rgba(239, 10, 16, 0.16), transparent 34rem),
    radial-gradient(circle at 12% 40%, rgba(239, 10, 16, 0.09), transparent 30rem),
    radial-gradient(circle at 88% 78%, rgba(181, 8, 12, 0.12), transparent 30rem),
    var(--kr-bg);
}
body::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: 0.5;
  background-image: radial-gradient(circle at 1px 1px, rgba(255, 255, 255, 0.07) 1px, transparent 0);
  background-size: 28px 28px;
  -webkit-mask-image: radial-gradient(ellipse at 50% 30%, #000 20%, transparent 75%);
  mask-image: radial-gradient(ellipse at 50% 30%, #000 20%, transparent 75%);
}

/* Titulares: apretados, estilo iivvo */
h1, h2 { letter-spacing: -0.035em; }
h1 { font-weight: 700; }
h2 { font-weight: 700; }
h3 { letter-spacing: -0.015em; }

.gradient-text,
.gradient-text-wine {
  background: linear-gradient(90deg, #ffffff 0%, #ffb3b5 45%, #ef0a10 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  color: transparent !important;
}

/* Etiquetas mono */
.kr-mono {
  font-family: var(--kr-mono);
  text-transform: uppercase;
  letter-spacing: 0.14em;
  font-size: 0.68rem;
  font-weight: 700;
}
.kr-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  font-family: var(--kr-mono);
  text-transform: uppercase;
  letter-spacing: 0.16em;
  font-size: 0.7rem;
  font-weight: 700;
  color: var(--kr-red-soft);
}
.kr-eyebrow::before {
  content: "";
  width: 1.6rem;
  height: 1px;
  background: currentColor;
  opacity: 0.8;
}

/* ---------- Tarjetas ---------- */
[class*="rounded-2xl"][class*="border-white/10"],
[class*="rounded-2xl"][class*="border-white/15"],
[class*="rounded-3xl"][class*="border-white/15"],
[class*="rounded-3xl"][class*="border-white/10"],
.kr-card {
  --mx: 50%;
  --my: 0%;
  border-color: var(--kr-line) !important;
  border-radius: 1.35rem !important;
  background-color: var(--kr-surface) !important;
  background-image:
    radial-gradient(420px circle at var(--mx) var(--my), rgba(239, 10, 16, 0), transparent 45%),
    radial-gradient(circle at 1px 1px, rgba(255, 255, 255, 0.045) 1px, transparent 0) !important;
  background-size: auto, 22px 22px !important;
  transition: border-color 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease, background-image 0.3s ease;
}
@media (hover: hover) {
  [class*="rounded-2xl"][class*="border-white/10"]:hover,
  [class*="rounded-2xl"][class*="border-white/15"]:hover,
  [class*="rounded-3xl"][class*="border-white/15"]:hover,
  .kr-card:hover {
    border-color: var(--kr-line-strong) !important;
    box-shadow: 0 18px 50px -20px rgba(239, 10, 16, 0.45);
    background-image:
      radial-gradient(420px circle at var(--mx) var(--my), rgba(239, 10, 16, 0.16), transparent 45%),
      radial-gradient(circle at 1px 1px, rgba(255, 255, 255, 0.05) 1px, transparent 0) !important;
  }
}

/* Botones */
a[class*="bg-brand"][class*="rounded-full"],
button[class*="bg-brand"][class*="rounded-full"] {
  box-shadow: 0 10px 34px -10px rgba(239, 10, 16, 0.75);
  letter-spacing: 0.01em;
}
a[class*="rounded-full"][class*="border"] {
  backdrop-filter: blur(8px);
}

/* ---------- Encabezado flotante (píldora) ---------- */
.kr-header { pointer-events: none; }
.kr-header > * { pointer-events: auto; }
.kr-pill {
  width: 100%;
  max-width: 72rem;
  margin-left: auto;
  margin-right: auto;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(10, 5, 6, 0.5);
  -webkit-backdrop-filter: blur(16px) saturate(140%);
  backdrop-filter: blur(16px) saturate(140%);
  box-shadow: 0 10px 40px -18px rgba(0, 0, 0, 0.9);
  transition: max-width 0.45s cubic-bezier(0.4, 0, 0.2, 1), background 0.3s ease, border-color 0.3s ease, padding 0.3s ease;
}
.kr-pill.kr-pill-scrolled {
  background: rgba(8, 3, 4, 0.82);
  border-color: rgba(239, 10, 16, 0.32);
  box-shadow: 0 14px 44px -16px rgba(239, 10, 16, 0.35);
}
.kr-nav-link {
  position: relative;
  padding: 0.45rem 0.75rem;
  border-radius: 999px;
  font-size: 0.86rem;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.82);
  transition: color 0.2s ease, background 0.2s ease;
  white-space: nowrap;
}
.kr-nav-link:hover { color: #fff; background: rgba(239, 10, 16, 0.14); }
.kr-logo { font-weight: 800; letter-spacing: -0.03em; font-size: 1.35rem; line-height: 1; white-space: nowrap; }

/* ---------- Hero: órbitas ---------- */
.kr-orbit {
  position: relative;
  width: 100%;
  max-width: 470px;
  aspect-ratio: 1 / 1;
  margin: 0 auto;
}
.kr-orbit-glow {
  position: absolute;
  inset: 14%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(239, 10, 16, 0.42), rgba(239, 10, 16, 0.08) 55%, transparent 70%);
  filter: blur(18px);
  animation: kr-halo 5s ease-in-out infinite;
}
.kr-ring {
  position: absolute;
  border-radius: 50%;
  border: 1px solid rgba(255, 120, 120, 0.22);
}
.kr-ring-1 { inset: 0; animation: kr-spin 46s linear infinite; }
.kr-ring-2 { inset: 15%; border-style: dashed; border-color: rgba(255, 120, 120, 0.18); animation: kr-spin 32s linear infinite reverse; }
.kr-ring-3 { inset: 30%; border-color: rgba(255, 120, 120, 0.14); }
.kr-ring .kr-dot {
  position: absolute;
  top: -4px;
  left: 50%;
  width: 8px;
  height: 8px;
  margin-left: -4px;
  border-radius: 50%;
  background: var(--kr-red);
  box-shadow: 0 0 14px 3px rgba(239, 10, 16, 0.8);
}
.kr-ring-2 .kr-dot { top: auto; bottom: -4px; background: #fff; box-shadow: 0 0 12px 2px rgba(255, 255, 255, 0.6); }
.kr-orbit-core {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 42%;
  transform: translate(-50%, -50%);
  animation: kr-float 6s ease-in-out infinite;
  filter: drop-shadow(0 0 26px rgba(239, 10, 16, 0.55));
}
.kr-chip {
  position: absolute;
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.38rem 0.7rem;
  border-radius: 999px;
  border: 1px solid rgba(255, 120, 120, 0.3);
  background: rgba(10, 4, 5, 0.78);
  -webkit-backdrop-filter: blur(9px);
  backdrop-filter: blur(9px);
  font-family: var(--kr-mono);
  text-transform: uppercase;
  letter-spacing: 0.13em;
  font-size: 0.6rem;
  font-weight: 700;
  color: #ffe5e5;
  white-space: nowrap;
  animation: kr-chip-float 6s ease-in-out infinite;
  box-shadow: 0 8px 26px -12px rgba(239, 10, 16, 0.6);
}
.kr-chip::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--kr-red);
  box-shadow: 0 0 8px var(--kr-red);
}
.kr-hero-shot {
  position: absolute;
  right: -2%;
  bottom: 4%;
  width: 44%;
  border-radius: 0.9rem;
  overflow: hidden;
  border: 1px solid rgba(255, 120, 120, 0.3);
  box-shadow: 0 20px 50px -18px rgba(239, 10, 16, 0.55);
  animation: kr-chip-float 7s ease-in-out infinite;
  background: #000;
}
.kr-hero-shot img { display: block; width: 100%; height: auto; }

@keyframes kr-spin { to { transform: rotate(360deg); } }
@keyframes kr-float { 0%, 100% { transform: translate(-50%, -50%) translateY(0); } 50% { transform: translate(-50%, -50%) translateY(-12px); } }
@keyframes kr-chip-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-9px); } }
@keyframes kr-halo { 0%, 100% { opacity: 0.75; transform: scale(1); } 50% { opacity: 1; transform: scale(1.08); } }
@keyframes kr-marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@keyframes kr-rise { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: none; } }

.kr-rise { animation: kr-rise 0.8s cubic-bezier(0.2, 0.7, 0.2, 1) both; }

/* ---------- Cinta de tecnologías ---------- */
.kr-marquee {
  position: relative;
  overflow: hidden;
  border-top: 1px solid var(--kr-line);
  border-bottom: 1px solid var(--kr-line);
  background: rgba(8, 3, 4, 0.55);
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent);
  mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent);
}
.kr-marquee-track {
  display: flex;
  width: max-content;
  animation: kr-marquee 40s linear infinite;
}
.kr-marquee:hover .kr-marquee-track { animation-play-state: paused; }
.kr-marquee-item {
  display: inline-flex;
  align-items: center;
  gap: 0.7rem;
  padding: 1.15rem 1.9rem;
  font-family: var(--kr-mono);
  text-transform: uppercase;
  letter-spacing: 0.14em;
  font-size: 0.72rem;
  font-weight: 700;
  color: rgba(255, 255, 255, 0.72);
  white-space: nowrap;
}
.kr-marquee-item img { width: 26px; height: 26px; object-fit: contain; }
.kr-marquee-item::after {
  content: "";
  margin-left: 1.9rem;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--kr-red);
  box-shadow: 0 0 10px var(--kr-red);
}

/* ---------- Secciones ---------- */
section { position: relative; }
section[class*="border-t"] { border-color: var(--kr-line) !important; }
footer { border-color: var(--kr-line) !important; }

::selection { background: var(--kr-red); color: #fff; }

/* ---------- Movimiento reducido / móvil ---------- */
@media (max-width: 767px) {
  .kr-orbit { max-width: 340px; }
  .kr-chip { font-size: 0.52rem; padding: 0.3rem 0.55rem; }
  .kr-ring-2, .kr-chip { animation-duration: 8s; }
  body::after { opacity: 0.3; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
    scroll-behavior: auto !important;
  }
  .kr-marquee-track { animation: none !important; }
}

/* Hero de la home en escritorio: texto alineado a la izquierda */
@media (min-width: 1024px) {
  #inicio p.text-type { text-align: left !important; margin: 0 !important; display: block !important; }
}

/* Grises azulados de Tailwind -> negros cálidos de Krake */
.via-gray-900 { --tw-gradient-stops: var(--tw-gradient-from), #170809, var(--tw-gradient-to, transparent) !important; }
.bg-gray-900, .bg-gray-800 { background-color: #120809 !important; }

/* Enlaces a secciones (p. ej. /mentor#precios): que el encabezado flotante no tape el título */
section[id], [id="precios"], [id="preguntas"] { scroll-margin-top: 6.5rem; }

/* Menú: en anchos intermedios la hamburguesa sigue visible para que los enlaces no se salgan de la píldora */
@media (min-width: 768px) and (max-width: 1023px) {
  .kr-header .hamburger { display: flex !important; }
}

/* Hero de Mentor: el pulpo con el gráfico de crecimiento es más ancho que alto */
.kr-orbit-core.kr-orbit-core-wide { width: 68%; }

/* Cambio de pulpo en el hero de inicio (KrakeDev <-> Krake Mentor): entra con un fundido
   y después retoma el flotado normal, para que el relevo no se sienta brusco. */
@keyframes kr-orbit-swap {
  from { opacity: 0; transform: translate(-50%, -50%) scale(0.9); }
  to   { opacity: 1; transform: translate(-50%, -50%) scale(1); }
}
.kr-orbit-core.kr-swap {
  animation: kr-orbit-swap 0.7s cubic-bezier(0.2, 0.7, 0.2, 1) both, kr-float 6s ease-in-out 0.7s infinite;
}
@media (prefers-reduced-motion: reduce) {
  .kr-orbit-core.kr-swap { animation: none; }
}

/* ===================== MODO CLARO (generado) ===================== */
a[class*="bg-brand"]:not([class*="bg-brand/"]), button[class*="bg-brand"]:not([class*="bg-brand/"]) { color: #fff; }
a[class*="bg-brand"]:not([class*="bg-brand/"]) [class*="text-white/"] { color: #fff; }
a.bg-brand, button.bg-brand, span.bg-brand, div.bg-brand { background-color: #e5090f; color: #fff; }
a.bg-brand [class*="text-white/"], button.bg-brand [class*="text-white/"] { color: #fff; }
html[data-theme="dark"] .text-brand { color: #f5181e; }
html[data-theme="dark"] [class*="bg-brand/"].text-brand, html[data-theme="dark"] [class*="bg-brand/"] .text-brand { color: #ff5a5f; }
html[data-theme="dark"] { color-scheme: dark; }
html[data-theme="light"] {
  color-scheme: light;
  --kr-bg: #ffffff; --kr-surface: #f5f5f6; --kr-surface-2: #ececee;
  --kr-line: rgba(17, 17, 20, 0.14); --kr-line-strong: rgba(239, 10, 16, 0.55);
  --kr-ink: #111114; --kr-soft: #4b4b55;
}
html[data-theme="light"] body::before { background: radial-gradient(circle at 82% 8%, rgba(239,10,16,0.10), transparent 34rem), radial-gradient(circle at 12% 40%, rgba(239,10,16,0.06), transparent 30rem), radial-gradient(circle at 88% 78%, rgba(239,10,16,0.07), transparent 30rem), #ffffff; }
html[data-theme="light"] body::after { background-image: radial-gradient(circle at 1px 1px, rgba(17,17,20,0.10) 1px, transparent 0); opacity: 0.5; }
html[data-theme="light"] #root { background-color: transparent; }
html[data-theme="light"] .gradient-text, html[data-theme="light"] .gradient-text-wine { background: linear-gradient(90deg, #111114 0%, #8a0b10 45%, #ef0a10 100%) !important; -webkit-background-clip: text !important; background-clip: text !important; -webkit-text-fill-color: transparent !important; color: transparent !important; }
html[data-theme="light"] [class*="rounded-2xl"][class*="border-white/10"],
html[data-theme="light"] [class*="rounded-2xl"][class*="border-white/15"],
html[data-theme="light"] [class*="rounded-3xl"][class*="border-white/15"],
html[data-theme="light"] [class*="rounded-3xl"][class*="border-white/10"],
html[data-theme="light"] .kr-card { background-image: radial-gradient(420px circle at var(--mx) var(--my), rgba(239,10,16,0), transparent 45%), radial-gradient(circle at 1px 1px, rgba(17,17,20,0.05) 1px, transparent 0) !important; box-shadow: 0 1px 2px rgba(17,17,20,0.05); }
@media (hover: hover) {
  html[data-theme="light"] [class*="rounded-2xl"][class*="border-white/10"]:hover,
  html[data-theme="light"] [class*="rounded-2xl"][class*="border-white/15"]:hover,
  html[data-theme="light"] [class*="rounded-3xl"][class*="border-white/15"]:hover,
  html[data-theme="light"] [class*="rounded-3xl"][class*="border-white/10"]:hover,
  html[data-theme="light"] .kr-card:hover { background-image: radial-gradient(420px circle at var(--mx) var(--my), rgba(239,10,16,0.10), transparent 45%), radial-gradient(circle at 1px 1px, rgba(17,17,20,0.05) 1px, transparent 0) !important; box-shadow: 0 18px 40px -22px rgba(239,10,16,0.45); }
}
html[data-theme="light"] .text-white { color: rgb(17, 17, 20); }
html[data-theme="light"] .text-white\/40 { color: rgba(17, 17, 20, 0.62); }
html[data-theme="light"] .text-white\/50 { color: rgba(17, 17, 20, 0.64); }
html[data-theme="light"] .text-white\/60 { color: rgba(17, 17, 20, 0.68); }
html[data-theme="light"] .text-white\/70 { color: rgba(17, 17, 20, 0.76); }
html[data-theme="light"] .text-white\/75 { color: rgba(17, 17, 20, 0.8); }
html[data-theme="light"] .text-white\/80 { color: rgba(17, 17, 20, 0.85); }
html[data-theme="light"] .text-white\/85 { color: rgba(17, 17, 20, 0.88); }
html[data-theme="light"] .text-white\/90 { color: rgba(17, 17, 20, 0.92); }
html[data-theme="light"] .text-white\/95 { color: rgba(17, 17, 20, 0.96); }
html[data-theme="light"] .hover\:text-white:hover { color: rgb(17, 17, 20); }
html[data-theme="light"] .selection\:text-white::selection { color: #fff; }
html[data-theme="light"] .bg-white\/5 { background-color: rgba(17, 17, 20, 0.04); }
html[data-theme="light"] .bg-white\/\[0\.02\] { background-color: rgba(17, 17, 20, 0.025); }
html[data-theme="light"] .bg-white\/\[0\.04\] { background-color: rgba(17, 17, 20, 0.045); }
html[data-theme="light"] .bg-white\/10 { background-color: rgba(17, 17, 20, 0.07); }
html[data-theme="light"] .hover\:bg-white\/10:hover { background-color: rgba(17, 17, 20, 0.08); }
html[data-theme="light"] .border-white\/10 { border-color: rgba(17, 17, 20, 0.12); }
html[data-theme="light"] .border-white\/15 { border-color: rgba(17, 17, 20, 0.16); }
html[data-theme="light"] .border-white\/20 { border-color: rgba(17, 17, 20, 0.2); }
html[data-theme="light"] .border-white\/30 { border-color: rgba(17, 17, 20, 0.3); }
html[data-theme="light"] .hover\:border-white:hover { border-color: rgba(17, 17, 20, 0.5); }
html[data-theme="light"] .ring-white, html[data-theme="light"] .focus\:ring-white:focus { --tw-ring-color: rgb(17, 17, 20); }
html[data-theme="light"] .bg-black { background-color: #ffffff; }
html[data-theme="light"] .hover\:bg-black:hover { background-color: #f0f0f2; }
html[data-theme="light"] .from-black { --tw-gradient-from: #ffffff var(--tw-gradient-from-position); --tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position); }
html[data-theme="light"] .to-black { --tw-gradient-to: #ffffff var(--tw-gradient-to-position); }
html[data-theme="light"] .via-black { --tw-gradient-stops: var(--tw-gradient-from), #ffffff var(--tw-gradient-via-position), var(--tw-gradient-to); }
html[data-theme="light"] .via-gray-900 { --tw-gradient-stops: var(--tw-gradient-from), #f3f3f5 var(--tw-gradient-via-position), var(--tw-gradient-to) !important; }
html[data-theme="light"] .bg-gray-900, html[data-theme="light"] .bg-gray-800 { background-color: #f3f3f5 !important; }
html[data-theme="light"] .bg-neutral-950\/70 { background-color: rgba(245, 245, 246, 0.9); }
html[data-theme="light"] .bg-neutral-950\/90 { background-color: rgba(245, 245, 246, 0.96); }
html[data-theme="light"] .bg-neutral-900\/80 { background-color: rgba(245, 245, 246, 0.95); }
html[data-theme="light"] .bg-neutral-900\/90 { background-color: rgba(245, 245, 246, 0.96); }
html[data-theme="light"] .bg-neutral-900\/95 { background-color: rgba(245, 245, 246, 0.97); }
html[data-theme="light"] .from-neutral-900 { --tw-gradient-from: #f4f4f5 var(--tw-gradient-from-position); --tw-gradient-to: rgb(244 244 245 / 0) var(--tw-gradient-to-position); }
html[data-theme="light"] .text-red-300 { color: #b3060b; }
html[data-theme="light"] .text-red-400 { color: #c8070c; }
html[data-theme="light"] .text-red-500 { color: #d3080e; }
html[data-theme="light"] .text-green-400, html[data-theme="light"] .text-emerald-400, html[data-theme="light"] .text-emerald-300 { color: #0e7a4f; }
html[data-theme="light"] .hover\:bg-brand:hover, html[data-theme="light"] .hover\:bg-brand:hover * { color: #fff; }
html[data-theme="light"] .group-hover\:text-brand {  }
html[data-theme="light"] .from-red-500\/15 { --tw-gradient-from: rgb(239 10 16 / 0.09) var(--tw-gradient-from-position); --tw-gradient-to: rgb(239 10 16 / 0) var(--tw-gradient-to-position); }
html[data-theme="light"] .to-red-950\/25 { --tw-gradient-to: rgb(239 10 16 / 0.03) var(--tw-gradient-to-position); }
html[data-theme="light"] .via-black\/80 { --tw-gradient-stops: var(--tw-gradient-from), rgb(255 255 255 / 0.55) var(--tw-gradient-via-position), var(--tw-gradient-to); }
html[data-theme="light"] .from-emerald-950\/25 { --tw-gradient-from: rgb(16 185 129 / 0.10) var(--tw-gradient-from-position); --tw-gradient-to: rgb(16 185 129 / 0) var(--tw-gradient-to-position); }
html[data-theme="light"] .from-mentorDark\/30 { --tw-gradient-from: rgb(239 10 16 / 0.10) var(--tw-gradient-from-position); --tw-gradient-to: rgb(239 10 16 / 0) var(--tw-gradient-to-position); }
html[data-theme="light"] section[class*="from-mentorDark/60"] { background-image: linear-gradient(90deg, #8a0b10 0%, #d3080e 55%, #ef0a10 100%) !important; }
html[data-theme="light"] section[class*="from-mentorDark/60"] [class*="border-white/"] { border-color: rgba(255, 255, 255, 0.55); }
html[data-theme="light"] section[class*="from-mentorDark/60"] .text-brand { color: #fff; }
html[data-theme="light"] .text-brand, html[data-theme="light"] strong.text-brand { color: #d6080e; }
html[data-theme="light"] [class*="bg-brand/"].text-brand, html[data-theme="light"] [class*="bg-brand/"] .text-brand { color: #a30509; }
html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand:not([class*="bg-brand/"]), [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, [class*="bg-[#7a1532]"], .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast), html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand:not([class*="bg-brand/"]), [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, [class*="bg-[#7a1532]"], .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast) * { color: #fff; }
html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand:not([class*="bg-brand/"]), [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, [class*="bg-[#7a1532]"], .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast).text-white, html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand:not([class*="bg-brand/"]), [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, [class*="bg-[#7a1532]"], .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast) .text-white { color: #fff; }
html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand:not([class*="bg-brand/"]), [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, [class*="bg-[#7a1532]"], .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast).text-white\/40, html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand:not([class*="bg-brand/"]), [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, [class*="bg-[#7a1532]"], .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast) .text-white\/40 { color: rgba(255, 255, 255, 0.4); }
html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand:not([class*="bg-brand/"]), [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, [class*="bg-[#7a1532]"], .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast).text-white\/50, html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand:not([class*="bg-brand/"]), [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, [class*="bg-[#7a1532]"], .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast) .text-white\/50 { color: rgba(255, 255, 255, 0.5); }
html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand:not([class*="bg-brand/"]), [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, [class*="bg-[#7a1532]"], .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast).text-white\/60, html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand:not([class*="bg-brand/"]), [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, [class*="bg-[#7a1532]"], .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast) .text-white\/60 { color: rgba(255, 255, 255, 0.6); }
html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand:not([class*="bg-brand/"]), [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, [class*="bg-[#7a1532]"], .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast).text-white\/70, html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand:not([class*="bg-brand/"]), [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, [class*="bg-[#7a1532]"], .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast) .text-white\/70 { color: rgba(255, 255, 255, 0.7); }
html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand:not([class*="bg-brand/"]), [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, [class*="bg-[#7a1532]"], .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast).text-white\/75, html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand:not([class*="bg-brand/"]), [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, [class*="bg-[#7a1532]"], .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast) .text-white\/75 { color: rgba(255, 255, 255, 0.75); }
html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand:not([class*="bg-brand/"]), [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, [class*="bg-[#7a1532]"], .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast).text-white\/80, html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand:not([class*="bg-brand/"]), [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, [class*="bg-[#7a1532]"], .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast) .text-white\/80 { color: rgba(255, 255, 255, 0.8); }
html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand:not([class*="bg-brand/"]), [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, [class*="bg-[#7a1532]"], .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast).text-white\/85, html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand:not([class*="bg-brand/"]), [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, [class*="bg-[#7a1532]"], .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast) .text-white\/85 { color: rgba(255, 255, 255, 0.85); }
html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand:not([class*="bg-brand/"]), [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, [class*="bg-[#7a1532]"], .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast).text-white\/90, html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand:not([class*="bg-brand/"]), [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, [class*="bg-[#7a1532]"], .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast) .text-white\/90 { color: rgba(255, 255, 255, 0.9); }
html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand:not([class*="bg-brand/"]), [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, [class*="bg-[#7a1532]"], .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast).text-white\/95, html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand:not([class*="bg-brand/"]), [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, [class*="bg-[#7a1532]"], .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast) .text-white\/95 { color: rgba(255, 255, 255, 0.95); }
html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand:not([class*="bg-brand/"]), [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, [class*="bg-[#7a1532]"], .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast) .text-brand { color: #ff7276; }
html[data-theme="light"] .kr-pill { background: rgba(255,255,255,0.74); border-color: rgba(17,17,20,0.12); box-shadow: 0 10px 30px -18px rgba(17,17,20,0.35); }
html[data-theme="light"] .kr-pill.kr-pill-scrolled { background: rgba(255,255,255,0.93); border-color: rgba(239,10,16,0.35); box-shadow: 0 14px 40px -18px rgba(239,10,16,0.35); }
html[data-theme="light"] .kr-nav-link { color: rgba(17,17,20,0.84); }
html[data-theme="light"] .kr-nav-link:hover { color: #111114; background: rgba(239,10,16,0.08); }
html[data-theme="light"] .kr-ring { border-color: rgba(17,17,20,0.18); }
html[data-theme="light"] .kr-ring-2 { border-color: rgba(17,17,20,0.14); }
html[data-theme="light"] .kr-ring-3 { border-color: rgba(17,17,20,0.10); }
html[data-theme="light"] .kr-ring-2 .kr-dot { background: #111114; box-shadow: 0 0 10px rgba(17,17,20,0.35); }
html[data-theme="light"] .kr-orbit-glow { background: radial-gradient(circle, rgba(239,10,16,0.20), rgba(239,10,16,0.05) 55%, transparent 70%); }
html[data-theme="light"] .kr-orbit-core { filter: drop-shadow(0 10px 26px rgba(239,10,16,0.28)); }
html[data-theme="light"] .kr-chip { background: rgba(255,255,255,0.92); border-color: rgba(239,10,16,0.38); color: #111114; box-shadow: 0 8px 22px -12px rgba(239,10,16,0.5); }
html[data-theme="light"] .kr-marquee { background: rgba(245,245,246,0.88); }
html[data-theme="light"] .kr-marquee-item { color: rgba(17,17,20,0.8); }
html[data-theme="light"] .kr-eyebrow { color: #c8070c; }
html[data-theme="light"] .mobile-menu { background: rgba(255,255,255,0.97); }
html[data-theme="light"] .mobile-menu a { color: rgba(17,17,20,0.92); }
html[data-theme="light"] .mobile-menu a:hover { color: #ef0a10; }
html[data-theme="light"] .mobile-menu a[class*="bg-brand"] { color: #fff; }
html[data-theme="light"] .menu-close, html[data-theme="light"] .mobile-menu .menu-close { color: #111114; }
html[data-theme="light"] .hamburger span { background: #111114; }
html[data-theme="light"] .particle { background: rgba(239,10,16,0.45) !important; }
html[data-theme="light"] .star { background: rgba(17,17,20,0.35) !important; }
html[data-theme="light"] .matrix::before { opacity: 0.07; }
html[data-theme="light"] .hero-text-glow { text-shadow: none; }
html[data-theme="light"] .fusion-overlay { background: radial-gradient(circle at center, #ffffff 0%, #f4f4f5 55%, #e7e7ea 100%) !important; }
html[data-theme="light"] .scroll-indicator { background: linear-gradient(90deg, #ef0a10, #8a0b10); }
.kr-img-light { display: none; }
html[data-theme="light"] .kr-img-dark { display: none; }
html[data-theme="light"] .kr-img-light { display: block; }
.kr-theme-toggle {
  display: inline-flex; align-items: center; justify-content: center;
  width: 2.5rem; height: 2.5rem; flex: 0 0 auto; border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.2); background: rgba(255,255,255,0.05); color: #fff;
  font-size: 1rem; line-height: 1; cursor: pointer;
  transition: border-color .2s ease, color .2s ease, background .2s ease, transform .2s ease;
}
.kr-theme-toggle:hover { border-color: var(--kr-red); color: var(--kr-red-soft); background: rgba(239,10,16,0.10); }
.kr-theme-toggle:active { transform: scale(0.94); }
.kr-theme-toggle:focus-visible { outline: 2px solid var(--kr-red); outline-offset: 2px; }
.kr-theme-toggle .kr-ico-moon { display: none; }
@media (pointer: coarse) { .kr-theme-toggle { width: 2.75rem; height: 2.75rem; } }
html[data-theme="light"] .kr-theme-toggle { border-color: rgba(17,17,20,0.22); background: rgba(17,17,20,0.03); color: #111114; }
html[data-theme="light"] .kr-theme-toggle:hover { border-color: #ef0a10; color: #c8070c; background: rgba(239,10,16,0.08); }
html[data-theme="light"] .kr-theme-toggle .kr-ico-sun { display: none; }
html[data-theme="light"] .kr-theme-toggle .kr-ico-moon { display: inline; }
@media (prefers-reduced-motion: no-preference) {
  html.kr-theme-anim, html.kr-theme-anim body, html.kr-theme-anim section, html.kr-theme-anim header, html.kr-theme-anim footer { transition: background-color .25s ease, color .25s ease, border-color .25s ease; }
}

/* ===================== MODO CLARO Y ANIMACIONES (generado) ===================== */
a.bg-brand, button.bg-brand, span.bg-brand, div.bg-brand { background-color: #ed0a10; color: #fff; }
a.bg-brand [class*="text-white/"], button.bg-brand [class*="text-white/"] { color: #fff; }
html[data-theme="dark"] .text-brand { color: #f5181e; }
html[data-theme="dark"] [class*="bg-brand/"].text-brand, html[data-theme="dark"] [class*="bg-brand/"] .text-brand { color: #ff5a5f; }
html[data-theme="dark"] { color-scheme: dark; }
html[data-theme="light"] {
  color-scheme: light;
  --kr-bg: #ffffff; --kr-surface: #ffffff; --kr-surface-2: #f4f4f5;
  --kr-line: rgba(17, 17, 20, 0.12); --kr-line-strong: rgba(17, 17, 20, 0.30);
  --kr-ink: #111114; --kr-soft: #4b4b55;
  --kr-red: #ed0a10; --kr-red-soft: #ed0a10;
}
html[data-theme="light"] body::before { background: #ffffff; }
html[data-theme="light"] body::after { background-image: radial-gradient(circle at 1px 1px, rgba(17, 17, 20, 0.07) 1px, transparent 0); opacity: 0.6; }
html[data-theme="light"] #root { background-color: transparent; }
html[data-theme="light"] .gradient-text, html[data-theme="light"] .gradient-text-wine { background: none !important; -webkit-text-fill-color: #111114 !important; color: #111114 !important; }
html[data-theme="light"] [class*="drop-shadow"] { filter: none !important; }
html[data-theme="light"] canvas { filter: grayscale(1); opacity: 0.22; }
html[data-theme="light"] .matrix::before { opacity: 0; }
html[data-theme="light"] .blur-3xl, html[data-theme="light"] .blur-2xl { display: none; }
html[data-theme="light"] .particle { background: rgba(17, 17, 20, 0.28) !important; }
html[data-theme="light"] .star { background: rgba(17, 17, 20, 0.30) !important; }
html[data-theme="light"] .hero-text-glow { text-shadow: none; }
html[data-theme="light"] [class*="rounded-2xl"][class*="border-white/10"],
html[data-theme="light"] [class*="rounded-2xl"][class*="border-white/15"],
html[data-theme="light"] [class*="rounded-3xl"][class*="border-white/15"],
html[data-theme="light"] [class*="rounded-3xl"][class*="border-white/10"],
html[data-theme="light"] .kr-card { background-image: none !important; background-color: #ffffff !important; box-shadow: 0 1px 2px rgba(17, 17, 20, 0.06), 0 8px 24px -16px rgba(17, 17, 20, 0.18); }
@media (hover: hover) {
  html[data-theme="light"] [class*="rounded-2xl"][class*="border-white/10"]:hover,
  html[data-theme="light"] [class*="rounded-2xl"][class*="border-white/15"]:hover,
  html[data-theme="light"] [class*="rounded-3xl"][class*="border-white/15"]:hover,
  html[data-theme="light"] [class*="rounded-3xl"][class*="border-white/10"]:hover,
  html[data-theme="light"] .kr-card:hover { background-image: radial-gradient(420px circle at var(--mx) var(--my), rgba(17, 17, 20, 0.045), transparent 45%) !important; box-shadow: 0 1px 2px rgba(17, 17, 20, 0.08), 0 16px 34px -20px rgba(17, 17, 20, 0.30); }
}
html[data-theme="light"] .card-glow, html[data-theme="light"] .card-glow-wine, html[data-theme="light"] .shadow-brand, html[data-theme="light"] .shadow-mentor, html[data-theme="light"] .pulse-glow { box-shadow: 0 1px 2px rgba(17, 17, 20, 0.06), 0 8px 24px -16px rgba(17, 17, 20, 0.18) !important; }
html[data-theme="light"] .pulse-glow:not(.kr-reveal):not(.kr-reveal-left):not(.kr-reveal-right), html[data-theme="light"] .wa-pulse:not(.kr-reveal) { animation: none !important; }
html[data-theme="light"] .shadow-brand, html[data-theme="light"] .shadow-mentor { --tw-shadow: 0 1px 2px rgba(17, 17, 20, 0.12); --tw-shadow-colored: 0 1px 2px rgba(17, 17, 20, 0.12); }
html[data-theme="light"] a.bg-brand, html[data-theme="light"] button.bg-brand { box-shadow: 0 1px 2px rgba(17, 17, 20, 0.18); }
html[data-theme="light"] a[class*="bg-brand"][class*="rounded-full"], html[data-theme="light"] button[class*="bg-brand"][class*="rounded-full"] { box-shadow: 0 1px 2px rgba(17, 17, 20, 0.18); }
@media (hover: hover) { html[data-theme="light"] a.bg-brand:hover, html[data-theme="light"] button.bg-brand:hover { box-shadow: 0 8px 18px -8px rgba(17, 17, 20, 0.38); } }
html[data-theme="light"] .text-white { color: rgb(17, 17, 20); }
html[data-theme="light"] .text-white\/40 { color: rgba(17, 17, 20, 0.62); }
html[data-theme="light"] .text-white\/50 { color: rgba(17, 17, 20, 0.64); }
html[data-theme="light"] .text-white\/60 { color: rgba(17, 17, 20, 0.68); }
html[data-theme="light"] .text-white\/70 { color: rgba(17, 17, 20, 0.76); }
html[data-theme="light"] .text-white\/75 { color: rgba(17, 17, 20, 0.8); }
html[data-theme="light"] .text-white\/80 { color: rgba(17, 17, 20, 0.85); }
html[data-theme="light"] .text-white\/85 { color: rgba(17, 17, 20, 0.88); }
html[data-theme="light"] .text-white\/90 { color: rgba(17, 17, 20, 0.92); }
html[data-theme="light"] .text-white\/95 { color: rgba(17, 17, 20, 0.96); }
html[data-theme="light"] .hover\:text-white:hover { color: rgb(17, 17, 20); }
html[data-theme="light"] .selection\:text-white::selection { color: #fff; }
html[data-theme="light"] .bg-white\/5 { background-color: #ffffff; }
html[data-theme="light"] .bg-white\/\[0\.02\] { background-color: #ffffff; }
html[data-theme="light"] .bg-white\/\[0\.04\] { background-color: #ffffff; }
html[data-theme="light"] .bg-white\/10 { background-color: rgba(17, 17, 20, 0.05); }
html[data-theme="light"] .hover\:bg-white\/10:hover { background-color: rgba(17, 17, 20, 0.07); }
html[data-theme="light"] .border-white\/10 { border-color: rgba(17, 17, 20, 0.12); }
html[data-theme="light"] .border-white\/15 { border-color: rgba(17, 17, 20, 0.15); }
html[data-theme="light"] .border-white\/20 { border-color: rgba(17, 17, 20, 0.18); }
html[data-theme="light"] .border-white\/30 { border-color: rgba(17, 17, 20, 0.28); }
html[data-theme="light"] .hover\:border-white:hover { border-color: rgba(17, 17, 20, 0.5); }
html[data-theme="light"] .ring-white, html[data-theme="light"] .focus\:ring-white:focus { --tw-ring-color: rgb(17, 17, 20); }
html[data-theme="light"] .bg-black, html[data-theme="light"] .bg-gray-900, html[data-theme="light"] .bg-gray-800 { background-color: #ffffff !important; }
html[data-theme="light"] .hover\:bg-black:hover { background-color: #f4f4f5; }
html[data-theme="light"] .from-black { --tw-gradient-from: #ffffff var(--tw-gradient-from-position); --tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position); }
html[data-theme="light"] .to-black { --tw-gradient-to: #ffffff var(--tw-gradient-to-position); }
html[data-theme="light"] .via-black, html[data-theme="light"] .via-gray-900 { --tw-gradient-stops: var(--tw-gradient-from), #ffffff var(--tw-gradient-via-position), var(--tw-gradient-to) !important; }
html[data-theme="light"] .bg-neutral-950\/70 { background-color: #ffffff; }
html[data-theme="light"] .bg-neutral-950\/80 { background-color: #ffffff; }
html[data-theme="light"] .bg-neutral-950\/90 { background-color: #ffffff; }
html[data-theme="light"] .bg-neutral-900\/80 { background-color: #ffffff; }
html[data-theme="light"] .bg-neutral-900\/90 { background-color: #ffffff; }
html[data-theme="light"] .bg-neutral-900\/95 { background-color: #ffffff; }
html[data-theme="light"] .bg-neutral-950 { background-color: #ffffff; }
html[data-theme="light"] .from-neutral-900 { --tw-gradient-from: #ffffff var(--tw-gradient-from-position); --tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position); }
html[data-theme="light"] .from-brand\/10 { --tw-gradient-from: #ffffff var(--tw-gradient-from-position); --tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position); }
html[data-theme="light"] .from-red-500\/15 { --tw-gradient-from: #ffffff var(--tw-gradient-from-position); --tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position); }
html[data-theme="light"] .from-mentorDark\/30 { --tw-gradient-from: #ffffff var(--tw-gradient-from-position); --tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position); }
html[data-theme="light"] .from-emerald-950\/25 { --tw-gradient-from: #ffffff var(--tw-gradient-from-position); --tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position); }
html[data-theme="light"] .to-mentor\/20 { --tw-gradient-to: #ffffff var(--tw-gradient-to-position); }
html[data-theme="light"] .to-red-950\/25 { --tw-gradient-to: #ffffff var(--tw-gradient-to-position); }
html[data-theme="light"] .to-brandDark\/40 { --tw-gradient-to: #ffffff var(--tw-gradient-to-position); }
html[data-theme="light"] .via-brand\/5 { --tw-gradient-stops: var(--tw-gradient-from), #ffffff var(--tw-gradient-via-position), var(--tw-gradient-to); }
html[data-theme="light"] .via-black\/80 { --tw-gradient-stops: var(--tw-gradient-from), #ffffff var(--tw-gradient-via-position), var(--tw-gradient-to); }
html[data-theme="light"] .via-black\/20 { --tw-gradient-stops: var(--tw-gradient-from), #ffffff var(--tw-gradient-via-position), var(--tw-gradient-to); }
html[data-theme="light"] [class*="bg-brand/"] { background-color: #ffffff !important; }
html[data-theme="light"] .border-brand\/20, html[data-theme="light"] .border-brand\/30, html[data-theme="light"] .border-brand\/40 { border-color: rgba(17, 17, 20, 0.16); }
html[data-theme="light"] .border-brand\/50 { border-color: #ed0a10; }
html[data-theme="light"] .hover\:border-brand\/40:hover, html[data-theme="light"] .hover\:border-brand\/50:hover { border-color: rgba(17, 17, 20, 0.35); }
html[data-theme="light"] .border-red-500\/30 { border-color: rgba(17, 17, 20, 0.14); }
html[data-theme="light"] [class*="w-10"][class*="rounded-xl"][class*="bg-black/40"] { background-color: #ffffff !important; border-color: rgba(17, 17, 20, 0.14) !important; color: #ed0a10 !important; }
html[data-theme="light"] [class*="w-10"][class*="rounded-xl"][class*="bg-black/40"] * { color: #ed0a10 !important; }
html[data-theme="light"] .text-brand, html[data-theme="light"] strong.text-brand, html[data-theme="light"] .text-red-300, html[data-theme="light"] .text-red-400, html[data-theme="light"] .text-red-500 { color: #d6080e; }
html[data-theme="light"] .text-green-400, html[data-theme="light"] .text-emerald-400, html[data-theme="light"] .text-emerald-300 { color: #0e7a4f; }
html[data-theme="light"] .hover\:bg-brand:hover, html[data-theme="light"] .hover\:bg-brand:hover * { color: #fff; }
html[data-theme="light"] .hover\:bg-brand:hover { background-color: #ed0a10; }
html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand, [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast), html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand, [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast) * { color: #fff; }
html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand, [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast).text-white, html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand, [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast) .text-white { color: #fff; }
html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand, [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast).text-white\/40, html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand, [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast) .text-white\/40 { color: rgba(255, 255, 255, 0.4); }
html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand, [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast).text-white\/50, html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand, [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast) .text-white\/50 { color: rgba(255, 255, 255, 0.5); }
html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand, [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast).text-white\/60, html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand, [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast) .text-white\/60 { color: rgba(255, 255, 255, 0.6); }
html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand, [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast).text-white\/70, html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand, [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast) .text-white\/70 { color: rgba(255, 255, 255, 0.7); }
html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand, [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast).text-white\/75, html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand, [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast) .text-white\/75 { color: rgba(255, 255, 255, 0.75); }
html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand, [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast).text-white\/80, html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand, [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast) .text-white\/80 { color: rgba(255, 255, 255, 0.8); }
html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand, [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast).text-white\/85, html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand, [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast) .text-white\/85 { color: rgba(255, 255, 255, 0.85); }
html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand, [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast).text-white\/90, html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand, [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast) .text-white\/90 { color: rgba(255, 255, 255, 0.9); }
html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand, [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast).text-white\/95, html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand, [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast) .text-white\/95 { color: rgba(255, 255, 255, 0.95); }
html[data-theme="light"] :is([class*="bg-black/"], [class*="from-black/"], .bg-brand, [class*="from-brand"]:not([class*="from-brand/"]), [class*="from-mentor"]:not([class*="from-mentorDark/"]), .bg-mentor, .bg-green-500, [class*="from-emerald"]:not([class*="from-emerald-950/"]), section[class*="from-mentorDark/60"], .btn-inscribe-animated, .kr-keep-white, .kr-toast) .text-brand { color: #ff7276; }
html[data-theme="light"] section[class*="from-mentorDark/60"] h1, html[data-theme="light"] section[class*="from-mentorDark/60"] h2, html[data-theme="light"] section[class*="from-mentorDark/60"] p, html[data-theme="light"] section[class*="from-mentorDark/60"] a:not(.bg-brand) { color: #fff !important; }
html[data-theme="light"] section[class*="from-mentorDark/60"] a:not(.bg-brand) { background-color: transparent !important; }
html[data-theme="light"] section[class*="from-mentorDark/60"] { background-image: none !important; background-color: #ed0a10 !important; }
html[data-theme="light"] section[class*="from-mentorDark/60"] [class*="border-white/"] { border-color: rgba(255, 255, 255, 0.6); }
html[data-theme="light"] section[class*="from-mentorDark/60"] .text-brand { color: #fff; }
html[data-theme="light"] section[class*="from-mentorDark/60"] a.bg-brand { background-color: #ffffff; color: #ed0a10 !important; box-shadow: none; }
html[data-theme="light"] section[class*="from-mentorDark/60"] a.bg-brand, html[data-theme="light"] section[class*="from-mentorDark/60"] a.bg-brand * { color: #ed0a10; }
html[data-theme="light"] section[class*="from-mentorDark/60"] a.bg-brand:hover { background-color: #f4f4f5; }
.kr-lightbox { background: rgba(0, 0, 0, 0.9); }
.kr-lightbox-panel { background: #0a0a0a; border: 1px solid rgba(255, 255, 255, 0.2); }
html[data-theme="light"] .kr-lightbox { background: rgba(17, 17, 20, 0.52); }
html[data-theme="light"] .kr-lightbox-panel { background: #ffffff; border: 1px solid rgba(17, 17, 20, 0.14); box-shadow: 0 30px 80px -30px rgba(17, 17, 20, 0.5); }
html[data-theme="light"] .kr-lightbox-panel [class*="bg-black"] { background-color: #f4f4f5 !important; }
@media (prefers-reduced-motion: no-preference) {
  .kr-lightbox { animation: kr-fade 0.25s ease both; }
  .kr-lightbox-panel { animation: kr-pop 0.35s cubic-bezier(0.2, 0.8, 0.2, 1) both; }
}
html[data-theme="light"] .kr-pill { background: rgba(255,255,255,0.82); border-color: rgba(17, 17, 20,0.12); box-shadow: 0 6px 22px -16px rgba(17, 17, 20,0.30); }
html[data-theme="light"] .kr-pill.kr-pill-scrolled { background: rgba(255,255,255,0.94); border-color: rgba(17, 17, 20,0.16); box-shadow: 0 10px 30px -18px rgba(17, 17, 20,0.38); }
html[data-theme="light"] .kr-nav-link { color: rgba(17, 17, 20,0.84); }
html[data-theme="light"] .kr-nav-link:hover { color: #111114; background: rgba(17, 17, 20,0.05); }
html[data-theme="light"] .kr-ring { border-color: rgba(17, 17, 20,0.16); }
html[data-theme="light"] .kr-ring-2 { border-color: rgba(17, 17, 20,0.13); }
html[data-theme="light"] .kr-ring-3 { border-color: rgba(17, 17, 20,0.09); }
html[data-theme="light"] .kr-ring-2 .kr-dot { background: #111114; box-shadow: none; }
html[data-theme="light"] .kr-ring .kr-dot { box-shadow: none; }
html[data-theme="light"] .kr-orbit-glow { background: radial-gradient(circle, rgba(17, 17, 20,0.06), rgba(17, 17, 20,0.02) 55%, transparent 70%); filter: none; }
html[data-theme="light"] .kr-orbit-core { filter: drop-shadow(0 10px 18px rgba(17, 17, 20,0.22)); }
html[data-theme="light"] .kr-chip { background: #ffffff; border-color: rgba(17, 17, 20,0.18); color: #111114; box-shadow: 0 6px 18px -12px rgba(17, 17, 20,0.35); }
html[data-theme="light"] .kr-chip::before { box-shadow: none; }
html[data-theme="light"] .kr-marquee { background: #ffffff; }
html[data-theme="light"] .kr-marquee-item { color: rgba(17, 17, 20,0.8); }
html[data-theme="light"] .kr-marquee-item::after { box-shadow: none; }
html[data-theme="light"] .kr-eyebrow { color: #d6080e; }
html[data-theme="light"] .mobile-menu { background: rgba(255,255,255,0.98); }
html[data-theme="light"] .mobile-menu a { color: rgba(17, 17, 20,0.92); }
html[data-theme="light"] .mobile-menu a:hover { color: #ed0a10; }
html[data-theme="light"] .mobile-menu a[class*="bg-brand"] { color: #fff; }
html[data-theme="light"] .menu-close, html[data-theme="light"] .mobile-menu .menu-close { color: #111114; }
html[data-theme="light"] .hamburger span { background: #111114; }
html[data-theme="light"] .fusion-overlay { background: #ffffff !important; }
html[data-theme="light"] .glow-bg, html[data-theme="light"] .flash { display: none; }
html[data-theme="light"] .energy-ring { border-color: rgba(17, 17, 20, 0.18) !important; box-shadow: none !important; }
html[data-theme="light"] .scroll-indicator { background: #ed0a10; }
.kr-img-light { display: none; }
html[data-theme="light"] .kr-img-dark { display: none; }
html[data-theme="light"] .kr-img-light { display: block; }
.kr-theme-toggle {
  display: inline-flex; align-items: center; justify-content: center;
  width: 2.5rem; height: 2.5rem; flex: 0 0 auto; border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.2); background: rgba(255,255,255,0.05); color: #fff;
  font-size: 1rem; line-height: 1; cursor: pointer;
  transition: border-color .2s ease, color .2s ease, background .2s ease, transform .2s ease;
}
.kr-theme-toggle:hover { border-color: var(--kr-red); color: var(--kr-red-soft); background: rgba(239,10,16,0.10); }
.kr-theme-toggle:active { transform: scale(0.94); }
.kr-theme-toggle:focus-visible { outline: 2px solid var(--kr-red); outline-offset: 2px; }
.kr-theme-toggle .kr-ico-moon { display: none; }
@media (pointer: coarse) { .kr-theme-toggle { width: 2.75rem; height: 2.75rem; } }
html[data-theme="light"] .kr-theme-toggle { border-color: rgba(17, 17, 20,0.22); background: #ffffff; color: #111114; }
html[data-theme="light"] .kr-theme-toggle:hover { border-color: #ed0a10; color: #ed0a10; background: #ffffff; }
html[data-theme="light"] .kr-theme-toggle .kr-ico-sun { display: none; }
html[data-theme="light"] .kr-theme-toggle .kr-ico-moon { display: inline; }
@media (prefers-reduced-motion: no-preference) {
  html.kr-theme-anim, html.kr-theme-anim body, html.kr-theme-anim section, html.kr-theme-anim header, html.kr-theme-anim footer { transition: background-color .25s ease, color .25s ease, border-color .25s ease; }
}
@keyframes kr-fade { from { opacity: 0; } to { opacity: 1; } }
@keyframes kr-pop { from { opacity: 0; transform: translateY(14px) scale(0.96); } to { opacity: 1; transform: none; } }
@keyframes kr-sheen { from { transform: translateX(-130%) skewX(-18deg); } to { transform: translateX(230%) skewX(-18deg); } }
@keyframes kr-pulse-ring { 0% { box-shadow: 0 0 0 0 rgba(239,10,16,0.45); } 70% { box-shadow: 0 0 0 14px rgba(239,10,16,0); } 100% { box-shadow: 0 0 0 0 rgba(239,10,16,0); } }
@media (prefers-reduced-motion: no-preference) {
  /* Entrada de página */
  body { animation: kr-fade 0.6s ease both; }
  section h1 { animation: kr-rise 0.9s cubic-bezier(0.2, 0.7, 0.2, 1) 0.05s both; }

  /* Botones rojos: destello al pasar el cursor */
  a.bg-brand:not(.btn-inscribe-animated), button.bg-brand { position: relative; overflow: hidden; isolation: isolate; }
  a.bg-brand:not(.btn-inscribe-animated)::after, button.bg-brand::after {
    content: ""; position: absolute; top: 0; bottom: 0; left: 0; width: 45%; z-index: -1; pointer-events: none;
    background: linear-gradient(100deg, transparent, rgba(255,255,255,0.38), transparent);
    transform: translateX(-130%) skewX(-18deg);
  }
  a.bg-brand:not(.btn-inscribe-animated):hover::after, button.bg-brand:hover::after { animation: kr-sheen 0.75s ease; }
  a.bg-brand:not(.btn-inscribe-animated), button.bg-brand { transition: transform .2s ease, box-shadow .25s ease, background-color .2s ease; }
  a.bg-brand:not(.btn-inscribe-animated):active, button.bg-brand:active { transform: scale(0.97); }

  /* Enlaces del menú: subrayado que crece */
  .kr-nav-link::after { content: ""; position: absolute; left: 0.8rem; right: 0.8rem; bottom: 0.22rem; height: 2px; border-radius: 2px; background: var(--kr-red); transform: scaleX(0); transform-origin: left; transition: transform .28s ease; }
  .kr-nav-link:hover::after, .kr-nav-link:focus-visible::after { transform: scaleX(1); }

  /* Tarjetas: elevación suave */
  [class*="rounded-2xl"][class*="border-white/10"],
  [class*="rounded-2xl"][class*="border-white/15"],
  [class*="rounded-3xl"][class*="border-white/15"],
  [class*="rounded-3xl"][class*="border-white/10"],
  .kr-card { transition: transform .35s cubic-bezier(0.2, 0.7, 0.2, 1), border-color .3s ease, box-shadow .35s ease; }
  @media (hover: hover) { [class*="rounded-2xl"][class*="border-white/10"]:hover,
  [class*="rounded-2xl"][class*="border-white/15"]:hover,
  [class*="rounded-3xl"][class*="border-white/15"]:hover,
  [class*="rounded-3xl"][class*="border-white/10"]:hover,
  .kr-card:hover { transform: translateY(-4px); } }

  /* Iconos dentro de tarjetas: pequeño rebote al pasar el cursor */
  @media (hover: hover) {
    [class*="rounded-2xl"]:hover > i.fa-solid, [class*="rounded-2xl"]:hover .text-4xl i, [class*="rounded-xl"]:hover > i.fa-solid { animation: kr-icon-pop .5s ease; }
  }

  /* Botón de WhatsApp flotante: anillo pulsante suave */
  #wa-toggle { animation: kr-pulse-ring 2.6s ease-out infinite; }

  /* Elementos que aparecen al hacer scroll (los añade krake-fx.js).
     Usan @keyframes (animation), no transition: muchas tarjetas ya tienen su propia
     transición de borde/sombra para el efecto hover, y esa "gana" sobre cualquier
     transition que se intente poner aquí (misma propiedad, más especificidad).
     Con animation no hay ese conflicto y la duración real es siempre la que se define aquí. */
  @keyframes kr-fade-in { from { opacity: 0; transform: translateY(26px) scale(0.98); } to { opacity: 1; transform: none; } }
  @keyframes kr-slide-in-left { from { opacity: 0; transform: translateX(-42px); } to { opacity: 1; transform: none; } }
  @keyframes kr-slide-in-right { from { opacity: 0; transform: translateX(42px); } to { opacity: 1; transform: none; } }

  .kr-reveal { opacity: 0; transform: translateY(26px) scale(0.98); will-change: opacity, transform; }
  .kr-reveal.kr-in { animation: kr-fade-in 0.4s cubic-bezier(0.16, 1, 0.3, 1) both; animation-delay: var(--kr-d, 0ms); will-change: auto; }

  /* Imágenes y tarjetas con foto/video: entran desde el lado, alternando izquierda/derecha */
  .kr-reveal-left, .kr-reveal-right { opacity: 0; will-change: opacity, transform; }
  .kr-reveal-left { transform: translateX(-42px); }
  .kr-reveal-right { transform: translateX(42px); }
  .kr-reveal-left.kr-in { animation: kr-slide-in-left 0.4s cubic-bezier(0.16, 1, 0.3, 1) both; animation-delay: var(--kr-d, 0ms); will-change: auto; }
  .kr-reveal-right.kr-in { animation: kr-slide-in-right 0.4s cubic-bezier(0.16, 1, 0.3, 1) both; animation-delay: var(--kr-d, 0ms); will-change: auto; }

  /* Títulos de sección (h2): el texto se revela con un barrido al llegar a la vista */
  .kr-h-wrap { display: block; overflow: hidden; }
  .kr-h-inner { display: inline-block; transform: translateY(112%); opacity: 0; transition: transform 0.45s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.35s ease; transition-delay: var(--kr-d, 0ms); }
  .kr-h-wrap.kr-in .kr-h-inner { transform: translateY(0); opacity: 1; }

  /* Paralaje suave del hero con el puntero */
  .kr-orbit-core { translate: calc(var(--px, 0) * 14px) calc(var(--py, 0) * 12px); transition: translate .25s ease-out; }
  .kr-chip { translate: calc(var(--px, 0) * -9px) calc(var(--py, 0) * -7px); transition: translate .3s ease-out; }
  .kr-orbit-glow { translate: calc(var(--px, 0) * 6px) calc(var(--py, 0) * 6px); }
}
@keyframes kr-icon-pop { 0% { transform: scale(1); } 40% { transform: scale(1.22) rotate(-6deg); } 100% { transform: scale(1); } }
@media (prefers-reduced-motion: reduce) { .kr-reveal { opacity: 1 !important; transform: none !important; } }
html[data-theme="light"] #root > section:nth-of-type(even):not(.kr-marquee):not([class*="from-mentorDark/60"]) { background-color: var(--kr-surface-2) !important; }
html[data-theme="light"] #root > section:nth-of-type(odd):not([class*="from-mentorDark/60"]) { background-color: #ffffff !important; }
