/* ════════════════════════════════════════════════════════════
   MANUAL DE MARCA KAIZEN v1.0 — TIPOGRAFÍAS (autohospedadas en /fonts)
   Anybody (títulos) · Schibsted Grotesk (texto) · Martian Mono (micro)
   Racing Sans One (especial). Licencia OFL — ver /fonts/OFL-*.txt
   ════════════════════════════════════════════════════════════ */
@font-face{font-family:'Anybody';src:url('fonts/anybody-var.woff2') format('woff2');font-weight:100 900;font-stretch:50% 150%;font-style:normal;font-display:swap}
@font-face{font-family:'Anybody';src:url('fonts/anybody-italic-var.woff2') format('woff2');font-weight:100 900;font-stretch:50% 150%;font-style:italic;font-display:swap}
@font-face{font-family:'Schibsted Grotesk';src:url('fonts/schibsted-grotesk-var.woff2') format('woff2');font-weight:400 900;font-style:normal;font-display:swap}
@font-face{font-family:'Martian Mono';src:url('fonts/martian-mono-var.woff2') format('woff2');font-weight:100 800;font-stretch:75% 112.5%;font-style:normal;font-display:swap}
@font-face{font-family:'Racing Sans One';src:url('fonts/racing-sans-one.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}

/* ════════════════════════════════════════════════════════════
   KAIZEN — Forward NEO Product Landing
   Referencia: Nike.com aesthetic
   ════════════════════════════════════════════════════════════

   Principios de este CSS:
   — Sin box-shadow visible en ningún elemento de identidad
   — Border-radius: 0 en todo (incluyendo botones)
   — Gradientes solo negro → negro (sin color en gradientes)
   — El rojo (#CE001E) se usa máx 3 veces por sección
   — Spacing variado por sección (no padding: 8rem por defecto)
   — letter-spacing varía con propósito (no 0.3em en todo)
   — En mobile: padding 0 en containers con imágenes,
     padding solo en containers de texto

   ════════════════════════════════════════════════════════════ */


/* ─── Variables ──────────────────────────────────────────── */
:root {
  --c-bg:      #141414;
  --c-bg-2:    #141414;
  --c-text:    #ffffff;
  --c-muted:   rgba(255, 255, 255, 0.42);
  --c-border:  rgba(255, 255, 255, 0.08);
  --c-accent:  #CE001E;
  --c-wa:      #25D366;

  --font:  'Schibsted Grotesk', 'Helvetica Neue', Arial, sans-serif;
  --nav-h: 68px;
  --pad-x: 5%;
  --ease:  cubic-bezier(0.25, 0.46, 0.45, 0.94);
}


/* ─── Reset ──────────────────────────────────────────────── */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html  { scroll-behavior: smooth; }
body  {
  background: var(--c-bg);
  color: var(--c-text);
  font-family: var(--font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-x: hidden;
}
a       { text-decoration: none; color: inherit; }
ul, ol  { list-style: none; }
address { font-style: normal; }
img     { display: block; max-width: 100%; }
button  { cursor: pointer; font-family: var(--font); }


/* ════════════════════════════════════════════════════════════
   BUTTONS — Sin border-radius. Sin flechas en texto.
   Tres variantes: light (hero), wa (compra), outline (form)
   ════════════════════════════════════════════════════════════ */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  font-family: var(--font);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 1rem 2rem;
  border: none;
  position: relative;
  overflow: hidden;
  transition: background-color 0.22s var(--ease),
              color 0.22s var(--ease),
              transform 0.15s var(--ease);
  /* border-radius: 0 — es el default, explicitarlo sería redundante */
}

/* Botón blanco: solo hero y CTA final — alto contraste sobre oscuro */
.btn--light {
  background: #ffffff;
  color: #141414;
}
.btn--light:hover {
  background: rgba(255, 255, 255, 0.88);
  transform: translateY(-1px);
}

/* Botón WhatsApp: única vez que entra este verde en el sitio */
.btn--wa {
  background: var(--c-wa);
  color: #ffffff;
}
.btn--wa:hover {
  background: #1aab52;
  transform: translateY(-1px);
}

/* Botón outline: formulario de contacto */
.btn--outline {
  background: transparent;
  color: var(--c-text);
  border: 1px solid rgba(255, 255, 255, 0.28);
}
.btn--outline:hover {
  border-color: var(--c-text);
  background: rgba(255, 255, 255, 0.05);
}


/* ════════════════════════════════════════════════════════════
   NAV
   ════════════════════════════════════════════════════════════ */
.nav {
  position: fixed;
  top: 0; left: 0; right: 0;
  z-index: 100;
  height: var(--nav-h);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 var(--pad-x);
  background: rgba(20,20,20,0.93);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border-bottom: 1px solid transparent; /* se activa con JS al scrollear */
  transition: border-color 0.4s;
}
.nav.is-scrolled { border-bottom-color: var(--c-border); }

.nav__logo img { display: block; }

.nav__links {
  display: flex;
  gap: 2.5rem;
}
.nav__link {
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--c-muted);
  transition: color 0.2s;
}
.nav__link:hover { color: var(--c-text); }

/* CTA nav: underline que se transforma en rojo — no un botón */
.nav__buy {
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--c-text);
  padding-bottom: 0.12rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.35);
  transition: color 0.2s, border-color 0.2s;
}
.nav__buy:hover {
  color: var(--c-accent);
  border-bottom-color: var(--c-accent);
}


/* ════════════════════════════════════════════════════════════
   HERO — Full bleed 100vh / 100svh
   ════════════════════════════════════════════════════════════ */
.hero {
  position: relative;
  height: 100vh;
  height: 100svh; /* iOS: compensa barra del browser */
  min-height: 600px;
  overflow: hidden;
}

/* Imagen de fondo */
.hero__bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 65% 30%;
}

/* Overlay: negro que sube desde abajo para legibilidad del texto */
.hero__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to top,
    rgba(0, 0, 0, 0.90) 0%,
    rgba(0, 0, 0, 0.35) 42%,
    rgba(0, 0, 0, 0.08) 100%
  );
}

/* Contenido: anclado al borde inferior izquierdo */
.hero__content {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 2;
  padding: 0 var(--pad-x) 4.5rem;
}

/* Kicker: integra el badge FIFA sin widget flotante */
.hero__kicker {
  display: block;
  font-size: 0.6rem;
  font-weight: 700;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.5);
  margin-bottom: 1rem;
}

/* Título: dos palabras en dos líneas, cada una con su wrapper
   para el clip reveal animation (stagger ascendente) */
.hero__title {
  display: flex;
  flex-direction: column;
  font-size: clamp(5rem, 14vw, 13rem);
  font-weight: 900;
  line-height: 0.82;
  letter-spacing: -0.045em;
  text-transform: uppercase;
  color: #fff;
  margin-bottom: 1.25rem;
}

/* Wrapper: el overflow: hidden recorta la animación */
.hero__word-wrap {
  overflow: hidden;
  padding-bottom: 0.04em; /* evita recorte en baseline */
  display: block;
}
.hero__word { display: block; }

.hero__sub {
  font-size: clamp(0.95rem, 1.4vw, 1.2rem);
  font-weight: 400;
  color: rgba(255, 255, 255, 0.82);
  margin-bottom: 2.25rem;
  max-width: 420px;
}

/* Scroll indicator: línea vertical con animación CSS pura */
.hero__scroll {
  position: absolute;
  bottom: 2rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
}
.hero__scroll-line {
  width: 1px;
  height: 44px;
  background: linear-gradient(to bottom, rgba(255,255,255,0.5), transparent);
  animation: scrollDrop 2.2s ease-in-out infinite;
}
@keyframes scrollDrop {
  0%   { transform: scaleY(0); transform-origin: top; opacity: 0; }
  30%  { opacity: 1; }
  65%  { transform: scaleY(1); transform-origin: top; }
  66%  { transform: scaleY(1); transform-origin: bottom; }
  100% { transform: scaleY(0); transform-origin: bottom; opacity: 0; }
}


/* ════════════════════════════════════════════════════════════
   PRODUCT STAGE — 55% imagen / 45% info
   ════════════════════════════════════════════════════════════ */
.stage {
  display: grid;
  grid-template-columns: 55% 1fr;
  min-height: 92vh;
  border-top: 1px solid var(--c-border);
}

.stage__media {
  overflow: hidden;
  background: #141414; /* fondo negro propio para la foto de pelota */
}
.stage__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  transition: transform 0.9s var(--ease);
}
.stage__media:hover img { transform: scale(1.025); }

/* Columna de información */
.stage__info {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 5rem var(--pad-x) 5rem 5%;
  gap: 2.25rem;
}

/* Header del producto */
.stage__header { display: flex; flex-direction: column; gap: 0.4rem; }
.stage__brand {
  font-size: 0.6rem;
  font-weight: 700;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--c-muted);
}
.stage__name {
  font-size: clamp(2.5rem, 4vw, 4.5rem);
  font-weight: 900;
  letter-spacing: -0.035em;
  line-height: 0.9;
}
.stage__type {
  font-size: 0.68rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  color: var(--c-accent);
  text-transform: uppercase;
}

/* Descripción */
.stage__desc {
  font-size: 0.9rem;
  font-weight: 400;
  line-height: 1.78;
  color: var(--c-muted);
  max-width: 370px;
}

/* Specs: barra horizontal — NOT una grilla de celdas */
.stage__specs {
  display: flex;
  align-items: center;
  padding: 1.5rem 0;
  border-top: 1px solid var(--c-border);
  border-bottom: 1px solid var(--c-border);
}
.stage__spec {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  padding: 0 1rem;
}
.stage__spec:first-child { padding-left: 0; }
.stage__spec:last-child  { padding-right: 0; }
.stage__spec-val {
  font-size: clamp(0.95rem, 1.4vw, 1.15rem);
  font-weight: 900;
  letter-spacing: -0.02em;
  line-height: 1;
}
.stage__spec-key {
  font-size: 0.52rem;
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--c-muted);
}
/* Separador vertical entre specs */
.stage__sep {
  width: 1px;
  height: 2.25rem;
  background: var(--c-border);
  flex-shrink: 0;
}

/* Precio y compra */
.stage__buy {
  display: flex;
  align-items: center;
  gap: 1.75rem;
  flex-wrap: wrap;
}
.stage__price {
  font-size: 2rem;
  font-weight: 900;
  letter-spacing: -0.04em;
  line-height: 1;
}


/* ════════════════════════════════════════════════════════════
   TECHNOLOGY — 50/50 imagen/contenido
   La imagen ya tiene labels → el texto agrega contexto
   de rendimiento, no repite los mismos datos.
   ════════════════════════════════════════════════════════════ */
.tech {
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: 85vh;
  border-top: 1px solid var(--c-border);
  background: var(--c-bg-2);
}
.tech__media { overflow: hidden; background: #141414; }
.tech__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.tech__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 5rem var(--pad-x) 5rem 5.5%;
  gap: 2rem;
}
.tech__kicker {
  font-size: 0.6rem;
  font-weight: 700;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--c-accent);
}
.tech__title {
  font-size: clamp(2rem, 3.2vw, 3.5rem);
  font-weight: 900;
  letter-spacing: -0.035em;
  line-height: 0.95;
}

/* Lista de 3 puntos de rendimiento */
.tech__points { display: flex; flex-direction: column; gap: 0; }
.tech__point {
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
  padding: 1.5rem 0;
  border-bottom: 1px solid var(--c-border);
}
.tech__point:first-child { border-top: 1px solid var(--c-border); }
.tech__point strong {
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.01em;
}
.tech__point span {
  font-size: 0.78rem;
  font-weight: 400;
  line-height: 1.6;
  color: var(--c-muted);
}


/* ════════════════════════════════════════════════════════════
   GALLERY — Grid editorial sin texto
   Gap de 1px: paneles que se ven separados, no fusionados
   ════════════════════════════════════════════════════════════ */
.gallery {
  display: grid;
  grid-template-columns: 3fr 2fr;
  gap: 1px;
  height: 72vh;
  min-height: 440px;
  background: #141414; /* el gap "de 1px" es el fondo negro */
  border-top: 1px solid var(--c-border);
}
.gallery__main { overflow: hidden; }
.gallery__main img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  cursor: zoom-in;
  transition: transform 0.6s var(--ease);
}
.gallery__main:hover img { transform: scale(1.03); }

.gallery__aside {
  display: grid;
  grid-template-rows: 1fr 1fr;
  gap: 1px;
}
.gallery__cell { overflow: hidden; }
.gallery__cell img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  cursor: zoom-in;
  transition: transform 0.6s var(--ease);
}
.gallery__cell:hover img { transform: scale(1.05); }


/* ════════════════════════════════════════════════════════════
   CTA FINAL — Full bleed + copy emocional
   ════════════════════════════════════════════════════════════ */
