{"id":10800,"date":"2025-09-05T09:43:46","date_gmt":"2025-09-05T07:43:46","guid":{"rendered":"https:\/\/gurpea.com\/web25\/success-stories\/"},"modified":"2025-12-02T09:19:11","modified_gmt":"2025-12-02T08:19:11","slug":"success-stories","status":"publish","type":"page","link":"https:\/\/gurpea.com\/en\/success-stories\/","title":{"rendered":"Success stories"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"10800\" class=\"elementor elementor-10800 elementor-1699\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-95d8bf7 e-con-full e-flex e-con e-parent\" data-id=\"95d8bf7\" data-element_type=\"container\" data-e-type=\"container\" id=\"top\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f1737c1 elementor-widget-divider--view-line elementor-widget elementor-widget-divider\" data-id=\"f1737c1\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"divider.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-divider\">\n\t\t\t<span class=\"elementor-divider-separator\">\n\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-c2b7b54 e-flex e-con-boxed e-con e-child\" data-id=\"c2b7b54\" 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-6bd6f8e elementor-widget elementor-widget-heading\" data-id=\"6bd6f8e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">SUCCESS STORIES<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-db18744 elementor-align-center elementor-widget elementor-widget-button\" data-id=\"db18744\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"#elementor-action%3Aaction%3Dpopup%3Aopen%26settings%3DeyJpZCI6MTEyNjUsInRvZ2dsZSI6ZmFsc2V9\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Request a project assessment<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-eb3ab9b right elementor-widget-divider--view-line elementor-widget elementor-widget-divider\" data-id=\"eb3ab9b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"divider.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-divider\">\n\t\t\t<span class=\"elementor-divider-separator\">\n\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-11e23bb e-flex e-con-boxed e-con e-parent\" data-id=\"11e23bb\" 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-72816b0 elementor-widget elementor-widget-breadcrumbs\" data-id=\"72816b0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"breadcrumbs.default\">\n\t\t\t\t\t<p id=\"breadcrumbs\"><span><span><a href=\"https:\/\/gurpea.com\/en\/home\/\">Home<\/a><\/span><\/span><\/p>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-09f83d2 e-flex e-con-boxed e-con e-parent\" data-id=\"09f83d2\" data-element_type=\"container\" data-e-type=\"container\" id=\"scroll\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-758e5d2 e-con-full e-flex e-con e-child\" data-id=\"758e5d2\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-6fdbbe2 elementor-widget elementor-widget-text-editor\" data-id=\"6fdbbe2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>At Gurpea, we develop <span style=\"color: #c51928;\">customized<\/span> projects implementing the most <span style=\"color: #c51928;\">innovative<\/span> technologies and solutions in the field of <span style=\"color: #c51928;\">automation<\/span> and <br><span style=\"color: #c51928;\">industrial maintenance.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-d5cf6a3 e-con-full e-flex e-con e-child\" data-id=\"d5cf6a3\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-4a915ad elementor-widget__width-initial elementor-widget elementor-widget-text-editor\" data-id=\"4a915ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>We work for companies in various sectors, such as automation, aeronautics, pharmaceuticals, energy, and food.<\/p><p>All this multi-sectoral know-how acquired, and extrapolatable to any type of work, positions us as a strategic partner in the field of industrial engineering and maintenance.<\/p>\t\t\t\t\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<div class=\"elementor-element elementor-element-f3d1217 e-flex e-con-boxed e-con e-parent\" data-id=\"f3d1217\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-ab80cd3 e-con-full e-flex e-con e-child\" data-id=\"ab80cd3\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-3524337 e-con-full e-flex e-con e-child\" data-id=\"3524337\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-38d4d5d elementor-absolute elementor-widget elementor-widget-image\" data-id=\"38d4d5d\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;_position&quot;:&quot;absolute&quot;}\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"#\">\n\t\t\t\t\t\t\t<img decoding=\"async\" width=\"115\" height=\"120\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/Objeto-inteligente-vectorial-30.png\" class=\"attachment-large size-large wp-image-10802\" alt=\"\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-882396e elementor-absolute elementor-widget elementor-widget-image\" data-id=\"882396e\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;_position&quot;:&quot;absolute&quot;}\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"#\">\n\t\t\t\t\t\t\t<img decoding=\"async\" width=\"95\" height=\"100\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/Objeto-inteligente-vectorial-31.png\" class=\"attachment-large size-large wp-image-10803\" alt=\"\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9306f61 elementor-absolute elementor-widget elementor-widget-image\" data-id=\"9306f61\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;_position&quot;:&quot;absolute&quot;}\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"#\">\n\t\t\t\t\t\t\t<img decoding=\"async\" width=\"100\" height=\"100\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/Objeto-inteligente-vectorial-32.png\" class=\"attachment-large size-large wp-image-10804\" alt=\"\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9e2e77f elementor-widget elementor-widget-taxonomy-filter\" data-id=\"9e2e77f\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;selected_element&quot;:&quot;730a4bd&quot;,&quot;taxonomy&quot;:&quot;categoria-casos-de-exito&quot;,&quot;multiple_selection&quot;:&quot;no&quot;}\" data-widget_type=\"taxonomy-filter.default\">\n\t\t\t\t\t\t\t<search class=\"e-filter\" role=\"search\" data-base-url=\"https:\/\/gurpea.com\/en\/\" data-page-num=\"1\">\n\t\t\t\t\t\t\t<button class=\"e-filter-item\" data-filter=\"engineering\" aria-pressed=\"false\">Engineering<\/button>\n\t\t\t\t\t\t\t<button class=\"e-filter-item\" data-filter=\"aeronautics\" aria-pressed=\"false\">Aeronautics<\/button>\n\t\t\t\t\t\t\t<button class=\"e-filter-item\" data-filter=\"automotive\" aria-pressed=\"false\">Automotive<\/button>\n\t\t\t\t\t\t\t<button class=\"e-filter-item\" data-filter=\"construction\" aria-pressed=\"false\">Construction<\/button>\n\t\t\t\t\t\t\t<button class=\"e-filter-item\" data-filter=\"electrical\" aria-pressed=\"false\">Electrical<\/button>\n\t\t\t\t\t\t\t<button class=\"e-filter-item\" data-filter=\"food\" aria-pressed=\"false\">Food<\/button>\n\t\t\t\t\t\t\t<button class=\"e-filter-item\" data-filter=\"others\" aria-pressed=\"false\">Others<\/button>\n\t\t\t\t\t\t\t<button class=\"e-filter-item\" data-filter=\"pharmaceutical\" aria-pressed=\"false\">Pharmaceutical<\/button>\n\t\t\t\t\t\t\t<button class=\"e-filter-item\" data-filter=\"maintenance\" aria-pressed=\"false\">Maintenance<\/button>\n\t\t\t\t\t\t\t<button class=\"e-filter-item\" data-filter=\"actions\" aria-pressed=\"false\">Actions<\/button>\n\t\t\t\t\t\t\t<button class=\"e-filter-item\" data-filter=\"continuous-maintenance\" aria-pressed=\"false\">Continuous maintenance<\/button>\n\t\t\t\t\t\t\t<button class=\"e-filter-item\" data-filter=\"electrical-installations\" aria-pressed=\"false\">Electrical installations<\/button>\n\t\t\t\t\t\t\t<button class=\"e-filter-item\" data-filter=\"sat\" aria-pressed=\"false\">SAT<\/button>\n\t\t\t\n\t\t\t\t\t\t\t\t\t<button class=\"e-filter-item\" data-filter=\"__all\" aria-pressed=\"true\">\n\t\t\t\tAll\t\t\t<\/button>\n\t\t\t\t\t<\/search>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-2eed001 e-con-full e-flex e-con e-child\" data-id=\"2eed001\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-730a4bd elementor-widget__width-initial elementor-grid-3 elementor-grid-tablet-2 elementor-grid-mobile-1 elementor-widget elementor-widget-loop-grid\" data-id=\"730a4bd\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;template_id&quot;:11165,&quot;_skin&quot;:&quot;post&quot;,&quot;columns&quot;:&quot;3&quot;,&quot;columns_tablet&quot;:&quot;2&quot;,&quot;columns_mobile&quot;:&quot;1&quot;,&quot;edit_handle_selector&quot;:&quot;[data-elementor-type=\\&quot;loop-item\\&quot;]&quot;,&quot;row_gap&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;row_gap_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;row_gap_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]}}\" data-widget_type=\"loop-grid.post\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-loop-container elementor-grid\" role=\"list\">\n\t\t<style id=\"loop-dynamic-11165\">.e-loop-item-14459 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-14459 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_5379.jpg\");}<\/style><style id=\"loop-11165\">.elementor-11165 .elementor-element.elementor-element-e701ebc{--display:flex;--min-height:0px;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-11165 .elementor-element.elementor-element-e701ebc:not(.elementor-motion-effects-element-type-background), .elementor-11165 .elementor-element.elementor-element-e701ebc > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#EDEDED;}.elementor-11165 .elementor-element.elementor-element-bdda72c{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-11165 .elementor-element.elementor-element-77dc04c{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--padding-top:20px;--padding-bottom:0px;--padding-left:20px;--padding-right:0px;--position:absolute;top:0px;--z-index:999;}.elementor-11165 .elementor-element.elementor-element-77dc04c:not(.elementor-motion-effects-element-type-background), .elementor-11165 .elementor-element.elementor-element-77dc04c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF00;}body:not(.rtl) .elementor-11165 .elementor-element.elementor-element-77dc04c{right:0px;}body.rtl .elementor-11165 .elementor-element.elementor-element-77dc04c{left:0px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-11165 .elementor-element.elementor-element-1349963 img{width:100%;}.elementor-11165 .elementor-element.elementor-element-1349963{width:var( --container-widget-width, 7% );max-width:7%;--container-widget-width:7%;--container-widget-flex-grow:0;border-radius:1% 1% 1% 1%;}.elementor-11165 .elementor-element.elementor-element-c7830a7 img{width:100%;}.elementor-11165 .elementor-element.elementor-element-c7830a7{width:var( --container-widget-width, 7% );max-width:7%;--container-widget-width:7%;--container-widget-flex-grow:0;}.elementor-11165 .elementor-element.elementor-element-2239dfd img{width:100%;}.elementor-11165 .elementor-element.elementor-element-2239dfd{width:var( --container-widget-width, 7% );max-width:7%;--container-widget-width:7%;--container-widget-flex-grow:0;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-11165 .elementor-element.elementor-element-daaf9ff{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-11165 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .elementor-11165 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-11165 .elementor-element.elementor-element-e08d79c .elementor-wrapper{--video-aspect-ratio:1.77777;}.elementor-11165 .elementor-element.elementor-element-eb6d5ba{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:5px 5px;--row-gap:5px;--column-gap:5px;border-style:solid;--border-style:solid;border-width:0px 0px 1px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:1px;--border-left-width:0px;border-color:var( --e-global-color-text );--border-color:var( --e-global-color-text );--padding-top:10px;--padding-bottom:10px;--padding-left:20px;--padding-right:20px;}.elementor-11165 .elementor-element.elementor-element-c323b69 .elementor-heading-title{font-family:\"Inter\", Sans-serif;font-size:15px;font-weight:600;text-transform:capitalize;color:var( --e-global-color-text );}.elementor-11165 .elementor-element.elementor-element-c323b69{padding:0px 12px 0px 0px;border-style:solid;border-width:0px 1px 0px 0px;border-color:var( --e-global-color-text );}.elementor-11165 .elementor-element.elementor-element-30b3d63 .elementor-heading-title{font-family:\"Inter\", Sans-serif;font-size:15px;font-weight:600;text-transform:capitalize;}.elementor-11165 .elementor-element.elementor-element-30b3d63{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 5px;}.elementor-11165 .elementor-element.elementor-element-b3ffc83{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--padding-top:15px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-11165 .elementor-element.elementor-element-df2e302 .elementor-heading-title{font-family:\"Inter\", Sans-serif;font-size:16px;font-weight:400;color:var( --e-global-color-text );}.elementor-11165 .elementor-element.elementor-element-2ff03ad .elementor-heading-title{font-family:\"Inter\", Sans-serif;font-size:16px;font-weight:400;color:var( --e-global-color-text );}.elementor-widget-button .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );background-color:var( --e-global-color-accent );}.elementor-11165 .elementor-element.elementor-element-a6cb375 .elementor-button{font-family:\"Inter\", Sans-serif;font-size:14px;font-weight:500;fill:#B10C22;color:#B10C22;background-color:var( --e-global-color-secondary );border-radius:0px 0px 0px 0px;}.elementor-11165 .elementor-element.elementor-element-a6cb375 .elementor-button:hover, .elementor-11165 .elementor-element.elementor-element-a6cb375 .elementor-button:focus{color:var( --e-global-color-secondary );background-color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-11165 .elementor-element.elementor-element-a6cb375 .elementor-button:hover svg, .elementor-11165 .elementor-element.elementor-element-a6cb375 .elementor-button:focus svg{fill:var( --e-global-color-secondary );}.elementor-11165 .elementor-element.elementor-element-a6cb375{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 25px) 0px;}.elementor-widget-image-gallery .gallery-item .gallery-caption{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-11165 .elementor-element.elementor-element-b4e59e6 .gallery-item .gallery-caption{text-align:center;}@media(max-width:1024px){.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}}@media(max-width:767px){.elementor-11165 .elementor-element.elementor-element-77dc04c{--width:25%;--min-height:100%;}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}}\/* Start custom CSS for image, class: .elementor-element-c7830a7 *\/.elementor-11165 .elementor-element.elementor-element-c7830a7 {\n    cursor: pointer;\n}\/* End custom CSS *\/\n\/* Start custom CSS for image, class: .elementor-element-2239dfd *\/.elementor-11165 .elementor-element.elementor-element-2239dfd {\n    cursor: pointer;\n}\/* End custom CSS *\/\n\/* Start custom CSS for container, class: .elementor-element-daaf9ff *\/.e-loop-item *:not(.elementor-motion-effects-element-type-background),\r\n.e-loop-item * > .elementor-motion-effects-container > .elementor-motion-effects-layer {\r\n    background-position: center;\r\n    background-repeat: no-repeat;\r\n    background-size: cover;\r\n}\/* End custom CSS *\/\n\/* Start custom CSS for heading, class: .elementor-element-df2e302 *\/.elementor-11165 .elementor-element.elementor-element-df2e302 {\n    display: block !important;\n}\/* End custom CSS *\/<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-14459 post-14459 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-engineering categoria-casos-de-exito-pharmaceutical\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">f9fa437f-23e6-40e8-b94e-a94792134695<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Automated Sorting and Palletizing Sorter<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/automated-sorting-and-palletizing-sorter\/\">\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Pharmaceutical<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Automated Sorting and Palletizing Sorter<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>CINFA<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/automated-sorting-and-palletizing-sorter\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-1' class='gallery galleryid-14459 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQ0NTgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNlwvTlo4XzUzNzkuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_5379.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_5379-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQ0NjYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNlwvTlo4XzUzOTcuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_5397.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_5397-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQ0NjcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNlwvTlo4XzU1MzIuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_5532.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_5532-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQ0NjgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNlwvTlo4XzU1NTQuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_5554.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_5554-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQ0NjksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNlwvTlo4XzU2NDMuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_5643.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_5643-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQ0NzAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNlwvTlo4XzU2ODguanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_5688.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_5688-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQ0NzEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNlwvTlo4XzU3MzguanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_5738.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_5738-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQ0NzIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNlwvTlo4XzU4MzAuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_5830.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_5830-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQ0NzMsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNlwvTlo4XzU5MzEuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_5931.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_5931-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQ0NzQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNlwvTlo4XzU5ODcuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_5987.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_5987-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQ0NzUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNlwvTlo4XzYwNjEuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_6061.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_6061-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQ0NzYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNlwvTlo4XzYwODYuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_6086.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_6086-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQ0NzcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNlwvTlo4XzYyNjcuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_6267.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_6267-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQ0NzgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNlwvTlo4XzYzOTEuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_6391.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_6391-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQ0NzksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNlwvTlo4XzY1MjguanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_6528.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_6528-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQ0ODAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNlwvTlo4XzY1MzMuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_6533.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_6533-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQ0ODEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNlwvTlo4XzY1ODkuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_6589.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/06\/NZ8_6589-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-14340 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-14340 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/04\/10.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-14340 post-14340 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-continuous-maintenance categoria-casos-de-exito-maintenance\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/youtu.be\/2MVp6dc07vA\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">b00d61fb-a8bf-4acf-b075-3b4f7deee9b4<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">14 years of outsourced maintenance with SNA Europe Basque Country<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/14-years-of-outsourced-maintenance-with-sna-europe-basque-country\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/04\/42.-Preview-Caso-Exito-SNA-EUROPE-VITORIA-E-IRUN.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Maintenance<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Continuous maintenance<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">14 years of outsourced maintenance with SNA Europe Basque Country<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>SNA EUROPE (VITORIA - IR\u00daN)<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/14-years-of-outsourced-maintenance-with-sna-europe-basque-country\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-2' class='gallery galleryid-14340 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQzNTMsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNFwvMTkucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/04\/19.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/04\/19-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQzNTIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNFwvMTgucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/04\/18.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/04\/18-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQzNTEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNFwvMTcucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/04\/17.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/04\/17-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQzNTAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNFwvMTUucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/04\/15.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/04\/15-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQzNDksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNFwvMTQucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/04\/14.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/04\/14-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQzNDgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNFwvMTIucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/04\/12.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/04\/12-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQzNDcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNFwvMTEucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/04\/11.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/04\/11-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQzNDYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNFwvMTAtMS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/04\/10-1.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/04\/10-1-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQzNDUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNFwvOS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/04\/9.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/04\/9-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQzNDQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNFwvOC5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/04\/8.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/04\/8-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQzNDMsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNFwvNi5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/04\/6.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/04\/6-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQzNDIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNFwvMy5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/04\/3.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/04\/3-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQzNDEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNFwvMi5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/04\/2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/04\/2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQzMzksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNFwvMTAucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/04\/10.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/04\/10-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-14248 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-14248 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/02\/4.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-14248 post-14248 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-continuous-maintenance categoria-casos-de-exito-maintenance categoria-casos-de-exito-mantenimiento\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Turnkey Management of maintenance for CINFA&#8217;s facilities in the Shipping, Automated Warehouse, and GAE Production areas.<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/turnkey-management-of-maintenance-for-cinfas-facilities-in-the-shipping-automated-warehouse-and-gae-production-areas\/\">\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Maintenance, Mantenimiento<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Continuous maintenance<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Turnkey Management of maintenance for CINFA&#8217;s facilities in the Shipping, Automated Warehouse, and GAE Production areas.<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>CINFA<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/turnkey-management-of-maintenance-for-cinfas-facilities-in-the-shipping-automated-warehouse-and-gae-production-areas\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-3' class='gallery galleryid-14248 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQyMzEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wMlwvNC5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/02\/4.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/02\/4-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQyMzQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wMlwvNS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/02\/5.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/02\/5-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQyNTYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wMlwvMTEucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/02\/11.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/02\/11-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQyMjksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wMlwvMy5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/02\/3.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/02\/3-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQyNTcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wMlwvMS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/02\/1.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/02\/1-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQyNTEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wMlwvNi5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/02\/6.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/02\/6-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQyNTIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wMlwvNy5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/02\/7.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/02\/7-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQyNTMsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wMlwvOC5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/02\/8.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/02\/8-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQyNTQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wMlwvOS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/02\/9.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/02\/9-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQyNTUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wMlwvMTAucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/02\/10.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/02\/10-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-14165 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-14165 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/Apriete-y-pegado-de-molduras-Gurpea-Principal1.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-14165 post-14165 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-automotive categoria-casos-de-exito-engineering\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">c961dbff-9363-41e0-b9c2-f0d7c8a223b1<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Fastening and gluing of chassis and door moldings.<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/fastening-and-gluing-of-chassis-and-door-moldings\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/41.-Preview-Caso-Exito-VW-Apriete-y-pegado-de-molduras-puertas-Provisional.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Automotive<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Fastening and gluing of chassis and door moldings.<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong> Volkswagen<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/fastening-and-gluing-of-chassis-and-door-moldings\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-4' class='gallery galleryid-14165 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQxNjYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wMVwvQXByaWV0ZS15LXBlZ2Fkby1kZS1tb2xkdXJhcy1HdXJwZWEtMi5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/Apriete-y-pegado-de-molduras-Gurpea-2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/Apriete-y-pegado-de-molduras-Gurpea-2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"apriete de molduras en chasis y puertas\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQxNjcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wMVwvQXByaWV0ZS15LXBlZ2Fkby1kZS1tb2xkdXJhcy1HdXJwZWEtMy1zY2FsZWQucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/Apriete-y-pegado-de-molduras-Gurpea-3-scaled.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/Apriete-y-pegado-de-molduras-Gurpea-3-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQxNjgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wMVwvQXByaWV0ZS15LXBlZ2Fkby1kZS1tb2xkdXJhcy1HdXJwZWEtNC5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/Apriete-y-pegado-de-molduras-Gurpea-4.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/Apriete-y-pegado-de-molduras-Gurpea-4-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQxNjksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wMVwvQXByaWV0ZS15LXBlZ2Fkby1kZS1tb2xkdXJhcy1HdXJwZWEtNS1zY2FsZWQucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/Apriete-y-pegado-de-molduras-Gurpea-5-scaled.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/Apriete-y-pegado-de-molduras-Gurpea-5-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon portrait'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQxNzAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wMVwvQXByaWV0ZS15LXBlZ2Fkby1kZS1tb2xkdXJhcy1HdXJwZWEtNi1lMTc2OTc3NTA3MjQ2MS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/Apriete-y-pegado-de-molduras-Gurpea-6-e1769775072461.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/Apriete-y-pegado-de-molduras-Gurpea-6-e1769775072461-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQxNzEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wMVwvUmVuZGVyLUFwcmlldGUteS1wZWdhZG8tbW9sZHVyYXMtR3VycGVhLTEtc2NhbGVkLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/Render-Apriete-y-pegado-molduras-Gurpea-1-scaled.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/Render-Apriete-y-pegado-molduras-Gurpea-1-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-14082 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-14082 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/ChatGPT-Image-27-ene-2026-15_20_42.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-14082 post-14082 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-automotive categoria-casos-de-exito-engineering\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">416b9a01-8efb-4f83-93b0-f5cb74c1f6d4<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">PGD installation for the application of adhesives and the insertion of panoramic sunroofs.<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/pgd-installation-for-the-application-of-adhesives-and-the-insertion-of-panoramic-sunroofs\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/40.-Preview-Caso-Exito-VW-PGD-Provisional.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Automotive<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">PGD installation for the application of adhesives and the insertion of panoramic sunroofs.<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong> Volkswagen<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/pgd-installation-for-the-application-of-adhesives-and-the-insertion-of-panoramic-sunroofs\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-5' class='gallery galleryid-14082 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQwODMsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wMVwvUEdEMS1zY2FsZWQucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/PGD1-scaled.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/PGD1-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQwODQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wMVwvUEdEMi5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/PGD2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/PGD2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQwODUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wMVwvUEdEMy5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/PGD3.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/PGD3-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQwODYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wMVwvUEdENC5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/PGD4.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/PGD4-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-13933 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-13933 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/DSC_9705_sinfondo.jpg\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-13933 post-13933 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-electrical categoria-casos-de-exito-engineering\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.youtube.com\/watch?v=v9QzfHE6KbQ\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">6c764ca4-867f-46d5-8eba-4eb949fe91e2<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Automated electronic component assembly cell<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/automated-electronic-component-assembly-cell\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/39.-Preview-Caso-Exito-SCHNEIDER-Linea-de-montaje-automatizada.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Electrical<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Automated electronic component assembly cell<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>SCHNEIDER ELECTRIC<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/automated-electronic-component-assembly-cell\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-6' class='gallery galleryid-13933 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTM5MzQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wMVwvRFNDXzAwNDkuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/DSC_0049.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/DSC_0049-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTM5MzUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wMVwvRFNDXzg1MDIuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/DSC_8502.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/DSC_8502-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTM5MzYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wMVwvRFNDXzg1NDMuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/DSC_8543.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/DSC_8543-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTM5MzcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wMVwvRFNDXzg1NjUuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/DSC_8565.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/DSC_8565-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTM5MzgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wMVwvRFNDXzg5MjkuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/DSC_8929.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/DSC_8929-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTM5MzksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wMVwvRFNDXzkwNDQuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/DSC_9044.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/DSC_9044-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTM5MzIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wMVwvRFNDXzk3MDVfc2luZm9uZG8uanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/DSC_9705_sinfondo.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/DSC_9705_sinfondo-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTM5NDEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wMVwvV2hhdHNBcHAtSW1hZ2UtMjAyNS0wNi0wNC1hdC0wOS4zNy4wNi1lMTc2OTA5MjQyODI5Mi5qcGVnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/WhatsApp-Image-2025-06-04-at-09.37.06-e1769092428292.jpeg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2026\/01\/WhatsApp-Image-2025-06-04-at-09.37.06-e1769092428292-150x150.jpeg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-12218 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-12218 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/11.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-12218 post-12218 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-engineering categoria-casos-de-exito-others\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.youtube.com\/watch?v=zUgmF3r9BBc\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">bc019e5d-0b06-4b4d-982b-70d67431be07<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Paper reel palletizing cell<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/paper-reel-palletizing-cell\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/38-Preview-Caso-Exito-Celula-de-paletizado-de-bobinas-de-papel.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Others<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Paper reel palletizing cell<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>Itasa<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/paper-reel-palletizing-cell\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-7' class='gallery galleryid-12218 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTIyMTksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMVwvMS0yLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/1-2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/1-2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/1-2-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/1-2-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/1-2.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTIyMjAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMVwvMS0zLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/1-3.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/1-3-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/1-3-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/1-3-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/1-3.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTIyMjEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMVwvMi0yLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/2-2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/2-2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/2-2-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/2-2-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/2-2.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTIyMjIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMVwvMy0yLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/3-2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/3-2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/3-2-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/3-2-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/3-2.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTIyMjMsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMVwvNC0xLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/4-1.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/4-1-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/4-1-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/4-1-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/4-1.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTIyMjQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMVwvNS0yLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/5-2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/5-2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/5-2-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/5-2-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/5-2.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTIyMjUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMVwvNi0xLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/6-1.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/6-1-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/6-1-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/6-1-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/6-1.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTIyMjYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMVwvNy0yLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/7-2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/7-2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/7-2-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/7-2-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/7-2.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTIyMjcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMVwvOC5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/8.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/8-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/8-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/8-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/8.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTIyMjgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMVwvOS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/9.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/9-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/9-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/9-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/9.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTIyMTcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMVwvMTEucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/11.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/11-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/11-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/11-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/11.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTIyMjksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMVwvMTIucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/12.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/12-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/12-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/12-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/12.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTIyMzAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMVwvMTMucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/13.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/13-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/13-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/13-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/13.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11324 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11324 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Z91_3218.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11324 post-11324 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-automotive categoria-casos-de-exito-engineering\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.youtube.com\/watch?v=J5rIF-c01MY\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">32f961cc-da3c-49e4-990a-0c207aa42439<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Molding cutting and die-cutting machine.<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/molding-cutting-and-die-cutting-machine\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/28-Preview-Caso-Exito-Maquina-corte-y-troquelado-de-molduras.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Automotive<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Molding cutting and die-cutting machine.<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>REHAU M\u00c9XICO<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/molding-cutting-and-die-cutting-machine\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-8' class='gallery galleryid-11324 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzMjcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvcmVoYXUtbWV4LWNvcnRlLW1vbGR1cmFzLXZhLWNhc29zLWRlLWV4aXRvLWludGVyaW9yLTM1MHgzNTBfNi0xLTEucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-corte-molduras-va-casos-de-exito-interior-350x350_6-1-1.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-corte-molduras-va-casos-de-exito-interior-350x350_6-1-1-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-corte-molduras-va-casos-de-exito-interior-350x350_6-1-1-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-corte-molduras-va-casos-de-exito-interior-350x350_6-1-1-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-corte-molduras-va-casos-de-exito-interior-350x350_6-1-1.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzMjgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvcmVoYXUtbWV4LWNvcnRlLW1vbGR1cmFzLXZhLWNhc29zLWRlLWV4aXRvLWludGVyaW9yLTM1MHgzNTBfNy0ucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-corte-molduras-va-casos-de-exito-interior-350x350_7-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-corte-molduras-va-casos-de-exito-interior-350x350_7--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-corte-molduras-va-casos-de-exito-interior-350x350_7--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-corte-molduras-va-casos-de-exito-interior-350x350_7--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-corte-molduras-va-casos-de-exito-interior-350x350_7-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzMjksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvcmVoYXUtbWV4LXZlcmZpY2FjaW9uLW1vbGR1cmFzLXZhLWNhc29zLWRlLWV4aXRvLWludGVyaW9yLTM1MHgzNTAtXzAucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350-_0.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350-_0-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350-_0-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350-_0-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350-_0.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzMzAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvcmVoYXUtbWV4LWNvcnRlLW1vbGR1cmFzLXZhLWNhc29zLWRlLWV4aXRvLWludGVyaW9yLTM1MHgzNTBfMi0ucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-corte-molduras-va-casos-de-exito-interior-350x350_2-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-corte-molduras-va-casos-de-exito-interior-350x350_2--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-corte-molduras-va-casos-de-exito-interior-350x350_2--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-corte-molduras-va-casos-de-exito-interior-350x350_2--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-corte-molduras-va-casos-de-exito-interior-350x350_2-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzMzEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvcmVoYXUtbWV4LWNvcnRlLW1vbGR1cmFzLXZhLWNhc29zLWRlLWV4aXRvLWludGVyaW9yLTM1MHgzNTBfMy0ucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-corte-molduras-va-casos-de-exito-interior-350x350_3-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-corte-molduras-va-casos-de-exito-interior-350x350_3--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-corte-molduras-va-casos-de-exito-interior-350x350_3--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-corte-molduras-va-casos-de-exito-interior-350x350_3--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-corte-molduras-va-casos-de-exito-interior-350x350_3-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzMzIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvcmVoYXUtbWV4LWNvcnRlLW1vbGR1cmFzLXZhLWNhc29zLWRlLWV4aXRvLWludGVyaW9yLTM1MHgzNTBfNC0ucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-corte-molduras-va-casos-de-exito-interior-350x350_4-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-corte-molduras-va-casos-de-exito-interior-350x350_4--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-corte-molduras-va-casos-de-exito-interior-350x350_4--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-corte-molduras-va-casos-de-exito-interior-350x350_4--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-corte-molduras-va-casos-de-exito-interior-350x350_4-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzMzMsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvMS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/1.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/1-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/1-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/1-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/1.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11335 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11335 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Z91_3579.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11335 post-11335 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-automotive categoria-casos-de-exito-engineering\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.youtube.com\/watch?v=eEvUnlipkds\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">16b470a6-3789-4815-8e23-f81aca1afc84<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Molding checking machine with artificial vision<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/molding-checking-machine-with-artificial-vision\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/27-Preview-Caso-Exito-Maquina-verificacion-de-Molduras-con-VA.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Automotive<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Molding checking machine with artificial vision<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong> REHAU M\u00c9XICO<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/molding-checking-machine-with-artificial-vision\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-9' class='gallery galleryid-11335 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzMzgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvcmVoYXUtbWV4LXZlcmZpY2FjaW9uLW1vbGR1cmFzLXZhLWNhc29zLWRlLWV4aXRvLWludGVyaW9yLTM1MHgzNTBfNS0ucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_5-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_5--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_5--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_5--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_5-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzMzksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvcmVoYXUtbWV4LXZlcmZpY2FjaW9uLW1vbGR1cmFzLXZhLWNhc29zLWRlLWV4aXRvLWludGVyaW9yLTM1MHgzNTBfNC0ucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_4-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_4--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_4--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_4--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_4-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzNDAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvcmVoYXUtbWV4LXZlcmZpY2FjaW9uLW1vbGR1cmFzLXZhLWNhc29zLWRlLWV4aXRvLWludGVyaW9yLTM1MHgzNTBfMy0ucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_3-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_3--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_3--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_3--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_3-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzNDEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvcmVoYXUtbWV4LXZlcmZpY2FjaW9uLW1vbGR1cmFzLXZhLWNhc29zLWRlLWV4aXRvLWludGVyaW9yLTM1MHgzNTBfMi0ucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_2-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_2--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_2--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_2--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_2-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzNDIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvcmVoYXUtbWV4LXZlcmZpY2FjaW9uLW1vbGR1cmFzLXZhLWNhc29zLWRlLWV4aXRvLWludGVyaW9yLTM1MHgzNTAtLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzNDMsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvcmVoYXUtbWV4LXZlcmZpY2FjaW9uLW1vbGR1cmFzLXZhLWNhc29zLWRlLWV4aXRvLWludGVyaW9yLTM1MHgzNTBfOS0ucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_9-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_9--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_9--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_9--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_9-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzNDQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvcmVoYXUtbWV4LXZlcmZpY2FjaW9uLW1vbGR1cmFzLXZhLWNhc29zLWRlLWV4aXRvLWludGVyaW9yLTM1MHgzNTBfOC0ucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_8-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_8--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_8--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_8--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_8-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzNDUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvcmVoYXUtbWV4LXZlcmZpY2FjaW9uLW1vbGR1cmFzLXZhLWNhc29zLWRlLWV4aXRvLWludGVyaW9yLTM1MHgzNTBfNy0ucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_7-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_7--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_7--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_7--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/rehau-mex-verficacion-molduras-va-casos-de-exito-interior-350x350_7-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzNDYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvMS0xLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/1-1.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/1-1-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/1-1-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/1-1-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/1-1.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11347 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11347 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/NZ8_9983.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11347 post-11347 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-automotive categoria-casos-de-exito-engineering\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.youtube.com\/watch?v=oOnf2Hxn5jI\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">8d22753c-8aa2-47d3-8533-38a4d74667bc<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Cell bushing: introduction, pressing, marking, laser and datamix reading.<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/bushing-cell\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/26-Preview-Caso-Exito-Celula-Bushing-introduccion-prensado.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Automotive<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Cell bushing: introduction, pressing, marking, laser and datamix reading.<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>CONFIDENTIAL<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/bushing-cell\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-10' class='gallery galleryid-11347 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzNTAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvZ2VzdGFtcC1heWNsaWZmZS1jYXNvcy1kZS1leGl0by1pbnRlcmlvci0zNTB4MzUwXzctXzAucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/gestamp-aycliffe-casos-de-exito-interior-350x350_7-_0.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/gestamp-aycliffe-casos-de-exito-interior-350x350_7-_0-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/gestamp-aycliffe-casos-de-exito-interior-350x350_7-_0-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/gestamp-aycliffe-casos-de-exito-interior-350x350_7-_0-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/gestamp-aycliffe-casos-de-exito-interior-350x350_7-_0.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzNTEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvZ2VzdGFtcC1heWNsaWZmZS1jYXNvcy1kZS1leGl0by1pbnRlcmlvci0zNTB4MzUwXzUtXzAucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/gestamp-aycliffe-casos-de-exito-interior-350x350_5-_0.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/gestamp-aycliffe-casos-de-exito-interior-350x350_5-_0-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/gestamp-aycliffe-casos-de-exito-interior-350x350_5-_0-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/gestamp-aycliffe-casos-de-exito-interior-350x350_5-_0-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/gestamp-aycliffe-casos-de-exito-interior-350x350_5-_0.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzNTIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvZ2VzdGFtcC1heWNsaWZmZS1jYXNvcy1kZS1leGl0by1pbnRlcmlvci0zNTB4MzUwXzQtXzAucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/gestamp-aycliffe-casos-de-exito-interior-350x350_4-_0.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/gestamp-aycliffe-casos-de-exito-interior-350x350_4-_0-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/gestamp-aycliffe-casos-de-exito-interior-350x350_4-_0-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/gestamp-aycliffe-casos-de-exito-interior-350x350_4-_0-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/gestamp-aycliffe-casos-de-exito-interior-350x350_4-_0.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzNTMsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvMS0yLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/1-2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/1-2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/1-2-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/1-2-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/1-2.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11354 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11354 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Foto-dossier.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11354 post-11354 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-automotive categoria-casos-de-exito-engineering\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.youtube.com\/watch?v=rQZ-u_OU7F8\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">86a30225-00e8-470f-a67e-601b99946ce7<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Adaptation to electric models: follower carriage, pedal installation, weatherstripping and VIN vision.<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/adaptation-electric-models-follower-carriage-installationpedaleras-burlete-y-vision\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/25-Preview-Caso-Exito-Adecuacion-a-modelos-electricos-carro-seguidor.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Automotive<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Adaptation to electric models: follower carriage, pedal installation, weatherstripping and VIN vision.<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>VW<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/adaptation-electric-models-follower-carriage-installationpedaleras-burlete-y-vision\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-11' class='gallery galleryid-11354 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzNTcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvYWRlY3VhY2lvbi1tZWItY2Fycm8tc2VndWlkb3ItY2Fzb3MtZGUtZXhpdG8taW50ZXJpb3ItMzUweDM1MF8zLS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/adecuacion-meb-carro-seguidor-casos-de-exito-interior-350x350_3-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/adecuacion-meb-carro-seguidor-casos-de-exito-interior-350x350_3--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/adecuacion-meb-carro-seguidor-casos-de-exito-interior-350x350_3--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/adecuacion-meb-carro-seguidor-casos-de-exito-interior-350x350_3--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/adecuacion-meb-carro-seguidor-casos-de-exito-interior-350x350_3-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzNTgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvYWRlY3VhY2lvbi1tZWItY2Fycm8tc2VndWlkb3ItY2Fzb3MtZGUtZXhpdG8taW50ZXJpb3ItMzUweDM1MF8yLS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/adecuacion-meb-carro-seguidor-casos-de-exito-interior-350x350_2-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/adecuacion-meb-carro-seguidor-casos-de-exito-interior-350x350_2--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/adecuacion-meb-carro-seguidor-casos-de-exito-interior-350x350_2--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/adecuacion-meb-carro-seguidor-casos-de-exito-interior-350x350_2--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/adecuacion-meb-carro-seguidor-casos-de-exito-interior-350x350_2-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzNTksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvYWRlY3VhY2lvbi1tZWItY2Fycm8tc2VndWlkb3ItY2Fzb3MtZGUtZXhpdG8taW50ZXJpb3ItMzUweDM1MF8xLS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/adecuacion-meb-carro-seguidor-casos-de-exito-interior-350x350_1-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/adecuacion-meb-carro-seguidor-casos-de-exito-interior-350x350_1--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/adecuacion-meb-carro-seguidor-casos-de-exito-interior-350x350_1--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/adecuacion-meb-carro-seguidor-casos-de-exito-interior-350x350_1--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/adecuacion-meb-carro-seguidor-casos-de-exito-interior-350x350_1-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzNjAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvYWRlY3VhY2lvbi1tZWItY2Fycm8tc2VndWlkb3ItY2Fzb3MtZGUtZXhpdG8taW50ZXJpb3ItMzUweDM1MF82LS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/adecuacion-meb-carro-seguidor-casos-de-exito-interior-350x350_6-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/adecuacion-meb-carro-seguidor-casos-de-exito-interior-350x350_6--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/adecuacion-meb-carro-seguidor-casos-de-exito-interior-350x350_6--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/adecuacion-meb-carro-seguidor-casos-de-exito-interior-350x350_6--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/adecuacion-meb-carro-seguidor-casos-de-exito-interior-350x350_6-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzNjEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvYWRlY3VhY2lvbi1tZWItY2Fycm8tc2VndWlkb3ItY2Fzb3MtZGUtZXhpdG8taW50ZXJpb3ItMzUweDM1MF81LS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/adecuacion-meb-carro-seguidor-casos-de-exito-interior-350x350_5-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/adecuacion-meb-carro-seguidor-casos-de-exito-interior-350x350_5--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/adecuacion-meb-carro-seguidor-casos-de-exito-interior-350x350_5--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/adecuacion-meb-carro-seguidor-casos-de-exito-interior-350x350_5--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/adecuacion-meb-carro-seguidor-casos-de-exito-interior-350x350_5-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzNjIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvMS0zLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/1-3.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/1-3-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/1-3-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/1-3-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/1-3.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11363 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11363 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/imgi_8_foto-ppal.-casos-de-exito-copckpit-330x480_0.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11363 post-11363 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-automotive categoria-casos-de-exito-engineering\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.youtube.com\/watch?v=kE7sHm_qPvQ\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">bd657905-ec04-4c8d-a024-259d569ef2e5<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Adaptation to electric models: cockpit manipulator.<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/adaptation-electric-models-cockpit-manipulator\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/24-Preview-Caso-Exito-Adecuacion-a-modelos-electricos-manipulador-cockpit.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Automotive<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Adaptation to electric models: cockpit manipulator.<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>VW<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/adaptation-electric-models-cockpit-manipulator\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-12' class='gallery galleryid-11363 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzNjYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvY29ja3BpdC1jYXNvcy1kZS1leGl0by1pbnRlcmlvci0zNTB4MzUwXzctLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_7-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_7--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_7--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_7--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_7-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzNjcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvY29ja3BpdC1jYXNvcy1kZS1leGl0by1pbnRlcmlvci0zNTB4MzUwXzYtLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_6-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_6--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_6--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_6--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_6-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzNjgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvY29ja3BpdC1jYXNvcy1kZS1leGl0by1pbnRlcmlvci0zNTB4MzUwXzUtLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_5-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_5--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_5--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_5--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_5-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzNjksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvY29ja3BpdC1jYXNvcy1kZS1leGl0by1pbnRlcmlvci0zNTB4MzUwXzQtLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_4-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_4--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_4--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_4--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_4-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzNzAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvY29ja3BpdC1jYXNvcy1kZS1leGl0by1pbnRlcmlvci0zNTB4MzUwXzMtLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_3-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_3--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_3--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_3--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_3-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzNzEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvY29ja3BpdC1jYXNvcy1kZS1leGl0by1pbnRlcmlvci0zNTB4MzUwXzItLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_2-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_2--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_2--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_2--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_2-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzNzIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvY29ja3BpdC1jYXNvcy1kZS1leGl0by1pbnRlcmlvci0zNTB4MzUwXy0ucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzNzMsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvY29ja3BpdC1jYXNvcy1kZS1leGl0by1pbnRlcmlvci0zNTB4MzUwLS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzNzQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvY29ja3BpdC1jYXNvcy1kZS1leGl0by1pbnRlcmlvci0zNTB4MzUwXzktLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_9-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_9--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_9--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_9--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/cockpit-casos-de-exito-interior-350x350_9-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzNzUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvMS00LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/1-4.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/1-4-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/1-4-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/1-4-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/1-4.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11376 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11376 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Principal-Dosieres-1000X700.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11376 post-11376 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-automotive categoria-casos-de-exito-engineering\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.youtube.com\/watch?v=2bI1w7-ZfKo\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">78eed926-5815-4f28-9b7d-f88d08960848<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Adaptation to electric models: supply and placement of wheels<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/adaptation-electric-models-supply-and-fitting-wheels\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/23-Preview-Caso-Exito-Adecuacion-a-modelos-electricos-colocacion-de-ruedas.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Automotive<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Adaptation to electric models: supply and placement of wheels<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong> VW<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/adaptation-electric-models-supply-and-fitting-wheels\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-13' class='gallery galleryid-11376 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzNzksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvaW50ZXJpb3Jlcy12dy1zdW1pbmlzdHJvLXktY29sb2NhY2lvbi1ydWVkYXMtY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF81LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_5.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_5-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_5-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_5-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_5.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzODAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvaW50ZXJpb3Jlcy12dy1zdW1pbmlzdHJvLXktY29sb2NhY2lvbi1ydWVkYXMtY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF80LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_4.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_4-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_4-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_4-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_4.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzODEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvaW50ZXJpb3Jlcy12dy1zdW1pbmlzdHJvLXktY29sb2NhY2lvbi1ydWVkYXMtY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF8zLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_3.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_3-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_3-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_3-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_3.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzODIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvaW50ZXJpb3Jlcy12dy1zdW1pbmlzdHJvLXktY29sb2NhY2lvbi1ydWVkYXMtY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF8yLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_2-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_2-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_2.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzODMsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvaW50ZXJpb3Jlcy12dy1zdW1pbmlzdHJvLXktY29sb2NhY2lvbi1ydWVkYXMtY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF8xLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_1.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_1-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_1-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_1-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_1.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzODQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvaW50ZXJpb3Jlcy12dy1zdW1pbmlzdHJvLXktY29sb2NhY2lvbi1ydWVkYXMtY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF84LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_8.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_8-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_8-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_8-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_8.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzODUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvaW50ZXJpb3Jlcy12dy1zdW1pbmlzdHJvLXktY29sb2NhY2lvbi1ydWVkYXMtY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF83LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_7.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_7-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_7-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_7-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/interiores-vw-suministro-y-colocacion-ruedas-casos-de-exito-350x350_7.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzODYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8wOVwvMS01LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/1-5.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/1-5-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/1-5-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/1-5-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/1-5.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11387 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11387 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_3-.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11387 post-11387 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-automotive categoria-casos-de-exito-engineering\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.youtube.com\/watch?v=2SY_h2bCDsQ\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">f2f1193c-1dc2-413a-b91e-10c31ceff736<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Engraved frame for smallbev emergencies (electrical)<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/engraved-frame-smallbev-emergencies-electrical\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/22-Preview-Caso-Exito-Grabado-Bastidor-Emergencia-Small-Bev-1.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Automotive<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Engraved frame for smallbev emergencies (electrical)<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>SEAT<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/engraved-frame-smallbev-emergencies-electrical\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-14' class='gallery galleryid-11387 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzOTAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8taW50ZXJpb3ItXy12aW4tZW1lcmdlbmNpYS1zbWFsbGJldi0zNTB4MzUwXzgtLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_8-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_8--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_8--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_8--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_8-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzOTEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8taW50ZXJpb3ItXy12aW4tZW1lcmdlbmNpYS1zbWFsbGJldi0zNTB4MzUwXzctLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_7-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_7--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_7--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_7--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_7-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzOTIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8taW50ZXJpb3ItXy12aW4tZW1lcmdlbmNpYS1zbWFsbGJldi0zNTB4MzUwXzYtLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_6-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_6--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_6--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_6--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_6-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzOTMsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8taW50ZXJpb3ItXy12aW4tZW1lcmdlbmNpYS1zbWFsbGJldi0zNTB4MzUwXzUtLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_5-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_5--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_5--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_5--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_5-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzOTQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8taW50ZXJpb3ItXy12aW4tZW1lcmdlbmNpYS1zbWFsbGJldi0zNTB4MzUwXzQtLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_4-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_4--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_4--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_4--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_4-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzOTUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8taW50ZXJpb3ItXy12aW4tZW1lcmdlbmNpYS1zbWFsbGJldi0zNTB4MzUwXzMtMS0yLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_3-1-2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_3-1-2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_3-1-2-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_3-1-2-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_3-1-2.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzOTYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8taW50ZXJpb3ItXy12aW4tZW1lcmdlbmNpYS1zbWFsbGJldi0zNTB4MzUwXzItLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_2-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_2--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_2--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_2--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_2-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzOTcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8taW50ZXJpb3ItXy12aW4tZW1lcmdlbmNpYS1zbWFsbGJldi0zNTB4MzUwXzEtLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_1-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_1--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_1--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_1--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-_-vin-emergencia-smallbev-350x350_1-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTEzOTgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11399 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11399 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_6-_0.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11399 post-11399 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-automotive categoria-casos-de-exito-engineering\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.youtube.com\/watch?app=desktop&#038;v=mMzWBBiaO5o\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">08e642d7-52e3-4d05-a8e0-8840c5abc4b7<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Die-cutting machine + logo welding + headlight bolting<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/die-cutting-machine-logo-welding-screwed-headlights\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/21-Preview-Caso-Exito-Maquina-Troquelado-y-soldadura-APS-PLA-y-LOGO.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Automotive<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Die-cutting machine + logo welding + headlight bolting<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/die-cutting-machine-logo-welding-screwed-headlights\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-15' class='gallery galleryid-11399 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0MDEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc21wLW1hcXVpbmEtdHJvcXVlbGFkby15LXNvbGRhZHVyYS1sb2dvLXNwYS1jYXNvcy1kZS1leGl0by1pbnRlcmlvci0zNTB4MzUwXzEwLV8wLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_10-_0.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_10-_0-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_10-_0-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_10-_0-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_10-_0.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0MDIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc21wLW1hcXVpbmEtdHJvcXVlbGFkby15LXNvbGRhZHVyYS1sb2dvLXNwYS1jYXNvcy1kZS1leGl0by1pbnRlcmlvci0zNTB4MzUwXzktXzAucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_9-_0.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_9-_0-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_9-_0-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_9-_0-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_9-_0.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0MDMsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc21wLW1hcXVpbmEtdHJvcXVlbGFkby15LXNvbGRhZHVyYS1sb2dvLXNwYS1jYXNvcy1kZS1leGl0by1pbnRlcmlvci0zNTB4MzUwXzctXzAucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_7-_0.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_7-_0-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_7-_0-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_7-_0-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_7-_0.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0MDQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc21wLW1hcXVpbmEtdHJvcXVlbGFkby15LXNvbGRhZHVyYS1sb2dvLXNwYS1jYXNvcy1kZS1leGl0by1pbnRlcmlvci0zNTB4MzUwXzYtXzAtMi5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_6-_0-2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_6-_0-2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_6-_0-2-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_6-_0-2-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_6-_0-2.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0MDUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc21wLW1hcXVpbmEtdHJvcXVlbGFkby15LXNvbGRhZHVyYS1sb2dvLXNwYS1jYXNvcy1kZS1leGl0by1pbnRlcmlvci0zNTB4MzUwXzUtXzAucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_5-_0.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_5-_0-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_5-_0-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_5-_0-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_5-_0.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0MDYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc21wLW1hcXVpbmEtdHJvcXVlbGFkby15LXNvbGRhZHVyYS1sb2dvLXNwYS1jYXNvcy1kZS1leGl0by1pbnRlcmlvci0zNTB4MzUwXzMtXzAucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_3-_0.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_3-_0-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_3-_0-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_3-_0-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_3-_0.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0MDcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc21wLW1hcXVpbmEtdHJvcXVlbGFkby15LXNvbGRhZHVyYS1sb2dvLXNwYS1jYXNvcy1kZS1leGl0by1pbnRlcmlvci0zNTB4MzUwXzItXzAucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_2-_0.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_2-_0-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_2-_0-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_2-_0-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_2-_0.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0MDgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMS0xLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-1.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-1-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-1-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-1-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-1.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11409 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11409 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_1-.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11409 post-11409 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-automotive categoria-casos-de-exito-engineering\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.youtube.com\/watch?v=mMzWBBiaO5o\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">11782e32-db84-49cb-a3ca-9b280d361932<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Aps-Pla die-cutting and welding machine and logo<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/drilling-and-welding-machine-aps-plad-and-logo-vehicle-bumper\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/21-Preview-Caso-Exito-Maquina-Troquelado-y-soldadura-APS-PLA-y-LOGO.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Automotive<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Aps-Pla die-cutting and welding machine and logo<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/drilling-and-welding-machine-aps-plad-and-logo-vehicle-bumper\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-16' class='gallery galleryid-11409 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0MTIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc21wLW1hcXVpbmEtdHJvcXVlbGFkby15LXNvbGRhZHVyYS1sb2dvLXNwYS1jYXNvcy1kZS1leGl0by1pbnRlcmlvci0zNTB4MzUwXzEtMS0yLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_1-1-2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_1-1-2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_1-1-2-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_1-1-2-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_1-1-2.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0MTMsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc21wLW1hcXVpbmEtdHJvcXVlbGFkby15LXNvbGRhZHVyYS1sb2dvLXNwYS1jYXNvcy1kZS1leGl0by1pbnRlcmlvci0zNTB4MzUwXzEwLS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_10-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_10--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_10--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_10--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_10-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0MTQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc21wLW1hcXVpbmEtdHJvcXVlbGFkby15LXNvbGRhZHVyYS1sb2dvLXNwYS1jYXNvcy1kZS1leGl0by1pbnRlcmlvci0zNTB4MzUwXzktLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_9-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_9--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_9--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_9--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_9-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0MTUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc21wLW1hcXVpbmEtdHJvcXVlbGFkby15LXNvbGRhZHVyYS1sb2dvLXNwYS1jYXNvcy1kZS1leGl0by1pbnRlcmlvci0zNTB4MzUwXzgtLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_8-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_8--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_8--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_8--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_8-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0MTYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc21wLW1hcXVpbmEtdHJvcXVlbGFkby15LXNvbGRhZHVyYS1sb2dvLXNwYS1jYXNvcy1kZS1leGl0by1pbnRlcmlvci0zNTB4MzUwXzctLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_7-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_7--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_7--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_7--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_7-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0MTcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc21wLW1hcXVpbmEtdHJvcXVlbGFkby15LXNvbGRhZHVyYS1sb2dvLXNwYS1jYXNvcy1kZS1leGl0by1pbnRlcmlvci0zNTB4MzUwXzYtLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_6-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_6--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_6--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_6--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_6-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0MTgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc21wLW1hcXVpbmEtdHJvcXVlbGFkby15LXNvbGRhZHVyYS1sb2dvLXNwYS1jYXNvcy1kZS1leGl0by1pbnRlcmlvci0zNTB4MzUwXzUtLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_5-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_5--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_5--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_5--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_5-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0MTksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc21wLW1hcXVpbmEtdHJvcXVlbGFkby15LXNvbGRhZHVyYS1sb2dvLXNwYS1jYXNvcy1kZS1leGl0by1pbnRlcmlvci0zNTB4MzUwXzQtLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_4-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_4--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_4--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_4--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-maquina-troquelado-y-soldadura-logo-spa-casos-de-exito-interior-350x350_4-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0MjAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMS0yLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-2-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-2-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-2.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11421 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11421 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_1.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11421 post-11421 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-automotive categoria-casos-de-exito-engineering\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.youtube.com\/watch?v=mltyCBNZ3OQ\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">7e0e0973-9442-4141-a640-933e53e0ef21<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Cell for adhesive, clipping and screwing with machine vision<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/adhesive-bonding-clipping-and-screwing-cell-artificial-vision\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/20-Preview-Caso-Exito-Celula-Adhesivado-clipado-y-atronillado-con-VA.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Automotive<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Cell for adhesive, clipping and screwing with machine vision<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/adhesive-bonding-clipping-and-screwing-cell-artificial-vision\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-17' class='gallery galleryid-11421 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0MjQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc21wLWNlbHVsYS1jYXNvcy1kZS1leGl0by0zNTB4MzUwXzEwLS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_10-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_10--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_10--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_10--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_10-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0MjUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc21wLWNlbHVsYS1jYXNvcy1kZS1leGl0by0zNTB4MzUwXzktLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_9-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_9--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_9--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_9--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_9-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0MjYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc21wLWNlbHVsYS1jYXNvcy1kZS1leGl0by0zNTB4MzUwXzgtLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_8-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_8--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_8--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_8--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_8-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0MjcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc21wLWNlbHVsYS1jYXNvcy1kZS1leGl0by0zNTB4MzUwXzctLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_7-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_7--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_7--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_7--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_7-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0MjgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc21wLWNlbHVsYS1jYXNvcy1kZS1leGl0by0zNTB4MzUwXzYtLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_6-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_6--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_6--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_6--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_6-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0MjksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc21wLWNlbHVsYS1jYXNvcy1kZS1leGl0by0zNTB4MzUwXzUtLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_5-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_5--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_5--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_5--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_5-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0MzAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc21wLWNlbHVsYS1jYXNvcy1kZS1leGl0by0zNTB4MzUwXzQucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_4.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_4-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_4-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_4-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_4.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0MzEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc21wLWNlbHVsYS1jYXNvcy1kZS1leGl0by0zNTB4MzUwXzMucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_3.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_3-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_3-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_3-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_3.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0MzIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc21wLWNlbHVsYS1jYXNvcy1kZS1leGl0by0zNTB4MzUwXzIucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_2-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_2-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_2.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0MzMsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc21wLWNlbHVsYS1jYXNvcy1kZS1leGl0by0zNTB4MzUwXzEtMi5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_1-2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_1-2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_1-2-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_1-2-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_1-2.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0MzQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc21wLWNlbHVsYS1jYXNvcy1kZS1leGl0by0zNTB4MzUwX3JlbmRlci00LS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_render-4-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_render-4--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_render-4--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_render-4--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_render-4-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0MzUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc21wLWNlbHVsYS1jYXNvcy1kZS1leGl0by0zNTB4MzUwX3JlbmRlci0zLS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_render-3-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_render-3--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_render-3--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_render-3--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_render-3-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0MzYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc21wLWNlbHVsYS1jYXNvcy1kZS1leGl0by0zNTB4MzUwX3JlbmRlci0yLS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_render-2-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_render-2--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_render-2--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_render-2--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_render-2-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0MzcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc21wLWNlbHVsYS1jYXNvcy1kZS1leGl0by0zNTB4MzUwX3JlbmRlci0xLS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_render-1-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_render-1--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_render-1--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_render-1--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_render-1-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0MzgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc21wLWNlbHVsYS1jYXNvcy1kZS1leGl0by0zNTB4MzUwX2NhYmV6YWwtcmVuZGVyLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_cabezal-render.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_cabezal-render-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_cabezal-render-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_cabezal-render-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_cabezal-render.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0MzksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc21wLWNlbHVsYS1jYXNvcy1kZS1leGl0by0zNTB4MzUwXzEzLS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_13-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_13--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_13--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_13--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_13-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0NDAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc21wLWNlbHVsYS1jYXNvcy1kZS1leGl0by0zNTB4MzUwXzEyLS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_12-.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_12--150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_12--150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_12--300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/smp-celula-casos-de-exito-350x350_12-.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0NDEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMS0zLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-3.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-3-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-3-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-3-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-3.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11442 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11442 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/foto-ppal.-casos-de-exito-trasporte-de-alimentos330x480.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11442 post-11442 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-engineering categoria-casos-de-exito-food\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">291d3f65-4c23-4ef2-bc10-43ad59229ab7<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Food transport &#8211; orbital roller automation<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/food-transport-automation-orbital-rollers\/\">\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Food<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Food transport &#8211; orbital roller automation<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/food-transport-automation-orbital-rollers\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-18' class='gallery galleryid-11442 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0NDQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvdHJhbnNwb3J0ZS1hbGltZW50b3Nfb3JiaXRhbGVzLWNhc29zLWRlLWV4aXRvLTM1MHgzNTBfMy5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/transporte-alimentos_orbitales-casos-de-exito-350x350_3.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/transporte-alimentos_orbitales-casos-de-exito-350x350_3-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/transporte-alimentos_orbitales-casos-de-exito-350x350_3-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/transporte-alimentos_orbitales-casos-de-exito-350x350_3-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/transporte-alimentos_orbitales-casos-de-exito-350x350_3.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0NDUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvdHJhbnNwb3J0ZS1hbGltZW50b3Nfb3JiaXRhbGVzLWNhc29zLWRlLWV4aXRvLTM1MHgzNTBfMi5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/transporte-alimentos_orbitales-casos-de-exito-350x350_2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/transporte-alimentos_orbitales-casos-de-exito-350x350_2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/transporte-alimentos_orbitales-casos-de-exito-350x350_2-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/transporte-alimentos_orbitales-casos-de-exito-350x350_2-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/transporte-alimentos_orbitales-casos-de-exito-350x350_2.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0NDYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvdHJhbnNwb3J0ZS1hbGltZW50b3Nfb3JiaXRhbGVzLWNhc29zLWRlLWV4aXRvLTM1MHgzNTBfMS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/transporte-alimentos_orbitales-casos-de-exito-350x350_1.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/transporte-alimentos_orbitales-casos-de-exito-350x350_1-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/transporte-alimentos_orbitales-casos-de-exito-350x350_1-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/transporte-alimentos_orbitales-casos-de-exito-350x350_1-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/transporte-alimentos_orbitales-casos-de-exito-350x350_1.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0NDcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvdHJhbnNwb3J0ZS1hbGltZW50b3Nfb3JiaXRhbGVzLWNhc29zLWRlLWV4aXRvLTM1MHgzNTBfNC5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/transporte-alimentos_orbitales-casos-de-exito-350x350_4.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/transporte-alimentos_orbitales-casos-de-exito-350x350_4-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/transporte-alimentos_orbitales-casos-de-exito-350x350_4-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/transporte-alimentos_orbitales-casos-de-exito-350x350_4-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/transporte-alimentos_orbitales-casos-de-exito-350x350_4.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11449 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11449 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/foto-ppal.-vw-calibres-casos-de-exito-330x480-1.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11449 post-11449 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-automotive categoria-casos-de-exito-engineering\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Dimensional control gauges for car bodies<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/dimensional-control-gauges-bodyworks\/\">\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Automotive<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Dimensional control gauges for car bodies<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>VW<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/dimensional-control-gauges-bodyworks\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-19' class='gallery galleryid-11449 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0NTIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2FsaWJyZXMtMzUweDM1MF8yLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_2-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_2-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_2.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0NTMsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2FsaWJyZXMtMzUweDM1MF8xLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_1.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_1-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_1-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_1-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_1.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0NTQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2FsaWJyZXMtY2Fzby1leGl0by1pbnRlcmlvcmVzLTM1MHgzNTBfMTIucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-caso-exito-interiores-350x350_12.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-caso-exito-interiores-350x350_12-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-caso-exito-interiores-350x350_12-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-caso-exito-interiores-350x350_12-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-caso-exito-interiores-350x350_12.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0NTUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2FsaWJyZXMtY2Fzby1leGl0by1pbnRlcmlvcmVzLTM1MHgzNTBfMTEucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-caso-exito-interiores-350x350_11.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-caso-exito-interiores-350x350_11-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-caso-exito-interiores-350x350_11-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-caso-exito-interiores-350x350_11-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-caso-exito-interiores-350x350_11.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0NTYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2FsaWJyZXMtY2Fzby1leGl0by1pbnRlcmlvcmVzLTM1MHgzNTBfMTAucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-caso-exito-interiores-350x350_10.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-caso-exito-interiores-350x350_10-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-caso-exito-interiores-350x350_10-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-caso-exito-interiores-350x350_10-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-caso-exito-interiores-350x350_10.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0NTcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2FsaWJyZXMtMzUweDM1MF85LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_9.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_9-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_9-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_9-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_9.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0NTgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2FsaWJyZXMtMzUweDM1MF84LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_8.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_8-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_8-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_8-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_8.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0NTksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2FsaWJyZXMtMzUweDM1MF83LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_7.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_7-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_7-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_7-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_7.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0NjAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2FsaWJyZXMtMzUweDM1MF82LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_6.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_6-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_6-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_6-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_6.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0NjEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2FsaWJyZXMtMzUweDM1MF81LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_5.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_5-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_5-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_5-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_5.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0NjIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2FsaWJyZXMtMzUweDM1MF80LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_4.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_4-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_4-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_4-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/calibres-350x350_4.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0NjMsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMS01LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-5.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-5-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-5-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-5-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-5.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11464 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11464 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_11.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11464 post-11464 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-automotive categoria-casos-de-exito-engineering\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.youtube.com\/watch?v=JQTdcB4Y6vU\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">27a6de3e-2629-468f-a0d9-e973882e09e2<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Machine vision for door verification<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/machine-vision-door-vision\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/19-Preview-Caso-Exito-Vision-Artificial-verificacion-de-puertas.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Automotive<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Machine vision for door verification<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>VW<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/machine-vision-door-vision\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-20' class='gallery galleryid-11464 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0NjYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvbmVvLXZ3LXZpc2lvbi1wdWVydGFzLWNhc29zLWRlLWV4aXRvLTM1MHgzNTBfNS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_5.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_5-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_5-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_5-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_5.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0NjcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvbmVvLXZ3LXZpc2lvbi1wdWVydGFzLWNhc29zLWRlLWV4aXRvLTM1MHgzNTBfNC5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_4.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_4-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_4-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_4-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_4.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0NjgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvbmVvLXZ3LXZpc2lvbi1wdWVydGFzLWNhc29zLWRlLWV4aXRvLTM1MHgzNTBfMy5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_3.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_3-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_3-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_3-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_3.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0NjksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvbmVvLXZ3LXZpc2lvbi1wdWVydGFzLWNhc29zLWRlLWV4aXRvLTM1MHgzNTBfMi5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_2-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_2-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_2.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0NzAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvbmVvLXZ3LXZpc2lvbi1wdWVydGFzLWNhc29zLWRlLWV4aXRvLTM1MHgzNTBfMS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_1.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_1-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_1-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_1-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_1.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0NzEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvbmVvLXZ3LXZpc2lvbi1wdWVydGFzLWNhc29zLWRlLWV4aXRvLTM1MHgzNTBfMTMucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_13.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_13-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_13-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_13-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_13.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0NzIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvbmVvLXZ3LXZpc2lvbi1wdWVydGFzLWNhc29zLWRlLWV4aXRvLTM1MHgzNTBfMTIucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_12.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_12-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_12-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_12-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_12.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0NzMsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvbmVvLXZ3LXZpc2lvbi1wdWVydGFzLWNhc29zLWRlLWV4aXRvLTM1MHgzNTBfMTEucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_11.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_11-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_11-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_11-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_11.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0NzQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvbmVvLXZ3LXZpc2lvbi1wdWVydGFzLWNhc29zLWRlLWV4aXRvLTM1MHgzNTBfMTAucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_10.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_10-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_10-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_10-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_10.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0NzUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvbmVvLXZ3LXZpc2lvbi1wdWVydGFzLWNhc29zLWRlLWV4aXRvLTM1MHgzNTBfOS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_9.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_9-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_9-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_9-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_9.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0NzYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvbmVvLXZ3LXZpc2lvbi1wdWVydGFzLWNhc29zLWRlLWV4aXRvLTM1MHgzNTBfOC5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_8.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_8-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_8-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_8-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_8.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0NzcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvbmVvLXZ3LXZpc2lvbi1wdWVydGFzLWNhc29zLWRlLWV4aXRvLTM1MHgzNTBfNy5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_7.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_7-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_7-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_7-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/neo-vw-vision-puertas-casos-de-exito-350x350_7.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0NzgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMS02LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-6.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-6-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-6-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-6-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-6.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11480 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11480 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/foto-ppal.-gkn-casos-de-exito-330x480-1.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11480 post-11480 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-automotive categoria-casos-de-exito-engineering\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">1ff30581-de07-435e-b158-998fcdb35975<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">circlip test bench<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/circlip-stretched-test-bench\/\">\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Automotive<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">circlip test bench<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>GKN<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/circlip-stretched-test-bench\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-21' class='gallery galleryid-11480 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0ODIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF81XzAucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_5_0.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_5_0-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_5_0-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_5_0-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_5_0.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0ODMsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF8zXzAucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_3_0.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_3_0-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_3_0-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_3_0-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_3_0.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0ODQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF8yXzAucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_2_0.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_2_0-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_2_0-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_2_0-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_2_0.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0ODUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF8xXzAucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_1_0.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_1_0-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_1_0-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_1_0-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_1_0.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0ODYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF84LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_8.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_8-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_8-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_8-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_8.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0ODcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF83XzAucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_7_0.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_7_0-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_7_0-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_7_0-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_7_0.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0ODgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMS03LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-7.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-7-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-7-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-7-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-7.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11489 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11489 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/foto-ppal.-seat-casos-de-exito-330x480-1.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11489 post-11489 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-automotive categoria-casos-de-exito-engineering\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.youtube.com\/watch?v=bwQ7u-hEgaA\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">76558dc2-cb8a-40a8-9bb9-d25a1dab7d18<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Retrofit engraved trivalent automatic frame<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/rivalent-automatic-engraving-frame-retrofit\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/6-Preview-Caso-Exito-Estacion-de-Grabado-Bastidor-Automatico-con-robot.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Automotive<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Retrofit engraved trivalent automatic frame<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>SEAT<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/rivalent-automatic-engraving-frame-retrofit\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-22' class='gallery galleryid-11489 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0OTEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF80LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_4.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_4-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_4-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_4-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_4.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0OTIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF8zLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_3.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_3-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_3-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_3-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_3.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0OTMsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF8yLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_2-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_2-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_2.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0OTQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF8xLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_1.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_1-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_1-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_1-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_1.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0OTUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF82LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_6.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_6-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_6-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_6-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_6.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0OTYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMS04LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-8.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-8-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-8-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-8-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-8.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11497 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11497 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/foto-ppal.-agil-pack-casos-de-exito-330x480-1.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11497 post-11497 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-actions categoria-casos-de-exito-maintenance\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Machine relocation, assembly and adaptations<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/relocation-machines-assembly-and-electrical-adjustments\/\">\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Maintenance<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Actions<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Machine relocation, assembly and adaptations<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>AGIL PACKAGING SYSTEMS<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/relocation-machines-assembly-and-electrical-adjustments\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-23' class='gallery galleryid-11497 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE0OTksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF9hZ2lsLXBhY2stNS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-5.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-5-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-5-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-5-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-5.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1MDAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF9hZ2lsLXBhY2stNC5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-4.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-4-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-4-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-4-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-4.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1MDEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF9hZ2lsLXBhY2stMy5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-3.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-3-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-3-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-3-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-3.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1MDIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF9hZ2lsLXBhY2stMi5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-2-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-2-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-2.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1MDMsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF9hZ2lsLXBhY2stMS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-1.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-1-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-1-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-1-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-1.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1MDQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF9hZ2lsLXBhY2stOC5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-8.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-8-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-8-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-8-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-8.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1MDUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF9hZ2lsLXBhY2stNy5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-7.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-7-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-7-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-7-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_agil-pack-7.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1MDYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMS05LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-9.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-9-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-9-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-9-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-9.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11507 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11507 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/foto-ppal.-casos-de-exito-330x480-1.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11507 post-11507 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-electrical-installations categoria-casos-de-exito-maintenance\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.youtube.com\/watch?v=aQ6HrNiwlPE\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Electrical installation &#8211; high-end construction<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/electrical-installation-high-end-construction\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/18-Preview-Caso-Exito-Instalacion-Electrica-Construccion-alta-gama.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Maintenance<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Electrical installations<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Electrical installation &#8211; high-end construction<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>BISEL NAVARRA<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/electrical-installation-high-end-construction\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-24' class='gallery galleryid-11507 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1MTAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF9iaXNlbC0zcG5nLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-3png.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-3png-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-3png-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-3png-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-3png.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1MTEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF9iaXNlbC0ycG5nLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-2png.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-2png-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-2png-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-2png-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-2png.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1MTIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF9iaXNlbC0xLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-1.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-1-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-1-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-1-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-1.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1MTMsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF9iaXNlbC0xMy5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-13.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-13-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-13-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-13-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-13.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1MTQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF9iaXNlbC0xMi5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-12.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-12-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-12-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-12-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-12.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1MTUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF9iaXNlbC0xMS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-11.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-11-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-11-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-11-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-11.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1MTYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF9iaXNlbC0xMC5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-10.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-10-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-10-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-10-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-10.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1MTcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF9iaXNlbC05LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-9.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-9-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-9-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-9-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-9.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1MTgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF9iaXNlbC04LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-8.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-8-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-8-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-8-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-8.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1MTksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF9iaXNlbC03LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-7.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-7-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-7-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-7-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-7.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1MjAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF9iaXNlbC02LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-6.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-6-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-6-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-6-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-6.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1MjEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8tMzUweDM1MF9iaXNlbC01LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-5.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-5-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-5-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-5-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-350x350_bisel-5.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1MjIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMS0xMC5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-10.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-10-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-10-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-10-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-10.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11523 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11523 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-350x350_el-caserio-2.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11523 post-11523 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-maintenance categoria-casos-de-exito-sat\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Outsourcing of multidisciplinary SAT team<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/outsourcing-multidisciplinary-sat-team\/\">\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Maintenance<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">SAT<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Outsourcing of multidisciplinary SAT team<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>THE HAMLET<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/outsourcing-multidisciplinary-sat-team\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-25' class='gallery galleryid-11523 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1MjUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8taW50ZXJpb3ItMzUweDM1MF9lbC1jYXNlcmlvLTQucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-350x350_el-caserio-4.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-350x350_el-caserio-4-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-350x350_el-caserio-4-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-350x350_el-caserio-4-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-350x350_el-caserio-4.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1MjYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8taW50ZXJpb3ItMzUweDM1MF9lbC1jYXNlcmlvLTMucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-350x350_el-caserio-3.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-350x350_el-caserio-3-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-350x350_el-caserio-3-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-350x350_el-caserio-3-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-350x350_el-caserio-3.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1MjcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvY2Fzb3MtZGUtZXhpdG8taW50ZXJpb3ItMzUweDM1MF9lbC1jYXNlcmlvLTIucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-350x350_el-caserio-2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-350x350_el-caserio-2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-350x350_el-caserio-2-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-350x350_el-caserio-2-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/casos-de-exito-interior-350x350_el-caserio-2.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1MjgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMS0xMS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-11.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-11-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-11-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-11-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-11.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11529 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11529 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-12.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11529 post-11529 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-continuous-maintenance categoria-casos-de-exito-maintenance\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Addition of 7 specialized electromechanical technicians<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/incorporation-7-specialized-electromechanical-equipment\/\">\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Maintenance<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Continuous maintenance<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Addition of 7 specialized electromechanical technicians<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>PLASTIGAUR<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/incorporation-7-specialized-electromechanical-equipment\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-26' class='gallery galleryid-11529 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1MzEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvcGxhc3RpZ2F1ci1jYXNvcy1kZS1leGl0by0zNTB4MzUwMi0xLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/plastigaur-casos-de-exito-350x3502-1.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/plastigaur-casos-de-exito-350x3502-1-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/plastigaur-casos-de-exito-350x3502-1-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/plastigaur-casos-de-exito-350x3502-1-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/plastigaur-casos-de-exito-350x3502-1.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1MzIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMS0xMi5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-12.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-12-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"Incorporaci\u00f3n 7 electromec\u00e1nicos especializados\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-12-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-12-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-12.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11533 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11533 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/accelormital_casos-de-exito-350x350_7.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11533 post-11533 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-actions categoria-casos-de-exito-maintenance\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Adaptation of processes to rd1215<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/adaptation-processes-rd1215\/\">\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Maintenance<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Actions<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Adaptation of processes to rd1215<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>ARCELOR MITTAL<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/adaptation-processes-rd1215\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-27' class='gallery galleryid-11533 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1MzUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvYWNjZWxvcm1pdGFsX2Nhc29zLWRlLWV4aXRvLTM1MHgzNTBfNS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/accelormital_casos-de-exito-350x350_5.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/accelormital_casos-de-exito-350x350_5-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/accelormital_casos-de-exito-350x350_5-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/accelormital_casos-de-exito-350x350_5-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/accelormital_casos-de-exito-350x350_5.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1MzYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvYWNjZWxvcm1pdGFsX2Nhc29zLWRlLWV4aXRvLTM1MHgzNTBfNC5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/accelormital_casos-de-exito-350x350_4.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/accelormital_casos-de-exito-350x350_4-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/accelormital_casos-de-exito-350x350_4-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/accelormital_casos-de-exito-350x350_4-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/accelormital_casos-de-exito-350x350_4.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1MzcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvYWNjZWxvcm1pdGFsX2Nhc29zLWRlLWV4aXRvLTM1MHgzNTBfMy5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/accelormital_casos-de-exito-350x350_3.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/accelormital_casos-de-exito-350x350_3-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"Adaptaci\u00f3n de los procesos a la rd1215\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/accelormital_casos-de-exito-350x350_3-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/accelormital_casos-de-exito-350x350_3-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/accelormital_casos-de-exito-350x350_3.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1MzgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvYWNjZWxvcm1pdGFsX2Nhc29zLWRlLWV4aXRvLTM1MHgzNTBfMi5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/accelormital_casos-de-exito-350x350_2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/accelormital_casos-de-exito-350x350_2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/accelormital_casos-de-exito-350x350_2-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/accelormital_casos-de-exito-350x350_2-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/accelormital_casos-de-exito-350x350_2.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1MzksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvYWNjZWxvcm1pdGFsX2Nhc29zLWRlLWV4aXRvLTM1MHgzNTAtMS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/accelormital_casos-de-exito-350x350-1.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/accelormital_casos-de-exito-350x350-1-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/accelormital_casos-de-exito-350x350-1-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/accelormital_casos-de-exito-350x350-1-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/accelormital_casos-de-exito-350x350-1.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1NDAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvYWNjZWxvcm1pdGFsX2Nhc29zLWRlLWV4aXRvLTM1MHgzNTBfNy5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/accelormital_casos-de-exito-350x350_7.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/accelormital_casos-de-exito-350x350_7-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/accelormital_casos-de-exito-350x350_7-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/accelormital_casos-de-exito-350x350_7-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/accelormital_casos-de-exito-350x350_7.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1NDEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMS0xMy5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-13.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-13-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-13-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-13-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-13.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11542 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11542 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/kobol-casos-de-exito-350x35_3.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11542 post-11542 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-actions categoria-casos-de-exito-maintenance\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Layout modification<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/layout-change\/\">\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Maintenance<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Actions<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Layout modification<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>KOBOL<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/layout-change\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-28' class='gallery galleryid-11542 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1NDQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwva29ib2wtY2Fzb3MtZGUtZXhpdG8tMzUweDM1XzcucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/kobol-casos-de-exito-350x35_7.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/kobol-casos-de-exito-350x35_7-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/kobol-casos-de-exito-350x35_7-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/kobol-casos-de-exito-350x35_7-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/kobol-casos-de-exito-350x35_7.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1NDUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwva29ib2wtY2Fzb3MtZGUtZXhpdG8tMzUweDM1XzYucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/kobol-casos-de-exito-350x35_6.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/kobol-casos-de-exito-350x35_6-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/kobol-casos-de-exito-350x35_6-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/kobol-casos-de-exito-350x35_6-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/kobol-casos-de-exito-350x35_6.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1NDYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwva29ib2wtY2Fzb3MtZGUtZXhpdG8tMzUweDM1XzUucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/kobol-casos-de-exito-350x35_5.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/kobol-casos-de-exito-350x35_5-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/kobol-casos-de-exito-350x35_5-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/kobol-casos-de-exito-350x35_5-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/kobol-casos-de-exito-350x35_5.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1NDcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwva29ib2wtY2Fzb3MtZGUtZXhpdG8tMzUweDM1XzQucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/kobol-casos-de-exito-350x35_4.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/kobol-casos-de-exito-350x35_4-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/kobol-casos-de-exito-350x35_4-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/kobol-casos-de-exito-350x35_4-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/kobol-casos-de-exito-350x35_4.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1NDgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwva29ib2wtY2Fzb3MtZGUtZXhpdG8tMzUweDM1XzMucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/kobol-casos-de-exito-350x35_3.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/kobol-casos-de-exito-350x35_3-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"Modificaci\u00f3n de layout\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/kobol-casos-de-exito-350x35_3-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/kobol-casos-de-exito-350x35_3-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/kobol-casos-de-exito-350x35_3.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1NDksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwva29ib2wtY2Fzb3MtZGUtZXhpdG8tMzUweDM1XzIucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/kobol-casos-de-exito-350x35_2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/kobol-casos-de-exito-350x35_2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/kobol-casos-de-exito-350x35_2-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/kobol-casos-de-exito-350x35_2-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/kobol-casos-de-exito-350x35_2.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1NTAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMS0xNC5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-14.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-14-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-14-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-14-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-14.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11551 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11551 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/foto-ppal.-casos-de-exito-330x480-1-1.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11551 post-11551 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-automotive categoria-casos-de-exito-engineering\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.youtube.com\/watch?v=LyIXAN5in10\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">68ac1266-653c-4305-b965-49bdc79b5841<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Retrofit measuring station<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/retrofit-measuring-station\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/17-Preview-Caso-Exito-Retrofit-Estacion-de-medicion.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Automotive<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Retrofit measuring station<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/retrofit-measuring-station\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-29' class='gallery galleryid-11551 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1NTUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvZm90by0xLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/foto-1.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/foto-1-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/foto-1-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/foto-1-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/foto-1.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1NTYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvZm90by0zLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/foto-3.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/foto-3-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/foto-3-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/foto-3-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/foto-3.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1NTcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMS0xNS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-15.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-15-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-15-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-15-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-15.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11558 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11558 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/foto-ppal.-casos-de-exito-330x480_0.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11558 post-11558 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-automotive categoria-casos-de-exito-engineering\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/6-Preview-Caso-Exito-Estacion-de-Grabado-Bastidor-Automatico-con-robot.mp4\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">76558dc2-cb8a-40a8-9bb9-d25a1dab7d18<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Retrofit engraved frame three-way emergency<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/retrofit-engraved-trivalent-emergency-frame\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/22-Preview-Caso-Exito-Grabado-Bastidor-Emergencia-Small-Bev.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Automotive<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Retrofit engraved frame three-way emergency<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/retrofit-engraved-trivalent-emergency-frame\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-30' class='gallery galleryid-11558 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1NjAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwOTg4X3NlYXQtcmV0cm9maXQtY2FiZXphbC1ncmFiYWRvLWRlLWVtZXJnZW5jaWEtaWJpemEtYXJvbmEtYTFfMC5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200988_seat-retrofit-cabezal-grabado-de-emergencia-ibiza-arona-a1_0.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200988_seat-retrofit-cabezal-grabado-de-emergencia-ibiza-arona-a1_0-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200988_seat-retrofit-cabezal-grabado-de-emergencia-ibiza-arona-a1_0-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200988_seat-retrofit-cabezal-grabado-de-emergencia-ibiza-arona-a1_0-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200988_seat-retrofit-cabezal-grabado-de-emergencia-ibiza-arona-a1_0.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1NjEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwOTg4X3NlYXQtcmV0cm9maXQtY2FiZXphbC1ncmFiYWRvLWRlLWVtZXJnZW5jaWEtaWJpemEtYXJvbmEtYTFfNi5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200988_seat-retrofit-cabezal-grabado-de-emergencia-ibiza-arona-a1_6.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200988_seat-retrofit-cabezal-grabado-de-emergencia-ibiza-arona-a1_6-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200988_seat-retrofit-cabezal-grabado-de-emergencia-ibiza-arona-a1_6-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200988_seat-retrofit-cabezal-grabado-de-emergencia-ibiza-arona-a1_6-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200988_seat-retrofit-cabezal-grabado-de-emergencia-ibiza-arona-a1_6.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1NjIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwOTg4X3NlYXQtcmV0cm9maXQtY2FiZXphbC1ncmFiYWRvLWRlLWVtZXJnZW5jaWEtaWJpemEtYXJvbmEtYTFfNS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200988_seat-retrofit-cabezal-grabado-de-emergencia-ibiza-arona-a1_5.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200988_seat-retrofit-cabezal-grabado-de-emergencia-ibiza-arona-a1_5-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200988_seat-retrofit-cabezal-grabado-de-emergencia-ibiza-arona-a1_5-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200988_seat-retrofit-cabezal-grabado-de-emergencia-ibiza-arona-a1_5-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200988_seat-retrofit-cabezal-grabado-de-emergencia-ibiza-arona-a1_5.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1NjMsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwOTg4X3NlYXQtcmV0cm9maXQtY2FiZXphbC1ncmFiYWRvLWRlLWVtZXJnZW5jaWEtaWJpemEtYXJvbmEtYTFfNC5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200988_seat-retrofit-cabezal-grabado-de-emergencia-ibiza-arona-a1_4.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200988_seat-retrofit-cabezal-grabado-de-emergencia-ibiza-arona-a1_4-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200988_seat-retrofit-cabezal-grabado-de-emergencia-ibiza-arona-a1_4-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200988_seat-retrofit-cabezal-grabado-de-emergencia-ibiza-arona-a1_4-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200988_seat-retrofit-cabezal-grabado-de-emergencia-ibiza-arona-a1_4.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1NjQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwOTg4X3NlYXQtcmV0cm9maXQtY2FiZXphbC1ncmFiYWRvLWRlLWVtZXJnZW5jaWEtaWJpemEtYXJvbmEtYTFfMy5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200988_seat-retrofit-cabezal-grabado-de-emergencia-ibiza-arona-a1_3.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200988_seat-retrofit-cabezal-grabado-de-emergencia-ibiza-arona-a1_3-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200988_seat-retrofit-cabezal-grabado-de-emergencia-ibiza-arona-a1_3-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200988_seat-retrofit-cabezal-grabado-de-emergencia-ibiza-arona-a1_3-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200988_seat-retrofit-cabezal-grabado-de-emergencia-ibiza-arona-a1_3.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1NjUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMS0xNi5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-16.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-16-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-16-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-16-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-16.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11566 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11566 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/foto-ppal.-casos-de-exito-330x480-2.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11566 post-11566 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-engineering categoria-casos-de-exito-pharmaceutical\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.youtube.com\/watch?v=EfWrQK4uMC8\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">abf9a214-4e06-41d8-951d-dc6aa55b0a79<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Deassembler<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/deassembler\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/16-Preview-Caso-Exito-Desemblistadora.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Pharmaceutical<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Deassembler<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>CONFIDENTIAL<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/deassembler\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-31' class='gallery galleryid-11566 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1NjksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAxMDYwLWNpbmZhLWRlc2VtYmlsc3RhZG9yYS0yLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-2-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-2-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-2.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1NzAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAxMDYwLWNpbmZhLWRlc2VtYmlsc3RhZG9yYS0xLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-1.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-1-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-1-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-1-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-1.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1NzEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAxMDYwLWNpbmZhLWRlc2VtYmlsc3RhZG9yYS04LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-8.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-8-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-8-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-8-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-8.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1NzIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAxMDYwLWNpbmZhLWRlc2VtYmlsc3RhZG9yYS03LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-7.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-7-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-7-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-7-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-7.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1NzMsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAxMDYwLWNpbmZhLWRlc2VtYmlsc3RhZG9yYS02LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-6.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-6-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-6-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-6-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-6.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1NzQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAxMDYwLWNpbmZhLWRlc2VtYmlsc3RhZG9yYS01LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-5.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-5-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-5-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-5-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-5.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1NzUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAxMDYwLWNpbmZhLWRlc2VtYmlsc3RhZG9yYS00LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-4.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-4-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-4-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-4-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/201060-cinfa-desembilstadora-4.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1NzYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMS0xNy5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-17.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-17-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-17-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-17-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-17.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11577 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11577 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/foto-ppal.-casos-de-exito-330x480_0-1.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11577 post-11577 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-automotive categoria-casos-de-exito-engineering\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.youtube.com\/watch?v=0v3nKsHVKe0\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">6752344f-4c80-4f84-9b02-5f5e376f714f<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Semi-automatic assembly of chrome trim<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/semi-automatic-assembly-chrome-mouldings\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/15-Preview-Caso-Exito-Ensable-automatico-de-puertas-cromadas.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Automotive<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Semi-automatic assembly of chrome trim<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>SAARGUMI<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/semi-automatic-assembly-chrome-mouldings\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-32' class='gallery galleryid-11577 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1ODAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc2Fhcmd1bWktNC5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-4.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-4-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-4-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-4-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-4.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1ODEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc2Fhcmd1bWktMy5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-3.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-3-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-3-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-3-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-3.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1ODIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc2Fhcmd1bWktMi5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-2-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-2-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-2.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1ODMsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc2Fhcmd1bWktMS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-1.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-1-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-1-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-1-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-1.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1ODQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc2Fhcmd1bWktOC5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-8.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-8-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-8-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-8-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-8.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1ODUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc2Fhcmd1bWktNy5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-7.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-7-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-7-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-7-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-7.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1ODYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc2Fhcmd1bWktNi5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-6.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-6-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-6-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-6-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/saargumi-6.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1ODcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMS0xOC5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-18.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-18-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-18-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-18-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-18.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11588 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11588 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/foto-ppal.-casos-de-exito-330x480-3.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11588 post-11588 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-automotive categoria-casos-de-exito-engineering\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.youtube.com\/watch?v=-4WrEtzMvSY\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">e90e0b9b-bb11-4ded-8405-7251892c55d0<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">final bumper check and control station<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/final-car-bumper-check-and-control-station\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/14-Preview-Caso-Exito-Puesto-Chequeo-control-final.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Automotive<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">final bumper check and control station<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>SMP<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/final-car-bumper-check-and-control-station\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-33' class='gallery galleryid-11588 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1OTEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwNzEwX2ZvdG8td2ViLTIucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200710_foto-web-2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200710_foto-web-2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200710_foto-web-2-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200710_foto-web-2-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200710_foto-web-2.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1OTIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwNzEwX2ZvdG8td2ViLTEucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200710_foto-web-1.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200710_foto-web-1-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200710_foto-web-1-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200710_foto-web-1-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200710_foto-web-1.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1OTMsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwNzEwX2ZvdG8td2ViLTQucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200710_foto-web-4.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200710_foto-web-4-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200710_foto-web-4-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200710_foto-web-4-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200710_foto-web-4.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1OTQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMS0xOS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-19.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-19-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-19-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-19-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-19.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11595 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11595 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200390_suministro-ruedas_foto-ppal-casos-exito_330x480_2.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11595 post-11595 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-automotive categoria-casos-de-exito-engineering\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.youtube.com\/watch?v=J3y24iEbUSU\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">5b4ed117-d166-4514-a3a1-243eb19e5aca<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Wheel supply: combustion and electric<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/welding-wheel-components-ultrasonic\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/13-Preview-Caso-Exito-Suministro-de-ruedas-Combustion-y-electrico.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Automotive<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Wheel supply: combustion and electric<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>VOLKSWAGEN<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/welding-wheel-components-ultrasonic\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-34' class='gallery galleryid-11595 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1OTgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvcnVlZGFzLW1lYjIxLWNhc28tZXhpdG8taW50ZXJpb3Jlcy0zNTB4MzUwXzUucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_5.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_5-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_5-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_5-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_5.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE1OTksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvcnVlZGFzLW1lYjIxLWNhc28tZXhpdG8taW50ZXJpb3Jlcy0zNTB4MzUwXzQucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_4.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_4-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_4-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_4-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_4.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MDAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvcnVlZGFzLW1lYjIxLWNhc28tZXhpdG8taW50ZXJpb3Jlcy0zNTB4MzUwXzMucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_3.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_3-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_3-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_3-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_3.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MDEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvcnVlZGFzLW1lYjIxLWNhc28tZXhpdG8taW50ZXJpb3Jlcy0zNTB4MzUwXzIucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_2-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_2-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_2.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MDIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvcnVlZGFzLW1lYjIxLWNhc28tZXhpdG8taW50ZXJpb3Jlcy0zNTB4MzUwXzEucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_1.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_1-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_1-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_1-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_1.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MDMsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc2luLXRpdHVsby0zXzEzLmpwZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_13.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_13-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_13-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_13-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_13.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MDQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc2luLXRpdHVsby0yXzEyLmpwZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-2_12.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-2_12-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-2_12-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-2_12-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-2_12.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MDUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc2luLXRpdHVsby0xXzEzLmpwZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_13.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_13-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_13-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_13-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_13.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MDYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwMzkwX3VwX3N1bWluaXN0cm8tZGUtcnVlZGFzX3Z3Xy0zNTB4MzUwLTEucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200390_up_suministro-de-ruedas_vw_-350x350-1.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200390_up_suministro-de-ruedas_vw_-350x350-1-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200390_up_suministro-de-ruedas_vw_-350x350-1-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200390_up_suministro-de-ruedas_vw_-350x350-1-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200390_up_suministro-de-ruedas_vw_-350x350-1.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MDcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwMzkwX3VwX3N1bWluaXN0cm8tZGUtcnVlZGFzX3Z3Xy0zNTB4MzUwXzMucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200390_up_suministro-de-ruedas_vw_-350x350_3.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200390_up_suministro-de-ruedas_vw_-350x350_3-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200390_up_suministro-de-ruedas_vw_-350x350_3-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200390_up_suministro-de-ruedas_vw_-350x350_3-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200390_up_suministro-de-ruedas_vw_-350x350_3.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MDgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwMzkwX3VwX3N1bWluaXN0cm8tZGUtcnVlZGFzX3Z3Xy0zNTB4MzUwXzIucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200390_up_suministro-de-ruedas_vw_-350x350_2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200390_up_suministro-de-ruedas_vw_-350x350_2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200390_up_suministro-de-ruedas_vw_-350x350_2-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200390_up_suministro-de-ruedas_vw_-350x350_2-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200390_up_suministro-de-ruedas_vw_-350x350_2.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MDksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvcnVlZGFzLW1lYjIxLWNhc28tZXhpdG8taW50ZXJpb3Jlcy0zNTB4MzUwXzgucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_8.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_8-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_8-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_8-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_8.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MTAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvcnVlZGFzLW1lYjIxLWNhc28tZXhpdG8taW50ZXJpb3Jlcy0zNTB4MzUwXzcucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_7.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_7-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_7-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_7-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/ruedas-meb21-caso-exito-interiores-350x350_7.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MTEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMS0yMC5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-20.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-20-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-20-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-20-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-20.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11612 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11612 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200606_dicona_ppal-casos-exito_330x480.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11612 post-11612 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-construction categoria-casos-de-exito-engineering\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.youtube.com\/watch?v=m1qPxywhnzM\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">827a7070-ddaa-4fc7-8671-39234b836ff9<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">CNC automatic feeder with robot<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/automatic-cnc-feeder-robot\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/12-Preview-Caso-Exito-Alimentador-CNC.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Construction<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">CNC automatic feeder with robot<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>DICONA<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/automatic-cnc-feeder-robot\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-35' class='gallery galleryid-11612 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MTUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwNjA2X2RpY29uYV8zNTB4MzUwXzQucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200606_dicona_350x350_4.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200606_dicona_350x350_4-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200606_dicona_350x350_4-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200606_dicona_350x350_4-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200606_dicona_350x350_4.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MTYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwNjA2X2RpY29uYV8zNTB4MzUwXzMucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200606_dicona_350x350_3.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200606_dicona_350x350_3-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200606_dicona_350x350_3-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200606_dicona_350x350_3-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200606_dicona_350x350_3.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MTcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwNjA2X2RpY29uYV8zNTB4MzUwXzIucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200606_dicona_350x350_2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200606_dicona_350x350_2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200606_dicona_350x350_2-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200606_dicona_350x350_2-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200606_dicona_350x350_2.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MTgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwNjA2X2RpY29uYV8zNTB4MzUwXzEucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200606_dicona_350x350_1.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200606_dicona_350x350_1-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200606_dicona_350x350_1-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200606_dicona_350x350_1-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200606_dicona_350x350_1.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MTksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc2luLXRpdHVsby0zXzEyLmpwZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_12.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_12-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_12-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_12-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_12.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MjAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc2luLXRpdHVsby0yXzExLmpwZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-2_11.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-2_11-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-2_11-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-2_11-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-2_11.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MjEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc2luLXRpdHVsby0xXzEyLmpwZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_12.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_12-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_12-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_12-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_12.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MjIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMS0yMS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-21.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-21-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-21-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-21-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-21.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11623 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11623 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/listado_0.jpg\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11623 post-11623 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-automotive categoria-casos-de-exito-engineering\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.youtube.com\/watch?v=048Du2rpHaQ\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Emergency frame engraving with manipulator<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/emergency-frame-engraving-with-manipulator\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/5-Preview-Caso-Exito-Grabado-Bastidor-Emergencia-con-manipulador.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Automotive<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Emergency frame engraving with manipulator<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>SEAT<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/emergency-frame-engraving-with-manipulator\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-36' class='gallery galleryid-11623 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MjQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMVwvc2luLXRpdHVsby0zXzAuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/sin-titulo-3_0.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/sin-titulo-3_0-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/sin-titulo-3_0-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/sin-titulo-3_0-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/sin-titulo-3_0.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MjUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMVwvc2luLXRpdHVsby0yXzAuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/sin-titulo-2_0.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/sin-titulo-2_0-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/sin-titulo-2_0-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/sin-titulo-2_0-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/sin-titulo-2_0.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MjYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMVwvc2luLXRpdHVsby0xXzAuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/sin-titulo-1_0.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/sin-titulo-1_0-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/sin-titulo-1_0-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/sin-titulo-1_0-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/sin-titulo-1_0.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11629 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11629 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877_test-diferenciales_schneider_330x480.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11629 post-11629 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-electrical categoria-casos-de-exito-engineering\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.youtube.com\/watch?v=-NO-qCIfzPs\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">dc71546f-fa99-488b-a74a-c65fea4b56d4<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Differential test<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/differential-test\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/11-Preview-Caso-Exito-Test-Diferenciales.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Electrical<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Differential test<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>SCHNEIDER ELECTRIC<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/differential-test\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-37' class='gallery galleryid-11629 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MzIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwODc3X3Rlc3QtZGlmZXJlbmNpYWxlc19zY2huZWlkZXJfMzMweDQ4MF82Xy0zNTB4MzUwLTEucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877_test-diferenciales_schneider_330x480_6_-350x350-1.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877_test-diferenciales_schneider_330x480_6_-350x350-1-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877_test-diferenciales_schneider_330x480_6_-350x350-1-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877_test-diferenciales_schneider_330x480_6_-350x350-1-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877_test-diferenciales_schneider_330x480_6_-350x350-1.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MzMsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwODc3X3Rlc3QtZGlmZXJlbmNpYWxlc19zY2huZWlkZXJfMzMweDQ4MF81LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877_test-diferenciales_schneider_330x480_5.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877_test-diferenciales_schneider_330x480_5-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877_test-diferenciales_schneider_330x480_5-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877_test-diferenciales_schneider_330x480_5-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877_test-diferenciales_schneider_330x480_5.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MzQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwODc3X3Rlc3QtZGlmZXJlbmNpYWxlc19zY2huZWlkZXJfMzMweDQ4MF80LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877_test-diferenciales_schneider_330x480_4.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877_test-diferenciales_schneider_330x480_4-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877_test-diferenciales_schneider_330x480_4-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877_test-diferenciales_schneider_330x480_4-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877_test-diferenciales_schneider_330x480_4.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MzUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwODc3X3Rlc3QtZGlmZXJlbmNpYWxlc19zY2huZWlkZXJfMzMweDQ4MF8zLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877_test-diferenciales_schneider_330x480_3.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877_test-diferenciales_schneider_330x480_3-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877_test-diferenciales_schneider_330x480_3-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877_test-diferenciales_schneider_330x480_3-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877_test-diferenciales_schneider_330x480_3.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MzYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwODc3X3Rlc3QtZGlmZXJlbmNpYWxlc19zY2huZWlkZXJfMzMweDQ4MF8yLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877_test-diferenciales_schneider_330x480_2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877_test-diferenciales_schneider_330x480_2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877_test-diferenciales_schneider_330x480_2-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877_test-diferenciales_schneider_330x480_2-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877_test-diferenciales_schneider_330x480_2.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MzcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc2luLXRpdHVsby0zXzExLmpwZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_11.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_11-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_11-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_11-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_11.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MzgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc2luLXRpdHVsby0zXzEwLmpwZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_10.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_10-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_10-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_10-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_10.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MzksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMS5qcGciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11640 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11640 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877_foto-ppal-casos-exito_330x480.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11640 post-11640 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-electrical categoria-casos-de-exito-engineering\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.youtube.com\/watch?v=pSrOPl_vrWA\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">8c47d5bf-7f39-4729-a1e8-66bc8ff69c6f<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Laser<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/laser\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/10-Preview-Caso-Exito-Laser.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Electrical<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Laser<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>SCHEINDER ELECTRIC<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/laser\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-38' class='gallery galleryid-11640 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2NDMsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwODc3LXdlYl8zNTB4MzUwLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877-web_350x350.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877-web_350x350-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877-web_350x350-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877-web_350x350-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877-web_350x350.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2NDQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc2luLXRpdHVsby0zXzkuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_9.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_9-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_9-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_9-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_9.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2NDUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc2luLXRpdHVsby0yXzkuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-2_9.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-2_9-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-2_9-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-2_9-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-2_9.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2NDYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc2luLXRpdHVsby0xXzkuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_9.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_9-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_9-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_9-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_9.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2NDcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwODc3LXdlYjRfMzUweDM1MC5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877-web4_350x350.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877-web4_350x350-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877-web4_350x350-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877-web4_350x350-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877-web4_350x350.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2NDgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwODc3LXdlYjNfMzUweDM1MC5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877-web3_350x350.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877-web3_350x350-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877-web3_350x350-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877-web3_350x350-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200877-web3_350x350.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2NDksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMS0yMi5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-22.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-22-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-22-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-22-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-22.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11650 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11650 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200876_ppal-tampografia-schneider_330x480.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11650 post-11650 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-electrical categoria-casos-de-exito-engineering\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.youtube.com\/watch?v=43ne0zmprFM\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">1e9d1dae-a9bf-4d5f-ba45-8421e9e19cf2<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Pad printing<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/pad-printing\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/9-Preview-Caso-Exito-Tampografia.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Electrical<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Pad printing<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>SCHNEIDER ELECTRIC<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/pad-printing\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-39' class='gallery galleryid-11650 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2NTMsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwODc2X3RhbXBvZ3JhZmlhX3NjaG5laWRlcl82LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200876_tampografia_schneider_6.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200876_tampografia_schneider_6-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200876_tampografia_schneider_6-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200876_tampografia_schneider_6-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200876_tampografia_schneider_6.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2NTQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwODc2X3RhbXBvZ3JhZmlhX3NjaG5laWRlcl80LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200876_tampografia_schneider_4.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200876_tampografia_schneider_4-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200876_tampografia_schneider_4-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200876_tampografia_schneider_4-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200876_tampografia_schneider_4.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2NTUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwODc2X3RhbXBvZ3JhZmlhX3NjaG5laWRlcl8zLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200876_tampografia_schneider_3.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200876_tampografia_schneider_3-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200876_tampografia_schneider_3-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200876_tampografia_schneider_3-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200876_tampografia_schneider_3.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2NTYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwODc2X3RhbXBvZ3JhZmlhX3NjaG5laWRlcl8yLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200876_tampografia_schneider_2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200876_tampografia_schneider_2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200876_tampografia_schneider_2-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200876_tampografia_schneider_2-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200876_tampografia_schneider_2.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2NTcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwODc2X3RhbXBvZ3JhZmlhX3NjaG5laWRlcl8xLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200876_tampografia_schneider_1.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200876_tampografia_schneider_1-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200876_tampografia_schneider_1-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200876_tampografia_schneider_1-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200876_tampografia_schneider_1.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2NTgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc2luLXRpdHVsby0zXzguanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_8.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_8-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_8-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_8-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_8.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2NTksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc2luLXRpdHVsby0xXzguanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_8.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_8-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_8-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_8-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_8.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2NjAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMS0xLmpwZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-1.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-1-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-1-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-1-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-1.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11661 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11661 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200425_encajado-y-paletizado-ppal-_cinfa_330x480.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11661 post-11661 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-engineering categoria-casos-de-exito-pharmaceutical\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.youtube.com\/watch?v=HvyKzGyg02E\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">39dcb1d0-dabb-43b2-91bd-02a19b8ab27b<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Packaging and palletizing line<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/packaging-and-palletizing-line\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/8-Preview-Caso-Exito-Linea-encajado-y-paletizados.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Pharmaceutical<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Packaging and palletizing line<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>CINFA<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/packaging-and-palletizing-line\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-40' class='gallery galleryid-11661 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2NjQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwNDI1X2VuY2FqYWRvLXktcGFsZXRpemFkby1fY2luZmFfMzMweDQ4MF81LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200425_encajado-y-paletizado-_cinfa_330x480_5.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200425_encajado-y-paletizado-_cinfa_330x480_5-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200425_encajado-y-paletizado-_cinfa_330x480_5-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200425_encajado-y-paletizado-_cinfa_330x480_5-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200425_encajado-y-paletizado-_cinfa_330x480_5.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2NjUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwNDI1X2VuY2FqYWRvLXktcGFsZXRpemFkby1fY2luZmFfMzMweDQ4MF80LnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200425_encajado-y-paletizado-_cinfa_330x480_4.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200425_encajado-y-paletizado-_cinfa_330x480_4-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200425_encajado-y-paletizado-_cinfa_330x480_4-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200425_encajado-y-paletizado-_cinfa_330x480_4-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200425_encajado-y-paletizado-_cinfa_330x480_4.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2NjYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwNDI1X2VuY2FqYWRvLXktcGFsZXRpemFkby1fY2luZmFfMzMweDQ4MF8yLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200425_encajado-y-paletizado-_cinfa_330x480_2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200425_encajado-y-paletizado-_cinfa_330x480_2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200425_encajado-y-paletizado-_cinfa_330x480_2-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200425_encajado-y-paletizado-_cinfa_330x480_2-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200425_encajado-y-paletizado-_cinfa_330x480_2.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2NjcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwNDI1X2VuY2FqYWRvLXktcGFsZXRpemFkby1fY2luZmFfMzMweDQ4MF8xLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200425_encajado-y-paletizado-_cinfa_330x480_1.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200425_encajado-y-paletizado-_cinfa_330x480_1-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200425_encajado-y-paletizado-_cinfa_330x480_1-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200425_encajado-y-paletizado-_cinfa_330x480_1-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200425_encajado-y-paletizado-_cinfa_330x480_1.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2NjgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwNDI1X2NpbmZhXzM1MHgzNTAucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200425_cinfa_350x350.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200425_cinfa_350x350-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200425_cinfa_350x350-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200425_cinfa_350x350-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200425_cinfa_350x350.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2NjksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc2luLXRpdHVsby0zXzYuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_6.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_6-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_6-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_6-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_6.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2NzAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc2luLXRpdHVsby0yXzYuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-2_6.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-2_6-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-2_6-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-2_6-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-2_6.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2NzEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc2luLXRpdHVsby0xXzYuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_6.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_6-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_6-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_6-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_6.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2NzIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwNDI1X2VuY2FqYWRvLXktcGFsZXRpemFkby1fY2luZmFfMzMweDQ4MF8zLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200425_encajado-y-paletizado-_cinfa_330x480_3.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200425_encajado-y-paletizado-_cinfa_330x480_3-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200425_encajado-y-paletizado-_cinfa_330x480_3-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200425_encajado-y-paletizado-_cinfa_330x480_3-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200425_encajado-y-paletizado-_cinfa_330x480_3.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2NzMsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMS0yMy5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-23.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-23-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-23-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-23-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-23.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-12256 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-12256 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/5.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-12256 post-12256 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-automotive categoria-casos-de-exito-engineering\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.youtube.com\/watch?v=bwQ7u-hEgaA\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">bcbd05aa-a264-40d3-b862-6ca3f6f6a2e6<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Automatic frame engraving station with robot.<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/automatic-frame-engraving-station-with-robot\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/6-Preview-Caso-Exito-Estacion-de-Grabado-Bastidor-Automatico-con-robot.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Automotive<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Automatic frame engraving station with robot.<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>SEAT<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/automatic-frame-engraving-station-with-robot\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-41' class='gallery galleryid-12256 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTIyNTksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMlwvMy5qcGciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/3.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/3-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/3-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/3-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/3.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTIyNjAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMlwvNC5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/4.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/4-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/4-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/4-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/4.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTIyNTUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMlwvNS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/5.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/5-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/5-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/5-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/5.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTIyNjEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMlwvNi5qcGciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/6.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/6-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/6-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/6-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/6.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTIyNjIsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMlwvNy5qcGciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/7.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/7-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/7-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/7-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/7.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-12272 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-12272 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/1.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-12272 post-12272 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-automotive categoria-casos-de-exito-engineering\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.youtube.com\/watch?v=H1Gdbpfk5DU\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">92b2e42e-1cd0-492c-8c63-04e868d69c81<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Synchronization: screwing pedals in, sealing rubber doors and verifying machine vision frame<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/synchronization-screwing-pedals-in-sealing-rubber-doors-and-verifying-machine-vision-frame\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/4-Preview-Caso-Exito-Sincronismo-atornilaldo-pedaleras-.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Automotive<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Synchronization: screwing pedals in, sealing rubber doors and verifying machine vision frame<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong> Volkswagen<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/synchronization-screwing-pedals-in-sealing-rubber-doors-and-verifying-machine-vision-frame\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-42' class='gallery galleryid-12272 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTIyNzEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMlwvMS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/1.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/1-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/1-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/1-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/1.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTIyNzMsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMlwvMi5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/2-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/2-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/2.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTIyNzQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMlwvMy5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/3.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/3-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/3-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/3-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/3.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTIyNzUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMlwvNC5qcGciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/4.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/4-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/4-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/4-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/4.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTIyNzYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMlwvNS5qcGciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/5.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/5-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/5-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/5-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/5.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTIyNzcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMlwvNi0xLmpwZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/6-1.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/6-1-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/6-1-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/6-1-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/6-1.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11674 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11674 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/12\/3.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11674 post-11674 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-automotive categoria-casos-de-exito-engineering\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.youtube.com\/watch?v=H1Gdbpfk5DU\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">d1aa479e-5943-4f3d-a8ad-7fbd9cf5deb7<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Synchronization: first, bolting roof racks and installing weatherstripping.<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/synchronism-primer-roof-racks-screwing-and-weatherstrips-installation\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/7-Preview-Caso-Exito-Primer-Atornillado-Bacas-Instalacion-burletes.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Automotive<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Synchronization: first, bolting roof racks and installing weatherstripping.<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>VOLKSWAGEN<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/synchronism-primer-roof-racks-screwing-and-weatherstrips-installation\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-43' class='gallery galleryid-11674 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2NzcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc2luLXRpdHVsby0xXzUuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_5.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_5-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_5-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_5-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_5.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2NzgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwNDAzX3ByaW1lci1idXJsZXRlXy0zNTB4MzUwXzIucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200403_primer-burlete_-350x350_2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200403_primer-burlete_-350x350_2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200403_primer-burlete_-350x350_2-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200403_primer-burlete_-350x350_2-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200403_primer-burlete_-350x350_2.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2NzksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwNDAzX3ByaW1lci1idXJsZXRlXy0zNTB4MzUwXzEucG5nIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200403_primer-burlete_-350x350_1.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200403_primer-burlete_-350x350_1-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200403_primer-burlete_-350x350_1-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200403_primer-burlete_-350x350_1-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200403_primer-burlete_-350x350_1.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2ODAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc2luLXRpdHVsby0zXzUuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_5.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_5-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_5-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_5-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_5.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2ODEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMS0yLmpwZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-2.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-2-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-2-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-2-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-2.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11682 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11682 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200237_foto-ppal-soldadura-componentes-ultrasonidos_330x480.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11682 post-11682 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-automotive categoria-casos-de-exito-engineering\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.youtube.com\/watch?v=NczSTI-UCFg\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">5841c0f9-be43-483e-9327-19e1fc40dd40<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Ultrasonic welding of wheel components<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/welding-wheel-components-ultrasonic-2\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/3-Soldadura-componentes-rueda-ultrasonidos.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Automotive<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Ultrasonic welding of wheel components<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>ARKAL<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/welding-wheel-components-ultrasonic-2\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-44' class='gallery galleryid-11682 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2ODUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc2luLXRpdHVsby0yXzEzLmpwZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-2_13.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-2_13-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-2_13-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-2_13-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-2_13.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2ODYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwMjM3X2ZvdG8tcHBhbC1zb2xkYWR1cmEtY29tcG9uZW50ZXMtdWx0cmFzb25pZG9zLTM1MHgzNTBfNC5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200237_foto-ppal-soldadura-componentes-ultrasonidos-350x350_4.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200237_foto-ppal-soldadura-componentes-ultrasonidos-350x350_4-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200237_foto-ppal-soldadura-componentes-ultrasonidos-350x350_4-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200237_foto-ppal-soldadura-componentes-ultrasonidos-350x350_4-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200237_foto-ppal-soldadura-componentes-ultrasonidos-350x350_4.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2ODcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc2luLXRpdHVsby0xXzE0LmpwZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_14.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_14-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_14-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_14-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-1_14.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2ODgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwMjM3X2ZvdG8tcHBhbC1zb2xkYWR1cmEtY29tcG9uZW50ZXMtdWx0cmFzb25pZG9zLTM1MHgzNTBfMy5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200237_foto-ppal-soldadura-componentes-ultrasonidos-350x350_3.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200237_foto-ppal-soldadura-componentes-ultrasonidos-350x350_3-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200237_foto-ppal-soldadura-componentes-ultrasonidos-350x350_3-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200237_foto-ppal-soldadura-componentes-ultrasonidos-350x350_3-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200237_foto-ppal-soldadura-componentes-ultrasonidos-350x350_3.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2ODksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwMjM3X2ZvdG8tcHBhbC1zb2xkYWR1cmEtY29tcG9uZW50ZXMtdWx0cmFzb25pZG9zLTM1MHgzNTBfMS5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200237_foto-ppal-soldadura-componentes-ultrasonidos-350x350_1.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200237_foto-ppal-soldadura-componentes-ultrasonidos-350x350_1-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200237_foto-ppal-soldadura-componentes-ultrasonidos-350x350_1-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200237_foto-ppal-soldadura-componentes-ultrasonidos-350x350_1-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200237_foto-ppal-soldadura-componentes-ultrasonidos-350x350_1.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2OTAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwMjM3X2ZvdG8tcHBhbC1zb2xkYWR1cmEtY29tcG9uZW50ZXMtdWx0cmFzb25pZG9zLTM1MHgzNTBfMi5wbmciLCJzbGlkZXNob3ciOiJiNGU1OWU2In0%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200237_foto-ppal-soldadura-componentes-ultrasonidos-350x350_2.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200237_foto-ppal-soldadura-componentes-ultrasonidos-350x350_2-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200237_foto-ppal-soldadura-componentes-ultrasonidos-350x350_2-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200237_foto-ppal-soldadura-componentes-ultrasonidos-350x350_2-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200237_foto-ppal-soldadura-componentes-ultrasonidos-350x350_2.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2OTEsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMS0zLmpwZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-3.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-3-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-3-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-3-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-3.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11692 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11692 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200153_inspeccion-rayos-x_itp_foto-ppal_330x480.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11692 post-11692 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-aeronautics categoria-casos-de-exito-engineering\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.youtube.com\/watch?v=ckpLigCvU2Y\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">27b9ec58-0293-4d00-8cc3-dc3951a060f1<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">X-ray inspection<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/x-ray-inspection\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/2-Preview-Caso-Exito-Inspeccion-rayos-X.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Aeronautics<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">X-ray inspection<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>ITP<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/x-ray-inspection\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-45' class='gallery galleryid-11692 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2OTUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc2luLXRpdHVsby0yXzMuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-2_3.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-2_3-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-2_3-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-2_3-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-2_3.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2OTYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvc2luLXRpdHVsby0zXzMuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_3.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_3-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_3-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_3-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/sin-titulo-3_3.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2OTcsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwMTUzX2luc3BlY2Npb24tcmF5b3MteF9pdHBfM18zNTB4MzUwLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200153_inspeccion-rayos-x_itp_3_350x350.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200153_inspeccion-rayos-x_itp_3_350x350-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200153_inspeccion-rayos-x_itp_3_350x350-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200153_inspeccion-rayos-x_itp_3_350x350-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200153_inspeccion-rayos-x_itp_3_350x350.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2OTgsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwMTUzX2luc3BlY2Npb24tcmF5b3MteF9pdHBfMl8zNTB4MzUwLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200153_inspeccion-rayos-x_itp_2_350x350.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200153_inspeccion-rayos-x_itp_2_350x350-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200153_inspeccion-rayos-x_itp_2_350x350-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200153_inspeccion-rayos-x_itp_2_350x350-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200153_inspeccion-rayos-x_itp_2_350x350.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2OTksInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAwMTUzX2luc3BlY2Npb24tcmF5b3MteF9pdHBfMV8zNTB4MzUwLnBuZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200153_inspeccion-rayos-x_itp_1_350x350.png'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200153_inspeccion-rayos-x_itp_1_350x350-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200153_inspeccion-rayos-x_itp_1_350x350-150x150.png 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200153_inspeccion-rayos-x_itp_1_350x350-300x300.png 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/200153_inspeccion-rayos-x_itp_1_350x350.png 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE3MDAsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMS00LmpwZyIsInNsaWRlc2hvdyI6ImI0ZTU5ZTYifQ%3D%3D\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-4.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-4-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-4-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-4-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/1-4.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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<style id=\"loop-dynamic-11165\">.e-loop-item-11701 .elementor-element.elementor-element-daaf9ff:not(.elementor-motion-effects-element-type-background), .e-loop-item-11701 .elementor-element.elementor-element-daaf9ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/Estacion-de-grabado-de-bastidor.png\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"11165\" class=\"elementor elementor-11165 elementor-1059 elementor-1059 e-loop-item e-loop-item-11701 post-11701 casos-de-exito type-casos-de-exito status-publish has-post-thumbnail hentry categoria-casos-de-exito-automotive categoria-casos-de-exito-engineering\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-e701ebc carousel-item e-flex e-con-boxed e-con e-parent\" data-id=\"e701ebc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bdda72c e-con-full e-flex e-con e-child\" data-id=\"bdda72c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-77dc04c e-con-full esconder e-flex e-con e-child\" data-id=\"77dc04c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1349963 elementor-widget__width-initial lightbox-link elementor-widget elementor-widget-image\" data-id=\"1349963\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.youtube.com\/watch?v=fINPB1YajX0\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"154\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png\" class=\"attachment-full size-full wp-image-11179\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2.png 154w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-1-2-150x150.png 150w\" sizes=\"(max-width: 154px) 100vw, 154px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7830a7 elementor-widget__width-initial open-gallery elementor-widget elementor-widget-image\" data-id=\"c7830a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png\" class=\"attachment-large size-large wp-image-11180\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-2-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2239dfd elementor-widget__width-initial boton-descargar elementor-widget elementor-widget-image\" data-id=\"2239dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"153\" height=\"153\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png\" class=\"attachment-large size-large wp-image-11181\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1.png 153w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/09\/Group-4-1-150x150.png 150w\" sizes=\"(max-width: 153px) 100vw, 153px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35fe371 elementor-widget elementor-widget-heading\" data-id=\"35fe371\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-id\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">68ac1266-653c-4305-b965-49bdc79b5841<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc458f elementor-widget elementor-widget-heading\" data-id=\"8fc458f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"caso-exito-title\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Engraving station<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<a class=\"elementor-element elementor-element-daaf9ff e-con-full hover-media-wrapper e-flex e-con e-child\" data-id=\"daaf9ff\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/gurpea.com\/en\/success-stories\/engraving-station\/\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e08d79c elementor-widget elementor-widget-video\" data-id=\"e08d79c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;start&quot;:5}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/7-Preview-Caso-Exito-Celula-de-paletizado-de-bobinas-de-papel.mp4#t=5\" preload=\"auto\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<div class=\"elementor-element elementor-element-634bd75 elementor-widget elementor-widget-html\" data-id=\"634bd75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hover-media-wrapper {\r\n  position: relative;\r\n max-height: 175px;\r\n height: 200px;\r\n  overflow: hidden;\r\n}\r\n\r\n\/* Shared styles for image & video *\/\r\n.hover-media-wrapper .hover-image,\r\n.hover-media-wrapper .hover-video {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  object-position: center;\r\n  transition: opacity 0.3s ease;\r\n}\r\n\r\n\/* Image settings *\/\r\n.hover-media-wrapper .hover-image {\r\n  z-index: 2;\r\n  opacity: 1;\r\n  background-repeat: no-repeat;\r\n  background-position: center;\r\n  background-size: cover;\r\n}\r\n\r\n\/* Video settings *\/\r\n.hover-media-wrapper .hover-video {\r\n  opacity: 0;\r\n  pointer-events: none;\r\n  z-index: 1;\r\n}\r\n\r\n\/* Hover effects *\/\r\n.hover-media-wrapper:hover .hover-image {\r\n  opacity: 0;\r\n}\r\n\r\n.hover-media-wrapper:hover .hover-video {\r\n  opacity: 1;\r\n  pointer-events: auto;\r\n  z-index: 3;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initHoverMedia() {\r\n  const wrappers = document.querySelectorAll('.hover-media-wrapper');\r\n  \r\n  wrappers.forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.hoverInitialized) return;\r\n    wrapper.dataset.hoverInitialized = 'true';\r\n    \r\n    const img = wrapper.querySelector('img');\r\n    const video = wrapper.querySelector('video');\r\n    \r\n    if (img) img.classList.add('hover-image');\r\n    if (video) {\r\n      video.classList.add('hover-video');\r\n      \/\/ Ensure video starts at frame 5 and is paused\r\n      video.currentTime = 5;\r\n      video.pause();\r\n    }\r\n    \r\n    wrapper.addEventListener('mouseenter', () => {\r\n      if (video) {\r\n        try {\r\n          video.currentTime = 5;\r\n          video.muted = true;\r\n          video.play().catch(err => console.log(\"Video play error:\", err));\r\n        } catch (error) {\r\n          console.log(\"Video play error:\", error);\r\n        }\r\n      }\r\n    });\r\n    \r\n    wrapper.addEventListener('mouseleave', () => {\r\n      if (video) {\r\n        video.pause();\r\n        video.currentTime = 5;\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", initHoverMedia);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\njQuery(document).on('elementor\/popup\/show', initHoverMedia);\r\n\r\n\/\/ Listen for Elementor's loop widget updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initHoverMedia, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst observer = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('hover-media-wrapper') || node.querySelector?.('.hover-media-wrapper'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initHoverMedia();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nobserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb6d5ba e-con-full e-flex e-con e-child\" data-id=\"eb6d5ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c323b69 elementor-widget elementor-widget-heading\" data-id=\"c323b69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Engineering<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b3d63 elementor-widget elementor-widget-heading\" data-id=\"30b3d63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Automotive<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b3ffc83 e-con-full e-flex e-con e-child\" data-id=\"b3ffc83\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df2e302 elementor-widget elementor-widget-heading\" data-id=\"df2e302\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Engraving station<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ff03ad elementor-widget elementor-widget-heading\" data-id=\"2ff03ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\"><strong>Client: <\/strong>VOLKSWAGEN<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a6cb375 leer_mas elementor-align-right elementor-widget elementor-widget-button\" data-id=\"a6cb375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/success-stories\/engraving-station\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View project<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b4e59e6 hidden-gallery elementor-widget elementor-widget-image-gallery\" data-id=\"b4e59e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image-gallery.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-gallery\">\n\t\t\t<div id='gallery-46' class='gallery galleryid-11701 gallery-columns-4 gallery-size-thumbnail'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MjYsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMVwvc2luLXRpdHVsby0xXzAuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/sin-titulo-1_0.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/sin-titulo-1_0-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/sin-titulo-1_0-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/sin-titulo-1_0-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/sin-titulo-1_0.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MjUsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMVwvc2luLXRpdHVsby0yXzAuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/sin-titulo-2_0.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/sin-titulo-2_0-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/sin-titulo-2_0-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/sin-titulo-2_0-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/sin-titulo-2_0.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"b4e59e6\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTE2MjQsInVybCI6Imh0dHBzOlwvXC9ndXJwZWEuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMVwvc2luLXRpdHVsby0zXzAuanBnIiwic2xpZGVzaG93IjoiYjRlNTllNiJ9\" href='https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/sin-titulo-3_0.jpg'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/sin-titulo-3_0-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/sin-titulo-3_0-150x150.jpg 150w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/sin-titulo-3_0-300x300.jpg 300w, https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/sin-titulo-3_0.jpg 350w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12b3a13 elementor-widget elementor-widget-html\" data-id=\"12b3a13\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n.hidden-gallery {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  overflow: hidden !important;\r\n  opacity: 0 !important;\r\n  pointer-events: none !important;\r\n}\r\n.open-gallery {\r\n  cursor: pointer;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nfunction initGalleryButtons() {\r\n  \/\/ Select all open-gallery icons (each carousel item)\r\n  const buttons = document.querySelectorAll('.open-gallery');\r\n  \r\n  buttons.forEach(button => {\r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.galleryInitialized) return;\r\n    button.dataset.galleryInitialized = 'true';\r\n    \r\n    button.style.cursor = 'pointer';\r\n    \r\n    button.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      \r\n      \/\/ Find the hidden gallery *inside the same carousel item*\r\n      const carouselItem = button.closest('.e-loop-item, .carousel-item, .elementor-loop-container');\r\n      if (!carouselItem) return;\r\n      \r\n      const gallery = carouselItem.querySelector('.hidden-gallery');\r\n      if (!gallery) return;\r\n      \r\n      \/\/ Temporarily reveal the gallery to preload images\r\n      gallery.style.position = 'absolute';\r\n      gallery.style.width = 'auto';\r\n      gallery.style.height = 'auto';\r\n      gallery.style.opacity = '0.01';\r\n      gallery.style.pointerEvents = 'auto';\r\n      gallery.style.overflow = 'visible';\r\n      \r\n      const firstLink = gallery.querySelector('a[data-elementor-open-lightbox=\"yes\"]');\r\n      if (!firstLink) return;\r\n      \r\n      const images = gallery.querySelectorAll('img');\r\n      let loadedCount = 0;\r\n      const totalImages = images.length;\r\n      \r\n      function checkAllLoaded() {\r\n        loadedCount++;\r\n        if (loadedCount >= totalImages) {\r\n          openLightbox();\r\n        }\r\n      }\r\n      \r\n      function openLightbox() {\r\n        firstLink.style.display = 'block';\r\n        firstLink.style.visibility = 'visible';\r\n        firstLink.style.pointerEvents = 'auto';\r\n        void firstLink.offsetHeight; \/\/ Force reflow\r\n        \r\n        setTimeout(() => {\r\n          const clickEvent = new MouseEvent('click', {\r\n            bubbles: true,\r\n            cancelable: true,\r\n            view: window\r\n          });\r\n          firstLink.dispatchEvent(clickEvent);\r\n          \r\n          \/\/ Wait for Elementor lightbox to appear, then fix visibility\r\n          setTimeout(() => {\r\n            const lightboxes = document.querySelectorAll('.elementor-lightbox, [data-elementor-lightbox]');\r\n            lightboxes.forEach(lb => {\r\n              lb.style.display = 'flex';\r\n              lb.style.visibility = 'visible';\r\n              lb.style.opacity = '1';\r\n              lb.style.transform = 'translateZ(0)';\r\n              lb.style.backfaceVisibility = 'hidden';\r\n            });\r\n            \r\n            const swiper = document.querySelector('.swiper-container, .elementor-swiper');\r\n            if (swiper) {\r\n              swiper.style.visibility = 'visible';\r\n              swiper.style.opacity = '1';\r\n            }\r\n            \r\n            window.dispatchEvent(new Event('resize'));\r\n            if (typeof elementorFrontend !== 'undefined' && elementorFrontend.elementsHandler) {\r\n              elementorFrontend.elementsHandler.runReadyTrigger(jQuery('.elementor-lightbox'));\r\n            }\r\n          }, 150);\r\n        }, 50);\r\n      }\r\n      \r\n      \/\/ Load images if not already loaded\r\n      if (totalImages === 0) {\r\n        openLightbox();\r\n      } else {\r\n        images.forEach(img => {\r\n          if (img.complete) {\r\n            checkAllLoaded();\r\n          } else {\r\n            img.addEventListener('load', checkAllLoaded);\r\n            img.addEventListener('error', checkAllLoaded);\r\n            const src = img.src;\r\n            img.src = '';\r\n            img.src = src;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initGalleryButtons);\r\n\r\n\/\/ Re-initialize after Elementor loop updates (filtering\/pagination)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initGalleryButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ Use MutationObserver as fallback for dynamic content\r\nconst galleryObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('open-gallery') || node.querySelector?.('.open-gallery'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initGalleryButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\ngalleryObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\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\t\t<\/div>\n\t\t\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6d50e8f elementor-widget elementor-widget-html\" data-id=\"6d50e8f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<script>\r\n(function() {\r\n  'use strict';\r\n  \r\n  const ITEMS_PER_PAGE = 9;\r\n  let currentPage = 1;\r\n  let totalPages = 1;\r\n  let isInitializing = false;\r\n  \r\n  function initPagination() {\r\n    if (isInitializing) return;\r\n    isInitializing = true;\r\n    \r\n    \/\/ Seleccionar el contenedor del loop grid espec\u00edfico\r\n    const loopContainer = document.querySelector('.elementor-element-730a4bd .elementor-loop-container');\r\n    if (!loopContainer) {\r\n      isInitializing = false;\r\n      return;\r\n    }\r\n    \r\n    \/\/ Obtener todos los items visibles del loop\r\n    const allItems = Array.from(loopContainer.querySelectorAll('.e-loop-item'));\r\n    \r\n    if (allItems.length === 0) {\r\n      isInitializing = false;\r\n      return;\r\n    }\r\n    \r\n    \/\/ Resetear a p\u00e1gina 1 cuando se aplica un filtro\r\n    currentPage = 1;\r\n    totalPages = Math.ceil(allItems.length \/ ITEMS_PER_PAGE);\r\n    \r\n    \/\/ Crear o actualizar contenedor de paginaci\u00f3n\r\n    let paginationContainer = document.querySelector('.custom-pagination-wrapper');\r\n    if (!paginationContainer) {\r\n      paginationContainer = document.createElement('div');\r\n      paginationContainer.className = 'custom-pagination-wrapper';\r\n      \r\n      \/\/ Insertar despu\u00e9s del widget loop-grid completo\r\n      const loopWidget = document.querySelector('.elementor-element-730a4bd');\r\n      if (loopWidget && loopWidget.parentElement) {\r\n        \/\/ Insertar despu\u00e9s del elemento completo\r\n        loopWidget.parentElement.insertBefore(paginationContainer, loopWidget.nextSibling);\r\n      }\r\n    }\r\n    \r\n    \/\/ Mostrar items de la p\u00e1gina actual\r\n    showPage(currentPage, allItems);\r\n    \r\n    \/\/ Crear controles de paginaci\u00f3n\r\n    createPaginationControls(paginationContainer);\r\n    \r\n    isInitializing = false;\r\n  }\r\n  \r\n  function showPage(page, items) {\r\n    const startIndex = (page - 1) * ITEMS_PER_PAGE;\r\n    const endIndex = startIndex + ITEMS_PER_PAGE;\r\n    \r\n    items.forEach((item, index) => {\r\n      if (index >= startIndex && index < endIndex) {\r\n        item.style.display = '';\r\n        item.style.visibility = 'visible';\r\n        item.style.opacity = '1';\r\n      } else {\r\n        item.style.display = 'none';\r\n      }\r\n    });\r\n    \r\n    \/\/ Scroll suave al inicio del contenedor\r\n    const loopWidget = document.querySelector('.elementor-element-730a4bd');\r\n    if (loopWidget) {\r\n      const headerOffset = 100;\r\n      const elementPosition = loopWidget.getBoundingClientRect().top;\r\n      const offsetPosition = elementPosition + window.pageYOffset - headerOffset;\r\n      \r\n      window.scrollTo({\r\n        top: offsetPosition,\r\n        behavior: 'smooth'\r\n      });\r\n    }\r\n  }\r\n  \r\n  function createPaginationControls(container) {\r\n    if (totalPages <= 1) {\r\n      container.innerHTML = '';\r\n      container.style.display = 'none';\r\n      return;\r\n    }\r\n    \r\n    container.style.display = 'flex';\r\n    container.innerHTML = '';\r\n    \r\n    const paginationDiv = document.createElement('div');\r\n    paginationDiv.className = 'custom-pagination-controls';\r\n    \r\n    \/\/ Bot\u00f3n Anterior\r\n    if (currentPage > 1) {\r\n      const prevBtn = createButton('\u00ab Anterior', () => goToPage(currentPage - 1));\r\n      paginationDiv.appendChild(prevBtn);\r\n    }\r\n    \r\n    \/\/ N\u00fameros de p\u00e1gina\r\n    const pageNumbers = getPageNumbers();\r\n    pageNumbers.forEach(pageNum => {\r\n      if (pageNum === '...') {\r\n        const dots = document.createElement('span');\r\n        dots.className = 'pagination-dots';\r\n        dots.textContent = '...';\r\n        paginationDiv.appendChild(dots);\r\n      } else {\r\n        const pageBtn = createButton(pageNum.toString(), () => goToPage(pageNum));\r\n        if (pageNum === currentPage) {\r\n          pageBtn.classList.add('active');\r\n        }\r\n        paginationDiv.appendChild(pageBtn);\r\n      }\r\n    });\r\n    \r\n    \/\/ Bot\u00f3n Siguiente\r\n    if (currentPage < totalPages) {\r\n      const nextBtn = createButton('Siguiente \u00bb', () => goToPage(currentPage + 1));\r\n      paginationDiv.appendChild(nextBtn);\r\n    }\r\n    \r\n    container.appendChild(paginationDiv);\r\n  }\r\n  \r\n  function createButton(text, onClick) {\r\n    const button = document.createElement('button');\r\n    button.className = 'pagination-btn';\r\n    button.textContent = text;\r\n    button.addEventListener('click', onClick);\r\n    return button;\r\n  }\r\n  \r\n  function getPageNumbers() {\r\n    const pages = [];\r\n    const maxVisible = 5;\r\n    \r\n    if (totalPages <= maxVisible) {\r\n      for (let i = 1; i <= totalPages; i++) {\r\n        pages.push(i);\r\n      }\r\n    } else {\r\n      if (currentPage <= 3) {\r\n        for (let i = 1; i <= 4; i++) pages.push(i);\r\n        pages.push('...');\r\n        pages.push(totalPages);\r\n      } else if (currentPage >= totalPages - 2) {\r\n        pages.push(1);\r\n        pages.push('...');\r\n        for (let i = totalPages - 3; i <= totalPages; i++) pages.push(i);\r\n      } else {\r\n        pages.push(1);\r\n        pages.push('...');\r\n        pages.push(currentPage - 1);\r\n        pages.push(currentPage);\r\n        pages.push(currentPage + 1);\r\n        pages.push('...');\r\n        pages.push(totalPages);\r\n      }\r\n    }\r\n    \r\n    return pages;\r\n  }\r\n  \r\n  function goToPage(page) {\r\n    currentPage = page;\r\n    const loopContainer = document.querySelector('.elementor-element-730a4bd .elementor-loop-container');\r\n    const allItems = Array.from(loopContainer.querySelectorAll('.e-loop-item'));\r\n    showPage(currentPage, allItems);\r\n    \r\n    const paginationContainer = document.querySelector('.custom-pagination-wrapper');\r\n    createPaginationControls(paginationContainer);\r\n  }\r\n  \r\n  \/\/ Inicializar en carga de p\u00e1gina\r\n  if (document.readyState === 'loading') {\r\n    document.addEventListener('DOMContentLoaded', function() {\r\n      setTimeout(initPagination, 500);\r\n    });\r\n  } else {\r\n    setTimeout(initPagination, 500);\r\n  }\r\n  \r\n  \/\/ Detectar cambios en el DOM\r\n  const observer = new MutationObserver(function(mutations) {\r\n    let shouldReinit = false;\r\n    \r\n    mutations.forEach(mutation => {\r\n      if (mutation.addedNodes.length || mutation.removedNodes.length) {\r\n        mutation.addedNodes.forEach(node => {\r\n          if (node.nodeType === 1) {\r\n            if (node.classList?.contains('e-loop-item') || \r\n                node.querySelector?.('.e-loop-item') ||\r\n                node.classList?.contains('elementor-loop-container')) {\r\n              shouldReinit = true;\r\n            }\r\n          }\r\n        });\r\n        \r\n        mutation.removedNodes.forEach(node => {\r\n          if (node.nodeType === 1) {\r\n            if (node.classList?.contains('e-loop-item')) {\r\n              shouldReinit = true;\r\n            }\r\n          }\r\n        });\r\n      }\r\n      \r\n      if (mutation.type === 'attributes' && mutation.target.classList?.contains('elementor-loop-container')) {\r\n        shouldReinit = true;\r\n      }\r\n    });\r\n    \r\n    if (shouldReinit) {\r\n      setTimeout(initPagination, 300);\r\n    }\r\n  });\r\n  \r\n  const targetNode = document.querySelector('.elementor-element-730a4bd');\r\n  if (targetNode) {\r\n    observer.observe(targetNode, {\r\n      childList: true,\r\n      subtree: true,\r\n      attributes: true,\r\n      attributeFilter: ['class', 'style']\r\n    });\r\n  }\r\n  \r\n  observer.observe(document.body, {\r\n    childList: true,\r\n    subtree: true\r\n  });\r\n  \r\n  \/\/ Detectar cambios en la URL\r\n  let lastUrl = location.href;\r\n  new MutationObserver(() => {\r\n    const url = location.href;\r\n    if (url !== lastUrl) {\r\n      lastUrl = url;\r\n      setTimeout(initPagination, 500);\r\n    }\r\n  }).observe(document.querySelector('title'), { \r\n    subtree: true, \r\n    characterData: true, \r\n    childList: true \r\n  });\r\n  \r\n  \/\/ Listener para eventos AJAX\r\n  if (typeof jQuery !== 'undefined') {\r\n    jQuery(document).ajaxComplete(function(event, xhr, settings) {\r\n      if (settings.url && settings.url.includes('elementor')) {\r\n        setTimeout(initPagination, 400);\r\n      }\r\n    });\r\n  }\r\n  \r\n  window.addEventListener('popstate', function() {\r\n    setTimeout(initPagination, 300);\r\n  });\r\n  \r\n})();\r\n<\/script>\r\n\r\n<style>\r\n\/* Asegurar que la paginaci\u00f3n est\u00e9 en su propia l\u00ednea *\/\r\n.custom-pagination-wrapper {\r\n  margin-top: 40px;\r\n  margin-bottom: 40px;\r\n  display: flex !important;\r\n  justify-content: center;\r\n  align-items: center;\r\n  width: 100% !important;\r\n  clear: both !important;\r\n  float: none !important;\r\n  position: relative !important;\r\n}\r\n\r\n\/* Forzar que aparezca debajo del grid *\/\r\n.elementor-element-730a4bd {\r\n  display: block !important;\r\n}\r\n\r\n.elementor-element-730a4bd .elementor-widget-container {\r\n  display: block !important;\r\n}\r\n\r\n.custom-pagination-controls {\r\n  display: flex;\r\n  gap: 8px;\r\n  align-items: center;\r\n  flex-wrap: wrap;\r\n  justify-content: center;\r\n  width: 100%;\r\n}\r\n\r\n.pagination-btn {\r\n  padding: 10px 16px;\r\n  background-color: #fff;\r\n  border: 1px solid #ddd;\r\n  border-radius: 4px;\r\n  cursor: pointer;\r\n  font-family: \"Inter\", Sans-serif;\r\n  font-size: 14px;\r\n  font-weight: 500;\r\n  color: #333;\r\n  transition: all 0.3s ease;\r\n  min-width: 44px;\r\n  text-align: center;\r\n}\r\n\r\n.pagination-btn:hover {\r\n  background-color: #B10C22;\r\n  color: #fff;\r\n  border-color: #B10C22;\r\n  transform: translateY(-2px);\r\n  box-shadow: 0 2px 8px rgba(177, 12, 34, 0.2);\r\n}\r\n\r\n.pagination-btn.active {\r\n  background-color: #B10C22;\r\n  color: #fff;\r\n  border-color: #B10C22;\r\n  font-weight: 600;\r\n  cursor: default;\r\n}\r\n\r\n.pagination-btn:disabled {\r\n  opacity: 0.5;\r\n  cursor: not-allowed;\r\n}\r\n\r\n.pagination-dots {\r\n  padding: 10px 8px;\r\n  color: #666;\r\n  font-family: \"Inter\", Sans-serif;\r\n  font-size: 14px;\r\n}\r\n\r\n\/* Responsive *\/\r\n@media (max-width: 767px) {\r\n  .custom-pagination-wrapper {\r\n    margin-top: 30px;\r\n    margin-bottom: 30px;\r\n  }\r\n  \r\n  .custom-pagination-controls {\r\n    gap: 5px;\r\n  }\r\n  \r\n  .pagination-btn {\r\n    padding: 8px 12px;\r\n    font-size: 13px;\r\n    min-width: 38px;\r\n  }\r\n  \r\n  .pagination-dots {\r\n    padding: 8px 5px;\r\n  }\r\n}\r\n<\/style>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-bf48e70 elementor-widget elementor-widget-html\" data-id=\"bf48e70\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<script>jQuery(document).ready(function($) {\r\n    \/\/ Function to get URL parameter value\r\n    function getUrlParameter(name) {\r\n        name = name.replace(\/[\\[]\/, '\\\\[').replace(\/[\\]]\/, '\\\\]');\r\n        var regex = new RegExp('[\\\\?&]' + name + '=([^&#]*)');\r\n        var results = regex.exec(location.search);\r\n        return results === null ? '' : decodeURIComponent(results[1].replace(\/\\+\/g, ' '));\r\n    }\r\n    \r\n    \/\/ Function to apply filter on page load\r\n    function applyFilterFromUrl() {\r\n        \/\/ Get the filter parameter from URL\r\n        \/\/ Format: e-filter-3509b55-categoria-casos-de-exito\r\n        var filterParam = getUrlParameter('e-filter-3509b55-categoria-casos-de-exito');\r\n        \r\n        if (filterParam && filterParam !== '__all') {\r\n            \/\/ Wait a bit for Elementor to initialize\r\n            setTimeout(function() {\r\n                \/\/ Find the filter button with matching data-filter attribute\r\n                var $filterButton = $('.e-filter-item[data-filter=\"' + filterParam + '\"]');\r\n                \r\n                if ($filterButton.length) {\r\n                    \/\/ Trigger click on the filter button\r\n                    $filterButton.trigger('click');\r\n                    \r\n                    \/\/ Update aria-pressed attributes\r\n                    $('.e-filter-item').attr('aria-pressed', 'false');\r\n                    $filterButton.attr('aria-pressed', 'true');\r\n                }\r\n            }, 2500); \/\/ Adjust timing if needed\r\n        }\r\n    }\r\n    \r\n    \/\/ Apply filter when page loads\r\n    applyFilterFromUrl();\r\n    \r\n    \/\/ Optional: Update URL when filter is clicked (if not already working)\r\n    $('.e-filter-item').on('click', function() {\r\n        var filter = $(this).attr('data-filter');\r\n        var baseUrl = $('.e-filter').attr('data-base-url');\r\n        \r\n        if (filter === '__all') {\r\n            \/\/ Remove filter parameter\r\n            window.history.pushState({}, '', baseUrl);\r\n        } else {\r\n            \/\/ Add filter parameter\r\n            var newUrl = baseUrl + '?e-filter-3509b55-categoria-casos-de-exito=' + filter;\r\n            window.history.pushState({}, '', newUrl);\r\n        }\r\n    });\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9968dde elementor-widget elementor-widget-html\" data-id=\"9968dde\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<script>function initLightboxButtons() {\r\n  document.querySelectorAll('.lightbox-link').forEach(wrapper => {\r\n    \/\/ Skip if already initialized\r\n    if (wrapper.dataset.lightboxInitialized) return;\r\n    wrapper.dataset.lightboxInitialized = 'true';\r\n    \r\n    const link = wrapper.querySelector('a');\r\n    if (!link) return;\r\n    \r\n    wrapper.addEventListener('click', function(e) {\r\n      e.preventDefault();\r\n      \r\n      \/\/ Prevent multiple overlays\r\n      if (document.querySelector('.video-lightbox-overlay')) return;\r\n      \r\n      const videoUrl = new URL(link.href);\r\n      const videoId = videoUrl.searchParams.get('v');\r\n      if (!videoId) return;\r\n      \r\n      const embedUrl = `https:\/\/www.youtube.com\/embed\/${videoId}?autoplay=1`;\r\n      \r\n      \/\/ Create overlay\r\n      const overlay = document.createElement('div');\r\n      overlay.className = 'video-lightbox-overlay';\r\n      overlay.style.cssText = `\r\n        position: fixed;\r\n        top: 0;\r\n        left: 0;\r\n        width: 100vw;\r\n        height: 100vh;\r\n        background: rgba(0,0,0,0.9);\r\n        display: flex;\r\n        align-items: center;\r\n        justify-content: center;\r\n        z-index: 99999;\r\n        opacity: 0;\r\n        transition: opacity 0.3s ease;\r\n      `;\r\n      \r\n      \/\/ Close button\r\n      const closeBtn = document.createElement('span');\r\n      closeBtn.innerHTML = '&times;';\r\n      closeBtn.style.cssText = `\r\n        position: absolute;\r\n        top: 20px;\r\n        right: 40px;\r\n        color: white;\r\n        font-size: 40px;\r\n        font-weight: bold;\r\n        cursor: pointer;\r\n        z-index: 100000;\r\n        transition: transform 0.2s ease;\r\n      `;\r\n      closeBtn.addEventListener('mouseenter', () => {\r\n        closeBtn.style.transform = 'scale(1.2)';\r\n      });\r\n      closeBtn.addEventListener('mouseleave', () => {\r\n        closeBtn.style.transform = 'scale(1)';\r\n      });\r\n      \r\n      function closeOverlay() {\r\n        overlay.style.opacity = '0';\r\n        setTimeout(() => {\r\n          if (overlay && overlay.parentNode) {\r\n            overlay.remove();\r\n          }\r\n        }, 300);\r\n      }\r\n      \r\n      closeBtn.addEventListener('click', closeOverlay);\r\n      \r\n      \/\/ Create iframe container for better responsive sizing\r\n      const iframeContainer = document.createElement('div');\r\n      iframeContainer.style.cssText = `\r\n        position: relative;\r\n        width: 90%;\r\n        max-width: 1200px;\r\n        aspect-ratio: 16\/9;\r\n      `;\r\n      \r\n      \/\/ Create iframe\r\n      const iframe = document.createElement('iframe');\r\n      iframe.src = embedUrl;\r\n      iframe.style.cssText = `\r\n        position: absolute;\r\n        top: 0;\r\n        left: 0;\r\n        width: 100%;\r\n        height: 100%;\r\n        border: none;\r\n      `;\r\n      iframe.allow = \"autoplay; fullscreen; picture-in-picture\";\r\n      iframe.allowFullscreen = true;\r\n      \r\n      iframeContainer.appendChild(iframe);\r\n      overlay.appendChild(iframeContainer);\r\n      overlay.appendChild(closeBtn);\r\n      document.body.appendChild(overlay);\r\n      \r\n      \/\/ Fade in animation\r\n      requestAnimationFrame(() => {\r\n        overlay.style.opacity = '1';\r\n      });\r\n      \r\n      \/\/ Close on clicking outside iframe\r\n      overlay.addEventListener('click', e => {\r\n        if (e.target === overlay) {\r\n          closeOverlay();\r\n        }\r\n      });\r\n      \r\n      \/\/ Close on ESC key\r\n      const escapeHandler = (e) => {\r\n        if (e.key === 'Escape') {\r\n          closeOverlay();\r\n          document.removeEventListener('keydown', escapeHandler);\r\n        }\r\n      };\r\n      document.addEventListener('keydown', escapeHandler);\r\n      \r\n      \/\/ Prevent body scroll\r\n      document.body.style.overflow = 'hidden';\r\n      \r\n      \/\/ Restore scroll on close\r\n      const originalClose = closeOverlay;\r\n      closeOverlay = function() {\r\n        document.body.style.overflow = '';\r\n        document.removeEventListener('keydown', escapeHandler);\r\n        originalClose();\r\n      };\r\n    });\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener('DOMContentLoaded', initLightboxButtons);\r\n\r\n\/\/ Re-initialize after AJAX updates (Elementor filtering)\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    setTimeout(initLightboxButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ MutationObserver as fallback for dynamic content\r\nconst lightboxObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('lightbox-link') || node.querySelector?.('.lightbox-link'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    initLightboxButtons();\r\n  }\r\n});\r\n\r\n\/\/ Start observing\r\nlightboxObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9626f8f elementor-widget elementor-widget-html\" data-id=\"9626f8f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- C\u00d3DIGO FINAL CORREGIDO PARA ELEMENTOR -->\r\n<!-- Reemplaza TODO el contenido del widget HTML en Elementor con este c\u00f3digo -->\r\n\r\n<style>\r\n  #caso-exito-id,\r\n  #caso-exito-title {\r\n    display: none;\r\n  }\r\n\r\n  .custom-modal-overlay {\r\n    display: none;\r\n    position: fixed;\r\n    top: 0;\r\n    left: 0;\r\n    width: 100%;\r\n    height: 100%;\r\n    background: rgba(0,0,0,0.85);\r\n    z-index: 9998;\r\n  }\r\n\r\n  .custom-modal {\r\n    position: fixed;\r\n    top: 50%;\r\n    left: 50%;\r\n    transform: translate(-50%, -50%);\r\n    background: rgba(255,255,255,0.1);\r\n    padding: 30px;\r\n    max-width: 600px;\r\n    width: 90%;\r\n    border-radius: 8px;\r\n    z-index: 9999;\r\n    box-shadow: 0 4px 15px rgba(0,0,0,0.5);\r\n    backdrop-filter: blur(10px);\r\n  }\r\n\r\n  .custom-modal-close {\r\n    position: absolute;\r\n    top: 10px;\r\n    right: 15px;\r\n    cursor: pointer;\r\n    font-size: 28px;\r\n    color: #fff;\r\n    font-weight: bold;\r\n    line-height: 1;\r\n    transition: color 0.2s;\r\n  }\r\n\r\n  .custom-modal-close:hover {\r\n    color: #f0f0f0;\r\n  }\r\n\r\n  .modal-fixed-title {\r\n    color: #fff;\r\n    font-size: 20px;\r\n    margin-bottom: 5px;\r\n    font-weight: 600;\r\n  }\r\n\r\n  .modal-dynamic-title {\r\n    color: #fff;\r\n    font-size: 17px;\r\n    margin-bottom: 15px;\r\n    font-weight: 400;\r\n  }\r\n\r\n  .modal-form-container {\r\n    padding: 20px;\r\n    border-radius: 6px;\r\n  }\r\n  \r\n  .boton-descargar {\r\n    cursor: pointer;\r\n  }\r\n<\/style>\r\n\r\n<script>\r\nfunction initDownloadButtons() {\r\n  const buttons = document.querySelectorAll('.boton-descargar');\r\n  \r\n  console.log('\ud83d\udd0d Encontrados', buttons.length, 'botones de descarga');\r\n  \r\n  buttons.forEach(function(button, index) {\r\n    console.log(`\ud83d\udccb Procesando bot\u00f3n ${index + 1}...`);\r\n    \r\n    \/\/ Skip if already initialized\r\n    if (button.dataset.downloadInitialized) {\r\n      console.log('\u23ed\ufe0f Bot\u00f3n ya inicializado, saltando...');\r\n      return;\r\n    }\r\n    button.dataset.downloadInitialized = 'true';\r\n\r\n    \/\/ Buscar en el elemento padre m\u00e1s cercano\r\n    const container = button.closest('.elementor-element-77dc04c')\r\n                     || button.closest('.e-loop-item')\r\n                     || button.closest('.carousel-item')\r\n                     || button.parentElement;\r\n\r\n    if (!container) {\r\n      console.log('\u274c No se encontr\u00f3 container');\r\n      button.style.setProperty('display', 'none', 'important');\r\n      return;\r\n    }\r\n\r\n    const formIdElement = container.querySelector('#caso-exito-id');\r\n    const titleElement = container.querySelector('#caso-exito-title');\r\n\r\n    if (!formIdElement) {\r\n      console.log('\u274c No se encontr\u00f3 #caso-exito-id');\r\n      button.style.setProperty('display', 'none', 'important');\r\n      return;\r\n    }\r\n\r\n    \/\/ USAR textContent para leer elementos con display:none\r\n    const formId = formIdElement.textContent.trim();\r\n    const formTitle = titleElement ? titleElement.textContent.trim() : \"\";\r\n\r\n    console.log('\ud83d\udcdd Form ID:', formId);\r\n    console.log('\ud83d\udcdd Form Title:', formTitle);\r\n\r\n    if (!formId || formId === \"\") {\r\n      console.log('\u274c Form ID est\u00e1 vac\u00edo');\r\n      button.style.setProperty('display', 'none', 'important');\r\n      return;\r\n    }\r\n\r\n    \/\/ \u2705 HAY FORM ID V\u00c1LIDO - MOSTRAR EL BOT\u00d3N\r\n    console.log('\u2705 Mostrando bot\u00f3n con formId v\u00e1lido');\r\n    button.style.setProperty('display', 'block', 'important');\r\n    \r\n    const uniqueId = 'modal-' + formId.replace(\/[^a-zA-Z0-9]\/g, '-');\r\n    const overlayId = uniqueId + '-overlay';\r\n    const modalId = uniqueId + '-modal';\r\n    const closeId = uniqueId + '-close';\r\n    const containerId = uniqueId + '-container';\r\n    const dynamicTitleId = uniqueId + '-title';\r\n\r\n    \/\/ Check if modal already exists\r\n    if (document.getElementById(overlayId)) {\r\n      console.log('\u267b\ufe0f Modal ya existe, reutilizando...');\r\n      attachClickHandler(button, overlayId, formId, formTitle, containerId, dynamicTitleId);\r\n      return;\r\n    }\r\n\r\n    \/\/ Create modal HTML\r\n    console.log('\ud83c\udfd7\ufe0f Creando nuevo modal...');\r\n    const modalHTML = `\r\n      <div id=\"${overlayId}\" class=\"custom-modal-overlay\">\r\n        <div id=\"${modalId}\" class=\"custom-modal\">\r\n          <span id=\"${closeId}\" class=\"custom-modal-close\">\u00d7<\/span>\r\n          <div class=\"modal-fixed-title\">Download Dossier T\u00e9cnico<\/div>\r\n          <div id=\"${dynamicTitleId}\" class=\"modal-dynamic-title\"><\/div>\r\n          <div id=\"${containerId}\" class=\"modal-form-container\"><\/div>\r\n        <\/div>\r\n      <\/div>\r\n    `;\r\n    \r\n    document.body.insertAdjacentHTML('beforeend', modalHTML);\r\n\r\n    const overlay = document.getElementById(overlayId);\r\n    const closeModal = document.getElementById(closeId);\r\n    const formContainer = document.getElementById(containerId);\r\n    \r\n    \/\/ Load HubSpot script if not loaded\r\n    if (!window.hbspt) {\r\n      console.log('\ud83d\udce6 Cargando script de HubSpot...');\r\n      const script = document.createElement('script');\r\n      script.src = \"\/\/js-eu1.hsforms.net\/forms\/embed\/v2.js\";\r\n      script.charset = \"utf-8\";\r\n      document.body.appendChild(script);\r\n    }\r\n    \r\n    \/\/ Close modal handlers\r\n    closeModal.addEventListener(\"click\", function() {\r\n      overlay.style.display = \"none\";\r\n      formContainer.innerHTML = \"\";\r\n    });\r\n\r\n    overlay.addEventListener(\"click\", function(e) {\r\n      if (e.target === overlay) {\r\n        overlay.style.display = \"none\";\r\n        formContainer.innerHTML = \"\";\r\n      }\r\n    });\r\n\r\n    \/\/ Attach click handler\r\n    attachClickHandler(button, overlayId, formId, formTitle, containerId, dynamicTitleId);\r\n  });\r\n}\r\n\r\nfunction attachClickHandler(button, overlayId, formId, formTitle, containerId, dynamicTitleId) {\r\n  button.addEventListener(\"click\", function(e) {\r\n    e.preventDefault();\r\n    e.stopPropagation();\r\n    \r\n    console.log('\ud83d\uddb1\ufe0f Click en bot\u00f3n de descarga');\r\n    \r\n    const overlay = document.getElementById(overlayId);\r\n    const formContainer = document.getElementById(containerId);\r\n    const dynamicTitleBox = document.getElementById(dynamicTitleId);\r\n    \r\n    if (!overlay || !formContainer || !dynamicTitleBox) {\r\n      console.log('\u274c Error: elementos del modal no encontrados');\r\n      return;\r\n    }\r\n    \r\n    overlay.style.display = \"block\";\r\n    formContainer.innerHTML = \"\";\r\n    dynamicTitleBox.textContent = formTitle;\r\n\r\n    console.log('\ud83d\udccb Creando formulario HubSpot...');\r\n\r\n    \/\/ Wait for HubSpot and create form\r\n    const waitForHbspt = setInterval(function() {\r\n      if (window.hbspt && window.hbspt.forms) {\r\n        clearInterval(waitForHbspt);\r\n        console.log('\u2705 HubSpot cargado, creando formulario...');\r\n        hbspt.forms.create({\r\n          portalId: \"144173379\",\r\n          formId: formId,\r\n          region: \"eu1\",\r\n          target: \"#\" + containerId\r\n        });\r\n      }\r\n    }, 100);\r\n  });\r\n}\r\n\r\n\/\/ Initialize on page load\r\ndocument.addEventListener(\"DOMContentLoaded\", function() {\r\n  console.log('\ud83d\ude80 P\u00e1gina cargada, inicializando botones...');\r\n  initDownloadButtons();\r\n});\r\n\r\n\/\/ Re-initialize after AJAX updates\r\nif (typeof jQuery !== 'undefined') {\r\n  jQuery(document).ajaxComplete(function() {\r\n    console.log('\ud83d\udd04 AJAX completado, reinicializando...');\r\n    setTimeout(initDownloadButtons, 100);\r\n  });\r\n}\r\n\r\n\/\/ MutationObserver as fallback\r\nconst downloadObserver = new MutationObserver(function(mutations) {\r\n  let shouldInit = false;\r\n  mutations.forEach(mutation => {\r\n    if (mutation.addedNodes.length) {\r\n      mutation.addedNodes.forEach(node => {\r\n        if (node.nodeType === 1 && (node.classList?.contains('boton-descargar') || node.querySelector?.('.boton-descargar'))) {\r\n          shouldInit = true;\r\n        }\r\n      });\r\n    }\r\n  });\r\n  if (shouldInit) {\r\n    console.log('\ud83d\udc40 Detectados nuevos elementos, reinicializando...');\r\n    initDownloadButtons();\r\n  }\r\n});\r\n\r\ndownloadObserver.observe(document.body, {\r\n  childList: true,\r\n  subtree: true\r\n});\r\n\r\nconsole.log('\u2705 Script de descarga cargado correctamente');\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-9d60245 e-flex e-con-boxed e-con e-parent\" data-id=\"9d60245\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-92464f4 elementor-widget elementor-widget-heading\" data-id=\"92464f4\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Do you have a different challenge?<\/p>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ddecb1a elementor-widget__width-initial elementor-widget elementor-widget-text-editor\" data-id=\"ddecb1a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Our engineering team can design the customized automation solution that your line needs. Write to us and we will respond in \u2264 24 h. <\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-cea7590 leer_mas elementor-widget elementor-widget-button\" data-id=\"cea7590\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/gurpea.com\/en\/contacto\/#form\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">I want to innovate my production<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-a26f9cb hidden e-flex e-con-boxed e-con e-parent\" data-id=\"a26f9cb\" data-element_type=\"container\" data-e-type=\"container\" id=\"myDiv\" data-settings=\"{&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-bac990b elementor-fixed elementor-view-default elementor-invisible elementor-widget elementor-widget-icon\" data-id=\"bac990b\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;_position&quot;:&quot;fixed&quot;,&quot;_animation&quot;:&quot;fadeIn&quot;}\" data-widget_type=\"icon.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon-wrapper\">\n\t\t\t<a class=\"elementor-icon\" href=\"#top\">\n\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-arrow-up\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M34.9 289.5l-22.2-22.2c-9.4-9.4-9.4-24.6 0-33.9L207 39c9.4-9.4 24.6-9.4 33.9 0l194.3 194.3c9.4 9.4 9.4 24.6 0 33.9L413 289.4c-9.5 9.5-25 9.3-34.3-.4L264 168.6V456c0 13.3-10.7 24-24 24h-32c-13.3 0-24-10.7-24-24V168.6L69.2 289.1c-9.3 9.8-24.8 10-34.3.4z\"><\/path><\/svg>\t\t\t<\/a>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-29d2d66 elementor-widget elementor-widget-html\" data-id=\"29d2d66\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<script>window.addEventListener('scroll', function () {\r\n    const scrollTop = window.scrollY || document.documentElement.scrollTop;\r\n    const windowHeight = window.innerHeight;\r\n    const docHeight = document.documentElement.scrollHeight;\r\n\r\n    const scrollPercent = (scrollTop + windowHeight) \/ docHeight;\r\n\r\n    const targetDiv = document.getElementById('myDiv');\r\n\r\n    if (scrollPercent >= 0.5) {\r\n      targetDiv.classList.add('visible');\r\n      targetDiv.classList.remove('hidden');\r\n    } else {\r\n      targetDiv.classList.add('hidden');\r\n      targetDiv.classList.remove('visible');\r\n    }\r\n  });\r\n<\/script>\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>SUCCESS STORIES Request a project assessment At Gurpea, we develop customized projects implementing the most innovative technologies and solutions in the field of automation and industrial maintenance. We work for companies in various sectors, such as automation, aeronautics, pharmaceuticals, energy, and food. All this multi-sectoral know-how acquired, and extrapolatable to any type of work, positions [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-10800","page","type-page","status-publish","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Success stories | Gurpea<\/title>\n<meta name=\"description\" content=\"We develop customized projects for various sectors, implementing innovative technologies within the field of automation.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/gurpea.com\/en\/success-stories\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Success stories | Gurpea\" \/>\n<meta property=\"og:description\" content=\"We develop customized projects for various sectors, implementing innovative technologies within the field of automation.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/gurpea.com\/en\/success-stories\/\" \/>\n<meta property=\"og:site_name\" content=\"Gurpea\" \/>\n<meta property=\"article:modified_time\" content=\"2025-12-02T08:19:11+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/Objeto-inteligente-vectorial-30.png\" \/>\n\t<meta property=\"og:image:width\" content=\"115\" \/>\n\t<meta property=\"og:image:height\" content=\"120\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"86 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/gurpea.com\\\/en\\\/success-stories\\\/\",\"url\":\"https:\\\/\\\/gurpea.com\\\/en\\\/success-stories\\\/\",\"name\":\"Success stories | Gurpea\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/gurpea.com\\\/en\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/gurpea.com\\\/en\\\/success-stories\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/gurpea.com\\\/en\\\/success-stories\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/gurpea.com\\\/wp-content\\\/uploads\\\/2025\\\/10\\\/Objeto-inteligente-vectorial-30.png\",\"datePublished\":\"2025-09-05T07:43:46+00:00\",\"dateModified\":\"2025-12-02T08:19:11+00:00\",\"description\":\"We develop customized projects for various sectors, implementing innovative technologies within the field of automation.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/gurpea.com\\\/en\\\/success-stories\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/gurpea.com\\\/en\\\/success-stories\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/gurpea.com\\\/en\\\/success-stories\\\/#primaryimage\",\"url\":\"https:\\\/\\\/gurpea.com\\\/wp-content\\\/uploads\\\/2025\\\/10\\\/Objeto-inteligente-vectorial-30.png\",\"contentUrl\":\"https:\\\/\\\/gurpea.com\\\/wp-content\\\/uploads\\\/2025\\\/10\\\/Objeto-inteligente-vectorial-30.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/gurpea.com\\\/en\\\/success-stories\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/gurpea.com\\\/en\\\/home\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Success stories\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/gurpea.com\\\/en\\\/#website\",\"url\":\"https:\\\/\\\/gurpea.com\\\/en\\\/\",\"name\":\"Gurpea\",\"description\":\"Mantenimiento industrial | Ingenier\u00eda de automatizaci\u00f3n\",\"publisher\":{\"@id\":\"https:\\\/\\\/gurpea.com\\\/en\\\/#organization\"},\"alternateName\":\"Gurpea\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/gurpea.com\\\/en\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/gurpea.com\\\/en\\\/#organization\",\"name\":\"Gurpea\",\"url\":\"https:\\\/\\\/gurpea.com\\\/en\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/gurpea.com\\\/en\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/gurpea.com\\\/wp-content\\\/uploads\\\/2025\\\/11\\\/GURPEA_MAR_25_COLOR-scaled.png\",\"contentUrl\":\"https:\\\/\\\/gurpea.com\\\/wp-content\\\/uploads\\\/2025\\\/11\\\/GURPEA_MAR_25_COLOR-scaled.png\",\"width\":2560,\"height\":1811,\"caption\":\"Gurpea\"},\"image\":{\"@id\":\"https:\\\/\\\/gurpea.com\\\/en\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/es.linkedin.com\\\/company\\\/gurpeagroup\",\"https:\\\/\\\/www.youtube.com\\\/channel\\\/UC02cVgxZCYiYrZtyYLToROQ\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Success stories | Gurpea","description":"We develop customized projects for various sectors, implementing innovative technologies within the field of automation.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/gurpea.com\/en\/success-stories\/","og_locale":"en_US","og_type":"article","og_title":"Success stories | Gurpea","og_description":"We develop customized projects for various sectors, implementing innovative technologies within the field of automation.","og_url":"https:\/\/gurpea.com\/en\/success-stories\/","og_site_name":"Gurpea","article_modified_time":"2025-12-02T08:19:11+00:00","og_image":[{"width":115,"height":120,"url":"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/Objeto-inteligente-vectorial-30.png","type":"image\/png"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"86 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/gurpea.com\/en\/success-stories\/","url":"https:\/\/gurpea.com\/en\/success-stories\/","name":"Success stories | Gurpea","isPartOf":{"@id":"https:\/\/gurpea.com\/en\/#website"},"primaryImageOfPage":{"@id":"https:\/\/gurpea.com\/en\/success-stories\/#primaryimage"},"image":{"@id":"https:\/\/gurpea.com\/en\/success-stories\/#primaryimage"},"thumbnailUrl":"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/Objeto-inteligente-vectorial-30.png","datePublished":"2025-09-05T07:43:46+00:00","dateModified":"2025-12-02T08:19:11+00:00","description":"We develop customized projects for various sectors, implementing innovative technologies within the field of automation.","breadcrumb":{"@id":"https:\/\/gurpea.com\/en\/success-stories\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/gurpea.com\/en\/success-stories\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/gurpea.com\/en\/success-stories\/#primaryimage","url":"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/Objeto-inteligente-vectorial-30.png","contentUrl":"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/10\/Objeto-inteligente-vectorial-30.png"},{"@type":"BreadcrumbList","@id":"https:\/\/gurpea.com\/en\/success-stories\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/gurpea.com\/en\/home\/"},{"@type":"ListItem","position":2,"name":"Success stories"}]},{"@type":"WebSite","@id":"https:\/\/gurpea.com\/en\/#website","url":"https:\/\/gurpea.com\/en\/","name":"Gurpea","description":"Mantenimiento industrial | Ingenier\u00eda de automatizaci\u00f3n","publisher":{"@id":"https:\/\/gurpea.com\/en\/#organization"},"alternateName":"Gurpea","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/gurpea.com\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/gurpea.com\/en\/#organization","name":"Gurpea","url":"https:\/\/gurpea.com\/en\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/gurpea.com\/en\/#\/schema\/logo\/image\/","url":"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/GURPEA_MAR_25_COLOR-scaled.png","contentUrl":"https:\/\/gurpea.com\/wp-content\/uploads\/2025\/11\/GURPEA_MAR_25_COLOR-scaled.png","width":2560,"height":1811,"caption":"Gurpea"},"image":{"@id":"https:\/\/gurpea.com\/en\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/es.linkedin.com\/company\/gurpeagroup","https:\/\/www.youtube.com\/channel\/UC02cVgxZCYiYrZtyYLToROQ"]}]}},"_links":{"self":[{"href":"https:\/\/gurpea.com\/en\/wp-json\/wp\/v2\/pages\/10800","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/gurpea.com\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/gurpea.com\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/gurpea.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/gurpea.com\/en\/wp-json\/wp\/v2\/comments?post=10800"}],"version-history":[{"count":0,"href":"https:\/\/gurpea.com\/en\/wp-json\/wp\/v2\/pages\/10800\/revisions"}],"wp:attachment":[{"href":"https:\/\/gurpea.com\/en\/wp-json\/wp\/v2\/media?parent=10800"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}