{"id":34606,"date":"2026-07-28T13:28:55","date_gmt":"2026-07-28T11:28:55","guid":{"rendered":"https:\/\/www.proactivanet.com\/work-with-us\/"},"modified":"2026-11-06T12:00:49","modified_gmt":"2026-11-06T11:00:49","slug":"work-with-us","status":"publish","type":"page","link":"https:\/\/www.proactivanet.com\/en\/work-with-us\/","title":{"rendered":"Work with Us"},"content":{"rendered":"\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\"><link href=\"https:\/\/fonts.googleapis.com\/css2?family=Inter:wght@400;500;600;700;800&display=swap\" rel=\"stylesheet\">\n<style>@keyframes spin{to{transform:rotate(360deg)}}#ge-empleo *,#ge-empleo ::after,#ge-empleo ::before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x:  ;--tw-pan-y:  ;--tw-pinch-zoom:  ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position:  ;--tw-gradient-via-position:  ;--tw-gradient-to-position:  ;--tw-ordinal:  ;--tw-slashed-zero:  ;--tw-numeric-figure:  ;--tw-numeric-spacing:  ;--tw-numeric-fraction:  ;--tw-ring-inset:  ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 \/ 0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur:  ;--tw-brightness:  ;--tw-contrast:  ;--tw-grayscale:  ;--tw-hue-rotate:  ;--tw-invert:  ;--tw-saturate:  ;--tw-sepia:  ;--tw-drop-shadow:  ;--tw-backdrop-blur:  ;--tw-backdrop-brightness:  ;--tw-backdrop-contrast:  ;--tw-backdrop-grayscale:  ;--tw-backdrop-hue-rotate:  ;--tw-backdrop-invert:  ;--tw-backdrop-opacity:  ;--tw-backdrop-saturate:  ;--tw-backdrop-sepia:  ;--tw-contain-size:  ;--tw-contain-layout:  ;--tw-contain-paint:  ;--tw-contain-style:  }#ge-empleo ::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x:  ;--tw-pan-y:  ;--tw-pinch-zoom:  ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position:  ;--tw-gradient-via-position:  ;--tw-gradient-to-position:  ;--tw-ordinal:  ;--tw-slashed-zero:  ;--tw-numeric-figure:  ;--tw-numeric-spacing:  ;--tw-numeric-fraction:  ;--tw-ring-inset:  ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 \/ 0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur:  ;--tw-brightness:  ;--tw-contrast:  ;--tw-grayscale:  ;--tw-hue-rotate:  ;--tw-invert:  ;--tw-saturate:  ;--tw-sepia:  ;--tw-drop-shadow:  ;--tw-backdrop-blur:  ;--tw-backdrop-brightness:  ;--tw-backdrop-contrast:  ;--tw-backdrop-grayscale:  ;--tw-backdrop-hue-rotate:  ;--tw-backdrop-invert:  ;--tw-backdrop-opacity:  ;--tw-backdrop-saturate:  ;--tw-backdrop-sepia:  ;--tw-contain-size:  ;--tw-contain-layout:  ;--tw-contain-paint:  ;--tw-contain-style:  }#ge-empleo *,#ge-empleo ::after,#ge-empleo ::before{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}#ge-empleo ::after,#ge-empleo ::before{--tw-content:''}#ge-empleo{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:Inter,system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;margin:0;line-height:inherit}#ge-empleo hr{height:0;color:inherit;border-top-width:1px}#ge-empleo abbr:where([title]){text-decoration:underline dotted}#ge-empleo h1,#ge-empleo h2,#ge-empleo h3,#ge-empleo h4,#ge-empleo h5,#ge-empleo h6{font-size:inherit;font-weight:inherit}#ge-empleo a{color:inherit;text-decoration:inherit}#ge-empleo b,#ge-empleo strong{font-weight:bolder}#ge-empleo code,#ge-empleo kbd,#ge-empleo pre,#ge-empleo samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}#ge-empleo small{font-size:80%}#ge-empleo sub,#ge-empleo sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}#ge-empleo sub{bottom:-.25em}#ge-empleo sup{top:-.5em}#ge-empleo table{text-indent:0;border-color:inherit;border-collapse:collapse}#ge-empleo button,#ge-empleo input,#ge-empleo optgroup,#ge-empleo select,#ge-empleo textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}#ge-empleo button,#ge-empleo select{text-transform:none}#ge-empleo button,#ge-empleo input:where([type=button]),#ge-empleo input:where([type=reset]),#ge-empleo input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}#ge-empleo :-moz-focusring{outline:auto}#ge-empleo :-moz-ui-invalid{box-shadow:none}#ge-empleo progress{vertical-align:baseline}#ge-empleo ::-webkit-inner-spin-button,#ge-empleo ::-webkit-outer-spin-button{height:auto}#ge-empleo [type=search]{-webkit-appearance:textfield;outline-offset:-2px}#ge-empleo ::-webkit-search-decoration{-webkit-appearance:none}#ge-empleo ::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}#ge-empleo summary{display:list-item}#ge-empleo blockquote,#ge-empleo dd,#ge-empleo dl,#ge-empleo figure,#ge-empleo h1,#ge-empleo h2,#ge-empleo h3,#ge-empleo h4,#ge-empleo h5,#ge-empleo h6,#ge-empleo hr,#ge-empleo p,#ge-empleo pre{margin:0}#ge-empleo fieldset{margin:0;padding:0}#ge-empleo dialog,#ge-empleo legend{padding:0}#ge-empleo menu,#ge-empleo ol,#ge-empleo ul{list-style:none;margin:0;padding:0}#ge-empleo textarea{resize:vertical}#ge-empleo input::placeholder,#ge-empleo textarea::placeholder{opacity:1;color:#9ca3af}#ge-empleo [role=button],#ge-empleo button{cursor:pointer}#ge-empleo :disabled{cursor:default}#ge-empleo audio,#ge-empleo canvas,#ge-empleo embed,#ge-empleo iframe,#ge-empleo img,#ge-empleo object,#ge-empleo svg,#ge-empleo video{display:block;vertical-align:middle}#ge-empleo img,#ge-empleo video{max-width:100%;height:auto}#ge-empleo [hidden]:where(:not([hidden=until-found])){display:none}#ge-empleo .col-span-2{grid-column:span 2\/span 2}#ge-empleo .mx-auto{margin-left:auto;margin-right:auto}#ge-empleo .mb-1{margin-bottom:.25rem}#ge-empleo .mb-10{margin-bottom:2.5rem}#ge-empleo .mb-12{margin-bottom:3rem}#ge-empleo .mb-2{margin-bottom:.5rem}#ge-empleo .mb-3{margin-bottom:.75rem}#ge-empleo .mb-4{margin-bottom:1rem}#ge-empleo .mb-5{margin-bottom:1.25rem}#ge-empleo .mb-6{margin-bottom:1.5rem}#ge-empleo .mb-8{margin-bottom:2rem}#ge-empleo .mt-0\\.5{margin-top:.125rem}#ge-empleo .mt-1{margin-top:.25rem}#ge-empleo .mt-10{margin-top:2.5rem}#ge-empleo .mt-3{margin-top:.75rem}#ge-empleo .mt-5{margin-top:1.25rem}#ge-empleo .block{display:block}#ge-empleo .inline-block{display:inline-block}#ge-empleo .inline{display:inline}#ge-empleo .flex{display:flex}#ge-empleo .inline-flex{display:inline-flex}#ge-empleo .grid{display:grid}#ge-empleo .hidden{display:none}#ge-empleo .h-10{height:2.5rem}#ge-empleo .h-14{height:3.5rem}#ge-empleo .h-16{height:4rem}#ge-empleo .h-4{height:1rem}#ge-empleo .h-5{height:1.25rem}#ge-empleo .h-6{height:1.5rem}#ge-empleo .h-8{height:2rem}#ge-empleo .max-h-20{max-height:5rem}#ge-empleo .min-h-screen{min-height:100vh}#ge-empleo .w-16{width:4rem}#ge-empleo .w-4{width:1rem}#ge-empleo .w-7{width:1.75rem}#ge-empleo .w-8{width:2rem}#ge-empleo .w-auto{width:auto}#ge-empleo .w-fit{width:fit-content}#ge-empleo .min-w-0{min-width:0}#ge-empleo .max-w-2xl{max-width:42rem}#ge-empleo .max-w-3xl{max-width:48rem}#ge-empleo .max-w-4xl{max-width:56rem}#ge-empleo .max-w-5xl{max-width:64rem}#ge-empleo .max-w-6xl{max-width:72rem}#ge-empleo .max-w-\\[140px\\]{max-width:140px}#ge-empleo .max-w-md{max-width:28rem}#ge-empleo .flex-1{flex:1 1 0%}#ge-empleo .flex-shrink-0{flex-shrink:0}#ge-empleo .animate-spin{animation:spin 1s linear infinite}#ge-empleo .cursor-pointer{cursor:pointer}#ge-empleo .resize-none{resize:none}#ge-empleo .grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}#ge-empleo .grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}#ge-empleo .flex-col{flex-direction:column}#ge-empleo .flex-wrap{flex-wrap:wrap}#ge-empleo .items-start{align-items:flex-start}#ge-empleo .items-center{align-items:center}#ge-empleo .justify-center{justify-content:center}#ge-empleo .justify-between{justify-content:space-between}#ge-empleo .gap-1{gap:.25rem}#ge-empleo .gap-1\\.5{gap:.375rem}#ge-empleo .gap-2{gap:.5rem}#ge-empleo .gap-2\\.5{gap:.625rem}#ge-empleo .gap-3{gap:.75rem}#ge-empleo .gap-4{gap:1rem}#ge-empleo .gap-5{gap:1.25rem}#ge-empleo .gap-6{gap:1.5rem}#ge-empleo .gap-8{gap:2rem}#ge-empleo :is(.space-y-3>:not([hidden])~:not([hidden])){--tw-space-y-reverse:0;margin-top:calc(.75rem*calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}#ge-empleo :is(.space-y-5>:not([hidden])~:not([hidden])){--tw-space-y-reverse:0;margin-top:calc(1.25rem*calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem*var(--tw-space-y-reverse))}#ge-empleo :is(.space-y-7>:not([hidden])~:not([hidden])){--tw-space-y-reverse:0;margin-top:calc(1.75rem*calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.75rem*var(--tw-space-y-reverse))}#ge-empleo .overflow-hidden{overflow:hidden}#ge-empleo .overflow-x-auto{overflow-x:auto}#ge-empleo .whitespace-nowrap{white-space:nowrap}#ge-empleo .rounded{border-radius:.25rem}#ge-empleo .rounded-2xl{border-radius:1rem}#ge-empleo .rounded-full{border-radius:9999px}#ge-empleo .rounded-lg{border-radius:.5rem}#ge-empleo .rounded-sm{border-radius:.125rem}#ge-empleo .rounded-xl{border-radius:.75rem}#ge-empleo .border{border-width:1px}#ge-empleo .border-2{border-width:2px}#ge-empleo .border-b{border-bottom-width:1px}#ge-empleo .border-dashed{border-style:dashed}#ge-empleo .border-blue-100{--tw-border-opacity:1;border-color:rgb(219 234 254\/var(--tw-border-opacity, 1))}#ge-empleo .border-blue-400,#ge-empleo .hover\\:border-blue-400:hover{--tw-border-opacity:1;border-color:rgb(96 165 250\/var(--tw-border-opacity, 1))}#ge-empleo .border-gray-100{--tw-border-opacity:1;border-color:rgb(243 244 246\/var(--tw-border-opacity, 1))}#ge-empleo .border-gray-200{--tw-border-opacity:1;border-color:rgb(229 231 235\/var(--tw-border-opacity, 1))}#ge-empleo .border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219\/var(--tw-border-opacity, 1))}#ge-empleo .border-red-200{--tw-border-opacity:1;border-color:rgb(254 202 202\/var(--tw-border-opacity, 1))}#ge-empleo .bg-blue-100{--tw-bg-opacity:1;background-color:rgb(219 234 254\/var(--tw-bg-opacity, 1))}#ge-empleo .bg-blue-50{--tw-bg-opacity:1;background-color:rgb(239 246 255\/var(--tw-bg-opacity, 1))}#ge-empleo .bg-blue-700{--tw-bg-opacity:1;background-color:rgb(29 78 216\/var(--tw-bg-opacity, 1))}#ge-empleo .bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251\/var(--tw-bg-opacity, 1))}#ge-empleo .bg-gray-900{--tw-bg-opacity:1;background-color:rgb(17 24 39\/var(--tw-bg-opacity, 1))}#ge-empleo .bg-green-100{--tw-bg-opacity:1;background-color:rgb(220 252 231\/var(--tw-bg-opacity, 1))}#ge-empleo .bg-red-50{--tw-bg-opacity:1;background-color:rgb(254 242 242\/var(--tw-bg-opacity, 1))}#ge-empleo .bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255\/var(--tw-bg-opacity, 1))}#ge-empleo .bg-white\\\/20{background-color:rgb(255 255 255\/.2)}#ge-empleo .bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}#ge-empleo .from-blue-700{--tw-gradient-from:#1d4ed8 var(--tw-gradient-from-position);--tw-gradient-to:rgb(29 78 216 \/ 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}#ge-empleo .to-blue-500{--tw-gradient-to:#3b82f6 var(--tw-gradient-to-position)}#ge-empleo .object-contain{object-fit:contain}#ge-empleo .object-cover{object-fit:cover}#ge-empleo .p-4{padding:1rem}#ge-empleo .p-5{padding:1.25rem}#ge-empleo .p-6{padding:1.5rem}#ge-empleo .p-7{padding:1.75rem}#ge-empleo .px-3{padding-left:.75rem;padding-right:.75rem}#ge-empleo .px-4{padding-left:1rem;padding-right:1rem}#ge-empleo .px-6{padding-left:1.5rem;padding-right:1.5rem}#ge-empleo .px-7{padding-left:1.75rem;padding-right:1.75rem}#ge-empleo .px-8{padding-left:2rem;padding-right:2rem}#ge-empleo .py-1\\.5{padding-top:.375rem;padding-bottom:.375rem}#ge-empleo .py-10{padding-top:2.5rem;padding-bottom:2.5rem}#ge-empleo .py-12{padding-top:3rem;padding-bottom:3rem}#ge-empleo .py-16{padding-top:4rem;padding-bottom:4rem}#ge-empleo .py-2{padding-top:.5rem;padding-bottom:.5rem}#ge-empleo .py-24{padding-top:6rem;padding-bottom:6rem}#ge-empleo .py-3{padding-top:.75rem;padding-bottom:.75rem}#ge-empleo .py-3\\.5{padding-top:.875rem;padding-bottom:.875rem}#ge-empleo .py-4{padding-top:1rem;padding-bottom:1rem}#ge-empleo .py-6{padding-top:1.5rem;padding-bottom:1.5rem}#ge-empleo .py-7{padding-top:1.75rem;padding-bottom:1.75rem}#ge-empleo .py-8{padding-top:2rem;padding-bottom:2rem}#ge-empleo .pb-24{padding-bottom:6rem}#ge-empleo .pt-2{padding-top:.5rem}#ge-empleo .pt-28{padding-top:7rem}#ge-empleo .pt-4{padding-top:1rem}#ge-empleo .text-left{text-align:left}#ge-empleo .text-center{text-align:center}#ge-empleo .text-2xl{font-size:1.5rem;line-height:2rem}#ge-empleo .text-3xl{font-size:1.875rem;line-height:2.25rem}#ge-empleo .text-4xl{font-size:2.25rem;line-height:2.5rem}#ge-empleo .text-7xl{font-size:4.5rem;line-height:1}#ge-empleo .text-base{font-size:1rem;line-height:1.5rem}#ge-empleo .text-lg{font-size:1.125rem;line-height:1.75rem}#ge-empleo .text-sm{font-size:.875rem;line-height:1.25rem}#ge-empleo .text-xl{font-size:1.25rem;line-height:1.75rem}#ge-empleo .text-xs{font-size:.75rem;line-height:1rem}#ge-empleo .font-bold{font-weight:700}#ge-empleo .font-extrabold{font-weight:800}#ge-empleo .font-medium{font-weight:500}#ge-empleo .font-normal{font-weight:400}#ge-empleo .font-semibold{font-weight:600}#ge-empleo .uppercase{text-transform:uppercase}#ge-empleo .italic{font-style:italic}#ge-empleo .leading-relaxed{line-height:1.625}#ge-empleo .leading-snug{line-height:1.375}#ge-empleo .leading-tight{line-height:1.25}#ge-empleo .tracking-wide{letter-spacing:.025em}#ge-empleo .text-blue-100{--tw-text-opacity:1;color:rgb(219 234 254\/var(--tw-text-opacity, 1))}#ge-empleo .text-blue-200{--tw-text-opacity:1;color:rgb(191 219 254\/var(--tw-text-opacity, 1))}#ge-empleo .text-blue-500{--tw-text-opacity:1;color:rgb(59 130 246\/var(--tw-text-opacity, 1))}#ge-empleo .text-blue-600{--tw-text-opacity:1;color:rgb(37 99 235\/var(--tw-text-opacity, 1))}#ge-empleo .text-blue-700{--tw-text-opacity:1;color:rgb(29 78 216\/var(--tw-text-opacity, 1))}#ge-empleo .text-gray-300{--tw-text-opacity:1;color:rgb(209 213 219\/var(--tw-text-opacity, 1))}#ge-empleo .text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175\/var(--tw-text-opacity, 1))}#ge-empleo .text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128\/var(--tw-text-opacity, 1))}#ge-empleo .text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99\/var(--tw-text-opacity, 1))}#ge-empleo .text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81\/var(--tw-text-opacity, 1))}#ge-empleo .text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39\/var(--tw-text-opacity, 1))}#ge-empleo .text-green-600{--tw-text-opacity:1;color:rgb(22 163 74\/var(--tw-text-opacity, 1))}#ge-empleo .text-green-700{--tw-text-opacity:1;color:rgb(21 128 61\/var(--tw-text-opacity, 1))}#ge-empleo .text-red-500{--tw-text-opacity:1;color:rgb(239 68 68\/var(--tw-text-opacity, 1))}#ge-empleo .text-red-700{--tw-text-opacity:1;color:rgb(185 28 28\/var(--tw-text-opacity, 1))}#ge-empleo .text-white{--tw-text-opacity:1;color:rgb(255 255 255\/var(--tw-text-opacity, 1))}#ge-empleo .no-underline{text-decoration-line:none}#ge-empleo .antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#ge-empleo .opacity-25{opacity:.25}#ge-empleo .opacity-75{opacity:.75}#ge-empleo .shadow{--tw-shadow:0 1px 3px 0 rgb(0 0 0 \/ 0.1), 0 1px 2px -1px rgb(0 0 0 \/ 0.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}#ge-empleo .shadow-lg{--tw-shadow:0 10px 15px -3px rgb(0 0 0 \/ 0.1), 0 4px 6px -4px rgb(0 0 0 \/ 0.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color)}#ge-empleo .shadow-lg,#ge-empleo .shadow-md,#ge-empleo .shadow-sm{box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}#ge-empleo .shadow-md{--tw-shadow:0 4px 6px -1px rgb(0 0 0 \/ 0.1), 0 2px 4px -2px rgb(0 0 0 \/ 0.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color)}#ge-empleo .shadow-sm{--tw-shadow:0 1px 2px 0 rgb(0 0 0 \/ 0.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}#ge-empleo .filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}#ge-empleo .transition,#ge-empleo .transition-transform{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:150ms}#ge-empleo .transition-transform{transition-property:transform}#ge-empleo .hover\\:border-gray-400:hover{--tw-border-opacity:1;border-color:rgb(156 163 175\/var(--tw-border-opacity, 1))}#ge-empleo .hover\\:bg-blue-100:hover{--tw-bg-opacity:1;background-color:rgb(219 234 254\/var(--tw-bg-opacity, 1))}#ge-empleo .hover\\:bg-blue-50:hover{--tw-bg-opacity:1;background-color:rgb(239 246 255\/var(--tw-bg-opacity, 1))}#ge-empleo .hover\\:bg-gray-100:hover{--tw-bg-opacity:1;background-color:rgb(243 244 246\/var(--tw-bg-opacity, 1))}#ge-empleo .hover\\:text-blue-600:hover{--tw-text-opacity:1;color:rgb(37 99 235\/var(--tw-text-opacity, 1))}#ge-empleo .hover\\:text-blue-700:hover{--tw-text-opacity:1;color:rgb(29 78 216\/var(--tw-text-opacity, 1))}#ge-empleo .hover\\:text-blue-800:hover{--tw-text-opacity:1;color:rgb(30 64 175\/var(--tw-text-opacity, 1))}#ge-empleo .hover\\:text-gray-900:hover{--tw-text-opacity:1;color:rgb(17 24 39\/var(--tw-text-opacity, 1))}#ge-empleo .hover\\:text-red-700:hover{--tw-text-opacity:1;color:rgb(185 28 28\/var(--tw-text-opacity, 1))}#ge-empleo .hover\\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255\/var(--tw-text-opacity, 1))}#ge-empleo .hover\\:underline:hover{text-decoration-line:underline}#ge-empleo .hover\\:opacity-90:hover{opacity:.9}#ge-empleo .hover\\:shadow-md:hover{--tw-shadow:0 4px 6px -1px rgb(0 0 0 \/ 0.1), 0 2px 4px -2px rgb(0 0 0 \/ 0.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}#ge-empleo :is(.group:hover .group-hover\\:translate-x-1){--tw-translate-x:0.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}#ge-empleo :is(.group:hover .group-hover\\:text-gray-900){--tw-text-opacity:1;color:rgb(17 24 39\/var(--tw-text-opacity, 1))}@media (min-width:640px){#ge-empleo .sm\\:col-span-1{grid-column:span 1\/span 1}#ge-empleo .sm\\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}#ge-empleo .sm\\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}#ge-empleo .sm\\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}#ge-empleo .sm\\:flex-row{flex-direction:row}#ge-empleo .sm\\:gap-8{gap:2rem}#ge-empleo .sm\\:text-2xl{font-size:1.5rem;line-height:2rem}#ge-empleo .sm\\:text-5xl{font-size:3rem;line-height:1}#ge-empleo .sm\\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width:768px){#ge-empleo .md\\:mb-0{margin-bottom:0}#ge-empleo .md\\:flex{display:flex}#ge-empleo .md\\:w-52{width:13rem}#ge-empleo .md\\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}#ge-empleo .md\\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}#ge-empleo .md\\:flex-col{flex-direction:column}#ge-empleo .md\\:items-start{align-items:flex-start}#ge-empleo .md\\:gap-10{gap:2.5rem}}@media (min-width:1024px){#ge-empleo .lg\\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}#ge-empleo .lg\\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}\n#tm-main{padding-top:0!important;padding-bottom:0!important}body:not(.gdpr-prevent-scrolling){overflow-x:clip;overflow-y:visible}#ge-empleo{background:#fff;-webkit-font-smoothing:antialiased;width:100vw;position:relative;left:50%;margin-left:-50vw;font-family:'Inter',system-ui,sans-serif;line-height:1.5;color:#111827}#ge-empleo [x-cloak]{display:none!important}#ge-empleo h1,#ge-empleo h2,#ge-empleo h3,#ge-empleo h4{font-family:'Inter',system-ui,sans-serif;text-transform:none;letter-spacing:normal;color:inherit}#ge-empleo a.no-underline{text-decoration:none}#ge-empleo .hero-bg{background:linear-gradient(135deg,#0f2157 0%,#1a3a8f 45%,#1e55c3 100%)}#ge-empleo .hero-photo{position:relative;background:url('https:\/\/www.espiralms.com\/images\/empleo\/empleo-team-photo.jpg') center center\/cover no-repeat}#ge-empleo .hero-photo::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(10,28,80,.82) 0%,rgba(20,55,140,.75) 60%,rgba(18,60,180,.68) 100%)}#ge-empleo .hero-photo>*{position:relative}#ge-empleo .oficina{position:relative;overflow:hidden;height:180px;margin:0!important}#ge-empleo .oficina-img{position:absolute;inset:0;background-position:center;background-size:cover;background-repeat:no-repeat}#ge-empleo .oficina-grad{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.65) 0%,rgba(0,0,0,.1) 55%,transparent 100%)}#ge-empleo .oficina-txt{position:absolute;bottom:0;left:0;right:0;padding:12px 14px}#ge-empleo .ge-input{width:100%;border:1px solid #d1d5db;border-radius:.75rem;padding:.625rem 1rem;font-size:.875rem;outline:none;background:#fff;height:auto;box-shadow:none}#ge-empleo .ge-input:focus{border-color:transparent;box-shadow:0 0 0 2px #3b82f6}#ge-empleo .job-content p{margin-bottom:.75rem}#ge-empleo .job-content ul,#ge-empleo .job-content ol{padding-left:1.4rem;margin-bottom:.75rem}#ge-empleo .job-content li{margin-bottom:.25rem;list-style-type:disc}#ge-empleo .job-content ol li{list-style-type:decimal}#ge-empleo .job-content strong,#ge-empleo .job-content b{font-weight:600;color:#374151}#ge-empleo .job-content a{color:#2563eb;text-decoration:underline}#ge-empleo .job-content h1,#ge-empleo .job-content h2,#ge-empleo .job-content h3{font-weight:700;margin-bottom:.5rem;margin-top:1rem;color:#1f2937}#ge-empleo .ge-subnav{position:sticky;top:0;z-index:40}#ge-empleo .ge-subnav a{color:#6b7280}#ge-empleo .ge-subnav a:hover{color:#2563eb}#ge-empleo section[id]{scroll-margin-top:64px}#ge-empleo .ge-footer a{color:#9ca3af}#ge-empleo .ge-footer a:hover{color:#fff}main > div > div.bg-blueLight:first-child{display:none !important;}.admin-bar #ge-empleo .ge-subnav{top:32px}<\/style>\n<div id=\"ge-empleo\" x-data=\"portalApp()\" x-init=\"init()\" class=\"bg-white text-gray-900 antialiased\">\n\n  <!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 VIEW: LIST \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\n  <div x-show=\"view==='list'\">\n\n    <!-- SUBMEN\u00da -->\n    <nav class=\"ge-subnav bg-white border-b border-gray-200\">\n      <div class=\"max-w-6xl mx-auto px-6 h-14 flex items-center gap-6 sm:gap-8 text-sm font-medium text-gray-500 overflow-x-auto whitespace-nowrap\">\n        <img decoding=\"async\" src=\"https:\/\/www.proactivanet.com\/wp-content\/uploads\/2026\/11\/espiralmsgrupo-eba1b95a.png\" alt=\"Grupo Espiral\" class=\"h-8 w-auto flex-shrink-0\" style=\"margin-right:8px\">\n        <a href=\"#posiciones\" class=\"hover:text-blue-600 transition no-underline\">Open positions<\/a>\n        <a href=\"#proceso\" class=\"hover:text-blue-600 transition no-underline\">Process<\/a>\n        <a href=\"#beneficios\" class=\"hover:text-blue-600 transition no-underline\">Benefits<\/a>\n        <a href=\"#oficinas\" class=\"hover:text-blue-600 transition no-underline\">Offices<\/a>\n      <\/div>\n    <\/nav>\n\n    <!-- HERO -->\n    <section class=\"hero-photo text-white pt-28 pb-24 px-6\">\n      <div class=\"max-w-4xl mx-auto text-center\">\n        <h1 class=\"text-4xl sm:text-5xl font-extrabold mb-8 leading-tight text-white\">We're looking for talent that imagines, innovates and transforms the future.<\/h1>\n        <p class=\"text-lg sm:text-xl text-white max-w-2xl mx-auto leading-relaxed mb-8\">Curious people,<br>passionate about technology,<br>eager to learn,<br>create and make a difference.<\/p>\n        <p class=\"text-xl sm:text-2xl font-bold text-white mb-3\">Join Grupo Espiral Microsistemas.<\/p>\n        <p class=\"text-lg text-white max-w-2xl mx-auto leading-relaxed\">Where people and technology come together to turn ideas into real solutions.<\/p>\n        <a href=\"#posiciones\" class=\"inline-block mt-10 bg-white text-blue-700 font-bold px-8 py-3.5 rounded-full hover:bg-blue-50 transition shadow-lg text-base no-underline\">\n          See open positions\n        <\/a>\n      <\/div>\n    <\/section>\n\n    <!-- COMPROMISO -->\n    <section class=\"bg-blue-50 py-12 px-6 border-b border-blue-100\">\n      <div class=\"max-w-5xl mx-auto grid grid-cols-1 sm:grid-cols-3 gap-6 text-center\">\n        <div class=\"p-5\">\n          <div class=\"text-3xl mb-3\">\ud83e\udd1d<\/div>\n          <h3 class=\"font-bold text-gray-900 mb-1\">Commitment to people<\/h3>\n          <p class=\"text-sm text-gray-500\">We invest in talent and its continuous development.<\/p>\n        <\/div>\n        <div class=\"p-5\">\n          <div class=\"text-3xl mb-3\">\u2b50<\/div>\n          <h3 class=\"font-bold text-gray-900 mb-1\">Commitment to excellence<\/h3>\n          <p class=\"text-sm text-gray-500\">Continuous improvement, with rigour and ambition in everything we do.<\/p>\n        <\/div>\n        <div class=\"p-5\">\n          <div class=\"text-3xl mb-3\">\ud83d\udcbc<\/div>\n          <h3 class=\"font-bold text-gray-900 mb-1\">Commitment to customers<\/h3>\n          <p class=\"text-sm text-gray-500\">More than 400 customers trust us. Their success is ours.<\/p>\n        <\/div>\n      <\/div>\n    <\/section>\n\n    <!-- POSICIONES ABIERTAS -->\n    <section id=\"posiciones\" class=\"py-16 px-6 bg-gray-50\">\n      <div class=\"max-w-6xl mx-auto\">\n        <h2 class=\"text-3xl font-extrabold text-center mb-2\">Open positions<\/h2>\n        <p class=\"text-gray-500 text-center mb-10\">Find your next opportunity at Grupo Espiral<\/p>\n\n        <div class=\"md:flex md:items-start md:gap-10\">\n        <aside class=\"ge-filtros md:w-52 flex-shrink-0 mb-8 md:mb-0\">\n          <p class=\"text-xs font-semibold uppercase tracking-wide text-gray-400 mb-2\">Location<\/p>\n          <div class=\"flex flex-wrap md:flex-col gap-1 mb-6\">\n            <template x-for=\"loc in ubicaciones\" :key=\"loc\">\n              <button type=\"button\" @click=\"filtroUbicacion = loc\"\n                :class=\"filtroUbicacion === loc ? 'bg-blue-50 text-blue-700 font-semibold' : 'text-gray-600 hover:bg-gray-100 hover:text-gray-900'\"\n                class=\"text-left rounded-lg px-3 py-1.5 text-sm transition\"\n                x-text=\"loc === 'all' ? 'All locations' : loc\"><\/button>\n            <\/template>\n          <\/div>\n          <div x-show=\"modalidades.length > 1\">\n            <p class=\"text-xs font-semibold uppercase tracking-wide text-gray-400 mb-2\">Work mode<\/p>\n            <div class=\"flex flex-wrap md:flex-col gap-1\">\n              <template x-for=\"mod in modalidades\" :key=\"mod\">\n                <button type=\"button\" @click=\"filtroModalidad = mod\"\n                  :class=\"filtroModalidad === mod ? 'bg-blue-50 text-blue-700 font-semibold' : 'text-gray-600 hover:bg-gray-100 hover:text-gray-900'\"\n                  class=\"text-left rounded-lg px-3 py-1.5 text-sm transition\"\n                  x-text=\"mod === 'all' ? 'All work modes' : modalidadLabel(mod)\"><\/button>\n              <\/template>\n            <\/div>\n          <\/div>\n        <\/aside>\n\n        <div class=\"flex-1 min-w-0\">\n        <div x-show=\"loading\" class=\"text-center py-16 text-gray-400\">\n          <svg class=\"animate-spin h-8 w-8 mx-auto mb-3 text-blue-500\" viewBox=\"0 0 24 24\" fill=\"none\">\n            <circle class=\"opacity-25\" cx=\"12\" cy=\"12\" r=\"10\" stroke=\"currentColor\" stroke-width=\"4\"><\/circle>\n            <path class=\"opacity-75\" fill=\"currentColor\" d=\"M4 12a8 8 0 018-8V0C5.37 0 0 5.37 0 12h4z\"><\/path>\n          <\/svg>\n          Loading positions\u2026\n        <\/div>\n\n        <div x-show=\"!loading && vacantesFiltered.length === 0\" class=\"text-center py-16\">\n          <p class=\"text-gray-400 text-lg\" x-text=\"vacantes.length ? 'No open positions match this filter' : 'There are no open positions right now'\"><\/p>\n          <button type=\"button\" x-show=\"vacantes.length\" @click=\"filtroUbicacion='all';filtroModalidad='all'\" class=\"mt-3 text-blue-600 text-sm hover:underline\">\n            See all positions\n          <\/button>\n        <\/div>\n\n        <div x-show=\"!loading\" class=\"grid grid-cols-1 lg:grid-cols-2 gap-5\">\n          <template x-for=\"v in vacantesFiltered\" :key=\"v.id\">\n            <div @click=\"openDetail(v)\" class=\"bg-white rounded-2xl p-6 border border-gray-100 shadow-sm hover:shadow-md cursor-pointer transition group\" :style=\"'border-top:4px solid ' + brand(v).color\">\n              <div class=\"flex items-center justify-between gap-3 mb-3\">\n                <img :src=\"brand(v).logo\" :alt=\"brand(v).nombre\" class=\"w-auto max-w-[140px] object-contain\" :style=\"'height:' + brand(v).logoH + 'px'\">\n                <img x-show=\"v.pais\" :src=\"'https:\/\/flagcdn.com\/w40\/' + (v.pais||'').toLowerCase() + '.png'\" :alt=\"v.pais\" class=\"w-7 h-5 object-cover rounded-sm shadow-sm\">\n              <\/div>\n              <div class=\"flex items-start justify-between gap-3\">\n                <div class=\"flex-1 min-w-0\">\n                  <h3 class=\"font-bold text-gray-900 text-lg leading-snug transition\" x-text=\"v.titulo\"><\/h3>\n                <\/div>\n                <span class=\"text-lg mt-1 flex-shrink-0 group-hover:translate-x-1 transition-transform\" :style=\"'color:' + brand(v).color\">\u2192<\/span>\n              <\/div>\n            <\/div>\n          <\/template>\n        <\/div>\n        <\/div>\n        <\/div>\n\n        <div class=\"mt-10 bg-gradient-to-r from-blue-700 to-blue-500 text-white rounded-2xl p-7 flex flex-col sm:flex-row items-center justify-between gap-4 shadow-lg\">\n          <div>\n            <h3 class=\"font-bold text-xl mb-1 text-white\">Can't find your position?<\/h3>\n            <p class=\"text-blue-100 text-sm\">Send us an open application and we will keep you in mind for future opportunities.<\/p>\n          <\/div>\n          <button type=\"button\" @click=\"openCandidaturaAbierta()\" class=\"flex-shrink-0 bg-white text-blue-700 font-bold px-7 py-3 rounded-full hover:bg-blue-50 transition shadow text-sm whitespace-nowrap\">\n            Open application\n          <\/button>\n        <\/div>\n      <\/div>\n    <\/section>\n\n    <!-- BENEFICIOS -->\n    <section id=\"beneficios\" class=\"py-16 px-6 bg-white\">\n      <div class=\"max-w-5xl mx-auto\">\n        <h2 class=\"text-3xl font-extrabold text-center mb-2\">Why Espiral?<\/h2>\n        <p class=\"text-gray-500 text-center mb-10\">Working here means much more than a job<\/p>\n        <div class=\"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-6\">\n          <div class=\"bg-blue-50 rounded-2xl p-7 text-center hover:bg-blue-100 transition\">\n            <div class=\"text-4xl mb-4\">\ud83c\udfe0<\/div>\n            <h3 class=\"font-bold text-gray-900 mb-2\">Work-life balance<\/h3>\n            <p class=\"text-sm text-gray-600\">Hybrid, flexible work that adapts to your life.<\/p>\n          <\/div>\n          <div class=\"bg-blue-50 rounded-2xl p-7 text-center hover:bg-blue-100 transition\">\n            <div class=\"text-4xl mb-4\">\ud83d\udcc8<\/div>\n            <h3 class=\"font-bold text-gray-900 mb-2\">Training<\/h3>\n            <p class=\"text-sm text-gray-600\">Career plans and continuous professional development.<\/p>\n          <\/div>\n          <div class=\"bg-blue-50 rounded-2xl p-7 text-center hover:bg-blue-100 transition\">\n            <div class=\"text-4xl mb-4\">\ud83c\udf34<\/div>\n            <h3 class=\"font-bold text-gray-900 mb-2\">Holidays<\/h3>\n            <p class=\"text-sm text-gray-600\">22 days a year plus a day off on your birthday.<\/p>\n          <\/div>\n          <div class=\"bg-blue-50 rounded-2xl p-7 text-center hover:bg-blue-100 transition\">\n            <div class=\"text-4xl mb-4\">\ud83c\udfc6<\/div>\n            <h3 class=\"font-bold text-gray-900 mb-2\">Great atmosphere<\/h3>\n            <p class=\"text-sm text-gray-600\">Certified as a <strong>Great Place to Work<\/strong> in Spain and Asturias.<\/p>\n          <\/div>\n        <\/div>\n      <\/div>\n    <\/section>\n\n    <!-- PROCESO -->\n    <section id=\"proceso\" class=\"py-16 px-6 bg-gray-50\">\n      <div class=\"max-w-5xl mx-auto\">\n        <h2 class=\"text-3xl font-extrabold text-center mb-2\">Our selection process<\/h2>\n        <p class=\"text-gray-500 text-center mb-12\">Transparent, agile and people-focused<\/p>\n        <div class=\"grid grid-cols-2 md:grid-cols-4 gap-8\">\n          <div class=\"text-center\">\n            <div class=\"w-16 h-16 bg-blue-100 text-blue-700 rounded-full flex items-center justify-center text-2xl mx-auto mb-4 shadow-sm\">\ud83d\udcc4<\/div>\n            <div class=\"text-xs font-bold text-blue-600 uppercase tracking-wide mb-1\">Phase 1<\/div>\n            <h4 class=\"font-bold text-gray-900 mb-2 text-sm\">Application review<\/h4>\n            <p class=\"text-xs text-gray-500\">We review your profile and CV carefully.<\/p>\n          <\/div>\n          <div class=\"text-center\">\n            <div class=\"w-16 h-16 bg-blue-100 text-blue-700 rounded-full flex items-center justify-center text-2xl mx-auto mb-4 shadow-sm\">\ud83d\udcac<\/div>\n            <div class=\"text-xs font-bold text-blue-600 uppercase tracking-wide mb-1\">Phase 2<\/div>\n            <h4 class=\"font-bold text-gray-900 mb-2 text-sm\">HR interview<\/h4>\n            <p class=\"text-xs text-gray-500\">A conversation to get to know each other better.<\/p>\n          <\/div>\n          <div class=\"text-center\">\n            <div class=\"w-16 h-16 bg-blue-100 text-blue-700 rounded-full flex items-center justify-center text-2xl mx-auto mb-4 shadow-sm\">\ud83e\uddd1\u200d\ud83d\udcbb<\/div>\n            <div class=\"text-xs font-bold text-blue-600 uppercase tracking-wide mb-1\">Phase 3<\/div>\n            <h4 class=\"font-bold text-gray-900 mb-2 text-sm\">Team interview<\/h4>\n            <p class=\"text-xs text-gray-500\">Meet your future teammates and the hiring manager.<\/p>\n          <\/div>\n          <div class=\"text-center\">\n            <div class=\"w-16 h-16 bg-green-100 text-green-700 rounded-full flex items-center justify-center text-2xl mx-auto mb-4 shadow-sm\">\ud83c\udf89<\/div>\n            <div class=\"text-xs font-bold text-green-600 uppercase tracking-wide mb-1\">Phase 4<\/div>\n            <h4 class=\"font-bold text-gray-900 mb-2 text-sm\">Welcome to the team!<\/h4>\n            <p class=\"text-xs text-gray-500\">Formal offer and personalised onboarding.<\/p>\n          <\/div>\n        <\/div>\n      <\/div>\n    <\/section>\n\n    <!-- TESTIMONIOS -->\n    <section class=\"py-16 px-6 bg-white\">\n      <div class=\"max-w-5xl mx-auto\">\n        <h2 class=\"text-3xl font-extrabold text-center mb-10\">What our colleagues say<\/h2>\n        <div class=\"grid grid-cols-1 md:grid-cols-3 gap-6\">\n          <div class=\"bg-blue-50 rounded-2xl p-7 flex flex-col\">\n            <p class=\"text-gray-700 text-sm italic leading-relaxed flex-1\">\"Espiral has given me the chance to grow professionally in an environment where people come first. The team is amazing.\"<\/p>\n            <div class=\"mt-5 flex items-center gap-3\">\n              <img decoding=\"async\" src=\"https:\/\/www.proactivanet.com\/wp-content\/uploads\/2026\/11\/testimonio-sara.jpg\" alt=\"\" class=\"rounded-full object-cover flex-shrink-0\" style=\"width:48px;height:48px\">\n              <div><p class=\"font-semibold text-sm text-gray-900\">Sara<\/p><p class=\"text-xs text-gray-400\">Marketing Manager, Prodity<\/p><\/div>\n            <\/div>\n          <\/div>\n          <div class=\"bg-blue-50 rounded-2xl p-7 flex flex-col\">\n            <p class=\"text-gray-700 text-sm italic leading-relaxed flex-1\">\"What I value most is the trust they place in you from day one. You have real autonomy to do things well.\"<\/p>\n            <div class=\"mt-5 flex items-center gap-3\">\n              <img decoding=\"async\" src=\"https:\/\/www.proactivanet.com\/wp-content\/uploads\/2026\/11\/testimonio-julio.jpg\" alt=\"\" class=\"rounded-full object-cover flex-shrink-0\" style=\"width:48px;height:48px\">\n              <div><p class=\"font-semibold text-sm text-gray-900\">Julio<\/p><p class=\"text-xs text-gray-400\">CSM-MAC<\/p><\/div>\n            <\/div>\n          <\/div>\n          <div class=\"bg-blue-50 rounded-2xl p-7 flex flex-col\">\n            <p class=\"text-gray-700 text-sm italic leading-relaxed flex-1\">\"Hybrid work and flexible hours let me balance my personal and professional life perfectly.\"<\/p>\n            <div class=\"mt-5 flex items-center gap-3\">\n              <img decoding=\"async\" src=\"https:\/\/www.proactivanet.com\/wp-content\/uploads\/2026\/11\/testimonio-jezabel.jpg\" alt=\"\" class=\"rounded-full object-cover flex-shrink-0\" style=\"width:48px;height:48px\">\n              <div><p class=\"font-semibold text-sm text-gray-900\">Jezabel<\/p><p class=\"text-xs text-gray-400\">Consulting<\/p><\/div>\n            <\/div>\n          <\/div>\n        <\/div>\n      <\/div>\n    <\/section>\n\n    <!-- OFICINAS -->\n    <section id=\"oficinas\" class=\"py-16 px-6 bg-gray-50\">\n      <div class=\"max-w-5xl mx-auto\">\n        <h2 class=\"text-3xl font-extrabold text-center mb-10\">Our offices<\/h2>\n        <div class=\"grid grid-cols-2 sm:grid-cols-5 gap-4\">\n          <div class=\"oficina rounded-xl shadow-md\"><div class=\"oficina-img\" style=\"background-image:url('https:\/\/www.espiralms.com\/images\/empleo\/empleo-oficina-gijon.jpg')\"><\/div><div class=\"oficina-grad\"><\/div><div class=\"oficina-txt\"><p class=\"font-bold text-white text-sm leading-tight\">Gij\u00f3n<\/p><p class=\"text-xs text-gray-300 mt-0.5\">Headquarters \u00b7 Spain<\/p><\/div><\/div>\n          <div class=\"oficina rounded-xl shadow-md\"><div class=\"oficina-img\" style=\"background-image:url('https:\/\/www.espiralms.com\/images\/empleo\/empleo-oficina-mexico.jpg')\"><\/div><div class=\"oficina-grad\"><\/div><div class=\"oficina-txt\"><p class=\"font-bold text-white text-sm leading-tight\">Mexico City<\/p><p class=\"text-xs text-gray-300 mt-0.5\">Mexico<\/p><\/div><\/div>\n          <div class=\"oficina rounded-xl shadow-md\"><div class=\"oficina-img\" style=\"background-image:url('https:\/\/www.espiralms.com\/images\/empleo\/empleo-oficina-chile.jpg')\"><\/div><div class=\"oficina-grad\"><\/div><div class=\"oficina-txt\"><p class=\"font-bold text-white text-sm leading-tight\">Santiago<\/p><p class=\"text-xs text-gray-300 mt-0.5\">Chile<\/p><\/div><\/div>\n          <div class=\"oficina rounded-xl shadow-md\"><div class=\"oficina-img\" style=\"background-image:url('https:\/\/www.espiralms.com\/images\/empleo\/empleo-oficina-bogota.jpg')\"><\/div><div class=\"oficina-grad\"><\/div><div class=\"oficina-txt\"><p class=\"font-bold text-white text-sm leading-tight\">Bogot\u00e1<\/p><p class=\"text-xs text-gray-300 mt-0.5\">Colombia<\/p><\/div><\/div>\n          <div class=\"oficina rounded-xl shadow-md col-span-2 sm:col-span-1\"><div class=\"oficina-img\" style=\"background-image:url('https:\/\/www.espiralms.com\/images\/empleo\/empleo-oficina-lima.jpg')\"><\/div><div class=\"oficina-grad\"><\/div><div class=\"oficina-txt\"><p class=\"font-bold text-white text-sm leading-tight\">Lima<\/p><p class=\"text-xs text-gray-300 mt-0.5\">Peru<\/p><\/div><\/div>\n        <\/div>\n      <\/div>\n    <\/section>\n\n    <!-- GPTW -->\n    <div class=\"py-6 px-6\" style=\"background:#349fdd\">\n      <div class=\"max-w-3xl mx-auto text-center\">\n        <img decoding=\"async\" src=\"https:\/\/www.espiralms.com\/images\/empleo\/empleo-banner-email-firma.png\" alt=\"Great Place to Work\" class=\"max-h-20 mx-auto\" style=\"height:80px;width:auto;max-width:100%\">\n      <\/div>\n    <\/div>\n\n    <!--GE_FOOTER-->\n    <div role=\"contentinfo\" class=\"ge-footer bg-gray-900 text-gray-400 py-10 px-6\">\n      <div class=\"max-w-5xl mx-auto flex flex-col sm:flex-row items-center justify-between gap-6\">\n        <div class=\"flex items-center gap-3\">\n          <a href=\"https:\/\/www.espiralms.com\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" src=\"https:\/\/www.proactivanet.com\/wp-content\/uploads\/2026\/07\/grupo-espiral-logo.png\" alt=\"Grupo Espiral\" class=\"h-10 w-auto\" style=\"height:40px;width:auto\"><\/a>\n          <span class=\"text-sm\">Grupo Espiral MS \u00a9 2026<\/span>\n        <\/div>\n        <div class=\"flex flex-wrap justify-center gap-6 text-sm\">\n          <a href=\"https:\/\/www.espiralms.com\" target=\"_blank\" rel=\"noopener\" class=\"hover:text-white transition no-underline\">Grupo Espiral<\/a>\n          <a href=\"https:\/\/www.proactivanet.com\/en\/\" target=\"_blank\" rel=\"noopener\" class=\"hover:text-white transition no-underline\">Proactivanet<\/a>\n          <a href=\"https:\/\/proditysoftware.com\" target=\"_blank\" rel=\"noopener\" class=\"hover:text-white transition no-underline\">Prodity<\/a>\n          <a href=\"https:\/\/www.linkedin.com\/company\/grupo-espiral-ms\" target=\"_blank\" rel=\"noopener\" class=\"hover:text-white transition no-underline\">LinkedIn<\/a>\n        <\/div>\n      <\/div>\n    <\/div>\n    <!--\/GE_FOOTER-->\n  <\/div>\n\n  <!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 VIEW: DETAIL \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\n  <div x-show=\"view==='detail'\" x-cloak class=\"min-h-screen bg-gray-50\">\n    <template x-if=\"selectedVacante\">\n      <div class=\"max-w-4xl mx-auto px-6 py-10\">\n        <button type=\"button\" @click=\"goBack()\" class=\"mb-5 text-sm text-blue-600 hover:text-blue-800 font-medium\">\u2190 Back to positions<\/button>\n        <div class=\"bg-white rounded-2xl shadow-sm border border-gray-100 overflow-hidden\">\n          <div class=\"px-8 py-8 text-white\" :style=\"'background:linear-gradient(135deg,' + brand(selectedVacante).color + ' 0%,' + brand(selectedVacante).color + 'cc 100%)'\">\n            <div class=\"inline-block bg-white rounded-lg px-3 py-2 mb-4\"><img :src=\"brand(selectedVacante).logo\" :alt=\"brand(selectedVacante).nombre\" class=\"w-auto\" :style=\"'height:' + brand(selectedVacante).logoH + 'px'\"><\/div>\n            <h1 class=\"text-3xl font-extrabold mb-4 text-white\" x-text=\"selectedVacante.titulo\"><\/h1>\n            <div class=\"flex flex-wrap gap-3\">\n              <span x-show=\"selectedVacante.ubicacion\" class=\"inline-flex items-center gap-1.5 text-sm bg-white\/20 px-4 py-1.5 rounded-full\">\ud83d\udccd <span x-text=\"selectedVacante.ubicacion\"><\/span><\/span>\n              <span class=\"inline-flex items-center gap-1.5 text-sm bg-white\/20 px-4 py-1.5 rounded-full\" x-text=\"modalidadLabel(selectedVacante.modalidad)\"><\/span>\n              <span x-show=\"selectedVacante.departamento\" class=\"inline-flex items-center gap-1.5 text-sm bg-white\/20 px-4 py-1.5 rounded-full\" x-text=\"selectedVacante.departamento\"><\/span>\n            <\/div>\n          <\/div>\n          <div class=\"px-8 py-8 space-y-7\">\n            <div x-show=\"selectedVacante.descripcion\">\n              <div class=\"text-gray-600 text-sm leading-relaxed job-content\" x-html=\"selectedVacante.descripcion\"><\/div>\n            <\/div>\n            <div x-show=\"selectedVacante.requisitos\">\n              <h2 class=\"font-bold text-gray-900 text-lg mb-3 flex items-center gap-2\">\u2705 Requirements<\/h2>\n              <div class=\"text-gray-600 text-sm leading-relaxed job-content\" x-html=\"selectedVacante.requisitos\"><\/div>\n            <\/div>\n            <div x-show=\"selectedVacante.que_ofrecemos\">\n              <h2 class=\"font-bold text-gray-900 text-lg mb-3 flex items-center gap-2\">\ud83c\udf81 What we offer<\/h2>\n              <div class=\"text-gray-600 text-sm leading-relaxed job-content\" x-html=\"selectedVacante.que_ofrecemos\"><\/div>\n            <\/div>\n            <div x-show=\"!selectedVacante.descripcion && !selectedVacante.requisitos && !selectedVacante.que_ofrecemos\" class=\"text-gray-400 text-sm italic py-4\">\n              Contact us for more information about this position.\n            <\/div>\n            <div class=\"pt-4 flex flex-col sm:flex-row gap-3\">\n              <button type=\"button\" @click=\"openApply()\" class=\"text-white font-bold px-8 py-3.5 rounded-full hover:opacity-90 transition text-base shadow-md\" :style=\"'background:' + brand(selectedVacante).color\">Send application \u2192<\/button>\n              <button type=\"button\" @click=\"goBack()\" class=\"border border-gray-300 text-gray-600 hover:border-gray-400 font-medium px-7 py-3.5 rounded-full transition text-base\">Back to positions<\/button>\n            <\/div>\n          <\/div>\n        <\/div>\n      <\/div>\n    <\/template>\n  <\/div>\n\n  <!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 VIEW: APPLY \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\n  <div x-show=\"view==='apply'\" x-cloak class=\"min-h-screen bg-gray-50\">\n    <div class=\"max-w-2xl mx-auto px-6 py-10\">\n      <button type=\"button\" @click=\"view = selectedVacante ? 'detail' : 'list'; top()\" class=\"mb-5 text-sm text-blue-600 hover:text-blue-800 font-medium\">\u2190 Back<\/button>\n      <div class=\"bg-white rounded-2xl shadow-sm border border-gray-100 overflow-hidden\">\n        <div class=\"hero-bg px-8 py-7 text-white\">\n          <h2 class=\"text-2xl font-extrabold mb-1 text-white\">Send application<\/h2>\n          <p class=\"text-blue-200 text-sm\" x-text=\"selectedVacante ? 'For: ' + selectedVacante.titulo : 'Open application \u2014 Grupo Espiral MS'\"><\/p>\n        <\/div>\n        <div class=\"px-8 py-8 space-y-5\">\n          <div class=\"grid grid-cols-1 sm:grid-cols-2 gap-4\">\n            <div>\n              <label class=\"block text-sm font-medium text-gray-700 mb-1\">Full name *<\/label>\n              <input x-model=\"form.nombre\" type=\"text\" placeholder=\"Jane Smith\" class=\"ge-input\">\n            <\/div>\n            <div>\n              <label class=\"block text-sm font-medium text-gray-700 mb-1\">Email *<\/label>\n              <input x-model=\"form.email\" type=\"email\" placeholder=\"jane@example.com\" class=\"ge-input\">\n            <\/div>\n          <\/div>\n          <div class=\"grid grid-cols-1 sm:grid-cols-2 gap-4\">\n            <div>\n              <label class=\"block text-sm font-medium text-gray-700 mb-1\">Phone<\/label>\n              <input x-model=\"form.telefono\" type=\"tel\" placeholder=\"+34 600 000 000\" class=\"ge-input\">\n            <\/div>\n            <div>\n              <label class=\"block text-sm font-medium text-gray-700 mb-1\">LinkedIn<\/label>\n              <input x-model=\"form.linkedin\" type=\"url\" placeholder=\"linkedin.com\/in\/...\" class=\"ge-input\">\n            <\/div>\n          <\/div>\n          <div>\n            <label class=\"block text-sm font-medium text-gray-700 mb-1\">Area of interest<\/label>\n            <select x-model=\"form.area\" class=\"ge-input\">\n              <option>Sales<\/option>\n              <option>Marketing<\/option>\n              <option>Development \/ IT<\/option>\n              <option>Support \/ Service Desk<\/option>\n              <option>Customer Success<\/option>\n              <option>Other \/ not specified<\/option>\n            <\/select>\n          <\/div>\n          <div>\n            <label class=\"block text-sm font-medium text-gray-700 mb-1\">Cover letter<\/label>\n            <textarea x-model=\"form.carta\" rows=\"5\" placeholder=\"Tell us why you are interested in this position and what you can bring\u2026\" class=\"ge-input resize-none\"><\/textarea>\n          <\/div>\n\n          <div>\n            <label class=\"block text-sm font-medium text-gray-700 mb-1\">CV (PDF, DOC, DOCX \u2014 max. 10 MB)<\/label>\n            <div class=\"border-2 border-dashed border-gray-300 rounded-xl p-6 text-center cursor-pointer hover:border-blue-400 transition\"\n                 @click=\"$refs.cvInput.click()\" @dragover.prevent @drop.prevent=\"pick($event.dataTransfer.files[0],'cv')\"\n                 :class=\"form.cvName ? 'border-blue-400 bg-blue-50' : ''\">\n              <input type=\"file\" x-ref=\"cvInput\" accept=\".pdf,.doc,.docx\" class=\"hidden\" @change=\"pick($event.target.files[0],'cv')\">\n              <div x-show=\"!form.cvName\">\n                <div class=\"text-3xl mb-2\">\ud83d\udcce<\/div>\n                <p class=\"text-sm text-gray-500\">Drag your CV here or <span class=\"text-blue-600 font-medium\">click to select<\/span><\/p>\n                <p class=\"text-xs text-gray-400 mt-1\">PDF, DOC or DOCX<\/p>\n              <\/div>\n              <div x-show=\"form.cvName\" class=\"flex items-center justify-center gap-3\">\n                <span class=\"text-2xl\">\ud83d\udcc4<\/span>\n                <div class=\"text-left\">\n                  <p class=\"text-sm font-semibold text-gray-900\" x-text=\"form.cvName\"><\/p>\n                  <button type=\"button\" @click.stop=\"form.cv=null;form.cvName=''\" class=\"text-xs text-red-500 hover:text-red-700 mt-0.5\">Remove<\/button>\n                <\/div>\n              <\/div>\n            <\/div>\n          <\/div>\n\n          <div>\n            <label class=\"block text-sm font-medium text-gray-700 mb-1\">Cover letter as a file <span class=\"text-gray-400 font-normal\">(PDF, DOC, DOCX \u2014 optional, max. 10 MB)<\/span><\/label>\n            <div class=\"border-2 border-dashed border-gray-300 rounded-xl p-6 text-center cursor-pointer hover:border-blue-400 transition\"\n                 @click=\"$refs.cartaInput.click()\" @dragover.prevent @drop.prevent=\"pick($event.dataTransfer.files[0],'carta')\"\n                 :class=\"form.cartaName ? 'border-blue-400 bg-blue-50' : ''\">\n              <input type=\"file\" x-ref=\"cartaInput\" accept=\".pdf,.doc,.docx\" class=\"hidden\" @change=\"pick($event.target.files[0],'carta')\">\n              <div x-show=\"!form.cartaName\">\n                <div class=\"text-3xl mb-2\">\u2709\ufe0f<\/div>\n                <p class=\"text-sm text-gray-500\">Drag your letter here or <span class=\"text-blue-600 font-medium\">click to select<\/span><\/p>\n                <p class=\"text-xs text-gray-400 mt-1\">If you prefer, you can write it above instead of uploading a file<\/p>\n              <\/div>\n              <div x-show=\"form.cartaName\" class=\"flex items-center justify-center gap-3\">\n                <span class=\"text-2xl\">\ud83d\udcc4<\/span>\n                <div class=\"text-left\">\n                  <p class=\"text-sm font-semibold text-gray-900\" x-text=\"form.cartaName\"><\/p>\n                  <button type=\"button\" @click.stop=\"form.carta_file=null;form.cartaName=''\" class=\"text-xs text-red-500 hover:text-red-700 mt-0.5\">Remove<\/button>\n                <\/div>\n              <\/div>\n            <\/div>\n          <\/div>\n\n          <div x-show=\"formError\" x-cloak class=\"bg-red-50 border border-red-200 rounded-xl px-4 py-3 text-sm text-red-700 flex items-start gap-2\">\n            <span class=\"flex-shrink-0\">\u26a0\ufe0f<\/span><span x-text=\"formError\"><\/span>\n          <\/div>\n\n          <div class=\"border border-gray-200 rounded-xl p-4 bg-gray-50 space-y-3\">\n            <p class=\"text-xs text-gray-600 leading-relaxed\">\n              Your personal data will be kept until a position is filled, until you exercise your right to erasure, or for a maximum of 2 years from collection, after which it will be destroyed. In accordance with data protection legislation, you may exercise your rights of access, rectification, erasure, portability, restriction and objection by emailing <a href=\"mailto:dpo@espiralms.com\" class=\"text-blue-600 hover:underline\">dpo@espiralms.com<\/a>. For more information, please see our privacy policy.\n            <\/p>\n            <a href=\"https:\/\/www.grupoespiralms.com\/politica-de-tratamiento-de-datos\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"inline-flex items-center gap-2 text-xs font-medium text-gray-600 border border-gray-300 bg-white hover:border-blue-400 hover:text-blue-700 rounded-lg px-3 py-2 transition w-fit no-underline\">\n              \ud83d\udcc4 Read the data protection policy \u2197\n            <\/a>\n            <label class=\"flex items-start gap-2.5 cursor-pointer group\">\n              <input type=\"checkbox\" x-model=\"form.privacidad\" class=\"mt-0.5 h-4 w-4 flex-shrink-0 rounded border-gray-300 cursor-pointer\" style=\"accent-color:#1d4ed8\">\n              <span class=\"text-xs text-gray-700 group-hover:text-gray-900 transition leading-snug\">I have read and accept the Grupo Espiral MS data protection policy. <span class=\"text-red-500 font-semibold\">*<\/span><\/span>\n            <\/label>\n            <label class=\"flex items-start gap-2.5 cursor-pointer group\">\n              <input type=\"checkbox\" x-model=\"form.consentimiento\" class=\"mt-0.5 h-4 w-4 flex-shrink-0 rounded border-gray-300 cursor-pointer\" style=\"accent-color:#1d4ed8\">\n              <span class=\"text-xs text-gray-700 group-hover:text-gray-900 transition leading-snug\">I consent to Espiral Microsistemas S.L.U. processing my data in accordance with the data processing policy. <span class=\"text-red-500 font-semibold\">*<\/span><\/span>\n            <\/label>\n          <\/div>\n\n          <div class=\"flex flex-col sm:flex-row gap-3 pt-2\">\n            <button type=\"button\" @click=\"submitApplication()\" :disabled=\"sending\" class=\"flex-1 hero-bg text-white font-bold py-3.5 rounded-full transition hover:opacity-90 shadow-md\" x-text=\"sending ? 'Sending\u2026' : 'Send application \u2192'\"><\/button>\n            <button type=\"button\" @click=\"view = selectedVacante ? 'detail' : 'list'; top()\" class=\"border border-gray-300 text-gray-600 hover:border-gray-400 font-medium px-6 py-3.5 rounded-full transition\">Cancel<\/button>\n          <\/div>\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n\n  <!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 VIEW: SUCCESS \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\n  <div x-show=\"view==='success'\" x-cloak class=\"py-24 bg-gray-50 flex items-center justify-center px-6\">\n    <div class=\"text-center max-w-md\">\n      <div class=\"text-7xl mb-6\">\ud83c\udf89<\/div>\n      <h2 class=\"text-3xl font-extrabold text-gray-900 mb-3\">Application sent!<\/h2>\n      <p class=\"text-gray-600 leading-relaxed mb-8\" x-text=\"successMsg\"><\/p>\n      <button type=\"button\" @click=\"view='list';selectedVacante=null;top()\" class=\"hero-bg text-white font-bold px-8 py-3.5 rounded-full hover:opacity-90 transition shadow\">See more positions<\/button>\n    <\/div>\n  <\/div>\n<\/div>\n\n<div id=\"ge-ofertas\" hidden>\n<div id=\"job-detail-1\" style=\"display:none\">\n  <h2 style=\"font-size:28px;margin:0 0 8px;color:#222222\">Account Executive B2B \u2014 Monterrey<\/h2>\n  <p style=\"color:#666666;margin:0 0 24px\">Sales \u00b7 Monterrey (Hybrid)<\/p>\n  <div style=\"color:#444444;font-size:15px;line-height:1.65\"><p><strong>Salary:<\/strong> 325,000 \u2013 585,000 MXN \/ year<\/p>\n\n<p><strong>Job description<\/strong><br>\nAt Espiral MS, a technology company certified as a Great Place to Work\u00ae, we are looking to hire a Business Development Executive to join the sales team of Proactivanet\u00ae, the leading ITSM (IT Service Management) and ITAM (IT Asset Management) platform in Spain and Latin America.<\/p>\n\n<p><strong>About us<\/strong><br>\nWe are a company with more than 25 years of history, an international presence in Spain and Latin America, more than 500 client organizations and a team of more than 120 professionals committed to innovation and excellence.<\/p>\n<p>Proactivanet\u00ae is one of the highest-rated ITSM and ITAM solutions among users, helping organizations across different sectors optimize the management of their technology services and assets.<\/p>\n<p>We are going through a period of strong growth in the region and are strengthening our presence in northern Mexico, a strategic area for our commercial development.<\/p>\n<p>Our culture is based on three fundamental pillars: commitment to people, commitment to our clients' success, and commitment to excellence in everything we do. We also hold the Great Place To Work\u00ae certification.<\/p>\n\n<p><strong>Your mission<\/strong><br>\nWe are looking for someone with experience in B2B technology consultative sales who wants to take on a growth and market development challenge. As a Business Development Executive, you will be responsible for identifying opportunities, generating new business relationships and managing the full sales cycle, contributing directly to Proactivanet's expansion in northern Mexico.<\/p>\n<p>This role is especially aimed at professionals who enjoy building business from scratch, generating their own opportunities and actively taking part in the growth of an expanding operation. You will have the autonomy to develop your territory, direct visibility with regional management, and the opportunity to make a real impact on business results.<\/p>\n\n<p><strong>What will you do?<\/strong><\/p>\n<ul style=\"padding-left:18px;margin:0 0 12px\">\n<li>Prospect and develop new business opportunities in mid-sized and large companies.<\/li>\n<li>Identify key decision-makers and map strategic accounts.<\/li>\n<li>Manage the full sales cycle: prospecting, discovery, presentation, demo, proposal, negotiation and closing.<\/li>\n<li>Build trusting relationships with potential clients and strategic accounts.<\/li>\n<li>Maintain and develop an active opportunity pipeline using a CRM.<\/li>\n<li>Prepare sales forecasts and track activity and results indicators.<\/li>\n<li>Work in coordination with Marketing, Pre-sales, Operations and Customer Success.<\/li>\n<li>Identify growth opportunities in existing clients through upselling and cross-selling.<\/li>\n<li>Take part in events, networking and brand positioning activities in the region.<\/li>\n<\/ul>\n\n<p><strong>What this role is not<\/strong><\/p>\n<ul style=\"padding-left:18px;margin:0 0 12px\">\n<li>It is not a role focused solely on managing existing accounts.<\/li>\n<li>It is not a position exclusively oriented to handling opportunities generated by other teams.<\/li>\n<li>We are not looking for a sales administration or operational follow-up profile.<\/li>\n<li>We are looking for someone able to generate new opportunities, develop the market and close deals autonomously.<\/li>\n<\/ul>\n\n<p><strong>What we are looking for<\/strong><\/p>\n<p><em>Experience and knowledge<\/em><\/p>\n<ul style=\"padding-left:18px;margin:0 0 12px\">\n<li>2 to 4 years of experience in B2B sales of software, technology or technology services.<\/li>\n<li>Proven experience managing complete consultative sales processes.<\/li>\n<li>Track record of meeting or exceeding sales targets.<\/li>\n<li>Experience in active prospecting and generating new business opportunities.<\/li>\n<li>Ability to communicate business value and return on investment to technical and executive counterparts.<\/li>\n<li>Familiarity with sales metrics, forecasting and pipeline management.<\/li>\n<li>Intermediate English (B1 or higher).<\/li>\n<li>Residence in Monterrey or its metropolitan area.<\/li>\n<\/ul>\n<p><em>We will especially value<\/em><\/p>\n<ul style=\"padding-left:18px;margin:0 0 12px\">\n<li>Experience selling SaaS, ITSM, ITAM, cybersecurity or enterprise software solutions.<\/li>\n<li>Knowledge of consultative sales methodologies.<\/li>\n<li>Experience working with CRM and sales management tools.<\/li>\n<li>Interest in developing a professional career in a technology company with international growth.<\/li>\n<\/ul>\n\n<p><strong>What do we offer?<\/strong><\/p>\n<ul style=\"padding-left:18px;margin:0 0 12px\">\n<li>Be part of a solid technology project in full international expansion.<\/li>\n<li>Join a close-knit, agile team with real decision-making capacity.<\/li>\n<li>Direct visibility with regional management and active participation in commercial strategy.<\/li>\n<li>Hybrid working model based in Monterrey.<\/li>\n<li>Competitive fixed salary plus a commission scheme linked to results.<\/li>\n<li>Professional development and internal growth plan.<\/li>\n<li>Specialized training in consultative selling, ITIL and ITSM\/ITAM solutions.<\/li>\n<li>Participation in national and international events, trade shows and sales activities.<\/li>\n<li>Occasional travel within Mexico, Latin America and Spain.<\/li>\n<li>Professional stability within a company recognized for its organizational culture.<\/li>\n<\/ul>\n\n<p><strong>Are you up for this challenge?<\/strong><br>\nIf you enjoy developing business, are motivated by opening markets, building commercial relationships from scratch and being part of a technology company with international reach, we would love to meet you. Apply and tell us about your main sales achievements and how you have contributed to business growth in your previous roles.<\/p><\/div>\n  <div style=\"margin-top:28px\">\n    <button type=\"button\" data-apply-for=\"Account Executive B2B \u2014 Monterrey\" style=\"background-color:#00A0DF;color:#FFFFFF;border:none;cursor:pointer;padding:14px 32px;border-radius:999px;font-size:16px;font-weight:600\">Apply for this position<\/button>\n  <\/div>\n<\/div>\n<div id=\"job-detail-2\" style=\"display:none\">\n  <h2 style=\"font-size:28px;margin:0 0 8px;color:#222222\">Customer Account Manager EMEA (CAM)<\/h2>\n  <p style=\"color:#666666;margin:0 0 24px\">Customer Success \u00b7 Spain (Hybrid)<\/p>\n  <div style=\"color:#444444;font-size:15px;line-height:1.65\"><p><strong>Job description<\/strong><br>\nAt Espiral MS, a technology company certified as a Great Place to Work\u00ae, we are looking to hire a Customer Account Manager to join the sales team of Proactivanet\u00ae, the leading ITSM (IT Service Management) and ITAM (IT Asset Management) tool in Spain and Latin America.<\/p>\n<p><strong>About us<\/strong><br>\nWe are a company with a presence in 5 countries, more than 500 large client organizations worldwide and a team of more than 100 professionals passionate about technology and service.<\/p>\n<p>We are going through a period of growth and international expansion, and our culture is based on three fundamental pillars: commitment to people, commitment to our clients' success and commitment to excellence in everything we do.<\/p>\n<p>At Grupo Espiral we believe in teamwork, continuous learning and enjoying the journey while we achieve great results. We are also certified as a Great Place to Work\u00ae, which recognizes us as an excellent place to work.<\/p>\n<p><strong>Your mission<\/strong><br>\nWe are looking for a Customer Account Manager with experience in the strategic management of mid-market and enterprise B2B accounts, able to identify and capitalize on upsell and cross-sell opportunities. This role will be key to maximizing the value our clients get from Proactivanet and, at the same time, driving recurring revenue growth.<\/p>\n<p>Reporting to the Head of Customer Success, you will work closely with our Customer Success Managers to design account expansion strategies, strengthen long-term relationships and position us as the technology partner of reference.<\/p>\n<p><strong>Main responsibilities<\/strong><\/p>\n<ul style=\"padding-left:18px;margin:0 0 12px\">\n<li>Manage a portfolio of strategic accounts in Europe, focused on mid-market and enterprise clients.<\/li>\n<li>Develop and implement account plans aimed at identifying expansion opportunities (upsell\/cross-sell).<\/li>\n<li>Coordinate with CSMs to present value proposals aligned with the client's needs and objectives.<\/li>\n<li>Negotiate commercial agreements and manage the full closing cycle of key opportunities.<\/li>\n<li>Maintain a deep understanding of the solution, the product roadmap and the client's industry.<\/li>\n<li>Monitor account health and anticipate risks or friction that could affect the commercial relationship.<\/li>\n<li>Report results and growth forecasts.<\/li>\n<li>Take part in meetings and presentations with clients, both remotely and in person.<\/li>\n<\/ul>\n<p><strong>Requirements<\/strong><\/p>\n<ul style=\"padding-left:18px;margin:0 0 12px\">\n<li>Experience: at least 3 years in account management, consultative sales or expansion roles in B2B SaaS environments.<\/li>\n<li>Segment: experience working with mid-market and enterprise accounts.<\/li>\n<li>Languages: fluent Spanish and English (spoken and written). Other European languages are a plus.<\/li>\n<li>Skills:\n<ul style=\"padding-left:18px;margin:0 0 12px\">\n<li>Consultative ability to understand business needs and propose strategic solutions.<\/li>\n<li>Excellent negotiation and closing skills.<\/li>\n<li>Clear, persuasive communication oriented to long-term relationships.<\/li>\n<li>Goal and metrics orientation, with a proactive and analytical mindset.<\/li>\n<\/ul>\n<\/li>\n<li>Tools: CRM proficiency (ideally Salesforce) and familiarity with remote collaboration tools.<\/li>\n<\/ul>\n<p><strong>What we offer<\/strong><\/p>\n<p>We know that talent is our greatest asset and we strive to take care of it by offering you a fair, diverse and inclusive environment:<\/p>\n<ul style=\"padding-left:18px;margin:0 0 12px\">\n<li>Be part of a leading project in international expansion.<\/li>\n<li>Join a team where talent and people matter most.<\/li>\n<li>Learn, grow and contribute in an innovative, collaborative and dynamic environment.<\/li>\n<li>Remote work from Spain, with availability to travel occasionally to our offices in Gij\u00f3n and to visit clients in different regions of Spain.<\/li>\n<li>Flexible hours to make work-life balance easier. No work on Friday afternoons, weekends or public holidays. Intensive summer schedule to enjoy free afternoons.<\/li>\n<li>Intensive training paid for by the company. We will train you in technical aspects and management frameworks that will let you improve your skills and boost your professional career in a highly innovative environment.<\/li>\n<li>Professional stability, continuity and career growth in an expanding project. Salary based on the candidate's worth and experience.<\/li>\n<li>Additional allowances when travelling.<\/li>\n<li>Corporate benefits program.<\/li>\n<\/ul>\n<p>If you are passionate about building strong relationships, motivated by your clients' success and love working as a team in a fast-growing technology environment\u2026 <strong>we would love to meet you!<\/strong><\/p><\/div>\n  <div style=\"margin-top:28px\">\n    <button type=\"button\" data-apply-for=\"Customer Account Manager EMEA (CAM)\" style=\"background-color:#00A0DF;color:#FFFFFF;border:none;cursor:pointer;padding:14px 32px;border-radius:999px;font-size:16px;font-weight:600\">Apply for this position<\/button>\n  <\/div>\n<\/div>\n<div id=\"job-detail-3\" style=\"display:none\">\n  <h2 style=\"font-size:28px;margin:0 0 8px;color:#222222\">Account Manager \u2014 Proactivanet Chile<\/h2>\n  <p style=\"color:#666666;margin:0 0 24px\">Sales \u00b7 Santiago, Chile (Hybrid)<\/p>\n  <div style=\"color:#444444;font-size:15px;line-height:1.65\"><p><strong>Job description<\/strong><br>\nAt Grupo Espiral MS, an international software manufacturer with strong growth and a culture of excellence, we are looking for a Sales \/ Account Manager for Chile to drive new business acquisition for Proactivanet, our SaaS solution specialized in ITSM + ITAM.<\/p>\n<p>Proactivanet is a well-established platform in IT service and technology asset management, with an international presence and a value proposition aimed at helping organizations optimize, secure and improve the efficiency of their IT operations.<\/p>\n<p>Reporting to the Sales Director, this position will be key in generating new business opportunities in Chile, with a focus on winning new customers and building pipeline.<\/p>\n<p><strong>What will your mission be?<\/strong><br>\nAttract, develop and close new sales opportunities in Chile, acting as a hunter, generating new business (ARR New Logo) and building valuable relationships with customers and partners.<\/p>\n<p><strong>Main responsibilities<\/strong><\/p>\n<p><em>Business generation and development<\/em><\/p>\n<ul style=\"padding-left:18px;margin:0 0 12px\">\n<li>Identify opportunities in new accounts (new logos).<\/li>\n<li>Understand customer needs and propose value-driven solutions.<\/li>\n<li>Build and maintain a solid pipeline of opportunities.<\/li>\n<\/ul>\n<p><em>Opportunity management and closing<\/em><\/p>\n<ul style=\"padding-left:18px;margin:0 0 12px\">\n<li>Lead consultative sales processes in B2B environments (software \/ SaaS).<\/li>\n<li>Manage the full sales cycle: from the first meeting to closing.<\/li>\n<li>Negotiate and close deals with public and private customers.<\/li>\n<\/ul>\n<p><em>Customer and partner relationships<\/em><\/p>\n<ul style=\"padding-left:18px;margin:0 0 12px\">\n<li>Develop relationships with key decision-makers (CIOs, IT Managers, etc.).<\/li>\n<li>Drive the development of partners and integrators in the local market.<\/li>\n<li>Collaborate on joint sales activities with the channel.<\/li>\n<\/ul>\n<p><em>Internal coordination<\/em><\/p>\n<ul style=\"padding-left:18px;margin:0 0 12px\">\n<li>Coordinate with SDRs, pre-sales and marketing during the sales process.<\/li>\n<li>Take part in defining and running local marketing activities.<\/li>\n<li>Ensure a proper handover to delivery teams after closing.<\/li>\n<\/ul>\n<p><em>Follow-up and reporting<\/em><\/p>\n<ul style=\"padding-left:18px;margin:0 0 12px\">\n<li>Manage the pipeline in a CRM (Salesforce or similar).<\/li>\n<li>Analyze sales metrics and opportunity progress.<\/li>\n<li>Report results and forecasts to management.<\/li>\n<\/ul>\n<p><strong>How do we measure success?<\/strong><\/p>\n<ul style=\"padding-left:18px;margin:0 0 12px\">\n<li>Achievement of sales targets (ARR New Logo in Chile).<\/li>\n<li>Pipeline generation for future fiscal years.<\/li>\n<li>Winning new customers and partners.<\/li>\n<li>Quality and conversion of the sales funnel.<\/li>\n<\/ul>\n<p><strong>What are we looking for?<\/strong><\/p>\n<ul style=\"padding-left:18px;margin:0 0 12px\">\n<li>5+ years of experience in B2B sales, ideally in software or technology.<\/li>\n<li>Experience in consultative selling and managing complete sales cycles.<\/li>\n<li>A clearly results-oriented, acquisition-focused profile (hunter).<\/li>\n<li>Negotiation, communication and customer relationship skills.<\/li>\n<li>Knowledge of the IT ecosystem and the Chilean market is a plus.<\/li>\n<li>Experience with CRM (Salesforce, HubSpot or similar).<\/li>\n<li>English is a plus.<\/li>\n<\/ul>\n<p><strong>General considerations<\/strong><\/p>\n<ul style=\"padding-left:18px;margin:0 0 12px\">\n<li>Joining a growing international project.<\/li>\n<li>A role with a direct impact on business generation.<\/li>\n<li>High autonomy and responsibility for results.<\/li>\n<li>Location: Santiago, Chile.<\/li>\n<\/ul>\n<p><strong>Requirements<\/strong><\/p>\n<p><em>Experience and knowledge<\/em><\/p>\n<ul style=\"padding-left:18px;margin:0 0 12px\">\n<li>Minimum of 5 years of experience in B2B sales, preferably in enterprise software or SaaS environments.<\/li>\n<li>Experience selling IT solutions (ITSM, ITAM or management software is a plus).<\/li>\n<li>Experience in consultative selling, managing:\n<ul style=\"padding-left:18px;margin:0 0 12px\">\n<li>Complete sales cycles (end-to-end)<\/li>\n<li>Multiple stakeholders (IT, business, C-level)<\/li>\n<\/ul>\n<\/li>\n<li>Experience in new business generation (hunter profile).<\/li>\n<li>Knowledge of the Chilean market and\/or relationships with technology integrators is a plus.<\/li>\n<li>Knowledge of the following is a plus:\n<ul style=\"padding-left:18px;margin:0 0 12px\">\n<li>ITIL<\/li>\n<li>ISO 20000 \/ ISO 27000<\/li>\n<\/ul>\n<\/li>\n<li>Experience with CRM tools (Salesforce, HubSpot or others).<\/li>\n<\/ul>\n<p><em>Results orientation<\/em><\/p>\n<ul style=\"padding-left:18px;margin:0 0 12px\">\n<li>Proven track record of meeting sales targets.<\/li>\n<li>Ability to generate your own pipeline and convert opportunities into sales.<\/li>\n<li>Analytical, metrics-driven approach (pipeline, forecast, conversion).<\/li>\n<li>Strong focus on winning new accounts (new business).<\/li>\n<\/ul>\n<p><em>Key competencies<\/em><\/p>\n<ul style=\"padding-left:18px;margin:0 0 12px\">\n<li>Excellent negotiation and closing skills.<\/li>\n<li>Ability to build trusting relationships with customers and partners.<\/li>\n<li>Good level of communication with technical and business profiles.<\/li>\n<li>Autonomous, proactive profile with strong organizational skills.<\/li>\n<li>Customer orientation and value generation (consultative selling).<\/li>\n<li>Ability to work in dynamic, international environments.<\/li>\n<\/ul>\n<p><em>Other<\/em><\/p>\n<ul style=\"padding-left:18px;margin:0 0 12px\">\n<li>Residence in Chile (preferably Santiago).<\/li>\n<li>Availability for occasional travel.<\/li>\n<li>English level is a plus.<\/li>\n<\/ul>\n<p><strong>What we offer<\/strong><\/p>\n<ul style=\"padding-left:18px;margin:0 0 12px\">\n<li>Hybrid format: 1 or 2 days a week at the head office in downtown Santiago and the rest remote.<\/li>\n<li>Flexible hours to make work-life balance easier.<\/li>\n<li>Intensive training paid for by the company. We will train you in technical aspects and management frameworks that will let you improve your skills and boost your professional career in a highly innovative environment.<\/li>\n<li>Professional stability, continuity and career growth in an expanding, highly innovative project.<\/li>\n<li>Salary: based on each candidate's worth. Additional allowances when travelling.<\/li>\n<\/ul><\/div>\n  <div style=\"margin-top:28px\">\n    <button type=\"button\" data-apply-for=\"Account Manager \u2014 Proactivanet Chile\" style=\"background-color:#00A0DF;color:#FFFFFF;border:none;cursor:pointer;padding:14px 32px;border-radius:999px;font-size:16px;font-weight:600\">Apply for this position<\/button>\n  <\/div>\n<\/div>\n<div id=\"job-detail-4\" style=\"display:none\">\n  <h2 style=\"font-size:28px;margin:0 0 8px;color:#222222\">Customer Success Manager \u2014 Colombia<\/h2>\n  <p style=\"color:#666666;margin:0 0 24px\">Customer Success \u00b7 Colombia (Hybrid)<\/p>\n  <div style=\"color:#444444;font-size:15px;line-height:1.65\"><p><strong>Job description<\/strong><br>\nAt Espiral MS, a technology company certified as a Great Place to Work\u00ae, we are looking for a Customer Success Manager to join the sales team of Proactivanet\u00ae, the leading ITSM (IT Service Management) and ITAM (IT Asset Management) tool in Spain and Latin America.<\/p>\n<p><strong>About us<\/strong><br>\nWe are a company with a presence in 5 countries, more than 500 large client organisations worldwide and a team of more than 100 professionals passionate about technology and service.<\/p>\n<p>We are in a stage of growth and international expansion, and our culture is based on three core pillars: commitment to people, commitment to our clients' success and commitment to excellence in everything we do.<\/p>\n<p>At Grupo Espiral we believe in teamwork, continuous learning and enjoying the journey while we achieve great results. We are also certified as a Great Place to Work\u00ae, which recognises us as an excellent place to work.<\/p>\n<p><strong>Your mission<\/strong><br>\nWe are looking for a Customer Success Manager with a solid technical background, able to ensure adoption, value and expansion in strategic accounts, orchestrating people, processes and tool integration.<\/p>\n<p>As a Customer Success Manager, you will be key to guaranteeing our customers' success throughout their entire experience with Proactivanet.<\/p>\n<p><strong>Your goal:<\/strong> to build strategic, trusting and lasting relationships, helping each customer reach their goals through optimal use of our solution.<\/p>\n<p><strong>What will you do? (key responsibilities)<\/strong><\/p>\n<ul style=\"padding-left:18px;margin:0 0 12px\">\n<li><strong>Success plan per account:<\/strong> define and facilitate technical roadmaps, KPIs and governance, strategically advising customers to align their business goals with Proactivanet.<\/li>\n<li><strong>Technical\/functional onboarding:<\/strong> process-oriented, in coordination with Pre-sales\/Support to promote effective adoption of the tool.<\/li>\n<li><strong>Adoption and change:<\/strong> drive communications, training and adoption according to each customer profile, coordinating technical actions with Consulting\/Support where applicable.<\/li>\n<li><strong>Voice of the customer and value:<\/strong> gather structured feedback, document use cases\/ROI, prepare executive reports and generate references.<\/li>\n<li><strong>Portfolio management:<\/strong> prioritise high-impact actions, mitigate churn risk, identify expansion (up\/cross-sell).<\/li>\n<li><strong>Metrics:<\/strong> GRR &gt;95%, NPS &gt; +45, Churn &lt;3%, TTFV \u226430 days, TTV \u226490 days, licence utilisation &gt;85%.<\/li>\n<\/ul>\n<p><strong>What this role is not<\/strong><\/p>\n<ul style=\"padding-left:18px;margin:0 0 12px\">\n<li>It is not support, implementation or \"just accounts\": it is a technical and business success role.<\/li>\n<li>It is not pure pre-sales: although you will work closely with them, the focus is adoption, value and renewals.<\/li>\n<\/ul>\n<p><strong>Requirements \u2014 What we are looking for<\/strong><\/p>\n<ul style=\"padding-left:18px;margin:0 0 12px\">\n<li>3+ years in Customer Success \/ TAM \/ Consulting in technology environments (ideally SaaS).<\/li>\n<li>Knowledge of ITIL (ideally ITIL 4 Foundation or higher).<\/li>\n<li>Conversational technology literacy: understanding API\/SSO\/Directory\/CMDB\/Discovery at a conceptual level in order to lead the conversation and translate needs into requirements for the technical teams.<\/li>\n<li>Native\/C2 Spanish and at least B1 English (meetings and documentation).<\/li>\n<li>Consultative approach, results orientation and excellent communication skills.<\/li>\n<li>Stakeholder management: working with sponsors, IT and business areas; ability to prioritise a value backlog and coordinate with Consulting\/Support\/Product.<\/li>\n<\/ul>\n<p><strong>Nice to have<\/strong><\/p>\n<ul style=\"padding-left:18px;margin:0 0 12px\">\n<li>Intermediate ITIL certifications, ISO 20000\/27001 or similar.<\/li>\n<li>Experience with enterprise clients in Colombia and with Security\/Compliance teams.<\/li>\n<li>Experience with ITSM\/ITAM platforms (e.g. Proactivanet, ServiceNow, Jira Service Management, BMC, Ivanti, ManageEngine, Freshservice).<\/li>\n<\/ul>\n<p><strong>What we offer<\/strong><br>\nWe know that talent is our greatest asset and we strive to look after it by offering you a fair, diverse and inclusive environment:<\/p>\n<ul style=\"padding-left:18px;margin:0 0 12px\">\n<li>Be part of a leading project in international expansion.<\/li>\n<li>Join a team where talent and people matter most.<\/li>\n<li>Learn, grow and contribute in an innovative, collaborative and dynamic environment.<\/li>\n<li>Remote work from Colombia, with availability to travel occasionally to visit clients within the country and in Ecuador.<\/li>\n<li>Flexible working hours to make work-life balance easier.<\/li>\n<li>Intensive training paid for by the company. We will train you in technical aspects and management frameworks that will help you improve your skills and boost your career in a highly innovative environment.<\/li>\n<li>Professional stability, continuity and career growth in an expanding project. Salary based on the candidate's worth and experience.<\/li>\n<li>Additional allowances when travelling.<\/li>\n<li>Statutory benefits.<\/li>\n<\/ul>\n<p>If you are passionate about building solid relationships, driven by your customers' success and love working as a team in a rapidly expanding technology environment\u2026 <strong>we would love to meet you!<\/strong><\/p><\/div>\n  <div style=\"margin-top:28px\">\n    <button type=\"button\" data-apply-for=\"Customer Success Manager \u2014 Colombia\" style=\"background-color:#00A0DF;color:#FFFFFF;border:none;cursor:pointer;padding:14px 32px;border-radius:999px;font-size:16px;font-weight:600\">Apply for this position<\/button>\n  <\/div>\n<\/div>\n<\/div>\n<script>window.GE_EMPLEO = {\"lang\": \"en\", \"ofertas\": \"inline\", \"origen\": \"\", \"oficinas\": [\"Gij\u00f3n\", \"Mexico City\", \"Santiago, Chile\", \"Bogot\u00e1\", \"Lima\"], \"cf7\": {\"id\": \"35268\", \"locale\": \"en_US\", \"endpoint\": \"\/wp-json\/contact-form-7\/v1\/contact-forms\/35268\/feedback\"}};<\/script>\n<script>\n\/* \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n   Portal de empleo \u00b7 Grupo Espiral MS\n   Configuraci\u00f3n por p\u00e1gina en window.GE_EMPLEO (se define justo antes de este script):\n     lang: 'es' | 'en'\n     ofertas: 'inline' \u2192 lee los bloques #job-detail-N de esta misma p\u00e1gina\n              'remote' \u2192 los lee de proactivanet.com\/trabaja-con-nosotros (p\u00e1gina de Espiral)\n     cf7: formulario Contact Form 7 de proactivanet.com al que se env\u00edan las candidaturas (llegan a RRHH)\n     origen: texto que se a\u00f1ade al mensaje para saber desde qu\u00e9 web se envi\u00f3\n   Las ofertas que mencionan Prodity se muestran con la marca Prodity; el resto con la de Proactivanet.\n   \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\nconst GE = Object.assign({ lang: 'es', ofertas: 'remote', origen: '' }, window.GE_EMPLEO || {});\nGE.cf7 = Object.assign({\n  id: '34518', locale: 'es_ES', version: '6.1.6',\n  endpoint: 'https:\/\/www.proactivanet.com\/wp-json\/contact-form-7\/v1\/contact-forms\/34518\/feedback',\n  recaptchaKey: '6LfKRAojAAAAAErsdopSV4FdLET_2OGqFlIlv4S1'\n}, GE.cf7 || {});\nconst OFERTAS_URL = 'https:\/\/www.proactivanet.com\/wp-json\/wp\/v2\/pages?slug=trabaja-con-nosotros&_fields=content';\nconst BRANDS = {\n  proactivanet: { nombre: 'Proactivanet', color: '#009FD7', logo: 'https:\/\/www.proactivanet.com\/wp-content\/uploads\/2022\/12\/horizontal_positivo-1.svg', logoH: 24 },\n  prodity: { nombre: 'Prodity', color: '#FF6A3D', logo: 'https:\/\/proditysoftware.com\/wp-content\/uploads\/2025\/10\/Logo.svg', logoH: 17 }\n};\nconst T = {\n  es: {\n    presencial: '\ud83c\udfe2 Presencial', hibrido: '\ud83d\udd00 H\u00edbrido', remoto: '\ud83c\udfe0 Remoto',\n    badFile: 'El archivo debe ser PDF, DOC o DOCX.', bigFile: 'El archivo no puede superar los 10 MB.',\n    needName: 'Indica tu nombre y tu email.', badEmail: 'El email no parece v\u00e1lido.', needCv: 'Adjunta tu curr\u00edculum.',\n    needConsent: 'Debes aceptar la pol\u00edtica de protecci\u00f3n de datos y el tratamiento de tus datos.',\n    sendFail: 'No se ha podido enviar la candidatura.', netFail: 'No se ha podido enviar la candidatura. Int\u00e9ntalo de nuevo en unos minutos.',\n    abierta: 'Candidatura abierta', puesto: 'Puesto', enviada: 'Enviada desde',\n    frase: p => 'Hemos registrado tu candidatura espec\u00edficamente para el puesto de ' + p + '.',\n    ok: (n, p) => 'Gracias, ' + n + '. Hemos recibido tu candidatura' + (p ? ' para ' + p : '') + ' y nos pondremos en contacto contigo si tu perfil encaja.',\n    areaDefault: 'Otro \/ no especificado'\n  },\n  en: {\n    presencial: '\ud83c\udfe2 On-site', hibrido: '\ud83d\udd00 Hybrid', remoto: '\ud83c\udfe0 Remote',\n    badFile: 'The file must be PDF, DOC or DOCX.', bigFile: 'The file cannot exceed 10 MB.',\n    needName: 'Please enter your name and email.', badEmail: 'The email address does not look valid.', needCv: 'Please attach your CV.',\n    needConsent: 'You must accept the data protection policy and the processing of your data.',\n    sendFail: 'Your application could not be sent.', netFail: 'Your application could not be sent. Please try again in a few minutes.',\n    abierta: 'Open application', puesto: 'Position', enviada: 'Sent from',\n    frase: p => 'We have registered your application specifically for the position of ' + p + '.',\n    ok: (n, p) => 'Thank you, ' + n + '. We have received your application' + (p ? ' for ' + p : '') + ' and will contact you if your profile is a good fit.',\n    areaDefault: 'Other \/ not specified'\n  }\n}[GE.lang] || null;\n\nfunction parseOfertas(root) {\n  const sinAcentos = t => t.normalize('NFD').replace(\/[\u0300-\u036f]\/g, '').toLowerCase();\n  const paisDe = t => { t = sinAcentos(t);\n    if (\/mexic|monterrey|cdmx|guadalajara\/.test(t)) return 'MX';\n    if (\/chile|santiago\/.test(t)) return 'CL';\n    if (\/colombia|bogota|medellin\/.test(t)) return 'CO';\n    if (\/peru|lima\/.test(t)) return 'PE';\n    if (\/brasil|brazil|sao paulo\/.test(t)) return 'BR';\n    if (\/ecuador|quito\/.test(t)) return 'EC';\n    if (\/argentina\/.test(t)) return 'AR';\n    if (\/espana|spain|gijon|madrid|asturias|barcelona\/.test(t)) return 'ES';\n    return ''; };\n  return [...root.querySelectorAll('[id^=\"job-detail-\"]')].filter(el => \/^job-detail-\\d+$\/.test(el.id)).map(src => {\n    const el = src.cloneNode(true);\n    el.querySelectorAll('script,style,iframe,button,form,input').forEach(n => n.remove());\n    el.querySelectorAll('*').forEach(n => [...n.attributes].forEach(a => { if (!\/^(href|target|rel)$\/.test(a.name)) n.removeAttribute(a.name); }));\n    const h = el.querySelector('h1,h2,h3');\n    const titulo = h ? h.textContent.trim() : '';\n    const meta = h && h.nextElementSibling && h.nextElementSibling.tagName === 'P' ? h.nextElementSibling : null;\n    const metaTxt = meta ? meta.textContent.trim() : '';\n    if (h) h.remove(); if (meta) meta.remove();\n    el.querySelectorAll('p').forEach(p => { if (\/^\\s*(salario|salary)\\s*:\/i.test(p.textContent)) p.remove(); });\n    const [departamento, lugarTxt = ''] = metaTxt.split(\/\\s*\u00b7\\s*\/);\n    const m = lugarTxt.match(\/^(.*?)\\s*\\((.*?)\\)\\s*$\/);\n    let ubicacion = m ? m[1] : lugarTxt, modalidad = '';\n    const paren = m ? sinAcentos(m[2]) : '';\n    if (\/^(remoto|remote)\/i.test(ubicacion)) { modalidad = 'remoto'; ubicacion = m ? m[2] : ''; }\n    else if (\/hibrid|hybrid\/.test(paren)) modalidad = 'hibrido';\n    else if (\/presencial|on-?site|office\/.test(paren)) modalidad = 'presencial';\n    else if (\/remot\/.test(paren)) modalidad = 'remoto';\n    const descripcion = el.innerHTML.replace(\/<!--[\\s\\S]*?-->\/g, '').trim()\n      .replace(\/^<p>\\s*<strong>\\s*(Descripci[o\u00f3]n del puesto|Job description)\\s*<\\\/strong>\\s*<br>\\s*\/i, '<p>');\n    const txt = titulo + ' ' + el.textContent;\n    const producto = \/prodity\/i.test(titulo) || (\/prodity\/i.test(txt) && !\/proactivanet\/i.test(txt)) ? 'prodity' : 'proactivanet';\n    return { id: el.id.replace('job-detail-', ''), titulo, departamento: departamento || '', ubicacion, modalidad,\n             pais: paisDe(ubicacion + ' ' + titulo), producto, empresa: BRANDS[producto].nombre, descripcion };\n  }).filter((v, i, a) => v.titulo && a.findIndex(x => x.id === v.id) === i);\n}\n\nfunction recaptchaToken() {\n  return new Promise(resolve => {\n    const key = GE.cf7.recaptchaKey;\n    const run = () => grecaptcha.ready(() => grecaptcha.execute(key, { action: 'contactform' }).then(resolve, () => resolve('')));\n    if (window.grecaptcha && grecaptcha.execute) return run();\n    const s = document.createElement('script');\n    s.src = 'https:\/\/www.google.com\/recaptcha\/api.js?render=' + key;\n    s.onload = () => setTimeout(run, 300); s.onerror = () => resolve('');\n    document.head.appendChild(s);\n    setTimeout(() => resolve(''), 10000);\n  });\n}\n\nfunction portalApp() {\n  const emptyForm = () => ({ nombre: '', email: '', telefono: '', linkedin: '', carta: '', cv: null, cvName: '', carta_file: null, cartaName: '', privacidad: false, consentimiento: false, area: T.areaDefault });\n  return {\n    view: 'list', loading: false, sending: false,\n    vacantes: [], selectedVacante: null,\n    filtroUbicacion: 'all', filtroModalidad: 'all',\n    form: emptyForm(), formError: '', successMsg: '', t0: Date.now(),\n\n    async init() {\n      this.loading = true;\n      try {\n        if (GE.ofertas === 'inline') {\n          this.vacantes = parseOfertas(document.getElementById('ge-ofertas') || document);\n        } else {\n          const j = await fetch(OFERTAS_URL).then(r => r.json());\n          const doc = new DOMParser().parseFromString((j[0] && j[0].content && j[0].content.rendered) || '', 'text\/html');\n          this.vacantes = parseOfertas(doc);\n        }\n      } catch (e) { this.vacantes = []; }\n      this.loading = false;\n      const id = new URLSearchParams(location.search).get('vacante');\n      if (id) { const v = this.vacantes.find(x => String(x.id) === id); if (v) this.openDetail(v); }\n    },\n    get ubicaciones() { return ['all', ...new Set([...(GE.oficinas || []), ...this.vacantes.map(v => v.ubicacion).filter(Boolean)])]; },\n    get modalidades() { return ['all', ...new Set(this.vacantes.map(v => v.modalidad).filter(Boolean))]; },\n    get vacantesFiltered() {\n      return this.vacantes.filter(v =>\n        (this.filtroUbicacion === 'all' || v.ubicacion === this.filtroUbicacion) &&\n        (this.filtroModalidad === 'all' || v.modalidad === this.filtroModalidad));\n    },\n    modalidadLabel(m) { return T[m] || m || ''; },\n    brand(v) { return BRANDS[v && v.producto] || BRANDS.proactivanet; },\n    top() { this.$nextTick(() => { const el = document.getElementById('ge-empleo'); if (el) window.scrollTo({ top: el.getBoundingClientRect().top + window.scrollY - 100, behavior: 'smooth' }); }); },\n    openDetail(v) { this.selectedVacante = v; this.view = 'detail'; this.top(); },\n    goBack() { this.selectedVacante = null; this.view = 'list'; this.$nextTick(() => document.getElementById('posiciones').scrollIntoView({ behavior: 'smooth' })); },\n    openApply() { this.form = emptyForm(); this.formError = ''; this.view = 'apply'; this.top(); },\n    openCandidaturaAbierta() { this.selectedVacante = null; this.openApply(); },\n    pick(file, kind) {\n      if (!file) return;\n      if (!\/\\.(pdf|docx?)$\/i.test(file.name)) { this.formError = T.badFile; return; }\n      if (file.size > 10 * 1024 * 1024) { this.formError = T.bigFile; return; }\n      this.formError = '';\n      if (kind === 'cv') { this.form.cv = file; this.form.cvName = file.name; }\n      else { this.form.carta_file = file; this.form.cartaName = file.name; }\n    },\n    async submitApplication() {\n      const f = this.form;\n      if (!f.nombre.trim() || !f.email.trim()) { this.formError = T.needName; return; }\n      if (!\/^[^@\\s]+@[^@\\s]+\\.[^@\\s]+$\/.test(f.email)) { this.formError = T.badEmail; return; }\n      if (!f.cv) { this.formError = T.needCv; return; }\n      if (!f.privacidad || !f.consentimiento) { this.formError = T.needConsent; return; }\n      this.formError = ''; this.sending = true;\n      const v = this.selectedVacante;\n      const puesto = v ? v.titulo : '';\n      const mensaje = [f.carta, f.linkedin ? 'LinkedIn: ' + f.linkedin : '', T.puesto + ': ' + (puesto || T.abierta), GE.origen ? T.enviada + ': ' + GE.origen : ''].filter(Boolean).join('\\n\\n');\n      const c = GE.cf7;\n      const fd = new FormData();\n      Object.entries({ _wpcf7: c.id, _wpcf7_version: c.version, _wpcf7_locale: c.locale, _wpcf7_unit_tag: 'wpcf7-f' + c.id + '-o1',\n        _wpcf7_container_post: '0', _wpcf7_posted_data_hash: '', 'your-name': f.nombre, 'your-email': f.email, 'your-phone': f.telefono,\n        'area-interes': f.area, mensaje, 'acceptance-leido': '1', 'acceptance-espiral': '1', puesto, puesto_frase: puesto ? T.frase(puesto) : '',\n        _wpcf7_ak_hp_textarea: '', _wpcf7_ak_js: String(this.t0) }).forEach(([k, val]) => fd.append(k, val));\n      fd.append('cv', f.cv);\n      if (f.carta_file) fd.append('cv2', f.carta_file);\n      try {\n        fd.append('_wpcf7_recaptcha_response', await recaptchaToken());\n        const r = await fetch(c.endpoint, { method: 'POST', body: fd });\n        const j = await r.json();\n        if (j.status !== 'mail_sent') {\n          const inv = (j.invalid_fields || []).map(x => x.message).join(' ');\n          this.formError = inv || j.message || T.sendFail;\n          this.sending = false; return;\n        }\n        this.successMsg = T.ok(f.nombre.trim().split(' ')[0], v ? v.titulo : '');\n        this.view = 'success'; this.top();\n      } catch (e) {\n        this.formError = T.netFail;\n      }\n      this.sending = false;\n    }\n  };\n}\n\n<\/script>\n<script defer src=\"https:\/\/cdn.jsdelivr.net\/npm\/alpinejs@3.14.1\/dist\/cdn.min.js\"><\/script>\n\n","protected":false},"excerpt":{"rendered":"<p>Open positions Process Benefits Offices We're looking for talent that imagines,...  <\/p>\n<div class=\"read-more mt-4 text-blue text-xs\"><\/div>\n","protected":false},"author":7,"featured_media":0,"parent":0,"menu_order":16,"comment_status":"closed","ping_status":"closed","template":"template-legal.php","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-34606","page","type-page","status-publish","hentry"],"acf":[],"post_mailing_queue_ids":[],"_links":{"self":[{"href":"https:\/\/www.proactivanet.com\/en\/wp-json\/wp\/v2\/pages\/34606","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.proactivanet.com\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.proactivanet.com\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.proactivanet.com\/en\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/www.proactivanet.com\/en\/wp-json\/wp\/v2\/comments?post=34606"}],"version-history":[{"count":27,"href":"https:\/\/www.proactivanet.com\/en\/wp-json\/wp\/v2\/pages\/34606\/revisions"}],"predecessor-version":[{"id":35867,"href":"https:\/\/www.proactivanet.com\/en\/wp-json\/wp\/v2\/pages\/34606\/revisions\/35867"}],"wp:attachment":[{"href":"https:\/\/www.proactivanet.com\/en\/wp-json\/wp\/v2\/media?parent=34606"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}