Grupo MIM · Sistema de identidad digital · v1.0
Sistema visual unificado para los 7 sitios del grupo: una base industrial compartida (acero + naranja) y un color de acento que distingue a cada sucursal. Mismo lenguaje, identidad local.
01 / Color — Núcleo
El naranja hereda el color histórico del grupo (presente en logotipos como VITSA). Los aceros aportan la seriedad industrial. La tinta, el papel y la línea sostienen el contenido técnico: fichas, normas y tablas.
Naranja MIM
#F26A21✓ Copiado
Acento principal: CTAs, destacados, detalles.
Naranja Intenso
#FF7E38✓ Copiado
Hover y estados activos sobre oscuro.
Acero 950
#081320✓ Copiado
Fondos principales oscuros: héroes, footer, barra de utilidad.
Acero 900
#0D2036✓ Copiado
Secciones oscuras alternas, barra de navegación.
Acero 800
#14314F✓ Copiado
Hover en filas y botones sobre fondo oscuro.
Acero 700
#1D4569✓ Copiado
Enlaces y acentos secundarios sobre fondo claro.
Tinta
#10161D✓ Copiado
Texto principal sobre fondo claro.
Texto secundario
#5B6B7C✓ Copiado
Texto de apoyo, metadatos, placeholders.
Papel
#F5F7F9✓ Copiado
Fondo base de páginas claras.
Línea
#DBE2EA✓ Copiado
Bordes, divisores, rejillas técnicas.
Regla de uso 60 / 30 / 10
60% neutros (papel/blanco), 30% acero, 10% naranja o acento. El acento nunca domina la vista: aparece en CTAs, íconos y detalles.
Acero con alfa — veladuras y vidrio
steel-950/90
steel-950/85
steel-950/70
steel-950/60
steel-950/40
steel-950/30
Se usan en degradados de héroe (90% → 30%), tarjetas de vidrio y veladuras sobre fotografía — nunca filtros de color.
02 / Color — Acentos regionales
Cada sitio de sucursal usa la misma base de acero, pero reemplaza el naranja por su
propio acento. Así los 7 sitios se reconocen como familia sin perder personalidad local.
El acento se inyecta como variable CSS --accent en <html> de cada sitio.
MIM
Cuautitlán Izcalli, Estado de México
VITSA
Lerma, Estado de México
MIGSA
Tlaquepaque, Jalisco
MICSA
Coatzacoalcos, Veracruz
MIS
Puebla
MIMTY
Santa Catarina, Nuevo León
MIBQRO
El Pueblito (Corregidora), Querétaro
Regla de oro
Un solo acento por sitio de sucursal.
Nunca mezclar dos acentos regionales en la misma vista.
✓ Correcto
✗ Evitar
03 / Tipografía
Tres familias con roles claros: Archivo para titulares con carácter, Inter para texto corrido, IBM Plex Mono para datos técnicos, especificaciones y etiquetas.
Aa
Archivo
font-display · Titulares, nav, CTAs
Pesos 700–900. Mayúsculas para navegación y CTAs. Tracking cerrado (-0.02em) en titulares grandes.
Construir 700
Construir 800
Construir 900
Aa
Inter
font-body · Párrafos y UI
Párrafos de 14–16px, interlineado 1.6. Pesos 400–600 únicamente.
La tubería, válvulas y conexiones son de las marcas más prestigiadas del mercado y cumplen con las normas de calidad más exigentes.
Aa
IBM Plex Mono
font-tech · Datos técnicos
Especificaciones, tablas de catálogo, etiquetas en mayúsculas con tracking amplio (+0.2em).
Cédula 40 · 1/2" – 4"
Clase 150 – 2500
/ Productos
Escala tipográfica
Material industrial
Display XL · 60px · Archivo Black · font-display text-6xl font-black
Medio siglo moviendo la industria
H2 · 36px · Archivo ExtraBold · font-display text-4xl font-extrabold
Amplio inventario, entrega inmediata
H3 · 24px · Archivo Bold · font-display text-2xl font-bold
Distribuidor líder de tubería, válvulas y conexiones.
Body · 16px · Inter Regular · font-body text-base
ASTM A-53 / NMX B-177
Label · 12px · IBM Plex Mono · font-tech text-xs uppercase tracking-[0.2em]
La selección de texto se tiñe de naranja: ::selection { background: var(--orange); color: #fff }
04 / Marca
Cada empresa conserva su logotipo histórico: es la pieza de marca visible en el encabezado de su sitio. El bloque naranja "M" queda como monograma del grupo para favicon, avatar y documentos internos.
Logotipos legados — en uso en los 7 sitios
MIM
grupo-mim.com
VITSA
vitsa.com.mx
MIGSA
migsa.com.mx
MICSA
micsacv.com
MIS
materialesdelsureste.com
MIMTY
mimty.com.mx
MIBQRO
mibqro.com
Reglas de uso
/assets/img/logos-sites/originals/.Primario · sobre acero
Anatomía y construcción
--accent y el descriptor pasa a "Ciudad · Estado".grupo-mim.com · #F26A21
vitsa.com.mx · #D97706
migsa.com.mx · #0E9488
micsacv.com · #1E7BC8
materialesdelsureste.com · #1E40AF
mimty.com.mx · #6D5BD0
mibqro.com · #C2265C
05 / Componentes
Geometría recta, sin esquinas redondeadas: la interfaz habla el mismo idioma que el producto. Bordes de 1px, estados hover con desplazamiento y color sólido.
Header del sitio — anatomía aprobada
sticky), con sombra de acero al hacer scroll.Botones — 7 variantes
.btn-primary — CTA principal
.btn-secondary — acción secundaria
.btn-outline-light — contorno sobre claro
.btn-disabled — inactivo
.btn-accent — toma --accent del sitio
.btn-outline-dark — vidrio sobre foto
.btn-quote — CTA de navbar
Chips y etiquetas
.chip · .chip-solid · .chip-accent
/ Productos
.eyebrow — etiqueta de sección sobre claro
Sobre oscuro
/ Red nacional
.eyebrow-dark
.hero-badge — insignia de héroe con punto de acento
Tarjeta clara
Borde 1px Línea, fondo blanco, p-6.
Hover: sombra de acero 0_14px_40px_-16px. Sin radio, sin sombras de color.
Tarjeta oscura + spec pill
Clase 150 – 2500
Válvulas
Imagen sobre bloque blanco h-44; la spec pill ancla el dato clave.
Formulario
.form-label / .form-input — foco: borde --accent
Tabla de especificaciones
| Producto | Norma | Medida | Extra | Disponibilidad |
|---|---|---|---|---|
| Tubería acero al carbón | ASTM A-53 / NMX B-177 | 1/2" – 4" | Céd. 40 y 80 | Inmediata |
| Válvula compuerta fundido | ASME / ANSI | 2" – 48" | Cl. 150–2500 | Inmediata |
| Conexiones forjadas | ASME B16.11 | 1/4" – 2" | 3000 / 6000# | Inmediata |
| Sistema ranurado | UL / FM | 1" – 60" | — | Bajo pedido |
.spec-table — encabezado Acero 950, datos en Plex Mono, puntos de disponibilidad
Banda de estadísticas
Modal (Alpine.js)
El patrón usado en el "Aviso Importante" anti-phishing de los 7 sitios.
Aviso importante
Este es un ejemplo del modal del sistema. Se cierra con Esc, clic fuera o el botón.
06 / Texturas y motivos
Fondos con cuadrícula tipo plano (blueprint) como textura de marca en héroes y pies de página. La franja diagonal de seguridad corona los footers: guiño industrial al marcaje de planta.
.blueprint — rejilla blanca 4.5% / 56px, sobre acero
.blueprint-dark — rejilla acero 5% / 56px, sobre papel
.hazard — diagonal naranja/acero 45°, franja de 10px sobre footers
07 / Layout y espaciado
Sin redondeces.
Esquinas rectas en botones, tarjetas y campos. La geometría refleja el producto: tubo, brida, codo. border-radius: 0 en todo el sistema.
Contenedor y ritmo vertical.
max-w-7xl px-5 (1280px, 20px laterales).py-20 md:py-28; secundarias py-16.sm:2 / lg:3, sucursales lg:3 / xl:4, footer 4 columnas.white/10–15 en oscuro.Sombras — siempre teñidas de acero, nunca de color
Imagen destacada
0 24px 60px -24px / 45%
Tarjeta (hover sucursal)
0 18px 50px -18px / 40%
Tarjeta pequeña (hover)
0 14px 40px -16px / 35%
08 / Movimiento
Sin paralaje ni fuegos artificiales: marquesina de marcas, entradas suaves al cargar y micro-interacciones de hover que confirman la acción.
.marquee-track — 36s lineal infinito, lista duplicada ×2, separador de diamante naranja
Entradas — .rise con escalonado
Fade + subida de 22px, 0.7s cubic-bezier(0.22,1,0.36,1), retardos de 0.08s. En páginas: x-reveal con IntersectionObserver.
Micro-interacciones hover
09 / Fotografía
Imágenes reales de la operación: gente trabajando, producto en contexto y plantas industriales. Tratamiento consistente en todos los sitios.
Gente y operación
Colaboradores con EPP en contexto real. Humaniza la marca y comunica escala y profesionalismo.
Producto en contexto
Acabados reales, series de producto y detalle industrial. Evitar renders genéricos de catálogo.
Industria y escala
Plantas e instalaciones de clientes al amanecer o anochecer: el entorno donde vive el producto.
Biblioteca curada de 26 fotografías (Pexels License, sin atribución requerida) — créditos en /assets/img/photos/CREDITS.md.
Tratamiento
Evitar
10 / Voz y tono
Español mexicano, registro formal-industrial, primera persona plural institucional. El dato técnico va primero: el ingeniero encuentra la norma en 2 clics.
Titulares — frase corta, punto final, una palabra en acento
Material industrial para el México que construye.
Medio siglo moviendo la industria mexicana.
Amplio inventario, entrega inmediata.
Siete sucursales, una misma identidad.
Archivo Black/ExtraBold, interlineado cerrado (0.95–0.98), sentence case.
CTAs — imperativos en mayúsculas
Los CTAs de contacto muestran el dato crudo: "(55) 5899 2400", "ventas@grupo-mim.com".
Anotaciones técnicas — Plex Mono con prefijo de barra
Eyebrows, especificaciones, horarios y pies legales siempre en mono-mayúsculas: el registro del plano de ingeniería.
Marcadores de confianza
"Certificación ISO 9001:2015" · "Orgullosamente mexicana · Desde 1972" · "inventario real" · "entrega inmediata" · "asesoría técnica" · normas "ASTM A-53 / NMX B-177" · "requisitos PEMEX y CFE".
Referencia rápida de tokens
| Variable CSS | Valor | Token Tailwind | Uso |
|---|---|---|---|
| --steel-950 | #081320 | steel-950 | Fondos oscuros, footer, navbar |
| --steel-900 | #0D2036 | steel-900 | Secciones oscuras alternas |
| --steel-800 | #14314F | steel-800 | Hover sobre oscuro |
| --steel-700 | #1D4569 | steel-700 | Enlaces secundarios en claro |
| --ink | #10161D | ink | Texto principal |
| --paper | #F5F7F9 | paper | Fondo base |
| --line | #DBE2EA | line | Bordes y divisores |
| --muted-txt | #5B6B7C | muted-txt | Texto secundario |
| --orange | #F26A21 | orange | Acento grupo (MIM) |
| --orange-hot | #FF7E38 | orange-hot | Hover / acento en oscuro |
| --accent | por sitio | [var(--accent)] | Acento dinámico del sitio |
| — | Archivo | font-display | Titulares, nav, CTAs |
| — | Inter | font-body | Párrafos y UI |
| — | IBM Plex Mono | font-tech | Specs, etiquetas, legal |
¿Implementando una pieza nueva?
Revisa primero esta guía y el brand book vivo de cada sitio en /marca/. Las clases de componentes viven en src/styles/main.css.
11 / Código
Cómo están construidos los sitios: el stack, qué se usa de cada tecnología y las reglas que cualquier cambio debe respetar. Para el pipeline de build completo ver Arquitectura & Build.
HTML — semántica, accesibilidad y SEO
Estructura
<header> <nav> <main> <footer> en cada página.<h1> por página (auditado en QA).lang="es", <address> en datos de contacto.<details> para FAQs, <select>, tel:/mailto:.Accesibilidad
sr-only visible al foco).aria-current="page" en nav; aria-expanded/controls/label en botones toggles.alt descriptivo (decorativas: alt=""); <label> en todo control; title en iframes.SEO por página
{Página} | {Empresa} y descripción única (60–160) interpolada por sitio.og:image por sitio.Organization (MIM) y LocalBusiness por ubicación (13).sitemap.xml + robots.txt por dominio; noindex en /marca/ y /terminos/.CSS — tokens, utilidades y clases de componente
Reglas
--accent y --accent-hot se inyectan inline en <html> por sitio — una sola hoja para los 8 sitios.shadow-[…], tracking-[0.2em]) solo para casos únicos.border-radius; sombras solo teñidas de acero; ::selection naranja.Clases de componente
Texturas y motion
.blueprint / .blueprint-dark / .hazard (CSS puro, sin imágenes).mim-marquee, mim-rise, heroFade/slowZoom (crossfade del héroe), ticker.[x-cloak]{display:none} obligatorio junto a x-cloak de Alpine.scroll-behavior: smooth + scroll-mt-28 en anchors.JavaScript — Alpine.js, HTMX y vanilla
Qué usa cada pieza
| Elemento | Técnica |
|---|---|
| Header (menú móvil, ocultar barra, sombra) | Alpine x-data @scroll.window :class |
| Subrayado animado del nav | CSS (scale-x + group-hover), sin JS |
| Modal "Aviso importante" | Alpine $store.aviso + x-transition |
| Búsqueda + tabs de catálogos | Alpine sobre JSON embebido (filtro cliente) |
| Lightbox de galerías | Alpine mimGallery (site.js) |
| Revelado al hacer scroll | Directiva x-reveal + IntersectionObserver |
| FAQ | <details> nativo, sin JS |
| Marquesina / crossfade del héroe | CSS puro, sin JS |
| Formulario de contacto | HTMX hx-post (futuro) / fallback mailto (Alpine) con flag forms.live |
Orden de carga (regla dura)
<script src="htmx.min.js" defer></script>
<script src="/assets/js/site.js" defer></script>
<script src="alpine.min.js" defer></script>
site.js registra stores y directivas en alpine:init — debe cargar ANTES de Alpine o los componentes fallan de forma intermitente.
Contrato HTMX (fase ERP)
<form hx-post="/api/contacto" hx-target="#form-status">
GET /api/catalogos?categoria=&q=&marca= → parcial HTML
GET /api/catalogos/{id}/download → PDF
Mismo origen, sin CORS. El host ASP.NET consulta PostgreSQL con la DLL compartida MimPortal.Entities (ver docs/ARCHITECTURE.md).
Mejora progresiva
Todo el contenido es legible sin JavaScript: catálogo renderizado en servidor, FAQs con <details>, marquesina y crossfade en CSS. Alpine/HTMX solo enriquecen.
Convenciones de código
src/_data/ (nada de cadenas por sitio hardcodeadas en plantillas).| url / | href (path prefix).Antes de hacer merge
npm run build # 8 sitios en verde
npm run qa # datos, enlaces, meta, html,
# a11y, contraste, sitemap, perf
La batería completa debe terminar en verde. Las capturas Playwright viven en qa/shots/ (no versionadas).