Accessibility Statement Declaración de Accesibilidad
In force since: 22 September 202622 de septiembre de 2026
This site aims at WCAG 2.1 level AA and currently meets it partially. Below is what is in place, what still falls short, and how it was checked — measured rather than asserted. If something here stops you using the site, tell us and we will fix it.
Este sitio apunta a WCAG 2.1 nivel AA y hoy lo cumple parcialmente. Abajo está lo que sí funciona, lo que todavía se queda corto y cómo se comprobó: medido, no afirmado. Si algo de aquí te impide usar el sitio, dínoslo y lo arreglamos.
What we are committing toA qué nos comprometemos
We build software for other people. Publishing a site that some people cannot use would say something about the work we sell, so this is not a checkbox for us.
We claim partial conformance with WCAG 2.1 level AA. We say partial because two things genuinely fall short and we would rather name them than hide behind a badge. Overclaiming is the thing that makes accessibility statements worthless.
Construimos software para otras personas. Publicar un sitio que algunas no puedan usar diría algo sobre el trabajo que vendemos, así que esto no es una casilla que marcar.
Declaramos conformidad parcial con WCAG 2.1 nivel AA. Decimos parcial porque hay dos cosas que de verdad se quedan cortas y preferimos nombrarlas antes que escondernos tras un sello. Exagerar es precisamente lo que vuelve inútiles las declaraciones de accesibilidad.
What is in placeQué está resuelto
Keyboard
- Everything that does something can be reached and operated with Tab, Enter and Space. There is no mouse-only control anywhere on the site.
- A skip link is the first thing you reach on every page, so you are not tabbing through the navigation on every load.
- Focus is always visible: a 2 px outline with a 3 px offset, on every focusable element rather than on a hand-picked list.
- Nothing traps focus. The consent banner is deliberately not modal, and Esc dismisses it by rejecting — the safe answer, never the one that hands over more data.
- Wide tables on the legal pages sit in scrollable regions that are reachable by keyboard, not only by swiping.
Screen readers
- One
<h1>per page and a heading order that does not skip levels. - Real landmarks: banner, navigation, main and contentinfo. The footer sits
outside
<main>so it is an actual landmark you can jump to. - Every section is named by its own heading, so the region list is useful instead of a row of unlabelled "region" entries.
- The language switch and the CRT toggle report their state with
aria-pressed; the current section reports itself witharia-current. <html lang>changes when you switch language, so the screen reader changes voice instead of reading Spanish with an English one.- Every decorative layer — the grid, the haze, the scanlines, the bubbles,
the prompt arrows, the step numbers — is
aria-hidden. They are not read out. - The one meaningful image, the logotype, has a text alternative. The
others are decorative and carry an empty
alt, which is correct: an empty alt is how you say "skip this", and inventing a description for a decorative icon is worse than saying nothing. - Buttons whose visible text is an abbreviation ("EN", "CRT") carry an accessible name that contains that abbreviation, so speech control still works.
Sight
- Every text and background pair on the site was measured against the real palette values. All of them pass AA, and most pass AAA:
| Text | Background | Ratio | Level |
|---|---|---|---|
Bone #F2F2F2 | Abyss #0B0D0F | 17.39:1 | AAA |
Bone #F2F2F2 | Graphite #2B2D31 | 12.32:1 | AAA |
Mist #B8B8C4 | Abyss | 9.91:1 | AAA |
| Mist | Graphite | 7.02:1 | AAA |
Text violet #A78BFA | Abyss | 7.15:1 | AAA |
| Text violet | Graphite | 5.07:1 | AA |
| Bone | Brand violet #7C3AED | 5.09:1 | AA |
- The brand violet
#7C3AEDreaches only 3.42:1 on the dark background and 2.42:1 on panels, so it is no longer used for text at all. It paints borders, fills and glows; a lighter violet paints letters. That distinction is the single change that moved the site from failing to passing. - If your system asks for more contrast, the site responds: secondary text brightens and the hairlines stop being hints.
- The layout reflows to a single column on narrow screens and survives browser zoom to 200% without losing content.
- The whole type scale is expressed in relative units, so it follows your browser's font-size setting. Enlarging only the text, without zooming the page, works as it should — the page is not pinned to a pixel size we chose for you.
- Colour is never the only carrier of meaning. The active navigation link is underlined as well as recoloured, and it also announces itself.
Motion
- If your system asks for reduced motion, every animation stops: the bubbles are removed from the page, the glitch never fires, the blinking indicators hold still, and smooth scrolling is switched off.
- Nothing flashes more than three times a second at any point, so there is no seizure risk from the CRT effect or the glitch.
- The CRT screen effect can be switched off outright, by anyone, from the bar at the top — and the choice is remembered.
Teclado
- Todo lo que hace algo se alcanza y se opera con Tab, Intro y Espacio. No hay ni un control de solo ratón en todo el sitio.
- Un enlace de salto es lo primero que alcanzas en cada página, para no recorrer la navegación entera en cada carga.
- El foco siempre se ve: contorno de 2 px con 3 px de separación, en todo elemento enfocable y no en una lista escogida a mano.
- Nada atrapa el foco. El banner de consentimiento no es modal a propósito, y Esc lo cierra rechazando: la respuesta segura, nunca la que entrega más datos.
- Las tablas anchas de las páginas legales están en zonas desplazables alcanzables con teclado, no solo deslizando con el dedo.
Lectores de pantalla
- Un solo
<h1>por página y un orden de encabezados que no se salta niveles. - Landmarks de verdad: banner, navegación, main y contentinfo. El pie está
fuera de
<main>, así que es un landmark real al que se puede saltar. - Cada sección se nombra con su propio encabezado, así la lista de regiones sirve de algo en vez de ser una fila de «región» sin etiqueta.
- El selector de idioma y el interruptor CRT informan de su estado con
aria-pressed; la sección visible se señala conaria-current. <html lang>cambia al cambiar de idioma, para que el lector de pantalla cambie de voz en vez de leer español con una inglesa.- Toda capa decorativa —la rejilla, la bruma, el barrido, las burbujas, las
flechas de prompt, los números de paso— lleva
aria-hidden. No se leen. - La única imagen con significado, el logotipo, tiene alternativa textual.
Las demás son decorativas y llevan
altvacío, que es lo correcto: un alt vacío es la forma de decir «sáltate esto», e inventar una descripción para un icono decorativo es peor que no decir nada. - Los botones cuyo texto visible es una abreviatura («EN», «CRT») llevan un nombre accesible que contiene esa abreviatura, para que el control por voz siga funcionando.
Vista
- Cada par de texto y fondo del sitio se midió sobre los valores reales de la paleta. Todos pasan AA, y la mayoría pasan AAA:
| Texto | Fondo | Ratio | Nivel |
|---|---|---|---|
Hueso #F2F2F2 | Abismo #0B0D0F | 17.39:1 | AAA |
Hueso #F2F2F2 | Grafito #2B2D31 | 12.32:1 | AAA |
Niebla #B8B8C4 | Abismo | 9.91:1 | AAA |
| Niebla | Grafito | 7.02:1 | AAA |
Violeta de texto #A78BFA | Abismo | 7.15:1 | AAA |
| Violeta de texto | Grafito | 5.07:1 | AA |
| Hueso | Violeta de marca #7C3AED | 5.09:1 | AA |
- El violeta de marca
#7C3AEDllega solo a 3.42:1 sobre el fondo oscuro y a 2.42:1 sobre los paneles, así que ya no se usa para texto en absoluto. Pinta bordes, rellenos y destellos; un violeta más claro pinta letras. Esa distinción es el único cambio que llevó al sitio de fallar a cumplir. - Si tu sistema pide más contraste, el sitio responde: el texto secundario se aclara y los filetes dejan de ser insinuaciones.
- El diseño se reordena a una sola columna en pantallas estrechas y sobrevive a un zoom del navegador al 200% sin perder contenido.
- Toda la escala tipográfica está en unidades relativas, así que sigue al ajuste de tamaño de letra de tu navegador. Agrandar solo el texto, sin ampliar la página, funciona como debe: la página no está clavada a un tamaño en píxeles que elegimos nosotros.
- El color nunca es el único portador de significado. El enlace de navegación activo va subrayado además de recoloreado, y además se anuncia.
Movimiento
- Si tu sistema pide movimiento reducido, se detiene toda animación: las burbujas desaparecen de la página, el glitch no se dispara, los indicadores parpadeantes se quedan quietos y el desplazamiento suave se apaga.
- Nada destella más de tres veces por segundo en ningún momento, así que no hay riesgo de convulsiones por el efecto CRT ni por el glitch.
- El efecto de pantalla CRT se puede apagar del todo, por cualquiera, desde la barra superior, y la elección se recuerda.
What still falls shortQué se queda corto todavía
Two things, named on purpose.
- Indicators that blink without end. The dot on the badge and the terminal caret blink on a loop, and the headline glitches every few seconds. WCAG 2.2.2 says content that blinks for more than five seconds needs a way to stop it. Ours stops for anyone whose system asks for reduced motion, and the CRT toggle kills the screen effect — but there is no dedicated "stop the blinking" button, so we count this as not met rather than met. All of these elements are decorative and hidden from screen readers.
- A pixel display typeface. Headings, labels and buttons are set in Press Start 2P, which is harder to read than a normal face, particularly at small sizes. It is the brand and we are keeping it, but we keep it to short strings: every paragraph of actual content is set in a normal monospace face at a comfortable size. If that choice is a problem for you, please tell us — we would want to know.
Outside the scope of this statement: the brand manual under
/brand/. It is a print design document published as a PDF, it has
not been assessed, and it is excluded from search engines. If you need its
contents in an accessible form, ask and we will send them to you as
text.
Dos cosas, nombradas a propósito.
- Indicadores que parpadean sin fin. El punto del distintivo y el cursor de terminal parpadean en bucle, y el titular hace glitch cada pocos segundos. El criterio 2.2.2 de WCAG dice que el contenido que parpadea más de cinco segundos necesita una forma de detenerlo. El nuestro se detiene para quien tenga el sistema pidiendo movimiento reducido, y el interruptor CRT mata el efecto de pantalla, pero no hay un botón dedicado de «parar el parpadeo», así que lo contamos como no cumplido y no como cumplido. Todos esos elementos son decorativos y están ocultos a los lectores de pantalla.
- Una tipografía de píxeles. Encabezados, etiquetas y botones van en Press Start 2P, que se lee peor que una tipografía normal, sobre todo en tamaños pequeños. Es la marca y la mantenemos, pero la reservamos para cadenas cortas: todo párrafo de contenido real va en una monoespaciada normal a un tamaño cómodo. Si esa elección te supone un problema, dínoslo: querríamos saberlo.
Fuera del alcance de esta declaración: el manual de marca en
/brand/. Es un documento de diseño para impresión publicado en
PDF, no ha sido evaluado y está excluido de los buscadores. Si necesitas su
contenido en forma accesible, pídelo y te lo mandamos en texto.
FormsFormularios
There are none. Not a contact form, not a newsletter box, not a search field. The only way to contact us is an email link, which every assistive technology already handles.
That is worth stating because most accessibility complaints about small business sites are about forms: unlabelled fields, errors shown only in red, focus that jumps somewhere unexpected on submit, CAPTCHAs that cannot be solved without sight.
When we do add one, it ships with: a visible label bound to every field, errors described in text and tied to their field, a focus order that follows the visual order, no keyboard trap, no time limit, and a privacy consent checkbox that is unticked by default — because a pre-ticked box is not consent. No field will be marked required unless we genuinely need it to reply.
No hay ninguno. Ni formulario de contacto, ni casilla de boletín, ni campo de búsqueda. La única forma de contactarnos es un enlace de correo, que cualquier tecnología de apoyo ya maneja.
Merece decirse porque la mayoría de las quejas de accesibilidad contra sitios de empresas pequeñas son por formularios: campos sin etiqueta, errores señalados solo en rojo, un foco que salta a un sitio inesperado al enviar, CAPTCHAs que no se pueden resolver sin vista.
Cuando añadamos uno, saldrá con: etiqueta visible ligada a cada campo, errores descritos en texto y atados a su campo, un orden de foco que sigue al orden visual, sin trampas de teclado, sin límite de tiempo, y una casilla de consentimiento de privacidad desmarcada por defecto, porque una casilla ya marcada no es consentimiento. Ningún campo se marcará como obligatorio salvo que de verdad lo necesitemos para responder.
How this was checkedCómo se comprobó
By self-assessment, in September 2026. Being specific about that matters, because "accessible" with nothing behind it is marketing.
What was actually done:
- A keyboard-only pass over every page: tab order, focus visibility, every control operated without a mouse, and a check that nothing traps focus.
- Contrast ratios computed from the palette's real hex values using the WCAG 2.1 relative luminance formula, including the semi-transparent panels and the footer text, composited against their actual backgrounds.
- A review of document structure: headings, landmarks, accessible names, language attributes, and which elements are hidden from assistive technology.
- Checks at narrow widths and at 200% zoom.
What was not done, so you know the limits of the claim above: no independent third-party audit, and no testing session with a person who uses a screen reader daily. Those are the two things that find what self-assessment misses, and we would rather say so than imply a rigour we have not paid for.
Por autoevaluación, en septiembre de 2026. Ser concretos con esto importa, porque «accesible» sin nada detrás es publicidad.
Lo que se hizo de verdad:
- Un recorrido solo con teclado por todas las páginas: orden de tabulación, visibilidad del foco, cada control operado sin ratón y comprobación de que nada atrapa el foco.
- Ratios de contraste calculados sobre los valores hexadecimales reales de la paleta con la fórmula de luminancia relativa de WCAG 2.1, incluidos los paneles semitransparentes y el texto del pie, compuestos contra sus fondos reales.
- Una revisión de la estructura del documento: encabezados, landmarks, nombres accesibles, atributos de idioma y qué elementos están ocultos a las tecnologías de apoyo.
- Comprobaciones en anchos estrechos y al 200% de zoom.
Lo que no se hizo, para que conozcas los límites de la declaración de arriba: ninguna auditoría independiente de un tercero, y ninguna sesión de prueba con una persona que use lector de pantalla a diario. Esas son las dos cosas que encuentran lo que a una autoevaluación se le escapa, y preferimos decirlo antes que insinuar un rigor que no hemos pagado.
Tell us about a barrierAvísanos de una barrera
If any part of this site is hard or impossible for you to use, we want to hear about it, including the parts we listed as known problems.
Write to jaw.nine@hotmail.com. Tell us what page, what you were trying to do, and what happened. Your browser and assistive technology help but are not required — do not let missing details stop you writing.
- We reply within 5 business days.
- We give you a fix or a date for one within 15 business days.
- If something cannot be fixed quickly, we will give you the information you were after by another route in the meantime. You should not have to wait on our backlog to get an answer out of us.
You will not get a form letter, and we are not going to argue with you about whether the barrier is real.
Si alguna parte de este sitio te resulta difícil o imposible de usar, queremos saberlo, incluidas las partes que hemos listado como problemas conocidos.
Escribe a jaw.nine@hotmail.com. Dinos en qué página, qué intentabas hacer y qué pasó. El navegador y la tecnología de apoyo que uses ayudan, pero no son obligatorios: que te falten datos no te frene para escribir.
- Respondemos en 5 días hábiles.
- Te damos un arreglo o una fecha para él en 15 días hábiles.
- Si algo no se puede arreglar rápido, mientras tanto te damos por otra vía la información que buscabas. No deberías tener que esperar a nuestra cola de trabajo para sacarnos una respuesta.
No vas a recibir una carta de plantilla, y no vamos a discutir contigo si la barrera es real.
When this was last reviewedÚltima revisión
This statement was prepared and last reviewed on the date shown at the top of the page. We review it whenever the site changes in a way that affects any of the above, and at least once a year.
It describes jaw9.dev and its legal pages. It does not cover
software we build for clients; that is assessed per project, and we are happy
to make accessibility a written requirement of the work.
Esta declaración se preparó y se revisó por última vez en la fecha que aparece en la cabecera de la página. La revisamos cada vez que el sitio cambia de forma que afecte a algo de lo anterior, y al menos una vez al año.
Describe jaw9.dev y sus páginas legales. No cubre el software
que construimos para clientes; eso se evalúa por proyecto, y con gusto ponemos
la accesibilidad como requisito escrito del trabajo.