{"id":215,"date":"2022-02-01T15:30:07","date_gmt":"2022-02-01T15:30:07","guid":{"rendered":"https:\/\/vmsenergy.com\/home-2\/"},"modified":"2026-07-24T13:25:52","modified_gmt":"2026-07-24T19:25:52","slug":"inicio","status":"publish","type":"page","link":"https:\/\/vmsenergy.com\/en\/","title":{"rendered":"HOME"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"215\" class=\"elementor elementor-215\" data-elementor-post-type=\"page\">\n\t\t\t\t<div data-particle_enable=\"false\" data-particle-mobile-disabled=\"false\" class=\"elementor-element elementor-element-c497025 e-flex e-con-boxed e-con e-parent\" data-id=\"c497025\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-079459a elementor-widget-mobile__width-inherit elementor-widget elementor-widget-html\" data-id=\"079459a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!doctype html>\n<html lang=\"es-MX\" data-concept=\"corporativo\">\n<head>\n  <meta charset=\"utf-8\" \/>\n  <meta http-equiv=\"x-ua-compatible\" content=\"ie=edge\" \/>\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" \/>\n  <title>Empresa EPC El&eacute;ctrica Industrial M&eacute;xico | VMS Energy<\/title>\n  <meta name=\"description\" content=\"Empresa EPC el&eacute;ctrica industrial en M&eacute;xico con casi 20 a&ntilde;os de experiencia. Proyectos desde $1,000,000 MXN en Miner&iacute;a, Solar Industrial y Oil &amp; Gas. 5 certificaciones ISO. Solicita evaluaci&oacute;n de tu proyecto.\" \/>\n  <meta name=\"robots\" content=\"index,follow,max-image-preview:large\" \/>\n  <link rel=\"canonical\" href=\"https:\/\/vmsenergy.com\/\" \/>\n  <meta property=\"og:type\" content=\"website\" \/>\n  <meta property=\"og:locale\" content=\"es_MX\" \/>\n  <meta property=\"og:site_name\" content=\"VMS Energy\" \/>\n  <meta property=\"og:title\" content=\"Empresa EPC El&eacute;ctrica Industrial M&eacute;xico | VMS Energy\" \/>\n  <meta property=\"og:description\" content=\"Empresa EPC el&eacute;ctrica industrial en M&eacute;xico con casi 20 a&ntilde;os de experiencia. Proyectos desde $1,000,000 MXN en Miner&iacute;a, Solar Industrial y Oil &amp; Gas. 5 certificaciones ISO. Solicita evaluaci&oacute;n de tu proyecto.\" \/>\n  <meta property=\"og:url\" content=\"https:\/\/vmsenergy.com\/\" \/>\n  <meta property=\"og:image\" content=\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/hero_que_hacemos_VMS_Energy.png\" \/>\n  <meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n  <meta name=\"twitter:title\" content=\"Empresa EPC El&eacute;ctrica Industrial M&eacute;xico | VMS Energy\" \/>\n  <meta name=\"twitter:description\" content=\"Empresa EPC el&eacute;ctrica industrial en M&eacute;xico con casi 20 a&ntilde;os de experiencia. Proyectos desde $1,000,000 MXN en Miner&iacute;a, Solar Industrial y Oil &amp; Gas. 5 certificaciones ISO.\" \/>\n  <meta name=\"twitter:image\" content=\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/hero_que_hacemos_VMS_Energy.png\" \/>\n  <link rel=\"alternate\" hreflang=\"es-MX\" href=\"https:\/\/vmsenergy.com\/index.html\" \/>\n  <link rel=\"alternate\" hreflang=\"en\" href=\"https:\/\/vmsenergy.com\/en\/index.html\" \/>\n  <link rel=\"alternate\" hreflang=\"x-default\" href=\"https:\/\/vmsenergy.com\/index.html\" \/>\n  <link rel=\"stylesheet\" href=\"tokens.css\">\n  <link rel=\"stylesheet\" href=\"corporativo-base.css\">\n  <link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n  <link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\n  <link href=\"https:\/\/fonts.googleapis.com\/css2?family=Roboto+Condensed:wght@400;700&display=swap\" rel=\"stylesheet\">\n  <style>\n    :root{\n      \/* \u2500\u2500 Marca \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n      --navy:#172C51;\n      --cobalt:#0F4C81;\n      --concept-primary:#0F4C81;\n      --ink:#10233D;\n      --muted:#4B647F;\n      --line:rgba(23,44,81,.14);\n      --surface:#ffffff;\n      --soft:#F3F8FF;\n      \/* \u2500\u2500 Paleta extendida \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n      --blue-2:#274B7C;\n      --blue-3:#3A6FA5;\n      --gray:#F2F4F7;\n      --text:#0F172A;\n      --verde-tech:#22C55E;\n      --danger:#EF4444;\n    }\n\n    * {\n    margin: 0;\n    padding: 0;\n    box-sizing: border-box;\n}\n    html{scroll-behavior:smooth}\n    body{padding:0;margin:0;font-family:\"Roboto Condensed\",system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--text);background:#ffffff;}\n    .container{max-width:1200px;margin:0 auto;padding:0}\n    a{text-decoration:none;color:var(--cobalt)}\n\n\n    \/* ===== Anular estilos de tema WordPress en contenedores ===== *\/\n    .hero .container,.hero__wrap,.kpi-strip .container,.hero-to-nos .container,\n    .hero-carousel .container,.hero-slice .nos-carousel,.nos-carousel__box{background:transparent !important;border:none !important;box-shadow:none !important}\n\n   \/* ===== Hero ===== *\/\n    .hero{position:relative;isolation:isolate;min-height:520px;display:grid;align-items:center;color:#fff;overflow:hidden;background:radial-gradient(80% 60% at 70% 20%, rgba(63,111,165,.25), transparent 60%),linear-gradient(180deg, #0a162b 0%, #0a162b 40%, #0f2244 100%);}\n    .hero:before{content:none}\n    .hero-carousel{position:relative}\n    .hero-carousel__viewport{position:relative}\n    .hero-slide{display:none;animation:heroFade .45s ease;position:relative}\n    .hero-slide.is-active{display:block}\n    .hero-slide::after{content:\"\";position:absolute;inset:0;z-index:0}\n    #hero-vms::after{background:linear-gradient(100deg,rgba(10,22,43,.9) 0%,rgba(10,22,43,.76) 45%,rgba(10,22,43,.45) 100%),url('https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/hero_que_hacemos_VMS_Energy.png') center\/cover no-repeat}\n    #hero-sig::after{background:linear-gradient(100deg,rgba(10,22,43,.9) 0%,rgba(10,22,43,.76) 45%,rgba(10,22,43,.45) 100%),url('https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/hero_SIG.webp') center\/cover no-repeat}\n    #hero-electromecanicas::after{background:linear-gradient(100deg,rgba(10,22,43,.9) 0%,rgba(10,22,43,.76) 45%,rgba(10,22,43,.45) 100%),url('https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/07\/plano_electromecanicos.webp') center\/cover no-repeat}\n    #hero-iluminacion::after{background:linear-gradient(100deg,rgba(10,22,43,.9) 0%,rgba(10,22,43,.76) 45%,rgba(10,22,43,.45) 100%),url('https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/iluminacion.webp') center\/cover no-repeat}\n    #hero-infraestructura-electrica::after{background:linear-gradient(100deg,rgba(10,22,43,.9) 0%,rgba(10,22,43,.76) 45%,rgba(10,22,43,.45) 100%),url('https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/infraestructura_electrica.webp') center\/cover no-repeat}\n    #hero-oil-gas::after{background:linear-gradient(100deg,rgba(10,22,43,.9) 0%,rgba(10,22,43,.76) 45%,rgba(10,22,43,.45) 100%),url('https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/oil_gas.webp') center\/cover no-repeat}\n    #hero-solar::after{background:linear-gradient(100deg,rgba(10,22,43,.9) 0%,rgba(10,22,43,.76) 45%,rgba(10,22,43,.45) 100%),url('https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/energia_solar_industrial.webp') center\/cover no-repeat}\n    #hero-no-solar::after{background:linear-gradient(100deg,rgba(10,22,43,.9) 0%,rgba(10,22,43,.76) 45%,rgba(10,22,43,.45) 100%),url('https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/energia_verdes_hero.png') center\/cover no-repeat}\n    #hero-automatizacion-control::after{background:linear-gradient(100deg,rgba(10,22,43,.9) 0%,rgba(10,22,43,.76) 45%,rgba(10,22,43,.45) 100%),url('https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/07\/automatizacion_control.webp') center\/cover no-repeat}\n    .hero__wrap{display:grid;grid-template-columns:1fr;gap:20px;align-items:center;padding:88px 0;min-height:520px;position:relative;z-index:1}\n    .hero__content{max-width:760px}\n    .eyebrow{display:inline-block;padding:.25rem .6rem;border:1px solid rgba(255,255,255,.25);border-radius:999px;font-size:.8rem;letter-spacing:.4px;margin-bottom:14px}\n    .hero h1,.hero h2{font-size:clamp(28px,4.2vw,48px);line-height:1.05;margin:0 0 12px}\n    .hero p{font-size:clamp(16px,2.1vw,20px);opacity:.9;margin:0 0 20px}\n    .hero__ctas{display:flex;gap:12px;flex-wrap:wrap}\n    .btn{display:inline-flex;align-items:center;gap:8px;border-radius:14px;padding:12px 18px;font-weight:700;text-decoration:none;border:1px solid transparent}\n    .btn--primary{background:var(--cobalt);color:#fff}\n    .btn--secondary{background:transparent;border-color:rgba(255,255,255,.35);color:#fff}\n    .hero__image{display:none}\n    .hero-carousel__nav{position:absolute;top:50%;transform:translateY(-50%);z-index:10;border:1px solid rgba(255,255,255,.28);background:rgba(10,22,43,.48);color:#fff;border-radius:999px;width:42px;height:42px;display:grid;place-items:center;cursor:pointer;pointer-events:auto !important;touch-action:manipulation}\n    .hero-carousel__nav:hover{background:rgba(10,22,43,.72)}\n    .hero-carousel__nav--prev{left:16px}\n    .hero-carousel__nav--next{right:16px}\n    .hero-carousel__dots{display:flex;justify-content:center;gap:8px;padding:0 0 18px}\n    .hero-carousel__dot{width:10px;height:10px;border-radius:999px;border:1px solid rgba(255,255,255,.5);background:transparent;cursor:pointer}\n    .hero-carousel__dot.is-active{background:#fff}\n    @keyframes heroFade{from{opacity:.2;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}\n    \/* ===== Trust \/ ISO ===== *\/\n    .trust{background:linear-gradient(180deg,#fff,#f7f9fc)}\n    .trust__grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}\n    .trust__card{border:1px solid rgba(23,44,81,.12);border-radius:14px;padding:14px;background:#fff}\n    .trust__title{font-size:.9rem;color:var(--navy);margin:0}\n    .trust__code{font-size:.8rem;color:#475569;margin:4px 0 0}\n\n    \/* ===== Differentiators ===== *\/\n    .diff{padding:40px 0}\n    .diff-carousel{\n      position:relative;\n      border:0;\n      border-radius:0;\n      background:transparent;\n      box-shadow:none;\n      overflow:hidden;\n    }\n    .diff-carousel__viewport{\n      overflow:hidden;\n      padding:0 12px 8px;\n    }\n    .diff-carousel__track{\n      display:flex;\n      gap:28px;\n      transition:transform .62s cubic-bezier(.22,.61,.36,1);\n      will-change:transform;\n    }\n    .diff-slide{\n      width:fit-content;\n      min-width:0;\n      max-width:calc(100vw - 24px);\n      position:relative;\n      display:flex;\n      align-items:flex-end;\n      overflow:hidden;\n      border-radius:14px;\n      border:1px solid rgba(23,44,81,.12);\n      background:#FFFFFF;\n      flex:0 0 auto;\n    }\n    .diff-slide__media{\n      position:relative;\n      width:clamp(520px,74vw,760px);\n      min-height:390px;\n      flex:0 0 auto;\n      overflow:hidden;\n      border-top-right-radius:12px;\n      border-bottom-right-radius:12px;\n      background:linear-gradient(180deg,rgba(15,76,129,.24),rgba(10,22,43,.26));\n    }\n    .diff-slide__media img{\n      width:100%;\n      height:100%;\n      object-fit:cover;\n      display:block;\n      transform:scale(1);\n      transition:transform .7s cubic-bezier(.22,.61,.36,1);\n    }\n    .diff-slide__panel{\n      position:relative;\n      right:auto;\n      bottom:auto;\n      width:clamp(150px,18vw,186px);\n      max-width:186px;\n      min-height:188px;\n      background:linear-gradient(180deg,#172C51,#0f2342);\n      color:#ffffff;\n      padding:12px 10px 10px;\n      display:flex;\n      flex-direction:column;\n      justify-content:space-between;\n      align-items:center;\n      gap:10px;\n      margin-left:clamp(-108px,-9vw,-82px);\n      margin-right:clamp(10px,1.8vw,20px);\n      margin-bottom:clamp(12px,2vw,20px);\n      transform:none;\n      transition:transform .7s cubic-bezier(.22,.61,.36,1);\n      box-shadow:0 14px 24px rgba(3,14,28,.34);\n      border-radius:10px;\n      z-index:2;\n      border:1px solid rgba(142,215,255,.22);\n    }\n    .diff-slide.is-active .diff-slide__media img{\n      transform:scale(1);\n    }\n    .diff-slide.is-active .diff-slide__panel{\n      transform:none;\n    }\n    .diff-slide__badge{\n      width:100%;\n      max-width:140px;\n      min-width:112px;\n      aspect-ratio:1 \/ 1;\n      height:auto;\n      object-fit:contain;\n      display:block;\n      filter:drop-shadow(0 6px 12px rgba(0,0,0,.20));\n      transform-origin:center;\n    }\n    .diff-slide__title{\n      margin:0;\n      font-size:clamp(.96rem,1.2vw,1.12rem);\n      line-height:1.12;\n      color:#f7fbff;\n      font-weight:800;\n      max-width:12ch;\n      text-align:center;\n      text-shadow:0 2px 8px rgba(0,0,0,.35);\n    }\n    .diff-carousel__caption{\n      margin:-12px 12px 0;\n      border-radius:8px;\n      border:1px solid rgba(23,44,81,.14);\n      background:#ffffff;\n      padding:11px 14px;\n      box-shadow:0 10px 24px rgba(8,28,54,.08);\n      position:relative;\n      z-index:2;\n    }\n    .diff-carousel__caption-title{\n      margin:0 0 4px;\n      color:#12365f;\n      font-size:.96rem;\n      font-weight:800;\n      letter-spacing:.12px;\n    }\n    .diff-carousel__caption-text{\n      margin:0;\n      color:#344d6a;\n      line-height:1.45;\n      font-size:.88rem;\n    }\n    .diff-carousel__btn{\n      position:absolute;\n      top:50%;\n      transform:translateY(-50%);\n      width:34px;\n      height:34px;\n      border-radius:999px;\n      border:1px solid rgba(255,255,255,.55);\n      background:rgba(10,22,43,.44);\n      color:#fff;\n      cursor:pointer;\n      z-index:2;\n      display:grid;\n      place-items:center;\n      font-size:20px;\n      line-height:1;\n    }\n    .diff-carousel__btn:hover{background:rgba(10,22,43,.7)}\n    .diff-carousel__btn--prev{left:12px}\n    .diff-carousel__btn--next{right:12px}\n    .diff-carousel__dots{\n      display:flex;\n      justify-content:center;\n      gap:8px;\n      padding:12px 0 6px;\n      background:transparent;\n    }\n    .diff-carousel__dot{\n      width:9px;\n      height:9px;\n      border-radius:999px;\n      border:1px solid rgba(15,76,129,.45);\n      background:transparent;\n      cursor:pointer;\n    }\n    .diff-carousel__dot.is-active{\n      background:var(--concept-primary);\n      border-color:var(--concept-primary);\n    }\n    @media (max-width:980px){\n      .diff-slide{\n        width:fit-content;\n        min-width:0;\n        max-width:92vw;\n      }\n      .diff-slide__media{\n        width:clamp(420px,76vw,620px);\n        min-height:360px;\n      }\n      .diff-slide__panel{\n        margin-left:clamp(-92px,-10vw,-70px);\n        margin-right:12px;\n        margin-bottom:14px;\n        width:clamp(138px,24vw,172px);\n        max-width:172px;\n        min-height:174px;\n        padding:10px 8px 8px;\n      }\n      .diff-slide__badge{\n        width:100%;\n        max-width:126px;\n        min-width:98px;\n      }\n      .diff-slide__title{font-size:clamp(.92rem,2.2vw,1.06rem)}\n    }\n    @media (max-width:640px){\n      .diff-slide{\n        width:92vw;\n        min-width:92vw;\n        position:relative;\n        display:block;\n        max-width:none;\n      }\n      .diff-slide__media{\n        width:100%;\n        min-height:380px;\n      }\n      .diff-slide__panel{\n        position:absolute;\n        left:50%;\n        bottom:12px;\n        width:min(82%,320px);\n        max-width:320px;\n        min-height:unset;\n        padding:7px;\n        margin:0;\n        transform:translateX(-50%);\n        z-index:2;\n      }\n      .diff-slide.is-active .diff-slide__panel{transform:translateX(-50%)}\n      .diff-slide__badge{\n        width:90%;\n        max-width:172px;\n        min-width:110px;\n      }\n      .diff-slide__title{font-size:1rem}\n      .diff-carousel__caption-text{font-size:.82rem}\n      .diff-carousel__caption{margin:-17px 10px 0}\n    }\n    .diff__badge{\n      width:100%;\n      max-width:100%;\n      height:clamp(86px,10vw,124px);\n      object-fit:contain;\n      display:block;\n      margin:0 0 12px;\n    }\n    .card{border:1px solid rgba(23,44,81,.12);border-radius:16px;padding:18px;background:#fff}\n    .card h3{margin:8px 0 6px;font-size:18px;color:var(--navy)}\n    .card p{margin:0;color:#475569;font-size:15px}\n\n    \/* ===== Soluciones ===== *\/\n    .sol{background:#fff}\n    .sol__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}\n    .sol__item{position:relative;border:1px solid rgba(23,44,81,.12);border-radius:16px;overflow:hidden;background:#0a162b;color:#fff}\n    .sol__img{height:140px;background:linear-gradient(180deg,rgba(15,76,129,.25),rgba(15,76,129,.6)),url('https:\/\/images.unsplash.com\/photo-1509395176047-4a66953fd231?q=80&w=1400&auto=format&fit=crop') center\/cover}\n    .sol__body{padding:14px}\n    .sol__body h3{margin:0 0 6px;font-size:18px}\n    .sol__body p{margin:0 0 10px;font-size:14px;opacity:.9}\n\n    \/* ===== Servicios & Especialidades (Blueprint) ===== *\/\n    .svc{\n      position:relative;\n      padding:clamp(28px,4vw,56px) 0;\n      color:#eaf2ff;\n      background:radial-gradient(1200px 680px at 20% 10%, rgba(58,111,165,.18), transparent 60%),\n                 radial-gradient(900px 520px at 90% 20%, rgba(15,76,129,.20), transparent 55%),\n                 linear-gradient(180deg, rgba(23,44,81,.85), rgba(10,22,40,.92));\n      overflow:hidden;\n      border-top:1px solid rgba(255,255,255,.06);\n      border-bottom:1px solid rgba(255,255,255,.06);\n    }\n    .svc::before{content:none}\n    .svc .container{position:relative;z-index:1}\n    .section-intro,\n    .svc__intro{\n      margin:0 0 14px;\n      padding:16px 18px;\n      border-radius:14px;\n      border:1px solid rgba(23,44,81,.14);\n      background:#f7f9fc;\n      box-shadow:0 10px 24px rgba(8,28,54,.06);\n    }\n    .svc__intro{\n      display:flex;\n      align-items:center;\n      justify-content:space-between;\n      gap:16px;\n    }\n    .svc__intro-main{flex:1 1 auto}\n    .svc__intro-cta{\n      display:flex;\n      align-items:center;\n      justify-content:flex-end;\n      text-align:right;\n      flex:0 0 auto;\n    }\n    .section-intro--compact{\n      margin-bottom:12px;\n      padding:14px 16px;\n    }\n    .section-intro__title,\n    .svc__intro h3{\n      margin:0;\n      color:#113960;\n      font-size:clamp(1.35rem,2.1vw,2rem);\n      line-height:1.08;\n    }\n    .section-intro__lead,\n    .svc__intro p{\n      margin:6px 0 0;\n      color:#5b7391;\n      font-size:1rem;\n      line-height:1.4;\n    }\n    .section-intro__cta{\n      margin-top:10px;\n      display:flex;\n      justify-content:flex-end;\n    }\n    .svc__head{\n      display:flex;\n      align-items:center;\n      justify-content:flex-start;\n      gap:10px;\n      margin:2px 0 12px;\n      padding-left:2px;\n    }\n    .svc__cta .btn{\n      padding:8px 14px;\n      border-radius:10px;\n      border:1px solid rgba(17,57,96,.28);\n      background:#fff;\n      color:var(--concept-primary);\n      font-weight:700;\n      box-shadow:none;\n    }\n    .svc__cta .btn:hover{\n      background:rgba(142,215,255,.14);\n      border-color:rgba(17,57,96,.45);\n      transform:translateY(-1px);\n    }\n    .svc__kicker{margin:0 0 6px;font-size:.92rem;letter-spacing:.12em;text-transform:uppercase;color:rgba(234,242,255,.78)}\n    .svc__title{margin:0;font-size:clamp(1.35rem,2.4vw,2.05rem);line-height:1.1;color:#eaf2ff}\n    .svc__cta{display:flex;gap:10px}\n    .svc{--svc-gap:25px}\n    .svc__carousel{position:relative}\n    .svc__viewport{overflow:hidden}\n    .svc__grid{\n      display:flex;\n      gap:var(--svc-gap);\n      transition:transform .35s ease;\n      will-change:transform;\n    }\n    .svc__grid .svc__card{\n      flex:0 0 calc((100% - (var(--svc-gap) * 2)) \/ 3);\n      min-width:0;\n    }\n    .svc__nav{\n      position:absolute;\n      left:12px;\n      right:12px;\n      top:50%;\n      transform:translateY(-50%);\n      display:flex;\n      justify-content:space-between;\n      gap:10px;\n      margin:0;\n      z-index:3;\n      pointer-events:none;\n    }\n    .svc__navBtn{\n      width:42px;height:42px;border-radius:999px;\n      border:1px solid rgba(215,242,255,.45);\n      background:rgba(8,22,44,.58);color:#eaf2ff;\n      cursor:pointer;font-size:18px;line-height:1;\n      pointer-events:auto;\n      box-shadow:0 8px 22px rgba(4,12,24,.45);\n    }\n    .svc__navBtn:hover{\n      background:rgba(12,36,68,.84);\n      border-color:rgba(215,242,255,.82);\n    }\n    .svc__navBtn:disabled{opacity:.45;cursor:not-allowed}\n    .svc__dots{\n      display:flex;\n      justify-content:center;\n      gap:8px;\n      margin:12px 0 0;\n    }\n    .svc__dot{\n      width:10px;\n      height:10px;\n      border-radius:999px;\n      border:1px solid rgba(234,242,255,.82);\n      background:rgba(255,255,255,.18);\n      padding:0;\n      cursor:pointer;\n      transition:all .22s ease;\n    }\n    .svc__dot.is-active{\n      width:26px;\n      background:linear-gradient(90deg,#78d3ff,#b9edff);\n      border-color:#b9edff;\n      box-shadow:0 0 0 3px rgba(143,215,255,.18),0 0 12px rgba(120,211,255,.45);\n    }\n    .svc__card{\n      border-radius:18px;overflow:hidden;\n      background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.02));\n      border:1px solid rgba(255,255,255,.10);\n      box-shadow:0 10px 30px rgba(0,0,0,.22);\n      transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;\n    }\n    .svc__media{position:relative;aspect-ratio:4\/3;border-bottom:1px solid rgba(255,255,255,.10)}\n    .svc__media img{width:100%;height:100%;object-fit:cover;display:block;opacity:.95;filter:contrast(1.02) saturate(1.02)}\n    .svc__glow{\n      position:absolute;inset:-30%;\n      background:radial-gradient(closest-side, rgba(110,210,255,.22), transparent 70%);\n      opacity:0;transform:translate3d(-10px,10px,0);pointer-events:none;transition:opacity .18s ease,transform .18s ease;\n    }\n    .svc__body{padding:14px 14px 12px}\n    .svc__name{margin:0 0 8px;font-size:1.02rem;letter-spacing:.01em;color:#eaf2ff}\n    .svc__bullets{margin:0;padding-left:18px;color:rgba(234,242,255,.78);font-size:.94rem;line-height:1.35}\n    .svc__bullets li{margin:6px 0}\n    .svc__actions{margin-top:12px;display:flex;align-items:center;justify-content:flex-start;gap:12px}\n    .svc__link{\n      display:inline-flex;align-items:center;gap:8px;\n      padding:8px 12px;\n      border-radius:999px;\n      border:1px solid rgba(147,230,255,.55);\n      background:linear-gradient(180deg, rgba(95,197,255,.22), rgba(27,98,163,.30));\n      color:#eaf7ff;\n      text-decoration:none;\n      font-weight:700;\n      font-size:.9rem;\n      letter-spacing:.01em;\n      box-shadow:0 8px 20px rgba(5,16,34,.32), inset 0 0 0 1px rgba(255,255,255,.08);\n      transition:transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease;\n    }\n    .svc__link::after{\n      content:\"\\2192\";\n      font-size:.95em;\n      transform:translateX(0);\n      transition:transform .18s ease;\n    }\n    .svc__link:hover{\n      transform:translateY(-1px);\n      border-color:rgba(187,241,255,.85);\n      background:linear-gradient(180deg, rgba(113,211,255,.30), rgba(35,122,198,.38));\n      box-shadow:0 12px 24px rgba(5,16,34,.4), inset 0 0 0 1px rgba(255,255,255,.12);\n    }\n    .svc__link:hover::after{\n      transform:translateX(2px);\n    }\n    .svc__link:focus-visible{\n      outline:2px solid rgba(214,243,255,.92);\n      outline-offset:2px;\n    }\n    .svc__card:hover{transform:translateY(-3px);border-color:rgba(180,235,255,.26);box-shadow:0 22px 60px rgba(0,0,0,.35)}\n    .svc__card:hover .svc__glow{opacity:1;transform:translate3d(0,0,0)}\n    .svc__card:hover .svc__media img{opacity:1;filter:contrast(1.08) saturate(1.05)}\n    .svc__note{margin-top:14px;color:rgba(234,242,255,.82)}\n    @media (max-width:640px){\n      .section-intro,\n      .svc__intro{padding:14px}\n      .svc__intro{\n        flex-direction:column;\n        align-items:flex-start;\n      }\n      .svc__intro-cta{\n        width:100%;\n        justify-content:flex-end;\n      }\n      .svc__head{align-items:flex-start;flex-direction:column}\n      .svc__nav{left:8px;right:8px}\n      .svc__navBtn{width:38px;height:38px}\n    }\n\n    \/* ===== Suministro (marcas\/procura) ===== *\/\n    .procura{background:linear-gradient(180deg,#f7f9fc,#fff)}\n    .procura__form{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}\n    .input, select, textarea{width:100%;padding:12px;border:1px solid rgba(23,44,81,.18);border-radius:12px;font-size:15px}\n    .hint{font-size:12px;color:#64748B;margin-top:6px}\n\n    \/* ===== Testimonios (prueba social) ===== *\/\n    .testi__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}\n    .quote{background:#fff;border:1px solid rgba(23,44,81,.12);border-radius:16px;padding:18px}\n    .quote p{margin:0 0 10px}\n    .quote .who{font-size:14px;color:#475569}\n    \/* ===== Proyectos Destacados (Look & Feel v15) ===== *\/\n    .cvproj{\n      padding:34px 0 44px;\n      background:transparent;\n    }\n    .cvproj + #servicios-legacy{\n      display:none !important;\n      padding:0 !important;\n      margin:0 !important;\n      min-height:0 !important;\n    }\n    #cv-proyectos{padding-bottom:16px}\n    #contacto{padding-top:28px}\n    .cvproj__head{margin-bottom:14px}\n    .cvproj__kicker{\n      margin:0;\n      color:rgba(23,44,81,.70);\n      letter-spacing:.14em;\n      text-transform:uppercase;\n      font-size:.78rem;\n    }\n    .cvproj__title{\n      margin:.25rem 0 0;\n      color:#0b2545;\n      font-size:clamp(1.45rem,2.2vw,2.05rem);\n      line-height:1.08;\n    }\n    .cvproj .svc__grid{\n      display:grid;\n      grid-template-columns:1fr;\n      justify-items:stretch;\n    }\n    .cvproj .svc__grid > .cvproj__tabs{width:100%}\n    .cvproj__tabs{\n      display:grid;\n      grid-template-columns:repeat(auto-fit,minmax(280px,1fr));\n      gap:clamp(24px,3vw,40px);\n      align-items:stretch;\n      justify-items:center;\n      margin:18px 0 18px;\n      padding:4px 6px;\n    }\n    .cvproj .cvtab.svc__card{\n      width:100%;\n      max-width:360px;\n      height:260px;\n      border-radius:18px;\n      background:#0b1a2b;\n      border:0;\n      box-shadow:0 18px 46px rgba(0,0,0,.10);\n      overflow:hidden;\n      position:relative;\n      flex:0 0 auto;\n      justify-self:center;\n      transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;\n    }\n    .cvproj .cvtab.svc__card:hover{\n      transform:translateY(-3px);\n      border-color:rgba(15,76,129,.22);\n      box-shadow:0 24px 60px rgba(0,0,0,.14);\n    }\n    .cvproj .cvtab .svc__media{\n      height:100%;\n      border-bottom:0;\n      background:transparent;\n      padding:0;\n      box-sizing:border-box;\n      overflow:hidden;\n      border-radius:inherit;\n    }\n    .cvproj .cvtab .svc__media img{\n      width:calc(100% + 12px);\n      max-width:none;\n      height:100%;\n      border-radius:inherit;\n      margin-right:-12px;\n      object-fit:cover;\n      object-position:center;\n      filter:contrast(1.06) saturate(1.05);\n    }\n    .cvproj .cvtab .svc__glow{display:none !important}\n    .cvproj__tab{\n      position:absolute;\n      left:50%;\n      bottom:14px;\n      transform:translateX(-50%);\n      width:220px;\n      min-height:48px;\n      padding:10px 14px;\n      border-radius:999px;\n      border:1px solid rgba(15,76,129,.18);\n      background:#e9eef6;\n      color:rgba(23,44,81,.92);\n      font-weight:700;\n      font-size:1rem;\n      line-height:1.05;\n      cursor:pointer;\n      box-shadow:0 10px 24px rgba(0,0,0,.10);\n      transition:transform .14s ease,background .14s ease,border-color .14s ease,box-shadow .14s ease;\n    }\n    .cvproj__tab:hover{transform:translateX(-50%) translateY(-1px)}\n    .cvproj__tab:focus-visible{\n      outline:none;\n      box-shadow:0 0 0 4px rgba(58,111,165,.18),0 12px 26px rgba(0,0,0,.12);\n    }\n    .cvproj .cvtab:has(.cvproj__tab.is-active),\n    .cvproj .cvtab.is-active{\n      border-color:rgba(15,76,129,.28);\n      box-shadow:0 26px 70px rgba(0,0,0,.16);\n    }\n    .cvproj__tab.is-active{\n      background:#cfeeff;\n      border-color:rgba(15,76,129,.28);\n      box-shadow:0 0 0 4px rgba(58,111,165,.16),0 14px 30px rgba(0,0,0,.14);\n    }\n    #cvproj-panel{margin-top:10px}\n    .cvproj__track{\n      display:grid;\n      gap:18px;\n      grid-template-columns:repeat(3,minmax(0,1fr));\n    }\n    .cvproj__card{\n      border-radius:18px;\n      overflow:hidden;\n      position:relative;\n      border:1px solid rgba(15,76,129,.10);\n      box-shadow:0 22px 60px rgba(0,0,0,.14);\n      background:#0b1a2b;\n    }\n    .cvproj__img{\n      width:100%;\n      height:clamp(200px,18vw,260px);\n      object-fit:cover;\n      display:block;\n      filter:contrast(1.03) saturate(1.02);\n    }\n    .cvproj__shade{\n      position:absolute;\n      inset:0;\n      background:linear-gradient(to bottom,rgba(0,0,0,.08) 0%,rgba(0,0,0,.70) 88%,rgba(0,0,0,.78) 100%);\n      pointer-events:none;\n    }\n    .cvproj__footer{\n      position:absolute;\n      left:0;\n      right:0;\n      bottom:0;\n      padding:12px 14px 14px;\n      color:#fff;\n      backdrop-filter:blur(6px);\n      background:linear-gradient(to bottom,rgba(255,255,255,.06),rgba(255,255,255,.03));\n    }\n    .cvproj__name{\n      margin:0 0 8px;\n      font-size:1.02rem;\n      line-height:1.2;\n      letter-spacing:.01em;\n      text-transform:uppercase;\n      font-weight:700;\n    }\n    .cvproj__bullets{\n      margin:0;\n      padding-left:16px;\n      opacity:.92;\n      display:grid;\n      gap:6px;\n    }\n    .cvproj__bullets li{line-height:1.25;font-size:.92rem}\n    @media (max-width:1100px){\n      .cvproj__track{grid-template-columns:repeat(2,minmax(0,1fr))}\n    }\n    @media (max-width:980px){\n      .cvproj__tabs{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}\n      .cvproj .cvtab.svc__card{max-width:340px;height:240px}\n    }\n    @media (max-width:680px){\n      .cvproj__track{grid-template-columns:1fr}\n    }\n    @media (max-width:640px){\n      .cvproj__tabs{grid-template-columns:1fr;gap:16px;padding:0}\n      .cvproj .cvtab.svc__card{max-width:100%;height:230px}\n    }\n    #footer .foot-link{color:#cbd5e1;text-decoration:none}\n    #footer .foot-link:hover,#footer .foot-link:focus-visible{color:#fff}\n    #footer .foot-link--accent{color:#4aa3ff;font-weight:700}\n    #footer .foot-link--accent:hover,#footer .foot-link--accent:focus-visible{color:#7cc1ff}\n    #footer .foot-link--strong{color:#fff;font-weight:700}\n    .foot-social__link{\n      display:inline-flex;\n      width:26px;\n      height:26px;\n    }\n    .foot-social__link svg{\n      fill:#fff;\n      transition:fill .3s ease;\n    }\n    .foot-social__link:hover svg,\n    .foot-social__link:focus-visible svg{\n      fill:var(--concept-primary);\n    }\n    @media (max-width:1300px){\n      #footer .container{\n        grid-template-columns:repeat(3,minmax(0,1fr)) !important;\n        gap:20px !important;\n        padding:34px 0 !important;\n      }\n    }\n    @media (max-width:980px){\n      #footer .container{\n        grid-template-columns:repeat(2,minmax(0,1fr)) !important;\n      }\n    }\n    @media (max-width:700px){\n      #footer .container{\n        grid-template-columns:1fr !important;\n        gap:16px !important;\n        padding:24px 0 !important;\n      }\n      #footer ul{\n        line-height:1.6;\n      }\n    }\n\n    \/* ===== Utilities ===== *\/\n    section{padding:48px 0}\n    .section-title{font-size:24px;color:var(--navy);margin:0 0 12px}\n    .section-lead{margin:0 0 24px;color:#475569}\n\n    \/* ===== Responsive ===== *\/\n    @media (max-width:1024px){\n      .hero__wrap{grid-template-columns:1fr;min-height:500px}\n      .trust__grid{grid-template-columns:repeat(3,1fr)}\n      .diff__grid{grid-template-columns:repeat(2,1fr)}\n      .sol__grid{grid-template-columns:repeat(2,1fr)}\n      .testi__grid{grid-template-columns:1fr 1fr}\n      .procura__form{grid-template-columns:1fr 1fr}\n    }\n    @media (max-width:680px){\n      .hero__wrap{padding:72px 0 86px;min-height:460px}\n      .hero__content{max-width:100%}\n      .hero-carousel__nav{width:36px;height:36px}\n      .hero-carousel__nav--prev{left:8px}\n      .hero-carousel__nav--next{right:8px}\n      .trust__grid{grid-template-columns:1fr 1fr}\n      .diff__grid,.sol__grid,.testi__grid,.procura__form{grid-template-columns:1fr}\n    }\n      \/* ===== Accordion (Servicios) ===== *\/\n    .accordion{margin-top:8px}\n    .accordion details{border:1px solid rgba(23,44,81,.12);border-radius:14px;background:#fff;margin:10px 0;padding:12px}\n    .accordion summary{cursor:pointer;font-weight:700;color:var(--navy);outline:none}\n    .accordion ul{margin:8px 0 0 18px;color:#475569}\n    .badge{display:inline-block;font-size:12px;padding:.1rem .5rem;border:1px solid rgba(23,44,81,.15);border-radius:999px;margin-left:8px;color:#475569}\n    \/* ===== Filters (Servicios) ===== *\/\n    .filters{display:flex;gap:16px;align-items:flex-start;flex-wrap:wrap;margin:8px 0 16px}\n    .filters fieldset{border:1px solid rgba(23,44,81,.12);border-radius:12px;padding:10px 12px;background:#fff}\n    .filters legend{font-weight:700;color:var(--navy);font-size:14px;padding:0 6px}\n    .filters label{display:inline-flex;gap:8px;align-items:center;margin-right:12px;font-size:14px;color:#475569}\n    .filters input[type=\"checkbox\"]{inline-size:16px;block-size:16px}\n    .hidden{display:none !important}\n      \/* ===== Suministro t&eacute;cnico \u2013 Cat&aacute;logo ===== *\/\n    .prod-filters{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0}\n    .prod-filters select,.prod-filters input[type=\"search\"]{padding:10px;border:1px solid rgba(23,44,81,.18);border-radius:10px;font-size:14px}\n    .prod-accordion details{border:1px solid rgba(23,44,81,.12);border-radius:14px;background:#fff;margin:10px 0;padding:12px}\n    .prod-accordion summary{cursor:pointer;font-weight:700;color:var(--navy)}\n    .prod-meta{display:flex;gap:8px;flex-wrap:wrap;margin:6px 0}\n    .avail{font-size:12px;border-radius:999px;padding:.1rem .5rem;border:1px solid rgba(23,44,81,.15)}\n    .avail--yes{color:#065f46;background:#d1fae5;border-color:#bbf7d0}\n    .avail--no{color:#7f1d1d;background:#fee2e2;border-color:#fecaca}\n    \/* ===== Nosotros (cards + acorde&oacute;n) ===== *\/\n    .about{background:linear-gradient(180deg,#fff,#f7f9fc)}\n    .about .section-lead{max-width:900px}\n    .about__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}\n    .about__grid .card{min-height:100%}\n    .about__accord details{border:1px solid rgba(23,44,81,.12);border-radius:14px;background:#fff;margin:10px 0;padding:12px}\n    .about__accord summary{cursor:pointer;font-weight:700;color:var(--navy)}\n    .about__img-placeholder{\n      margin-top:12px;\n      border:1px dashed rgba(23,44,81,.35);\n      border-radius:12px;\n      padding:14px;\n      background:linear-gradient(180deg,rgba(23,44,81,.04),rgba(23,44,81,.01));\n      color:#334155;\n      font-size:14px;\n      text-align:center;\n    }\n    .about__how-layout{\n      margin-top:10px;\n      display:grid;\n      grid-template-columns:minmax(280px,40%) 1fr;\n      gap:14px;\n      align-items:stretch;\n    }\n    .about__how-text p:first-child{margin-top:0}\n    .about__img-placeholder img{\n      display:block;\n      width:100%;\n      height:100%;\n      max-height:360px;\n      margin:0 auto;\n      object-fit:contain;\n      border-radius:8px;\n    }\n    @media (max-width:900px){\n      .about__how-layout{grid-template-columns:1fr}\n      .about__img-placeholder img{height:auto;max-height:none}\n    }\n    .personas{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}\n    .persona{background:#fff;border:1px solid rgba(23,44,81,.12);border-radius:16px;padding:14px}\n    .persona h4{margin:0 0 6px;color:var(--navy)}\n    .pill{display:inline-block;border:1px solid rgba(23,44,81,.15);border-radius:999px;padding:.1rem .5rem;font-size:12px;color:#475569;margin-right:6px}\n    @media (max-width:1024px){.about__grid{grid-template-columns:1fr 1fr}.personas{grid-template-columns:repeat(2,1fr)}}\n    @media (max-width:680px){.about__grid{grid-template-columns:1fr}.personas{grid-template-columns:1fr}}\n  \n    \/* ===== Hero -> Nosotros transition ===== *\/\n    .hero-to-nos{\n      position:relative;\n      height:70px;\n      margin:0;\n      background:\n        radial-gradient(60% 140% at 50% 0%, rgba(128,211,255,.20), rgba(128,211,255,0) 68%),\n        linear-gradient(180deg, #072347 0%, #081a33 55%, #071428 100%);\n      border-top:1px solid rgba(173,229,255,.20);\n      border-bottom:1px solid rgba(173,229,255,.12);\n      overflow:hidden;\n    }\n    .hero-to-nos::before{content:none}\n    .hero-to-nos::after{\n      content:\"\";\n      position:absolute;\n      left:50%;\n      top:-26px;\n      width:560px;\n      max-width:86vw;\n      height:92px;\n      transform:translateX(-50%);\n      border-radius:999px;\n      background:radial-gradient(closest-side, rgba(126,221,255,.30), rgba(126,221,255,0));\n      filter:blur(2px);\n      pointer-events:none;\n    }\n    @media (max-width:768px){\n      .hero-to-nos{height:48px}\n      .hero-to-nos::after{width:72vw;height:62px;top:-18px}\n    }\n    \/* ===== Hero slices (dividers) ===== *\/\n    .hero-slice{\n      position:relative;\n      isolation:isolate;\n      color:#fff;\n      padding:48px 0;\n      background:\n        radial-gradient(72% 78% at 88% 12%, rgba(92,167,235,.22), transparent 60%),\n        linear-gradient(180deg, #071428 0%, #0c2346 100%);\n      border-block:1px solid rgba(255,255,255,.14);\n      overflow:hidden;\n    }\n    .hero-slice:before{content:none}\n    .hero-slice .container{\n      position:relative;\n      z-index:1;\n      padding:20px 24px 22px;\n      border-radius:18px;\n      border:1px solid rgba(185,226,255,.22);\n      background:linear-gradient(180deg, rgba(21,52,90,.58), rgba(11,32,60,.46));\n      box-shadow:0 18px 48px rgba(2,10,24,.42), inset 0 1px 0 rgba(255,255,255,.06);\n    }\n    .hero-slice .container:before{\n      content:\"\";\n      position:absolute;\n      top:0;\n      left:0;\n      width:100%;\n      height:3px;\n      border-radius:18px 18px 0 0;\n      background:linear-gradient(90deg, rgba(142,222,255,.86), rgba(142,222,255,0));\n    }\n    .hero-slice h1,.hero-slice h2{\n      margin:0 0 8px;\n      font-size:clamp(1.9rem, 3.2vw, 2.45rem);\n      line-height:1.05;\n      color:#f6fbff;\n      letter-spacing:.01em;\n    }\n    .hero-slice h3{\n      margin:0 0 8px;\n      font-size:clamp(1.2rem, 2.1vw, 1.65rem);\n      line-height:1.15;\n      color:#e9f5ff;\n    }\n    .hero-slice p{\n      margin:0;\n      max-width:68ch;\n      color:#c8ddf2;\n      font-size:clamp(.93rem, 1.25vw, 1.02rem);\n    }\n    #procura .section-title,\n    #productos .section-title,\n    [data-section=\"procura\"] .section-title,\n    [data-section=\"productos\"] .section-title{\n      display:inline-block;\n      margin-bottom:10px;\n      padding:7px 14px;\n      border-radius:999px;\n      color:#f4f9ff;\n      background:linear-gradient(180deg, rgba(15,76,129,.95), rgba(14,56,97,.95));\n      border:1px solid rgba(196,230,255,.35);\n      box-shadow:0 10px 22px rgba(4,18,36,.22);\n    }\n    #procura .section-lead,\n    #productos .section-lead,\n    [data-section=\"procura\"] .section-lead,\n    [data-section=\"productos\"] .section-lead{\n      max-width:72ch;\n      color:#325377;\n    }\n    @media (max-width:768px){\n      .hero-slice{\n        padding:30px 0;\n      }\n      .hero-slice .container{\n        padding:14px 14px 16px;\n        border-radius:14px;\n      }\n      .hero-slice .container:before{\n        height:2px;\n        border-radius:14px 14px 0 0;\n      }\n      .hero-slice h1,.hero-slice h2{\n        font-size:clamp(1.5rem, 6.8vw, 1.95rem);\n        margin:0 0 6px;\n      }\n      .hero-slice h3{\n        font-size:clamp(1rem, 4.8vw, 1.24rem);\n        margin:0 0 6px;\n      }\n      .hero-slice p{\n        font-size:.92rem;\n        line-height:1.4;\n      }\n      #procura .section-title,\n      #productos .section-title,\n      [data-section=\"procura\"] .section-title,\n      [data-section=\"productos\"] .section-title{\n        padding:6px 11px;\n        font-size:.92rem;\n      }\n    }\n    \/* ===== Nosotros Carousel ===== *\/\n    .nos-carousel{padding:22px 0 36px;background:linear-gradient(180deg,#f7f9fc,#fff)}\n    .nos-carousel__head{margin:0 0 14px;position:static !important;top:auto !important}\n    .nos-carousel__kicker{margin:0 0 4px;color:var(--concept-primary);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem}\n    .nos-carousel__title{margin:0;color:#172C51;font-size:clamp(1.2rem,2.2vw,1.9rem);line-height:1.15}\n    .nos-carousel__box{position:relative;overflow:hidden;border-radius:18px;border:1px solid rgba(23,44,81,.12);box-shadow:0 14px 36px rgba(0,0,0,.14)}\n    .nos-carousel__slide{display:none}\n    .nos-carousel__slide.is-active{display:block}\n    .nos-carousel__slide img{width:100%;height:clamp(240px,42vw,520px);object-fit:cover;display:block}\n    .nos-carousel__nav{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:999px;border:1px solid rgba(255,255,255,.45);background:rgba(10,22,43,.42);color:#fff;cursor:pointer;display:grid;place-items:center;z-index:2}\n    .nos-carousel__nav--prev{left:12px}\n    .nos-carousel__nav--next{right:12px}\n    .nos-carousel__tabs{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:12px 0}\n    .nos-carousel__tab{padding:7px 12px;border-radius:999px;border:1px solid rgba(23,44,81,.24);background:#fff;color:var(--concept-primary);font-size:.86rem;font-weight:700;cursor:pointer}\n    .nos-carousel__tab.is-active{background:var(--concept-primary);color:#fff;border-color:var(--concept-primary)}\n    .nos-carousel__caption{margin-top:12px;padding:12px 14px;border-radius:12px;background:#fff;border:1px solid rgba(23,44,81,.12)}\n    .nos-carousel__caption-title{margin:0 0 4px;color:var(--concept-primary);font-size:1rem}\n    .nos-carousel__caption-text{margin:0;width:100%;max-width:none;color:#475569;font-size:.94rem;line-height:1.58;text-wrap:pretty}\n    .hero-slice--nosotros .nos-carousel{\n      padding:14px 0 0;\n      background:transparent;\n    }\n    .hero-slice--nosotros .nos-carousel__tabs{\n      margin:0 0 12px;\n      justify-content:flex-start;\n    }\n    .hero-slice--nosotros .nos-carousel__tab{\n      background:rgba(255,255,255,.12);\n      border-color:rgba(196,230,255,.35);\n      color:#eaf3ff;\n    }\n    .hero-slice--nosotros .nos-carousel__tab.is-active{\n      background:var(--concept-primary);\n      border-color:#8ed7ff;\n      color:#fff;\n    }\n    .hero-slice--nosotros .nos-carousel__box{\n      border-color:rgba(185,226,255,.26);\n      background:rgba(11,32,60,.3);\n      box-shadow:0 16px 38px rgba(2,10,24,.4);\n    }\n    .hero-slice--nosotros .nos-carousel__caption{\n      background:rgba(11,32,60,.4);\n      border-color:rgba(185,226,255,.26);\n    }\n    .hero-slice--nosotros .nos-carousel__caption-title{\n      color:#eaf3ff;\n    }\n    .hero-slice--nosotros .nos-carousel__caption-text{\n      width:100%;\n      max-width:none;\n      color:#c8ddf2;\n    }\n    .contact-block{\n      background:linear-gradient(180deg,#f8fbff,#f2f6fb);\n      border-top:1px solid rgba(23,44,81,.10);\n      border-bottom:1px solid rgba(23,44,81,.10);\n    }\n    .contact-block .section-title{\n      margin-bottom:8px;\n    }\n    .contact-block .section-lead{\n      margin-bottom:16px;\n      color:#4b607d;\n    }\n    .contact-block__grid{\n      display:grid;\n      grid-template-columns:1fr 1fr;\n      gap:12px;\n    }\n    .contact-card{\n      background:#fff;\n      border:1px solid rgba(23,44,81,.14);\n      border-radius:12px;\n      padding:16px;\n      box-shadow:0 8px 24px rgba(12,30,58,.06);\n    }\n    .contact-card h3{\n      margin:0 0 8px;\n      color:#0F2F57;\n      font-size:1.22rem;\n    }\n    .contact-card h4{\n      margin:12px 0 6px;\n      color:#113960;\n      font-size:1.03rem;\n    }\n    .contact-card p{\n      margin:6px 0;\n      color:#334b67;\n      line-height:1.55;\n    }\n    .contact-card ul{\n      margin:0;\n      padding-left:20px;\n      color:#334b67;\n    }\n    .contact-card li{margin:6px 0}\n    .contact-social{\n      display:flex;\n      align-items:center;\n      gap:8px;\n      margin:8px 0 0;\n    }\n    .contact-social__link{\n      width:34px;\n      height:34px;\n      border-radius:999px;\n      border:1px solid rgba(15,76,129,.38);\n      color:var(--concept-primary);\n      text-decoration:none;\n      display:grid;\n      place-items:center;\n      font-weight:700;\n      background:#fff;\n    }\n    .contact-social__link svg{\n      width:16px;\n      height:16px;\n      fill:currentColor;\n      display:block;\n    }\n    .contact-social__link:hover{\n      background:var(--concept-primary);\n      color:#fff;\n      border-color:var(--concept-primary);\n    }\n    .contact-video-ph{\n      margin-top:18px;\n      min-height:190px;\n      border-radius:10px;\n      border:1px dashed rgba(15,76,129,.30);\n      background:linear-gradient(180deg,#f8fbff,#f3f7fc);\n      display:grid;\n      place-items:center;\n      color:#5b7391;\n      text-align:center;\n      padding:12px;\n    }\n    .contact-map{\n      margin-top:8px;\n      border:1px solid rgba(23,44,81,.16);\n      border-radius:10px;\n      overflow:hidden;\n      min-height:240px;\n      background:#e8eef5;\n    }\n    .contact-map iframe{\n      display:block;\n      width:100%;\n      height:240px;\n      border:0;\n    }\n    @media (max-width:900px){\n      .contact-block__grid{grid-template-columns:1fr}\n    }\n    .anchor-target{\n      display:block;\n      position:relative;\n      top:-88px;\n      visibility:hidden;\n      height:0;\n      pointer-events:none;\n    }\n\n    \/* ===== Values badges ===== *\/\n    .values-list p{margin:.35rem 0;color:#475569}\n    .value-badge{display:inline-grid;place-items:center;inline-size:26px;block-size:26px;\n      border-radius:999px;background:var(--cobalt);color:#fff;font-weight:700;font-size:12px;margin-right:8px}\n\n    \/* ===== New 'Tipo de servicio' filters ===== *\/\n    .filters .chip{display:inline-flex;gap:6px;align-items:center;border:1px solid rgba(23,44,81,.18);\n      border-radius:999px;padding:.25rem .6rem;background:#fff;font-size:13px;color:#334155}\n    .filters select{padding:10px;border:1px solid rgba(23,44,81,.18);border-radius:10px;font-size:14px}\n\n    \/* ===== Procura: servicio general\/espec&iacute;fico ===== *\/\n    .prod-filters .group{display:flex;gap:8px;align-items:center}\n    \/* ===== Values badges ===== *\/\n    .values-list p{margin:.35rem 0;color:#475569}\n    .value-badge{display:inline-grid;place-items:center;inline-size:26px;block-size:26px;\n      border-radius:999px;background:var(--cobalt);color:#fff;font-weight:700;font-size:12px;margin-right:8px}\n\n\n\/* ===== Alcance (Regi&oacute;n) ===== *\/\n.section-title--light{color:#fff}\n.section-lead--light{color:rgba(255,255,255,.84)}\n.reach{\n  position:relative;\n  padding:56px 0;\n  color:#fff;\n  background:linear-gradient(180deg,rgba(23,44,81,.96),rgba(15,76,129,.92));\n  overflow:hidden;\n}\n.reach:before{\n  content:\"\";\n  position:absolute;inset:0;\n  background:\n    radial-gradient(1200px 600px at 70% 30%, rgba(58,111,165,.22), transparent 60%),\n    linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px),\n    linear-gradient(0deg, rgba(255,255,255,.05) 1px, transparent 1px);\n  background-size:auto, 56px 56px, 56px 56px;\n  opacity:.55;\n  pointer-events:none;\n  mix-blend-mode:screen;\n}\n.reach__wrap{\n  position:relative;\n  display:grid;\n  grid-template-columns: 1.05fr .95fr;\n  gap:28px;\n  align-items:center;\n}\n.reach__bullets{\n  margin:0;\n  padding-left:18px;\n  color:rgba(255,255,255,.86);\n}\n.reach__bullets li{margin:8px 0}\n.reach__cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}\n.reach__media{\n  aspect-ratio: 16\/10;\n  position:relative;\n  margin:0;\n  border:1px solid rgba(255,255,255,.16);\n  border-radius:18px;\n  overflow:hidden;\n  background:rgba(3,8,20,.35);\n  box-shadow:0 18px 40px rgba(0,0,0,.28);\n  transform:translate3d(0,0,0);\n}\n.reach__media img{\n  display:block;\n  width:100%;\n  height:100%;\n  object-fit:cover;\n}\n@media (max-width:1024px){\n  .reach__wrap{grid-template-columns:1fr}\n}\n\n\n.logo-ph.has-logo{\n  \/* Slot consistente (misma altura &oacute;ptica) *\/\n  height: 88px;                \/* ajusta si tu placeholder es distinto *\/\n  padding: 12px 14px;\n  border-radius: 14px;\n  background: rgba(255,255,255,0.06);\n  border: 1px solid rgba(255,255,255,0.10);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  overflow: hidden;\n}\n\n.logo-ph.has-logo img.client__logoImg{\n  width: 100%;\n  height: 100%;\n  object-fit: contain;          \/* nunca recorta, nunca estira *\/\n  object-position: center;\n  display: block;\n  transform: translateZ(0);\n}\n\n\/* Si se carga un logo a color en modo blueprint, lo \u201cnormalizamos\u201d *\/\nbody.is-blueprint .logo-ph.has-logo img.client__logoImg.is-normalized{\n  filter: grayscale(1) brightness(1.25) contrast(1.25);\n  opacity: 0.85;\n}\n\/* Toggle: ocultar logos y mostrar placeholder *\/\n.logo-ph.has-logo .logo-ph__box,\n.logo-ph.has-logo .logo-ph__name,\n.logo-ph.has-logo .logo-ph__hint{\n  display:none;\n}\nbody.logos-off .logo-ph.has-logo img.client__logoImg{\n  display:none;\n}\nbody.logos-off .logo-ph.has-logo .logo-ph__box,\nbody.logos-off .logo-ph.has-logo .logo-ph__name,\nbody.logos-off .logo-ph.has-logo .logo-ph__hint{\n  display:block;\n}\n\n\/* ===== Clientes por sector (Unbranded import v15) ===== *\/\n.clients{margin-top:26px}\n.clients__head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;flex-wrap:wrap}\n.clients__tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap}\n.clients__search input[type=\"search\"]{padding:9px 12px;border:1px solid rgba(23,44,81,.18);border-radius:999px;font-size:14px;min-width:220px}\n.clients__filters{display:flex;gap:8px;flex-wrap:wrap}\n.clients__filters .clients__filterBtn{padding:6px 10px;border-radius:999px;border:1px solid rgba(23,44,81,.2);background:#fff;font-weight:700;font-size:.86rem;color:var(--concept-primary);cursor:pointer}\n.clients__filters .clients__filterBtn.is-active{background:rgba(15,76,129,.12);border-color:rgba(15,76,129,.45)}\n.clients__tools .clients__go-supply{\n  display:inline-flex;\n  align-items:center;\n  padding:6px 10px;\n  border-radius:999px;\n  border:1px solid #172C51;\n  background:#172C51;\n  color:#fff;\n  text-decoration:none;\n  font-weight:700;\n  font-size:.86rem;\n  line-height:1;\n}\n.clients__tools .clients__go-supply:hover{\n  background:#0f2443;\n  border-color:#0f2443;\n}\n.clients__tools .clients__go-supply:focus-visible{\n  outline:2px solid rgba(255,255,255,.9);\n  outline-offset:2px;\n}\n.clients.is-manual-filter .clients__badge{background:rgba(34,197,94,.12);border-color:rgba(34,197,94,.45);color:#166534}\n.clients.is-manual-filter .clients__filters .clients__filterBtn.is-active{background:rgba(34,197,94,.12);border-color:rgba(34,197,94,.45);color:#166534}\n.clients.is-manual-filter{outline:2px solid rgba(34,197,94,.25);outline-offset:6px;border-radius:16px}\n.clients__badge::before{content:attr(data-mode);display:inline-block;margin-right:6px;padding:2px 6px;border-radius:999px;font-size:.72rem;font-weight:800;letter-spacing:.02em;background:rgba(15,76,129,.10);border:1px solid rgba(15,76,129,.22);color:var(--concept-primary)}\n.clients.is-manual-filter .clients__badge::before{background:rgba(34,197,94,.18);border-color:rgba(34,197,94,.45);color:#166534}\n.clients__badge{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;background:rgba(15,76,129,.10);border:1px solid rgba(15,76,129,.25);color:var(--concept-primary);font-weight:700;font-size:.92rem}\n.clients__grid{display:grid;grid-template-columns:repeat(12,1fr);gap:14px;margin-top:14px}\n.client-sector{grid-column:span 6;background:#fff;border:1px solid rgba(23,44,81,.10);border-radius:16px;padding:14px 14px 12px;box-shadow:0 10px 26px rgba(23,44,81,.06)}\n.client-sector h4{margin:0;font-size:1.05rem;letter-spacing:.02em;text-transform:uppercase;color:#172C51}\n.client-sector__top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 10px}\n.client-carousel__nav{display:inline-flex;align-items:center;gap:6px}\n.client-carousel__btn{width:28px;height:28px;border-radius:999px;border:1px solid rgba(23,44,81,.22);background:#fff;color:var(--concept-primary);font-weight:800;line-height:1;cursor:pointer}\n.client-carousel__btn:disabled{opacity:.4;cursor:not-allowed}\n.client-carousel__meta{font-size:.78rem;color:#64748b;min-width:72px;text-align:center}\n.client-logos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}\n.logo-ph{display:flex;gap:10px;align-items:center;padding:10px;border-radius:12px;background:linear-gradient(180deg,rgba(23,44,81,.03),rgba(23,44,81,.01));border:1px solid color-mix(in srgb, var(--logo-color) 55%, #ffffff);--logo-color:#cbd5e1}\n.logo-ph__box{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:color-mix(in srgb, var(--logo-color) 50%, #ffffff);border:1px solid color-mix(in srgb, var(--logo-color) 80%, #ffffff);color:color-mix(in srgb, var(--logo-color) 92%, #0f172a);font-weight:800}\n.logo-ph__name{font-size:.96rem;color:#0f172a;line-height:1.15}\n.logo-ph__hint{display:block;font-size:.78rem;color:#64748b;margin-top:2px}\n.client-sector[hidden]{display:none !important}\n@media (max-width:1200px){\n  .client-logos{grid-template-columns:repeat(2,minmax(0,1fr))}\n}\n@media (max-width:900px){\n  .client-sector{grid-column:span 12}\n  .client-logos{grid-template-columns:repeat(1,minmax(0,1fr))}\n}\n#clientesPorSector .clients__grid,\n#clientesPorSectorAliados .clients__grid{display:block}\n#clientesPorSector .clients-carousel,\n#clientesPorSectorAliados .clients-carousel{\n  margin-top:14px;\n  background:#fff;\n  border:1px solid rgba(23,44,81,.10);\n  border-radius:16px;\n  padding:12px;\n  box-shadow:0 10px 26px rgba(23,44,81,.06);\n}\n#clientesPorSector .clients-carousel__top,\n#clientesPorSectorAliados .clients-carousel__top{\n  display:flex;\n  align-items:center;\n  justify-content:flex-end;\n  gap:8px;\n  margin:0 0 10px;\n}\n#clientesPorSector .clients-carousel__btn,\n#clientesPorSectorAliados .clients-carousel__btn{\n  width:30px;\n  height:30px;\n  border-radius:999px;\n  border:1px solid rgba(23,44,81,.22);\n  background:#fff;\n  color:var(--concept-primary);\n  font-weight:800;\n  line-height:1;\n  cursor:pointer;\n}\n#clientesPorSector .clients-carousel__btn:disabled,\n#clientesPorSectorAliados .clients-carousel__btn:disabled{opacity:.4;cursor:not-allowed}\n#clientesPorSector .clients-carousel__meta,\n#clientesPorSectorAliados .clients-carousel__meta{\n  min-width:84px;\n  text-align:center;\n  font-size:.82rem;\n  color:#64748b;\n}\n#clientesPorSector .clients-carousel__track,\n#clientesPorSectorAliados .clients-carousel__track{\n  display:grid;\n  grid-template-columns:repeat(6,minmax(0,1fr));\n  gap:10px;\n}\n#clientesPorSectorAliados .clients-carousel__top{display:none}\n#clientesPorSector .clients-carousel__track .logo-ph,\n#clientesPorSectorAliados .clients-carousel__track .logo-ph{min-height:72px}\n#clientesPorSector .logo-ph__sector,\n#clientesPorSectorAliados .logo-ph__sector{\n  display:inline-block;\n  margin-top:4px;\n  font-size:.72rem;\n  color:#334155;\n}\n\/* ===== Clientes (Estilo VMS Energy) ===== *\/\n#clientesPorSector{\n  position:relative;\n  margin-top:34px;\n  padding:26px 0 28px;\n  color:#e5edf8;\n  background:\n    radial-gradient(1100px 460px at 85% -10%, rgba(58,111,165,.28), transparent 62%),\n    linear-gradient(180deg, rgba(23,44,81,.96), rgba(10,22,43,.96));\n  border-top:1px solid rgba(255,255,255,.08);\n  border-bottom:1px solid rgba(255,255,255,.08);\n  overflow:hidden;\n}\n#clientesPorSector::before{content:none}\n#clientesPorSector .container{position:relative;z-index:1}\n#clientesPorSector .clients__head h3{\n  color:#fff;\n  font-size:1.45rem;\n  letter-spacing:.02em;\n}\n#clientesPorSector .clients-hero{\n  margin-top:14px;\n}\n#clientesPorSector .clients-hero__stage{\n  position:relative;\n  min-height:320px;\n  border-radius:18px;\n  overflow:hidden;\n  border:1px solid rgba(255,255,255,.18);\n  box-shadow:0 18px 42px rgba(0,0,0,.30);\n}\n#clientesPorSector .clients-hero__slide{\n  position:absolute;\n  inset:0;\n  opacity:0;\n  pointer-events:none;\n  transition:opacity .58s ease;\n}\n#clientesPorSector .clients-hero__slide.is-active{\n  opacity:1;\n}\n#clientesPorSector .clients-hero__slide::before{\n  content:\"\";\n  position:absolute;\n  inset:0;\n  background:\n    linear-gradient(110deg, rgba(10,22,43,.78) 0%, rgba(10,22,43,.38) 58%, rgba(10,22,43,.52) 100%),\n    var(--clients-hero-image) center\/cover no-repeat;\n}\n#clientesPorSector .clients-hero__label{\n  position:absolute;\n  left:20px;\n  bottom:18px;\n  z-index:1;\n  padding:9px 12px;\n  border-radius:10px;\n  border:1px solid rgba(255,255,255,.28);\n  background:rgba(10,22,43,.56);\n  color:#f1f6ff;\n  font-size:clamp(1rem, 2.1vw, 1.34rem);\n  font-weight:800;\n  line-height:1.2;\n  max-width:min(92%, 760px);\n  letter-spacing:.01em;\n}\n#clientesPorSector .clients-hero__grid{\n  display:grid;\n  grid-template-columns:repeat(2,minmax(0,1fr));\n  gap:8px;\n  margin-top:10px;\n}\n#clientesPorSector .clients-hero__tile{\n  position:relative;\n  min-height:132px;\n  border:1px solid rgba(255,255,255,.22);\n  border-radius:12px;\n  overflow:hidden;\n  cursor:pointer;\n  background:transparent;\n  padding:0;\n}\n#clientesPorSector .clients-hero__tile::before{\n  content:\"\";\n  position:absolute;\n  inset:0;\n  background:\n    linear-gradient(140deg, rgba(10,22,43,.30), rgba(10,22,43,.52)),\n    var(--clients-hero-image) center\/cover no-repeat;\n  transition:transform .45s ease, filter .45s ease;\n}\n#clientesPorSector .clients-hero__tile::after{\n  content:\"\";\n  position:absolute;\n  inset:0;\n  border:1px solid transparent;\n  border-radius:12px;\n  transition:border-color .3s ease, box-shadow .3s ease;\n}\n#clientesPorSector .clients-hero__tileLabel{\n  position:absolute;\n  left:10px;\n  bottom:8px;\n  z-index:1;\n  color:#f8fbff;\n  font-size:.83rem;\n  font-weight:700;\n  text-shadow:0 2px 10px rgba(0,0,0,.45);\n}\n#clientesPorSector .clients-hero__tile:hover::before{\n  transform:scale(1.03);\n  filter:saturate(1.08);\n}\n#clientesPorSector .clients-hero__tile.is-active::after{\n  border-color:rgba(122,199,255,.92);\n  box-shadow:inset 0 0 0 1px rgba(122,199,255,.58);\n}\n#clientesPorSector .clients-hero__tile:focus-visible{\n  outline:2px solid rgba(122,199,255,.92);\n  outline-offset:2px;\n}\n#clientesPorSector .clients-carousel{\n  margin-top:14px;\n  background:rgba(255,255,255,.06);\n  border:1px solid rgba(255,255,255,.15);\n  border-radius:18px;\n  padding:12px;\n  box-shadow:0 18px 42px rgba(0,0,0,.30);\n  backdrop-filter: blur(1px);\n}\n#clientesPorSector .clients-hero__hint{\n  margin:12px 0 0;\n  color:#d5e2f3;\n  font-size:.9rem;\n}\n#clientesPorSector:not(.is-category-selected) .clients-carousel{\n  display:none;\n}\n#clientesPorSector.is-category-selected .clients-hero__hint{\n  display:none;\n}\n#clientesPorSector .clients-carousel__meta{color:#c7d8ee}\n#clientesPorSector .clients-carousel__btn{\n  border-color:rgba(255,255,255,.30);\n  background:rgba(10,22,43,.45);\n  color:#e9f2ff;\n}\n#clientesPorSector .clients-carousel__btn:hover{background:rgba(10,22,43,.72)}\n#clientesPorSector .clients-carousel__track .logo-ph{\n  background:linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.04));\n  border:1px solid rgba(255,255,255,.28);\n  box-shadow:0 10px 24px rgba(0,0,0,.18);\n}\n#clientesPorSector .logo-ph__name{color:#f8fbff}\n#clientesPorSector .logo-ph__hint{color:#d5e2f3}\n#clientesPorSector .logo-ph__sector{color:#d5e2f3}\n\/* ===== Aliados Comerciales (Estilo VMS Energy) ===== *\/\n#clientesPorSectorAliados{\n  position:relative;\n  margin-top:34px;\n  padding:26px 0 28px;\n  color:#e5edf8;\n  background:\n    radial-gradient(1100px 460px at 18% -15%, rgba(42,123,186,.24), transparent 62%),\n    linear-gradient(180deg, rgba(15,35,66,.97), rgba(9,21,42,.97));\n  border-top:1px solid rgba(255,255,255,.08);\n  border-bottom:1px solid rgba(255,255,255,.08);\n  overflow:hidden;\n}\n#clientesPorSectorAliados::before{content:none}\n#clientesPorSectorAliados .container{position:relative;z-index:1}\n#clientesPorSectorAliados .clients__head h3{\n  color:#fff;\n  font-size:1.45rem;\n  letter-spacing:.02em;\n}\n#clientesPorSectorAliados .clients__go-supply{\n  padding:10px 16px;\n  border-radius:999px;\n  border:1px solid rgba(140,220,255,.58);\n  background:linear-gradient(180deg,#1a74b4,var(--concept-primary));\n  color:#f7fcff;\n  font-weight:800;\n  font-size:.92rem;\n  letter-spacing:.01em;\n  box-shadow:0 10px 22px rgba(3,17,34,.32), inset 0 0 0 1px rgba(255,255,255,.12);\n}\n#clientesPorSectorAliados .clients__go-supply:hover{\n  background:linear-gradient(180deg,#2183c8,#135c98);\n  border-color:rgba(188,238,255,.9);\n  transform:translateY(-1px);\n  box-shadow:0 14px 28px rgba(3,17,34,.4), inset 0 0 0 1px rgba(255,255,255,.16);\n}\n#clientesPorSectorAliados .clients__go-supply:focus-visible{\n  outline:2px solid rgba(215,244,255,.96);\n  outline-offset:2px;\n}\n#clientesPorSectorAliados .clients-carousel{\n  margin-top:14px;\n  background:rgba(255,255,255,.06);\n  border:1px solid rgba(255,255,255,.16);\n  border-radius:18px;\n  padding:12px;\n  box-shadow:0 18px 42px rgba(0,0,0,.30);\n  backdrop-filter: blur(1px);\n}\n#clientesPorSectorAliados .allies-hero{\n  margin-top:14px;\n  position:relative;\n  min-height:290px;\n  border-radius:16px;\n  overflow:hidden;\n  border:1px solid rgba(255,255,255,.22);\n  box-shadow:0 16px 38px rgba(0,0,0,.24);\n  display:flex;\n  align-items:flex-end;\n  padding:12px;\n}\n#clientesPorSectorAliados .allies-hero::before{\n  content:\"\";\n  position:absolute;\n  inset:0;\n  background:url('https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/hero_que_hacemos_VMS_Energy.png') center\/cover no-repeat;\n}\n#clientesPorSectorAliados .allies-hero::after{\n  content:\"\";\n  position:absolute;\n  left:0;\n  right:0;\n  bottom:0;\n  height:110px;\n  background:linear-gradient(180deg, rgba(10,22,43,0) 0%, rgba(10,22,43,.58) 100%);\n}\n#clientesPorSectorAliados .clients__grid{\n  position:relative;\n  z-index:2;\n  margin-top:0;\n  padding:0;\n  border-radius:0;\n  background:transparent;\n  border:0;\n  box-shadow:none;\n  backdrop-filter:none;\n  -webkit-backdrop-filter:none;\n  width:100%;\n}\n#clientesPorSectorAliados .clients-carousel{\n  margin-top:0;\n  background:rgba(10,22,43,.38) !important;\n  border:1px solid rgba(187,228,255,.30) !important;\n  box-shadow:0 16px 34px rgba(2,10,24,.30) !important;\n  backdrop-filter:blur(8px);\n  -webkit-backdrop-filter:blur(8px);\n  border-radius:14px;\n  padding:10px;\n}\n#clientesPorSectorAliados .clients-carousel__meta{color:#dbeafe !important}\n#clientesPorSectorAliados .clients-carousel__btn{\n  background:rgba(6,18,36,.46) !important;\n  border-color:rgba(255,255,255,.34) !important;\n  color:#eef6ff !important;\n}\n#clientesPorSectorAliados .clients-carousel__btn:hover{\n  background:rgba(6,18,36,.72) !important;\n}\n#clientesPorSectorAliados .clients-carousel__track .logo-ph{\n  background:linear-gradient(180deg, rgba(255,255,255,.16), rgba(255,255,255,.07)) !important;\n  border:1px solid rgba(255,255,255,.3) !important;\n}\n#clientesPorSectorAliados .logo-ph__name{color:#f7fbff !important}\n#clientesPorSectorAliados .logo-ph__hint,\n#clientesPorSectorAliados .logo-ph__sector{color:#d8e7f8 !important}\n#clientesPorSectorAliados .clients-carousel__meta{color:#c7d8ee}\n#clientesPorSectorAliados .clients-carousel__btn{\n  border-color:rgba(255,255,255,.30);\n  background:rgba(10,22,43,.45);\n  color:#e9f2ff;\n}\n#clientesPorSectorAliados .clients-carousel__btn:hover{background:rgba(10,22,43,.72)}\n#clientesPorSectorAliados .clients-carousel__track .logo-ph{\n  background:linear-gradient(180deg, rgba(255,255,255,.11), rgba(255,255,255,.04));\n  border:1px solid rgba(255,255,255,.26);\n  box-shadow:0 10px 24px rgba(0,0,0,.18);\n}\n#clientesPorSectorAliados .logo-ph__name{color:#f8fbff}\n#clientesPorSectorAliados .logo-ph__hint{color:#d5e2f3}\n#clientesPorSectorAliados .logo-ph__sector{color:#d5e2f3}\n@media (max-width:1200px){\n  #clientesPorSector .clients-carousel__track,\n  #clientesPorSectorAliados .clients-carousel__track{grid-template-columns:repeat(2,minmax(0,1fr))}\n}\n@media (max-width:680px){\n  #clientesPorSector .clients-carousel__track,\n  #clientesPorSectorAliados .clients-carousel__track{grid-template-columns:1fr}\n  #clientesPorSector .clients-hero__stage{min-height:250px}\n  #clientesPorSector .clients-hero__tile{min-height:112px}\n  #clientesPorSector .clients-hero__label{\n    left:14px;\n    bottom:12px;\n    font-size:1rem;\n  }\n  #clientesPorSector .clients-hero__tileLabel{font-size:.78rem}\n  #clientesPorSectorAliados .allies-hero{\n    min-height:210px;\n    padding:10px;\n  }\n  #clientesPorSectorAliados .clients__grid{\n    margin-top:0;\n    padding:0;\n  }\n}\n\n\n\/* === Reach \/ Alcance readability pass (v7) === *\/\n.reach{background:linear-gradient(180deg, rgba(11,30,56,.92), rgba(11,30,56,.86));}\n.reach .kicker{letter-spacing:.12em; opacity:.9;}\n.reach h2{color:#ffffff; text-shadow:0 2px 14px rgba(0,0,0,.45);}\n.reach p{color:rgba(255,255,255,.88); max-width:52ch;}\n.reach li{color:rgba(255,255,255,.9);}\n.reach__copy{\n  background:rgba(0,0,0,.20);\n  border:1px solid rgba(255,255,255,.10);\n  border-radius:18px;\n  padding:22px 22px;\n  backdrop-filter: blur(2px);\n}\n.reach__media{\n  background:#ffffff;\n  border:1px solid rgba(255,255,255,.14);\n  border-radius:18px;\n  overflow:hidden;\n  box-shadow:0 18px 60px rgba(0,0,0,.35);\n}\n.reach__media img{\n  width:100%;\n  height:100%;\n  object-fit:cover;\n  object-position:center;\n  background:#ffffff;\n  transform:scale(1.10);\n  transform-origin:center;\n}\n.reach__marker{\n  --x:50%;\n  --y:50%;\n  --dx:0px;\n  --dy:0px;\n  position:absolute;\n  left:var(--x);\n  top:var(--y);\n  width:14px;\n  height:14px;\n  padding:0;\n  margin:-7px 0 0 -7px;\n  border:1px solid rgba(255,255,255,.92);\n  border-radius:50%;\n  appearance:none;\n  -webkit-appearance:none;\n  background:#ffd84d;\n  box-shadow:0 0 0 3px rgba(255,216,77,.24), 0 0 14px rgba(255,216,77,.75);\n  cursor:pointer;\n  z-index:2;\n  transform:translate(var(--dx), var(--dy));\n  animation:reachMarkerPulse 1.8s ease-in-out infinite;\n}\n.reach__marker::before{\n  content:\"\";\n  position:absolute;\n  inset:-9px;\n  border:1px solid rgba(255,216,77,.55);\n  border-radius:50%;\n  animation:reachMarkerHalo 1.8s ease-out infinite;\n}\n.reach__marker--gdl{ animation-delay:0s; }\n.reach__marker--cdc{ animation-delay:.25s; }\n.reach__marker--caribe{ animation-delay:.5s; }\n.reach__marker--usa{ animation-delay:.75s; }\n@keyframes reachMarkerPulse{\n  0%,100%{\n    box-shadow:0 0 0 3px rgba(255,216,77,.22), 0 0 12px rgba(255,216,77,.65);\n    filter:brightness(1);\n  }\n  50%{\n    box-shadow:0 0 0 6px rgba(255,216,77,.28), 0 0 22px rgba(255,216,77,.95);\n    filter:brightness(1.08);\n  }\n}\n@keyframes reachMarkerHalo{\n  0%{\n    transform:scale(.88);\n    opacity:.75;\n  }\n  70%{\n    transform:scale(1.22);\n    opacity:.05;\n  }\n  100%{\n    transform:scale(1.22);\n    opacity:0;\n  }\n}\n@media (prefers-reduced-motion: reduce){\n  .reach__marker,\n  .reach__marker::before{\n    animation:none;\n  }\n}\n.reach__marker:focus-visible{\n  outline:2px solid #ffffff;\n  outline-offset:3px;\n}\n.reach__marker--gdl{ --x:45.25%; --y:53.1%; --dx:0px; --dy:2px; }\n.reach__marker--cdc{ --x:58.35%; --y:63.25%; --dx:1px; --dy:0px; }\n.reach__marker--usa{ --x:31.2%; --y:30.5%; --dx:0px; --dy:1px; }\n.reach__marker--caribe{ --x:66.8%; --y:53.4%; --dx:1px; --dy:0px; }\n\n.reach__bullet{\n  position:absolute;\n  left:calc(100% + 12px);\n  top:50%;\n  transform:translateY(-50%);\n  padding:5px 9px;\n  border-radius:999px;\n  border:1px solid rgba(255,255,255,.3);\n  background:rgba(10,25,48,.82);\n  color:#f8fafc;\n  font-size:11px;\n  line-height:1;\n  white-space:nowrap;\n  pointer-events:none;\n}\n.reach__bullet::before{\n  content:\"\";\n  position:absolute;\n  right:100%;\n  top:50%;\n  width:10px;\n  height:1px;\n  transform:translateY(-50%);\n  background:rgba(255,255,255,.7);\n}\n.reach__marker--gdl .reach__bullet{\n  left:auto;\n  right:calc(100% + 10px);\n  top:14px;\n  transform:none;\n}\n.reach__marker--gdl .reach__bullet::before{\n  right:auto;\n  left:100%;\n  top:28%;\n}\n.reach__marker--cdc .reach__bullet{\n  left:calc(100% + 10px);\n  top:-14px;\n  transform:none;\n}\n.reach__marker--cdc .reach__bullet::before{\n  right:100%;\n  left:auto;\n  top:72%;\n}\n.reach__marker--usa .reach__bullet{\n  left:auto;\n  right:calc(100% + 10px);\n  top:-14px;\n  transform:none;\n}\n.reach__marker--usa .reach__bullet::before{\n  right:auto;\n  left:100%;\n  top:72%;\n}\n.reach__marker--caribe .reach__bullet{\n  left:calc(100% + 25px);\n  top:-6px;\n  transform:none;\n}\n.reach__marker--caribe .reach__bullet::before{\n  right:100%;\n  left:auto;\n  top:28%;\n}\n\n.reach__tip{\n  position:absolute;\n  left:50%;\n  bottom:calc(100% + 10px);\n  transform:translateX(-50%) translateY(4px);\n  min-width:160px;\n  padding:7px 10px;\n  border-radius:10px;\n  border:1px solid rgba(255,255,255,.22);\n  background:rgba(6,17,34,.92);\n  color:#f8fafc;\n  font-size:12px;\n  line-height:1.25;\n  text-align:left;\n  opacity:0;\n  visibility:hidden;\n  pointer-events:none;\n  transition:opacity .18s ease, transform .18s ease, visibility .18s ease;\n}\n.reach__tip strong{ display:block; font-size:12px; margin-bottom:2px; color:#fff; }\n.reach__tip::after{\n  content:\"\";\n  position:absolute;\n  left:50%;\n  top:100%;\n  transform:translateX(-50%);\n  border:6px solid transparent;\n  border-top-color:rgba(6,17,34,.92);\n}\n.reach__marker:hover .reach__tip,\n.reach__marker:focus .reach__tip,\n.reach__marker.is-open .reach__tip{\n  opacity:1;\n  visibility:visible;\n  transform:translateX(-50%) translateY(0);\n}\n@media (max-width:640px){\n  .reach__tip{ min-width:148px; font-size:11px; }\n  .reach__bullet{ font-size:10px; padding:4px 7px; }\n  .reach__marker--gdl .reach__bullet{ top:12px; }\n  .reach__marker--cdc .reach__bullet{ top:-12px; }\n  .reach__marker--usa .reach__bullet{ top:-12px; }\n  .reach__marker--caribe .reach__bullet{ top:-8px; }\n  .reach__marker--gdl{ --dx:1px; --dy:-1px; }\n  .reach__marker--cdc{ --dx:2px; --dy:1px; }\n  .reach__marker--usa{ --dx:1px; --dy:0px; }\n  .reach__marker--caribe{ --dx:2px; --dy:1px; }\n}\n@media (min-width:641px) and (max-width:1024px){\n  .reach__marker--gdl{ --dx:0px; --dy:-1px; }\n  .reach__marker--cdc{ --dx:1px; --dy:1px; }\n  .reach__marker--usa{ --dx:0px; --dy:0px; }\n  .reach__marker--caribe{ --dx:1px; --dy:1px; }\n}\n\n\n\n\/* Variante sobre fondo oscuro (VMS blueprint) *\/\n.section-head--on-dark .section-kicker{ color: rgba(255,255,255,.78); }\n.section-head--on-dark .section-title{ color: rgba(255,255,255,.95); }\n\n\/* (Opcional) si tu texto se ve \u201capagado\u201d por opacidades globales *\/\n.section-head--on-dark{ position: relative; z-index: 2; }\n\n\/* \u2500\u2500 Proyectos Destacados (estilo narrativo v2) \u2500\u2500 *\/\n.cp-featured{padding:64px 0 56px;background:#F8FAFC}\n.cp-section-label{display:inline-block;font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#1D5FA4;margin-bottom:12px}\n.cp-section-title{font-size:clamp(22px,3vw,32px);font-weight:900;color:#0F2747;margin:0 0 8px}\n.cp-section-lead{font-size:15px;color:#6B7F97;margin:0 0 32px;max-width:560px}\n.cp-featured__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}\n.cp-feat-card{background:#fff;border-radius:16px;overflow:hidden;border:1px solid #E2EAF4;box-shadow:0 1px 4px rgba(15,39,71,.06);display:flex;flex-direction:column;transition:box-shadow .22s,transform .22s;border-top:4px solid var(--accent-color,#1D5FA4)}\n.cp-feat-card:hover{box-shadow:0 12px 40px rgba(15,39,71,.12);transform:translateY(-4px)}\n.cp-feat-card__icon{height:140px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--icon-bg-a,#DBEAFE),var(--icon-bg-b,#EFF6FF));font-size:52px}\n.cp-feat-card__body{padding:20px 22px 16px;flex:1;display:flex;flex-direction:column}\n.cp-feat-card__type{display:inline-block;font-size:.7rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;border-radius:999px;padding:.2rem .7rem;margin-bottom:12px}\n.cp-feat-card__title{font-size:1rem;font-weight:800;color:#0F2747;margin:0 0 10px;line-height:1.35}\n.cp-feat-story{margin:0 0 16px}\n.cp-feat-story__block{margin-bottom:10px}\n.cp-feat-story__tag{display:inline-block;font-size:.68rem;font-weight:700;border-radius:4px;padding:.1rem .45rem;margin-bottom:4px}\n.cp-feat-story__tag--reto{background:#FEE2E2;color:#B91C1C}\n.cp-feat-story__tag--sol{background:#DBEAFE;color:#1E40AF}\n.cp-feat-story__tag--res{background:#DCFCE7;color:#166534}\n.cp-feat-story__text{font-size:.82rem;color:#475569;line-height:1.55;margin:0}\n.cp-feat-card__footer{padding:14px 22px;border-top:1px solid #E2EAF4;display:flex;align-items:center;justify-content:space-between}\n.cp-feat-card__meta{font-size:.75rem;color:#6B7F97;display:flex;align-items:center;gap:5px}\n.cp-feat-card__link{font-size:.78rem;font-weight:700;color:#1D5FA4;text-decoration:none;display:flex;align-items:center;gap:4px;transition:gap .18s}\n.cp-feat-card__link:hover{gap:8px}\n.cp-feat-tags{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:16px}\n.cp-tech-tag{font-size:.68rem;font-weight:700;color:#374151;background:#F3F4F6;border-radius:4px;padding:.15rem .45rem}\n.badge-epc{background:#DBEAFE;color:#1D4ED8;border:1px solid #BFDBFE}\n.badge-svc{background:#F0FDF4;color:#166534;border:1px solid #BBF7D0}\n.badge-proj{background:#EDE9FE;color:#6D28D9;border:1px solid #DDD6FE}\n.badge-sum{background:#FEF9C3;color:#92400E;border:1px solid #FDE68A}\n.badge-auto{background:#FFF7ED;color:#C2410C;border:1px solid #FED7AA}\n@media(max-width:1024px){.cp-featured__grid{grid-template-columns:repeat(2,1fr)}}\n@media(max-width:680px){.cp-featured__grid{grid-template-columns:1fr}}\n  \n@media screen and (max-width:768px){\nhtml,body{overflow-x:hidden!important;}\n.container{width:100%!important;max-width:100%!important;padding-left:12px!important;padding-right:12px!important;box-sizing:border-box!important;}\n\n.hero,.hero__wrap,.hero__content{width:100%!important;max-width:100%!important;}\n.hero__ctas{display:flex!important;flex-direction:column!important;gap:12px!important;}\n.hero__ctas .btn{width:100%!important;box-sizing:border-box!important;text-align:center!important;justify-content:center!important;white-space:normal!important;}\n\n.nos-carousel__tabs,\n.clients__filters,\n.filters{display:flex!important;flex-wrap:wrap!important;}\n.nos-carousel__tab,\n.clients__filterBtn{flex:1 1 calc(50% - 8px)!important;min-width:140px!important;text-align:center!important;}\n\n.sol__grid,.about__grid,.testi__grid,.contact-block__grid,.procura__form,.cvproj__track{\ndisplay:grid!important;grid-template-columns:1fr!important;\n}\n\n.diff-slide,.diff-slide__media,.svc__card,.cvtab,.cvproj__card{\nwidth:100%!important;max-width:100%!important;\n}\n\n.diff-slide__panel{\nleft:12px!important;\nright:12px!important;\nwidth:auto!important;\ntransform:none!important;\n}\n\n[class*=\"title\"],h1,h2,h3,h4,p,a,button,span{\nword-break:normal!important;\noverflow-wrap:break-word!important;\n}\n\n.svc__grid{display:flex!important;}\n.svc__grid .svc__card{flex:0 0 100%!important;}\n\n.client-logos{grid-template-columns:1fr!important;}\n}\n\n@media screen and (max-width:768px){\n\n\/* ===== Primer carrusel (hero) ===== *\/\n.hero-carousel__viewport,\n.hero-slide,\n.hero__wrap{\n  min-height:auto !important;\n}\n\n.hero__wrap{\n  padding:32px 0 90px !important;\n}\n\n.hero h1,\n.hero h2{\n  font-size:clamp(22px,7vw,34px) !important;\n  line-height:1.15 !important;\n}\n\n.hero p{\n  font-size:16px !important;\n}\n\n.hero-carousel__dots{\n  flex-wrap:wrap !important;\n}\n\n\/* ===== Aliados \/ clientes comerciales ===== *\/\n.clients__grid,\n.client-logos{\n  display:grid !important;\n  grid-template-columns:1fr !important;\n  gap:12px !important;\n}\n\n.logo-ph{\n  min-height:72px !important;\n  width:100% !important;\n  box-sizing:border-box !important;\n}\n\n.logo-ph.has-logo{\n  height:90px !important;\n}\n\n.client-sector{\n  width:100% !important;\n  padding:12px !important;\n}\n\n.client-sector__top{\n  flex-wrap:wrap !important;\n}\n\n.client-carousel__meta{\n  min-width:auto !important;\n}\n\n}\n\n\n\/* === FIX RESPONSIVE ALIADOS\/MARCAS EN M\u00d3VIL === *\/\n@media (max-width: 640px){\n  #clientesGridAliados .client-logos{\n    display:grid !important;\n    grid-template-columns:repeat(2,minmax(0,1fr)) !important;\n    gap:8px !important;\n  }\n  #clientesGridAliados .logo-ph{\n    min-width:0;\n    align-items:flex-start;\n  }\n  #clientesGridAliados .logo-ph__name{\n    white-space:normal;\n    overflow-wrap:anywhere;\n    word-break:normal;\n    line-height:1.2;\n    font-size:.9rem;\n  }\n}\n\n<\/style>\n\n<style>\n.matrix-blueprint {\n  background: #172C51;\n  border: 1px solid var(--concept-primary);\n  color: #E5E9F0;\n  border-radius: 12px;\n  padding: 1.5rem;\n  margin-block: 1.5rem;\n  box-shadow: 0 0 20px rgba(15,76,129,0.3);\n  font-family: 'Univers Condensed', system-ui, -apple-system, Segoe UI, Roboto, sans-serif;\n  overflow:auto;\n}\n.matrix-blueprint table { width: 100%; border-collapse: collapse; min-width: 720px; }\n.matrix-blueprint th, .matrix-blueprint td {\n  border: 1px solid rgba(79,130,180,0.4);\n  padding: 8px 12px;\n  text-align: left;\n  vertical-align: top;\n}\n.matrix-blueprint th {\n  background: var(--concept-primary);\n  color: #fff;\n  text-transform: uppercase;\n  font-size: 0.85rem;\n  letter-spacing: 0.05em;\n  position: sticky; top: 0; z-index: 1;\n}\n.btn-blueprint {\n  background: var(--concept-primary);\n  color: #fff;\n  border: none;\n  padding: 0.6rem 1.2rem;\n  border-radius: 8px;\n  font-weight: 600;\n  cursor: pointer;\n  transition: background 0.3s ease;\n}\n.btn-blueprint:hover { background: #123d68; }\n.matrix-search { margin: 1rem 0; text-align: right; }\n.matrix-search input {\n  background: rgba(255,255,255,0.1);\n  color: #E5E9F0;\n  border: 1px solid var(--concept-primary);\n  padding: 0.5rem 1rem;\n  border-radius: 6px;\n  font-size: 0.9rem;\n  width: 280px;\n}\n.matrix-search input::placeholder { color: #9CA3AF; }\n.tag{display:inline-block;padding:.1rem .45rem;border-radius:999px;background:var(--concept-primary);color:#fff;font-size:.7rem;margin:.15rem .35rem .15rem 0}\n<\/style>\n\n<style>\n\/* ===== CV por industria (dinamico) ===== *\/\n.cvx{padding:20px 0 44px}\n.cvx__head{margin-bottom:14px}\n.cvx__kicker{margin:0;color:rgba(23,44,81,.68);letter-spacing:.14em;text-transform:uppercase;font-size:.78rem}\n.cvx__title{margin:.28rem 0 .4rem;color:#0b2545;font-size:clamp(1.45rem,2.2vw,2rem);line-height:1.1}\n.cvx__lead{margin:0;color:#475569}\n.cvx__industry{color:var(--concept-primary);font-weight:700}\n.cvx__grid{margin-top:16px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px}\n.cvx__card{grid-column:span 4;background:linear-gradient(180deg,#0b2344 0%,#0a1c35 100%);border:1px solid rgba(127,183,255,.22);border-radius:18px;box-shadow:0 18px 48px rgba(0,0,0,.14);padding:18px;color:#fff}\n.cvx__card--wide{grid-column:span 8}\n.cvx__cardTitle{margin:0 0 12px;font-size:1.06rem;color:rgba(255,255,255,.95)}\n.cvx__solutions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}\n.cvx__solution{background:rgba(7,22,44,.58);border:1px solid rgba(140,190,255,.22);border-radius:14px;min-height:110px;padding:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px}\n.cvx__pill{min-width:76px;height:38px;border-radius:999px;display:grid;place-items:center;font-weight:800;font-size:1.1rem;color:#dbeafe;background:rgba(42,96,149,.72);border:1px solid rgba(140,190,255,.36)}\n.cvx__solutionName{margin:0;color:rgba(255,255,255,.9);line-height:1.2;font-size:.98rem}\n.cvx__list{margin:0;padding:0;list-style:none;display:grid;gap:8px}\n.cvx__list li{border:1px solid rgba(140,190,255,.24);background:rgba(7,22,44,.45);border-radius:999px;padding:8px 12px;color:rgba(255,255,255,.9);font-size:.95rem}\n@media (max-width:1080px){.cvx__card--wide{grid-column:span 12}.cvx__card{grid-column:span 6}.cvx__solutions{grid-template-columns:repeat(2,minmax(0,1fr))}}\n@media (max-width:700px){.cvx__card{grid-column:span 12}.cvx__solutions{grid-template-columns:1fr}}\n\n<\/style>\n\n<link rel=\"preload\" as=\"image\" href=\"https:\/\/images.unsplash.com\/photo-1581092921461-cd3fd944f519?q=80&w=1600&auto=format&fit=crop\" fetchpriority=\"high\">\n<script type=\"application\/ld+json\">{\"@context\": \"https:\/\/schema.org\", \"@graph\": [{\"@type\": \"Organization\", \"name\": \"VMS Energy\", \"url\": \"https:\/\/vmsenergy.com\/\", \"logo\": \"https:\/\/vmsenergy.com\/assets\/logo.png\", \"description\": \"VMS Energy \u2014 EPC de Infraestructura El&eacute;ctrica, Automatizaci&oacute;n y Control, oil & Gas, Energ&iacute;a Solar Industrial, Generaci&oacute;n Verde No Solar y servicios en Centrales Hidroel&eacute;ctricas de CFE, Iluminaci&oacute;n Industrial y Soluciones Electromec&aacute;nicas.\", \"award\": [\"ISO 9001 GSC9KMX505\", \"ISO 14001 GSC14KMX277\", \"ISO 45001 GSC45KMX182\", \"ISO 37001 GSC37KMX131\", \"ISO 50001 GSC50KMX101\"]}, {\"@type\": \"Service\", \"name\": \"EPC el&eacute;ctrico\", \"provider\": {\"@type\": \"Organization\", \"name\": \"VMS Energy\"}, \"areaServed\": \"MX\", \"serviceType\": \"Ingenier&iacute;a, suministro t&eacute;cnico y construcci&oacute;n en generaci&oacute;n, transmisi&oacute;n y distribuci&oacute;n\"}, {\"@type\": \"Service\", \"name\": \"EPC de Iluminaci&oacute;n Industrial\", \"provider\": {\"@type\": \"Organization\", \"name\": \"VMS Energy\"}, \"areaServed\": \"MX\", \"serviceType\": \"Dise&ntilde;o luminot&eacute;cnico, selecci&oacute;n multimarcas, instalaci&oacute;n y comisionamiento\"}, {\"@type\": \"FAQPage\", \"mainEntity\": [{\"@type\": \"Question\", \"name\": \"&iquest;Ofrecen integraci&oacute;n multimarcas?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"S&iacute;, integraciones ABB, Siemens, Schneider, Woodward, KEI Cables, entre otras.\"}}, {\"@type\": \"Question\", \"name\": \"&iquest;Cuentan con certificaciones ISO?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"S&iacute;: 9001, 14001, 45001, 37001 y 50001, con n&uacute;meros de registro p&uacute;blicos.\"}}]}]}<\/script>\n\n<!-- v9.23f STYLE PATCH: consolidated visual fixes, accessibility, and responsive polish -->\n<style id=\"v923f-style-patch\">\n  :root{\n    --blue-2:#274B7C;\n    --blue-3:#3A6FA5;\n    --gray:#F2F4F7;\n    --text:#0F172A;\n  }\n  \/* Typography rhythm *\/\n  h2.section-title{font-size:clamp(24px,2.4vw,30px);line-height:1.2;font-weight:700;color:var(--navy);margin:0 0 10px}\n  .section-lead{font-size:clamp(15px,1.5vw,18px);color:#475569;margin:0 0 22px}\n  section{padding:56px 0 48px}\n\n  \/* Cards depth & consistency *\/\n  .card{background:#fff;border:1px solid rgba(23,44,81,.12);border-radius:16px;padding:18px;\n        box-shadow:0 2px 10px rgba(23,44,81,.06)}\n\n  \/* Buttons cleanup *\/\n  .btn{border-radius:14px;padding:12px 18px;font-weight:700;letter-spacing:.2px}\n  .btn--primary{background:var(--cobalt);color:#fff;border:1px solid var(--cobalt)}\n  .btn--primary:hover{filter:brightness(0.95)}\n  .btn--secondary{background:#fff;color:var(--cobalt)!important;border:1px solid rgba(15,76,129,.35)}\n  .btn--secondary:hover{background:rgba(15,76,129,.06)}\n\n  \/* Header nav and menu toggle *\/\n  header nav a{padding:.3rem .2rem;border-radius:8px}\n  header nav a:focus-visible,.btn:focus-visible,summary:focus-visible,#menuToggle:focus-visible{\n    outline:2px solid var(--cobalt);outline-offset:2px;\n  }\n  @media(max-width:680px){\n    #menuList[aria-expanded=\"true\"]{display:flex!important;flex-direction:column;gap:10px;background:#fff;\n      position:absolute;top:60px;right:20px;padding:12px;border:1px solid rgba(23,44,81,.12);border-radius:12px;\n      box-shadow:0 10px 30px rgba(15,76,129,.12)}\n  }\n\n  \/* Toast + Cable table (dedupe to one canonical variant) *\/\n  .toast-stack{position:fixed;right:18px;bottom:18px;z-index:1000;display:flex;flex-direction:column;gap:8px}\n  .toast{display:flex;align-items:center;gap:.6rem;background:#172C51;color:#E5E9F0;border:1px solid var(--concept-primary);\n         border-radius:10px;padding:.6rem .9rem;box-shadow:0 6px 24px rgba(15,76,129,.35);\n         opacity:0;transform:translateY(8px);transition:all .25s ease;font-weight:600;position:relative;overflow:hidden}\n  .toast.show{opacity:1;transform:translateY(0)}\n  .toast__bar{position:absolute;left:0;bottom:0;height:3px;background:var(--concept-primary);width:100%;animation:toastbar l&iacute;near forwards}\n  @keyframes toastbar{from{width:100%}to{width:0}}\n  .cable-table{width:100%;border-collapse:collapse;margin:.5rem 0;min-width:640px}\n  .cable-table th,.cable-table td{border:1px solid rgba(15,76,129,.25);padding:.5rem .7rem;text-align:left}\n  .cable-table thead th{background:var(--concept-primary);color:#fff;font-weight:700;letter-spacing:.02em}\n  .cable-table tbody tr:nth-child(even) td{background:rgba(15,76,129,.05)}\n  .cable-table tbody tr:hover{background:rgba(15,76,129,.10)}\n\n  \/* Grids responsiveness polish *\/\n  .diff__grid,.sol__grid,.about__grid,.testi__grid{gap:18px}\n  @media (max-width:1024px){\n    .diff__grid{grid-template-columns:repeat(2,1fr)}\n    .sol__grid{grid-template-columns:repeat(2,1fr)}\n  }\n  @media (max-width:680px){\n    .diff__grid,.sol__grid,.about__grid,.testi__grid{grid-template-columns:1fr}\n    section{padding:48px 0 36px}\n  }\n\n  \/* Hero slice readability *\/\n  .hero-slice p{color:#dbe3ef}\n\n  \/* Secondary accents *\/\n  .badge{border-color:rgba(23,44,81,.22);color:#334155}\n\n  \/* Accordion spacing *\/\n  .accordion details{margin:12px 0}\n\n  \/* Footer readability *\/\n  .foot{font-size:14px;line-height:1.6}\n<\/style>\n\n<script id=\"v923f-ux-patch\">\n  \/\/ Improve summary keyboard affordance on Safari\/Firefox\n  (function(){\n    document.querySelectorAll('summary').forEach(sm => {\n      sm.setAttribute('tabindex','0');\n      sm.addEventListener('keyup', e => { if(e.key === 'Enter' || e.key === ' ') sm.click(); });\n    });\n  })();\n<\/script>\n\n\n<style id=\"v923f-utilities\">\n  .mt-xs{margin-top:10px}\n  .mt-sm{margin-top:20px}\n  .mt-md{margin-top:30px}\n<\/style>\n\n\n\n<style>\n\/* v10.1 helpers (no override of base theme) *\/\n#servicios .grid.grid--3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}\n@media(max-width:900px){#servicios .grid.grid--3{grid-template-columns:1fr}}\n#servicios .section-title{margin-bottom:4px}\n#servicios .section-lead{margin-bottom:12px}\n#servicios .procura__form .input{width:100%}\n#servicios .diff__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}\n@media(max-width:1100px){#servicios .diff__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}\n@media(max-width:700px){#servicios .diff__grid{grid-template-columns:1fr}}\n#servicios .card{padding:16px;border-radius:14px;box-shadow:0 4px 18px rgba(0,0,0,0.06);background:#fff}\n#servicios .card h3{font-size:1.05rem;margin:0 0 6px}\n#servicios .card p{margin:6px 0}\n#servicios .card .muted{color:#5b6b82}\n#servicios .svc__card{\n  background:#ffffff;\n  border:1px solid rgba(23,44,81,.14);\n  box-shadow:0 12px 30px rgba(8,28,54,.10);\n}\n#servicios .svc__media{\n  border-bottom:1px solid rgba(23,44,81,.12);\n}\n#servicios .svc__media img{\n  opacity:1;\n  filter:contrast(1.05) saturate(1.04);\n}\n#servicios .svc__body{\n  padding:12px 12px 10px;\n}\n#servicios .svc__name{\n  color:#113960;\n  font-size:1.02rem;\n  margin:0 0 6px;\n}\n#servicios .svc__bullets{\n  color:#4d6683;\n  font-size:.92rem;\n  line-height:1.34;\n}\n#servicios .svc__bullets li{\n  margin:4px 0;\n}\n#servicios .svc__actions{\n  margin-top:10px;\n}\n#servicios .svc__link{\n  background:linear-gradient(180deg,#cceeff,#9fddff);\n  border:1px solid rgba(15,76,129,.28);\n  color:var(--concept-primary);\n  box-shadow:0 8px 18px rgba(8,28,54,.12);\n}\n#servicios .svc__link:hover{\n  background:linear-gradient(180deg,#daf3ff,#b8e8ff);\n  border-color:rgba(15,76,129,.4);\n  box-shadow:0 10px 20px rgba(8,28,54,.16);\n}\n#servicios .svc__card:hover{\n  transform:translateY(-3px);\n  border-color:rgba(15,76,129,.24);\n  box-shadow:0 18px 40px rgba(8,28,54,.16);\n}\n<\/style>\n\n<style>\n#svcSectorField .filters label{margin:6px 10px 0 0}\n#svcSectorField .chip{margin-left:6px}\n@media (max-width:680px){\n  #svcSectorField .filters{display:flex;flex-wrap:wrap;gap:8px}\n}\n<\/style>\n\n\n<style>\n#catIndustryField .filters label{margin:6px 10px 0 0}\n#catIndustryField .chip{margin-left:6px}\n@media (max-width:680px){\n  #catIndustryField .filters{display:flex;flex-wrap:wrap;gap:8px}\n}\n<\/style>\n\n\n<style id=\"v10-compact-ui\">\n\/* Compact form controls *\/\n.input, select, textarea{padding:10px;border-radius:10px;font-size:14px}\nlabel{font-size:14px}\n.procura__form{gap:8px}\n\/* Compact filters *\/\n.filters{gap:8px;margin:6px 0 10px}\n.filters fieldset{padding:8px 10px;border-radius:10px}\n.filters legend{font-size:13px}\n.filters label{margin-right:8px;font-size:13px}\n.filters .chip{padding:.18rem .5rem;border-radius:999px;font-size:12px}\n\/* Tiny secondary buttons *\/\n.btn.btn--secondary{padding:8px 12px;border-radius:10px;font-weight:700}\n.btn.btn--primary{padding:10px 14px;border-radius:12px}\n\/* Grid tightening *\/\n.diff__grid,.sol__grid,.testi__grid{gap:12px}\n.card{padding:14px;border-radius:14px}\n\/* Sticky quick-CTA *\/\n.quickbar{position:sticky;bottom:0;z-index:50;background:var(--concept-primary);color:#fff;\n  display:flex;align-items:center;justify-content:space-between;gap:10px;\n  padding:10px 12px;border-top:1px solid rgba(255,255,255,.2)}\n.quickbar__sum{display:flex;gap:6px;flex-wrap:wrap;font-size:12px}\n.quickbar .chip{background:#172C51;border:1px solid rgba(255,255,255,.25);color:#fff}\n.quickbar .btn{background:#fff;color:var(--concept-primary);border-color:#fff}\n\/* Checkbox as pill *\/\n.filters input[type=\"checkbox\"]{appearance:none;inline-size:18px;block-size:18px;border:1px solid rgba(23,44,81,.25);border-radius:4px;display:inline-grid;place-items:center}\n.filters input[type=\"checkbox\"]::after{content:\"\";inline-size:12px;block-size:12px;background:transparent;border-radius:2px;transform:scale(0);transition:transform .15s ease, background .15s ease}\n.filters input[type=\"checkbox\"]:checked{border-color:var(--concept-primary);background:#E6EEF7}\n.filters input[type=\"checkbox\"]:checked::after{background:var(--concept-primary);transform:scale(1)}\n\/* One-line toolbar *\/\n.inline-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:6px 0}\n.inline-toolbar .btn{padding:6px 10px;border-radius:999px}\n.inline-toolbar .muted{font-size:12px;color:#dbe3ef}\n\/* Auto-advance focus ring *\/\n:focus-visible{outline:2px solid var(--concept-primary);outline-offset:2px}\n\/* Mobile *\/\n@media (max-width:680px){\n  .quickbar{flex-direction:column;align-items:flex-start}\n}\n<\/style>\n\n\n<style id=\"vms-nfe-refresh\">\n  :root{\n    --vms-bg:#071428;\n    --vms-bg-2:#0c2346;\n    --vms-primary:var(--concept-primary);\n    --vms-primary-2:#0b3c67;\n    --vms-accent:#8ed7ff;\n    --vms-surface:#ffffff;\n    --vms-border:rgba(23,44,81,.14);\n    --vms-text:#10233d;\n  }\n  body{\n    color:var(--vms-text);\n    background:linear-gradient(180deg,#f7fbff 0%,#ffffff 260px);\n  }\n  header{\n    background:rgba(255,255,255,.92);\n    border-bottom:1px solid rgba(10,40,76,.14);\n    box-shadow:0 8px 22px rgba(8,28,54,.06);\n  }\n  nav a{\n    color:#12365f;\n    font-weight:700;\n  }\n  nav a:hover{\n    color:var(--vms-primary);\n  }\n  .cta-header{\n    background:linear-gradient(180deg,var(--vms-primary),var(--vms-primary-2));\n    border:1px solid rgba(8,53,92,.55);\n    box-shadow:0 10px 24px rgba(8,29,56,.18);\n  }\n  .btn{\n    transition:transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease;\n  }\n  .btn--primary{\n    background:linear-gradient(180deg,var(--vms-primary),var(--vms-primary-2));\n    border-color:rgba(7,52,91,.7);\n    box-shadow:0 10px 26px rgba(8,29,56,.24);\n  }\n  .btn--primary:hover{\n    transform:translateY(-1px);\n    box-shadow:0 14px 30px rgba(8,29,56,.3);\n    filter:none;\n  }\n  .btn--secondary{\n    border-color:rgba(16,76,129,.35);\n    background:#fff;\n    color:var(--vms-primary)!important;\n  }\n  .btn--secondary:hover{\n    transform:translateY(-1px);\n    background:rgba(142,215,255,.14);\n    border-color:rgba(16,76,129,.52);\n  }\n  .section-title{\n    color:#113960;\n    letter-spacing:.01em;\n  }\n  .section-title::after{\n    content:\"\";\n    display:block;\n    width:74px;\n    height:3px;\n    margin-top:8px;\n    border-radius:999px;\n    background:linear-gradient(90deg,var(--vms-primary),rgba(142,215,255,.35));\n  }\n  .section-lead{color:#47627f}\n  .card{\n    border:1px solid var(--vms-border);\n    box-shadow:0 10px 28px rgba(9,32,58,.08);\n  }\n  .hero{\n    background:\n      radial-gradient(72% 66% at 76% 12%, rgba(73,151,221,.24), transparent 62%),\n      linear-gradient(180deg,#071428 0%, #0c2346 100%);\n  }\n  .hero-slide::after{\n    background:\n      linear-gradient(100deg,rgba(6,20,40,.92) 0%,rgba(7,25,49,.78) 45%,rgba(8,35,70,.46) 100%),\n      var(--hero-image) center\/cover no-repeat;\n  }\n  .hero .eyebrow{\n    border-color:rgba(187,236,255,.38);\n    background:rgba(255,255,255,.06);\n  }\n  \/* Solo Hero azul; resto de secciones en blanco *\/\n  .hero-to-nos{\n    background:#fff !important;\n    border-top:0 !important;\n    border-bottom:0 !important;\n    height:18px;\n  }\n  .hero-to-nos::after{content:none}\n  .hero-slice,\n  .svc,\n  #clientesPorSector,\n  #clientesPorSectorAliados,\n  .cvproj,\n  .contact-block{\n    background:#fff !important;\n    color:var(--vms-text) !important;\n    border-top:0 !important;\n    border-bottom:0 !important;\n  }\n  .hero-slice .container{\n    background:#fff;\n    border:1px solid rgba(23,44,81,.12);\n    box-shadow:0 8px 24px rgba(8,28,54,.08);\n  }\n  .hero-slice .container:before{content:none}\n  .hero-slice h1,\n  .hero-slice h2,\n  .hero-slice h3{color:#113960}\n  .hero-slice p{color:#475569}\n  .hero-slice--nosotros .container{\n    background:linear-gradient(180deg,#172C51,#0f2342) !important;\n    border:1px solid rgba(142,215,255,.28) !important;\n    box-shadow:0 18px 42px rgba(4,18,36,.30) !important;\n  }\n  .hero-slice--nosotros h1,\n  .hero-slice--nosotros h2,\n  .hero-slice--nosotros h3{color:#f3f8ff !important}\n  .hero-slice--nosotros p{color:#cfe2f7 !important}\n  .svc__kicker{color:rgba(17,57,96,.72)}\n  .svc__title{color:#113960}\n  .svc__note{color:#47627f}\n  #clientesPorSector .clients__head h3,\n  #clientesPorSectorAliados .clients__head h3{color:#113960}\n  #clientesPorSectorAliados .clients__go-supply{\n    border-color:rgba(17,57,96,.34);\n    background:linear-gradient(180deg,var(--concept-primary),#0c3b65);\n    color:#f7fbff;\n    box-shadow:0 10px 20px rgba(9,33,61,.24), inset 0 0 0 1px rgba(255,255,255,.10);\n  }\n  #clientesPorSectorAliados .clients__go-supply:hover{\n    background:linear-gradient(180deg,#18629f,#0e4878);\n    border-color:rgba(17,57,96,.55);\n  }\n  #clientesPorSector .clients-carousel,\n  #clientesPorSectorAliados .clients-carousel{\n    background:#fff !important;\n    border:1px solid rgba(23,44,81,.12) !important;\n    box-shadow:0 10px 26px rgba(8,28,54,.08) !important;\n  }\n  #clientesPorSector .clients-carousel__meta,\n  #clientesPorSectorAliados .clients-carousel__meta{color:#5b7391}\n  #clientesPorSector .clients-carousel__btn,\n  #clientesPorSectorAliados .clients-carousel__btn{\n    border-color:rgba(23,44,81,.22);\n    background:#fff;\n    color:var(--concept-primary);\n  }\n  #clientesPorSector .clients-carousel__btn:hover,\n  #clientesPorSectorAliados .clients-carousel__btn:hover{background:rgba(15,76,129,.08)}\n  #clientesPorSector .clients-carousel__track .logo-ph,\n  #clientesPorSectorAliados .clients-carousel__track .logo-ph{\n    background:linear-gradient(180deg,rgba(23,44,81,.03),rgba(23,44,81,.01));\n    border:1px solid rgba(23,44,81,.12);\n    box-shadow:none;\n  }\n  #clientesPorSector .logo-ph__name,\n  #clientesPorSectorAliados .logo-ph__name{color:#0f172a}\n  #clientesPorSector .logo-ph__hint,\n  #clientesPorSectorAliados .logo-ph__hint,\n  #clientesPorSector .logo-ph__sector,\n  #clientesPorSectorAliados .logo-ph__sector{color:#64748b}\n  .svc__card,\n  .cvproj .cvtab.svc__card{\n    border-color:rgba(153,220,255,.25);\n    box-shadow:0 16px 36px rgba(4,18,36,.24);\n  }\n  #cv-proyectos .cvproj .cvtab.svc__card{\n    border:0 !important;\n  }\n  .svc__card:hover,\n  .cvproj .cvtab.svc__card:hover{\n    transform:translateY(-4px);\n    box-shadow:0 20px 46px rgba(4,18,36,.3);\n  }\n  #clientesPorSector .clients-carousel,\n  #clientesPorSectorAliados .clients-carousel{\n    border-color:rgba(170,226,255,.23);\n    box-shadow:0 16px 36px rgba(4,18,36,.24);\n  }\n  .contact-card{\n    border-color:rgba(18,71,118,.18);\n    box-shadow:0 14px 32px rgba(8,28,54,.1);\n  }\n  \/* Fix visual final: Hero + lista legible en Aliados *\/\n  #clientesPorSectorAliados .allies-hero{\n    min-height:290px !important;\n    background:transparent !important;\n    display:flex !important;\n    justify-content:center !important;\n    align-items:center !important;\n  }\n  #clientesPorSectorAliados .allies-hero::before{\n    background:\n      linear-gradient(120deg,rgba(10,22,43,.44),rgba(10,22,43,.34)),\n      url('https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/hero_que_hacemos_VMS_Energy.png') center\/cover no-repeat !important;\n  }\n  #clientesPorSectorAliados .clients-carousel{\n    background:rgba(8,22,43,.72) !important;\n    border:1px solid rgba(210,237,255,.46) !important;\n    box-shadow:0 16px 34px rgba(2,10,24,.34) !important;\n    width:min(1120px, calc(100% - 24px)) !important;\n    margin:0 auto !important;\n  }\n  #clientesPorSectorAliados .clients__grid{\n    width:100% !important;\n    display:flex !important;\n    justify-content:center !important;\n    align-items:center !important;\n  }\n  #clientesPorSectorAliados .clients-carousel__meta{color:#eef6ff !important}\n  #clientesPorSectorAliados .clients-carousel__btn{\n    background:rgba(5,16,32,.72) !important;\n    border-color:rgba(255,255,255,.48) !important;\n    color:#f8fcff !important;\n  }\n  #clientesPorSectorAliados .clients-carousel__btn:hover{\n    background:rgba(5,16,32,.88) !important;\n  }\n  #clientesPorSectorAliados .clients-carousel__track{\n    grid-template-columns:repeat(4,minmax(0,1fr)) !important;\n    gap:6px !important;\n  }\n  #clientesPorSectorAliados .clients-carousel__track .logo-ph{\n    background:linear-gradient(180deg,rgba(255,255,255,.22),rgba(255,255,255,.11)) !important;\n    border:1px solid rgba(255,255,255,.40) !important;\n    box-shadow:none !important;\n    display:block;\n    padding:5px 7px;\n    min-height:0 !important;\n    border-radius:8px;\n  }\n  #clientesPorSectorAliados .logo-ph__box{display:none !important}\n  #clientesPorSectorAliados .logo-ph__name{\n    color:#ffffff !important;\n    font-size:.84rem !important;\n    line-height:1.1 !important;\n  }\n  #clientesPorSectorAliados .logo-ph__hint,\n  #clientesPorSectorAliados .logo-ph__sector{color:#e7f2ff !important}\n#clientesPorSectorAliados .logo-ph__sector{display:none !important}\n<\/style>\n\n\n<style id=\"quicklead-modal-style\">\n  .quicklead-modal{\n    position:fixed;\n    inset:0;\n    display:none;\n    align-items:center;\n    justify-content:center;\n    padding:18px;\n    z-index:10000;\n  }\n  .quicklead-modal.is-open{display:flex}\n  .quicklead-modal__backdrop{\n    position:absolute;\n    inset:0;\n    background:linear-gradient(180deg,rgba(8,27,54,.72),rgba(9,34,66,.82));\n    backdrop-filter:blur(2px);\n  }\n  .quicklead-modal__dialog{\n    position:relative;\n    width:min(560px,100%);\n    max-height:calc(100vh - 40px);\n    overflow:auto;\n    border-radius:14px;\n    border:1px solid rgba(143,194,255,.22);\n    background:linear-gradient(165deg,#113961 0%,#0f3154 55%,#0b2746 100%);\n    box-shadow:0 24px 44px rgba(4,16,32,.45);\n    padding:18px;\n    color:#eaf3ff;\n  }\n  .quicklead-modal__title{\n    margin:0 38px 12px 0;\n    font-size:1.38rem;\n    line-height:1.2;\n    color:#ffffff;\n  }\n  .quicklead-modal__close{\n    position:absolute;\n    top:10px;\n    right:10px;\n    width:30px;\n    height:30px;\n    border:1px solid rgba(255,255,255,.24);\n    border-radius:999px;\n    background:rgba(255,255,255,.1);\n    color:#fff;\n    font-size:18px;\n    cursor:pointer;\n  }\n  .quicklead-form{display:grid;gap:10px}\n  .quicklead-form input,\n  .quicklead-form select,\n  .quicklead-form textarea{\n    width:100%;\n    border:1px solid rgba(151,199,255,.38);\n    border-radius:10px;\n    background:#f4f8ff;\n    color:#103961;\n    font:inherit;\n    padding:11px 12px;\n    outline:none;\n  }\n  .quicklead-form input:focus,\n  .quicklead-form select:focus,\n  .quicklead-form textarea:focus{\n    border-color:#5ea9ff;\n    box-shadow:0 0 0 2px rgba(94,169,255,.24);\n  }\n  .quicklead-form textarea{min-height:92px;resize:vertical}\n  .quicklead-form label{font-weight:700;font-size:.9rem;color:#eaf3ff}\n  .quicklead-form__hint{margin:2px 0 0;font-size:.82rem;color:#c6dcf4}\n  .quicklead-form__send{\n    border:1px solid rgba(255,255,255,.2);\n    border-radius:10px;\n    background:linear-gradient(180deg,#1f70b7,#12538d);\n    color:#fff;\n    font-weight:700;\n    padding:12px 16px;\n    cursor:pointer;\n    transition:filter .2s ease;\n  }\n  .quicklead-form__send:hover{filter:brightness(1.06)}\n  .quicklead-form__feedback{margin:0;font-size:.86rem;color:#ffd3c9;min-height:18px}\n  @media (max-width:640px){\n    .quicklead-modal{padding:12px}\n    .quicklead-modal__dialog{padding:14px}\n  }\n<\/style>\n\n\n  <script type=\"application\/ld+json\">\n  {\"@context\":\"https:\/\/schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"VMS Energy\",\"item\":\"https:\/\/vmsenergy.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Empresa EPC El\u00e9ctrica Industrial M\u00e9xico\",\"item\":\"https:\/\/vmsenergy.com\/index.html\"}]}\n  <\/script>\n\n<style id=\"rim2026-styles\">\n  \/* 1. Scroll horizontal autom\u00e1tico para las tablas de cables dentro del acorde\u00f3n *\/\ndetails[data-cables-perf] {\n  width: 100%;\n  max-width: 100vw;\n  overflow-x: auto;\n  -webkit-overflow-scrolling: touch;\n}\n\n\n.clients__search input[type=\"search\"],\n.matrix-search input {\n  min-width: 0 !important;\n  width: 100%;\n  max-width: 100%;\n  box-sizing: border-box;\n}\n\n\n.quicklead-modal__dialog,\n.moreinfo-modal__dialog {\n  max-width: 100%;\n  box-sizing: border-box;\n  margin: 10px; \/* Margen seguro en lugar de centrado forzado *\/\n}\n\n\n.hero__ctas .btn {\n  width: 100%;\n  justify-content: center;\n}\n@media (min-width: 480px) {\n  .hero__ctas .btn {\n    width: auto;\n  }\n}\n<\/style>\n\n<style id=\"mobile-fix-targeted\">\n@media (max-width:680px){\n\n\/* FIX 1: carrusel diferenciales *\/\n.diff-carousel__viewport{\n  padding:0 8px 72px !important;\n}\n.diff-slide{\n  width:100% !important;\n  min-width:100% !important;\n  max-width:100% !important;\n}\n.diff-slide__media{\n  min-height:320px !important;\n}\n.diff-slide__panel{\n  left:50% !important;\n  right:auto !important;\n  bottom:16px !important;\n  width:calc(100% - 32px) !important;\n  max-width:none !important;\n  transform:translateX(-50%) !important;\n  padding:14px 12px !important;\n  border-radius:14px !important;\n}\n.diff-slide__title{\n  max-width:none !important;\n  text-wrap:balance;\n}\n.diff-carousel__btn{\n  top:42% !important;\n}\n\n\/* FIX 2: logos\/multimarcas *\/\n.client-sector,\n.clients-carousel{\n  overflow:hidden !important;\n}\n.client-logos{\n  display:grid !important;\n  grid-template-columns:repeat(2,minmax(0,1fr)) !important;\n  gap:8px !important;\n}\n.logo-ph{\n  min-width:0 !important;\n  width:100% !important;\n  padding:8px !important;\n}\n.logo-ph__name{\n  font-size:.82rem !important;\n  overflow-wrap:anywhere !important;\n  word-break:break-word !important;\n}\n.logo-ph.has-logo{\n  height:72px !important;\n  padding:8px !important;\n}\n.client-sector__top{\n  flex-wrap:wrap !important;\n}\n}\n<\/style>\n\n\n\n<style id=\"aliados-responsive-final\">\n\/*\n * Fix responsive exclusivo para #clientesPorSectorAliados.\n * Se coloca al final del <head> para superar los overrides anteriores\n * que fuerzan cuatro columnas y cortes dentro de las palabras.\n *\/\n@media (max-width: 900px){\n  #clientesPorSectorAliados .allies-hero{\n    padding:10px !important;\n  }\n\n  #clientesPorSectorAliados .clients-carousel{\n    width:100% !important;\n    box-sizing:border-box !important;\n  }\n\n  #clientesPorSectorAliados .clients-carousel__track{\n    grid-template-columns:repeat(2,minmax(0,1fr)) !important;\n    gap:8px !important;\n  }\n\n  #clientesPorSectorAliados .clients-carousel__track .logo-ph{\n    display:flex !important;\n    align-items:center !important;\n    width:100% !important;\n    min-width:0 !important;\n    min-height:44px !important;\n    padding:9px 10px !important;\n    box-sizing:border-box !important;\n  }\n\n  #clientesPorSectorAliados .clients-carousel__track .logo-ph > div{\n    width:100% !important;\n    min-width:0 !important;\n  }\n\n  #clientesPorSectorAliados .logo-ph__name{\n    font-size:.9rem !important;\n    line-height:1.22 !important;\n    white-space:normal !important;\n    overflow-wrap:normal !important;\n    word-break:normal !important;\n    hyphens:none !important;\n  }\n}\n\n@media (max-width: 420px){\n  #clientesPorSectorAliados .container{\n    padding-left:14px !important;\n    padding-right:14px !important;\n  }\n\n  #clientesPorSectorAliados .allies-hero{\n    padding:8px !important;\n    border-radius:14px !important;\n  }\n\n  #clientesPorSectorAliados .clients-carousel{\n    padding:8px !important;\n  }\n\n  #clientesPorSectorAliados .clients-carousel__track{\n    grid-template-columns:repeat(2,minmax(0,1fr)) !important;\n    gap:7px !important;\n  }\n\n  #clientesPorSectorAliados .clients-carousel__track .logo-ph{\n    min-height:46px !important;\n    padding:8px 9px !important;\n  }\n\n  #clientesPorSectorAliados .logo-ph__name{\n    font-size:.86rem !important;\n  }\n}\n\n@media (max-width: 340px){\n  #clientesPorSectorAliados .clients-carousel__track{\n    grid-template-columns:1fr !important;\n  }\n}\n<\/style>\n\n<\/head>\n<body>\n\n\n\n  <div class=\"toast-stack\" id=\"toasts\" aria-live=\"polite\"><\/div>\n\n\n\n\n\n\n\n\n\n\n  <!-- ===== Hero ===== -->\n  <section id=\"inicio\" class=\"hero\">\n    <div class=\"hero-carousel\" id=\"heroCarousel\" aria-roledescription=\"carousel\" aria-label=\"Carrusel principal de soluciones VMS Energy\">\n      <button type=\"button\" class=\"hero-carousel__nav hero-carousel__nav--prev\" aria-label=\"Slide anterior\">\u2039<\/button>\n      <button type=\"button\" class=\"hero-carousel__nav hero-carousel__nav--next\" aria-label=\"Siguiente slide\">\u203a<\/button>\n      <div class=\"hero-carousel__viewport\">\n        <article id=\"hero-vms\" class=\"hero-slide is-active\" data-hero-slide>\n          <div class=\"container hero__wrap\">\n            <div class=\"hero__content\">\n              <span class=\"eyebrow\">VMS Energy \u2022 EPC \u2022 Proyectos desde $1,000,000 MXN<\/span>\n              <h1>Ingenier&iacute;a EPC de alto valor para la industria mexicana<\/h1>\n              <p>Somos el socio EPC el&eacute;ctrico y electromec&aacute;nico de empresas Fortune 500 en M&eacute;xico. Casi 20 a&ntilde;os de experiencia. 5 certificaciones ISO activas.<\/p>\n              <div class=\"hero__ctas\">\n                <a href=\"contacto_cta.html#ctaForm\" class=\"btn btn--primary\" data-cta=\"hero-primary\">Solicitar Evaluaci&oacute;n de Proyecto<\/a>\n                <a href=\"catalogo-proyectos.html\" class=\"btn btn--secondary\" data-cta=\"hero-secondary\">Ver proyectos ejecutados<\/a>\n              <\/div>\n            <\/div>\n          <\/div>\n        <\/article>\n\n        <article id=\"hero-sig\" class=\"hero-slide\" data-hero-slide>\n          <div class=\"container hero__wrap\">\n            <div class=\"hero__content\">\n              <span class=\"eyebrow\">VMS Energy \u2022 EPC \u2022 Integrador Multimarcas<\/span>\n              <h2>Sistema de Gesti&oacute;n Integral QHSE+<\/h2>\n              <p>Operamos con procesos certificados, &eacute;tica documentada, seguridad como cultura y eficiencia operativa medible bajo enfoque QHSE+ con ISO 9001, 14001, 37001, 45001 y 50001<\/p>\n              <div class=\"hero__ctas\">\n                <a href=\"contacto_cta.html#ctaForm\" class=\"btn btn--primary\">Solicitar Evaluaci&oacute;n de Proyecto<\/a>\n                <a href=\"certificaciones.html\" class=\"btn btn--secondary\">Ver certificaciones<\/a>\n              <\/div>\n            <\/div>\n          <\/div>\n        <\/article>\n\n        <article id=\"hero-electromecanicas\" class=\"hero-slide\" data-hero-slide>\n          <div class=\"container hero__wrap\">\n            <div class=\"hero__content\">\n              <span class=\"eyebrow\">Soluci&oacute;n especializada<\/span>\n              <h2>Soluciones Electromec&aacute;nicas<\/h2>\n              <p>Integramos ingenier&iacute;a, montaje y puesta en marcha para sistemas electromec&aacute;nicos industriales con enfoque en confiabilidad operativa.<\/p>\n              <div class=\"hero__ctas\">\n                <a href=\"soluciones_electromecanicas.html#inicio\" class=\"btn btn--primary\">Conocer soluci&oacute;n<\/a>\n                <a href=\"contacto_cta.html#ctaForm\" class=\"btn btn--secondary\">Hablar con un especialista<\/a>\n              <\/div>\n            <\/div>\n          <\/div>\n        <\/article>\n\n        <article id=\"hero-iluminacion\" class=\"hero-slide\" data-hero-slide>\n          <div class=\"container hero__wrap\">\n            <div class=\"hero__content\">\n              <span class=\"eyebrow\">Soluci&oacute;n especializada<\/span>\n              <h2>Iluminaci&oacute;n Industrial<\/h2>\n              <p>Dise&ntilde;o luminot&eacute;cnico, selecci&oacute;n de tecnolog&iacute;as y ejecuci&oacute;n de proyectos de iluminaci&oacute;n para seguridad, eficiencia y desempe&ntilde;o visual.<\/p>\n              <div class=\"hero__ctas\">\n                <a href=\"soluciones_iluminacion_industrial.html#inicio\" class=\"btn btn--primary\">Conocer soluci&oacute;n<\/a>\n                <a href=\"contacto_cta.html#ctaForm\" class=\"btn btn--secondary\">Solicitar diagn&oacute;stico<\/a>\n              <\/div>\n            <\/div>\n          <\/div>\n        <\/article>\n\n        <article id=\"hero-infraestructura-electrica\" class=\"hero-slide\" data-hero-slide>\n          <div class=\"container hero__wrap\">\n            <div class=\"hero__content\">\n              <span class=\"eyebrow\">Soluci&oacute;n especializada<\/span>\n              <h2>Infraestructura El&eacute;ctrica<\/h2>\n              <p>Desarrollamos infraestructura para generaci&oacute;n, transmisi&oacute;n y distribuci&oacute;n con est&aacute;ndares de seguridad y continuidad de servicio.<\/p>\n              <div class=\"hero__ctas\">\n                <a href=\"soluciones_infraestructura_energetica.html#inicio\" class=\"btn btn--primary\">Conocer soluci&oacute;n<\/a>\n                <a href=\"contacto_cta.html#ctaForm\" class=\"btn btn--secondary\">Iniciar proyecto<\/a>\n              <\/div>\n            <\/div>\n          <\/div>\n        <\/article>\n\n        <article id=\"hero-oil-gas\" class=\"hero-slide\" data-hero-slide>\n          <div class=\"container hero__wrap\">\n            <div class=\"hero__content\">\n              <span class=\"eyebrow\">Soluci&oacute;n especializada<\/span>\n              <h2>Oil & Gas<\/h2>\n              <p>Ejecutamos soluciones para operaci&oacute;n continua en ambientes cr&iacute;ticos, cumpliendo normativas y requerimientos de seguridad industrial.<\/p>\n              <div class=\"hero__ctas\">\n                <a href=\"soluciones_oil_gas.html#inicio\" class=\"btn btn--primary\">Conocer soluci&oacute;n<\/a>\n                <a href=\"contacto_cta.html#ctaForm\" class=\"btn btn--secondary\">Solicitar propuesta<\/a>\n              <\/div>\n            <\/div>\n          <\/div>\n        <\/article>\n\n        <article id=\"hero-solar\" class=\"hero-slide\" data-hero-slide>\n          <div class=\"container hero__wrap\">\n            <div class=\"hero__content\">\n              <span class=\"eyebrow\">Soluci&oacute;n especializada<\/span>\n              <h2>Solar<\/h2>\n              <p>Dise&ntilde;amos e integramos sistemas solares para reducir costos energ&eacute;ticos y elevar el desempe&ntilde;o ambiental de cada operaci&oacute;n.<\/p>\n              <div class=\"hero__ctas\">\n                <a href=\"soluciones_solar_industrial.html#inicio\" class=\"btn btn--primary\">Conocer soluci&oacute;n<\/a>\n                <a href=\"contacto_cta.html#ctaForm\" class=\"btn btn--secondary\">Evaluar factibilidad<\/a>\n              <\/div>\n            <\/div>\n          <\/div>\n        <\/article>\n        <article id=\"hero-no-solar\" class=\"hero-slide\" data-hero-slide>\n          <div class=\"container hero__wrap\">\n            <div class=\"hero__content\">\n              <span class=\"eyebrow\">Soluci&oacute;n especializada<\/span>\n              <h2>Soluciones de generaci&oacute;n verde<\/h2>\n              <p>Desarrollamos soluciones de biog&aacute;s, biomasa, e&oacute;lica distribuida y servicios en Centrales Hidroel&eacute;ctricas de CFE para descarbonizar operaciones cr&iacute;ticas.<\/p>\n              <div class=\"hero__ctas\">\n                <a href=\"soluciones_verde_no_solar.html#inicio\" class=\"btn btn--primary\">Conocer soluci&oacute;n<\/a>\n                <a href=\"contacto_cta.html#ctaForm\" class=\"btn btn--secondary\">Evaluar factibilidad<\/a>\n              <\/div>\n            <\/div>\n          <\/div>\n        <\/article>\n\n        <article id=\"hero-automatizacion-control\" class=\"hero-slide\" data-hero-slide>\n          <div class=\"container hero__wrap\">\n            <div class=\"hero__content\">\n              <span class=\"eyebrow\">Soluci&oacute;n especializada<\/span>\n              <h2>Automatizaci&oacute;n &amp; Control<\/h2>\n              <p>Integramos tableros, instrumentaci&oacute;n y control para mejorar la toma de decisiones en tiempo real y la eficiencia operativa.<\/p>\n              <div class=\"hero__ctas\">\n                <a href=\"soluciones_automatizacion_control.html#inicio\" class=\"btn btn--primary\">Conocer soluci&oacute;n<\/a>\n                <a href=\"contacto_cta.html#ctaForm\" class=\"btn btn--secondary\">Hablar con ingenier&iacute;a<\/a>\n              <\/div>\n            <\/div>\n          <\/div>\n        <\/article>\n      <\/div>\n      <div class=\"hero-carousel__dots\" id=\"heroCarouselDots\" aria-label=\"Indicadores del carrusel\"><\/div>\n    <\/div>\n  <\/section>\n\n<script>\n(function(){\n  function initHeroCarousel(){\n    const root = document.getElementById('heroCarousel');\n    if(!root) return;\n    const slides = Array.from(root.querySelectorAll('[data-hero-slide]'));\n    const prev = root.querySelector('.hero-carousel__nav--prev');\n    const next = root.querySelector('.hero-carousel__nav--next');\n    const dotsWrap = document.getElementById('heroCarouselDots');\n    const reduceMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n    let current = Math.max(0, slides.findIndex(s => s.classList.contains('is-active')));\n    let timer = null;\n\n    if(!slides.length || !dotsWrap) return;\n\n    function setSlide(index){\n      current = (index + slides.length) % slides.length;\n      slides.forEach((slide, i) => slide.classList.toggle('is-active', i === current));\n      Array.from(dotsWrap.children).forEach((dot, i) => dot.classList.toggle('is-active', i === current));\n    }\n\n    function startAutoplay(){\n      if(reduceMotion) return;\n      stopAutoplay();\n      timer = window.setInterval(() => setSlide(current + 1), 6000);\n    }\n\n    function stopAutoplay(){\n      if(timer){ window.clearInterval(timer); timer = null; }\n    }\n\n    dotsWrap.innerHTML = '';\n    slides.forEach((_, i) => {\n      const dot = document.createElement('button');\n      dot.type = 'button';\n      dot.className = 'hero-carousel__dot';\n      dot.setAttribute('aria-label', 'Ir al slide ' + (i + 1));\n      dot.addEventListener('click', () => { setSlide(i); startAutoplay(); });\n      dotsWrap.appendChild(dot);\n    });\n\n    prev?.addEventListener('click', () => { setSlide(current - 1); startAutoplay(); });\n    next?.addEventListener('click', () => { setSlide(current + 1); startAutoplay(); });\n\n    root.addEventListener('mouseenter', stopAutoplay);\n    root.addEventListener('mouseleave', startAutoplay);\n    root.addEventListener('focusin', stopAutoplay);\n    root.addEventListener('focusout', startAutoplay);\n\n    setSlide(current);\n    startAutoplay();\n  }\n\n  if(document.readyState === 'loading'){\n    document.addEventListener('DOMContentLoaded', initHeroCarousel);\n  } else {\n    initHeroCarousel();\n  }\n})();\n<\/script>\n<div class=\"hero-to-nos\" aria-hidden=\"true\"><\/div>\n \n  <!-- ===== Nosotros ===== -->\n  \n<section class=\"hero-slice hero-slice--nosotros\"><div class=\"container\"><h2><strong>VMS Energy<\/strong><p>Socio Estrat&eacute;gico<\/p><\/h2>\n  <section class=\"nos-carousel\" aria-label=\"Carrusel de Nosotros\">\n      <div class=\"nos-carousel__tabs\" id=\"nosCarouselTabs\" role=\"tablist\" aria-label=\"Secciones de Nosotros\"><\/div>\n      <div class=\"nos-carousel__box\" id=\"nosCarousel\">\n        <button type=\"button\" class=\"nos-carousel__nav nos-carousel__nav--prev\" aria-label=\"Imagen anterior\">&#8249;<\/button>\n        <button type=\"button\" class=\"nos-carousel__nav nos-carousel__nav--next\" aria-label=\"Imagen siguiente\">&#8250;<\/button>\n        <figure class=\"nos-carousel__slide is-active\" data-caption-title=\"Nosotros\" data-caption-text=\"En un mercado enfocado en volumen y precio, VMS Energy prioriza soluciones con impacto real. Nuestro prop&oacute;sito es dar certeza al crecimiento operativo de la industria con seguridad, eficiencia y &eacute;tica.\">\n          <img src=\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/07\/hero_nosotros_VMS_Energy-scaled.webp\" alt=\"Nosotros VMS Energy\" loading=\"lazy\" decoding=\"async\">\n        <\/figure>\n        <figure class=\"nos-carousel__slide\" data-caption-title=\"Qui&eacute;nes somos\" data-caption-text=\"Somos una empresa mexicana con m&aacute;s de 17 a&ntilde;os de experiencia en ingenier&iacute;a, suministro t&eacute;cnico y construcci&oacute;n (EPC). Desarrollamos soluciones integrales y personalizadas en sistemas el&eacute;ctricos, electromec&aacute;nica, infraestructura el&eacute;ctrica, Oil &amp; Gas, generaci&oacute;n solar, automatizaci&oacute;n e iluminaci&oacute;n industrial.\">\n          <img src=\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/07\/hero_quienes_somos_VMS_Energy.webp\" alt=\"Qui&eacute;nes somos VMS Energy\" loading=\"lazy\" decoding=\"async\">\n        <\/figure>\n        <figure class=\"nos-carousel__slide\" data-caption-title=\"Filosof&iacute;a institucional\" data-caption-text=\"Nuestra misi&oacute;n es ofrecer soluciones vers&aacute;tiles y sustentables en generaci&oacute;n y distribuci&oacute;n el&eacute;ctrica. Nuestra visi&oacute;n es liderar el mercado EPC energ&eacute;tico en M&eacute;xico hacia 2030, guiados por verdad, motivaci&oacute;n, salud y seguridad, cuidado del medio ambiente, nobleza y eficiencia.\">\n          <img src=\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/07\/hero_filosofia_VMS_Energy.webp\" alt=\"Filosof&iacute;a VMS Energy\" loading=\"lazy\" decoding=\"async\">\n        <\/figure>\n        <figure class=\"nos-carousel__slide\" data-caption-title=\"Qu&eacute; hacemos\" data-caption-text=\"Desarrollamos soluciones confiables y sustentables de ingenier&iacute;a, suministro t&eacute;cnico y construcci&oacute;n: EPC, generaci&oacute;n, transmisi&oacute;n y distribuci&oacute;n el&eacute;ctrica, soluciones electromec&aacute;nicas, automatizaci&oacute;n y control multimarcas, infraestructura el&eacute;ctrica, petr&oacute;leo y gas, iluminaci&oacute;n industrial y energ&iacute;as renovables.\">\n          <img src=\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/hero_que_hacemos_VMS_Energy.png\" alt=\"Qu&eacute; hacemos en VMS Energy\" loading=\"lazy\" decoding=\"async\">\n        <\/figure>\n        <figure class=\"nos-carousel__slide\" data-caption-title=\"C&oacute;mo lo hacemos\" data-caption-text=\"Operamos con procesos certificados, &eacute;tica documentada, seguridad como cultura y eficiencia medible. Trabajamos bajo est&aacute;ndares ISO 9001, 14001, 37001, 45001 y 50001 para garantizar confiabilidad y sustentabilidad integral.\">\n          <img src=\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/07\/hero_como_lo_hacemos_VMS_Energy.webp\" alt=\"C&oacute;mo lo hacemos en VMS Energy\" loading=\"lazy\" decoding=\"async\">\n        <\/figure>\n        <figure class=\"nos-carousel__slide\" data-caption-title=\"Alcance\" data-caption-text=\"Tenemos cobertura operativa en Estados Unidos, M&eacute;xico, Centroam&eacute;rica y el Caribe. Acompa&ntilde;amos proyectos EPC con log&iacute;stica, ingenier&iacute;a y soporte en sitio, con respuesta &aacute;gil en suministro t&eacute;cnico y arranques, coordinaci&oacute;n multisede y gesti&oacute;n de riesgos para operaciones cr&iacute;ticas.\">\n          <img src=\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/07\/alcance-americas.webp\" alt=\"Alcance regional VMS Energy en Estados Unidos, M&eacute;xico, Centroam&eacute;rica y el Caribe\" loading=\"lazy\" decoding=\"async\">\n        <\/figure>\n      <\/div>\n      <div class=\"nos-carousel__caption\" id=\"nosCarouselCaption\" aria-live=\"polite\">\n        <h4 class=\"nos-carousel__caption-title\" id=\"nosCarouselCaptionTitle\">Nosotros<\/h4>\n        <p class=\"nos-carousel__caption-text\" id=\"nosCarouselCaptionText\">En un mercado enfocado en volumen y precio, VMS Energy prioriza soluciones con impacto real. Nuestro prop&oacute;sito es dar certeza al crecimiento operativo de la industria con seguridad, eficiencia y &eacute;tica.<\/p>\n      <\/div>\n    <\/section>\n  <\/div>\n<\/section>\n<style>.kpi-strip{background:#172C51;color:#fff;padding:40px 0}.kpi-strip__grid{display:grid;grid-template-columns:repeat(4,1fr);text-align:center}.kpi-strip__item{padding:24px 16px;border-right:1px solid rgba(255,255,255,.12)}.kpi-strip__item:last-child{border-right:none}.kpi-strip__number{display:block;font-size:clamp(30px,3.8vw,46px);font-weight:700;line-height:1;color:#8ed7ff;margin:0 0 8px}.kpi-strip__label{display:block;font-size:clamp(13px,1.1vw,15px);opacity:.82;line-height:1.35}@media(max-width:680px){.kpi-strip{padding:32px 0}.kpi-strip__grid{grid-template-columns:repeat(2,1fr)}.kpi-strip__item{border-right:none;border-bottom:1px solid rgba(255,255,255,.12)}.kpi-strip__item:nth-child(odd){border-right:1px solid rgba(255,255,255,.12)}.kpi-strip__item:nth-last-child(-n+2){border-bottom:none}}<\/style>\n<section class=\"kpi-strip\" aria-label=\"Capacidad operativa VMS Energy\">\n  <div class=\"container\">\n    <div class=\"kpi-strip__grid\">\n      <div class=\"kpi-strip__item\">\n        <span class=\"kpi-strip__number\">+178<\/span>\n        <span class=\"kpi-strip__label\">Proyectos ejecutados<\/span>\n      <\/div>\n      <div class=\"kpi-strip__item\">\n        <span class=\"kpi-strip__number\">+160<\/span>\n        <span class=\"kpi-strip__label\">Especialistas t&eacute;cnicos<\/span>\n      <\/div>\n      <div class=\"kpi-strip__item\">\n        <span class=\"kpi-strip__number\">5 ISOs<\/span>\n        <span class=\"kpi-strip__label\">Sistema de gesti&oacute;n certificado<\/span>\n      <\/div>\n      <div class=\"kpi-strip__item\">\n        <span class=\"kpi-strip__number\">4<\/span>\n        <span class=\"kpi-strip__label\">mercados &middot; M&eacute;xico, EE.UU., Centroam&eacute;rica y Caribe<\/span>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/section>\n<section id=\"nosotros\" class=\"about\" aria-labelledby=\"aboutTitle\">\n    <div class=\"container\">\n    <!-- ===== Diferenciadores ===== -->\n  <section class=\"diff\" aria-labelledby=\"diffTitle\">\n    <div class=\"container\">\n      <div class=\"section-intro section-intro--compact\">\n        <h2 id=\"diffTitle\" class=\"section-intro__title\">Diferenciadores clave<\/h2>\n        <p class=\"section-intro__lead\">Proyectos EPC confiables y de alto desempe&ntilde;o.<\/p>\n      <\/div>\n      <div class=\"diff-carousel\" id=\"diffCarousel\" aria-roledescription=\"carousel\" aria-label=\"Carrusel de diferenciadores\">\n        <button type=\"button\" class=\"diff-carousel__btn diff-carousel__btn--prev\" aria-label=\"Diferenciador anterior\">&#8249;<\/button>\n        <button type=\"button\" class=\"diff-carousel__btn diff-carousel__btn--next\" aria-label=\"Siguiente diferenciador\">&#8250;<\/button>\n        <div class=\"diff-carousel__viewport\">\n          <div class=\"diff-carousel__track\">\n            <article class=\"diff-slide\" data-diff-title=\"Cumplimiento y seguridad\" data-diff-text=\"5 certificaciones ISO activas: Calidad, Medio Ambiente, Seguridad, Energ&iacute;a y Antisoborno.\">\n              <div class=\"diff-slide__media\">\n                <img src=\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/carrousel_cumplimiento_seguridad.webp\" alt=\"Cumplimiento y seguridad en proyectos EPC\" loading=\"lazy\" decoding=\"async\">\n              <\/div>\n              <div class=\"diff-slide__panel\">\n                <img class=\"diff-slide__badge\" src=\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/badge_cumplimiento_y_seguridad.webp\" alt=\"Badge Cumplimiento y seguridad\" loading=\"lazy\" decoding=\"async\">\n                <h3 class=\"diff-slide__title\">Cumplimiento y seguridad<\/h3>\n              <\/div>\n            <\/article>\n            <article class=\"diff-slide\" data-diff-title=\"Integraci&oacute;n multimarcas\" data-diff-text=\"Trabajamos con ABB, Siemens, Schneider, Eaton y 16 marcas m&aacute;s. Sin dependencia de un solo fabricante.\">\n              <div class=\"diff-slide__media\">\n                <img src=\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/carrousel_integracion_multimarcas.webp\" alt=\"Integraci&oacute;n multimarcas en campo\" loading=\"lazy\" decoding=\"async\">\n              <\/div>\n              <div class=\"diff-slide__panel\">\n                <img class=\"diff-slide__badge\" src=\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/badge_integracion_multimarcas.webp\" alt=\"Badge Integraci&oacute;n multimarcas\" loading=\"lazy\" decoding=\"async\">\n                <h3 class=\"diff-slide__title\">Integraci&oacute;n multimarcas<\/h3>\n              <\/div>\n            <\/article>\n            <article class=\"diff-slide\" data-diff-title=\"Ingenier&iacute;a experta\" data-diff-text=\"Ingenieros especializados en AT\/MT, automatizaci&oacute;n industrial y Oil &amp; Gas. M&aacute;s de 17 a&ntilde;os ejecutando proyectos el&eacute;ctricos de alta criticidad en M&eacute;xico.\">\n              <div class=\"diff-slide__media\">\n                <img src=\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/carrousel_ingenieria_experta.png\" alt=\"Ingenier&iacute;a experta para infraestructura energ&eacute;tica\" loading=\"lazy\" decoding=\"async\">\n              <\/div>\n              <div class=\"diff-slide__panel\">\n                <img class=\"diff-slide__badge\" src=\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/badge_ingenieria_experta.webp\" alt=\"Badge Ingenier&iacute;a experta\" loading=\"lazy\" decoding=\"async\">\n                <h3 class=\"diff-slide__title\">Ingenier&iacute;a experta<\/h3>\n              <\/div>\n            <\/article>\n            <article class=\"diff-slide\" data-diff-title=\"Time-to-value\" data-diff-text=\"Gesti&oacute;n integral desde ingenier&iacute;a hasta puesta en marcha. Un solo interlocutor, cronograma comprometido.\">\n              <div class=\"diff-slide__media\">\n                <img src=\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/carrousel_time_to_value.webp\" alt=\"Ejecuci&oacute;n &aacute;gil y time-to-value en proyectos EPC\" loading=\"lazy\" decoding=\"async\">\n              <\/div>\n              <div class=\"diff-slide__panel\">\n                <img class=\"diff-slide__badge\" src=\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/badge_time_to_value.webp\" alt=\"Badge Time-to-value\" loading=\"lazy\" decoding=\"async\">\n                <h3 class=\"diff-slide__title\">Time-to-value<\/h3>\n              <\/div>\n            <\/article>\n          <\/div>\n        <\/div>\n        <div class=\"diff-carousel__caption\" aria-live=\"polite\">\n          <h4 class=\"diff-carousel__caption-title\" id=\"diffCarouselCaptionTitle\">Cumplimiento y seguridad<\/h4>\n          <p class=\"diff-carousel__caption-text\" id=\"diffCarouselCaptionText\">Metodolog&iacute;as EPC con control de riesgos y cronogramas realistas.<\/p>\n        <\/div>\n        <div class=\"diff-carousel__dots\" id=\"diffCarouselDots\" aria-label=\"Indicadores de diferenciadores\"><\/div>\n      <\/div>\n    <\/div>\n  <\/section>\n\n<!-- Clientes por sector (unbranded import v15) -->\n<section class=\"clients\" id=\"clientesPorSector\" aria-label=\"Clientes por sector\">\n  <div class=\"container\">\n    <div class=\"clients__head\">\n      <div class=\"section-intro section-intro--compact\" style=\"margin-bottom:0;width:100%\">\n        <h3 class=\"section-intro__title\">Clientes<\/h3>\n        <p class=\"section-intro__lead\">Experiencia multisectorial en industrias cr&iacute;ticas de energ&iacute;a e infraestructura.<\/p>\n      <\/div>\n    <\/div>\n\n    <div class=\"clients-hero\" id=\"clientsHero\" aria-label=\"Categor&iacute;as de clientes\">\n      <div class=\"clients-hero__grid\" role=\"tablist\" aria-label=\"Selecciona una categor&iacute;a de clientes\">\n        <button type=\"button\" class=\"clients-hero__tile\" role=\"tab\" aria-selected=\"false\" data-clients-category=\"petroleo-gas\" style=\"--clients-hero-image:url('https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/clientes_oil_gas.webp')\">\n          <span class=\"clients-hero__tileLabel\">Oil &amp; Gas<\/span>\n        <\/button>\n        <button type=\"button\" class=\"clients-hero__tile\" role=\"tab\" aria-selected=\"false\" data-clients-category=\"mineria\" style=\"--clients-hero-image:url('https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/clientes_mineria.webp')\">\n          <span class=\"clients-hero__tileLabel\">Miner&iacute;a<\/span>\n        <\/button>\n        <button type=\"button\" class=\"clients-hero__tile\" role=\"tab\" aria-selected=\"false\" data-clients-category=\"alimentos-bebidas\" style=\"--clients-hero-image:url('https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/clientes_food_beverage.webp')\">\n          <span class=\"clients-hero__tileLabel\">Food &amp; Beverage<\/span>\n        <\/button>\n        <button type=\"button\" class=\"clients-hero__tile\" role=\"tab\" aria-selected=\"false\" data-clients-category=\"otras-industrias\" style=\"--clients-hero-image:url('https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/clientes_otras_industrias.webp')\">\n          <span class=\"clients-hero__tileLabel\">Otras industrias<\/span>\n        <\/button>\n      <\/div>\n      <p class=\"clients-hero__hint\">Selecciona una categor&iacute;a para ver su lista de clientes.<\/p>\n    <\/div>\n\n    <div class=\"clients__grid\" id=\"clientesGrid\">\n      <article class=\"client-sector\" data-client-sector=\"petroleo-gas\">\n        <h4>Petr&oacute;leo y Gas<\/h4>\n        <div class=\"client-logos\">\n          <div class=\"logo-ph\" style=\"--logo-color:#003A32\"><div class=\"logo-ph__box\">BH<\/div><div><div class=\"logo-ph__name\">Baker Hughes<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#000000\"><div class=\"logo-ph__box\">ROS<\/div><div><div class=\"logo-ph__name\">Reliable On & Offshore Solutions<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#1F4FA3\"><div class=\"logo-ph__box\">SE<\/div><div><div class=\"logo-ph__name\">SEMPRA ENERGY<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#0F3D4C\"><div class=\"logo-ph__box\">SP<\/div><div><div class=\"logo-ph__name\">SAIPEM<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#4FC3E8\"><div class=\"logo-ph__box\">BM<\/div><div><div class=\"logo-ph__name\">BLUE MARINE<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#4A4A4A\"><div class=\"logo-ph__box\">GL<\/div><div><div class=\"logo-ph__name\">GEOLIS<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#4B4B4B\"><div class=\"logo-ph__box\">GP<\/div><div><div class=\"logo-ph__name\">GRUPO PROTEXA<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#007A3D\"><div class=\"logo-ph__box\">PMX<\/div><div><div class=\"logo-ph__name\">PEMEX<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#3E4A52\"><div class=\"logo-ph__box\">AK<\/div><div><div class=\"logo-ph__name\">ALKHORAYEF<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#4A4A4A\"><div class=\"logo-ph__box\">AEI<\/div><div><div class=\"logo-ph__name\">AEI<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#000000\"><div class=\"logo-ph__box\">WF<\/div><div><div class=\"logo-ph__name\">WEATHERFORD<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n        <\/div>\n      <\/article>\n\n      <article class=\"client-sector\" data-client-sector=\"mineria\">\n        <h4>Miner&iacute;a<\/h4>\n        <div class=\"client-logos\">\n          <div class=\"logo-ph\" style=\"--logo-color:#003A8F\"><div class=\"logo-ph__box\">CA<\/div><div><div class=\"logo-ph__name\">CEMENTO CRUZ AZUL<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#002A8F\"><div class=\"logo-ph__box\">CX<\/div><div><div class=\"logo-ph__name\">CEMEX<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#1F4E79\"><div class=\"logo-ph__box\">HL<\/div><div><div class=\"logo-ph__name\">HOLCIM<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#1F4E79\"><div class=\"logo-ph__box\">IM<\/div><div><div class=\"logo-ph__name\">IMERYS<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n        <\/div>\n      <\/article>\n\n      <article class=\"client-sector\" data-client-sector=\"alimentos-bebidas\">\n        <h4>Alimentos y Bebidas<\/h4>\n        <div class=\"client-logos\">\n          <div class=\"logo-ph\" style=\"--logo-color:#E41C2C\"><div class=\"logo-ph__box\">CC<\/div><div><div class=\"logo-ph__name\">COCA COLA<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#D6AA2D\"><div class=\"logo-ph__box\">GM<\/div><div><div class=\"logo-ph__name\">GRUPO MODELO<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#009845\"><div class=\"logo-ph__box\">ZU<\/div><div><div class=\"logo-ph__name\">ZUCARMEX<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#E30613\"><div class=\"logo-ph__box\">GP<\/div><div><div class=\"logo-ph__name\">GRUPO PIASA<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#6DB33F\"><div class=\"logo-ph__box\">BS<\/div><div><div class=\"logo-ph__name\">BETA SAN MIGUEL<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#2C6FAE\"><div class=\"logo-ph__box\">GAM<\/div><div><div class=\"logo-ph__name\">GAM<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n        <\/div>\n      <\/article>\n\n      <article class=\"client-sector\" data-client-sector=\"energia\">\n        <h4>Energ&iacute;a<\/h4>\n        <div class=\"client-logos\">\n          <div class=\"logo-ph\" style=\"--logo-color:#009A44\"><div class=\"logo-ph__box\">CFE<\/div><div><div class=\"logo-ph__name\">CFE DISTRIBUCI\u00d3N<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#009A44\"><div class=\"logo-ph__box\">CFE<\/div><div><div class=\"logo-ph__name\">CFE GENERACI\u00d3N<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#1F4FA3\"><div class=\"logo-ph__box\">SE<\/div><div><div class=\"logo-ph__name\">SEMPRA ENERGY<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n        <\/div>\n      <\/article>\n\n      <article class=\"client-sector\" data-client-sector=\"electronica\">\n        <h4>Electr&oacute;nica<\/h4>\n        <div class=\"client-logos\">\n          <div class=\"logo-ph\" style=\"--logo-color:#0096D6\"><div class=\"logo-ph__box\">FX<\/div><div><div class=\"logo-ph__name\">FLEXTRONICS<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n        <\/div>\n      <\/article>\n\n      <article class=\"client-sector\" data-client-sector=\"puertos\">\n        <h4>Puertos<\/h4>\n        <div class=\"client-logos\">\n          <div class=\"logo-ph\" style=\"--logo-color:#000000\"><div class=\"logo-ph__box\">TM<\/div><div><div class=\"logo-ph__name\">TERMINAL MAR&Iacute;TIMA DE MANZANILLO<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n        <\/div>\n      <\/article>\n\n      <article class=\"client-sector\" data-client-sector=\"pulpa-papel\">\n        <h4>Pulpa y Papel<\/h4>\n        <div class=\"client-logos\">\n          <div class=\"logo-ph\" style=\"--logo-color:#004B87\"><div class=\"logo-ph__box\">WR<\/div><div><div class=\"logo-ph__name\">WESTROCK<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#1A1A1A\"><div class=\"logo-ph__box\">BP<\/div><div><div class=\"logo-ph__name\">BIO PAPEL<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n        <\/div>\n      <\/article>\n\n      <article class=\"client-sector\" data-client-sector=\"otras-industrias\">\n        <h4>Otras industrias<\/h4>\n        <div class=\"client-logos\">\n          <div class=\"logo-ph\" style=\"--logo-color:#0082CA\"><div class=\"logo-ph__box\">IFF<\/div><div><div class=\"logo-ph__name\">INTERNATIONAL FLAVORS &amp; FRAGRANCES<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n        <\/div>\n      <\/article>\n    <\/div>\n  <\/div>\n<\/section>\n<div class=\"hero-to-nos\" aria-hidden=\"true\"><\/div>\n  <!-- ===== Servicios & Especialidades (v15 import) ===== -->\n<span id=\"procura\" class=\"anchor-target\" aria-hidden=\"true\"><\/span>\n<section id=\"servicios\" class=\"svc\" aria-labelledby=\"svcTitleEPC\">\n  <div class=\"container\">\n    <div class=\"svc__intro\" id=\"soluciones\">\n      <div class=\"svc__intro-main\">\n        <h3 id=\"svcTitleEPC\">Servicios &amp; Especialidades<\/h3>\n        <p>Capacidades EPC integrales para operaci&oacute;n cr&iacute;tica.<\/p>\n      <\/div>\n      <div class=\"svc__intro-cta\">\n        <a class=\"btn btn--secondary\" href=\"https:\/\/vmsenergy.com\/servicios\/\">Ver servicios<\/a>\n      <\/div>\n    <\/div>\n    <div class=\"svc__carousel\" id=\"svcEspecialidadesCarousel\" tabindex=\"0\" aria-roledescription=\"carousel\" aria-label=\"Carrusel de servicios y especialidades\">\n      <div class=\"svc__nav\" aria-label=\"Navegaci&oacute;n del carrusel\">\n        <button type=\"button\" class=\"svc__navBtn\" id=\"svcPrev\" aria-label=\"Servicio anterior\">\u2039<\/button>\n        <button type=\"button\" class=\"svc__navBtn\" id=\"svcNext\" aria-label=\"Siguiente servicio\">\u203a<\/button>\n      <\/div>\n      <div class=\"svc__viewport\">\n        <div class=\"svc__grid\" id=\"svcEspecialidadesGrid\" role=\"list\"><\/div>\n      <\/div>\n      <div class=\"svc__dots\" id=\"svcDots\" aria-label=\"Indicadores del carrusel\"><\/div>\n    <\/div>\n    <p class=\"svc__note\">Responsabilidad total desde ingenier&iacute;a conceptual hasta puesta en marcha y capacitaci&oacute;n.<\/p>\n  <\/div>\n<\/section>\n\n<!-- ===== Art&iacute;culos Destacados ===== -->\n<!-- Aliados comerciales (unbranded import v15) -->\n<section class=\"clients\" id=\"clientesPorSectorAliados\" aria-label=\"Aliados comerciales\">\n  <div class=\"container\">\n    <div class=\"clients__head\">\n      <div class=\"section-intro section-intro--compact\" style=\"margin-bottom:0;flex:1 1 420px\">\n        <h3 class=\"section-intro__title\">Aliados Comerciales<\/h3>\n        <p class=\"section-intro__lead\">Ecosistema de marcas y suministro especializado para ejecuci&oacute;n continua.<\/p>\n      <\/div>\n      <div class=\"clients__tools\">\n        <a class=\"clients__go-supply\" href=\"https:\/\/vmsenergy.com\/productos\/\">Ir a Suministro t&eacute;cnico<\/a>\n      <\/div>\n    <\/div>\n\n    <div class=\"allies-hero\" aria-label=\"Hero aliados comerciales\">\n    <div class=\"clients__grid\" id=\"clientesGridAliados\">\n      <article class=\"client-sector\" data-client-sector=\"Aliados\" data-ally-cat=\"Aliados\">\n        <div class=\"client-logos\">\n          <div class=\"logo-ph\" style=\"--logo-color:#FF0000\"><div class=\"logo-ph__box\"><\/div><div><div class=\"logo-ph__name\">ABB<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#005C66\"><div class=\"logo-ph__box\"><\/div><div><div class=\"logo-ph__name\">Bently Nevada<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#004B91\"><div class=\"logo-ph__box\"><\/div><div><div class=\"logo-ph__name\">Basler Electric<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#002F5F\"><div class=\"logo-ph__box\"><\/div><div><div class=\"logo-ph__name\">Deif<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#005A9C\"><div class=\"logo-ph__box\"><\/div><div><div class=\"logo-ph__name\">Dynalco<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#005EB8\"><div class=\"logo-ph__box\"><\/div><div><div class=\"logo-ph__name\">Eaton<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#EE3124\"><div class=\"logo-ph__box\"><\/div><div><div class=\"logo-ph__name\">Honeywell<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#CD1A2B\"><div class=\"logo-ph__box\"><\/div><div><div class=\"logo-ph__name\">Rockwell<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#F36F21\"><div class=\"logo-ph__box\"><\/div><div><div class=\"logo-ph__name\">Deemsa<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#C9D83B\"><div class=\"logo-ph__box\"><\/div><div><div class=\"logo-ph__name\">Sigtronic<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#0B8F6A\"><div class=\"logo-ph__box\"><\/div><div><div class=\"logo-ph__name\">Emsi<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n        <\/div>\n      <\/article>\n\n      <article class=\"client-sector\" data-client-sector=\"Aliados\" data-ally-cat=\"Aliados\">\n        <div class=\"client-logos\">\n          <div class=\"logo-ph\" style=\"--logo-color:#ED1C24\"><div class=\"logo-ph__box\"><\/div><div><div class=\"logo-ph__name\">KEI Wires & Cables<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#3DCD58\"><div class=\"logo-ph__box\"><\/div><div><div class=\"logo-ph__name\">Schneider Electric<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#009999\"><div class=\"logo-ph__box\"><\/div><div><div class=\"logo-ph__name\">Siemens<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#E21F26\"><div class=\"logo-ph__box\"><\/div><div><div class=\"logo-ph__name\">Slingco<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#0054A6\"><div class=\"logo-ph__box\"><\/div><div><div class=\"logo-ph__name\">Triol<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#FF0000\"><div class=\"logo-ph__box\"><\/div><div><div class=\"logo-ph__name\">Toshiba<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#E31B23\"><div class=\"logo-ph__box\"><\/div><div><div class=\"logo-ph__name\">Valtek<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#00539B\"><div class=\"logo-ph__box\"><\/div><div><div class=\"logo-ph__name\">Woodward<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#005AA9\"><div class=\"logo-ph__box\"><\/div><div><div class=\"logo-ph__name\">WEG<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#005BAB\"><div class=\"logo-ph__box\"><\/div><div><div class=\"logo-ph__name\">Chnt<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n          <div class=\"logo-ph\" style=\"--logo-color:#00A3E0\"><div class=\"logo-ph__box\"><\/div><div><div class=\"logo-ph__name\">Hammond Power Solutions<\/div><span class=\"logo-ph__hint\"><\/span><\/div><\/div>\n        <\/div>\n      <\/article>\n    <\/div>\n    <\/div>\n  <\/div>\n<\/section>\n\n<!-- ===== Proyectos Destacados ===== -->\n<section class=\"cp-featured\" id=\"cv-proyectos\" aria-labelledby=\"cvProjTitle\">\n  <div class=\"container\">\n    <div class=\"cp-section-label\">Casos de referencia<\/div>\n    <h2 class=\"cp-section-title\" id=\"cvProjTitle\">Proyectos que definen nuestra capacidad<\/h2>\n    <p class=\"cp-section-lead\">Tres ejemplos de la profundidad t\u00e9cnica y el alcance operativo de VMS Energy en campo.<\/p>\n    <div style=\"text-align:right;margin-bottom:28px\"><a class=\"btn btn--primary\" href=\"proyectos-vms.html\">Ver todos los proyectos<\/a><\/div>\n    <div class=\"cp-featured__grid\">\n\n      <!-- Card 1: Ku-Maloob-Zaap -->\n      <article class=\"cp-feat-card\" style=\"--accent-color:#1D5FA4;--icon-bg-a:#DBEAFE;--icon-bg-b:#EFF6FF\">\n        <div class=\"cp-feat-card__icon\" aria-hidden=\"true\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"48\" height=\"48\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#1D5FA4\" stroke-width=\"1.6\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"M12 2c0 6-6 8-6 14a6 6 0 0 0 12 0c0-6-6-8-6-14z\"\/><path d=\"M12 2c0 4 2 6 4 8-1 2-3 3-4 6\"\/><\/svg><\/div>\n        <div class=\"cp-feat-card__body\">\n          <span class=\"cp-feat-card__type badge-proj\">Proyecto EPC<\/span>\n          <h3 class=\"cp-feat-card__title\">PEMEX Ku-Maloob-Zaap \u2014 Modernizaci\u00f3n de Turbinas de Gas<\/h3>\n          <div class=\"cp-feat-story\">\n            <div class=\"cp-feat-story__block\">\n              <span class=\"cp-feat-story__tag cp-feat-story__tag--reto\">El reto<\/span>\n              <p class=\"cp-feat-story__text\">Turbinas de gas en plataforma offshore con controles obsoletos y riesgo de p\u00e9rdida de generaci\u00f3n en el campo m\u00e1s importante de PEMEX.<\/p>\n            <\/div>\n            <div class=\"cp-feat-story__block\">\n              <span class=\"cp-feat-story__tag cp-feat-story__tag--sol\">La soluci\u00f3n<\/span>\n              <p class=\"cp-feat-story__text\">Modernizaci\u00f3n del sistema Woodward de control de velocidad, sincron\u00eda y protecciones. Integraci\u00f3n FAT y SAT en coordinaci\u00f3n con equipo PEMEX en campo.<\/p>\n            <\/div>\n            <div class=\"cp-feat-story__block\">\n              <span class=\"cp-feat-story__tag cp-feat-story__tag--res\">El resultado<\/span>\n              <p class=\"cp-feat-story__text\">Turbinas con control digital estable. Cero eventos de p\u00e9rdida de generaci\u00f3n no programada en el primer ciclo de operaci\u00f3n.<\/p>\n            <\/div>\n          <\/div>\n          <div class=\"cp-feat-tags\">\n            <span class=\"cp-tech-tag\">Woodward<\/span>\n            <span class=\"cp-tech-tag\">Turbinas de gas<\/span>\n            <span class=\"cp-tech-tag\">PEMEX<\/span>\n            <span class=\"cp-tech-tag\">FAT \/ SAT<\/span>\n          <\/div>\n        <\/div>\n        <div class=\"cp-feat-card__footer\">\n          <div class=\"cp-feat-card__meta\">\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" aria-hidden=\"true\" width=\"13\" height=\"13\"><path d=\"M21 10c0 7-9 13-9 13S3 17 3 10a9 9 0 1 1 18 0z\"\/><circle cx=\"12\" cy=\"10\" r=\"3\"\/><\/svg>\n            Campeche &mdash; PEMEX\n          <\/div>\n          <a href=\"contacto.html#inicio\" class=\"cp-feat-card__link\">\n            Proyecto similar <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" aria-hidden=\"true\"><line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"\/><polyline points=\"12 5 19 12 12 19\"\/><\/svg>\n          <\/a>\n        <\/div>\n      <\/article>\n\n      <!-- Card 2: Geot\u00e9rmica Nayarit -->\n      <article class=\"cp-feat-card\" style=\"--accent-color:#1D5FA4;--icon-bg-a:#DBEAFE;--icon-bg-b:#EFF6FF\">\n        <div class=\"cp-feat-card__icon\" aria-hidden=\"true\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"48\" height=\"48\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#1D5FA4\" stroke-width=\"1.6\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"M13 2 3 14h9l-1 8 10-12h-9l1-8z\"\/><\/svg><\/div>\n        <div class=\"cp-feat-card__body\">\n          <span class=\"cp-feat-card__type badge-epc\">Servicio EPC<\/span>\n          <h3 class=\"cp-feat-card__title\">Control de generaci\u00f3n en planta geot\u00e9rmica \u2014 Nayarit<\/h3>\n          <div class=\"cp-feat-story\">\n            <div class=\"cp-feat-story__block\">\n              <span class=\"cp-feat-story__tag cp-feat-story__tag--reto\">El reto<\/span>\n              <p class=\"cp-feat-story__text\">Planta geot\u00e9rmica con controles obsoletos de los a\u00f1os 90, riesgo de paro no programado en operaci\u00f3n continua para CFE.<\/p>\n            <\/div>\n            <div class=\"cp-feat-story__block\">\n              <span class=\"cp-feat-story__tag cp-feat-story__tag--sol\">La soluci\u00f3n<\/span>\n              <p class=\"cp-feat-story__text\">Sistema completo de control de velocidad con Woodward 505, DSCL-II, PLC Siemens S7, HMI y monitoreo de vibraciones Bently Nevada 3500.<\/p>\n            <\/div>\n            <div class=\"cp-feat-story__block\">\n              <span class=\"cp-feat-story__tag cp-feat-story__tag--res\">El resultado<\/span>\n              <p class=\"cp-feat-story__text\">Sincronizaci\u00f3n estable con red CFE, tableros nuevos e instalaci\u00f3n completa. Cero paros no programados en el primer a\u00f1o.<\/p>\n            <\/div>\n          <\/div>\n          <div class=\"cp-feat-tags\">\n            <span class=\"cp-tech-tag\">Woodward 505<\/span>\n            <span class=\"cp-tech-tag\">PLC Siemens S7<\/span>\n            <span class=\"cp-tech-tag\">Bently Nevada<\/span>\n            <span class=\"cp-tech-tag\">DECS-250 Basler<\/span>\n          <\/div>\n        <\/div>\n        <div class=\"cp-feat-card__footer\">\n          <div class=\"cp-feat-card__meta\">\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" aria-hidden=\"true\" width=\"13\" height=\"13\"><path d=\"M21 10c0 7-9 13-9 13S3 17 3 10a9 9 0 1 1 18 0z\"\/><circle cx=\"12\" cy=\"10\" r=\"3\"\/><\/svg>\n            Nayarit &mdash; Grupo Drag&oacute;n\n          <\/div>\n          <a href=\"contacto.html#inicio\" class=\"cp-feat-card__link\">\n            Proyecto similar <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" aria-hidden=\"true\"><line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"\/><polyline points=\"12 5 19 12 12 19\"\/><\/svg>\n          <\/a>\n        <\/div>\n      <\/article>\n\n      <!-- Card 3: Coca-Cola Colima -->\n      <article class=\"cp-feat-card\" style=\"--accent-color:#D97706;--icon-bg-a:#FEF3C7;--icon-bg-b:#FFFBEB\">\n        <div class=\"cp-feat-card__icon\" aria-hidden=\"true\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"48\" height=\"48\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#D97706\" stroke-width=\"1.6\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><circle cx=\"12\" cy=\"12\" r=\"3\"\/><path d=\"M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1-2.83 2.83l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-4 0v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83-2.83l.06-.06A1.65 1.65 0 0 0 4.68 15a1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1 0-4h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 2.83-2.83l.06.06A1.65 1.65 0 0 0 9 4.68a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 4 0v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 2.83l-.06.06A1.65 1.65 0 0 0 19.4 9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 0 4h-.09a1.65 1.65 0 0 0-1.51 1z\"\/><\/svg><\/div>\n        <div class=\"cp-feat-card__body\">\n          <span class=\"cp-feat-card__type badge-sum\">Suministro<\/span>\n          <h3 class=\"cp-feat-card__title\">Coca-Cola Colima \u2014 Variador Industrial TRIOL 200 HP<\/h3>\n          <div class=\"cp-feat-story\">\n            <div class=\"cp-feat-story__block\">\n              <span class=\"cp-feat-story__tag cp-feat-story__tag--reto\">El reto<\/span>\n              <p class=\"cp-feat-story__text\">Planta embotelladora con variadores en falla, impactando la l\u00ednea de producci\u00f3n y generando paros no programados de alto costo.<\/p>\n            <\/div>\n            <div class=\"cp-feat-story__block\">\n              <span class=\"cp-feat-story__tag cp-feat-story__tag--sol\">La soluci\u00f3n<\/span>\n              <p class=\"cp-feat-story__text\">Suministro e instalaci\u00f3n de variador industrial TRIOL de 200 HP, comisionamiento en sitio y transferencia de conocimiento al personal de mantenimiento.<\/p>\n            <\/div>\n            <div class=\"cp-feat-story__block\">\n              <span class=\"cp-feat-story__tag cp-feat-story__tag--res\">El resultado<\/span>\n              <p class=\"cp-feat-story__text\">L\u00ednea de producci\u00f3n restituida en tiempo r\u00e9cord. Variador operando dentro de par\u00e1metros con soporte t\u00e9cnico local de respaldo.<\/p>\n            <\/div>\n          <\/div>\n          <div class=\"cp-feat-tags\">\n            <span class=\"cp-tech-tag\">TRIOL<\/span>\n            <span class=\"cp-tech-tag\">Variador 200 HP<\/span>\n            <span class=\"cp-tech-tag\">Embotelladora<\/span>\n            <span class=\"cp-tech-tag\">Comisionamiento<\/span>\n          <\/div>\n        <\/div>\n        <div class=\"cp-feat-card__footer\">\n          <div class=\"cp-feat-card__meta\">\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" aria-hidden=\"true\" width=\"13\" height=\"13\"><path d=\"M21 10c0 7-9 13-9 13S3 17 3 10a9 9 0 1 1 18 0z\"\/><circle cx=\"12\" cy=\"10\" r=\"3\"\/><\/svg>\n            Colima &mdash; Coca-Cola\n          <\/div>\n          <a href=\"contacto.html#inicio\" class=\"cp-feat-card__link\">\n            Proyecto similar <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" aria-hidden=\"true\"><line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"\/><polyline points=\"12 5 19 12 12 19\"\/><\/svg>\n          <\/a>\n        <\/div>\n      <\/article>\n\n    <\/div>\n  <\/div>\n<\/section>\n\n  <!-- ===== Contacto ===== -->\n  \n<!-- ================== SERVICIOS (v10.1) ================== -->\n<section id=\"servicios-legacy\" aria-labelledby=\"serviciosTitle\">\n  <div hidden>\n  <div class=\"container\">\n    <h2 id=\"serviciosTitle\" class=\"section-title\">Servicios<\/h2>\n    <p class=\"section-lead\">Filtra por UEN, Industria y Sector para encontrar el servicio adecuado.<\/p>\n    <!-- Filtros -->\n    <!-- Resultados -->\n    <!-- JSON inline (fallback) -->\n    <script type=\"application\/json\" id=\"svc-json\">[\n  {\n    \"servicio\": \"Modernizaci&oacute;n de Sistemas de Control Obsoletos con Controles Electr&oacute;nicos para Turbina de Vapor\",\n    \"uen\": \"Generaci&oacute;n (Gob\/Act\/Exc.)\",\n    \"industrias\": [\n      \"Generaci&oacute;n El&eacute;ctrica (termo\/hidro\/ciclo combinado)\",\n      \"Oil & Gas (refiner&iacute;a, petroqu&iacute;mica)\",\n      \"Miner&iacute;a y Metales\",\n      \"Papel y Celulosa\",\n      \"Alimentos y Bebidas\"\n    ],\n    \"sectores\": [\n      \"Turbinas de Vapor\/Gas\",\n      \"Cogeneraci&oacute;n y Ciclo Combinado\",\n      \"Balance of Plant (BOP)\",\n      \"Subestaciones de Planta\",\n      \"Protecci&oacute;n y Control\"\n    ],\n    \"naics\": [\n      \"212\",\n      \"2211\",\n      \"311\",\n      \"322\",\n      \"324\"\n    ],\n    \"scian\": [\n      \"212\",\n      \"2211\",\n      \"311\",\n      \"322\",\n      \"324\"\n    ]\n  },\n  {\n    \"servicio\": \"Modernizaci&oacute;n de Sistemas de Control Obsoletos con Controles Electr&oacute;nicos para Turbina de Gas\",\n    \"uen\": \"Generaci&oacute;n (Gob\/Act\/Exc.)\",\n    \"industrias\": [\n      \"Generaci&oacute;n El&eacute;ctrica (termo\/hidro\/ciclo combinado)\",\n      \"Oil & Gas (refiner&iacute;a, petroqu&iacute;mica)\",\n      \"Miner&iacute;a y Metales\",\n      \"Papel y Celulosa\",\n      \"Alimentos y Bebidas\"\n    ],\n    \"sectores\": [\n      \"Turbinas de Vapor\/Gas\",\n      \"Cogeneraci&oacute;n y Ciclo Combinado\",\n      \"Balance of Plant (BOP)\",\n      \"Subestaciones de Planta\",\n      \"Protecci&oacute;n y Control\"\n    ],\n    \"naics\": [\n      \"212\",\n      \"2211\",\n      \"311\",\n      \"322\",\n      \"324\"\n    ],\n    \"scian\": [\n      \"212\",\n      \"2211\",\n      \"311\",\n      \"322\",\n      \"324\"\n    ]\n  },\n  {\n    \"servicio\": \"Motogeneradores\",\n    \"uen\": \"Ingenier&iacute;a \/ Estudios\",\n    \"industrias\": [\n      \"Generaci&oacute;n El&eacute;ctrica (termo\/hidro\/ciclo combinado)\",\n      \"Oil & Gas (refiner&iacute;a, petroqu&iacute;mica)\",\n      \"Miner&iacute;a y Metales\",\n      \"Papel y Celulosa\",\n      \"Alimentos y Bebidas\"\n    ],\n    \"sectores\": [\n      \"Turbinas de Vapor\/Gas\",\n      \"Cogeneraci&oacute;n y Ciclo Combinado\",\n      \"Balance of Plant (BOP)\",\n      \"Subestaciones de Planta\",\n      \"Protecci&oacute;n y Control\"\n    ],\n    \"naics\": [\n      \"212\",\n      \"2211\",\n      \"311\",\n      \"322\",\n      \"324\"\n    ],\n    \"scian\": [\n      \"212\",\n      \"2211\",\n      \"311\",\n      \"322\",\n      \"324\"\n    ]\n  },\n  {\n    \"servicio\": \"Hidroel&eacute;ctricas\",\n    \"uen\": \"Ingenier&iacute;a \/ Estudios\",\n    \"industrias\": [\n      \"Generaci&oacute;n El&eacute;ctrica (termo\/hidro\/ciclo combinado)\",\n      \"Oil & Gas (refiner&iacute;a, petroqu&iacute;mica)\",\n      \"Miner&iacute;a y Metales\",\n      \"Papel y Celulosa\",\n      \"Alimentos y Bebidas\"\n    ],\n    \"sectores\": [\n      \"Turbinas de Vapor\/Gas\",\n      \"Cogeneraci&oacute;n y Ciclo Combinado\",\n      \"Balance of Plant (BOP)\",\n      \"Subestaciones de Planta\",\n      \"Protecci&oacute;n y Control\"\n    ],\n    \"naics\": [\n      \"212\",\n      \"2211\",\n      \"311\",\n      \"322\",\n      \"324\"\n    ],\n    \"scian\": [\n      \"212\",\n      \"2211\",\n      \"311\",\n      \"322\",\n      \"324\"\n    ]\n  },\n  {\n    \"servicio\": \"Modernizaci&oacute;n del control de velocidad\",\n    \"uen\": \"Ingenier&iacute;a \/ Estudios\",\n    \"industrias\": [\n      \"Generaci&oacute;n y Utilities\",\n      \"Oil & Gas\",\n      \"Miner&iacute;a\",\n      \"Centros de Datos \/ TIC\",\n      \"Infraestructura de Transporte\"\n    ],\n    \"sectores\": [\n      \"Cortocircuito\/Coordinaci&oacute;n\/Arco\",\n      \"Flujo de Carga\/Arm&oacute;nicos\",\n      \"Selectividad y Protecci&oacute;n\",\n      \"Dimensionamiento de Equipos\",\n      \"Automatizaci&oacute;n y Control\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"518\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"518\"\n    ]\n  },\n  {\n    \"servicio\": \"AVR (Regulador autom&aacute;tico de voltaje)\",\n    \"uen\": \"Generaci&oacute;n (Gob\/Act\/Exc.)\",\n    \"industrias\": [\n      \"Oil & Gas (Zonas Clasificadas)\",\n      \"Qu&iacute;mica y Petroqu&iacute;mica\",\n      \"Miner&iacute;a\",\n      \"Centros de Datos \/ TIC\",\n      \"Farmac&eacute;utica\"\n    ],\n    \"sectores\": [\n      \"Detecci&oacute;n de Gas y Fuego (ATEX\/IECEx)\",\n      \"Agentes Limpios\/CO2\/Espuma\/Agua\",\n      \"Alarmas Audiovisuales\",\n      \"Sistemas FM\/UL\/NOM\",\n      \"Integraci&oacute;n con PLC\/SCADA\"\n    ],\n    \"naics\": [\n      \"325\",\n      \"518\"\n    ],\n    \"scian\": [\n      \"325\",\n      \"518\"\n    ]\n  },\n  {\n    \"servicio\": \"Sistema de Vibraciones\",\n    \"uen\": \"Ingenier&iacute;a \/ Estudios\",\n    \"industrias\": [\n      \"Miner&iacute;a y Cemento\",\n      \"Oil & Gas\",\n      \"Alimentos y Bebidas\",\n      \"Papel y Celulosa\",\n      \"Qu&iacute;mica y Petroqu&iacute;mica\"\n    ],\n    \"sectores\": [\n      \"Monitoreo Online\/Predictivo\",\n      \"An&aacute;lisis de Vibraci&oacute;n en Bombas\/Compresores\",\n      \"Balanceo Din&aacute;mico\",\n      \"Sens&oacute;rica (IEPE\/Proximidad)\",\n      \"Tendencias y Alarmas\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"311\",\n      \"322\",\n      \"325\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"311\",\n      \"322\",\n      \"325\"\n    ]\n  },\n  {\n    \"servicio\": \"Detecci&oacute;n de Gas y Fuego\",\n    \"uen\": \"Seguridad (Gas y Fuego)\",\n    \"industrias\": [\n      \"Oil & Gas (Zonas Clasificadas)\",\n      \"Qu&iacute;mica y Petroqu&iacute;mica\",\n      \"Miner&iacute;a\",\n      \"Centros de Datos \/ TIC\",\n      \"Farmac&eacute;utica\"\n    ],\n    \"sectores\": [\n      \"Detecci&oacute;n de Gas y Fuego (ATEX\/IECEx)\",\n      \"Agentes Limpios\/CO2\/Espuma\/Agua\",\n      \"Alarmas Audiovisuales\",\n      \"Sistemas FM\/UL\/NOM\",\n      \"Integraci&oacute;n con PLC\/SCADA\"\n    ],\n    \"naics\": [\n      \"325\",\n      \"518\"\n    ],\n    \"scian\": [\n      \"325\",\n      \"518\"\n    ]\n  },\n  {\n    \"servicio\": \"Fabricaci&oacute;n\/Instalaci&oacute;n\/Puesta en servicio de tableros BT (MetalClad)\",\n    \"uen\": \"EPC\",\n    \"industrias\": [\n      \"Manufactura y Ensamble\",\n      \"Miner&iacute;a y Metales\",\n      \"Oil & Gas\",\n      \"Infraestructura y Transporte\",\n      \"Centros de Datos \/ TIC\"\n    ],\n    \"sectores\": [\n      \"Centros de Control de Motores (MCC)\",\n      \"Switchgear BT\/MT (MetalClad\/Enclosed)\",\n      \"Distribuci&oacute;n El&eacute;ctrica Industrial\",\n      \"Protecciones y Relevadores\",\n      \"Sistemas de Puesta a Tierra\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"212\",\n      \"33\",\n      \"48-49\",\n      \"518\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"212\",\n      \"33\",\n      \"48-49\",\n      \"518\"\n    ]\n  },\n  {\n    \"servicio\": \"Fabricaci&oacute;n\/Instalaci&oacute;n\/Puesta en servicio de tableros BT (MetalEnclosed)\",\n    \"uen\": \"EPC\",\n    \"industrias\": [\n      \"Manufactura y Ensamble\",\n      \"Miner&iacute;a y Metales\",\n      \"Oil & Gas\",\n      \"Infraestructura y Transporte\",\n      \"Centros de Datos \/ TIC\"\n    ],\n    \"sectores\": [\n      \"Centros de Control de Motores (MCC)\",\n      \"Switchgear BT\/MT (MetalClad\/Enclosed)\",\n      \"Distribuci&oacute;n El&eacute;ctrica Industrial\",\n      \"Protecciones y Relevadores\",\n      \"Sistemas de Puesta a Tierra\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"212\",\n      \"33\",\n      \"48-49\",\n      \"518\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"212\",\n      \"33\",\n      \"48-49\",\n      \"518\"\n    ]\n  },\n  {\n    \"servicio\": \"Fabricaci&oacute;n\/Instalaci&oacute;n\/Puesta en servicio de tableros MT (MetalClad)\",\n    \"uen\": \"EPC\",\n    \"industrias\": [\n      \"Manufactura y Ensamble\",\n      \"Miner&iacute;a y Metales\",\n      \"Oil & Gas\",\n      \"Infraestructura y Transporte\",\n      \"Centros de Datos \/ TIC\"\n    ],\n    \"sectores\": [\n      \"Centros de Control de Motores (MCC)\",\n      \"Switchgear BT\/MT (MetalClad\/Enclosed)\",\n      \"Distribuci&oacute;n El&eacute;ctrica Industrial\",\n      \"Protecciones y Relevadores\",\n      \"Sistemas de Puesta a Tierra\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"212\",\n      \"33\",\n      \"48-49\",\n      \"518\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"212\",\n      \"33\",\n      \"48-49\",\n      \"518\"\n    ]\n  },\n  {\n    \"servicio\": \"Fabricaci&oacute;n\/Instalaci&oacute;n\/Puesta en servicio de tableros MT (MetalEnclosed)\",\n    \"uen\": \"EPC\",\n    \"industrias\": [\n      \"Manufactura y Ensamble\",\n      \"Miner&iacute;a y Metales\",\n      \"Oil & Gas\",\n      \"Infraestructura y Transporte\",\n      \"Centros de Datos \/ TIC\"\n    ],\n    \"sectores\": [\n      \"Centros de Control de Motores (MCC)\",\n      \"Switchgear BT\/MT (MetalClad\/Enclosed)\",\n      \"Distribuci&oacute;n El&eacute;ctrica Industrial\",\n      \"Protecciones y Relevadores\",\n      \"Sistemas de Puesta a Tierra\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"212\",\n      \"33\",\n      \"48-49\",\n      \"518\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"212\",\n      \"33\",\n      \"48-49\",\n      \"518\"\n    ]\n  },\n  {\n    \"servicio\": \"Ajuste de protecciones de relevadores\",\n    \"uen\": \"Protecci&oacute;n y Control\",\n    \"industrias\": [\n      \"Manufactura y Ensamble\",\n      \"Miner&iacute;a y Metales\",\n      \"Oil & Gas\",\n      \"Infraestructura y Transporte\",\n      \"Centros de Datos \/ TIC\"\n    ],\n    \"sectores\": [\n      \"Centros de Control de Motores (MCC)\",\n      \"Switchgear BT\/MT (MetalClad\/Enclosed)\",\n      \"Distribuci&oacute;n El&eacute;ctrica Industrial\",\n      \"Protecciones y Relevadores\",\n      \"Sistemas de Puesta a Tierra\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"212\",\n      \"33\",\n      \"48-49\",\n      \"518\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"212\",\n      \"33\",\n      \"48-49\",\n      \"518\"\n    ]\n  },\n  {\n    \"servicio\": \"Sincronizaciones autom&aacute;ticas \/ reparto de carga \/ control autom&aacute;tico de FP\",\n    \"uen\": \"Generaci&oacute;n (Gob\/Act\/Exc.)\",\n    \"industrias\": [\n      \"Manufactura y Ensamble\",\n      \"Miner&iacute;a y Metales\",\n      \"Oil & Gas\",\n      \"Infraestructura y Transporte\",\n      \"Centros de Datos \/ TIC\"\n    ],\n    \"sectores\": [\n      \"Centros de Control de Motores (MCC)\",\n      \"Switchgear BT\/MT (MetalClad\/Enclosed)\",\n      \"Distribuci&oacute;n El&eacute;ctrica Industrial\",\n      \"Protecciones y Relevadores\",\n      \"Sistemas de Puesta a Tierra\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"212\",\n      \"33\",\n      \"48-49\",\n      \"518\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"212\",\n      \"33\",\n      \"48-49\",\n      \"518\"\n    ]\n  },\n  {\n    \"servicio\": \"Medici&oacute;n y comunicaci&oacute;n de protecciones\",\n    \"uen\": \"Automatizaci&oacute;n y Control\",\n    \"industrias\": [\n      \"Manufactura y Ensamble\",\n      \"Miner&iacute;a y Metales\",\n      \"Oil & Gas\",\n      \"Infraestructura y Transporte\",\n      \"Centros de Datos \/ TIC\"\n    ],\n    \"sectores\": [\n      \"Centros de Control de Motores (MCC)\",\n      \"Switchgear BT\/MT (MetalClad\/Enclosed)\",\n      \"Distribuci&oacute;n El&eacute;ctrica Industrial\",\n      \"Protecciones y Relevadores\",\n      \"Sistemas de Puesta a Tierra\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"212\",\n      \"33\",\n      \"48-49\",\n      \"518\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"212\",\n      \"33\",\n      \"48-49\",\n      \"518\"\n    ]\n  },\n  {\n    \"servicio\": \"Redes para an&aacute;lisis de informaci&oacute;n del sistema de generaci&oacute;n\",\n    \"uen\": \"Ingenier&iacute;a \/ Estudios\",\n    \"industrias\": [\n      \"Generaci&oacute;n y Utilities\",\n      \"Oil & Gas\",\n      \"Agua y Saneamiento\",\n      \"Miner&iacute;a\",\n      \"Alimentos y Bebidas\"\n    ],\n    \"sectores\": [\n      \"SCADA\/SDMC\",\n      \"Telemetr&iacute;a y Comunicaciones (Modbus\/DNP3)\",\n      \"Historiadores y An&aacute;lisis de Datos\",\n      \"Sistemas de Medici&oacute;n y Calidad de Energ&iacute;a\",\n      \"Ciberseguridad OT\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"2213\",\n      \"311\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"2213\",\n      \"311\"\n    ]\n  },\n  {\n    \"servicio\": \"Adquisici&oacute;n de datos en Modbus\/DNP3\",\n    \"uen\": \"Automatizaci&oacute;n y Control\",\n    \"industrias\": [\n      \"Generaci&oacute;n y Utilities\",\n      \"Oil & Gas\",\n      \"Agua y Saneamiento\",\n      \"Miner&iacute;a\",\n      \"Alimentos y Bebidas\"\n    ],\n    \"sectores\": [\n      \"SCADA\/SDMC\",\n      \"Telemetr&iacute;a y Comunicaciones (Modbus\/DNP3)\",\n      \"Historiadores y An&aacute;lisis de Datos\",\n      \"Sistemas de Medici&oacute;n y Calidad de Energ&iacute;a\",\n      \"Ciberseguridad OT\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"2213\",\n      \"311\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"2213\",\n      \"311\"\n    ]\n  },\n  {\n    \"servicio\": \"Integraci&oacute;n a SCADA o SDMC\",\n    \"uen\": \"Automatizaci&oacute;n y Control\",\n    \"industrias\": [\n      \"Generaci&oacute;n y Utilities\",\n      \"Oil & Gas\",\n      \"Agua y Saneamiento\",\n      \"Miner&iacute;a\",\n      \"Alimentos y Bebidas\"\n    ],\n    \"sectores\": [\n      \"SCADA\/SDMC\",\n      \"Telemetr&iacute;a y Comunicaciones (Modbus\/DNP3)\",\n      \"Historiadores y An&aacute;lisis de Datos\",\n      \"Sistemas de Medici&oacute;n y Calidad de Energ&iacute;a\",\n      \"Ciberseguridad OT\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"2213\",\n      \"311\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"2213\",\n      \"311\"\n    ]\n  },\n  {\n    \"servicio\": \"An&aacute;lisis de vibraciones de equipo din&aacute;mico\",\n    \"uen\": \"Ingenier&iacute;a \/ Estudios\",\n    \"industrias\": [\n      \"Miner&iacute;a y Cemento\",\n      \"Oil & Gas\",\n      \"Alimentos y Bebidas\",\n      \"Papel y Celulosa\",\n      \"Qu&iacute;mica y Petroqu&iacute;mica\"\n    ],\n    \"sectores\": [\n      \"Monitoreo Online\/Predictivo\",\n      \"An&aacute;lisis de Vibraci&oacute;n en Bombas\/Compresores\",\n      \"Balanceo Din&aacute;mico\",\n      \"Sens&oacute;rica (IEPE\/Proximidad)\",\n      \"Tendencias y Alarmas\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"311\",\n      \"322\",\n      \"325\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"311\",\n      \"322\",\n      \"325\"\n    ]\n  },\n  {\n    \"servicio\": \"Monitoreo puntual de vibraciones\",\n    \"uen\": \"Ingenier&iacute;a \/ Estudios\",\n    \"industrias\": [\n      \"Miner&iacute;a y Cemento\",\n      \"Oil & Gas\",\n      \"Alimentos y Bebidas\",\n      \"Papel y Celulosa\",\n      \"Qu&iacute;mica y Petroqu&iacute;mica\"\n    ],\n    \"sectores\": [\n      \"Monitoreo Online\/Predictivo\",\n      \"An&aacute;lisis de Vibraci&oacute;n en Bombas\/Compresores\",\n      \"Balanceo Din&aacute;mico\",\n      \"Sens&oacute;rica (IEPE\/Proximidad)\",\n      \"Tendencias y Alarmas\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"311\",\n      \"322\",\n      \"325\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"311\",\n      \"322\",\n      \"325\"\n    ]\n  },\n  {\n    \"servicio\": \"Instalaci&oacute;n de sensores (desplazamiento\/aceler&oacute;metros)\",\n    \"uen\": \"Ingenier&iacute;a \/ Estudios\",\n    \"industrias\": [\n      \"Miner&iacute;a y Cemento\",\n      \"Oil & Gas\",\n      \"Alimentos y Bebidas\",\n      \"Papel y Celulosa\",\n      \"Qu&iacute;mica y Petroqu&iacute;mica\"\n    ],\n    \"sectores\": [\n      \"Monitoreo Online\/Predictivo\",\n      \"An&aacute;lisis de Vibraci&oacute;n en Bombas\/Compresores\",\n      \"Balanceo Din&aacute;mico\",\n      \"Sens&oacute;rica (IEPE\/Proximidad)\",\n      \"Tendencias y Alarmas\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"311\",\n      \"322\",\n      \"325\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"311\",\n      \"322\",\n      \"325\"\n    ]\n  },\n  {\n    \"servicio\": \"Obra el&eacute;ctrica BT para generaci&oacute;n y distribuci&oacute;n\",\n    \"uen\": \"EPC\",\n    \"industrias\": [\n      \"Infraestructura Energ&eacute;tica\",\n      \"Manufactura\",\n      \"Oil & Gas\",\n      \"Miner&iacute;a\",\n      \"Construcci&oacute;n Industrial\"\n    ],\n    \"sectores\": [\n      \"Cuartos de Control y CCR\",\n      \"Subestaciones MT\/AT\",\n      \"Canalizaciones y Charolas\",\n      \"Montaje de Generadores y Transformadores\",\n      \"Tendido de Cables Potencia\/Control\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"236\",\n      \"237130\",\n      \"33\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"236\",\n      \"237130\",\n      \"33\"\n    ]\n  },\n  {\n    \"servicio\": \"Obra el&eacute;ctrica MT para generaci&oacute;n y distribuci&oacute;n\",\n    \"uen\": \"EPC\",\n    \"industrias\": [\n      \"Infraestructura Energ&eacute;tica\",\n      \"Manufactura\",\n      \"Oil & Gas\",\n      \"Miner&iacute;a\",\n      \"Construcci&oacute;n Industrial\"\n    ],\n    \"sectores\": [\n      \"Cuartos de Control y CCR\",\n      \"Subestaciones MT\/AT\",\n      \"Canalizaciones y Charolas\",\n      \"Montaje de Generadores y Transformadores\",\n      \"Tendido de Cables Potencia\/Control\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"236\",\n      \"237130\",\n      \"33\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"236\",\n      \"237130\",\n      \"33\"\n    ]\n  },\n  {\n    \"servicio\": \"Obra el&eacute;ctrica AT para generaci&oacute;n y distribuci&oacute;n\",\n    \"uen\": \"EPC\",\n    \"industrias\": [\n      \"Infraestructura Energ&eacute;tica\",\n      \"Manufactura\",\n      \"Oil & Gas\",\n      \"Miner&iacute;a\",\n      \"Construcci&oacute;n Industrial\"\n    ],\n    \"sectores\": [\n      \"Cuartos de Control y CCR\",\n      \"Subestaciones MT\/AT\",\n      \"Canalizaciones y Charolas\",\n      \"Montaje de Generadores y Transformadores\",\n      \"Tendido de Cables Potencia\/Control\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"236\",\n      \"237130\",\n      \"33\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"236\",\n      \"237130\",\n      \"33\"\n    ]\n  },\n  {\n    \"servicio\": \"Instalaci&oacute;n electromec&aacute;nica de cuartos de control\/subestaciones\/generadores\",\n    \"uen\": \"EPC\",\n    \"industrias\": [\n      \"Infraestructura Energ&eacute;tica\",\n      \"Manufactura\",\n      \"Oil & Gas\",\n      \"Miner&iacute;a\",\n      \"Construcci&oacute;n Industrial\"\n    ],\n    \"sectores\": [\n      \"Cuartos de Control y CCR\",\n      \"Subestaciones MT\/AT\",\n      \"Canalizaciones y Charolas\",\n      \"Montaje de Generadores y Transformadores\",\n      \"Tendido de Cables Potencia\/Control\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"236\",\n      \"237130\",\n      \"33\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"236\",\n      \"237130\",\n      \"33\"\n    ]\n  },\n  {\n    \"servicio\": \"Tendido de charola\/tuber&iacute;a\/canalizaci&oacute;n para control y potencia\",\n    \"uen\": \"EPC\",\n    \"industrias\": [\n      \"Infraestructura Energ&eacute;tica\",\n      \"Manufactura\",\n      \"Oil & Gas\",\n      \"Miner&iacute;a\",\n      \"Construcci&oacute;n Industrial\"\n    ],\n    \"sectores\": [\n      \"Cuartos de Control y CCR\",\n      \"Subestaciones MT\/AT\",\n      \"Canalizaciones y Charolas\",\n      \"Montaje de Generadores y Transformadores\",\n      \"Tendido de Cables Potencia\/Control\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"236\",\n      \"237130\",\n      \"33\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"236\",\n      \"237130\",\n      \"33\"\n    ]\n  },\n  {\n    \"servicio\": \"Instalaci&oacute;n Electromec&aacute;nica de cuartos de control y generadores\",\n    \"uen\": \"Ingenier&iacute;a \/ Estudios\",\n    \"industrias\": [\n      \"Infraestructura Energ&eacute;tica\",\n      \"Manufactura\",\n      \"Oil & Gas\",\n      \"Miner&iacute;a\",\n      \"Construcci&oacute;n Industrial\"\n    ],\n    \"sectores\": [\n      \"Cuartos de Control y CCR\",\n      \"Subestaciones MT\/AT\",\n      \"Canalizaciones y Charolas\",\n      \"Montaje de Generadores y Transformadores\",\n      \"Tendido de Cables Potencia\/Control\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"236\",\n      \"237130\",\n      \"33\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"236\",\n      \"237130\",\n      \"33\"\n    ]\n  },\n  {\n    \"servicio\": \"Instalaci&oacute;n Electromec&aacute;nica de subestaciones\",\n    \"uen\": \"EPC\",\n    \"industrias\": [\n      \"Infraestructura Energ&eacute;tica\",\n      \"Manufactura\",\n      \"Oil & Gas\",\n      \"Miner&iacute;a\",\n      \"Construcci&oacute;n Industrial\"\n    ],\n    \"sectores\": [\n      \"Cuartos de Control y CCR\",\n      \"Subestaciones MT\/AT\",\n      \"Canalizaciones y Charolas\",\n      \"Montaje de Generadores y Transformadores\",\n      \"Tendido de Cables Potencia\/Control\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"236\",\n      \"237130\",\n      \"33\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"236\",\n      \"237130\",\n      \"33\"\n    ]\n  },\n  {\n    \"servicio\": \"Instalaci&oacute;n Electromec&aacute;nica de generadores\",\n    \"uen\": \"Ingenier&iacute;a \/ Estudios\",\n    \"industrias\": [\n      \"Infraestructura Energ&eacute;tica\",\n      \"Manufactura\",\n      \"Oil & Gas\",\n      \"Miner&iacute;a\",\n      \"Construcci&oacute;n Industrial\"\n    ],\n    \"sectores\": [\n      \"Cuartos de Control y CCR\",\n      \"Subestaciones MT\/AT\",\n      \"Canalizaciones y Charolas\",\n      \"Montaje de Generadores y Transformadores\",\n      \"Tendido de Cables Potencia\/Control\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"236\",\n      \"237130\",\n      \"33\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"236\",\n      \"237130\",\n      \"33\"\n    ]\n  },\n  {\n    \"servicio\": \"Suministro de VDF\",\n    \"uen\": \"Variadores \/ Motores\",\n    \"industrias\": [\n      \"Agua y Saneamiento\",\n      \"Oil & Gas\",\n      \"Miner&iacute;a\",\n      \"HVAC de Edificios e Industria\",\n      \"Alimentos y Bebidas\"\n    ],\n    \"sectores\": [\n      \"Bombeo y Ventilaci&oacute;n\",\n      \"Compresores\/Sopladores\",\n      \"Transportadores y Molinos\",\n      \"HVAC\/Chillers\/Torres\",\n      \"Tratamiento de Agua (PTAR\/PTAP)\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"2213\",\n      \"311\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"2213\",\n      \"311\"\n    ]\n  },\n  {\n    \"servicio\": \"Instalaci&oacute;n de VDF\",\n    \"uen\": \"Variadores \/ Motores\",\n    \"industrias\": [\n      \"Agua y Saneamiento\",\n      \"Oil & Gas\",\n      \"Miner&iacute;a\",\n      \"HVAC de Edificios e Industria\",\n      \"Alimentos y Bebidas\"\n    ],\n    \"sectores\": [\n      \"Bombeo y Ventilaci&oacute;n\",\n      \"Compresores\/Sopladores\",\n      \"Transportadores y Molinos\",\n      \"HVAC\/Chillers\/Torres\",\n      \"Tratamiento de Agua (PTAR\/PTAP)\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"2213\",\n      \"311\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"2213\",\n      \"311\"\n    ]\n  },\n  {\n    \"servicio\": \"Puesta en marcha de VDF\",\n    \"uen\": \"Variadores \/ Motores\",\n    \"industrias\": [\n      \"Agua y Saneamiento\",\n      \"Oil & Gas\",\n      \"Miner&iacute;a\",\n      \"HVAC de Edificios e Industria\",\n      \"Alimentos y Bebidas\"\n    ],\n    \"sectores\": [\n      \"Bombeo y Ventilaci&oacute;n\",\n      \"Compresores\/Sopladores\",\n      \"Transportadores y Molinos\",\n      \"HVAC\/Chillers\/Torres\",\n      \"Tratamiento de Agua (PTAR\/PTAP)\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"2213\",\n      \"311\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"2213\",\n      \"311\"\n    ]\n  },\n  {\n    \"servicio\": \"Mantenimiento a VDFs BT\",\n    \"uen\": \"Mantenimiento\",\n    \"industrias\": [\n      \"Agua y Saneamiento\",\n      \"Oil & Gas\",\n      \"Miner&iacute;a\",\n      \"HVAC de Edificios e Industria\",\n      \"Alimentos y Bebidas\"\n    ],\n    \"sectores\": [\n      \"Bombeo y Ventilaci&oacute;n\",\n      \"Compresores\/Sopladores\",\n      \"Transportadores y Molinos\",\n      \"HVAC\/Chillers\/Torres\",\n      \"Tratamiento de Agua (PTAR\/PTAP)\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"2213\",\n      \"311\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"2213\",\n      \"311\"\n    ]\n  },\n  {\n    \"servicio\": \"Mantenimiento a VDFs MT\",\n    \"uen\": \"Mantenimiento\",\n    \"industrias\": [\n      \"Agua y Saneamiento\",\n      \"Oil & Gas\",\n      \"Miner&iacute;a\",\n      \"HVAC de Edificios e Industria\",\n      \"Alimentos y Bebidas\"\n    ],\n    \"sectores\": [\n      \"Bombeo y Ventilaci&oacute;n\",\n      \"Compresores\/Sopladores\",\n      \"Transportadores y Molinos\",\n      \"HVAC\/Chillers\/Torres\",\n      \"Tratamiento de Agua (PTAR\/PTAP)\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"2213\",\n      \"311\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"2213\",\n      \"311\"\n    ]\n  },\n  {\n    \"servicio\": \"Instalaci&oacute;n de red de detecci&oacute;n de gas y fuego\",\n    \"uen\": \"Seguridad (Gas y Fuego)\",\n    \"industrias\": [\n      \"Oil & Gas (Zonas Clasificadas)\",\n      \"Qu&iacute;mica y Petroqu&iacute;mica\",\n      \"Miner&iacute;a\",\n      \"Centros de Datos \/ TIC\",\n      \"Farmac&eacute;utica\"\n    ],\n    \"sectores\": [\n      \"Detecci&oacute;n de Gas y Fuego (ATEX\/IECEx)\",\n      \"Agentes Limpios\/CO2\/Espuma\/Agua\",\n      \"Alarmas Audiovisuales\",\n      \"Sistemas FM\/UL\/NOM\",\n      \"Integraci&oacute;n con PLC\/SCADA\"\n    ],\n    \"naics\": [\n      \"325\",\n      \"518\"\n    ],\n    \"scian\": [\n      \"325\",\n      \"518\"\n    ]\n  },\n  {\n    \"servicio\": \"Calibraci&oacute;n de instrumentos de gas y fuego\",\n    \"uen\": \"Mantenimiento\",\n    \"industrias\": [\n      \"Oil & Gas (Zonas Clasificadas)\",\n      \"Qu&iacute;mica y Petroqu&iacute;mica\",\n      \"Miner&iacute;a\",\n      \"Centros de Datos \/ TIC\",\n      \"Farmac&eacute;utica\"\n    ],\n    \"sectores\": [\n      \"Detecci&oacute;n de Gas y Fuego (ATEX\/IECEx)\",\n      \"Agentes Limpios\/CO2\/Espuma\/Agua\",\n      \"Alarmas Audiovisuales\",\n      \"Sistemas FM\/UL\/NOM\",\n      \"Integraci&oacute;n con PLC\/SCADA\"\n    ],\n    \"naics\": [\n      \"325\",\n      \"518\"\n    ],\n    \"scian\": [\n      \"325\",\n      \"518\"\n    ]\n  },\n  {\n    \"servicio\": \"Sistemas contra incendio (NOM\/UL\/FM)\",\n    \"uen\": \"Ingenier&iacute;a \/ Estudios\",\n    \"industrias\": [\n      \"Oil & Gas (Zonas Clasificadas)\",\n      \"Qu&iacute;mica y Petroqu&iacute;mica\",\n      \"Miner&iacute;a\",\n      \"Centros de Datos \/ TIC\",\n      \"Farmac&eacute;utica\"\n    ],\n    \"sectores\": [\n      \"Detecci&oacute;n de Gas y Fuego (ATEX\/IECEx)\",\n      \"Agentes Limpios\/CO2\/Espuma\/Agua\",\n      \"Alarmas Audiovisuales\",\n      \"Sistemas FM\/UL\/NOM\",\n      \"Integraci&oacute;n con PLC\/SCADA\"\n    ],\n    \"naics\": [\n      \"325\",\n      \"518\"\n    ],\n    \"scian\": [\n      \"325\",\n      \"518\"\n    ]\n  },\n  {\n    \"servicio\": \"Sistemas de CO2 alta\/baja presi&oacute;n\",\n    \"uen\": \"Seguridad (Gas y Fuego)\",\n    \"industrias\": [\n      \"Oil & Gas (Zonas Clasificadas)\",\n      \"Qu&iacute;mica y Petroqu&iacute;mica\",\n      \"Miner&iacute;a\",\n      \"Centros de Datos \/ TIC\",\n      \"Farmac&eacute;utica\"\n    ],\n    \"sectores\": [\n      \"Detecci&oacute;n de Gas y Fuego (ATEX\/IECEx)\",\n      \"Agentes Limpios\/CO2\/Espuma\/Agua\",\n      \"Alarmas Audiovisuales\",\n      \"Sistemas FM\/UL\/NOM\",\n      \"Integraci&oacute;n con PLC\/SCADA\"\n    ],\n    \"naics\": [\n      \"325\",\n      \"518\"\n    ],\n    \"scian\": [\n      \"325\",\n      \"518\"\n    ]\n  },\n  {\n    \"servicio\": \"Sistemas de agentes limpios\",\n    \"uen\": \"Seguridad (Gas y Fuego)\",\n    \"industrias\": [\n      \"Generaci&oacute;n y Utilities\",\n      \"Oil & Gas\",\n      \"Miner&iacute;a\",\n      \"Centros de Datos \/ TIC\",\n      \"Infraestructura de Transporte\"\n    ],\n    \"sectores\": [\n      \"Cortocircuito\/Coordinaci&oacute;n\/Arco\",\n      \"Flujo de Carga\/Arm&oacute;nicos\",\n      \"Selectividad y Protecci&oacute;n\",\n      \"Dimensionamiento de Equipos\",\n      \"Automatizaci&oacute;n y Control\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"518\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"518\"\n    ]\n  },\n  {\n    \"servicio\": \"Sistemas de supresi&oacute;n de agua\",\n    \"uen\": \"Seguridad (Gas y Fuego)\",\n    \"industrias\": [\n      \"Oil & Gas (Zonas Clasificadas)\",\n      \"Qu&iacute;mica y Petroqu&iacute;mica\",\n      \"Miner&iacute;a\",\n      \"Centros de Datos \/ TIC\",\n      \"Farmac&eacute;utica\"\n    ],\n    \"sectores\": [\n      \"Detecci&oacute;n de Gas y Fuego (ATEX\/IECEx)\",\n      \"Agentes Limpios\/CO2\/Espuma\/Agua\",\n      \"Alarmas Audiovisuales\",\n      \"Sistemas FM\/UL\/NOM\",\n      \"Integraci&oacute;n con PLC\/SCADA\"\n    ],\n    \"naics\": [\n      \"325\",\n      \"518\"\n    ],\n    \"scian\": [\n      \"325\",\n      \"518\"\n    ]\n  },\n  {\n    \"servicio\": \"Detecci&oacute;n a prueba de explosi&oacute;n\",\n    \"uen\": \"Seguridad (Gas y Fuego)\",\n    \"industrias\": [\n      \"Generaci&oacute;n y Utilities\",\n      \"Oil & Gas\",\n      \"Miner&iacute;a\",\n      \"Centros de Datos \/ TIC\",\n      \"Infraestructura de Transporte\"\n    ],\n    \"sectores\": [\n      \"Cortocircuito\/Coordinaci&oacute;n\/Arco\",\n      \"Flujo de Carga\/Arm&oacute;nicos\",\n      \"Selectividad y Protecci&oacute;n\",\n      \"Dimensionamiento de Equipos\",\n      \"Automatizaci&oacute;n y Control\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"518\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"518\"\n    ]\n  },\n  {\n    \"servicio\": \"Alarmas visibles y audibles\",\n    \"uen\": \"Seguridad (Gas y Fuego)\",\n    \"industrias\": [\n      \"Oil & Gas (Zonas Clasificadas)\",\n      \"Qu&iacute;mica y Petroqu&iacute;mica\",\n      \"Miner&iacute;a\",\n      \"Centros de Datos \/ TIC\",\n      \"Farmac&eacute;utica\"\n    ],\n    \"sectores\": [\n      \"Detecci&oacute;n de Gas y Fuego (ATEX\/IECEx)\",\n      \"Agentes Limpios\/CO2\/Espuma\/Agua\",\n      \"Alarmas Audiovisuales\",\n      \"Sistemas FM\/UL\/NOM\",\n      \"Integraci&oacute;n con PLC\/SCADA\"\n    ],\n    \"naics\": [\n      \"325\",\n      \"518\"\n    ],\n    \"scian\": [\n      \"325\",\n      \"518\"\n    ]\n  },\n  {\n    \"servicio\": \"Pruebas el&eacute;ctricas a equipos primarios\",\n    \"uen\": \"Mantenimiento\",\n    \"industrias\": [\n      \"Utilities (T&D)\",\n      \"Generaci&oacute;n El&eacute;ctrica\",\n      \"Manufactura\",\n      \"Oil & Gas\",\n      \"Miner&iacute;a\"\n    ],\n    \"sectores\": [\n      \"Pruebas a Transformadores\/Interruptores\",\n      \"Pruebas a Relevadores\/Protecciones\",\n      \"Resistencia de Aislamiento\/HiPot\",\n      \"Factor de Potencia y Tierras\",\n      \"Comisionamiento de UPS\/Bancos\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"2211\",\n      \"33\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"2211\",\n      \"33\"\n    ]\n  },\n  {\n    \"servicio\": \"Pruebas a relevadores de protecci&oacute;n\",\n    \"uen\": \"Mantenimiento\",\n    \"industrias\": [\n      \"Manufactura y Ensamble\",\n      \"Miner&iacute;a y Metales\",\n      \"Oil & Gas\",\n      \"Infraestructura y Transporte\",\n      \"Centros de Datos \/ TIC\"\n    ],\n    \"sectores\": [\n      \"Centros de Control de Motores (MCC)\",\n      \"Switchgear BT\/MT (MetalClad\/Enclosed)\",\n      \"Distribuci&oacute;n El&eacute;ctrica Industrial\",\n      \"Protecciones y Relevadores\",\n      \"Sistemas de Puesta a Tierra\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"212\",\n      \"33\",\n      \"48-49\",\n      \"518\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"212\",\n      \"33\",\n      \"48-49\",\n      \"518\"\n    ]\n  },\n  {\n    \"servicio\": \"Pruebas de resistencia de aislamiento\",\n    \"uen\": \"Mantenimiento\",\n    \"industrias\": [\n      \"Utilities (T&D)\",\n      \"Generaci&oacute;n El&eacute;ctrica\",\n      \"Manufactura\",\n      \"Oil & Gas\",\n      \"Miner&iacute;a\"\n    ],\n    \"sectores\": [\n      \"Pruebas a Transformadores\/Interruptores\",\n      \"Pruebas a Relevadores\/Protecciones\",\n      \"Resistencia de Aislamiento\/HiPot\",\n      \"Factor de Potencia y Tierras\",\n      \"Comisionamiento de UPS\/Bancos\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"2211\",\n      \"33\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"2211\",\n      \"33\"\n    ]\n  },\n  {\n    \"servicio\": \"Pruebas de potencial\",\n    \"uen\": \"Mantenimiento\",\n    \"industrias\": [\n      \"Utilities (T&D)\",\n      \"Generaci&oacute;n El&eacute;ctrica\",\n      \"Manufactura\",\n      \"Oil & Gas\",\n      \"Miner&iacute;a\"\n    ],\n    \"sectores\": [\n      \"Pruebas a Transformadores\/Interruptores\",\n      \"Pruebas a Relevadores\/Protecciones\",\n      \"Resistencia de Aislamiento\/HiPot\",\n      \"Factor de Potencia y Tierras\",\n      \"Comisionamiento de UPS\/Bancos\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"2211\",\n      \"33\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"2211\",\n      \"33\"\n    ]\n  },\n  {\n    \"servicio\": \"Pruebas de factor de potencia\",\n    \"uen\": \"Mantenimiento\",\n    \"industrias\": [\n      \"Utilities (T&D)\",\n      \"Generaci&oacute;n El&eacute;ctrica\",\n      \"Manufactura\",\n      \"Oil & Gas\",\n      \"Miner&iacute;a\"\n    ],\n    \"sectores\": [\n      \"Pruebas a Transformadores\/Interruptores\",\n      \"Pruebas a Relevadores\/Protecciones\",\n      \"Resistencia de Aislamiento\/HiPot\",\n      \"Factor de Potencia y Tierras\",\n      \"Comisionamiento de UPS\/Bancos\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"2211\",\n      \"33\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"2211\",\n      \"33\"\n    ]\n  },\n  {\n    \"servicio\": \"Pruebas a tierra\",\n    \"uen\": \"Mantenimiento\",\n    \"industrias\": [\n      \"Utilities (T&D)\",\n      \"Generaci&oacute;n El&eacute;ctrica\",\n      \"Manufactura\",\n      \"Oil & Gas\",\n      \"Miner&iacute;a\"\n    ],\n    \"sectores\": [\n      \"Pruebas a Transformadores\/Interruptores\",\n      \"Pruebas a Relevadores\/Protecciones\",\n      \"Resistencia de Aislamiento\/HiPot\",\n      \"Factor de Potencia y Tierras\",\n      \"Comisionamiento de UPS\/Bancos\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"2211\",\n      \"33\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"2211\",\n      \"33\"\n    ]\n  },\n  {\n    \"servicio\": \"Pruebas de UPS, bancos y cargadores\",\n    \"uen\": \"Mantenimiento\",\n    \"industrias\": [\n      \"Utilities (T&D)\",\n      \"Generaci&oacute;n El&eacute;ctrica\",\n      \"Manufactura\",\n      \"Oil & Gas\",\n      \"Miner&iacute;a\"\n    ],\n    \"sectores\": [\n      \"Pruebas a Transformadores\/Interruptores\",\n      \"Pruebas a Relevadores\/Protecciones\",\n      \"Resistencia de Aislamiento\/HiPot\",\n      \"Factor de Potencia y Tierras\",\n      \"Comisionamiento de UPS\/Bancos\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"2211\",\n      \"33\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"2211\",\n      \"33\"\n    ]\n  },\n  {\n    \"servicio\": \"Pruebas y reparaci&oacute;n de cable AT, interruptores y transformadores\",\n    \"uen\": \"Mantenimiento\",\n    \"industrias\": [\n      \"Utilities (T&D)\",\n      \"Generaci&oacute;n El&eacute;ctrica\",\n      \"Manufactura\",\n      \"Oil & Gas\",\n      \"Miner&iacute;a\"\n    ],\n    \"sectores\": [\n      \"Pruebas a Transformadores\/Interruptores\",\n      \"Pruebas a Relevadores\/Protecciones\",\n      \"Resistencia de Aislamiento\/HiPot\",\n      \"Factor de Potencia y Tierras\",\n      \"Comisionamiento de UPS\/Bancos\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"2211\",\n      \"33\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"2211\",\n      \"33\"\n    ]\n  },\n  {\n    \"servicio\": \"Mantenimiento a Gobernadores (diag\/mant\/rep\/cal)\",\n    \"uen\": \"Mantenimiento\",\n    \"industrias\": [\n      \"Generaci&oacute;n El&eacute;ctrica (termo\/hidro\/ciclo combinado)\",\n      \"Oil & Gas (refiner&iacute;a, petroqu&iacute;mica)\",\n      \"Miner&iacute;a y Metales\",\n      \"Papel y Celulosa\",\n      \"Alimentos y Bebidas\"\n    ],\n    \"sectores\": [\n      \"Turbinas de Vapor\/Gas\",\n      \"Cogeneraci&oacute;n y Ciclo Combinado\",\n      \"Balance of Plant (BOP)\",\n      \"Subestaciones de Planta\",\n      \"Protecci&oacute;n y Control\"\n    ],\n    \"naics\": [\n      \"212\",\n      \"2211\",\n      \"311\",\n      \"322\",\n      \"324\"\n    ],\n    \"scian\": [\n      \"212\",\n      \"2211\",\n      \"311\",\n      \"322\",\n      \"324\"\n    ]\n  },\n  {\n    \"servicio\": \"Mantenimiento a Actuadores (diag\/mant\/rep\/cal)\",\n    \"uen\": \"Mantenimiento\",\n    \"industrias\": [\n      \"Utilities (T&D)\",\n      \"Generaci&oacute;n El&eacute;ctrica\",\n      \"Manufactura\",\n      \"Miner&iacute;a\",\n      \"Oil & Gas\"\n    ],\n    \"sectores\": [\n      \"BT\/MT\/AT\",\n      \"Protecci&oacute;n y Control\",\n      \"Gobernadores\/Actuadores\/Excitaci&oacute;n\",\n      \"Subestaciones Industriales\",\n      \"SOP\/Mantenimiento Predictivo\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"2211\",\n      \"33\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"2211\",\n      \"33\"\n    ]\n  },\n  {\n    \"servicio\": \"Mantenimiento a Sistemas de Excitaci&oacute;n (diag\/rep\/config)\",\n    \"uen\": \"Mantenimiento\",\n    \"industrias\": [\n      \"Generaci&oacute;n El&eacute;ctrica (termo\/hidro\/ciclo combinado)\",\n      \"Oil & Gas (refiner&iacute;a, petroqu&iacute;mica)\",\n      \"Miner&iacute;a y Metales\",\n      \"Papel y Celulosa\",\n      \"Alimentos y Bebidas\"\n    ],\n    \"sectores\": [\n      \"Turbinas de Vapor\/Gas\",\n      \"Cogeneraci&oacute;n y Ciclo Combinado\",\n      \"Balance of Plant (BOP)\",\n      \"Subestaciones de Planta\",\n      \"Protecci&oacute;n y Control\"\n    ],\n    \"naics\": [\n      \"212\",\n      \"2211\",\n      \"311\",\n      \"322\",\n      \"324\"\n    ],\n    \"scian\": [\n      \"212\",\n      \"2211\",\n      \"311\",\n      \"322\",\n      \"324\"\n    ]\n  },\n  {\n    \"servicio\": \"Mantenimiento de Subestaciones BT\/MT\/AT\",\n    \"uen\": \"EPC\",\n    \"industrias\": [\n      \"Infraestructura Energ&eacute;tica\",\n      \"Manufactura\",\n      \"Oil & Gas\",\n      \"Miner&iacute;a\",\n      \"Construcci&oacute;n Industrial\"\n    ],\n    \"sectores\": [\n      \"Cuartos de Control y CCR\",\n      \"Subestaciones MT\/AT\",\n      \"Canalizaciones y Charolas\",\n      \"Montaje de Generadores y Transformadores\",\n      \"Tendido de Cables Potencia\/Control\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"236\",\n      \"237130\",\n      \"33\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"236\",\n      \"237130\",\n      \"33\"\n    ]\n  },\n  {\n    \"servicio\": \"Mantenimiento de Equipo el&eacute;ctrico (potencia\/control)\",\n    \"uen\": \"Mantenimiento\",\n    \"industrias\": [\n      \"Utilities (T&D)\",\n      \"Generaci&oacute;n El&eacute;ctrica\",\n      \"Manufactura\",\n      \"Miner&iacute;a\",\n      \"Oil & Gas\"\n    ],\n    \"sectores\": [\n      \"BT\/MT\/AT\",\n      \"Protecci&oacute;n y Control\",\n      \"Gobernadores\/Actuadores\/Excitaci&oacute;n\",\n      \"Subestaciones Industriales\",\n      \"SOP\/Mantenimiento Predictivo\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"2211\",\n      \"33\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"2211\",\n      \"33\"\n    ]\n  },\n  {\n    \"servicio\": \"Desarrollo de sistemas el&eacute;ctricos (Distribuci&oacute;n\/Generaci&oacute;n\/Automatizaci&oacute;n)\",\n    \"uen\": \"Ingenier&iacute;a \/ Estudios\",\n    \"industrias\": [\n      \"Generaci&oacute;n y Utilities\",\n      \"Oil & Gas\",\n      \"Miner&iacute;a\",\n      \"Centros de Datos \/ TIC\",\n      \"Infraestructura de Transporte\"\n    ],\n    \"sectores\": [\n      \"Cortocircuito\/Coordinaci&oacute;n\/Arco\",\n      \"Flujo de Carga\/Arm&oacute;nicos\",\n      \"Selectividad y Protecci&oacute;n\",\n      \"Dimensionamiento de Equipos\",\n      \"Automatizaci&oacute;n y Control\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"518\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"518\"\n    ]\n  },\n  {\n    \"servicio\": \"Generaci&oacute;n: control de velocidad\/reparto de carga\/sincronizaci&oacute;n\/protecci&oacute;n\/excitaci&oacute;n\/UPS\",\n    \"uen\": \"Protecci&oacute;n y Control\",\n    \"industrias\": [\n      \"Generaci&oacute;n El&eacute;ctrica (termo\/hidro\/ciclo combinado)\",\n      \"Oil & Gas (refiner&iacute;a, petroqu&iacute;mica)\",\n      \"Miner&iacute;a y Metales\",\n      \"Papel y Celulosa\",\n      \"Alimentos y Bebidas\"\n    ],\n    \"sectores\": [\n      \"Turbinas de Vapor\/Gas\",\n      \"Cogeneraci&oacute;n y Ciclo Combinado\",\n      \"Balance of Plant (BOP)\",\n      \"Subestaciones de Planta\",\n      \"Protecci&oacute;n y Control\"\n    ],\n    \"naics\": [\n      \"212\",\n      \"2211\",\n      \"311\",\n      \"322\",\n      \"324\"\n    ],\n    \"scian\": [\n      \"212\",\n      \"2211\",\n      \"311\",\n      \"322\",\n      \"324\"\n    ]\n  },\n  {\n    \"servicio\": \"Estudios el&eacute;ctricos (cortocircuito, coordinaci&oacute;n, arco, arm&oacute;nicos, flujo, calidad)\",\n    \"uen\": \"Protecci&oacute;n y Control\",\n    \"industrias\": [\n      \"Generaci&oacute;n y Utilities\",\n      \"Oil & Gas\",\n      \"Miner&iacute;a\",\n      \"Centros de Datos \/ TIC\",\n      \"Infraestructura de Transporte\"\n    ],\n    \"sectores\": [\n      \"Cortocircuito\/Coordinaci&oacute;n\/Arco\",\n      \"Flujo de Carga\/Arm&oacute;nicos\",\n      \"Selectividad y Protecci&oacute;n\",\n      \"Dimensionamiento de Equipos\",\n      \"Automatizaci&oacute;n y Control\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"518\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"518\"\n    ]\n  },\n  {\n    \"servicio\": \"Ingenier&iacute;a de sistemas de protecci&oacute;n\",\n    \"uen\": \"Protecci&oacute;n y Control\",\n    \"industrias\": [\n      \"Generaci&oacute;n y Utilities\",\n      \"Oil & Gas\",\n      \"Miner&iacute;a\",\n      \"Centros de Datos \/ TIC\",\n      \"Infraestructura de Transporte\"\n    ],\n    \"sectores\": [\n      \"Cortocircuito\/Coordinaci&oacute;n\/Arco\",\n      \"Flujo de Carga\/Arm&oacute;nicos\",\n      \"Selectividad y Protecci&oacute;n\",\n      \"Dimensionamiento de Equipos\",\n      \"Automatizaci&oacute;n y Control\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"518\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"518\"\n    ]\n  },\n  {\n    \"servicio\": \"Sistemas de vibraci&oacute;n (instalaci&oacute;n, an&aacute;lisis, predictivo, gabinetes)\",\n    \"uen\": \"Mantenimiento\",\n    \"industrias\": [\n      \"Miner&iacute;a y Cemento\",\n      \"Oil & Gas\",\n      \"Alimentos y Bebidas\",\n      \"Papel y Celulosa\",\n      \"Qu&iacute;mica y Petroqu&iacute;mica\"\n    ],\n    \"sectores\": [\n      \"Monitoreo Online\/Predictivo\",\n      \"An&aacute;lisis de Vibraci&oacute;n en Bombas\/Compresores\",\n      \"Balanceo Din&aacute;mico\",\n      \"Sens&oacute;rica (IEPE\/Proximidad)\",\n      \"Tendencias y Alarmas\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"311\",\n      \"322\",\n      \"325\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"311\",\n      \"322\",\n      \"325\"\n    ]\n  },\n  {\n    \"servicio\": \"Automatizaci&oacute;n y control: SCADA, hardware, gabinetes\",\n    \"uen\": \"Automatizaci&oacute;n y Control\",\n    \"industrias\": [\n      \"Generaci&oacute;n y Utilities\",\n      \"Oil & Gas\",\n      \"Agua y Saneamiento\",\n      \"Miner&iacute;a\",\n      \"Alimentos y Bebidas\"\n    ],\n    \"sectores\": [\n      \"SCADA\/SDMC\",\n      \"Telemetr&iacute;a y Comunicaciones (Modbus\/DNP3)\",\n      \"Historiadores y An&aacute;lisis de Datos\",\n      \"Sistemas de Medici&oacute;n y Calidad de Energ&iacute;a\",\n      \"Ciberseguridad OT\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"2213\",\n      \"311\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"2213\",\n      \"311\"\n    ]\n  },\n  {\n    \"servicio\": \"Sistemas de seguridad: red de detecci&oacute;n de gas y fuego\",\n    \"uen\": \"Seguridad (Gas y Fuego)\",\n    \"industrias\": [\n      \"Oil & Gas (Zonas Clasificadas)\",\n      \"Qu&iacute;mica y Petroqu&iacute;mica\",\n      \"Miner&iacute;a\",\n      \"Centros de Datos \/ TIC\",\n      \"Farmac&eacute;utica\"\n    ],\n    \"sectores\": [\n      \"Detecci&oacute;n de Gas y Fuego (ATEX\/IECEx)\",\n      \"Agentes Limpios\/CO2\/Espuma\/Agua\",\n      \"Alarmas Audiovisuales\",\n      \"Sistemas FM\/UL\/NOM\",\n      \"Integraci&oacute;n con PLC\/SCADA\"\n    ],\n    \"naics\": [\n      \"325\",\n      \"518\"\n    ],\n    \"scian\": [\n      \"325\",\n      \"518\"\n    ]\n  },\n  {\n    \"servicio\": \"Distribuci&oacute;n: VDF BT\/MT, motores, relevadores, subestaci&oacute;n, tableros, protecciones, CCM\",\n    \"uen\": \"Protecci&oacute;n y Control\",\n    \"industrias\": [\n      \"Manufactura y Ensamble\",\n      \"Miner&iacute;a y Metales\",\n      \"Oil & Gas\",\n      \"Infraestructura y Transporte\",\n      \"Centros de Datos \/ TIC\"\n    ],\n    \"sectores\": [\n      \"Centros de Control de Motores (MCC)\",\n      \"Switchgear BT\/MT (MetalClad\/Enclosed)\",\n      \"Distribuci&oacute;n El&eacute;ctrica Industrial\",\n      \"Protecciones y Relevadores\",\n      \"Sistemas de Puesta a Tierra\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"212\",\n      \"33\",\n      \"48-49\",\n      \"518\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"212\",\n      \"33\",\n      \"48-49\",\n      \"518\"\n    ]\n  },\n  {\n    \"servicio\": \"Servicios en campo y pruebas (tableros, transformadores, seccionadores, cables transmisi&oacute;n)\",\n    \"uen\": \"Mantenimiento\",\n    \"industrias\": [\n      \"Manufactura y Ensamble\",\n      \"Miner&iacute;a y Metales\",\n      \"Oil & Gas\",\n      \"Infraestructura y Transporte\",\n      \"Centros de Datos \/ TIC\"\n    ],\n    \"sectores\": [\n      \"Centros de Control de Motores (MCC)\",\n      \"Switchgear BT\/MT (MetalClad\/Enclosed)\",\n      \"Distribuci&oacute;n El&eacute;ctrica Industrial\",\n      \"Protecciones y Relevadores\",\n      \"Sistemas de Puesta a Tierra\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"212\",\n      \"33\",\n      \"48-49\",\n      \"518\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"212\",\n      \"33\",\n      \"48-49\",\n      \"518\"\n    ]\n  },\n  {\n    \"servicio\": \"Capacitaci&oacute;n y entrenamiento (operaci&oacute;n, mantenimiento, seguridad)\",\n    \"uen\": \"Mantenimiento\",\n    \"industrias\": [\n      \"Utilities (T&D)\",\n      \"Generaci&oacute;n El&eacute;ctrica\",\n      \"Manufactura\",\n      \"Miner&iacute;a\",\n      \"Oil & Gas\"\n    ],\n    \"sectores\": [\n      \"BT\/MT\/AT\",\n      \"Protecci&oacute;n y Control\",\n      \"Gobernadores\/Actuadores\/Excitaci&oacute;n\",\n      \"Subestaciones Industriales\",\n      \"SOP\/Mantenimiento Predictivo\"\n    ],\n    \"naics\": [\n      \"211\",\n      \"2211\",\n      \"33\"\n    ],\n    \"scian\": [\n      \"211\",\n      \"2211\",\n      \"33\"\n    ]\n  }\n]<\/script>\n  <\/div>\n<\/section>\n<\/div>\n\n<section id=\"contacto\" class=\"contact-block\" aria-labelledby=\"contactoTitle\">\n  <div class=\"container\">\n    <div class=\"section-intro section-intro--compact\">\n      <h2 id=\"contactoTitle\" class=\"section-intro__title\">Contacto<\/h2>\n      <p class=\"section-intro__lead\">Consulta la informaci&oacute;n clave antes de solicitar tu propuesta.<\/p>\n    <\/div>\n    <div class=\"contact-block__grid\">\n      <article class=\"contact-card\" aria-label=\"Presentaci&oacute;n de VMS Energy\">\n        <h3>&iquest;Por qu&eacute; VMS Energy?<\/h3>\n        <ul>\n          <li>M&aacute;s de 17 a&ntilde;os en proyectos EPC de energ&iacute;a e infraestructura industrial.<\/li>\n          <li>Integraci&oacute;n multimarcas con enfoque en seguridad, trazabilidad y cumplimiento.<\/li>\n          <li>Acompa&ntilde;amiento t&eacute;cnico y comercial durante todo el ciclo del proyecto.<\/li>\n        <\/ul>\n        <h4>Redes sociales<\/h4>\n        <div class=\"contact-social\" aria-label=\"Redes sociales de VMS Energy\">\n          <a class=\"contact-social__link\" href=\"https:\/\/www.facebook.com\/profile.php?id=61576615590335\" target=\"_blank\" rel=\"noopener noreferrer\" aria-label=\"Facebook\">\n            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 24 24\"><path d=\"M22 12a10 10 0 1 0-11.5 9.9v-7h-2v-2.9h2v-2.2c0-2 1.2-3.1 3-3.1.9 0 1.8.1 1.8.1v2h-1c-1 0-1.3.6-1.3 1.2v2h2.3l-.4 2.9h-1.9v7A10 10 0 0 0 22 12\"\/><\/svg>\n          <\/a>\n          <a class=\"contact-social__link\" href=\"https:\/\/www.instagram.com\/vmsenergy\" target=\"_blank\" rel=\"noopener noreferrer\" aria-label=\"Instagram\">\n            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 24 24\"><path d=\"M7 2C4.243 2 2 4.243 2 7v10c0 2.757 2.243 5 5 5h10c2.757 0 5-2.243 5-5V7c0-2.757-2.243-5-5-5H7zm10 2c1.654 0 3 1.346 3 3v10c0 1.654-1.346 3-3 3H7c-1.654 0-3-1.346-3-3V7c0-1.654 1.346-3 3-3h10zm-5 3a5 5 0 100 10 5 5 0 000-10zm0 2a3 3 0 110 6 3 3 0 010-6zm4.5-.75a1.25 1.25 0 11-2.5 0 1.25 1.25 0 012.5 0z\"\/><\/svg>\n          <\/a>\n          <a class=\"contact-social__link\" href=\"https:\/\/www.linkedin.com\/company\/vmsenergy\/\" target=\"_blank\" rel=\"noopener noreferrer\" aria-label=\"LinkedIn\">\n            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 24 24\"><path d=\"M4.98 3.5C4.98 4.88 3.87 6 2.5 6S0 4.88 0 3.5 1.12 1 2.5 1s2.48 1.12 2.48 2.5zM0 8h5v16H0zM8 8h4.7v2.2h.1c.6-1.1 2.1-2.3 4.4-2.3 4.7 0 5.6 3.1 5.6 7.2V24h-5v-6.8c0-1.6 0-3.7-2.3-3.7s-2.6 1.8-2.6 3.6V24H8z\"\/><\/svg>\n          <\/a>\n        <\/div>\n        <div class=\"contact-video-ph\">Video institucional \/ testimonial (pr&oacute;ximamente)<\/div>\n      <\/article>\n      <article class=\"contact-card\" aria-label=\"Datos de contacto VMS Energy\">\n        <h3>Direcci&oacute;n<\/h3>\n        <p>Guadalajara, Jalisco, M&eacute;xico.<\/p>\n        <p>Ciudad del Carmen, Campeche, M&eacute;xico.<\/p>\n        <h4>Datos de contacto<\/h4>\n        <p>Correo: <a href=\"mailto:contacto@vmsenergy.com\">contacto@vmsenergy.com<\/a><\/p>\n        <p>Tel&eacute;fono: <a href=\"tel:+523338130739\">+52 33 3813 0739<\/a> (Guadalajara)<\/p>\n        <p>Tel&eacute;fono: <a href=\"tel:+529383814824\">+52 938 381 4824<\/a> (Ciudad del Carmen)<\/p>\n        <p>Horario de atenci&oacute;n: Lunes a Viernes, 9:00 a 18:00.<\/p>\n        <h4>Mapa de ubicaci&oacute;n<\/h4>\n        <div class=\"contact-map\">\n          <iframe\n            title=\"Mapa de VMS Energy en Guadalajara\"\n            loading=\"lazy\"\n            referrerpolicy=\"no-referrer-when-downgrade\"\n            src=\"https:\/\/www.google.com\/maps?q=Guadalajara%20Jalisco%20VMS%20Energy&output=embed\">\n          <\/iframe>\n        <\/div>\n      <\/article>\n    <\/div>\n  <\/div>\n<\/section>\n\n<script>\n    \/\/ ===== Simple helpers =====\n    const $ = (sel, ctx=document) => ctx.querySelector(sel);\n    const $$ = (sel, ctx=document) => [...ctx.querySelectorAll(sel)];\n\n    \/\/ Suministro: dependent selects\n    const brandMap = {\n      'EPC el&eacute;ctrico': ['ABB','Siemens','Schneider'],\n      'Soluciones electromec&aacute;nicas': ['ABB','Schneider','WEG'],\n      'Infraestructura el&eacute;ctrica': ['Siemens','GE Grid','Schneider'],\n      'Oil & Gas': ['Emerson','Honeywell','Siemens'],\n      'EPC de Iluminaci&oacute;n': ['Signify (Philips)','Eaton Crouse-Hinds','OSRAM','Cree Lighting','WEG'],\n      'Suministro': ['ABB','Schneider','Basler Electric','DEIF','Dynalco','Triol','Valtek','Woodward','Chint','Kei','WEG','Signify (Philips)','Eaton Crouse-Hinds','OSRAM','Cree Lighting'],\n      'Mantenimiento': ['ABB','Schneider','Siemens','Signify (Philips)','Eaton Crouse-Hinds','OSRAM','Cree Lighting'],\n      'Capacitaci&oacute;n': ['ABB','Schneider','DEIF','Basler Electric']\n    };\n    let productMap = {\n      'ABB': ['ACS580 Drive','Rel&eacute; de protecci&oacute;n REF615','MNS-SG'],\n      'Schneider': ['Altivar ATV320','Altivar Process ATV600','PrismaSeT'],\n      'Schneider Electric': ['Altivar ATV320','Altivar Process ATV600','PrismaSeT'],\n      'Siemens': ['SIVACON S8','SENTRON WL','SIPROTEC 5'],\n      'GE Grid': ['Multilin 869','B90 Bus Differential'],\n      'WEG': ['Motores W22','CFW900','Soft-Starters SSW'],\n      'Emerson': ['DeltaV','Fisher Control Valve'],\n      'Honeywell': ['Experion PKS','SmartLine Transmitter'],\n      'Basler Electric': ['DECS-250E','DECS-450'],\n      'DEIF': ['AGC-4 Mk II','ASC-4 Solar'],\n      'Dynalco': ['Speed Switch','Tachometer'],\n      'Triol': ['VFD AT27','VFD AT24'],\n      'Valtek': ['Logix 3800','StarPac 3'],\n      'Woodward': ['easYgen-3000XT','ProAct Actuator'],\n      'Chint': ['NVF2G','NXC\/NM8N'],\n      'Kei': ['Cables BT\/MT','HV (3.3-33 kV)','EHV (66-400 kV)'],\n      'Signify (Philips)': ['CoreLine Highbay Gen6','GreenPerform Highbay G5','Drivers Xitanium'],\n      'Eaton Crouse-Hinds': ['Champ Pro PFMA','Luminarias de emergencia'],\n      'OSRAM': ['Controladores DALI','Drivers LED industriales'],\n      'Cree Lighting': ['High-bay LED','Street Lighting']\n    };\n    \/\/ Fuente externa opcional para mantener el cat&aacute;logo fuera del HTML.\n    (async function loadAlliesProductMap(){\n      try{\n        const r = await fetch('https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/allies-products.json', { cache: 'no-store' });\n        if(!r.ok) return;\n        const data = await r.json();\n        if(data && data.productMap && typeof data.productMap === 'object'){\n          productMap = data.productMap;\n        }\n      }catch(_e){}\n    })();\n\n    const needSel = $('#need');\n    const brandSel = $('#brand');\n    const prodSel  = $('#product');\n\n    function fillSelect(select, items){\n      if(!select) return;\n      select.innerHTML = '<option value=\"\">Selecciona\u2026<\/option>' + (items||[]).map(v=>`<option>${v}<\/option>`).join('');\n      select.disabled = !(items && items.length);\n    }\n\n    if(needSel && brandSel && prodSel){\n      needSel.addEventListener('change', () => {\n        const brands = brandMap[needSel.value] || [];\n        fillSelect(brandSel, brands);\n        fillSelect(prodSel, []);\n      });\n      brandSel.addEventListener('change', () => {\n        const prods = productMap[brandSel.value] || [];\n        fillSelect(prodSel, prods);\n      });\n    }\n\n    \/\/ Simple form handlers (mock)\n    function validate(form){\n      const req = $$('[required]', form);\n      let ok = true;\n      req.forEach(el=>{ el.classList.remove('err'); if(!el.value) { ok=false; el.classList.add('err'); }});\n      return ok;\n    }\n    function toast(msg, ok=true){\n      const el = document.createElement('div');\n      el.textContent = msg;\n      el.style.cssText = `position:fixed;right:16px;bottom:16px;padding:10px 14px;border-radius:12px;color:#fff;background:${ok? 'linear-gradient(135deg, #16a34a, #22c55e)':'linear-gradient(135deg,#b91c1c,#ef4444)'};z-index:60;box-shadow:0 10px 30px rgba(0,0,0,.25);`;\n      document.body.appendChild(el);\n      setTimeout(()=>el.remove(), 3200);\n    }\n\n    $('#procuraForm').addEventListener('submit', e=>{\n      e.preventDefault();\n      if(!validate(e.target)) { toast('Completa los campos requeridos', false); return; }\n      const payload = {\n        need: needSel.value, brand: brandSel.value, product: prodSel.value, email: $('#email').value\n      };\n      console.log('Suministro t&eacute;cnico payload', payload);\n      toast('&iexcl;Solicitud enviada! Te contactamos en breve.');\n      e.target.reset();\n      fillSelect(brandSel, []); fillSelect(prodSel, []);\n    });\n      \/\/ ===== Servicios Filters (checkbox) =====\n    (function(){\n      const feedback = document.getElementById('filterFeedback');\n      const boxes = $$('input[name=\"svc-filter\"]');\n      const svcSection = document.getElementById('servicios');\n      if(!svcSection || boxes.length===0) return;\n      const getSelected = () => boxes.filter(b=>b.checked).map(b=>b.value);\n      const allLis = () => $$('#servicios .accordion li');\n      const allDetails = () => $$('#servicios .accordion details');\n\n      function applyFilters(){\n        const selected = new Set(getSelected().map(function(value){\n          return window.VMS_IS_ENGLISH_PAGE && window.vmsTranslateText\n            ? window.vmsTranslateText(value)\n            : value;\n        }));\n        const none = selected.size===0;\n        let totalShown = 0, totalItems = 0;\n        allLis().forEach(li=>{\n          const tags = [...li.querySelectorAll('.badge')].map(b=>b.textContent.trim());\n          const show = none || tags.some(t=>selected.has(t));\n          li.classList.toggle('hidden', !show);\n          totalItems++; if(show) totalShown++;\n        });\n        \/\/ Hide <details> with no visible items only when filtering is active\n        allDetails().forEach(d=>{\n          const anyVisible = [...d.querySelectorAll('li')].some(li=>!li.classList.contains('hidden'));\n          d.classList.toggle('hidden', !anyVisible && !none);\n        });\n        feedback.textContent = none\n          ? 'Sin filtros activos: mostrando todo.'\n          : `Filtros: ${[...selected].join(', ')} &middot; Mostrando ${totalShown}\/${totalItems} &iacute;tems`;\n      }\n      boxes.forEach(b=>b.addEventListener('change', applyFilters));\n      applyFilters();\n    })();\n    \/\/ ===== Cat&aacute;logo de suministro t&eacute;cnico: dataset y render =====\n    let CATALOGO = [\n      \/\/ ABB\n      {marca:'ABB', producto:'Centro de Control de Motor (MCC)', modelos:'MNS-SG, MNS-Up, NeoGear\u2122', disponibilidad:'?'},\n      {marca:'ABB', producto:'Tablero de Distribuci&oacute;n', modelos:'System pro E energy, Compact MNS, ProLine Panels', disponibilidad:'?'},\n      {marca:'ABB', producto:'Tableros El&eacute;ctricos para Exteriores', modelos:'Gabinetes NEMA, Gemini, System pro E control', disponibilidad:'?'},\n      {marca:'ABB', producto:'Variadores (Frecuencia y Velocidad)', modelos:'ACS580, ACS880', disponibilidad:'?'},\n      {marca:'ABB', producto:'Reguladores de Voltaje', modelos:'UNITROL\u00ae, FCR\/FVR', disponibilidad:'X'},\n      {marca:'ABB', producto:'Subestaciones', modelos:'\u2014', disponibilidad:'?'},\n      {marca:'ABB', producto:'HVAC\u00b2', modelos:'\u2014', disponibilidad:'?'},\n      {marca:'ABB', producto:'Actuador', modelos:'\u2014', disponibilidad:'?'},\n      {marca:'ABB', producto:'Interruptores Retrofit', modelos:'\u2014', disponibilidad:'?'},\n      {marca:'ABB', producto:'Cable El&eacute;ctrico', modelos:'\u2014', disponibilidad:'?'},\n      \/\/ Schneider\n      {marca:'Schneider Electric', producto:'Centro de Control de Motor (MCC)', modelos:'Okken, Blokset, Prisma', disponibilidad:'?'},\n      {marca:'Schneider Electric', producto:'Variadores (Frecuencia y Velocidad)', modelos:'Altivar ATV320, Altivar Process ATV600', disponibilidad:'?'},\n      {marca:'Schneider Electric', producto:'Tablero de Distribuci&oacute;n', modelos:'PrismaSeT, PowerLogic', disponibilidad:'?'},\n      {marca:'Schneider Electric', producto:'Actuador', modelos:'\u2014', disponibilidad:'?'},\n      {marca:'Schneider Electric', producto:'Interruptores Retrofit', modelos:'NSX\/MTZ Retrofit kits', disponibilidad:'?'},\n      \/\/ Siemens\n      {marca:'Siemens', producto:'Centro de Control de Motor (MCC)', modelos:'SIVACON S8', disponibilidad:'?'},\n      {marca:'Siemens', producto:'Variadores (Frecuencia y Velocidad)', modelos:'SINAMICS G120, S120', disponibilidad:'?'},\n      {marca:'Siemens', producto:'Tablero de Distribuci&oacute;n', modelos:'SENTRON WL\/3VA', disponibilidad:'?'},\n      {marca:'Siemens', producto:'Protecci&oacute;n y Control', modelos:'SIPROTEC 5', disponibilidad:'?'},\n      \/\/ Basler\n      {marca:'Basler Electric', producto:'Reguladores de Voltaje', modelos:'DECS-250E, DECS-450', disponibilidad:'?'},\n      \/\/ DEIF\n      {marca:'DEIF', producto:'Controlador de Generaci&oacute;n y Sincron&iacute;a', modelos:'AGC-4 Mk II, ASC-4 Solar', disponibilidad:'?'},\n      \/\/ Dynalco\n      {marca:'Dynalco', producto:'Gobernador \/ Controlador de Velocidad', modelos:'Speed Switch, Tachs', disponibilidad:'?'},\n      \/\/ Triol\n      {marca:'Triol', producto:'Variadores (Frecuencia y Velocidad)', modelos:'AT27, AT24', disponibilidad:'?'},\n      \/\/ Valtek\n      {marca:'Valtek', producto:'Posicionadores y Control de V&aacute;lvula', modelos:'Logix 3800, StarPac 3', disponibilidad:'?'},\n      \/\/ Woodward\n      {marca:'Woodward', producto:'Controladores de Generaci&oacute;n', modelos:'easYgen-3000XT, 2301E', disponibilidad:'?'},\n      {marca:'Woodward', producto:'Actuadores', modelos:'ProAct, L-Series', disponibilidad:'?'},\n      \/\/ Chint\n      {marca:'Chint', producto:'Tablero de Distribuci&oacute;n', modelos:'NXC\/NM8N', disponibilidad:'?'},\n      {marca:'Chint', producto:'Variadores (Frecuencia y Velocidad)', modelos:'NVF2G', disponibilidad:'?'},\n      \/\/ Kei (cable)\n      {marca:'Kei', producto:'Cable El&eacute;ctrico', modelos:'Cables BT\/MT, HV (3.3-33 kV), EHV (66-400 kV)', disponibilidad:'?'},\n      \/\/ Iluminaci&oacute;n\n      {marca:'Signify (Philips)', producto:'Luminarias LED industriales', modelos:'CoreLine Highbay Gen6, GreenPerform Highbay G5', disponibilidad:'?'},\n      {marca:'Signify (Philips)', producto:'Drivers LED', modelos:'Xitanium', disponibilidad:'?'},\n      {marca:'Signify (Philips)', producto:'Paneles LED', modelos:'Panel CoreLine, SmartBright', disponibilidad:'?'},\n      {marca:'Eaton Crouse-Hinds', producto:'Iluminaci&oacute;n ATEX', modelos:'Champ Pro PFMA', disponibilidad:'?'},\n      {marca:'Eaton Crouse-Hinds', producto:'Luminarias de emergencia', modelos:'Serie Ex eLED, Champ Emergency', disponibilidad:'?'},\n      {marca:'OSRAM', producto:'M&oacute;dulos LED', modelos:'PrevaLED, LINEARlight', disponibilidad:'?'},\n      {marca:'OSRAM', producto:'Controladores DALI', modelos:'OPTOTRONIC', disponibilidad:'?'},\n      {marca:'Cree Lighting', producto:'High-Bay LED', modelos:'KBL Series, CPY500', disponibilidad:'?'},\n      {marca:'Cree Lighting', producto:'Street Lighting', modelos:'XSP Series, RSW', disponibilidad:'?'},\n      {marca:'WEG', producto:'Luminarias Industriales', modelos:'WLUX Series', disponibilidad:'?'}\n    ];\n\n    (async function(){\n      try{\n        const r = await fetch('https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/allies-products.json', { cache:'no-store' });\n        if(r.ok){\n          const data = await r.json();\n          if(data && Array.isArray(data.catalogo) && data.catalogo.length){\n            CATALOGO = data.catalogo;\n          }\n        }\n      }catch(_e){}\n      const acc = document.getElementById('prodAccordion');\n      const brandSel = document.getElementById('brandFilter');\n      const productSel = document.getElementById('productFilter');\n      const searchInp = document.getElementById('searchModel');\n      const summary = document.getElementById('catalogSummary');\n\n      \/\/ Poblar selects\n      const brands = Array.from(new Set(CATALOGO.map(i=>i.marca))).sort();\n      const products = Array.from(new Set(CATALOGO.map(i=>i.producto))).sort();\n      brandSel.innerHTML += brands.map(function(b){return '<option>'+b+'<\/option>';}).join('');\n      productSel.innerHTML += products.map(function(p){return '<option>'+p+'<\/option>';}).join('');\n\n      function badgeAvail(v){\n        var yes = v==='?';\n        return '<span class=\"avail '+(yes?'avail--yes':'avail--no')+'\">'+(yes?'Disponible ?':'No listado X')+'<\/span>';\n      }\n\n      function render(){\n        var b = brandSel.value.trim();\n        var p = productSel.value.trim();\n        var q = searchInp.value.trim().toLowerCase();\n        var filtered = CATALOGO.filter(function(it){\n          return (!b || it.marca===b) && (!p || it.producto===p) && (!q || (it.modelos||'').toLowerCase().indexOf(q) !== -1);\n        });\n        \/\/ Agrupar por marca -> producto\n        var byBrand = {};\n        filtered.forEach(function(it){\n          if(!byBrand[it.marca]) byBrand[it.marca] = {};\n          if(!byBrand[it.marca][it.producto]) byBrand[it.marca][it.producto] = [];\n          byBrand[it.marca][it.producto].push(it);\n        });\n        \/\/ Construir HTML\n        var html = '';\n        var bKeys = Object.keys(byBrand).sort();\n        bKeys.forEach(function(marca){\n          html += '<details open><summary>'+marca+'<\/summary>';\n          var prods = byBrand[marca];\n          Object.keys(prods).sort().forEach(function(prod){\n            var items = prods[prod];\n            var modelos = items.map(function(x){return x.modelos;}).filter(Boolean).join(', ');\n            var list = modelos.split(',').map(function(s){return s.trim();}).filter(Boolean);\n            \/\/ Quitar duplicados de forma segura sin expresiones regulares\n            var unique = Array.from(new Set(list)).join(', ');\n            var disp = (items[0] && items[0].disponibilidad) ? items[0].disponibilidad : 'X';\n            html += '<div class=\"card\" style=\"margin:10px 0\">'+\n                      '<h4 style=\"margin:0 0 6px;color:var(--navy)\">'+prod+'<\/h4>'+ \n                      '<div class=\"prod-meta\">'+badgeAvail(disp)+'<\/div>'+ \n                      '<p style=\"margin:0;color:#475569;font-size:14px\">'+(unique || '\u2014')+'<\/p>'+\n                    '<\/div>';\n          });\n          html += '<\/details>';\n        });\n        acc.innerHTML = html || '<p class=\"hint\">Sin resultados para los filtros aplicados.<\/p>';\n        summary.textContent = 'Mostrando '+filtered.length+' &iacute;tems de '+CATALOGO.length+'.';\n      }\n\n      brandSel.addEventListener('change', render);\n      productSel.addEventListener('change', render);\n      searchInp.addEventListener('input', render);\n      document.getElementById('clearProdFilters').addEventListener('click', function(){\n        brandSel.value=''; productSel.value=''; searchInp.value=''; render();\n      });\n\n      render();\n    })();\n  <\/script>\n\n<script>\n(function(){\n  \/\/ ===== Servicios: filters by Tensi&oacute;n\/Norma\/Tipo =====\n  const tensionChecks = [...document.querySelectorAll('input[name=\"svc-filter\"]')];\n  const typeChecks = [...document.querySelectorAll('input[name=\"svc-type\"]')];\n  const feedback = document.getElementById('filterFeedback');\n  const svcAccord = document.querySelector('#servicios .accordion');\n  if(!feedback || !svcAccord || (!tensionChecks.length && !typeChecks.length)) return;\n\n  function applyServiceFilters(){\n    const activeT = new Set(tensionChecks.filter(c=>c.checked && ['BT','MT','AT'].includes(c.value)).map(c=>c.value));\n    const activeN = new Set(tensionChecks.filter(c=>c.checked && ['NOM','UL','FM'].includes(c.value)).map(c=>c.value));\n    const activeType = new Set(typeChecks.filter(c=>c.checked).map(c=>c.value));\n\n    const details = svcAccord ? [...svcAccord.querySelectorAll('details')] : [];\n    details.forEach(d=>{\n      \/\/ show by type\n      const dtype = d.getAttribute('data-type') || 'Servicios';\n      let visible = activeType.size ? activeType.has(dtype) : true;\n\n      \/\/ If tension\/norm filters are active, also require one badge match inside list items\n      if(visible && (activeT.size || activeN.size)){\n        const badges = [...d.querySelectorAll('.badge')].map(b=>b.textContent.trim());\n        const tMatch = !activeT.size || badges.some(b=>activeT.has(b));\n        const nMatch = !activeN.size || badges.some(b=>activeN.has(b));\n        visible = tMatch && nMatch;\n      }\n      d.classList.toggle('hidden', !visible);\n    });\n\n    const parts = [];\n    if(activeT.size) parts.push('Tensi&oacute;n: '+[...activeT].join(', '));\n    if(activeN.size) parts.push('Norma: '+[...activeN].join(', '));\n    if(activeType.size) parts.push('Tipo: '+[...activeType].join(', '));\n    feedback.textContent = parts.length ? ('Filtros activos ? ' + parts.join(' &middot; ')) : 'Sin filtros activos: mostrando todo.';\n  }\n\n  tensionChecks.concat(typeChecks).forEach(c=>c.addEventListener('change', applyServiceFilters));\n  applyServiceFilters();\n\n  \/\/ ===== Suministro t&eacute;cnico: Servicio general\/espec&iacute;fico dependent selects =====\n  const svcGeneral = document.getElementById('svcGeneral');\n  const svcEspecifico = document.getElementById('svcEspecifico');\n\n  const specificByGeneral = {\n    'Suministro': ['Transformadores','Tableros BT\/MT','Variadores de frecuencia','Luminarias LED','Cables de potencia','Instrumentaci&oacute;n y actuadores'],\n    'Mantenimiento': ['Predictivo (vibraciones\/termograf&iacute;a)','Correctivo','Pruebas el&eacute;ctricas primarios','Relevadores de protecci&oacute;n'],\n    'Ingenier&iacute;a': ['Subestaciones','SCADA\/SDMC','Calidad de energ&iacute;a','Estudios de cortocircuito'],\n    'Capacitaci&oacute;n': ['Seguridad el&eacute;ctrica','Operaci&oacute;n de subestaciones','SCADA b&aacute;sico','Iluminaci&oacute;n industrial']\n  };\n\n  function populateSpecific(){\n    const g = svcGeneral.value;\n    svcEspecifico.innerHTML = '<option value=\"\">Todos<\/option>';\n    if(!g){ svcEspecifico.disabled = true; return; }\n    specificByGeneral[g].forEach(opt=>{\n      const o = document.createElement('option'); o.value = opt; o.textContent = opt; svcEspecifico.appendChild(o);\n    });\n    svcEspecifico.disabled = false;\n  }\n  if(svcGeneral){ svcGeneral.addEventListener('change', populateSpecific); populateSpecific(); }\n\n  \/\/ Optional: hook into product list filtering if product cards exist with data attributes\n  function filterProducts(){\n    const g = svcGeneral ? svcGeneral.value : '';\n    const s = svcEspecifico ? svcEspecifico.value : '';\n    document.querySelectorAll('.prod-accordion details').forEach(d=>{\n      const meta = (d.getAttribute('data-svcs') || '').split('|'); \/\/ e.g., \"Suministro:Transformadores|Ingenier&iacute;a:SCADA\"\n      let show = true;\n      if(g){ show = meta.some(m => m.trim().startsWith(g+':')); }\n      if(show && g && s){ show = meta.some(m => m.trim() === (g+':'+s)); }\n      d.classList.toggle('hidden', !show);\n    });\n  }\n  if(svcGeneral && svcEspecifico){\n    svcGeneral.addEventListener('change', filterProducts);\n    svcEspecifico.addEventListener('change', filterProducts);\n  }\n\n})();\n<\/script>\n\n<script>\n(function(){\n  function getCombinedData(){\n    let data = (window.CATALOGO || window.CATALOG || []).slice();\n    if (Array.isArray(window.CABLES_DATA)){\n      window.CABLES_DATA.forEach(row=>{\n        const modelos = [row.Serie, row.Tipo, row.Tension, row.Construccion].filter(Boolean).join(' &middot; ');\n        data.push({marca: row.Marca || 'Cable', producto:'Cable El&eacute;ctrico', modelos: modelos});\n      });\n    }\n    return data;\n  }\n  const UEN_MAP = {\n    \"ABB\": [\"EPC\",\"Electromec&aacute;nicos\",\"Suministro\"],\n    \"Schneider\": [\"EPC\",\"Electromec&aacute;nicos\",\"Suministro\"],\n    \"Siemens\": [\"EPC\",\"Electromec&aacute;nicos\",\"Infraestructura\",\"Suministro\"],\n    \"Triol\": [\"Suministro\",\"Mantenimiento\"],\n    \"Basler\": [\"EPC\",\"Oil & Gas\",\"Suministro\"],\n    \"Deif\": [\"EPC\",\"Oil & Gas\",\"Suministro\",\"Mantenimiento\"],\n    \"Woodward\": [\"EPC\",\"Oil & Gas\",\"Suministro\",\"Mantenimiento\"],\n    \"KEI\": [\"Infraestructura\",\"EPC\",\"Suministro\"],\n    \"Prysmian\": [\"Infraestructura\",\"EPC\",\"Suministro\"],\n    \"Condumex\": [\"Infraestructura\",\"EPC\",\"Suministro\"],\n    \"Philips\": [\"Iluminaci&oacute;n\",\"Suministro\",\"Mantenimiento\"],\n    \"Signify\": [\"Iluminaci&oacute;n\",\"Suministro\"],\n    \"Osram\": [\"Iluminaci&oacute;n\",\"Suministro\"],\n    \"VMS Energy\": [\"Capacitaci&oacute;n\"]\n  };\n  function computeBrandServiceCounts(){\n    const acc = document.getElementById('prodAccordion');\n    const result = {};\n    if(!acc) return result;\n    acc.querySelectorAll('details').forEach(d=>{\n      const sum = d.querySelector('summary');\n      if(!sum) return;\n      const brand = (sum.textContent||'').split('\u2014')[0].trim();\n      const svcs = (d.getAttribute('data-svcs')||'').split('|').filter(Boolean);\n      if(!result[brand]) result[brand] = {};\n      svcs.forEach(svc=>{\n        result[brand][svc] = (result[brand][svc]||0) + 1;\n      });\n    });\n    return result;\n  }\n  function computeBrandItemCounts(data){\n    const counts = {};\n    data.forEach(it=>{\n      counts[it.marca] = (counts[it.marca]||0) + 1;\n    });\n    return counts;\n  }\n  function parseSvc(text){\n    const ix = text.indexOf(':');\n    if(ix===-1) return {general:text.trim(), specific:''};\n    return {general:text.slice(0,ix).trim(), specific:text.slice(ix+1).trim()};\n  }\n  function syncToCatalog(brand, svcFull){\n    const brandSel = document.getElementById('brandFilter');\n    const prodSel = document.getElementById('productFilter');\n    const svcGen = document.getElementById('svcGeneral');\n    const svcSpec = document.getElementById('svcEspecifico');\n    if(brandSel){\n      brandSel.value = brand || '';\n      brandSel.dispatchEvent(new Event('change', {bubbles:true}));\n    }\n    if(prodSel){ prodSel.dispatchEvent(new Event('change', {bubbles:true})); }\n    if(svcGen && svcSpec){\n      const svc = svcFull ? parseSvc(svcFull) : null;\n      if(svc){\n        let gen = svc.general;\n        if(gen === 'Capacitaci&oacute;n y entrenamiento' || gen === 'Capacitaci&oacute;n y Entrenamiento') gen = 'Capacitaci&oacute;n';\n        svcGen.value = gen;\n        svcGen.dispatchEvent(new Event('change', {bubbles:true}));\n        if(svc.specific){\n          setTimeout(()=>{ svcSpec.value = svc.specific; svcSpec.dispatchEvent(new Event('change', {bubbles:true})); }, 0);\n        }\n      } else {\n        svcGen.value = ''; svcSpec.value = '';\n        svcGen.dispatchEvent(new Event('change', {bubbles:true}));\n        svcSpec.dispatchEvent(new Event('change', {bubbles:true}));\n      }\n    }\n    const target = document.getElementById('procura')\n      || document.querySelector('[data-section=\"procura\"]')\n      || document.getElementById('productos')\n      || document.querySelector('[data-section=\"productos\"]');\n    if(target) target.scrollIntoView({behavior:'smooth', block:'start'});\n  }\n  function renderMatrixEnhanced(targetEl, filter, brandItems, brandSvcCounts){\n    const table = document.createElement('table');\n    const thead = document.createElement('thead');\n    thead.innerHTML = '<tr><th>Marca<\/th><th>Suministro principal<\/th><th>Servicios asociados<\/th><th>UEN<\/th><\/tr>';\n    table.appendChild(thead);\n    const tbody = document.createElement('tbody');\n    const norm = s => String(s||'').toLowerCase().normalize('NFD').replace(\/[\\\\u0300-\\\\u036f]\/g,'');\n    Object.entries(MATRIX_MAP).forEach(([marca,data])=>{\n      const brandCount = brandItems[marca] || 0;\n      const match = !filter || norm(marca).includes(norm(filter)) ||\n        (data.servicios||[]).some(s => norm(s).includes(norm(filter)));\n      if(!match) return;\n      const tr = document.createElement('tr');\n      const uens = (UEN_MAP[marca]||[]).map(u=>'<span class=\"tag\">'+u+'<\/span>').join(' ');\n      const svcChips = (data.servicios||[]).map(s=>{\n        const c = brandSvcCounts[marca] && brandSvcCounts[marca][s] ? ' ('+brandSvcCounts[marca][s]+')' : '';\n        return '<button class=\"tag svc-chip\" data-brand=\"'+marca+'\" data-svc=\"'+s+'\" title=\"Filtrar cat&aacute;logo\">'+s+c+'<\/button>';\n      }).join(' ');\n      tr.innerHTML =\n        '<td><strong>'+marca+'<\/strong> <span class=\"tag\" title=\"&Iacute;tems detectados en cat&aacute;logo\">'+brandCount+' &iacute;tems<\/span><\/td>' +\n        '<td>'+ (data.producto||[]).join(', ') +'<\/td>' +\n        '<td>'+ svcChips +'<\/td>' +\n        '<td>'+ uens +'<\/td>';\n      tr.querySelector('td').addEventListener('click', ()=>{ syncToCatalog(marca, ''); });\n      tbody.appendChild(tr);\n    });\n    table.appendChild(tbody);\n    targetEl.innerHTML = '';\n    targetEl.className = 'matrix-blueprint';\n    targetEl.appendChild(table);\n    targetEl.querySelectorAll('.svc-chip').forEach(btn=>{\n      btn.addEventListener('click', (e)=>{\n        e.stopPropagation();\n        const marca = btn.getAttribute('data-brand');\n        const svc = btn.getAttribute('data-svc');\n        syncToCatalog(marca, svc);\n      });\n    });\n  }\n  const MATRIX_MAP = {\n    \"ABB\": { producto: [\"Tableros\",\"Variadores\"], servicios: [\"Ingenier&iacute;a:Tableros\",\"Suministro:Variadores de frecuencia\"] },\n    \"Schneider\": { producto: [\"Tableros\",\"Variadores\"], servicios: [\"Ingenier&iacute;a:Tableros\",\"Suministro:Variadores de frecuencia\"] },\n    \"Siemens\": { producto: [\"Tableros\",\"MCC\"], servicios: [\"Ingenier&iacute;a:Tableros\",\"Suministro:Centro de control de motor\"] },\n    \"Triol\": { producto: [\"Variadores AT24\",\"Variadores AT27\"], servicios: [\"Suministro:Variadores de frecuencia\",\"Mantenimiento:Correctivo\"] },\n    \"Basler\": { producto: [\"Reguladores\"], servicios: [\"Ingenier&iacute;a:Protecciones y coordinaci&oacute;n\"] },\n    \"Deif\": { producto: [\"Gobernadores\"], servicios: [\"Ingenier&iacute;a:Control de velocidad\",\"Mantenimiento:Revisi&oacute;n de gobernadores\"] },\n    \"Woodward\": { producto: [\"Controladores\"], servicios: [\"Ingenier&iacute;a:Sincronizaci&oacute;n\",\"Mantenimiento:Correctivo\"] },\n    \"KEI\": { producto: [\"Cables el&eacute;ctricos\"], servicios: [\"Suministro:Cables de potencia\"] },\n    \"Prysmian\": { producto: [\"Cables el&eacute;ctricos\"], servicios: [\"Suministro:Cables de potencia\"] },\n    \"Condumex\": { producto: [\"Cables el&eacute;ctricos\"], servicios: [\"Suministro:Cables de potencia\"] },\n    \"Philips\": { producto: [\"Iluminaci&oacute;n\"], servicios: [\"Suministro:Iluminaci&oacute;n industrial\",\"Mantenimiento:Correctivo\"] },\n    \"Signify\": { producto: [\"Iluminaci&oacute;n\"], servicios: [\"Suministro:Iluminaci&oacute;n industrial\"] },\n    \"Osram\": { producto: [\"Iluminaci&oacute;n\"], servicios: [\"Suministro:Iluminaci&oacute;n industrial\"] },\n    \"VMS Energy\": { producto: [\"Capacitaci&oacute;n y entrenamiento\"], servicios: [\"Capacitaci&oacute;n:Seguridad el&eacute;ctrica\",\"Capacitaci&oacute;n:SCADA b&aacute;sico\",\"Capacitaci&oacute;n:Operaci&oacute;n de subestaciones\"] }\n  };\n  function wireAuditBlock(btnId, viewerId, searchWrapId, inputId){\n    const btn = document.getElementById(btnId);\n    const viewer = document.getElementById(viewerId);\n    const searchWrap = document.getElementById(searchWrapId);\n    const input = document.getElementById(inputId);\n    if(!btn || !viewer) return;\n    const renderNow = ()=>{\n      const data = getCombinedData();\n      const brandItems = computeBrandItemCounts(data);\n      const brandSvcCounts = computeBrandServiceCounts();\n      const filter = input ? input.value : '';\n      renderMatrixEnhanced(viewer, filter, brandItems, brandSvcCounts);\n    };\n    btn.addEventListener('click', ()=>{\n      const isHidden = viewer.hasAttribute('hidden');\n      if(isHidden){\n        viewer.removeAttribute('hidden');\n        if(searchWrap) searchWrap.removeAttribute('hidden');\n        btn.textContent = window.VMS_IS_ENGLISH_PAGE\n          ? btn.textContent.replace(\/^(?:Ver|View)\\b\/i,'Hide')\n          : btn.textContent.replace('Ver','Ocultar');\n        renderNow();\n      } else {\n        viewer.setAttribute('hidden','');\n        if(searchWrap) searchWrap.setAttribute('hidden','');\n        btn.textContent = window.VMS_IS_ENGLISH_PAGE\n          ? btn.textContent.replace(\/^(?:Ocultar|Hide)\\b\/i,'View')\n          : btn.textContent.replace('Ocultar','Ver');\n      }\n    });\n    if(input){ input.addEventListener('input', renderNow); }\n  }\n  wireAuditBlock('toggleMatrixSupply','matrixViewerSupply','matrixSearchSupply','matrixFilterSupply');\n  wireAuditBlock('toggleMatrixBrands','matrixViewerBrands','matrixSearchBrands','matrixFilterBrands');\n\n})();\n<\/script>\n\n<script>\n\/\/ ==== v9.6: Resumen de filtros + abrir y resaltar detalle desde la matriz ====\n(function(){\n  const $ = (sel) => document.querySelector(sel);\n  const $$ = (sel) => Array.from(document.querySelectorAll(sel));\n\n  function getState(){\n    return {\n      brand: $('#brandFilter')?.value || '',\n      product: $('#productFilter')?.value || '',\n      svcGen: $('#svcGeneral')?.value || '',\n      svcSpec: $('#svcEspecifico')?.value || '',\n      avail: $('#availabilityFilter')?.value || '',\n      q: ($('#searchModel')?.value || '').trim()\n    };\n  }\n\n  function renderSummary(){\n    const box = $('#activeFilters');\n    if(!box) return;\n    const s = getState();\n    const chips = [];\n    if(s.brand) chips.push(`<span class=\"filter-chip\" data-k=\"brand\">Marca: <strong>${s.brand}<\/strong> <button title=\"Quitar\">\u00d7<\/button><\/span>`);\n    if(s.product) chips.push(`<span class=\"filter-chip\" data-k=\"product\">Suministro t&eacute;cnico: <strong>${s.product}<\/strong> <button title=\"Quitar\">\u00d7<\/button><\/span>`);\n    if(s.svcGen) chips.push(`<span class=\"filter-chip\" data-k=\"svcGen\">Servicio: <strong>${s.svcGen}<\/strong> <button title=\"Quitar\">\u00d7<\/button><\/span>`);\n    if(s.svcSpec) chips.push(`<span class=\"filter-chip\" data-k=\"svcSpec\">Espec&iacute;fico: <strong>${s.svcSpec}<\/strong> <button title=\"Quitar\">\u00d7<\/button><\/span>`);\n    if(s.avail) chips.push(`<span class=\"filter-chip\" data-k=\"avail\">Disponibilidad: <strong>${s.avail}<\/strong> <button title=\"Quitar\">\u00d7<\/button><\/span>`);\n    if(s.q) chips.push(`<span class=\"filter-chip\" data-k=\"q\">B&uacute;squeda: <strong>${s.q}<\/strong> <button title=\"Quitar\">\u00d7<\/button><\/span>`);\n    const actions = `<span class=\"filters-actions\">${(chips.length>0)?'<button class=\"btn-clear\" id=\"btnClearAll\">Limpiar todo<\/button>':''}<\/span>`;\n    box.innerHTML = chips.join('') + actions;\n\n    box.onclick = (ev)=>{\n      const chip = ev.target.closest('.filter-chip');\n      if(!chip) return;\n      const k = chip.getAttribute('data-k');\n      if(!k) return;\n      switch(k){\n        case 'brand': if($('#brandFilter')) { $('#brandFilter').value=''; $('#brandFilter').dispatchEvent(new Event('change', {bubbles:true})); } break;\n        case 'product': if($('#productFilter')) { $('#productFilter').value=''; $('#productFilter').dispatchEvent(new Event('change', {bubbles:true})); } break;\n        case 'svcGen': if($('#svcGeneral')) { $('#svcGeneral').value=''; $('#svcGeneral').dispatchEvent(new Event('change', {bubbles:true})); } if($('#svcEspecifico')) { $('#svcEspecifico').value=''; $('#svcEspecifico').dispatchEvent(new Event('change', {bubbles:true})); } break;\n        case 'svcSpec': if($('#svcEspecifico')) { $('#svcEspecifico').value=''; $('#svcEspecifico').dispatchEvent(new Event('change', {bubbles:true})); } break;\n        case 'avail': if($('#availabilityFilter')) { $('#availabilityFilter').value=''; $('#availabilityFilter').dispatchEvent(new Event('change', {bubbles:true})); } break;\n        case 'q': if($('#searchModel')) { $('#searchModel').value=''; $('#searchModel').dispatchEvent(new Event('input', {bubbles:true})); } break;\n      }\n      renderSummarySoon();\n    };\n\n    const btnClearAll = $('#btnClearAll');\n    if(btnClearAll){\n      btnClearAll.onclick = ()=>{\n        if($('#clearProdFilters')) { $('#clearProdFilters').click(); }\n        else {\n          if($('#brandFilter')) $('#brandFilter').value='';\n          if($('#productFilter')) $('#productFilter').value='';\n          if($('#svcGeneral')) $('#svcGeneral').value='';\n          if($('#svcEspecifico')) $('#svcEspecifico').value='';\n          if($('#availabilityFilter')) $('#availabilityFilter').value='';\n          if($('#searchModel')) $('#searchModel').value='';\n          ['brandFilter','productFilter','svcGeneral','svcEspecifico','availabilityFilter','searchModel'].forEach(id=>{\n            const el = document.getElementById(id);\n            if(!el) return;\n            el.dispatchEvent(new Event((id==='searchModel')?'input':'change', {bubbles:true}));\n          });\n        }\n        renderSummarySoon();\n      };\n    }\n  }\n\n  let summaryTimer;\n  function renderSummarySoon(){ clearTimeout(summaryTimer); summaryTimer = setTimeout(renderSummary, 0); }\n\n  \/\/ Hook filters changes\n  ['brandFilter','productFilter','svcGeneral','svcEspecifico','availabilityFilter','searchModel','clearProdFilters'].forEach(id=>{\n    const el = document.getElementById(id);\n    if(!el) return;\n    if(id==='searchModel') el.addEventListener('input', renderSummarySoon);\n    else if(id==='clearProdFilters') el.addEventListener('click', renderSummarySoon);\n    else el.addEventListener('change', renderSummarySoon);\n  });\n\n  \/\/ Open and highlight details by brand (+ optional service match)\n  function openAndHighlight(brand, svcFull){\n    const acc = document.getElementById('prodAccordion');\n    if(!acc) return;\n    setTimeout(()=>{\n      const details = Array.from(acc.querySelectorAll('details'));\n      let matched = 0;\n      details.forEach(d=>{\n        const sum = d.querySelector('summary');\n        const text = (sum?.textContent || '').trim();\n        const dBrand = text.split('\u2014')[0].trim();\n        const svcs = d.getAttribute('data-svcs') || '';\n        const isBrand = !brand || dBrand.toLowerCase() === brand.toLowerCase();\n        const isSvc = !svcFull || svcs.indexOf(svcFull) >= 0;\n        if(isBrand && isSvc){\n          d.open = true;\n          d.classList.remove('flash-highlight');\n          void d.offsetWidth; \/\/ reflow to restart animation\n          d.classList.add('flash-highlight');\n          matched++;\n        }\n      });\n      \/\/ Fallback: if no match by service, highlight by brand only\n      if(matched===0 && brand){\n        details.forEach(d=>{\n          const sum = d.querySelector('summary');\n          const text = (sum?.textContent || '').trim();\n          const dBrand = text.split('\u2014')[0].trim();\n          if(dBrand.toLowerCase() === brand.toLowerCase()){\n            d.open = true;\n            d.classList.remove('flash-highlight'); void d.offsetWidth; d.classList.add('flash-highlight');\n          }\n        });\n      }\n    }, 250); \/\/ delay to let filters render\n  }\n\n  \/\/ Listen clicks in the two matrix viewers (brand cell & service chips)\n  function wireMatrixViewer(viewerSel){\n    const viewer = document.querySelector(viewerSel);\n    if(!viewer) return;\n    viewer.addEventListener('click', (ev)=>{\n      const chip = ev.target.closest('.svc-chip');\n      if(chip){\n        const brand = chip.getAttribute('data-brand');\n        const svc = chip.getAttribute('data-svc');\n        openAndHighlight(brand, svc);\n        return;\n      }\n      \/\/ Brand cell click: first TD\n      const td = ev.target.closest('td');\n      if(td && td.parentElement && td.parentElement.firstElementChild === td){\n        const brand = (td.querySelector('strong')?.textContent || '').trim();\n        if(brand){\n          openAndHighlight(brand, '');\n        }\n      }\n    });\n  }\n  wireMatrixViewer('#matrixViewerSupply');\n  wireMatrixViewer('#matrixViewerBrands');\n\n  \/\/ Initial render of summary on DOM ready\n  document.addEventListener('DOMContentLoaded', renderSummary);\n  \/\/ Also run once after a tick (if script injected late)\n  setTimeout(renderSummary, 0);\n\n})();\n<\/script>\n\n\n\n\n<script>window.CABLES_DATA = [];<\/script>\n\n\n\n\n\n\n\n\n\n\n<script>\n(function(){\n  const $ = (s,ctx=document)=>ctx.querySelector(s);\n  const $$ = (s,ctx=document)=>Array.from(ctx.querySelectorAll(s));\n\n  \/\/ Asegurar estructuras globales\n  window.VMS_REQUEST_ITEMS = window.VMS_REQUEST_ITEMS || [];\n  window.VMS_REQUEST_ITEMS_KEYS = window.VMS_REQUEST_ITEMS_KEYS || new Set();\n\n  \/\/ Local helpers (reuse existing if defined)\n  const toast = (window.vmsToast) ? window.vmsToast : (m)=>console.log('[toast]',m);\n\n  function findMessageBox(){\n    const selectors = [\n      '#mensaje','#message','#quoteMessage','#requestMessage','#notes','#comments',\n      'textarea[name=\"mensaje\"]','textarea[name=\"message\"]','textarea[placeholder*=\"mensaje\"]','textarea'\n    ];\n    for(const sel of selectors){\n      const el = document.querySelector(sel);\n      if(el && el.tagName.toLowerCase()==='textarea') return el;\n    }\n    return null;\n  }\n\n  \/\/ Re-define renderRequestBullets to incluir \"Nota\"\n  window.renderRequestBullets = function renderRequestBullets(){\n    const box = findMessageBox();\n    if(!box) return;\n    const lines = window.VMS_REQUEST_ITEMS.map(it=>{\n      const parts = [];\n      if(it.serie) parts.push('Serie: '+it.serie);\n      if(it.tipo) parts.push('Tipo: '+it.tipo);\n      if(it.tension) parts.push('Tensi&oacute;n: '+it.tension);\n      if(it.construccion) parts.push('Construcci&oacute;n: '+it.construccion);\n      if(typeof it.qty !== 'undefined') parts.push('Cantidad: '+it.qty+' '+(it.unit||''));\n      if(it.nota) parts.push('Nota: '+it.nota);\n      const tail = parts.length ? ' &middot; ' + parts.join(' | ') : '';\n      return '- ' + it.marca + ' \u2014 ' + it.producto + tail;\n    });\n    box.value = lines.join('\\n');\n    box.dispatchEvent(new Event('input', {bubbles:true}));\n  };\n\n  \/\/ Re-define renderInteractiveList to agregar edici&oacute;n y notas\n  window.renderInteractiveList = function renderInteractiveList(){\n    const ul = $('#reqList');\n    if(!ul) return;\n    ul.innerHTML = '';\n    window.VMS_REQUEST_ITEMS.forEach((it, idx)=>{\n      const li = document.createElement('li');\n      li.dataset.id = it._id || '';\n\n      const summary = '- ' + it.marca + ' \u2014 ' + it.producto +\n        (it.serie||it.tipo||it.tension||it.construccion ? ' &middot; ' : '') +\n        [it.serie && ('Serie: '+it.serie), it.tipo && ('Tipo: '+it.tipo), it.tension && ('Tensi&oacute;n: '+it.tension), it.construccion && ('Construcci&oacute;n: '+it.construccion)]\n          .filter(Boolean).join(' | ') +\n        (it.qty?(' &middot; Cantidad: '+it.qty+' '+(it.unit||'')):'') +\n        (it.nota?(' &middot; Nota: '+it.nota):'');\n      const line = document.createElement('div'); line.className='req-line'; line.textContent = summary;\n\n      const qtyWrap = document.createElement('div'); qtyWrap.className='req-qty';\n      qtyWrap.innerHTML = `\n        <label>Cantidad<\/label>\n        <input type=\"number\" min=\"1\" step=\"1\" value=\"${it.qty || (it.producto && \/cable\/i.test(it.producto) ? 100 : 1)}\" \/>\n        <select>\n          <option value=\"pzas\"${(it.unit||'')==='pzas'?' selected':''}>pzas<\/option>\n          <option value=\"m\"${(it.unit||'m')==='m'?' selected':''}>m<\/option>\n        <\/select>\n      `;\n      const num = qtyWrap.querySelector('input[type=\"number\"]');\n      const sel = qtyWrap.querySelector('select');\n      const updateQty = ()=>{\n        const val = Math.max(1, parseInt(num.value||'1',10));\n        window.VMS_REQUEST_ITEMS[idx].qty = val;\n        window.VMS_REQUEST_ITEMS[idx].unit = sel.value || ( \/cable\/i.test(window.VMS_REQUEST_ITEMS[idx].producto||'') ? 'm' : 'pzas' );\n        window.renderRequestBullets();\n        \/\/ actualizar l&iacute;nea\n        window.renderInteractiveList();\n      };\n      num.addEventListener('change', updateQty);\n      sel.addEventListener('change', updateQty);\n\n      \/\/ Botones de acci&oacute;n: Editar y Nota\n      const actions = document.createElement('div'); actions.className='req-actions';\n      const btnEdit = document.createElement('button'); btnEdit.className='req-edit-btn'; btnEdit.type='button'; btnEdit.textContent='Editar';\n      const btnNote = document.createElement('button'); btnNote.className='req-note-btn'; btnNote.type='button'; btnNote.textContent='A&ntilde;adir nota';\n      actions.appendChild(btnEdit); actions.appendChild(btnNote);\n\n      \/\/ Bot&oacute;n eliminar existente\n      const btnDel = document.createElement('button'); btnDel.className='req-remove'; btnDel.title='Eliminar'; btnDel.textContent='\u00d7';\n\n      \/\/ Panel de edici&oacute;n\n      const edit = document.createElement('div'); edit.className='req-edit';\n      edit.innerHTML = `\n        <label>Serie<input type=\"text\" value=\"${it.serie||''}\" data-k=\"serie\"><\/label>\n        <label>Tipo<input type=\"text\" value=\"${it.tipo||''}\" data-k=\"tipo\"><\/label>\n        <label>Tensi&oacute;n<input type=\"text\" value=\"${it.tension||''}\" data-k=\"tension\"><\/label>\n        <label>Construcci&oacute;n<input type=\"text\" value=\"${it.construccion||''}\" data-k=\"construccion\"><\/label>\n      `;\n\n      \/\/ Panel de nota\n      const note = document.createElement('div'); note.className='req-note';\n      note.innerHTML = `<textarea placeholder=\"Notas de instalaci&oacute;n, entrega, ubicaci&oacute;n, etc.\">${it.nota||''}<\/textarea>`;\n\n      \/\/ Toggle edici&oacute;n\n      btnEdit.addEventListener('click', ()=>{\n        li.classList.toggle('open-edit');\n        if(li.classList.contains('open-edit')){\n          btnEdit.textContent = 'Ocultar edici&oacute;n';\n        } else {\n          btnEdit.textContent = 'Editar';\n        }\n      });\n\n      \/\/ Toggle nota\n      btnNote.addEventListener('click', ()=>{\n        li.classList.toggle('open-note');\n        if(li.classList.contains('open-note')){\n          btnNote.textContent = 'Ocultar nota';\n        } else {\n          btnNote.textContent = 'A&ntilde;adir nota';\n        }\n      });\n\n      \/\/ Guardado live de edici&oacute;n\n      edit.querySelectorAll('input[type=\"text\"]').forEach(inp=>{\n        inp.addEventListener('change', ()=>{\n          const k = inp.getAttribute('data-k');\n          window.VMS_REQUEST_ITEMS[idx][k] = inp.value.trim();\n          window.renderRequestBullets();\n          window.renderInteractiveList();\n          toast('Actualizado', 'success');\n        });\n      });\n\n      \/\/ Guardado live de nota\n      const noteArea = note.querySelector('textarea');\n      noteArea.addEventListener('input', ()=>{\n        window.VMS_REQUEST_ITEMS[idx].nota = noteArea.value;\n        window.renderRequestBullets();\n      });\n\n      \/\/ Eliminar\n      btnDel.addEventListener('click', ()=>{\n        window.VMS_REQUEST_ITEMS.splice(idx,1);\n        window.VMS_REQUEST_ITEMS_KEYS = new Set(window.VMS_REQUEST_ITEMS.map(x=>JSON.stringify({...x, qty:undefined, unit:undefined, nota:undefined})));\n        window.renderInteractiveList();\n        window.renderRequestBullets();\n        toast('&Iacute;tem eliminado', 'info');\n      });\n\n      li.appendChild(line);\n      li.appendChild(qtyWrap);\n      li.appendChild(actions);\n      li.appendChild(btnDel);\n      li.appendChild(edit);\n      li.appendChild(note);\n      ul.appendChild(li);\n    });\n  };\n\n  \/\/ Inicializa\/Refresca\n  document.addEventListener('DOMContentLoaded', ()=>{\n    if(window.renderInteractiveList) window.renderInteractiveList();\n    if(window.renderRequestBullets) window.renderRequestBullets();\n  });\n  setTimeout(()=>{ if(window.renderInteractiveList) window.renderInteractiveList(); }, 600);\n\n})();\n<\/script>\n\n<script>\n(function(){\n  const $ = (s,ctx=document)=>ctx.querySelector(s);\n  const $$ = (s,ctx=document)=>Array.from(ctx.querySelectorAll(s));\n  const toast = (window.vmsToast) ? window.vmsToast : (m)=>console.log('[toast]',m);\n\n  \/\/ Ensure container header with totals\n  function ensureTotalsHeader(){\n    const wrap = document.getElementById('reqInteractiveList');\n    if(!wrap) return;\n    if(!wrap.querySelector('header')){\n      const h = document.createElement('header');\n      h.innerHTML = '<strong>Resumen de solicitud<\/strong><div class=\"reqTotals-inline\"><\/div>';\n      wrap.insertAdjacentElement('afterbegin', h);\n      \/\/ mover t&iacute;tulo anterior si existe\n      const oldH4 = wrap.querySelector('h4');\n      if(oldH4) oldH4.remove();\n    }\n  }\n\n  function updateReqTotals(){\n    ensureTotalsHeader();\n    const box = document.getElementById('reqTotals');\n    if(!box) return;\n    const items = (window.VMS_REQUEST_ITEMS || []);\n    const brands = new Set(items.map(it=>it.marca).filter(Boolean));\n    \/\/ m&eacute;tricas por tipo\n    let totalM = 0, totalPzas = 0, cableBrands = new Set(), otherBrands = new Set();\n    items.forEach(it=>{\n      const isCable = \/cable\/i.test(it.producto||'');\n      const qty = Number(it.qty||0);\n      const unit = (it.unit||'').toLowerCase();\n      if(isCable){\n        if(unit==='m') totalM += qty;\n        else totalPzas += qty || 0; \/\/ por si alguien cambi&oacute; a pzas\n        if(it.marca) cableBrands.add(it.marca);\n      } else {\n        if(unit==='m') totalM += qty;\n        else totalPzas += qty || 0;\n        if(it.marca) otherBrands.add(it.marca);\n      }\n    });\n    const chips = [];\n    if(cableBrands.size>0 || totalM>0){\n      chips.push(`<span class=\"tot-chip\">Cables: <strong>${totalM}<\/strong> m &middot; <strong>${cableBrands.size}<\/strong> marcas<\/span>`);\n    }\n    if(totalPzas>0){\n      chips.push(`<span class=\"tot-chip\">Otros: <strong>${totalPzas}<\/strong> pzas &middot; <strong>${otherBrands.size}<\/strong> marcas<\/span>`);\n    }\n    chips.push(`<span class=\"tot-chip\">&Iacute;tems: <strong>${items.length}<\/strong><\/span>`);\n    chips.push(`<span class=\"tot-chip\">Marcas &uacute;nicas: <strong>${brands.size}<\/strong><\/span>`);\n    box.innerHTML = chips.join('');\n  }\n  window.updateReqTotals = updateReqTotals;\n\n  \/\/ Override renderInteractiveList to add drag handles and call totals\n  const prevRenderInteractiveList = window.renderInteractiveList;\n  window.renderInteractiveList = function renderInteractiveList915(){\n    if (typeof prevRenderInteractiveList === 'function') {\n      \/\/ call previous to build content\n      prevRenderInteractiveList();\n    }\n    ensureTotalsHeader();\n    \/\/ augment each li with drag handle\n    const ul = document.getElementById('reqList');\n    if(!ul) return;\n    \/\/ add handles if not present\n    ul.querySelectorAll('li').forEach((li, idx)=>{\n      if(li.querySelector('.req-drag')) return;\n      const btn = document.createElement('button');\n      btn.className = 'req-drag';\n      btn.type='button';\n      btn.title='Arrastrar para reordenar';\n      btn.textContent = '?';\n      \/\/ prepend\n      li.insertBefore(btn, li.firstChild);\n      \/\/ set draggable on li\n      li.setAttribute('draggable','true');\n    });\n\n    \/\/ DnD events\n    let dragSrcIndex = null;\n    ul.querySelectorAll('li').forEach((li, idx)=>{\n      li.addEventListener('dragstart', (e)=>{\n        dragSrcIndex = idx;\n        e.dataTransfer.effectAllowed = 'move';\n        try{ e.dataTransfer.setData('text\/plain', String(idx)); }catch(_){}\n      });\n      li.addEventListener('dragover', (e)=>{ e.preventDefault(); li.classList.add('drag-over'); });\n      li.addEventListener('dragleave', ()=> li.classList.remove('drag-over'));\n      li.addEventListener('drop', (e)=>{\n        e.preventDefault();\n        li.classList.remove('drag-over');\n        let targetIndex = Array.from(ul.children).indexOf(li);\n        if(dragSrcIndex === null || targetIndex === -1 || targetIndex === dragSrcIndex) return;\n        const arr = window.VMS_REQUEST_ITEMS || [];\n        if(dragSrcIndex<0 || dragSrcIndex>=arr.length) return;\n        const [moved] = arr.splice(dragSrcIndex,1);\n        arr.splice(targetIndex,0,moved);\n        \/\/ re-render everything\n        if(window.renderInteractiveList) window.renderInteractiveList();\n        if(window.renderRequestBullets) window.renderRequestBullets();\n        updateReqTotals();\n        if(window.vmsToast) window.vmsToast('&Iacute;tem reordenado', 'info');\n      });\n      li.addEventListener('dragend', ()=>{ ul.querySelectorAll('.drag-over').forEach(x=>x.classList.remove('drag-over')); });\n    });\n\n    updateReqTotals();\n  };\n\n  \/\/ Patch renderRequestBullets to also refresh totals\n  const prevRenderBullets = window.renderRequestBullets;\n  window.renderRequestBullets = function(){\n    if (typeof prevRenderBullets === 'function') prevRenderBullets();\n    updateReqTotals();\n  };\n\n  \/\/ Initial hook\n  document.addEventListener('DOMContentLoaded', ()=>{\n    if(window.renderInteractiveList) window.renderInteractiveList();\n    if(window.renderRequestBullets) window.renderRequestBullets();\n  });\n  setTimeout(()=>{ if(window.renderInteractiveList) window.renderInteractiveList(); }, 700);\n\n})();\n<\/script>\n\n\n\n\n\n<script>\n(function(){\n  const $ = (s,ctx=document)=>ctx.querySelector(s);\n  const $$ = (s,ctx=document)=>Array.from(ctx.querySelectorAll(s));\n\n  \/\/ ---------- Helpers ----------\n  function debounce(fn, wait){ let t; return (...a)=>{ clearTimeout(t); t=setTimeout(()=>fn(...a), wait); }; }\n\n  \/\/ ---------- Strict filter (Marca + Servicio) ----------\n  function matchesStrict(detailEl, brand, gen, spec){\n    if(brand){\n      const sum = detailEl.querySelector('summary');\n      const txt = (sum?.textContent || '').trim();\n      const dBrand = txt.split('\u2014')[0].trim();\n      if(dBrand !== brand) return false;\n    }\n    if(gen){\n      const svcs = (detailEl.getAttribute('data-svcs')||'').split('|').map(s=>s.trim());\n      if(spec){\n        return svcs.includes(gen+': '+spec) || svcs.includes(gen+':'+spec);\n      } else {\n        return svcs.some(s=> s.startsWith(gen+':'));\n      }\n    }\n    return true;\n  }\n  function readStrictState(){\n    let gen = $('#svcGeneral')?.value || '';\n    const spec = $('#svcEspecifico')?.value || '';\n    if(gen && \/capacita\/i.test(gen)) gen = 'Capacitaci&oacute;n';\n    return {strict: $('#strictExactMatch')?.checked || false, brand: $('#brandFilter')?.value || '', gen, spec};\n  }\n  const applyStrict = debounce(()=>{\n    const acc = $('#prodAccordion');\n    if(!acc) return;\n    const st = readStrictState();\n    if(!st.strict){\n      acc.querySelectorAll('details.strict-hidden').forEach(d=> d.classList.remove('strict-hidden'));\n      updateVisibleCount();\n      return;\n    }\n    acc.querySelectorAll('details').forEach(d=>{\n      d.classList.toggle('strict-hidden', !matchesStrict(d, st.brand, st.gen, st.spec));\n    });\n    updateVisibleCount();\n  }, 80);\n\n  \/\/ ---------- Active filters summary (simple, no observers) ----------\n  function renderSummary(){\n    const box = $('#activeFilters'); if(!box) return;\n    const brand = $('#brandFilter')?.value || '';\n    const product = $('#productFilter')?.value || '';\n    const svcGen = $('#svcGeneral')?.value || '';\n    const svcSpec = $('#svcEspecifico')?.value || '';\n    const avail = $('#availabilityFilter')?.value || '';\n    const q = $('#searchModel')?.value || '';\n    const chips=[];\n    function chip(k,label,val){ if(!val) return; chips.push(`<span class=\"filter-chip\" data-k=\"${k}\">${label}: <strong>${val}<\/strong><\/span>`); }\n    chip('brand','Marca',brand); chip('product','Suministro t&eacute;cnico',product); chip('svcGen','Servicio',svcGen); chip('svcSpec','Espec&iacute;fico',svcSpec); chip('avail','Disp',avail); chip('q','B&uacute;squeda',q);\n    box.innerHTML = chips.join('') + '<span id=\"filtersCounter\" style=\"margin-left:auto;font-weight:700\"><\/span>';\n    updateVisibleCount();\n  }\n  const renderSummaryDebounced = debounce(renderSummary, 50);\n  function updateVisibleCount(){\n    const acc = $('#prodAccordion'); if(!acc) return;\n    let n=0;\n    acc.querySelectorAll('details').forEach(d=>{\n      if(d.classList.contains('strict-hidden')) return;\n      n += d.querySelectorAll('ul>li').length;\n      n += d.querySelectorAll('table.cable-table tbody tr').length;\n    });\n    const c = $('#filtersCounter'); if(c) c.textContent = 'Mostrando ' + n + ' &iacute;tems';\n  }\n\n  \/\/ ---------- Cables (render once, no observers) ----------\n  function renderCablesOnce(){\n    if(!Array.isArray(window.CABLES_DATA)) return;\n    const acc = $('#prodAccordion'); if(!acc) return;\n    if(acc.querySelector('details[data-cables-perf]')) return;\n    \/\/ group by brand\n    const byBrand = {};\n    window.CABLES_DATA.forEach(r=>{\n      const m=(r.Marca||'Cable').trim();\n      (byBrand[m]=byBrand[m]||[]).push(r);\n    });\n    Object.entries(byBrand).forEach(([marca,rows])=>{\n      const det = document.createElement('details'); det.setAttribute('data-cables-perf','1');\n      det.setAttribute('data-svcs','Suministro:Cables de potencia');\n      const sum = document.createElement('summary'); sum.textContent = marca + ' \u2014 Cables BT\/MT'; det.appendChild(sum);\n      const table = document.createElement('table'); table.className='cable-table';\n      const heads = ['Serie','Tipo','Tension','Construccion'];\n      const present = heads.filter(h=> rows.some(r=> (r[h]||'').toString().trim().length>0 ));\n      const thead = document.createElement('thead'); thead.innerHTML = '<tr>' + present.map(c=>'<th>'+ (c==='Tension'?'Tensi&oacute;n':(c==='Construccion'?'Construcci&oacute;n':c)) +'<\/th>').join('') + '<th>Disponibilidad<\/th><\/tr>'; table.appendChild(thead);\n      const tbody = document.createElement('tbody');\n      rows.forEach(r=>{\n        const tr = document.createElement('tr');\n        tr.innerHTML = present.map(c=>'<td>'+(r[c]||'\u2014')+'<\/td>').join('') + '<td><span class=\"avail avail--no\">Sobre Pedido<\/span><\/td>';\n        tbody.appendChild(tr);\n      });\n      table.appendChild(tbody); det.appendChild(table); acc.appendChild(det);\n    });\n    updateVisibleCount();\n  }\n\n  \/\/ ---------- Wire events (no observers) ----------\n  function wire(){\n    \/\/ Strict\n    ['brandFilter','productFilter','svcGeneral','svcEspecifico','availabilityFilter'].forEach(id=>{\n      const el = document.getElementById(id); if(el) el.addEventListener('change', ()=>{ renderSummaryDebounced(); applyStrict(); });\n    });\n    const s = $('#searchModel'); if(s) s.addEventListener('input', ()=>{ renderSummaryDebounced(); if($('#strictExactMatch')?.checked) applyStrict(); });\n    const strict = $('#strictExactMatch'); if(strict) strict.addEventListener('change', ()=> applyStrict());\n    \/\/ Summary chips -> activar filtros de Servicios (simple)\n    function mapSvc(v){ v=(v||'').toLowerCase(); if(v.startsWith('sumin') || v.startsWith('suppl') || v.startsWith('serv')) return 'Servicios'; if(v.startsWith('manten') || v.startsWith('maint')) return 'Mantenimiento'; if(v.startsWith('ingen') || v.startsWith('engin')) return 'Ingenier&iacute;a'; if(v.startsWith('capac') || v.startsWith('train')) return 'Capacitaci&oacute;n'; return ''; }\n    $('#activeFilters')?.addEventListener('click', (ev)=>{\n      const chip = ev.target.closest('.filter-chip'); if(!chip) return;\n      const k = chip.getAttribute('data-k'); if(!k) return;\n      if(k==='svcGen' || k==='svcSpec'){\n        const label = chip.querySelector('strong')?.textContent || '';\n        const m = mapSvc(label); if(m){ const b = Array.from(document.querySelectorAll('input[name=\"svc-type\"]')).find(i=>i.value===m); if(b){ b.checked=true; b.dispatchEvent(new Event('change',{bubbles:true})); } }\n      }\n    });\n    \/\/ Click en filas de cables (delegado)\n    const acc = $('#prodAccordion');\n    acc && acc.addEventListener('click', (ev)=>{\n      const tr = ev.target.closest('details[data-cables-perf] table.cable-table tbody tr'); if(!tr) return;\n      const details = tr.closest('details');\n      const brand = (details.querySelector('summary')?.textContent || '').split('\u2014')[0].trim();\n      const product = 'Cables BT\/MT';\n      const needSel = $('#need'), brandSel = $('#brand'), prodSel = $('#product');\n      if(needSel){ needSel.value='Suministro'; needSel.dispatchEvent(new Event('change',{bubbles:true})); }\n      function ensureOpt(sel,val){ if(!sel) return; if(!Array.from(sel.options).some(o=>o.value===val)){ const op=document.createElement('option'); op.value=val; op.textContent=val; sel.appendChild(op);} }\n      ensureOpt(brandSel,brand); ensureOpt(prodSel,product);\n      if(brandSel){ brandSel.value = brand; brandSel.dispatchEvent(new Event('change',{bubbles:true})); }\n      if(prodSel){ prodSel.value = product; prodSel.dispatchEvent(new Event('change',{bubbles:true})); }\n      \/\/ basic toast (if present)\n      if(window.vmsToast) window.vmsToast('Agregado: '+brand+' \u2014 '+product,'success');\n    });\n  }\n\n  \/\/ ---------- Boot ----------\n  document.addEventListener('DOMContentLoaded', ()=>{\n    renderCablesOnce();\n    renderSummary();\n    applyStrict();\n    wire();\n  });\n\n  \/\/ === Autocompletado asistido (dropdown de sugerencias) ===\n  const suggestionBox = document.querySelector('#modelSuggestions');\n  function renderSuggestions(list){\n    if (!Array.isArray(list) || !list.length){\n      suggestionBox.style.display = 'none';\n      return;\n    }\n    suggestionBox.innerHTML = '';\n    list.forEach((x, idx)=>{\n      const li = document.createElement('li');\n      li.setAttribute('data-idx', String(idx));\n      li.style.padding = '8px 10px';\n      li.style.cursor = 'pointer';\n      li.style.borderBottom = '1px solid rgba(15,76,129,.08)';\n      li.innerHTML = `<strong>${x.model}<\/strong> <small style=\"color:#475569\">(${x.s} \u203a ${x.m} \u203a ${x.f})<\/small>`;\n      li.addEventListener('mouseenter', ()=>{ li.style.background = 'rgba(15,76,129,.06)'; });\n      li.addEventListener('mouseleave', ()=>{ li.style.background = ''; });\n      li.addEventListener('click', ()=> applySuggestion(x));\n      suggestionBox.appendChild(li);\n    });\n    suggestionBox.style.display = 'block';\n  }\n\n  function collectMatches(q, limit=8){\n    const matches = [];\n    for (const [s, sNode] of Object.entries(DB.Suministro || {})) {\n      for (const [cat, cNode] of Object.entries(sNode['Categor&iacute;as'] || {})) {\n        for (const [m, mNode] of Object.entries(cNode['Marcas'] || {})) {\n          for (const [f, fNode] of Object.entries(mNode['Familias'] || {})) {\n            for (const model of (fNode['Modelos'] || [])) {\n              if (String(model).toLowerCase().includes(q)){\n                matches.push({s, cat, m, f, model});\n                if (matches.length >= limit) return matches;\n              }\n            }\n          }\n        }\n      }\n    }\n    return matches;\n  }\n\n  function applySuggestion(x){\n    quickSearch.value = x.model;\n    \/\/ Autocompletar jerarqu&iacute;a\n    selSupply.value = x.s;\n    const cats = Object.keys(DB.Suministro[x.s]['Categor&iacute;as'] || {});\n    fillOptions(selCat, cats);\n    selCat.value = x.cat;\n    const brands = Object.keys(DB.Suministro[x.s]['Categor&iacute;as'][x.cat]['Marcas'] || {});\n    fillOptions(selBrand, brands);\n    selBrand.value = x.m;\n    const fams = Object.keys(DB.Suministro[x.s]['Categor&iacute;as'][x.cat]['Marcas'][x.m]['Familias'] || {});\n    fillOptions(selFamily, fams);\n    selFamily.value = x.f;\n    const node = DB.Suministro[x.s]['Categor&iacute;as'][x.cat]['Marcas'][x.m]['Familias'][x.f] || {};\n    fillOptions(selDesc, node['Descripciones'] || []);\n    fillOptions(selModel, node['Modelos'] || []);\n    selModel.value = x.model;\n    suggestionBox.style.display = 'none';\n    quickSearch.classList.add('flash-highlight');\n    setTimeout(()=>quickSearch.classList.remove('flash-highlight'), 1000);\n  }\n\n  \/\/ Integraci&oacute;n con input existente\n  if (quickSearch && suggestionBox){\n    quickSearch.addEventListener('input', (e)=>{\n      const q = e.target.value.trim().toLowerCase();\n      if (q.length < 2){ suggestionBox.style.display='none'; return; }\n      const matches = collectMatches(q, 8);\n      renderSuggestions(matches);\n    });\n    \/\/ Navegaci&oacute;n con teclado\n    quickSearch.addEventListener('keydown', (e)=>{\n      if (suggestionBox.style.display !== 'block') return;\n      const items = Array.from(suggestionBox.querySelectorAll('li'));\n      if (!items.length) return;\n      const current = suggestionBox.querySelector('li[aria-selected=\"true\"]');\n      let idx = current ? items.indexOf(current) : -1;\n      if (e.key === 'ArrowDown'){\n        e.preventDefault();\n        idx = Math.min(idx + 1, items.length - 1);\n        items.forEach(li=>li.removeAttribute('aria-selected'));\n        items[idx].setAttribute('aria-selected','true');\n        items[idx].scrollIntoView({block:'nearest'});\n      } else if (e.key === 'ArrowUp'){\n        e.preventDefault();\n        idx = Math.max(idx - 1, 0);\n        items.forEach(li=>li.removeAttribute('aria-selected'));\n        items[idx].setAttribute('aria-selected','true');\n        items[idx].scrollIntoView({block:'nearest'});\n      } else if (e.key === 'Enter'){\n        if (idx >= 0){\n          e.preventDefault();\n          const text = items[idx].textContent.trim();\n          \/\/ Buscar objeto por modelo exacto en matches actuales\n          const q = quickSearch.value.trim().toLowerCase();\n          const matches = collectMatches(q, 50);\n          const x = matches.find(mm => text.startsWith(mm.model));\n          if (x) applySuggestion(x);\n        }\n      } else if (e.key === 'Escape'){\n        suggestionBox.style.display = 'none';\n      }\n    });\n    \/\/ Cerrar al clicar fuera\n    document.addEventListener('click', (ev)=>{\n      if (!ev.target.closest('#quickSearchBlock')) suggestionBox.style.display='none';\n    });\n  }\n\n})();\n<\/script>\n\n<script>\n\/* v9.18-layout-fix: Ordenar -> Valores & Pol&iacute;tica integral -> Hitos -> CTA *\/\n(function(){\n  function qh(sel, re){\n    re = (re instanceof RegExp) ? re : new RegExp(re, 'i');\n    const nodes = Array.from(document.querySelectorAll(sel));\n    return nodes.find(n => re.test((n.textContent||'').trim()));\n  }\n  function findSectionByHeading(pattern){\n    const h = qh('h1,h2,h3', pattern);\n    return h ? (h.closest('section') || h.closest('.section') || h.closest('div')) : null;\n  }\n  function findBlockByButton(text){\n    const btn = Array.from(document.querySelectorAll('a,button')).find(el => new RegExp(text,'i').test(el.textContent||''));\n    return btn ? (btn.closest('section') || btn.closest('.section') || btn.closest('div')) : null;\n  }\n  function moveAfter(node, ref){\n    if(!node || !ref || !ref.parentNode) return;\n    if(ref.nextSibling) ref.parentNode.insertBefore(node, ref.nextSibling);\n    else ref.parentNode.appendChild(node);\n  }\n  document.addEventListener('DOMContentLoaded', function(){\n    const valores = findSectionByHeading(\/Valores\\\\s*&\\\\s*Pol[i&iacute;]tica integral\/);\n    const hitos   = findSectionByHeading(\/Hitos de nuestra trayectoria\/);\n    const cta     = findBlockByButton('Solicitar Evaluaci&oacute;n de Proyecto');\n\n    if(valores && hitos){\n      const isBelow = (valores.compareDocumentPosition(hitos) & Node.DOCUMENT_POSITION_FOLLOWING) !== 0;\n      if(isBelow){ hitos.parentNode.insertBefore(valores, hitos); }\n    }\n    if(hitos && cta){\n      const ctaBeforeHitos = (cta.compareDocumentPosition(hitos) & Node.DOCUMENT_POSITION_FOLLOWING) === 0;\n      if(ctaBeforeHitos){ moveAfter(cta, hitos); }\n    }\n    if(hitos && !hitos.id){ hitos.id = 'hitos-cta'; }\n  });\n\n})();\n<\/script>\n\n\n<script>\nwindow.dataLayer = window.dataLayer || [];\nfunction track(event, params){ try{ window.dataLayer.push(Object.assign({event}, params||{})); }catch(e){} }\n\n\/\/ Track CTA clicks by data-cta\ndocument.addEventListener('click', function(e){\n  var a = e.target.closest('[data-cta]');\n  if(a){ track('cta_click', {cta: a.getAttribute('data-cta'), href: a.getAttribute('href')}); }\n});\n<\/script>\n\n<style>\n.sticky-actions{\n  position:fixed;\n  left:0;\n  right:0;\n  bottom:14px;\n  z-index:9999;\n  display:block !important;\n  visibility:visible !important;\n  opacity:1 !important;\n  pointer-events:none;\n}\n.sticky-actions__btn{\n  position:absolute;\n  bottom:0;\n  pointer-events:auto;\n  display:inline-flex;\n  align-items:center;\n  gap:8px;\n  padding:10px 14px;\n  border-radius:999px;\n  color:#fff;\n  text-decoration:none;\n  font-weight:700;\n  box-shadow:0 10px 24px rgba(0,0,0,.28);\n  border:1px solid rgba(255,255,255,.2);\n}\n.sticky-actions__btn--left{\n  left:14px;\n  background:#25D366;\n}\n.sticky-actions__btn--right{\n  right:14px;\n  background:#172C51;\n}\n.sticky-actions__icon{\n  width:18px;\n  height:18px;\n  display:block;\n  flex:0 0 18px;\n}\n.moreinfo-modal{\n  position:fixed;\n  inset:0;\n  z-index:110;\n  display:none;\n}\n.moreinfo-modal.is-open{\n  display:block;\n}\n.moreinfo-modal__backdrop{\n  position:absolute;\n  inset:0;\n  background:rgba(10,22,43,.62);\n}\n.moreinfo-modal__dialog{\n  position:relative;\n  width:min(92vw, 520px);\n  margin:7vh auto 0;\n  background:var(--concept-primary);\n  border:1px solid rgba(255,255,255,.18);\n  border-radius:12px;\n  box-shadow:0 18px 56px rgba(0,0,0,.45);\n  padding:14px;\n}\n.moreinfo-modal__head{\n  display:flex;\n  align-items:center;\n  justify-content:space-between;\n  margin:0 0 10px;\n}\n.moreinfo-modal__title{\n  margin:0;\n  color:#fff;\n  font-size:22px;\n}\n.moreinfo-modal__close{\n  border:1px solid rgba(255,255,255,.35);\n  background:transparent;\n  color:#fff;\n  border-radius:8px;\n  width:34px;\n  height:34px;\n  cursor:pointer;\n  font-size:20px;\n  line-height:1;\n}\n.moreinfo-form{\n  display:grid;\n  gap:10px;\n}\n.moreinfo-form .input,\n.moreinfo-form select{\n  border-radius:8px;\n  border:1px solid rgba(255,255,255,.18);\n}\n.moreinfo-form .btn{\n  justify-content:center;\n}\n.moreinfo-form__feedback{\n  margin:0;\n  color:#dbeafe;\n  font-size:13px;\n  min-height:18px;\n}\n@media (max-width:640px){\n  .sticky-actions__btn{\n    padding:9px 12px;\n    font-size:13px;\n    gap:6px;\n  }\n  .sticky-actions__icon{\n    width:16px;\n    height:16px;\n    flex-basis:16px;\n  }\n}\n<\/style>\n\n<style id=\"hide-legacy-sections\">\n  #servicios-legacy,\n  #contacto {\n    display: none !important;\n  }\n<\/style>\n\n<div class=\"quicklead-modal\" id=\"quickLeadModal\" aria-hidden=\"true\">\n  <div class=\"quicklead-modal__backdrop\" data-close-modal=\"quickLeadModal\"><\/div>\n  <section class=\"quicklead-modal__dialog\" role=\"dialog\" aria-modal=\"true\" aria-labelledby=\"quickLeadTitle\">\n    <button class=\"quicklead-modal__close\" type=\"button\" aria-label=\"Cerrar formulario\" data-close-modal=\"quickLeadModal\">&times;<\/button>\n    <h2 class=\"quicklead-modal__title\" id=\"quickLeadTitle\">Consulta a un especialista<\/h2>\n    <form class=\"quicklead-form\" id=\"quickLeadForm\" novalidate>\n      <input type=\"text\" id=\"qlName\" name=\"nombre\" placeholder=\"Nombre completo\" autocomplete=\"name\" required>\n      <input type=\"email\" id=\"qlEmail\" name=\"email\" placeholder=\"Correo electr&oacute;nico\" autocomplete=\"email\" required>\n      <input type=\"text\" id=\"qlEmpresa\" name=\"empresa\" placeholder=\"Empresa\" autocomplete=\"organization\" required>\n      <textarea id=\"qlMessage\" name=\"mensaje\" placeholder=\"Descripci&oacute;n breve\"><\/textarea>\n      <p class=\"quicklead-form__feedback\" id=\"quickLeadFeedback\" aria-live=\"polite\"><\/p>\n      <button class=\"quicklead-form__send\" type=\"submit\">Enviar<\/button>\n    <\/form>\n  <\/section>\n<\/div>\n<script id=\"quicklead-runtime\">\n(function(){\n  function openModal(modal){ if(!modal) return; modal.classList.add('is-open'); modal.setAttribute('aria-hidden','false'); document.body.style.overflow='hidden'; }\n  function closeModal(modal){ if(!modal) return; modal.classList.remove('is-open'); modal.setAttribute('aria-hidden','true'); document.body.style.overflow=''; }\n\n  document.addEventListener('click', function(e){\n    var openBtn = e.target.closest('[data-cta=\"sticky-more-info\"]');\n    if(openBtn){ e.preventDefault(); openModal(document.getElementById('quickLeadModal')); return; }\n    var closeBtn = e.target.closest('[data-close-modal=\"quickLeadModal\"]');\n    if(closeBtn){ e.preventDefault(); closeModal(document.getElementById('quickLeadModal')); }\n  });\n\n  document.addEventListener('keydown', function(e){\n    if(e.key==='Escape') closeModal(document.getElementById('quickLeadModal'));\n  });\n\n  var form = document.getElementById('quickLeadForm');\n  var feedback = document.getElementById('quickLeadFeedback');\n  if(form) form.addEventListener('submit', function(e){\n    e.preventDefault(); if(feedback) feedback.textContent='';\n    var name=(document.getElementById('qlName').value||'').trim();\n    var email=(document.getElementById('qlEmail').value||'').trim();\n    var empresa=(document.getElementById('qlEmpresa').value||'').trim();\n    var message=(document.getElementById('qlMessage').value||'').trim();\n    if(!name||!email||!empresa){ if(feedback) feedback.textContent='Completa nombre, correo y empresa.'; return; }\n    var bodyLines=['Nombre: '+name,'Correo: '+email,'Empresa: '+empresa,'Descripcion: '+(message||'Sin descripcion')];\n    window.location.href='mailto:contacto@vmsenergy.com?subject='+encodeURIComponent('Lead web - Formulario basico')+'&body='+encodeURIComponent(bodyLines.join('\\n'));\n    closeModal(document.getElementById('quickLeadModal')); form.reset();\n  });\n})();\n<\/script>\n<div class=\"sticky-actions\" aria-label=\"Acciones r&aacute;pidas\">\n  <a class=\"sticky-actions__btn sticky-actions__btn--left\" href=\"https:\/\/wa.me\/523332582234\" target=\"_blank\" rel=\"noopener noreferrer\" data-cta=\"sticky-whatsapp\">\n    <svg class=\"sticky-actions__icon\" viewBox=\"0 0 32 32\" aria-hidden=\"true\">\n      <path fill=\"#fff\" d=\"M19.11 17.35c-.3-.15-1.77-.87-2.04-.97-.27-.1-.47-.15-.67.15-.2.3-.77.97-.94 1.17-.17.2-.35.22-.65.07-.3-.15-1.26-.47-2.4-1.5-.89-.8-1.49-1.79-1.66-2.09-.17-.3-.02-.46.13-.61.13-.13.3-.35.45-.52.15-.17.2-.3.3-.5.1-.2.05-.37-.02-.52-.07-.15-.67-1.61-.92-2.2-.24-.58-.49-.5-.67-.5h-.57c-.2 0-.52.07-.79.37-.27.3-1.04 1.02-1.04 2.5 0 1.47 1.07 2.9 1.22 3.1.15.2 2.1 3.2 5.08 4.48.71.3 1.26.48 1.69.62.71.22 1.36.19 1.87.12.57-.09 1.77-.72 2.02-1.42.25-.69.25-1.29.17-1.42-.07-.13-.27-.2-.57-.35z\"\/>\n      <path fill=\"#fff\" d=\"M16.02 3.2C8.95 3.2 3.2 8.95 3.2 16.02c0 2.26.6 4.47 1.73 6.41L3 29l6.76-1.76a12.8 12.8 0 0 0 6.26 1.62h.01c7.07 0 12.82-5.75 12.82-12.82S23.1 3.2 16.02 3.2zm0 23.44h-.01c-1.92 0-3.8-.52-5.43-1.5l-.39-.23-4.01 1.04 1.07-3.91-.25-.4a10.58 10.58 0 0 1-1.62-5.62c0-5.86 4.77-10.63 10.64-10.63 2.84 0 5.5 1.11 7.5 3.11 2 2 3.1 4.67 3.1 7.51 0 5.86-4.77 10.63-10.63 10.63z\"\/>\n    <\/svg>\n    Contactanos\n  <\/a>\n  <a class=\"sticky-actions__btn sticky-actions__btn--right\" href=\"#quickLeadModal\" data-cta=\"sticky-more-info\">\n    <svg class=\"sticky-actions__icon\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n      <path fill=\"#fff\" d=\"M2 6.75A2.75 2.75 0 0 1 4.75 4h14.5A2.75 2.75 0 0 1 22 6.75v10.5A2.75 2.75 0 0 1 19.25 20H4.75A2.75 2.75 0 0 1 2 17.25V6.75zm2.75-.75a.75.75 0 0 0-.75.75v.2l8 4.8 8-4.8v-.2a.75.75 0 0 0-.75-.75H4.75zm15.25 3.28-7.48 4.49a1 1 0 0 1-1.04 0L4 9.28v7.97c0 .41.34.75.75.75h14.5c.41 0 .75-.34.75-.75V9.28z\"\/>\n    <\/svg>\n    M&aacute;s informaci&oacute;n\n  <\/a>\n<\/div>\n<script>\n(function(){\n  const form = document.getElementById('supplyFormV9_20');\n  if(!form) return;\n\n  function getUTMs(){\n    const p = new URLSearchParams(location.search);\n    const out = {};\n    ['utm_source','utm_medium','utm_campaign','utm_term','utm_content'].forEach(k=>{ if(p.get(k)) out[k]=p.get(k); });\n    return out;\n  }\n  function toast(msg, type){\n    const stack = document.getElementById('toasts'); if(!stack) return;\n    const el = document.createElement('div');\n    el.className = 'toast toast--'+(type||'info');\n    el.innerHTML = '<span class=\"toast__icon\">?<\/span><span>'+msg+'<\/span><div class=\"toast__bar\" style=\"animation-duration:3000ms\"><\/div>';\n    stack.appendChild(el);\n    requestAnimationFrame(()=>el.classList.add('show'));\n    setTimeout(()=>{ el.classList.remove('show'); setTimeout(()=>el.remove(),300); }, 3200);\n  }\n\n  function getSelectVal(id){ const el = document.getElementById(id); return el ? el.value : ''; }\n\n  form.addEventListener('submit', function(ev){\n    ev.preventDefault();\n\n    const payload = {\n      email: document.getElementById('email')?.value || '',\n      suministro: getSelectVal('supplyType'),\n      categoria: getSelectVal('category'),\n      marca: getSelectVal('brand'),\n      familia: getSelectVal('family'),\n      descripcion: getSelectVal('description'),\n      modelo: getSelectVal('model'),\n      utm: getUTMs(),\n      timestamp: new Date().toISOString()\n    };\n\n    \/\/ Basic client validation\n    if(!payload.email || !payload.suministro || !payload.categoria || !payload.marca || !payload.familia || !payload.descripcion || !payload.modelo){\n      toast('Por favor completa todos los campos antes de enviar.', 'info');\n      return;\n    }\n\n    track('form_submit', {form_id:'supplyFormV9_20', ...payload});\n\n    \/\/ Simulated POST (replace with real endpoint)\n    \/\/ fetch('\/api\/lead', {method:'POST', headers:{'Content-Type':'application\/json'}, body: JSON.stringify(payload)})\n    \/\/   .then(r=>r.ok ? r.json() : Promise.reject(r.status))\n    \/\/   .then(()=>{ toast('&iexcl;Solicitud enviada! Te contactaremos en breve.', 'success'); })\n    \/\/   .catch(()=>{ toast('No se pudo enviar. Intenta nuevamente.', 'info'); });    var body =\n      'Email: ' + encodeURIComponent(payload.email) + '%0D%0A' +\n      'Suministro: ' + encodeURIComponent(payload.suministro) + '%0D%0A' +\n      'Categoria: ' + encodeURIComponent(payload.categoria) + '%0D%0A' +\n      'Marca: ' + encodeURIComponent(payload.marca) + '%0D%0A' +\n      'Familia: ' + encodeURIComponent(payload.familia) + '%0D%0A' +\n      'Descripcion: ' + encodeURIComponent(payload.descripcion) + '%0D%0A' +\n      'Modelo: ' + encodeURIComponent(payload.modelo);\n    var subject = encodeURIComponent('Lead web - Formulario principal VMS Energy');\n    window.location.href = 'mailto:contacto@vmsenergy.com?subject=' + subject + '&body=' + body;\n    toast('Se abrio tu cliente de correo para finalizar el envio.', 'success');\n  });\n})();\n<\/script>\n\n<!-- === BEGIN: Supply catalog wiring === -->\n<script type=\"application\/json\" id=\"vms-supply-json\">{\n  \"Iluminaci&oacute;n\": {\n    \"Iluminaci&oacute;n\": {\n      \"SIGNIFY (PHILIPS)\": {\n        \"GentleSpace gen4\": {\n          \"High-bay LED, &oacute;ptica narrow, montaje suspensi&oacute;n\": [\n            \"BY480P G4 200W 840 NB PSU\"\n          ],\n          \"High-bay LED, &oacute;ptica wide, driver DALI\": [\n            \"BY480P G4 240W 857 WB DALI\"\n          ]\n        },\n        \"CoreLine High-bay\": {\n          \"High-bay LED, &oacute;ptica NB, montaje gancho\": [\n            \"BY121P 110W 840 PSU NB\"\n          ]\n        },\n        \"RoadFlair\": {\n          \"Cobra head LED para vialidad, regulaci&oacute;n 1-10V\": [\n            \"BRP392 LED120 740 PSU DM 1A\"\n          ]\n        }\n      },\n      \"SIGNIFY (LUMEC)\": {\n        \"RoadView\": {\n          \"Luminario vial (cobra head) con &oacute;ptica tipo II\": [\n            \"RVM-2-LED-120-740-UNV\"\n          ]\n        }\n      },\n      \"ACUITY (HOLOPHANE)\": {\n        \"Phuzion RPHZ\": {\n          \"High-bay remoto, 170W 4000K, 120\u2013277V\": [\n            \"RPHZ 170W 40K UNV MOUNT-S\"\n          ]\n        },\n        \"HXPL\": {\n          \"High-bay HazLoc, 254W 5000K, 347\u2013480V\": [\n            \"HXPL 254W 50K 347-480V\"\n          ]\n        },\n        \"Petrolux II\": {\n          \"Luminario industrial cerrado, 218W\": [\n            \"PLX2 218W 40K UNV\"\n          ]\n        }\n      },\n      \"ACUITY (LITHONIA)\": {\n        \"JCBL\": {\n          \"High-bay LED, campana, 200W 5000K\": [\n            \"JCBL 200W 50K MVOLT\"\n          ]\n        },\n        \"Compact Pro\": {\n          \"High-bay compacto 155W 4000K\": [\n            \"CPHB 155W 40K MVOLT\"\n          ]\n        }\n      },\n      \"ACUITY (AEL\/HOLOPHANE)\": {\n        \"D-Series Roadway\": {\n          \"Cobra head vialidad DSX1\": [\n            \"DSX1 LED 120W 40K MVOLT\"\n          ]\n        }\n      },\n      \"DIALIGHT\": {\n        \"SafeSite High Bay\": {\n          \"High-bay HazLoc C1D2, 150W 4000K, 120\u2013277V\": [\n            \"HBL1C2D1A-150-UNV-40K\"\n          ]\n        },\n        \"Vigilant High Bay\": {\n          \"High-bay industrial 200W 5000K\": [\n            \"HBD2-200-UNV-50K\"\n          ]\n        },\n        \"ProSite Flood\": {\n          \"Proyector industrial 300W 5000K\": [\n            \"PSF-300-UNV-50K\"\n          ]\n        }\n      },\n      \"CURRENT (GE + HUBBELL + BEACON)\": {\n        \"Evolve ERL1\": {\n          \"Cobra head vialidad, Type II, 120W 4000K\": [\n            \"ERL1-120W-40K-UNV-T2\"\n          ]\n        },\n        \"Evolve ERL2\": {\n          \"Cobra head vialidad, Type III, 200W 5000K\": [\n            \"ERL2-200W-50K-UNV-T3\"\n          ]\n        }\n      },\n      \"CURRENT (HUBBELL)\": {\n        \"Areamaster Gen 3\": {\n          \"Proyector\/&aacute;rea industrial 300W 5000K\": [\n            \"AM20-300-UNV-50K\"\n          ]\n        }\n      },\n      \"LEDVANCE\": {\n        \"High-Bay Gen4\": {\n          \"UFO High-bay 150W 4000K, driver UNV\": [\n            \"HB4-150-UNV-40K-UFO\"\n          ]\n        },\n        \"High-Bay Flex\": {\n          \"UFO High-bay flexible 200W 5000K\": [\n            \"HBF-200-UNV-50K-UFO\"\n          ]\n        },\n        \"Streetlight Compact\": {\n          \"Vialidad compacta Type II 120W 4000K\": [\n            \"STC-120-UNV-40K-T2\"\n          ]\n        },\n        \"Floodlight 200W\": {\n          \"Proyector LED 200W 5000K\": [\n            \"FL-200-UNV-50K\"\n          ]\n        },\n        \"L&iacute;near Industry\": {\n          \"L&iacute;neal industrial 60W 4000K\": [\n            \"LIN-60-UNV-40K\"\n          ]\n        }\n      },\n      \"THORN (ZUMTOBEL GROUP)\": {\n        \"Isaro Pro\": {\n          \"Vialidad LED, Type II, 64 LED, 4000K\": [\n            \"ISAROPRO-LED-64L-740-UNV-T2\"\n          ]\n        },\n        \"Avenue F\": {\n          \"Vialidad LED, Type III, 96 LED, 4000K\": [\n            \"AVENUEF-LED-96L-740-UNV-T3\"\n          ]\n        },\n        \"ForceLED\": {\n          \"High-bay LED industrial 200W 4000K\": [\n            \"FORCELED-200W-40K\"\n          ]\n        },\n        \"HiBay\": {\n          \"Campana industrial 150W 5000K\": [\n            \"HIBAY-150W-50K\"\n          ]\n        },\n        \"Contrast\": {\n          \"Proyector arquitect&oacute;nico 40W 4000K\": [\n            \"CONTRAST-LED-40-4K\"\n          ]\n        },\n        \"Champ Pro\": {\n          \"Proyector deportivo\/&aacute;rea 200W 4000K\": [\n            \"CHAMPPRO-LED-200-4K\"\n          ]\n        }\n      },\n      \"TECNOLITE\": {\n        \"UFO High-Bay\": {\n          \"High-bay UFO 150W 4000K\": [\n            \"UFO-150W-40K-IP65\"\n          ]\n        }\n      },\n      \"CONSTRULITA\": {\n        \"Faroled\": {\n          \"Vialidad 120W 4000K &oacute;ptica T2\": [\n            \"FAROLED-120W-40K-T2\"\n          ]\n        },\n        \"Evolight\": {\n          \"L&iacute;neal industrial 60W 4000K\": [\n            \"EVOLIGHT-60W-40K\"\n          ]\n        }\n      },\n      \"BEGHELLI\": {\n        \"Acciaio ATEX\": {\n          \"Luminaria industrial ATEX Zona 1, 4000K, LED\": [\n            \"ACCIAIO-ATEX-Z1-LED-40K-UNV\"\n          ]\n        },\n        \"Exlux\": {\n          \"L&iacute;neal industrial ATEX 60W 5000K\": [\n            \"EXLUX-LED-60-UNV-50K\"\n          ]\n        }\n      },\n      \"OPPLE\": {\n        \"High-Bay\": {\n          \"High-bay 150W 4000K\": [\n            \"OP-HB-150W-40K-UNV\"\n          ]\n        },\n        \"Streetlight LED\": {\n          \"Vialidad 120W 4000K &oacute;ptica T2\": [\n            \"OP-ST-120W-40K-T2\"\n          ]\n        }\n      },\n      \"SUPRA (SUPRALUX)\": {\n        \"Industrial Line\": {\n          \"Luminaria Industrial Line Supra (Supralux) SUP-IND-150W-40K-UFO\": [\n            \"SUP-IND-150W-40K-UFO\"\n          ]\n        }\n      },\n      \"MAGG\": {\n        \"Industrial LED\": {\n          \"High-bay industrial 100W 4000K\": [\n            \"MAGG-IND-100W-40K\"\n          ]\n        }\n      },\n      \"BOOMER\": {\n        \"StreetLED\": {\n          \"Vialidad 120W 4000K Type III\": [\n            \"BOO-ST-120W-40K-T3\"\n          ]\n        },\n        \"Industrial Compact\": {\n          \"High-bay 150W 4000K\": [\n            \"BOO-IND-150W-40K-UFO\"\n          ]\n        }\n      },\n      \"HAVELLS\": {\n        \"Highbay Series\": {\n          \"High-bay 200W 5000K\": [\n            \"HVL-HB-200W-50K\"\n          ]\n        },\n        \"Well-glass\": {\n          \"Well-glass industrial 100W 4000K\": [\n            \"HVL-WG-100W-40K\"\n          ]\n        },\n        \"Street Flood Series\": {\n          \"Vialidad\/flood 150W 4000K\": [\n            \"HVL-ST-150W-40K-T2\"\n          ]\n        }\n      },\n      \"ERCO\": {\n        \"Lightscan\": {\n          \"Proyector exterior, 36W 4000K, &oacute;ptica narrow\": [\n            \"ERCO-LS-36W-40K-NB\"\n          ]\n        },\n        \"Kona\": {\n          \"Proyector exterior, 84W 3000K, &oacute;ptica wide\": [\n            \"ERCO-KO-84W-30K-WB\"\n          ]\n        },\n        \"Focalflood\": {\n          \"Ba&ntilde;o de pared focal 24W 4000K\": [\n            \"ERCO-FF-24W-40K-LN\"\n          ]\n        }\n      }\n    },\n    \"Industrial Estanco \/ IP65 \/ IP66\": {\n      \"SIGNIFY (PHILIPS)\": {\n        \"Pacific LED\": {\n          \"L&iacute;neal estanco para industria, &oacute;ptica wide\": [\n            \"WT470C 49W 840 PSU WB\"\n          ]\n        }\n      },\n      \"LEDVANCE\": {\n        \"Damp Proof\": {\n          \"L&iacute;neal estanco 55W 4000K\": [\n            \"DP-55-UNV-40K\"\n          ]\n        }\n      },\n      \"TECNOLITE\": {\n        \"L&iacute;neal 150W\": {\n          \"L&iacute;neal estanco 150W 5000K\": [\n            \"LINEAL-150W-50K-IP65\"\n          ]\n        }\n      },\n      \"CONSTRULITA\": {\n        \"ProFlood\": {\n          \"Proyector 200W 5000K IP66\": [\n            \"PROFLOOD-200W-50K-IP66\"\n          ]\n        }\n      },\n      \"OPPLE\": {\n        \"Waterproof\": {\n          \"L&iacute;neal estanco 60W 4000K\": [\n            \"OP-WP-60W-40K-IP66\"\n          ]\n        }\n      },\n      \"BOOMER\": {\n        \"Highbay\": {\n          \"Versa 2.0 Highbay 240W 4000K-5500K-6500K 60&deg;-90&deg;-120&deg; IP66\": [\n            \"HB0108PC\"\n          ]\n        }\n      }\n    },\n    \"Emergencia \/ Se&ntilde;alizaci&oacute;n\": {\n      \"SIGNIFY (BODINE)\": {\n        \"Emergency Drivers\": {\n          \"M&oacute;dulo emergencia LED 10W C1D2 (compatibilidad)\": [\n            \"BSL310AT6\"\n          ]\n        }\n      },\n      \"BEGHELLI\": {\n        \"Lungalargaluce Extreme\": {\n          \"Luminaria de emergencia ATEX, 50W 4000K\": [\n            \"LLX-ATEX-EM-50-UNV-40K\"\n          ]\n        }\n      }\n    },\n    \"&Aacute;reas Especiales (Hazloc)\": {\n      \"SUPRA\": {\n        \"Red Sky\": {\n          \"20 5K CP 1A M20\": [\n            \"LLP-20-120-277-5K-X1-CP-1A-M20\"\n          ],\n          \"20 5K CP 1A M25\": [\n            \"LLP-20-120-277-5K-X1-CP-1A-M25\"\n          ],\n          \"20 5K CP 1A EM6 M20\": [\n            \"LLP-20-120-277-5K-X1-CP-1A-EM6-M20\"\n          ],\n          \"20 5K CP 1A EM6 M25\": [\n            \"LLP-20-120-277-5K-X1-CP-1A-EM6-M25\"\n          ],\n          \"20 5K CP 1A EM12 M20\": [\n            \"LLP-20-120-277-5K-X1-CP-1A-EM12-M20\"\n          ],\n          \"20 5K CP 1A EM12 M25\": [\n            \"LLP-20-120-277-5K-X1-CP-1A-EM12-M25\"\n          ],\n          \"20 5K CP 2A M20\": [\n            \"LLP-20-120-277-5K-X1-CP-2A-M20\"\n          ],\n          \"20 5K CP 2A M25\": [\n            \"LLP-20-120-277-5K-X1-CP-2A-M25\"\n          ],\n          \"20 5K CP 2A EM6 M20\": [\n            \"LLP-20-120-277-5K-X1-CP-2A-EM6-M20\"\n          ],\n          \"20 5K CP 2A EM6 M25\": [\n            \"LLP-20-120-277-5K-X1-CP-2A-EM6-M25\"\n          ],\n          \"20 5K CP 2A EM12 M20\": [\n            \"LLP-20-120-277-5K-X1-CP-2A-EM12-M20\"\n          ],\n          \"20 5K CP 2A EM12 M25\": [\n            \"LLP-20-120-277-5K-X1-CP-2A-EM12-M25\"\n          ],\n          \"20 5K DP 1A M20\": [\n            \"LLP-20-120-277-5K-X1-DP-1A-M20\"\n          ],\n          \"20 5K DP 1A M25\": [\n            \"LLP-20-120-277-5K-X1-DP-1A-M25\"\n          ],\n          \"20 5K DP 1A EM6 M20\": [\n            \"LLP-20-120-277-5K-X1-DP-1A-EM6-M20\"\n          ],\n          \"20 5K DP 1A EM6 M25\": [\n            \"LLP-20-120-277-5K-X1-DP-1A-EM6-M25\"\n          ],\n          \"20 5K DP 1A EM12 M20\": [\n            \"LLP-20-120-277-5K-X1-DP-1A-EM12-M20\"\n          ],\n          \"20 5K DP 1A EM12 M25\": [\n            \"LLP-20-120-277-5K-X1-DP-1A-EM12-M25\"\n          ],\n          \"20 5K DP 2A M20\": [\n            \"LLP-20-120-277-5K-X1-DP-2A-M20\"\n          ],\n          \"20 5K DP 2A M25\": [\n            \"LLP-20-120-277-5K-X1-DP-2A-M25\"\n          ],\n          \"20 5K DP 2A EM6 M20\": [\n            \"LLP-20-120-277-5K-X1-DP-2A-EM6-M20\"\n          ],\n          \"20 5K DP 2A EM6 M25\": [\n            \"LLP-20-120-277-5K-X1-DP-2A-EM6-M25\"\n          ],\n          \"20 5K DP 2A EM12 M20\": [\n            \"LLP-20-120-277-5K-X1-DP-2A-EM12-M20\"\n          ],\n          \"20 5K DP 2A EM12 M25\": [\n            \"LLP-20-120-277-5K-X1-DP-2A-EM12-M25\"\n          ],\n          \"20 57K CP 1A M20\": [\n            \"LLP-20-120-277-57K-X1-CP-1A-M20\"\n          ],\n          \"20 57K CP 1A M25\": [\n            \"LLP-20-120-277-57K-X1-CP-1A-M25\"\n          ],\n          \"20 57K CP 1A EM6 M20\": [\n            \"LLP-20-120-277-57K-X1-CP-1A-EM6-M20\"\n          ],\n          \"20 57K CP 1A EM6 M25\": [\n            \"LLP-20-120-277-57K-X1-CP-1A-EM6-M25\"\n          ],\n          \"20 57K CP 1A EM12 M20\": [\n            \"LLP-20-120-277-57K-X1-CP-1A-EM12-M20\"\n          ],\n          \"20 57K CP 1A EM12 M25\": [\n            \"LLP-20-120-277-57K-X1-CP-1A-EM12-M25\"\n          ],\n          \"20 57K CP 2A M20\": [\n            \"LLP-20-120-277-57K-X1-CP-2A-M20\"\n          ],\n          \"20 57K CP 2A M25\": [\n            \"LLP-20-120-277-57K-X1-CP-2A-M25\"\n          ],\n          \"20 57K CP 2A EM6 M20\": [\n            \"LLP-20-120-277-57K-X1-CP-2A-EM6-M20\"\n          ],\n          \"20 57K CP 2A EM6 M25\": [\n            \"LLP-20-120-277-57K-X1-CP-2A-EM6-M25\"\n          ],\n          \"20 57K CP 2A EM12 M20\": [\n            \"LLP-20-120-277-57K-X1-CP-2A-EM12-M20\"\n          ],\n          \"20 57K CP 2A EM12 M25\": [\n            \"LLP-20-120-277-57K-X1-CP-2A-EM12-M25\"\n          ],\n          \"20 57K DP 1A M20\": [\n            \"LLP-20-120-277-57K-X1-DP-1A-M20\"\n          ],\n          \"20 57K DP 1A M25\": [\n            \"LLP-20-120-277-57K-X1-DP-1A-M25\"\n          ],\n          \"20 57K DP 1A EM6 M20\": [\n            \"LLP-20-120-277-57K-X1-DP-1A-EM6-M20\"\n          ],\n          \"20 57K DP 1A EM6 M25\": [\n            \"LLP-20-120-277-57K-X1-DP-1A-EM6-M25\"\n          ],\n          \"20 57K DP 1A EM12 M20\": [\n            \"LLP-20-120-277-57K-X1-DP-1A-EM12-M20\"\n          ],\n          \"20 57K DP 1A EM12 M25\": [\n            \"LLP-20-120-277-57K-X1-DP-1A-EM12-M25\"\n          ],\n          \"20 57K DP 2A M20\": [\n            \"LLP-20-120-277-57K-X1-DP-2A-M20\"\n          ],\n          \"20 57K DP 2A M25\": [\n            \"LLP-20-120-277-57K-X1-DP-2A-M25\"\n          ],\n          \"20 57K DP 2A EM6 M20\": [\n            \"LLP-20-120-277-57K-X1-DP-2A-EM6-M20\"\n          ],\n          \"20 57K DP 2A EM6 M25\": [\n            \"LLP-20-120-277-57K-X1-DP-2A-EM6-M25\"\n          ],\n          \"20 57K DP 2A EM12 M20\": [\n            \"LLP-20-120-277-57K-X1-DP-2A-EM12-M20\"\n          ],\n          \"20 57K DP 2A EM12 M25\": [\n            \"LLP-20-120-277-57K-X1-DP-2A-EM12-M25\"\n          ],\n          \"40 5K CP 1A M20\": [\n            \"LLP-40-120-277-5K-X1-CP-1A-M20\"\n          ],\n          \"40 5K CP 1A M25\": [\n            \"LLP-40-120-277-5K-X1-CP-1A-M25\"\n          ],\n          \"40 5K CP 1A EM6 M20\": [\n            \"LLP-40-120-277-5K-X1-CP-1A-EM6-M20\"\n          ],\n          \"40 5K CP 1A EM6 M25\": [\n            \"LLP-40-120-277-5K-X1-CP-1A-EM6-M25\"\n          ],\n          \"40 5K CP 1A EM12 M20\": [\n            \"LLP-40-120-277-5K-X1-CP-1A-EM12-M20\"\n          ],\n          \"40 5K CP 1A EM12 M25\": [\n            \"LLP-40-120-277-5K-X1-CP-1A-EM12-M25\"\n          ],\n          \"40 5K CP 2A M20\": [\n            \"LLP-40-120-277-5K-X1-CP-2A-M20\"\n          ],\n          \"40 5K CP 2A M25\": [\n            \"LLP-40-120-277-5K-X1-CP-2A-M25\"\n          ],\n          \"40 5K CP 2A EM6 M20\": [\n            \"LLP-40-120-277-5K-X1-CP-2A-EM6-M20\"\n          ],\n          \"40 5K CP 2A EM6 M25\": [\n            \"LLP-40-120-277-5K-X1-CP-2A-EM6-M25\"\n          ],\n          \"40 5K CP 2A EM12 M20\": [\n            \"LLP-40-120-277-5K-X1-CP-2A-EM12-M20\"\n          ],\n          \"40 5K CP 2A EM12 M25\": [\n            \"LLP-40-120-277-5K-X1-CP-2A-EM12-M25\"\n          ],\n          \"40 5K DP 1A M20\": [\n            \"LLP-40-120-277-5K-X1-DP-1A-M20\"\n          ],\n          \"40 5K DP 1A M25\": [\n            \"LLP-40-120-277-5K-X1-DP-1A-M25\"\n          ],\n          \"40 5K DP 1A EM6 M20\": [\n            \"LLP-40-120-277-5K-X1-DP-1A-EM6-M20\"\n          ],\n          \"40 5K DP 1A EM6 M25\": [\n            \"LLP-40-120-277-5K-X1-DP-1A-EM6-M25\"\n          ],\n          \"40 5K DP 1A EM12 M20\": [\n            \"LLP-40-120-277-5K-X1-DP-1A-EM12-M20\"\n          ],\n          \"40 5K DP 1A EM12 M25\": [\n            \"LLP-40-120-277-5K-X1-DP-1A-EM12-M25\"\n          ],\n          \"40 5K DP 2A M20\": [\n            \"LLP-40-120-277-5K-X1-DP-2A-M20\"\n          ],\n          \"40 5K DP 2A M25\": [\n            \"LLP-40-120-277-5K-X1-DP-2A-M25\"\n          ],\n          \"40 5K DP 2A EM6 M20\": [\n            \"LLP-40-120-277-5K-X1-DP-2A-EM6-M20\"\n          ],\n          \"40 5K DP 2A EM6 M25\": [\n            \"LLP-40-120-277-5K-X1-DP-2A-EM6-M25\"\n          ],\n          \"40 5K DP 2A EM12 M20\": [\n            \"LLP-40-120-277-5K-X1-DP-2A-EM12-M20\"\n          ],\n          \"40 5K DP 2A EM12 M25\": [\n            \"LLP-40-120-277-5K-X1-DP-2A-EM12-M25\"\n          ],\n          \"40 57K CP 1A M20\": [\n            \"LLP-40-120-277-57K-X1-CP-1A-M20\"\n          ],\n          \"40 57K CP 1A M25\": [\n            \"LLP-40-120-277-57K-X1-CP-1A-M25\"\n          ],\n          \"40 57K CP 1A EM6 M20\": [\n            \"LLP-40-120-277-57K-X1-CP-1A-EM6-M20\"\n          ],\n          \"40 57K CP 1A EM6 M25\": [\n            \"LLP-40-120-277-57K-X1-CP-1A-EM6-M25\"\n          ],\n          \"40 57K CP 1A EM12 M20\": [\n            \"LLP-40-120-277-57K-X1-CP-1A-EM12-M20\"\n          ],\n          \"40 57K CP 1A EM12 M25\": [\n            \"LLP-40-120-277-57K-X1-CP-1A-EM12-M25\"\n          ],\n          \"40 57K CP 2A M20\": [\n            \"LLP-40-120-277-57K-X1-CP-2A-M20\"\n          ],\n          \"40 57K CP 2A M25\": [\n            \"LLP-40-120-277-57K-X1-CP-2A-M25\"\n          ],\n          \"40 57K CP 2A EM6 M20\": [\n            \"LLP-40-120-277-57K-X1-CP-2A-EM6-M20\"\n          ],\n          \"40 57K CP 2A EM6 M25\": [\n            \"LLP-40-120-277-57K-X1-CP-2A-EM6-M25\"\n          ],\n          \"40 57K CP 2A EM12 M20\": [\n            \"LLP-40-120-277-57K-X1-CP-2A-EM12-M20\"\n          ],\n          \"40 57K CP 2A EM12 M25\": [\n            \"LLP-40-120-277-57K-X1-CP-2A-EM12-M25\"\n          ],\n          \"40 57K DP 1A M20\": [\n            \"LLP-40-120-277-57K-X1-DP-1A-M20\"\n          ],\n          \"40 57K DP 1A M25\": [\n            \"LLP-40-120-277-57K-X1-DP-1A-M25\"\n          ],\n          \"40 57K DP 1A EM6 M20\": [\n            \"LLP-40-120-277-57K-X1-DP-1A-EM6-M20\"\n          ],\n          \"40 57K DP 1A EM6 M25\": [\n            \"LLP-40-120-277-57K-X1-DP-1A-EM6-M25\"\n          ],\n          \"40 57K DP 1A EM12 M20\": [\n            \"LLP-40-120-277-57K-X1-DP-1A-EM12-M20\"\n          ],\n          \"40 57K DP 1A EM12 M25\": [\n            \"LLP-40-120-277-57K-X1-DP-1A-EM12-M25\"\n          ],\n          \"40 57K DP 2A M20\": [\n            \"LLP-40-120-277-57K-X1-DP-2A-M20\"\n          ],\n          \"40 57K DP 2A M25\": [\n            \"LLP-40-120-277-57K-X1-DP-2A-M25\"\n          ],\n          \"40 57K DP 2A EM6 M20\": [\n            \"LLP-40-120-277-57K-X1-DP-2A-EM6-M20\"\n          ],\n          \"40 57K DP 2A EM6 M25\": [\n            \"LLP-40-120-277-57K-X1-DP-2A-EM6-M25\"\n          ],\n          \"40 57K DP 2A EM12 M20\": [\n            \"LLP-40-120-277-57K-X1-DP-2A-EM12-M20\"\n          ],\n          \"40 57K DP 2A EM12 M25\": [\n            \"LLP-40-120-277-57K-X1-DP-2A-EM12-M25\"\n          ],\n          \"50 5K CP 1A M20\": [\n            \"LLP-50-120-277-5K-X1-CP-1A-M20\"\n          ],\n          \"50 5K CP 1A M25\": [\n            \"LLP-50-120-277-5K-X1-CP-1A-M25\"\n          ],\n          \"50 5K CP 1A EM6 M20\": [\n            \"LLP-50-120-277-5K-X1-CP-1A-EM6-M20\"\n          ],\n          \"50 5K CP 1A EM6 M25\": [\n            \"LLP-50-120-277-5K-X1-CP-1A-EM6-M25\"\n          ],\n          \"50 5K CP 1A EM12 M20\": [\n            \"LLP-50-120-277-5K-X1-CP-1A-EM12-M20\"\n          ],\n          \"50 5K CP 1A EM12 M25\": [\n            \"LLP-50-120-277-5K-X1-CP-1A-EM12-M25\"\n          ],\n          \"50 5K CP 2A M20\": [\n            \"LLP-50-120-277-5K-X1-CP-2A-M20\"\n          ],\n          \"50 5K CP 2A M25\": [\n            \"LLP-50-120-277-5K-X1-CP-2A-M25\"\n          ],\n          \"50 5K CP 2A EM6 M20\": [\n            \"LLP-50-120-277-5K-X1-CP-2A-EM6-M20\"\n          ],\n          \"50 5K CP 2A EM6 M25\": [\n            \"LLP-50-120-277-5K-X1-CP-2A-EM6-M25\"\n          ],\n          \"50 5K CP 2A EM12 M20\": [\n            \"LLP-50-120-277-5K-X1-CP-2A-EM12-M20\"\n          ],\n          \"50 5K CP 2A EM12 M25\": [\n            \"LLP-50-120-277-5K-X1-CP-2A-EM12-M25\"\n          ],\n          \"50 5K DP 1A M20\": [\n            \"LLP-50-120-277-5K-X1-DP-1A-M20\"\n          ],\n          \"50 5K DP 1A M25\": [\n            \"LLP-50-120-277-5K-X1-DP-1A-M25\"\n          ],\n          \"50 5K DP 1A EM6 M20\": [\n            \"LLP-50-120-277-5K-X1-DP-1A-EM6-M20\"\n          ],\n          \"50 5K DP 1A EM6 M25\": [\n            \"LLP-50-120-277-5K-X1-DP-1A-EM6-M25\"\n          ],\n          \"50 5K DP 1A EM12 M20\": [\n            \"LLP-50-120-277-5K-X1-DP-1A-EM12-M20\"\n          ],\n          \"50 5K DP 1A EM12 M25\": [\n            \"LLP-50-120-277-5K-X1-DP-1A-EM12-M25\"\n          ],\n          \"50 5K DP 2A M20\": [\n            \"LLP-50-120-277-5K-X1-DP-2A-M20\"\n          ],\n          \"50 5K DP 2A M25\": [\n            \"LLP-50-120-277-5K-X1-DP-2A-M25\"\n          ],\n          \"50 5K DP 2A EM6 M20\": [\n            \"LLP-50-120-277-5K-X1-DP-2A-EM6-M20\"\n          ],\n          \"50 5K DP 2A EM6 M25\": [\n            \"LLP-50-120-277-5K-X1-DP-2A-EM6-M25\"\n          ],\n          \"50 5K DP 2A EM12 M20\": [\n            \"LLP-50-120-277-5K-X1-DP-2A-EM12-M20\"\n          ],\n          \"50 5K DP 2A EM12 M25\": [\n            \"LLP-50-120-277-5K-X1-DP-2A-EM12-M25\"\n          ],\n          \"50 57K CP 1A M20\": [\n            \"LLP-50-120-277-57K-X1-CP-1A-M20\"\n          ],\n          \"50 57K CP 1A M25\": [\n            \"LLP-50-120-277-57K-X1-CP-1A-M25\"\n          ],\n          \"50 57K CP 1A EM6 M20\": [\n            \"LLP-50-120-277-57K-X1-CP-1A-EM6-M20\"\n          ],\n          \"50 57K CP 1A EM6 M25\": [\n            \"LLP-50-120-277-57K-X1-CP-1A-EM6-M25\"\n          ],\n          \"50 57K CP 1A EM12 M20\": [\n            \"LLP-50-120-277-57K-X1-CP-1A-EM12-M20\"\n          ],\n          \"50 57K CP 1A EM12 M25\": [\n            \"LLP-50-120-277-57K-X1-CP-1A-EM12-M25\"\n          ],\n          \"50 57K CP 2A M20\": [\n            \"LLP-50-120-277-57K-X1-CP-2A-M20\"\n          ],\n          \"50 57K CP 2A M25\": [\n            \"LLP-50-120-277-57K-X1-CP-2A-M25\"\n          ],\n          \"50 57K CP 2A EM6 M20\": [\n            \"LLP-50-120-277-57K-X1-CP-2A-EM6-M20\"\n          ],\n          \"50 57K CP 2A EM6 M25\": [\n            \"LLP-50-120-277-57K-X1-CP-2A-EM6-M25\"\n          ],\n          \"50 57K CP 2A EM12 M20\": [\n            \"LLP-50-120-277-57K-X1-CP-2A-EM12-M20\"\n          ],\n          \"50 57K CP 2A EM12 M25\": [\n            \"LLP-50-120-277-57K-X1-CP-2A-EM12-M25\"\n          ],\n          \"50 57K DP 1A M20\": [\n            \"LLP-50-120-277-57K-X1-DP-1A-M20\"\n          ],\n          \"50 57K DP 1A M25\": [\n            \"LLP-50-120-277-57K-X1-DP-1A-M25\"\n          ],\n          \"50 57K DP 1A EM6 M20\": [\n            \"LLP-50-120-277-57K-X1-DP-1A-EM6-M20\"\n          ],\n          \"50 57K DP 1A EM6 M25\": [\n            \"LLP-50-120-277-57K-X1-DP-1A-EM6-M25\"\n          ],\n          \"50 57K DP 1A EM12 M20\": [\n            \"LLP-50-120-277-57K-X1-DP-1A-EM12-M20\"\n          ],\n          \"50 57K DP 1A EM12 M25\": [\n            \"LLP-50-120-277-57K-X1-DP-1A-EM12-M25\"\n          ],\n          \"50 57K DP 2A M20\": [\n            \"LLP-50-120-277-57K-X1-DP-2A-M20\"\n          ],\n          \"50 57K DP 2A M25\": [\n            \"LLP-50-120-277-57K-X1-DP-2A-M25\"\n          ],\n          \"50 57K DP 2A EM6 M20\": [\n            \"LLP-50-120-277-57K-X1-DP-2A-EM6-M20\"\n          ],\n          \"50 57K DP 2A EM6 M25\": [\n            \"LLP-50-120-277-57K-X1-DP-2A-EM6-M25\"\n          ],\n          \"50 57K DP 2A EM12 M20\": [\n            \"LLP-50-120-277-57K-X1-DP-2A-EM12-M20\"\n          ],\n          \"50 57K DP 2A EM12 M25\": [\n            \"LLP-50-120-277-57K-X1-DP-2A-EM12-M25\"\n          ],\n          \"60 5K CP 1A M20\": [\n            \"LLP-60-120-277-5K-X1-CP-1A-M20\"\n          ],\n          \"60 5K CP 1A M25\": [\n            \"LLP-60-120-277-5K-X1-CP-1A-M25\"\n          ],\n          \"60 5K CP 1A EM6 M20\": [\n            \"LLP-60-120-277-5K-X1-CP-1A-EM6-M20\"\n          ],\n          \"60 5K CP 1A EM6 M25\": [\n            \"LLP-60-120-277-5K-X1-CP-1A-EM6-M25\"\n          ],\n          \"60 5K CP 1A EM12 M20\": [\n            \"LLP-60-120-277-5K-X1-CP-1A-EM12-M20\"\n          ],\n          \"60 5K CP 1A EM12 M25\": [\n            \"LLP-60-120-277-5K-X1-CP-1A-EM12-M25\"\n          ],\n          \"60 5K CP 2A M20\": [\n            \"LLP-60-120-277-5K-X1-CP-2A-M20\"\n          ],\n          \"60 5K CP 2A M25\": [\n            \"LLP-60-120-277-5K-X1-CP-2A-M25\"\n          ],\n          \"60 5K CP 2A EM6 M20\": [\n            \"LLP-60-120-277-5K-X1-CP-2A-EM6-M20\"\n          ],\n          \"60 5K CP 2A EM6 M25\": [\n            \"LLP-60-120-277-5K-X1-CP-2A-EM6-M25\"\n          ],\n          \"60 5K CP 2A EM12 M20\": [\n            \"LLP-60-120-277-5K-X1-CP-2A-EM12-M20\"\n          ],\n          \"60 5K CP 2A EM12 M25\": [\n            \"LLP-60-120-277-5K-X1-CP-2A-EM12-M25\"\n          ],\n          \"60 5K DP 1A M20\": [\n            \"LLP-60-120-277-5K-X1-DP-1A-M20\"\n          ],\n          \"60 5K DP 1A M25\": [\n            \"LLP-60-120-277-5K-X1-DP-1A-M25\"\n          ],\n          \"60 5K DP 1A EM6 M20\": [\n            \"LLP-60-120-277-5K-X1-DP-1A-EM6-M20\"\n          ],\n          \"60 5K DP 1A EM6 M25\": [\n            \"LLP-60-120-277-5K-X1-DP-1A-EM6-M25\"\n          ],\n          \"60 5K DP 1A EM12 M20\": [\n            \"LLP-60-120-277-5K-X1-DP-1A-EM12-M20\"\n          ],\n          \"60 5K DP 1A EM12 M25\": [\n            \"LLP-60-120-277-5K-X1-DP-1A-EM12-M25\"\n          ],\n          \"60 5K DP 2A M20\": [\n            \"LLP-60-120-277-5K-X1-DP-2A-M20\"\n          ],\n          \"60 5K DP 2A M25\": [\n            \"LLP-60-120-277-5K-X1-DP-2A-M25\"\n          ],\n          \"60 5K DP 2A EM6 M20\": [\n            \"LLP-60-120-277-5K-X1-DP-2A-EM6-M20\"\n          ],\n          \"60 5K DP 2A EM6 M25\": [\n            \"LLP-60-120-277-5K-X1-DP-2A-EM6-M25\"\n          ],\n          \"60 5K DP 2A EM12 M20\": [\n            \"LLP-60-120-277-5K-X1-DP-2A-EM12-M20\"\n          ],\n          \"60 5K DP 2A EM12 M25\": [\n            \"LLP-60-120-277-5K-X1-DP-2A-EM12-M25\"\n          ],\n          \"60 57K CP 1A M20\": [\n            \"LLP-60-120-277-57K-X1-CP-1A-M20\"\n          ],\n          \"60 57K CP 1A M25\": [\n            \"LLP-60-120-277-57K-X1-CP-1A-M25\"\n          ],\n          \"60 57K CP 1A EM6 M20\": [\n            \"LLP-60-120-277-57K-X1-CP-1A-EM6-M20\"\n          ],\n          \"60 57K CP 1A EM6 M25\": [\n            \"LLP-60-120-277-57K-X1-CP-1A-EM6-M25\"\n          ],\n          \"60 57K CP 1A EM12 M20\": [\n            \"LLP-60-120-277-57K-X1-CP-1A-EM12-M20\"\n          ],\n          \"60 57K CP 1A EM12 M25\": [\n            \"LLP-60-120-277-57K-X1-CP-1A-EM12-M25\"\n          ],\n          \"60 57K CP 2A M20\": [\n            \"LLP-60-120-277-57K-X1-CP-2A-M20\"\n          ],\n          \"60 57K CP 2A M25\": [\n            \"LLP-60-120-277-57K-X1-CP-2A-M25\"\n          ],\n          \"60 57K CP 2A EM6 M20\": [\n            \"LLP-60-120-277-57K-X1-CP-2A-EM6-M20\"\n          ],\n          \"60 57K CP 2A EM6 M25\": [\n            \"LLP-60-120-277-57K-X1-CP-2A-EM6-M25\"\n          ],\n          \"60 57K CP 2A EM12 M20\": [\n            \"LLP-60-120-277-57K-X1-CP-2A-EM12-M20\"\n          ],\n          \"60 57K CP 2A EM12 M25\": [\n            \"LLP-60-120-277-57K-X1-CP-2A-EM12-M25\"\n          ],\n          \"60 57K DP 1A M20\": [\n            \"LLP-60-120-277-57K-X1-DP-1A-M20\"\n          ],\n          \"60 57K DP 1A M25\": [\n            \"LLP-60-120-277-57K-X1-DP-1A-M25\"\n          ],\n          \"60 57K DP 1A EM6 M20\": [\n            \"LLP-60-120-277-57K-X1-DP-1A-EM6-M20\"\n          ],\n          \"60 57K DP 1A EM6 M25\": [\n            \"LLP-60-120-277-57K-X1-DP-1A-EM6-M25\"\n          ],\n          \"60 57K DP 1A EM12 M20\": [\n            \"LLP-60-120-277-57K-X1-DP-1A-EM12-M20\"\n          ],\n          \"60 57K DP 1A EM12 M25\": [\n            \"LLP-60-120-277-57K-X1-DP-1A-EM12-M25\"\n          ],\n          \"60 57K DP 2A M20\": [\n            \"LLP-60-120-277-57K-X1-DP-2A-M20\"\n          ],\n          \"60 57K DP 2A M25\": [\n            \"LLP-60-120-277-57K-X1-DP-2A-M25\"\n          ],\n          \"60 57K DP 2A EM6 M20\": [\n            \"LLP-60-120-277-57K-X1-DP-2A-EM6-M20\"\n          ],\n          \"60 57K DP 2A EM6 M25\": [\n            \"LLP-60-120-277-57K-X1-DP-2A-EM6-M25\"\n          ],\n          \"60 57K DP 2A EM12 M20\": [\n            \"LLP-60-120-277-57K-X1-DP-2A-EM12-M20\"\n          ],\n          \"60 57K DP 2A EM12 M25\": [\n            \"LLP-60-120-277-57K-X1-DP-2A-EM12-M25\"\n          ],\n          \"80 5K CP 1A M20\": [\n            \"LLP-80-120-277-5K-X1-CP-1A-M20\"\n          ],\n          \"80 5K CP 1A M25\": [\n            \"LLP-80-120-277-5K-X1-CP-1A-M25\"\n          ],\n          \"80 5K CP 1A EM6 M20\": [\n            \"LLP-80-120-277-5K-X1-CP-1A-EM6-M20\"\n          ],\n          \"80 5K CP 1A EM6 M25\": [\n            \"LLP-80-120-277-5K-X1-CP-1A-EM6-M25\"\n          ],\n          \"80 5K CP 1A EM12 M20\": [\n            \"LLP-80-120-277-5K-X1-CP-1A-EM12-M20\"\n          ],\n          \"80 5K CP 1A EM12 M25\": [\n            \"LLP-80-120-277-5K-X1-CP-1A-EM12-M25\"\n          ],\n          \"80 5K CP 2A M20\": [\n            \"LLP-80-120-277-5K-X1-CP-2A-M20\"\n          ],\n          \"80 5K CP 2A M25\": [\n            \"LLP-80-120-277-5K-X1-CP-2A-M25\"\n          ],\n          \"80 5K CP 2A EM6 M20\": [\n            \"LLP-80-120-277-5K-X1-CP-2A-EM6-M20\"\n          ],\n          \"80 5K CP 2A EM6 M25\": [\n            \"LLP-80-120-277-5K-X1-CP-2A-EM6-M25\"\n          ],\n          \"80 5K CP 2A EM12 M20\": [\n            \"LLP-80-120-277-5K-X1-CP-2A-EM12-M20\"\n          ],\n          \"80 5K CP 2A EM12 M25\": [\n            \"LLP-80-120-277-5K-X1-CP-2A-EM12-M25\"\n          ],\n          \"80 5K DP 1A M20\": [\n            \"LLP-80-120-277-5K-X1-DP-1A-M20\"\n          ],\n          \"80 5K DP 1A M25\": [\n            \"LLP-80-120-277-5K-X1-DP-1A-M25\"\n          ],\n          \"80 5K DP 1A EM6 M20\": [\n            \"LLP-80-120-277-5K-X1-DP-1A-EM6-M20\"\n          ],\n          \"80 5K DP 1A EM6 M25\": [\n            \"LLP-80-120-277-5K-X1-DP-1A-EM6-M25\"\n          ],\n          \"80 5K DP 1A EM12 M20\": [\n            \"LLP-80-120-277-5K-X1-DP-1A-EM12-M20\"\n          ],\n          \"80 5K DP 1A EM12 M25\": [\n            \"LLP-80-120-277-5K-X1-DP-1A-EM12-M25\"\n          ],\n          \"80 5K DP 2A M20\": [\n            \"LLP-80-120-277-5K-X1-DP-2A-M20\"\n          ],\n          \"80 5K DP 2A M25\": [\n            \"LLP-80-120-277-5K-X1-DP-2A-M25\"\n          ],\n          \"80 5K DP 2A EM6 M20\": [\n            \"LLP-80-120-277-5K-X1-DP-2A-EM6-M20\"\n          ],\n          \"80 5K DP 2A EM6 M25\": [\n            \"LLP-80-120-277-5K-X1-DP-2A-EM6-M25\"\n          ],\n          \"80 5K DP 2A EM12 M20\": [\n            \"LLP-80-120-277-5K-X1-DP-2A-EM12-M20\"\n          ],\n          \"80 5K DP 2A EM12 M25\": [\n            \"LLP-80-120-277-5K-X1-DP-2A-EM12-M25\"\n          ],\n          \"80 57K CP 1A M20\": [\n            \"LLP-80-120-277-57K-X1-CP-1A-M20\"\n          ],\n          \"80 57K CP 1A M25\": [\n            \"LLP-80-120-277-57K-X1-CP-1A-M25\"\n          ],\n          \"80 57K CP 1A EM6 M20\": [\n            \"LLP-80-120-277-57K-X1-CP-1A-EM6-M20\"\n          ],\n          \"80 57K CP 1A EM6 M25\": [\n            \"LLP-80-120-277-57K-X1-CP-1A-EM6-M25\"\n          ],\n          \"80 57K CP 1A EM12 M20\": [\n            \"LLP-80-120-277-57K-X1-CP-1A-EM12-M20\"\n          ],\n          \"80 57K CP 1A EM12 M25\": [\n            \"LLP-80-120-277-57K-X1-CP-1A-EM12-M25\"\n          ],\n          \"80 57K CP 2A M20\": [\n            \"LLP-80-120-277-57K-X1-CP-2A-M20\"\n          ],\n          \"80 57K CP 2A M25\": [\n            \"LLP-80-120-277-57K-X1-CP-2A-M25\"\n          ],\n          \"80 57K CP 2A EM6 M20\": [\n            \"LLP-80-120-277-57K-X1-CP-2A-EM6-M20\"\n          ],\n          \"80 57K CP 2A EM6 M25\": [\n            \"LLP-80-120-277-57K-X1-CP-2A-EM6-M25\"\n          ],\n          \"80 57K CP 2A EM12 M20\": [\n            \"LLP-80-120-277-57K-X1-CP-2A-EM12-M20\"\n          ],\n          \"80 57K CP 2A EM12 M25\": [\n            \"LLP-80-120-277-57K-X1-CP-2A-EM12-M25\"\n          ],\n          \"80 57K DP 1A M20\": [\n            \"LLP-80-120-277-57K-X1-DP-1A-M20\"\n          ],\n          \"80 57K DP 1A M25\": [\n            \"LLP-80-120-277-57K-X1-DP-1A-M25\"\n          ],\n          \"80 57K DP 1A EM6 M20\": [\n            \"LLP-80-120-277-57K-X1-DP-1A-EM6-M20\"\n          ],\n          \"80 57K DP 1A EM6 M25\": [\n            \"LLP-80-120-277-57K-X1-DP-1A-EM6-M25\"\n          ],\n          \"80 57K DP 1A EM12 M20\": [\n            \"LLP-80-120-277-57K-X1-DP-1A-EM12-M20\"\n          ],\n          \"80 57K DP 1A EM12 M25\": [\n            \"LLP-80-120-277-57K-X1-DP-1A-EM12-M25\"\n          ],\n          \"80 57K DP 2A M20\": [\n            \"LLP-80-120-277-57K-X1-DP-2A-M20\"\n          ],\n          \"80 57K DP 2A M25\": [\n            \"LLP-80-120-277-57K-X1-DP-2A-M25\"\n          ],\n          \"80 57K DP 2A EM6 M20\": [\n            \"LLP-80-120-277-57K-X1-DP-2A-EM6-M20\"\n          ],\n          \"80 57K DP 2A EM6 M25\": [\n            \"LLP-80-120-277-57K-X1-DP-2A-EM6-M25\"\n          ],\n          \"80 57K DP 2A EM12 M20\": [\n            \"LLP-80-120-277-57K-X1-DP-2A-EM12-M20\"\n          ],\n          \"80 57K DP 2A EM12 M25\": [\n            \"LLP-80-120-277-57K-X1-DP-2A-EM12-M25\"\n          ],\n          \"100 5K CP 1A M20\": [\n            \"LLP-100-120-277-5K-X1-CP-1A-M20\"\n          ],\n          \"100 5K CP 1A M25\": [\n            \"LLP-100-120-277-5K-X1-CP-1A-M25\"\n          ],\n          \"100 5K CP 1A EM6 M20\": [\n            \"LLP-100-120-277-5K-X1-CP-1A-EM6-M20\"\n          ],\n          \"100 5K CP 1A EM6 M25\": [\n            \"LLP-100-120-277-5K-X1-CP-1A-EM6-M25\"\n          ],\n          \"100 5K CP 1A EM12 M20\": [\n            \"LLP-100-120-277-5K-X1-CP-1A-EM12-M20\"\n          ],\n          \"100 5K CP 1A EM12 M25\": [\n            \"LLP-100-120-277-5K-X1-CP-1A-EM12-M25\"\n          ],\n          \"100 5K CP 2A M20\": [\n            \"LLP-100-120-277-5K-X1-CP-2A-M20\"\n          ],\n          \"100 5K CP 2A M25\": [\n            \"LLP-100-120-277-5K-X1-CP-2A-M25\"\n          ],\n          \"100 5K CP 2A EM6 M20\": [\n            \"LLP-100-120-277-5K-X1-CP-2A-EM6-M20\"\n          ],\n          \"100 5K CP 2A EM6 M25\": [\n            \"LLP-100-120-277-5K-X1-CP-2A-EM6-M25\"\n          ],\n          \"100 5K CP 2A EM12 M20\": [\n            \"LLP-100-120-277-5K-X1-CP-2A-EM12-M20\"\n          ],\n          \"100 5K CP 2A EM12 M25\": [\n            \"LLP-100-120-277-5K-X1-CP-2A-EM12-M25\"\n          ],\n          \"100 5K DP 1A M20\": [\n            \"LLP-100-120-277-5K-X1-DP-1A-M20\"\n          ],\n          \"100 5K DP 1A M25\": [\n            \"LLP-100-120-277-5K-X1-DP-1A-M25\"\n          ],\n          \"100 5K DP 1A EM6 M20\": [\n            \"LLP-100-120-277-5K-X1-DP-1A-EM6-M20\"\n          ],\n          \"100 5K DP 1A EM6 M25\": [\n            \"LLP-100-120-277-5K-X1-DP-1A-EM6-M25\"\n          ],\n          \"100 5K DP 1A EM12 M20\": [\n            \"LLP-100-120-277-5K-X1-DP-1A-EM12-M20\"\n          ],\n          \"100 5K DP 1A EM12 M25\": [\n            \"LLP-100-120-277-5K-X1-DP-1A-EM12-M25\"\n          ],\n          \"100 5K DP 2A M20\": [\n            \"LLP-100-120-277-5K-X1-DP-2A-M20\"\n          ],\n          \"100 5K DP 2A M25\": [\n            \"LLP-100-120-277-5K-X1-DP-2A-M25\"\n          ],\n          \"100 5K DP 2A EM6 M20\": [\n            \"LLP-100-120-277-5K-X1-DP-2A-EM6-M20\"\n          ],\n          \"100 5K DP 2A EM6 M25\": [\n            \"LLP-100-120-277-5K-X1-DP-2A-EM6-M25\"\n          ],\n          \"100 5K DP 2A EM12 M20\": [\n            \"LLP-100-120-277-5K-X1-DP-2A-EM12-M20\"\n          ],\n          \"100 5K DP 2A EM12 M25\": [\n            \"LLP-100-120-277-5K-X1-DP-2A-EM12-M25\"\n          ],\n          \"100 57K CP 1A M20\": [\n            \"LLP-100-120-277-57K-X1-CP-1A-M20\"\n          ],\n          \"100 57K CP 1A M25\": [\n            \"LLP-100-120-277-57K-X1-CP-1A-M25\"\n          ],\n          \"100 57K CP 1A EM6 M20\": [\n            \"LLP-100-120-277-57K-X1-CP-1A-EM6-M20\"\n          ],\n          \"100 57K CP 1A EM6 M25\": [\n            \"LLP-100-120-277-57K-X1-CP-1A-EM6-M25\"\n          ],\n          \"100 57K CP 1A EM12 M20\": [\n            \"LLP-100-120-277-57K-X1-CP-1A-EM12-M20\"\n          ],\n          \"100 57K CP 1A EM12 M25\": [\n            \"LLP-100-120-277-57K-X1-CP-1A-EM12-M25\"\n          ],\n          \"100 57K CP 2A M20\": [\n            \"LLP-100-120-277-57K-X1-CP-2A-M20\"\n          ],\n          \"100 57K CP 2A M25\": [\n            \"LLP-100-120-277-57K-X1-CP-2A-M25\"\n          ],\n          \"100 57K CP 2A EM6 M20\": [\n            \"LLP-100-120-277-57K-X1-CP-2A-EM6-M20\"\n          ],\n          \"100 57K CP 2A EM6 M25\": [\n            \"LLP-100-120-277-57K-X1-CP-2A-EM6-M25\"\n          ],\n          \"100 57K CP 2A EM12 M20\": [\n            \"LLP-100-120-277-57K-X1-CP-2A-EM12-M20\"\n          ],\n          \"100 57K CP 2A EM12 M25\": [\n            \"LLP-100-120-277-57K-X1-CP-2A-EM12-M25\"\n          ],\n          \"100 57K DP 1A M20\": [\n            \"LLP-100-120-277-57K-X1-DP-1A-M20\"\n          ],\n          \"100 57K DP 1A M25\": [\n            \"LLP-100-120-277-57K-X1-DP-1A-M25\"\n          ],\n          \"100 57K DP 1A EM6 M20\": [\n            \"LLP-100-120-277-57K-X1-DP-1A-EM6-M20\"\n          ],\n          \"100 57K DP 1A EM6 M25\": [\n            \"LLP-100-120-277-57K-X1-DP-1A-EM6-M25\"\n          ],\n          \"100 57K DP 1A EM12 M20\": [\n            \"LLP-100-120-277-57K-X1-DP-1A-EM12-M20\"\n          ],\n          \"100 57K DP 1A EM12 M25\": [\n            \"LLP-100-120-277-57K-X1-DP-1A-EM12-M25\"\n          ],\n          \"100 57K DP 2A M20\": [\n            \"LLP-100-120-277-57K-X1-DP-2A-M20\"\n          ],\n          \"100 57K DP 2A M25\": [\n            \"LLP-100-120-277-57K-X1-DP-2A-M25\"\n          ],\n          \"100 57K DP 2A EM6 M20\": [\n            \"LLP-100-120-277-57K-X1-DP-2A-EM6-M20\"\n          ],\n          \"100 57K DP 2A EM6 M25\": [\n            \"LLP-100-120-277-57K-X1-DP-2A-EM6-M25\"\n          ],\n          \"100 57K DP 2A EM12 M20\": [\n            \"LLP-100-120-277-57K-X1-DP-2A-EM12-M20\"\n          ],\n          \"100 57K DP 2A EM12 M25\": [\n            \"LLP-100-120-277-57K-X1-DP-2A-EM12-M25\"\n          ]\n        }\n      }\n    }\n  },\n  \"Equipo El&eacute;ctrico\": {\n    \"Tableros \/ Subestaci&oacute;n\": {\n      \"ABB\": {\n        \"MNS\u00ae\": {\n          \"Equipo MNS\u00ae Abb\": []\n        },\n        \"MNS-Up\": {\n          \"Equipo MNS-Up Abb\": []\n        },\n        \"System pro E power\": {\n          \"Equipo System pro E power Abb SYSTEM\": [\n            \"SYSTEM\"\n          ]\n        },\n        \"NeoGear\u2122\": {\n          \"Equipo NeoGear\u2122 Abb NEOGEAR\": [\n            \"NEOGEAR\"\n          ]\n        },\n        \"System pro E energy\": {\n          \"Equipo System pro E energy Abb SYSTEM\": [\n            \"SYSTEM\"\n          ]\n        },\n        \"Compact MNS\": {\n          \"Equipo Compact MNS Abb COMPACT\": [\n            \"COMPACT\"\n          ]\n        },\n        \"ProLine Panelboards\": {\n          \"Equipo ProLine Panelboards Abb PROLINE\": [\n            \"PROLINE\"\n          ]\n        },\n        \"GIS\": {\n          \"Equipo GIS Abb\": []\n        },\n        \"PASS\": {\n          \"Equipo PASS Abb PASS\": [\n            \"PASS\"\n          ]\n        },\n        \"Subestaciones M&oacute;viles\": {\n          \"Equipo Subestaciones M&oacute;viles Abb SUBESTACIONES\": [\n            \"SUBESTACIONES\"\n          ]\n        },\n        \"Subestaciones Digitales\": {\n          \"Equipo Subestaciones Digitales Abb SUBESTACIONES\": [\n            \"SUBESTACIONES\"\n          ]\n        }\n      },\n      \"SCHNEIDER ELECTRIC\": {\n        \"Model 6\": {\n          \"Equipo Model 6 Schneider Electric MODEL 6\": [\n            \"MODEL 6\"\n          ]\n        },\n        \"Okken\u2122\": {\n          \"Equipo Okken\u2122 Schneider Electric OKKEN\": [\n            \"OKKEN\"\n          ]\n        },\n        \"Ti-astar\u2122\": {\n          \"Equipo Ti-astar\u2122 Schneider Electric ASTAR\": [\n            \"ASTAR\"\n          ]\n        },\n        \"I-Line\u2122\": {\n          \"Equipo I-Line\u2122 Schneider Electric LINE\": [\n            \"LINE\"\n          ]\n        },\n        \"QO\u2122\/NQ Panelboards\": {\n          \"Equipo QO\u2122\/NQ Panelboards Schneider Electric PANELBOARDS\": [\n            \"PANELBOARDS\"\n          ]\n        },\n        \"PrismaSeT\u2122\": {\n          \"Equipo PrismaSeT\u2122 Schneider Electric PRISMASET\": [\n            \"PRISMASET\"\n          ]\n        },\n        \"BlokSeT\u2122\": {\n          \"Equipo BlokSeT\u2122 Schneider Electric BLOKSET\": [\n            \"BLOKSET\"\n          ]\n        },\n        \"Premset\u2122\": {\n          \"Equipo Premset\u2122 Schneider Electric PREMSET\": [\n            \"PREMSET\"\n          ]\n        },\n        \"Minera\": {\n          \"Equipo Minera Schneider Electric MINERA\": [\n            \"MINERA\"\n          ]\n        },\n        \"E-House\": {\n          \"Equipo E-House Schneider Electric HOUSE\": [\n            \"HOUSE\"\n          ]\n        }\n      },\n      \"SIEMENS\": {\n        \"SIVACON\u2122 S8\": {\n          \"Equipo SIVACON\u2122 S8 Siemens SIVACON\": [\n            \"SIVACON\"\n          ]\n        },\n        \"SIMOCODE\u2122 pro\": {\n          \"Equipo SIMOCODE\u2122 pro Siemens SIMOCODE\": [\n            \"SIMOCODE\"\n          ]\n        },\n        \"SIVACON\u2122 8PS\": {\n          \"Equipo SIVACON\u2122 8PS Siemens SIVACON\": [\n            \"SIVACON\"\n          ]\n        },\n        \"ALPHA\": {\n          \"Equipo ALPHA Siemens ALPHA\": [\n            \"ALPHA\"\n          ]\n        },\n        \"GIS 8DQ1\": {\n          \"Equipo GIS 8DQ1 Siemens 8DQ1\": [\n            \"8DQ1\"\n          ]\n        },\n        \"GIS 8DN9\": {\n          \"Equipo GIS 8DN9 Siemens 8DN9\": [\n            \"8DN9\"\n          ]\n        },\n        \"Subestaciones M&oacute;viles\": {\n          \"Equipo Subestaciones M&oacute;viles Siemens SUBESTACIONES\": [\n            \"SUBESTACIONES\"\n          ]\n        }\n      },\n      \"WEG\": {\n        \"CCM04 (BT)\": {\n          \"Equipo CCM04 (BT) Weg CCM04\": [\n            \"CCM04\"\n          ]\n        },\n        \"MCCI (MT)\": {\n          \"Equipo MCCI (MT) Weg MCCI\": [\n            \"MCCI\"\n          ]\n        },\n        \"E-Houses\": {\n          \"Equipo E-Houses Weg HOUSES\": [\n            \"HOUSES\"\n          ]\n        }\n      },\n      \"CHINT\": {\n        \"NXM\": {\n          \"Equipo NXM Chint\": []\n        },\n        \"NM8\": {\n          \"Equipo NM8 Chint NM8\": [\n            \"NM8\"\n          ]\n        },\n        \"Series NDB\": {\n          \"Equipo Series NDB Chint SERIES\": [\n            \"SERIES\"\n          ]\n        }\n      }\n    },\n    \"Iluminaci&oacute;n\": {\n      \"ABB\": {\n        \"Gabinetes NEMA\": {\n          \"Equipo Gabinetes NEMA Abb GABINETES\": [\n            \"GABINETES\"\n          ]\n        },\n        \"Gemini\": {\n          \"Equipo Gemini Abb GEMINI\": [\n            \"GEMINI\"\n          ]\n        },\n        \"System pro E control\": {\n          \"Equipo System pro E control Abb SYSTEM\": [\n            \"SYSTEM\"\n          ]\n        }\n      },\n      \"SCHNEIDER ELECTRIC\": {\n        \"Gabinetes Spacial\u2122\": {\n          \"Equipo Gabinetes Spacial\u2122 Schneider Electric GABINETES\": [\n            \"GABINETES\"\n          ]\n        },\n        \"Thalassa\u2122\": {\n          \"Equipo Thalassa\u2122 Schneider Electric THALASSA\": [\n            \"THALASSA\"\n          ]\n        }\n      },\n      \"SIEMENS\": {\n        \"Gabinetes SICUBE\": {\n          \"Equipo Gabinetes SICUBE Siemens GABINETES\": [\n            \"GABINETES\"\n          ]\n        }\n      },\n      \"WEG\": {\n        \"E-Houses (salas el&eacute;ctricas modulares)\": {\n          \"Equipo E-Houses (salas el&eacute;ctricas modulares) Weg HOUSES\": [\n            \"HOUSES\"\n          ]\n        }\n      },\n      \"TRIOL\": {\n        \"Soluciones integradas en contenedores \/ E-House\": {\n          \"Equipo Soluciones integradas en contenedores \/ E-House Triol SOLUCIONES\": [\n            \"SOLUCIONES\"\n          ]\n        }\n      }\n    },\n    \"Variadores \/ Drives\": {\n      \"ABB\": {\n        \"Series ACS580\": {\n          \"Equipo Series ACS580 Abb SERIES\": [\n            \"SERIES\"\n          ]\n        },\n        \"Series ACS880\": {\n          \"Equipo Series ACS880 Abb SERIES\": [\n            \"SERIES\"\n          ]\n        },\n        \"Series DCS880)\": {\n          \"Equipo Series DCS880) Abb SERIES\": [\n            \"SERIES\"\n          ]\n        }\n      },\n      \"SCHNEIDER ELECTRIC\": {\n        \"Altivar\u2122 ATV320\": {\n          \"Equipo Altivar\u2122 ATV320 Schneider Electric ALTIVAR\": [\n            \"ALTIVAR\"\n          ]\n        },\n        \"Altivar\u2122 ATV600\": {\n          \"Equipo Altivar\u2122 ATV600 Schneider Electric ALTIVAR\": [\n            \"ALTIVAR\"\n          ]\n        },\n        \"Altivar\u2122 ATV900\": {\n          \"Equipo Altivar\u2122 ATV900 Schneider Electric ALTIVAR\": [\n            \"ALTIVAR\"\n          ]\n        }\n      },\n      \"SIEMENS\": {\n        \"SINAMICS\u00ae series G120\": {\n          \"Equipo SINAMICS\u00ae series G120 Siemens SINAMICS\": [\n            \"SINAMICS\"\n          ]\n        },\n        \"SINAMICS\u00ae series S120\": {\n          \"Equipo SINAMICS\u00ae series S120 Siemens SINAMICS\": [\n            \"SINAMICS\"\n          ]\n        },\n        \"SINAMICS\u00ae series V20\": {\n          \"Equipo SINAMICS\u00ae series V20 Siemens SINAMICS\": [\n            \"SINAMICS\"\n          ]\n        }\n      },\n      \"WEG\": {\n        \"CFW11M (BT)\": {\n          \"Equipo CFW11M (BT) Weg CFW11M\": [\n            \"CFW11M\"\n          ]\n        },\n        \"MVW-01\": {\n          \"Equipo MVW-01 Weg MVW-01\": [\n            \"MVW-01\"\n          ]\n        },\n        \"MVW3000 (MT)\": {\n          \"Equipo MVW3000 (MT) Weg MVW3000\": [\n            \"MVW3000\"\n          ]\n        }\n      },\n      \"CHINT\": {\n        \"Series NVF2G\": {\n          \"Equipo Series NVF2G Chint SERIES\": [\n            \"SERIES\"\n          ]\n        },\n        \"NVF5\": {\n          \"Equipo NVF5 Chint NVF5\": [\n            \"NVF5\"\n          ]\n        }\n      },\n      \"TRIOL\": {\n        \"AK06 (BT)\": {\n          \"Equipo AK06 (BT) Triol AK06\": [\n            \"AK06\"\n          ]\n        },\n        \"AT24 (BT)\": {\n          \"Equipo AT24 (BT) Triol AT24\": [\n            \"AT24\"\n          ]\n        },\n        \"AT27 (MT)\": {\n          \"Equipo AT27 (MT) Triol AT27\": [\n            \"AT27\"\n          ]\n        }\n      }\n    },\n    \"Reguladores de Voltaje\": {\n      \"ABB\": {\n        \"UNITROL\u00ae (excitaci&oacute;n)\": {\n          \"Equipo UNITROL\u00ae (excitaci&oacute;n) Abb UNITROL\": [\n            \"UNITROL\"\n          ]\n        },\n        \"FCR (distribuci&oacute;n)\": {\n          \"Equipo FCR (distribuci&oacute;n) Abb\": []\n        },\n        \"FVR (distribuci&oacute;n)\": {\n          \"Equipo FVR (distribuci&oacute;n) Abb\": []\n        }\n      },\n      \"WEG\": {\n        \"Serie AG-10 (excitaci&oacute;n)\": {\n          \"Equipo Serie AG-10 (excitaci&oacute;n) Weg SERIE\": [\n            \"SERIE\"\n          ]\n        }\n      },\n      \"CHINT\": {\n        \"Series TND\": {\n          \"Equipo Series TND Chint SERIES\": [\n            \"SERIES\"\n          ]\n        },\n        \"SVC\": {\n          \"Equipo SVC Chint\": []\n        }\n      },\n      \"BASLER ELECTRIC\": {\n        \"Series DECS\": {\n          \"Equipo Series DECS Basler Electric SERIES\": [\n            \"SERIES\"\n          ]\n        },\n        \"AVC\": {\n          \"Equipo AVC Basler Electric\": []\n        }\n      }\n    },\n    \"Arranque (Starters)\": {\n      \"ABB\": {\n        \"PSTX\": {\n          \"Equipo PSTX Abb PSTX\": [\n            \"PSTX\"\n          ]\n        },\n        \"PSE (suaves)\": {\n          \"Equipo PSE (suaves) Abb SUAVES\": [\n            \"SUAVES\"\n          ]\n        },\n        \"MS\": {\n          \"Equipo MS Abb\": []\n        },\n        \"MO (guardamotores)\": {\n          \"Equipo MO (guardamotores) Abb GUARDAMOTORES\": [\n            \"GUARDAMOTORES\"\n          ]\n        }\n      },\n      \"SCHNEIDER ELECTRIC\": {\n        \"TeSys\u2122 series U\": {\n          \"Equipo TeSys\u2122 series U Schneider Electric TESYS\": [\n            \"TESYS\"\n          ]\n        },\n        \"TeSys\u2122 series T\": {\n          \"Equipo TeSys\u2122 series T Schneider Electric TESYS\": [\n            \"TESYS\"\n          ]\n        },\n        \"TeSys\u2122 series Giga\": {\n          \"Equipo TeSys\u2122 series Giga Schneider Electric TESYS\": [\n            \"TESYS\"\n          ]\n        }\n      },\n      \"SIEMENS\": {\n        \"SIRIUS\u00ae\": {\n          \"Equipo SIRIUS\u00ae Siemens SIRIUS\": [\n            \"SIRIUS\"\n          ]\n        }\n      },\n      \"WEG\": {\n        \"SSW7000 (MT)\": {\n          \"Equipo SSW7000 (MT) Weg SSW7000\": [\n            \"SSW7000\"\n          ]\n        },\n        \"SSW06 (BT)\": {\n          \"Equipo SSW06 (BT) Weg SSW06\": [\n            \"SSW06\"\n          ]\n        }\n      },\n      \"CHINT\": {\n        \"NJR2 (suaves)\": {\n          \"Equipo NJR2 (suaves) Chint NJR2\": [\n            \"NJR2\"\n          ]\n        },\n        \"NS2 (guardamotores)\": {\n          \"Equipo NS2 (guardamotores) Chint NS2\": [\n            \"NS2\"\n          ]\n        }\n      }\n    },\n    \"Cables \/ MT-AT\": {\n      \"ABB\": {\n        \"Cylon\u00ae\": {\n          \"Equipo Cylon\u00ae Abb CYLON\": [\n            \"CYLON\"\n          ]\n        },\n        \"ABB i-bus\u00ae KNX\": {\n          \"Equipo ABB i-bus\u00ae KNX Abb\": []\n        },\n        \"controladores BACnet\": {\n          \"Equipo controladores BACnet Abb CONTROLADORES\": [\n            \"CONTROLADORES\"\n          ]\n        }\n      },\n      \"SCHNEIDER ELECTRIC\": {\n        \"EcoStruxure\u2122 Building Operation\": {\n          \"Equipo EcoStruxure\u2122 Building Operation Schneider Electric ECOSTRUXURE\": [\n            \"ECOSTRUXURE\"\n          ]\n        },\n        \"Termostatos SE8000\": {\n          \"Equipo Termostatos SE8000 Schneider Electric TERMOSTATOS\": [\n            \"TERMOSTATOS\"\n          ]\n        }\n      },\n      \"SIEMENS\": {\n        \"Desigo\u2122 CC\": {\n          \"Equipo Desigo\u2122 CC Siemens DESIGO\": [\n            \"DESIGO\"\n          ]\n        },\n        \"Climatix\u2122\": {\n          \"Equipo Climatix\u2122 Siemens CLIMATIX\": [\n            \"CLIMATIX\"\n          ]\n        },\n        \"controladores Synco\u2122\": {\n          \"Equipo controladores Synco\u2122 Siemens CONTROLADORES\": [\n            \"CONTROLADORES\"\n          ]\n        }\n      }\n    },\n    \"Actuador\": {\n      \"ABB\": {\n        \"Series Contrac\": {\n          \"Equipo Series Contrac Abb SERIES\": [\n            \"SERIES\"\n          ]\n        },\n        \"PME\/RME\": {\n          \"Equipo PME\/RME Abb\": []\n        }\n      },\n      \"SCHNEIDER ELECTRIC\": {\n        \"Forte\u2122\": {\n          \"Equipo Forte\u2122 Schneider Electric FORTE\": [\n            \"FORTE\"\n          ]\n        },\n        \"M-series\": {\n          \"Equipo M-series Schneider Electric SERIES\": [\n            \"SERIES\"\n          ]\n        },\n        \"actuadores SmartX\": {\n          \"Equipo actuadores SmartX Schneider Electric ACTUADORES\": [\n            \"ACTUADORES\"\n          ]\n        }\n      },\n      \"SIEMENS\": {\n        \"SIPART\u00ae PS2\": {\n          \"Equipo SIPART\u00ae PS2 Siemens SIPART\": [\n            \"SIPART\"\n          ]\n        },\n        \"Sipart\u00ae DR\": {\n          \"Equipo Sipart\u00ae DR Siemens SIPART\": [\n            \"SIPART\"\n          ]\n        }\n      },\n      \"VALTEK\": {\n        \"VL Series\": {\n          \"Equipo VL Series Valtek SERIES\": [\n            \"SERIES\"\n          ]\n        },\n        \"posicionadores digitales Logix\u2122\": {\n          \"Equipo posicionadores digitales Logix\u2122 Valtek POSICIONADORES\": [\n            \"POSICIONADORES\"\n          ]\n        }\n      },\n      \"WOODWARD\": {\n        \"ProAct\u2122\": {\n          \"Equipo ProAct\u2122 Woodward PROACT\": [\n            \"PROACT\"\n          ]\n        },\n        \"L-Series\": {\n          \"Equipo L-Series Woodward SERIES\": [\n            \"SERIES\"\n          ]\n        },\n        \"UG\": {\n          \"Equipo UG Woodward\": []\n        }\n      }\n    },\n    \"Interruptores Retrofit\": {\n      \"ABB\": {\n        \"VD4-R\": {\n          \"Equipo VD4-R Abb VD4-R\": [\n            \"VD4-R\"\n          ]\n        },\n        \"HD4-R\": {\n          \"Equipo HD4-R Abb HD4-R\": [\n            \"HD4-R\"\n          ]\n        },\n        \"VM1-R\": {\n          \"Equipo VM1-R Abb VM1-R\": [\n            \"VM1-R\"\n          ]\n        }\n      },\n      \"SCHNEIDER ELECTRIC\": {\n        \"Soluciones EcoFit\u2122 MasterPact\u2122\": {\n          \"Equipo Soluciones EcoFit\u2122 MasterPact\u2122 Schneider Electric SOLUCIONES\": [\n            \"SOLUCIONES\"\n          ]\n        },\n        \"Soluciones EcoFit\u2122 PowerPact\u2122\": {\n          \"Equipo Soluciones EcoFit\u2122 PowerPact\u2122 Schneider Electric SOLUCIONES\": [\n            \"SOLUCIONES\"\n          ]\n        }\n      },\n      \"SIEMENS\": {\n        \"Soluciones para Sentron\u2122 3WL\/3VL\": {\n          \"Equipo Soluciones para Sentron\u2122 3WL\/3VL Siemens SOLUCIONES\": [\n            \"SOLUCIONES\"\n          ]\n        },\n        \"Soluciones para Sentron\u2122 3VA\": {\n          \"Equipo Soluciones para Sentron\u2122 3VA Siemens SOLUCIONES\": [\n            \"SOLUCIONES\"\n          ]\n        }\n      },\n      \"WEG\": {\n        \"General\": {\n          \"Equipo Weg Interruptores Retrofit\": []\n        }\n      }\n    },\n    \"Gobernador \/ Controlador de Velocidad\": {\n      \"BASLER ELECTRIC\": {\n        \"BE2000GU\": {\n          \"Equipo BE2000GU Basler Electric BE2000GU\": [\n            \"BE2000GU\"\n          ]\n        }\n      },\n      \"DEIF\": {\n        \"GPC-3\": {\n          \"Equipo GPC-3 Deif GPC-3\": [\n            \"GPC-3\"\n          ]\n        },\n        \"AGC-4\": {\n          \"Equipo AGC-4 Deif AGC-4\": [\n            \"AGC-4\"\n          ]\n        }\n      },\n      \"DYNALCO\": {\n        \"STC-202\": {\n          \"Equipo STC-202 Dynalco STC-202\": [\n            \"STC-202\"\n          ]\n        }\n      },\n      \"WOODWARD\": {\n        \"505\": {\n          \"Equipo 505 Woodward\": []\n        },\n        \"2301E\": {\n          \"Equipo 2301E Woodward 2301E\": [\n            \"2301E\"\n          ]\n        },\n        \"Easygen\": {\n          \"Equipo Easygen Woodward EASYGEN\": [\n            \"EASYGEN\"\n          ]\n        },\n        \"AtlasSC\u00ae\": {\n          \"Equipo AtlasSC\u00ae Woodward ATLASSC\": [\n            \"ATLASSC\"\n          ]\n        }\n      }\n    }\n  },\n  \"Cable El&eacute;ctrico\": {\n    \"Cables \/ MT-AT\": {\n      \"KEI\": {\n        \"Poly AL\": {\n          \"Stranded compacted circular 630\": [\n            \"76\/132\"\n          ],\n          \"Stranded compacted circular 500\": [\n            \"127\/220\"\n          ]\n        },\n        \"Smooth Aluminium Sheath\": {\n          \"Stranded compacted circular 500\": [\n            \"127\/220\"\n          ],\n          \"Stranded Milliken Overall compacted circular 500\": [\n            \"127\/220\"\n          ]\n        },\n        \"Corrugated Copper Sheath\": {\n          \"Stranded compacted circular 500\": [\n            \"127\/220\"\n          ],\n          \"Stranded Milliken Overall compacted circular 500\": [\n            \"127\/220\"\n          ],\n          \"Stranded compacted circular 400\": [\n            \"127\/220\"\n          ],\n          \"Stranded Milliken Overall compacted circular 1000\": [\n            \"127\/220\"\n          ],\n          \"Stranded Milliken Overall compacted circular 630\": [\n            \"190\/330\"\n          ]\n        },\n        \"Corrugated Stainless Steel Sheath\": {\n          \"Stranded compacted circular 630\": [\n            \"220\/400\"\n          ]\n        }\n      }\n    },\n    \"ESP\": {\n      \"KEI\": {\n        \"Arteria Flat\": {\n          \"PG\": [\n            \"180F\"\n          ],\n          \"PEG\": [\n            \"205F\"\n          ],\n          \"EEG\": [\n            \"290F\"\n          ],\n          \"ELG\": [\n            \"400F\",\n            \"450F\"\n          ],\n          \"EFG\": [\n            \"400F\"\n          ],\n          \"KEFLG\": [\n            \"450F\"\n          ],\n          \"KEFLG-CT\": [\n            \"450F\"\n          ],\n          \"KEFLM\": [\n            \"450F\"\n          ]\n        }\n      }\n    }\n  }\n}<\/script>\n<script type=\"application\/json\" id=\"vms-supply-json-flat\">[\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"SIGNIFY (PHILIPS)\",\n    \"Familia\": \"GentleSpace gen4\",\n    \"Nombre Comercial\": \"High-bay LED, &oacute;ptica narrow, montaje suspensi&oacute;n\",\n    \"Modelo\": \"BY480P G4 200W 840 NB PSU\",\n    \"ID_Producto\": \"D76BF72EB49E\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"SIGNIFY (PHILIPS)\",\n    \"Familia\": \"GentleSpace gen4\",\n    \"Nombre Comercial\": \"High-bay LED, &oacute;ptica wide, driver DALI\",\n    \"Modelo\": \"BY480P G4 240W 857 WB DALI\",\n    \"ID_Producto\": \"36877103D494\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"SIGNIFY (PHILIPS)\",\n    \"Familia\": \"CoreLine High-bay\",\n    \"Nombre Comercial\": \"High-bay LED, &oacute;ptica NB, montaje gancho\",\n    \"Modelo\": \"BY121P 110W 840 PSU NB\",\n    \"ID_Producto\": \"DC858D17F8DB\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Industrial Estanco \/ IP65 \/ IP66\",\n    \"Marca\": \"SIGNIFY (PHILIPS)\",\n    \"Familia\": \"Pacific LED\",\n    \"Nombre Comercial\": \"L&iacute;neal estanco para industria, &oacute;ptica wide\",\n    \"Modelo\": \"WT470C 49W 840 PSU WB\",\n    \"ID_Producto\": \"C6F3AD51F884\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"SIGNIFY (PHILIPS)\",\n    \"Familia\": \"RoadFlair\",\n    \"Nombre Comercial\": \"Cobra head LED para vialidad, regulaci&oacute;n 1-10V\",\n    \"Modelo\": \"BRP392 LED120 740 PSU DM 1A\",\n    \"ID_Producto\": \"78C910966C23\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"SIGNIFY (LUMEC)\",\n    \"Familia\": \"RoadView\",\n    \"Nombre Comercial\": \"Luminario vial (cobra head) con &oacute;ptica tipo II\",\n    \"Modelo\": \"RVM-2-LED-120-740-UNV\",\n    \"ID_Producto\": \"7A4FD6B532F6\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Emergencia \/ Se&ntilde;alizaci&oacute;n\",\n    \"Marca\": \"SIGNIFY (BODINE)\",\n    \"Familia\": \"Emergency Drivers\",\n    \"Nombre Comercial\": \"M&oacute;dulo emergencia LED 10W C1D2 (compatibilidad)\",\n    \"Modelo\": \"BSL310AT6\",\n    \"ID_Producto\": \"748F82AC28A1\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"ACUITY (HOLOPHANE)\",\n    \"Familia\": \"Phuzion RPHZ\",\n    \"Nombre Comercial\": \"High-bay remoto, 170W 4000K, 120\u2013277V\",\n    \"Modelo\": \"RPHZ 170W 40K UNV MOUNT-S\",\n    \"ID_Producto\": \"529E87E5DD3B\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"ACUITY (HOLOPHANE)\",\n    \"Familia\": \"HXPL\",\n    \"Nombre Comercial\": \"High-bay HazLoc, 254W 5000K, 347\u2013480V\",\n    \"Modelo\": \"HXPL 254W 50K 347-480V\",\n    \"ID_Producto\": \"5790372C9163\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"ACUITY (HOLOPHANE)\",\n    \"Familia\": \"Petrolux II\",\n    \"Nombre Comercial\": \"Luminario industrial cerrado, 218W\",\n    \"Modelo\": \"PLX2 218W 40K UNV\",\n    \"ID_Producto\": \"EF5B24B58589\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"ACUITY (LITHONIA)\",\n    \"Familia\": \"JCBL\",\n    \"Nombre Comercial\": \"High-bay LED, campana, 200W 5000K\",\n    \"Modelo\": \"JCBL 200W 50K MVOLT\",\n    \"ID_Producto\": \"65D7C2452543\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"ACUITY (LITHONIA)\",\n    \"Familia\": \"Compact Pro\",\n    \"Nombre Comercial\": \"High-bay compacto 155W 4000K\",\n    \"Modelo\": \"CPHB 155W 40K MVOLT\",\n    \"ID_Producto\": \"7254E34BDEEA\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"ACUITY (AEL\/HOLOPHANE)\",\n    \"Familia\": \"D-Series Roadway\",\n    \"Nombre Comercial\": \"Cobra head vialidad DSX1\",\n    \"Modelo\": \"DSX1 LED 120W 40K MVOLT\",\n    \"ID_Producto\": \"DC4E61433A6D\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"DIALIGHT\",\n    \"Familia\": \"SafeSite High Bay\",\n    \"Nombre Comercial\": \"High-bay HazLoc C1D2, 150W 4000K, 120\u2013277V\",\n    \"Modelo\": \"HBL1C2D1A-150-UNV-40K\",\n    \"ID_Producto\": \"2212FCA24ECD\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"DIALIGHT\",\n    \"Familia\": \"Vigilant High Bay\",\n    \"Nombre Comercial\": \"High-bay industrial 200W 5000K\",\n    \"Modelo\": \"HBD2-200-UNV-50K\",\n    \"ID_Producto\": \"8F0A1C6021F4\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"DIALIGHT\",\n    \"Familia\": \"ProSite Flood\",\n    \"Nombre Comercial\": \"Proyector industrial 300W 5000K\",\n    \"Modelo\": \"PSF-300-UNV-50K\",\n    \"ID_Producto\": \"E0D7FAAF5C01\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"CURRENT (GE + HUBBELL + BEACON)\",\n    \"Familia\": \"Evolve ERL1\",\n    \"Nombre Comercial\": \"Cobra head vialidad, Type II, 120W 4000K\",\n    \"Modelo\": \"ERL1-120W-40K-UNV-T2\",\n    \"ID_Producto\": \"A5F1E8B0368B\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"CURRENT (GE + HUBBELL + BEACON)\",\n    \"Familia\": \"Evolve ERL2\",\n    \"Nombre Comercial\": \"Cobra head vialidad, Type III, 200W 5000K\",\n    \"Modelo\": \"ERL2-200W-50K-UNV-T3\",\n    \"ID_Producto\": \"5EEAA9F32357\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"CURRENT (HUBBELL)\",\n    \"Familia\": \"Areamaster Gen 3\",\n    \"Nombre Comercial\": \"Proyector\/&aacute;rea industrial 300W 5000K\",\n    \"Modelo\": \"AM20-300-UNV-50K\",\n    \"ID_Producto\": \"7C7DA06E153E\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"LEDVANCE\",\n    \"Familia\": \"High-Bay Gen4\",\n    \"Nombre Comercial\": \"UFO High-bay 150W 4000K, driver UNV\",\n    \"Modelo\": \"HB4-150-UNV-40K-UFO\",\n    \"ID_Producto\": \"FB4B0CAACD39\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"LEDVANCE\",\n    \"Familia\": \"High-Bay Flex\",\n    \"Nombre Comercial\": \"UFO High-bay flexible 200W 5000K\",\n    \"Modelo\": \"HBF-200-UNV-50K-UFO\",\n    \"ID_Producto\": \"338135C97632\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"LEDVANCE\",\n    \"Familia\": \"Streetlight Compact\",\n    \"Nombre Comercial\": \"Vialidad compacta Type II 120W 4000K\",\n    \"Modelo\": \"STC-120-UNV-40K-T2\",\n    \"ID_Producto\": \"D448DD5D5674\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"LEDVANCE\",\n    \"Familia\": \"Floodlight 200W\",\n    \"Nombre Comercial\": \"Proyector LED 200W 5000K\",\n    \"Modelo\": \"FL-200-UNV-50K\",\n    \"ID_Producto\": \"4BC583B933A6\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Industrial Estanco \/ IP65 \/ IP66\",\n    \"Marca\": \"LEDVANCE\",\n    \"Familia\": \"Damp Proof\",\n    \"Nombre Comercial\": \"L&iacute;neal estanco 55W 4000K\",\n    \"Modelo\": \"DP-55-UNV-40K\",\n    \"ID_Producto\": \"ED7880FA085A\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"LEDVANCE\",\n    \"Familia\": \"L&iacute;near Industry\",\n    \"Nombre Comercial\": \"L&iacute;neal industrial 60W 4000K\",\n    \"Modelo\": \"LIN-60-UNV-40K\",\n    \"ID_Producto\": \"37C795E6F124\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"THORN (ZUMTOBEL GROUP)\",\n    \"Familia\": \"Isaro Pro\",\n    \"Nombre Comercial\": \"Vialidad LED, Type II, 64 LED, 4000K\",\n    \"Modelo\": \"ISAROPRO-LED-64L-740-UNV-T2\",\n    \"ID_Producto\": \"B7B02D048DE3\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"THORN (ZUMTOBEL GROUP)\",\n    \"Familia\": \"Avenue F\",\n    \"Nombre Comercial\": \"Vialidad LED, Type III, 96 LED, 4000K\",\n    \"Modelo\": \"AVENUEF-LED-96L-740-UNV-T3\",\n    \"ID_Producto\": \"CC22FF519713\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"THORN (ZUMTOBEL GROUP)\",\n    \"Familia\": \"ForceLED\",\n    \"Nombre Comercial\": \"High-bay LED industrial 200W 4000K\",\n    \"Modelo\": \"FORCELED-200W-40K\",\n    \"ID_Producto\": \"D616003D91C7\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"THORN (ZUMTOBEL GROUP)\",\n    \"Familia\": \"HiBay\",\n    \"Nombre Comercial\": \"Campana industrial 150W 5000K\",\n    \"Modelo\": \"HIBAY-150W-50K\",\n    \"ID_Producto\": \"4339A1AD6239\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"TECNOLITE\",\n    \"Familia\": \"UFO High-Bay\",\n    \"Nombre Comercial\": \"High-bay UFO 150W 4000K\",\n    \"Modelo\": \"UFO-150W-40K-IP65\",\n    \"ID_Producto\": \"44069EFB7EB6\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"CONSTRULITA\",\n    \"Familia\": \"Faroled\",\n    \"Nombre Comercial\": \"Vialidad 120W 4000K &oacute;ptica T2\",\n    \"Modelo\": \"FAROLED-120W-40K-T2\",\n    \"ID_Producto\": \"21FC3BBDCA5A\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"CONSTRULITA\",\n    \"Familia\": \"Evolight\",\n    \"Nombre Comercial\": \"L&iacute;neal industrial 60W 4000K\",\n    \"Modelo\": \"EVOLIGHT-60W-40K\",\n    \"ID_Producto\": \"E1130D82B32F\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Industrial Estanco \/ IP65 \/ IP66\",\n    \"Marca\": \"TECNOLITE\",\n    \"Familia\": \"L&iacute;neal 150W\",\n    \"Nombre Comercial\": \"L&iacute;neal estanco 150W 5000K\",\n    \"Modelo\": \"LINEAL-150W-50K-IP65\",\n    \"ID_Producto\": \"EB08F1AD3960\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Industrial Estanco \/ IP65 \/ IP66\",\n    \"Marca\": \"CONSTRULITA\",\n    \"Familia\": \"ProFlood\",\n    \"Nombre Comercial\": \"Proyector 200W 5000K IP66\",\n    \"Modelo\": \"PROFLOOD-200W-50K-IP66\",\n    \"ID_Producto\": \"076F3CE79335\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"BEGHELLI\",\n    \"Familia\": \"Acciaio ATEX\",\n    \"Nombre Comercial\": \"Luminaria industrial ATEX Zona 1, 4000K, LED\",\n    \"Modelo\": \"ACCIAIO-ATEX-Z1-LED-40K-UNV\",\n    \"ID_Producto\": \"603CD678F538\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Emergencia \/ Se&ntilde;alizaci&oacute;n\",\n    \"Marca\": \"BEGHELLI\",\n    \"Familia\": \"Lungalargaluce Extreme\",\n    \"Nombre Comercial\": \"Luminaria de emergencia ATEX, 50W 4000K\",\n    \"Modelo\": \"LLX-ATEX-EM-50-UNV-40K\",\n    \"ID_Producto\": \"19488607E5D4\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"BEGHELLI\",\n    \"Familia\": \"Exlux\",\n    \"Nombre Comercial\": \"L&iacute;neal industrial ATEX 60W 5000K\",\n    \"Modelo\": \"EXLUX-LED-60-UNV-50K\",\n    \"ID_Producto\": \"5B47E5E10D47\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"OPPLE\",\n    \"Familia\": \"High-Bay\",\n    \"Nombre Comercial\": \"High-bay 150W 4000K\",\n    \"Modelo\": \"OP-HB-150W-40K-UNV\",\n    \"ID_Producto\": \"3820FB9B9D7E\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Industrial Estanco \/ IP65 \/ IP66\",\n    \"Marca\": \"OPPLE\",\n    \"Familia\": \"Waterproof\",\n    \"Nombre Comercial\": \"L&iacute;neal estanco 60W 4000K\",\n    \"Modelo\": \"OP-WP-60W-40K-IP66\",\n    \"ID_Producto\": \"CF211EA4A608\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"OPPLE\",\n    \"Familia\": \"Streetlight LED\",\n    \"Nombre Comercial\": \"Vialidad 120W 4000K &oacute;ptica T2\",\n    \"Modelo\": \"OP-ST-120W-40K-T2\",\n    \"ID_Producto\": \"C5C105038D2B\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"SUPRA (SUPRALUX)\",\n    \"Familia\": \"Industrial Line\",\n    \"Nombre Comercial\": \"Luminaria Industrial Line Supra (Supralux) SUP-IND-150W-40K-UFO\",\n    \"Modelo\": \"SUP-IND-150W-40K-UFO\",\n    \"ID_Producto\": \"BE51B4F02C40\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"MAGG\",\n    \"Familia\": \"Industrial LED\",\n    \"Nombre Comercial\": \"High-bay industrial 100W 4000K\",\n    \"Modelo\": \"MAGG-IND-100W-40K\",\n    \"ID_Producto\": \"7A2435A218CC\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Industrial Estanco \/ IP65 \/ IP66\",\n    \"Marca\": \"BOOMER\",\n    \"Familia\": \"ProLine Flood\",\n    \"Nombre Comercial\": \"Proyector 200W 5000K IP66\",\n    \"Modelo\": \"BOO-PF-200W-50K-IP66\",\n    \"ID_Producto\": \"9A97AAD7FA87\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"BOOMER\",\n    \"Familia\": \"StreetLED\",\n    \"Nombre Comercial\": \"Vialidad 120W 4000K Type III\",\n    \"Modelo\": \"BOO-ST-120W-40K-T3\",\n    \"ID_Producto\": \"AFA6BDF06D78\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"BOOMER\",\n    \"Familia\": \"Industrial High-Bay\",\n    \"Nombre Comercial\": \"Versa 2.0\",\n    \"Modelo\": \"HB0108PC\",\n    \"ID_Producto\": \"4E9AFC358BC5\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"HAVELLS\",\n    \"Familia\": \"Highbay Series\",\n    \"Nombre Comercial\": \"High-bay 200W 5000K\",\n    \"Modelo\": \"HVL-HB-200W-50K\",\n    \"ID_Producto\": \"C315105874A6\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"HAVELLS\",\n    \"Familia\": \"Well-glass\",\n    \"Nombre Comercial\": \"Well-glass industrial 100W 4000K\",\n    \"Modelo\": \"HVL-WG-100W-40K\",\n    \"ID_Producto\": \"47FE75A22D14\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"HAVELLS\",\n    \"Familia\": \"Street Flood Series\",\n    \"Nombre Comercial\": \"Vialidad\/flood 150W 4000K\",\n    \"Modelo\": \"HVL-ST-150W-40K-T2\",\n    \"ID_Producto\": \"8254BB10731A\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"ERCO\",\n    \"Familia\": \"Lightscan\",\n    \"Nombre Comercial\": \"Proyector exterior, 36W 4000K, &oacute;ptica narrow\",\n    \"Modelo\": \"ERCO-LS-36W-40K-NB\",\n    \"ID_Producto\": \"196363899190\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"ERCO\",\n    \"Familia\": \"Kona\",\n    \"Nombre Comercial\": \"Proyector exterior, 84W 3000K, &oacute;ptica wide\",\n    \"Modelo\": \"ERCO-KO-84W-30K-WB\",\n    \"ID_Producto\": \"A97EC747F2F6\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"ERCO\",\n    \"Familia\": \"Focalflood\",\n    \"Nombre Comercial\": \"Ba&ntilde;o de pared focal 24W 4000K\",\n    \"Modelo\": \"ERCO-FF-24W-40K-LN\",\n    \"ID_Producto\": \"79635820500D\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"THORN (ZUMTOBEL GROUP)\",\n    \"Familia\": \"Contrast\",\n    \"Nombre Comercial\": \"Proyector arquitect&oacute;nico 40W 4000K\",\n    \"Modelo\": \"CONTRAST-LED-40-4K\",\n    \"ID_Producto\": \"1BFC10C8A472\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"THORN (ZUMTOBEL GROUP)\",\n    \"Familia\": \"Champ Pro\",\n    \"Nombre Comercial\": \"Proyector deportivo\/&aacute;rea 200W 4000K\",\n    \"Modelo\": \"CHAMPPRO-LED-200-4K\",\n    \"ID_Producto\": \"69F0494BBE3B\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"ABB\",\n    \"Familia\": \"MNS\u00ae\",\n    \"Nombre Comercial\": \"Equipo MNS\u00ae Abb\",\n    \"Modelo\": \"\",\n    \"ID_Producto\": \"400AFCC60C6D\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"ABB\",\n    \"Familia\": \"MNS-Up\",\n    \"Nombre Comercial\": \"Equipo MNS-Up Abb\",\n    \"Modelo\": \"\",\n    \"ID_Producto\": \"DCEEA816EE46\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"ABB\",\n    \"Familia\": \"System pro E power\",\n    \"Nombre Comercial\": \"Equipo System pro E power Abb SYSTEM\",\n    \"Modelo\": \"SYSTEM\",\n    \"ID_Producto\": \"B6298028A4D6\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"ABB\",\n    \"Familia\": \"NeoGear\u2122\",\n    \"Nombre Comercial\": \"Equipo NeoGear\u2122 Abb NEOGEAR\",\n    \"Modelo\": \"NEOGEAR\",\n    \"ID_Producto\": \"83733A3EC67A\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"ABB\",\n    \"Familia\": \"System pro E energy\",\n    \"Nombre Comercial\": \"Equipo System pro E energy Abb SYSTEM\",\n    \"Modelo\": \"SYSTEM\",\n    \"ID_Producto\": \"C381B637893E\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"ABB\",\n    \"Familia\": \"Compact MNS\",\n    \"Nombre Comercial\": \"Equipo Compact MNS Abb COMPACT\",\n    \"Modelo\": \"COMPACT\",\n    \"ID_Producto\": \"8ED2D80B4327\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"ABB\",\n    \"Familia\": \"ProLine Panelboards\",\n    \"Nombre Comercial\": \"Equipo ProLine Panelboards Abb PROLINE\",\n    \"Modelo\": \"PROLINE\",\n    \"ID_Producto\": \"603029FC1659\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"ABB\",\n    \"Familia\": \"Gabinetes NEMA\",\n    \"Nombre Comercial\": \"Equipo Gabinetes NEMA Abb GABINETES\",\n    \"Modelo\": \"GABINETES\",\n    \"ID_Producto\": \"A58682D2BC45\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"ABB\",\n    \"Familia\": \"Gemini\",\n    \"Nombre Comercial\": \"Equipo Gemini Abb GEMINI\",\n    \"Modelo\": \"GEMINI\",\n    \"ID_Producto\": \"8C6488F943C6\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"ABB\",\n    \"Familia\": \"System pro E control\",\n    \"Nombre Comercial\": \"Equipo System pro E control Abb SYSTEM\",\n    \"Modelo\": \"SYSTEM\",\n    \"ID_Producto\": \"8FCE39E9D868\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Variadores \/ Drives\",\n    \"Marca\": \"ABB\",\n    \"Familia\": \"Series ACS580\",\n    \"Nombre Comercial\": \"Equipo Series ACS580 Abb SERIES\",\n    \"Modelo\": \"SERIES\",\n    \"ID_Producto\": \"F58C058D473A\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Variadores \/ Drives\",\n    \"Marca\": \"ABB\",\n    \"Familia\": \"Series ACS880\",\n    \"Nombre Comercial\": \"Equipo Series ACS880 Abb SERIES\",\n    \"Modelo\": \"SERIES\",\n    \"ID_Producto\": \"2672C743F1E9\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Variadores \/ Drives\",\n    \"Marca\": \"ABB\",\n    \"Familia\": \"Series DCS880)\",\n    \"Nombre Comercial\": \"Equipo Series DCS880) Abb SERIES\",\n    \"Modelo\": \"SERIES\",\n    \"ID_Producto\": \"3AC8E1319515\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Reguladores de Voltaje\",\n    \"Marca\": \"ABB\",\n    \"Familia\": \"UNITROL\u00ae (excitaci&oacute;n)\",\n    \"Nombre Comercial\": \"Equipo UNITROL\u00ae (excitaci&oacute;n) Abb UNITROL\",\n    \"Modelo\": \"UNITROL\",\n    \"ID_Producto\": \"0DADF2F94DAE\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Reguladores de Voltaje\",\n    \"Marca\": \"ABB\",\n    \"Familia\": \"FCR (distribuci&oacute;n)\",\n    \"Nombre Comercial\": \"Equipo FCR (distribuci&oacute;n) Abb\",\n    \"Modelo\": \"\",\n    \"ID_Producto\": \"35B0270AA13E\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Reguladores de Voltaje\",\n    \"Marca\": \"ABB\",\n    \"Familia\": \"FVR (distribuci&oacute;n)\",\n    \"Nombre Comercial\": \"Equipo FVR (distribuci&oacute;n) Abb\",\n    \"Modelo\": \"\",\n    \"ID_Producto\": \"2BCE723D0B88\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Arranque (Starters)\",\n    \"Marca\": \"ABB\",\n    \"Familia\": \"PSTX\",\n    \"Nombre Comercial\": \"Equipo PSTX Abb PSTX\",\n    \"Modelo\": \"PSTX\",\n    \"ID_Producto\": \"1B81B1B4E4AC\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Arranque (Starters)\",\n    \"Marca\": \"ABB\",\n    \"Familia\": \"PSE (suaves)\",\n    \"Nombre Comercial\": \"Equipo PSE (suaves) Abb SUAVES\",\n    \"Modelo\": \"SUAVES\",\n    \"ID_Producto\": \"82A365F0D69C\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Arranque (Starters)\",\n    \"Marca\": \"ABB\",\n    \"Familia\": \"MS\",\n    \"Nombre Comercial\": \"Equipo MS Abb\",\n    \"Modelo\": \"\",\n    \"ID_Producto\": \"C9097269F185\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Arranque (Starters)\",\n    \"Marca\": \"ABB\",\n    \"Familia\": \"MO (guardamotores)\",\n    \"Nombre Comercial\": \"Equipo MO (guardamotores) Abb GUARDAMOTORES\",\n    \"Modelo\": \"GUARDAMOTORES\",\n    \"ID_Producto\": \"5BD81FA46C96\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"ABB\",\n    \"Familia\": \"GIS\",\n    \"Nombre Comercial\": \"Equipo GIS Abb\",\n    \"Modelo\": \"\",\n    \"ID_Producto\": \"D2DA0BBB5413\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"ABB\",\n    \"Familia\": \"PASS\",\n    \"Nombre Comercial\": \"Equipo PASS Abb PASS\",\n    \"Modelo\": \"PASS\",\n    \"ID_Producto\": \"41698B4C80C1\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"ABB\",\n    \"Familia\": \"Subestaciones M&oacute;viles\",\n    \"Nombre Comercial\": \"Equipo Subestaciones M&oacute;viles Abb SUBESTACIONES\",\n    \"Modelo\": \"SUBESTACIONES\",\n    \"ID_Producto\": \"07C32CC001E1\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"ABB\",\n    \"Familia\": \"Subestaciones Digitales\",\n    \"Nombre Comercial\": \"Equipo Subestaciones Digitales Abb SUBESTACIONES\",\n    \"Modelo\": \"SUBESTACIONES\",\n    \"ID_Producto\": \"0D90D1E7526A\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Cables \/ MT-AT\",\n    \"Marca\": \"ABB\",\n    \"Familia\": \"Cylon\u00ae\",\n    \"Nombre Comercial\": \"Equipo Cylon\u00ae Abb CYLON\",\n    \"Modelo\": \"CYLON\",\n    \"ID_Producto\": \"4BDF3C03D9B4\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Cables \/ MT-AT\",\n    \"Marca\": \"ABB\",\n    \"Familia\": \"ABB i-bus\u00ae KNX\",\n    \"Nombre Comercial\": \"Equipo ABB i-bus\u00ae KNX Abb\",\n    \"Modelo\": \"\",\n    \"ID_Producto\": \"EE097CCDAB55\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Cables \/ MT-AT\",\n    \"Marca\": \"ABB\",\n    \"Familia\": \"controladores BACnet\",\n    \"Nombre Comercial\": \"Equipo controladores BACnet Abb CONTROLADORES\",\n    \"Modelo\": \"CONTROLADORES\",\n    \"ID_Producto\": \"20C280E6FE3F\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Actuador\",\n    \"Marca\": \"ABB\",\n    \"Familia\": \"Series Contrac\",\n    \"Nombre Comercial\": \"Equipo Series Contrac Abb SERIES\",\n    \"Modelo\": \"SERIES\",\n    \"ID_Producto\": \"B964E2B2C465\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Actuador\",\n    \"Marca\": \"ABB\",\n    \"Familia\": \"PME\/RME\",\n    \"Nombre Comercial\": \"Equipo PME\/RME Abb\",\n    \"Modelo\": \"\",\n    \"ID_Producto\": \"09A0A1520039\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Interruptores Retrofit\",\n    \"Marca\": \"ABB\",\n    \"Familia\": \"VD4-R\",\n    \"Nombre Comercial\": \"Equipo VD4-R Abb VD4-R\",\n    \"Modelo\": \"VD4-R\",\n    \"ID_Producto\": \"D61F814DC5BD\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Interruptores Retrofit\",\n    \"Marca\": \"ABB\",\n    \"Familia\": \"HD4-R\",\n    \"Nombre Comercial\": \"Equipo HD4-R Abb HD4-R\",\n    \"Modelo\": \"HD4-R\",\n    \"ID_Producto\": \"9B78AD7119FB\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Interruptores Retrofit\",\n    \"Marca\": \"ABB\",\n    \"Familia\": \"VM1-R\",\n    \"Nombre Comercial\": \"Equipo VM1-R Abb VM1-R\",\n    \"Modelo\": \"VM1-R\",\n    \"ID_Producto\": \"911E52BE822F\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"SCHNEIDER ELECTRIC\",\n    \"Familia\": \"Model 6\",\n    \"Nombre Comercial\": \"Equipo Model 6 Schneider Electric MODEL 6\",\n    \"Modelo\": \"MODEL 6\",\n    \"ID_Producto\": \"7C8C57A2860F\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"SCHNEIDER ELECTRIC\",\n    \"Familia\": \"Okken\u2122\",\n    \"Nombre Comercial\": \"Equipo Okken\u2122 Schneider Electric OKKEN\",\n    \"Modelo\": \"OKKEN\",\n    \"ID_Producto\": \"FC2CA81C1C5A\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"SCHNEIDER ELECTRIC\",\n    \"Familia\": \"Ti-astar\u2122\",\n    \"Nombre Comercial\": \"Equipo Ti-astar\u2122 Schneider Electric ASTAR\",\n    \"Modelo\": \"ASTAR\",\n    \"ID_Producto\": \"4BBE59C2889A\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"SCHNEIDER ELECTRIC\",\n    \"Familia\": \"I-Line\u2122\",\n    \"Nombre Comercial\": \"Equipo I-Line\u2122 Schneider Electric LINE\",\n    \"Modelo\": \"LINE\",\n    \"ID_Producto\": \"B3FD9F90DE3A\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"SCHNEIDER ELECTRIC\",\n    \"Familia\": \"QO\u2122\/NQ Panelboards\",\n    \"Nombre Comercial\": \"Equipo QO\u2122\/NQ Panelboards Schneider Electric PANELBOARDS\",\n    \"Modelo\": \"PANELBOARDS\",\n    \"ID_Producto\": \"653852EDF6FC\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"SCHNEIDER ELECTRIC\",\n    \"Familia\": \"PrismaSeT\u2122\",\n    \"Nombre Comercial\": \"Equipo PrismaSeT\u2122 Schneider Electric PRISMASET\",\n    \"Modelo\": \"PRISMASET\",\n    \"ID_Producto\": \"8A7E3B29C08D\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"SCHNEIDER ELECTRIC\",\n    \"Familia\": \"BlokSeT\u2122\",\n    \"Nombre Comercial\": \"Equipo BlokSeT\u2122 Schneider Electric BLOKSET\",\n    \"Modelo\": \"BLOKSET\",\n    \"ID_Producto\": \"8C5DBDE4CEE0\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"SCHNEIDER ELECTRIC\",\n    \"Familia\": \"Gabinetes Spacial\u2122\",\n    \"Nombre Comercial\": \"Equipo Gabinetes Spacial\u2122 Schneider Electric GABINETES\",\n    \"Modelo\": \"GABINETES\",\n    \"ID_Producto\": \"89B8201C872D\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"SCHNEIDER ELECTRIC\",\n    \"Familia\": \"Thalassa\u2122\",\n    \"Nombre Comercial\": \"Equipo Thalassa\u2122 Schneider Electric THALASSA\",\n    \"Modelo\": \"THALASSA\",\n    \"ID_Producto\": \"FEAFA37EA5E3\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Variadores \/ Drives\",\n    \"Marca\": \"SCHNEIDER ELECTRIC\",\n    \"Familia\": \"Altivar\u2122 ATV320\",\n    \"Nombre Comercial\": \"Equipo Altivar\u2122 ATV320 Schneider Electric ALTIVAR\",\n    \"Modelo\": \"ALTIVAR\",\n    \"ID_Producto\": \"2504371A3D22\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Variadores \/ Drives\",\n    \"Marca\": \"SCHNEIDER ELECTRIC\",\n    \"Familia\": \"Altivar\u2122 ATV600\",\n    \"Nombre Comercial\": \"Equipo Altivar\u2122 ATV600 Schneider Electric ALTIVAR\",\n    \"Modelo\": \"ALTIVAR\",\n    \"ID_Producto\": \"B7813D362DDF\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Variadores \/ Drives\",\n    \"Marca\": \"SCHNEIDER ELECTRIC\",\n    \"Familia\": \"Altivar\u2122 ATV900\",\n    \"Nombre Comercial\": \"Equipo Altivar\u2122 ATV900 Schneider Electric ALTIVAR\",\n    \"Modelo\": \"ALTIVAR\",\n    \"ID_Producto\": \"E5B1D221D7AC\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Arranque (Starters)\",\n    \"Marca\": \"SCHNEIDER ELECTRIC\",\n    \"Familia\": \"TeSys\u2122 series U\",\n    \"Nombre Comercial\": \"Equipo TeSys\u2122 series U Schneider Electric TESYS\",\n    \"Modelo\": \"TESYS\",\n    \"ID_Producto\": \"B67AAFDADEC5\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Arranque (Starters)\",\n    \"Marca\": \"SCHNEIDER ELECTRIC\",\n    \"Familia\": \"TeSys\u2122 series T\",\n    \"Nombre Comercial\": \"Equipo TeSys\u2122 series T Schneider Electric TESYS\",\n    \"Modelo\": \"TESYS\",\n    \"ID_Producto\": \"090BE21D74D2\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Arranque (Starters)\",\n    \"Marca\": \"SCHNEIDER ELECTRIC\",\n    \"Familia\": \"TeSys\u2122 series Giga\",\n    \"Nombre Comercial\": \"Equipo TeSys\u2122 series Giga Schneider Electric TESYS\",\n    \"Modelo\": \"TESYS\",\n    \"ID_Producto\": \"A4D5F3AABE9D\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"SCHNEIDER ELECTRIC\",\n    \"Familia\": \"Premset\u2122\",\n    \"Nombre Comercial\": \"Equipo Premset\u2122 Schneider Electric PREMSET\",\n    \"Modelo\": \"PREMSET\",\n    \"ID_Producto\": \"FBDBA0686B89\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"SCHNEIDER ELECTRIC\",\n    \"Familia\": \"Minera\",\n    \"Nombre Comercial\": \"Equipo Minera Schneider Electric MINERA\",\n    \"Modelo\": \"MINERA\",\n    \"ID_Producto\": \"C6FA9AC6965C\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"SCHNEIDER ELECTRIC\",\n    \"Familia\": \"E-House\",\n    \"Nombre Comercial\": \"Equipo E-House Schneider Electric HOUSE\",\n    \"Modelo\": \"HOUSE\",\n    \"ID_Producto\": \"6536E2F8840C\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Cables \/ MT-AT\",\n    \"Marca\": \"SCHNEIDER ELECTRIC\",\n    \"Familia\": \"EcoStruxure\u2122 Building Operation\",\n    \"Nombre Comercial\": \"Equipo EcoStruxure\u2122 Building Operation Schneider Electric ECOSTRUXURE\",\n    \"Modelo\": \"ECOSTRUXURE\",\n    \"ID_Producto\": \"0FD489C2A7E8\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Cables \/ MT-AT\",\n    \"Marca\": \"SCHNEIDER ELECTRIC\",\n    \"Familia\": \"Termostatos SE8000\",\n    \"Nombre Comercial\": \"Equipo Termostatos SE8000 Schneider Electric TERMOSTATOS\",\n    \"Modelo\": \"TERMOSTATOS\",\n    \"ID_Producto\": \"AF5268F162CB\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Actuador\",\n    \"Marca\": \"SCHNEIDER ELECTRIC\",\n    \"Familia\": \"Forte\u2122\",\n    \"Nombre Comercial\": \"Equipo Forte\u2122 Schneider Electric FORTE\",\n    \"Modelo\": \"FORTE\",\n    \"ID_Producto\": \"73DF7D2D9D25\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Actuador\",\n    \"Marca\": \"SCHNEIDER ELECTRIC\",\n    \"Familia\": \"M-series\",\n    \"Nombre Comercial\": \"Equipo M-series Schneider Electric SERIES\",\n    \"Modelo\": \"SERIES\",\n    \"ID_Producto\": \"1E4336B3F2A1\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Actuador\",\n    \"Marca\": \"SCHNEIDER ELECTRIC\",\n    \"Familia\": \"actuadores SmartX\",\n    \"Nombre Comercial\": \"Equipo actuadores SmartX Schneider Electric ACTUADORES\",\n    \"Modelo\": \"ACTUADORES\",\n    \"ID_Producto\": \"42356B2170CF\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Interruptores Retrofit\",\n    \"Marca\": \"SCHNEIDER ELECTRIC\",\n    \"Familia\": \"Soluciones EcoFit\u2122 MasterPact\u2122\",\n    \"Nombre Comercial\": \"Equipo Soluciones EcoFit\u2122 MasterPact\u2122 Schneider Electric SOLUCIONES\",\n    \"Modelo\": \"SOLUCIONES\",\n    \"ID_Producto\": \"E265389F75EE\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Interruptores Retrofit\",\n    \"Marca\": \"SCHNEIDER ELECTRIC\",\n    \"Familia\": \"Soluciones EcoFit\u2122 PowerPact\u2122\",\n    \"Nombre Comercial\": \"Equipo Soluciones EcoFit\u2122 PowerPact\u2122 Schneider Electric SOLUCIONES\",\n    \"Modelo\": \"SOLUCIONES\",\n    \"ID_Producto\": \"142D2A9CD922\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"SIEMENS\",\n    \"Familia\": \"SIVACON\u2122 S8\",\n    \"Nombre Comercial\": \"Equipo SIVACON\u2122 S8 Siemens SIVACON\",\n    \"Modelo\": \"SIVACON\",\n    \"ID_Producto\": \"3EE2BE1C913F\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"SIEMENS\",\n    \"Familia\": \"SIMOCODE\u2122 pro\",\n    \"Nombre Comercial\": \"Equipo SIMOCODE\u2122 pro Siemens SIMOCODE\",\n    \"Modelo\": \"SIMOCODE\",\n    \"ID_Producto\": \"C0824F9F7A3F\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"SIEMENS\",\n    \"Familia\": \"SIVACON\u2122 8PS\",\n    \"Nombre Comercial\": \"Equipo SIVACON\u2122 8PS Siemens SIVACON\",\n    \"Modelo\": \"SIVACON\",\n    \"ID_Producto\": \"8F03EF03678C\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"SIEMENS\",\n    \"Familia\": \"ALPHA\",\n    \"Nombre Comercial\": \"Equipo ALPHA Siemens ALPHA\",\n    \"Modelo\": \"ALPHA\",\n    \"ID_Producto\": \"08AF3DA032CF\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"SIEMENS\",\n    \"Familia\": \"Gabinetes SICUBE\",\n    \"Nombre Comercial\": \"Equipo Gabinetes SICUBE Siemens GABINETES\",\n    \"Modelo\": \"GABINETES\",\n    \"ID_Producto\": \"3302C01CCA22\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Variadores \/ Drives\",\n    \"Marca\": \"SIEMENS\",\n    \"Familia\": \"SINAMICS\u00ae series G120\",\n    \"Nombre Comercial\": \"Equipo SINAMICS\u00ae series G120 Siemens SINAMICS\",\n    \"Modelo\": \"SINAMICS\",\n    \"ID_Producto\": \"05A2A8AFDF4F\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Variadores \/ Drives\",\n    \"Marca\": \"SIEMENS\",\n    \"Familia\": \"SINAMICS\u00ae series S120\",\n    \"Nombre Comercial\": \"Equipo SINAMICS\u00ae series S120 Siemens SINAMICS\",\n    \"Modelo\": \"SINAMICS\",\n    \"ID_Producto\": \"A7EB09D6DD88\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Variadores \/ Drives\",\n    \"Marca\": \"SIEMENS\",\n    \"Familia\": \"SINAMICS\u00ae series V20\",\n    \"Nombre Comercial\": \"Equipo SINAMICS\u00ae series V20 Siemens SINAMICS\",\n    \"Modelo\": \"SINAMICS\",\n    \"ID_Producto\": \"F60D1BA6A213\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Arranque (Starters)\",\n    \"Marca\": \"SIEMENS\",\n    \"Familia\": \"SIRIUS\u00ae\",\n    \"Nombre Comercial\": \"Equipo SIRIUS\u00ae Siemens SIRIUS\",\n    \"Modelo\": \"SIRIUS\",\n    \"ID_Producto\": \"D6A2AA81D3B8\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"SIEMENS\",\n    \"Familia\": \"GIS 8DQ1\",\n    \"Nombre Comercial\": \"Equipo GIS 8DQ1 Siemens 8DQ1\",\n    \"Modelo\": \"8DQ1\",\n    \"ID_Producto\": \"9B05F3791A3C\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"SIEMENS\",\n    \"Familia\": \"GIS 8DN9\",\n    \"Nombre Comercial\": \"Equipo GIS 8DN9 Siemens 8DN9\",\n    \"Modelo\": \"8DN9\",\n    \"ID_Producto\": \"46BC252F1569\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"SIEMENS\",\n    \"Familia\": \"Subestaciones M&oacute;viles\",\n    \"Nombre Comercial\": \"Equipo Subestaciones M&oacute;viles Siemens SUBESTACIONES\",\n    \"Modelo\": \"SUBESTACIONES\",\n    \"ID_Producto\": \"0D668DD509FB\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Cables \/ MT-AT\",\n    \"Marca\": \"SIEMENS\",\n    \"Familia\": \"Desigo\u2122 CC\",\n    \"Nombre Comercial\": \"Equipo Desigo\u2122 CC Siemens DESIGO\",\n    \"Modelo\": \"DESIGO\",\n    \"ID_Producto\": \"5D1F091786EE\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Cables \/ MT-AT\",\n    \"Marca\": \"SIEMENS\",\n    \"Familia\": \"Climatix\u2122\",\n    \"Nombre Comercial\": \"Equipo Climatix\u2122 Siemens CLIMATIX\",\n    \"Modelo\": \"CLIMATIX\",\n    \"ID_Producto\": \"5EFDA0AFF74D\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Cables \/ MT-AT\",\n    \"Marca\": \"SIEMENS\",\n    \"Familia\": \"controladores Synco\u2122\",\n    \"Nombre Comercial\": \"Equipo controladores Synco\u2122 Siemens CONTROLADORES\",\n    \"Modelo\": \"CONTROLADORES\",\n    \"ID_Producto\": \"FE42C6E2E523\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Actuador\",\n    \"Marca\": \"SIEMENS\",\n    \"Familia\": \"SIPART\u00ae PS2\",\n    \"Nombre Comercial\": \"Equipo SIPART\u00ae PS2 Siemens SIPART\",\n    \"Modelo\": \"SIPART\",\n    \"ID_Producto\": \"288165F57769\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Actuador\",\n    \"Marca\": \"SIEMENS\",\n    \"Familia\": \"Sipart\u00ae DR\",\n    \"Nombre Comercial\": \"Equipo Sipart\u00ae DR Siemens SIPART\",\n    \"Modelo\": \"SIPART\",\n    \"ID_Producto\": \"DEA939BB3708\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Interruptores Retrofit\",\n    \"Marca\": \"SIEMENS\",\n    \"Familia\": \"Soluciones para Sentron\u2122 3WL\/3VL\",\n    \"Nombre Comercial\": \"Equipo Soluciones para Sentron\u2122 3WL\/3VL Siemens SOLUCIONES\",\n    \"Modelo\": \"SOLUCIONES\",\n    \"ID_Producto\": \"72F709A134AF\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Interruptores Retrofit\",\n    \"Marca\": \"SIEMENS\",\n    \"Familia\": \"Soluciones para Sentron\u2122 3VA\",\n    \"Nombre Comercial\": \"Equipo Soluciones para Sentron\u2122 3VA Siemens SOLUCIONES\",\n    \"Modelo\": \"SOLUCIONES\",\n    \"ID_Producto\": \"C6470F8DB1DE\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"WEG\",\n    \"Familia\": \"CCM04 (BT)\",\n    \"Nombre Comercial\": \"Equipo CCM04 (BT) Weg CCM04\",\n    \"Modelo\": \"CCM04\",\n    \"ID_Producto\": \"6FD84292B6EA\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"WEG\",\n    \"Familia\": \"MCCI (MT)\",\n    \"Nombre Comercial\": \"Equipo MCCI (MT) Weg MCCI\",\n    \"Modelo\": \"MCCI\",\n    \"ID_Producto\": \"2DE263638EEB\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"WEG\",\n    \"Familia\": \"E-Houses\",\n    \"Nombre Comercial\": \"Equipo E-Houses Weg HOUSES\",\n    \"Modelo\": \"HOUSES\",\n    \"ID_Producto\": \"C09833377802\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"WEG\",\n    \"Familia\": \"E-Houses (salas el&eacute;ctricas modulares)\",\n    \"Nombre Comercial\": \"Equipo E-Houses (salas el&eacute;ctricas modulares) Weg HOUSES\",\n    \"Modelo\": \"HOUSES\",\n    \"ID_Producto\": \"5EED46005D47\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Variadores \/ Drives\",\n    \"Marca\": \"WEG\",\n    \"Familia\": \"CFW11M (BT)\",\n    \"Nombre Comercial\": \"Equipo CFW11M (BT) Weg CFW11M\",\n    \"Modelo\": \"CFW11M\",\n    \"ID_Producto\": \"6291AB122EBB\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Variadores \/ Drives\",\n    \"Marca\": \"WEG\",\n    \"Familia\": \"MVW-01\",\n    \"Nombre Comercial\": \"Equipo MVW-01 Weg MVW-01\",\n    \"Modelo\": \"MVW-01\",\n    \"ID_Producto\": \"E0B119E17A29\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Variadores \/ Drives\",\n    \"Marca\": \"WEG\",\n    \"Familia\": \"MVW3000 (MT)\",\n    \"Nombre Comercial\": \"Equipo MVW3000 (MT) Weg MVW3000\",\n    \"Modelo\": \"MVW3000\",\n    \"ID_Producto\": \"5E103CA21D0A\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Reguladores de Voltaje\",\n    \"Marca\": \"WEG\",\n    \"Familia\": \"Serie AG-10 (excitaci&oacute;n)\",\n    \"Nombre Comercial\": \"Equipo Serie AG-10 (excitaci&oacute;n) Weg SERIE\",\n    \"Modelo\": \"SERIE\",\n    \"ID_Producto\": \"E79D0FA842BA\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Arranque (Starters)\",\n    \"Marca\": \"WEG\",\n    \"Familia\": \"SSW7000 (MT)\",\n    \"Nombre Comercial\": \"Equipo SSW7000 (MT) Weg SSW7000\",\n    \"Modelo\": \"SSW7000\",\n    \"ID_Producto\": \"24B05133DCF9\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Arranque (Starters)\",\n    \"Marca\": \"WEG\",\n    \"Familia\": \"SSW06 (BT)\",\n    \"Nombre Comercial\": \"Equipo SSW06 (BT) Weg SSW06\",\n    \"Modelo\": \"SSW06\",\n    \"ID_Producto\": \"85CF10D152DD\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Interruptores Retrofit\",\n    \"Marca\": \"WEG\",\n    \"Familia\": \"\",\n    \"Nombre Comercial\": \"Equipo Weg Interruptores Retrofit\",\n    \"Modelo\": \"\",\n    \"ID_Producto\": \"80753A7F72AF\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"CHINT\",\n    \"Familia\": \"NXM\",\n    \"Nombre Comercial\": \"Equipo NXM Chint\",\n    \"Modelo\": \"\",\n    \"ID_Producto\": \"4B79744B6329\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"CHINT\",\n    \"Familia\": \"NM8\",\n    \"Nombre Comercial\": \"Equipo NM8 Chint NM8\",\n    \"Modelo\": \"NM8\",\n    \"ID_Producto\": \"9545FF00A3AB\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Tableros \/ Subestaci&oacute;n\",\n    \"Marca\": \"CHINT\",\n    \"Familia\": \"Series NDB\",\n    \"Nombre Comercial\": \"Equipo Series NDB Chint SERIES\",\n    \"Modelo\": \"SERIES\",\n    \"ID_Producto\": \"D07DF36EDCC0\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Variadores \/ Drives\",\n    \"Marca\": \"CHINT\",\n    \"Familia\": \"Series NVF2G\",\n    \"Nombre Comercial\": \"Equipo Series NVF2G Chint SERIES\",\n    \"Modelo\": \"SERIES\",\n    \"ID_Producto\": \"F2B34CC400CC\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Variadores \/ Drives\",\n    \"Marca\": \"CHINT\",\n    \"Familia\": \"NVF5\",\n    \"Nombre Comercial\": \"Equipo NVF5 Chint NVF5\",\n    \"Modelo\": \"NVF5\",\n    \"ID_Producto\": \"8E0601E99EE7\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Reguladores de Voltaje\",\n    \"Marca\": \"CHINT\",\n    \"Familia\": \"Series TND\",\n    \"Nombre Comercial\": \"Equipo Series TND Chint SERIES\",\n    \"Modelo\": \"SERIES\",\n    \"ID_Producto\": \"A13B0C51DD19\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Reguladores de Voltaje\",\n    \"Marca\": \"CHINT\",\n    \"Familia\": \"SVC\",\n    \"Nombre Comercial\": \"Equipo SVC Chint\",\n    \"Modelo\": \"\",\n    \"ID_Producto\": \"9AFE9A3A0B1E\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Arranque (Starters)\",\n    \"Marca\": \"CHINT\",\n    \"Familia\": \"NJR2 (suaves)\",\n    \"Nombre Comercial\": \"Equipo NJR2 (suaves) Chint NJR2\",\n    \"Modelo\": \"NJR2\",\n    \"ID_Producto\": \"B560DEFEFA2F\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Arranque (Starters)\",\n    \"Marca\": \"CHINT\",\n    \"Familia\": \"NS2 (guardamotores)\",\n    \"Nombre Comercial\": \"Equipo NS2 (guardamotores) Chint NS2\",\n    \"Modelo\": \"NS2\",\n    \"ID_Producto\": \"B3DE309F813E\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Reguladores de Voltaje\",\n    \"Marca\": \"BASLER ELECTRIC\",\n    \"Familia\": \"Series DECS\",\n    \"Nombre Comercial\": \"Equipo Series DECS Basler Electric SERIES\",\n    \"Modelo\": \"SERIES\",\n    \"ID_Producto\": \"E5122AA76F80\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Reguladores de Voltaje\",\n    \"Marca\": \"BASLER ELECTRIC\",\n    \"Familia\": \"AVC\",\n    \"Nombre Comercial\": \"Equipo AVC Basler Electric\",\n    \"Modelo\": \"\",\n    \"ID_Producto\": \"AFEA7A3EEB07\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Gobernador \/ Controlador de Velocidad\",\n    \"Marca\": \"BASLER ELECTRIC\",\n    \"Familia\": \"BE2000GU\",\n    \"Nombre Comercial\": \"Equipo BE2000GU Basler Electric BE2000GU\",\n    \"Modelo\": \"BE2000GU\",\n    \"ID_Producto\": \"0A2E1D9C1B22\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Gobernador \/ Controlador de Velocidad\",\n    \"Marca\": \"DEIF\",\n    \"Familia\": \"GPC-3\",\n    \"Nombre Comercial\": \"Equipo GPC-3 Deif GPC-3\",\n    \"Modelo\": \"GPC-3\",\n    \"ID_Producto\": \"4F7AB5F27046\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Gobernador \/ Controlador de Velocidad\",\n    \"Marca\": \"DEIF\",\n    \"Familia\": \"AGC-4\",\n    \"Nombre Comercial\": \"Equipo AGC-4 Deif AGC-4\",\n    \"Modelo\": \"AGC-4\",\n    \"ID_Producto\": \"467D1B3EC332\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Gobernador \/ Controlador de Velocidad\",\n    \"Marca\": \"DYNALCO\",\n    \"Familia\": \"STC-202\",\n    \"Nombre Comercial\": \"Equipo STC-202 Dynalco STC-202\",\n    \"Modelo\": \"STC-202\",\n    \"ID_Producto\": \"48D07AF40E0F\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Variadores \/ Drives\",\n    \"Marca\": \"TRIOL\",\n    \"Familia\": \"AK06 (BT)\",\n    \"Nombre Comercial\": \"Equipo AK06 (BT) Triol AK06\",\n    \"Modelo\": \"AK06\",\n    \"ID_Producto\": \"25BF48663FAF\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Variadores \/ Drives\",\n    \"Marca\": \"TRIOL\",\n    \"Familia\": \"AT24 (BT)\",\n    \"Nombre Comercial\": \"Equipo AT24 (BT) Triol AT24\",\n    \"Modelo\": \"AT24\",\n    \"ID_Producto\": \"A86D1D5ACD7A\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Variadores \/ Drives\",\n    \"Marca\": \"TRIOL\",\n    \"Familia\": \"AT27 (MT)\",\n    \"Nombre Comercial\": \"Equipo AT27 (MT) Triol AT27\",\n    \"Modelo\": \"AT27\",\n    \"ID_Producto\": \"4C356F34ED2F\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Iluminaci&oacute;n\",\n    \"Marca\": \"TRIOL\",\n    \"Familia\": \"Soluciones integradas en contenedores \/ E-House\",\n    \"Nombre Comercial\": \"Equipo Soluciones integradas en contenedores \/ E-House Triol SOLUCIONES\",\n    \"Modelo\": \"SOLUCIONES\",\n    \"ID_Producto\": \"DC8B68D3BF8E\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Actuador\",\n    \"Marca\": \"VALTEK\",\n    \"Familia\": \"VL Series\",\n    \"Nombre Comercial\": \"Equipo VL Series Valtek SERIES\",\n    \"Modelo\": \"SERIES\",\n    \"ID_Producto\": \"7725785DF412\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Actuador\",\n    \"Marca\": \"VALTEK\",\n    \"Familia\": \"posicionadores digitales Logix\u2122\",\n    \"Nombre Comercial\": \"Equipo posicionadores digitales Logix\u2122 Valtek POSICIONADORES\",\n    \"Modelo\": \"POSICIONADORES\",\n    \"ID_Producto\": \"9726A2FB6C7E\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Gobernador \/ Controlador de Velocidad\",\n    \"Marca\": \"WOODWARD\",\n    \"Familia\": \"505\",\n    \"Nombre Comercial\": \"Equipo 505 Woodward\",\n    \"Modelo\": \"\",\n    \"ID_Producto\": \"8CD861C7523B\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Gobernador \/ Controlador de Velocidad\",\n    \"Marca\": \"WOODWARD\",\n    \"Familia\": \"2301E\",\n    \"Nombre Comercial\": \"Equipo 2301E Woodward 2301E\",\n    \"Modelo\": \"2301E\",\n    \"ID_Producto\": \"7B56ACDF9182\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Gobernador \/ Controlador de Velocidad\",\n    \"Marca\": \"WOODWARD\",\n    \"Familia\": \"Easygen\",\n    \"Nombre Comercial\": \"Equipo Easygen Woodward EASYGEN\",\n    \"Modelo\": \"EASYGEN\",\n    \"ID_Producto\": \"F28E4934B635\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Gobernador \/ Controlador de Velocidad\",\n    \"Marca\": \"WOODWARD\",\n    \"Familia\": \"AtlasSC\u00ae\",\n    \"Nombre Comercial\": \"Equipo AtlasSC\u00ae Woodward ATLASSC\",\n    \"Modelo\": \"ATLASSC\",\n    \"ID_Producto\": \"65662FBF499B\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Actuador\",\n    \"Marca\": \"WOODWARD\",\n    \"Familia\": \"ProAct\u2122\",\n    \"Nombre Comercial\": \"Equipo ProAct\u2122 Woodward PROACT\",\n    \"Modelo\": \"PROACT\",\n    \"ID_Producto\": \"FDFA6C3B0C4F\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Actuador\",\n    \"Marca\": \"WOODWARD\",\n    \"Familia\": \"L-Series\",\n    \"Nombre Comercial\": \"Equipo L-Series Woodward SERIES\",\n    \"Modelo\": \"SERIES\",\n    \"ID_Producto\": \"30365F9E5F6B\"\n  },\n  {\n    \"Suministro\": \"Equipo El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Actuador\",\n    \"Marca\": \"WOODWARD\",\n    \"Familia\": \"UG\",\n    \"Nombre Comercial\": \"Equipo UG Woodward\",\n    \"Modelo\": \"\",\n    \"ID_Producto\": \"9E1132DA355A\"\n  },\n  {\n    \"Suministro\": \"Cable El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Cables \/ MT-AT\",\n    \"Marca\": \"KEI\",\n    \"Familia\": \"Poly AL\",\n    \"Nombre Comercial\": \"Stranded compacted circular 630\",\n    \"Modelo\": \"76\/132\",\n    \"ID_Producto\": \"DC68B1FA1215\"\n  },\n  {\n    \"Suministro\": \"Cable El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Cables \/ MT-AT\",\n    \"Marca\": \"KEI\",\n    \"Familia\": \"Poly AL\",\n    \"Nombre Comercial\": \"Stranded compacted circular 500\",\n    \"Modelo\": \"127\/220\",\n    \"ID_Producto\": \"23E95EFB57FE\"\n  },\n  {\n    \"Suministro\": \"Cable El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Cables \/ MT-AT\",\n    \"Marca\": \"KEI\",\n    \"Familia\": \"Smooth Aluminium Sheath\",\n    \"Nombre Comercial\": \"Stranded compacted circular 500\",\n    \"Modelo\": \"127\/220\",\n    \"ID_Producto\": \"22BDBE466AFE\"\n  },\n  {\n    \"Suministro\": \"Cable El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Cables \/ MT-AT\",\n    \"Marca\": \"KEI\",\n    \"Familia\": \"Smooth Aluminium Sheath\",\n    \"Nombre Comercial\": \"Stranded Milliken Overall compacted circular 500\",\n    \"Modelo\": \"127\/220\",\n    \"ID_Producto\": \"35B9A5A95F72\"\n  },\n  {\n    \"Suministro\": \"Cable El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Cables \/ MT-AT\",\n    \"Marca\": \"KEI\",\n    \"Familia\": \"Corrugated Copper Sheath\",\n    \"Nombre Comercial\": \"Stranded compacted circular 500\",\n    \"Modelo\": \"127\/220\",\n    \"ID_Producto\": \"67E3EC2E83EF\"\n  },\n  {\n    \"Suministro\": \"Cable El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Cables \/ MT-AT\",\n    \"Marca\": \"KEI\",\n    \"Familia\": \"Corrugated Copper Sheath\",\n    \"Nombre Comercial\": \"Stranded Milliken Overall compacted circular 500\",\n    \"Modelo\": \"127\/220\",\n    \"ID_Producto\": \"6B73C9124E82\"\n  },\n  {\n    \"Suministro\": \"Cable El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Cables \/ MT-AT\",\n    \"Marca\": \"KEI\",\n    \"Familia\": \"Corrugated Copper Sheath\",\n    \"Nombre Comercial\": \"Stranded compacted circular 400\",\n    \"Modelo\": \"127\/220\",\n    \"ID_Producto\": \"B6A612CA67C5\"\n  },\n  {\n    \"Suministro\": \"Cable El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Cables \/ MT-AT\",\n    \"Marca\": \"KEI\",\n    \"Familia\": \"Corrugated Copper Sheath\",\n    \"Nombre Comercial\": \"Stranded Milliken Overall compacted circular 1000\",\n    \"Modelo\": \"127\/220\",\n    \"ID_Producto\": \"4B2983A9AF90\"\n  },\n  {\n    \"Suministro\": \"Cable El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Cables \/ MT-AT\",\n    \"Marca\": \"KEI\",\n    \"Familia\": \"Corrugated Copper Sheath\",\n    \"Nombre Comercial\": \"Stranded Milliken Overall compacted circular 630\",\n    \"Modelo\": \"190\/330\",\n    \"ID_Producto\": \"D07FD4392695\"\n  },\n  {\n    \"Suministro\": \"Cable El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"Cables \/ MT-AT\",\n    \"Marca\": \"KEI\",\n    \"Familia\": \"Corrugated Stainless Steel Sheath\",\n    \"Nombre Comercial\": \"Stranded compacted circular 630\",\n    \"Modelo\": \"220\/400\",\n    \"ID_Producto\": \"A376A6B9FE01\"\n  },\n  {\n    \"Suministro\": \"Cable El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"ESP\",\n    \"Marca\": \"KEI\",\n    \"Familia\": \"Arteria Flat\",\n    \"Nombre Comercial\": \"PG\",\n    \"Modelo\": \"180F\",\n    \"ID_Producto\": \"56EEA2CAB0D3\"\n  },\n  {\n    \"Suministro\": \"Cable El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"ESP\",\n    \"Marca\": \"KEI\",\n    \"Familia\": \"Arteria Flat\",\n    \"Nombre Comercial\": \"PEG\",\n    \"Modelo\": \"205F\",\n    \"ID_Producto\": \"8319F8F6F130\"\n  },\n  {\n    \"Suministro\": \"Cable El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"ESP\",\n    \"Marca\": \"KEI\",\n    \"Familia\": \"Arteria Flat\",\n    \"Nombre Comercial\": \"EEG\",\n    \"Modelo\": \"290F\",\n    \"ID_Producto\": \"D1B80E0F1814\"\n  },\n  {\n    \"Suministro\": \"Cable El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"ESP\",\n    \"Marca\": \"KEI\",\n    \"Familia\": \"Arteria Flat\",\n    \"Nombre Comercial\": \"ELG\",\n    \"Modelo\": \"400F\",\n    \"ID_Producto\": \"9721499B4564\"\n  },\n  {\n    \"Suministro\": \"Cable El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"ESP\",\n    \"Marca\": \"KEI\",\n    \"Familia\": \"Arteria Flat\",\n    \"Nombre Comercial\": \"EFG\",\n    \"Modelo\": \"400F\",\n    \"ID_Producto\": \"7E200291C0F5\"\n  },\n  {\n    \"Suministro\": \"Cable El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"ESP\",\n    \"Marca\": \"KEI\",\n    \"Familia\": \"Arteria Flat\",\n    \"Nombre Comercial\": \"ELG\",\n    \"Modelo\": \"450F\",\n    \"ID_Producto\": \"2122D43DAADD\"\n  },\n  {\n    \"Suministro\": \"Cable El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"ESP\",\n    \"Marca\": \"KEI\",\n    \"Familia\": \"Arteria Flat\",\n    \"Nombre Comercial\": \"KEFLG\",\n    \"Modelo\": \"450F\",\n    \"ID_Producto\": \"7347FDF0890E\"\n  },\n  {\n    \"Suministro\": \"Cable El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"ESP\",\n    \"Marca\": \"KEI\",\n    \"Familia\": \"Arteria Flat\",\n    \"Nombre Comercial\": \"KEFLG-CT\",\n    \"Modelo\": \"450F\",\n    \"ID_Producto\": \"0AC479B224C4\"\n  },\n  {\n    \"Suministro\": \"Cable El&eacute;ctrico\",\n    \"Categor&iacute;a\": \"ESP\",\n    \"Marca\": \"KEI\",\n    \"Familia\": \"Arteria Flat\",\n    \"Nombre Comercial\": \"KEFLM\",\n    \"Modelo\": \"450F\",\n    \"ID_Producto\": \"F66D3DB11CBC\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 5K CP 1A M20\",\n    \"Modelo\": \"LLP-20-120-277-5K-X1-CP-1A-M20\",\n    \"ID_Producto\": \"226D5DF00CBB\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 5K CP 1A M25\",\n    \"Modelo\": \"LLP-20-120-277-5K-X1-CP-1A-M25\",\n    \"ID_Producto\": \"80124EF5DFCA\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 5K CP 1A EM6 M20\",\n    \"Modelo\": \"LLP-20-120-277-5K-X1-CP-1A-EM6-M20\",\n    \"ID_Producto\": \"281D7E1442E9\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 5K CP 1A EM6 M25\",\n    \"Modelo\": \"LLP-20-120-277-5K-X1-CP-1A-EM6-M25\",\n    \"ID_Producto\": \"565D34D2A470\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 5K CP 1A EM12 M20\",\n    \"Modelo\": \"LLP-20-120-277-5K-X1-CP-1A-EM12-M20\",\n    \"ID_Producto\": \"F10C8B7259CA\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 5K CP 1A EM12 M25\",\n    \"Modelo\": \"LLP-20-120-277-5K-X1-CP-1A-EM12-M25\",\n    \"ID_Producto\": \"5E537B1BE357\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 5K CP 2A M20\",\n    \"Modelo\": \"LLP-20-120-277-5K-X1-CP-2A-M20\",\n    \"ID_Producto\": \"1CB9180DB062\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 5K CP 2A M25\",\n    \"Modelo\": \"LLP-20-120-277-5K-X1-CP-2A-M25\",\n    \"ID_Producto\": \"29C5996245CF\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 5K CP 2A EM6 M20\",\n    \"Modelo\": \"LLP-20-120-277-5K-X1-CP-2A-EM6-M20\",\n    \"ID_Producto\": \"F4E791CE5157\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 5K CP 2A EM6 M25\",\n    \"Modelo\": \"LLP-20-120-277-5K-X1-CP-2A-EM6-M25\",\n    \"ID_Producto\": \"429FD3AAD042\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 5K CP 2A EM12 M20\",\n    \"Modelo\": \"LLP-20-120-277-5K-X1-CP-2A-EM12-M20\",\n    \"ID_Producto\": \"E282F0E0E40A\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 5K CP 2A EM12 M25\",\n    \"Modelo\": \"LLP-20-120-277-5K-X1-CP-2A-EM12-M25\",\n    \"ID_Producto\": \"281BEB8CE8FD\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 5K DP 1A M20\",\n    \"Modelo\": \"LLP-20-120-277-5K-X1-DP-1A-M20\",\n    \"ID_Producto\": \"16ED1C46DBA3\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 5K DP 1A M25\",\n    \"Modelo\": \"LLP-20-120-277-5K-X1-DP-1A-M25\",\n    \"ID_Producto\": \"D78C8F5D32E3\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 5K DP 1A EM6 M20\",\n    \"Modelo\": \"LLP-20-120-277-5K-X1-DP-1A-EM6-M20\",\n    \"ID_Producto\": \"5BFED509F3C0\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 5K DP 1A EM6 M25\",\n    \"Modelo\": \"LLP-20-120-277-5K-X1-DP-1A-EM6-M25\",\n    \"ID_Producto\": \"7661670E2CD8\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 5K DP 1A EM12 M20\",\n    \"Modelo\": \"LLP-20-120-277-5K-X1-DP-1A-EM12-M20\",\n    \"ID_Producto\": \"C4DD6551EBAB\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 5K DP 1A EM12 M25\",\n    \"Modelo\": \"LLP-20-120-277-5K-X1-DP-1A-EM12-M25\",\n    \"ID_Producto\": \"133B61DBA735\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 5K DP 2A M20\",\n    \"Modelo\": \"LLP-20-120-277-5K-X1-DP-2A-M20\",\n    \"ID_Producto\": \"6DB6D73F66FD\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 5K DP 2A M25\",\n    \"Modelo\": \"LLP-20-120-277-5K-X1-DP-2A-M25\",\n    \"ID_Producto\": \"BE1AD4D0F18F\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 5K DP 2A EM6 M20\",\n    \"Modelo\": \"LLP-20-120-277-5K-X1-DP-2A-EM6-M20\",\n    \"ID_Producto\": \"C76EAE801260\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 5K DP 2A EM6 M25\",\n    \"Modelo\": \"LLP-20-120-277-5K-X1-DP-2A-EM6-M25\",\n    \"ID_Producto\": \"FD129F1E6009\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 5K DP 2A EM12 M20\",\n    \"Modelo\": \"LLP-20-120-277-5K-X1-DP-2A-EM12-M20\",\n    \"ID_Producto\": \"BF0C47FC99AD\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 5K DP 2A EM12 M25\",\n    \"Modelo\": \"LLP-20-120-277-5K-X1-DP-2A-EM12-M25\",\n    \"ID_Producto\": \"FE92E9CA9709\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 57K CP 1A M20\",\n    \"Modelo\": \"LLP-20-120-277-57K-X1-CP-1A-M20\",\n    \"ID_Producto\": \"8D815D4742ED\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 57K CP 1A M25\",\n    \"Modelo\": \"LLP-20-120-277-57K-X1-CP-1A-M25\",\n    \"ID_Producto\": \"C655028A7345\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 57K CP 1A EM6 M20\",\n    \"Modelo\": \"LLP-20-120-277-57K-X1-CP-1A-EM6-M20\",\n    \"ID_Producto\": \"EA0A75D3E9A1\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 57K CP 1A EM6 M25\",\n    \"Modelo\": \"LLP-20-120-277-57K-X1-CP-1A-EM6-M25\",\n    \"ID_Producto\": \"E05FB0D4F179\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 57K CP 1A EM12 M20\",\n    \"Modelo\": \"LLP-20-120-277-57K-X1-CP-1A-EM12-M20\",\n    \"ID_Producto\": \"92601F78C351\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 57K CP 1A EM12 M25\",\n    \"Modelo\": \"LLP-20-120-277-57K-X1-CP-1A-EM12-M25\",\n    \"ID_Producto\": \"C52A8067C004\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 57K CP 2A M20\",\n    \"Modelo\": \"LLP-20-120-277-57K-X1-CP-2A-M20\",\n    \"ID_Producto\": \"4937A39CBFBB\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 57K CP 2A M25\",\n    \"Modelo\": \"LLP-20-120-277-57K-X1-CP-2A-M25\",\n    \"ID_Producto\": \"D101D9A9A0EA\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 57K CP 2A EM6 M20\",\n    \"Modelo\": \"LLP-20-120-277-57K-X1-CP-2A-EM6-M20\",\n    \"ID_Producto\": \"10825387E37E\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 57K CP 2A EM6 M25\",\n    \"Modelo\": \"LLP-20-120-277-57K-X1-CP-2A-EM6-M25\",\n    \"ID_Producto\": \"04E2D92748AE\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 57K CP 2A EM12 M20\",\n    \"Modelo\": \"LLP-20-120-277-57K-X1-CP-2A-EM12-M20\",\n    \"ID_Producto\": \"D280DC3C93A0\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 57K CP 2A EM12 M25\",\n    \"Modelo\": \"LLP-20-120-277-57K-X1-CP-2A-EM12-M25\",\n    \"ID_Producto\": \"0A77D2741992\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 57K DP 1A M20\",\n    \"Modelo\": \"LLP-20-120-277-57K-X1-DP-1A-M20\",\n    \"ID_Producto\": \"A7F0090EB997\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 57K DP 1A M25\",\n    \"Modelo\": \"LLP-20-120-277-57K-X1-DP-1A-M25\",\n    \"ID_Producto\": \"C09EFD323144\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 57K DP 1A EM6 M20\",\n    \"Modelo\": \"LLP-20-120-277-57K-X1-DP-1A-EM6-M20\",\n    \"ID_Producto\": \"F944BA2B97E0\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 57K DP 1A EM6 M25\",\n    \"Modelo\": \"LLP-20-120-277-57K-X1-DP-1A-EM6-M25\",\n    \"ID_Producto\": \"B7A6DE6ADDA4\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 57K DP 1A EM12 M20\",\n    \"Modelo\": \"LLP-20-120-277-57K-X1-DP-1A-EM12-M20\",\n    \"ID_Producto\": \"73F8B2C8559A\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 57K DP 1A EM12 M25\",\n    \"Modelo\": \"LLP-20-120-277-57K-X1-DP-1A-EM12-M25\",\n    \"ID_Producto\": \"072D2BEEBDC2\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 57K DP 2A M20\",\n    \"Modelo\": \"LLP-20-120-277-57K-X1-DP-2A-M20\",\n    \"ID_Producto\": \"194F6C22F2DB\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 57K DP 2A M25\",\n    \"Modelo\": \"LLP-20-120-277-57K-X1-DP-2A-M25\",\n    \"ID_Producto\": \"5D9F3273C545\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 57K DP 2A EM6 M20\",\n    \"Modelo\": \"LLP-20-120-277-57K-X1-DP-2A-EM6-M20\",\n    \"ID_Producto\": \"06C40BCD767D\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 57K DP 2A EM6 M25\",\n    \"Modelo\": \"LLP-20-120-277-57K-X1-DP-2A-EM6-M25\",\n    \"ID_Producto\": \"28F14A7239F1\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 57K DP 2A EM12 M20\",\n    \"Modelo\": \"LLP-20-120-277-57K-X1-DP-2A-EM12-M20\",\n    \"ID_Producto\": \"3B97328FDD41\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"20 57K DP 2A EM12 M25\",\n    \"Modelo\": \"LLP-20-120-277-57K-X1-DP-2A-EM12-M25\",\n    \"ID_Producto\": \"36A7EB3BBE59\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 5K CP 1A M20\",\n    \"Modelo\": \"LLP-40-120-277-5K-X1-CP-1A-M20\",\n    \"ID_Producto\": \"574B2B5E94D1\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 5K CP 1A M25\",\n    \"Modelo\": \"LLP-40-120-277-5K-X1-CP-1A-M25\",\n    \"ID_Producto\": \"EE528568FB46\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 5K CP 1A EM6 M20\",\n    \"Modelo\": \"LLP-40-120-277-5K-X1-CP-1A-EM6-M20\",\n    \"ID_Producto\": \"269FEFF4E630\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 5K CP 1A EM6 M25\",\n    \"Modelo\": \"LLP-40-120-277-5K-X1-CP-1A-EM6-M25\",\n    \"ID_Producto\": \"508730E52784\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 5K CP 1A EM12 M20\",\n    \"Modelo\": \"LLP-40-120-277-5K-X1-CP-1A-EM12-M20\",\n    \"ID_Producto\": \"8B293AB5C833\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 5K CP 1A EM12 M25\",\n    \"Modelo\": \"LLP-40-120-277-5K-X1-CP-1A-EM12-M25\",\n    \"ID_Producto\": \"AAC4531E0877\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 5K CP 2A M20\",\n    \"Modelo\": \"LLP-40-120-277-5K-X1-CP-2A-M20\",\n    \"ID_Producto\": \"81EAE0FE911C\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 5K CP 2A M25\",\n    \"Modelo\": \"LLP-40-120-277-5K-X1-CP-2A-M25\",\n    \"ID_Producto\": \"4C3B50735543\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 5K CP 2A EM6 M20\",\n    \"Modelo\": \"LLP-40-120-277-5K-X1-CP-2A-EM6-M20\",\n    \"ID_Producto\": \"32B9FFF4F94E\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 5K CP 2A EM6 M25\",\n    \"Modelo\": \"LLP-40-120-277-5K-X1-CP-2A-EM6-M25\",\n    \"ID_Producto\": \"8F6A37F52806\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 5K CP 2A EM12 M20\",\n    \"Modelo\": \"LLP-40-120-277-5K-X1-CP-2A-EM12-M20\",\n    \"ID_Producto\": \"840EB5B77CDE\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 5K CP 2A EM12 M25\",\n    \"Modelo\": \"LLP-40-120-277-5K-X1-CP-2A-EM12-M25\",\n    \"ID_Producto\": \"D0AAD3DB589C\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 5K DP 1A M20\",\n    \"Modelo\": \"LLP-40-120-277-5K-X1-DP-1A-M20\",\n    \"ID_Producto\": \"97B177FD9423\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 5K DP 1A M25\",\n    \"Modelo\": \"LLP-40-120-277-5K-X1-DP-1A-M25\",\n    \"ID_Producto\": \"6E1C6FF93AEF\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 5K DP 1A EM6 M20\",\n    \"Modelo\": \"LLP-40-120-277-5K-X1-DP-1A-EM6-M20\",\n    \"ID_Producto\": \"CD3EF7540533\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 5K DP 1A EM6 M25\",\n    \"Modelo\": \"LLP-40-120-277-5K-X1-DP-1A-EM6-M25\",\n    \"ID_Producto\": \"0FE64D81C7F1\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 5K DP 1A EM12 M20\",\n    \"Modelo\": \"LLP-40-120-277-5K-X1-DP-1A-EM12-M20\",\n    \"ID_Producto\": \"630D2C4C45B9\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 5K DP 1A EM12 M25\",\n    \"Modelo\": \"LLP-40-120-277-5K-X1-DP-1A-EM12-M25\",\n    \"ID_Producto\": \"A5D522BCE936\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 5K DP 2A M20\",\n    \"Modelo\": \"LLP-40-120-277-5K-X1-DP-2A-M20\",\n    \"ID_Producto\": \"95B890B9336D\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 5K DP 2A M25\",\n    \"Modelo\": \"LLP-40-120-277-5K-X1-DP-2A-M25\",\n    \"ID_Producto\": \"5F0B5BD51EE5\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 5K DP 2A EM6 M20\",\n    \"Modelo\": \"LLP-40-120-277-5K-X1-DP-2A-EM6-M20\",\n    \"ID_Producto\": \"2AF1A59498C2\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 5K DP 2A EM6 M25\",\n    \"Modelo\": \"LLP-40-120-277-5K-X1-DP-2A-EM6-M25\",\n    \"ID_Producto\": \"EB541BB06E95\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 5K DP 2A EM12 M20\",\n    \"Modelo\": \"LLP-40-120-277-5K-X1-DP-2A-EM12-M20\",\n    \"ID_Producto\": \"CD851E970865\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 5K DP 2A EM12 M25\",\n    \"Modelo\": \"LLP-40-120-277-5K-X1-DP-2A-EM12-M25\",\n    \"ID_Producto\": \"392783A1DCB4\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 57K CP 1A M20\",\n    \"Modelo\": \"LLP-40-120-277-57K-X1-CP-1A-M20\",\n    \"ID_Producto\": \"4C7337E55EF1\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 57K CP 1A M25\",\n    \"Modelo\": \"LLP-40-120-277-57K-X1-CP-1A-M25\",\n    \"ID_Producto\": \"8DCEE03B13F4\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 57K CP 1A EM6 M20\",\n    \"Modelo\": \"LLP-40-120-277-57K-X1-CP-1A-EM6-M20\",\n    \"ID_Producto\": \"12171C875467\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 57K CP 1A EM6 M25\",\n    \"Modelo\": \"LLP-40-120-277-57K-X1-CP-1A-EM6-M25\",\n    \"ID_Producto\": \"7DAEB937B925\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 57K CP 1A EM12 M20\",\n    \"Modelo\": \"LLP-40-120-277-57K-X1-CP-1A-EM12-M20\",\n    \"ID_Producto\": \"6B332D9BA09A\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 57K CP 1A EM12 M25\",\n    \"Modelo\": \"LLP-40-120-277-57K-X1-CP-1A-EM12-M25\",\n    \"ID_Producto\": \"198C2E35B230\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 57K CP 2A M20\",\n    \"Modelo\": \"LLP-40-120-277-57K-X1-CP-2A-M20\",\n    \"ID_Producto\": \"C89059E09C94\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 57K CP 2A M25\",\n    \"Modelo\": \"LLP-40-120-277-57K-X1-CP-2A-M25\",\n    \"ID_Producto\": \"743A95C5BCA4\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 57K CP 2A EM6 M20\",\n    \"Modelo\": \"LLP-40-120-277-57K-X1-CP-2A-EM6-M20\",\n    \"ID_Producto\": \"6F40E468CC59\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 57K CP 2A EM6 M25\",\n    \"Modelo\": \"LLP-40-120-277-57K-X1-CP-2A-EM6-M25\",\n    \"ID_Producto\": \"1ED03512F6A1\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 57K CP 2A EM12 M20\",\n    \"Modelo\": \"LLP-40-120-277-57K-X1-CP-2A-EM12-M20\",\n    \"ID_Producto\": \"E1F2C2151B18\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 57K CP 2A EM12 M25\",\n    \"Modelo\": \"LLP-40-120-277-57K-X1-CP-2A-EM12-M25\",\n    \"ID_Producto\": \"B3F6E17F3450\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 57K DP 1A M20\",\n    \"Modelo\": \"LLP-40-120-277-57K-X1-DP-1A-M20\",\n    \"ID_Producto\": \"2CD3735A39DF\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 57K DP 1A M25\",\n    \"Modelo\": \"LLP-40-120-277-57K-X1-DP-1A-M25\",\n    \"ID_Producto\": \"5233D2F96F62\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 57K DP 1A EM6 M20\",\n    \"Modelo\": \"LLP-40-120-277-57K-X1-DP-1A-EM6-M20\",\n    \"ID_Producto\": \"233B704374DC\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 57K DP 1A EM6 M25\",\n    \"Modelo\": \"LLP-40-120-277-57K-X1-DP-1A-EM6-M25\",\n    \"ID_Producto\": \"02A4F8A49266\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 57K DP 1A EM12 M20\",\n    \"Modelo\": \"LLP-40-120-277-57K-X1-DP-1A-EM12-M20\",\n    \"ID_Producto\": \"6FDEC1C43FD1\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 57K DP 1A EM12 M25\",\n    \"Modelo\": \"LLP-40-120-277-57K-X1-DP-1A-EM12-M25\",\n    \"ID_Producto\": \"5E9FD2EDF5EE\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 57K DP 2A M20\",\n    \"Modelo\": \"LLP-40-120-277-57K-X1-DP-2A-M20\",\n    \"ID_Producto\": \"4E807C2C49E4\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 57K DP 2A M25\",\n    \"Modelo\": \"LLP-40-120-277-57K-X1-DP-2A-M25\",\n    \"ID_Producto\": \"042901EBAAB5\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 57K DP 2A EM6 M20\",\n    \"Modelo\": \"LLP-40-120-277-57K-X1-DP-2A-EM6-M20\",\n    \"ID_Producto\": \"71AA695495A6\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 57K DP 2A EM6 M25\",\n    \"Modelo\": \"LLP-40-120-277-57K-X1-DP-2A-EM6-M25\",\n    \"ID_Producto\": \"49FE3EF704C0\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 57K DP 2A EM12 M20\",\n    \"Modelo\": \"LLP-40-120-277-57K-X1-DP-2A-EM12-M20\",\n    \"ID_Producto\": \"7D093E45AD6D\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"40 57K DP 2A EM12 M25\",\n    \"Modelo\": \"LLP-40-120-277-57K-X1-DP-2A-EM12-M25\",\n    \"ID_Producto\": \"C8E68EFB1A3A\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 5K CP 1A M20\",\n    \"Modelo\": \"LLP-50-120-277-5K-X1-CP-1A-M20\",\n    \"ID_Producto\": \"5BC3538F8BE7\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 5K CP 1A M25\",\n    \"Modelo\": \"LLP-50-120-277-5K-X1-CP-1A-M25\",\n    \"ID_Producto\": \"4A913AE93C51\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 5K CP 1A EM6 M20\",\n    \"Modelo\": \"LLP-50-120-277-5K-X1-CP-1A-EM6-M20\",\n    \"ID_Producto\": \"591427363920\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 5K CP 1A EM6 M25\",\n    \"Modelo\": \"LLP-50-120-277-5K-X1-CP-1A-EM6-M25\",\n    \"ID_Producto\": \"6CFAACF47242\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 5K CP 1A EM12 M20\",\n    \"Modelo\": \"LLP-50-120-277-5K-X1-CP-1A-EM12-M20\",\n    \"ID_Producto\": \"5E6B8E1814B4\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 5K CP 1A EM12 M25\",\n    \"Modelo\": \"LLP-50-120-277-5K-X1-CP-1A-EM12-M25\",\n    \"ID_Producto\": \"A5DAA6016AD2\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 5K CP 2A M20\",\n    \"Modelo\": \"LLP-50-120-277-5K-X1-CP-2A-M20\",\n    \"ID_Producto\": \"CB011AA3188F\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 5K CP 2A M25\",\n    \"Modelo\": \"LLP-50-120-277-5K-X1-CP-2A-M25\",\n    \"ID_Producto\": \"E15027D88AF6\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 5K CP 2A EM6 M20\",\n    \"Modelo\": \"LLP-50-120-277-5K-X1-CP-2A-EM6-M20\",\n    \"ID_Producto\": \"47A883E95827\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 5K CP 2A EM6 M25\",\n    \"Modelo\": \"LLP-50-120-277-5K-X1-CP-2A-EM6-M25\",\n    \"ID_Producto\": \"3049A55BC680\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 5K CP 2A EM12 M20\",\n    \"Modelo\": \"LLP-50-120-277-5K-X1-CP-2A-EM12-M20\",\n    \"ID_Producto\": \"5C82EC431492\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 5K CP 2A EM12 M25\",\n    \"Modelo\": \"LLP-50-120-277-5K-X1-CP-2A-EM12-M25\",\n    \"ID_Producto\": \"CA831C5A5DEA\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 5K DP 1A M20\",\n    \"Modelo\": \"LLP-50-120-277-5K-X1-DP-1A-M20\",\n    \"ID_Producto\": \"8189287F2131\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 5K DP 1A M25\",\n    \"Modelo\": \"LLP-50-120-277-5K-X1-DP-1A-M25\",\n    \"ID_Producto\": \"426DD7F03101\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 5K DP 1A EM6 M20\",\n    \"Modelo\": \"LLP-50-120-277-5K-X1-DP-1A-EM6-M20\",\n    \"ID_Producto\": \"A85B5685A1F8\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 5K DP 1A EM6 M25\",\n    \"Modelo\": \"LLP-50-120-277-5K-X1-DP-1A-EM6-M25\",\n    \"ID_Producto\": \"39F291D42C6D\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 5K DP 1A EM12 M20\",\n    \"Modelo\": \"LLP-50-120-277-5K-X1-DP-1A-EM12-M20\",\n    \"ID_Producto\": \"7F6D59CC101E\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 5K DP 1A EM12 M25\",\n    \"Modelo\": \"LLP-50-120-277-5K-X1-DP-1A-EM12-M25\",\n    \"ID_Producto\": \"9860AD1A1C5C\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 5K DP 2A M20\",\n    \"Modelo\": \"LLP-50-120-277-5K-X1-DP-2A-M20\",\n    \"ID_Producto\": \"3891A21A2DB8\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 5K DP 2A M25\",\n    \"Modelo\": \"LLP-50-120-277-5K-X1-DP-2A-M25\",\n    \"ID_Producto\": \"F37936D5B615\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 5K DP 2A EM6 M20\",\n    \"Modelo\": \"LLP-50-120-277-5K-X1-DP-2A-EM6-M20\",\n    \"ID_Producto\": \"C85383A5BF59\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 5K DP 2A EM6 M25\",\n    \"Modelo\": \"LLP-50-120-277-5K-X1-DP-2A-EM6-M25\",\n    \"ID_Producto\": \"176F3F36AAC3\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 5K DP 2A EM12 M20\",\n    \"Modelo\": \"LLP-50-120-277-5K-X1-DP-2A-EM12-M20\",\n    \"ID_Producto\": \"C661E44EA9D7\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 5K DP 2A EM12 M25\",\n    \"Modelo\": \"LLP-50-120-277-5K-X1-DP-2A-EM12-M25\",\n    \"ID_Producto\": \"D456D07AF008\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 57K CP 1A M20\",\n    \"Modelo\": \"LLP-50-120-277-57K-X1-CP-1A-M20\",\n    \"ID_Producto\": \"52078972F7C8\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 57K CP 1A M25\",\n    \"Modelo\": \"LLP-50-120-277-57K-X1-CP-1A-M25\",\n    \"ID_Producto\": \"AA78ED449BCB\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 57K CP 1A EM6 M20\",\n    \"Modelo\": \"LLP-50-120-277-57K-X1-CP-1A-EM6-M20\",\n    \"ID_Producto\": \"9B5A66C9D033\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 57K CP 1A EM6 M25\",\n    \"Modelo\": \"LLP-50-120-277-57K-X1-CP-1A-EM6-M25\",\n    \"ID_Producto\": \"6D9ADA5B65E0\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 57K CP 1A EM12 M20\",\n    \"Modelo\": \"LLP-50-120-277-57K-X1-CP-1A-EM12-M20\",\n    \"ID_Producto\": \"C2D6E3A9B614\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 57K CP 1A EM12 M25\",\n    \"Modelo\": \"LLP-50-120-277-57K-X1-CP-1A-EM12-M25\",\n    \"ID_Producto\": \"786A3FD055E6\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 57K CP 2A M20\",\n    \"Modelo\": \"LLP-50-120-277-57K-X1-CP-2A-M20\",\n    \"ID_Producto\": \"94C1C7A46A6D\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 57K CP 2A M25\",\n    \"Modelo\": \"LLP-50-120-277-57K-X1-CP-2A-M25\",\n    \"ID_Producto\": \"C3F62E8D43A2\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 57K CP 2A EM6 M20\",\n    \"Modelo\": \"LLP-50-120-277-57K-X1-CP-2A-EM6-M20\",\n    \"ID_Producto\": \"AB9D8D42361B\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 57K CP 2A EM6 M25\",\n    \"Modelo\": \"LLP-50-120-277-57K-X1-CP-2A-EM6-M25\",\n    \"ID_Producto\": \"F434A8BB2712\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 57K CP 2A EM12 M20\",\n    \"Modelo\": \"LLP-50-120-277-57K-X1-CP-2A-EM12-M20\",\n    \"ID_Producto\": \"EB36F2931709\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 57K CP 2A EM12 M25\",\n    \"Modelo\": \"LLP-50-120-277-57K-X1-CP-2A-EM12-M25\",\n    \"ID_Producto\": \"493B6131D04A\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 57K DP 1A M20\",\n    \"Modelo\": \"LLP-50-120-277-57K-X1-DP-1A-M20\",\n    \"ID_Producto\": \"84CA2E0A322D\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 57K DP 1A M25\",\n    \"Modelo\": \"LLP-50-120-277-57K-X1-DP-1A-M25\",\n    \"ID_Producto\": \"A9A945DAA668\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 57K DP 1A EM6 M20\",\n    \"Modelo\": \"LLP-50-120-277-57K-X1-DP-1A-EM6-M20\",\n    \"ID_Producto\": \"6799746094FD\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 57K DP 1A EM6 M25\",\n    \"Modelo\": \"LLP-50-120-277-57K-X1-DP-1A-EM6-M25\",\n    \"ID_Producto\": \"902B4C1E79D9\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 57K DP 1A EM12 M20\",\n    \"Modelo\": \"LLP-50-120-277-57K-X1-DP-1A-EM12-M20\",\n    \"ID_Producto\": \"A9D03513F8EF\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 57K DP 1A EM12 M25\",\n    \"Modelo\": \"LLP-50-120-277-57K-X1-DP-1A-EM12-M25\",\n    \"ID_Producto\": \"6D6E4D1E94A9\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 57K DP 2A M20\",\n    \"Modelo\": \"LLP-50-120-277-57K-X1-DP-2A-M20\",\n    \"ID_Producto\": \"428CC10F719D\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 57K DP 2A M25\",\n    \"Modelo\": \"LLP-50-120-277-57K-X1-DP-2A-M25\",\n    \"ID_Producto\": \"E4FA6745653D\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 57K DP 2A EM6 M20\",\n    \"Modelo\": \"LLP-50-120-277-57K-X1-DP-2A-EM6-M20\",\n    \"ID_Producto\": \"76F4497FB93F\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 57K DP 2A EM6 M25\",\n    \"Modelo\": \"LLP-50-120-277-57K-X1-DP-2A-EM6-M25\",\n    \"ID_Producto\": \"32223D82B03D\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 57K DP 2A EM12 M20\",\n    \"Modelo\": \"LLP-50-120-277-57K-X1-DP-2A-EM12-M20\",\n    \"ID_Producto\": \"79B6C368C8A4\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"50 57K DP 2A EM12 M25\",\n    \"Modelo\": \"LLP-50-120-277-57K-X1-DP-2A-EM12-M25\",\n    \"ID_Producto\": \"9738566B3AAC\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 5K CP 1A M20\",\n    \"Modelo\": \"LLP-60-120-277-5K-X1-CP-1A-M20\",\n    \"ID_Producto\": \"4A990AD78747\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 5K CP 1A M25\",\n    \"Modelo\": \"LLP-60-120-277-5K-X1-CP-1A-M25\",\n    \"ID_Producto\": \"938651891EA5\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 5K CP 1A EM6 M20\",\n    \"Modelo\": \"LLP-60-120-277-5K-X1-CP-1A-EM6-M20\",\n    \"ID_Producto\": \"A20879DD9F4D\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 5K CP 1A EM6 M25\",\n    \"Modelo\": \"LLP-60-120-277-5K-X1-CP-1A-EM6-M25\",\n    \"ID_Producto\": \"96764B308816\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 5K CP 1A EM12 M20\",\n    \"Modelo\": \"LLP-60-120-277-5K-X1-CP-1A-EM12-M20\",\n    \"ID_Producto\": \"9B14CD9D54C7\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 5K CP 1A EM12 M25\",\n    \"Modelo\": \"LLP-60-120-277-5K-X1-CP-1A-EM12-M25\",\n    \"ID_Producto\": \"22EB414CBD19\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 5K CP 2A M20\",\n    \"Modelo\": \"LLP-60-120-277-5K-X1-CP-2A-M20\",\n    \"ID_Producto\": \"70ED05B2223A\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 5K CP 2A M25\",\n    \"Modelo\": \"LLP-60-120-277-5K-X1-CP-2A-M25\",\n    \"ID_Producto\": \"3F34C1AE9E5C\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 5K CP 2A EM6 M20\",\n    \"Modelo\": \"LLP-60-120-277-5K-X1-CP-2A-EM6-M20\",\n    \"ID_Producto\": \"6EBDC6C647EB\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 5K CP 2A EM6 M25\",\n    \"Modelo\": \"LLP-60-120-277-5K-X1-CP-2A-EM6-M25\",\n    \"ID_Producto\": \"81CDC8F9CE98\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 5K CP 2A EM12 M20\",\n    \"Modelo\": \"LLP-60-120-277-5K-X1-CP-2A-EM12-M20\",\n    \"ID_Producto\": \"8A5805A0391A\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 5K CP 2A EM12 M25\",\n    \"Modelo\": \"LLP-60-120-277-5K-X1-CP-2A-EM12-M25\",\n    \"ID_Producto\": \"A403BA778A18\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 5K DP 1A M20\",\n    \"Modelo\": \"LLP-60-120-277-5K-X1-DP-1A-M20\",\n    \"ID_Producto\": \"6F86614A33A5\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 5K DP 1A M25\",\n    \"Modelo\": \"LLP-60-120-277-5K-X1-DP-1A-M25\",\n    \"ID_Producto\": \"60D3B87455A6\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 5K DP 1A EM6 M20\",\n    \"Modelo\": \"LLP-60-120-277-5K-X1-DP-1A-EM6-M20\",\n    \"ID_Producto\": \"B76235218B1E\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 5K DP 1A EM6 M25\",\n    \"Modelo\": \"LLP-60-120-277-5K-X1-DP-1A-EM6-M25\",\n    \"ID_Producto\": \"F8461D71DBA6\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 5K DP 1A EM12 M20\",\n    \"Modelo\": \"LLP-60-120-277-5K-X1-DP-1A-EM12-M20\",\n    \"ID_Producto\": \"83684601A6E1\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 5K DP 1A EM12 M25\",\n    \"Modelo\": \"LLP-60-120-277-5K-X1-DP-1A-EM12-M25\",\n    \"ID_Producto\": \"91958220518B\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 5K DP 2A M20\",\n    \"Modelo\": \"LLP-60-120-277-5K-X1-DP-2A-M20\",\n    \"ID_Producto\": \"4D37D59F7898\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 5K DP 2A M25\",\n    \"Modelo\": \"LLP-60-120-277-5K-X1-DP-2A-M25\",\n    \"ID_Producto\": \"92F6E93BC8C3\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 5K DP 2A EM6 M20\",\n    \"Modelo\": \"LLP-60-120-277-5K-X1-DP-2A-EM6-M20\",\n    \"ID_Producto\": \"C556D3B91954\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 5K DP 2A EM6 M25\",\n    \"Modelo\": \"LLP-60-120-277-5K-X1-DP-2A-EM6-M25\",\n    \"ID_Producto\": \"CADA303FBDFE\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 5K DP 2A EM12 M20\",\n    \"Modelo\": \"LLP-60-120-277-5K-X1-DP-2A-EM12-M20\",\n    \"ID_Producto\": \"03DF282F47CE\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 5K DP 2A EM12 M25\",\n    \"Modelo\": \"LLP-60-120-277-5K-X1-DP-2A-EM12-M25\",\n    \"ID_Producto\": \"9394C25042A9\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 57K CP 1A M20\",\n    \"Modelo\": \"LLP-60-120-277-57K-X1-CP-1A-M20\",\n    \"ID_Producto\": \"45F83EF541A3\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 57K CP 1A M25\",\n    \"Modelo\": \"LLP-60-120-277-57K-X1-CP-1A-M25\",\n    \"ID_Producto\": \"184667D858C9\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 57K CP 1A EM6 M20\",\n    \"Modelo\": \"LLP-60-120-277-57K-X1-CP-1A-EM6-M20\",\n    \"ID_Producto\": \"41B87B061715\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 57K CP 1A EM6 M25\",\n    \"Modelo\": \"LLP-60-120-277-57K-X1-CP-1A-EM6-M25\",\n    \"ID_Producto\": \"3951B2C1370E\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 57K CP 1A EM12 M20\",\n    \"Modelo\": \"LLP-60-120-277-57K-X1-CP-1A-EM12-M20\",\n    \"ID_Producto\": \"745323424177\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 57K CP 1A EM12 M25\",\n    \"Modelo\": \"LLP-60-120-277-57K-X1-CP-1A-EM12-M25\",\n    \"ID_Producto\": \"879DDF6A27D9\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 57K CP 2A M20\",\n    \"Modelo\": \"LLP-60-120-277-57K-X1-CP-2A-M20\",\n    \"ID_Producto\": \"1D6AA4DD3511\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 57K CP 2A M25\",\n    \"Modelo\": \"LLP-60-120-277-57K-X1-CP-2A-M25\",\n    \"ID_Producto\": \"54F9D9DB67CB\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 57K CP 2A EM6 M20\",\n    \"Modelo\": \"LLP-60-120-277-57K-X1-CP-2A-EM6-M20\",\n    \"ID_Producto\": \"FC09E798C3F5\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 57K CP 2A EM6 M25\",\n    \"Modelo\": \"LLP-60-120-277-57K-X1-CP-2A-EM6-M25\",\n    \"ID_Producto\": \"E7EBEB55B317\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 57K CP 2A EM12 M20\",\n    \"Modelo\": \"LLP-60-120-277-57K-X1-CP-2A-EM12-M20\",\n    \"ID_Producto\": \"7386BF4D4E38\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 57K CP 2A EM12 M25\",\n    \"Modelo\": \"LLP-60-120-277-57K-X1-CP-2A-EM12-M25\",\n    \"ID_Producto\": \"C96738F0900A\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 57K DP 1A M20\",\n    \"Modelo\": \"LLP-60-120-277-57K-X1-DP-1A-M20\",\n    \"ID_Producto\": \"EE982B4B3284\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 57K DP 1A M25\",\n    \"Modelo\": \"LLP-60-120-277-57K-X1-DP-1A-M25\",\n    \"ID_Producto\": \"74E3A6ADE25B\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 57K DP 1A EM6 M20\",\n    \"Modelo\": \"LLP-60-120-277-57K-X1-DP-1A-EM6-M20\",\n    \"ID_Producto\": \"745675A593EA\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 57K DP 1A EM6 M25\",\n    \"Modelo\": \"LLP-60-120-277-57K-X1-DP-1A-EM6-M25\",\n    \"ID_Producto\": \"872FCBD1FCB7\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 57K DP 1A EM12 M20\",\n    \"Modelo\": \"LLP-60-120-277-57K-X1-DP-1A-EM12-M20\",\n    \"ID_Producto\": \"97AFC0F329A1\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 57K DP 1A EM12 M25\",\n    \"Modelo\": \"LLP-60-120-277-57K-X1-DP-1A-EM12-M25\",\n    \"ID_Producto\": \"31223257DA79\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 57K DP 2A M20\",\n    \"Modelo\": \"LLP-60-120-277-57K-X1-DP-2A-M20\",\n    \"ID_Producto\": \"2A033142300E\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 57K DP 2A M25\",\n    \"Modelo\": \"LLP-60-120-277-57K-X1-DP-2A-M25\",\n    \"ID_Producto\": \"70A7FCFB609A\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 57K DP 2A EM6 M20\",\n    \"Modelo\": \"LLP-60-120-277-57K-X1-DP-2A-EM6-M20\",\n    \"ID_Producto\": \"6D36FABB0630\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 57K DP 2A EM6 M25\",\n    \"Modelo\": \"LLP-60-120-277-57K-X1-DP-2A-EM6-M25\",\n    \"ID_Producto\": \"E1A551E84311\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 57K DP 2A EM12 M20\",\n    \"Modelo\": \"LLP-60-120-277-57K-X1-DP-2A-EM12-M20\",\n    \"ID_Producto\": \"214C7F5A9AE7\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"60 57K DP 2A EM12 M25\",\n    \"Modelo\": \"LLP-60-120-277-57K-X1-DP-2A-EM12-M25\",\n    \"ID_Producto\": \"5417294DEB6A\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 5K CP 1A M20\",\n    \"Modelo\": \"LLP-80-120-277-5K-X1-CP-1A-M20\",\n    \"ID_Producto\": \"53F87FD62FA9\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 5K CP 1A M25\",\n    \"Modelo\": \"LLP-80-120-277-5K-X1-CP-1A-M25\",\n    \"ID_Producto\": \"DFA4CF83D3B2\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 5K CP 1A EM6 M20\",\n    \"Modelo\": \"LLP-80-120-277-5K-X1-CP-1A-EM6-M20\",\n    \"ID_Producto\": \"B2E80740EF9E\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 5K CP 1A EM6 M25\",\n    \"Modelo\": \"LLP-80-120-277-5K-X1-CP-1A-EM6-M25\",\n    \"ID_Producto\": \"7E83DE6B7115\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 5K CP 1A EM12 M20\",\n    \"Modelo\": \"LLP-80-120-277-5K-X1-CP-1A-EM12-M20\",\n    \"ID_Producto\": \"C14A22F993FA\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 5K CP 1A EM12 M25\",\n    \"Modelo\": \"LLP-80-120-277-5K-X1-CP-1A-EM12-M25\",\n    \"ID_Producto\": \"4C66264A1CBA\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 5K CP 2A M20\",\n    \"Modelo\": \"LLP-80-120-277-5K-X1-CP-2A-M20\",\n    \"ID_Producto\": \"3752F0C75DD1\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 5K CP 2A M25\",\n    \"Modelo\": \"LLP-80-120-277-5K-X1-CP-2A-M25\",\n    \"ID_Producto\": \"393FA2F2A9AB\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 5K CP 2A EM6 M20\",\n    \"Modelo\": \"LLP-80-120-277-5K-X1-CP-2A-EM6-M20\",\n    \"ID_Producto\": \"287672D4538D\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 5K CP 2A EM6 M25\",\n    \"Modelo\": \"LLP-80-120-277-5K-X1-CP-2A-EM6-M25\",\n    \"ID_Producto\": \"07C38FC4A0E8\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 5K CP 2A EM12 M20\",\n    \"Modelo\": \"LLP-80-120-277-5K-X1-CP-2A-EM12-M20\",\n    \"ID_Producto\": \"C625C5242DEC\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 5K CP 2A EM12 M25\",\n    \"Modelo\": \"LLP-80-120-277-5K-X1-CP-2A-EM12-M25\",\n    \"ID_Producto\": \"E8B56F369711\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 5K DP 1A M20\",\n    \"Modelo\": \"LLP-80-120-277-5K-X1-DP-1A-M20\",\n    \"ID_Producto\": \"C85795D97B1E\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 5K DP 1A M25\",\n    \"Modelo\": \"LLP-80-120-277-5K-X1-DP-1A-M25\",\n    \"ID_Producto\": \"C9FFFB5E244C\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 5K DP 1A EM6 M20\",\n    \"Modelo\": \"LLP-80-120-277-5K-X1-DP-1A-EM6-M20\",\n    \"ID_Producto\": \"85D60CB354CA\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 5K DP 1A EM6 M25\",\n    \"Modelo\": \"LLP-80-120-277-5K-X1-DP-1A-EM6-M25\",\n    \"ID_Producto\": \"9C04B981ABBA\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 5K DP 1A EM12 M20\",\n    \"Modelo\": \"LLP-80-120-277-5K-X1-DP-1A-EM12-M20\",\n    \"ID_Producto\": \"05892346E70C\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 5K DP 1A EM12 M25\",\n    \"Modelo\": \"LLP-80-120-277-5K-X1-DP-1A-EM12-M25\",\n    \"ID_Producto\": \"8FA06E16CF9D\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 5K DP 2A M20\",\n    \"Modelo\": \"LLP-80-120-277-5K-X1-DP-2A-M20\",\n    \"ID_Producto\": \"B034905B97B2\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 5K DP 2A M25\",\n    \"Modelo\": \"LLP-80-120-277-5K-X1-DP-2A-M25\",\n    \"ID_Producto\": \"280679B5C2F7\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 5K DP 2A EM6 M20\",\n    \"Modelo\": \"LLP-80-120-277-5K-X1-DP-2A-EM6-M20\",\n    \"ID_Producto\": \"BEC7A35678E4\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 5K DP 2A EM6 M25\",\n    \"Modelo\": \"LLP-80-120-277-5K-X1-DP-2A-EM6-M25\",\n    \"ID_Producto\": \"DDE4A340D274\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 5K DP 2A EM12 M20\",\n    \"Modelo\": \"LLP-80-120-277-5K-X1-DP-2A-EM12-M20\",\n    \"ID_Producto\": \"7957B9193532\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 5K DP 2A EM12 M25\",\n    \"Modelo\": \"LLP-80-120-277-5K-X1-DP-2A-EM12-M25\",\n    \"ID_Producto\": \"C61B88ED77B0\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 57K CP 1A M20\",\n    \"Modelo\": \"LLP-80-120-277-57K-X1-CP-1A-M20\",\n    \"ID_Producto\": \"86D604097EE1\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 57K CP 1A M25\",\n    \"Modelo\": \"LLP-80-120-277-57K-X1-CP-1A-M25\",\n    \"ID_Producto\": \"203E52D37B61\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 57K CP 1A EM6 M20\",\n    \"Modelo\": \"LLP-80-120-277-57K-X1-CP-1A-EM6-M20\",\n    \"ID_Producto\": \"36E973FCDE07\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 57K CP 1A EM6 M25\",\n    \"Modelo\": \"LLP-80-120-277-57K-X1-CP-1A-EM6-M25\",\n    \"ID_Producto\": \"45B25E0B2A9D\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 57K CP 1A EM12 M20\",\n    \"Modelo\": \"LLP-80-120-277-57K-X1-CP-1A-EM12-M20\",\n    \"ID_Producto\": \"0FB8F62C3AE5\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 57K CP 1A EM12 M25\",\n    \"Modelo\": \"LLP-80-120-277-57K-X1-CP-1A-EM12-M25\",\n    \"ID_Producto\": \"66850BC671E5\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 57K CP 2A M20\",\n    \"Modelo\": \"LLP-80-120-277-57K-X1-CP-2A-M20\",\n    \"ID_Producto\": \"4E3E96A8F96C\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 57K CP 2A M25\",\n    \"Modelo\": \"LLP-80-120-277-57K-X1-CP-2A-M25\",\n    \"ID_Producto\": \"E4D0554BF5EA\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 57K CP 2A EM6 M20\",\n    \"Modelo\": \"LLP-80-120-277-57K-X1-CP-2A-EM6-M20\",\n    \"ID_Producto\": \"AFEE49869133\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 57K CP 2A EM6 M25\",\n    \"Modelo\": \"LLP-80-120-277-57K-X1-CP-2A-EM6-M25\",\n    \"ID_Producto\": \"3D4D23EBA857\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 57K CP 2A EM12 M20\",\n    \"Modelo\": \"LLP-80-120-277-57K-X1-CP-2A-EM12-M20\",\n    \"ID_Producto\": \"BC907D3FCBED\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 57K CP 2A EM12 M25\",\n    \"Modelo\": \"LLP-80-120-277-57K-X1-CP-2A-EM12-M25\",\n    \"ID_Producto\": \"D6DBD970039F\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 57K DP 1A M20\",\n    \"Modelo\": \"LLP-80-120-277-57K-X1-DP-1A-M20\",\n    \"ID_Producto\": \"1DFD72947679\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 57K DP 1A M25\",\n    \"Modelo\": \"LLP-80-120-277-57K-X1-DP-1A-M25\",\n    \"ID_Producto\": \"DFD2BAD0F04B\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 57K DP 1A EM6 M20\",\n    \"Modelo\": \"LLP-80-120-277-57K-X1-DP-1A-EM6-M20\",\n    \"ID_Producto\": \"007393E78FF3\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 57K DP 1A EM6 M25\",\n    \"Modelo\": \"LLP-80-120-277-57K-X1-DP-1A-EM6-M25\",\n    \"ID_Producto\": \"A263BBD87264\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 57K DP 1A EM12 M20\",\n    \"Modelo\": \"LLP-80-120-277-57K-X1-DP-1A-EM12-M20\",\n    \"ID_Producto\": \"C76CC7F44F28\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 57K DP 1A EM12 M25\",\n    \"Modelo\": \"LLP-80-120-277-57K-X1-DP-1A-EM12-M25\",\n    \"ID_Producto\": \"A787F4FD4D55\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 57K DP 2A M20\",\n    \"Modelo\": \"LLP-80-120-277-57K-X1-DP-2A-M20\",\n    \"ID_Producto\": \"5CA153AADE35\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 57K DP 2A M25\",\n    \"Modelo\": \"LLP-80-120-277-57K-X1-DP-2A-M25\",\n    \"ID_Producto\": \"D0D2C55610E5\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 57K DP 2A EM6 M20\",\n    \"Modelo\": \"LLP-80-120-277-57K-X1-DP-2A-EM6-M20\",\n    \"ID_Producto\": \"178D648CBCD5\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 57K DP 2A EM6 M25\",\n    \"Modelo\": \"LLP-80-120-277-57K-X1-DP-2A-EM6-M25\",\n    \"ID_Producto\": \"3FDFB16A2923\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 57K DP 2A EM12 M20\",\n    \"Modelo\": \"LLP-80-120-277-57K-X1-DP-2A-EM12-M20\",\n    \"ID_Producto\": \"A687DBD7BEC2\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"80 57K DP 2A EM12 M25\",\n    \"Modelo\": \"LLP-80-120-277-57K-X1-DP-2A-EM12-M25\",\n    \"ID_Producto\": \"59E40428F50C\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 5K CP 1A M20\",\n    \"Modelo\": \"LLP-100-120-277-5K-X1-CP-1A-M20\",\n    \"ID_Producto\": \"D31FDF3B8AA4\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 5K CP 1A M25\",\n    \"Modelo\": \"LLP-100-120-277-5K-X1-CP-1A-M25\",\n    \"ID_Producto\": \"FF11C750A6C5\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 5K CP 1A EM6 M20\",\n    \"Modelo\": \"LLP-100-120-277-5K-X1-CP-1A-EM6-M20\",\n    \"ID_Producto\": \"F4AD4768AF5D\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 5K CP 1A EM6 M25\",\n    \"Modelo\": \"LLP-100-120-277-5K-X1-CP-1A-EM6-M25\",\n    \"ID_Producto\": \"A359F606F84E\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 5K CP 1A EM12 M20\",\n    \"Modelo\": \"LLP-100-120-277-5K-X1-CP-1A-EM12-M20\",\n    \"ID_Producto\": \"C396AC050527\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 5K CP 1A EM12 M25\",\n    \"Modelo\": \"LLP-100-120-277-5K-X1-CP-1A-EM12-M25\",\n    \"ID_Producto\": \"137D51635EC8\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 5K CP 2A M20\",\n    \"Modelo\": \"LLP-100-120-277-5K-X1-CP-2A-M20\",\n    \"ID_Producto\": \"A4C32AE72B09\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 5K CP 2A M25\",\n    \"Modelo\": \"LLP-100-120-277-5K-X1-CP-2A-M25\",\n    \"ID_Producto\": \"6ED48ED3DCE4\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 5K CP 2A EM6 M20\",\n    \"Modelo\": \"LLP-100-120-277-5K-X1-CP-2A-EM6-M20\",\n    \"ID_Producto\": \"9D0C72574992\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 5K CP 2A EM6 M25\",\n    \"Modelo\": \"LLP-100-120-277-5K-X1-CP-2A-EM6-M25\",\n    \"ID_Producto\": \"8606DDD25C57\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 5K CP 2A EM12 M20\",\n    \"Modelo\": \"LLP-100-120-277-5K-X1-CP-2A-EM12-M20\",\n    \"ID_Producto\": \"2C764D7AFE7F\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 5K CP 2A EM12 M25\",\n    \"Modelo\": \"LLP-100-120-277-5K-X1-CP-2A-EM12-M25\",\n    \"ID_Producto\": \"A41FBC449C66\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 5K DP 1A M20\",\n    \"Modelo\": \"LLP-100-120-277-5K-X1-DP-1A-M20\",\n    \"ID_Producto\": \"D6A03B7D0E34\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 5K DP 1A M25\",\n    \"Modelo\": \"LLP-100-120-277-5K-X1-DP-1A-M25\",\n    \"ID_Producto\": \"2C70D757C795\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 5K DP 1A EM6 M20\",\n    \"Modelo\": \"LLP-100-120-277-5K-X1-DP-1A-EM6-M20\",\n    \"ID_Producto\": \"C53B8B75B34E\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 5K DP 1A EM6 M25\",\n    \"Modelo\": \"LLP-100-120-277-5K-X1-DP-1A-EM6-M25\",\n    \"ID_Producto\": \"D55CCD5BB79C\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 5K DP 1A EM12 M20\",\n    \"Modelo\": \"LLP-100-120-277-5K-X1-DP-1A-EM12-M20\",\n    \"ID_Producto\": \"4FA0EB860882\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 5K DP 1A EM12 M25\",\n    \"Modelo\": \"LLP-100-120-277-5K-X1-DP-1A-EM12-M25\",\n    \"ID_Producto\": \"14D3F8B4723F\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 5K DP 2A M20\",\n    \"Modelo\": \"LLP-100-120-277-5K-X1-DP-2A-M20\",\n    \"ID_Producto\": \"0CD793285220\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 5K DP 2A M25\",\n    \"Modelo\": \"LLP-100-120-277-5K-X1-DP-2A-M25\",\n    \"ID_Producto\": \"B983829B0BC6\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 5K DP 2A EM6 M20\",\n    \"Modelo\": \"LLP-100-120-277-5K-X1-DP-2A-EM6-M20\",\n    \"ID_Producto\": \"7E303F0EBFDD\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 5K DP 2A EM6 M25\",\n    \"Modelo\": \"LLP-100-120-277-5K-X1-DP-2A-EM6-M25\",\n    \"ID_Producto\": \"799B930822A5\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 5K DP 2A EM12 M20\",\n    \"Modelo\": \"LLP-100-120-277-5K-X1-DP-2A-EM12-M20\",\n    \"ID_Producto\": \"6A8476E854CF\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 5K DP 2A EM12 M25\",\n    \"Modelo\": \"LLP-100-120-277-5K-X1-DP-2A-EM12-M25\",\n    \"ID_Producto\": \"4655BE3C8B59\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 57K CP 1A M20\",\n    \"Modelo\": \"LLP-100-120-277-57K-X1-CP-1A-M20\",\n    \"ID_Producto\": \"EA739311EA88\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 57K CP 1A M25\",\n    \"Modelo\": \"LLP-100-120-277-57K-X1-CP-1A-M25\",\n    \"ID_Producto\": \"DB9E0AC8B3CB\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 57K CP 1A EM6 M20\",\n    \"Modelo\": \"LLP-100-120-277-57K-X1-CP-1A-EM6-M20\",\n    \"ID_Producto\": \"AB7AEC087FF0\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 57K CP 1A EM6 M25\",\n    \"Modelo\": \"LLP-100-120-277-57K-X1-CP-1A-EM6-M25\",\n    \"ID_Producto\": \"D6DF3DBA4D25\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 57K CP 1A EM12 M20\",\n    \"Modelo\": \"LLP-100-120-277-57K-X1-CP-1A-EM12-M20\",\n    \"ID_Producto\": \"5703F753D4DB\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 57K CP 1A EM12 M25\",\n    \"Modelo\": \"LLP-100-120-277-57K-X1-CP-1A-EM12-M25\",\n    \"ID_Producto\": \"1610F685E1CA\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 57K CP 2A M20\",\n    \"Modelo\": \"LLP-100-120-277-57K-X1-CP-2A-M20\",\n    \"ID_Producto\": \"71AE9247BA64\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 57K CP 2A M25\",\n    \"Modelo\": \"LLP-100-120-277-57K-X1-CP-2A-M25\",\n    \"ID_Producto\": \"94D54384DC66\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 57K CP 2A EM6 M20\",\n    \"Modelo\": \"LLP-100-120-277-57K-X1-CP-2A-EM6-M20\",\n    \"ID_Producto\": \"B221D9563DCB\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 57K CP 2A EM6 M25\",\n    \"Modelo\": \"LLP-100-120-277-57K-X1-CP-2A-EM6-M25\",\n    \"ID_Producto\": \"7066D9131631\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 57K CP 2A EM12 M20\",\n    \"Modelo\": \"LLP-100-120-277-57K-X1-CP-2A-EM12-M20\",\n    \"ID_Producto\": \"4AE44A229C90\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 57K CP 2A EM12 M25\",\n    \"Modelo\": \"LLP-100-120-277-57K-X1-CP-2A-EM12-M25\",\n    \"ID_Producto\": \"B7C0BDB83053\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 57K DP 1A M20\",\n    \"Modelo\": \"LLP-100-120-277-57K-X1-DP-1A-M20\",\n    \"ID_Producto\": \"356473F4832D\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 57K DP 1A M25\",\n    \"Modelo\": \"LLP-100-120-277-57K-X1-DP-1A-M25\",\n    \"ID_Producto\": \"2B37BE2B1248\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 57K DP 1A EM6 M20\",\n    \"Modelo\": \"LLP-100-120-277-57K-X1-DP-1A-EM6-M20\",\n    \"ID_Producto\": \"1509E2EC4825\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 57K DP 1A EM6 M25\",\n    \"Modelo\": \"LLP-100-120-277-57K-X1-DP-1A-EM6-M25\",\n    \"ID_Producto\": \"5E106715C7CA\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 57K DP 1A EM12 M20\",\n    \"Modelo\": \"LLP-100-120-277-57K-X1-DP-1A-EM12-M20\",\n    \"ID_Producto\": \"1C74CCCF8C16\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 57K DP 1A EM12 M25\",\n    \"Modelo\": \"LLP-100-120-277-57K-X1-DP-1A-EM12-M25\",\n    \"ID_Producto\": \"B30CE7BB6BF6\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 57K DP 2A M20\",\n    \"Modelo\": \"LLP-100-120-277-57K-X1-DP-2A-M20\",\n    \"ID_Producto\": \"ADEB84BA2CD9\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 57K DP 2A M25\",\n    \"Modelo\": \"LLP-100-120-277-57K-X1-DP-2A-M25\",\n    \"ID_Producto\": \"D88DC1601142\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 57K DP 2A EM6 M20\",\n    \"Modelo\": \"LLP-100-120-277-57K-X1-DP-2A-EM6-M20\",\n    \"ID_Producto\": \"E822056CD8B5\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 57K DP 2A EM6 M25\",\n    \"Modelo\": \"LLP-100-120-277-57K-X1-DP-2A-EM6-M25\",\n    \"ID_Producto\": \"EB4FFF81667A\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 57K DP 2A EM12 M20\",\n    \"Modelo\": \"LLP-100-120-277-57K-X1-DP-2A-EM12-M20\",\n    \"ID_Producto\": \"80367AC96088\"\n  },\n  {\n    \"Suministro\": \"Iluminaci&oacute;n\",\n    \"Categor&iacute;a\": \"&Aacute;reas Especiales (Hazloc)\",\n    \"Marca\": \"SUPRA\",\n    \"Familia\": \"Red Sky\",\n    \"Nombre Comercial\": \"100 57K DP 2A EM12 M25\",\n    \"Modelo\": \"LLP-100-120-277-57K-X1-DP-2A-EM12-M25\",\n    \"ID_Producto\": \"4E932790674C\"\n  }\n]<\/script>\n<script>\n(async function(){\n  \/\/ Attempt to fetch from assets\/data first; if not available, fall back to inline JSON\n  async function loadJSON(url, inlineId){\n    try {\n      const r = await fetch(url, {cache:'no-store'});\n      if(r.ok) return await r.json();\n    } catch(e) { \/* fallback *\/ }\n    const el = document.getElementById(inlineId);\n    if(el) return JSON.parse(el.textContent);\n    return null;\n  }\n\n  const data = await loadJSON('assets\/data\/vms_supply_catalog.json', 'vms-supply-json');\n  const flat = await loadJSON('assets\/data\/vms_supply_catalog_flat.json', 'vms-supply-json-flat');\n\n  const $supply = document.getElementById('supplyType');\n  const $cat    = document.getElementById('category');\n  const $brand  = document.getElementById('brand');\n  const $family = document.getElementById('family');\n  const $desc   = document.getElementById('description');\n  const $model  = document.getElementById('model');\n\n  if(!($supply && $cat && $brand && $family && $desc && $model && data)) {\n    console.warn('Supply wiring: elementos o datos no disponibles.');\n    return;\n  }\n\n  const setOpts = (select, items, placeholder='Selecciona\u2026')=>{\n    select.innerHTML = '';\n    const opt0 = document.createElement('option');\n    opt0.value = '';\n    opt0.textContent = placeholder;\n    select.appendChild(opt0);\n    (items||[]).forEach(v=>{\n      const o = document.createElement('option');\n      o.value = o.textContent = v;\n      select.appendChild(o);\n    });\n    select.disabled = !items || items.length === 0;\n    \/\/ Disparar cambio para actualizar el resumen\n    const evt = new Event('change', { bubbles: true });\n    select.dispatchEvent(evt);\n  };\n\n  \/\/ Nivel 1\n  setOpts($supply, Object.keys(data), 'Selecciona\u2026');\n  [$cat,$brand,$family,$desc,$model].forEach(s=> s.disabled = true);\n\n  $supply.addEventListener('change', e=>{\n    const s = e.target.value;\n    const cats = s ? Object.keys(data[s]||{}) : [];\n    setOpts($cat, cats);\n    [$brand,$family,$desc,$model].forEach(sel=> setOpts(sel, []));\n  });\n\n  $cat.addEventListener('change', e=>{\n    const s = $supply.value; const c = e.target.value;\n    const brands = s && c ? Object.keys((data[s]||{})[c]||{}) : [];\n    setOpts($brand, brands);\n    [$family,$desc,$model].forEach(sel=> setOpts(sel, []));\n  });\n\n  $brand.addEventListener('change', e=>{\n    const s = $supply.value; const c = $cat.value; const b = e.target.value;\n    const fams = (data[s]&&data[s][c]&&data[s][c][b]) ? Object.keys(data[s][c][b]) : [];\n    setOpts($family, fams);\n    [$desc,$model].forEach(sel=> setOpts(sel, []));\n  });\n\n  $family.addEventListener('change', e=>{\n    const s = $supply.value; const c = $cat.value; const b = $brand.value; const f = e.target.value;\n    const descs = (data[s]&&data[s][c]&&data[s][c][b]&&data[s][c][b][f]) ? Object.keys(data[s][c][b][f]) : [];\n    setOpts($desc, descs);\n    setOpts($model, []);\n  });\n\n  $desc.addEventListener('change', e=>{\n    const s = $supply.value; const c = $cat.value; const b = $brand.value; const f = $family.value; const d = e.target.value;\n    const models = (data[s]&&data[s][c]&&data[s][c][b]&&data[s][c][b][f]&&data[s][c][b][f][d]) ? data[s][c][b][f][d] : [];\n    setOpts($model, models);\n  });\n\n  \/\/ (Opcional) B&uacute;squeda r&aacute;pida por modelo: expone funci&oacute;n global\n  window.findSupplyByModel = function(q) {\n    q = (q||'').toUpperCase();\n    if(!flat || !q) return [];\n    return flat.filter(x => (String(x.Modelo||'').toUpperCase().includes(q)));\n  };\n})();\n<\/script>\n<!-- === END: Supply catalog wiring === -->\n\n\n\n\n\n<!-- UX Mobile Menu Patch -->\n<script>\n(function(){\n  const btn = document.getElementById('menuToggle');\n  const list = document.getElementById('menuList');\n  if(!btn || !list) return;\n\n  function lockScroll(on){ document.documentElement.style.overflow = on ? 'hidden' : ''; }\n  function closeMenu(){\n    btn.setAttribute('aria-expanded','false');\n    list.setAttribute('aria-expanded','false');\n    list.style.display = '';\n    lockScroll(false);\n  }\n\n  btn.addEventListener('click', () => {\n    const open = btn.getAttribute('aria-expanded') === 'true';\n    if(open){ closeMenu(); } else {\n      btn.setAttribute('aria-expanded','true');\n      list.setAttribute('aria-expanded','true');\n      list.style.display = 'flex';\n      lockScroll(true);\n    }\n  });\n\n  list.querySelectorAll('a[href^=\"#\"]').forEach(a=>{\n    a.addEventListener('click', closeMenu);\n  });\n\n  document.addEventListener('keydown', (e)=>{ if(e.key==='Escape') closeMenu(); });\n})();\n<\/script>\n\n\n<!-- v10.1 Sector checkbox + fallback to Contacto -->\n<script>\n(function(){\n  const SECTOR_STORAGE_KEY = 'svcSelectedSectors';\n  \/\/ Utility\n  const uniq = arr => Array.from(new Set(arr)).filter(Boolean).sort((a,b)=>a.localeCompare(b));\n\n  \/\/ Load services JSON (already embedded by v10.1)\n  function loadSvc(){\n    try{\n      const el = document.getElementById('svc-json');\n      if(el){ return JSON.parse(el.textContent); }\n    }catch(e){}\n    return [];\n  }\n\n  function getCheckedValues(container){\n    return Array.from(container.querySelectorAll('input[type=\"checkbox\"]:checked')).map(i=>i.value);\n  }\n\n  function setChecked(container, values){\n    const set = new Set(values);\n    container.querySelectorAll('input[type=\"checkbox\"]').forEach(i=>{\n      i.checked = set.has(i.value);\n    });\n  }\n\n  function buildChip(txt){\n    const span = document.createElement('span');\n    span.className = 'chip';\n    span.textContent = txt;\n    return span;\n  }\n\n  \/\/ Main\n  document.addEventListener('DOMContentLoaded', function(){\n    const data = loadSvc();\n    const $uen = document.getElementById('svcUEN');\n    const $ind = document.getElementById('svcIndustry');\n    const $secWrap = document.getElementById('svcSectorChecks');\n    const $secAll = document.getElementById('svcSectorAll');\n    const $secNone = document.getElementById('svcSectorNone');\n    const $secHint = document.getElementById('svcSectorHint');\n    const $res = document.getElementById('svcResults');\n\n    if(!data || !$uen || !$ind || !$secWrap || !$res) return;\n\n    \/\/ Populate UEN\/Industria from data (keeping previous logic)\n    const uens = uniq(data.map(x=>x.uen));\n    const inds = uniq(data.flatMap(x=>x.industrias || []));\n    function setOpts(sel, items){\n      const v = sel.value;\n      sel.innerHTML = '<option value=\\\"\\\">Todas\u2026<\/option>';\n      items.forEach(it=>{\n        const o = document.createElement('option');\n        o.value = o.textContent = it;\n        sel.appendChild(o);\n      });\n      if(items.includes(v)) sel.value = v;\n    }\n    setOpts($uen, uens);\n    setOpts($ind, inds);\n\n    \/\/ Build Sector checkboxes\n    const sectors = uniq(data.flatMap(x=>x.sectores||[]));\n    $secWrap.innerHTML = '';\n    sectors.forEach(sec=>{\n      const id = 'sec_' + sec.replace(\/\\W+\/g,'_');\n      const label = document.createElement('label');\n      label.setAttribute('for', id);\n      const cb = document.createElement('input');\n      cb.type = 'checkbox'; cb.value = sec; cb.id = id;\n      label.appendChild(cb);\n      const span = document.createElement('span');\n      span.textContent = sec;\n      label.appendChild(span);\n      $secWrap.appendChild(label);\n    });\n\n    \/\/ Open\/Close all details helpers (reuse if present)\n    const openBtn = document.getElementById('openAllSvc');\n    const closeBtn = document.getElementById('closeAllSvc');\n    function openAll(){ document.querySelectorAll('#servicios details').forEach(d=> d.open = true); }\n    function closeAll(){ document.querySelectorAll('#servicios details').forEach(d=> d.open = false); }\n    if(openBtn) openBtn.addEventListener('click', openAll);\n    if(closeBtn) closeBtn.addEventListener('click', closeAll);\n\n    \/\/ Render cards based on filters (UEN, Industria, Sector[])\n    function matches(x, sectorsSel){\n      const okU = !$uen.value || x.uen === $uen.value;\n      const okI = !$ind.value || (x.industrias||[]).includes($ind.value);\n      const okS = !sectorsSel.length || (x.sectores||[]).some(s=> sectorsSel.includes(s));\n      return okU && okI && okS;\n    }\n\n    function card(x){\n      const inds = (x.industrias||[]).slice(0,5).join(', ');\n      const secs = (x.sectores||[]).slice(0,5).join(', ');\n      const naics = (x.naics||[]).join(', ');\n      const scian = (x.scian||[]).join(', ');\n      const h = `<article class=\"card\">\n        <h3>${x.servicio}<\/h3>\n        <p><strong>UEN:<\/strong> ${x.uen}<\/p>\n        <p><strong>Industrias:<\/strong> ${inds}<\/p>\n        <p><strong>Sectores:<\/strong> ${secs}<\/p>\n        <p class=\"muted\"><small>NAICS: ${naics} &middot; SCIAN: ${scian}<\/small><\/p>\n        <a href=\"contacto_cta.html#ctaForm\" class=\"btn btn--primary\">Solicitar propuesta<\/a>\n      <\/article>`;\n      const div = document.createElement('div');\n      div.innerHTML = h;\n      return div.firstElementChild;\n    }\n\n    function render(){\n      const sectorsSel = getCheckedValues($secWrap);\n      \/\/ Save for fallback to Contacto\n      try{ localStorage.setItem(SECTOR_STORAGE_KEY, JSON.stringify(sectorsSel)); }catch(e){}\n      \/\/ Update hint with chips\n      $secHint.innerHTML = sectorsSel.length ? 'Sectores seleccionados: ' : 'Selecciona uno o m&aacute;s sectores para refinar resultados.';\n      if(sectorsSel.length){\n        sectorsSel.slice(0,6).forEach(s=> $secHint.appendChild(buildChip(s)));\n        if(sectorsSel.length > 6){\n          $secHint.appendChild(buildChip('+' + (sectorsSel.length - 6)));\n        }\n      }\n\n      const items = data.filter(x=>matches(x, sectorsSel)).slice(0,60);\n      $res.innerHTML = '';\n      if(!items.length){\n        $res.innerHTML = '<p class=\"muted\">No hay resultados con los filtros seleccionados.<\/p>';\n        return;\n      }\n      items.forEach(x=> $res.appendChild(card(x)));\n    }\n\n    $uen.addEventListener('change', render);\n    $ind.addEventListener('change', render);\n    $secWrap.addEventListener('change', render);\n    $secAll?.addEventListener('click', ()=>{ setChecked($secWrap, sectors); render(); });\n    $secNone?.addEventListener('click', ()=>{ setChecked($secWrap, []); render(); });\n\n    \/\/ Attempt to restore previous selections\n    try{\n      const saved = JSON.parse(localStorage.getItem(SECTOR_STORAGE_KEY) || '[]');\n      if(saved && saved.length) setChecked($secWrap, saved);\n    }catch(e){}\n    render();\n\n    \/\/ ---- Fallback to Contacto ----\n    function applySectorToContact(){\n      const selected = JSON.parse(localStorage.getItem(SECTOR_STORAGE_KEY) || '[]');\n      if(!selected || !selected.length) return;\n      \/\/ Find contact form or section\n      const contact = document.querySelector('#contacto') || document.querySelector('section.contact');\n      if(!contact) return;\n      \/\/ Try to find an existing input\/select for sector\n      let input = contact.querySelector('#projectSector, [name=\"projectSector\"]');\n      if(!input){\n        \/\/ Create hidden input\n        const form = contact.querySelector('form') || contact;\n        input = document.createElement('input');\n        input.type = 'hidden';\n        input.id = 'projectSector';\n        input.name = 'projectSector';\n        form.appendChild(input);\n      }\n      input.value = selected.join(', ');\n      \/\/ Optional hint: show the selected sectors to the user\n      let hint = contact.querySelector('#sectorFallbackHint');\n      if(!hint){\n        hint = document.createElement('p');\n        hint.id = 'sectorFallbackHint';\n        hint.className = 'hint';\n        contact.querySelector('.container')?.appendChild(hint);\n      }\n      hint.textContent = 'Sectores sugeridos por tu selecci&oacute;n en Servicios: ' + selected.slice(0,3).join(', ') + (selected.length>3 ? ' +' + (selected.length-3) : '');\n    }\n\n    \/\/ Apply on load and when navigating to #contacto\n    applySectorToContact();\n    window.addEventListener('hashchange', ()=>{ if(location.hash==='#contacto') applySectorToContact(); });\n  });\n})();\n<\/script>\n\n\n\n\n\n<script id=\"v10-compact-logic\">\n(function(){\n  const $ = s => document.querySelector(s);\n  const $$ = s => Array.from(document.querySelectorAll(s));\n\n  \/\/ ---- AUTO-ADVANCE in Suministro form ----\n  const order = ['#supplyType','#category','#brand','#family','#description','#model'];\n  function focusNext(id){\n    const idx = order.indexOf('#'+id);\n    if(idx>-1 && order[idx+1]) $(order[idx+1])?.focus();\n  }\n  document.addEventListener('change', e=>{\n    if(order.includes('#'+(e.target?.id||''))) focusNext(e.target.id);\n    updateQuickbar();\n  });\n\n  \/\/ ---- QUICK-PICKS (Industria) from services JSON ----\n  function uniq(a){ return Array.from(new Set(a)).filter(Boolean).sort((a,b)=>a.localeCompare(b)); }\n  function loadSvc(){\n    try{ const el = $('#svc-json'); return el ? JSON.parse(el.textContent) : []; } catch(e){ return []; }\n  }\n  function ensureQuickIndustryChips(){\n    const data = loadSvc();\n    if(!data.length) return;\n    const top = uniq(data.flatMap(x=>x.industrias||[])).slice(0,6);\n    \/\/ create toolbar under catalog filters legend\n    const host = document.getElementById('catIndustryField');\n    if(!host || host.querySelector('.inline-toolbar')) return;\n    const bar = document.createElement('div');\n    bar.className = 'inline-toolbar';\n    bar.innerHTML = '<span class=\"muted\">Atajos:<\/span>';\n    top.forEach(ind=>{\n      const b = document.createElement('button');\n      b.type='button'; b.className='btn btn--secondary'; b.textContent=ind;\n      b.addEventListener('click',()=>{\n        \/\/ toggle matching checkbox\n        const cb = $('#catIndustryChecks input[value=\"'+ind.replace(\/\"\/g,'&quot;')+'\"]') ||\n                   $$('#catIndustryChecks input').find(x=>x.nextSibling?.textContent===ind);\n        if(cb){ cb.checked = !cb.checked; cb.dispatchEvent(new Event('change',{bubbles:true})); }\n        \/\/ mirror into Servicios filters if present\n        const svcSel = $('#svcIndustry'); if(svcSel){ svcSel.value = ind; svcSel.dispatchEvent(new Event('change',{bubbles:true})); }\n        \/\/ persist\n        try{ localStorage.setItem('svcSelectedIndustries', JSON.stringify(getSelectedIndustries())); }catch(e){}\n        updateQuickbar();\n      });\n      bar.appendChild(b);\n    });\n    host.appendChild(bar);\n  }\n\n  \/\/ helpers\n  function getSelectedIndustries(){\n    return $$('#catIndustryChecks input[type=\"checkbox\"]:checked').map(i=>i.value);\n  }\n\n  \/\/ ---- QUICKBAR SUMMARY SYNC ----\n  function textOf(sel){ const el = $(sel); return (el && el.value) ? el.value : '\u2014'; }\n  function updateQuickbar(){\n    const uen = textOf('#svcUEN');\n    \/\/ Industries: prefer selected checkboxes, else dropdown value from Servicios, else fallback from storage\n    let inds = getSelectedIndustries();\n    if(!inds.length){ const v = $('#svcIndustry')?.value; if(v) inds=[v]; }\n    if(!inds.length){ try{ inds = JSON.parse(localStorage.getItem('svcSelectedIndustries')||'[]'); }catch(e){} }\n    const svc = '\u2014'; \/\/ could infer from selected card later\n    const sum = textOf('#supplyType');\n    const marca = textOf('#brand');\n    const modelo = textOf('#model');\n    const chips = [\n      'UEN: ' + (uen||'\u2014'),\n      'Industria: ' + (inds.length? inds.slice(0,2).join(', ') + (inds.length>2? ' +' + (inds.length-2):'') : '\u2014'),\n      'Servicio: ' + svc,\n      'Suministro: ' + sum,\n      'Marca: ' + marca,\n      'Modelo: ' + modelo\n    ];\n    const box = $('#quickSummary');\n    if(box){\n      box.innerHTML = '';\n      chips.forEach(c=>{\n        const span = document.createElement('span'); span.className='chip'; span.textContent=c; box.appendChild(span);\n      });\n    }\n  }\n\n  \/\/ ---- KEYBOARD SHORTCUTS ----\n  document.addEventListener('keydown', e=>{\n    if(e.target && ['INPUT','SELECT','TEXTAREA'].includes(e.target.tagName)) return;\n    if(e.key.toLowerCase()==='f'){ e.preventDefault(); $('#svcUEN')?.focus(); }\n    if(e.key.toLowerCase()==='c'){ e.preventDefault(); location.hash = '#contacto'; }\n  });\n\n  \/\/ ---- INITIALIZE ----\n  document.addEventListener('DOMContentLoaded', function(){\n    ensureQuickIndustryChips();\n    updateQuickbar();\n  });\n})();\n<\/script>\n\n\n<script>\n(function(){\n  const uniq = arr => Array.from(new Set(arr)).filter(Boolean).sort((a,b)=>a.localeCompare(b));\n  function loadSvc(){\n    try{\n      const el = document.getElementById('svc-json');\n      if(el){ return JSON.parse(el.textContent); }\n    }catch(e){}\n    return [];\n  }\n  function getCheckedValues(container){\n    return Array.from(container.querySelectorAll('input[type=\"checkbox\"]:checked')).map(i=>i.value);\n  }\n  function setChecked(container, values){\n    const set = new Set(values);\n    container.querySelectorAll('input[type=\"checkbox\"]').forEach(i=>{ i.checked = set.has(i.value); });\n  }\n\n  function applyToHidden(selected){\n    const contact = document.querySelector('#contacto');\n    if(!contact) return;\n    let input = contact.querySelector('#projectIndustry, [name=\"projectIndustry\"]');\n    if(!input){\n      const form = contact.querySelector('form') || contact;\n      input = document.createElement('input');\n      input.type = 'hidden';\n      input.id = 'projectIndustry';\n      input.name = 'projectIndustry';\n      form.appendChild(input);\n    }\n    input.value = selected.join(', ');\n    let hint = contact.querySelector('#industryFallbackHint');\n    if(!hint){\n      hint = document.createElement('p');\n      hint.id = 'industryFallbackHint';\n      hint.className = 'hint';\n      contact.querySelector('.container')?.appendChild(hint);\n    }\n    hint.textContent = selected.length\n      ? 'Industria sugerida por tu selecci&oacute;n: ' + selected.slice(0,3).join(', ') + (selected.length>3 ? ' +' + (selected.length-3) : '')\n      : 'Puedes ajustar la industria si lo deseas.';\n  }\n\n  document.addEventListener('DOMContentLoaded', function(){\n    const data = loadSvc();\n    const inds = uniq(data.flatMap(x=>x.industrias || []));\n    const wrap = document.getElementById('contactIndustryChecks');\n    const btnAll = document.getElementById('contactIndustryAll');\n    const btnNone = document.getElementById('contactIndustryNone');\n    const hint = document.getElementById('contactIndustryHint');\n    if(!wrap) return;\n\n    \/\/ Build checkboxes\n    wrap.innerHTML = '';\n    inds.forEach(ind=>{\n      const id = 'contactInd_' + ind.replace(\/\\W+\/g,'_');\n      const label = document.createElement('label');\n      label.setAttribute('for', id);\n      const cb = document.createElement('input');\n      cb.type = 'checkbox'; cb.value = ind; cb.id = id;\n      label.appendChild(cb);\n      const span = document.createElement('span'); span.textContent = ind;\n      label.appendChild(span);\n      wrap.appendChild(label);\n    });\n\n    \/\/ Restore from localStorage if present\n    let pre = [];\n    try{ pre = JSON.parse(localStorage.getItem('svcSelectedIndustries') || '[]'); }catch(e){}\n    if(pre && pre.length) setChecked(wrap, pre);\n    applyToHidden(getCheckedValues(wrap));\n\n    \/\/ Bind events\n    wrap.addEventListener('change', ()=>{\n      const sel = getCheckedValues(wrap);\n      try{ localStorage.setItem('svcSelectedIndustries', JSON.stringify(sel)); }catch(e){}\n      applyToHidden(sel);\n    });\n    btnAll?.addEventListener('click', ()=>{\n      setChecked(wrap, inds); const sel = inds.slice(); try{ localStorage.setItem('svcSelectedIndustries', JSON.stringify(sel)); }catch(e){}; applyToHidden(sel);\n    });\n    btnNone?.addEventListener('click', ()=>{\n      setChecked(wrap, []); try{ localStorage.setItem('svcSelectedIndustries', JSON.stringify([])); }catch(e){}; applyToHidden([]);\n    });\n  });\n})();\n<\/script>\n\n\n<script>\n(function(){\n  const clamp = (n, a, b) => Math.max(a, Math.min(b, n));\n\n  function animateCount(el, to, ms){\n    const from = Number(el.textContent.replace(\/[^\\d]\/g,'')) || 0;\n    const start = performance.now();\n    const dur = clamp(ms || 700, 450, 1200);\n    function tick(t){\n      const p = clamp((t - start) \/ dur, 0, 1);\n      const eased = 1 - Math.pow(1 - p, 3);\n      const val = Math.round(from + (to - from) * eased);\n      el.textContent = String(val);\n      if(p < 1) requestAnimationFrame(tick);\n    }\n    requestAnimationFrame(tick);\n  }\n\n  const section = document.getElementById('cv');\n  if(!section) return;\n  const pills = Array.from(section.querySelectorAll('[data-count]'));\n  let counted = false;\n\n  const io = new IntersectionObserver((entries)=>{\n    const entry = entries[0];\n    if(!entry || !entry.isIntersecting) return;\n    section.classList.add('is-inview');\n    if(!counted){\n      counted = true;\n      pills.forEach((el, i)=>{\n        const target = Number(el.getAttribute('data-count')) || 0;\n        setTimeout(()=> animateCount(el, target, 720), i * 60);\n      });\n    }\n  }, { threshold: 0.25 });\n  io.observe(section);\n\n  const nodes = section.querySelectorAll('.cvMiniTL__node');\n  nodes.forEach((n)=>{\n    n.addEventListener('mouseenter', ()=>{\n      nodes.forEach((x)=> x.classList.add('is-dim'));\n      n.classList.remove('is-dim');\n      n.classList.add('is-active');\n    });\n    n.addEventListener('mouseleave', ()=>{\n      nodes.forEach((x)=> x.classList.remove('is-dim','is-active'));\n    });\n    n.addEventListener('focus', ()=>{\n      nodes.forEach((x)=> x.classList.add('is-dim'));\n      n.classList.remove('is-dim');\n      n.classList.add('is-active');\n    });\n    n.addEventListener('blur', ()=>{\n      nodes.forEach((x)=> x.classList.remove('is-dim','is-active'));\n    });\n  });\n})();\n<\/script>\n\n<script>\n(function(){\n  const industrySelect = document.getElementById('Industria') || document.getElementById('svcIndustry');\n  const industryChecks = document.getElementById('catIndustryChecks');\n  const industryLabel = document.getElementById('cvxIndustry');\n  const solutionsRoot = document.getElementById('cvxSolutions');\n  const servicesRoot = document.getElementById('cvxServices');\n  const EspecialidadesRoot = document.getElementById('cvxEspecialidades');\n  if(!industryLabel || !solutionsRoot || !servicesRoot || !EspecialidadesRoot) return;\n\n  const DATA = {\n    default: {\n      label: 'Todas las industrias',\n      solutions: [\n        { name: 'El&eacute;ctricas', count: 158 },\n        { name: 'Automatizaci&oacute;n y Control', count: 61 },\n        { name: 'Electromec&aacute;nica', count: 25 },\n        { name: 'Solar', count: 2 }\n      ],\n      services: ['EPC', 'Suministro', 'Mantenimiento', 'Ingenier&iacute;a de detalle'],\n      Especialidades: ['Integraci&oacute;n BT\/MT', 'Puesta en marcha', 'Retrofit', 'Normatividad y seguridad']\n    },\n    oilgas: {\n      label: 'Oil & Gas',\n      solutions: [\n        { name: 'El&eacute;ctricas', count: 74 },\n        { name: 'Automatizaci&oacute;n y Control', count: 48 },\n        { name: 'Electromec&aacute;nica', count: 19 },\n        { name: 'Solar', count: 1 }\n      ],\n      services: ['EPC', 'Modernizaci&oacute;n', 'Mantenimiento', 'Integraci&oacute;n de control'],\n      Especialidades: ['&Aacute;reas clasificadas', 'Paros programados', 'Comisionamiento offshore', 'Confiabilidad operativa']\n    },\n    energia: {\n      label: 'Generaci&oacute;n e Infraestructura El&eacute;ctrica',\n      solutions: [\n        { name: 'El&eacute;ctricas', count: 92 },\n        { name: 'Automatizaci&oacute;n y Control', count: 29 },\n        { name: 'Electromec&aacute;nica', count: 17 },\n        { name: 'Solar', count: 2 }\n      ],\n      services: ['EPC', 'Ingenier&iacute;a', 'Suministro', 'Mantenimiento'],\n      Especialidades: ['Subestaciones BT\/MT', 'Pruebas y energizaci&oacute;n', 'Protecci&oacute;n y control', 'Calidad de energ&iacute;a']\n    },\n    mineria: {\n      label: 'Miner&iacute;a y Metales',\n      solutions: [\n        { name: 'El&eacute;ctricas', count: 46 },\n        { name: 'Automatizaci&oacute;n y Control', count: 31 },\n        { name: 'Electromec&aacute;nica', count: 23 },\n        { name: 'Solar', count: 1 }\n      ],\n      services: ['EPC', 'Suministro', 'Mantenimiento', 'Rehabilitaci&oacute;n'],\n      Especialidades: ['Variadores de velocidad', 'Motores y tableros', 'Bombeo profundo', 'Operaci&oacute;n continua']\n    },\n    procesos: {\n      label: 'Alimentos, Bebidas y Papel',\n      solutions: [\n        { name: 'El&eacute;ctricas', count: 52 },\n        { name: 'Automatizaci&oacute;n y Control', count: 34 },\n        { name: 'Electromec&aacute;nica', count: 18 },\n        { name: 'Solar', count: 1 }\n      ],\n      services: ['EPC', 'Automatizaci&oacute;n', 'Mantenimiento', 'Suministro especializado'],\n      Especialidades: ['Eficiencia energ&eacute;tica', 'Control de proceso', 'Instrumentaci&oacute;n', 'Integraci&oacute;n multimarcas']\n    },\n    industrial: {\n      label: 'Industrial y Manufactura',\n      solutions: [\n        { name: 'El&eacute;ctricas', count: 63 },\n        { name: 'Automatizaci&oacute;n y Control', count: 40 },\n        { name: 'Electromec&aacute;nica', count: 21 },\n        { name: 'Solar', count: 2 }\n      ],\n      services: ['EPC', 'Suministro', 'Mantenimiento', 'Ingenier&iacute;a conceptual y detalle'],\n      Especialidades: ['HVAC industrial', 'Centros de datos', 'Tableros de potencia', 'Migraci&oacute;n de sistemas legacy']\n    },\n    agua: {\n      label: 'Agua y Saneamiento',\n      solutions: [\n        { name: 'El&eacute;ctricas', count: 38 },\n        { name: 'Automatizaci&oacute;n y Control', count: 27 },\n        { name: 'Electromec&aacute;nica', count: 15 },\n        { name: 'Solar', count: 1 }\n      ],\n      services: ['EPC', 'Mantenimiento', 'Suministro', 'Supervisi&oacute;n t&eacute;cnica'],\n      Especialidades: ['Sistemas de bombeo', 'Control de motores', 'Telemetr&iacute;a y SCADA', 'Continuidad de operaci&oacute;n']\n    }\n  };\n\n  function norm(str){\n    return String(str || '').toLowerCase().normalize('NFD').replace(\/[\\u0300-\\u036f]\/g, '').trim();\n  }\n\n  function industryToKey(raw){\n    const n = norm(raw);\n    if(!n || n === 'selecciona') return 'default';\n    if(n.includes('oil') || n.includes('gas') || n.includes('petroquim') || n.includes('quimica')) return 'oilgas';\n    if(n.includes('mineria') || n.includes('metal') || n.includes('cemento')) return 'mineria';\n    if(n.includes('generacion') || n.includes('infraestructura') || n.includes('utilities')) return 'energia';\n    if(n.includes('alimentos') || n.includes('bebidas') || n.includes('papel') || n.includes('celulosa')) return 'procesos';\n    if(n.includes('agua') || n.includes('saneamiento')) return 'agua';\n    if(n.includes('tic') || n.includes('datos') || n.includes('manufactura') || n.includes('ensamble') || n.includes('hvac') || n.includes('construccion') || n.includes('farmaceut')) return 'industrial';\n    return 'default';\n  }\n\n  function fillList(root, items){\n    root.innerHTML = (items || []).map((item) => '<li>' + item + '<\/li>').join('');\n  }\n\n  function fillSolutions(root, items){\n    root.innerHTML = (items || []).map((item) => (\n      '<article class=\"cvx__solution\">' +\n      '<span class=\"cvx__pill\">' + String(item.count || 0) + '<\/span>' +\n      '<p class=\"cvx__solutionName\">' + String(item.name || '') + '<\/p>' +\n      '<\/article>'\n    )).join('');\n  }\n\n  function renderByIndustry(industryValue, industryText){\n    const key = industryToKey(industryValue);\n    const cfg = DATA[key] || DATA.default;\n    const shown = String(industryText || '').trim();\n    industryLabel.textContent = shown && norm(shown) !== 'selecciona' ? shown : cfg.label;\n    fillSolutions(solutionsRoot, cfg.solutions);\n    fillList(servicesRoot, cfg.services);\n    fillList(EspecialidadesRoot, cfg.Especialidades);\n  }\n\n  if(industrySelect){\n    industrySelect.addEventListener('change', function(){\n      const txt = (industrySelect.selectedOptions && industrySelect.selectedOptions[0])\n        ? (industrySelect.selectedOptions[0].textContent || '')\n        : industrySelect.value;\n      renderByIndustry(industrySelect.value, txt);\n    });\n    const txt = (industrySelect.selectedOptions && industrySelect.selectedOptions[0])\n      ? (industrySelect.selectedOptions[0].textContent || '')\n      : industrySelect.value;\n    renderByIndustry(industrySelect.value, txt);\n  } else {\n    renderByIndustry('default');\n  }\n\n  if(industryChecks){\n    industryChecks.addEventListener('change', function(){\n      const checked = Array.from(industryChecks.querySelectorAll('input[type=\"checkbox\"]:checked'));\n      if(!checked.length){\n        renderByIndustry(industrySelect ? industrySelect.value : 'default');\n        return;\n      }\n      const first = checked[0].value || '';\n      renderByIndustry(first, first);\n    });\n  }\n})();\n<\/script>\n\n<script>\n(function(){\n  const data = [\n    {\n      name: 'Soluciones Electromec&aacute;nicas',\n      image: 'https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/07\/plano_electromecanicos.webp',\n      link: 'soluciones_electromecanicas.html#inicio',\n      bullets: [\n        'Ingenier&iacute;a, suministro t&eacute;cnico y construcci&oacute;n',\n        'Subestaciones \/ tableros \/ protecciones',\n        'Puesta en marcha y pruebas'\n      ]\n    },\n    {\n      name: 'Automatizaci&oacute;n y Control',\n      image: 'https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/07\/automatizacion_control.webp',\n      link: 'soluciones_automatizacion_control.html#inicio',\n      bullets: [\n        'PLC \/ SCADA \/ instrumentaci&oacute;n',\n        'Arquitecturas OT y comunicaciones',\n        'Integraci&oacute;n, FAT\/SAT'\n      ]\n    },\n    {\n      name: 'Energ&iacute;a Solar Industrial',\n      image: 'https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/energia_solar_industrial.webp',\n      link: 'soluciones_solar_industrial.html#inicio',\n      bullets: [\n        'Ingenier&iacute;a de detalle, interconexi&oacute;n y EPC',\n        'Tableros, protecciones, medici&oacute;n',\n        'O&M \/ monitoreo'\n      ]\n    },\n    {\n      name: 'Generaci&oacute;n Verde No Solar',\n      image: 'https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/energia_verdes_hero.png',\n      link: 'soluciones_verde_no_solar.html#inicio',\n      bullets: [\n        'Biog&aacute;s, biomasa y e&oacute;lica distribuida',\n        'Centrales hidroel&eacute;ctricas CFE',\n        'Comisionamiento y O&M'\n      ]\n    },\n    {\n      name: 'Oil & Gas',\n      image: 'https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/oil_gas.webp',\n      link: 'soluciones_oil_gas.html#inicio',\n      bullets: [\n        'Electrificaci&oacute;n y modernizaciones',\n        'Ambientes cr&iacute;ticos \/ cumplimiento',\n        'Integraci&oacute;n y confiabilidad'\n      ]\n    },\n    {\n      name: 'Infraestructura Energ&eacute;tica',\n      image: 'https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/infraestructura_electrica.webp',\n      link: 'soluciones_infraestructura_energetica.html#inicio',\n      bullets: [\n        'Generaci&oacute;n, transmisi&oacute;n y distribuci&oacute;n',\n        'Rehabilitaciones \/ modernizaciones',\n        'Gesti&oacute;n de obra EPC'\n      ]\n    },\n    {\n      name: 'Iluminaci&oacute;n',\n      image: 'https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/iluminacion.webp',\n      link: 'soluciones_iluminacion_industrial.html#inicio',\n      bullets: [\n        'Ingenier&iacute;a y EPC de iluminaci&oacute;n industrial',\n        'Normativa \/ fotometr&iacute;a',\n        'Tableros, canalizaciones'\n      ]\n    }\n  ];\n\n  const root = document.getElementById('svcEspecialidadesGrid');\n  const carousel = document.getElementById('svcEspecialidadesCarousel');\n  const prevBtn = document.getElementById('svcPrev');\n  const nextBtn = document.getElementById('svcNext');\n  const dotsWrap = document.getElementById('svcDots');\n  if(!root || !carousel || !prevBtn || !nextBtn || !dotsWrap) return;\n\n  root.innerHTML = data.map((item) => (\n    '<article class=\"svc__card\" role=\"listitem\">' +\n      '<div class=\"svc__media\" aria-hidden=\"true\">' +\n        '<img src=\"' + item.image + '\" alt=\"\" loading=\"lazy\" decoding=\"async\">' +\n        '<span class=\"svc__glow\" aria-hidden=\"true\"><\/span>' +\n      '<\/div>' +\n      '<div class=\"svc__body\">' +\n        '<h3 class=\"svc__name\">' + item.name + '<\/h3>' +\n        '<ul class=\"svc__bullets\">' + item.bullets.map((b) => '<li>' + b + '<\/li>').join('') + '<\/ul>' +\n        '<div class=\"svc__actions\"><a class=\"svc__link\" href=\"' + (item.link || '#procura') + '\">Ver soluci&oacute;n<\/a><\/div>' +\n      '<\/div>' +\n    '<\/article>'\n  )).join('');\n\n  let index = 0;\n  let visible = 3;\n  let maxIndex = Math.max(0, data.length - visible);\n  let dotButtons = [];\n\n  function getVisible(){\n    if(window.matchMedia('(max-width:700px)').matches) return 1;\n    if(window.matchMedia('(max-width:1100px)').matches) return 2;\n    return 3;\n  }\n\n  function getGapPx(){\n    const styles = window.getComputedStyle(root);\n    const gap = styles.columnGap || styles.gap || '0px';\n    return Number.parseFloat(gap) || 0;\n  }\n\n  function buildDots(){\n    const pages = maxIndex + 1;\n    dotsWrap.innerHTML = '';\n    dotButtons = [];\n    for(let i = 0; i < pages; i++){\n      const dot = document.createElement('button');\n      dot.type = 'button';\n      dot.className = 'svc__dot';\n      dot.setAttribute('aria-label', 'Ir al bloque ' + (i + 1));\n      dot.addEventListener('click', function(){\n        index = i;\n        updateCarousel();\n      });\n      dotsWrap.appendChild(dot);\n      dotButtons.push(dot);\n    }\n  }\n\n  function updateResponsiveState(){\n    const nextVisible = getVisible();\n    if(nextVisible !== visible){\n      visible = nextVisible;\n      maxIndex = Math.max(0, data.length - visible);\n      index = Math.min(index, maxIndex);\n      buildDots();\n    } else if(!dotButtons.length){\n      maxIndex = Math.max(0, data.length - visible);\n      buildDots();\n    }\n  }\n\n  function updateCarousel(){\n    updateResponsiveState();\n    const firstCard = root.querySelector('.svc__card');\n    if(!firstCard) return;\n    const cardWidth = firstCard.getBoundingClientRect().width;\n    const offset = index * (cardWidth + getGapPx());\n    root.style.transform = 'translateX(-' + offset + 'px)';\n    prevBtn.disabled = maxIndex <= 0;\n    nextBtn.disabled = maxIndex <= 0;\n    dotButtons.forEach(function(dot, i){\n      dot.classList.toggle('is-active', i === index);\n      dot.setAttribute('aria-current', i === index ? 'true' : 'false');\n    });\n  }\n\n  prevBtn.addEventListener('click', function(){\n    if(maxIndex <= 0) return;\n    index = index <= 0 ? maxIndex : index - 1;\n    updateCarousel();\n  });\n\n  nextBtn.addEventListener('click', function(){\n    if(maxIndex <= 0) return;\n    index = index >= maxIndex ? 0 : index + 1;\n    updateCarousel();\n  });\n\n  const AUTOPLAY_MS = 3500;\n  let autoplayId = null;\n  let paused = false;\n  let resumeAutoplayId = null;\n\n  function nextAuto(){\n    index = index >= maxIndex ? 0 : index + 1;\n    updateCarousel();\n  }\n\n  function startAutoplay(){\n    if(autoplayId || paused || maxIndex <= 0) return;\n    autoplayId = window.setInterval(nextAuto, AUTOPLAY_MS);\n  }\n\n  function stopAutoplay(){\n    if(!autoplayId) return;\n    window.clearInterval(autoplayId);\n    autoplayId = null;\n  }\n\n  function setPaused(v){\n    paused = v;\n    if(paused) stopAutoplay();\n    else startAutoplay();\n  }\n\n  function resumeAutoplaySoon(){\n    if(resumeAutoplayId){\n      window.clearTimeout(resumeAutoplayId);\n    }\n    resumeAutoplayId = window.setTimeout(function(){\n      setPaused(false);\n      resumeAutoplayId = null;\n    }, 2200);\n  }\n\n  carousel.addEventListener('mouseenter', () => setPaused(true));\n  carousel.addEventListener('mouseleave', () => setPaused(false));\n  carousel.addEventListener('focusin', () => setPaused(true));\n  carousel.addEventListener('focusout', () => setPaused(false));\n  prevBtn.addEventListener('click', function(){\n    setPaused(true);\n    resumeAutoplaySoon();\n  });\n  nextBtn.addEventListener('click', function(){\n    setPaused(true);\n    resumeAutoplaySoon();\n  });\n  dotsWrap.addEventListener('click', function(){\n    setPaused(true);\n    resumeAutoplaySoon();\n  });\n  document.addEventListener('visibilitychange', function(){\n    setPaused(document.hidden);\n  });\n\n  window.addEventListener('resize', updateCarousel);\n  updateCarousel();\n  startAutoplay();\n})();\n<\/script>\n\n\n\n<script id=\"clientes-por-sector-runtime\">\n(function(){\n  const wrap = document.getElementById('clientesPorSector');\n  if(!wrap) return;\n\n  const sectors = Array.from(wrap.querySelectorAll('[data-client-sector]'));\n  const grid = wrap.querySelector('#clientesGrid');\n  const hero = wrap.querySelector('#clientsHero');\n  const heroSlides = hero ? Array.from(hero.querySelectorAll('.clients-hero__slide')) : [];\n  const heroTiles = hero ? Array.from(hero.querySelectorAll('.clients-hero__tile')) : [];\n  if(!sectors.length || !grid) return;\n  const PAGE_SIZE = 4;\n\n  const labels = {\n    'petroleo-gas': 'Petr&oacute;leo y Gas',\n    'mineria': 'Miner&iacute;a',\n    'alimentos-bebidas': 'Alimentos y Bebidas',\n    'energia': 'Energ&iacute;a',\n    'electronica': 'Electr&oacute;nica',\n    'puertos': 'Puertos',\n    'pulpa-papel': 'Pulpa y Papel',\n    'otras-industrias': 'Otras industrias'\n  };\n  const categoryMap = {\n    'petroleo-gas': ['petroleo-gas'],\n    'mineria': ['mineria'],\n    'alimentos-bebidas': ['alimentos-bebidas'],\n    'otras-industrias': ['energia', 'electronica', 'puertos', 'pulpa-papel', 'otras-industrias']\n  };\n\n  let page = 0;\n  let filteredItems = [];\n  let activeCategory = '';\n\n  const items = [];\n  sectors.forEach(sec => {\n    const sectorKey = sec.getAttribute('data-client-sector') || '';\n    const sectorLabel = labels[sectorKey] || sectorKey;\n    Array.from(sec.querySelectorAll('.logo-ph')).forEach(logo => {\n      const name = (logo.querySelector('.logo-ph__name')?.textContent || '').trim();\n      if(!name) return;\n      const clone = logo.cloneNode(true);\n      const host = clone.querySelector('.logo-ph__hint') || clone.querySelector('div > div');\n      if(host){\n        const tag = document.createElement('span');\n        tag.className = 'logo-ph__sector';\n        tag.textContent = sectorLabel;\n        host.appendChild(tag);\n      }\n      items.push({\n        sectorKey,\n        sectorLabel,\n        name: name.toLowerCase(),\n        node: clone\n      });\n    });\n  });\n\n  grid.innerHTML = ''\n    + '<div class=\"clients-carousel\">'\n    + '  <div class=\"clients-carousel__top\">'\n    + '    <button type=\"button\" class=\"clients-carousel__btn clients-carousel__btn--prev\" aria-label=\"Clientes anteriores\">&#8249;<\/button>'\n    + '    <span class=\"clients-carousel__meta\">1-4 \/ 4<\/span>'\n    + '    <button type=\"button\" class=\"clients-carousel__btn clients-carousel__btn--next\" aria-label=\"Clientes siguientes\">&#8250;<\/button>'\n    + '  <\/div>'\n    + '  <div class=\"clients-carousel__track\"><\/div>'\n    + '<\/div>';\n\n  const track = grid.querySelector('.clients-carousel__track');\n  const prevBtn = grid.querySelector('.clients-carousel__btn--prev');\n  const nextBtn = grid.querySelector('.clients-carousel__btn--next');\n  const meta = grid.querySelector('.clients-carousel__meta');\n  if(!track || !prevBtn || !nextBtn || !meta) return;\n  let autoplayTimer = null;\n  let heroTimer = null;\n\n  function renderPage(resetPage){\n    if(resetPage) page = 0;\n    const total = filteredItems.length;\n    const maxPage = Math.max(0, Math.ceil(total \/ PAGE_SIZE) - 1);\n    if(page > maxPage) page = maxPage;\n\n    const start = page * PAGE_SIZE;\n    const end = start + PAGE_SIZE;\n    track.innerHTML = '';\n    filteredItems.slice(start, end).forEach(item => {\n      track.appendChild(item.node.cloneNode(true));\n    });\n\n    prevBtn.disabled = total <= PAGE_SIZE;\n    nextBtn.disabled = total <= PAGE_SIZE;\n    const from = total ? start + 1 : 0;\n    const to = total ? Math.min(start + PAGE_SIZE, total) : 0;\n    meta.textContent = `${from}-${to} \/ ${total}`;\n  }\n\n  function applyCategoryFilter(categoryKey){\n    const sectorKeys = categoryMap[categoryKey] || [];\n    filteredItems = items.filter(item => sectorKeys.includes(item.sectorKey));\n    renderPage(true);\n  }\n\n  function setActiveHero(categoryKey, fromUser){\n    if(!categoryKey) return;\n    activeCategory = categoryKey;\n    heroSlides.forEach(slide => {\n      const isActive = slide.getAttribute('data-clients-category') === categoryKey;\n      slide.classList.toggle('is-active', isActive);\n    });\n    heroTiles.forEach(tile => {\n      const isActive = tile.getAttribute('data-clients-category') === categoryKey;\n      tile.classList.toggle('is-active', isActive);\n      tile.setAttribute('aria-selected', isActive ? 'true' : 'false');\n    });\n    applyCategoryFilter(categoryKey);\n    wrap.classList.add('is-category-selected');\n    if(fromUser) restartHeroAutoplay();\n  }\n\n  function getNextCategoryKey(){\n    if(!heroSlides.length || !activeCategory) return activeCategory;\n    const idx = heroSlides.findIndex(s => s.getAttribute('data-clients-category') === activeCategory);\n    const nextIdx = idx < 0 ? 0 : (idx + 1) % heroSlides.length;\n    return heroSlides[nextIdx].getAttribute('data-clients-category') || activeCategory;\n  }\n\n  function stopHeroAutoplay(){\n    if(heroTimer){\n      window.clearInterval(heroTimer);\n      heroTimer = null;\n    }\n  }\n\n  function startHeroAutoplay(){\n    if(!heroSlides.length) return;\n    stopHeroAutoplay();\n    heroTimer = window.setInterval(() => {\n      setActiveHero(getNextCategoryKey(), false);\n    }, 4600);\n  }\n\n  function restartHeroAutoplay(){\n    startHeroAutoplay();\n  }\n\n  if(heroTiles.length){\n    heroTiles.forEach(tile => {\n      tile.addEventListener('click', () => {\n        const key = tile.getAttribute('data-clients-category');\n        if(!key) return;\n        setActiveHero(key, true);\n      });\n    });\n  }\n\n  if(hero){\n    hero.addEventListener('mouseenter', stopHeroAutoplay);\n    hero.addEventListener('mouseleave', startHeroAutoplay);\n    hero.addEventListener('focusin', stopHeroAutoplay);\n    hero.addEventListener('focusout', startHeroAutoplay);\n  }\n\n  filteredItems = [];\n  renderPage(true);\n  prevBtn.addEventListener('click', () => {\n    page = Math.max(0, page - 1);\n    renderPage(false);\n    restartAutoplay();\n  });\n  nextBtn.addEventListener('click', () => {\n    const maxPage = Math.max(0, Math.ceil(filteredItems.length \/ PAGE_SIZE) - 1);\n    page = Math.min(maxPage, page + 1);\n    renderPage(false);\n    restartAutoplay();\n  });\n\n  function stopAutoplay(){\n    if(autoplayTimer){\n      window.clearInterval(autoplayTimer);\n      autoplayTimer = null;\n    }\n  }\n\n  function startAutoplay(){\n    stopAutoplay();\n    autoplayTimer = window.setInterval(() => {\n      const maxPage = Math.max(0, Math.ceil(filteredItems.length \/ PAGE_SIZE) - 1);\n      if(maxPage <= 0) return;\n      page = page >= maxPage ? 0 : page + 1;\n      renderPage(false);\n    }, 4200);\n  }\n\n  function restartAutoplay(){\n    startAutoplay();\n  }\n\n  grid.addEventListener('mouseenter', stopAutoplay);\n  grid.addEventListener('mouseleave', startAutoplay);\n  grid.addEventListener('focusin', stopAutoplay);\n  grid.addEventListener('focusout', startAutoplay);\n\n  startAutoplay();\n})();\n<\/script>\n\n<script id=\"aliados-comerciales-runtime\">\n(function(){\n  const wrap = document.getElementById('clientesPorSectorAliados');\n  if(!wrap) return;\n\n  const search = wrap.querySelector('#aliadosSearch');\n  const blocks = Array.from(wrap.querySelectorAll('.client-sector'));\n  const grid = wrap.querySelector('#clientesGridAliados');\n  if(!blocks.length || !grid) return;\n  const PAGE_SIZE = 999;\n  let page = 0;\n  let filteredItems = [];\n\n  blocks.forEach(b => {\n    if(!b.dataset.allyCat){\n      const h = b.querySelector('h4');\n      const label = (h ? h.textContent : (b.getAttribute('data-client-sector') || '')).trim();\n      if(label) b.dataset.allyCat = label;\n      if(!h && label){\n        const h4 = document.createElement('h4');\n        h4.textContent = label;\n        b.prepend(h4);\n      }\n    }\n  });\n\n  const items = [];\n  blocks.forEach(block => {\n    const cat = block.dataset.allyCat || 'Aliados';\n    Array.from(block.querySelectorAll('.logo-ph')).forEach(logo => {\n      const name = (logo.querySelector('.logo-ph__name')?.textContent || '').trim();\n      if(!name) return;\n      const clone = logo.cloneNode(true);\n      const host = clone.querySelector('.logo-ph__hint') || clone.querySelector('div > div');\n      if(host){\n        const tag = document.createElement('span');\n        tag.className = 'logo-ph__sector';\n        tag.textContent = cat;\n        host.appendChild(tag);\n      }\n      items.push({\n        cat,\n        name: name.toLowerCase(),\n        node: clone\n      });\n    });\n  });\n\n  grid.innerHTML = ''\n    + '<div class=\"clients-carousel\">'\n    + '  <div class=\"clients-carousel__top\">'\n    + '    <button type=\"button\" class=\"clients-carousel__btn clients-carousel__btn--prev\" aria-label=\"Aliados anteriores\">&#8249;<\/button>'\n    + '    <span class=\"clients-carousel__meta\">1-4 \/ 4<\/span>'\n    + '    <button type=\"button\" class=\"clients-carousel__btn clients-carousel__btn--next\" aria-label=\"Aliados siguientes\">&#8250;<\/button>'\n    + '  <\/div>'\n    + '  <div class=\"clients-carousel__track\"><\/div>'\n    + '<\/div>';\n\n  const track = grid.querySelector('.clients-carousel__track');\n  const prevBtn = grid.querySelector('.clients-carousel__btn--prev');\n  const nextBtn = grid.querySelector('.clients-carousel__btn--next');\n  const meta = grid.querySelector('.clients-carousel__meta');\n  if(!track || !prevBtn || !nextBtn || !meta) return;\n  let autoplayTimer = null;\n\n  function renderPage(resetPage){\n    if(resetPage) page = 0;\n    const total = filteredItems.length;\n    const maxPage = Math.max(0, Math.ceil(total \/ PAGE_SIZE) - 1);\n    if(page > maxPage) page = maxPage;\n\n    const start = page * PAGE_SIZE;\n    const end = start + PAGE_SIZE;\n    track.innerHTML = '';\n    filteredItems.slice(start, end).forEach(item => {\n      track.appendChild(item.node.cloneNode(true));\n    });\n\n    const isLoopable = maxPage > 0;\n    prevBtn.disabled = !isLoopable;\n    nextBtn.disabled = !isLoopable;\n    const from = total ? start + 1 : 0;\n    const to = total ? Math.min(start + PAGE_SIZE, total) : 0;\n    meta.textContent = `${from}-${to} \/ ${total}`;\n  }\n\n  function applyFilter(){\n    const q = String(search ? search.value : '').trim().toLowerCase();\n\n    filteredItems = items.filter(item => {\n      const queryOk = !q || item.name.includes(q);\n      return queryOk;\n    });\n    renderPage(true);\n    restartAutoplay();\n\n  }\n\n  if(search){\n    search.addEventListener('input', applyFilter);\n  }\n  prevBtn.addEventListener('click', () => {\n    const maxPage = Math.max(0, Math.ceil(filteredItems.length \/ PAGE_SIZE) - 1);\n    if(maxPage <= 0) return;\n    page = page <= 0 ? maxPage : page - 1;\n    renderPage(false);\n    restartAutoplay();\n  });\n  nextBtn.addEventListener('click', () => {\n    const maxPage = Math.max(0, Math.ceil(filteredItems.length \/ PAGE_SIZE) - 1);\n    if(maxPage <= 0) return;\n    page = page >= maxPage ? 0 : page + 1;\n    renderPage(false);\n    restartAutoplay();\n  });\n\n  function stopAutoplay(){\n    if(autoplayTimer){\n      window.clearInterval(autoplayTimer);\n      autoplayTimer = null;\n    }\n  }\n\n  function startAutoplay(){\n    stopAutoplay();\n    autoplayTimer = window.setInterval(() => {\n      const maxPage = Math.max(0, Math.ceil(filteredItems.length \/ PAGE_SIZE) - 1);\n      if(maxPage <= 0) return;\n      page = page >= maxPage ? 0 : page + 1;\n      renderPage(false);\n    }, 4200);\n  }\n\n  function restartAutoplay(){\n    startAutoplay();\n  }\n\n  grid.addEventListener('mouseenter', stopAutoplay);\n  grid.addEventListener('mouseleave', startAutoplay);\n  grid.addEventListener('focusin', stopAutoplay);\n  grid.addEventListener('focusout', startAutoplay);\n\n  applyFilter();\n  startAutoplay();\n})();\n<\/script>\n\n<script id=\"cvproj-runtime\">\n(function(){\n  const panel = document.getElementById(\"cvproj-panel\");\n  const track = panel ? panel.querySelector(\".cvproj__track\") : null;\n  const tabs = Array.from(document.querySelectorAll(\".cvproj__tab\"));\n  const tabCards = Array.from(document.querySelectorAll(\".cvtab\"));\n  const MAX_INDEX_CARDS = 3;\n  if(!panel || !track || !tabs.length) return;\n\n  const PROJECTS_FALLBACK = [\n    { sector:\"oilgas\", title:\"PEMEX Nohoch-A2 Sistema El\u00e9ctrico y CCM Offshore\", img:\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/nohoch_a2_sistema_electrico_y_ccm.png\", bullets:[\"EPC el\u00e9ctrico e instrumentaci\u00f3n\",\"Integraci\u00f3n FAT y SAT\",\"Puesta en marcha y pruebas\"] },\n    { sector:\"oilgas\", title:\"PEMEX Balam Subestaci\u00f3n y Seccionamiento MT 34.5 kV\", img:\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/balam_subestacion_y_seccionamiento.png\", bullets:[\"Control y protecci\u00f3n\",\"Arquitectura OT y comunicaciones\",\"Cumplimiento documental\"] },\n    { sector:\"oilgas\", title:\"PEMEX Akal-J Control El\u00e9ctrico\", img:\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/akal_j_sistema_de_generacion_y_control_electrico.png\", bullets:[\"Sistemas de control\",\"Protecci\u00f3n el\u00e9ctrica\",\"Confiabilidad operativa\"] },\n    { sector:\"oilgas\", title:\"PEMEX Ku-Maloob-Zaap Modernizaci\u00f3n de Turbinas de Gas\", img:\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/ku_maloob_zaap_modernizacion_de_turbinas_de-gas.png\", bullets:[\"Modernizaci\u00f3n de turbinas\",\"Control y sincron\u00eda\",\"Pruebas de desempe\u00f1o\"] },\n    { sector:\"oilgas\", title:\"Baker Hughes Variadores Outdoor E-Cabinet\", img:\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/Baker_hughes_control_y_operacion_variadores.png\", bullets:[\"Variadores industriales\",\"Integraci\u00f3n el\u00e9ctrica\",\"Operaci\u00f3n en campo\"] },\n    { sector:\"oilgas\", title:\"SLB Sistema de Bombeo con Variadores MV TRIOL\", img:\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/SLB_control_y_operacion_variadores.png\", bullets:[\"Bombeo profundo\",\"Variadores MV\",\"Monitoreo y operaci\u00f3n\"] },\n    { sector:\"energia\", title:\"Grupo Drag\u00f3n Planta Geot\u00e9rmica Sistema de Generaci\u00f3n y Sincron\u00eda\", img:\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/Grupo_Dragon_Planta_Geotermica_Sistema_de_Generacion_y_Sincronia.webp\", bullets:[\"Subestaci\u00f3n y protecciones\",\"Ingenier\u00eda, suministro t\u00e9cnico y construcci\u00f3n\",\"Comisionamiento\"] },\n    { sector:\"energia\", title:\"CH Angostura Sistemas de Cable de potencia KEI 400 kV\", img:\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/CH_angostura_Sistemas_de_cable_de_Potencia_400_kV.webp\", bullets:[\"Rehabilitaci\u00f3n y modernizaci\u00f3n\",\"SCADA y medici\u00f3n\",\"Pruebas y energizaci\u00f3n\"] },\n    { sector:\"energia\", title:\"Ingenio Tres Valles Incremento de Capacidad en Subestaciones MT\", img:\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/Ingenio_Tres_Valles_Incremento_de_Capacidad_en_Subestaciones_MT.webp\", bullets:[\"Subestaciones MT\",\"Aumento de capacidad\",\"Puesta en operaci\u00f3n\"] },\n    { sector:\"energia\", title:\"CFE Chankanaab Sistema El\u00e9ctrico Integral CA\/CD\", img:\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/CFE_Chankanaab_Sistema_El&eacute;ctrico_Integral_CACD.png\", bullets:[\"Sistema integral CA\/CD\",\"Distribuci\u00f3n y control\",\"Cumplimiento normativo\"] },\n    { sector:\"energia\", title:\"CFE Tamazulapan Modernizaci\u00f3n de Control Hidr\u00e1ulico\", img:\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/CFE_Tamazulapan_Modernizacion_de_Control_Hidraulico.webp\", bullets:[\"Control hidr\u00e1ulico\",\"Retrofit de sistemas\",\"Confiabilidad de planta\"] },\n    { sector:\"energia\", title:\"CH Angostura Infraestructura El\u00e9ctrica de Alta Tensi\u00f3n 400 kV\", img:\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/CH_angostura_Infraestructura_Electrica_de _Alta_Tension_400_kV.webp\", bullets:[\"Alta tensi\u00f3n 400 kV\",\"Infraestructura el\u00e9ctrica\",\"Entrega en campo\"] },\n    { sector:\"industrial\", title:\"Proyecto Minero VFD Altivar 980 700 HP para Bombeo Profundo\", img:\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/Proyecto_Minero_VFD_Altivar_980_700_HP_para_Bombeo_Profundo.webp\", bullets:[\"Ingenier\u00eda e interconexi\u00f3n\",\"Protecciones y medici\u00f3n\",\"Operaci\u00f3n y mantenimiento\"] },\n    { sector:\"industrial\", title:\"Coca-Cola Colima Variador Industrial TRIOL 200 HP\", img:\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/Coca_Cola_Colima_Variador_Industrial_TRIOL_ 200_HP.webp\", bullets:[\"Variador industrial\",\"Integraci\u00f3n en planta\",\"Arranque y soporte\"] },\n    { sector:\"industrial\", title:\"Campo E\u00f3lico Suministro de Sistemas de Control y Potencia\", img:\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/Campo_Eolico_Suministro_de_Sistemas_de_Control_y_Potencia.webp\", bullets:[\"Suministro especializado\",\"Control y potencia\",\"Implementaci\u00f3n EPC\"] },\n    { sector:\"industrial\", title:\"Ingenio Emiliano Zapata Control de Velocidad y Gobernadores\", img:\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/Ingenio_Emiliano_Zapata_Control_de_Velocidad_y_Gobernadores.webp\", bullets:[\"Control de velocidad\",\"Gobernadores\",\"Optimizaci\u00f3n operativa\"] },\n    { sector:\"industrial\", title:\"Ingenio Adolfo L\u00f3pez Mateos Sistema de Sincron\u00eda y Cogeneraci\u00f3n\", img:\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/Ingenio_Adolfo_Lopez_Mateos_Sistema_de_Sincronia_y_Cogeneracion.webp\", bullets:[\"Sincron\u00eda y cogeneraci\u00f3n\",\"Integraci\u00f3n multimarcas\",\"Comisionamiento\"] },\n    { sector:\"industrial\", title:\"Ingenio Tamazula Variador Regenerativo 300 HP\", img:\"https:\/\/vmsenergy.com\/wp-content\/uploads\/2026\/05\/Ingenio_Tamazula_Variador_Regenerativo_300_HP.webp\", bullets:[\"Variador regenerativo\",\"Eficiencia energ\u00e9tica\",\"Operaci\u00f3n continua\"] }\n  ];\n\n  let projects = PROJECTS_FALLBACK.slice();\n\n  function escapeHTML(str){\n    return String(str || \"\").replace(\/[&<>\\\"']\/g, function(s){\n      return {\"&\":\"&amp;\",\"<\":\"&lt;\",\">\":\"&gt;\",\"\\\"\":\"&quot;\",\"'\":\"&#39;\"}[s];\n    });\n  }\n\n  function normalizeText(str){\n    return String(str || \"\").toLowerCase().trim();\n  }\n\n  function normalizePath(path){\n    return String(path || \"\").replace(\/\\\\\/g, \"\/\").replace(\/^\\.\\\/\/, \"\");\n  }\n\n  function inferSectorFromPath(path){\n    const p = normalizePath(path).toLowerCase();\n    if(p.indexOf(\"\/oil&gas\/\") > -1) return \"oilgas\";\n    if(p.indexOf(\"\/infraestructura_electrica\/\") > -1) return \"energia\";\n    if(p.indexOf(\"\/soluciones_industriales\/\") > -1) return \"industrial\";\n    return \"\";\n  }\n\n  function titleFromPath(path){\n    const normalized = normalizePath(path);\n    const fileName = normalized.split(\"\/\").pop() || \"\";\n    const base = fileName.replace(\/\\.[^.]+$\/, \"\");\n    return base\n      .replace(\/[_-]+\/g, \" \")\n      .replace(\/\\s+\/g, \" \")\n      .trim();\n  }\n\n  function sanitizeProjects(items){\n    const seen = {};\n    return (Array.isArray(items) ? items : []).map(function(item){\n      const img = normalizePath(item && item.img ? item.img : \"\");\n      const sector = item && item.sector ? String(item.sector) : inferSectorFromPath(img);\n      if(!img || !sector) return null;\n      const key = normalizeText(img);\n      if(seen[key]) return null;\n      seen[key] = true;\n      const title = item && item.title ? String(item.title) : titleFromPath(img);\n      const bullets = Array.isArray(item && item.bullets) ? item.bullets : [];\n      return { sector: sector, title: title, img: img, bullets: bullets };\n    }).filter(Boolean);\n  }\n\n  function loadProjects(){\n    return fetch(\"assets\/data\/landing-projects.json\", { cache: \"no-store\" })\n      .then(function(res){\n        if(!res.ok) throw new Error(\"manifest-not-found\");\n        return res.json();\n      })\n      .then(sanitizeProjects)\n      .then(function(items){\n        return items.length ? items : PROJECTS_FALLBACK.slice();\n      })\n      .catch(function(){\n        return PROJECTS_FALLBACK.slice();\n      });\n  }\n\n  function render(sector){\n    const items = projects.filter(function(p){ return p.sector === sector; }).slice(0, MAX_INDEX_CARDS);\n    track.innerHTML = items.map(function(p){\n      return (\n        '<article class=\"cvproj__card\">' +\n          '<img class=\"cvproj__img\" src=\"' + escapeHTML(p.img) + '\" alt=\"' + escapeHTML(p.title) + '\" loading=\"lazy\" decoding=\"async\">' +\n          '<div class=\"cvproj__shade\" aria-hidden=\"true\"><\/div>' +\n          '<div class=\"cvproj__footer\">' +\n            '<h3 class=\"cvproj__name\">' + escapeHTML(p.title) + '<\/h3>' +\n          '<\/div>' +\n        '<\/article>'\n      );\n    }).join(\"\");\n  }\n\n  function setActiveTab(btn){\n    tabs.forEach(function(t){\n      const active = t === btn;\n      t.classList.toggle(\"is-active\", active);\n      t.setAttribute(\"aria-selected\", active ? \"true\" : \"false\");\n    });\n    tabCards.forEach(function(card){\n      card.classList.toggle(\"is-active\", card.contains(btn));\n    });\n    render(btn.dataset.sector || \"oilgas\");\n  }\n\n  tabs.forEach(function(btn){\n    btn.addEventListener(\"click\", function(){ setActiveTab(btn); });\n  });\n\n  panel.addEventListener(\"click\", function(e){\n    const img = e.target && e.target.closest ? e.target.closest(\".cvproj__img\") : null;\n    if(!img) return;\n    const card = img.closest(\".cvproj__card\");\n    if(card) card.classList.toggle(\"is-open\");\n  });\n\n  loadProjects().then(function(data){\n    projects = data;\n    setActiveTab(tabs[0]);\n  });\n})();\n<\/script>\n<script id=\"img-error-runtime\">\ndocument.addEventListener('error', function(e){\n  const el = e.target;\n  if(!el || el.tagName !== 'IMG') return;\n  if(el.hasAttribute('data-hide-on-error')){\n    el.style.display = 'none';\n  }\n}, true);\n<\/script>\n<script id=\"nos-carousel-runtime\">\n(function(){\n  const root = document.getElementById('nosCarousel');\n  const tabsWrap = document.getElementById('nosCarouselTabs');\n  const captionTitle = document.getElementById('nosCarouselCaptionTitle');\n  const captionText = document.getElementById('nosCarouselCaptionText');\n  if(!root || !tabsWrap) return;\n  const slides = Array.from(root.querySelectorAll('.nos-carousel__slide'));\n  const prev = root.querySelector('.nos-carousel__nav--prev');\n  const next = root.querySelector('.nos-carousel__nav--next');\n  if(!slides.length || !prev || !next) return;\n\n  let index = 0;\n  let timer = null;\n\n  function setActive(i){\n    index = (i + slides.length) % slides.length;\n    slides.forEach((s, idx) => s.classList.toggle('is-active', idx === index));\n    tabsWrap.querySelectorAll('.nos-carousel__tab').forEach((d, idx) => {\n      d.classList.toggle('is-active', idx === index);\n      d.setAttribute('aria-selected', idx === index ? 'true' : 'false');\n    });\n    const activeSlide = slides[index];\n    if(activeSlide && captionTitle && captionText){\n      captionTitle.textContent = activeSlide.getAttribute('data-caption-title') || '';\n      captionText.textContent = activeSlide.getAttribute('data-caption-text') || '';\n    }\n  }\n\n  slides.forEach((slide, idx) => {\n    const tab = document.createElement('button');\n    tab.type = 'button';\n    tab.className = 'nos-carousel__tab' + (idx === 0 ? ' is-active' : '');\n    tab.setAttribute('role', 'tab');\n    tab.setAttribute('aria-selected', idx === 0 ? 'true' : 'false');\n    tab.textContent = slide.getAttribute('data-caption-title') || ('Imagen ' + (idx + 1));\n    tab.addEventListener('click', () => { setActive(idx); restart(); });\n    tabsWrap.appendChild(tab);\n  });\n\n  function start(){\n    stop();\n    timer = window.setInterval(() => setActive(index + 1), 4500);\n  }\n  function stop(){\n    if(timer){ window.clearInterval(timer); timer = null; }\n  }\n  function restart(){ start(); }\n\n  prev.addEventListener('click', () => { setActive(index - 1); restart(); });\n  next.addEventListener('click', () => { setActive(index + 1); restart(); });\n  root.addEventListener('mouseenter', stop);\n  root.addEventListener('mouseleave', start);\n  root.addEventListener('focusin', stop);\n  root.addEventListener('focusout', start);\n\n  setActive(0);\n  start();\n})();\n<\/script>\n<script id=\"diff-carousel-runtime\">\n(function(){\n  const root = document.getElementById('diffCarousel');\n  if(!root) return;\n  const track = root.querySelector('.diff-carousel__track');\n  const originalSlides = Array.from(root.querySelectorAll('.diff-slide'));\n  const prev = root.querySelector('.diff-carousel__btn--prev');\n  const next = root.querySelector('.diff-carousel__btn--next');\n  const dotsWrap = document.getElementById('diffCarouselDots');\n  const captionTitle = document.getElementById('diffCarouselCaptionTitle');\n  const captionText = document.getElementById('diffCarouselCaptionText');\n  if(!track || !originalSlides.length || !prev || !next || !dotsWrap) return;\n\n  let index = 1; \/\/ first real slide after prepended clone\n  let timer = null;\n  let isAnimating = false;\n  const prefersReduced = window.matchMedia && window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n  const TOTAL = originalSlides.length;\n\n  const firstClone = originalSlides[0].cloneNode(true);\n  const lastClone = originalSlides[TOTAL - 1].cloneNode(true);\n  firstClone.setAttribute('aria-hidden', 'true');\n  lastClone.setAttribute('aria-hidden', 'true');\n  track.insertBefore(lastClone, originalSlides[0]);\n  track.appendChild(firstClone);\n\n  function setTransition(enabled){\n    track.style.transition = enabled\n      ? 'transform .58s cubic-bezier(.22,.61,.36,1)'\n      : 'none';\n  }\n  function getStepPx(){\n    const first = track.querySelector('.diff-slide');\n    if(!first) return 0;\n    const styles = window.getComputedStyle(track);\n    const gap = Number.parseFloat(styles.columnGap || styles.gap || '0') || 0;\n    return first.getBoundingClientRect().width + gap;\n  }\n\n  function getDotsIndex(){\n    if(index <= 0) return TOTAL - 1;\n    if(index > TOTAL) return 0;\n    return index - 1;\n  }\n\n  function markActive(){\n    const allSlides = Array.from(track.querySelectorAll('.diff-slide'));\n    allSlides.forEach((slide, idx) => {\n      slide.classList.toggle('is-active', idx === index);\n    });\n  }\n\n  function updateDots(){\n    const active = getDotsIndex();\n    Array.from(dotsWrap.children).forEach((dot, idx) => {\n      dot.classList.toggle('is-active', idx === active);\n      dot.setAttribute('aria-current', idx === active ? 'true' : 'false');\n    });\n    const activeSlide = originalSlides[active];\n    if(activeSlide && captionTitle && captionText){\n      captionTitle.textContent = activeSlide.getAttribute('data-diff-title') || '';\n      captionText.textContent = activeSlide.getAttribute('data-diff-text') || '';\n    }\n  }\n\n  function render(i, withTransition){\n    index = i;\n    setTransition(withTransition !== false);\n    const step = getStepPx();\n    track.style.transform = 'translateX(-' + (index * step) + 'px)';\n    markActive();\n    updateDots();\n  }\n\n  function start(){\n    if(prefersReduced) return;\n    stop();\n    timer = window.setInterval(() => moveTo(index + 1), 5200);\n  }\n  function stop(){\n    if(timer){\n      window.clearInterval(timer);\n      timer = null;\n    }\n  }\n  function restart(){ start(); }\n  function moveTo(i){\n    if(isAnimating) return;\n    isAnimating = true;\n    render(i, true);\n  }\n\n  dotsWrap.innerHTML = '';\n  originalSlides.forEach((_, idx) => {\n    const dot = document.createElement('button');\n    dot.type = 'button';\n    dot.className = 'diff-carousel__dot' + (idx === 0 ? ' is-active' : '');\n    dot.setAttribute('aria-label', 'Ir al diferenciador ' + (idx + 1));\n    dot.setAttribute('aria-current', idx === 0 ? 'true' : 'false');\n    dot.addEventListener('click', () => {\n      moveTo(idx + 1);\n      restart();\n    });\n    dotsWrap.appendChild(dot);\n  });\n\n  prev.addEventListener('click', () => {\n    moveTo(index - 1);\n    restart();\n  });\n  next.addEventListener('click', () => {\n    moveTo(index + 1);\n    restart();\n  });\n  track.addEventListener('transitionend', () => {\n    if(index === 0){\n      render(TOTAL, false);\n    } else if(index === TOTAL + 1){\n      render(1, false);\n    }\n    isAnimating = false;\n  });\n  root.addEventListener('mouseenter', stop);\n  root.addEventListener('mouseleave', start);\n  root.addEventListener('focusin', stop);\n  root.addEventListener('focusout', start);\n  window.addEventListener('resize', () => render(index, false));\n\n  render(1, false);\n  start();\n})();\n<\/script>\n\n<!-- VMS_ENGLISH_DYNAMIC_RUNTIME_V3 -->\n<script id=\"vms-english-dynamic-runtime\">\n(function(){\n  'use strict';\n\n  const PATH_IS_ENGLISH = \/^\\\/en(?:\\\/|$)\/i.test(window.location.pathname);\n  window.VMS_IS_ENGLISH_PAGE = PATH_IS_ENGLISH;\n  if(!PATH_IS_ENGLISH) return;\n\n  const EXACT = new Map([[\"5 certificaciones ISO activas: Calidad, Medio Ambiente, Seguridad, Energ\u00eda y Antisoborno.\",\"Five active ISO certifications: Quality, Environmental Management, Occupational Health and Safety, Energy Management, and Anti-Bribery.\"],[\"Acciones r\u00e1pidas\",\"Quick Actions\"],[\"Acompa\u00f1amiento t\u00e9cnico y comercial durante todo el ciclo del proyecto.\",\"Technical and commercial support throughout the entire project lifecycle.\"],[\"Actuadores\",\"Actuators\"],[\"ACTUADORES\",\"ACTUATORS\"],[\"Agregar a solicitud\",\"Add to request\"],[\"Agregar al proyecto\",\"Add to project\"],[\"Agua y Saneamiento\",\"Water and Sanitation\"],[\"Alcance\",\"Scope\"],[\"ALIADOS\",\"PARTNERS\"],[\"Aliados Comerciales\",\"Commercial Partners\"],[\"Alimentos y Bebidas\",\"Food and Beverage\"],[\"Alta tensi\u00f3n\",\"High voltage\"],[\"Ambientes cr\u00edticos \/ cumplimiento\",\"Critical Environments \/ Compliance\"],[\"Anterior\",\"Previous\"],[\"Aplicaciones\",\"Applications\"],[\"Aplicaci\u00f3n\",\"Application\"],[\"Arquitecturas OT y comunicaciones\",\"OT Architectures and Communications\"],[\"Automatizaci\u00f3n & Control\",\"Automation & Control\"],[\"Automatizaci\u00f3n y control\",\"Automation and control\"],[\"Automatizaci\u00f3n y Control\",\"Automation and Control\"],[\"A\u00f1adir nota\",\"Add note\"],[\"Baja tensi\u00f3n\",\"Low voltage\"],[\"Biog\u00e1s, biomasa y e\u00f3lica distribuida\",\"Biogas, Biomass, and Distributed Wind Power\"],[\"Bombas\",\"Pumps\"],[\"Buscar\",\"Search\"],[\"Cantidad\",\"Quantity\"],[\"Capacidades EPC integrales para operaci\u00f3n cr\u00edtica.\",\"Comprehensive EPC capabilities for critical operations.\"],[\"Capacitaci\u00f3n\",\"Training\"],[\"Caribe\",\"Caribbean\"],[\"Carrusel de servicios y especialidades\",\"Services and specialties carousel\"],[\"Casos de referencia\",\"Case Studies\"],[\"Categor\u00eda\",\"Category\"],[\"Categor\u00edas\",\"Categories\"],[\"Categor\u00edas de clientes\",\"Customer categories\"],[\"Centrales hidroel\u00e9ctricas CFE\",\"CFE Hydroelectric Power Plants\"],[\"Centro de Control de Motor (MCC)\",\"Motor Control Center (MCC)\"],[\"Centroam\u00e9rica\",\"Central America\"],[\"Centros de Datos\",\"Data Centers\"],[\"Cerrar\",\"Close\"],[\"CFE DISTRIBUCI\u00d3N\",\"CFE DISTRIBUTION\"],[\"CFE GENERACI\u00d3N\",\"CFE GENERATION\"],[\"Cliente\",\"Customer\"],[\"Clientes\",\"Customers\"],[\"Clientes por sector\",\"Customers by sector\"],[\"Comisionamiento y O&M\",\"Commissioning and O&M\"],[\"Completa los campos requeridos\",\"Complete the required fields\"],[\"Confiabilidad\",\"Reliability\"],[\"Conocer soluci\u00f3n\",\"Explore solution\"],[\"Construcci\u00f3n\",\"Construction\"],[\"Consulta a un especialista\",\"Consult a specialist\"],[\"Consulta la informaci\u00f3n clave antes de solicitar tu propuesta.\",\"Review the key information before requesting your proposal.\"],[\"Contacto\",\"Contact\"],[\"Control de generaci\u00f3n en planta geot\u00e9rmica \u2014 Nayarit\",\"Generation Control at a Geothermal Plant \u2014 Nayarit\"],[\"Correo electr\u00f3nico\",\"Email\"],[\"Cumplimiento normativo\",\"Regulatory compliance\"],[\"Cumplimiento y seguridad\",\"Compliance and Safety\"],[\"C\u00f3mo lo hacemos\",\"How we do it\"],[\"Datos de contacto\",\"Contact information\"],[\"Datos de contacto VMS Energy\",\"VMS Energy contact details\"],[\"Desarrollamos infraestructura para generaci\u00f3n, transmisi\u00f3n y distribuci\u00f3n con est\u00e1ndares de seguridad y continuidad de servicio.\",\"We develop generation, transmission, and distribution infrastructure in accordance with safety and service-continuity standards.\"],[\"Desarrollamos soluciones confiables y sustentables de ingenier\u00eda, suministro t\u00e9cnico y construcci\u00f3n: EPC, generaci\u00f3n, transmisi\u00f3n y distribuci\u00f3n el\u00e9ctrica, soluciones electromec\u00e1nicas, automatizaci\u00f3n y control multimarcas, infraestructura el\u00e9ctrica, petr\u00f3leo y gas, iluminaci\u00f3n industrial y energ\u00edas renovables.\",\"We develop reliable, sustainable engineering, technical supply, and construction solutions: EPC; electric power generation, transmission, and distribution; electromechanical solutions; multi-brand automation and control; electrical infrastructure; Oil & Gas; industrial lighting; and renewable energy.\"],[\"Desarrollamos soluciones de biog\u00e1s, biomasa, e\u00f3lica distribuida y servicios en Centrales Hidroel\u00e9ctricas de CFE para descarbonizar operaciones cr\u00edticas.\",\"We develop biogas, biomass, distributed wind, and CFE hydroelectric power-plant service solutions to decarbonize critical operations.\"],[\"Desarrollo de sistemas el\u00e9ctricos\",\"Development of electrical systems\"],[\"Desarrollo de Sistemas El\u00e9ctricos\",\"Electrical Systems Development\"],[\"Descripci\u00f3n\",\"Description\"],[\"Descripci\u00f3n breve\",\"Brief description\"],[\"Detecci\u00f3n y Supresi\u00f3n de Gas y Fuego\",\"Gas and Fire Detection and Suppression\"],[\"Diferenciadores clave\",\"Key Differentiators\"],[\"Dise\u00f1amos e integramos sistemas solares para reducir costos energ\u00e9ticos y elevar el desempe\u00f1o ambiental de cada operaci\u00f3n.\",\"We design and integrate solar systems to reduce energy costs and improve the environmental performance of each operation.\"],[\"Dise\u00f1o de Sistemas de Protecci\u00f3n\",\"Protection System Design\"],[\"Dise\u00f1o luminot\u00e9cnico, selecci\u00f3n de tecnolog\u00edas y ejecuci\u00f3n de proyectos de iluminaci\u00f3n para seguridad, eficiencia y desempe\u00f1o visual.\",\"Lighting design, technology selection, and execution of lighting projects for safety, efficiency, and visual performance.\"],[\"Disponibilidad\",\"Availability\"],[\"Disponible\",\"Available\"],[\"Distribuci\u00f3n\",\"Distribution\"],[\"Ecosistema de marcas y suministro especializado para ejecuci\u00f3n continua.\",\"An ecosystem of brands and specialized supply for uninterrupted project execution.\"],[\"Editar\",\"Edit\"],[\"Eficiencia energ\u00e9tica\",\"Energy efficiency\"],[\"Ejecutamos soluciones para operaci\u00f3n continua en ambientes cr\u00edticos, cumpliendo normativas y requerimientos de seguridad industrial.\",\"We deliver solutions for continuous operation in critical environments, meeting industrial safety standards and requirements.\"],[\"Electrificaci\u00f3n y modernizaciones\",\"Electrification and Modernization\"],[\"Eliminar\",\"Remove\"],[\"Email\",\"E-mail\"],[\"Empresa\",\"Company\"],[\"En\",\"In\"],[\"En un mercado enfocado en volumen y precio, VMS Energy prioriza soluciones con impacto real. Nuestro prop\u00f3sito es dar certeza al crecimiento operativo de la industria con seguridad, eficiencia y \u00e9tica.\",\"In a market focused on volume and price, VMS Energy prioritizes solutions with real impact. Our purpose is to provide certainty for industrial operational growth through safety, efficiency, and ethics.\"],[\"Energ\u00eda Solar Industrial\",\"Industrial Solar Energy\"],[\"Entrenamiento\",\"Training\"],[\"Entrenamiento en Controles\",\"Controls Training\"],[\"Enviar\",\"SEND\"],[\"Enviar solicitud\",\"Send request\"],[\"Equipo\",\"Equipment\"],[\"Equipo el\u00e9ctrico\",\"Electrical equipment\"],[\"Especialistas t\u00e9cnicos\",\"Technical specialists\"],[\"Especificaciones\",\"Specifications\"],[\"Estado\",\"State\"],[\"Estados Unidos\",\"USA\"],[\"Estados Unidos, M\u00e9xico, Centroam\u00e9rica y el Caribe\",\"United States, Mexico, Central America, and the Caribbean\"],[\"Estudios el\u00e9ctricos\",\"Electrical studies\"],[\"Evaluar factibilidad\",\"Assess feasibility\"],[\"Experiencia multisectorial en industrias cr\u00edticas de energ\u00eda e infraestructura.\",\"Multi-sector experience in critical energy and infrastructure industries.\"],[\"Familia\",\"Family\"],[\"Filosof\u00eda institucional\",\"Institutional philosophy\"],[\"Filtra por UEN, Industria y Sector para encontrar el servicio adecuado.\",\"Filter by business unit, industry, and sector to find the right service.\"],[\"Filtros activos\",\"Active filters\"],[\"Generaci\u00f3n\",\"Generation\"],[\"Generaci\u00f3n El\u00e9ctrica\",\"Power Generation\"],[\"Generaci\u00f3n Verde No Solar\",\"Non-Solar Green Power Generation\"],[\"Generaci\u00f3n, transmisi\u00f3n y distribuci\u00f3n\",\"Generation, Transmission, and Distribution\"],[\"Gesti\u00f3n de obra EPC\",\"EPC Project Management\"],[\"Gesti\u00f3n integral desde ingenier\u00eda hasta puesta en marcha. Un solo interlocutor, cronograma comprometido.\",\"End-to-end management from engineering through commissioning, with a single point of contact and a committed schedule.\"],[\"Gobernadores\",\"Governors\"],[\"Hablar con ingenier\u00eda\",\"Talk to Engineering\"],[\"Hablar con un especialista\",\"Talk to a specialist\"],[\"Hidroel\u00e9ctrica\",\"Hydroelectric\"],[\"Horario de atenci\u00f3n: Lunes a Viernes, 9:00 a 18:00.\",\"Business hours: Monday through Friday, 9:00 a.m. to 6:00 p.m.\"],[\"Iluminaci\u00f3n\",\"Lighting\"],[\"Iluminaci\u00f3n Industrial\",\"Industrial Lighting\"],[\"Industria\",\"Industry\"],[\"Industrias\",\"Industries\"],[\"Infraestructura El\u00e9ctrica\",\"Electrical Infrastructure\"],[\"Infraestructura Energ\u00e9tica\",\"Energy Infrastructure\"],[\"Infraestructura y Transporte\",\"Infrastructure and Transportation\"],[\"Ingenieros especializados en AT\/MT, automatizaci\u00f3n industrial y Oil & Gas. M\u00e1s de 17 a\u00f1os ejecutando proyectos el\u00e9ctricos de alta criticidad en M\u00e9xico.\",\"Engineers specializing in high- and medium-voltage systems, industrial automation, and Oil & Gas, with more than 17 years of experience delivering highly critical electrical projects in Mexico.\"],[\"Ingenier\u00eda\",\"Engineering\"],[\"Ingenier\u00eda Civil Industrial\",\"Industrial Civil Engineering\"],[\"Ingenier\u00eda Conceptual\",\"Conceptual Engineering\"],[\"Ingenier\u00eda de Detalle (EPC)\",\"Detailed Engineering (EPC)\"],[\"Ingenier\u00eda de detalle, interconexi\u00f3n y EPC\",\"Detailed Engineering, Interconnection, and EPC\"],[\"Ingenier\u00eda EPC de alto valor para la industria mexicana\",\"High-value EPC engineering for Mexican industry\"],[\"Ingenier\u00eda experta\",\"Expert Engineering\"],[\"Ingenier\u00eda y EPC de iluminaci\u00f3n industrial\",\"Industrial Lighting Engineering and EPC\"],[\"Ingenier\u00eda, suministro t\u00e9cnico y construcci\u00f3n\",\"Engineering, Technical Supply, and Construction\"],[\"Iniciar proyecto\",\"Start a project\"],[\"Integraci\u00f3n\",\"Integration\"],[\"Integraci\u00f3n multimarcas\",\"Multi-brand Integration\"],[\"Integraci\u00f3n multimarcas con enfoque en seguridad, trazabilidad y cumplimiento.\",\"Multi-brand integration focused on safety, traceability, and compliance.\"],[\"Integraci\u00f3n y confiabilidad\",\"Integration and Reliability\"],[\"Integraci\u00f3n, FAT\/SAT\",\"Integration, FAT\/SAT\"],[\"Integramos ingenier\u00eda, montaje y puesta en marcha para sistemas electromec\u00e1nicos industriales con enfoque en confiabilidad operativa.\",\"We integrate engineering, installation, and commissioning for industrial electromechanical systems, with a focus on operational reliability.\"],[\"Integramos tableros, instrumentaci\u00f3n y control para mejorar la toma de decisiones en tiempo real y la eficiencia operativa.\",\"We integrate panels, instrumentation, and control to improve real-time decision-making and operational efficiency.\"],[\"Ir a Suministro t\u00e9cnico\",\"Go to Technical Supply\"],[\"La soluci\u00f3n\",\"The solution\"],[\"Limpiar todo\",\"Clear all\"],[\"L\u00ednea de producci\u00f3n restituida en tiempo r\u00e9cord. Variador operando dentro de par\u00e1metros con soporte t\u00e9cnico local de respaldo.\",\"Production line restored in record time. Drive operating within parameters, backed by local technical support.\"],[\"Mantenimiento\",\"Maintenance\"],[\"Mapa de VMS Energy en Guadalajara\",\"VMS Energy map in Guadalajara\"],[\"Marca\",\"Brand\"],[\"Marcas\",\"Brands\"],[\"Media tensi\u00f3n\",\"Medium voltage\"],[\"Medici\u00f3n y Control Supervisorio\",\"Supervisory Measurement and Control\"],[\"Mensaje\",\"Message\"],[\"mercados \u00b7 M\u00e9xico, EE.UU., Centroam\u00e9rica y Caribe\",\"markets \u00b7 Mexico, USA, Central America, and the Caribbean\"],[\"Metodolog\u00edas EPC con control de riesgos y cronogramas realistas.\",\"EPC methodologies with risk control and realistic schedules.\"],[\"Miner\u00eda\",\"Mining\"],[\"Miner\u00eda y Metales\",\"Mining and Metals\"],[\"Modelo\",\"Model\"],[\"Modelos\",\"Models\"],[\"Modernizaci\u00f3n\",\"Modernization\"],[\"Modernizaci\u00f3n del sistema Woodward de control de velocidad, sincron\u00eda y protecciones. Integraci\u00f3n FAT y SAT en coordinaci\u00f3n con equipo PEMEX en campo.\",\"Modernization of the Woodward speed-control, synchronization, and protection system. FAT and SAT integration coordinated with the PEMEX field team.\"],[\"Monitoreo de Vibraciones\",\"Vibration Monitoring\"],[\"M\u00e1s de 17 a\u00f1os\",\"More than 17 years\"],[\"M\u00e1s de 17 a\u00f1os en proyectos EPC de energ\u00eda e infraestructura industrial.\",\"More than 17 years delivering energy and industrial-infrastructure EPC projects.\"],[\"M\u00e1s informaci\u00f3n\",\"More information\"],[\"M\u00e9xico\",\"Mexico\"],[\"Name\",\"Yam\"],[\"Navegaci\u00f3n del carrusel\",\"Carousel navigation\"],[\"No listado\",\"Not listed\"],[\"Nombre\",\"Name\"],[\"Nombre completo\",\"Full name\"],[\"Normativa \/ fotometr\u00eda\",\"Standards \/ Photometry\"],[\"Nosotros\",\"About us\"],[\"Nota\",\"Note\"],[\"Nuestra misi\u00f3n es ofrecer soluciones vers\u00e1tiles y sustentables en generaci\u00f3n y distribuci\u00f3n el\u00e9ctrica. Nuestra visi\u00f3n es liderar el mercado EPC energ\u00e9tico en M\u00e9xico hacia 2030, guiados por verdad, motivaci\u00f3n, salud y seguridad, cuidado del medio ambiente, nobleza y eficiencia.\",\"Our mission is to provide versatile, sustainable solutions for electric power generation and distribution. Our vision is to lead Mexico's energy EPC market by 2030, guided by truth, motivation, health and safety, environmental stewardship, integrity, and efficiency.\"],[\"Nueva solicitud\",\"New request\"],[\"o la\",\"or the\"],[\"O&M \/ monitoreo\",\"O&M \/ Monitoring\"],[\"Obra Electromec\u00e1nica\",\"Electromechanical Works\"],[\"Ocultar matriz\",\"Hide matrix\"],[\"Operaci\u00f3n\",\"Operation\"],[\"Operamos con procesos certificados, \u00e9tica documentada, seguridad como cultura y eficiencia medible. Trabajamos bajo est\u00e1ndares ISO 9001, 14001, 37001, 45001 y 50001 para garantizar confiabilidad y sustentabilidad integral.\",\"We operate with certified processes, documented ethics, a culture of safety, and measurable efficiency. We work under ISO 9001, 14001, 37001, 45001, and 50001 standards to ensure reliability and comprehensive sustainability.\"],[\"Operamos con procesos certificados, \u00e9tica documentada, seguridad como cultura y eficiencia operativa medible bajo enfoque QHSE+ con ISO 9001, 14001, 37001, 45001 y 50001\",\"We operate with certified processes, documented ethics, a culture of safety, and measurable operational efficiency through a QHSE+ approach under ISO 9001, 14001, 37001, 45001, and 50001.\"],[\"Otros\",\"Others\"],[\"Papel y Celulosa\",\"Pulp and Paper\"],[\"PEMEX Ku-Maloob-Zaap \u2014 Modernizaci\u00f3n de Turbinas de Gas\",\"PEMEX Ku-Maloob-Zaap \u2014 Gas Turbine Modernization\"],[\"Planta embotelladora con variadores en falla, impactando la l\u00ednea de producci\u00f3n y generando paros no programados de alto costo.\",\"A bottling plant with failed drives that were affecting the production line and causing costly unplanned shutdowns.\"],[\"Planta geot\u00e9rmica con controles obsoletos de los a\u00f1os 90, riesgo de paro no programado en operaci\u00f3n continua para CFE.\",\"A geothermal plant with obsolete 1990s controls and a risk of unplanned shutdown during continuous operation for CFE.\"],[\"PLC \/ SCADA \/ instrumentaci\u00f3n\",\"PLC \/ SCADA \/ Instrumentation\"],[\"POSICIONADORES\",\"POSITIONERS\"],[\"Presentaci\u00f3n de VMS Energy\",\"VMS Energy presentation\"],[\"Producto\",\"Product\"],[\"Productos\",\"Products\"],[\"Protecci\u00f3n y Control\",\"Protection and Control\"],[\"Proyecto\",\"Project\"],[\"Proyecto EPC\",\"EPC Project\"],[\"Proyecto similar\",\"Similar project\"],[\"Proyectos ejecutados\",\"Completed projects\"],[\"Proyectos EPC confiables y de alto desempe\u00f1o.\",\"Reliable, high-performance EPC projects.\"],[\"Proyectos que definen nuestra capacidad\",\"Projects that demonstrate our capabilities\"],[\"Pruebas\",\"Testing\"],[\"Pruebas a\",\"UPS, battery banks, industrial battery chargers testing and health checks.\"],[\"Pruebas El\u00e9ctricas\",\"Electrical Testing\"],[\"Puesta a Tierra\",\"Grounding\"],[\"Puesta en marcha\",\"Start-up\"],[\"Puesta en marcha y pruebas\",\"Commissioning and Testing\"],[\"Puesta en servicio\",\"Commissioning\"],[\"QHSE+ con ISO 9001, 14001, 37001, 45001 y 50001\",\"QHSE+ with ISO 9001, 14001, 37001, 45001, and 50001\"],[\"Qui\u00e9nes somos\",\"Who we are\"],[\"Qu\u00e9 hacemos\",\"What we do\"],[\"Qu\u00edmica y Petroqu\u00edmica\",\"Chemical and Petrochemical\"],[\"Rehabilitaciones \/ modernizaciones\",\"Rehabilitation \/ Modernization\"],[\"Responsabilidad\",\"Responsibility\"],[\"Responsabilidad total desde ingenier\u00eda conceptual hasta puesta en marcha y capacitaci\u00f3n.\",\"Full responsibility from conceptual engineering through commissioning and training.\"],[\"Respuesta a Emergencias\",\"Emergency Response\"],[\"Resultados\",\"Results\"],[\"Resumen de solicitud\",\"Request summary\"],[\"Sector\",\"Sector\"],[\"Sectores\",\"Sectors\"],[\"Seguridad\",\"Security\"],[\"Seguridad el\u00e9ctrica\",\"Electrical safety\"],[\"Selecciona una categor\u00eda de clientes\",\"Select a customer category\"],[\"Selecciona una categor\u00eda para ver su lista de clientes.\",\"Select a category to view its customer list.\"],[\"Selecciona una opci\u00f3n\",\"Select an option\"],[\"Selecciona...\",\"Select...\"],[\"Selecciona\u2026\",\"Select\u2026\"],[\"Servicio\",\"Service\"],[\"Servicio anterior\",\"Previous service\"],[\"Servicio EPC\",\"EPC Service\"],[\"SERVICIOS\",\"SERVICES\"],[\"Servicios\",\"Services\"],[\"Servicios & Especialidades\",\"Services & Specialties\"],[\"Servicios en campo y pruebas\",\"Field services and testing\"],[\"Servicios en Campo y Pruebas\",\"Field Services and Testing\"],[\"Siguiente\",\"Next\"],[\"Siguiente servicio\",\"Next service\"],[\"Simulaci\u00f3n y Software\",\"Simulation and Software\"],[\"Sin filtros activos: mostrando todo.\",\"No active filters: showing all items.\"],[\"Sin resultados con los filtros actuales.\",\"No results match the current filters.\"],[\"Sincronizaci\u00f3n estable con red CFE, tableros nuevos e instalaci\u00f3n completa. Cero paros no programados en el primer a\u00f1o.\",\"Stable synchronization with the CFE grid, new panels, and complete installation. Zero unplanned shutdowns during the first year.\"],[\"Sistema completo de control de velocidad con Woodward 505, DSCL-II, PLC Siemens S7, HMI y monitoreo de vibraciones Bently Nevada 3500.\",\"Complete speed-control system with Woodward 505, DSCL-II, Siemens S7 PLC, HMI, and Bently Nevada 3500 vibration monitoring.\"],[\"Sistema de gesti\u00f3n certificado\",\"Certified management system\"],[\"Sistema de Gesti\u00f3n Integral\",\"Integrated Management System\"],[\"Sistema de Gesti\u00f3n Integral QHSE+\",\"QHSE+ Integrated Management System\"],[\"Sistemas de control\",\"Control systems\"],[\"Sistemas de Excitaci\u00f3n\",\"Excitation Systems\"],[\"Sistemas de seguridad\",\"Cabinet design and construction.\"],[\"Sistemas de Seguridad\",\"Safety Systems\"],[\"Sistemas de vibraci\u00f3n\",\"Vibration systems\"],[\"Sistemas de Vibraci\u00f3n\",\"Vibration Systems\"],[\"Sobre Pedido\",\"Made to order\"],[\"Socio Estrat\u00e9gico\",\"Strategic Partner\"],[\"Solicitar diagn\u00f3stico\",\"Request an assessment\"],[\"Solicitar este servicio\",\"Request this service\"],[\"Solicitar este taller\",\"Request this workshop\"],[\"Solicitar evaluaci\u00f3n\",\"Request an assessment\"],[\"Solicitar Evaluaci\u00f3n de Proyecto\",\"Request a Project Assessment\"],[\"Solicitar informaci\u00f3n\",\"Request information\"],[\"Solicitar propuesta\",\"Request a proposal\"],[\"Solicitud t\u00e9cnica\",\"Technical request\"],[\"SOLUCIONES\",\"SOLUTIONS\"],[\"Soluciones de generaci\u00f3n verde\",\"Green Power Generation Solutions\"],[\"Soluciones Electromec\u00e1nicas\",\"Electromechanical Solutions\"],[\"Soluci\u00f3n\",\"Solution\"],[\"Soluci\u00f3n especializada\",\"Specialized solution\"],[\"Somos el socio EPC el\u00e9ctrico y electromec\u00e1nico de empresas Fortune 500 en M\u00e9xico. Casi 20 a\u00f1os de experiencia. 5 certificaciones ISO activas.\",\"We are the electrical and electromechanical EPC partner of Fortune 500 companies in Mexico. Nearly 20 years of experience. Five active ISO certifications.\"],[\"Somos una empresa mexicana con m\u00e1s de 17 a\u00f1os de experiencia en ingenier\u00eda, suministro t\u00e9cnico y construcci\u00f3n (EPC). Desarrollamos soluciones integrales y personalizadas en sistemas el\u00e9ctricos, electromec\u00e1nica, infraestructura el\u00e9ctrica, Oil & Gas, generaci\u00f3n solar, automatizaci\u00f3n e iluminaci\u00f3n industrial.\",\"We are a Mexican company with more than 17 years of experience in engineering, technical supply, and construction (EPC). We develop comprehensive, customized solutions for electrical systems, electromechanical systems, electrical infrastructure, Oil & Gas, solar power generation, automation, and industrial lighting.\"],[\"Soporte Operativo en Sitio\",\"On-site Operational Support\"],[\"Subestaciones\",\"Substations\"],[\"Subestaciones \/ tableros \/ protecciones\",\"Substations \/ Panels \/ Protection\"],[\"Suministro\",\"Supply\"],[\"Suministro e instalaci\u00f3n de variador industrial TRIOL de 200 HP, comisionamiento en sitio y transferencia de conocimiento al personal de mantenimiento.\",\"Supply and installation of a 200 HP TRIOL industrial drive, on-site commissioning, and knowledge transfer to maintenance personnel.\"],[\"Supervisi\u00f3n T\u00e9cnica y Comisionamiento\",\"Technical Supervision and Commissioning\"],[\"Tablero de Distribuci\u00f3n\",\"Distribution Panel\"],[\"Tableros de Control\",\"Control Panels\"],[\"Tableros de Distribuci\u00f3n\",\"Distribution Panels\"],[\"Tableros El\u00e9ctricos para Exteriores\",\"Outdoor Electrical Panels\"],[\"Tableros, canalizaciones\",\"Panels and Conduits\"],[\"Tableros, protecciones, medici\u00f3n\",\"Panels, Protection, and Metering\"],[\"Talleres a la Medida\",\"Customized Workshops\"],[\"Tel\u00e9fono\",\"Phone\"],[\"Tenemos cobertura operativa en Estados Unidos, M\u00e9xico, Centroam\u00e9rica y el Caribe. Acompa\u00f1amos proyectos EPC con log\u00edstica, ingenier\u00eda y soporte en sitio, con respuesta \u00e1gil en suministro t\u00e9cnico y arranques, coordinaci\u00f3n multisede y gesti\u00f3n de riesgos para operaciones cr\u00edticas.\",\"We operate throughout the United States, Mexico, Central America, and the Caribbean. We support EPC projects with logistics, engineering, and on-site assistance, providing agile technical supply and start-up support, multi-site coordination, and risk management for critical operations.\"],[\"Tensi\u00f3n\",\"Voltage\"],[\"Tipo de suministro\",\"Supply type\"],[\"Todas\",\"All\"],[\"Todos\",\"All\"],[\"Trabajamos con ABB, Siemens, Schneider, Eaton y 16 marcas m\u00e1s. Sin dependencia de un solo fabricante.\",\"We work with ABB, Siemens, Schneider, Eaton, and 16 additional brands, with no dependence on a single manufacturer.\"],[\"Transportadores\",\"Conveyors belt\"],[\"Transporte\",\"Industrial conveyor belt\"],[\"Tres ejemplos de la profundidad t\u00e9cnica y el alcance operativo de VMS Energy en campo.\",\"Three examples of VMS Energy\u2019s technical depth and field operating scope.\"],[\"Turbinas con control digital estable. Cero eventos de p\u00e9rdida de generaci\u00f3n no programada en el primer ciclo de operaci\u00f3n.\",\"Turbines operating with stable digital control. Zero unplanned loss-of-generation events during the first operating cycle.\"],[\"Turbinas de gas en plataforma offshore con controles obsoletos y riesgo de p\u00e9rdida de generaci\u00f3n en el campo m\u00e1s importante de PEMEX.\",\"Gas turbines on an offshore platform with obsolete controls and a risk of lost generation in PEMEX\u2019s most important field.\"],[\"Variadores (Frecuencia y Velocidad)\",\"Variable Frequency and Speed Drives\"],[\"Variadores de Frecuencia\",\"Variable Frequency Drives\"],[\"Ver detalle\",\"View details\"],[\"Ver detalles\",\"View details\"],[\"Ver matriz\",\"View matrix\"],[\"Ver proyectos ejecutados\",\"View completed projects\"],[\"Ver servicios\",\"View services\"],[\"Ver soluci\u00f3n\",\"View Solution\"],[\"Ver todos los proyectos\",\"View all projects\"],[\"VMS Energy \u2022 EPC \u2022 Proyectos desde $1,000,000 MXN\",\"VMS Energy \u2022 EPC \u2022 Projects starting at MXN $1,000,000\"],[\"\u00a1Solicitud enviada! Te contactamos en breve.\",\"Request sent! We will contact you shortly.\"]]);\n\n  EXACT.set('Otras industrias', 'Other Industries');\n  EXACT.set('Contactanos', 'Contact us');\n\n  const EXACT_FOLDED = new Map();\n  EXACT.forEach((value, key) => EXACT_FOLDED.set(normalize(key).toLocaleLowerCase('es-MX'), value));\n\n  const PHRASES = [[\"Modernizaci\u00f3n de Sistemas de Control Obsoletos\",\"Modernization of Obsolete Control Systems\"],[\"Sistemas de Control Obsoletos\",\"Obsolete Control Systems\"],[\"con Controles Electr\u00f3nicos\",\"with Electronic Controls\"],[\"para Turbina de Vapor\",\"for Steam Turbines\"],[\"para Turbina de Gas\",\"for Gas Turbines\"],[\"Generaci\u00f3n El\u00e9ctrica (termo\/hidro\/ciclo combinado)\",\"Power Generation (thermal\/hydro\/combined cycle)\"],[\"Oil & Gas (refiner\u00eda, petroqu\u00edmica)\",\"Oil & Gas (refining, petrochemical)\"],[\"Cogeneraci\u00f3n y Ciclo Combinado\",\"Cogeneration and Combined Cycle\"],[\"Turbinas de Vapor\/Gas\",\"Steam\/Gas Turbines\"],[\"Subestaciones de Planta\",\"Plant Substations\"],[\"Generaci\u00f3n y Utilities\",\"Power Generation and Utilities\"],[\"Detecci\u00f3n de Gas y Fuego\",\"Gas and Fire Detection\"],[\"Agentes Limpios\",\"Clean Agents\"],[\"Sistemas de Puesta a Tierra\",\"Grounding Systems\"],[\"Centros de Control de Motores\",\"Motor Control Centers\"],[\"Distribuci\u00f3n El\u00e9ctrica Industrial\",\"Industrial Power Distribution\"],[\"Redes para an\u00e1lisis de informaci\u00f3n\",\"Networks for Information Analysis\"],[\"Monitoreo puntual de vibraciones\",\"Spot Vibration Monitoring\"],[\"Instalaci\u00f3n de sensores\",\"Sensor Installation\"],[\"Construcci\u00f3n Industrial\",\"Industrial Construction\"],[\"Cuartos de Control\",\"Control Rooms\"],[\"Canalizaciones y Charolas\",\"Conduits and Cable Trays\"],[\"Montaje de Generadores y Transformadores\",\"Generator and Transformer Installation\"],[\"Tendido de Cables\",\"Cable Laying\"],[\"Control autom\u00e1tico\",\"Automatic Control\"],[\"Reparto de carga\",\"Load Sharing\"],[\"Factor de Potencia\",\"Power Factor\"],[\"Calidad de Energ\u00eda\",\"Power Quality\"],[\"Ciberseguridad OT\",\"OT Cybersecurity\"],[\"An\u00e1lisis de Datos\",\"Data Analysis\"],[\"An\u00e1lisis de Vibraci\u00f3n\",\"Vibration Analysis\"],[\"Balanceo Din\u00e1mico\",\"Dynamic Balancing\"],[\"Tendencias y Alarmas\",\"Trends and Alarms\"],[\"Alarmas Audiovisuales\",\"Audio-visual Alarms\"],[\"Zonas Clasificadas\",\"Hazardous Areas\"],[\"Centrales Hidroel\u00e9ctricas\",\"Hydroelectric Power Plants\"],[\"Regulador autom\u00e1tico de voltaje\",\"Automatic Voltage Regulator\"],[\"Protecciones y Relevadores\",\"Protection and Relays\"],[\"Medici\u00f3n y comunicaci\u00f3n\",\"Measurement and Communications\"],[\"Sistemas de Medici\u00f3n\",\"Measurement Systems\"],[\"Sistemas de monitoreo\",\"Monitoring Systems\"],[\"Sistemas de protecci\u00f3n\",\"Protection Systems\"],[\"Sistemas de distribuci\u00f3n\",\"Distribution Systems\"],[\"Sistemas de control\",\"Control Systems\"],[\"Sistemas el\u00e9ctricos\",\"Electrical Systems\"],[\"Sistemas electr\u00f3nicos\",\"Electronic Systems\"],[\"Obra el\u00e9ctrica\",\"Electrical Works\"],[\"Obra civil\",\"Civil Works\"],[\"Montaje electromec\u00e1nico\",\"Electromechanical Installation\"],[\"Instalaci\u00f3n electromec\u00e1nica\",\"Electromechanical Installation\"],[\"Iluminaci\u00f3n industrial\",\"Industrial Lighting\"],[\"Cable el\u00e9ctrico\",\"Electrical Cable\"],[\"Cables el\u00e9ctricos\",\"Electrical Cables\"],[\"Tableros el\u00e9ctricos\",\"Electrical Panels\"],[\"Subestaciones el\u00e9ctricas\",\"Electrical Substations\"],[\"Equipo el\u00e9ctrico\",\"Electrical Equipment\"],[\"Equipos el\u00e9ctricos\",\"Electrical Equipment\"],[\"Generaci\u00f3n el\u00e9ctrica\",\"Power Generation\"],[\"Distribuci\u00f3n el\u00e9ctrica\",\"Power Distribution\"],[\"Infraestructura energ\u00e9tica\",\"Energy Infrastructure\"],[\"Eficiencia energ\u00e9tica\",\"Energy Efficiency\"],[\"Seguridad industrial\",\"Industrial Safety\"],[\"Mantenimiento preventivo\",\"Preventive Maintenance\"],[\"Mantenimiento correctivo\",\"Corrective Maintenance\"],[\"Mantenimiento predictivo\",\"Predictive Maintenance\"],[\"Control de velocidad\",\"Speed Control\"],[\"Control supervisorio\",\"Supervisory Control\"],[\"Flujo de carga\",\"Load Flow\"],[\"Cortocircuito\",\"Short Circuit\"],[\"Arco el\u00e9ctrico\",\"Arc Flash\"],[\"Pruebas de aislamiento\",\"Insulation Testing\"],[\"Pruebas de resistencia\",\"Resistance Testing\"],[\"Puesta en marcha\",\"Commissioning\"],[\"Fabricaci\u00f3n\",\"Manufacturing\"],[\"Modernizaci\u00f3n\",\"Modernization\"],[\"Automatizaci\u00f3n\",\"Automation\"],[\"Instrumentaci\u00f3n\",\"Instrumentation\"],[\"Comisionamiento\",\"Commissioning\"],[\"Configuraci\u00f3n\",\"Configuration\"],[\"Calibraci\u00f3n\",\"Calibration\"],[\"Diagn\u00f3stico\",\"Diagnostics\"],[\"Reparaci\u00f3n\",\"Repair\"],[\"Rehabilitaci\u00f3n\",\"Rehabilitation\"],[\"Supervisi\u00f3n\",\"Supervision\"],[\"Integraci\u00f3n\",\"Integration\"],[\"Instalaci\u00f3n\",\"Installation\"],[\"Construcci\u00f3n\",\"Construction\"],[\"Suministro\",\"Supply\"],[\"Ingenier\u00eda\",\"Engineering\"],[\"Capacitaci\u00f3n\",\"Training\"],[\"Entrenamiento\",\"Training\"],[\"Medici\u00f3n\",\"Measurement\"],[\"Monitoreo\",\"Monitoring\"],[\"Protecci\u00f3n\",\"Protection\"],[\"Detecci\u00f3n\",\"Detection\"],[\"Supresi\u00f3n\",\"Suppression\"],[\"Generaci\u00f3n\",\"Generation\"],[\"Distribuci\u00f3n\",\"Distribution\"],[\"Transmisi\u00f3n\",\"Transmission\"],[\"Subestaciones\",\"Substations\"],[\"Subestaci\u00f3n\",\"Substation\"],[\"Transformadores\",\"Transformers\"],[\"Transformador\",\"Transformer\"],[\"Generadores\",\"Generators\"],[\"Generador\",\"Generator\"],[\"Motogeneradores\",\"Motor Generators\"],[\"Variadores\",\"Drives\"],[\"Interruptores\",\"Circuit Breakers\"],[\"Relevadores\",\"Relays\"],[\"Controladores\",\"Controllers\"],[\"Actuadores\",\"Actuators\"],[\"Reguladores\",\"Regulators\"],[\"Gobernadores\",\"Governors\"],[\"Compresores\",\"Compressors\"],[\"Turbinas\",\"Turbines\"],[\"Motores\",\"Motors\"],[\"Gabinetes\",\"Enclosures\"],[\"Canalizaciones\",\"Conduits\"],[\"Charolas\",\"Cable Trays\"],[\"Protecciones\",\"Protection\"],[\"Soluciones\",\"Solutions\"],[\"Infraestructura\",\"Infrastructure\"],[\"Mantenimiento\",\"Maintenance\"],[\"Manufactura\",\"Manufacturing\"],[\"Ensamble\",\"Assembly\"],[\"Transporte\",\"Transportation\"],[\"Miner\u00eda\",\"Mining\"],[\"Metales\",\"Metals\"],[\"Petroqu\u00edmica\",\"Petrochemical\"],[\"Refiner\u00eda\",\"Refining\"],[\"Farmac\u00e9utica\",\"Pharmaceutical\"],[\"Qu\u00edmica\",\"Chemical\"],[\"Alimentos\",\"Food\"],[\"Bebidas\",\"Beverage\"],[\"Celulosa\",\"Pulp\"],[\"Saneamiento\",\"Sanitation\"],[\"Aguas residuales\",\"Wastewater\"],[\"Agua\",\"Water\"],[\"Vapor\",\"Steam\"],[\"Fuego\",\"Fire\"],[\"Espuma\",\"Foam\"],[\"Potencia\",\"Power\"],[\"Voltaje\",\"Voltage\"],[\"Velocidad\",\"Speed\"],[\"Excitaci\u00f3n\",\"Excitation\"],[\"Vibraciones\",\"Vibrations\"],[\"Vibraci\u00f3n\",\"Vibration\"],[\"Aislamiento\",\"Insulation\"],[\"Resistencia\",\"Resistance\"],[\"Arm\u00f3nicos\",\"Harmonics\"],[\"Coordinaci\u00f3n\",\"Coordination\"],[\"Selecci\u00f3n\",\"Selection\"],[\"Ajuste\",\"Setting\"],[\"Pruebas\",\"Testing\"],[\"Estudios\",\"Studies\"],[\"Dise\u00f1o\",\"Design\"],[\"Desarrollo\",\"Development\"],[\"Operaci\u00f3n\",\"Operation\"],[\"Aplicaciones\",\"Applications\"],[\"Aplicaci\u00f3n\",\"Application\"],[\"Disponibilidad\",\"Availability\"],[\"Descripci\u00f3n\",\"Description\"],[\"Especificaciones\",\"Specifications\"],[\"El\u00e9ctricos\",\"Electrical\"],[\"El\u00e9ctricas\",\"Electrical\"],[\"El\u00e9ctrico\",\"Electrical\"],[\"El\u00e9ctrica\",\"Electrical\"],[\"Electr\u00f3nicos\",\"Electronic\"],[\"Electr\u00f3nicas\",\"Electronic\"],[\"Electr\u00f3nico\",\"Electronic\"],[\"Electr\u00f3nica\",\"Electronic\"],[\"Mec\u00e1nicos\",\"Mechanical\"],[\"Mec\u00e1nicas\",\"Mechanical\"],[\"Mec\u00e1nico\",\"Mechanical\"],[\"Mec\u00e1nica\",\"Mechanical\"],[\"Industriales\",\"Industrial\"],[\"Industrial\",\"Industrial\"],[\"Autom\u00e1ticos\",\"Automatic\"],[\"Autom\u00e1ticas\",\"Automatic\"],[\"Autom\u00e1tico\",\"Automatic\"],[\"Autom\u00e1tica\",\"Automatic\"],[\"Especiales\",\"Special\"],[\"Especial\",\"Special\"],[\"Clasificadas\",\"Classified\"],[\"Predictivo\",\"Predictive\"],[\"Preventivo\",\"Preventive\"],[\"Correctivo\",\"Corrective\"],[\"Remoto\",\"Remote\"],[\"Alta Tensi\u00f3n\",\"High Voltage\"],[\"Media Tensi\u00f3n\",\"Medium Voltage\"],[\"Baja Tensi\u00f3n\",\"Low Voltage\"],[\"Alta tensi\u00f3n\",\"High voltage\"],[\"Media tensi\u00f3n\",\"Medium voltage\"],[\"Baja tensi\u00f3n\",\"Low voltage\"]].sort((a,b) => b[0].length - a[0].length);\n  const CONNECTORS = [\n    ['para','for'], ['con','with'], ['sin','without'], ['desde','from'],\n    ['hasta','to'], ['entre','between'], ['del','of the'], ['de la','of the'],\n    ['de los','of the'], ['de las','of the'], ['de','of'], ['y','and'], ['en','in']\n  ];\n\n  const SKIP = new Set(['SCRIPT','STYLE','NOSCRIPT','TEMPLATE','TEXTAREA','CODE','PRE','SVG','PATH']);\n  const ATTRS = [\n    'placeholder','title','aria-label','alt',\n    'data-caption-title','data-caption-text',\n    'data-diff-title','data-diff-text'\n  ];\n\n  function normalize(value){\n    return String(value == null ? '' : value).replace(\/\\u00a0\/g,' ').replace(\/\\s+\/g,' ').trim();\n  }\n  function escapeRegex(value){\n    return value.replace(\/[.*+?^${}()|[\\]\\\\]\/g,'\\\\$&');\n  }\n  function replaceTerm(text, source, target){\n    const wordLike = \/^[\\p{L}\\p{N}]\/u.test(source) && \/[\\p{L}\\p{N}]$\/u.test(source);\n    if(!wordLike){\n      const re = new RegExp(escapeRegex(source),'giu');\n      const next = text.replace(re,target);\n      return [next, next !== text];\n    }\n    const re = new RegExp('(^|[^\\\\p{L}\\\\p{N}])(' + escapeRegex(source) + ')(?=$|[^\\\\p{L}\\\\p{N}])','giu');\n    let changed = false;\n    const next = text.replace(re, function(_match, prefix){\n      changed = true;\n      return prefix + target;\n    });\n    return [next, changed];\n  }\n  function preserveOuterWhitespace(original, translated){\n    const left = (original.match(\/^\\s*\/) || [''])[0];\n    const right = (original.match(\/\\s*$\/) || [''])[0];\n    return left + translated + right;\n  }\n  function translateDynamicPatterns(value){\n    return value\n      .replace(\/\\bMostrando\\s+(\\d+)\\s+(?:\u00edtems|elementos)\\s+de\\s+(\\d+)\\b\/gi,'Showing $1 of $2 items')\n      .replace(\/\\bMostrando\\s+(\\d+)\\\/(\\d+)\\s+(?:\u00edtems|elementos)\\b\/gi,'Showing $1\/$2 items')\n      .replace(\/\\bIr al slide\\s+(\\d+)\\b\/gi,'Go to slide $1')\n      .replace(\/\\bIr al bloque\\s+(\\d+)\\b\/gi,'Go to block $1')\n      .replace(\/\\bIr al diferenciador\\s+(\\d+)\\b\/gi,'Go to differentiator $1')\n      .replace(\/\\bDiapositiva\\s+(\\d+)\\b\/gi,'Slide $1');\n  }\n  function translateText(original){\n    if(original == null) return original;\n    const raw = String(original);\n    const key = normalize(raw);\n    if(!key || key.length > 2200 || !\/[\\p{L}]\/u.test(key)) return raw;\n\n    const exact = EXACT.get(key) || EXACT_FOLDED.get(key.toLocaleLowerCase('es-MX'));\n    if(exact) return preserveOuterWhitespace(raw, exact);\n\n    let output = translateDynamicPatterns(key);\n    let strongChanges = output !== key ? 1 : 0;\n    PHRASES.forEach(function(pair){\n      const result = replaceTerm(output, pair[0], pair[1]);\n      output = result[0];\n      if(result[1]) strongChanges += 1;\n    });\n    if(strongChanges){\n      CONNECTORS.forEach(function(pair){\n        output = replaceTerm(output, pair[0], pair[1])[0];\n      });\n      output = output\n        .replace(\/\u00bf\/g,'')\n        .replace(\/\u00a1\/g,'')\n        .replace(\/\\s+([,.;:!?])\/g,'$1')\n        .replace(\/\\s{2,}\/g,' ')\n        .trim();\n      return preserveOuterWhitespace(raw, output);\n    }\n    return raw;\n  }\n  window.vmsTranslateText = translateText;\n\n  function shouldSkip(node){\n    const parent = node.nodeType === Node.ELEMENT_NODE ? node : node.parentElement;\n    if(!parent) return true;\n    if(SKIP.has(parent.tagName)) return true;\n    return !!parent.closest('[data-vms-no-translate]');\n  }\n  function translateTextNode(node){\n    if(shouldSkip(node)) return;\n    const before = node.nodeValue;\n    const after = translateText(before);\n    if(after !== before) node.nodeValue = after;\n  }\n  function translateElement(element){\n    if(!(element instanceof Element) || shouldSkip(element)) return;\n\n    if(element.tagName === 'OPTION' && !element.hasAttribute('value')){\n      element.setAttribute('value', normalize(element.textContent));\n    }\n    ATTRS.forEach(function(attr){\n      if(!element.hasAttribute(attr)) return;\n      const before = element.getAttribute(attr);\n      const after = translateText(before);\n      if(after !== before) element.setAttribute(attr, after);\n    });\n  }\n  function translateTree(root){\n    if(root.nodeType === Node.TEXT_NODE){\n      translateTextNode(root);\n      return;\n    }\n    if(!(root instanceof Element) && root !== document) return;\n    if(root instanceof Element) translateElement(root);\n\n    const walker = document.createTreeWalker(root, NodeFilter.SHOW_ELEMENT | NodeFilter.SHOW_TEXT);\n    let node;\n    while((node = walker.nextNode())){\n      if(node.nodeType === Node.TEXT_NODE) translateTextNode(node);\n      else translateElement(node);\n    }\n  }\n  function start(){\n    document.documentElement.lang = 'en-US';\n    translateTree(document.body);\n    if(document.title) document.title = normalize(translateText(document.title));\n\n    const observer = new MutationObserver(function(records){\n      records.forEach(function(record){\n        if(record.type === 'characterData'){\n          translateTextNode(record.target);\n          return;\n        }\n        if(record.type === 'attributes'){\n          translateElement(record.target);\n          return;\n        }\n        record.addedNodes.forEach(translateTree);\n      });\n    });\n    observer.observe(document.documentElement, {\n      subtree:true,\n      childList:true,\n      characterData:true,\n      attributes:true,\n      attributeFilter:ATTRS\n    });\n  }\n\n  \/\/ Existing page scripts register their DOMContentLoaded handlers first.\n  \/\/ Running on the next task lets them build every carousel\/filter safely.\n  if(document.readyState === 'loading'){\n    document.addEventListener('DOMContentLoaded', function(){ setTimeout(start,0); }, {once:true});\n  } else {\n    setTimeout(start,0);\n  }\n})();\n<\/script>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Industrial Electrical EPC Company in Mexico | VMS Energy \u2039 \u203a VMS Energy \u2022 EPC \u2022 Projects starting at MXN $1,000,000 High-value EPC engineering for Mexican industry We are the electrical and electromechanical EPC partner of Fortune 500 companies in Mexico. Nearly 20 years of experience. Five active ISO certifications. Request a Project Assessment View &#8230; <a title=\"HOME\" class=\"read-more\" href=\"https:\/\/vmsenergy.com\/en\/\" aria-label=\"Read more about INICIO\">Read more<\/a><\/p>","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"_acf_changed":false,"_joinchat":{"message_text":"\u00a1Hola! \ud83d\udc4b\n\u00bfEn qu\u00e9 podemos ayudarte?"},"footnotes":""},"class_list":["post-215","page","type-page","status-publish"],"acf":[],"_links":{"self":[{"href":"https:\/\/vmsenergy.com\/en\/wp-json\/wp\/v2\/pages\/215","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vmsenergy.com\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/vmsenergy.com\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/vmsenergy.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/vmsenergy.com\/en\/wp-json\/wp\/v2\/comments?post=215"}],"version-history":[{"count":5,"href":"https:\/\/vmsenergy.com\/en\/wp-json\/wp\/v2\/pages\/215\/revisions"}],"predecessor-version":[{"id":4479,"href":"https:\/\/vmsenergy.com\/en\/wp-json\/wp\/v2\/pages\/215\/revisions\/4479"}],"wp:attachment":[{"href":"https:\/\/vmsenergy.com\/en\/wp-json\/wp\/v2\/media?parent=215"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}