.cta-final {
  position: relative;
  height: 62vh;
  min-height: 380px;
  overflow: hidden;
  display: flex;
  align-items: center;
}
.cta-final__bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 45%;
}
.cta-final__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.65);
}
.cta-final__content {
  position: relative;
  z-index: 2;
  padding: 0 var(--pad-x);
}
.cta-final__title {
  font-size: clamp(2.5rem, 5.5vw, 6rem);
  font-weight: 900;
  letter-spacing: -0.035em;
  line-height: 0.9;
  color: #fff;
  margin-bottom: 2rem;
}
.cta-final__btn { font-size: 0.82rem; }


/* ════════════════════════════════════════════════════════════
   CONTACT
   ════════════════════════════════════════════════════════════ */
.contact {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 7rem;
  padding: 8rem var(--pad-x);
  border-top: 1px solid var(--c-border);
}
.contact__title {
  font-size: clamp(3rem, 5vw, 5rem);
  font-weight: 900;
  line-height: 0.88;
  letter-spacing: -0.035em;
  margin-bottom: 1.25rem;
}
/* Nota aclaratoria — diferencia compra individual de mayorista */
.contact__note {
  font-size: 0.78rem;
  font-weight: 400;
  line-height: 1.72;
  color: var(--c-muted);
  margin-bottom: 2rem;
  max-width: 320px;
}
.contact__email {
  display: block;
  font-size: 0.88rem;
  font-weight: 500;
  color: var(--c-accent);
  border-bottom: 1px solid rgba(206,0,30,0.3);
  width: fit-content;
  padding-bottom: 0.12rem;
  margin-bottom: 0.6rem;
  transition: border-color 0.2s;
}
.contact__email:hover { border-bottom-color: var(--c-accent); }
.contact__address {
  font-size: 0.68rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--c-muted);
  margin-bottom: 2rem;
}
.contact__social { display: flex; flex-direction: column; gap: 0.4rem; }
.contact__social-link {
  font-size: 0.65rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--c-muted);
  transition: color 0.2s;
  width: fit-content;
}
.contact__social-link:hover { color: var(--c-text); }

/* Formulario */
.contact__form { display: flex; flex-direction: column; }
.form-group {
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  margin-bottom: 2rem;
  transition: border-bottom-color 0.2s;
}
.form-group:focus-within { border-bottom-color: var(--c-accent); }
.form-group label {
  display: block;
  font-size: 0.55rem;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.28);
  margin-bottom: 0.5rem;
}
.form-group input,
.form-group textarea {
  display: block;
  width: 100%;
  background: transparent;
  border: none;
  color: var(--c-text);
  font-family: var(--font);
  font-size: 0.95rem;
  font-weight: 400;
  padding: 0 0 0.8rem;
  outline: none;
  caret-color: var(--c-accent);
}
.form-group input::placeholder,
.form-group textarea::placeholder { color: transparent; }
.form-group textarea { resize: none; }
.contact__form .btn { align-self: flex-start; margin-top: 0.5rem; }


/* ════════════════════════════════════════════════════════════
   FOOTER — Una sola línea
   ════════════════════════════════════════════════════════════ */
.footer {
  border-top: 1px solid var(--c-border);
  padding: 1.5rem var(--pad-x);
}
.footer__inner {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  flex-wrap: wrap;
}
.footer__sep {
  color: var(--c-border);
  font-size: 0.7rem;
}
.footer__copy {
  font-size: 0.6rem;
  font-weight: 500;
  letter-spacing: 0.08em;
  color: var(--c-muted);
}
.footer__social {
  display: flex;
  gap: 1.25rem;
  margin-left: auto;
}
.footer__social a {
  font-size: 0.62rem;
  font-weight: 700;
  letter-spacing: 0.15em;
  color: var(--c-muted);
  transition: color 0.2s;
}
.footer__social a:hover { color: var(--c-text); }


/* ════════════════════════════════════════════════════════════
   RESPONSIVE — Tablet 900px
   ════════════════════════════════════════════════════════════ */
@media (max-width: 900px) {
  .nav__links { display: none; }

  /* Stage: columna única */
  .stage {
    grid-template-columns: 1fr;
    min-height: auto;
  }
  .stage__media { height: 70vw; min-height: 300px; }
  .stage__info  { padding: 3rem var(--pad-x); }
  .stage__desc  { max-width: 100%; }

  /* Tech: columna única */
  .tech {
    grid-template-columns: 1fr;
    min-height: auto;
  }
  .tech__media   { height: 68vw; min-height: 280px; }
  .tech__content { padding: 3.5rem var(--pad-x); }

  /* Gallery: stack vertical */
  .gallery {
    grid-template-columns: 1fr;
    height: auto;
  }
  .gallery__main { height: 72vw; min-height: 300px; }
  .gallery__aside {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto;
  }
  .gallery__cell { height: 44vw; min-height: 200px; }

  .contact {
    grid-template-columns: 1fr;
    gap: 3rem;
    padding: 5rem var(--pad-x);
  }

  .footer__inner { justify-content: center; }
  .footer__social { margin-left: 0; }
}


/* ════════════════════════════════════════════════════════════
   RESPONSIVE — Mobile 480px
   Regla absoluta: cero padding en containers con imágenes.
   El padding va SOLO en el contenedor de texto (hijo).
   ════════════════════════════════════════════════════════════ */
@media (max-width: 480px) {
  :root { --pad-x: 5%; --nav-h: 60px; }

  /* Nav */
  .nav { padding: 0 var(--pad-x); }
  .nav__logo img { height: 20px; }
  .nav__buy { font-size: 0.65rem; letter-spacing: 0.05em; }

  /* Hero */
  .hero { height: 100vh; height: 100svh; }
  .hero__bg { object-position: 72% 25%; }
  .hero__content { padding: 0 var(--pad-x) 3rem; }
  .hero__title   { font-size: clamp(3.5rem, 18vw, 5.5rem); }
  .hero__sub     { font-size: 0.92rem; margin-bottom: 1.5rem; }
  .hero__cta     { width: 100%; padding: 1.1rem; }
  .hero__scroll  { display: none; } /* en mobile no hay espacio */

  /* Stage: imagen a borde completo, cero padding en section */
  .stage { border-top: 1px solid var(--c-border); }
  .stage__media { height: 100vw; } /* cuadrado — ocupa todo el ancho */
  .stage__info  { padding: 2.5rem var(--pad-x) 3.5rem; gap: 1.75rem; }
  .stage__name  { font-size: clamp(2rem, 10vw, 3rem); }
  .stage__desc  { font-size: 0.87rem; }
  /* Specs: 2 columnas en mobile para que quepan los 4 datos */
  .stage__specs {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
    padding: 0;
    border: none;
  }
  .stage__spec {
    padding: 1rem;
    border: 1px solid var(--c-border);
    margin: -1px 0 0 -1px; /* overlap borders para grid look */
  }
  .stage__spec:first-child { padding-left: 1rem; }
  .stage__sep { display: none; } /* se usa el grid con borders */
  .stage__spec-val { font-size: 1rem; }
  .stage__buy { flex-direction: column; align-items: stretch; gap: 1rem; }
  .stage__buy .btn { text-align: center; padding: 1.1rem; }
  .stage__price { font-size: 1.75rem; }

  /* Tech */
  .tech { background: var(--c-bg-2); }
  .tech__media   { height: 100vw; }
  .tech__content { padding: 2.5rem var(--pad-x) 3.5rem; gap: 1.5rem; }
  .tech__title   { font-size: clamp(1.8rem, 9vw, 2.5rem); }
  .tech__point   { padding: 1.25rem 0; }
  .tech__point strong { font-size: 0.8rem; }
  .tech__point span   { font-size: 0.76rem; }

  /* Gallery */
  .gallery__main { height: 90vw; }
  .gallery__aside { grid-template-columns: 1fr 1fr; }
  .gallery__cell  { height: 50vw; }

  /* CTA Final */
  .cta-final { height: auto; min-height: 0; }
  .cta-final__bg { position: relative; height: 55vw; min-height: 240px; }
  /* En mobile reapilamos: imagen arriba, texto abajo */
  .cta-final {
    flex-direction: column;
    height: auto;
    background: var(--c-bg);
  }
  .cta-final__bg {
    position: relative;
    inset: auto;
    width: 100%;
    height: 60vw;
    min-height: 240px;
    object-fit: cover;
  }
  .cta-final__overlay { display: none; }
  .cta-final__content {
    position: relative;
    z-index: 2;
    padding: 2.5rem var(--pad-x) 3rem;
    background: var(--c-bg);
  }
  .cta-final__title { font-size: clamp(2.25rem, 12vw, 3.5rem); margin-bottom: 1.5rem; }
  .cta-final__btn   { width: 100%; }

  /* Contact */
  .contact { padding: 4rem var(--pad-x); gap: 3rem; }
  .contact__title { font-size: clamp(2.5rem, 12vw, 3.5rem); }
  .contact__note  { font-size: 0.82rem; max-width: 100%; }
  /* 16px mínimo en inputs: evita zoom automático de Safari iOS */
  .form-group input,
  .form-group textarea { font-size: 16px; }
  .contact__form .btn  { align-self: stretch; text-align: center; padding: 1.1rem; }
}


