{"id":2243,"date":"2026-07-01T17:48:09","date_gmt":"2026-07-01T15:48:09","guid":{"rendered":"https:\/\/webdev.playmoove.com\/azienda\/carriere\/"},"modified":"2026-07-20T11:46:12","modified_gmt":"2026-07-20T09:46:12","slug":"carriere","status":"publish","type":"page","link":"https:\/\/playmoove.com\/it\/azienda\/carriere\/","title":{"rendered":"Carriere"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"2243\" class=\"elementor elementor-2243 elementor-1054\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-98790de e-con-full animated-slow pm-cta-morph-section pm-home-cta e-flex elementor-invisible e-con e-parent\" data-id=\"98790de\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;animation&quot;:&quot;fadeIn&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc9c7c animated-slow elementor-invisible elementor-widget elementor-widget-heading\" data-id=\"8fc9c7c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;_animation&quot;:&quot;fadeInDown&quot;,&quot;_animation_delay&quot;:750}\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h4 class=\"elementor-heading-title elementor-size-default\">Carriere<\/h4>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-29e888f animated-slow pm-auto-careers-heading-002 elementor-invisible elementor-widget elementor-widget-heading\" data-id=\"29e888f\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;_animation&quot;:&quot;fadeInDown&quot;,&quot;_animation_delay&quot;:300}\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Unisciti a Playmoove<\/h2>\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-c0ba139 e-con-full e-flex e-con e-child\" data-id=\"c0ba139\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c4f1a3a animated-slow elementor-widget__width-initial elementor-invisible elementor-widget elementor-widget-text-editor\" data-id=\"c4f1a3a\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;_animation&quot;:&quot;fadeIn&quot;,&quot;_animation_delay&quot;:450}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Playmoove sviluppa soluzioni digitali enterprise per la mobilit\u00e0 condivisa, tra cui car sharing, gestione delle flotte, servizi di noleggio e mobilit\u00e0 urbana. Siamo alla ricerca di persone motivate che vogliano aiutarci a far crescere la nostra piattaforma. Seleziona il ruolo pi\u00f9 adatto al tuo profilo e inviaci la tua candidatura.  <\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e6f6633 elementor-widget__width-inherit elementor-widget elementor-widget-html\" data-id=\"e6f6633\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div class=\"pm-morph-bg\" aria-hidden=\"true\">\r\n  <svg class=\"morph-bg-svg\" viewbox=\"-25 0 240 66\" preserveaspectratio=\"xMidYMid slice\">\r\n\r\n    <g class=\"pm-shape pm-s1\">\r\n      <polygon points=\"39.9 25.5 27.2 25.5 27.2 12.7 14.5 12.7 14.5 0 0 0 0 14.4 12.8 14.4 12.8 27.1 25.5 27.1 25.5 38.2 12.8 38.2 12.8 50.9 0 50.9 0 65.3 14.5 65.3 14.5 52.6 27.2 52.6 27.2 39.9 39.9 39.9 39.9 25.5\"\/>\r\n    <\/g>\r\n\r\n    <g class=\"pm-shape pm-s2\">\r\n      <path d=\"M87.1,25.5h-6.9c-1.6,0-2.9-1.3-2.9-2.9v-6.9c0-1.6-1.3-2.9-2.9-2.9h-6.9c-1.6,0-2.9-1.3-2.9-2.9V3c0-1.6-1.3-2.9-2.9-2.9h-8.6c-1.6,0-2.9,1.3-2.9,2.9v8.6c0,1.6,1.3,2.9,2.9,2.9h6.9c1.6,0,2.9,1.3,2.9,2.9v6.9c0,1.6,1.3,2.9,2.9,2.9h6.9c1.6,0,2.9,1.3,2.9,2.9v5.2c0,1.6-1.3,2.9-2.9,2.9h-6.9c-1.6,0-2.9,1.3-2.9,2.9v6.9c0,1.6-1.3,2.9-2.9,2.9h-6.9c-1.6,0-2.9,1.3-2.9,2.9v8.6c0,1.6,1.3,2.9,2.9,2.9h8.6c1.6,0,2.9-1.3,2.9-2.9v-6.9c0-1.6,1.3-2.9,2.9-2.9h6.9c1.6,0,2.9-1.3,2.9-2.9v-6.9c0-1.6,1.3-2.9,2.9-2.9h6.9c1.6,0,2.9-1.3,2.9-2.9v-8.6c0-1.6-1.3-2.9-2.9-2.9Z\"><\/path>\r\n    <\/g>\r\n\r\n    <g class=\"pm-shape pm-s3\">\r\n      <path d=\"M133,25.5h-1.8c-2.1,0-3.7-1.7-3.7-3.7v-1.9c0-3.9-3.2-7.1-7.1-7.1h-2c-2,0-3.6-1.6-3.6-3.6v-1.9c0-4-3.2-7.2-7.2-7.2h0c-4,0-7.2,3.2-7.2,7.2h0c0,4.1,3.2,7.2,7.1,7.2h1.9c2,0,3.7,1.7,3.7,3.7v1.8c0,4,3.2,7.2,7.2,7.2h1.9c2,0,3.7,1.6,3.7,3.7v3.6c0,2.1-1.7,3.8-3.8,3.8h-2c-3.9,0-7,3.1-7,7v2.3c0,1.9-1.5,3.4-3.4,3.4h-2.3c-3.9,0-7.1,3.2-7.1,7.1v.3c0,3.9,3.2,7,7,7h.5c3.8,0,6.9-3.1,6.9-6.9v-2.5c0-1.8,1.5-3.3,3.3-3.3h2.4c3.9,0,7-3.1,7-7v-2.5c0-1.8,1.4-3.2,3.2-3.2h2.5c3.9,0,7-3.1,7-7v-.2c0-3.9-3.2-7.2-7.2-7.2l.1-.1Z\"><\/path>\r\n    <\/g>\r\n\r\n    <g class=\"pm-shape pm-s4\">\r\n      <circle cx=\"157.2\" cy=\"6.5\" r=\"6.5\"\/>\r\n      <circle cx=\"157.2\" cy=\"58.9\" r=\"6.5\"\/>\r\n      <circle cx=\"170.3\" cy=\"19.6\" r=\"6.5\"\/>\r\n      <circle cx=\"170.3\" cy=\"45.8\" r=\"6.5\"\/>\r\n      <circle cx=\"183.4\" cy=\"32.7\" r=\"6.5\"\/>\r\n    <\/g>\r\n\r\n  <\/svg>\r\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-8284faf e-con-full animated-slow e-flex elementor-invisible e-con e-parent\" data-id=\"8284faf\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;animation&quot;:&quot;fadeIn&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-57b9bbc animated-slow elementor-widget__width-initial pm-auto-careers-heading-003 elementor-invisible elementor-widget elementor-widget-heading\" data-id=\"57b9bbc\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;_animation&quot;:&quot;fadeInDown&quot;,&quot;_animation_delay&quot;:300}\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Se desideri unirti al team di Playmoove, seleziona il ruolo pi\u00f9 adatto al tuo profilo e inviaci la tua candidatura.<\/h2>\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-be2209a e-con-full pm-step-form e-flex e-con e-child\" data-id=\"be2209a\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-93eef75 elementor-widget elementor-widget-html\" data-id=\"93eef75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<form class=\"pm-careers-form\" id=\"pmCareersForm\" method=\"post\" enctype=\"multipart\/form-data\" novalidate=\"\">\r\n  <input type=\"hidden\" name=\"action\" value=\"pm_careers_application\">\r\n<div class=\"pm-hp\" aria-hidden=\"true\">\r\n  <label for=\"pm-website\">Lascia questo campo vuoto<\/label>\r\n  <input id=\"pm-website\" type=\"text\" name=\"website\" value=\"\" tabindex=\"-1\" autocomplete=\"off\">\r\n<\/div>\r\n  <!-- STEP 1 -->\r\n  <section class=\"pm-form-step is-active\" data-step=\"1\" aria-labelledby=\"pm-step-1-title\">\r\n    <p class=\"pm-step-counter\">1 di 5<\/p>\r\n    <h3 id=\"pm-step-1-title\" class=\"pm-step-title\">Ruolo di interesse<\/h3>\r\n\r\n    <div class=\"pm-form-grid pm-form-grid--single\">\r\n      <div class=\"pm-field\">\r\n        <label for=\"pm-area\">Seleziona la tua area di interesse <span>(obbligatorio)<\/span><\/label>\r\n        <div class=\"pm-select-wrap\">\r\n          <select id=\"pm-area\" name=\"area_interesse\" required=\"\">\r\n            <option value=\"\">Seleziona la tua area di interesse<\/option>\r\n            <option value=\"Technology\">Tecnologia<\/option>\r\n            <option value=\"Business & Growth\">Business & Growth<\/option>\r\n            <option value=\"Operations & Customer Success\">Operations & Customer Success<\/option>\r\n            <option value=\"Administration\">Amministrazione<\/option>\r\n            <option value=\"Open application\">Candidatura spontanea<\/option>\r\n          <\/select>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <div class=\"pm-field\">\r\n        <label for=\"pm-role\">Seleziona il ruolo per cui ti candidi <span>(obbligatorio)<\/span><\/label>\r\n        <div class=\"pm-select-wrap\">\r\n          <select id=\"pm-role\" name=\"ruolo\" required=\"\" disabled>\r\n            <option value=\"\">Seleziona prima un'area<\/option>\r\n          <\/select>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"pm-form-actions pm-form-actions--first\">\r\n      <button type=\"button\" class=\"pm-btn pm-btn-next\">\r\n  Continua\r\n        <span aria-hidden=\"true\"><\/span>\r\n      <\/button>\r\n    <\/div>\r\n  <\/section>\r\n\r\n  <!-- STEP 2 -->\r\n  <section class=\"pm-form-step\" data-step=\"2\" aria-labelledby=\"pm-step-2-title\">\r\n    <p class=\"pm-step-counter\">2 di 5<\/p>\r\n    <h3 id=\"pm-step-2-title\" class=\"pm-step-title\">Informazioni personali<\/h3>\r\n\r\n    <div class=\"pm-form-grid\">\r\n      <div class=\"pm-field\">\r\n        <label for=\"pm-name\">Nome <span>(obbligatorio)<\/span><\/label>\r\n        <input id=\"pm-name\" name=\"nome\" type=\"text\" autocomplete=\"given-name\" required=\"\">\r\n      <\/div>\r\n\r\n      <div class=\"pm-field\">\r\n        <label for=\"pm-surname\">Cognome <span>(obbligatorio)<\/span><\/label>\r\n        <input id=\"pm-surname\" name=\"cognome\" type=\"text\" autocomplete=\"family-name\" required=\"\">\r\n      <\/div>\r\n\r\n      <div class=\"pm-field\">\r\n        <label for=\"pm-email\">Email <span>(obbligatorio)<\/span><\/label>\r\n        <input id=\"pm-email\" name=\"email\" type=\"email\" autocomplete=\"email\" required=\"\">\r\n      <\/div>\r\n\r\n      <div class=\"pm-field\">\r\n        <label for=\"pm-phone\">Telefono <span>(obbligatorio)<\/span><\/label>\r\n        <input id=\"pm-phone\" name=\"telefono\" type=\"tel\" autocomplete=\"tel\" required=\"\">\r\n      <\/div>\r\n\r\n      <div class=\"pm-field pm-field--full\">\r\n        <label for=\"pm-location\">Citt\u00e0 \/ Paese di residenza <span>(obbligatorio)<\/span><\/label>\r\n        <input id=\"pm-location\" name=\"citta_paese_residenza\" type=\"text\" autocomplete=\"address-level2\" required=\"\">\r\n      <\/div>\r\n\r\n      <div class=\"pm-field\">\r\n        <label for=\"pm-linkedin\">Profilo LinkedIn<\/label>\r\n        <input id=\"pm-linkedin\" name=\"linkedin\" type=\"url\" placeholder=\"https:\/\/www.linkedin.com\/in\/...\">\r\n      <\/div>\r\n\r\n      <div class=\"pm-field\">\r\n        <label for=\"pm-portfolio\">Portfolio \/ GitHub \/ Sito web personale<\/label>\r\n        <input id=\"pm-portfolio\" name=\"portfolio\" type=\"url\" placeholder=\"https:\/\/...\">\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"pm-form-actions\">\r\n       <button type=\"button\" class=\"pm-btn-back\">\r\n        <span aria-hidden=\"true\"><\/span>\r\n Indietro\r\n      <\/button>\r\n\r\n      <button type=\"button\" class=\"pm-btn pm-btn-next\">\r\n Continua\r\n        <span aria-hidden=\"true\"><\/span>\r\n      <\/button> \r\n    <\/div>\r\n  <\/section>\r\n\r\n  <!-- STEP 3 -->\r\n  <section class=\"pm-form-step\" data-step=\"3\" aria-labelledby=\"pm-step-3-title\">\r\n    <p class=\"pm-step-counter\">3 di 5<\/p>\r\n    <h3 id=\"pm-step-3-title\" class=\"pm-step-title\">Esperienza e disponibilit\u00e0<\/h3>\r\n\r\n    <div class=\"pm-form-grid\">\r\n      <div class=\"pm-field\">\r\n        <label for=\"pm-level\">Livello di esperienza <span>(obbligatorio)<\/span><\/label>\r\n        <div class=\"pm-select-wrap\">\r\n          <select id=\"pm-level\" name=\"livello_esperienza\" required=\"\">\r\n            <option value=\"\">Seleziona il tuo livello<\/option>\r\n            <option value=\"Junior\">Junior<\/option>\r\n            <option value=\"Middle\">Middle<\/option>\r\n            <option value=\"Senior\">Senior<\/option>\r\n            <option value=\"Lead \/ Manager\">Lead \/ Manager<\/option>\r\n            <option value=\"Internship \/ Stage\">Stage \/ Tirocinio<\/option>\r\n          <\/select>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <div class=\"pm-field\">\r\n        <label for=\"pm-years\">Anni di esperienza in questo ruolo <span>(obbligatorio)<\/span><\/label>\r\n        <input id=\"pm-years\" name=\"anni_esperienza\" type=\"number\" min=\"0\" max=\"50\" required=\"\">\r\n      <\/div>\r\n\r\n      <div class=\"pm-field\">\r\n        <label for=\"pm-work-mode\">Modalit\u00e0 di lavoro preferita <span>(obbligatorio)<\/span><\/label>\r\n        <div class=\"pm-select-wrap\">\r\n          <select id=\"pm-work-mode\" name=\"modalita_lavoro\" required=\"\">\r\n            <option value=\"\">Seleziona la tua modalit\u00e0 di lavoro preferita<\/option>\r\n            <option value=\"On-site\">In sede<\/option>\r\n            <option value=\"Hybrid\">Ibrida<\/option>\r\n            <option value=\"Full remote\">Full remote<\/option>\r\n            <option value=\"Open to different work modes\">Aperto a diverse modalit\u00e0<\/option>\r\n          <\/select>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <div class=\"pm-field\">\r\n        <label for=\"pm-availability\">Disponibilit\u00e0 <span>(obbligatorio)<\/span><\/label>\r\n        <div class=\"pm-select-wrap\">\r\n          <select id=\"pm-availability\" name=\"disponibilita\" required=\"\">\r\n            <option value=\"\">Seleziona la tua disponibilit\u00e0<\/option>\r\n            <option value=\"Immediate\">Immediata<\/option>\r\n            <option value=\"Within 15 days\">Entro 15 giorni<\/option>\r\n            <option value=\"Within 30 days\">Entro 30 giorni<\/option>\r\n            <option value=\"Within 60 days\">Entro 60 giorni<\/option>\r\n            <option value=\"To be agreed\">Da concordare<\/option>\r\n          <\/select>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <div class=\"pm-field\">\r\n        <label for=\"pm-collaboration\">Tipo di collaborazione preferita<\/label>\r\n        <div class=\"pm-select-wrap\">\r\n          <select id=\"pm-collaboration\" name=\"tipo_collaborazione\">\r\n            <option value=\"\">Seleziona il tipo di collaborazione<\/option>\r\n            <option value=\"Full-time\">Full-time<\/option>\r\n            <option value=\"Part-time\">Part-time<\/option>\r\n            <option value=\"Freelance \/ Consulting\">Freelance \/ Consulenza<\/option>\r\n            <option value=\"Internship \/ Traineeship\">Stage \/ Tirocinio<\/option>\r\n            <option value=\"To be evaluated\">Da valutare<\/option>\r\n          <\/select>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <div class=\"pm-field\">\r\n        <label for=\"pm-compensation\">RAL o compenso desiderato<\/label>\r\n        <input id=\"pm-compensation\" name=\"compenso_atteso\" type=\"text\" placeholder=\"Es. RAL, tariffa giornaliera, compenso mensile, da concordare\">\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"pm-form-actions\">\r\n       <button type=\"button\" class=\"pm-btn-back\">\r\n        <span aria-hidden=\"true\"><\/span>\r\n Indietro\r\n      <\/button>\r\n\r\n      <button type=\"button\" class=\"pm-btn pm-btn-next\">\r\n Continua\r\n        <span aria-hidden=\"true\"><\/span>\r\n      <\/button> \r\n    <\/div>\r\n  <\/section>\r\n\r\n  <!-- STEP 4 -->\r\n  <section class=\"pm-form-step\" data-step=\"4\" aria-labelledby=\"pm-step-4-title\">\r\n    <p class=\"pm-step-counter\">4 di 5<\/p>\r\n    <h3 id=\"pm-step-4-title\" class=\"pm-step-title\">Competenze<\/h3>\r\n\r\n    <div class=\"pm-form-grid\">\r\n      <div class=\"pm-field pm-field--full\">\r\n        <label for=\"pm-skills\">Competenze principali <span>(obbligatorio)<\/span><\/label>\r\n        <textarea id=\"pm-skills\" name=\"competenze\" rows=\"4\" maxlength=\"1000\" placeholder=\"React, Node.js, Laravel, AWS, Docker, Kubernetes, Flutter, Swift, Kotlin, PostgreSQL, REST APIs, CRM, vendite B2B, pubblica amministrazione, gare d'appalto, customer success...\" required=\"\"><\/textarea>\r\n      <\/div>\r\n\r\n      <div class=\"pm-field pm-field--full\">\r\n        <label for=\"pm-languages\">Lingue parlate<\/label>\r\n        <input id=\"pm-languages\" name=\"lingue\" type=\"text\" placeholder=\"Es. Italiano, Inglese, Spagnolo...\">\r\n      <\/div>\r\n\r\n      <div class=\"pm-field pm-field--full\">\r\n        <label for=\"pm-sector-exp\">Hai gi\u00e0 esperienza nei settori mobilit\u00e0, SaaS, gestione flotte, noleggio, car sharing o pubblica amministrazione? <span>(obbligatorio)<\/span><\/label>\r\n        <div class=\"pm-select-wrap\">\r\n          <select id=\"pm-sector-exp\" name=\"esperienza_settore\" required=\"\">\r\n            <option value=\"\">Seleziona una risposta<\/option>\r\n            <option value=\"Yes\">S\u00ec<\/option>\r\n            <option value=\"No\">No<\/option>\r\n            <option value=\"Partially\">Parzialmente<\/option>\r\n          <\/select>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <div class=\"pm-field pm-field--full\">\r\n        <label for=\"pm-relevant-exp\">Descrivi brevemente la tua esperienza pi\u00f9 rilevante <span>(obbligatorio)<\/span><\/label>\r\n        <textarea id=\"pm-relevant-exp\" name=\"esperienza_rilevante\" rows=\"5\" maxlength=\"1200\" required=\"\"><\/textarea>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"pm-form-actions\">\r\n       <button type=\"button\" class=\"pm-btn-back\">\r\n        <span aria-hidden=\"true\"><\/span>\r\n Indietro\r\n      <\/button>\r\n\r\n      <button type=\"button\" class=\"pm-btn pm-btn-next\">\r\n Continua\r\n        <span aria-hidden=\"true\"><\/span>\r\n      <\/button> \r\n    <\/div>\r\n  <\/section>\r\n\r\n  <!-- STEP 5 -->\r\n  <section class=\"pm-form-step\" data-step=\"5\" aria-labelledby=\"pm-step-5-title\">\r\n    <p class=\"pm-step-counter\">5 di 5<\/p>\r\n    <h3 id=\"pm-step-5-title\" class=\"pm-step-title\">CV e candidatura<\/h3>\r\n\r\n    <div class=\"pm-upload-grid\">\r\n      <div class=\"pm-upload-field\">\r\n        <label class=\"pm-upload-box\" for=\"pm-cv\">\r\n          <span class=\"pm-upload-icon\" aria-hidden=\"true\">\r\n            <svg viewbox=\"0 0 24 24\" width=\"28\" height=\"28\" fill=\"none\">\r\n              <path d=\"M12 3v12\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\"><\/path>\r\n              <path d=\"M7.5 7.5 12 3l4.5 4.5\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><\/path>\r\n              <path d=\"M5 14.5V20h14v-5.5\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><\/path>\r\n            <\/svg>\r\n          <\/span>\r\n\r\n          <strong>Carica il tuo CV<\/strong>\r\n          <span class=\"pm-upload-help\">PDF, DOC, DOCX \u00b7 max 10 MB \u00b7 obbligatorio<\/span>\r\n          <span class=\"pm-file-name\" data-file-name-for=\"pm-cv\"><\/span>\r\n        <\/label>\r\n\r\n        <input id=\"pm-cv\" name=\"cv\" type=\"file\" accept=\".pdf,.doc,.docx,application\/pdf,application\/msword,application\/vnd.openxmlformats-officedocument.wordprocessingml.document\" required=\"\">\r\n      <\/div>\r\n\r\n      <div class=\"pm-upload-field\">\r\n        <label class=\"pm-upload-box\" for=\"pm-extra-document\">\r\n          <span class=\"pm-upload-icon\" aria-hidden=\"true\">\r\n            <svg viewbox=\"0 0 24 24\" width=\"28\" height=\"28\" fill=\"none\">\r\n              <path d=\"M12 3v12\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\"><\/path>\r\n              <path d=\"M7.5 7.5 12 3l4.5 4.5\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><\/path>\r\n              <path d=\"M5 14.5V20h14v-5.5\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><\/path>\r\n            <\/svg>\r\n          <\/span>\r\n\r\n          <strong>Lettera di presentazione o documento aggiuntivo<\/strong>\r\n          <span class=\"pm-upload-help\">PDF, DOC, DOCX \u00b7 facoltativo<\/span>\r\n          <span class=\"pm-file-name\" data-file-name-for=\"pm-extra-document\"><\/span>\r\n        <\/label>\r\n\r\n        <input id=\"pm-extra-document\" name=\"documento_aggiuntivo\" type=\"file\" accept=\".pdf,.doc,.docx,application\/pdf,application\/msword,application\/vnd.openxmlformats-officedocument.wordprocessingml.document\">\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"pm-form-grid pm-form-grid--single\">\r\n      <div class=\"pm-field pm-field--full\">\r\n        <label for=\"pm-message\">Messaggio di presentazione<\/label>\r\n        <textarea id=\"pm-message\" name=\"messaggio\" rows=\"4\" maxlength=\"1200\" placeholder=\"Raccontaci brevemente chi sei, cosa ti interessa di Playmoove e perch\u00e9 pensi di poter contribuire al nostro progetto.\"><\/textarea>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"pm-consents\">\r\n       <label class=\"pm-check\">\r\n        <input type=\"checkbox\" name=\"privacy\" value=\"yes\" required=\"\"\/>\r\n        <span>Dichiaro di aver letto l'informativa sulla privacy e autorizzo il trattamento dei miei dati personali per finalit\u00e0 di gestione della mia candidatura, ai sensi del Regolamento UE 2016\/679 GDPR. <em>(obbligatorio)<\/em><\/span>\r\n      <\/label>\r\n\r\n      <label class=\"pm-check\">\r\n        <input type=\"checkbox\" name=\"talent_pool\" value=\"yes\"\/>\r\n        <span>Autorizzo Playmoove a conservare il mio CV per eventuali future opportunit\u00e0 professionali compatibili con il mio profilo. <em>(facoltativo)<\/em><\/span>\r\n      <\/label> \r\n    <\/div>\r\n\r\n    <div class=\"pm-form-actions\">\r\n       <button type=\"button\" class=\"pm-btn-back\">\r\n        <span aria-hidden=\"true\"><\/span>\r\n Indietro\r\n      <\/button>\r\n\r\n      <button type=\"submit\" class=\"pm-btn pm-btn-submit\">\r\n Invia candidatura\r\n      <\/button> \r\n    <\/div>\r\n  <\/section>\r\n\r\n  <div class=\"pm-form-message\" role=\"status\" aria-live=\"polite\"><\/div>\r\n<\/form>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b555eb2 elementor-widget elementor-widget-html\" data-id=\"b555eb2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<script>(function () {\r\n  const initializedForms = new WeakSet();\r\n\r\n  const rolesByArea = {\r\n    \"Technology\": [\r\n      \"Front-End Developer\",\r\n      \"Back-End Developer\",\r\n      \"Full-Stack Developer\",\r\n      \"Mobile Developer\",\r\n      \"DevOps \/ Cloud Engineer\",\r\n      \"QA Tester \/ Software Tester\",\r\n      \"UI\/UX Designer\",\r\n      \"API & Integration Specialist\",\r\n      \"Data Analyst \/ BI Specialist\",\r\n      \"Cybersecurity Specialist\"\r\n    ],\r\n    \r\n    \"Business & Growth\": [\r\n      \"Sales \/ Business Development Manager\",\r\n      \"B2B \/ B2G Sales Representative\",\r\n      \"Partnership Manager\",\r\n      \"Marketing & Communication Specialist\",\r\n      \"Tender & Public Sector Specialist\"\r\n    ],\r\n    \r\n    \"Operations & Customer Success\": [\r\n      \"Customer Success Manager\",\r\n      \"Mobility Operations Specialist\",\r\n      \"Project Manager\",\r\n      \"Technical Support Specialist\"\r\n    ],\r\n    \r\n    \"Administration\": [\r\n      \"Administration & Finance Specialist\",\r\n      \"Legal & Compliance Specialist\"\r\n    ],\r\n    \r\n    \"Open application\": [\r\n      \"Open application\"\r\n    ]\r\n  };\r\n\r\n  function initCareersForm(scope) {\r\n    const root = scope || document;\r\n    const forms = root.querySelectorAll(\".pm-careers-form\");\r\n\r\n    forms.forEach(function (form) {\r\n      if (initializedForms.has(form)) return;\r\n      initializedForms.add(form);\r\n\r\n      const steps = Array.from(form.querySelectorAll(\".pm-form-step\"));\r\n      const nextButtons = Array.from(form.querySelectorAll(\".pm-btn-next\"));\r\n      const backButtons = Array.from(form.querySelectorAll(\".pm-btn-back\"));\r\n      const message = form.querySelector(\".pm-form-message\");\r\n      const areaSelect = form.querySelector(\"#pm-area\");\r\n      const roleSelect = form.querySelector(\"#pm-role\");\r\n      const fileInputs = Array.from(form.querySelectorAll('input[type=\"file\"]'));\r\n\r\n      let currentStep = 0;\r\n\r\n      function showMessage(text, type) {\r\n        if (!message) return;\r\n\r\n        message.textContent = text;\r\n        message.classList.remove(\"is-success\", \"is-error\", \"is-visible\");\r\n        message.classList.add(\"is-visible\", type === \"success\" ? \"is-success\" : \"is-error\");\r\n      }\r\n\r\n      function clearMessage() {\r\n        if (!message) return;\r\n\r\n        message.textContent = \"\";\r\n        message.classList.remove(\"is-success\", \"is-error\", \"is-visible\");\r\n      }\r\n\r\n      function goToStep(index) {\r\n        currentStep = Math.max(0, Math.min(index, steps.length - 1));\r\n\r\n        steps.forEach(function (step, stepIndex) {\r\n          step.classList.toggle(\"is-active\", stepIndex === currentStep);\r\n        });\r\n\r\n        clearMessage();\r\n\r\n        const activeTitle = steps[currentStep].querySelector(\".pm-step-title\");\r\n\r\n        if (activeTitle) {\r\n          activeTitle.setAttribute(\"tabindex\", \"-1\");\r\n          activeTitle.focus({ preventScroll: true });\r\n        }\r\n\r\n        form.scrollIntoView({\r\n          behavior: \"smooth\",\r\n          block: \"start\"\r\n        });\r\n      }\r\n\r\n      function getActiveStep() {\r\n        return steps[currentStep];\r\n      }\r\n\r\n      function clearFieldError(field) {\r\n        if (!field) return;\r\n\r\n        field.classList.remove(\"pm-field-error\");\r\n        field.removeAttribute(\"aria-invalid\");\r\n      }\r\n\r\n      function setFieldError(field) {\r\n        if (!field) return;\r\n\r\n        field.classList.add(\"pm-field-error\");\r\n        field.setAttribute(\"aria-invalid\", \"true\");\r\n      }\r\n\r\n      function validateFile(input) {\r\n        if (!input || !input.files || !input.files.length) {\r\n          return !input.required;\r\n        }\r\n\r\n        const file = input.files[0];\r\n        const maxSize = 10 * 1024 * 1024;\r\n        const allowedExtensions = [\"pdf\", \"doc\", \"docx\"];\r\n        const extension = file.name.split(\".\").pop().toLowerCase();\r\n\r\n        if (!allowedExtensions.includes(extension)) return false;\r\n        if (file.size > maxSize) return false;\r\n\r\n        return true;\r\n      }\r\n\r\n      function validateStep(step) {\r\n        const fields = Array.from(step.querySelectorAll(\"input, select, textarea\"));\r\n        let isValid = true;\r\n        let firstInvalid = null;\r\n\r\n        fields.forEach(function (field) {\r\n          clearFieldError(field);\r\n\r\n          let fieldValid = true;\r\n\r\n          if (field.type === \"file\") {\r\n            fieldValid = validateFile(field);\r\n          } else {\r\n            fieldValid = field.checkValidity();\r\n          }\r\n\r\n          if (!fieldValid) {\r\n            isValid = false;\r\n            setFieldError(field);\r\n\r\n            if (!firstInvalid) {\r\n              firstInvalid = field;\r\n            }\r\n          }\r\n        });\r\n\r\n        if (!isValid && firstInvalid) {\r\n          if (firstInvalid.type === \"file\") {\r\n            showMessage(\"Controlla i file caricati: sono accettati PDF, DOC e DOCX fino a 10 MB.\", \"error\");\r\n          } else {\r\n            showMessage(\"Compila tutti i campi obbligatori prima di continuare.\", \"error\");\r\n          }\r\n\r\n          firstInvalid.focus({ preventScroll: false });\r\n        }\r\n\r\n        return isValid;\r\n      }\r\n\r\n      function populateRoles(area) {\r\n        if (!roleSelect) return;\r\n\r\n        roleSelect.innerHTML = \"\";\r\n\r\n        const placeholder = document.createElement(\"option\");\r\n        placeholder.value = \"\";\r\n\r\n        if (!area || !rolesByArea[area]) {\r\n          placeholder.textContent = \"Select an area of interest first\";\r\n          roleSelect.appendChild(placeholder);\r\n          roleSelect.disabled = true;\r\n          return;\r\n        }\r\n\r\n        placeholder.textContent = \"Select your role\";\r\n        roleSelect.appendChild(placeholder);\r\n\r\n        rolesByArea[area].forEach(function (role) {\r\n          const option = document.createElement(\"option\");\r\n          option.value = role;\r\n          option.textContent = role;\r\n          roleSelect.appendChild(option);\r\n        });\r\n\r\n        roleSelect.disabled = false;\r\n\r\n        if (area === \"Candidatura spontanea\") {\r\n          roleSelect.value = \"Candidatura spontanea\";\r\n        }\r\n      }\r\n\r\n      function updateFileName(input) {\r\n        const target = form.querySelector('[data-file-name-for=\"' + input.id + '\"]');\r\n        if (!target) return;\r\n\r\n        if (input.files && input.files.length) {\r\n          target.textContent = input.files[0].name;\r\n          target.classList.add(\"has-file\");\r\n        } else {\r\n          target.textContent = \"\";\r\n          target.classList.remove(\"has-file\");\r\n        }\r\n      }\r\n\r\n      function attachUploadInteractions(input) {\r\n        const box = form.querySelector('label[for=\"' + input.id + '\"]');\r\n        if (!box) return;\r\n\r\n        input.addEventListener(\"change\", function () {\r\n          clearFieldError(input);\r\n          updateFileName(input);\r\n        });\r\n\r\n        [\"dragenter\", \"dragover\"].forEach(function (eventName) {\r\n          box.addEventListener(eventName, function (event) {\r\n            event.preventDefault();\r\n            box.classList.add(\"is-dragging\");\r\n          });\r\n        });\r\n\r\n        [\"dragleave\", \"drop\"].forEach(function (eventName) {\r\n          box.addEventListener(eventName, function (event) {\r\n            event.preventDefault();\r\n            box.classList.remove(\"is-dragging\");\r\n          });\r\n        });\r\n\r\n        box.addEventListener(\"drop\", function (event) {\r\n          const files = event.dataTransfer && event.dataTransfer.files;\r\n          if (!files || !files.length) return;\r\n\r\n          input.files = files;\r\n          updateFileName(input);\r\n          clearFieldError(input);\r\n        });\r\n      }\r\n\r\n      if (areaSelect) {\r\n        areaSelect.addEventListener(\"change\", function () {\r\n          clearFieldError(areaSelect);\r\n          populateRoles(areaSelect.value);\r\n        });\r\n      }\r\n\r\n      if (roleSelect) {\r\n        roleSelect.addEventListener(\"change\", function () {\r\n          clearFieldError(roleSelect);\r\n        });\r\n      }\r\n\r\n      nextButtons.forEach(function (button) {\r\n        button.addEventListener(\"click\", function () {\r\n          const step = getActiveStep();\r\n\r\n          if (!validateStep(step)) return;\r\n\r\n          goToStep(currentStep + 1);\r\n        });\r\n      });\r\n\r\n      backButtons.forEach(function (button) {\r\n        button.addEventListener(\"click\", function () {\r\n          goToStep(currentStep - 1);\r\n        });\r\n      });\r\n\r\n      Array.from(form.querySelectorAll(\"input, select, textarea\")).forEach(function (field) {\r\n        field.addEventListener(\"input\", function () {\r\n          clearFieldError(field);\r\n        });\r\n\r\n        field.addEventListener(\"change\", function () {\r\n          clearFieldError(field);\r\n        });\r\n      });\r\n\r\n      fileInputs.forEach(attachUploadInteractions);\r\n\r\n      form.addEventListener(\"submit\", function (event) {\r\n        event.preventDefault();\r\n\r\n        const activeStep = getActiveStep();\r\n        if (!validateStep(activeStep)) return;\r\n\r\n        let firstInvalidStep = -1;\r\n\r\n        steps.forEach(function (step, index) {\r\n          if (firstInvalidStep !== -1) return;\r\n\r\n          if (!validateStep(step)) {\r\n            firstInvalidStep = index;\r\n          }\r\n        });\r\n\r\n        if (firstInvalidStep !== -1) {\r\n          goToStep(firstInvalidStep);\r\n          return;\r\n        }\r\n\r\n        const submitButton = form.querySelector(\".pm-btn-submit\");\r\n        const originalText = submitButton ? submitButton.textContent : \"\";\r\n\r\n        if (submitButton) {\r\n          submitButton.disabled = true;\r\n          submitButton.textContent = \"Invio in corso...\";\r\n        }\r\n\r\n        const formData = new FormData(form);\r\n\r\n        fetch(\"\/wp-admin\/admin-ajax.php\", {\r\n          method: \"POST\",\r\n          body: formData,\r\n          credentials: \"same-origin\"\r\n        })\r\n          .then(function (response) {\r\n            return response.json();\r\n          })\r\n          .then(function (data) {\r\n            if (!data || !data.success) {\r\n              throw new Error(data && data.data && data.data.message ? data.data.message : \"Errore durante l\u2019invio.\");\r\n            }\r\n\r\n            form.reset();\r\n            populateRoles(\"\");\r\n            fileInputs.forEach(updateFileName);\r\n            goToStep(0);\r\n\r\n            showMessage(\r\n              \"Grazie per aver inviato la tua candidatura. Il team Playmoove valuter\u00e0 il tuo profilo e ti contatter\u00e0 qualora fosse in linea con le opportunit\u00e0 aperte.\",\r\n              \"success\"\r\n            );\r\n          })\r\n          .catch(function (error) {\r\n            showMessage(error.message || \"Something went wrong. Riprova tra poco.\", \"error\");\r\n          })\r\n          .finally(function () {\r\n            if (submitButton) {\r\n              submitButton.disabled = false;\r\n              submitButton.textContent = originalText;\r\n            }\r\n          });\r\n      });\r\n\r\n      populateRoles(\"\");\r\n      goToStep(0);\r\n    });\r\n  }\r\n\r\n  document.addEventListener(\"DOMContentLoaded\", function () {\r\n    initCareersForm(document);\r\n  });\r\n\r\n  if (window.jQuery) {\r\n    jQuery(window).on(\"elementor\/frontend\/init\", function () {\r\n      initCareersForm(document);\r\n    });\r\n  }\r\n})();\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-5805243 e-flex e-con-boxed e-con e-parent\" data-id=\"5805243\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-bd458af elementor-widget elementor-widget-html\" data-id=\"bd458af\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<script>\r\n(function () {\r\n  \"use strict\";\r\n\r\n  const initializedPages = new WeakSet();\r\n\r\n  \/*\r\n   * Opacit\u00e0 finale dell\u2019intero elemento SVG.\r\n   * Non viene applicata anche alle singole shape,\r\n   * altrimenti le opacit\u00e0 si moltiplicherebbero.\r\n   *\/\r\n  const PM_SVG_OPACITY = 0.62;\r\n\r\n  function pmGetGsap() {\r\n    return typeof window.gsap !== \"undefined\"\r\n      ? window.gsap\r\n      : null;\r\n  }\r\n\r\n  function pmGetScrollTrigger() {\r\n    return typeof window.ScrollTrigger !== \"undefined\"\r\n      ? window.ScrollTrigger\r\n      : null;\r\n  }\r\n\r\n  function pmCleanElementorAnimations(elements) {\r\n    elements.forEach(function (element) {\r\n      if (!element) {\r\n        return;\r\n      }\r\n\r\n      element.classList.remove(\r\n        \"animated\",\r\n        \"fadeIn\",\r\n        \"fadeInDown\",\r\n        \"fadeInUp\",\r\n        \"fadeInLeft\",\r\n        \"fadeInRight\",\r\n        \"animated-slow\"\r\n      );\r\n\r\n      element.style.removeProperty(\"animation\");\r\n      element.style.removeProperty(\"animation-name\");\r\n      element.style.removeProperty(\"animation-duration\");\r\n      element.style.removeProperty(\"animation-delay\");\r\n      element.style.removeProperty(\"opacity\");\r\n      element.style.removeProperty(\"visibility\");\r\n      element.style.removeProperty(\"transform\");\r\n      element.style.removeProperty(\"filter\");\r\n    });\r\n  }\r\n\r\n  function pmGetHeroElements(hero) {\r\n    if (!hero) {\r\n      return {\r\n        eyebrow: null,\r\n        title: null,\r\n        text: null\r\n      };\r\n    }\r\n\r\n    const headings = Array.from(\r\n      hero.querySelectorAll(\".elementor-widget-heading\")\r\n    );\r\n\r\n    const eyebrowWidget =\r\n      headings.length > 0\r\n        ? headings[0]\r\n        : null;\r\n\r\n    const titleWidget =\r\n      headings.length > 1\r\n        ? headings[1]\r\n        : null;\r\n\r\n    const textWidget = hero.querySelector(\r\n      \".elementor-widget-text-editor\"\r\n    );\r\n\r\n    return {\r\n      eyebrow: eyebrowWidget,\r\n      title: titleWidget,\r\n      text: textWidget\r\n    };\r\n  }\r\n\r\n  function pmGetFormElements(page) {\r\n    if (!page) {\r\n      return {\r\n        formSection: null,\r\n        formHeadline: null,\r\n        formWrap: null,\r\n        form: null\r\n      };\r\n    }\r\n\r\n    const formWrap = page.querySelector(\".pm-step-form\");\r\n\r\n    if (!formWrap) {\r\n      return {\r\n        formSection: null,\r\n        formHeadline: null,\r\n        formWrap: null,\r\n        form: null\r\n      };\r\n    }\r\n\r\n    const formSection = formWrap.closest(\r\n      \".e-con.e-parent, .e-con\"\r\n    );\r\n\r\n    const formHeadline = formSection\r\n      ? formSection.querySelector(\r\n          \".elementor-widget-heading\"\r\n        )\r\n      : null;\r\n\r\n    const form = formWrap.querySelector(\r\n      \".pm-careers-form\"\r\n    );\r\n\r\n    return {\r\n      formSection: formSection,\r\n      formHeadline: formHeadline,\r\n      formWrap: formWrap,\r\n      form: form\r\n    };\r\n  }\r\n\r\n  function pmAnimateCareersStep(form, step) {\r\n    const gsap = pmGetGsap();\r\n\r\n    if (!gsap || !form || !step) {\r\n      return;\r\n    }\r\n\r\n    const counter = step.querySelector(\r\n      \".pm-step-counter\"\r\n    );\r\n\r\n    const title = step.querySelector(\r\n      \".pm-step-title\"\r\n    );\r\n\r\n    const fields = step.querySelectorAll(\r\n      \".pm-field, .pm-upload-field, .pm-check\"\r\n    );\r\n\r\n    const actions = step.querySelector(\r\n      \".pm-form-actions\"\r\n    );\r\n\r\n    const titleElements = [\r\n      counter,\r\n      title\r\n    ].filter(Boolean);\r\n\r\n    gsap.killTweensOf(titleElements);\r\n    gsap.killTweensOf(fields);\r\n\r\n    if (actions) {\r\n      gsap.killTweensOf(actions);\r\n    }\r\n\r\n    if (titleElements.length) {\r\n      gsap.set(titleElements, {\r\n        autoAlpha: 0,\r\n        y: 18,\r\n        filter: \"blur(8px)\"\r\n      });\r\n    }\r\n\r\n    if (fields.length) {\r\n      gsap.set(fields, {\r\n        autoAlpha: 0,\r\n        y: 18\r\n      });\r\n    }\r\n\r\n    if (actions) {\r\n      gsap.set(actions, {\r\n        autoAlpha: 0,\r\n        y: 14,\r\n        scale: 0.985\r\n      });\r\n    }\r\n\r\n    const timeline = gsap.timeline({\r\n      defaults: {\r\n        ease: \"power3.out\"\r\n      }\r\n    });\r\n\r\n    if (titleElements.length) {\r\n      timeline.to(titleElements, {\r\n        autoAlpha: 1,\r\n        y: 0,\r\n        filter: \"blur(0px)\",\r\n        duration: 0.45,\r\n        stagger: 0.06\r\n      });\r\n    }\r\n\r\n    if (fields.length) {\r\n      timeline.to(\r\n        fields,\r\n        {\r\n          autoAlpha: 1,\r\n          y: 0,\r\n          duration: 0.45,\r\n          stagger: {\r\n            each: 0.045,\r\n            from: \"start\"\r\n          }\r\n        },\r\n        titleElements.length\r\n          ? \"-=0.2\"\r\n          : 0\r\n      );\r\n    }\r\n\r\n    if (actions) {\r\n      timeline.to(\r\n        actions,\r\n        {\r\n          autoAlpha: 1,\r\n          y: 0,\r\n          scale: 1,\r\n          duration: 0.42\r\n        },\r\n        \"-=0.18\"\r\n      );\r\n    }\r\n  }\r\n\r\n  function pmPatchCareersStepChanges(form) {\r\n    if (!form) {\r\n      return;\r\n    }\r\n\r\n    if (\r\n      form.dataset.pmStepAnimationPatched === \"true\"\r\n    ) {\r\n      return;\r\n    }\r\n\r\n    form.dataset.pmStepAnimationPatched = \"true\";\r\n\r\n    const steps = Array.from(\r\n      form.querySelectorAll(\".pm-form-step\")\r\n    );\r\n\r\n    if (!steps.length) {\r\n      return;\r\n    }\r\n\r\n    const observer = new MutationObserver(\r\n      function (mutations) {\r\n        mutations.forEach(function (mutation) {\r\n          if (mutation.type !== \"attributes\") {\r\n            return;\r\n          }\r\n\r\n          if (mutation.attributeName !== \"class\") {\r\n            return;\r\n          }\r\n\r\n          const step = mutation.target;\r\n\r\n          if (\r\n            step.classList.contains(\"is-active\")\r\n          ) {\r\n            pmAnimateCareersStep(form, step);\r\n          }\r\n        });\r\n      }\r\n    );\r\n\r\n    steps.forEach(function (step) {\r\n      observer.observe(step, {\r\n        attributes: true,\r\n        attributeFilter: [\"class\"]\r\n      });\r\n    });\r\n\r\n    const firstStep = form.querySelector(\r\n      \".pm-form-step.is-active\"\r\n    );\r\n\r\n    if (firstStep) {\r\n      pmAnimateCareersStep(form, firstStep);\r\n    }\r\n  }\r\n\r\n  function pmInitHeroAnimation(page) {\r\n    const gsap = pmGetGsap();\r\n    const ScrollTrigger = pmGetScrollTrigger();\r\n\r\n    if (!gsap || !page) {\r\n      return;\r\n    }\r\n\r\n    const hero = page.querySelector(\r\n      \".pm-home-cta\"\r\n    );\r\n\r\n    if (!hero) {\r\n      return;\r\n    }\r\n\r\n    const heroElements = pmGetHeroElements(hero);\r\n\r\n    const heroEyebrow = heroElements.eyebrow;\r\n    const heroTitle = heroElements.title;\r\n    const heroText = heroElements.text;\r\n\r\n    const morphBg = hero.querySelector(\r\n      \".pm-morph-bg\"\r\n    );\r\n\r\n    const morphSvg = hero.querySelector(\r\n      \".morph-bg-svg\"\r\n    );\r\n\r\n    const morphShapes = hero.querySelectorAll(\r\n      \".pm-shape\"\r\n    );\r\n\r\n    pmCleanElementorAnimations([\r\n      hero,\r\n      heroEyebrow,\r\n      heroTitle,\r\n      heroText\r\n    ]);\r\n\r\n    gsap.set(hero, {\r\n      \"--pm-careers-glow-x\": \"18%\",\r\n      \"--pm-careers-glow-y\": \"18%\",\r\n      \"--pm-careers-glow-opacity\": 0.7\r\n    });\r\n\r\n    const heroTextElements = [\r\n      heroEyebrow,\r\n      heroTitle,\r\n      heroText\r\n    ].filter(Boolean);\r\n\r\n    if (heroTextElements.length) {\r\n      gsap.set(heroTextElements, {\r\n        autoAlpha: 0,\r\n        y: 36,\r\n        filter: \"blur(12px)\"\r\n      });\r\n    }\r\n\r\n    \/*\r\n     * L\u2019opacit\u00e0 viene gestita qui,\r\n     * sull\u2019intero contenitore SVG.\r\n     *\/\r\n    if (morphBg) {\r\n      gsap.set(morphBg, {\r\n        opacity: 0,\r\n        visibility: \"visible\",\r\n        y: 42,\r\n        scale: 0.96,\r\n        rotate: -2,\r\n        transformOrigin: \"50% 50%\"\r\n      });\r\n    }\r\n\r\n    \/*\r\n     * Le shape interne restano sempre a opacity 1.\r\n     * Vengono animate solo posizione e scala.\r\n     *\/\r\n    if (morphShapes.length) {\r\n      gsap.set(morphShapes, {\r\n        opacity: 1,\r\n        visibility: \"visible\",\r\n        y: 16,\r\n        scale: 0.92,\r\n        transformOrigin: \"50% 50%\"\r\n      });\r\n    }\r\n\r\n    const timelineSettings = {\r\n      defaults: {\r\n        ease: \"power3.out\"\r\n      }\r\n    };\r\n\r\n    if (ScrollTrigger) {\r\n      timelineSettings.scrollTrigger = {\r\n        trigger: hero,\r\n        start: \"top 76%\",\r\n        once: true\r\n      };\r\n    }\r\n\r\n    const heroTimeline = gsap.timeline(\r\n      timelineSettings\r\n    );\r\n\r\n    heroTimeline.to(\r\n      hero,\r\n      {\r\n        \"--pm-careers-glow-x\": \"74%\",\r\n        \"--pm-careers-glow-y\": \"32%\",\r\n        duration: 1.4,\r\n        ease: \"power2.out\"\r\n      },\r\n      0\r\n    );\r\n\r\n    if (heroEyebrow) {\r\n      heroTimeline.to(\r\n        heroEyebrow,\r\n        {\r\n          autoAlpha: 1,\r\n          y: 0,\r\n          filter: \"blur(0px)\",\r\n          duration: 0.72\r\n        },\r\n        0.08\r\n      );\r\n    }\r\n\r\n    if (heroTitle) {\r\n      heroTimeline.to(\r\n        heroTitle,\r\n        {\r\n          autoAlpha: 1,\r\n          y: 0,\r\n          filter: \"blur(0px)\",\r\n          duration: 0.92\r\n        },\r\n        0.18\r\n      );\r\n    }\r\n\r\n    if (heroText) {\r\n      heroTimeline.to(\r\n        heroText,\r\n        {\r\n          autoAlpha: 1,\r\n          y: 0,\r\n          filter: \"blur(0px)\",\r\n          duration: 0.82\r\n        },\r\n        0.34\r\n      );\r\n    }\r\n\r\n    \/*\r\n     * Il contenitore arriva al massimo a 0.62.\r\n     *\/\r\n    if (morphBg) {\r\n      heroTimeline.to(\r\n        morphBg,\r\n        {\r\n          opacity: PM_SVG_OPACITY,\r\n          visibility: \"visible\",\r\n          y: 0,\r\n          scale: 1,\r\n          rotate: 0,\r\n          duration: 1.05,\r\n          overwrite: \"auto\"\r\n        },\r\n        0.38\r\n      );\r\n    }\r\n\r\n    \/*\r\n     * Le shape arrivano a opacity 1,\r\n     * ma sono dentro un contenitore a 0.62.\r\n     *\/\r\n    if (morphShapes.length) {\r\n      heroTimeline.to(\r\n        morphShapes,\r\n        {\r\n          opacity: 1,\r\n          visibility: \"visible\",\r\n          y: 0,\r\n          scale: 1,\r\n          duration: 0.72,\r\n          stagger: 0.075,\r\n          overwrite: \"auto\"\r\n        },\r\n        0.55\r\n      );\r\n    }\r\n\r\n    gsap.to(hero, {\r\n      \"--pm-careers-glow-x\": \"38%\",\r\n      \"--pm-careers-glow-y\": \"72%\",\r\n      duration: 9,\r\n      repeat: -1,\r\n      yoyo: true,\r\n      ease: \"sine.inOut\"\r\n    });\r\n\r\n    if (morphSvg) {\r\n      gsap.to(morphSvg, {\r\n        x: 12,\r\n        y: -8,\r\n        rotate: 0.6,\r\n        duration: 8,\r\n        repeat: -1,\r\n        yoyo: true,\r\n        ease: \"sine.inOut\",\r\n        transformOrigin: \"50% 50%\"\r\n      });\r\n    }\r\n\r\n    Array.from(morphShapes).forEach(\r\n      function (shape, index) {\r\n        gsap.to(shape, {\r\n          x: index % 2 === 0\r\n            ? 5\r\n            : -5,\r\n\r\n          y: index % 2 === 0\r\n            ? -4\r\n            : 4,\r\n\r\n          rotate: index % 2 === 0\r\n            ? 1.2\r\n            : -1.2,\r\n\r\n          opacity: 1,\r\n          duration: 4.8 + index * 0.7,\r\n          repeat: -1,\r\n          yoyo: true,\r\n          ease: \"sine.inOut\",\r\n          transformOrigin: \"50% 50%\"\r\n        });\r\n      }\r\n    );\r\n  }\r\n\r\n  function pmInitFormSectionAnimation(page) {\r\n    const gsap = pmGetGsap();\r\n    const ScrollTrigger = pmGetScrollTrigger();\r\n\r\n    if (!gsap || !page) {\r\n      return;\r\n    }\r\n\r\n    const formElements = pmGetFormElements(page);\r\n\r\n    const formSection =\r\n      formElements.formSection;\r\n\r\n    const formHeadline =\r\n      formElements.formHeadline;\r\n\r\n    const formWrap =\r\n      formElements.formWrap;\r\n\r\n    const form =\r\n      formElements.form;\r\n\r\n    if (!formWrap) {\r\n      return;\r\n    }\r\n\r\n    pmCleanElementorAnimations([\r\n      formSection,\r\n      formHeadline,\r\n      formWrap\r\n    ]);\r\n\r\n    const animatedElements = [\r\n      formHeadline,\r\n      formWrap\r\n    ].filter(Boolean);\r\n\r\n    if (animatedElements.length) {\r\n      gsap.set(animatedElements, {\r\n        autoAlpha: 0,\r\n        y: 38,\r\n        filter: \"blur(12px)\"\r\n      });\r\n    }\r\n\r\n    const timelineSettings = {\r\n      defaults: {\r\n        ease: \"power3.out\"\r\n      }\r\n    };\r\n\r\n    if (\r\n      ScrollTrigger &&\r\n      formSection\r\n    ) {\r\n      timelineSettings.scrollTrigger = {\r\n        trigger: formSection,\r\n        start: \"top 74%\",\r\n        once: true\r\n      };\r\n    }\r\n\r\n    const formTimeline = gsap.timeline(\r\n      timelineSettings\r\n    );\r\n\r\n    if (formHeadline) {\r\n      formTimeline.to(formHeadline, {\r\n        autoAlpha: 1,\r\n        y: 0,\r\n        filter: \"blur(0px)\",\r\n        duration: 0.85\r\n      });\r\n    }\r\n\r\n    formTimeline.to(\r\n      formWrap,\r\n      {\r\n        autoAlpha: 1,\r\n        y: 0,\r\n        filter: \"blur(0px)\",\r\n        duration: 0.85,\r\n\r\n        onComplete: function () {\r\n          if (!form) {\r\n            return;\r\n          }\r\n\r\n          const activeStep = form.querySelector(\r\n            \".pm-form-step.is-active\"\r\n          );\r\n\r\n          if (activeStep) {\r\n            pmAnimateCareersStep(\r\n              form,\r\n              activeStep\r\n            );\r\n          }\r\n        }\r\n      },\r\n      formHeadline\r\n        ? \"-=0.45\"\r\n        : 0\r\n    );\r\n  }\r\n\r\n  function pmInitFormInteractions(page) {\r\n    const gsap = pmGetGsap();\r\n\r\n    if (!gsap || !page) {\r\n      return;\r\n    }\r\n\r\n    const form = page.querySelector(\r\n      \".pm-careers-form\"\r\n    );\r\n\r\n    if (!form) {\r\n      return;\r\n    }\r\n\r\n    pmPatchCareersStepChanges(form);\r\n\r\n    const interactiveFields =\r\n      form.querySelectorAll(\r\n        \"input, select, textarea\"\r\n      );\r\n\r\n    const buttons =\r\n      form.querySelectorAll(\r\n        \".pm-btn, .pm-btn-back\"\r\n      );\r\n\r\n    const uploadBoxes =\r\n      form.querySelectorAll(\r\n        \".pm-upload-box\"\r\n      );\r\n\r\n    interactiveFields.forEach(\r\n      function (field) {\r\n        if (\r\n          field.dataset\r\n            .pmGsapInteraction === \"true\"\r\n        ) {\r\n          return;\r\n        }\r\n\r\n        field.dataset.pmGsapInteraction =\r\n          \"true\";\r\n\r\n        field.addEventListener(\r\n          \"focus\",\r\n          function () {\r\n            gsap.to(field, {\r\n              scale: 1.008,\r\n              duration: 0.2,\r\n              ease: \"power2.out\",\r\n              overwrite: \"auto\"\r\n            });\r\n          }\r\n        );\r\n\r\n        field.addEventListener(\r\n          \"blur\",\r\n          function () {\r\n            gsap.to(field, {\r\n              scale: 1,\r\n              duration: 0.2,\r\n              ease: \"power2.out\",\r\n              overwrite: \"auto\"\r\n            });\r\n          }\r\n        );\r\n      }\r\n    );\r\n\r\n    buttons.forEach(function (button) {\r\n      if (\r\n        button.dataset\r\n          .pmGsapInteraction === \"true\"\r\n      ) {\r\n        return;\r\n      }\r\n\r\n      button.dataset.pmGsapInteraction =\r\n        \"true\";\r\n\r\n      button.addEventListener(\r\n        \"mouseenter\",\r\n        function () {\r\n          gsap.to(button, {\r\n            scale: 1.025,\r\n            duration: 0.22,\r\n            ease: \"power2.out\",\r\n            overwrite: \"auto\"\r\n          });\r\n        }\r\n      );\r\n\r\n      button.addEventListener(\r\n        \"mouseleave\",\r\n        function () {\r\n          gsap.to(button, {\r\n            scale: 1,\r\n            duration: 0.22,\r\n            ease: \"power2.out\",\r\n            overwrite: \"auto\"\r\n          });\r\n        }\r\n      );\r\n\r\n      button.addEventListener(\r\n        \"mousedown\",\r\n        function () {\r\n          gsap.to(button, {\r\n            scale: 0.985,\r\n            duration: 0.1,\r\n            ease: \"power2.out\",\r\n            overwrite: \"auto\"\r\n          });\r\n        }\r\n      );\r\n\r\n      button.addEventListener(\r\n        \"mouseup\",\r\n        function () {\r\n          gsap.to(button, {\r\n            scale: 1.025,\r\n            duration: 0.14,\r\n            ease: \"power2.out\",\r\n            overwrite: \"auto\"\r\n          });\r\n        }\r\n      );\r\n    });\r\n\r\n    uploadBoxes.forEach(function (box) {\r\n      if (\r\n        box.dataset\r\n          .pmGsapInteraction === \"true\"\r\n      ) {\r\n        return;\r\n      }\r\n\r\n      box.dataset.pmGsapInteraction =\r\n        \"true\";\r\n\r\n      box.addEventListener(\r\n        \"mouseenter\",\r\n        function () {\r\n          gsap.to(box, {\r\n            y: -3,\r\n            scale: 1.01,\r\n            duration: 0.22,\r\n            ease: \"power2.out\",\r\n            overwrite: \"auto\"\r\n          });\r\n        }\r\n      );\r\n\r\n      box.addEventListener(\r\n        \"mouseleave\",\r\n        function () {\r\n          gsap.to(box, {\r\n            y: 0,\r\n            scale: 1,\r\n            duration: 0.22,\r\n            ease: \"power2.out\",\r\n            overwrite: \"auto\"\r\n          });\r\n        }\r\n      );\r\n    });\r\n  }\r\n\r\n  function initPmCareersAnimations(scope) {\r\n    const gsap = pmGetGsap();\r\n    const ScrollTrigger = pmGetScrollTrigger();\r\n\r\n    if (!gsap) {\r\n      return;\r\n    }\r\n\r\n    if (ScrollTrigger) {\r\n      gsap.registerPlugin(ScrollTrigger);\r\n    }\r\n\r\n    const root = scope || document;\r\n\r\n    const hero = root.querySelector(\r\n      \".pm-home-cta .pm-morph-bg\"\r\n    );\r\n\r\n    const form = root.querySelector(\r\n      \".pm-careers-form\"\r\n    );\r\n\r\n    if (!hero && !form) {\r\n      return;\r\n    }\r\n\r\n    const page =\r\n      (\r\n        hero &&\r\n        hero.closest(\".elementor\")\r\n      ) ||\r\n      (\r\n        form &&\r\n        form.closest(\".elementor\")\r\n      ) ||\r\n      root;\r\n\r\n    if (initializedPages.has(page)) {\r\n      return;\r\n    }\r\n\r\n    initializedPages.add(page);\r\n\r\n    pmInitHeroAnimation(page);\r\n    pmInitFormSectionAnimation(page);\r\n    pmInitFormInteractions(page);\r\n\r\n    if (ScrollTrigger) {\r\n      window.requestAnimationFrame(\r\n        function () {\r\n          ScrollTrigger.refresh();\r\n        }\r\n      );\r\n    }\r\n  }\r\n\r\n  function bootPmCareersAnimations() {\r\n    initPmCareersAnimations(document);\r\n  }\r\n\r\n  if (\r\n    document.readyState === \"loading\"\r\n  ) {\r\n    document.addEventListener(\r\n      \"DOMContentLoaded\",\r\n      bootPmCareersAnimations,\r\n      {\r\n        once: true\r\n      }\r\n    );\r\n  } else {\r\n    bootPmCareersAnimations();\r\n  }\r\n\r\n  window.addEventListener(\r\n    \"load\",\r\n    bootPmCareersAnimations,\r\n    {\r\n      once: true\r\n    }\r\n  );\r\n\r\n  if (window.jQuery) {\r\n    window.jQuery(window).on(\r\n      \"elementor\/frontend\/init\",\r\n      function () {\r\n        window.requestAnimationFrame(\r\n          bootPmCareersAnimations\r\n        );\r\n      }\r\n    );\r\n  }\r\n})();\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Carriere Unisciti a Playmoove Playmoove sviluppa soluzioni digitali enterprise per la mobilit\u00e0 condivisa, tra cui car sharing, gestione delle flotte, servizi di noleggio e mobilit\u00e0 urbana. Siamo alla ricerca di persone motivate che vogliano aiutarci a far crescere la nostra piattaforma. Seleziona il ruolo pi\u00f9 adatto al tuo profilo e inviaci la tua candidatura. Se [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":2185,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-2243","page","type-page","status-publish","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Carriere - playmoove.com<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/playmoove.com\/it\/azienda\/carriere\/\" \/>\n<meta property=\"og:locale\" content=\"it_IT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Carriere - playmoove.com\" \/>\n<meta property=\"og:description\" content=\"Carriere Unisciti a Playmoove Playmoove sviluppa soluzioni digitali enterprise per la mobilit\u00e0 condivisa, tra cui car sharing, gestione delle flotte, servizi di noleggio e mobilit\u00e0 urbana. Siamo alla ricerca di persone motivate che vogliano aiutarci a far crescere la nostra piattaforma. Seleziona il ruolo pi\u00f9 adatto al tuo profilo e inviaci la tua candidatura. Se [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/playmoove.com\/it\/azienda\/carriere\/\" \/>\n<meta property=\"og:site_name\" content=\"playmoove.com\" \/>\n<meta property=\"article:modified_time\" content=\"2026-07-20T09:46:12+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Tempo di lettura stimato\" \/>\n\t<meta name=\"twitter:data1\" content=\"2 minuti\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/playmoove.com\\\/it\\\/azienda\\\/carriere\\\/\",\"url\":\"https:\\\/\\\/playmoove.com\\\/it\\\/azienda\\\/carriere\\\/\",\"name\":\"Carriere - playmoove.com\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/playmoove.com\\\/it\\\/#website\"},\"datePublished\":\"2026-07-01T15:48:09+00:00\",\"dateModified\":\"2026-07-20T09:46:12+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/playmoove.com\\\/it\\\/azienda\\\/carriere\\\/#breadcrumb\"},\"inLanguage\":\"it-IT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/playmoove.com\\\/it\\\/azienda\\\/carriere\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/playmoove.com\\\/it\\\/azienda\\\/carriere\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/playmoove.com\\\/it\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Azienda\",\"item\":\"https:\\\/\\\/playmoove.com\\\/it\\\/azienda\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Carriere\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/playmoove.com\\\/it\\\/#website\",\"url\":\"https:\\\/\\\/playmoove.com\\\/it\\\/\",\"name\":\"Playmoove\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/playmoove.com\\\/it\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/playmoove.com\\\/it\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"it-IT\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/playmoove.com\\\/it\\\/#organization\",\"name\":\"Playmoove\",\"url\":\"https:\\\/\\\/playmoove.com\\\/it\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\\\/\\\/playmoove.com\\\/it\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/playmoove.com\\\/wp-content\\\/uploads\\\/2026\\\/04\\\/PLAYMOOVE_White_LOGO.svg\",\"contentUrl\":\"https:\\\/\\\/playmoove.com\\\/wp-content\\\/uploads\\\/2026\\\/04\\\/PLAYMOOVE_White_LOGO.svg\",\"width\":800,\"height\":115,\"caption\":\"Playmoove\"},\"image\":{\"@id\":\"https:\\\/\\\/playmoove.com\\\/it\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/it.linkedin.com\\\/organization-guest\\\/company\\\/playmoove\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Carriere - playmoove.com","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/playmoove.com\/it\/azienda\/carriere\/","og_locale":"it_IT","og_type":"article","og_title":"Carriere - playmoove.com","og_description":"Carriere Unisciti a Playmoove Playmoove sviluppa soluzioni digitali enterprise per la mobilit\u00e0 condivisa, tra cui car sharing, gestione delle flotte, servizi di noleggio e mobilit\u00e0 urbana. Siamo alla ricerca di persone motivate che vogliano aiutarci a far crescere la nostra piattaforma. Seleziona il ruolo pi\u00f9 adatto al tuo profilo e inviaci la tua candidatura. Se [&hellip;]","og_url":"https:\/\/playmoove.com\/it\/azienda\/carriere\/","og_site_name":"playmoove.com","article_modified_time":"2026-07-20T09:46:12+00:00","twitter_card":"summary_large_image","twitter_misc":{"Tempo di lettura stimato":"2 minuti"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/playmoove.com\/it\/azienda\/carriere\/","url":"https:\/\/playmoove.com\/it\/azienda\/carriere\/","name":"Carriere - playmoove.com","isPartOf":{"@id":"https:\/\/playmoove.com\/it\/#website"},"datePublished":"2026-07-01T15:48:09+00:00","dateModified":"2026-07-20T09:46:12+00:00","breadcrumb":{"@id":"https:\/\/playmoove.com\/it\/azienda\/carriere\/#breadcrumb"},"inLanguage":"it-IT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/playmoove.com\/it\/azienda\/carriere\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/playmoove.com\/it\/azienda\/carriere\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/playmoove.com\/it\/"},{"@type":"ListItem","position":2,"name":"Azienda","item":"https:\/\/playmoove.com\/it\/azienda\/"},{"@type":"ListItem","position":3,"name":"Carriere"}]},{"@type":"WebSite","@id":"https:\/\/playmoove.com\/it\/#website","url":"https:\/\/playmoove.com\/it\/","name":"Playmoove","description":"","publisher":{"@id":"https:\/\/playmoove.com\/it\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/playmoove.com\/it\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"it-IT"},{"@type":"Organization","@id":"https:\/\/playmoove.com\/it\/#organization","name":"Playmoove","url":"https:\/\/playmoove.com\/it\/","logo":{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/playmoove.com\/it\/#\/schema\/logo\/image\/","url":"https:\/\/playmoove.com\/wp-content\/uploads\/2026\/04\/PLAYMOOVE_White_LOGO.svg","contentUrl":"https:\/\/playmoove.com\/wp-content\/uploads\/2026\/04\/PLAYMOOVE_White_LOGO.svg","width":800,"height":115,"caption":"Playmoove"},"image":{"@id":"https:\/\/playmoove.com\/it\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/it.linkedin.com\/organization-guest\/company\/playmoove"]}]}},"_links":{"self":[{"href":"https:\/\/playmoove.com\/it\/wp-json\/wp\/v2\/pages\/2243","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/playmoove.com\/it\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/playmoove.com\/it\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/playmoove.com\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/playmoove.com\/it\/wp-json\/wp\/v2\/comments?post=2243"}],"version-history":[{"count":6,"href":"https:\/\/playmoove.com\/it\/wp-json\/wp\/v2\/pages\/2243\/revisions"}],"predecessor-version":[{"id":3377,"href":"https:\/\/playmoove.com\/it\/wp-json\/wp\/v2\/pages\/2243\/revisions\/3377"}],"up":[{"embeddable":true,"href":"https:\/\/playmoove.com\/it\/wp-json\/wp\/v2\/pages\/2185"}],"wp:attachment":[{"href":"https:\/\/playmoove.com\/it\/wp-json\/wp\/v2\/media?parent=2243"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}