{"id":10,"date":"2026-03-27T14:39:02","date_gmt":"2026-03-27T14:39:02","guid":{"rendered":"https:\/\/spiritual-activity.org\/?page_id=10"},"modified":"2026-04-14T13:54:02","modified_gmt":"2026-04-14T13:54:02","slug":"anmeldung-basic-exercises","status":"publish","type":"page","link":"https:\/\/spiritual-activity.org\/it\/anmeldung-basic-exercises\/","title":{"rendered":"Anmeldung Basic Exercises"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"10\" class=\"elementor elementor-10\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5d2dcf2 e-flex e-con-boxed e-con e-parent\" data-id=\"5d2dcf2\" 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-ac485d5 elementor-widget elementor-widget-html\" data-id=\"ac485d5\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\n\/* ============================================================\n   BASIC EXERCISES \u2013 HEADER WIDGET (Anmeldeseite)\n   ============================================================ *\/\n\n#be-nav {\n  position: fixed;\n  top: 0; left: 0; right: 0;\n  z-index: 9999;\n  padding: 12px 2.5rem;\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n  background: rgba(245,250,246,0.93);\n  backdrop-filter: blur(12px);\n  -webkit-backdrop-filter: blur(12px);\n  border-bottom: 1px solid rgba(26,51,37,0.10);\n  font-family: 'DM Sans', system-ui, sans-serif;\n  box-sizing: border-box;\n}\n\n#be-nav * { box-sizing: border-box; }\n\n\/* Logo *\/\n#be-nav-logo {\n  display: flex;\n  align-items: center;\n  flex-shrink: 0;\n}\n\n#be-nav-logo img {\n  height: 38px;\n  width: auto;\n  display: block;\n}\n\n\/* Rechte Seite: Nav *\/\n#be-nav-right {\n  display: flex;\n  align-items: center;\n  gap: 1.5rem;\n}\n\n\/* Link-Liste *\/\n#be-nav ul {\n  display: flex;\n  gap: 2rem;\n  list-style: none;\n  align-items: center;\n  margin: 0; padding: 0;\n}\n\n#be-nav ul li a {\n  font-size: 16px;\n  font-weight: 400;\n  letter-spacing: 0.13em;\n  text-transform: uppercase;\n  text-decoration: none;\n  color: #0C1E14;\n  transition: color 0.2s;\n}\n\n#be-nav ul li a:hover { color: #27703F; }\n\n\/* CTA-Button *\/\n#be-nav ul li a.be-cta {\n  background: #0C1E14;\n  color: #F5FAF6 !important;\n  padding: 0.65rem 1.5rem;\n  border-radius: 2px;\n  font-size: 16px;\n  letter-spacing: 0.11em;\n  transition: background 0.2s;\n}\n\n#be-nav ul li a.be-cta:hover {\n  background: #27703F;\n  color: #F5FAF6 !important;\n}\n\n\/* Sprachumschalter *\/\n#be-nav .be-lang {\n  display: flex;\n  align-items: center;\n  font-size: 14px;\n}\n\n\/* Hamburger *\/\n#be-hamburger {\n  display: none;\n  flex-direction: column;\n  gap: 5px;\n  cursor: pointer;\n  padding: 4px;\n  background: none;\n  border: none;\n  position: relative;\n  z-index: 99999;\n}\n\n#be-hamburger span {\n  display: block;\n  width: 22px;\n  height: 1.5px;\n  background: #0C1E14;\n  transition: transform 0.25s, opacity 0.2s;\n}\n\n\/* Mobile Menu *\/\n#be-mobile-menu {\n  display: none;\n  position: fixed;\n  top: 0; left: 0; right: 0; bottom: 0;\n  z-index: 9998;\n  background: rgba(245,250,246,0.98);\n  flex-direction: column;\n  justify-content: center;\n  align-items: center;\n  gap: 2rem;\n  font-family: 'DM Sans', system-ui, sans-serif;\n}\n\n#be-mobile-menu.be-open { display: flex; }\n\n#be-mobile-menu a {\n  font-size: 1.1rem;\n  font-weight: 400;\n  letter-spacing: 0.12em;\n  text-transform: uppercase;\n  text-decoration: none;\n  color: #2A4A35;\n}\n\n#be-mobile-menu a.be-cta-mobile {\n  background: #0C1E14;\n  color: #F5FAF6 !important;\n  padding: 0.8rem 2.2rem;\n  border-radius: 2px;\n  margin-top: 0.5rem;\n}\n\n\/* Sprachumschalter im Mobile-Men\u00fc *\/\n#be-mobile-menu .be-lang-mobile {\n  margin-top: 0.5rem;\n}\n\n\/* Hamburger bleibt sichtbar wenn Men\u00fc offen \u2013 fungiert als X *\/\n#be-nav.be-menu-open {\n  z-index: 99999;\n  background: transparent;\n  border-bottom: none;\n  backdrop-filter: none;\n  -webkit-backdrop-filter: none;\n}\n\n#be-nav.be-menu-open #be-hamburger {\n  position: fixed;\n  top: 1rem;\n  right: 1.5rem;\n}\n#be-nav.be-menu-open #be-hamburger span:nth-child(1) {\n  transform: translateY(6.5px) rotate(45deg);\n}\n#be-nav.be-menu-open #be-hamburger span:nth-child(2) {\n  opacity: 0;\n}\n#be-nav.be-menu-open #be-hamburger span:nth-child(3) {\n  transform: translateY(-6.5px) rotate(-45deg);\n}\n\n\/* Responsive *\/\n@media (max-width: 768px) {\n  #be-nav { padding: 1rem 1.5rem; }\n  #be-nav ul { display: none; }\n  #be-nav .be-lang { display: none; }\n  #be-hamburger { display: flex; }\n  #be-mobile-menu > a { font-size: 2.2rem !important; }\n  #be-mobile-menu a.be-cta-mobile { font-size: 2.2rem !important; padding: 1rem 3rem; }\n}\n\n@media (min-width: 769px) {\n  #be-nav { padding: 20px 2.5rem; }\n  #be-nav-logo img { height: 42px; }\n}\n<\/style>\n\n<nav id=\"be-nav\">\n\n  <!-- Logo links -->\n  <a id=\"be-nav-logo\" href=\"https:\/\/basic-exercises.com\" aria-label=\"Basic Exercises \u2013 Startseite\">\n    <img decoding=\"async\" src=\"https:\/\/basic-exercises.com\/wp-content\/uploads\/2026\/03\/BE-scaled.png\"\n         alt=\"Basic Exercises Logo\"\n         loading=\"eager\">\n  <\/a>\n\n  <!-- Rechte Seite: Links + Hamburger -->\n  <div id=\"be-nav-right\">\n    <ul>\n      <li><a class=\"be-home-link\" data-anchor=\"kurs\">Kurs<\/a><\/li>\n      <li><a class=\"be-home-link\" data-anchor=\"exercises\">\u00dcbungen<\/a><\/li>\n      <li><a class=\"be-home-link\" data-anchor=\"ablauf\">Ablauf<\/a><\/li>\n      <li><a class=\"be-home-link\" data-anchor=\"kontakt\">Kontakt<\/a><\/li>\n      <li><a class=\"be-home-link be-cta\" data-anchor=\"anmeldung\">Anmelden<\/a><\/li>\n      <li class=\"be-lang\"><\/li>\n    <\/ul>\n\n    <button id=\"be-hamburger\" aria-label=\"Men\u00fc \u00f6ffnen\">\n      <span><\/span><span><\/span><span><\/span>\n    <\/button>\n  <\/div>\n\n<\/nav>\n\n<!-- Mobile Vollbild-Men\u00fc -->\n<div id=\"be-mobile-menu\">\n  <a class=\"be-home-link\" data-anchor=\"kurs\"       onclick=\"beCloseMenu()\">Kurs<\/a>\n  <a class=\"be-home-link\" data-anchor=\"exercises\"  onclick=\"beCloseMenu()\">\u00dcbungen<\/a>\n  <a class=\"be-home-link\" data-anchor=\"ablauf\"     onclick=\"beCloseMenu()\">Ablauf<\/a>\n  <a class=\"be-home-link\" data-anchor=\"kontakt\"    onclick=\"beCloseMenu()\">Kontakt<\/a>\n  <a class=\"be-home-link be-cta-mobile\" data-anchor=\"anmeldung\" onclick=\"beCloseMenu()\">Anmelden<\/a>\n  <div class=\"be-lang-mobile\"><\/div>\n<\/div>\n\n\n<script>\ndocument.addEventListener('DOMContentLoaded', function() {\n\n  \/\/ Sprachpr\u00e4fix ermitteln\n  var path = window.location.pathname;\n  var langPrefix = '';\n  if (path.indexOf('\/en\/') !== -1) {\n    langPrefix = '\/en';\n  } else if (path.indexOf('\/es\/') !== -1) {\n    langPrefix = '\/es';\n  } else if (path.indexOf('\/it\/') !== -1) {\n    langPrefix = '\/it';\n  }\n\n  var base = 'https:\/\/basic-exercises.com' + langPrefix;\n\n  \/\/ Logo-Link anpassen\n  var logoLink = document.getElementById('be-nav-logo');\n  if (logoLink) {\n    logoLink.href = base + '\/';\n  }\n\n  \/\/ Alle Navigations-Links anpassen\n  var links = document.querySelectorAll('.be-home-link');\n  links.forEach(function(link) {\n    var anchor = link.getAttribute('data-anchor');\n    link.href = base + '\/#' + anchor;\n  });\n\n  \/\/ Hamburger & Mobile-Men\u00fc\n  var burger = document.getElementById('be-hamburger');\n  var menu   = document.getElementById('be-mobile-menu');\n\n  if (burger) burger.addEventListener('click', function() {\n    if (menu.classList.contains('be-open')) {\n      beCloseMenu();\n    } else {\n      beOpenMenu();\n    }\n  });\n\n  if (menu) menu.addEventListener('click', function(e) {\n    if (e.target === menu) beCloseMenu();\n  });\n\n});\n\nfunction beOpenMenu() {\n  document.getElementById('be-mobile-menu').classList.add('be-open');\n  document.getElementById('be-nav').classList.add('be-menu-open');\n  document.body.style.overflow = 'hidden';\n}\n\nfunction beCloseMenu() {\n  document.getElementById('be-mobile-menu').classList.remove('be-open');\n  document.getElementById('be-nav').classList.remove('be-menu-open');\n  document.body.style.overflow = '';\n}\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-00a4775 e-flex e-con-boxed e-con e-parent\" data-id=\"00a4775\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-8990b7b e-con-full e-flex e-con e-child\" data-id=\"8990b7b\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-b77d79f elementor-widget elementor-widget-html\" data-id=\"b77d79f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div style=\"font-size:14px; font-weight:500; letter-spacing:0.22em; text-transform:uppercase; color:#27703F; display:flex; align-items:center; gap:0.8rem;\">\n  <div style=\"width:24px; height:1px; background:#27703F; flex-shrink:0;\"><\/div>\n  Preise & Anmeldung\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-cdd5931 elementor-widget elementor-widget-html\" data-id=\"cdd5931\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\n@import url('https:\/\/fonts.googleapis.com\/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;1,300;1,400&display=swap');\n<\/style>\n<div style=\"font-family:'Cormorant Garamond',Georgia,serif; font-size:clamp(32px,4vw,52px); font-weight:300; line-height:1.15; color:#0C1E14;\">\n  Wir freuen uns \u00fcber Deine <em style=\"font-style:italic; color:#27703F;\">Anmeldung<\/em>\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1bd5448 elementor-widget elementor-widget-text-editor\" data-id=\"1bd5448\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p><span>Geh mit uns und vielen Menschen weltweit den Weg durch die sechs Seelen\u00fcbungen.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d5a3b43 elementor-widget elementor-widget-html\" data-id=\"d5a3b43\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div style=\"display:flex; gap:2.5rem; flex-wrap:wrap;\">\n  <div>\n    <div style=\"font-size:13px; font-weight:500; letter-spacing:0.15em; text-transform:uppercase; color:#27703F; margin-bottom:4px;\">Start<\/div>\n    <div style=\"font-family:'Cormorant Garamond', Georgia, serif; font-size:18px; font-weight:400; color:#0C1E14;\">17. Mai 2026<\/div>\n  <\/div>\n  <div>\n    <div style=\"font-size:13px; font-weight:500; letter-spacing:0.15em; text-transform:uppercase; color:#27703F; margin-bottom:4px;\">Ende<\/div>\n    <div style=\"font-family:'Cormorant Garamond', Georgia, serif; font-size:18px; font-weight:400; color:#0C1E14;\">9. August 2026<\/div>\n  <\/div>\n  <div>\n    <div style=\"font-size:13px; font-weight:500; letter-spacing:0.15em; text-transform:uppercase; color:#27703F; margin-bottom:4px;\">Dauer<\/div>\n    <div style=\"font-family:'Cormorant Garamond', Georgia, serif; font-size:18px; font-weight:400; color:#0C1E14;\">6 \u00d7 2 Wochen<\/div>\n  <\/div>\n  <div>\n    <div style=\"font-size:13px; font-weight:500; letter-spacing:0.15em; text-transform:uppercase; color:#27703F; margin-bottom:4px;\">Format<\/div>\n    <div style=\"font-family:'Cormorant Garamond', Georgia, serif; font-size:18px; font-weight:400; color:#0C1E14;\">Meditativer Schulungsweg<\/div>\n  <\/div>\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-7ca8198 e-con-full e-flex e-con e-child\" data-id=\"7ca8198\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-15dbd51 elementor-widget elementor-widget-spacer\" data-id=\"15dbd51\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"spacer.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-2ee60ee e-flex e-con-boxed e-con e-parent\" data-id=\"2ee60ee\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2dfbe22 elementor-widget elementor-widget-html\" data-id=\"2dfbe22\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\n@import url('https:\/\/fonts.googleapis.com\/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;1,300;1,400&family=DM+Sans:wght@300;400;500&display=swap');\n\n.pk-wrap {\n  font-family: 'DM Sans', system-ui, sans-serif;\n  color: #0C1E14;\n  max-width: 1100px;\n  margin: 0 auto;\n}\n\n.pk-label {\n  font-size: 13px;\n  font-weight: 500;\n  letter-spacing: 0.22em;\n  text-transform: uppercase;\n  color: #27703F;\n  display: flex;\n  align-items: center;\n  gap: 0.8rem;\n  margin-bottom: 1rem;\n}\n.pk-label::before {\n  content: '';\n  display: block;\n  width: 24px;\n  height: 1px;\n  background: #27703F;\n  flex-shrink: 0;\n}\n\n.pk-title {\n  font-family: 'Cormorant Garamond', Georgia, serif;\n  font-size: clamp(32px, 4vw, 52px);\n  font-weight: 300;\n  line-height: 1.15;\n  color: #0C1E14;\n  margin: 0 0 2rem;\n}\n.pk-title em {\n  font-style: italic;\n  color: #27703F;\n}\n\n.pk-intro {\n  font-size: 16px;\n  font-weight: 300;\n  color: #0C1E14;\n  line-height: 1.8;\n  max-width: 680px;\n}\n<\/style>\n\n<div class=\"pk-wrap\">\n  <div class=\"pk-label\">Teilnahmebeitrag<\/div>\n  <div class=\"pk-title\">Preis<em>transparenz<\/em><\/div>\n  <div class=\"pk-intro\">\n    Der Kurs wird getragen von dem Institute for Spiritual Activity sowie unserem Verein: Leben im Denken e.V. und unterst\u00fctzt von einem gro\u00dfen ehrenamtlichen Team. <br><br>\n\nUm den Kurs allen Menschen zu erm\u00f6glichen und gleichzeitig dieses und weitere Projekte gestalten zu k\u00f6nnen, haben wir ein solidarisches Preismodell entwickelt. Je nachdem, in welchem Land Du lebst und wie Deine wirtschaftliche Situation ist, kannst Du Deinen Teilnahmebeitrag f\u00fcr den Sommerkurs innerhalb einer gewissen Bandbreite w\u00e4hlen. Hierf\u00fcr arbeiten wir mit einem transparenten Preismodell, das vier Kategorien umfasst \u2013 orientiert an Lebenshaltungskosten und Einkommensverh\u00e4ltnissen in verschiedenen Teilen der Welt. Mit einem h\u00f6heren Beitrag unterst\u00fctzt Du nicht nur unsere Initiative, sondern erm\u00f6glichst uns auch, das Projekt solidarisch in die Welt zu tragen. <br><br>\n\nIn Deinem Beitrag sind alle Angebote enthalten, inklusive Kartenset, Konferenzen, Briefe, Organisation und Versand innerhalb der EU. F\u00fcr L\u00e4nder au\u00dferhalb der EU m\u00fcssen wir leider eine Versandkostenpauschale von 15\u20ac aufschlagen. Schreib uns gerne ab, wenn der Preis zu hoch f\u00fcr Dich ist, dann finden wir eine individuelle L\u00f6sung. \n\n  <\/div>\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-0059a77 e-con-full e-flex e-con e-parent\" data-id=\"0059a77\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" data-no-translation=\"\">\n\t\t\t\t<div class=\"elementor-element elementor-element-80f3ab5 elementor-widget elementor-widget-html\" data-id=\"80f3ab5\" data-element_type=\"widget\" data-e-type=\"widget\" data-no-translation=\"\" data-widget_type=\"html.default\">\n\t\t\t\t\t<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Tinos:ital,wght@0,400;0,700;1,400&display=swap\" rel=\"stylesheet\">\n\n<style>\n  .ecwid-ProductBrowser,\n  .ecwid-productbrowser,\n  div[id^=\"my-store\"],\n  .ecwid:not(#sw-host-it) {\n    visibility: hidden !important;\n    height: 0 !important;\n    max-height: 0 !important;\n    overflow: hidden !important;\n    padding: 0 !important;\n    margin: 0 !important;\n    position: absolute !important;\n    pointer-events: none !important;\n  }\n<\/style>\n\n<div id=\"sw-overlay-it\" style=\"display:none; position:fixed; inset:0; background:rgba(245,250,246,0.92); z-index:99999; flex-direction:column; align-items:center; justify-content:center; gap:20px;\">\n  <div style=\"width:52px; height:52px; border:4px solid #B8DEC4; border-top-color:#0C1E14; border-radius:50%; animation:sw-spin-it 0.8s linear infinite;\"><\/div>\n  <div style=\"font-family:'Tinos',Georgia,serif; font-size:22px; color:#27703F;\">Caricamento checkout\u2026<\/div>\n<\/div>\n<style>\n  @keyframes sw-spin-it { to { transform: rotate(360deg); } }\n<\/style>\n\n<div id=\"sw-host-it\"><\/div>\n\n<script>\n(function () {\n\n  const OVERLAY_ID    = \"sw-overlay-it\";\n  const SHOP_CART_URL = \"https:\/\/spiritual-activity.org\/it\/store\/cart\";\n\n  const PRODUCTS = {\n    cat1: 642647429,\n    cat2: 824747823,\n    cat3: 824743837,\n    cat4: 824743861\n  };\n  const RANGES = {\n    cat1: { min: 120, max: 600 },\n    cat2: { min: 90,  max: 500 },\n    cat3: { min: 65,  max: 500 },\n    cat4: { min: 45,  max: 500 }\n  };\n  const ORIENTIERUNG = {\n    cat1: { reduced: 120, base: 180, support: 360 },\n    cat2: { reduced: 90,  base: 140, support: 280 },\n    cat3: { reduced: 65,  base: 100, support: 200 },\n    cat4: { reduced: 45,  base: 80,  support: 180 }\n  };\n\n  const EU_PLUS_CH = new Set([\n    \"AT\",\"BE\",\"BG\",\"CY\",\"CZ\",\"DE\",\"DK\",\"EE\",\"ES\",\"FI\",\"FR\",\"GR\",\"HR\",\n    \"HU\",\"IE\",\"IT\",\"LT\",\"LU\",\"LV\",\"MT\",\"NL\",\"PL\",\"PT\",\"RO\",\"SE\",\"SI\",\"SK\",\n    \"CH\"\n  ]);\n\n  function needsShipping(countryCode) {\n    return countryCode && !EU_PLUS_CH.has(countryCode);\n  }\n\n  \/\/ German key \u2013 must match Ecwid option name exactly\n  const OPT_COMM_LANG = \"In welcher Sprache nimmst Du teil?\";\n\n  const COUNTRY_NAME_OVERRIDES = {\n    \"HK\":\"Hong Kong\",\"MO\":\"Macau\",\"TW\":\"Taiwan\",\"AE\":\"United Arab Emirates\",\n    \"US\":\"USA\",\"GB\":\"United Kingdom\",\"GB-SCT\":\"Scotland\",\n    \"KR\":\"South Korea\",\"SA\":\"Saudi Arabia\",\n    \"MD\":\"Moldova\",\"PS\":\"Palestine\",\"CD\":\"Congo (Kinshasa)\",\"CG\":\"Congo (Brazzaville)\",\n    \"ST\":\"S\u00e3o Tom\u00e9 and Pr\u00edncipe\",\"CI\":\"C\u00f4te d'Ivoire\",\"TL\":\"Timor-Leste\",\n    \"CV\":\"Cabo Verde\",\"SZ\":\"Eswatini\",\"FM\":\"Micronesia\",\"MH\":\"Marshall Islands\",\n    \"VC\":\"St. Vincent and the Grenadines\",\"LC\":\"St. Lucia\",\"KN\":\"St. Kitts and Nevis\",\n    \"AG\":\"Antigua and Barbuda\",\"TT\":\"Trinidad and Tobago\",\"BA\":\"Bosnia and Herzegovina\",\n    \"MK\":\"North Macedonia\",\"GQ\":\"Equatorial Guinea\",\"GW\":\"Guinea-Bissau\",\n    \"CF\":\"Central African Republic\",\"SB\":\"Solomon Islands\",\"PG\":\"Papua New Guinea\",\n    \"DO\":\"Dominican Republic\",\"XK\":\"Kosovo\"\n  };\n\n  const COUNTRIES = {\n    cat1: [\"KR\",\"CY\",\"CA\",\"FR\",\"FI\",\"BH\",\"AU\",\"AD\",\"SE\",\"DE\",\"SA\",\"AT\",\"BE\",\"HK\",\"MT\",\"IS\",\"SM\",\"NL\",\"DK\",\"TW\",\"AE\",\"US\",\"BN\",\"CH\",\"NO\",\"GY\",\"QA\",\"MO\",\"IE\",\"LU\",\"SG\",\"LI\",\"GB\",\"GB-SCT\"],\n    cat2: [\"ME\",\"CL\",\"TT\",\"MV\",\"UY\",\"BS\",\"OM\",\"SC\",\"BG\",\"MY\",\"PA\",\"TR\",\"LV\",\"GR\",\"KZ\",\"SK\",\"HU\",\"RU\",\"RO\",\"EE\",\"AW\",\"PT\",\"PR\",\"HR\",\"KW\",\"JP\",\"NZ\",\"PL\",\"IL\",\"ES\",\"LT\",\"SI\",\"CZ\",\"IT\"],\n    cat3: [\"BZ\",\"TN\",\"GT\",\"IQ\",\"ZA\",\"FJ\",\"EC\",\"LY\",\"ID\",\"VN\",\"BT\",\"DZ\",\"PE\",\"PW\",\"BW\",\"DM\",\"PY\",\"MD\",\"GQ\",\"MN\",\"UA\",\"VC\",\"IR\",\"GD\",\"EG\",\"CO\",\"SR\",\"TM\",\"BA\",\"BB\",\"BR\",\"AL\",\"AM\",\"GA\",\"MX\",\"AZ\",\"TH\",\"LC\",\"CN\",\"MK\",\"DO\",\"AG\",\"AR\",\"GE\",\"CR\",\"MU\",\"RS\",\"BY\",\"KN\",\"XK\"],\n    cat4: [\"BI\",\"SS\",\"CF\",\"YE\",\"MZ\",\"MW\",\"SO\",\"CD\",\"LR\",\"MG\",\"NE\",\"AF\",\"SD\",\"SB\",\"ML\",\"HT\",\"VU\",\"BF\",\"LS\",\"TD\",\"GW\",\"TG\",\"GM\",\"KI\",\"SL\",\"PG\",\"UG\",\"KM\",\"PS\",\"RW\",\"TZ\",\"ET\",\"ZM\",\"FM\",\"BJ\",\"GN\",\"TL\",\"MM\",\"SN\",\"CM\",\"TJ\",\"TV\",\"NP\",\"CG\",\"ST\",\"PK\",\"KE\",\"ZW\",\"MH\",\"HN\",\"TO\",\"CI\",\"WS\",\"GH\",\"VE\",\"KH\",\"MR\",\"KG\",\"NI\",\"NG\",\"DJ\",\"AO\",\"LA\",\"BD\",\"BO\",\"MA\",\"JO\",\"LB\",\"NR\",\"IN\",\"NA\",\"CV\",\"UZ\",\"PH\",\"SZ\",\"JM\",\"SV\",\"LK\"]\n  };\n\n  const host = document.getElementById(\"sw-host-it\");\n  const shadow = host.attachShadow({ mode: \"open\" });\n\n  const fontLink = document.createElement(\"link\");\n  fontLink.rel = \"stylesheet\";\n  fontLink.href = \"https:\/\/fonts.googleapis.com\/css2?family=Tinos:ital,wght@0,400;0,700;1,400&display=swap\";\n  shadow.appendChild(fontLink);\n\n  const styleEl = document.createElement(\"style\");\n  styleEl.textContent = `\n    :host {\n      display: block;\n      --bg:           #F5FAF6;\n      --card:         #FFFFFF;\n      --ink:          #0C1E14;\n      --ink-muted:    #27703F;\n      --accent:       #0C1E14;\n      --accent-light: #E6F2E8;\n      --border:       #C8E0CE;\n      --radius:       16px;\n      --radius-sm:    10px;\n    }\n\n    @keyframes wiz-spin { to { transform: rotate(360deg); } }\n\n    .sw-root {\n      font-family: 'Tinos', Georgia, serif;\n      font-size: 20px;\n      font-weight: 400;\n      color: var(--ink);\n      background: var(--bg);\n      padding: 32px 20px;\n      display: flex;\n      align-items: flex-start;\n      justify-content: center;\n    }\n\n    .sw-card {\n      background: var(--card);\n      border: 1px solid var(--border);\n      border-radius: 24px;\n      padding: 36px 32px;\n      width: 100%;\n      max-width: 780px;\n      box-shadow: 0 4px 24px rgba(12,30,20,0.08);\n      box-sizing: border-box;\n    }\n\n    @media (max-width: 480px) {\n      .sw-root { padding: 16px 10px; }\n      .sw-card { padding: 24px 16px; border-radius: 16px; }\n    }\n\n    .sw-progress { display: flex; gap: 8px; margin-bottom: 32px; }\n    .sw-progress-step { flex: 1; height: 4px; background: var(--border); border-radius: 999px; transition: background 0.35s; }\n    .sw-progress-step.active { background: var(--accent); }\n    .sw-progress-step.done   { background: var(--accent); opacity: 0.4; }\n\n    .sw-step-label {\n      font-size: 12px;\n      font-weight: 400;\n      letter-spacing: 0.08em;\n      text-transform: uppercase;\n      color: var(--ink-muted);\n      margin-bottom: 10px;\n    }\n\n    .sw-heading {\n      font-size: 26px;\n      font-weight: 500;\n      line-height: 1.2;\n      margin: 0 0 6px;\n      color: var(--accent);\n      letter-spacing: 0.01em;\n    }\n    .sw-subtext {\n      font-size: 18px;\n      font-weight: 400;\n      color: var(--ink-muted);\n      margin: 0 0 28px;\n      line-height: 1.6;\n    }\n\n    .sw-label {\n      display: block;\n      font-size: 18px;\n      font-weight: 700;\n      margin-bottom: 6px;\n      color: var(--ink);\n    }\n\n    .sw-select {\n      width: 100%;\n      padding: 13px 15px;\n      border: 1px solid var(--border);\n      border-radius: var(--radius-sm);\n      background: var(--bg);\n      font-family: 'Tinos', Georgia, serif;\n      font-size: 18px;\n      font-weight: 400;\n      color: var(--ink);\n      appearance: none;\n      background-image: url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%2327703F' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'\/%3E%3C\/svg%3E\");\n      background-repeat: no-repeat;\n      background-position: right 15px center;\n      transition: border-color 0.2s;\n      cursor: pointer;\n      box-sizing: border-box;\n    }\n    .sw-select:focus {\n      outline: none;\n      border-color: var(--accent);\n      box-shadow: 0 0 0 3px rgba(12,30,20,0.1);\n    }\n\n    .sw-infobox {\n      margin-top: 12px;\n      padding: 15px 17px;\n      border-radius: var(--radius-sm);\n      background: var(--accent-light);\n      border: 1px solid rgba(12,30,20,0.15);\n      font-size: 18px;\n      font-weight: 400;\n      line-height: 1.5;\n    }\n    .sw-infobox-title {\n      font-weight: 700;\n      font-size: 12px;\n      letter-spacing: 0.06em;\n      text-transform: uppercase;\n      color: var(--accent);\n      margin-bottom: 3px;\n    }\n\n    .sw-gap { height: 16px; }\n    .sw-divider { border: 0; border-top: 1px solid var(--border); margin: 30px 0 24px; }\n\n    .sw-range-header {\n      display: flex;\n      align-items: baseline;\n      justify-content: space-between;\n      margin-bottom: 22px;\n    }\n    .sw-range-header-label { font-weight: 700; font-size: 18px; }\n    .sw-amount-display { font-size: 36px; font-weight: 700; color: var(--ink); line-height: 1; }\n    .sw-amount-display span { font-size: 18px; font-weight: 400; margin-left: 3px; }\n\n    input[type=range].sw-range {\n      -webkit-appearance: none;\n      width: 100%;\n      height: 6px;\n      border-radius: 999px;\n      background: var(--border);\n      outline: none;\n      cursor: pointer;\n    }\n    input[type=range].sw-range::-webkit-slider-thumb {\n      -webkit-appearance: none;\n      width: 32px; height: 32px;\n      border-radius: 50%;\n      background: var(--accent);\n      box-shadow: 0 3px 10px rgba(12,30,20,0.3);\n      cursor: pointer;\n      transition: transform 0.15s;\n    }\n    input[type=range].sw-range::-webkit-slider-thumb:hover { transform: scale(1.1); }\n    input[type=range].sw-range::-moz-range-thumb {\n      width: 32px; height: 32px;\n      border-radius: 50%;\n      background: var(--accent);\n      border: none;\n      cursor: pointer;\n    }\n\n    .sw-range-wrap { position: relative; }\n\n    .sw-markers {\n      position: relative;\n      height: 56px;\n      margin-bottom: 8px;\n      margin-left: 16px;\n      margin-right: 16px;\n    }\n    .sw-marker {\n      position: absolute;\n      transform: translateX(-50%);\n      display: flex;\n      flex-direction: column;\n      align-items: center;\n      gap: 2px;\n      justify-content: flex-end;\n      height: 100%;\n      pointer-events: auto;\n      cursor: pointer;\n    }\n    .sw-marker-tick { width: 1px; height: 10px; background: var(--border); flex-shrink: 0; }\n    .sw-marker.active .sw-marker-tick { background: var(--accent); opacity: 0.5; }\n    .sw-marker-label {\n      font-size: 11px; font-weight: 400; color: var(--ink-muted);\n      white-space: nowrap; line-height: 1.2; text-align: center; order: -2;\n    }\n    .sw-marker-amount {\n      font-size: 13px; font-weight: 700; color: var(--ink-muted); order: -1;\n    }\n    .sw-marker.active .sw-marker-label,\n    .sw-marker.active .sw-marker-amount { color: var(--accent); }\n\n    @media (max-width: 540px) {\n      .sw-markers { display: none; }\n      .sw-markers-mobile { display: flex !important; }\n    }\n    .sw-markers-mobile {\n      display: none;\n      flex-direction: column;\n      gap: 0;\n      margin: 12px 0 4px;\n      border: 1px solid var(--border);\n      border-radius: var(--radius-sm);\n      overflow: hidden;\n    }\n    .sw-marker-mobile {\n      display: flex;\n      align-items: center;\n      justify-content: space-between;\n      padding: 10px 14px;\n      cursor: pointer;\n      border-bottom: 1px solid var(--border);\n      transition: background 0.15s;\n      font-family: 'Tinos', Georgia, serif;\n    }\n    .sw-marker-mobile:last-child { border-bottom: 0; }\n    .sw-marker-mobile:hover { background: var(--accent-light); }\n    .sw-marker-mobile.active { background: var(--accent-light); }\n    .sw-marker-mobile-label { font-size: 15px; font-weight: 400; color: var(--ink-muted); }\n    .sw-marker-mobile.active .sw-marker-mobile-label { color: var(--accent); font-weight: 700; }\n    .sw-marker-mobile-amount { font-size: 16px; font-weight: 700; color: var(--ink-muted); }\n    .sw-marker-mobile.active .sw-marker-mobile-amount { color: var(--accent); }\n\n    .sw-total-box {\n      padding: 17px 20px;\n      background: var(--accent-light);\n      border: 1px solid rgba(12,30,20,0.2);\n      border-radius: var(--radius-sm);\n      display: flex;\n      align-items: center;\n      justify-content: space-between;\n      margin-top: 16px;\n    }\n    .sw-total-label  { font-size: 12px; font-weight: 400; color: var(--accent); letter-spacing: 0.04em; text-transform: uppercase; }\n    .sw-total-sub    { font-size: 12px; color: var(--accent); opacity: 0.65; margin-top: 2px; }\n    .sw-total-amount { font-size: 32px; font-weight: 700; color: var(--accent); }\n\n    .sw-btn-row { display: flex; gap: 10px; margin-top: 24px; }\n    .sw-btn {\n      flex: 1; padding: 15px 17px;\n      border-radius: var(--radius-sm);\n      font-family: 'Tinos', Georgia, serif;\n      font-size: 18px; font-weight: 700;\n      cursor: pointer; transition: all 0.2s; border: 0;\n    }\n    .sw-btn-primary { background: var(--accent); color: #fff; }\n    .sw-btn-primary:hover { background: #27703F; transform: translateY(-1px); }\n    .sw-btn-primary:disabled { opacity: 0.4; cursor: not-allowed; transform: none; }\n    .sw-btn-secondary { background: transparent; color: var(--ink); border: 1px solid var(--border); }\n    .sw-btn-secondary:hover { background: var(--bg); }\n\n    .sw-error {\n      display: none; margin-top: 15px; padding: 13px 15px;\n      border-radius: var(--radius-sm);\n      background: #FFF3F3; border: 1px solid rgba(220,30,30,0.2);\n      color: #8A1F1F; font-size: 18px; font-weight: 400;\n      line-height: 1.5; white-space: pre-wrap;\n    }\n\n    .wiz-spinner {\n      display: inline-block; width: 16px; height: 16px;\n      border: 2px solid rgba(255,255,255,0.4); border-top-color: #fff;\n      border-radius: 50%; animation: wiz-spin 0.7s linear infinite;\n      vertical-align: middle; margin-right: 8px;\n    }\n\n    .sw-country-search-wrap { position: relative; margin-bottom: 10px; }\n    .sw-country-search-icon { position: absolute; left: 18px; top: 50%; transform: translateY(-50%); color: var(--ink-muted); pointer-events: none; opacity: 0.5; }\n    .sw-country-search {\n      width: 100%; padding: 13px 15px 13px 54px;\n      border: 1px solid var(--border); border-radius: var(--radius-sm);\n      background: var(--bg);\n      font-family: 'Tinos', Georgia, serif;\n      font-size: 18px; font-weight: 400; color: var(--ink);\n      transition: border-color 0.2s; box-sizing: border-box;\n    }\n    .sw-country-search:focus { outline: none; border-color: var(--accent); box-shadow: 0 0 0 3px rgba(12,30,20,0.1); }\n\n    .sw-country-list {\n      max-height: 240px; overflow-y: auto;\n      border: 1px solid var(--border);\n      border-radius: var(--radius-sm);\n      background: var(--bg);\n    }\n    .sw-country-item {\n      padding: 11px 15px; cursor: pointer;\n      font-family: 'Tinos', Georgia, serif;\n      font-size: 18px; font-weight: 400;\n      display: flex; justify-content: space-between; align-items: center;\n      transition: background 0.15s;\n      border-bottom: 1px solid var(--border);\n    }\n    .sw-country-item:last-child { border-bottom: 0; }\n    .sw-country-item:hover { background: var(--accent-light); }\n    .sw-country-item.selected { background: var(--accent-light); font-weight: 700; }\n    .sw-country-item-cat { font-size: 12px; color: var(--ink-muted); background: var(--border); padding: 2px 8px; border-radius: 999px; }\n    .sw-country-empty { padding: 15px; font-size: 18px; color: var(--ink-muted); text-align: center; }\n\n    .sw-step { display: none; }\n    .sw-step.active { display: block; }\n  `;\n  shadow.appendChild(styleEl);\n\n  const wrapper = document.createElement(\"div\");\n  wrapper.innerHTML = `\n    <div class=\"sw-root\">\n      <div class=\"sw-card\">\n\n        <div class=\"sw-progress\">\n          <div class=\"sw-progress-step\" id=\"sw-prog-1-it\"><\/div>\n          <div class=\"sw-progress-step\" id=\"sw-prog-2-it\"><\/div>\n          <div class=\"sw-progress-step\" id=\"sw-prog-3-it\"><\/div>\n          <div class=\"sw-progress-step\" id=\"sw-prog-4-it\"><\/div>\n        <\/div>\n\n        <!-- STEP 1 -->\n        <div class=\"sw-step active\" id=\"sw-step-1-it\">\n          <div class=\"sw-step-label\">Passo 1 di 4<\/div>\n          <h2 class=\"sw-heading\">Benvenuto\/a<\/h2>\n          <p class=\"sw-subtext\">In pochi passi selezionerai il tuo paese, la lingua e il contributo \u2013 poi passerai direttamente al checkout.<\/p>\n          <button class=\"sw-btn sw-btn-primary\" id=\"sw-btn-1-next-it\" style=\"width:100%;\">Prezzi e iscrizione<\/button>\n        <\/div>\n\n        <!-- STEP 2 -->\n        <div class=\"sw-step\" id=\"sw-step-2-it\">\n          <div class=\"sw-step-label\">Passo 2 di 4<\/div>\n          <h2 class=\"sw-heading\">Dove vivi?<\/h2>\n          <label class=\"sw-label\">Paese<\/label>\n          <div class=\"sw-country-search-wrap\">\n            <svg class=\"sw-country-search-icon\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><circle cx=\"11\" cy=\"11\" r=\"8\"\/><path d=\"m21 21-4.35-4.35\"\/><\/svg>\n            <input type=\"text\" class=\"sw-country-search\" id=\"sw-country-search-it\" placeholder=\"Cerca il tuo paese\u2026\" autocomplete=\"off\">\n          <\/div>\n          <div class=\"sw-country-list\" id=\"sw-country-list-it\"><\/div>\n          <input type=\"hidden\" id=\"sw-country-it\">\n          <div class=\"sw-infobox\" id=\"sw-catInfo-it\">\n            <div class=\"sw-infobox-title\">Categoria di prezzo<\/div>\n            <div id=\"sw-catText-it\">Seleziona prima un paese.<\/div>\n          <\/div>\n          <div class=\"sw-btn-row\">\n            <button class=\"sw-btn sw-btn-secondary\" id=\"sw-btn-2-back-it\">Indietro<\/button>\n            <button class=\"sw-btn sw-btn-primary\" id=\"sw-btn-2-next-it\" disabled style=\"opacity:.4; cursor:not-allowed;\">Avanti<\/button>\n          <\/div>\n        <\/div>\n\n        <!-- STEP 3 -->\n        <div class=\"sw-step\" id=\"sw-step-3-it\">\n          <div class=\"sw-step-label\">Passo 3 di 4<\/div>\n          <h2 class=\"sw-heading\">Dettagli<\/h2>\n          <label class=\"sw-label\" for=\"sw-commLang-it\">In quale lingua partecipi?<\/label>\n          <select class=\"sw-select\" id=\"sw-commLang-it\">\n            <option value=\"\" selected disabled>Seleziona\u2026<\/option>\n            <option value=\"Deutsch\">Tedesco<\/option>\n            <option value=\"Englisch\">Inglese<\/option>\n            <option value=\"Spanisch\">Spagnolo<\/option>\n            <option value=\"Italienisch\">Italiano<\/option>\n          <\/select>\n          <div class=\"sw-error\" id=\"sw-error-it\"><\/div>\n          <div class=\"sw-btn-row\">\n            <button class=\"sw-btn sw-btn-secondary\" id=\"sw-btn-3-back-it\">Indietro<\/button>\n            <button class=\"sw-btn sw-btn-primary\" id=\"sw-btn-3-next-it\">Avanti<\/button>\n          <\/div>\n        <\/div>\n\n        <!-- STEP 4 -->\n        <div class=\"sw-step\" id=\"sw-step-4-it\">\n          <div class=\"sw-step-label\">Passo 4 di 4<\/div>\n          <h2 class=\"sw-heading\">Seleziona il contributo<\/h2>\n          <p class=\"sw-subtext\" id=\"sw-rangeHint-it\">Puoi scegliere qualsiasi importo.<\/p>\n\n          <div class=\"sw-range-header\">\n            <div class=\"sw-range-header-label\">Il tuo importo<\/div>\n            <div class=\"sw-amount-display\"><span id=\"sw-amountLabel-it\">180<\/span><span>\u20ac<\/span><\/div>\n          <\/div>\n\n          <div class=\"sw-range-wrap\">\n            <div class=\"sw-markers\" id=\"sw-markers-it\"><\/div>\n            <input type=\"range\" class=\"sw-range\" id=\"sw-amount-it\" min=\"0\" max=\"100\" step=\"0.5\" value=\"50\">\n            <p style=\"margin-top:18px; font-size:16px; color:#27703F; line-height:1.5; font-family:'Tinos',Georgia,serif;\">\n              Se hai bisogno di un ulteriore sconto, scrivici a:\n              <a href=\"mailto:info@basic-exercises.com\" style=\"color:#27703F; text-decoration:underline;\">info@basic-exercises.com<\/a>\n            <\/p>\n            <div class=\"sw-markers-mobile\" id=\"sw-markers-mobile-it\"><\/div>\n          <\/div>\n\n          <div class=\"sw-total-box\">\n            <div>\n              <div class=\"sw-total-label\">Totale<\/div>\n              <div id=\"sw-shipping-line-it\" style=\"display:none; font-weight:700; font-size:14px; color:#0C1E14; margin-bottom:3px;\">pi\u00f9 \u20ac15 spese di spedizione<\/div>\n              <div class=\"sw-total-sub\">incl. set di carte \u00b7 7 conferenze serali \u00b7 13 lettere<\/div>\n            <\/div>\n            <div class=\"sw-total-amount\"><span id=\"sw-totalLabel-it\">180<\/span>\u20ac<\/div>\n          <\/div>\n          <div class=\"sw-btn-row\">\n            <button class=\"sw-btn sw-btn-secondary\" id=\"sw-btn-4-back-it\">Indietro<\/button>\n            <button class=\"sw-btn sw-btn-primary\" id=\"sw-btn-checkout-it\">Iscriviti<\/button>\n          <\/div>\n        <\/div>\n\n      <\/div>\n    <\/div>\n  `;\n  shadow.appendChild(wrapper);\n\n  const $ = (id) => shadow.getElementById(id);\n\n  const COUNTRY_TO_CAT = {};\n  Object.keys(COUNTRIES).forEach(cat => COUNTRIES[cat].forEach(code => COUNTRY_TO_CAT[code] = cat));\n\n  function getCountryName(code) {\n    if (COUNTRY_NAME_OVERRIDES[code]) return COUNTRY_NAME_OVERRIDES[code];\n    if (code === \"XK\") return \"Kosovo\";\n    try { return new Intl.DisplayNames([\"it\"], { type: \"region\" }).of(code) || code; }\n    catch { return code; }\n  }\n\n  function getAllCountriesSorted() {\n    const all = [];\n    [\"cat1\",\"cat2\",\"cat3\",\"cat4\"].forEach(cat => {\n      COUNTRIES[cat]\n        .map(code => ({ code, name: getCountryName(code), cat }))\n        .sort((a, b) => a.name.localeCompare(b.name, \"it\"))\n        .forEach(c => all.push(c));\n    });\n    return all;\n  }\n\n  const state = {\n    country: \"\", category: \"cat1\", amount: ORIENTIERUNG.cat1.base,\n    commLang: \"\"\n  };\n\n  function showStep(n) {\n    for (let i = 1; i <= 4; i++) {\n      $(\"sw-step-\" + i + \"-it\").classList.toggle(\"active\", i === n);\n      const prog = $(\"sw-prog-\" + i + \"-it\");\n      if      (i < n)  prog.className = \"sw-progress-step done\";\n      else if (i === n) prog.className = \"sw-progress-step active\";\n      else             prog.className = \"sw-progress-step\";\n    }\n  }\n\n  function setNextEnabled(id, enabled) {\n    const b = $(id);\n    b.disabled = !enabled;\n    b.style.opacity = enabled ? \"1\" : \".4\";\n    b.style.cursor  = enabled ? \"pointer\" : \"not-allowed\";\n  }\n\n  function showError(msg) {\n    const el = $(\"sw-error-it\");\n    el.style.display = \"block\";\n    el.textContent = msg;\n  }\n  function clearError() {\n    const el = $(\"sw-error-it\");\n    el.style.display = \"none\";\n    el.textContent = \"\";\n  }\n\n  function setCheckoutLoading(loading) {\n    const btn = $(\"sw-btn-checkout-it\");\n    const overlay = document.getElementById(OVERLAY_ID);\n    if (loading) {\n      if (btn) {\n        btn.disabled = true;\n        btn.innerHTML = '<span class=\"wiz-spinner\"><\/span> In preparazione\u2026';\n        btn.style.opacity = \".8\";\n      }\n      if (overlay) overlay.style.display = \"flex\";\n    } else {\n      if (btn) {\n        btn.disabled = false;\n        btn.textContent = \"Iscriviti\";\n        btn.style.opacity = \"1\";\n      }\n      if (overlay) overlay.style.display = \"none\";\n    }\n  }\n\n  function showThankYou() {\n    const card = shadow.querySelector(\".sw-card\");\n    if (!card) return;\n    card.innerHTML = `\n      <div style=\"text-align:center; padding:20px 0;\">\n        <div style=\"font-size:56px; margin-bottom:16px; color:#27703F;\">\u2713<\/div>\n        <h2 style=\"font-family:'Tinos',Georgia,serif; font-size:26px; font-weight:500; margin:0 0 12px; color:#0C1E14;\">Grazie!<\/h2>\n        <p style=\"font-family:'Tinos',Georgia,serif; font-size:18px; color:#27703F; line-height:1.6; margin:0 0 24px;\">Il checkout \u00e8 in caricamento\u2026<br>Verrai reindirizzato a breve\u2026<\/p>\n        <div style=\"display:flex; justify-content:center;\">\n          <div style=\"width:36px; height:36px; border:4px solid #B8DEC4; border-top-color:#0C1E14; border-radius:50%; animation:wiz-spin 0.8s linear infinite;\"><\/div>\n        <\/div>\n      <\/div>`;\n  }\n\n  function getAnchors(cat) {\n    const r = RANGES[cat], o = ORIENTIERUNG[cat];\n    return [[0,r.min],[25,o.reduced],[50,o.base],[75,o.support],[100,r.max]];\n  }\n  function normToEuro(norm, cat) {\n    const a = getAnchors(cat);\n    for (let i = 0; i < a.length - 1; i++) {\n      if (norm <= a[i+1][0]) {\n        const t = (norm - a[i][0]) \/ (a[i+1][0] - a[i][0]);\n        return Math.round(a[i][1] + t * (a[i+1][1] - a[i][1]));\n      }\n    }\n    return a[a.length-1][1];\n  }\n  function euroToNorm(euro, cat) {\n    const a = getAnchors(cat);\n    for (let i = 0; i < a.length - 1; i++) {\n      const lo = a[i][1], hi = a[i+1][1];\n      if (euro <= hi) {\n        if (hi === lo) return a[i+1][0];\n        const t = (euro - lo) \/ (hi - lo);\n        return a[i][0] + t * (a[i+1][0] - a[i][0]);\n      }\n    }\n    return 100;\n  }\n\n  function getMarkerDefs(cat) {\n    const ori = ORIENTIERUNG[cat];\n    return [\n      { value: ori.reduced, label: \"Contributo ridotto\",    normPct: 25 },\n      { value: ori.base,    label: \"Contributo standard\",   normPct: 50 },\n      { value: ori.support, label: \"Contributo di sostegno\", normPct: 75 }\n    ];\n  }\n\n  function renderMarkers(cat) {\n    const markers = getMarkerDefs(cat);\n\n    const container = $(\"sw-markers-it\");\n    container.innerHTML = \"\";\n    markers.forEach(m => {\n      const div = document.createElement(\"div\");\n      div.className = \"sw-marker\" + (state.amount === m.value ? \" active\" : \"\");\n      div.style.left = m.normPct + \"%\";\n      div.innerHTML = `\n        <div class=\"sw-marker-tick\"><\/div>\n        <div class=\"sw-marker-amount\">${m.value}\u20ac<\/div>\n        <div class=\"sw-marker-label\">${m.label}<\/div>\n      `;\n      div.addEventListener(\"click\", () => selectMarkerValue(m.value));\n      container.appendChild(div);\n    });\n\n    const mobileContainer = $(\"sw-markers-mobile-it\");\n    mobileContainer.innerHTML = \"\";\n    markers.forEach(m => {\n      const div = document.createElement(\"div\");\n      div.className = \"sw-marker-mobile\" + (state.amount === m.value ? \" active\" : \"\");\n      div.innerHTML = `\n        <span class=\"sw-marker-mobile-label\">${m.label}<\/span>\n        <span class=\"sw-marker-mobile-amount\">${m.value}\u20ac<\/span>\n      `;\n      div.addEventListener(\"click\", () => selectMarkerValue(m.value));\n      mobileContainer.appendChild(div);\n    });\n  }\n\n  function selectMarkerValue(value) {\n    $(\"sw-amount-it\").value = euroToNorm(value, state.category);\n    state.amount = value;\n    $(\"sw-amountLabel-it\").textContent = value;\n    $(\"sw-totalLabel-it\").textContent = value;\n    const shippingLine = $(\"sw-shipping-line-it\");\n    if (shippingLine) shippingLine.style.display = needsShipping(state.country) ? \"block\" : \"none\";\n    renderMarkers(state.category);\n  }\n\n  function renderCountryList(filter) {\n    const list = $(\"sw-country-list-it\");\n    const q = (filter || \"\").toLowerCase().trim();\n    const filtered = q\n      ? getAllCountriesSorted().filter(c => c.name.toLowerCase().includes(q))\n      : getAllCountriesSorted();\n    list.innerHTML = \"\";\n    if (!filtered.length) {\n      list.innerHTML = '<div class=\"sw-country-empty\">Nessun paese trovato<\/div>';\n      return;\n    }\n    filtered.forEach(c => {\n      const div = document.createElement(\"div\");\n      div.className = \"sw-country-item\" + (state.country === c.code ? \" selected\" : \"\");\n      div.dataset.code = c.code;\n      div.innerHTML = `<span>${c.name}<\/span><span class=\"sw-country-item-cat\">Cat. ${c.cat.replace(\"cat\",\"\")}<\/span>`;\n      div.addEventListener(\"click\", () => selectCountry(c.code, c.cat, c.name));\n      list.appendChild(div);\n    });\n  }\n\n  function selectCountry(code, cat, name) {\n    state.country  = code;\n    state.category = cat;\n    $(\"sw-country-it\").value = code;\n    $(\"sw-country-search-it\").value = name;\n    $(\"sw-country-list-it\").innerHTML = \"\";\n    $(\"sw-catText-it\").textContent = {\n      cat1:\"Categoria di prezzo 1\", cat2:\"Categoria di prezzo 2\",\n      cat3:\"Categoria di prezzo 3\", cat4:\"Categoria di prezzo 4\"\n    }[cat] || cat;\n    setNextEnabled(\"sw-btn-2-next-it\", true);\n    applyRangeForCategory(cat);\n  }\n\n  function applyRangeForCategory(cat) {\n    $(\"sw-amount-it\").value = 50;\n    state.amount = ORIENTIERUNG[cat].base;\n    $(\"sw-rangeHint-it\").textContent = `Qui puoi scegliere il contributo che senti giusto per te. Con un contributo di sostegno permetti a persone con minori mezzi finanziari di partecipare e ci aiuti a portare questo progetto nel mondo.`;\n    renderMarkers(cat);\n    updateAmountUI(true);\n  }\n\n  function updateAmountUI(skipConvert) {\n    if (!skipConvert) {\n      state.amount = normToEuro(Number($(\"sw-amount-it\").value), state.category);\n    }\n    $(\"sw-amountLabel-it\").textContent = state.amount;\n    $(\"sw-totalLabel-it\").textContent = state.amount;\n    const shippingLine = $(\"sw-shipping-line-it\");\n    if (shippingLine) shippingLine.style.display = needsShipping(state.country) ? \"block\" : \"none\";\n    renderMarkers(state.category);\n  }\n\n  function ensureEcwidReady(timeoutMs = 12000) {\n    return new Promise((resolve, reject) => {\n      function isReady() {\n        return window.Ecwid &&\n               window.Ecwid.Cart &&\n               typeof window.Ecwid.Cart.addProduct === \"function\" &&\n               typeof window.Ecwid.Cart.clear === \"function\";\n      }\n      if (isReady()) return resolve(true);\n      let resolved = false;\n      function done() {\n        if (!resolved) { resolved = true; setTimeout(() => resolve(true), 200); }\n      }\n      if (window.Ecwid) { try { window.Ecwid.OnAPILoaded.add(done); } catch(e) {} }\n      const start = Date.now();\n      const t = setInterval(() => {\n        if (isReady()) { clearInterval(t); done(); }\n        else if (Date.now() - start > timeoutMs) {\n          clearInterval(t);\n          if (!resolved) { resolved = true; reject(new Error(\"Ecwid Cart API non disponibile dopo \" + (timeoutMs\/1000) + \"s.\")); }\n        }\n      }, 200);\n    });\n  }\n\n  function clearCartAsync() {\n    return new Promise(resolve => Ecwid.Cart.clear(() => resolve(true)));\n  }\n\n  function addProductAsync(payload, timeoutMs = 4000) {\n    return new Promise((resolve, reject) => {\n      let done = false;\n      const t = setTimeout(() => {\n        if (!done) { done = true; resolve({ product: null, cart: null, timedOut: true }); }\n      }, timeoutMs);\n      Ecwid.Cart.addProduct(payload, function (success, product, cart, error) {\n        if (done) return;\n        done = true; clearTimeout(t);\n        if (success) { resolve({ product, cart, timedOut: false }); }\n        else { reject(new Error((error || \"Prodotto non aggiunto\") + \" | Payload: \" + JSON.stringify(payload))); }\n      });\n    });\n  }\n\n  function goToCart() { window.location.href = SHOP_CART_URL; }\n\n  async function goCheckout() {\n    clearError();\n    if (!state.country)                   return showError(\"Seleziona prima un paese.\");\n    if (!$(\"sw-commLang-it\").value)       return showError(\"Seleziona la lingua di partecipazione.\");\n    state.commLang = $(\"sw-commLang-it\").value;\n    const participationProductId = PRODUCTS[state.category] || PRODUCTS.cat1;\n    setCheckoutLoading(true);\n    try {\n      await ensureEcwidReady();\n      await clearCartAsync();\n      await new Promise(r => setTimeout(r, 1500));\n      const result = await addProductAsync({\n        id:            participationProductId,\n        quantity:      1,\n        selectedPrice: Number(state.amount),\n        options: { [OPT_COMM_LANG]: state.commLang }\n      });\n      if (result.timedOut) console.warn(\"[Wizard IT] addProduct timed out \u2013 proceeding to cart anyway\");\n      showThankYou();\n      setTimeout(goToCart, 2500);\n    } catch (e) {\n      showError(e.message || String(e));\n      console.error(\"Wizard IT Checkout Error:\", e);\n    } finally {\n      setCheckoutLoading(false);\n    }\n  }\n\n  $(\"sw-btn-1-next-it\").addEventListener(\"click\", () => showStep(2));\n  $(\"sw-btn-2-back-it\").addEventListener(\"click\", () => showStep(1));\n  $(\"sw-btn-2-next-it\").addEventListener(\"click\", () => showStep(3));\n  $(\"sw-btn-3-back-it\").addEventListener(\"click\", () => showStep(2));\n  $(\"sw-btn-3-next-it\").addEventListener(\"click\", () => {\n    if (!$(\"sw-commLang-it\").value) {\n      $(\"sw-error-it\").style.display = \"block\";\n      $(\"sw-error-it\").textContent = \"Seleziona la lingua di partecipazione.\";\n      return;\n    }\n    $(\"sw-error-it\").style.display = \"none\";\n    applyRangeForCategory(state.category);\n    showStep(4);\n  });\n  $(\"sw-btn-4-back-it\").addEventListener(\"click\", () => showStep(3));\n  $(\"sw-btn-checkout-it\").addEventListener(\"click\", goCheckout);\n\n  $(\"sw-country-search-it\").addEventListener(\"input\", e => renderCountryList(e.target.value));\n  $(\"sw-country-search-it\").addEventListener(\"focus\", () => renderCountryList($(\"sw-country-search-it\").value));\n\n  shadow.addEventListener(\"click\", e => {\n    if (!e.target.closest(\"#sw-country-list-it\") && !e.target.closest(\"#sw-country-search-it\")) {\n      $(\"sw-country-list-it\").innerHTML = \"\";\n    }\n  });\n\n  $(\"sw-amount-it\").addEventListener(\"input\", () => updateAmountUI(false));\n\n  applyRangeForCategory(\"cat1\");\n  showStep(1);\n\n})();\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-0683b0f e-flex e-con-boxed e-con e-parent\" data-id=\"0683b0f\" 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-5cbb6ed elementor-widget elementor-widget-text-editor\" data-id=\"5cbb6ed\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<div id=\"dynamic-ec-store-container\" class=\"\"><!-- Ecwid shopping cart plugin v 7.0.8 --><!--noptimize--><script data-cfasync=\"false\" data-no-optimize=\"1\" src=\"https:\/\/app.ecwid.com\/script.js?89632828&data_platform=wporg&lang=it\"><\/script><script data-cfasync=\"false\" data-no-optimize=\"1\">if (typeof jQuery !== undefined && jQuery.mobile) { jQuery.mobile.hashListeningEnabled = false; jQuery.mobile.pushStateEnabled=false; }<\/script><!--\/noptimize--><div id=\"ecwid-store-89632828\" class=\"ecwid-shopping-cart-product-browser\" data-ecwid-default-category-id=\"0\"><\/div><script data-cfasync=\"false\" data-no-optimize=\"1\" type=\"text\/javascript\">xProductBrowser(\"id=ecwid-store-89632828\",\"views=grid(20,3) list(60) table(60)\",\"default_page=\");<\/script><!-- END Ecwid Shopping Cart v 7.0.8 --><\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-e62689f e-con-full e-flex e-con e-parent\" data-id=\"e62689f\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t<div class=\"elementor-element elementor-element-f4c7d13 e-con-full e-flex e-con e-child\" data-id=\"f4c7d13\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-fa33190 elementor-widget elementor-widget-text-editor\" data-id=\"fa33190\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Institute for Spiritual Activity<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-7c9e47a e-con-full e-flex e-con e-child\" data-id=\"7c9e47a\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b61cb9a e-con-full e-flex e-con e-child\" data-id=\"b61cb9a\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-bb4c2a5 elementor-widget elementor-widget-text-editor\" data-id=\"bb4c2a5\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Datenschutz <span>\u00b7 Impressum \u00b7 AGB<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Kurs \u00dcbungen Ablauf Kontakt Anmelden Kurs \u00dcbungen Ablauf Kontakt Anmelden Preise &#038; Anmeldung Wir freuen uns \u00fcber Deine Anmeldung Geh mit uns und vielen Menschen weltweit den Weg durch die sechs Seelen\u00fcbungen. Start 17. Mai 2026 Ende 9. August 2026 Dauer 6 \u00d7 2 Wochen Format Meditativer Schulungsweg Teilnahmebeitrag Preistransparenz Der Kurs wird getragen von [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_canvas","meta":{"footnotes":""},"class_list":["post-10","page","type-page","status-publish","hentry","entry"],"_links":{"self":[{"href":"https:\/\/spiritual-activity.org\/it\/wp-json\/wp\/v2\/pages\/10","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/spiritual-activity.org\/it\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/spiritual-activity.org\/it\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/spiritual-activity.org\/it\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/spiritual-activity.org\/it\/wp-json\/wp\/v2\/comments?post=10"}],"version-history":[{"count":151,"href":"https:\/\/spiritual-activity.org\/it\/wp-json\/wp\/v2\/pages\/10\/revisions"}],"predecessor-version":[{"id":251,"href":"https:\/\/spiritual-activity.org\/it\/wp-json\/wp\/v2\/pages\/10\/revisions\/251"}],"wp:attachment":[{"href":"https:\/\/spiritual-activity.org\/it\/wp-json\/wp\/v2\/media?parent=10"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}