/* ─── Reduced Motion ─────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.001ms !important;
    transition-duration: 0.001ms !important;
  }
  .hero__scroll { display: none; }
}
/* Extensión de catálogo sobre la identidad original */
html{scroll-padding-top:var(--nav-h)}.skip{position:absolute;top:-100px;left:10px;background:white;color:#141414;padding:12px;z-index:200}.skip:focus{top:10px}a:focus-visible,button:focus-visible{outline:2px solid var(--c-accent);outline-offset:4px}.nav__toggle{display:none;border:0;background:none;color:#fff;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em}.hero-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .55s,visibility .55s}.hero-slide.is-active{opacity:1;visibility:visible;z-index:1}.hero-slide .hero__content{bottom:0}.hero-slide .hero__title{font-size:clamp(5rem,14vw,13rem)}.hero__bg--empty{background:linear-gradient(135deg,#141414,#141414)}.hero__bg--empty:before{content:"";position:absolute;inset:4%;border:1px solid rgba(255,255,255,.08)}.hero__controls{position:absolute;z-index:5;right:var(--pad-x);bottom:3rem;display:flex;align-items:center;gap:13px}.hero__controls button{background:none;border:0;color:white;padding:5px;font-size:1.25rem}.hero-count{font-size:.65rem;font-weight:700;letter-spacing:.16em}.hero-dots{display:flex;align-items:center;gap:7px}.hero-dot{display:block;background:rgba(255,255,255,.4)!important;width:19px;height:2px;border:0;padding:0!important}.hero-dot[aria-current=true]{background:white!important;width:32px}.section-label{font-size:.6rem;font-weight:700;letter-spacing:.26em;text-transform:uppercase;color:var(--c-accent)}.media-empty{height:100%;min-height:290px;background:linear-gradient(145deg,#141414,#141414);position:relative}.media-empty:after{content:"";position:absolute;inset:5%;border:1px solid rgba(255,255,255,.065)}.stage__media .media-empty{height:100%}.stage__media a{display:block;height:100%}.stage__old{color:var(--c-muted);font-size:.8rem;text-decoration:line-through;margin-left:12px}.stage__footnote,.muted{font-size:.72rem;line-height:1.65;color:var(--c-muted)}.stage__buy{gap:1rem}.stage__actions{display:flex;flex-wrap:wrap;gap:13px}.stage__actions .btn--outline{font-size:.7rem}.lineup{padding:7rem var(--pad-x);border-top:1px solid var(--c-border)}.lineup__heading{font-size:clamp(2.5rem,5vw,5rem);font-weight:900;line-height:.9;letter-spacing:-.035em;margin:1.25rem 0 3rem}.lineup__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--c-border)}.lineup__item{background:var(--c-bg);min-width:0}.lineup__visual{display:block;height:28vw;min-height:240px;max-height:440px;background:#141414;overflow:hidden}.lineup__visual img{width:100%;height:100%;object-fit:cover}.lineup__text{padding:2rem 1.7rem 2.5rem}.lineup__text h3{font-size:clamp(1.5rem,2.4vw,2.75rem);font-weight:900;line-height:.95;letter-spacing:-.03em;margin:.65rem 0 1rem}.lineup__text p{font-size:.8rem;line-height:1.6;color:var(--c-muted);min-height:77px}.lineup__price{font-size:1.35rem;font-weight:900;margin:1.2rem 0}.lineup__price del{color:var(--c-muted);font-size:.75rem;font-weight:400;margin-left:10px}.lineup__links{display:flex;gap:17px;flex-wrap:wrap}.lineup__links a{font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid rgba(255,255,255,.4);padding-bottom:5px}.lineup__links a:hover{color:var(--c-accent);border-color:var(--c-accent)}.compare{border-top:1px solid var(--c-border);padding:7rem var(--pad-x);background:var(--c-bg-2)}.compare__scroll{overflow-x:auto}.compare table{width:100%;min-width:660px;border-collapse:collapse;text-align:left}.compare th,.compare td{border-bottom:1px solid var(--c-border);padding:1.1rem .8rem;font-size:.76rem;line-height:1.5}.compare thead th{font-size:1rem;font-weight:900}.compare tbody th{color:var(--c-muted);font-size:.65rem;text-transform:uppercase;letter-spacing:.09em}.product-page{padding-top:var(--nav-h)}.breadcrumbs{font-size:.65rem;color:var(--c-muted);padding:1.5rem var(--pad-x);border-bottom:1px solid var(--c-border)}.breadcrumbs a{text-decoration:underline}.spec-section{padding:6rem var(--pad-x);border-top:1px solid var(--c-border)}.spec-section h2{font-size:clamp(2rem,3.5vw,3.6rem);font-weight:900;letter-spacing:-.035em;line-height:.95;margin:1rem 0 2rem}.spec-section__layout{display:grid;grid-template-columns:1fr 1fr;gap:8%}.spec-section dl{border-top:1px solid var(--c-border)}.spec-section dl div{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--c-border);padding:1rem 0;font-size:.76rem}.spec-section dt{color:var(--c-muted)}.spec-section dd{text-align:right}.spec-section p{font-size:.84rem;line-height:1.7;color:var(--c-muted)}.gallery--details{height:56vh}.contact--simple{grid-template-columns:1.2fr .8fr;align-items:center}.contact--simple .btn{margin-top:1.6rem}.whatsapp-float{position:fixed;z-index:110;right:24px;bottom:24px;display:flex;align-items:center;gap:9px;background:var(--c-wa);color:#1A1A1A;padding:13px 17px;font-size:.72rem;font-weight:800;letter-spacing:.02em;box-shadow:0 7px 25px rgba(0,0,0,.32)}.whatsapp-float svg{width:21px;height:21px;fill:currentColor}.whatsapp-float:hover{background:#1dbb58}
@media(max-width:900px){.nav__toggle{display:block}.nav__links{position:absolute;display:none;top:var(--nav-h);left:0;right:0;background:rgba(20,20,20,.98);padding:1rem var(--pad-x) 1.7rem;flex-direction:column;gap:0;border-bottom:1px solid var(--c-border)}.nav__links.is-open{display:flex}.nav__links li a{display:block;padding:1rem 0}.lineup__grid{grid-template-columns:1fr 1fr}.lineup__visual{height:35vw}.spec-section__layout{grid-template-columns:1fr}.contact--simple{grid-template-columns:1fr}}
@media(max-width:600px){.hero-slide .hero__title{font-size:clamp(3.3rem,16vw,5.5rem)}.hero__controls{bottom:8px;left:var(--pad-x);right:auto}.hero-dot{width:14px}.hero-dot[aria-current=true]{width:23px}.hero-slide .hero__content{padding-bottom:5.7rem}.hero-slide .hero__sub{margin-bottom:1rem}.lineup,.compare,.spec-section{padding:4rem var(--pad-x)}.lineup__grid{grid-template-columns:1fr}.lineup__visual{height:90vw;max-height:none}.lineup__text p{min-height:0}.whatsapp-float{right:14px;bottom:14px}.gallery--details{height:auto}}
.stage__spec{min-width:0}.stage__spec-val{overflow-wrap:anywhere;line-height:1.2}
/* Navegación del carrusel: numeración sobria y toda la lámina clicable. */
.hero-slide__link{position:absolute;inset:0;z-index:2}.hero-slide .hero__content{pointer-events:none}.hero-slide .hero__content a{pointer-events:auto}.hero-slide .hero__content{z-index:3}.hero__controls{gap:7px;bottom:2.8rem}.hero-dot,.hero-dot[aria-current=true]{width:auto!important;height:auto!important;padding:.45rem .55rem .6rem!important;border:0;border-bottom:1px solid rgba(255,255,255,.35);background:transparent!important;color:rgba(255,255,255,.48);font-size:.68rem;font-weight:700;letter-spacing:.08em;line-height:1}.hero-dot[aria-current=true]{border-bottom:2px solid white;color:white}.hero-dot:hover{color:white}.hero-slide .hero__title{max-width:85vw}.hero-slide .hero__title .hero__word{overflow-wrap:anywhere}
/* WhatsApp: acceso circular, solo símbolo. */
.whatsapp-float{width:58px;height:58px;right:22px;bottom:22px;padding:0;border-radius:50%;justify-content:center;color:white;box-shadow:0 5px 18px rgba(0,0,0,.25)}.whatsapp-float svg{width:30px;height:30px}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* Zoom de fotografías reales. */
.zoom-trigger{display:block;width:100%;height:100%;padding:0;border:0;background:transparent;overflow:hidden;cursor:zoom-in}.zoom-trigger img{width:100%;height:100%;object-fit:cover}.zoom-dialog{position:fixed;inset:0;width:min(96vw,1500px);height:min(94dvh,1000px);max-width:none;max-height:none;padding:0;border:1px solid rgba(255,255,255,.18);background:#141414;color:#fff;box-shadow:0 18px 60px rgba(0,0,0,.6)}.zoom-dialog::backdrop{background:rgba(0,0,0,.88)}.zoom-dialog__bar{height:58px;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:0 20px;border-bottom:1px solid var(--c-border)}.zoom-dialog__title{max-width:65%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--c-muted);font-size:.75rem}.zoom-dialog__tools{display:flex;align-items:center;gap:5px}.zoom-dialog__tools button{min-width:39px;min-height:39px;border:0;background:transparent;color:#fff;font-size:1.4rem}.zoom-dialog__tools .zoom-close{font-size:.68rem;text-transform:uppercase;font-weight:700;letter-spacing:.1em;padding:0 10px}.zoom-dialog__tools button:hover{background:#282828}.zoom-dialog__tools button:disabled{opacity:.35;cursor:default}.zoom-dialog__viewport{height:calc(100% - 58px);display:grid;place-items:center;overflow:auto}.zoom-dialog__viewport img{width:100%;height:100%;object-fit:contain;cursor:zoom-in;transition:transform .2s ease}
@media(max-width:900px){.hero__controls{bottom:1.8rem}.stage__info{padding:3.2rem var(--pad-x)}.stage__specs{gap:0}.stage__spec{min-width:0}}
@media(max-width:700px){.stage__specs{display:grid;grid-template-columns:1fr 1fr;border-bottom:0}.stage__spec{padding:1rem 0;border-bottom:1px solid var(--c-border)}.stage__spec:nth-child(4n+3){padding-left:1rem}.stage__sep{display:none}.lineup__grid{grid-template-columns:1fr}.lineup__visual{height:70vw;max-height:480px}.gallery__aside{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.nav__buy{display:none}.hero{min-height:min(600px,100svh)}.hero-slide .hero__title{font-size:clamp(3rem,14vw,4.8rem);max-width:95vw}.hero-slide .hero__content{padding-bottom:7rem}.hero__controls{bottom:1.1rem;left:var(--pad-x);right:auto}.hero-dot,.hero-dot[aria-current=true]{padding:.45rem .7rem .65rem!important;font-size:.7rem}.lineup__visual{height:90vw}.stage__specs{border-top:1px solid var(--c-border)}.stage__spec{border-left:0;border-right:0;margin:0}.stage__spec:first-child{padding-left:0}.whatsapp-float{right:16px;bottom:max(16px,env(safe-area-inset-bottom));width:54px;height:54px}.zoom-dialog{width:100vw;height:100dvh;border:0}.zoom-dialog__bar{padding:0 10px}.zoom-dialog__title{max-width:40%;font-size:.64rem}}
@media(max-width:600px){.hero-slide .hero__title{font-size:clamp(2.6rem,13vw,4.8rem)}}
@media(min-width:601px) and (max-width:900px){.lineup__grid{grid-template-columns:1fr}.lineup__item{display:grid;grid-template-columns:1fr 1fr}.lineup__visual{height:38vw;max-height:none}.lineup__text{display:flex;flex-direction:column;justify-content:center}.lineup__text p{min-height:0}}
@media(max-width:600px){.footer{padding-bottom:calc(4.5rem + env(safe-area-inset-bottom))}}
/* Precios: jerarquía editorial, sin tarjetas ni insignias añadidas. */
.price-block{border-left:2px solid var(--c-accent);padding:.15rem 0 .15rem 1.25rem;margin:.35rem 0;font-variant-numeric:tabular-nums}.price-block__label{display:block;color:var(--c-muted);font-size:.59rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;margin-bottom:.4rem}.price-block__row{display:flex;align-items:baseline;flex-wrap:wrap;gap:.4rem .65rem}.price-block__amount{font-size:clamp(2.7rem,4.4vw,4.1rem);font-weight:900;letter-spacing:-.065em;line-height:1;color:#fff}.price-block__currency{font-size:.66rem;letter-spacing:.14em;font-weight:800;color:var(--c-accent)}.price-block__old{font-size:.92rem;color:var(--c-muted);font-weight:500;margin-left:.45rem}.price-block__saving{display:block;color:rgba(255,255,255,.75);font-size:.72rem;font-weight:600;margin-top:.65rem}.price-block--compact{border-left:0;border-top:1px solid var(--c-border);border-bottom:1px solid var(--c-border);padding:1.1rem 0;margin:1.3rem 0 1.5rem}.price-block--compact .price-block__amount{font-size:clamp(2rem,2.7vw,2.65rem)}.price-block--compact .price-block__old{font-size:.77rem}.price-block--compact .price-block__saving{font-size:.67rem}.footer__credit{margin-left:auto;color:var(--c-muted);font-size:.62rem;font-weight:500;letter-spacing:.04em}.footer__credit a{color:#fff;border-bottom:1px solid rgba(255,255,255,.38);padding-bottom:2px;transition:color .2s,border-color .2s}.footer__credit a:hover{color:var(--c-accent);border-color:var(--c-accent)}
@media(max-width:900px){.footer__credit{margin-left:0;width:100%;text-align:center;margin-top:.45rem}}
@media(max-width:480px){.price-block__amount{font-size:3rem}.price-block--compact .price-block__amount{font-size:2.35rem}.price-block__old{margin-left:0}}
/* La galería tiene altura definida. Los controles de zoom no pueden agrandar sus filas. */
.gallery,.gallery__aside,.gallery__main,.gallery__cell{min-width:0;min-height:0}.gallery__main,.gallery__cell{position:relative;overflow:hidden}.gallery__aside{overflow:hidden}.gallery .zoom-trigger{position:absolute;inset:0;width:100%;height:100%;min-width:0;min-height:0}.gallery .zoom-trigger img{display:block;width:100%;height:100%;object-fit:cover}.stage__media{position:relative;min-width:0;min-height:0}.stage__media>.zoom-trigger{position:absolute;inset:0;width:100%;height:100%}
/* Movimiento sutil dentro de la identidad negra y roja. */
.scroll-progress{position:fixed;left:0;top:0;width:var(--scroll-progress,0%);height:2px;background:var(--c-accent);z-index:180;pointer-events:none}.stage,.compare,.contact{transition:background-color .8s var(--ease)}.stage#producto.in-view,.product-page .stage.in-view{background-color:#141414}.stage#bolsa.in-view{background-color:#141414}.compare.in-view{background-color:#161616}.contact.in-view{background-color:#141414}.hero-slide .hero__bg{transform:translate3d(0,var(--hero-shift,0px),0) scale(1.06);will-change:transform}.tech__media img{transform:translate3d(0,var(--tech-shift,0px),0) scale(1.07);will-change:transform}.scroll-reveal{opacity:0;transform:translateY(18px);transition:opacity .7s var(--ease),transform .7s var(--ease)}.scroll-reveal.is-revealed{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.scroll-reveal{opacity:1;transform:none}.hero-slide .hero__bg,.tech__media img{transform:none!important;will-change:auto}.stage,.compare,.contact{transition:none}.scroll-progress{display:none}}
.gallery{overflow:hidden;isolation:isolate}.stage#bolsa{position:relative;z-index:1;background-color:var(--c-bg)}
/* Puntos del carrusel, con área táctil cómoda y estado visible. */
.hero__controls{gap:4px}
.hero__controls .hero-dot,.hero__controls .hero-dot[aria-current=true]{display:grid;place-items:center;width:34px!important;height:34px!important;padding:0!important;border:0!important;border-radius:50%;background:transparent!important;cursor:pointer}
.hero__controls .hero-dot::after{content:"";width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.55);transition:background-color .25s ease,transform .25s ease,box-shadow .25s ease}
.hero__controls .hero-dot[aria-current=true]::after{background:var(--c-accent);transform:scale(1.45);box-shadow:0 0 0 3px rgba(0,0,0,.3)}
.hero__controls .hero-dot:hover::after{background:#fff}
.hero__controls .hero-dot[aria-current=true]:hover::after{background:var(--c-accent)}
/* Imagen original proporcionada para el acceso a WhatsApp. */
.whatsapp-float,.whatsapp-float:hover{background:transparent;box-shadow:none}
.whatsapp-float img{display:block;width:100%;height:100%;object-fit:contain}
.whatsapp-float:hover img{transform:scale(1.06)}
.whatsapp-float img{transition:transform .2s ease}
@media(prefers-reduced-motion:reduce){.hero__controls .hero-dot::after,.whatsapp-float img{transition:none}}
/* Título de bolsa con renglones legibles en el espacio disponible. */
#bolsa .stage__name{font-size:clamp(2.2rem,3vw,3.6rem);line-height:1.04;overflow-wrap:normal}
#bolsa .stage__header{min-width:0}
.product-page .stage__name{line-height:1.04;overflow-wrap:normal}
@media(max-width:600px){#bolsa .stage__name{font-size:clamp(2rem,9vw,3rem)}}
@media(max-width:600px){.tech__content .nav__buy{display:inline-flex}}
/* Foto de NEO indicada como ejemplo de la tecnología de la línea. */
.tech__media{position:relative;min-width:0}
.tech__caption{position:absolute;bottom:20px;left:var(--pad-x);z-index:1;padding:8px 10px;background:rgba(20,20,20,.78);color:#fff;font-size:.6rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
/* Galería contenida en la ficha de NEO. */
.gallery--details{grid-template-columns:minmax(0,3fr) minmax(0,2fr);height:min(60vh,650px);min-height:360px;overflow:hidden}
.gallery--details .gallery__aside{grid-template-rows:repeat(2,minmax(0,1fr))}
.gallery--details .gallery__main,.gallery--details .gallery__cell{min-width:0;min-height:0}
/* El visor centra la foto completa; los controles siempre quedan dentro. */
.zoom-dialog{box-sizing:border-box;inset:0;margin:auto;overflow:hidden}
.zoom-dialog__bar{box-sizing:border-box;min-width:0}
.zoom-dialog__tools{flex-shrink:0}
.zoom-dialog__viewport{box-sizing:border-box;min-width:0;min-height:0;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#141414}
.zoom-dialog__viewport img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;transform-origin:center center}
@media(max-width:700px){.gallery--details{grid-template-columns:1fr;height:auto;min-height:0}.gallery--details .gallery__main{height:min(78vw,520px)}.gallery--details .gallery__aside{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;height:min(44vw,280px)}.gallery--details .gallery__cell{height:100%;min-height:0}}
@media(max-width:600px){.zoom-dialog{width:100vw;height:100dvh;max-width:100vw;max-height:100dvh;border:0}.zoom-dialog__bar{height:54px}.zoom-dialog__viewport{height:calc(100% - 54px)}.zoom-dialog__title{max-width:42%;white-space:nowrap}.tech__caption{left:var(--pad-x);bottom:14px}}
/* Formulario de consultas: reutiliza líneas y tipografía del sitio. */
.contact--simple{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(3rem,8vw,9rem);align-items:start}
.contact__form{min-width:0}
.contact__form-title{font-size:clamp(1.5rem,2.2vw,2.4rem);font-weight:900;letter-spacing:-.035em;line-height:1.08;margin-bottom:.7rem}
.contact__form-intro{max-width:440px;font-size:.78rem;line-height:1.65;color:var(--c-muted);margin-bottom:2rem}
.contact__note--short{margin-top:1.7rem;margin-bottom:1rem}
.form-group{margin-bottom:1.45rem}
.form-group label{color:rgba(255,255,255,.55);line-height:1.4}
.form-group textarea{min-height:96px;resize:vertical}
.form-group select{display:block;width:100%;border:0;border-radius:0;background:var(--c-bg);color:#fff;font:inherit;font-size:.95rem;padding:0 0 .8rem;outline:none;cursor:pointer}
.form-group select:invalid{color:rgba(255,255,255,.5)}
.form-group select option{background:var(--c-bg);color:#fff}
.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.contact__form .btn{margin-top:.5rem}
.contact__form .btn:disabled{opacity:.6;cursor:wait}
.contact__status{min-height:1.4em;margin-top:1rem;font-size:.76rem;line-height:1.5;color:#fff}
.contact__status[data-state="error"]{color:#FF8294}
.contact__status[data-state="success"]{color:#b5efc9}
@media(max-width:900px){.contact--simple{grid-template-columns:1fr;gap:3rem}.contact__form{max-width:600px}}
@media(max-width:600px){.form-group select{font-size:16px}.contact__form .btn{width:100%}}
/* Compra: el resumen funciona hoy; el pago online se activará después de conectar Mercado Pago. */
[hidden]{display:none!important}
.nav__actions{display:flex;align-items:center;gap:clamp(14px,2.6vw,34px)}
.nav__cart{border:0;border-bottom:1px solid rgba(255,255,255,.35);background:transparent;color:#fff;padding:0 0 .12rem;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.nav__cart:hover,.nav__cart:focus-visible{border-color:var(--c-accent)}
.nav__cart span{color:var(--c-accent);margin-left:.35rem;font-variant-numeric:tabular-nums}
.hero__payment-note{position:absolute;z-index:5;top:calc(var(--nav-h) + 22px);left:var(--pad-x);display:flex;align-items:baseline;gap:13px;max-width:calc(100% - 2 * var(--pad-x));padding:11px 0;border-top:1px solid rgba(255,255,255,.55);border-bottom:1px solid rgba(255,255,255,.18);font-size:.64rem;letter-spacing:.04em;background:rgba(20,20,20,.42);backdrop-filter:blur(8px)}
.hero__payment-note strong{font-weight:800;text-transform:uppercase;white-space:nowrap}
.hero__payment-note span{color:rgba(255,255,255,.76);line-height:1.4}
.cart-add{font-size:.65rem;padding:.8rem 1.1rem;margin-bottom:1rem}
.cart-dialog{position:fixed;inset:0 0 0 auto;margin:0 0 0 auto;width:min(100%,480px);max-width:none;max-height:none;height:100dvh;padding:0;border:0;background:#141414;color:#fff;box-shadow:-20px 0 60px rgba(0,0,0,.35);overflow:hidden}
.cart-dialog::backdrop{background:rgba(0,0,0,.73);backdrop-filter:blur(3px)}
.cart-dialog__head{height:105px;padding:24px 6%;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--c-border)}
.cart-dialog__eyebrow{display:block;color:var(--c-accent);font-size:.58rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;margin-bottom:.4rem}
.cart-dialog__head h2{font-size:2rem;letter-spacing:-.04em;line-height:1}
.cart-dialog__head h2 span{font-size:.95rem;color:var(--c-accent);margin-left:.35rem}
.cart-dialog__close{border:0;border-bottom:1px solid rgba(255,255,255,.5);padding:5px 0;background:none;color:#fff;font-size:.67rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}
.cart-dialog__body{height:calc(100% - 105px);overflow-y:auto;padding:0 6% max(24px,env(safe-area-inset-bottom))}
.cart-empty{padding:3.5rem 0;color:var(--c-muted);font-size:.87rem;line-height:1.6}
.cart-item{display:grid;grid-template-columns:1fr auto;align-items:start;gap:.8rem;border-bottom:1px solid var(--c-border);padding:1.55rem 0}
.cart-item__title{font-size:.95rem;font-weight:800}.cart-item__title:hover{color:var(--c-accent)}
.cart-item__price{font-size:.92rem;font-weight:800;font-variant-numeric:tabular-nums}
.cart-item__controls{grid-column:1/-1;display:flex;align-items:center;gap:13px;font-size:.83rem}
.cart-item__controls button{min-width:32px;min-height:32px;border:1px solid var(--c-border);background:none;color:#fff;font-size:1rem}
.cart-item__controls button:hover{border-color:#fff}
.cart-item__controls button:last-child{width:auto;min-width:0;margin-left:auto;border:0;border-bottom:1px solid rgba(255,255,255,.35);font-size:.65rem;color:var(--c-muted)}
.cart-dialog__summary{padding:1.8rem 0}
.cart-dialog__total{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-size:.78rem;font-weight:700;text-transform:uppercase}
.cart-dialog__total strong{font-size:2.1rem;font-weight:900;letter-spacing:-.045em;font-variant-numeric:tabular-nums}
.cart-dialog__summary>p{font-size:.72rem;line-height:1.5;color:var(--c-muted);margin:.7rem 0 1.8rem}
.cart-dialog__payment{display:flex;flex-direction:column;gap:5px;padding:1rem 0;border-top:1px solid var(--c-border);border-bottom:1px solid var(--c-border)}
.cart-dialog__payment strong{font-size:.62rem;text-transform:uppercase;letter-spacing:.14em;color:var(--c-accent)}
.cart-dialog__payment span{font-weight:800;font-size:.85rem}
.cart-dialog__payment small{font-size:.68rem;line-height:1.5;color:var(--c-muted)}
.cart-dialog__pending,.cart-dialog__consult{width:100%;margin-top:1rem;text-align:center;line-height:1.35}
.cart-dialog__pending:disabled{opacity:.48;cursor:not-allowed;background:transparent;color:#fff;border-color:var(--c-border)}
@media(max-width:900px){.nav__actions{margin-left:auto;margin-right:20px}.nav__cart{font-size:.65rem}}
@media(max-width:600px){.nav__actions{margin-right:16px}.hero__payment-note{top:calc(var(--nav-h) + 14px);display:block;max-width:90%;font-size:.58rem}.hero__payment-note strong{display:block;margin-bottom:4px}.hero__payment-note span{display:block}.cart-dialog{width:100vw}.cart-add{width:100%}}
@media(max-width:380px){.nav__logo img{max-width:115px;height:auto}.nav__actions{margin-right:10px}.nav__cart{font-size:.58rem}}
/* Acciones sin subrayados sueltos; el acento rojo marca interacción. */
.nav__buy,.nav__buy:hover,.nav__cart,.nav__cart:hover,.cart-dialog__close,.cart-item__controls button:last-child,.footer__credit a,.footer__credit a:hover,.lineup__links a,.lineup__links a:hover{border-bottom:0}
.nav__buy,.nav__cart{padding:.35rem 0}
.nav__buy:hover,.nav__cart:hover,.cart-dialog__close:hover,.cart-item__controls button:last-child:hover,.lineup__links a:hover{color:var(--c-accent)}
.lineup__links a{padding-bottom:0}
.cart-dialog__close,.cart-item__controls button:last-child{transition:color .2s ease}
.hero__payment-note{border:0;padding:11px 14px;background:rgba(20,20,20,.78)}
/* Campos completos: fondo y contorno, incluidos los estados del selector. */
.form-group{border:0;margin-bottom:1.15rem;transition:none}
.form-group:focus-within{border:0}
.form-group label{margin-bottom:.6rem;color:rgba(255,255,255,.7)}
.form-group input,.form-group textarea,.form-group select{width:100%;min-height:50px;padding:13px 15px;border:1px solid rgba(255,255,255,.24);border-radius:0;background:#161616;color:#fff;font-family:var(--font);font-size:16px;line-height:1.45;outline:none;transition:border-color .2s,background-color .2s}
.form-group textarea{min-height:118px;resize:vertical}
.form-group input:hover,.form-group textarea:hover,.form-group select:hover{border-color:rgba(255,255,255,.48)}
.form-group input:focus-visible,.form-group textarea:focus-visible,.form-group select:focus-visible{border-color:var(--c-accent);background:#1b1b1b;outline:2px solid transparent}
.form-group select{appearance:none;-webkit-appearance:none;padding-right:44px;cursor:pointer;color-scheme:dark}
.form-group--select{position:relative}
.form-group--select::after{content:"";position:absolute;right:19px;bottom:22px;width:8px;height:8px;border-right:1.5px solid #fff;border-bottom:1.5px solid #fff;transform:rotate(45deg);pointer-events:none}
.form-group select:invalid{color:rgba(255,255,255,.65)}
.form-group select option{background:#161616;color:#fff}
@media(max-width:600px){.hero__payment-note{max-width:90%;padding:10px 12px}}
/* La certificación ocupa un momento propio, sin usar un sello reproducido. */
.proof{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(3rem,8vw,9rem);padding:clamp(5rem,10vw,10rem) var(--pad-x);background:#141414;align-items:center}
.proof__intro h2{max-width:10ch;font-size:clamp(3.1rem,7.7vw,8rem);font-weight:900;letter-spacing:-.065em;line-height:.94}
.proof__intro p{max-width:430px;margin-top:2rem;color:rgba(255,255,255,.64);font-size:.9rem;line-height:1.75}
.proof__levels{display:grid;gap:8px}
.proof__level{display:flex;flex-direction:column;align-items:flex-start;gap:.42rem;min-width:0;padding:1.3rem clamp(1rem,2.5vw,2.2rem);background:#1c1c1c;transition:background-color .3s,transform .3s}
.proof__level:hover,.proof__level:focus-visible{background:#222222;transform:translateX(6px)}
.proof__model{font-size:.6rem;font-weight:800;letter-spacing:.18em;color:var(--c-accent)}
.proof__level strong{font-size:clamp(1.5rem,2.4vw,2.5rem);font-weight:900;letter-spacing:-.045em;line-height:1.1}
.proof__use{font-size:.7rem;color:rgba(255,255,255,.57)}
/* Cambio de color por entrada y una placa sólida que acompaña el scroll. */
.test-proof{position:relative;isolation:isolate;overflow:hidden;min-height:70vh;padding:clamp(5rem,8vw,9rem) var(--pad-x);background:#7B0012;transition:background-color .9s var(--ease)}
.test-proof.in-view{background:#C0001C}
.test-proof::before{content:"";position:absolute;inset:-10% auto -10% 52%;width:22%;background:rgba(0,0,0,.08);transform:translate3d(var(--test-shift,0px),0,0) skewX(-12deg);pointer-events:none}
.test-proof__content{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:clamp(2.5rem,9vw,10rem);align-items:center}
.test-proof__lead h2{max-width:11ch;font-size:clamp(3.1rem,7vw,7.5rem);font-weight:900;line-height:.95;letter-spacing:-.06em}
.test-proof__lead p{max-width:460px;margin:2rem 0 1.7rem;font-size:.86rem;line-height:1.75;color:rgba(255,255,255,.85)}
.test-proof__link{display:inline-block;padding:.9rem 1.2rem;background:#fff;color:#151515;font-size:.69rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;transition:background-color .2s,transform .2s}
.test-proof__link:hover{background:#EAEAEA;transform:translateY(-2px)}
.test-proof__data h3{font-size:1.2rem;font-weight:900;letter-spacing:-.03em;margin-bottom:1.7rem}
.test-proof__data ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem 2rem}
.test-proof__data li{font-size:clamp(.85rem,1.2vw,1.1rem);font-weight:700;line-height:1.3}
.test-proof__data p{max-width:350px;margin-top:2.5rem;color:rgba(255,255,255,.77);font-size:.72rem;line-height:1.6}
.product-cert{display:flex;flex-direction:column;align-items:flex-start;gap:.3rem;padding:1.05rem 1.2rem;background:#1b1b1b;max-width:max-content}
.product-cert span{color:var(--c-accent);font-size:.6rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.product-cert strong{font-size:clamp(1.2rem,2vw,1.8rem);font-weight:900;letter-spacing:-.035em}
.product-cert small{font-size:.65rem;color:var(--c-muted)}
@media(max-width:900px){.proof{grid-template-columns:1fr;gap:3rem}.proof__intro h2{max-width:14ch}.proof__levels{grid-template-columns:repeat(3,minmax(0,1fr))}.proof__level{padding:1.2rem}.proof__level strong{font-size:1.4rem}.test-proof__content{gap:2.5rem}}
@media(max-width:700px){.proof{padding:5rem var(--pad-x)}.proof__intro h2{font-size:clamp(2.8rem,12vw,5rem)}.proof__levels{grid-template-columns:1fr}.proof__level{padding:1.2rem 1.4rem}.proof__level strong{font-size:1.7rem}.test-proof{min-height:0;padding:5rem var(--pad-x)}.test-proof__content{grid-template-columns:1fr;gap:3rem}.test-proof__lead h2{font-size:clamp(2.8rem,11vw,5rem)}.test-proof__data ul{gap:1rem 1.2rem}.test-proof::before{left:65%;width:36%}}
@media(prefers-reduced-motion:reduce){.test-proof{background:#C0001C;transition:none}.test-proof::before{transform:skewX(-12deg)}.proof__level{transition:none}}
/* Reserva el tamaño de los distintivos sin dibujar ni imitar marcas oficiales. */
.cert-logo-slot{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:.3rem;width:min(100%,230px);min-height:70px;margin:.35rem 0;padding:12px 15px;border:1px solid rgba(255,255,255,.24);background:#141414;color:#fff;line-height:1.3}
.cert-logo-slot>span{font-size:.64rem;font-weight:900;letter-spacing:.1em;color:var(--c-accent)}
.cert-logo-slot small{font-size:.56rem;font-weight:700;letter-spacing:.07em;color:rgba(255,255,255,.58)}
.cert-logo-slot--ready{border:0;background:transparent;padding:0}
.cert-logo-slot--ready img{display:block;max-width:100%;max-height:70px;width:auto;height:auto;object-fit:contain}
.product-cert .cert-logo-slot{margin-top:.75rem;margin-bottom:0;background:#141414}
.product-cert .cert-logo-slot--ready{background:transparent}
/* La marca Forward queda reservada junto al catálogo. */
.lineup__intro{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:1.5rem 2.5rem;margin-bottom:3rem}
.lineup__intro .lineup__heading{margin:0;max-width:650px}
.forward-logo-slot{display:flex;flex-direction:column;justify-content:center;gap:.25rem;flex:0 0 210px;min-height:76px;padding:14px 18px;background:#191919;border:1px solid rgba(255,255,255,.21)}
.forward-logo-slot>span{font-size:.65rem;font-weight:900;letter-spacing:.11em;color:var(--c-accent)}
.forward-logo-slot small{font-size:.62rem;font-weight:700;letter-spacing:.1em;color:rgba(255,255,255,.7)}
.forward-logo-slot--ready{padding:0;border:0;background:transparent}
.forward-logo-slot--ready img{max-width:100%;max-height:76px;width:auto;height:auto;object-fit:contain}
/* La selección aporta un cambio discreto y ayuda a leer cada columna. */
.compare__models{display:flex;flex-wrap:wrap;gap:7px;margin:-.8rem 0 2rem}
.compare__model{min-height:44px;padding:0 1.3rem;border:0;background:#252525;color:#fff;font:800 .68rem var(--font);letter-spacing:.1em;cursor:pointer;transition:background-color .25s,color .25s}
.compare__model:hover{background:#363636}
.compare__model[aria-pressed="true"],.compare__model[aria-pressed="true"]:hover{background:var(--c-accent);color:#fff}
.compare th.is-selected,.compare td.is-selected{background:rgba(206,0,30,.16);color:#fff;transition:background-color .25s}
@media(max-width:700px){.lineup__intro{align-items:flex-start;gap:1.5rem;margin-bottom:2rem}.forward-logo-slot{flex-basis:190px}.compare__models{margin:-.4rem 0 1.5rem}}
@media(prefers-reduced-motion:reduce){.compare__model,.compare th.is-selected,.compare td.is-selected{transition:none}}


/* ================ KAIZEN / RE-LANZAMIENTO SEPTIEMBRE 2026 ================
   Alternancia editorial: marfil / blanco cálido / rojo / carbón, nunca negro o blanco puro.
   Los componentes oscuros conservan la paleta base, y los claros ajustan el contraste.
*/
:root{--kaizen-cream:#F4F4F4;--kaizen-white:#F8F8F8;--kaizen-ink:#141414;--kaizen-ink-soft:#595959;--kaizen-graphite:#141414;--kaizen-red:#CE001E;--c-accent:#CE001E}
body.kaizen-relaunch{background:var(--kaizen-cream);color:#F3F3F3}
.nav{background:rgba(33,33,33,.97);border-bottom-color:rgba(246,246,246,.10)}
.nav__link{color:#D1D1D1}.nav__link:hover{color:#F3F3F3}
.nav__buy,.nav__cart,.nav__toggle{color:#F4F4F4}
.btn--light{background:var(--kaizen-white);color:var(--kaizen-ink)}
.btn--light:hover{background:#E4E4E4}
.hero{background:var(--kaizen-graphite)}
.hero__bg--triptych{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));height:100%;width:100%;overflow:hidden;background:#1F1F1F}
.hero__bg--triptych::before{display:none}
.hero__bg--triptych .hero__ball{width:100%;height:100%;object-fit:cover;object-position:center;min-width:0;filter:saturate(.95);border-right:1px solid rgba(248,248,248,.10)}
.hero-slide:first-child .hero__overlay{background:linear-gradient(0deg,rgba(24,24,24,.9) 0%,rgba(28,28,28,.33) 56%,rgba(25,25,25,.2) 100%)}
.hero__bg--empty{background:linear-gradient(140deg,#252525,#2E2E2E)}
.hero__payment-note{background:rgba(31,31,31,.78)}
/* Primer bloque claro */
.proof{background:var(--kaizen-cream);color:var(--kaizen-ink)}
.proof .section-label,.lineup .section-label,.compare .section-label,.contact .section-label{color:var(--kaizen-red)}
.proof__intro p,.proof__intro .muted{color:var(--kaizen-ink-soft)}
.proof__level{background:var(--kaizen-white);color:var(--kaizen-ink);border:1px solid #E2E2E2}
.proof__level:hover,.proof__level:focus-visible{background:#E3E3E3}
.proof__level small,.proof__level p,.proof__intro small{color:var(--kaizen-ink-soft)}
.proof__level strong{color:var(--kaizen-ink)}
/* Colección, tres modelos con precio de lanzamiento UYU */
.lineup{background:var(--kaizen-white);color:var(--kaizen-ink);border-top:1px solid #DFDFDF}
.lineup__grid{background:#DFDFDF}
.lineup__item{background:var(--kaizen-white);color:var(--kaizen-ink)}
.lineup__text p,.lineup .muted{color:var(--kaizen-ink-soft)}
.lineup__visual{background:#2A2A2A}
.lineup__links a{border-color:rgba(35,35,35,.5)}
.lineup .price-block,.lineup .price-block--compact{border-color:#D5D5D5}
.lineup .price-block__amount{color:var(--kaizen-ink)}
.lineup .price-block__label,.lineup .price-block__old{color:var(--kaizen-ink-soft)}
.lineup .price-block__saving{color:#9C0017}
/* Comparativa: superficie clara contrastada con la sección de color que sigue */
.compare,.compare.in-view{background:var(--kaizen-cream);color:var(--kaizen-ink);border-top:1px solid #D8D8D8}
.compare th,.compare td{border-color:#D2D2D2}
.compare tbody th{color:var(--kaizen-ink-soft)}
.compare__model{background:#D8D8D8;color:var(--kaizen-ink)}
.compare__model:hover{background:#C6C6C6}
.compare th.is-selected,.compare td.is-selected{background:rgba(206,0,30,.085);color:var(--kaizen-ink)}
.compare .muted,.compare p{color:var(--kaizen-ink-soft)}
/* Bloque rojo no-negro y cierre alternado */
.test-proof,.test-proof.in-view{background:#C2001C;color:#F8F8F8}
.test-proof__link{background:var(--kaizen-white);color:var(--kaizen-ink)}
.stage#bolsa,.stage#bolsa.in-view{background:#252525;color:#F2F2F2}
.stage#bolsa .stage__desc,.stage#bolsa .stage__footnote{color:#BBBBBB}
.stage#bolsa .media-empty{background:#363636}
.stage#bolsa .stage__name,.stage#bolsa .stage__spec-val,.stage#bolsa .stage__price{color:#F4F4F4}
.cta-final{background-color:#292929}
/* Contacto final claro */
.contact,.contact.in-view{background:var(--kaizen-white);color:var(--kaizen-ink);border-top:1px solid #D7D7D7}
.contact__note,.contact__address,.contact__social-link,.contact__form-intro,.contact__status{color:var(--kaizen-ink-soft)}
.contact__social-link:hover{color:var(--kaizen-red)}
.contact .form-group{border-bottom-color:#E1E1E1}
.contact .form-group label{color:#646464}
.contact .form-group input,.contact .form-group textarea,.contact .form-group select{background:#EFEFEF;color:var(--kaizen-ink);border-color:#D0D0D0}
.contact .form-group select option{background:var(--kaizen-white);color:var(--kaizen-ink)}
.contact .form-group input:focus-visible,.contact .form-group textarea:focus-visible,.contact .form-group select:focus-visible{background:#FBFBFB}
.contact .form-group--select::after{border-color:#3F3F3F}
.contact .btn--outline{color:var(--kaizen-ink);border-color:#6C6C6C}
.contact__status[data-state="success"]{color:#24703b}
.contact__status[data-state="error"]{color:#A40018}
.footer{background:var(--kaizen-graphite);color:#EAEAEA}
/* Fichas interiores: artículo claro, detalles carbón, galería con ritmo */
.page--product .breadcrumbs{background:var(--kaizen-white);color:var(--kaizen-ink-soft);border-color:#DCDCDC}
.page--product .stage,.page--product .stage.in-view{background:var(--kaizen-cream);color:var(--kaizen-ink)}
.page--product .stage__media{background:#272727}
.page--product .stage__name,.page--product .stage__spec-val,.page--product .stage__price,.page--product .price-block__amount{color:var(--kaizen-ink)}
.page--product .stage__desc,.page--product .stage__brand,.page--product .stage__footnote,.page--product .stage__spec-key,.page--product .price-block__label,.page--product .price-block__old{color:var(--kaizen-ink-soft)}
.page--product .price-block__saving{color:#A80019}
.page--product .stage__specs{border-color:#D0D0D0}
.page--product .stage__sep{background:#D0D0D0}
.page--product .stage__spec{border-color:#D0D0D0}
.page--product .stage__actions .btn--outline{color:var(--kaizen-ink);border-color:#A2A2A2}
.page--product .spec-section{background:var(--kaizen-graphite);color:#F4F4F4}
.page--product .spec-section p,.page--product .spec-section dt{color:#C3C3C3}
.page--product .spec-section dl,.page--product .spec-section dl div{border-color:#4B4B4B}
.page--product .product-gallery{background:var(--kaizen-white);color:var(--kaizen-ink);padding:6rem var(--pad-x)}
.product-gallery__heading h2{font-size:clamp(2rem,4vw,4.3rem);letter-spacing:-.045em;line-height:.95;margin:.8rem 0 2.2rem}
.product-gallery__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.product-gallery__grid img{width:100%;aspect-ratio:3/4;object-fit:cover;background:#222;min-width:0}
.product-gallery__grid .zoom-trigger{display:block;width:100%;height:100%;background:#272727;border:0;min-width:0}
.product-gallery__grid .zoom-trigger img{width:100%;height:100%;object-fit:cover}
/* Resumen del carrito: transparentar el precio anterior y la suma ahorrada */
.cart-dialog{background:var(--kaizen-white);color:var(--kaizen-ink);box-shadow:-16px 0 55px rgba(20,20,20,.32)}
.cart-dialog::backdrop{background:rgba(24,24,24,.68)}
.cart-dialog__head,.cart-item,.cart-dialog__payment{border-color:#D9D9D9}
.cart-dialog__close{color:var(--kaizen-ink);border-color:#909090}
.cart-empty,.cart-dialog__summary>p,.cart-dialog__payment small{color:var(--kaizen-ink-soft)}
.cart-item__controls button{border-color:#D2D2D2;color:var(--kaizen-ink)}
.cart-item__controls button:hover{border-color:var(--kaizen-red)}
.cart-item__controls button:last-child{border-color:#838383;color:var(--kaizen-ink-soft)}
.cart-dialog__pending:disabled{color:var(--kaizen-ink);border-color:#D9D9D9}
.cart-dialog__listprice,.cart-dialog__saving{display:flex;justify-content:space-between;gap:1rem;padding:.68rem 0;font-size:.79rem;border-bottom:1px solid #DDDDDD}
.cart-dialog__listprice{color:var(--kaizen-ink-soft)}
.cart-dialog__listprice strong{font-variant-numeric:tabular-nums}
.cart-dialog__saving{color:#C2001C;font-weight:800;letter-spacing:.025em}
.cart-dialog__saving strong{font-size:1.23rem;font-variant-numeric:tabular-nums}
.cart-dialog__total--final{padding:1.1rem 0 .5rem;color:var(--kaizen-ink)}
.cart-dialog__total--final strong{color:var(--kaizen-red)}
/* Menú celular: jerarquía logo/carrito/menú en una sola fila; opciones grandes. */
@media(max-width:900px){
  .nav{display:flex;flex-wrap:nowrap;justify-content:flex-start;align-items:center;gap:0;padding:0 4%;}
  .nav__logo{order:0;flex:0 1 auto;min-width:0;max-width:50%;margin-right:auto}
  .nav__logo img{max-width:100%;height:auto;max-height:27px;object-fit:contain}
  .nav__actions{order:1;display:flex;margin:0 7px 0 0;gap:8px;flex:0 0 auto}
  .nav__buy{display:none}
  .nav__cart{padding:12px 7px;min-height:44px;white-space:nowrap}
  .nav__toggle{order:2;display:block;flex:0 0 auto;min-width:78px;min-height:44px;padding:8px 10px;border:1px solid #676767;text-align:center;font-size:.69rem;letter-spacing:.02em;color:#F4F4F4}
  .nav>nav{order:3}
  .nav__links{position:fixed;z-index:120;top:var(--nav-h);left:0;right:0;bottom:auto;max-height:calc(100dvh - var(--nav-h));overflow-y:auto;display:none;flex-direction:column;gap:0;padding:10px 5% 22px;background:rgba(35,35,35,.99);border-top:2px solid var(--kaizen-red);box-shadow:0 20px 45px rgba(0,0,0,.32)}
  .nav__links.is-open{display:flex}
  .nav__links li+li{border-top:1px solid rgba(245,245,245,.15)}
  .nav__links li a{display:flex;align-items:center;min-height:62px;padding:16px 8px;font-size:1rem;letter-spacing:.035em;color:#F2F2F2}
  .nav__links li a:hover,.nav__links li a:focus-visible{color:#FF6D82}
  .product-gallery__grid{gap:8px}
}
@media(max-width:600px){
 .hero__bg--triptych{grid-template-columns:repeat(3,minmax(0,1fr))}
 .hero__bg--triptych .hero__ball{object-position:center}
 .hero-slide:first-child .hero__overlay{background:linear-gradient(to top,rgba(26,26,26,.95),rgba(26,26,26,.42) 69%,rgba(26,26,26,.15))}
 .nav__logo{max-width:46%}
 .nav__actions{margin-right:5px}
 .nav__cart{font-size:.63rem;padding:10px 3px}
 .nav__toggle{min-width:66px;padding:8px 5px}
 .proof,.lineup,.compare,.contact{overflow:hidden}
 .page--product .product-gallery{padding:4rem var(--pad-x)}
 .product-gallery__grid{grid-template-columns:1fr;gap:12px}
 .product-gallery__grid img{aspect-ratio:4/5}
}
@media(prefers-reduced-motion:reduce){.hero__bg--triptych .hero__ball{filter:none}}


/* ===== PREMIUM DETAIL PASS · 2026-09-26 ===== */
/* Ajustes finos: tarjeta de certificación y breadcrumbs de producto */
.page--product .breadcrumbs{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:.38rem;
  padding:1.05rem var(--pad-x) 1.2rem;
  background:linear-gradient(180deg,#F9F9F9 0%,#EDEDED 100%);
  border-bottom:1px solid #D6D6D6;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55);
  font-size:.72rem;
  line-height:1.55;
  letter-spacing:.015em;
}
.page--product .breadcrumbs::before{
  content:"";
  width:34px;
  height:2px;
  margin-right:.35rem;
  background:var(--kaizen-red);
  border-radius:999px;
  flex:0 0 auto;
}
.page--product .breadcrumbs a{
  color:var(--kaizen-ink);
  font-weight:600;
  text-decoration:none;
  border-bottom:1px solid rgba(35,35,35,.18);
  transition:color .2s ease,border-color .2s ease;
}
.page--product .breadcrumbs a:hover,
.page--product .breadcrumbs a:focus-visible{
  color:var(--kaizen-red);
  border-color:rgba(206,0,30,.42);
}

.page--product .product-cert{
  position:relative;
  gap:.38rem;
  width:min(100%,430px);
  max-width:100%;
  padding:1.2rem 1.25rem 1.15rem;
  background:linear-gradient(145deg,#1E1E1E 0%,#272727 100%);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 14px 36px rgba(20,20,20,.16);
  overflow:hidden;
}
.page--product .product-cert::after{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:4px;
  background:linear-gradient(180deg,#FF314F 0%,#B4001A 100%);
}
.page--product .product-cert > span:first-child{
  color:#FF2F4D;
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.16em;
}
.page--product .product-cert strong{
  color:#F8F8F8;
  font-size:clamp(1.28rem,2vw,1.95rem);
  line-height:1.05;
  text-shadow:0 1px 0 rgba(0,0,0,.15);
}
.page--product .product-cert small{
  color:#D6D6D6;
  font-size:.72rem;
  letter-spacing:.02em;
}
.page--product .product-cert .cert-logo-slot{
  margin-top:.95rem;
  padding:.7rem .8rem;
  min-height:0;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.12);
  border-radius:2px;
}
.page--product .product-cert .cert-logo-slot--ready{
  background:#F4F4F4;
  border-color:#DFDFDF;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
}
.page--product .product-cert .cert-logo-slot--ready img{
  max-height:78px;
}

@media(max-width:700px){
  .page--product .breadcrumbs{
    padding:.9rem var(--pad-x) 1rem;
    font-size:.68rem;
    gap:.28rem;
  }
  .page--product .breadcrumbs::before{width:24px;margin-right:.2rem}
  .page--product .product-cert{
    width:100%;
    padding:1.05rem 1rem 1rem;
  }
  .page--product .product-cert strong{font-size:clamp(1.15rem,6vw,1.55rem)}
}


/* ===== FORWARD BRAND ASSETS PASS · 2026-09-26 ===== */
.hero__brandmark{display:block;max-width:210px;margin:0 0 1.1rem}
.hero__brandmark img{display:block;width:100%;height:auto;object-fit:contain;filter:drop-shadow(0 8px 24px rgba(0,0,0,.18))}
.forward-logo-slot{display:flex;align-items:center;justify-content:center;flex:0 0 230px;min-height:84px;padding:16px 20px;border-radius:2px}
.forward-logo-slot--ready{padding:0;border:0;background:transparent}
.forward-logo-slot img{display:block;width:100%;height:auto;object-fit:contain}
.forward-logo-slot--lightbg{max-width:230px}
.forward-logo-slot--lightbg img{filter:none}
@media(max-width:900px){.hero__brandmark{max-width:180px;margin-bottom:.9rem}.forward-logo-slot{flex-basis:200px;min-height:72px}}
@media(max-width:700px){.lineup__intro{align-items:flex-start}.forward-logo-slot{flex-basis:180px;max-width:180px;min-height:0}.hero__brandmark{max-width:155px;margin-bottom:.75rem}}


/* ===== FINAL / BRAND, ACCESSIBILITY AND SOCIAL ===== */
:root{--kaizen-emerald:#148978}
body.kaizen-relaunch .whatsapp-float--outline,
body.kaizen-relaunch .whatsapp-float--outline:hover{
  position:fixed;z-index:115;right:clamp(16px,2.2vw,30px);
  bottom:max(18px,env(safe-area-inset-bottom));
  width:60px;height:60px;padding:0;margin:0;
  display:flex;justify-content:center;align-items:center;gap:0;
  border-radius:50%;border:1px solid rgba(255,255,255,.60);
  background:var(--kaizen-emerald);
  box-shadow:0 6px 23px rgba(3,45,39,.23),0 0 0 4px rgba(255,255,255,.7);
  color:#fff;overflow:visible;
  transition:transform .22s ease,background .22s ease,box-shadow .22s ease;
}
body.kaizen-relaunch .whatsapp-float--outline img{
  width:33px;height:33px;object-fit:contain;transform:none;flex:0 0 33px;
  filter:none;transition:none;
}
body.kaizen-relaunch .whatsapp-float--outline:hover{
  background:#0f7264;transform:translateY(-3px);
  box-shadow:0 11px 32px rgba(3,45,39,.30),0 0 0 4px rgba(255,255,255,.7);
}
body.kaizen-relaunch .whatsapp-float--outline:hover img{transform:none}
.whatsapp-float__tooltip{
  position:absolute;right:72px;top:50%;transform:translateY(-50%);
  white-space:nowrap;padding:9px 12px;
  font:700 .7rem var(--font);color:#F6F6F6;
  background:#262626;border-radius:4px;
  opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;
  pointer-events:none;letter-spacing:.02em;
}
.whatsapp-float--outline:hover .whatsapp-float__tooltip,
.whatsapp-float--outline:focus-visible .whatsapp-float__tooltip{opacity:1;visibility:visible}
.contact__social-actions{display:flex;align-items:stretch;flex-wrap:wrap;gap:12px;margin-top:1.6rem}
.contact__social-actions .btn--wa{margin:0;min-height:52px;padding:1rem 1.3rem;background:#187a6b;color:#fff}
.contact__social-actions .btn--wa:hover{background:#106c5f}
.contact__instagram-link{display:inline-flex;align-items:center;gap:10px;min-height:52px;padding:0 18px;
  color:#F7F7F7;background:#252525;border:1px solid #252525;
  font-size:.77rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;
  transition:background .22s,transform .22s,border-color .22s}
.contact__instagram-link:hover{background:#404040;transform:translateY(-2px)}
.contact__instagram-link img{width:20px;height:20px;flex:0 0 auto}
.contact__external{font-size:1rem;line-height:1;margin-left:.3rem;font-weight:500;opacity:.8}
.footer__instagram-link{display:inline-flex;align-items:center;gap:9px;color:#F7F7F7;font-size:.72rem;font-weight:700;
  padding:10px 11px;border:1px solid rgba(247,247,247,.35);border-radius:4px;
  transition:border-color .2s,background .2s,color .2s}
.footer__instagram-link:hover{border-color:#EBEBEB;background:rgba(255,255,255,.09)}
.footer__instagram-link img{width:17px;height:17px;flex-shrink:0}
.footer__instagram-link span{opacity:1}
.footer__inner{gap:clamp(8px,1.2vw,20px);min-height:90px}
/* Consistent focus for icon-only links and interactive objects */
a:focus-visible,button:focus-visible,.zoom-trigger:focus-visible{outline:3px solid #CE001E;outline-offset:3px}
@media(max-width:900px){
  .footer__inner{justify-content:center;gap:8px 12px}
  .footer__instagram-link{order:2}
  .footer__credit{order:3;margin-top:0}
}
@media(max-width:600px){
  body.kaizen-relaunch .whatsapp-float--outline,body.kaizen-relaunch .whatsapp-float--outline:hover{
    right:18px;bottom:max(18px,env(safe-area-inset-bottom));width:56px;height:56px;
  }
  .whatsapp-float__tooltip{display:none}
  .contact__social-actions{flex-direction:column;align-items:stretch}
  .contact__social-actions .btn--wa,.contact__instagram-link{width:100%;justify-content:center}
  .footer__instagram-link{margin:.25rem 0}
}
@media(prefers-reduced-motion:reduce){
  body.kaizen-relaunch .whatsapp-float--outline,body.kaizen-relaunch .whatsapp-float--outline:hover,
  .whatsapp-float__tooltip,.contact__instagram-link,.footer__instagram-link{transition:none;transform:none}
}

/* FINAL: Instagram oficial visible también en pantallas estrechas */
.contact__instagram-link{max-width:100%;white-space:normal;line-height:1.3}
.contact__instagram-link span:not(.contact__external){overflow-wrap:anywhere}
.footer__instagram-link{max-width:100%;white-space:normal;line-height:1.35}
.footer__instagram-link span:first-of-type{overflow-wrap:anywhere}
@media(max-width:360px){.contact__instagram-link{padding:12px}.footer__instagram-link{font-size:.68rem}}


/* ===== HOTFIX · CONTRASTE CARRITO + WHATSAPP ROJO ===== */
.lineup .btn--outline,
.lineup .cart-add{
  color:var(--kaizen-ink);
  border-color:#828282;
  background:transparent;
}
.lineup .btn--outline:hover,
.lineup .lineup__item .btn--outline:hover,
.lineup .cart-add:hover,
.lineup .cart-add:focus-visible{
  color:#fff;
  background:var(--kaizen-red);
  border-color:var(--kaizen-red);
}
.lineup .cart-add{
  font-weight:800;
  letter-spacing:.04em;
}

:root{--kaizen-wa-red:#CE001E;--kaizen-wa-red-hover:#C2001C}
body.kaizen-relaunch .whatsapp-float--outline,
body.kaizen-relaunch .whatsapp-float--outline:hover{
  background:var(--kaizen-wa-red);
  border:1px solid rgba(255,255,255,.72);
  box-shadow:0 8px 24px rgba(111,0,16,.26),0 0 0 4px rgba(255,255,255,.72);
}
body.kaizen-relaunch .whatsapp-float--outline:hover,
body.kaizen-relaunch .whatsapp-float--outline:focus-visible{
  background:var(--kaizen-wa-red-hover);
  box-shadow:0 12px 34px rgba(111,0,16,.34),0 0 0 4px rgba(255,255,255,.76);
}

/* Visor de producto: controles fijos, imagen contenida y desplazamiento al ampliar. */
.zoom-dialog{width:min(96vw,1500px);height:min(94dvh,1000px);display:none;grid-template-rows:58px minmax(0,1fr) 38px;overflow:hidden;border:1px solid rgba(255,255,255,.2);background:#141414;color:#fff}
.zoom-dialog[open]{display:grid}
.zoom-dialog__bar{height:58px;border-color:rgba(255,255,255,.14)}
.zoom-dialog__title{min-width:0}
.zoom-dialog__tools .zoom-close{display:flex;align-items:center;gap:9px;white-space:nowrap}
.zoom-dialog__tools .zoom-close span{font-size:1.5rem;font-weight:400;line-height:1}
.zoom-dialog__body{position:relative;min-height:0;display:grid;grid-template-columns:52px minmax(0,1fr) 52px;align-items:stretch}
.zoom-dialog__viewport{height:auto;min-height:0;min-width:0;overflow:hidden;touch-action:none;cursor:zoom-in;user-select:none}
.zoom-dialog__viewport.is-zoomed{cursor:grab}
.zoom-dialog__viewport.is-zoomed:active{cursor:grabbing}
.zoom-dialog__viewport img{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;pointer-events:none;user-select:none;transition:none}
.zoom-dialog__body>.zoom-prev,.zoom-dialog__body>.zoom-next{z-index:1;align-self:center;width:44px;height:58px;border:0;background:rgba(255,255,255,.08);color:#fff;font-size:2.4rem;line-height:1;cursor:pointer}
.zoom-dialog__body>.zoom-prev:hover,.zoom-dialog__body>.zoom-next:hover{background:rgba(255,255,255,.2)}
.zoom-dialog__body>.zoom-prev[hidden],.zoom-dialog__body>.zoom-next[hidden]{visibility:hidden}
.zoom-dialog__count{text-align:center;align-self:center;font-size:.7rem;letter-spacing:.12em;color:#bbb}
@media(max-width:600px){.zoom-dialog{width:100vw;height:100dvh;grid-template-rows:54px minmax(0,1fr) 34px;border:0}.zoom-dialog__bar{height:54px}.zoom-dialog__body{grid-template-columns:36px minmax(0,1fr) 36px}.zoom-dialog__body>.zoom-prev,.zoom-dialog__body>.zoom-next{width:36px;height:52px;background:rgba(255,255,255,.1);font-size:2rem}.zoom-dialog__title{max-width:38%;font-size:.62rem}.zoom-dialog__tools button{min-width:34px}.zoom-dialog__tools .zoom-close{padding:0 3px;font-size:.6rem}}

/* Ajustes de catálogo: acciones claras y distintivos sin placa sobrante. */
body.kaizen-relaunch button[data-add-product]{
  color:#fff;
  background:#CE001E;
  border:1px solid #CE001E;
  font-weight:800;
  letter-spacing:.055em;
  box-shadow:0 6px 14px rgba(115,0,17,.14);
  transition:background-color .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease;
}
body.kaizen-relaunch button[data-add-product]:hover,
body.kaizen-relaunch button[data-add-product]:focus-visible{
  color:#fff;
  background:#BA001B;
  border-color:#BA001B;
  transform:translateY(-2px);
  box-shadow:0 10px 20px rgba(115,0,17,.2);
}
body.kaizen-relaunch .product-cert .cert-logo-slot--ready,
body.kaizen-relaunch .page--product .product-cert .cert-logo-slot--ready{
  display:inline-flex;
  width:max-content;
  max-width:100%;
  min-height:0;
  padding:0;
  margin-top:.75rem;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
body.kaizen-relaunch .product-cert .cert-logo-slot--ready img{
  display:block;
  width:auto;
  height:76px;
  max-width:100%;
  max-height:76px;
  object-fit:contain;
}
body.kaizen-relaunch .whatsapp-float--outline,
body.kaizen-relaunch .whatsapp-float--outline:hover{
  background:#25d366;
  border-color:rgba(255,255,255,.72);
  box-shadow:0 8px 24px rgba(9,95,49,.22),0 0 0 4px rgba(255,255,255,.72);
}
body.kaizen-relaunch .whatsapp-float--outline:hover,
body.kaizen-relaunch .whatsapp-float--outline:focus-visible{
  background:#1cae52;
  box-shadow:0 12px 30px rgba(9,95,49,.3),0 0 0 4px rgba(255,255,255,.76);
}
@media(prefers-reduced-motion:reduce){body.kaizen-relaunch button[data-add-product]{transition:none}body.kaizen-relaunch button[data-add-product]:hover{transform:none}}
body.kaizen-relaunch .page--product .stage__actions button[data-add-product],
body.kaizen-relaunch.page--product .stage__actions button[data-add-product]{color:#fff;border-color:#CE001E;background:#CE001E}
body.kaizen-relaunch .lineup .lineup__item button[data-add-product]:hover,
body.kaizen-relaunch.page--product .stage__actions button[data-add-product]:hover,
body.kaizen-relaunch.page--product .stage__actions button[data-add-product]:focus-visible{color:#fff;border-color:#BA001B;background:#BA001B}

/* Fichas: fotografías justo después de la imagen principal; textos FIFA a continuación del sello. */
body.kaizen-relaunch.page--product .product-gallery{padding:clamp(2rem,4vw,4rem) var(--pad-x);border-top:1px solid #DFDFDF}
body.kaizen-relaunch.page--product .product-gallery__grid{align-items:stretch}
body.kaizen-relaunch.page--product .product-gallery__grid img{display:block;aspect-ratio:4/3;object-fit:cover}
body.kaizen-relaunch.page--product .product-gallery__grid .zoom-trigger{overflow:hidden;cursor:zoom-in}
body.kaizen-relaunch.page--product .product-gallery__grid .zoom-trigger img{aspect-ratio:4/3}
body.kaizen-relaunch.page--product .product-cert__explain{font-size:.79rem;line-height:1.55;color:#DEDEDE;max-width:37ch;margin:.75rem 0 0;letter-spacing:0;font-weight:450;text-transform:none}
body.kaizen-relaunch.page--product .product-gallery--pending{padding-block:clamp(1.5rem,3vw,3rem)}
body.kaizen-relaunch.page--product .product-gallery__pending{min-height:210px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center;border:1px dashed #B2B2B2;background:#F2F2F2}
body.kaizen-relaunch.page--product .product-gallery__pending-line{display:block;width:28px;height:2px;background:#CE001E;margin-bottom:1.1rem}
body.kaizen-relaunch.page--product .product-gallery__pending p{font-size:clamp(1rem,2vw,1.35rem);font-weight:800;letter-spacing:-.025em;color:#2B2B2B;margin:0 0 .4rem}
body.kaizen-relaunch.page--product .product-gallery__pending>span:last-child{font-size:.76rem;line-height:1.5;color:#606060}
@media(max-width:700px){body.kaizen-relaunch.page--product .product-gallery__grid img,body.kaizen-relaunch.page--product .product-gallery__grid .zoom-trigger img{aspect-ratio:4/3}body.kaizen-relaunch.page--product .product-gallery__pending{min-height:170px}}


/* ===== VISIBILITY FIX · 2026-09-27 ===== */
/* En la sección de certificaciones del home, el texto de uso no puede quedar claro sobre fondo claro. */
body.kaizen-relaunch .proof__use{
  color:var(--kaizen-ink-soft);
  line-height:1.5;
  font-weight:600;
}
body.kaizen-relaunch .proof__level{
  box-shadow:0 1px 0 rgba(35,35,35,.03);
}


/* ===== CLEANUP + FIFA EXPLANATION PASS · 2026-09-27 ===== */
/* No se usan indicadores de salida ni flechas decorativas en Instagram. */
.contact__external{display:none !important}

/* Home certificaciones: explicación breve y clara de cada sello. */
body.kaizen-relaunch .proof{
  row-gap:clamp(2.5rem,5vw,4rem);
}
body.kaizen-relaunch .proof__footer{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(280px,.9fr);
  gap:16px;
  align-items:stretch;
}
body.kaizen-relaunch .proof__explain{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
body.kaizen-relaunch .proof__explain-card,
body.kaizen-relaunch .proof__official{
  background:var(--kaizen-white);
  border:1px solid #E2E2E2;
  padding:1.35rem 1.4rem 1.45rem;
}
body.kaizen-relaunch .proof__explain-kicker{
  display:block;
  color:var(--kaizen-red);
  font-size:.64rem;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
  margin-bottom:.6rem;
}
body.kaizen-relaunch .proof__explain-card h3,
body.kaizen-relaunch .proof__official strong{
  color:var(--kaizen-ink);
}
body.kaizen-relaunch .proof__explain-card h3{
  font-size:clamp(1.05rem,1.6vw,1.28rem);
  line-height:1.18;
  letter-spacing:-.025em;
  margin:0 0 .75rem;
  font-weight:900;
}
body.kaizen-relaunch .proof__explain-card p,
body.kaizen-relaunch .proof__official p{
  color:var(--kaizen-ink-soft);
  font-size:.82rem;
  line-height:1.7;
  margin:0;
}
body.kaizen-relaunch .proof__official{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:1rem;
}
body.kaizen-relaunch .proof__official-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  width:100%;
  border:1px solid #C6C6C6;
  color:var(--kaizen-ink);
  background:#F3F3F3;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  text-decoration:none;
  transition:background-color .2s ease,border-color .2s ease,color .2s ease;
}
body.kaizen-relaunch .proof__official-link:hover,
body.kaizen-relaunch .proof__official-link:focus-visible{
  background:#E6E6E6;
  border-color:#B4B4B4;
  color:var(--kaizen-red);
}
@media(max-width:900px){
  body.kaizen-relaunch .proof__footer{grid-template-columns:1fr}
}
@media(max-width:700px){
  body.kaizen-relaunch .proof__explain{grid-template-columns:1fr}
  body.kaizen-relaunch .proof__explain-card,
  body.kaizen-relaunch .proof__official{padding:1.2rem 1.15rem}
}


/* ===== FINAL POLISH PASS · 2026-09-27 ===== */
/* Ajustes de consistencia visual luego de limpiar flechas y sumar explicación FIFA. */
body.kaizen-relaunch .proof__level,
body.kaizen-relaunch .proof__explain-card,
body.kaizen-relaunch .proof__official{
  min-height:100%;
}
body.kaizen-relaunch .proof__explain-card{
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
}
body.kaizen-relaunch .proof__levels,
body.kaizen-relaunch .proof__explain{
  align-items:stretch;
}
body.kaizen-relaunch .proof__official p{
  max-width:36ch;
}
body.kaizen-relaunch .contact__instagram-link,
body.kaizen-relaunch .footer__instagram-link{
  gap:8px;
}
body.kaizen-relaunch .contact__instagram-link span:not(.contact__external),
body.kaizen-relaunch .footer__instagram-link span:not([aria-hidden="true"]){
  display:inline-block;
}
body.kaizen-relaunch .product-gallery__grid .zoom-trigger,
body.kaizen-relaunch .gallery .zoom-trigger,
body.kaizen-relaunch .stage__media > .zoom-trigger{
  background:transparent;
}
body.kaizen-relaunch .proof__official-link{
  align-self:flex-start;
  min-width:min(100%,280px);
}
@media(max-width:700px){
  body.kaizen-relaunch .proof__official-link{
    width:100%;
    min-width:0;
  }
}

/* Corrección específica: icono real + texto legible. Sin flechas externas. */
body.kaizen-relaunch a.contact__instagram-link,
body.kaizen-relaunch a.footer__instagram-link{display:inline-flex;align-items:center;gap:9px}
body.kaizen-relaunch a.contact__instagram-link > span,
body.kaizen-relaunch a.footer__instagram-link > span{display:inline!important;opacity:1!important}
body.kaizen-relaunch a.contact__instagram-link::after,
body.kaizen-relaunch a.footer__instagram-link::after{content:none!important;display:none!important}


/* ===== ULTRAFINAL 2026-09-27 / COMPROBACIÓN VISUAL ===== */
/* Enviar consulta: rojo Kaizen sólido sobre fondo claro, en todos los estados. */
body.kaizen-relaunch .contact__form button[type="submit"],
body.kaizen-relaunch .contact__form button[type="submit"].btn--light {
  background:#CE001E;
  border:2px solid #CE001E;
  color:#fff;
  font-weight:800;
  padding:1rem 2.2rem;
  min-height:52px;
  box-shadow:none;
  text-shadow:none;
  letter-spacing:.075em;
}
body.kaizen-relaunch .contact__form button[type="submit"]:hover,
body.kaizen-relaunch .contact__form button[type="submit"]:focus-visible{
  background:#AC0019;
  border-color:#AC0019;
  color:#fff;
}
body.kaizen-relaunch .contact__form button[type="submit"]:focus-visible{
  outline:3px solid #232323;
  outline-offset:3px;
}
body.kaizen-relaunch .contact__form button[type="submit"]:disabled{
  background:#A60018;
  border-color:#A60018;
  color:#fff;
  opacity:1;
  cursor:wait;
}
/* Textos legibles en las tarjetas claras, sin depender de reglas globales de modo oscuro. */
body.kaizen-relaunch .proof__level .proof__use,
body.kaizen-relaunch .proof__level .proof__model{opacity:1}
body.kaizen-relaunch .proof__level .proof__use{color:#505050}
body.kaizen-relaunch .proof__explain-card p,
body.kaizen-relaunch .proof__official p{color:#505050}
/* Instagram: icono real y nombre, nunca flechitas Unicode ni pseudo-elementos. */
body.kaizen-relaunch .contact__instagram-link .contact__external,
body.kaizen-relaunch .footer__instagram-link [aria-hidden="true"]:not(img){display:none!important}
body.kaizen-relaunch .contact__instagram-link::after,
body.kaizen-relaunch .footer__instagram-link::after{content:none!important}

/* SECURITY PASS: Turnstile widget added only when configured. */
.kaizen-turnstile{display:flex;align-items:center;min-height:70px;max-width:100%;overflow:hidden;}
.kaizen-turnstile iframe{max-width:100%;}


/* Revisión global: fotografía real de la bolsa en el home y fallback del banner. */
body.kaizen-relaunch #bolsa .stage__media{display:grid;place-items:center;background:#151515;}
body.kaizen-relaunch #bolsa .stage__media>img,
body.kaizen-relaunch #bolsa .stage__media>.zoom-trigger img{object-fit:contain;object-position:center;}
body.kaizen-relaunch .hero-slide>.hero__picture{position:absolute;inset:0;display:block;overflow:hidden;}
body.kaizen-relaunch .hero-slide>.hero__picture>.hero__bg{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 55%;}


/* ════════════════════════════════════════════════════════════
   MANUAL DE MARCA KAIZEN v1.0 — CAPA DE ALINEACIÓN
   Tokens oficiales + roles tipográficos. Va al final para ganar
   en cascada sin tocar el resto del CSS. Los !important se usan
   solo en familia, estilo, ancho y tracking de cada rol.
   ════════════════════════════════════════════════════════════ */
:root{
  /* Paleta principal */
  --k-rojo:#CE001E;        /* C12 M100 Y92 K3  · Pantone ref. 186 C */
  --k-negro:#141414;       /* C65 M58 Y57 K75 · texto chico impreso: K100 */
  --k-blanco:#F4F4F4;      /* C4 M3 Y3 K0 */
  /* Apoyo */
  --k-rojo-hover:#A8001A;
  --k-grafito:#2A2A2A;
  --k-gris:#8A8A8A;
  /* Tipografía */
  --k-font-display:'Anybody', 'Arial Narrow', Arial, sans-serif;
  --k-font-text:'Schibsted Grotesk', 'Helvetica Neue', Arial, sans-serif;
  --k-font-mono:'Martian Mono', 'Courier New', monospace;
  --k-font-special:'Racing Sans One', 'Arial Black', sans-serif;
  /* Variables previas apuntando a la paleta oficial */
  --c-accent:var(--k-rojo);
  --kaizen-red:var(--k-rojo);
  --kaizen-wa-red:var(--k-rojo);
  --kaizen-wa-red-hover:var(--k-rojo-hover);
  --kaizen-cream:var(--k-blanco);
  --kaizen-ink:var(--k-negro);
  --kaizen-graphite:var(--k-negro);
}

/* Texto: Schibsted Grotesk */
body,button,input,textarea,select{font-family:var(--k-font-text)}

/* Títulos display: Anybody 900 itálica, ancho 75 (manual: 60–75) */
.hero__title,
.hero-slide .hero__title,
.stage__name,
.tech__title,
.cta-final__title,
.contact__title,
.lineup__heading,
.spec-section h2,
.proof__intro h2,
.test-proof__lead h2,
.product-gallery__heading h2{
  font-family:var(--k-font-display)!important;
  font-weight:900;
  font-style:italic!important;
  font-stretch:75%!important;
  letter-spacing:-0.01em!important;
}

/* Títulos secundarios: Anybody 800 recta */
.lineup__text h3,
.contact__form-title,
.cart-dialog__head h2,
.test-proof__data h3,
.proof__explain-card h3,
.compare thead th,
.proof__level strong,
.product-cert strong{
  font-family:var(--k-font-display)!important;
  font-weight:800;
  font-style:normal!important;
  font-stretch:85%!important;
  letter-spacing:-0.005em!important;
}

/* Precios y datos numéricos: Anybody con cifras tabulares */
.stage__price,
.price-block__amount,
.cart-dialog__total strong,
.lineup__price,
.stage__spec-val,
.cart-dialog__saving strong{
  font-family:var(--k-font-display)!important;
  font-stretch:85%!important;
  letter-spacing:0!important;
  font-variant-numeric:tabular-nums;
}

/* Microtextos: Martian Mono 500, MAYÚSCULAS, tracking +10%, mín. 11 px */
.hero__kicker,
.stage__brand,
.stage__type,
.stage__spec-key,
.tech__kicker,
.section-label,
.form-group label,
.hero-count,
.price-block__label,
.price-block__currency,
.cart-dialog__eyebrow,
.proof__model,
.product-cert > span:first-child,
.tech__caption,
.contact__address,
.proof__explain-kicker,
.cart-dialog__payment strong,
.compare tbody th,
.compare__model,
.cert-logo-slot>span,
.forward-logo-slot>span,
.zoom-dialog__count{
  font-family:var(--k-font-mono)!important;
  font-weight:500!important;
  font-stretch:87.5%!important;
  letter-spacing:0.1em!important;
  text-transform:uppercase;
  font-size:max(0.7rem, 11px)!important;
}

/* Contraste (manual: rojo sobre negro solo en títulos grandes).
   Texto chico sobre fondos oscuros pasa a blanco o gris claro. */
.nav__cart span,
#bolsa .stage__type,
#bolsa .price-block__currency,
.page--product .product-cert > span:first-child{color:var(--k-blanco)!important}
#bolsa .stage__brand,
#bolsa .stage__spec-key,
#bolsa .price-block__label,
.footer__copy,
.footer__credit,
.footer__sep{color:#A8A8A8!important}
.test-proof__data p{color:var(--k-blanco)!important}   /* nota sobre rojo: blanco pleno (5.2:1) */

/* Especial: Racing Sans One — un solo elemento por pieza.
   Uso: <span class="k-especial">Nuevo drop</span> */
.k-especial{font-family:var(--k-font-special)!important;font-weight:400!important;font-style:normal!important;letter-spacing:0!important;text-transform:none}

/* ════════════════════════════════════════════════════════════
   FIX ZOOM — imagen única (bolsa en el home, "1 / 1")
   Las flechas ocultas con [hidden] quedaban en display:none y la
   imagen caía en la columna de 52 px. Se fija la columna central
   y las flechas conservan su lugar aunque estén ocultas.
   ════════════════════════════════════════════════════════════ */
.zoom-dialog__body>.zoom-dialog__viewport{grid-column:2;grid-row:1}
.zoom-dialog__body>.zoom-prev{grid-column:1;grid-row:1}
.zoom-dialog__body>.zoom-next{grid-column:3;grid-row:1}
.zoom-dialog__body>.zoom-prev[hidden],.zoom-dialog__body>.zoom-next[hidden]{display:block;visibility:hidden;pointer-events:none}


/* ════════════════════════════════════════════════════════════
   SEO — texto accesible oculto y preguntas frecuentes (home)
   ════════════════════════════════════════════════════════════ */
.k-sr{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.faq{background:var(--k-blanco);color:var(--k-negro);padding:clamp(4rem,9vw,8rem) var(--pad-x);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:clamp(2rem,6vw,6rem);align-items:start;border-top:1px solid #DFDFDF}
.faq .section-label{color:var(--k-rojo)}
.faq__title{font-family:var(--k-font-display);font-weight:900;font-style:italic;font-stretch:75%;font-size:clamp(2.5rem,5vw,5rem);line-height:.92;letter-spacing:-.01em;margin-top:.75rem}
.faq__item{border-top:1px solid #D0D0D0}
.faq__item:last-child{border-bottom:1px solid #D0D0D0}
.faq__item summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:1.5rem;padding:1.25rem 0;font-family:var(--k-font-text);font-weight:700;font-size:clamp(1rem,1.4vw,1.2rem);line-height:1.35}
.faq__item summary::-webkit-details-marker{display:none}
.faq__item summary::after{content:"+";font-family:var(--k-font-mono);font-weight:500;color:var(--k-rojo);font-size:1.4rem;line-height:1;transition:transform .2s ease}
.faq__item[open] summary::after{transform:rotate(45deg)}
.faq__item summary:focus-visible{outline:2px solid var(--k-rojo);outline-offset:4px}
.faq__item p{padding:0 0 1.4rem;max-width:62ch;font-size:.95rem;line-height:1.65;color:#3A3A3A}
@media(max-width:760px){.faq{grid-template-columns:1fr}}
