Use this file to discover all available pages before exploring further.
lib/site-data.ts is the single source of truth for all business content on the GCS website. Every section component — navigation, strategic centers, solutions, sectors, insights, and company stats — reads its data directly from this file. Content updates never require touching JSX: add a sector, rename a service, or change a phone number by editing only this file.
To add or edit any section of the website, edit only lib/site-data.ts — no JSX changes needed. Components are purely presentational consumers of this data.
Holds all legal and contact information for GCS Consultores Empresariales. It is typed as const so TypeScript infers the narrowest possible literal types, preventing accidental mutation.
export const company = { name: 'GCS Consultores Empresariales', legalName: 'GCS Consultores Empresariales S.A.S', nit: '900.773.570 - 8', tagline: 'La solución Global para su empresa', phone: '57 (601) 383 21 49', email: 'info@consultoresgcs.com', website: 'www.consultoresgcs.com', address: 'Calle 94A No. 13 - 72, Pisos 1 y 3', building: 'Edificio 94 Trece – Centro Empresarial', city: 'Bogotá D.C., Colombia',} as const
The company object is imported wherever legal text is rendered — including the DataTreatmentNotice modal (Ley 1581 de 2012 compliance) and the site footer.
export interface SubItem { label: string href: string iconSrc?: string // Path to a logo image rendered in the dropdown}export interface NavItem { label: string href: string subItems?: SubItem[] // Renders a mega-menu dropdown when present viewAllHref?: string // "Ver todos" link shown at the bottom of the dropdown}
export interface StrategicCenter { id: string // URL-safe identifier used in routing title: string description: string icon: LucideIcon // Icon rendered on the section card href: string // URL of the center's image or micro-app}
export interface Sector { name: string // Display name — use \n for a line break in the card imagePath: string // Public folder path to the sector photograph borderColor: string // Default border hex color textColor: string // Label text hex color hoverBorder: string // Border hex color on card hover}
export const insights: Insight[] = [ { title: 'Cómo la IA está redefiniendo el cumplimiento normativo en 2025', excerpt: 'La automatización inteligente reduce el riesgo operativo y libera a los equipos para tareas de mayor valor.', category: 'Inteligencia Empresarial', readingTime: '6 min', href: '/insights/ia-cumplimiento-normativo', }, { title: '5 indicadores que toda junta directiva debería monitorear', excerpt: 'Una guía práctica para construir un tablero ejecutivo que conecte la estrategia con la operación.', category: 'Estrategia Ejecutiva', readingTime: '8 min', href: '/insights/indicadores-junta-directiva', }, { title: 'Gestión de riesgos: del checklist a la cultura organizacional', excerpt: 'Por qué los marcos de riesgo fallan y cómo convertirlos en una ventaja competitiva real.', category: 'Riesgo & Cumplimiento', readingTime: '5 min', href: '/insights/cultura-gestion-riesgos', },]
Open lib/site-data.ts and edit the company object at the top of the file. All pages that display a phone number, email address, or legal name read from this single object, so one change propagates everywhere — including the DataTreatmentNotice modal and the site footer.
export const company = { phone: '57 (601) 383 21 49', // ← change here only email: 'info@consultoresgcs.com', // ...} as const
How do I add a new sector?
Append a new Sector object to the sectors array in lib/site-data.ts. Place the sector image in public/sectores/ and reference it in imagePath. Choose brand-aligned hex values for borderColor, textColor, and hoverBorder.
No JSX edits are required — the sectors section component iterates over the array automatically.
How do I add a new strategic center?
Add a new StrategicCenter entry to the strategicCenters array and a corresponding SubItem to the Centros Estratégicos entry in navItems. Both must be updated together to keep navigation and the section grid in sync.
// 1. Add to strategicCenters{ id: 'sostenibilidad', title: 'Sostenibilidad Corporativa', description: 'Estrategias ESG para empresas con visión de largo plazo.', icon: Leaf, // import from lucide-react href: '/Centros-estrategicos/sostenibilidad.jpeg',},// 2. Add to the navItems subItems for 'Centros Estratégicos'{ label: 'Sostenibilidad Corporativa', href: '/centros/sostenibilidad', iconSrc: '/logo-sostenibilidad.png' },
How do I add a new nav item?
Append a NavItem to the navItems array. For a simple anchor link, provide only label and href. For a dropdown, add a subItems array and optionally viewAllHref.