{"title":"Orologi Automatici","description":"\u003cp\u003eScopri la collezione Orologi Automatici Petelia, dove la tradizione dell’orologeria meccanica incontra il design italiano.\u003c\/p\u003e\n\u003cp\u003eOrologi che prendono vita con il movimento del polso, senza bisogno di batterie. Ogni dettaglio racconta una scelta di qualità: movimenti automatici giapponesi, casse in acciaio inossidabile 316L, vetro zaffiro e finiture curate con precisione.\u003c\/p\u003e\n\u003cp\u003eA inaugurare questa nuova linea è INVEKTOR, il primo automatico Petelia, equipaggiato con movimento Miyota 8215 a 21 rubini, riserva di carica di circa 42 ore e resistenza all'acqua fino a 10 ATM.\u003c\/p\u003e\n\u003cp\u003eNon soltanto un accessorio, ma un piccolo capolavoro di meccanica da indossare ogni giorno. Un orologio che custodisce il tempo e si alimenta attraverso i tuoi movimenti.\u003c\/p\u003e","products":[{"product_id":"invektor","title":"INVEKTOR","description":"\u003cp\u003e\u003cmeta charset=\"UTF-8\"\u003e \u003cmeta content=\"width=device-width, initial-scale=1.0\" name=\"viewport\"\u003e\u003c\/p\u003e\n\u003cstyle\u003e\n        body {\n            font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n            max-width: 100%;\n            margin: 0 auto;\n            padding: 0;\n            color: #333;\n            font-size: 14px;\n            line-height: 1.3;\n        }\n        \n        hr {\n            border: none;\n            border-top: 1px solid #e0e0e0;\n            margin: 15px 0;\n        }\n        \n        .info-list {\n            list-style-type: none;\n            padding-left: 0;\n            margin-bottom: 15px;\n            margin-top: 15px;\n        }\n        \n        .info-list li {\n            position: relative;\n            padding-left: 22px;\n            margin-bottom: 14px;\n            display: flex;\n            flex-wrap: wrap;\n            min-height: 24px;\n        }\n        \n        .info-list li::before {\n            content: \"•\";\n            position: absolute;\n            left: 0;\n            top: -2px;\n            font-size: 20px;\n            line-height: 1;\n            color: #000;\n        }\n        \n        .green-text {\n            color: #26b757;\n            font-weight: normal;\n        }\n        \n        .bold-text {\n            font-weight: 600;\n        }\n        \n        .info-item-content {\n            display: flex;\n            flex-direction: column;\n            flex-grow: 1;\n        }\n        \n        .info-item-row {\n            display: flex;\n            align-items: center;\n            width: 100%;\n        }\n        \n        .info-icon-container {\n            display: inline-flex;\n            justify-content: center;\n            align-items: center;\n            width: 24px;\n            height: 24px;\n            border-radius: 50%;\n            background-color: #e7e7e7;\n            color: white;\n            font-size: 14px;\n            font-weight: bold;\n            text-align: center;\n            margin-left: auto;\n            cursor: pointer;\n            margin-right: 5px;\n            position: relative;\n        }\n        \n        .info-popup {\n            position: absolute;\n            top: 30px;\n            right: 0;\n            background-color: white;\n            color: #333;\n            border: 1px solid #ddd;\n            padding: 8px;\n            border-radius: 4px;\n            font-size: 12px;\n            white-space: normal;\n            z-index: 10;\n            opacity: 0;\n            visibility: hidden;\n            transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out;\n            width: 200px;\n            box-shadow: 0 2px 4px rgba(0,0,0,0.1);\n        }\n        \n        .info-icon-container:hover .info-popup {\n            opacity: 1;\n            visibility: visible;\n        }\n        \n        .accordion {\n            background-color: white;\n            cursor: pointer;\n            padding: 12px 0;\n            width: 100%;\n            text-align: left;\n            border: none;\n            outline: none;\n            transition: 0.3s;\n            font-size: 15px;\n            display: flex;\n            justify-content: space-between;\n            align-items: center;\n            font-weight: 700;\n            border-bottom: 1px solid #e0e0e0;\n            border-top: 1px solid #e0e0e0;\n            margin: 0;\n            text-transform: uppercase;\n        }\n        \n        .accordion:after {\n            content: '▼';\n            font-size: 10px;\n            transition: transform 0.3s;\n            opacity: 0.7;\n        }\n        \n        .accordion.active:after {\n            transform: rotate(180deg);\n        }\n        \n        .preview-panel {\n            padding: 12px 0;\n            line-height: 1.4;\n        }\n        \n        .see-more {\n            font-style: italic;\n            color: #777;\n            font-size: 12px;\n            margin-top: 4px;\n            cursor: pointer;\n        }\n        \n        .panel {\n            max-height: 0;\n            overflow: hidden;\n            transition: max-height 0.3s ease-out;\n            line-height: 1.4;\n        }\n        \n        .panel.open {\n            max-height: 2000px;\n        }\n        \n        p {\n            margin-top: 8px;\n            margin-bottom: 8px;\n            font-size: 14px;\n        }\n        \n        .box-image {\n            width: 100%;\n            max-width: 250px;\n            height: auto;\n            border-radius: 4px;\n        }\n        \n        .specs-table {\n            width: 100%;\n            border-collapse: collapse;\n            margin-bottom: 12px;\n        }\n        \n        .specs-table tr {\n            border-bottom: 1px solid #eee;\n        }\n        \n        .specs-table tr:last-child {\n            border-bottom: none;\n        }\n        \n        .specs-table td {\n            padding: 6px 2px;\n            font-size: 14px;\n        }\n        \n        .specs-table td:first-child {\n            font-weight: 600;\n            width: 40%;\n        }\n\n        .tech-detail-image {\n            width: 100%;\n            max-width: 400px;\n            height: auto;\n            display: block;\n            margin: 0 auto 20px auto;\n            border-radius: 8px;\n            box-shadow: 0 2px 8px rgba(0,0,0,0.1);\n        }\n        \n        .tech-panel-content {\n            position: relative;\n        }\n        \n        .pdf-download-link {\n            position: absolute;\n            bottom: 0;\n            left: 0;\n            display: inline-flex;\n            align-items: center;\n            gap: 6px;\n            color: #333;\n            text-decoration: none;\n            font-size: 12px;\n            padding: 4px 8px;\n            border-radius: 4px;\n            transition: all 0.2s ease;\n            background-color: #f7f7f7;\n            border: 1px solid #e0e0e0;\n        }\n        \n        .pdf-download-link:hover {\n            background-color: #e8e8e8;\n            color: #000;\n        }\n        \n        .pdf-icon {\n            width: 16px;\n            height: 16px;\n            color: #dc3545;\n        }\n        \n        @media (max-width: 768px) {\n            .tech-detail-image {\n                max-width: 100%;\n            }\n            \n            .pdf-download-link {\n                position: static;\n                margin-top: 15px;\n                display: inline-flex;\n            }\n        }\n        \n        .product-content {\n            padding: 0 8px;\n        }\n        \n        @media (min-width: 768px) {\n            .product-content {\n                padding: 0 20px;\n            }\n        }\n\n\/* Solo collegamento PDF della scheda tecnica INVEKTOR *\/\n.product-content .invektor-pdf-card { margin: 18px 0 12px; }\n.product-content .invektor-pdf-card__link {\n  display: flex; align-items: center; gap: 12px;\n  padding: 14px 15px; text-decoration: none !important;\n  background: #f2f7f7; color: #173743 !important;\n  border: 1px solid #b8cecb; border-radius: 10px;\n  transition: border-color .2s, background-color .2s;\n}\n.product-content .invektor-pdf-card__link:hover,\n.product-content .invektor-pdf-card__link:focus-visible {\n  border-color: #0b5361; background: #eaf3f1;\n}\n.product-content .invektor-pdf-card__icon { flex: 0 0 23px; color: #0b5361; }\n.product-content .invektor-pdf-card__copy { display: flex; flex: 1; min-width: 0; flex-direction: column; gap: 4px; }\n.product-content .invektor-pdf-card__copy strong { color: #173743; font-size: 13px; line-height: 1.3; }\n.product-content .invektor-pdf-card__copy small { color: #4d6469; font-size: 11px; line-height: 1.4; }\n.product-content .invektor-pdf-card__arrow { font-size: 19px; color: #0b5361; }\n\n    \u003c\/style\u003e\n\u003cdiv class=\"product-content\"\u003e\n\u003cul class=\"info-list\"\u003e\n\u003cli\u003e\n\u003cdiv class=\"info-item-content\"\u003e\n\u003cdiv class=\"info-item-row\"\u003e\n\u003cspan class=\"bold-text\"\u003eConsegna: \u003c\/span\u003e \u003cspan class=\"green-text\"\u003e 1-3 giorni lavorativi dalla spedizione\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cdiv class=\"info-item-content\"\u003e\n\u003cdiv class=\"info-item-row\"\u003e\u003cspan class=\"bold-text\"\u003eSpedizione gratuita\u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv class=\"info-item-row\"\u003econ numero di tracciamento \u003cspan class=\"info-icon-container\"\u003e i \u003cspan class=\"info-popup\"\u003e Riceverai un'email con il codice di tracciamento non appena il tuo ordine verrà spedito. \u003c\/span\u003e \u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cdiv class=\"info-item-content\"\u003e\n\u003cdiv class=\"info-item-row\"\u003e\n\u003cspan class=\"bold-text\"\u003e24 mesi di garanzia\u003c\/span\u003e \u003cspan class=\"info-icon-container\"\u003e i \u003cspan class=\"info-popup\"\u003e Invektor è coperto da una garanzia commerciale di 24 mesi sui difetti del movimento. Restano validi i diritti previsti dalla garanzia legale di conformità. \u003c\/span\u003e \u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cdiv class=\"info-item-content\"\u003e\n\u003cdiv class=\"info-item-row\"\u003e\n\u003cspan class=\"bold-text\"\u003eSupporto tecnico garantito a vita\u003c\/span\u003e \u003cspan class=\"info-icon-container\"\u003e i \u003cspan class=\"info-popup\"\u003e La nostra assistenza tecnica continua oltre la garanzia, offrendo supporto e consulenza costante. \u003c\/span\u003e \u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cdiv class=\"info-item-content\"\u003e\n\u003cdiv class=\"info-item-row\"\u003e\n\u003cspan class=\"bold-text\"\u003eReso gratuito entro 14 giorni\u003c\/span\u003e \u003cspan class=\"info-icon-container\"\u003e i \u003cspan class=\"info-popup\"\u003e Offriamo un servizio di reso gratuito entro i termini stabiliti. Consulta la nostra politica sui resi per maggiori dettagli. \u003c\/span\u003e \u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003chr\u003e\n\u003cbutton id=\"descriptionButton\" class=\"accordion\"\u003eDescrizione\u003c\/button\u003e\n\u003cdiv class=\"preview-panel\"\u003e\n\u003cp\u003eInvektor: il primo automatico Petelia, con movimento giapponese Miyota 8215, cassa in acciaio 316L e vetro zaffiro...\u003c\/p\u003e\n\u003cp id=\"seeMore\" class=\"see-more\"\u003eClicca per vedere altro...\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv id=\"descriptionPanel\" class=\"panel\"\u003e\n\u003cp\u003e\u003cstrong\u003eInvektor, il primo automatico Petelia:\u003c\/strong\u003e\u003cbr\u003e\nUn nuovo capitolo per Petelia Italian Brand: un orologio meccanico progettato per unire la concretezza del movimento automatico giapponese, la qualità dell'acciaio e un'estetica riconoscibile. Un orologio che non richiede batterie e che prende energia dai movimenti del polso.\u003c\/p\u003e\n\n\u003cp\u003e\u003cstrong\u003eIl significato del nome:\u003c\/strong\u003e\u003cbr\u003e\nInvektor richiama il concetto di vettore: direzione, movimento ed energia. Un nome che esprime sia il percorso di Petelia verso il suo primo automatico, sia la meccanica che ne anima le lancette.\u003c\/p\u003e\n\n\u003cp\u003e\u003cstrong\u003eMovimento automatico Miyota 8215:\u003c\/strong\u003e\u003cbr\u003e\nAl suo interno batte un calibro meccanico giapponese Miyota 8215 con 21 rubini e frequenza di 21.600 alternanze all'ora (3 Hz). Il rotore carica la molla motrice grazie al movimento del polso; è possibile effettuare anche la carica manuale attraverso la corona. A piena carica, la riserva di marcia è di circa 42 ore.\u003c\/p\u003e\n\n\u003cp\u003e\u003cstrong\u003eAcciaio 316L e vetro zaffiro:\u003c\/strong\u003e\u003cbr\u003e\nLa cassa rotonda da 41 mm è realizzata in acciaio inossidabile 316L, con superfici satinate e dettagli lucidi. Il vetro zaffiro protegge il quadrante ed è apprezzato per l'elevata durezza e la resistenza ai graffi nell'uso quotidiano.\u003c\/p\u003e\n\n\u003cp\u003e\u003cstrong\u003eMeccanica a vista:\u003c\/strong\u003e\u003cbr\u003e\nIl fondello trasparente lascia osservare il movimento automatico e il rotore personalizzato con la firma Petelia: un dettaglio che valorizza la natura meccanica di Invektor.\u003c\/p\u003e\n\n\u003cp\u003e\u003cstrong\u003eDue quadranti, due personalità:\u003c\/strong\u003e\u003cbr\u003e\nLa variante blu presenta un quadrante profondo con minuteria color oro; la variante bianca si distingue per la fascia periferica verde. Entrambe mantengono indici e lancette leggibili, trattati con Super-LumiNova per favorire la visibilità al buio.\u003c\/p\u003e\n\n\u003cp\u003e\u003cstrong\u003eBracciale e cinturino:\u003c\/strong\u003e\u003cbr\u003e\nInvektor è illustrato sia con bracciale in acciaio sia con cinturino in pelle. Il cinturino in pelle adotta un sistema a sgancio rapido (quick release) che consente di rimuoverlo senza attrezzi. Le combinazioni e gli accessori effettivamente inclusi dipenderanno dalla configurazione commercializzata.\u003c\/p\u003e\n\n\u003cp\u003e\u003cstrong\u003eFunzioni e precisione meccanica:\u003c\/strong\u003e\u003cbr\u003e\nIndica ore, minuti, secondi e data, con datario a ore 3 e regolazione rapida. La tolleranza di marcia nominale del Miyota 8215 è compresa tra −20 e +40 secondi al giorno: la precisione di un meccanico può variare con posizione, carica e modalità d'uso.\u003c\/p\u003e\n\n\u003cp\u003e\u003cstrong\u003eResistenza e garanzia:\u003c\/strong\u003e\u003cbr\u003e\nInvektor presenta una resistenza all'acqua nominale di 10 ATM ed è accompagnato dalla garanzia commerciale Petelia di 2 anni sui difetti del movimento, senza pregiudizio per i diritti derivanti dalla garanzia legale di conformità.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003chr\u003e\n\u003cbutton id=\"techDetailsButton\" class=\"accordion\"\u003eDettagli Tecnici\u003c\/button\u003e\n\u003cdiv id=\"techDetailsPanel\" class=\"panel\"\u003e\n\u003cdiv class=\"tech-panel-content\"\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0818\/9847\/1758\/files\/Logo_Petelia_in_grigio_antracite.png?v=1792255587\" alt=\"Calibro Miyota 8215 con rotore personalizzato Petelia Invektor\" class=\"tech-detail-image\" loading=\"lazy\"\u003e\n\u003ctable class=\"specs-table\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003eTipologia\u003c\/td\u003e\n\u003ctd\u003eOrologio meccanico automatico da uomo\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMovimento\u003c\/td\u003e\n\u003ctd\u003eMiyota 8215, meccanico giapponese\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eSistema di carica\u003c\/td\u003e\n\u003ctd\u003eAutomatica tramite rotore e manuale tramite corona\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eBatteria\u003c\/td\u003e\n\u003ctd\u003eNon necessaria\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eRiserva di marcia\u003c\/td\u003e\n\u003ctd\u003eCirca 42 ore a piena carica\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eRubini del movimento\u003c\/td\u003e\n\u003ctd\u003e21\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eFrequenza\u003c\/td\u003e\n\u003ctd\u003e21.600 alternanze\/ora (3 Hz)\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eTolleranza di marcia nominale\u003c\/td\u003e\n\u003ctd\u003eDa −20 a +40 secondi al giorno\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eFunzioni\u003c\/td\u003e\n\u003ctd\u003eOre, minuti, secondi e data\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eDatario\u003c\/td\u003e\n\u003ctd\u003eA ore 3, con regolazione rapida\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eDiametro del movimento\u003c\/td\u003e\n\u003ctd\u003e26 mm (11½ linee)\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eSpessore del movimento\u003c\/td\u003e\n\u003ctd\u003e5,67 mm\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMateriale cassa\u003c\/td\u003e\n\u003ctd\u003eAcciaio inossidabile 316L\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eDiametro cassa\u003c\/td\u003e\n\u003ctd\u003e41 mm\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eForma cassa\u003c\/td\u003e\n\u003ctd\u003eRotonda\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eFiniture cassa\u003c\/td\u003e\n\u003ctd\u003eSuperfici satinate con dettagli lucidi\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eVetro\u003c\/td\u003e\n\u003ctd\u003eZaffiro, resistente ai graffi\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eFondello\u003c\/td\u003e\n\u003ctd\u003eA vista, con rotore personalizzato Petelia\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eResistenza all’acqua\u003c\/td\u003e\n\u003ctd\u003e10 ATM (valore nominale)\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eLancette e indici\u003c\/td\u003e\n\u003ctd\u003eCon trattamento luminescente Super-LumiNova\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eVarianti quadrante\u003c\/td\u003e\n\u003ctd\u003eBlu con dettagli oro; bianco con fascia periferica verde\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eBracciale\u003c\/td\u003e\n\u003ctd\u003eAcciaio inossidabile, nelle configurazioni illustrate\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCinturino\u003c\/td\u003e\n\u003ctd\u003ePelle con sgancio rapido (quick release), nelle configurazioni illustrate\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eGaranzia commerciale\u003c\/td\u003e\n\u003ctd\u003e2 anni sui difetti del movimento\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cdiv class=\"invektor-pdf-card\"\u003e\n  \u003ca class=\"invektor-pdf-card__link\" href=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0818\/9847\/1758\/files\/PETELIA_INVEKTOR_SCHEDA_TECNICA_MOVIMENTO_2026.pdf?v=1793809032\" target=\"_blank\" rel=\"noopener noreferrer\" aria-label=\"Apri la scheda tecnica completa Invektor in PDF, 5 pagine\"\u003e\n    \u003csvg class=\"invektor-pdf-card__icon\" viewbox=\"0 0 24 24\" width=\"23\" height=\"23\" aria-hidden=\"true\" focusable=\"false\"\u003e\u003cpath d=\"M6 2.5h8l4.5 4.5V20a1.5 1.5 0 0 1-1.5 1.5H6A1.5 1.5 0 0 1 4.5 20V4A1.5 1.5 0 0 1 6 2.5Zm7.5 1.8V8h3.7M8 12h8m-8 3h8m-8 3h5\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.6\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\n    \u003cspan class=\"invektor-pdf-card__copy\"\u003e\u003cstrong\u003eScheda tecnica completa INVEKTOR\u003c\/strong\u003e\u003csmall\u003ePDF · 5 pagine · movimento Miyota 8215, materiali e istruzioni\u003c\/small\u003e\u003c\/span\u003e\n    \u003cspan class=\"invektor-pdf-card__arrow\" aria-hidden=\"true\"\u003e↗\u003c\/span\u003e\n  \u003c\/a\u003e\n\u003c\/div\u003e\n\u003cp style=\"font-size:12px;color:#777;margin-top:8px;\"\u003eI dati dimensionali del movimento si riferiscono al calibro, non alla cassa. La marcia può variare secondo carica, posizione e utilizzo. Le configurazioni di cinturino e bracciale illustrate non implicano che entrambi siano inclusi nella confezione.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003chr\u003e\n\u003cbutton id=\"packageContentsButton\" class=\"accordion\"\u003eContenuto della Consegna\u003c\/button\u003e\n\u003cdiv id=\"packageContentsPanel\" class=\"panel\"\u003e\n\u003cp\u003eInvektor è attualmente presentato in anteprima. La composizione definitiva della confezione, gli eventuali accessori inclusi e le configurazioni disponibili saranno specificati all'apertura delle vendite.\u003c\/p\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0818\/9847\/1758\/files\/rn-image_picker_lib_temp_0c04567c-b1e9-4b95-9989-060c8761a558.png?v=1792255395\" class=\"box-image\" alt=\"Invektor Petelia con quadrante blu e bracciale in acciaio\" loading=\"lazy\"\u003e\n\u003cp style=\"font-size:12px;color:#777;\"\u003eImmagine del modello Invektor, non della confezione di vendita.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cscript\u003e\n        document.addEventListener(\"DOMContentLoaded\", function() {\n            const descButton = document.getElementById(\"descriptionButton\");\n            const descPanel = document.getElementById(\"descriptionPanel\");\n            const seeMore = document.getElementById(\"seeMore\");\n            \n            descButton.addEventListener(\"click\", function() {\n                this.classList.toggle(\"active\");\n                descPanel.classList.toggle(\"open\");\n                if (descPanel.classList.contains(\"open\")) {\n                    seeMore.style.display = \"none\";\n                } else {\n                    seeMore.style.display = \"block\";\n                }\n            });\n            \n            seeMore.addEventListener(\"click\", function() {\n                descButton.classList.add(\"active\");\n                descPanel.classList.add(\"open\");\n                this.style.display = \"none\";\n            });\n            \n            const techButton = document.getElementById(\"techDetailsButton\");\n            const techPanel = document.getElementById(\"techDetailsPanel\");\n            \n            techButton.addEventListener(\"click\", function() {\n                this.classList.toggle(\"active\");\n                techPanel.classList.toggle(\"open\");\n            });\n            \n            const packageButton = document.getElementById(\"packageContentsButton\");\n            const packagePanel = document.getElementById(\"packageContentsPanel\");\n            \n            packageButton.addEventListener(\"click\", function() {\n                this.classList.toggle(\"active\");\n                packagePanel.classList.toggle(\"open\");\n            });\n        });\n    \u003c\/script\u003e\n\u003c\/div\u003e\n\n\u003c!-- INVEKTOR: interfaccia quadranti e bracciale V5, ripristinata senza alterare la scheda tecnica --\u003e\n\u003c!-- PETELIA \/ INVEKTOR V5: solo Invektor, prezzo extra e carrello coerenti. --\u003e\n\u003cstyle\u003e\n\/* Tutti gli stili sono limitati al riquadro Invektor. *\/\n.pi-quadrante { margin: 12px 0 22px; }\n.pi-quadrante__label { color:#282723; font-size:15px; font-weight:700; margin-bottom:11px; letter-spacing:.02em; }\n.pi-quadrante__choices { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px; }\n.pi-quadrante__choice { appearance:none; width:100%; display:flex; align-items:center; gap:11px; min-height:64px; padding:12px 13px; border:1px solid #d6c5ac; border-radius:12px; background:#fffaf3; color:#262a2a; cursor:pointer; text-align:left; transition:background-color .15s,border-color .15s,box-shadow .15s; }\n.pi-quadrante__choice:hover { border-color:#8f754c; }\n.pi-quadrante__choice[aria-pressed=\"true\"] { border-color:#0b5361; box-shadow:inset 0 0 0 1px #0b5361; background:#f0f6f5; }\n.pi-quadrante__choice:focus-visible { outline:2px solid #0b5361; outline-offset:3px; }\n.pi-quadrante__swatch { display:block; width:29px; height:29px; flex:0 0 29px; border-radius:50%; border:2px solid #fff; box-shadow:0 0 0 1px #bdbaaf, inset 0 0 4px #0000001c; }\n.pi-quadrante__swatch--white { background:linear-gradient(130deg,#fff,#e9e6dc); }\n.pi-quadrante__swatch--blue { background:linear-gradient(135deg,#0b5361,#06313d); }\n.pi-quadrante__name { display:block; font-weight:700; font-size:13px; line-height:1.25; }\n.pi-quadrante__detail { display:block; margin-top:3px; font-size:11px; color:#766d60; }\n.pi-quadrante__check { margin-left:auto; font-size:16px; font-weight:700; opacity:0; color:#0b5361; }\n.pi-quadrante__choice[aria-pressed=\"true\"] .pi-quadrante__check { opacity:1; }\n.pi-quadrante__native-hidden { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }\n.pi-bracciale { margin:10px 0 17px; padding:14px; border:1px solid #cdb897; border-radius:12px; background:#fffaf1; }\n.pi-bracciale:has(input:checked) { background:#eff6f5; border-color:#0b5361; box-shadow:inset 0 0 0 1px #0b5361; }\n.pi-bracciale__row { display:flex; gap:12px; align-items:center; cursor:pointer; }\n.pi-bracciale__row input { width:19px; height:19px; flex:0 0 19px; accent-color:#0b5361; }\n.pi-bracciale__img { width:64px; height:70px; object-fit:cover; flex:0 0 64px; border-radius:8px; background:#f0ece5; }\n.pi-bracciale__name { display:block; color:#272821; font-size:14px; font-weight:700; line-height:1.3; }\n.pi-bracciale__price { display:block; margin:4px 0; font-size:13px; font-weight:700; color:#0b5361; }\n.pi-bracciale__detail { display:block; font-size:12px; color:#5c5b54; line-height:1.35; }\n.pi-bracciale__preview { display:inline-block; margin:8px 0 0 32px; font-size:12px; color:#64563e; text-decoration:underline; border:0; background:none; cursor:pointer; }\n.pi-bracciale__status { display:block; color:#996c34; font-size:12px; margin:8px 0 0 32px; }\n.pi-bracciale__section-title { font-weight:700; color:#362d20; font-size:14px; margin:4px 0 12px; }\n@media(max-width:480px) { .pi-quadrante__choices { gap:8px; } .pi-quadrante__choice { padding:10px 9px; gap:7px; min-height:62px; } .pi-quadrante__swatch { width:23px; height:23px; flex-basis:23px; } .pi-quadrante__name { font-size:12px; } .pi-quadrante__detail { font-size:10px; } }\n\u003c\/style\u003e\n\u003cscript\u003e\n(function () {\n  'use strict';\n  const BRACELET_ID = 61538666021198;\n  const BRACELET_HANDLE = 'bracciale-in-acciaio-inossidabile';\n  const BRACELET_PRICE_CENTS = 1999;\n  const BRACELET_IMAGE = 'https:\/\/cdn.shopify.com\/s\/files\/1\/0818\/9847\/1758\/files\/file_00000000f94c8210b0bcc1a0831ad065.png?v=1793789944';\n  const fmt = (cents) =\u003e new Intl.NumberFormat('it-IT', { style:'currency',currency:'EUR' }).format(cents \/ 100);\n  const norm = (s) =\u003e String(s || '').trim().toLocaleLowerCase('it');\n\n  let braceletSelection = false;\n  function init() {\n    const title = document.querySelector('main h1, .product__title h1, h1.product__title');\n    const isInvektor = norm(title \u0026\u0026 title.textContent).includes('invektor') || location.pathname.toLowerCase().includes('invektor');\n    if (!isInvektor) return;\n    const form = document.querySelector('product-form[data-petelia-gift-options=\"true\"]');\n    const optionsArea = form \u0026\u0026 form.querySelector('[data-petelia-options]');\n\n    \/\/ 1) Migliora il selettore mantenendo il select originale del tema (e quindi prezzi, foto e variante).\n    const pickers = [...document.querySelectorAll('variant-selects select')];\n    const nativeSelect = pickers.find(sel =\u003e {\n      const vals = [...sel.options].map(opt =\u003e norm(opt.textContent));\n      return vals.some(v =\u003e v.includes('bianco')) \u0026\u0026 vals.some(v =\u003e v.includes('blu'));\n    });\n    if (nativeSelect) {\n      const nativeContainer = nativeSelect.closest('.product-form__input--dropdown') || nativeSelect.parentElement;\n      const selectFrame = nativeSelect.closest('.select') || nativeSelect;\n      const originalLabel = nativeContainer \u0026\u0026 nativeContainer.querySelector('.form__label');\n      if (nativeContainer \u0026\u0026 !nativeContainer.querySelector('.pi-quadrante')) {\n        const picker = document.createElement('div');\n        picker.className = 'pi-quadrante';\n        picker.innerHTML = '\u003cdiv class=\"pi-quadrante__label\"\u003eScegli il quadrante\u003c\/div\u003e\u003cdiv class=\"pi-quadrante__choices\"\u003e\u003c\/div\u003e';\n        const choices = picker.querySelector('.pi-quadrante__choices');\n        [...nativeSelect.options].forEach(opt =\u003e {\n          const val = norm(opt.value);\n          if (!val || (val !== 'bianco' \u0026\u0026 !val.includes('blu'))) return;\n          const isWhite = val.includes('bianco');\n          const button = document.createElement('button');\n          button.type = 'button';\n          button.className = 'pi-quadrante__choice';\n          button.dataset.value = opt.value;\n          const dot = document.createElement('span');\n          dot.className = 'pi-quadrante__swatch ' + (isWhite ? 'pi-quadrante__swatch--white' : 'pi-quadrante__swatch--blue');\n          const copy = document.createElement('span');\n          const name = document.createElement('span'); name.className = 'pi-quadrante__name'; name.textContent = isWhite ? 'Bianco luminoso' : 'Blu petrolio';\n          const detail = document.createElement('span'); detail.className = 'pi-quadrante__detail'; detail.textContent = isWhite ? 'Elegante e luminoso' : 'Profondo e raffinato';\n          copy.append(name, detail);\n          const tick = document.createElement('span'); tick.className = 'pi-quadrante__check'; tick.textContent = '✓';\n          button.append(dot, copy, tick);\n          button.addEventListener('click', () =\u003e {\n            if (opt.disabled) return;\n            nativeSelect.value = opt.value;\n            nativeSelect.dispatchEvent(new Event('change', { bubbles:true }));\n            updatePicker();\n          });\n          choices.appendChild(button);\n        });\n        function updatePicker() {\n          choices.querySelectorAll('button').forEach(button =\u003e {\n            const selected = button.dataset.value === nativeSelect.value;\n            button.setAttribute('aria-pressed', selected ? 'true' : 'false');\n            const matched = [...nativeSelect.options].find(o =\u003e o.value === button.dataset.value);\n            button.disabled = !!matched?.disabled;\n          });\n        }\n        nativeContainer.insertBefore(picker, selectFrame);\n        selectFrame.classList.add('pi-quadrante__native-hidden');\n        if (originalLabel) originalLabel.classList.add('pi-quadrante__native-hidden');\n        nativeSelect.addEventListener('change', updatePicker);\n        updatePicker();\n      }\n    }\n\n    \/\/ Il tema ricrea dinamicamente il form: inizializza ogni nuova istanza una sola volta.\n    if (!form || !optionsArea) return;\n    if (form.dataset.piInvektorMounted === 'true') return;\n    form.dataset.piInvektorMounted = 'true';\n\n    \/\/ 2) Nessun secondo \"Personalizza il tuo regalo\" all'interno dell'accordion.\n    const accordion = form.querySelector('[data-petelia-accordion]');\n    const heading = accordion \u0026\u0026 accordion.querySelector('.petelia-personalizations__heading');\n    const hint = accordion \u0026\u0026 accordion.querySelector('.petelia-personalizations__hint');\n    if (heading) heading.textContent = 'Personalizza il tuo Invektor';\n    if (hint) hint.textContent = 'Bracciale in acciaio, incisioni e dedica NFC';\n    optionsArea.querySelectorAll('h2,h3,h4,h5,p,strong').forEach(el =\u003e {\n      if (norm(el.textContent) === 'personalizza il tuo regalo') el.remove();\n    });\n\n    \/\/ 3) Accessorio separato, dentro lo stesso riquadro degli extra, solo su Invektor.\n    let bracelet = optionsArea.querySelector('[data-petelia-option=\"invektor-bracelet\"]');\n    if (!bracelet) {\n      const block = document.createElement('div');\n      block.className = 'pi-bracciale';\n      block.innerHTML = `\n        \u003cdiv class=\"pi-bracciale__section-title\"\u003eCompleta il tuo Invektor\u003c\/div\u003e\n        \u003clabel class=\"pi-bracciale__row\"\u003e\n          \u003cinput type=\"checkbox\" data-petelia-option=\"invektor-bracelet\" disabled\u003e\n          \u003cimg class=\"pi-bracciale__img\" src=\"${BRACELET_IMAGE}\" alt=\"Bracciale aggiuntivo in acciaio Petelia\" loading=\"lazy\"\u003e\n          \u003cspan\u003e\u003cspan class=\"pi-bracciale__name\"\u003eBracciale aggiuntivo in acciaio inox\u003c\/span\u003e\n          \u003cspan class=\"pi-bracciale__price\"\u003e+ ${fmt(BRACELET_PRICE_CENTS)}\u003c\/span\u003e\n          \u003cspan class=\"pi-bracciale__detail\"\u003eDue stili per un solo orologio: pelle o acciaio.\u003c\/span\u003e\u003c\/span\u003e\n        \u003c\/label\u003e\n        \u003cbutton type=\"button\" class=\"pi-bracciale__preview\" data-petelia-preview-trigger\n          data-petelia-preview-title=\"Bracciale aggiuntivo in acciaio inox\"\n          data-petelia-preview-price=\"19,99 €\"\n          data-petelia-preview-image=\"${BRACELET_IMAGE}\"\u003eVedi esempio\u003c\/button\u003e\n        \u003csmall class=\"pi-bracciale__status\" role=\"status\"\u003eVerifica disponibilità...\u003c\/small\u003e`;\n      optionsArea.prepend(block);\n      bracelet = block.querySelector('input');\n    }\n    const status = optionsArea.querySelector('.pi-bracciale__status');\n    \/\/ Dato letto anche dal riepilogo delle versioni di product-form.js che lo supportano.\n    optionsArea.dataset.priceInvektorBracelet = String(BRACELET_PRICE_CENTS);\n    bracelet.addEventListener('change', () =\u003e { braceletSelection = bracelet.checked; });\n    bracelet.disabled = true;\n\n    \/\/ 4) Riutilizza il carrello multi-prodotto Petelia, senza toccare form, PayPal e altre opzioni.\n    const baseCollect = form.collectPeteliaGiftOptions;\n    if (typeof baseCollect === 'function') {\n      form.collectPeteliaGiftOptions = function () {\n        const opts = baseCollect.call(this);\n        opts.invektorBracelet = bracelet.checked \u0026\u0026 !bracelet.disabled;\n        return opts;\n      };\n    }\n    form.dataset.peteliaVariantInvektorBracelet = String(BRACELET_ID);\n    const v2AlreadyAddsBracelet = \/peteliaVariantInvektorBracelet\/.test(String(form.onPeteliaGiftOptionsSubmit || ''));\n    if (!v2AlreadyAddsBracelet \u0026\u0026 typeof form.buildPeteliaServiceItems === 'function') {\n      const baseBuild = form.buildPeteliaServiceItems;\n      form.buildPeteliaServiceItems = function(opts, quantity, bundleId, parentVariantId) {\n        const items = baseBuild.call(this, opts, quantity, bundleId, parentVariantId);\n        if (opts.invektorBracelet \u0026\u0026 !items.some(item =\u003e Number(item.id) === BRACELET_ID)) {\n          items.push({id:BRACELET_ID, quantity, properties:{'_petelia_invektor_addon':'true'}});\n        }\n        return items;\n      };\n    }\n\n    \/\/ 5) Il riepilogo originale del tema NON conosce il bracciale.\n    \/\/    Calcoliamo quindi il totale DA ZERO (senza sommare al totale gia mostrato),\n    \/\/    mantenendo inalterati prezzo e logica combo degli altri extra Petelia.\n    const summary = optionsArea.querySelector('[data-petelia-summary]');\n    const isChecked = (key) =\u003e optionsArea.querySelector(`[data-petelia-option=\"${key}\"]`)?.checked === true;\n    const priceOf = (key) =\u003e Number(optionsArea.dataset[key] || 0);\n    const summaryRows = (checks, prices) =\u003e {\n      const rows = [];\n      if (checks.bracelet) rows.push(['Bracciale aggiuntivo in acciaio inox', prices.bracelet]);\n      if (checks.gift) rows.push(['Confezione regalo', prices.gift]);\n      if (checks.shopper) rows.push(['Shopper Petelia', prices.shopper]);\n      if (checks.box \u0026\u0026 checks.caseEngraving) rows.push(['Offerta combo incisioni', prices.combo]);\n      else {\n        if (checks.box) rows.push(['Incisione box', prices.box]);\n        if (checks.caseEngraving) rows.push(['Incisione cassa', prices.caseEngraving]);\n      }\n      if (checks.nfc) rows.push(['Dedica NFC', prices.nfc]);\n      return rows;\n    };\n    function refreshTotal() {\n      if (!summary || !summary.isConnected) return;\n      const checks = {\n        bracelet: bracelet.checked \u0026\u0026 !bracelet.disabled,\n        gift: isChecked('gift-wrap'),\n        shopper: isChecked('shopper'),\n        box: isChecked('box-engraving'),\n        caseEngraving: isChecked('case-engraving'),\n        nfc: isChecked('nfc'),\n      };\n      const basePrice = priceOf('basePrice');\n      const prices = {\n        bracelet: BRACELET_PRICE_CENTS,\n        gift: priceOf('priceGiftWrap'),\n        shopper: priceOf('priceShopper'),\n        box: priceOf('priceBoxEngraving'),\n        caseEngraving: priceOf('priceCaseEngraving'),\n        combo: priceOf('priceComboEngraving'),\n        nfc: priceOf('priceNfc'),\n      };\n      const rows = summaryRows(checks, prices);\n      const extras = rows.reduce((sum, row) =\u003e sum + row[1], 0);\n      const total = basePrice + extras;\n      const oldDetails = summary.querySelector('details');\n      const open = oldDetails ? oldDetails.open : !window.matchMedia('(max-width: 749px)').matches;\n      \/\/ Non sovrascrivere inutilmente il DOM: evita anche i loop del MutationObserver.\n      const key = JSON.stringify({ checks, basePrice, prices, open });\n      if (summary.dataset.piInvektorSummaryKey === key \u0026\u0026 summary.querySelector('details[data-pi-invektor-summary]')) return;\n      summary.dataset.piInvektorSummaryKey = key;\n      const priceRows = rows.length\n        ? rows.map(([label, cents]) =\u003e `\u003cdiv\u003e\u003cspan\u003e${label}\u003c\/span\u003e\u003cstrong\u003e${fmt(cents)}\u003c\/strong\u003e\u003c\/div\u003e`).join('')\n        : '\u003cdiv\u003e\u003cspan\u003eNessun extra selezionato\u003c\/span\u003e\u003cstrong\u003e€0,00\u003c\/strong\u003e\u003c\/div\u003e';\n      summary.innerHTML = `\n        \u003cdetails data-pi-invektor-summary ${open ? 'open' : ''}\u003e\n          \u003csummary\u003e\u003cspan\u003eRiepilogo\u003c\/span\u003e\u003cstrong\u003e${fmt(total)}\u003c\/strong\u003e\u003c\/summary\u003e\n          \u003cdiv class=\"petelia-gift-options__summary-body\"\u003e\n            \u003cdiv\u003e\u003cspan\u003eProdotto\u003c\/span\u003e\u003cstrong\u003e${fmt(basePrice)}\u003c\/strong\u003e\u003c\/div\u003e\n            ${priceRows}\n            \u003cdiv class=\"petelia-gift-options__summary-total\"\u003e\u003cspan\u003eTotale\u003c\/span\u003e\u003cstrong\u003e${fmt(total)}\u003c\/strong\u003e\u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/details\u003e`;\n    }\n    \/\/ Il tema puo ricreare il riepilogo dopo una modifica: lo riallineiamo.\n    if (summary) {\n      const summaryObserver = new MutationObserver(() =\u003e refreshTotal());\n      summaryObserver.observe(summary, { childList: true });\n    }\n    \/\/ Aspetta che il codice originale Petelia abbia gestito l'evento change.\n    optionsArea.addEventListener('change', (event) =\u003e {\n      if (!event.target.matches('[data-petelia-option]')) return;\n      requestAnimationFrame(refreshTotal);\n    });\n    refreshTotal();\n\n    \/\/ 6) Controlla che il bracciale sia realmente pubblicato e acquistabile.\n    const shopRoot = (window.Shopify?.routes?.root || '\/').replace(\/\\\/?$\/, '\/');\n    fetch(shopRoot + 'products\/' + encodeURIComponent(BRACELET_HANDLE) + '.js', { credentials:'same-origin' })\n      .then(r =\u003e { if (!r.ok) throw new Error('Prodotto non pubblicato'); return r.json(); })\n      .then(product =\u003e {\n        const variant = (product.variants || []).find(v =\u003e Number(v.id) === BRACELET_ID);\n        if (!variant || !variant.available) throw new Error('Variante non acquistabile');\n        bracelet.disabled = false;\n        if (status) status.textContent = '';\n        if (braceletSelection \u0026\u0026 !bracelet.checked) {\n          bracelet.checked = true;\n          bracelet.dispatchEvent(new Event('change', {bubbles:true}));\n        } else {\n          refreshTotal();\n        }\n      })\n      .catch(() =\u003e {\n        bracelet.checked = false;\n        bracelet.disabled = true;\n        if (status) status.textContent = 'Accessorio temporaneamente non acquistabile: pubblica il bracciale su Shopify.';\n      });\n  }\n  \/\/ Be Yours aggiorna i blocchi via AJAX al cambio variante. Un observer leggero\n  \/\/ rimonta SOLO i controlli mancanti dopo la sostituzione del DOM.\n  let scheduled = false;\n  function queueInit() {\n    if (scheduled) return;\n    scheduled = true;\n    requestAnimationFrame(() =\u003e {\n      scheduled = false;\n      init();\n    });\n  }\n  const observer = new MutationObserver((changes) =\u003e {\n    \/\/ Ignora modifiche all'header\/footer: reagisce ai nodi della scheda prodotto.\n    if (!changes.some(change =\u003e {\n      const el = change.target \u0026\u0026 change.target.nodeType === 1 ? change.target : null;\n      return el \u0026\u0026 el.closest('main');\n    })) return;\n    queueInit();\n  });\n  observer.observe(document.body, {childList:true, subtree:true});\n  document.addEventListener('shopify:section:load', queueInit);\n  if (document.readyState === 'loading') document.addEventListener('DOMContentLoaded', queueInit, {once:true});\n  else queueInit();\n})();\n\u003c\/script\u003e\n","brand":"Petelia","offers":[{"title":"Bianco","offer_id":61538979905870,"sku":null,"price":279.99,"currency_code":"EUR","in_stock":true},{"title":"Blu Petrolio","offer_id":61538979938638,"sku":null,"price":279.99,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0818\/9847\/1758\/files\/file_000000008eb082109af8d3c35f2d4f88.png?v=1793788715"}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0818\/9847\/1758\/collections\/file_00000000ec448243b2707e3b31ab872c.png?v=1793805383","url":"https:\/\/peteliashop.com\/collections\/orologi-automatici.oembed","provider":"Petelia","version":"1.0","type":"link"}