{"id":22580,"date":"2026-05-16T10:32:58","date_gmt":"2026-05-16T03:32:58","guid":{"rendered":"https:\/\/vietnamdetox.com\/startseite\/"},"modified":"2026-11-04T16:12:00","modified_gmt":"2026-11-04T09:12:00","slug":"startseite","status":"publish","type":"page","link":"https:\/\/vietnamdetox.com\/de\/","title":{"rendered":"Startseite"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"22580\" class=\"elementor elementor-22580 elementor-14\" data-elementor-post-type=\"page\">\n\t\t\t\t<section data-dce-background-color=\"#FEFAF2\" class=\"elementor-element elementor-element-2f0a2ac e-con-full e-flex elementor-invisible e-con e-parent\" data-id=\"2f0a2ac\" data-element_type=\"container\" data-e-type=\"container\" id=\"intro\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;animation&quot;:&quot;fadeIn&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-afa851d elementor-widget elementor-widget-html\" data-id=\"afa851d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!--\r\n  Copy this entire file into ONE Elementor HTML widget.\r\n  Put elementor-hero.css into the same widget's Advanced > Custom CSS field.\r\n\r\n  The two video sources are root-relative URLs for staging.vietnamdetox.com.\r\n  See README.md before using this widget on another host.\r\n-->\r\n\r\n<section class=\"vdh\" data-vdh-hero=\"\" aria-labelledby=\"vdh-title\">\r\n  <div class=\"vdh__background\" aria-hidden=\"true\">\r\n    <video class=\"vdh__background-video\" data-vdh-background-video=\"\" autoplay=\"\" muted=\"\" loop=\"\" playsinline=\"\" preload=\"metadata\">\r\n      <source src=\"\/wp-content\/uploads\/2026\/08\/hero-video-vietnam-detox-fasting-retreats.mp4\" type=\"video\/mp4\">\r\n    <\/source><\/video>\r\n  <\/div>\r\n\r\n  <div class=\"vdh__overlay\" aria-hidden=\"true\"><\/div>\r\n\r\n  <div class=\"vdh__inner\">\r\n    <div class=\"vdh__left\">\r\n      <div class=\"vdh__panel\" data-vdh-panel=\"\">\r\n        <button class=\"vdh__panel-toggle\" data-vdh-panel-toggle=\"\" type=\"button\" aria-label=\"Hide introduction\" aria-expanded=\"true\">\r\n          <span class=\"vdh__panel-toggle-label\" data-vdh-toggle-label=\"\">Box ausblenden<\/span>\r\n<span class=\"vdh__panel-toggle-icon\" data-vdh-toggle-icon=\"\" aria-hidden=\"true\">\u00d7<\/span>\r\n        <\/button>\r\n\r\n        <div class=\"vdh__panel-surface\" data-vdh-panel-surface=\"\">\r\n          <div class=\"vdh__panel-body\">\r\n            <p class=\"vdh__tagline\">Erholen Sie sich, bevor Ersch\u00f6pfung zu Ihrem Normalzustand wird.<\/p>\r\n\r\n            <h1 class=\"vdh__title\" id=\"vdh-title\">\r\n              <span class=\"vdh__title-line\"><em>Deutsches Buchinger-Fasten.<\/em><\/span>\r\n              <span class=\"vdh__title-line\"><span class=\"vdh__title-accent\">Vietnamesische Heiltradition.<\/span><\/span>\r\n            <\/h1>\r\n\r\n            <div class=\"vdh__divider\" aria-hidden=\"true\"><\/div>\r\n\r\n            <div class=\"vdh__mobile-video\">\r\n              <div class=\"vdh__mobile-video-inner\">\r\n                <video data-vdh-mobile-video=\"\" muted=\"\" loop=\"\" playsinline=\"\" preload=\"metadata\">\r\n                  <source src=\"\/wp-content\/uploads\/2026\/08\/hero-video-vietnam-detox-fasting-retreats.mp4\" type=\"video\/mp4\">\r\n Ihr Browser unterst\u00fctzt das Video-Tag nicht.\r\n                <\/source><\/video>\r\n              <\/div>\r\n            <\/div>\r\n\r\n            <p class=\"vdh__summary\">\r\n              <strong>Ruhige, strukturierte Fastenretreats<\/strong> f\u00fcr Menschen, die sich mental \u00fcberlastet, k\u00f6rperlich ersch\u00f6pft oder von echter Erholung abgeschnitten f\u00fchlen.\r\n            <\/p>\r\n\r\n            <div class=\"vdh__actions\">\r\n              <a href=\"#retreats\" class=\"vdh__button vdh__button--primary\">Retreats entdecken<\/a>\r\n              <a href=\"#method\" class=\"vdh__button vdh__button--outline\">Die Methode verstehen<\/a>\r\n            <\/div>\r\n          <\/div>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"vdh__right\" aria-hidden=\"true\"><\/div>\r\n  <\/div>\r\n\r\n  <a href=\"#why\" class=\"vdh__scroll\">Scrollen<\/a>\r\n<\/section>\r\n\r\n<script>\r\n(function() {\r\n  'use strict';\r\n\r\n  var roots = document.querySelectorAll('[data-vdh-hero]');\r\n\r\n  roots.forEach(function(root) {\r\n    if (root.dataset.vdhReady === 'true') return;\r\n    root.dataset.vdhReady = 'true';\r\n\r\n    var panel = root.querySelector('[data-vdh-panel]');\r\n    var surface = root.querySelector('[data-vdh-panel-surface]');\r\n    var toggle = root.querySelector('[data-vdh-panel-toggle]');\r\n    var toggleLabel = root.querySelector('[data-vdh-toggle-label]');\r\n    var toggleIcon = root.querySelector('[data-vdh-toggle-icon]');\r\n    var backgroundVideo = root.querySelector('[data-vdh-background-video]');\r\n    var mobileVideo = root.querySelector('[data-vdh-mobile-video]');\r\n    var mobileQuery = window.matchMedia('(max-width: 767px)');\r\n    var reducedMotionQuery = window.matchMedia('(prefers-reduced-motion: reduce)');\r\n    \/\/ The toggle text is set here, so it follows the page language even where a translation\r\n    \/\/ flattened the label markup. WPML does not translate text inside this script.\r\n    var toggleCopy = {\r\n      en: { show: 'Show info', hide: 'Hide box', showIntroduction: 'Show introduction', hideIntroduction: 'Hide introduction' },\r\n      vi: { show: 'Hi\\u1ec7n th\\u00f4ng tin', hide: '\\u1ea8n h\\u1ed9p', showIntroduction: 'Hi\\u1ec7n ph\\u1ea7n gi\\u1edbi thi\\u1ec7u', hideIntroduction: '\\u1ea8n ph\\u1ea7n gi\\u1edbi thi\\u1ec7u' },\r\n      de: { show: 'Info anzeigen', hide: 'Box ausblenden', showIntroduction: 'Einleitung anzeigen', hideIntroduction: 'Einleitung ausblenden' }\r\n    };\r\n    var pageLanguage = String(document.documentElement.lang || 'en').toLowerCase().split(\/[-_]\/)[0];\r\n    var copy = toggleCopy[pageLanguage === 'vn' ? 'vi' : pageLanguage] || toggleCopy.en;\r\n\r\n    \/\/ A translation can drop the label span and leave bare text in the button; rebuild it.\r\n    if (toggle && !toggleLabel) {\r\n      Array.prototype.slice.call(toggle.childNodes).forEach(function(node) {\r\n        if (node.nodeType === 3) toggle.removeChild(node);\r\n      });\r\n      toggleLabel = document.createElement('span');\r\n      toggleLabel.className = 'vdh__panel-toggle-label';\r\n      toggleLabel.setAttribute('data-vdh-toggle-label', '');\r\n      toggle.insertBefore(toggleLabel, toggleIcon && toggleIcon.parentNode === toggle ? toggleIcon : null);\r\n    }\r\n\r\n    function syncPanel() {\r\n      if (!panel || !surface || !toggle || !toggleLabel || !toggleIcon) return;\r\n\r\n      var isCollapsed = panel.classList.contains('is-collapsed');\r\n      toggleLabel.textContent = isCollapsed ? copy.show : copy.hide;\r\n      toggleIcon.textContent = isCollapsed ? '+' : '\\u00d7';\r\n      toggle.setAttribute('aria-label', isCollapsed ? copy.showIntroduction : copy.hideIntroduction);\r\n      toggle.setAttribute('aria-expanded', String(!isCollapsed));\r\n      surface.setAttribute('aria-hidden', String(isCollapsed));\r\n    }\r\n\r\n    function syncVideos() {\r\n      var useInlineVideo = mobileQuery.matches;\r\n\r\n      if (backgroundVideo) {\r\n        if (useInlineVideo || reducedMotionQuery.matches) {\r\n          backgroundVideo.pause();\r\n        } else {\r\n          var playAttempt = backgroundVideo.play();\r\n          if (playAttempt && typeof playAttempt.catch === 'function') {\r\n            playAttempt.catch(function() {});\r\n          }\r\n        }\r\n      }\r\n\r\n      if (mobileVideo) {\r\n        if (useInlineVideo && !reducedMotionQuery.matches) {\r\n          mobileVideo.muted = true;\r\n          var mobilePlayAttempt = mobileVideo.play();\r\n          if (mobilePlayAttempt && typeof mobilePlayAttempt.catch === 'function') {\r\n            \/\/ Autoplay can be blocked (e.g. iOS Low Power Mode); let visitors start it themselves.\r\n            mobilePlayAttempt.catch(function() { mobileVideo.controls = true; });\r\n          }\r\n        } else {\r\n          mobileVideo.pause();\r\n          if (useInlineVideo) mobileVideo.controls = true;\r\n        }\r\n      }\r\n    }\r\n\r\n    if (toggle) {\r\n      toggle.addEventListener('click', function() {\r\n        panel.classList.toggle('is-collapsed');\r\n        syncPanel();\r\n      });\r\n    }\r\n\r\n    if (typeof mobileQuery.addEventListener === 'function') {\r\n      mobileQuery.addEventListener('change', syncVideos);\r\n      reducedMotionQuery.addEventListener('change', syncVideos);\r\n    } else {\r\n      mobileQuery.addListener(syncVideos);\r\n      reducedMotionQuery.addListener(syncVideos);\r\n    }\r\n\r\n    syncPanel();\r\n    syncVideos();\r\n  });\r\n})();\r\n<\/script>\r\n\r\n<script>\r\n(function vdHeroHeaderClearance() {\r\n  \"use strict\";\r\n  \/\/ The global header is fixed over the hero. Measure how far it reaches into the hero and\r\n  \/\/ expose that as --vd-hero-clearance, so the hero panel always starts below the header.\r\n  var hero = document.querySelector(\".vdh\");\r\n  var headerRoot = document.querySelector(\".elementor-location-header\");\r\n  if (!hero || !headerRoot || hero.dataset.vdClearance === \"ready\") return;\r\n  hero.dataset.vdClearance = \"ready\";\r\n  var measuredWidth = null;\r\n\r\n  function update() {\r\n    var scrollTop = window.scrollY || window.pageYOffset || 0;\r\n    \/\/ The sticky header shrinks after scrolling; keep the measurement taken at the top.\r\n    if (scrollTop > 0 && measuredWidth === window.innerWidth) return;\r\n    var bottom = 0;\r\n    Array.prototype.forEach.call(headerRoot.children, function (el) {\r\n      if (el.classList.contains(\"elementor-sticky__spacer\")) return;\r\n      var style = window.getComputedStyle(el);\r\n      if (style.display === \"none\" || style.visibility === \"hidden\") return;\r\n      var rect = el.getBoundingClientRect();\r\n      if (!rect.height) return;\r\n      bottom = Math.max(bottom, rect.bottom + (style.position === \"fixed\" ? 0 : scrollTop));\r\n    });\r\n    var heroTop = hero.getBoundingClientRect().top + scrollTop;\r\n    measuredWidth = window.innerWidth;\r\n    hero.style.setProperty(\"--vd-hero-clearance\", Math.max(0, Math.round(bottom - heroTop)) + \"px\");\r\n  }\r\n\r\n  update();\r\n  document.addEventListener(\"DOMContentLoaded\", update, { once: true });\r\n  window.addEventListener(\"load\", update, { once: true });\r\n  window.addEventListener(\"resize\", update, { passive: true });\r\n  \/\/ Elementor makes the header sticky after load; re-measure when its classes change.\r\n  if (window.MutationObserver) {\r\n    new MutationObserver(update).observe(headerRoot, { attributes: true, attributeFilter: [\"class\"], subtree: true });\r\n  }\r\n})();\r\n<\/script>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/section>\n\t\t<section data-dce-background-color=\"#FEFAF2\" class=\"elementor-element elementor-element-232a149 e-con-full e-flex elementor-invisible e-con e-parent\" data-id=\"232a149\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;animation&quot;:&quot;fadeIn&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-984f892 elementor-widget elementor-widget-html\" data-id=\"984f892\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!--\r\n  Copy this entire file into ONE Elementor HTML widget.\r\n  Put elementor-reassurance-strip.css into the same widget's\r\n  Advanced > Custom CSS field.\r\n\r\n  This section has no JavaScript behavior, so no script is required.\r\n  Image URLs are configured for staging.vietnamdetox.com.\r\n-->\r\n\r\n<section class=\"vdr\" aria-labelledby=\"vdr-title\">\r\n  <div class=\"vdr__shell\">\r\n    <header class=\"vdr__header\">\r\n      <span class=\"vdr__eyebrow\">Ein stilles Gef\u00fchl, das viele G\u00e4ste wiedererkennen<\/span>\r\n      <span class=\"vdr__clue\" aria-hidden=\"true\"><\/span>\r\n\r\n      <h2 class=\"vdr__headline\" id=\"vdr-title\">\r\n  Wann haben Sie sich zuletzt wirklich <em>klar<\/em>,\r\n        <em>leicht<\/em> und <em>ausgeruht<\/em> gef\u00fchlt?\r\n      <\/h2>\r\n\r\n      <p class=\"vdr__description\">\r\n  Die meisten G\u00e4ste kommen nicht, weil etwas furchtbar falsch l\u00e4uft. Sie kommen\r\n weil sich etwas nicht mehr richtig anf\u00fchlt. \r\n      <\/p>\r\n    <\/header>\r\n\r\n    <div class=\"vdr__gallery\" role=\"group\" aria-label=\"Scenes from Vietnam Detox retreats\">\r\n      <figure class=\"vdr__photo\">\r\n        <img src=\"\/wp-content\/uploads\/2026\/08\/Vietnam-detox-wellness-retreat-healthy-lifestyle-song-khoe-thai-doc-70.webp\" alt=\"\" loading=\"lazy\" decoding=\"async\">\r\n      <\/figure>\r\n\r\n      <figure class=\"vdr__photo\">\r\n        <img src=\"\/wp-content\/uploads\/2026\/08\/Vietnam-detox-wellness-retreat-healthy-lifestyle-song-khoe-thai-doc-16.webp\" alt=\"\" loading=\"lazy\" decoding=\"async\">\r\n      <\/figure>\r\n\r\n      <figure class=\"vdr__photo\">\r\n        <img src=\"\/wp-content\/uploads\/2026\/08\/Vietnam-detox-fasting-wellness-retreats-Paddle-board-yoga.webp\" alt=\"\" loading=\"lazy\" decoding=\"async\">\r\n      <\/figure>\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/section>\n\t\t<section class=\"elementor-element elementor-element-49ad905 e-flex e-con-boxed elementor-invisible e-con e-parent\" data-id=\"49ad905\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;animation&quot;:&quot;fadeIn&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-73aa551 elementor-widget elementor-widget-html\" data-id=\"73aa551\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!--\r\n  Copy this entire file into ONE Elementor HTML widget.\r\n  Put elementor-buchinger-quote.css into the same widget's\r\n  Advanced > Custom CSS field.\r\n-->\r\n\r\n<section class=\"vdq\" data-vdq-section=\"\" aria-label=\"Quote by Otto Buchinger\">\r\n  <div class=\"vdq__shell\">\r\n    <figure class=\"vdq__card vdq__reveal\" data-vdq-reveal=\"\">\r\n      <span class=\"vdq__mark vdq__mark--open\" aria-hidden=\"true\">\u201e<\/span>\r\n\r\n      <blockquote class=\"vdq__quote\">\r\n Fasten ist ohne jeden Zweifel die wirksamste biologische Methode der\r\n Behandlung. <strong>Es ist die Operation ohne Messer.<\/strong>\r\n      <\/blockquote>\r\n\r\n      <span class=\"vdq__mark vdq__mark--close\" aria-hidden=\"true\">\u201c<\/span>\r\n\r\n      <figcaption class=\"vdq__attribution\">\r\n        <cite>Otto Buchinger<\/cite>\r\n      <\/figcaption> \r\n\r\n      <span class=\"vdq__rule\" aria-hidden=\"true\"><\/span>\r\n    <\/figure>\r\n  <\/div>\r\n<\/section>\r\n\r\n<script>\r\n(function() {\r\n  'use strict';\r\n\r\n  var sections = document.querySelectorAll('[data-vdq-section]');\r\n\r\n  sections.forEach(function(section) {\r\n    if (section.dataset.vdqReady === 'true') return;\r\n    section.dataset.vdqReady = 'true';\r\n\r\n    var quote = section.querySelector('[data-vdq-reveal]');\r\n    var reducedMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches;\r\n\r\n    if (!quote) return;\r\n\r\n    if (reducedMotion || !('IntersectionObserver' in window)) {\r\n      quote.classList.add('is-visible');\r\n      return;\r\n    }\r\n\r\n    var observer = new IntersectionObserver(function(entries) {\r\n      entries.forEach(function(entry) {\r\n        if (!entry.isIntersecting) return;\r\n        entry.target.classList.add('is-visible');\r\n        observer.unobserve(entry.target);\r\n      });\r\n    }, {\r\n      threshold: 0.12,\r\n      rootMargin: '0px 0px -40px 0px'\r\n    });\r\n\r\n    observer.observe(quote);\r\n  });\r\n})();\r\n<\/script>\r\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/section>\n\t\t<div class=\"elementor-element elementor-element-6861989 e-con-full e-flex elementor-invisible e-con e-parent\" data-id=\"6861989\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;animation&quot;:&quot;fadeIn&quot;,&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-da6ac4f elementor-widget elementor-widget-html\" data-id=\"da6ac4f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!--\n  Copy this entire file into ONE Elementor HTML widget.\n  Put why-section.css into the same widget's\n  Advanced > Custom CSS field.\n\n  Asset URLs are configured for staging.vietnamdetox.com.\n  See README.md before using this widget on another host.\n\n  The video's subtitle files are in subtitles\/. Upload both .vtt files\n  to the Media Library and make sure the <track> URLs match.\n-->\n\n<section class=\"vdw\" id=\"why\" data-vdw-section=\"\" aria-labelledby=\"vdw-title\">\n\n  <div class=\"vdw__shell\">\n    <header class=\"vdw__header\">\n      <span class=\"vdw__eyebrow\">Was viele G\u00e4ste zu bemerken beginnen<\/span>\n      <span class=\"vdw__clue\" aria-hidden=\"true\"><\/span>\n\n      <h2 class=\"vdw__headline\" id=\"vdw-title\">\n  Wie es sich anf\u00fchlen kann, wenn Ihr K\u00f6rper endlich\n        <em>wieder langsamer wird<\/em>.\n      <\/h2>\n\n      <p class=\"vdw__intro\">\n  Viele G\u00e4ste kommen zun\u00e4chst, um <em>abzunehmen<\/em> und\n        <em>sich im eigenen K\u00f6rper wohler zu f\u00fchlen<\/em>. Was sie oft entdecken, ist\n dass sie dabei auch <em>angesammelten Stress<\/em>, ungesunde\n Routinen, <em>mentales Durcheinander<\/em> und das st\u00e4ndige Gef\u00fchl,\n \u201ean\u201c zu sein, loslassen. Die Ver\u00e4nderungen, die Menschen beschreiben, sind oft sowohl\n        <em>k\u00f6rperlich als auch emotional<\/em>.  \n      <\/p>\n    <\/header>\n\n    <div class=\"vdw__video-intro\">\n      <figure class=\"vdw__video-frame\">\n         <figcaption>\n Gastinterview <span aria-hidden=\"true\">\u00b7<\/span>\n Paul berichtet von seiner Vietnam-Detox-Erfahrung.\n        <\/figcaption>\n\n        <video controls=\"\" preload=\"metadata\" playsinline=\"\" data-vdw-video=\"\">\n          <source src=\"\/wp-content\/uploads\/2026\/06\/Interview-Vietnam-detox-guest-opinion-Paul.mp4\" type=\"video\/mp4\">\n          <track kind=\"subtitles\" src=\"\/wp-content\/uploads\/2026\/09\/Interview-Vietnam-detox-guest-opinion-Paul-vi.vtt\" srclang=\"vi\" label=\"Ti\u1ebfng Vi\u1ec7t\">\n          <track kind=\"subtitles\" src=\"\/wp-content\/uploads\/2026\/09\/Interview-Vietnam-detox-guest-opinion-Paul-en.vtt\" srclang=\"en\" label=\"Englisch\">\n Ihr Browser unterst\u00fctzt das Video-Tag nicht.\n        <\/track><\/track><\/source><\/video> \n      <\/figure>\n    <\/div>\n\n    <div class=\"vdw__grid\">\n      <article class=\"vdw__card vdw__reveal vdw__delay-1\" data-vdw-reveal=\"\">\n        <div class=\"vdw__visual\">\n          <img src=\"\/wp-content\/uploads\/2026\/08\/blood-sugar.png\" alt=\"Illustration zur mentalen Klarheit\" loading=\"lazy\" decoding=\"async\">\n        <\/div>\n\n        <div class=\"vdw__copy\">\n          <h3>Gleichm\u00e4\u00dfigere Energie<\/h3>\n          <p class=\"vdw__primary\">\n  Viele G\u00e4ste kommen an und f\u00fchlen sich selbst nach dem Schlafen ersch\u00f6pft.\n          <\/p>\n        <\/div>\n\n        <p class=\"vdw__supporting\">\n  Nachmittags-Tiefs, st\u00e4ndige M\u00fcdigkeit und das Gef\u00fchl, auf\n Reserve zu laufen, lassen oft nach, sobald der K\u00f6rper in einen ruhigeren Rhythmus findet.\n        <\/p>\n      <\/article>\n\n      <article class=\"vdw__card vdw__reveal vdw__delay-2\" data-vdw-reveal=\"\">\n        <div class=\"vdw__visual\">\n          <img src=\"\/wp-content\/uploads\/2026\/08\/blood-pressure-2.png\" alt=\"Illustration zur tiefen Ruhe\" loading=\"lazy\" decoding=\"async\">\n        <\/div>\n\n        <div class=\"vdw__copy\">\n          <h3>Entspannteres Verh\u00e4ltnis zum Essen<\/h3>\n          <p class=\"vdw__primary\">\n  Manche G\u00e4ste kommen mit st\u00e4ndigem Verlangen, emotionalem Essen oder zu\n vielen Gedanken rund ums Essen.\n          <\/p>\n        <\/div>\n\n        <p class=\"vdw__supporting\">\n  Wenn der K\u00f6rper langsamer wird und Essen einfacher wird, beginnen viele G\u00e4ste\n wieder, sich ruhiger und kontrollierter im Umgang mit Hunger zu f\u00fchlen.\n        <\/p>\n      <\/article>\n\n      <article class=\"vdw__card vdw__reveal vdw__delay-3\" data-vdw-reveal=\"\">\n        <div class=\"vdw__visual\">\n          <img src=\"\/wp-content\/uploads\/2026\/08\/fewer-cravings-2.png\" alt=\"Illustration zum ruhigen Appetit\" loading=\"lazy\" decoding=\"async\">\n        <\/div>\n\n        <div class=\"vdw__copy\">\n          <h3>Wieder k\u00f6rperliche Leichtigkeit<\/h3>\n          <p class=\"vdw__primary\">\n  Viele G\u00e4ste kommen und f\u00fchlen sich schwer, aufgebl\u00e4ht oder k\u00f6rperlich \u00fcberlastet.\n          <\/p>\n        <\/div>\n\n        <p class=\"vdw__supporting\">\n  Nach mehreren Tagen Verdauungsruhe f\u00fchlt sich der K\u00f6rper oft\n leichter, ruhiger und weniger belastet an.\n        <\/p>\n      <\/article>\n\n      <article class=\"vdw__card vdw__card--offset-left vdw__reveal vdw__delay-4\" data-vdw-reveal=\"\">\n        <div class=\"vdw__visual\">\n          <img src=\"\/wp-content\/uploads\/2026\/08\/lighter-digestion-2.png\" alt=\"Illustration zur Verdauungsentlastung\" loading=\"lazy\" decoding=\"async\">\n        <\/div>\n\n        <div class=\"vdw__copy\">\n          <h3>Klareres Denken<\/h3>\n          <p class=\"vdw__primary\">\n  Mentale \u00dcberlastung f\u00fchlt sich oft an wie st\u00e4ndiges Denken, innerer L\u00e4rm und\n Schwierigkeiten, sich zu konzentrieren.\n          <\/p>\n        <\/div>\n\n        <p class=\"vdw__supporting\">\n  Wenn das Tempo langsamer wird, bemerken viele G\u00e4ste klarere Gedanken, ruhigeren\n Fokus und wieder mehr Raum im Kopf.\n        <\/p>\n      <\/article>\n\n      <article class=\"vdw__card vdw__card--offset-right vdw__reveal vdw__delay-5\" data-vdw-reveal=\"\">\n        <div class=\"vdw__visual\">\n          <img src=\"\/wp-content\/uploads\/2026\/08\/metabolic-reset-2.png\" alt=\"Illustration zum Stoffwechsel-Reset\" loading=\"lazy\" decoding=\"async\">\n        <\/div>\n\n        <div class=\"vdw__copy\">\n          <h3>Sich wieder mehr wie Sie selbst f\u00fchlen<\/h3>\n          <p class=\"vdw__primary\">\n  Manche G\u00e4ste kommen, weil sie den Kontakt zu sich selbst verloren haben, emotional m\u00fcde sind\n oder im Stressmodus feststecken.\n          <\/p>\n        <\/div>\n\n        <p class=\"vdw__supporting\">\n  Wenn sich der Retreat-Rhythmus einpendelt, f\u00fchlen sich viele wieder ruhiger, mehr\n geerdet und pr\u00e4senter.\n        <\/p>\n      <\/article>\n    <\/div>\n\n    <p class=\"vdw__closing\">\n  Viele G\u00e4ste kommen nicht, weil etwas furchtbar falsch l\u00e4uft. Sie\n kommen, weil sie sich in ihrem K\u00f6rper, ihrer Energie oder ihrem\n Alltagsrhythmus nicht mehr wohlf\u00fchlen. \n    <\/p>\n\n    <div class=\"vdw__cta\">\n      <a class=\"vdw__button\" href=\"#retreats\">Retreats entdecken<\/a>\n    <\/div>\n  <\/div>\n<\/section>\n\n<script>\n(function() {\n  'use strict';\n\n  var sections = document.querySelectorAll('[data-vdw-section]');\n  var pageLang = (document.documentElement.lang || '').slice(0, 2).toLowerCase();\n\n  sections.forEach(function(section) {\n    if (section.dataset.vdwReady === 'true') return;\n    section.dataset.vdwReady = 'true';\n\n    \/\/ Show only the subtitles that match the page language. Re-apply once the\n    \/\/ metadata loads, in case the browser's own caption selection resets it.\n    section.querySelectorAll('[data-vdw-video]').forEach(function(video) {\n      function showPageSubtitles() {\n        Array.prototype.forEach.call(video.textTracks, function(track) {\n          track.mode = track.language === pageLang ? 'showing' : 'disabled';\n        });\n      }\n\n      showPageSubtitles();\n      video.addEventListener('loadedmetadata', showPageSubtitles, { once: true });\n    });\n\n    var items = section.querySelectorAll('[data-vdw-reveal]');\n    var reducedMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n\n    function revealAll() {\n      items.forEach(function(item) {\n        item.classList.add('is-visible');\n      });\n    }\n\n    if (!items.length || reducedMotion || !('IntersectionObserver' in window)) {\n      revealAll();\n      return;\n    }\n\n    var observer = new IntersectionObserver(function(entries) {\n      entries.forEach(function(entry) {\n        if (!entry.isIntersecting) return;\n        entry.target.classList.add('is-visible');\n        observer.unobserve(entry.target);\n      });\n    }, {\n      threshold: 0.12,\n      rootMargin: '0px 0px -40px 0px'\n    });\n\n    items.forEach(function(item) {\n      observer.observe(item);\n    });\n  });\n})();\n<\/script>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<section class=\"elementor-element elementor-element-749e46b e-con-full e-flex elementor-invisible e-con e-parent\" data-id=\"749e46b\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;animation&quot;:&quot;fadeIn&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d98bcad elementor-widget elementor-widget-html\" data-id=\"d98bcad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!--\r\n  Copy this entire file into ONE Elementor HTML widget.\r\n  Put elementor-retreat-atmosphere-gallery.css into the same widget's\r\n  Advanced > Custom CSS field.\r\n\r\n  This gallery has no JavaScript behavior, so no script is required.\r\n  Image URLs are configured for staging.vietnamdetox.com.\r\n-->\r\n\r\n<section class=\"vda\" aria-labelledby=\"vda-title\">\r\n  <header class=\"vda__intro\">\r\n    <span class=\"vda__eyebrow\">Retreat-Atmosph\u00e4re<\/span>\r\n    <h2 class=\"vda__title\" id=\"vda-title\">Eindr\u00fccke von der Reise<\/h2>\r\n  <\/header>\r\n\r\n  <div class=\"vda__gallery\">\r\n    <figure class=\"vda__frame vda__frame--tall\">\r\n      <img src=\"\/wp-content\/uploads\/2026\/08\/Yoga-Class-flamingo-retreat.webp\" alt=\"G\u00e4ste, die morgens am Fluss gemeinsam lachen\" loading=\"lazy\" decoding=\"async\">\r\n    <\/figure>\r\n\r\n    <figure class=\"vda__frame\">\r\n      <img src=\"\/wp-content\/uploads\/2026\/08\/Pouring-green-juice-into-glass.webp\" alt=\"Frischer gr\u00fcner Saft wird f\u00fcr Fasteng\u00e4ste eingeschenkt\" loading=\"lazy\" decoding=\"async\">\r\n    <\/figure>\r\n\r\n    <figure class=\"vda__frame vda__frame--short\">\r\n      <img src=\"\/wp-content\/uploads\/2026\/08\/Vietnam-detox-wellness-retreat-healthy-lifestyle-song-khoe-thai-doc-31.webp\" alt=\"Architektonisches Detail eines vietnamesischen Retreat-Innenhofs\" loading=\"lazy\" decoding=\"async\">\r\n    <\/figure>\r\n\r\n    <figure class=\"vda__frame\">\r\n      <img src=\"\/wp-content\/uploads\/2026\/08\/Vietnam-detox-wellness-retreat-healthy-lifestyle-song-khoe-thai-doc-30.webp\" alt=\"G\u00e4ste dehnen sich gemeinsam drau\u00dfen\" loading=\"lazy\" decoding=\"async\">\r\n    <\/figure>\r\n\r\n    <figure class=\"vda__frame\">\r\n      <img src=\"\/wp-content\/uploads\/2026\/05\/guests-relaxing-in-hot-spring.webp\" alt=\"G\u00e4ste entspannen in einem Mineralquellen-Pool\" loading=\"lazy\" decoding=\"async\">\r\n    <\/figure>\r\n  <\/div>\r\n<\/section>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/section>\n\t\t<section class=\"elementor-element elementor-element-6416ebb e-con-full reassurance-strip e-flex e-con e-parent\" data-id=\"6416ebb\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-92df250 elementor-widget elementor-widget-html\" data-id=\"92df250\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!--\r\n  Copy this entire file into ONE Elementor HTML widget.\r\n  Put elementor-reassurance-cards.css into the same widget's\r\n  Advanced > Custom CSS field.\r\n-->\r\n\r\n<section class=\"vrc\" data-vrc-section=\"\" aria-label=\"Why guests choose Vietnam Detox\">\r\n  <div class=\"vrc__grid\">\r\n    <article class=\"vrc__card vrc__card--forest vrc__reveal vrc__delay-1\" data-vrc-reveal=\"\">\r\n      <span class=\"vrc__eyebrow\">\u00dcber 10 Jahre Erfahrung<\/span>\r\n      <h3 class=\"vrc__title\">Buchinger-Fasten mit Sorgfalt und Struktur<\/h3>\r\n      <p class=\"vrc__copy\">\r\n  Unter der Leitung von Dieter Buchner und Tr\u01b0\u01a1ng T\u1ea5n Ho\u00e0n verbindet Vietnam Detox\r\n deutsche Buchinger-Fastentraditionen mit bodenst\u00e4ndiger vietnamesischer\r\n Gastfreundschaft \u2013 f\u00fcr Retreats, die ruhig, strukturiert und zutiefst\r\n menschlich wirken.\r\n      <\/p>\r\n    <\/article>\r\n\r\n    <article class=\"vrc__card vrc__card--panna vrc__reveal vrc__delay-2\" data-vrc-reveal=\"\">\r\n      <span class=\"vrc__eyebrow\">Durchgehend begleitet<\/span>\r\n      <h3 class=\"vrc__title\">Unterst\u00fctzung von der Anreise bis zur Abreise<\/h3>\r\n      <p class=\"vrc__copy\">\r\n  W\u00e4hrend der Retreats werden G\u00e4ste mit achtsamer\r\n Begleitung, praxisnaher Wissensvermittlung und gen\u00fcgend Raum unterst\u00fctzt, um wirklich\r\n herunterzufahren und sich wieder mit ges\u00fcnderen Rhythmen zu verbinden.\r\n      <\/p>\r\n    <\/article>\r\n\r\n    <article class=\"vrc__card vrc__card--ivory vrc__reveal vrc__delay-3\" data-vrc-reveal=\"\">\r\n      <span class=\"vrc__eyebrow\">Kleine Retreat-Gruppen<\/span>\r\n      <h3 class=\"vrc__title\">Maximal 14 G\u00e4ste pro Retreat<\/h3>\r\n      <p class=\"vrc__copy\">\r\n  Kleine Gruppen schaffen ruhigere Retreat-Erlebnisse mit mehr pers\u00f6nlicher\r\n Aufmerksamkeit, stillerer Umgebung und einer Atmosph\u00e4re, die nie\r\n \u00fcberf\u00fcllt oder unpers\u00f6nlich wirkt.\r\n      <\/p>\r\n    <\/article>\r\n  <\/div>\r\n<\/section>\r\n\r\n<script>\r\n(function() {\r\n  'use strict';\r\n\r\n  var sections = document.querySelectorAll('[data-vrc-section]');\r\n\r\n  sections.forEach(function(section) {\r\n    if (section.dataset.vrcReady === 'true') return;\r\n    section.dataset.vrcReady = 'true';\r\n\r\n    var cards = section.querySelectorAll('[data-vrc-reveal]');\r\n    var reducedMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches;\r\n\r\n    function revealAll() {\r\n      cards.forEach(function(card) {\r\n        card.classList.add('is-visible');\r\n      });\r\n    }\r\n\r\n    if (!cards.length || reducedMotion || !('IntersectionObserver' in window)) {\r\n      revealAll();\r\n      return;\r\n    }\r\n\r\n    var observer = new IntersectionObserver(function(entries) {\r\n      entries.forEach(function(entry) {\r\n        if (!entry.isIntersecting) return;\r\n        entry.target.classList.add('is-visible');\r\n        observer.unobserve(entry.target);\r\n      });\r\n    }, {\r\n      threshold: 0.12,\r\n      rootMargin: '0px 0px -40px 0px'\r\n    });\r\n\r\n    cards.forEach(function(card) {\r\n      observer.observe(card);\r\n    });\r\n  });\r\n})();\r\n<\/script>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/section>\n\t\t<section class=\"elementor-element elementor-element-f8ca32e e-con-full e-flex elementor-invisible e-con e-parent\" data-id=\"f8ca32e\" data-element_type=\"container\" data-e-type=\"container\" id=\"method\" data-settings=\"{&quot;animation&quot;:&quot;fadeIn&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-053d89d elementor-widget__width-inherit elementor-widget elementor-widget-html\" data-id=\"053d89d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!--\n  Vietnam Detox \u2014 Elementor Five Method Principles Section\n  Paste this entire file into one Elementor HTML widget.\n  Add method-principles.css separately as described in README.md.\n-->\n\n<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=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;1,300;1,400&family=Be+Vietnam+Pro:wght@300;400;500;600;700&display=swap\" rel=\"stylesheet\">\n\n<section id=\"method\" class=\"vnd-principles\" data-vnd-principles=\"\">\n  <div class=\"vnd-principles__inner\">\n    <div class=\"vnd-principles__layout\">\n      <div class=\"vnd-principles__left\">\n        <header class=\"vnd-principles__header\">\n          <span class=\"vnd-principles__eyebrow\">So funktioniert es<\/span>\n          <span class=\"vnd-principles__rule\" aria-hidden=\"true\"><\/span>\n\n          <h2 class=\"vnd-principles__headline\">\n  Die f\u00fcnf Kernprinzipien hinter\n            <span>nachhaltiger Erholung<\/span>\n          <\/h2>\n\n          <div class=\"vnd-principles__introduction\">\n            <p>\n  Jedes Vietnam-Detox-Retreat folgt einem ruhigen, strukturierten Rhythmus,\n der auf Fasten, Ruhe, Bewegung und behutsamem Wiederaufbau basiert.\n            <\/p>\n\n            <p>\n  Diese f\u00fcnf Prinzipien schaffen ein Erlebnis, das sich\n unterst\u00fctzend, verst\u00e4ndlich und nachhaltig anf\u00fchlt \u2013 statt extrem\n oder \u00fcberw\u00e4ltigend.\n            <\/p>\n\n            <p>\n  Das Ziel ist nicht Intensit\u00e4t oder Leistung. Das Ziel ist, dem\n K\u00f6rper zu helfen, langsamer zu werden, sich zu erholen und mit der Zeit wieder Stabilit\u00e4t zu gewinnen. \n            <\/p>\n          <\/div>\n        <\/header>\n\n        <figure class=\"vnd-principles__visual\">\n          <img decoding=\"async\" src=\"https:\/\/vietnamdetox.com\/staging\/redesign-clickdummy-2026\/assets\/gallery\/guest-sitting-on-mountain-vietnam-16-9.webp\" alt=\"Gast macht ruhig Pause an einem Berg-Aussichtspunkt\" loading=\"lazy\">\n        <\/figure>\n      <\/div>\n\n      <div class=\"vnd-principles__cards\">\n        <article class=\"vnd-principle-card\" data-principle-reveal=\"\">\n          <h3>Ihren K\u00f6rper verstehen<\/h3>\n          <p>\n  Wir erkl\u00e4ren, was in Ihrem K\u00f6rper passiert, damit sich der Fastenprozess\n klar anf\u00fchlt statt \u00fcberw\u00e4ltigend.\n          <\/p>\n          <p>\n  Viele G\u00e4ste gehen mit einem besseren Verst\u00e4ndnis f\u00fcr ihre Energie-,\n Hunger-, Schlaf- und Erholungsmuster.\n          <\/p>\n        <\/article>\n\n        <article class=\"vnd-principle-card\" data-principle-reveal=\"\">\n          <h3>Kleine Gruppen & ehrliche Unterst\u00fctzung<\/h3>\n          <p>\n  Die Gruppen bleiben bewusst klein \u2013 mit maximal 14 G\u00e4sten.\n          <\/p>\n          <p>\n  Viele Menschen empfinden Erleichterung, Stress,\n Druck und Ersch\u00f6pfung eine Zeit lang nicht ganz allein tragen zu m\u00fcssen.\n          <\/p>\n        <\/article>\n\n        <article class=\"vnd-principle-card\" data-principle-reveal=\"\">\n          <h3>Ruhe & Schlaf<\/h3>\n          <p>\n  Die meisten G\u00e4ste kommen mental \u00fcberstimuliert und k\u00f6rperlich\n ersch\u00f6pft an.\n          <\/p>\n          <p>\n  Ein ruhigerer Rhythmus, weniger Reize und mehr Ruhe helfen dem\n K\u00f6rper oft, herunterzufahren und wieder tiefer zu schlafen.\n          <\/p>\n        <\/article>\n\n        <article class=\"vnd-principle-card\" data-principle-reveal=\"\">\n          <h3>Sanfte Bewegung & Natur<\/h3>\n          <p>Bewegung bleibt unterst\u00fctzend statt fordernd.<\/p>\n          <p>\n  Spazierg\u00e4nge, Dehnen und Zeit drau\u00dfen helfen vielen G\u00e4sten, sich wieder aktiv zu f\u00fchlen,\n ohne Druck, Leistungsdenken oder Ersch\u00f6pfung.\n          <\/p>\n        <\/article>\n\n        <article class=\"vnd-principle-card vnd-principle-card--centered\" data-principle-reveal=\"\">\n          <h3>Sichere & strukturierte Begleitung<\/h3>\n          <p>\n  Der Fastenprozess wird sorgf\u00e4ltig, realistisch und mit Blick auf langfristiges Wohlbefinden\n begleitet.\n          <\/p>\n          <p>\n  Keine extremen Versprechen. Kein Druck, alles zu optimieren. Nur ruhige\n Struktur, Wissen und verantwortungsvolle Unterst\u00fctzung.  \n          <\/p>\n        <\/article>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/section>\n\n<script>\n(function () {\n  \"use strict\";\n\n  var sections = document.querySelectorAll(\n    \"[data-vnd-principles]:not([data-vnd-principles-ready])\"\n  );\n\n  sections.forEach(function (section) {\n    section.setAttribute(\"data-vnd-principles-ready\", \"true\");\n\n    var cards = section.querySelectorAll(\"[data-principle-reveal]\");\n    if (!cards.length) return;\n\n    Array.prototype.forEach.call(cards, function (card, index) {\n      card.style.setProperty(\"--vnd-reveal-delay\", index * 0.12 + \"s\");\n    });\n\n    var reducedMotion = window.matchMedia(\n      \"(prefers-reduced-motion: reduce)\"\n    ).matches;\n\n    function showAllCards() {\n      Array.prototype.forEach.call(cards, function (card) {\n        card.classList.add(\"is-visible\");\n      });\n    }\n\n    if (reducedMotion || !(\"IntersectionObserver\" in window)) {\n      showAllCards();\n      return;\n    }\n\n    var observer = new IntersectionObserver(function (entries) {\n      entries.forEach(function (entry) {\n        if (!entry.isIntersecting) return;\n\n        entry.target.classList.add(\"is-visible\");\n        observer.unobserve(entry.target);\n      });\n    }, {\n      threshold: 0.12,\n      rootMargin: \"0px 0px -30px 0px\"\n    });\n\n    Array.prototype.forEach.call(cards, function (card) {\n      observer.observe(card);\n    });\n  });\n})();\n<\/script>\n\t\t\t\t<\/div>\n\t\t\t\t<\/section>\n\t\t<section class=\"elementor-element elementor-element-c42df70 e-con-full e-flex elementor-invisible e-con e-parent\" data-id=\"c42df70\" data-element_type=\"container\" data-e-type=\"container\" id=\"retreats\" data-settings=\"{&quot;animation&quot;:&quot;fadeIn&quot;,&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-28118b3 eyebrow eyebrow-forest elementor-widget elementor-widget-heading\" data-id=\"28118b3\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<span class=\"elementor-heading-title elementor-size-default\">Kommende Retreats<\/span>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8da86fc elementor-widget__width-initial elementor-widget-mobile__width-initial elementor-widget elementor-widget-heading\" data-id=\"8da86fc\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\"><h2 class=\"s-headline\" style=\"font-size:clamp(40px,5vw,60px);font-weight:300;font-style:italic\">Verschiedene Formen von <span style=\"color:var(--ember);font-style:italic\">Ersch\u00f6pfung<\/span> brauchen unterschiedliche Arten der Erholung.<\/h2><\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div data-dce-text-color=\"#1E3D20\" class=\"elementor-element elementor-element-c1fe6fe elementor-widget elementor-widget-text-editor\" data-id=\"c1fe6fe\" 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 class=\"s-desc\" style=\"margin-bottom: 0px;\">Manche G\u00e4ste brauchen tiefe Ruhe, andere eine ruhigere Struktur oder Unterst\u00fctzung rund um Ess- und Energierhythmen. Erholung sieht von Mensch zu Mensch anders aus. <\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1d26aa7 elementor-widget elementor-widget-html\" data-id=\"1d26aa7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!--This is the html content for the retreat calendar widget-->\n<div data-retreat-section=\"\" data-api=\"\/wp-json\/retreats\/v1\/all\">\n\n  <!-- CALENDAR -->\n  <div class=\"retreat-calendar\" aria-labelledby=\"retreat-calendar-title\">\n    <div class=\"retreat-calendar-header\">\n      <div>\n        <span class=\"retreat-calendar-eyebrow\">RETREAT-TERMINE<\/span>\n\n        <h3 class=\"retreat-calendar-title\" id=\"retreat-calendar-title\">\n  W\u00e4hlen Sie Ihren Reisemonat\n        <\/h3>\n\n        <p class=\"retreat-calendar-copy\">\n  Sehen Sie, welche Retreats in dem Monat verf\u00fcgbar sind, der zu Ihren Pl\u00e4nen passt.\n        <\/p>\n      <\/div>\n\n      <p class=\"retreat-calendar-note\">\n  Termine k\u00f6nnen sich \u00e4ndern. Bitte best\u00e4tigen Sie diese vor der Buchung. \n      <\/p>\n    <\/div>\n\n    <div class=\"retreat-calendar-divider\" aria-hidden=\"true\"><\/div>\n\n    <div class=\"retreat-calendar-months\" id=\"retreat-calendar-months\" aria-label=\"Choose a travel month\">\n    <\/div>\n\n    <div class=\"retreat-calendar-results\">\n      <h4 class=\"retreat-calendar-results-title\" id=\"retreat-calendar-results-title\">\n  Verf\u00fcgbare Retreats\n      <\/h4>\n\n      <div class=\"retreat-calendar-list\" id=\"retreat-calendar-list\" aria-live=\"polite\">\n      <\/div>\n\n      <p class=\"retreat-calendar-empty is-visible\" id=\"retreat-calendar-empty\">\n  Retreat-Termine werden geladen\u2026\n      <\/p>\n\n      <a href=\"#retreat-options\" class=\"retreat-calendar-action\">\n Weitere Retreat-Optionen ansehen\n      <\/a>\n\n      <p class=\"retreat-calendar-planning-note\">\n  Die meisten Retreats dauern 5\u20137 N\u00e4chte. Wir empfehlen, wenn m\u00f6glich, einen Tag fr\u00fcher anzureisen. \n      <\/p>\n    <\/div>\n  <\/div>\n\n  <!-- ORIENTATION GRID -->\n  <div class=\"retreat-orientation-grid\">\n\n    <div class=\"retreat-orientation-item\">\n      <div class=\"retreat-orientation-icon\" aria-hidden=\"true\">\n        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 24 24\" role=\"presentation\" focusable=\"false\">\n          <path d=\"M12 3a8.5 8.5 0 1 0 9 9 7 7 0 0 1-9-9Z\"><\/path>\n        <\/path><\/svg>\n      <\/div>\n\n      <div class=\"retreat-orientation-title\">\n  Tiefe\n        <span style=\"color:var(--ember);font-style:italic;\">Ruhe<\/span>\n      <\/div>\n\n      <p class=\"retreat-orientation-copy\">\n  Die F\u00e4higkeit, mental langsamer zu werden und wieder vollst\u00e4ndig abzuschalten.\n      <\/p>\n    <\/div>\n\n    <div class=\"retreat-orientation-item\">\n      <div class=\"retreat-orientation-icon\" aria-hidden=\"true\">\n        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 24 24\" role=\"presentation\" focusable=\"false\">\n          <circle cx=\"12\" cy=\"12\" r=\"8\"><\/circle>\n          <path d=\"M12 7v5l3 2\"><\/path>\n        <\/path><\/svg>\n      <\/div>\n\n      <div class=\"retreat-orientation-title\">\n  Strukturierter\n        <span style=\"color:var(--ember);font-style:italic;\">Neustart<\/span>\n      <\/div>\n\n      <p class=\"retreat-orientation-copy\">\n  Ruhigere Routinen, stabilere Struktur und begleitete Unterst\u00fctzung zur Erholung.\n      <\/p>\n    <\/div>\n\n    <div class=\"retreat-orientation-item\">\n      <div class=\"retreat-orientation-icon\" aria-hidden=\"true\">\n        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 24 24\" role=\"presentation\" focusable=\"false\">\n          <path d=\"M6 15c3-6 9-8 12-8-1 4-3 10-9 12-2-1-3-2-3-4z\"><\/path>\n          <path d=\"M9 13c1 0 3-1 5-3\"><\/path>\n        <\/path><\/path><\/svg>\n      <\/div>\n\n      <div class=\"retreat-orientation-title\">\n  Essen & K\u00f6rper\n        <span style=\"color:var(--ember);font-style:italic;\">Rhythmus<\/span>\n      <\/div>\n\n      <p class=\"retreat-orientation-copy\">\n  Ein entspannteres Verh\u00e4ltnis zu Essen, Verdauung und t\u00e4glicher Energie.\n      <\/p>\n    <\/div>\n\n  <\/div>\n\n  <!-- DYNAMIC RETREAT CARDS -->\n  <div class=\"cards-grid retreat-main-grid\" id=\"retreat-options\" data-retreat-cards=\"\">\n\n    <p class=\"retreat-calendar-empty is-visible\" style=\"grid-column:1\/-1;text-align:center;\">\n  Retreats werden geladen\u2026\n    <\/p>\n  <\/div>\n\n<\/div>\n\n<script>\n(function () {\n  const root = document.querySelector(\"[data-retreat-section]\");\n\n  if (!root || root.dataset.retreatReady === \"true\") return;\n  root.dataset.retreatReady = \"true\";\n\n  const TEXT = {\n    en: {\n      locale: \"en-GB\",\n      date: \"date\",\n      dates: \"dates\",\n      noDates: \"No dates yet\",\n      loading: \"Loading retreat dates\u2026\",\n      noMonth: \"No upcoming retreats are available for this month.\",\n      noRetreats: \"No retreats are currently available.\",\n      error: \"Could not load retreat information. Please try again later.\",\n      limited: \"Limited places\",\n      available: \"Available retreats\",\n      multipleDates: \"Multiple dates available\",\n      oneDate: \"1 date available\",\n      byRequest: \"By request\",\n      nextDate: \"Next date\",\n      viewOther: \"View other dates\",\n      hideOther: \"Hide other dates\",\n      startingFrom: \"Starting from\",\n      contactPrice: \"Contact for pricing\",\n      details: \"View Retreat Details\",\n      earlyBooking: \"Early booking\"\n    },\n\n    vi: {\n      locale: \"vi-VN\",\n      date: \"l\u1ecbch\",\n      dates: \"l\u1ecbch\",\n      noDates: \"Ch\u01b0a c\u00f3 l\u1ecbch\",\n      loading: \"\u0110ang t\u1ea3i l\u1ecbch retreat\u2026\",\n      noMonth: \"Kh\u00f4ng c\u00f3 l\u1ecbch retreat trong th\u00e1ng n\u00e0y.\",\n      noRetreats: \"Hi\u1ec7n t\u1ea1i ch\u01b0a c\u00f3 retreat.\",\n      error: \"Kh\u00f4ng th\u1ec3 t\u1ea3i th\u00f4ng tin retreat. Vui l\u00f2ng th\u1eed l\u1ea1i sau.\",\n      limited: \"S\u1ed1 ch\u1ed7 c\u00f3 h\u1ea1n\",\n      available: \"Retreat hi\u1ec7n c\u00f3\",\n      multipleDates: \"C\u00f3 nhi\u1ec1u l\u1ecbch\",\n      oneDate: \"C\u00f3 1 l\u1ecbch\",\n      byRequest: \"Theo y\u00eau c\u1ea7u\",\n      nextDate: \"L\u1ecbch ti\u1ebfp theo\",\n      viewOther: \"Xem c\u00e1c l\u1ecbch kh\u00e1c\",\n      hideOther: \"\u1ea8n c\u00e1c l\u1ecbch kh\u00e1c\",\n      startingFrom: \"Gi\u00e1 t\u1eeb\",\n      contactPrice: \"Li\u00ean h\u1ec7 \u0111\u1ec3 bi\u1ebft gi\u00e1\",\n      details: \"Xem chi ti\u1ebft Retreat\",\n      earlyBooking: \"\u01afu \u0111\u00e3i \u0111\u1eb7t s\u1edbm\"\n    },\n\n    de: {\n      locale: \"de-DE\",\n      date: \"Termin\",\n      dates: \"Termine\",\n      noDates: \"Noch keine Termine\",\n      loading: \"Retreat-Termine werden geladen\u2026\",\n      noMonth: \"In diesem Monat sind keine Retreats verf\u00fcgbar.\",\n      noRetreats: \"Derzeit sind keine Retreats verf\u00fcgbar.\",\n      error: \"Die Retreat-Informationen konnten nicht geladen werden.\",\n      limited: \"Begrenzte Pl\u00e4tze\",\n      available: \"Verf\u00fcgbare Retreats\",\n      multipleDates: \"Mehrere Termine verf\u00fcgbar\",\n      oneDate: \"1 Termin verf\u00fcgbar\",\n      byRequest: \"Auf Anfrage\",\n      nextDate: \"N\u00e4chster Termin\",\n      viewOther: \"Weitere Termine\",\n      hideOther: \"Termine ausblenden\",\n      startingFrom: \"Ab\",\n      contactPrice: \"Preis auf Anfrage\",\n      details: \"Retreat ansehen\",\n      earlyBooking: \"Fr\u00fchbuchung\"\n    }\n  };\n\n  const detectedLanguage = (\n    document.documentElement.lang || \"en\"\n  ).toLowerCase().split(\/[-_]\/)[0];\n\n  const language = TEXT[detectedLanguage] ? detectedLanguage : \"en\";\n  const text = TEXT[language];\n  const locale = text.locale;\n\n  const monthStrip = root.querySelector(\"#retreat-calendar-months\");\n  const calendarList = root.querySelector(\"#retreat-calendar-list\");\n  const calendarTitle = root.querySelector(\n    \"#retreat-calendar-results-title\"\n  );\n  const calendarMessage = root.querySelector(\"#retreat-calendar-empty\");\n  const cardsGrid = root.querySelector(\"[data-retreat-cards]\");\n\n  const today = new Date();\n  today.setHours(0, 0, 0, 0);\n\n  function parseApiDate(value) {\n    if (!value) return null;\n\n    let match = String(value).match(\n      \/^(\\d{1,2})\\\/(\\d{1,2})\\\/(\\d{4})$\/\n    );\n\n    if (match) {\n      const month = Number(match[1]);\n      const day = Number(match[2]);\n      const year = Number(match[3]);\n      const result = new Date(year, month - 1, day);\n\n      if (\n        result.getFullYear() === year &&\n        result.getMonth() === month - 1 &&\n        result.getDate() === day\n      ) {\n        return result;\n      }\n\n      return null;\n    }\n\n    match = String(value).match(\n      \/^(\\d{4})-(\\d{2})-(\\d{2})$\/\n    );\n\n    if (match) {\n      return new Date(\n        Number(match[1]),\n        Number(match[2]) - 1,\n        Number(match[3])\n      );\n    }\n\n    return null;\n  }\n\n  function monthKey(date) {\n    return date.getFullYear() + \"-\" +\n      String(date.getMonth() + 1).padStart(2, \"0\");\n  }\n\n  function safeUrl(value) {\n    if (!value || typeof value !== \"string\") return null;\n\n    try {\n      const url = new URL(value, window.location.origin);\n\n      return [\"http:\", \"https:\"].includes(url.protocol)\n        ? url.href\n        : null;\n    } catch (error) {\n      return null;\n    }\n  }\n\n  function escapeHtml(value) {\n    const element = document.createElement(\"div\");\n    element.textContent = value == null ? \"\" : String(value);\n    return element.innerHTML;\n  }\n\n  function plainText(value) {\n    const parsed = new DOMParser().parseFromString(\n      String(value || \"\"),\n      \"text\/html\"\n    );\n\n    return parsed.body.textContent.trim();\n  }\n\n  function getUpcomingDates(retreat) {\n    if (!Array.isArray(retreat.dates)) return [];\n\n    return retreat.dates\n      .map(function (schedule) {\n        const start = parseApiDate(schedule.start);\n        const end = parseApiDate(schedule.end) || start;\n\n        return {\n          schedule: schedule,\n          start: start,\n          end: end\n        };\n      })\n      .filter(function (item) {\n        return item.start && item.end && item.end >= today;\n      })\n      .sort(function (a, b) {\n        return a.start - b.start;\n      });\n  }\n\n  function formatDateRange(item) {\n    const formatter = new Intl.DateTimeFormat(locale, {\n      day: \"2-digit\",\n      month: \"short\",\n      year: \"numeric\"\n    });\n\n    if (\n      item.end &&\n      typeof formatter.formatRange === \"function\"\n    ) {\n      return formatter.formatRange(item.start, item.end);\n    }\n\n    if (item.end) {\n      return formatter.format(item.start) +\n        \" \u2013 \" +\n        formatter.format(item.end);\n    }\n\n    return formatter.format(item.start);\n  }\n\n  function showCalendarMessage(message) {\n    calendarMessage.textContent = message;\n    calendarMessage.classList.toggle(\n      \"is-visible\",\n      Boolean(message)\n    );\n  }\n\n  function renderCalendar(retreats) {\n    const schedules = [];\n\n    retreats.forEach(function (retreat) {\n      getUpcomingDates(retreat).forEach(function (item) {\n        schedules.push({\n          retreatId: retreat.id,\n          name: retreat.name || \"\",\n          location: retreat.location || \"\",\n          url: retreat.url || \"\",\n          start: item.start,\n          end: item.end,\n          limited: item.schedule.limited === true\n        });\n      });\n    });\n\n    schedules.sort(function (a, b) {\n      return a.start - b.start;\n    });\n\n    const planningMonths = Array.from(\n      { length: 9 },\n      function (_, index) {\n        return monthKey(\n          new Date(\n            today.getFullYear(),\n            today.getMonth() + index,\n            1\n          )\n        );\n      }\n    );\n\n    const counts = {};\n\n    schedules.forEach(function (schedule) {\n      const key = monthKey(schedule.start);\n      counts[key] = (counts[key] || 0) + 1;\n    });\n\n    let selectedMonth = planningMonths.find(function (key) {\n      return counts[key] > 0;\n    }) || null;\n\n    const monthFormatter = new Intl.DateTimeFormat(locale, {\n      month: \"long\",\n      year: \"numeric\"\n    });\n\n    const shortMonthFormatter = new Intl.DateTimeFormat(locale, {\n      month: \"short\"\n    });\n\n    function renderMonthButtons() {\n      monthStrip.replaceChildren();\n\n      planningMonths.forEach(function (key) {\n        const count = counts[key] || 0;\n        const parts = key.split(\"-\");\n\n        const monthDate = new Date(\n          Number(parts[0]),\n          Number(parts[1]) - 1,\n          1\n        );\n\n        const button = document.createElement(\"button\");\n        button.type = \"button\";\n        button.className = \"retreat-calendar-month-button\";\n        button.disabled = count === 0;\n        button.setAttribute(\n          \"aria-pressed\",\n          String(selectedMonth === key)\n        );\n\n        if (selectedMonth === key) {\n          button.classList.add(\"is-active\");\n        }\n\n        const monthName = document.createElement(\"span\");\n        monthName.className = \"retreat-calendar-month-name\";\n        monthName.textContent = shortMonthFormatter\n          .format(monthDate)\n          .toLocaleUpperCase(locale);\n\n        const year = document.createElement(\"span\");\n        year.className = \"retreat-calendar-month-year\";\n        year.textContent = parts[0];\n\n        const countElement = document.createElement(\"span\");\n        countElement.className = \"retreat-calendar-month-count\";\n\n        countElement.textContent = count\n          ? count + \" \" + (count === 1 ? text.date : text.dates)\n          : text.noDates;\n\n        button.append(monthName, year, countElement);\n\n        if (count) {\n          button.addEventListener(\"click\", function () {\n            selectedMonth = key;\n            renderMonthButtons();\n            renderCalendarRows();\n          });\n        }\n\n        monthStrip.appendChild(button);\n      });\n    }\n\n    function renderCalendarRows() {\n      calendarList.replaceChildren();\n\n      if (!selectedMonth) {\n        calendarTitle.textContent =\n          text.available.toLocaleUpperCase(locale);\n\n        showCalendarMessage(text.noMonth);\n        return;\n      }\n\n      const matches = schedules.filter(function (schedule) {\n        return monthKey(schedule.start) === selectedMonth;\n      });\n\n      const parts = selectedMonth.split(\"-\");\n\n      const monthDate = new Date(\n        Number(parts[0]),\n        Number(parts[1]) - 1,\n        1\n      );\n\n      calendarTitle.textContent = monthFormatter\n        .format(monthDate)\n        .toLocaleUpperCase(locale);\n\n      showCalendarMessage(matches.length ? \"\" : text.noMonth);\n\n      matches.forEach(function (schedule) {\n        const row = document.createElement(\"article\");\n        row.className = \"retreat-calendar-item\";\n\n        const date = document.createElement(\"span\");\n        date.className = \"retreat-calendar-date\";\n\n        const day = document.createElement(\"span\");\n        day.className = \"retreat-calendar-day\";\n\n        day.textContent = new Intl.DateTimeFormat(locale, {\n          day: \"2-digit\"\n        }).format(schedule.start);\n\n        const month = document.createElement(\"span\");\n        month.className = \"retreat-calendar-item-month\";\n\n        month.textContent = shortMonthFormatter\n          .format(schedule.start)\n          .toLocaleUpperCase(locale);\n\n        date.append(day, month);\n\n        const retreatUrl = safeUrl(schedule.url);\n\n        const name = document.createElement(\n          retreatUrl ? \"a\" : \"span\"\n        );\n\n        name.className = \"retreat-calendar-name\";\n        name.textContent = schedule.name;\n\n        if (retreatUrl) {\n          name.href = retreatUrl;\n        }\n\n        const location = document.createElement(\"span\");\n        location.className = \"retreat-calendar-location\";\n        location.textContent = schedule.location;\n\n        row.append(date, name, location);\n\n        if (schedule.limited) {\n          const badge = document.createElement(\"span\");\n          badge.className = \"retreat-calendar-status\";\n          badge.textContent = text.limited;\n          row.appendChild(badge);\n        }\n\n        calendarList.appendChild(row);\n      });\n    }\n\n    renderMonthButtons();\n    renderCalendarRows();\n  }\n\n  function renderCards(retreats) {\n    if (!retreats.length) {\n      cardsGrid.innerHTML =\n        '<p class=\"retreat-calendar-empty is-visible\" ' +\n        'style=\"grid-column:1\/-1;text-align:center;\">' +\n        escapeHtml(text.noRetreats) +\n        \"<\/p>\";\n\n      return;\n    }\n\n    const cards = retreats.map(function (retreat, index) {\n      const upcomingDates = getUpcomingDates(retreat);\n      const retreatUrl = safeUrl(retreat.url);\n      const imageUrl = safeUrl(retreat.image);\n\n      const name = retreat.name || \"Retreat\";\n      const location = retreat.location || \"Retreat\";\n      const description = plainText(retreat.description);\n\n      const prices = Array.isArray(retreat.packages)\n        ? retreat.packages\n            .map(function (item) {\n              return Number(item.price);\n            })\n            .filter(function (price) {\n              return Number.isFinite(price) && price > 0;\n            })\n        : [];\n\n      const minimumPrice = prices.length\n        ? Math.min.apply(null, prices)\n        : null;\n\n      const priceText = minimumPrice\n        ? text.startingFrom + \" \" +\n          new Intl.NumberFormat(locale, {\n            style: \"currency\",\n            currency: \"VND\",\n            maximumFractionDigits: 0\n          }).format(minimumPrice)\n        : text.contactPrice;\n\n      const uniqueId =\n        \"retreat-extra-dates-\" +\n        String(retreat.id || index).replace(\n          \/[^a-zA-Z0-9_-]\/g,\n          \"\"\n        );\n\n      let badge = text.byRequest;\n\n      if (upcomingDates.length > 1) {\n        badge = text.multipleDates;\n      } else if (upcomingDates.length === 1) {\n        badge = text.oneDate;\n      }\n\n      let datesMarkup = \"\";\n\n      if (upcomingDates.length) {\n        const nextDate = formatDateRange(upcomingDates[0]);\n\n        const additionalDates = upcomingDates\n          .slice(1)\n          .map(function (item) {\n            return \"<li>\" +\n              escapeHtml(formatDateRange(item)) +\n              \"<\/li>\";\n          })\n          .join(\"\");\n\n        datesMarkup = `\n          <div class=\"retreat-date-line\">\n            <span class=\"retreat-meta-label\">\n              ${escapeHtml(text.nextDate)}\n            <\/span>\n\n            <span class=\"retreat-date-value\">\n              ${escapeHtml(nextDate)}\n            <\/span>\n          <\/div>\n\n          ${additionalDates ? `\n            <div class=\"retreat-extra-dates is-collapsed\" id=\"${escapeHtml(uniqueId)}\">\n              <ul>${additionalDates}<\/ul>\n            <\/div>\n\n            <button class=\"retreat-dates-toggle\" type=\"button\" data-card-dates-toggle aria-controls=\"${escapeHtml(uniqueId)}\" aria-expanded=\"false\" data-open-label=\"${escapeHtml(text.viewOther)}\" data-close-label=\"${escapeHtml(text.hideOther)}\">\n              ${escapeHtml(text.viewOther)}\n            <\/button>\n          ` : \"\"}\n        `;\n      } else {\n        datesMarkup = `\n          <div class=\"retreat-date-line\">\n            <span class=\"retreat-date-value\">\n              ${escapeHtml(text.byRequest)}\n            <\/span>\n          <\/div>\n        `;\n      }\n\n      const imageMarkup = imageUrl\n        ? `\n          <img src=\"${escapeHtml(imageUrl)}\" alt=\"${escapeHtml(name)}\" loading=\"lazy\" decoding=\"async\" style=\"\n              position:absolute;\n              inset:0;\n              width:100%;\n              height:100%;\n              object-fit:cover;\n              z-index:0;\n              transition:filter 0.5s ease;\n            \">\n        `\n        : \"\";\n\n      const imageStart = retreatUrl\n        ? `\n          <a href=\"${escapeHtml(retreatUrl)}\" class=\"retreat-card-img\" aria-label=\"${escapeHtml(name)}\" style=\"background:none;position:relative;overflow:hidden;\">\n        `\n        : `\n          <div class=\"retreat-card-img\" style=\"position:relative;overflow:hidden;\">\n        `;\n\n      const imageEnd = retreatUrl ? \"<\/a>\" : \"<\/div>\";\n\n      const title = retreatUrl\n        ? `\n          <a href=\"${escapeHtml(retreatUrl)}\">\n            ${escapeHtml(name)}\n          <\/a>\n        `\n        : escapeHtml(name);\n\n      const earlyBirdMarkup = retreat.earlyBirdNote\n        ? `\n          <div class=\"retreat-meta-block\">\n            <span class=\"retreat-meta-label\">\n              ${escapeHtml(text.earlyBooking)}\n            <\/span>\n\n            <p class=\"retreat-meta-value\">\n              ${escapeHtml(plainText(retreat.earlyBirdNote))}\n            <\/p>\n          <\/div>\n        `\n        : \"\";\n\n      const detailButton = retreatUrl\n        ? `\n          <a href=\"${escapeHtml(retreatUrl)}\" class=\"retreat-btn\">\n            ${escapeHtml(text.details)}\n          <\/a>\n        `\n        : \"\";\n\n      return `\n        <article class=\"retreat-card\">\n\n          ${imageStart}\n            ${imageMarkup}\n\n            <span class=\"dates-badge\" style=\"position:relative;z-index:2;\">\n              ${escapeHtml(badge)}\n            <\/span>\n          ${imageEnd}\n\n          <div style=\"\n              height:6px;\n              width:100%;\n              display:block;\n              background:var(--ember);\n              flex-shrink:0;\n            \">\n          <\/div>\n\n          <div class=\"retreat-card-body\">\n\n            <div class=\"retreat-card-top\">\n              <span class=\"tag\">\n                ${escapeHtml(location)}\n              <\/span>\n\n              <h4>${title}<\/h4>\n            <\/div>\n\n            ${description ? `\n              <div class=\"retreat-card-summary\">\n                <p>${escapeHtml(description)}<\/p>\n              <\/div>\n            ` : \"\"}\n\n            ${earlyBirdMarkup}\n\n            <div class=\"retreat-date-block\">\n              ${datesMarkup}\n            <\/div>\n\n            <div class=\"retreat-card-footer\">\n              <div class=\"price\">\n                ${escapeHtml(priceText)}\n              <\/div>\n\n              ${detailButton}\n            <\/div>\n\n          <\/div>\n        <\/article>\n      `;\n    });\n\n    cardsGrid.innerHTML = cards.join(\"\");\n\n    cardsGrid\n      .querySelectorAll(\"[data-card-dates-toggle]\")\n      .forEach(function (button) {\n        button.addEventListener(\"click\", function () {\n          const target = document.getElementById(\n            button.getAttribute(\"aria-controls\")\n          );\n\n          if (!target) return;\n\n          const collapsed = target.classList.toggle(\n            \"is-collapsed\"\n          );\n\n          button.setAttribute(\n            \"aria-expanded\",\n            String(!collapsed)\n          );\n\n          button.textContent = collapsed\n            ? button.dataset.openLabel\n            : button.dataset.closeLabel;\n        });\n      });\n  }\n\n  async function loadRetreats() {\n    try {\n      const retreats = await getSharedRetreatApi().load(\n        root.dataset.api || \"\/wp-json\/retreats\/v1\/all\",\n        language\n      );\n\n      renderCalendar(retreats);\n      renderCards(retreats);\n\n    } catch (error) {\n      console.error(\"Retreat API:\", error);\n\n      monthStrip.replaceChildren();\n      calendarList.replaceChildren();\n\n      showCalendarMessage(text.error);\n\n      cardsGrid.innerHTML =\n        '<p class=\"retreat-calendar-empty is-visible\" ' +\n        'style=\"grid-column:1\/-1;text-align:center;\">' +\n        escapeHtml(text.error) +\n        \"<\/p>\";\n    }\n  }\n\nfunction getSharedRetreatApi() {\n  if (window.VietnamDetoxRetreatAPI) {\n    return window.VietnamDetoxRetreatAPI;\n  }\n\n  window.VietnamDetoxRetreatAPI = {\n    requests: {},\n\n    load: function(apiPath, requestedLanguage) {\n      var apiUrl = new URL(\n        apiPath || '\/wp-json\/retreats\/v1\/all',\n        window.location.origin\n      );\n\n      apiUrl.searchParams.set(\n        'lang',\n        requestedLanguage || 'en'\n      );\n\n      var cacheKey = apiUrl.href;\n\n      if (!this.requests[cacheKey]) {\n        this.requests[cacheKey] = fetch(cacheKey, {\n          headers: { Accept: 'application\/json' }\n        })\n          .then(function(response) {\n            if (!response.ok) {\n              throw new Error(\n                'Retreat API returned HTTP ' + response.status\n              );\n            }\n\n            return response.json();\n          })\n          .then(function(retreats) {\n            if (!Array.isArray(retreats)) {\n              throw new Error('Unexpected retreat API response');\n            }\n\n            return retreats;\n          })\n          .catch(function(error) {\n            delete window.VietnamDetoxRetreatAPI.requests[cacheKey];\n            throw error;\n          });\n      }\n\n      return this.requests[cacheKey];\n    }\n  };\n\n  return window.VietnamDetoxRetreatAPI;\n}\n\n  loadRetreats();\n})();\n<\/script>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8be7e55 elementor-widget elementor-widget-html\" data-id=\"8be7e55\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!--\n  Copy this entire file into ONE Elementor HTML widget.\n  Put retreat-quiz.css into that widget's Advanced > Custom CSS field.\n  All visitor-facing text is HTML in this file, including the hidden quiz text near the\n  end, so WPML translates the whole quiz with the page. The script only holds the scoring.\n-->\n\n<div class=\"rdq\" data-retreat-quiz=\"\" data-api=\"\/wp-json\/retreats\/v1\/all\">\n  <div class=\"rdq-transition\">Nicht sicher, welches Retreat passt?<\/div>\n\n  <section class=\"rdq-intro\" aria-labelledby=\"rdq-intro-title\">\n    <div class=\"rdq-intro-grid\">\n      <div class=\"rdq-intro-copy\">\n        <span class=\"rdq-eyebrow\">RETREAT-ORIENTIERUNGSQUIZ<\/span>\n        <h3 id=\"rdq-intro-title\">\n Finden Sie das Retreat, das <em>zu Ihrer aktuellen Situation passt<\/em>.\n        <\/h3>\n        <p>\n Beantworten Sie ein paar ruhige Fragen zu Ihren aktuellen Vorlieben, dem gew\u00fcnschten\nRetreat-Rhythmus und der Art von Unterst\u00fctzung, die sich f\u00fcr Sie richtig anf\u00fchlt.\n        <\/p>\n        <p class=\"rdq-intro-note\">\n  Dauert etwa zwei Minuten. Keine Diagnose. Nur Orientierung.  \n        <\/p>\n      <\/div>\n\n      <div class=\"rdq-intro-divider\" aria-hidden=\"true\"><\/div>\n\n      <div class=\"rdq-intro-side\">\n        <span class=\"rdq-kicker\">IN ZWEI MINUTEN<\/span>\n        <ul class=\"rdq-list\">\n          <li><span class=\"rdq-bullet\" aria-hidden=\"true\"><\/span><span>Beantworten Sie 8 Fragen zu Ihren Pr\u00e4ferenzen<\/span><\/li>\n          <li><span class=\"rdq-bullet\" aria-hidden=\"true\"><\/span><span>Vergleichen Sie die verf\u00fcgbaren Retreat-Optionen<\/span><\/li>\n          <li><span class=\"rdq-bullet\" aria-hidden=\"true\"><\/span><span>Sehen Sie Live-Termine, Orte und Preise<\/span><\/li>\n        <\/ul>\n\n        <button class=\"rdq-btn rdq-btn-ember\" type=\"button\" data-rdq-open=\"\" aria-haspopup=\"dialog\" aria-controls=\"rdq-modal\" aria-expanded=\"false\">\n Retreat-Quiz starten\n        <\/button>\n      <\/div>\n    <\/div>\n  <\/section>\n\n  <div class=\"rdq-modal\" id=\"rdq-modal\" data-rdq-modal=\"\" aria-hidden=\"true\" hidden=\"\">\n\n    <div class=\"rdq-backdrop\" data-rdq-close=\"\" aria-hidden=\"true\"><\/div>\n\n    <section class=\"rdq-dialog\" data-rdq-dialog=\"\" role=\"dialog\" aria-modal=\"true\" aria-labelledby=\"rdq-modal-title\" aria-describedby=\"rdq-modal-note\" tabindex=\"-1\">\n\n      <header class=\"rdq-topbar\">\n        <div>\n          <span class=\"rdq-modal-eyebrow\">RETREAT-QUIZ<\/span>\n          <h3 class=\"rdq-modal-title\" id=\"rdq-modal-title\">Finden Sie Ihr am besten passendes Retreat<\/h3>\n          <p class=\"rdq-modal-note\" id=\"rdq-modal-note\">Ein paar ruhige Fragen, die Ihnen helfen, mit mehr Klarheit zu w\u00e4hlen.<\/p>\n        <\/div>\n\n        <button type=\"button\" class=\"rdq-close\" data-rdq-close=\"\" aria-label=\"Close quiz\">\n \u00d7\n        <\/button>\n      <\/header>\n\n      <div class=\"rdq-main\">\n        <div class=\"rdq-progress\" data-rdq-progress=\"\" aria-live=\"polite\">\n          <div class=\"rdq-progress-text\" data-rdq-progress-text=\"\">Frage 1 von 8<\/div>\n          <div class=\"rdq-progress-track\" aria-hidden=\"true\">\n            <div class=\"rdq-progress-fill\" data-rdq-progress-fill=\"\"><\/div>\n          <\/div>\n        <\/div>\n\n        <div class=\"rdq-stage\" data-rdq-stage=\"\"><\/div>\n        <div class=\"rdq-result\" data-rdq-result=\"\" hidden=\"\"><\/div>\n      <\/div>\n    <\/section>\n  <\/div>\n\n  <!--\n    Quiz text read by the script below. Hidden from visitors; WPML translates it with the\n    rest of the page. Keep the order: questions and answers match the scores in the script\n    by position. Keep {count}, {current}, {total} and {name}; the script fills them in.\n  -->\n  <div class=\"rdq-copy\" data-rdq-copy=\"\" hidden=\"\">\n    <ol>\n      <li data-rdq-question=\"\">\n        <p data-rdq-question-text=\"\">Wonach suchen Sie im Moment vor allem?<\/p>\n        <ul>\n          <li data-rdq-answer-text=\"\">Innere Klarheit, Besinnung und Zeit, wieder zu mir selbst zu finden<\/li>\n          <li data-rdq-answer-text=\"\">Einen strukturierten, begleiteten Neustart mit praktischen Werkzeugen f\u00fcr zu Hause<\/li>\n          <li data-rdq-answer-text=\"\">Einen sanften ersten Schritt mit hei\u00dfen Quellen in einem ruhigen Resort<\/li>\n          <li data-rdq-answer-text=\"\">Ein privates Retreat, abgestimmt auf meine eigenen Bed\u00fcrfnisse oder meine Gruppe<\/li>\n        <\/ul>\n      <\/li>\n      <li data-rdq-question=\"\">\n        <p data-rdq-question-text=\"\">Welche Atmosph\u00e4re spricht Sie am meisten an?<\/p>\n        <ul>\n          <li data-rdq-answer-text=\"\">Stille Berge, spirituelles Erbe und Raum f\u00fcr Kontemplation<\/li>\n          <li data-rdq-answer-text=\"\">Das Meer, Strandspazierg\u00e4nge und ein ruhiges Resort an der K\u00fcste<\/li>\n          <li data-rdq-answer-text=\"\">Nat\u00fcrliche hei\u00dfe Quellen, Kr\u00e4uterb\u00e4der und ruhiger Resort-Komfort<\/li>\n          <li data-rdq-answer-text=\"\">Ein diskreter Rahmen, ausgew\u00e4hlt f\u00fcr mich, meine Begleitung oder meine Gruppe<\/li>\n        <\/ul>\n      <\/li>\n      <li data-rdq-question=\"\">\n        <p data-rdq-question-text=\"\">Welche Art von Begleitung w\u00e4re f\u00fcr Sie am angenehmsten?<\/p>\n        <ul>\n          <li data-rdq-answer-text=\"\">Genug Anleitung, mit viel Raum f\u00fcr Stille und Besinnung<\/li>\n          <li data-rdq-answer-text=\"\">Ein unterst\u00fctzendes Gruppenprogramm mit klarer Tagesstruktur<\/li>\n          <li data-rdq-answer-text=\"\">Ein sanftes, leicht zug\u00e4ngliches Programm in einem komfortablen Wellness-Ambiente<\/li>\n          <li data-rdq-answer-text=\"\">Individuelle Aufmerksamkeit und ein Format, das auf meine Situation zugeschnitten ist<\/li>\n        <\/ul>\n      <\/li>\n      <li data-rdq-question=\"\">\n        <p data-rdq-question-text=\"\">Welcher Retreat-Rhythmus f\u00fchlt sich f\u00fcr Sie am besten an?<\/p>\n        <ul>\n          <li data-rdq-answer-text=\"\">Weit, ruhig und nach innen gerichtet<\/li>\n          <li data-rdq-answer-text=\"\">Strukturiert, anregend und sanft motivierend<\/li>\n          <li data-rdq-answer-text=\"\">Sanft, flie\u00dfend und ohne Druck<\/li>\n          <li data-rdq-answer-text=\"\">Flexibel und auf mein bevorzugtes Tempo abgestimmt<\/li>\n        <\/ul>\n      <\/li>\n      <li data-rdq-question=\"\">\n        <p data-rdq-question-text=\"\">Wie m\u00f6chten Sie das Retreat am liebsten erleben?<\/p>\n        <ul>\n          <li data-rdq-answer-text=\"\">Als pers\u00f6nliche Reise nach innen an einem spirituell bedeutsamen Ort<\/li>\n          <li data-rdq-answer-text=\"\">Gemeinsam mit anderen, mit praktischer Anleitung, die ich zu Hause weiter nutzen kann<\/li>\n          <li data-rdq-answer-text=\"\">Als sanfte Wellness-Auszeit mit hei\u00dfen Quellen und Resort-Komfort<\/li>\n          <li data-rdq-answer-text=\"\">Privat, allein, als Paar, Familie oder kleine Gruppe<\/li>\n        <\/ul>\n      <\/li>\n      <li data-rdq-question=\"\">\n        <p data-rdq-question-text=\"\">Haben Sie schon einmal gefastet?<\/p>\n        <ul>\n          <li data-rdq-answer-text=\"\">Ja, und mich zieht es zu einer tieferen, kontemplativen Erfahrung<\/li>\n          <li data-rdq-answer-text=\"\">Ein- oder zweimal, und ich sch\u00e4tze ein klar angeleitetes Gruppenprogramm<\/li>\n          <li data-rdq-answer-text=\"\">Nein, ich w\u00fcnsche mir eine sanfte, leicht zug\u00e4ngliche erste Erfahrung<\/li>\n          <li data-rdq-answer-text=\"\">Ich m\u00f6chte zuerst \u00fcber einen individuell abgestimmten Ansatz sprechen<\/li>\n        <\/ul>\n      <\/li>\n      <li data-rdq-question=\"\">\n        <p data-rdq-question-text=\"\">Was ist Ihnen beim Vergleich der Retreat-Optionen am wichtigsten?<\/p>\n        <ul>\n          <li data-rdq-answer-text=\"\">Ein Ort, der Stille und innere Einkehr f\u00f6rdert<\/li>\n          <li data-rdq-answer-text=\"\">Ein klares, strukturiertes Programm am Meer, mit Begleitung f\u00fcr die R\u00fcckkehr in den Alltag<\/li>\n          <li data-rdq-answer-text=\"\">Eine sanfte Resort-Umgebung mit Anwendungen aus nat\u00fcrlichen hei\u00dfen Quellen<\/li>\n          <li data-rdq-answer-text=\"\">Privatsph\u00e4re, flexible Termine und ein Format, das auf mich zugeschnitten ist<\/li>\n        <\/ul>\n      <\/li>\n      <li data-rdq-question=\"\">\n        <p data-rdq-question-text=\"\">Welcher Satz beschreibt Ihre aktuelle Situation am besten?<\/p>\n        <ul>\n          <li data-rdq-answer-text=\"\">Ich brauche Raum, um mich selbst wieder zu h\u00f6ren<\/li>\n          <li data-rdq-answer-text=\"\">Ich w\u00fcnsche mir stabilere Energie und einen entspannteren Umgang mit Essen und Ruhe<\/li>\n          <li data-rdq-answer-text=\"\">Ich w\u00fcnsche mir einen sanften Neustart, der sich angenehm und machbar anf\u00fchlt<\/li>\n          <li data-rdq-answer-text=\"\">Ich w\u00fcnsche mir ein Retreat, das auf meine pers\u00f6nliche Situation abgestimmt ist<\/li>\n        <\/ul>\n      <\/li>\n    <\/ol>\n\n    <div data-rdq-profile=\"an\">\n      <p data-rdq-profile-name=\"\">\u201eAn\u201c Retreat im Legacy Y\u00ean T\u1eed MGallery<\/p>\n      <p data-rdq-profile-reason=\"\">Ihre Antworten deuten auf Stille, Besinnung und innere Neuausrichtung hin. Diese Retreat-Richtung k\u00f6nnte zu Ihnen passen, wenn Sie dem L\u00e4rm des Alltags entkommen und einen begleiteten Neustart in einer kontemplativen Berglandschaft erleben m\u00f6chten. <\/p>\n    <\/div>\n    <div data-rdq-profile=\"hoi\">\n      <p data-rdq-profile-name=\"\">H\u1ed3i Retreat im Fusion Resort & Villas Da Nang<\/p>\n      <p data-rdq-profile-reason=\"\">Ihre Antworten deuten auf einen strukturierten, gut begleiteten Neustart mit praktischer Unterst\u00fctzung hin. Diese Retreat-Richtung k\u00f6nnte zu Ihnen passen, wenn Ihnen ein klarer Tagesrhythmus am Meer, stabilere Energie und eine Anleitung, die Sie zu Hause weiter nutzen k\u00f6nnen, am wichtigsten sind. <\/p>\n    <\/div>\n    <div data-rdq-profile=\"yen\">\n      <p data-rdq-profile-name=\"\">Y\u00ean Retreat \u2013 Sanftes Fasten mit Vietnam Detox<\/p>\n      <p data-rdq-profile-reason=\"\">Ihre Antworten deuten auf einen sanfteren, leicht zug\u00e4nglichen Neustart in einer ruhigen Resort-Umgebung hin. Diese Retreat-Richtung k\u00f6nnte zu Ihnen passen, wenn Sie sich von nat\u00fcrlichen hei\u00dfen Quellen, Kr\u00e4uterb\u00e4dern und einem angenehmen ersten Schritt ins Fasten angesprochen f\u00fchlen. <\/p>\n    <\/div>\n    <div data-rdq-profile=\"private\">\n      <p data-rdq-profile-name=\"\">Private & Firmen-Retreats<\/p>\n      <p data-rdq-profile-reason=\"\">Ihre Antworten deuten auf Privatsph\u00e4re, Flexibilit\u00e4t und ein Retreat hin, das auf Ihre Situation zugeschnitten ist. Ein privates Format k\u00f6nnte zu Ihnen passen, wenn Ihnen Zeitpunkt, Gruppenzusammensetzung oder pers\u00f6nliche Betreuung wichtiger sind als die Teilnahme an einem festen \u00f6ffentlichen Termin. <\/p>\n    <\/div>\n\n    <ul>\n      <li data-rdq-label=\"introListCount\">Vergleichen Sie alle {count} Retreat-Optionen<\/li>\n      <li data-rdq-label=\"closeQuiz\">Quiz schlie\u00dfen<\/li>\n      <li data-rdq-label=\"questionProgress\">Frage {current} von {total}<\/li>\n      <li data-rdq-label=\"chooseAnswer\">W\u00e4hlen Sie die Antwort, die am ehesten zutrifft.<\/li>\n      <li data-rdq-label=\"back\">Zur\u00fcck<\/li>\n      <li data-rdq-label=\"next\">Weiter<\/li>\n      <li data-rdq-label=\"seeResults\">Meine Ergebnisse ansehen<\/li>\n      <li data-rdq-label=\"byRequest\">Auf Anfrage<\/li>\n      <li data-rdq-label=\"detailsOnRequest\">Details auf Anfrage<\/li>\n      <li data-rdq-label=\"priceOnRequest\">Preis auf Anfrage<\/li>\n      <li data-rdq-label=\"nextDateBadge\">N\u00e4chster Termin:<\/li>\n      <li data-rdq-label=\"strongestEyebrow\">IHRE BESTE \u00dcBEREINSTIMMUNG<\/li>\n      <li data-rdq-label=\"strongestTitle\">Ihr am besten passendes Retreat ist {name}<\/li>\n      <li data-rdq-label=\"secondaryMatch\">Auch {name} k\u00f6nnte gut zu Ihnen passen, da einige Ihrer Vorlieben ebenfalls in diese Richtung weisen.<\/li>\n      <li data-rdq-label=\"location\">Ort<\/li>\n      <li data-rdq-label=\"nextAvailability\">N\u00e4chster Termin<\/li>\n      <li data-rdq-label=\"startingPrice\">Preis ab<\/li>\n      <li data-rdq-label=\"resultNote\">Dieser Vergleich bezieht sich nur auf Retreat-Stil und Vorlieben. Er ist weder eine medizinische Beratung noch eine Einsch\u00e4tzung Ihrer Fastentauglichkeit; die gesundheitliche Eignung muss separat mit dem Retreat-Team gekl\u00e4rt werden. <\/li>\n      <li data-rdq-label=\"percentagesLabel\">\u00dcbereinstimmung mit den Retreats in Prozent<\/li>\n      <li data-rdq-label=\"explore\">Entdecken Sie {name}<\/li>\n      <li data-rdq-label=\"exploreAll\">Alle Retreat-Termine ansehen<\/li>\n      <li data-rdq-label=\"restart\">Quiz neu starten<\/li>\n      <li data-rdq-label=\"noRetreatsTitle\">Retreat-Ergebnisse sind vor\u00fcbergehend nicht verf\u00fcgbar<\/li>\n      <li data-rdq-label=\"noRetreatsCopy\">Wir konnten die aktuelle Retreat-Liste nicht laden. Bitte schlie\u00dfen Sie das Quiz und versuchen Sie es in K\u00fcrze erneut. <\/li>\n    <\/ul>\n  <\/div>\n<\/div>\n\n<script>\n(function() {\n  'use strict';\n\n  var root = document.querySelector('[data-retreat-quiz]');\n  if (!root || root.dataset.rdqReady === 'true') return;\n  root.dataset.rdqReady = 'true';\n\n  \/\/ Scores per answer, in the order of the questions and answers in [data-rdq-copy].\n  \/\/ The text itself is HTML in that block, so WPML translates it with the page.\n  var answerScores = [\n    [\n      { an: 4, hoi: 1, yen: 1, private: 1 },\n      { an: 1, hoi: 4, yen: 1, private: 0 },\n      { an: 1, hoi: 1, yen: 4, private: 0 },\n      { an: 1, hoi: 0, yen: 0, private: 4 }\n    ],\n    [\n      { an: 4, hoi: 0, yen: 1, private: 0 },\n      { an: 0, hoi: 4, yen: 1, private: 0 },\n      { an: 0, hoi: 1, yen: 4, private: 0 },\n      { an: 0, hoi: 0, yen: 0, private: 4 }\n    ],\n    [\n      { an: 4, hoi: 1, yen: 1, private: 0 },\n      { an: 1, hoi: 4, yen: 1, private: 0 },\n      { an: 1, hoi: 1, yen: 4, private: 0 },\n      { an: 0, hoi: 0, yen: 0, private: 4 }\n    ],\n    [\n      { an: 4, hoi: 0, yen: 1, private: 0 },\n      { an: 0, hoi: 4, yen: 1, private: 0 },\n      { an: 1, hoi: 1, yen: 4, private: 0 },\n      { an: 0, hoi: 0, yen: 0, private: 4 }\n    ],\n    [\n      { an: 4, hoi: 1, yen: 1, private: 0 },\n      { an: 1, hoi: 4, yen: 1, private: 0 },\n      { an: 1, hoi: 1, yen: 4, private: 0 },\n      { an: 0, hoi: 0, yen: 0, private: 4 }\n    ],\n    [\n      { an: 4, hoi: 1, yen: 0, private: 1 },\n      { an: 1, hoi: 4, yen: 2, private: 0 },\n      { an: 0, hoi: 2, yen: 4, private: 1 },\n      { an: 0, hoi: 0, yen: 1, private: 4 }\n    ],\n    [\n      { an: 4, hoi: 0, yen: 1, private: 0 },\n      { an: 0, hoi: 4, yen: 1, private: 0 },\n      { an: 0, hoi: 1, yen: 4, private: 0 },\n      { an: 0, hoi: 0, yen: 0, private: 4 }\n    ],\n    [\n      { an: 4, hoi: 0, yen: 1, private: 0 },\n      { an: 0, hoi: 4, yen: 1, private: 0 },\n      { an: 1, hoi: 1, yen: 4, private: 0 },\n      { an: 0, hoi: 0, yen: 0, private: 4 }\n    ]\n  ];\n\n  function textOf(element) {\n    return element ? element.textContent.replace(\/\\s+\/g, ' ').trim() : '';\n  }\n\n  var copyRoot = root.querySelector('[data-rdq-copy]');\n  if (!copyRoot) return;\n\n  var labels = {};\n  copyRoot.querySelectorAll('[data-rdq-label]').forEach(function(item) {\n    labels[item.getAttribute('data-rdq-label')] = textOf(item);\n  });\n\n  \/\/ A label with its {placeholders} filled in, e.g. label('questionProgress', { current: 1, total: 8 }).\n  \/\/ WPML trims or keeps spaces at the edges of translated segments, so a placeholder can\n  \/\/ touch a word (\"b\u1ea1n l\u00e0{name}\") or gain a space (\"{current}\/ {total}\"); normalise both.\n  function label(key, values) {\n    return (labels[key] || '')\n      .replace(\/\\\/\\s+\\{\/g, '\/{')\n      .replace(\/\\}\\s+\\\/\/g, '}\/')\n      .replace(\/([\\p{L}\\p{N}])\\{\/gu, '$1 {')\n      .replace(\/\\}([\\p{L}\\p{N}])\/gu, '} $1')\n      .replace(\/\\{(\\w+)\\}\/g, function(match, name) {\n        return values && Object.prototype.hasOwnProperty.call(values, name) ? String(values[name]) : match;\n      });\n  }\n\n  var questions = Array.prototype.map.call(copyRoot.querySelectorAll('[data-rdq-question]'), function(item, questionIndex) {\n    return {\n      question: textOf(item.querySelector('[data-rdq-question-text]')),\n      answers: Array.prototype.map.call(item.querySelectorAll('[data-rdq-answer-text]'), function(answer, answerIndex) {\n        return {\n          label: textOf(answer),\n          scores: (answerScores[questionIndex] || [])[answerIndex] || {}\n        };\n      })\n    };\n  });\n  if (!questions.length) return;\n\n  \/\/ These keys describe the quiz's scoring directions. The retreats shown in\n  \/\/ results are populated separately from the live API response.\n  var profileOrder = ['an', 'hoi', 'yen', 'private'];\n  var activeProfileOrder = [];\n  var profiles = {\n    an: { id: 13045, sku: 'ANLYT', name: '', reason: '', url: '#retreat-options', api: null },\n    hoi: { id: 21210, sku: 'HOI-FRVDAD', name: '', reason: '', url: '#retreat-options', api: null },\n    yen: { id: 2244, sku: 'AWVH', name: '', reason: '', url: '#retreat-options', api: null },\n    \/\/ No SKU, and the post ID differs per language, so match the API's is_private flag.\n    private: { id: 8905, sku: '', isPrivate: true, name: '', reason: '', url: '#retreat-options', api: null }\n  };\n\n  copyRoot.querySelectorAll('[data-rdq-profile]').forEach(function(item) {\n    var profile = profiles[item.getAttribute('data-rdq-profile')];\n    if (!profile) return;\n    profile.name = textOf(item.querySelector('[data-rdq-profile-name]'));\n    profile.reason = textOf(item.querySelector('[data-rdq-profile-reason]'));\n  });\n\n  var modal = root.querySelector('[data-rdq-modal]');\n  var dialog = root.querySelector('[data-rdq-dialog]');\n  var openButton = root.querySelector('[data-rdq-open]');\n  var progress = root.querySelector('[data-rdq-progress]');\n  var progressText = root.querySelector('[data-rdq-progress-text]');\n  var progressFill = root.querySelector('[data-rdq-progress-fill]');\n  var stage = root.querySelector('[data-rdq-stage]');\n  var result = root.querySelector('[data-rdq-result]');\n\n  var selectedAnswers = new Array(questions.length).fill(null);\n  var currentStep = 0;\n  var mode = 'question';\n  var lastFocused = null;\n  var previousBodyOverflow = '';\n\n  function escapeHtml(value) {\n    var node = document.createElement('div');\n    node.textContent = value == null ? '' : String(value);\n    return node.innerHTML;\n  }\n\n  function safeUrl(value) {\n    if (!value || typeof value !== 'string') return '';\n    if (value.charAt(0) === '#') return value;\n    try {\n      var url = new URL(value, window.location.origin);\n      return url.protocol === 'http:' || url.protocol === 'https:' ? url.href : '';\n    } catch (error) {\n      return '';\n    }\n  }\n\n  function parseApiDate(value) {\n    var usDate = String(value || '').match(\/^(\\d{1,2})\\\/(\\d{1,2})\\\/(\\d{4})$\/);\n    var isoDate = String(value || '').match(\/^(\\d{4})-(\\d{2})-(\\d{2})$\/);\n    var parsed;\n\n    if (usDate) parsed = new Date(Number(usDate[3]), Number(usDate[1]) - 1, Number(usDate[2]));\n    else if (isoDate) parsed = new Date(Number(isoDate[1]), Number(isoDate[2]) - 1, Number(isoDate[3]));\n    else return null;\n\n    return Number.isNaN(parsed.getTime()) ? null : parsed;\n  }\n\n  function getLanguage() {\n    var detected = String(document.documentElement.lang || 'en')\n      .toLowerCase()\n      .split(\/[-_]\/)[0];\n\n    return ['en', 'vi', 'de'].indexOf(detected) !== -1\n      ? detected\n      : 'en';\n  }\n\n  \/\/ The language only selects the API translation and the date and price formats.\n  var language = getLanguage();\n  var locales = { en: 'en-GB', vi: 'vi-VN', de: 'de-DE' };\n  var locale = locales[language] || 'en-GB';\n\n  var closeButton = root.querySelector('.rdq-close');\n  if (closeButton && labels.closeQuiz) closeButton.setAttribute('aria-label', labels.closeQuiz);\n\n  function getUpcomingDates(retreat) {\n    var today = new Date();\n    today.setHours(0, 0, 0, 0);\n    if (!retreat || !Array.isArray(retreat.dates)) return [];\n\n    return retreat.dates.map(function(schedule) {\n      return {\n        schedule: schedule,\n        start: parseApiDate(schedule.start),\n        end: parseApiDate(schedule.end) || parseApiDate(schedule.start)\n      };\n    }).filter(function(item) {\n      return item.start && item.end && item.end >= today;\n    }).sort(function(a, b) {\n      return a.start - b.start;\n    });\n  }\n\n  function formatDateRange(item) {\n    if (!item || !item.start) return label('byRequest');\n    var formatter = new Intl.DateTimeFormat(locale, {\n      day: '2-digit',\n      month: 'short',\n      year: 'numeric'\n    });\n\n    if (item.end && typeof formatter.formatRange === 'function') {\n      return formatter.formatRange(item.start, item.end);\n    }\n\n    return item.end\n      ? formatter.format(item.start) + ' \u2013 ' + formatter.format(item.end)\n      : formatter.format(item.start);\n  }\n\n  function enrichProfiles(retreats) {\n    var availableProfiles = [];\n\n    retreats.forEach(function(retreat) {\n      var key = profileOrder.find(function(profileKey) {\n        var profile = profiles[profileKey];\n        return (profile.sku && retreat.retreat_sku === profile.sku) ||\n          (profile.isPrivate && retreat.is_private === true) ||\n          Number(retreat.id) === Number(profile.id);\n      });\n\n      if (!key || availableProfiles.indexOf(key) !== -1) return;\n\n      var profile = profiles[key];\n      profile.api = retreat;\n      profile.name = retreat.name || profile.name;\n      profile.url = safeUrl(retreat.url) || profile.url;\n      availableProfiles.push(key);\n    });\n\n    \/\/ Preserve the API order and expose only retreats returned by this request.\n    activeProfileOrder = availableProfiles;\n\n    var comparisonLabel = root.querySelector('.rdq-list li:nth-child(2) span:last-child');\n    if (comparisonLabel && labels.introListCount) {\n      comparisonLabel.textContent = label('introListCount', { count: activeProfileOrder.length });\n    }\n  }\n\n  function getSharedRetreatApi() {\n    if (window.VietnamDetoxRetreatAPI) {\n      return window.VietnamDetoxRetreatAPI;\n    }\n\n    window.VietnamDetoxRetreatAPI = {\n      requests: {},\n\n      load: function(apiPath, requestedLanguage) {\n        var apiUrl = new URL(apiPath || '\/wp-json\/retreats\/v1\/all', window.location.origin);\n        apiUrl.searchParams.set('lang', requestedLanguage || 'en');\n\n        var cacheKey = apiUrl.href;\n\n        if (!this.requests[cacheKey]) {\n          this.requests[cacheKey] = fetch(cacheKey, {\n            headers: { Accept: 'application\/json' }\n          }).then(function(response) {\n            if (!response.ok) {\n              throw new Error('Retreat API returned HTTP ' + response.status);\n            }\n            return response.json();\n          }).then(function(retreats) {\n            if (!Array.isArray(retreats)) {\n              throw new Error('Unexpected retreat API response');\n            }\n            return retreats;\n          }).catch(function(error) {\n            delete window.VietnamDetoxRetreatAPI.requests[cacheKey];\n            throw error;\n          });\n        }\n\n        return this.requests[cacheKey];\n      }\n    };\n\n    return window.VietnamDetoxRetreatAPI;\n  }\n\n  function loadRetreats() {\n    var apiPath = root.dataset.api || '\/wp-json\/retreats\/v1\/all';\n    var shared = window.VietnamDetoxRetreatAPI;\n\n    return Promise.resolve().then(function() {\n      \/\/ The Retreat Overview widgets publish an incompatible loader: load(url, force) -> { items }.\n      \/\/ Reuse its request for the same URL instead of forcing a second one.\n      if (shared && shared.entries && typeof shared.key === 'function' && typeof shared.load === 'function') {\n        var apiUrl = new URL(apiPath, window.location.origin);\n        apiUrl.searchParams.set('lang', language);\n        return shared.load(apiUrl.href, false).then(function(result) {\n          return result && result.items;\n        });\n      }\n      return getSharedRetreatApi().load(apiPath, language);\n    })\n      .then(function(retreats) {\n        if (!Array.isArray(retreats)) throw new Error('Unexpected retreat API response');\n        enrichProfiles(retreats);\n        return retreats;\n      })\n      .catch(function(error) {\n        console.warn('Retreat quiz is using fallback content:', error);\n        return [];\n      });\n  }\n\n  function currentSelection() {\n    return selectedAnswers[currentStep];\n  }\n\n  function canContinue() {\n    return currentSelection() !== null && currentSelection() !== undefined;\n  }\n\n  function scoreTotals() {\n    var totals = {};\n    activeProfileOrder.forEach(function(key) { totals[key] = 0; });\n\n    selectedAnswers.forEach(function(answerIndex, questionIndex) {\n      if (answerIndex === null || answerIndex === undefined) return;\n      var answer = questions[questionIndex].answers[answerIndex];\n      activeProfileOrder.forEach(function(key) {\n        totals[key] += answer.scores[key] || 0;\n      });\n    });\n\n    return totals;\n  }\n\n  function normalizedScores() {\n    var totals = scoreTotals();\n    var total = activeProfileOrder.reduce(function(sum, key) { return sum + totals[key]; }, 0);\n    var items = activeProfileOrder.map(function(key) {\n      return {\n        key: key,\n        name: profiles[key].name,\n        score: totals[key],\n        percent: total ? Math.round((totals[key] \/ total) * 100) : 0\n      };\n    });\n\n    var percentageTotal = items.reduce(function(sum, item) { return sum + item.percent; }, 0);\n    if (percentageTotal !== 100 && items.length) {\n      items.slice().sort(function(a, b) { return b.score - a.score; })[0].percent += 100 - percentageTotal;\n    }\n\n    return items.sort(function(a, b) {\n      return b.percent !== a.percent ? b.percent - a.percent : b.score - a.score;\n    });\n  }\n\n  function renderQuestion() {\n    var question = questions[currentStep];\n    mode = 'question';\n    progress.hidden = false;\n    progressText.textContent = label('questionProgress', { current: currentStep + 1, total: questions.length });\n    progressFill.style.width = (((currentStep + 1) \/ questions.length) * 100) + '%';\n    stage.hidden = false;\n    result.hidden = true;\n    result.innerHTML = '';\n\n    stage.innerHTML = [\n      '<article class=\"rdq-question-card\">',\n        '<h2 class=\"rdq-question\">' + escapeHtml(question.question) + '<\/h2>',\n        '<p class=\"rdq-question-note\">' + escapeHtml(label('chooseAnswer')) + '<\/p>',\n        '<div class=\"rdq-answers\" role=\"radiogroup\" aria-label=\"' + escapeHtml(question.question) + '\">',\n          question.answers.map(function(answer, index) {\n            var selected = currentSelection() === index;\n            return '<button type=\"button\" class=\"rdq-answer' + (selected ? ' is-selected' : '') + '\" data-rdq-answer=\"' + index + '\" aria-pressed=\"' + selected + '\">' +\n              '<span class=\"rdq-answer-mark\" aria-hidden=\"true\"><\/span>' +\n              '<span class=\"rdq-answer-text\">' + escapeHtml(answer.label) + '<\/span>' +\n            '<\/button>';\n          }).join(''),\n        '<\/div>',\n        '<div class=\"rdq-nav\">',\n          '<button type=\"button\" class=\"rdq-btn rdq-btn-outline\" data-rdq-back ' + (currentStep === 0 ? 'hidden' : '') + '>' + escapeHtml(label('back')) + '<\/button>',\n          '<button type=\"button\" class=\"rdq-btn rdq-btn-ember\" data-rdq-next ' + (canContinue() ? '' : 'disabled') + '>' +\n            escapeHtml(label(currentStep === questions.length - 1 ? 'seeResults' : 'next')) +\n          '<\/button>',\n        '<\/div>',\n      '<\/article>'\n    ].join('');\n\n    bindQuestionEvents();\n  }\n\n  function resultFacts(profile) {\n    var retreat = profile.api;\n    var dates = getUpcomingDates(retreat);\n    var packages = retreat && Array.isArray(retreat.packages) ? retreat.packages : [];\n    var prices = packages.map(function(item) { return Number(item.price); }).filter(function(price) {\n      return Number.isFinite(price) && price > 0;\n    });\n    var lowestPrice = prices.length ? Math.min.apply(null, prices) : null;\n\n    return {\n      image: retreat ? safeUrl(retreat.image) : '',\n      location: retreat && retreat.location ? retreat.location : label('detailsOnRequest'),\n      nextDate: dates.length ? formatDateRange(dates[0]) : label('byRequest'),\n      price: lowestPrice\n        ? new Intl.NumberFormat(locale, {\n            style: 'currency',\n            currency: 'VND',\n            maximumFractionDigits: 0\n          }).format(lowestPrice)\n        : label('priceOnRequest')\n    };\n  }\n\n  function renderResult() {\n    var scores = normalizedScores();\n\n    if (!scores.length) {\n      mode = 'result';\n      progress.hidden = true;\n      stage.hidden = true;\n      stage.innerHTML = '';\n      result.hidden = false;\n      result.innerHTML = [\n        '<article class=\"rdq-result-card\">',\n          '<span class=\"rdq-result-eyebrow\">' + escapeHtml(label('strongestEyebrow')) + '<\/span>',\n          '<h2 class=\"rdq-result-title\">' + escapeHtml(label('noRetreatsTitle')) + '<\/h2>',\n          '<p class=\"rdq-result-copy\">' + escapeHtml(label('noRetreatsCopy')) + '<\/p>',\n          '<div class=\"rdq-result-actions\">',\n            '<button type=\"button\" class=\"rdq-btn rdq-btn-outline\" data-rdq-restart>' + escapeHtml(label('restart')) + '<\/button>',\n          '<\/div>',\n        '<\/article>'\n      ].join('');\n      result.querySelector('[data-rdq-restart]').addEventListener('click', restartQuiz);\n      return;\n    }\n\n    var primary = scores[0];\n    var secondary = scores[1];\n    var profile = profiles[primary.key];\n    var secondaryProfile = secondary ? profiles[secondary.key] : null;\n    var facts = resultFacts(profile);\n    \/\/ The Retreat Overview page already lists the retreats (section[data-vdrl]),\n    \/\/ so there the links scroll to those cards instead of reloading the page.\n    var cards = document.querySelector('section[data-vdrl][id]');\n    var cardsLink = cards ? '#' + cards.id : '#retreat-options';\n    var allRetreatsLink = cards ? cardsLink : '\/retreat-overview';\n    var url = (profile.url !== '#retreat-options' && safeUrl(profile.url)) || cardsLink;\n    var closeMatch = secondary && primary.percent - secondary.percent <= 5 && secondary.percent > 0;\n\n    var hero = facts.image\n      ? '<a class=\"rdq-result-hero\" href=\"' + escapeHtml(url) + '\" data-rdq-link=\"' + escapeHtml(url) + '\">' +\n          '<img decoding=\"async\" src=\"' + escapeHtml(facts.image) + '\" alt=\"' + escapeHtml(profile.name) + '\">' +\n          '<span class=\"rdq-result-badge\">' + escapeHtml(label('nextDateBadge')) + ' ' + escapeHtml(facts.nextDate) + '<\/span>' +\n        '<\/a>'\n      : '';\n\n    mode = 'result';\n    progress.hidden = true;\n    stage.hidden = true;\n    stage.innerHTML = '';\n    result.hidden = false;\n\n    result.innerHTML = [\n      '<article class=\"rdq-result-card\">',\n        '<span class=\"rdq-result-eyebrow\">' + escapeHtml(label('strongestEyebrow')) + '<\/span>',\n        hero,\n        '<h2 class=\"rdq-result-title\">' + escapeHtml(label('strongestTitle', { name: profile.name })) + '<\/h2>',\n        '<p class=\"rdq-result-copy\">' + escapeHtml(profile.reason) + '<\/p>',\n        closeMatch && secondaryProfile\n          ? '<p class=\"rdq-result-secondary\">' + escapeHtml(label('secondaryMatch')).replace('{name}', '<strong>' + escapeHtml(secondaryProfile.name) + '<\/strong>') + '<\/p>'\n          : '',\n        '<div class=\"rdq-result-facts\">',\n          '<div class=\"rdq-result-fact\"><strong>' + escapeHtml(label('location')) + '<\/strong>' + escapeHtml(facts.location) + '<\/div>',\n          '<div class=\"rdq-result-fact\"><strong>' + escapeHtml(label('nextAvailability')) + '<\/strong>' + escapeHtml(facts.nextDate) + '<\/div>',\n          '<div class=\"rdq-result-fact\"><strong>' + escapeHtml(label('startingPrice')) + '<\/strong>' + escapeHtml(facts.price) + '<\/div>',\n        '<\/div>',\n        '<p class=\"rdq-result-note\">' + escapeHtml(label('resultNote')) + '<\/p>',\n        '<div class=\"rdq-result-bars\" aria-label=\"' + escapeHtml(label('percentagesLabel')) + '\">',\n          scores.map(function(item) {\n            return '<div class=\"rdq-result-bar\">' +\n              '<div class=\"rdq-result-bar-head\"><span>' + escapeHtml(item.name) + '<\/span><strong>' + item.percent + '%<\/strong><\/div>' +\n              '<div class=\"rdq-result-track\"><div class=\"rdq-result-fill ' + item.key + '\" style=\"width:' + item.percent + '%\"><\/div><\/div>' +\n            '<\/div>';\n          }).join(''),\n        '<\/div>',\n        '<div class=\"rdq-result-actions\">',\n          '<a class=\"rdq-btn rdq-btn-ember\" href=\"' + escapeHtml(url) + '\" data-rdq-link=\"' + escapeHtml(url) + '\">' + escapeHtml(label('explore', { name: profile.name })) + '<\/a>',\n          '<a class=\"rdq-btn rdq-btn-outline\" href=\"' + escapeHtml(allRetreatsLink) + '\" data-rdq-link=\"' + escapeHtml(allRetreatsLink) + '\">' + escapeHtml(label('exploreAll')) + '<\/a>',\n          '<button type=\"button\" class=\"rdq-btn rdq-btn-outline\" data-rdq-restart>' + escapeHtml(label('restart')) + '<\/button>',\n        '<\/div>',\n      '<\/article>'\n    ].join('');\n\n    result.querySelector('[data-rdq-restart]').addEventListener('click', restartQuiz);\n  }\n\n  function render() {\n    if (mode === 'result') renderResult();\n    else renderQuestion();\n  }\n\n  function bindQuestionEvents() {\n    var answerButtons = stage.querySelectorAll('[data-rdq-answer]');\n    var backButton = stage.querySelector('[data-rdq-back]');\n    var nextButton = stage.querySelector('[data-rdq-next]');\n\n    answerButtons.forEach(function(button) {\n      button.addEventListener('click', function() {\n        selectedAnswers[currentStep] = Number(button.dataset.rdqAnswer);\n        answerButtons.forEach(function(other) {\n          var selected = other === button;\n          other.classList.toggle('is-selected', selected);\n          other.setAttribute('aria-pressed', selected ? 'true' : 'false');\n        });\n        nextButton.disabled = false;\n      });\n    });\n\n    if (backButton) {\n      backButton.addEventListener('click', function() {\n        if (currentStep > 0) {\n          currentStep -= 1;\n          render();\n        }\n      });\n    }\n\n    nextButton.addEventListener('click', function() {\n      if (!canContinue()) return;\n      if (currentStep < questions.length - 1) currentStep += 1;\n      else mode = 'result';\n      render();\n    });\n  }\n\n  function restartQuiz() {\n    selectedAnswers = new Array(questions.length).fill(null);\n    currentStep = 0;\n    mode = 'question';\n    render();\n  }\n\n  function openModal() {\n    lastFocused = document.activeElement;\n    previousBodyOverflow = document.body.style.overflow;\n    document.body.style.overflow = 'hidden';\n    modal.hidden = false;\n    modal.setAttribute('aria-hidden', 'false');\n    openButton.setAttribute('aria-expanded', 'true');\n    window.requestAnimationFrame(function() {\n      modal.classList.add('is-open');\n      var closeButton = modal.querySelector('[data-rdq-close].rdq-close');\n      (closeButton || dialog).focus();\n    });\n  }\n\n  function closeModal() {\n    modal.classList.remove('is-open');\n    modal.setAttribute('aria-hidden', 'true');\n    openButton.setAttribute('aria-expanded', 'false');\n    document.body.style.overflow = previousBodyOverflow;\n    window.setTimeout(function() { modal.hidden = true; }, 220);\n    if (lastFocused && typeof lastFocused.focus === 'function') lastFocused.focus();\n  }\n\n  function navigate(href) {\n    if (!href) return;\n    if (href.charAt(0) === '#') {\n      closeModal();\n      window.setTimeout(function() {\n        var target = document.querySelector(href);\n        if (target) target.scrollIntoView({ behavior: 'smooth', block: 'start' });\n      }, 240);\n      return;\n    }\n    window.location.href = href;\n  }\n\n  openButton.addEventListener('click', openModal);\n  root.querySelectorAll('[data-rdq-close]').forEach(function(button) {\n    button.addEventListener('click', closeModal);\n  });\n\n  root.addEventListener('click', function(event) {\n    var link = event.target.closest('[data-rdq-link]');\n    if (!link) return;\n    event.preventDefault();\n    navigate(link.getAttribute('data-rdq-link'));\n  });\n\n  dialog.addEventListener('keydown', function(event) {\n    if (event.key !== 'Tab') return;\n    \/\/ Skip tabindex=\"-1\" in the filter, not the selector: WPML turns quotes inside\n    \/\/ attribute selectors into &quot; on translated pages, which breaks querySelectorAll.\n    var focusable = Array.prototype.slice.call(dialog.querySelectorAll(\n      'a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]'\n    )).filter(function(element) {\n      return element.getAttribute('tabindex') !== '-1' && !element.hidden && element.offsetParent !== null;\n    });\n    if (!focusable.length) return;\n    var first = focusable[0];\n    var last = focusable[focusable.length - 1];\n    if (event.shiftKey && document.activeElement === first) {\n      event.preventDefault();\n      last.focus();\n    } else if (!event.shiftKey && document.activeElement === last) {\n      event.preventDefault();\n      first.focus();\n    }\n  });\n\n  document.addEventListener('keydown', function(event) {\n    if (event.key === 'Escape' && !modal.hidden) closeModal();\n  });\n\n  loadRetreats().then(function() {\n    if (mode === 'result') renderResult();\n  });\n\n  render();\n})();\n<\/script>\n\t\t\t\t<\/div>\n\t\t\t\t<\/section>\n\t\t<section data-dce-background-overlay-color=\"#F2EAD8\" class=\"elementor-element elementor-element-e14f13c e-flex e-con-boxed elementor-invisible e-con e-parent\" data-id=\"e14f13c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;animation&quot;:&quot;fadeIn&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-fece9fd elementor-widget elementor-widget-html\" data-id=\"fece9fd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!--\r\n  Copy this entire file into ONE Elementor HTML widget.\r\n  Put elementor-guest-reviews.css into the same widget's\r\n  Advanced > Custom CSS field.\r\n\r\n  Image URLs are configured for staging.vietnamdetox.com.\r\n-->\r\n\r\n<section class=\"vdg\" data-vdg-section=\"\" aria-labelledby=\"vdg-title\">\r\n  <div class=\"vdg__shell\">\r\n    <header class=\"vdg__header\">\r\n      <span class=\"vdg__eyebrow\">Was G\u00e4ste nach dem Reset bemerken<\/span>\r\n      <span class=\"vdg__clue\" aria-hidden=\"true\"><\/span>\r\n\r\n      <h2 class=\"vdg__headline\" id=\"vdg-title\">\r\n  Vom Gef\u00fchl der \u00dcberlastung<br\/> hin zu <em>mehr Leichtigkeit, Klarheit und Erdung.<\/em>\r\n      <\/h2>\r\n\r\n      <p class=\"vdg__introduction\">\r\n  Viele G\u00e4ste kommen, wenn Ruhe allein sich nicht mehr ausreichend anf\u00fchlt. Ihre\r\n Worte zeigen, was sich zu ver\u00e4ndern beginnt, wenn K\u00f6rper, Geist und Alltagsrhythmus\r\n Raum bekommen, sich neu auszurichten. \r\n      <\/p>\r\n    <\/header>\r\n\r\n    <div class=\"vdg__grid\">\r\n      <article class=\"vdg__card vdg__reveal\" data-vdg-reveal=\"\" data-vdg-card=\"\">\r\n        <header class=\"vdg__review-head\">\r\n          <div class=\"vdg__avatar\">\r\n            <img src=\"\/wp-content\/uploads\/2026\/05\/ms-bich-thuy.webp\" alt=\"Ms. Bich Thuy\" loading=\"lazy\" decoding=\"async\">\r\n          <\/div>\r\n\r\n          <div class=\"vdg__guest\">\r\n            <h3 class=\"vdg__name\">Ms. Bich Thuy<\/h3>\r\n            <div class=\"vdg__meta\">G\u00e4stebewertung<\/div>\r\n            <div class=\"vdg__stars\" role=\"img\" aria-label=\"5 out of 5 stars\">\r\n              <span aria-hidden=\"true\">\u2605\u2605\u2605\u2605\u2605<\/span>\r\n            <\/div>\r\n          <\/div>\r\n        <\/header>\r\n\r\n        <p class=\"vdg__review\" data-vdg-review=\"\">\r\n \u201eIch war \u00e4u\u00dferst zufrieden mit den Inhalten, die unser Fastenleiter\r\nDieter vermittelt hat, und ich habe viel Neues gelernt \u2013 zum Beispiel Mandala-Bilder\r\nzu skizzieren und mein eigenes Vision Board zu gestalten, um die\r\nZukunft und das, was ich erreichen wollte, darzustellen. Ein fantastisches Detox-Programm.\u201c \r\n        <\/p>\r\n\r\n        <button class=\"vdg__toggle\" type=\"button\" data-vdg-toggle=\"\" hidden=\"\">\r\n  Mehr lesen\r\n        <\/button>\r\n      <\/article>\r\n\r\n      <article class=\"vdg__card vdg__reveal vdg__delay-1\" data-vdg-reveal=\"\" data-vdg-card=\"\">\r\n        <header class=\"vdg__review-head\">\r\n          <div class=\"vdg__avatar\">\r\n            <img src=\"\/wp-content\/uploads\/2026\/05\/ms-hana-dang.webp\" alt=\"Ms. Hana Dang\" loading=\"lazy\" decoding=\"async\">\r\n          <\/div>\r\n\r\n          <div class=\"vdg__guest\">\r\n            <h3 class=\"vdg__name\">Ms. Hana Dang<\/h3>\r\n            <div class=\"vdg__meta\">G\u00e4stebewertung<\/div>\r\n            <div class=\"vdg__stars\" role=\"img\" aria-label=\"5 out of 5 stars\">\r\n              <span aria-hidden=\"true\">\u2605\u2605\u2605\u2605\u2605<\/span>\r\n            <\/div>\r\n          <\/div>\r\n        <\/header>\r\n\r\n        <p class=\"vdg__review\" data-vdg-review=\"\">\r\n  \u201eDas Retreat bietet sehr klare und wissenschaftliche Inhalte, die\r\n die wissenschaftlich fundierte Fastenmethodik sehr detailliert erkl\u00e4ren. Trotz\r\n der zahlreichen k\u00f6rperlichen Aktivit\u00e4ten, darunter Yoga, Meditation und\r\n Naturerlebnisse, hatte ich \u00fcberhaupt keinen Hunger. Besonders\r\n ansprechend ist die Mischung aus Detox und Achtsamkeit.\u201c  \r\n        <\/p>\r\n\r\n        <button class=\"vdg__toggle\" type=\"button\" data-vdg-toggle=\"\" hidden=\"\">\r\n  Mehr lesen\r\n        <\/button>\r\n      <\/article>\r\n\r\n      <article class=\"vdg__card vdg__reveal vdg__delay-2\" data-vdg-reveal=\"\" data-vdg-card=\"\">\r\n        <header class=\"vdg__review-head\">\r\n          <div class=\"vdg__avatar\">\r\n            <img src=\"\/wp-content\/uploads\/2026\/05\/ms-thu-loan.webp\" alt=\"Ms. Thu Loan\" loading=\"lazy\" decoding=\"async\">\r\n          <\/div>\r\n\r\n          <div class=\"vdg__guest\">\r\n            <h3 class=\"vdg__name\">Ms. Thu Loan<\/h3>\r\n            <div class=\"vdg__meta\">G\u00e4stebewertung<\/div>\r\n            <div class=\"vdg__stars\" role=\"img\" aria-label=\"5 out of 5 stars\">\r\n              <span aria-hidden=\"true\">\u2605\u2605\u2605\u2605\u2605<\/span>\r\n            <\/div>\r\n          <\/div>\r\n        <\/header>\r\n\r\n        <p class=\"vdg__review\" data-vdg-review=\"\">\r\n  \u201eIch bin \u00fcbergl\u00fccklich, Teil dieses Detox-Retreats gewesen zu sein; es hat\r\n mir fantastische Gesundheit und ein wunderbares Erlebnis geschenkt. Ich sch\u00e4tze sehr,\r\n wie sehr sich die Organisatoren um die Gruppe und jede einzelne Person k\u00fcmmern. Die\r\n \u00dcbungen im Programm haben mich inspiriert; sie waren wie ein frischer Atemzug f\u00fcr\r\n meine Seele. Alle sind wunderbar\u2026\u201c   \r\n        <\/p>\r\n\r\n        <button class=\"vdg__toggle\" type=\"button\" data-vdg-toggle=\"\" hidden=\"\">\r\n  Mehr lesen\r\n        <\/button>\r\n      <\/article>\r\n    <\/div>\r\n\r\n    <div class=\"vdg-google vdg__reveal\" data-vdg-reveal=\"\" data-vdg-google=\"\" role=\"region\" aria-labelledby=\"vdg-google-title\">\r\n      <div class=\"vdg-google__head\">\r\n        <div class=\"vdg-google__intro\">\r\n          <h3 class=\"vdg-google__title\" id=\"vdg-google-title\">Google-Bewertungen<\/h3>\r\n          <p class=\"vdg-google__rating\">\r\n            <span class=\"vdg-google__score\">4,9<\/span>\r\n<span class=\"vdg__stars vdg-google__rating-stars\" role=\"img\" aria-label=\"4.9 out of 5 stars\"><span aria-hidden=\"true\">\u2605\u2605\u2605\u2605\u2605<\/span><\/span>\r\n<span class=\"vdg-google__count\">18 Bewertungen auf Google<\/span>\r\n          <\/p>\r\n        <\/div>\r\n        <div class=\"vdg-google__links\">\r\n          <a class=\"vdg-google__read\" href=\"https:\/\/www.google.com\/maps\/place\/Vietnam+Detox+-+Guided+Buchinger+Fasting+Retreats\/@16.368645,103.0002982,7z\/data=!4m12!1m2!2m1!1sVietnam+Detox!3m8!1s0x2b6c72f482304c3b:0xec72e2710c0472e3!8m2!3d16.368645!4d107.614556!9m1!1b1!15sCg1WaWV0bmFtIERldG94kgEQd2VsbG5lc3NfcHJvZ3JhbeABAA!16s%2Fg%2F11x1j9_l_8?entry=ttu\" target=\"_blank\" rel=\"noopener\">Bewertungen auf Google lesen<\/a>\r\n<a class=\"vdg-google__write\" href=\"https:\/\/g.page\/r\/CeNyBAxx4nLsEAE\/review\" target=\"_blank\" rel=\"noopener\">Bewertung schreiben<\/a>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <div class=\"vdg-google__slider\">\r\n        <ul class=\"vdg-google__track\" data-vdg-google-track=\"\" aria-label=\"Google reviews\">\r\n          <li class=\"vdg-google__card\" data-review-id=\"GR-01\" data-original-language=\"vi\">\r\n            <div class=\"vdg-google__card-head\">\r\n              <span class=\"vdg-google__avatar vdg-google__avatar--forest\" aria-hidden=\"true\">TT<\/span>\r\n              <div class=\"vdg-google__guest\">\r\n                <p class=\"vdg-google__name\">trang Trang<\/p>\r\n                <div class=\"vdg__stars vdg-google__stars\" role=\"img\" aria-label=\"5 out of 5 stars\">\r\n                  <span aria-hidden=\"true\">\u2605\u2605\u2605\u2605\u2605<\/span>\r\n                <\/div>\r\n              <\/div>\r\n            <\/div>\r\n            <blockquote class=\"vdg-google__quote\">\r\n              <p>\u201eEin sehr lohnendes Retreat\u201c<\/p>\r\n            <\/blockquote>\r\n            <p class=\"vdg-google__label\">Auszug \u00b7 Aus dem Vietnamesischen \u00fcbersetzt<\/p>\r\n            <a class=\"vdg-google__source\" href=\"https:\/\/maps.app.goo.gl\/Bwm38T5kuCynaemu9\" target=\"_blank\" rel=\"noopener\">Vollst\u00e4ndige Bewertung auf Google<span class=\"vdg-google__sr\"> von trang Trang (\u00f6ffnet in neuem Tab)<\/span><\/a>\r\n          <\/li>\r\n          <li class=\"vdg-google__card\" data-review-id=\"GR-02\" data-original-language=\"vi\">\r\n            <div class=\"vdg-google__card-head\">\r\n              <span class=\"vdg-google__avatar vdg-google__avatar--ember\" aria-hidden=\"true\">KV<\/span>\r\n              <div class=\"vdg-google__guest\">\r\n                <p class=\"vdg-google__name\">Kim Anh Vu<\/p>\r\n                <div class=\"vdg__stars vdg-google__stars\" role=\"img\" aria-label=\"5 out of 5 stars\">\r\n                  <span aria-hidden=\"true\">\u2605\u2605\u2605\u2605\u2605<\/span>\r\n                <\/div>\r\n              <\/div>\r\n            <\/div>\r\n            <blockquote class=\"vdg-google__quote\">\r\n              <p>\u201eIch werde regelm\u00e4\u00dfig bei Vietnam Detox dabei sein.\u201c<\/p>\r\n            <\/blockquote>\r\n            <p class=\"vdg-google__label\">Auszug \u00b7 Aus dem Vietnamesischen \u00fcbersetzt<\/p>\r\n            <a class=\"vdg-google__source\" href=\"https:\/\/maps.app.goo.gl\/WwJChp5GjarHRM85A\" target=\"_blank\" rel=\"noopener\">Vollst\u00e4ndige Bewertung auf Google<span class=\"vdg-google__sr\"> von Kim Anh Vu (\u00f6ffnet in neuem Tab)<\/span><\/a>\r\n          <\/li>\r\n          <li class=\"vdg-google__card\" data-review-id=\"GR-03\" data-original-language=\"en\">\r\n            <div class=\"vdg-google__card-head\">\r\n              <span class=\"vdg-google__avatar vdg-google__avatar--sand\" aria-hidden=\"true\">AP<\/span>\r\n              <div class=\"vdg-google__guest\">\r\n                <p class=\"vdg-google__name\">Annissa Poon<\/p>\r\n                <div class=\"vdg__stars vdg-google__stars\" role=\"img\" aria-label=\"5 out of 5 stars\">\r\n                  <span aria-hidden=\"true\">\u2605\u2605\u2605\u2605\u2605<\/span>\r\n                <\/div>\r\n              <\/div>\r\n            <\/div>\r\n            <blockquote class=\"vdg-google__quote\">\r\n              <p>\u201eDieter und sein Team sind unglaublich kompetent und herzlich.\u201c<\/p>\r\n            <\/blockquote>\r\n            <p class=\"vdg-google__label\">Auszug \u00b7 Aus dem Englischen \u00fcbersetzt<\/p>\r\n            <a class=\"vdg-google__source\" href=\"https:\/\/maps.app.goo.gl\/t4nWkoqpauS22wKN7\" target=\"_blank\" rel=\"noopener\">Vollst\u00e4ndige Bewertung auf Google<span class=\"vdg-google__sr\"> von Annissa Poon (\u00f6ffnet in neuem Tab)<\/span><\/a>\r\n          <\/li>\r\n          <li class=\"vdg-google__card\" data-review-id=\"GR-04\" data-original-language=\"en\">\r\n            <div class=\"vdg-google__card-head\">\r\n              <span class=\"vdg-google__avatar vdg-google__avatar--forest\" aria-hidden=\"true\">JC<\/span>\r\n              <div class=\"vdg-google__guest\">\r\n                <p class=\"vdg-google__name\">Julie Camesa<\/p>\r\n                <div class=\"vdg__stars vdg-google__stars\" role=\"img\" aria-label=\"5 out of 5 stars\">\r\n                  <span aria-hidden=\"true\">\u2605\u2605\u2605\u2605\u2605<\/span>\r\n                <\/div>\r\n              <\/div>\r\n            <\/div>\r\n            <blockquote class=\"vdg-google__quote\">\r\n              <p>\u201eDieter und sein Team sind gro\u00dfartige, f\u00fcrsorgliche und aufmerksame Menschen.\u201c<\/p>\r\n            <\/blockquote>\r\n            <p class=\"vdg-google__label\">Auszug \u00b7 Aus dem Englischen \u00fcbersetzt<\/p>\r\n            <a class=\"vdg-google__source\" href=\"https:\/\/maps.app.goo.gl\/hB826AFhCremZ8cL6\" target=\"_blank\" rel=\"noopener\">Vollst\u00e4ndige Bewertung auf Google<span class=\"vdg-google__sr\"> von Julie Camesa (\u00f6ffnet in neuem Tab)<\/span><\/a>\r\n          <\/li>\r\n          <li class=\"vdg-google__card\" data-review-id=\"GR-05\" data-original-language=\"vi\">\r\n            <div class=\"vdg-google__card-head\">\r\n              <span class=\"vdg-google__avatar vdg-google__avatar--ember\" aria-hidden=\"true\">SK<\/span>\r\n              <div class=\"vdg-google__guest\">\r\n                <p class=\"vdg-google__name\">Son Kieu<\/p>\r\n                <div class=\"vdg__stars vdg-google__stars\" role=\"img\" aria-label=\"5 out of 5 stars\">\r\n                  <span aria-hidden=\"true\">\u2605\u2605\u2605\u2605\u2605<\/span>\r\n                <\/div>\r\n              <\/div>\r\n            <\/div>\r\n            <blockquote class=\"vdg-google__quote\">\r\n              <p>\u201eIch empfehle, selbst teilzunehmen und es zu erleben!\u201c<\/p>\r\n            <\/blockquote>\r\n            <p class=\"vdg-google__label\">Auszug \u00b7 Aus dem Vietnamesischen \u00fcbersetzt<\/p>\r\n            <a class=\"vdg-google__source\" href=\"https:\/\/maps.app.goo.gl\/wtzkbJsCkrAfTB919\" target=\"_blank\" rel=\"noopener\">Vollst\u00e4ndige Bewertung auf Google<span class=\"vdg-google__sr\"> von Son Kieu (\u00f6ffnet in neuem Tab)<\/span><\/a>\r\n          <\/li>\r\n          <li class=\"vdg-google__card\" data-review-id=\"GR-06\" data-original-language=\"vi\">\r\n            <div class=\"vdg-google__card-head\">\r\n              <span class=\"vdg-google__avatar vdg-google__avatar--sand\" aria-hidden=\"true\">TN<\/span>\r\n              <div class=\"vdg-google__guest\">\r\n                <p class=\"vdg-google__name\">Tran Cam Nhung<\/p>\r\n                <div class=\"vdg__stars vdg-google__stars\" role=\"img\" aria-label=\"5 out of 5 stars\">\r\n                  <span aria-hidden=\"true\">\u2605\u2605\u2605\u2605\u2605<\/span>\r\n                <\/div>\r\n              <\/div>\r\n            <\/div>\r\n            <blockquote class=\"vdg-google__quote\">\r\n              <p>\u201eEintauchen in die Natur\u201c<\/p>\r\n            <\/blockquote>\r\n            <p class=\"vdg-google__label\">Auszug \u00b7 Aus dem Vietnamesischen \u00fcbersetzt<\/p>\r\n            <a class=\"vdg-google__source\" href=\"https:\/\/maps.app.goo.gl\/ofrrc46naf4YgZ527\" target=\"_blank\" rel=\"noopener\">Vollst\u00e4ndige Bewertung auf Google<span class=\"vdg-google__sr\"> von Tran Cam Nhung (\u00f6ffnet in neuem Tab)<\/span><\/a>\r\n          <\/li>\r\n          <li class=\"vdg-google__card\" data-review-id=\"GR-07\" data-original-language=\"en\">\r\n            <div class=\"vdg-google__card-head\">\r\n              <span class=\"vdg-google__avatar vdg-google__avatar--forest\" aria-hidden=\"true\">IQ<\/span>\r\n              <div class=\"vdg-google__guest\">\r\n                <p class=\"vdg-google__name\">Isabel Quilendrino<\/p>\r\n                <div class=\"vdg__stars vdg-google__stars\" role=\"img\" aria-label=\"5 out of 5 stars\">\r\n                  <span aria-hidden=\"true\">\u2605\u2605\u2605\u2605\u2605<\/span>\r\n                <\/div>\r\n              <\/div>\r\n            <\/div>\r\n            <blockquote class=\"vdg-google__quote\">\r\n              <p>\u201eDieses Retreat hat meine Erwartungen \u00fcbertroffen.\u201c<\/p>\r\n            <\/blockquote>\r\n            <p class=\"vdg-google__label\">Auszug \u00b7 Aus dem Englischen \u00fcbersetzt<\/p>\r\n            <a class=\"vdg-google__source\" href=\"https:\/\/maps.app.goo.gl\/QmL5sb26syW5CZeTA\" target=\"_blank\" rel=\"noopener\">Vollst\u00e4ndige Bewertung auf Google<span class=\"vdg-google__sr\"> von Isabel Quilendrino (\u00f6ffnet in neuem Tab)<\/span><\/a>\r\n          <\/li>\r\n          <li class=\"vdg-google__card\" data-review-id=\"GR-08\" data-original-language=\"en\">\r\n            <div class=\"vdg-google__card-head\">\r\n              <span class=\"vdg-google__avatar vdg-google__avatar--ember\" aria-hidden=\"true\">DB<\/span>\r\n              <div class=\"vdg-google__guest\">\r\n                <p class=\"vdg-google__name\">Dorinda Rose Berry<\/p>\r\n                <div class=\"vdg__stars vdg-google__stars\" role=\"img\" aria-label=\"5 out of 5 stars\">\r\n                  <span aria-hidden=\"true\">\u2605\u2605\u2605\u2605\u2605<\/span>\r\n                <\/div>\r\n              <\/div>\r\n            <\/div>\r\n            <blockquote class=\"vdg-google__quote\">\r\n              <p>\u201eDas Programm war leicht umzusetzen\u201c<\/p>\r\n            <\/blockquote>\r\n            <p class=\"vdg-google__label\">Auszug \u00b7 Aus dem Englischen \u00fcbersetzt<\/p>\r\n            <a class=\"vdg-google__source\" href=\"https:\/\/maps.app.goo.gl\/hpXgqMYDPKjDnwbM7\" target=\"_blank\" rel=\"noopener\">Vollst\u00e4ndige Bewertung auf Google<span class=\"vdg-google__sr\"> von Dorinda Rose Berry (\u00f6ffnet in neuem Tab)<\/span><\/a>\r\n          <\/li>\r\n          <li class=\"vdg-google__card\" data-review-id=\"GR-09\" data-original-language=\"en\">\r\n            <div class=\"vdg-google__card-head\">\r\n              <span class=\"vdg-google__avatar vdg-google__avatar--sand\" aria-hidden=\"true\">DD<\/span>\r\n              <div class=\"vdg-google__guest\">\r\n                <p class=\"vdg-google__name\">Douglas Durie<\/p>\r\n                <div class=\"vdg__stars vdg-google__stars\" role=\"img\" aria-label=\"5 out of 5 stars\">\r\n                  <span aria-hidden=\"true\">\u2605\u2605\u2605\u2605\u2605<\/span>\r\n                <\/div>\r\n              <\/div>\r\n            <\/div>\r\n            <blockquote class=\"vdg-google__quote\">\r\n              <p>\u201eIch habe mich vom Team und von den anderen Teilnehmenden wirklich willkommen gef\u00fchlt.\u201c<\/p>\r\n            <\/blockquote>\r\n            <p class=\"vdg-google__label\">Auszug \u00b7 Aus dem Englischen \u00fcbersetzt<\/p>\r\n            <a class=\"vdg-google__source\" href=\"https:\/\/maps.app.goo.gl\/hSTZM7GsfscyzvHo8\" target=\"_blank\" rel=\"noopener\">Vollst\u00e4ndige Bewertung auf Google<span class=\"vdg-google__sr\"> von Douglas Durie (\u00f6ffnet in neuem Tab)<\/span><\/a>\r\n          <\/li>\r\n          <li class=\"vdg-google__card\" data-review-id=\"GR-10\" data-original-language=\"vi\">\r\n            <div class=\"vdg-google__card-head\">\r\n              <span class=\"vdg-google__avatar vdg-google__avatar--forest\" aria-hidden=\"true\">S<\/span>\r\n              <div class=\"vdg-google__guest\">\r\n                <p class=\"vdg-google__name\">Mr. S<\/p>\r\n                <div class=\"vdg__stars vdg-google__stars\" role=\"img\" aria-label=\"5 out of 5 stars\">\r\n                  <span aria-hidden=\"true\">\u2605\u2605\u2605\u2605\u2605<\/span>\r\n                <\/div>\r\n              <\/div>\r\n            <\/div>\r\n            <blockquote class=\"vdg-google__quote\">\r\n              <p>\u201eEin Programm, das es wirklich wert ist, erlebt zu werden\u201c<\/p>\r\n            <\/blockquote>\r\n            <p class=\"vdg-google__label\">Auszug \u00b7 Aus dem Vietnamesischen \u00fcbersetzt<\/p>\r\n            <a class=\"vdg-google__source\" href=\"https:\/\/maps.app.goo.gl\/m8sPySud75MBbncc7\" target=\"_blank\" rel=\"noopener\">Vollst\u00e4ndige Bewertung auf Google<span class=\"vdg-google__sr\"> von Mr. S (\u00f6ffnet in neuem Tab)<\/span><\/a>\r\n          <\/li>\r\n          <li class=\"vdg-google__card\" data-review-id=\"GR-12\" data-original-language=\"vi\">\r\n            <div class=\"vdg-google__card-head\">\r\n              <span class=\"vdg-google__avatar vdg-google__avatar--ember\" aria-hidden=\"true\">LH<\/span>\r\n              <div class=\"vdg-google__guest\">\r\n                <p class=\"vdg-google__name\">L\u00fd Ho\u00e0ng<\/p>\r\n                <div class=\"vdg__stars vdg-google__stars\" role=\"img\" aria-label=\"5 out of 5 stars\">\r\n                  <span aria-hidden=\"true\">\u2605\u2605\u2605\u2605\u2605<\/span>\r\n                <\/div>\r\n              <\/div>\r\n            <\/div>\r\n            <blockquote class=\"vdg-google__quote\">\r\n              <p>\u201edie Sorgen des Alltags loslassen\u201c<\/p>\r\n            <\/blockquote>\r\n            <p class=\"vdg-google__label\">Auszug \u00b7 Aus dem Vietnamesischen \u00fcbersetzt<\/p>\r\n            <a class=\"vdg-google__source\" href=\"https:\/\/maps.app.goo.gl\/TUWJxDQ8VcTL7RL8A\" target=\"_blank\" rel=\"noopener\">Vollst\u00e4ndige Bewertung auf Google<span class=\"vdg-google__sr\"> von L\u00fd Ho\u00e0ng (\u00f6ffnet in neuem Tab)<\/span><\/a>\r\n          <\/li>\r\n          <li class=\"vdg-google__card\" data-review-id=\"GR-13\" data-original-language=\"vi\">\r\n            <div class=\"vdg-google__card-head\">\r\n              <span class=\"vdg-google__avatar vdg-google__avatar--sand\" aria-hidden=\"true\">LG<\/span>\r\n              <div class=\"vdg-google__guest\">\r\n                <p class=\"vdg-google__name\">Lam thanh giang<\/p>\r\n                <div class=\"vdg__stars vdg-google__stars\" role=\"img\" aria-label=\"5 out of 5 stars\">\r\n                  <span aria-hidden=\"true\">\u2605\u2605\u2605\u2605\u2605<\/span>\r\n                <\/div>\r\n              <\/div>\r\n            <\/div>\r\n            <blockquote class=\"vdg-google__quote\">\r\n              <p>\u201eDas Vietnam-Detox-Team ist bei allen Gruppenaktivit\u00e4ten mit gro\u00dfem Engagement dabei.\u201c<\/p>\r\n            <\/blockquote>\r\n            <p class=\"vdg-google__label\">Auszug \u00b7 Aus dem Vietnamesischen \u00fcbersetzt<\/p>\r\n            <a class=\"vdg-google__source\" href=\"https:\/\/maps.app.goo.gl\/YJ1uDTUSqx3cSUXPA\" target=\"_blank\" rel=\"noopener\">Vollst\u00e4ndige Bewertung auf Google<span class=\"vdg-google__sr\"> von Lam thanh giang (\u00f6ffnet in neuem Tab)<\/span><\/a>\r\n          <\/li>\r\n          <li class=\"vdg-google__card\" data-review-id=\"GR-14\" data-original-language=\"vi\">\r\n            <div class=\"vdg-google__card-head\">\r\n              <span class=\"vdg-google__avatar vdg-google__avatar--forest\" aria-hidden=\"true\">NQ<\/span>\r\n              <div class=\"vdg-google__guest\">\r\n                <p class=\"vdg-google__name\">Nguy\u1ec5n Quy\u00ean<\/p>\r\n                <div class=\"vdg__stars vdg-google__stars\" role=\"img\" aria-label=\"5 out of 5 stars\">\r\n                  <span aria-hidden=\"true\">\u2605\u2605\u2605\u2605\u2605<\/span>\r\n                <\/div>\r\n              <\/div>\r\n            <\/div>\r\n            <blockquote class=\"vdg-google__quote\">\r\n              <p>\u201eMehr als gro\u00dfartig.\u201c<\/p>\r\n            <\/blockquote>\r\n            <p class=\"vdg-google__label\">Auszug \u00b7 Aus dem Vietnamesischen \u00fcbersetzt<\/p>\r\n            <a class=\"vdg-google__source\" href=\"https:\/\/maps.app.goo.gl\/sUZc7tFybRbrCAf97\" target=\"_blank\" rel=\"noopener\">Vollst\u00e4ndige Bewertung auf Google<span class=\"vdg-google__sr\"> von Nguy\u1ec5n Quy\u00ean (\u00f6ffnet in neuem Tab)<\/span><\/a>\r\n          <\/li>\r\n          <li class=\"vdg-google__card\" data-review-id=\"GR-15\" data-original-language=\"vi\">\r\n            <div class=\"vdg-google__card-head\">\r\n              <span class=\"vdg-google__avatar vdg-google__avatar--ember\" aria-hidden=\"true\">HP<\/span>\r\n              <div class=\"vdg-google__guest\">\r\n                <p class=\"vdg-google__name\">Hanh Pham<\/p>\r\n                <div class=\"vdg__stars vdg-google__stars\" role=\"img\" aria-label=\"5 out of 5 stars\">\r\n                  <span aria-hidden=\"true\">\u2605\u2605\u2605\u2605\u2605<\/span>\r\n                <\/div>\r\n              <\/div>\r\n            <\/div>\r\n            <blockquote class=\"vdg-google__quote\">\r\n              <p>\u201eDies ist mein drittes Mal bei Vietnam Detox.\u201c<\/p>\r\n            <\/blockquote>\r\n            <p class=\"vdg-google__label\">Auszug \u00b7 Aus dem Vietnamesischen \u00fcbersetzt<\/p>\r\n            <a class=\"vdg-google__source\" href=\"https:\/\/maps.app.goo.gl\/sg7x6p3AUx5P7oWHA\" target=\"_blank\" rel=\"noopener\">Vollst\u00e4ndige Bewertung auf Google<span class=\"vdg-google__sr\"> von Hanh Pham (\u00f6ffnet in neuem Tab)<\/span><\/a>\r\n          <\/li>\r\n          <li class=\"vdg-google__card\" data-review-id=\"GR-16\" data-original-language=\"en\">\r\n            <div class=\"vdg-google__card-head\">\r\n              <span class=\"vdg-google__avatar vdg-google__avatar--sand\" aria-hidden=\"true\">H<\/span>\r\n              <div class=\"vdg-google__guest\">\r\n                <p class=\"vdg-google__name\">haibebu2<\/p>\r\n                <div class=\"vdg__stars vdg-google__stars\" role=\"img\" aria-label=\"4 out of 5 stars\">\r\n                  <span aria-hidden=\"true\">\u2605\u2605\u2605\u2605<span class=\"vdg-google__star-off\">\u2605<\/span><\/span>\r\n                <\/div>\r\n              <\/div>\r\n            <\/div>\r\n            <blockquote class=\"vdg-google__quote\">\r\n              <p>\u201eEs ist gro\u00dfartig, bei VN Detox dabei zu sein\u201c<\/p>\r\n            <\/blockquote>\r\n            <p class=\"vdg-google__label\">Auszug \u00b7 Aus dem Englischen \u00fcbersetzt<\/p>\r\n            <a class=\"vdg-google__source\" href=\"https:\/\/maps.app.goo.gl\/qcL7pXFzMgqSMFeN7\" target=\"_blank\" rel=\"noopener\">Vollst\u00e4ndige Bewertung auf Google<span class=\"vdg-google__sr\"> von haibebu2 (\u00f6ffnet in neuem Tab)<\/span><\/a>\r\n          <\/li>\r\n        <\/ul>\r\n\r\n        <div class=\"vdg-google__controls\">\r\n          <button class=\"vdg-google__arrow\" type=\"button\" data-vdg-google-prev=\"\" aria-label=\"Previous reviews\">\r\n            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 24 24\" width=\"18\" height=\"18\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M15 5l-7 7 7 7\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.6\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><\/path><\/svg>\r\n          <\/button>\r\n          <p class=\"vdg-google__status\" data-vdg-google-status=\"\" aria-live=\"polite\"><\/p>\r\n          <button class=\"vdg-google__arrow\" type=\"button\" data-vdg-google-next=\"\" aria-label=\"Next reviews\">\r\n            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 24 24\" width=\"18\" height=\"18\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M9 5l7 7-7 7\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.6\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><\/path><\/svg>\r\n          <\/button>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"vdg__cta\">\r\n      <p>Nicht sicher, wo Sie anfangen sollen?<\/p>\r\n      <a class=\"vdg__button\" href=\"#retreats\">Retreats entdecken<\/a>\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\r\n\r\n<script>\r\n(function() {\r\n  'use strict';\r\n\r\n  var sections = document.querySelectorAll('[data-vdg-section]');\r\n\r\n  sections.forEach(function(section, sectionIndex) {\r\n    if (section.dataset.vdgReady === 'true') return;\r\n    section.dataset.vdgReady = 'true';\r\n\r\n    var cards = section.querySelectorAll('[data-vdg-card]');\r\n    var revealItems = section.querySelectorAll('[data-vdg-reveal]');\r\n    var reducedMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches;\r\n    var resizeTimer = null;\r\n\r\n    cards.forEach(function(card, cardIndex) {\r\n      var review = card.querySelector('[data-vdg-review]');\r\n      var toggle = card.querySelector('[data-vdg-toggle]');\r\n\r\n      if (!review || !toggle) return;\r\n\r\n      var reviewId = 'vdg-review-' + sectionIndex + '-' + cardIndex;\r\n      review.id = reviewId;\r\n      toggle.setAttribute('aria-controls', reviewId);\r\n      toggle.setAttribute('aria-expanded', 'false');\r\n\r\n      toggle.addEventListener('click', function() {\r\n        var expanded = review.classList.toggle('is-expanded');\r\n        toggle.textContent = expanded ? 'Read less' : 'Read more';\r\n        toggle.setAttribute('aria-expanded', String(expanded));\r\n      });\r\n    });\r\n\r\n    function syncToggles() {\r\n      cards.forEach(function(card) {\r\n        var review = card.querySelector('[data-vdg-review]');\r\n        var toggle = card.querySelector('[data-vdg-toggle]');\r\n\r\n        if (!review || !toggle) return;\r\n\r\n        var wasExpanded = review.classList.contains('is-expanded');\r\n        review.classList.remove('is-expanded');\r\n        var isClipped = review.scrollHeight > review.clientHeight + 1;\r\n\r\n        if (isClipped) {\r\n          toggle.hidden = false;\r\n          if (wasExpanded) review.classList.add('is-expanded');\r\n        } else {\r\n          toggle.hidden = true;\r\n          toggle.textContent = 'Read more';\r\n          toggle.setAttribute('aria-expanded', 'false');\r\n        }\r\n      });\r\n    }\r\n\r\n    function revealAll() {\r\n      revealItems.forEach(function(item) {\r\n        item.classList.add('is-visible');\r\n      });\r\n    }\r\n\r\n    if (reducedMotion || !('IntersectionObserver' in window)) {\r\n      revealAll();\r\n    } else {\r\n      var observer = new IntersectionObserver(function(entries) {\r\n        entries.forEach(function(entry) {\r\n          if (!entry.isIntersecting) return;\r\n          entry.target.classList.add('is-visible');\r\n          observer.unobserve(entry.target);\r\n        });\r\n      }, {\r\n        threshold: 0.12,\r\n        rootMargin: '0px 0px -40px 0px'\r\n      });\r\n\r\n      revealItems.forEach(function(item) {\r\n        observer.observe(item);\r\n      });\r\n    }\r\n\r\n    window.requestAnimationFrame(syncToggles);\r\n\r\n    if (document.fonts && document.fonts.ready) {\r\n      document.fonts.ready.then(syncToggles);\r\n    }\r\n\r\n    window.addEventListener('resize', function() {\r\n      window.clearTimeout(resizeTimer);\r\n      resizeTimer = window.setTimeout(syncToggles, 120);\r\n    }, { passive: true });\r\n  });\r\n\r\n  \/\/ Google reviews: native scroll-snap track with arrow buttons.\r\n  \/\/ No autoplay; swiping, trackpads and keyboard focus scroll the track.\r\n  document.querySelectorAll('[data-vdg-google]').forEach(function(block) {\r\n    if (block.dataset.vdgGoogleReady === 'true') return;\r\n    block.dataset.vdgGoogleReady = 'true';\r\n\r\n    var track = block.querySelector('[data-vdg-google-track]');\r\n    var prev = block.querySelector('[data-vdg-google-prev]');\r\n    var next = block.querySelector('[data-vdg-google-next]');\r\n    var status = block.querySelector('[data-vdg-google-status]');\r\n\r\n    if (!track || !prev || !next) return;\r\n\r\n    var cards = Array.prototype.slice.call(track.children);\r\n    var language = String(document.documentElement.lang || 'en').toLowerCase().split(\/[-_]\/)[0];\r\n    var labels = {\r\n      en: { prev: 'Previous reviews', next: 'Next reviews', range: '{from}\u2013{to} of {total}', single: '{from} of {total}' },\r\n      vi: { prev: '\u0110\u00e1nh gi\u00e1 tr\u01b0\u1edbc', next: '\u0110\u00e1nh gi\u00e1 ti\u1ebfp theo', range: '{from}\u2013{to} \/ {total}', single: '{from} \/ {total}' },\r\n      de: { prev: 'Vorherige Bewertungen', next: 'N\u00e4chste Bewertungen', range: '{from}\u2013{to} von {total}', single: '{from} von {total}' }\r\n    };\r\n    var copy = labels[language === 'vn' ? 'vi' : language] || labels.en;\r\n    var smooth = !window.matchMedia('(prefers-reduced-motion: reduce)').matches;\r\n    var frame = 0;\r\n\r\n    prev.setAttribute('aria-label', copy.prev);\r\n    next.setAttribute('aria-label', copy.next);\r\n\r\n    function gap() {\r\n      return parseFloat(window.getComputedStyle(track).columnGap) || 0;\r\n    }\r\n\r\n    function step() {\r\n      return cards.length ? cards[0].getBoundingClientRect().width + gap() : track.clientWidth;\r\n    }\r\n\r\n    function perView() {\r\n      return Math.max(1, Math.floor((track.clientWidth + gap() + 1) \/ step()));\r\n    }\r\n\r\n    function update() {\r\n      frame = 0;\r\n      var max = track.scrollWidth - track.clientWidth;\r\n      var shown = perView();\r\n      var first = Math.min(cards.length - 1, Math.round(track.scrollLeft \/ step()));\r\n\r\n      prev.disabled = track.scrollLeft <= 2;\r\n      next.disabled = track.scrollLeft >= max - 2;\r\n\r\n      if (track.scrollLeft >= max - 2) first = Math.max(0, cards.length - shown);\r\n      var last = Math.min(cards.length, first + shown);\r\n\r\n      if (status && cards.length) {\r\n        status.textContent = (last - first > 1 ? copy.range : copy.single)\r\n          .replace('{from}', String(first + 1))\r\n          .replace('{to}', String(last))\r\n          .replace('{total}', String(cards.length));\r\n      }\r\n    }\r\n\r\n    function schedule() {\r\n      if (!frame) frame = window.requestAnimationFrame(update);\r\n    }\r\n\r\n    function move(direction) {\r\n      track.scrollBy({ left: direction * perView() * step(), behavior: smooth ? 'smooth' : 'auto' });\r\n    }\r\n\r\n    prev.addEventListener('click', function() { move(-1); });\r\n    next.addEventListener('click', function() { move(1); });\r\n    track.addEventListener('scroll', schedule, { passive: true });\r\n    window.addEventListener('resize', schedule, { passive: true });\r\n\r\n    update();\r\n    if (document.fonts && document.fonts.ready) document.fonts.ready.then(schedule);\r\n  });\r\n})();\r\n<\/script>\r\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/section>\n\t\t<section class=\"elementor-element elementor-element-d3eb3c9 e-flex e-con-boxed elementor-invisible e-con e-parent\" data-id=\"d3eb3c9\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;animation&quot;:&quot;fadeIn&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-97023b1 elementor-widget elementor-widget-html\" data-id=\"97023b1\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!--\r\n  Copy this entire file into ONE Elementor HTML widget.\r\n  Put elementor-team-guidance.css into the same widget's\r\n  Advanced > Custom CSS field.\r\n\r\n  Image URLs are configured for staging.vietnamdetox.com.\r\n-->\r\n\r\n<section class=\"vdt\" id=\"about\" data-vdt-section=\"\" aria-labelledby=\"vdt-title\">\r\n  <div class=\"vdt__shell\">\r\n    <header class=\"vdt__header\">\r\n      <span class=\"vdt__eyebrow\">Begleitung w\u00e4hrend Ihres Retreats<\/span>\r\n      <span class=\"vdt__rule vdt__rule--gold\" aria-hidden=\"true\"><\/span>\r\n\r\n      <h2 class=\"vdt__headline\" id=\"vdt-title\">\r\n  Erfahrene Begleitung f\u00fcr <em>Ihren Neustart.<\/em>\r\n      <\/h2>\r\n\r\n      <p class=\"vdt__introduction\">\r\n  Fasten kann sich anfangs ungewohnt anf\u00fchlen. Sie werden w\u00e4hrend des gesamten Prozesses ruhig und\r\n pers\u00f6nlich von erfahrenen Praktikern begleitet. \r\n      <\/p>\r\n    <\/header>\r\n\r\n    <div class=\"vdt__grid\">\r\n      <article class=\"vdt__card vdt__card--first vdt__reveal vdt__delay-1\" data-vdt-reveal=\"\">\r\n        <div class=\"vdt__photo\">\r\n          <img src=\"\/wp-content\/uploads\/2026\/08\/Dieter-Buchner-Co-Founder-and-Retreat-Leader-vietnam-detox.png\" alt=\"Dieter Buchner\" loading=\"lazy\" decoding=\"async\">\r\n        <\/div>\r\n\r\n        <div class=\"vdt__content\">\r\n          <h3 class=\"vdt__name\">Dieter Buchner<\/h3>\r\n          <p class=\"vdt__role\">Zertifizierter Fastencoach und Retreat-Leiter<\/p>\r\n          <p class=\"vdt__subrole\">Praktiker f\u00fcr deutsches Buchinger-Fasten<\/p>\r\n          <span class=\"vdt__ember-rule\" aria-hidden=\"true\"><\/span>\r\n\r\n          <p class=\"vdt__bio\">\r\n  Dieter ist seit 2016 Wegbereiter der Buchinger-Fastenmethode in Vietnam.\r\n Er wurde in Deutschland ausgebildet und hat Hunderte G\u00e4ste durch ihr erstes Fasten\r\n begleitet. Sein Ansatz ist warm, evidenzbasiert und zutiefst pers\u00f6nlich.\r\n  \r\n          <\/p>\r\n\r\n          <p class=\"vdt__support\">\r\n  G\u00e4ste f\u00fchlen sich oft durch ruhige Struktur und pers\u00f6nliche Aufmerksamkeit stabilisiert.\r\n          <\/p>\r\n\r\n          <a href=\"#contact\" class=\"vdt__profile-link\">Mehr \u00fcber Dieter<\/a>\r\n        <\/div>\r\n      <\/article>\r\n\r\n      <article class=\"vdt__card vdt__reveal vdt__delay-2\" data-vdt-reveal=\"\">\r\n        <div class=\"vdt__photo\">\r\n          <img src=\"\/wp-content\/uploads\/2026\/08\/vietnamdetox-Truong-Tan-Hoan-Retreatleader-Cofounder-vietnam-detox.png\" alt=\"Tr\u01b0\u01a1ng T\u1ea5n Ho\u00e0n\" loading=\"lazy\" decoding=\"async\">\r\n        <\/div>\r\n\r\n        <div class=\"vdt__content\">\r\n          <h3 class=\"vdt__name\">Tr\u01b0\u01a1ng T\u1ea5n Ho\u00e0n<\/h3>\r\n          <p class=\"vdt__role\">Mitgr\u00fcnder und Programmkoordinator<\/p>\r\n          <p class=\"vdt__subrole\">Vietnamesischer Wellness- & Erholungsbegleiter<\/p>\r\n          <span class=\"vdt__ember-rule\" aria-hidden=\"true\"><\/span>\r\n\r\n          <p class=\"vdt__bio\">\r\n  Ho\u00e0n bringt das lokale Wissen, die Beziehungen und die F\u00fcrsorge zusammen,\r\n die das Vietnam-Detox-Erlebnis in seinem Umfeld verankern.\r\n Er sorgt daf\u00fcr, dass jedes Detail Ihres Aufenthalts bedacht ist und sich jeder Gast\r\n zu Hause f\u00fchlt.\r\n          <\/p>\r\n\r\n          <p class=\"vdt__support\">\r\n  G\u00e4ste f\u00fchlen sich oft pers\u00f6nlich umsorgt \u2013 durch ruhige, aufmerksame\r\n Unterst\u00fctzung.\r\n          <\/p>\r\n\r\n          <a href=\"#contact\" class=\"vdt__profile-link\">Mehr \u00fcber Ho\u00e0n<\/a>\r\n        <\/div>\r\n      <\/article>\r\n    <\/div>\r\n\r\n    <p class=\"vdt__closing\">\r\n  W\u00e4hrend jedes Retreats bleibt die Begleitung ruhig, pers\u00f6nlich und in\r\n praktischer Erfahrung verankert.\r\n    <\/p>\r\n\r\n    <div class=\"vdt__cta\">\r\n      <a href=\"#retreats\" class=\"vdt__button\">Kommende Retreats entdecken<\/a>\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\r\n\r\n<script>\r\n(function() {\r\n  'use strict';\r\n\r\n  var sections = document.querySelectorAll('[data-vdt-section]');\r\n\r\n  sections.forEach(function(section) {\r\n    if (section.dataset.vdtReady === 'true') return;\r\n    section.dataset.vdtReady = 'true';\r\n\r\n    var cards = section.querySelectorAll('[data-vdt-reveal]');\r\n    var reducedMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches;\r\n\r\n    function revealAll() {\r\n      cards.forEach(function(card) {\r\n        card.classList.add('is-visible');\r\n      });\r\n    }\r\n\r\n    if (!cards.length || reducedMotion || !('IntersectionObserver' in window)) {\r\n      revealAll();\r\n      return;\r\n    }\r\n\r\n    var observer = new IntersectionObserver(function(entries) {\r\n      entries.forEach(function(entry) {\r\n        if (!entry.isIntersecting) return;\r\n        entry.target.classList.add('is-visible');\r\n        observer.unobserve(entry.target);\r\n      });\r\n    }, {\r\n      threshold: 0.12,\r\n      rootMargin: '0px 0px -40px 0px'\r\n    });\r\n\r\n    cards.forEach(function(card) {\r\n      observer.observe(card);\r\n    });\r\n  });\r\n})();\r\n<\/script>\r\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/section>\n\t\t<section class=\"elementor-element elementor-element-d0109dd e-flex e-con-boxed e-con e-parent\" data-id=\"d0109dd\" 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-e89d6c5 elementor-widget elementor-widget-html\" data-id=\"e89d6c5\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!--\r\n  Copy this entire file into ONE Elementor HTML widget.\r\n  Put elementor-retreat-process.css into the same widget's\r\n  Advanced > Custom CSS field.\r\n-->\r\n\r\n<section class=\"vdp\" data-vdp-section=\"\" aria-labelledby=\"vdp-title\">\r\n  <div class=\"vdp__shell\">\r\n    <header class=\"vdp__header\">\r\n      <span class=\"vdp__eyebrow\">Der Ablauf<\/span>\r\n      <span class=\"vdp__rule\" aria-hidden=\"true\"><\/span>\r\n\r\n      <h2 class=\"vdp__headline\" id=\"vdp-title\">\r\n  Wie unsere Retreats aufgebaut sind\r\n        <span class=\"vdp__headline-subtitle\">vor, w\u00e4hrend und nach Ihrem Aufenthalt<\/span>\r\n      <\/h2>\r\n\r\n      <p class=\"vdp__introduction\">\r\n  Sie werden Schritt f\u00fcr Schritt vor, w\u00e4hrend und nach jedem Retreat begleitet.\r\n      <\/p>\r\n      <p class=\"vdp__introduction\">\r\n  Jeder Teil des Erlebnisses ist darauf ausgelegt, dass sich Fasten\r\n strukturiert, unterst\u00fctzend und gut machbar anf\u00fchlt \u2013 statt \u00fcberw\u00e4ltigend oder\r\n extrem.\r\n      <\/p>\r\n    <\/header>\r\n\r\n    <ol class=\"vdp__steps\" role=\"list\">\r\n      <li class=\"vdp__step vdp__reveal vdp__delay-1\" data-vdp-reveal=\"\">\r\n        <span class=\"vdp__number\" aria-hidden=\"true\">01<\/span>\r\n        <div class=\"vdp__step-content\">\r\n          <h3>Das passende Retreat-Erlebnis f\u00fcr Sie finden<\/h3>\r\n          <p>\r\n  Wir helfen Ihnen, das Retreat-Erlebnis zu w\u00e4hlen, das am besten zu Ihrer\r\n Situation, Ihren Zielen und Ihrem Erfahrungsstand passt.\r\n          <\/p>\r\n          <p>\r\n  Sobald Ihr Platz gesichert ist, erhalten Sie klare Hinweise zu den\r\n n\u00e4chsten Schritten und zur Vorbereitung.\r\n          <\/p>\r\n        <\/div>\r\n      <\/li>\r\n\r\n      <li class=\"vdp__step vdp__reveal vdp__delay-2\" data-vdp-reveal=\"\">\r\n        <span class=\"vdp__number\" aria-hidden=\"true\">02<\/span>\r\n        <div class=\"vdp__step-content\">\r\n          <h3>Vorbereitung & Gesundheitscheck<\/h3>\r\n          <p>\r\n  Vor der Anreise f\u00fcllen Sie einen kurzen Gesundheitsfragebogen aus und f\u00fchren\r\n ein Vorbereitungsgespr\u00e4ch mit Dieter oder Ho\u00e0n.\r\n          <\/p>\r\n          <p>\r\n  So k\u00f6nnen wir Ihren Hintergrund besser verstehen, Fragen beantworten und\r\n Sie gut vorbereiten, bevor das Fasten beginnt.\r\n          <\/p>\r\n        <\/div>\r\n      <\/li>\r\n\r\n      <li class=\"vdp__step vdp__reveal vdp__delay-3\" data-vdp-reveal=\"\">\r\n        <span class=\"vdp__number\" aria-hidden=\"true\">03<\/span>\r\n        <div class=\"vdp__step-content\">\r\n          <h3>Ihr Retreat<br\/>Erlebnis<\/h3>\r\n          <p>\r\n  Jeder Tag verbindet Fasten, Bewegung, Wissensvermittlung und Ruhe in einem\r\n ruhigen, strukturierten Rhythmus.\r\n          <\/p>\r\n          <p>\r\n  Sie werden w\u00e4hrend des Prozesses unterst\u00fctzt und haben dennoch gen\u00fcgend\r\n Raum, um langsamer zu werden, zu reflektieren und sich wieder mit sich selbst zu verbinden.\r\n          <\/p>\r\n        <\/div>\r\n      <\/li>\r\n\r\n      <li class=\"vdp__step vdp__reveal vdp__delay-4\" data-vdp-reveal=\"\">\r\n        <span class=\"vdp__number\" aria-hidden=\"true\">04<\/span>\r\n        <div class=\"vdp__step-content\">\r\n          <h3>Das Erlebnis in den Alltag mitnehmen<\/h3>\r\n          <p>\r\n  Sie gehen mit klaren Anleitungen zum Aufbau, praktischen Tools und einem\r\n Nachkontakt nach dem Retreat-Erlebnis.\r\n          <\/p>\r\n          <p>\r\n  Ziel ist, dass Sie mit ges\u00fcnderen Rhythmen und mehr Klarheit f\u00fcr den Alltag\r\n nach Hause zur\u00fcckkehren.\r\n          <\/p>\r\n        <\/div>\r\n      <\/li>\r\n    <\/ol>\r\n  <\/div>\r\n<\/section>\r\n\r\n<script>\r\n(function() {\r\n  'use strict';\r\n\r\n  var sections = document.querySelectorAll('[data-vdp-section]');\r\n\r\n  sections.forEach(function(section) {\r\n    if (section.dataset.vdpReady === 'true') return;\r\n    section.dataset.vdpReady = 'true';\r\n\r\n    var steps = section.querySelectorAll('[data-vdp-reveal]');\r\n    var reducedMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches;\r\n\r\n    function revealAll() {\r\n      steps.forEach(function(step) {\r\n        step.classList.add('is-visible');\r\n      });\r\n    }\r\n\r\n    if (!steps.length || reducedMotion || !('IntersectionObserver' in window)) {\r\n      revealAll();\r\n      return;\r\n    }\r\n\r\n    var observer = new IntersectionObserver(function(entries) {\r\n      entries.forEach(function(entry) {\r\n        if (!entry.isIntersecting) return;\r\n        entry.target.classList.add('is-visible');\r\n        observer.unobserve(entry.target);\r\n      });\r\n    }, {\r\n      threshold: 0.1,\r\n      rootMargin: '0px 0px -40px 0px'\r\n    });\r\n\r\n    steps.forEach(function(step) {\r\n      observer.observe(step);\r\n    });\r\n  });\r\n})();\r\n<\/script>\r\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/section>\n\t\t<section class=\"elementor-element elementor-element-1aeaeba e-con-full e-flex e-con e-parent\" data-id=\"1aeaeba\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-ec5beb9 elementor-widget elementor-widget-html\" data-id=\"ec5beb9\" data-element_type=\"widget\" data-e-type=\"widget\" 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=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;1,300;1,400&family=Be+Vietnam+Pro:wght@300;400;500;600;700&display=swap\" rel=\"stylesheet\">\n\n<section class=\"vnd-dbd\" data-vnd-dbd=\"\">\n  <div class=\"vnd-dbd__inner\">\n\n    <header class=\"vnd-dbd__header\">\n      <span class=\"vnd-dbd__eyebrow\">Die Buchinger-Methode<\/span>\n      <span class=\"vnd-dbd__rule\"><\/span>\n\n      <h2 class=\"vnd-dbd__headline\">\n  Was sich ver\u00e4ndert,\n        <span>Tag f\u00fcr Tag.<\/span>\n      <\/h2>\n\n      <p class=\"vnd-dbd__description\">\n  Jede Phase des Retreat-Erlebnisses unterst\u00fctzt sanft einen anderen Prozess im K\u00f6rper und Geist.\n\n      <\/p>\n    <\/header>\n\n    <div class=\"vnd-dbd__slider\">\n\n      <div class=\"vnd-dbd__cards\" data-vnd-dbd-cards=\"\" tabindex=\"0\" aria-label=\"Day-by-day retreat experience\">\n\n        <article class=\"vnd-dbd__card is-active\">\n          <img decoding=\"async\" class=\"vnd-dbd__icon\" src=\"https:\/\/vietnamdetox.com\/staging\/redesign-clickdummy-2026\/assets\/homepage\/day-by-day\/SVG\/prepday.svg\" alt=\"\">\n          <span class=\"vnd-dbd__label\">Vorbereitung<\/span>\n          <h3>Den K\u00f6rper vorbereiten<\/h3>\n          <p>\n  In den Tagen vor jedem Retreat werden die Mahlzeiten leichter und einfacher.\n Die Verdauung wird langsamer, Reize werden reduziert und der K\u00f6rper beginnt,\n sich auf Ruhe vorzubereiten.\n          <\/p>\n          <p>\n  Dieser ruhigere Einstieg hilft, dass sich das Fasten von Anfang an weniger abrupt und besser machbar anf\u00fchlt.\n\n          <\/p>\n        <\/article>\n\n        <article class=\"vnd-dbd__card\">\n          <img decoding=\"async\" class=\"vnd-dbd__icon\" src=\"https:\/\/vietnamdetox.com\/staging\/redesign-clickdummy-2026\/assets\/homepage\/day-by-day\/SVG\/day-o.svg\" alt=\"\">\n          <span class=\"vnd-dbd__label\">Anreise<\/span>\n          <h3>Ankommen und langsamer werden<\/h3>\n          <p>\n  Nach der Anreise verlagert sich der Fokus auf das Herunterfahren. Sanfte\n Bewegung, Gesundheitschecks, n\u00e4hrende Suppen und ruhige Routinen helfen,\n dass der K\u00f6rper ankommt. \n          <\/p>\n          <p>\n  Der erste Tag dient dazu, gut zu landen, sich sicher zu f\u00fchlen und das Tempo wechseln zu lassen.\n\n          <\/p>\n        <\/article>\n\n        <article class=\"vnd-dbd__card\">\n          <img decoding=\"async\" class=\"vnd-dbd__icon\" src=\"https:\/\/vietnamdetox.com\/staging\/redesign-clickdummy-2026\/assets\/homepage\/day-by-day\/SVG\/Day%201.svg\" alt=\"\">\n          <span class=\"vnd-dbd__label\">\u00dcbergang<\/span>\n          <h3>Der K\u00f6rper beginnt sich umzustellen<\/h3>\n          <p>\n  Wenn die Verdauung pausiert, geht der K\u00f6rper allm\u00e4hlich in den Fastenstoffwechsel \u00fcber.\n Viele G\u00e4ste bemerken mehr Klarheit, gleichm\u00e4\u00dfigere Energie und\n einen ruhigeren Geist. \n          <\/p>\n          <p>\n  Oft ist das der Punkt, an dem sich jedes Retreat nat\u00fcrlicher anf\u00fchlt.\n\n          <\/p>\n        <\/article>\n\n        <article class=\"vnd-dbd__card\">\n          <img decoding=\"async\" class=\"vnd-dbd__icon\" src=\"https:\/\/vietnamdetox.com\/staging\/redesign-clickdummy-2026\/assets\/homepage\/day-by-day\/SVG\/Day1to2.svg\" alt=\"\">\n          <span class=\"vnd-dbd__label\">Tiefer Reset<\/span>\n          <h3>Im Fasten ankommen<\/h3>\n          <p>\n  In dieser Phase sp\u00fcren viele G\u00e4ste den Rhythmus deutlicher. Hunger\n wird oft weniger fordernd, und die Tage f\u00fchlen sich flie\u00dfender an. \n          <\/p>\n          <p>\n  Der K\u00f6rper hat mehr Raum, langsamer zu werden, zu ruhen und zu regenerieren.\n          <\/p>\n        <\/article>\n\n        <article class=\"vnd-dbd__card\">\n          <img decoding=\"async\" class=\"vnd-dbd__icon\" src=\"https:\/\/vietnamdetox.com\/staging\/redesign-clickdummy-2026\/assets\/homepage\/day-by-day\/SVG\/Days%202%20and%203.svg\" alt=\"\">\n          <span class=\"vnd-dbd__label\">Wiederaufbau<\/span>\n          <h3>Balance wieder aufbauen<\/h3>\n          <p>\n  Wenn das Fasten tiefer wird, arbeitet der K\u00f6rper effizienter, und viele\n G\u00e4ste beschreiben ein Gef\u00fchl von Leichtigkeit und ruhigerer Energie.\n          <\/p>\n          <p>\n  Bewegung und Ruhe greifen zunehmend nat\u00fcrlicher ineinander.\n          <\/p>\n        <\/article>\n\n        <article class=\"vnd-dbd__card\">\n          <img decoding=\"async\" class=\"vnd-dbd__icon\" src=\"https:\/\/vietnamdetox.com\/staging\/redesign-clickdummy-2026\/assets\/homepage\/day-by-day\/SVG\/Day%204.svg\" alt=\"\">\n          <span class=\"vnd-dbd__label\">Integration<\/span>\n          <h3>Ein ruhigerer innerer Rhythmus<\/h3>\n          <p>\n  In dieser Phase f\u00fchlt sich das Erlebnis oft ruhiger und mehr nach innen gerichtet an.\n G\u00e4ste bemerken meist mehr Leichtigkeit, einen stabileren Appetit\n und mehr mentalen Raum. \n          <\/p>\n          <p>\n  Der Retreat-Rhythmus f\u00fchlt sich nun vertraut genug an, um sich darin einzupendeln.\n          <\/p>\n        <\/article>\n\n        <article class=\"vnd-dbd__card\">\n          <img decoding=\"async\" class=\"vnd-dbd__icon\" src=\"https:\/\/vietnamdetox.com\/staging\/redesign-clickdummy-2026\/assets\/homepage\/day-by-day\/SVG\/day-5.svg\" alt=\"\">\n          <span class=\"vnd-dbd__label\">Der erste Apfel<\/span>\n          <h3>Zur\u00fcck zum Essen<\/h3>\n          <p>\n  Der erste Apfel markiert die R\u00fcckkehr zum Essen. Er wird langsam und\n achtsam gegessen, damit der K\u00f6rper mit Sorgfalt und\n Aufmerksamkeit wieder zum Essen zur\u00fcckfindet. \n          <\/p>\n          <p>\n  Dieser Moment leitet den \u00dcbergang vom Fasten in den Wiederaufbau ein.\n          <\/p>\n        <\/article>\n\n        <article class=\"vnd-dbd__card\">\n          <img decoding=\"async\" class=\"vnd-dbd__icon\" src=\"https:\/\/vietnamdetox.com\/staging\/redesign-clickdummy-2026\/assets\/homepage\/day-by-day\/SVG\/Days%20%2B1%20to%20%2B3.svg\" alt=\"\">\n          <span class=\"vnd-dbd__label\">Aufbauphase<\/span>\n          <h3>Weitergehen<\/h3>\n          <p>\n  Die letzten Tage der Aufbauphase helfen dem Verdauungssystem, sanft zur\u00fcckzukehren.\n Einfache Lebensmittel, klare Anleitung und ein behutsames Tempo halten den \u00dcbergang\n angenehm. \n          <\/p>\n          <p>\n  Hier beginnt das Erlebnis, sich im Alltagsrhythmus und in praktischen Gewohnheiten zu verankern.\n\n          <\/p>\n        <\/article>\n\n      <\/div>\n\n      <div class=\"vnd-dbd__dots\" data-vnd-dbd-dots=\"\" aria-label=\"Choose a retreat phase\">\n        <button type=\"button\" class=\"vnd-dbd__dot is-active\" aria-label=\"Show Preparation\" aria-current=\"true\"><\/button>\n        <button type=\"button\" class=\"vnd-dbd__dot\" aria-label=\"Show Arrival\"><\/button>\n        <button type=\"button\" class=\"vnd-dbd__dot\" aria-label=\"Show Transition\"><\/button>\n        <button type=\"button\" class=\"vnd-dbd__dot\" aria-label=\"Show Deep Reset\"><\/button>\n        <button type=\"button\" class=\"vnd-dbd__dot\" aria-label=\"Show Rebuilding\"><\/button>\n        <button type=\"button\" class=\"vnd-dbd__dot\" aria-label=\"Show Integration\"><\/button>\n        <button type=\"button\" class=\"vnd-dbd__dot\" aria-label=\"Show The First Apple\"><\/button>\n        <button type=\"button\" class=\"vnd-dbd__dot\" aria-label=\"Show Refeeding\"><\/button>\n      <\/div>\n\n    <\/div>\n  <\/div>\n<\/section>\n\n<script>\n(function () {\n  function initializeDayByDay() {\n    document.querySelectorAll('[data-vnd-dbd]').forEach(function (section) {\n      if (section.hasAttribute('data-vnd-dbd-ready')) return;\n\n      section.setAttribute('data-vnd-dbd-ready', 'true');\n\n      var row = section.querySelector('[data-vnd-dbd-cards]');\n      var cards = Array.prototype.slice.call(\n        section.querySelectorAll('.vnd-dbd__card')\n      );\n      var dots = Array.prototype.slice.call(\n        section.querySelectorAll('.vnd-dbd__dot')\n      );\n\n      if (!row || !cards.length) return;\n\n      var scrollFrame = null;\n      var isDragging = false;\n      var dragStartX = 0;\n      var dragStartScroll = 0;\n\n      function getRowPadding() {\n        return parseFloat(window.getComputedStyle(row).paddingLeft) || 0;\n      }\n\n      function getCardPosition(card) {\n        return card.offsetLeft - getRowPadding();\n      }\n\n      function activateCard(index) {\n        index = Math.max(0, Math.min(index, cards.length - 1));\n\n        cards.forEach(function (card, cardIndex) {\n          card.classList.toggle('is-active', cardIndex === index);\n        });\n\n        dots.forEach(function (dot, dotIndex) {\n          var active = dotIndex === index;\n          dot.classList.toggle('is-active', active);\n\n          if (active) {\n            dot.setAttribute('aria-current', 'true');\n          } else {\n            dot.removeAttribute('aria-current');\n          }\n        });\n      }\n\n      function findNearestCard() {\n        var closestIndex = 0;\n        var closestDistance = Infinity;\n\n        cards.forEach(function (card, index) {\n          var distance = Math.abs(\n            getCardPosition(card) - row.scrollLeft\n          );\n\n          if (distance < closestDistance) {\n            closestDistance = distance;\n            closestIndex = index;\n          }\n        });\n\n        activateCard(closestIndex);\n      }\n\n      row.addEventListener('scroll', function () {\n        if (scrollFrame) {\n          window.cancelAnimationFrame(scrollFrame);\n        }\n\n        scrollFrame = window.requestAnimationFrame(function () {\n          findNearestCard();\n          scrollFrame = null;\n        });\n      }, { passive: true });\n\n      dots.forEach(function (dot, index) {\n        dot.addEventListener('click', function () {\n          activateCard(index);\n\n          row.scrollTo({\n            left: getCardPosition(cards[index]),\n            behavior: 'smooth'\n          });\n        });\n      });\n\n      \/*\n       * Convert vertical mouse-wheel movement into horizontal movement while\n       * the cursor is over the cards. Normal page scrolling resumes at the\n       * beginning and end of the slider.\n       *\/\n      row.addEventListener('wheel', function (event) {\n        if (Math.abs(event.deltaY) <= Math.abs(event.deltaX)) return;\n\n        var maximum = row.scrollWidth - row.clientWidth;\n        var atBeginning = row.scrollLeft <= 1;\n        var atEnd = row.scrollLeft >= maximum - 1;\n\n        if (\n          (event.deltaY < 0 && atBeginning) ||\n          (event.deltaY > 0 && atEnd)\n        ) {\n          return;\n        }\n\n        event.preventDefault();\n\n        row.scrollBy({\n          left: event.deltaY * 0.8,\n          behavior: 'smooth'\n        });\n      }, { passive: false });\n\n      \/*\n       * Desktop click-and-drag support.\n       * Touch devices continue to use native horizontal swiping.\n       *\/\n      row.addEventListener('mousedown', function (event) {\n        isDragging = true;\n        dragStartX = event.pageX;\n        dragStartScroll = row.scrollLeft;\n        row.classList.add('is-dragging');\n      });\n\n      document.addEventListener('mousemove', function (event) {\n        if (!isDragging) return;\n\n        event.preventDefault();\n        row.scrollLeft = dragStartScroll - (event.pageX - dragStartX);\n      });\n\n      document.addEventListener('mouseup', function () {\n        if (!isDragging) return;\n\n        isDragging = false;\n        row.classList.remove('is-dragging');\n      });\n\n      row.addEventListener('mouseleave', function () {\n        if (!isDragging) return;\n\n        isDragging = false;\n        row.classList.remove('is-dragging');\n      });\n\n      window.addEventListener('resize', findNearestCard, { passive: true });\n      activateCard(0);\n    });\n  }\n\n  initializeDayByDay();\n})();\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/section>\n\t\t<section class=\"elementor-element elementor-element-ada3f49 e-con-full elementor-hidden-desktop elementor-hidden-tablet elementor-hidden-mobile e-flex e-con e-parent\" data-id=\"ada3f49\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-fea35e7 dce_masking-none elementor-widget elementor-widget-image\" data-id=\"fea35e7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"800\" height=\"532\" src=\"https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/SLH_Namia_Lumina-Wellbeing-06-1024x681.webp\" class=\"attachment-large size-large wp-image-22980\" alt=\"\" srcset=\"https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/SLH_Namia_Lumina-Wellbeing-06-1024x681.webp 1024w, https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/SLH_Namia_Lumina-Wellbeing-06-300x200.webp 300w, https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/SLH_Namia_Lumina-Wellbeing-06-768x511.webp 768w, https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/SLH_Namia_Lumina-Wellbeing-06.webp 1200w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/section>\n\t\t<section class=\"elementor-element elementor-element-9dde1a6 e-flex e-con-boxed elementor-invisible e-con e-parent\" data-id=\"9dde1a6\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;animation&quot;:&quot;fadeIn&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-6d27d95 elementor-widget elementor-widget-html\" data-id=\"6d27d95\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!--\r\n  Copy this entire file into ONE Elementor HTML widget.\r\n  Put elementor-buchinger-quote.css into the same widget's\r\n  Advanced > Custom CSS field.\r\n-->\r\n\r\n<section class=\"vdq\" data-vdq-section=\"\" aria-label=\"Quote by Otto Buchinger\">\r\n  <div class=\"vdq__shell\">\r\n    <figure class=\"vdq__card vdq__reveal\" data-vdq-reveal=\"\">\r\n      <span class=\"vdq__mark vdq__mark--open\" aria-hidden=\"true\">\u201e<\/span>\r\n    <span class=\"eyebrow eyebrow-forest\" style=\"letter-spacing:0.24em;display:block;margin-bottom:18px;\">Eine zeitlose Perspektive<\/span>\r\n      <blockquote class=\"vdq__quote\">\r\n Ein echtes Fasten reinigt K\u00f6rper, Geist und Seele.\r\n      <\/blockquote>\r\n\r\n      <span class=\"vdq__mark vdq__mark--close\" aria-hidden=\"true\">\u201c<\/span>\r\n\r\n      <figcaption class=\"vdq__attribution\">\r\n        <cite>Mahatma Gandhi<\/cite>\r\n      <\/figcaption> \r\n\r\n      <span class=\"vdq__rule\" aria-hidden=\"true\"><\/span>\r\n    <\/figure>\r\n  <\/div>\r\n<\/section>\r\n\r\n<script>\r\n(function() {\r\n  'use strict';\r\n\r\n  var sections = document.querySelectorAll('[data-vdq-section]');\r\n\r\n  sections.forEach(function(section) {\r\n    if (section.dataset.vdqReady === 'true') return;\r\n    section.dataset.vdqReady = 'true';\r\n\r\n    var quote = section.querySelector('[data-vdq-reveal]');\r\n    var reducedMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches;\r\n\r\n    if (!quote) return;\r\n\r\n    if (reducedMotion || !('IntersectionObserver' in window)) {\r\n      quote.classList.add('is-visible');\r\n      return;\r\n    }\r\n\r\n    var observer = new IntersectionObserver(function(entries) {\r\n      entries.forEach(function(entry) {\r\n        if (!entry.isIntersecting) return;\r\n        entry.target.classList.add('is-visible');\r\n        observer.unobserve(entry.target);\r\n      });\r\n    }, {\r\n      threshold: 0.12,\r\n      rootMargin: '0px 0px -40px 0px'\r\n    });\r\n\r\n    observer.observe(quote);\r\n  });\r\n})();\r\n<\/script>\r\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/section>\n\t\t<section class=\"elementor-element elementor-element-802e335 e-con-full e-flex e-con e-parent\" data-id=\"802e335\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-93f88bc elementor-widget elementor-widget-html\" data-id=\"93f88bc\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!--\n  Vietnam Detox \u2014 Elementor Method Section\n  Paste this entire file into one Elementor HTML widget.\n  Add method-section.css separately as described in README.md.\n-->\n\n<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=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;1,300;1,400&family=Be+Vietnam+Pro:wght@300;400;500;600;700&display=swap\" rel=\"stylesheet\">\n\n<section class=\"vnd-method\" data-vnd-method=\"\">\n  <div class=\"vnd-method__inner\">\n    <header class=\"vnd-method__header\">\n      <span class=\"vnd-method__eyebrow\">Die Methode<\/span>\n      <span class=\"vnd-method__rule\" aria-hidden=\"true\"><\/span>\n\n      <h2 class=\"vnd-method__headline\">\n  Fastenretreats, die Ihnen helfen,\n        <span>sich zu erholen.<\/span>\n      <\/h2>\n\n      <p class=\"vnd-method__introduction\">\n  Strukturiertes Fasten, t\u00e4gliche Begleitung und regenerative Praktiken, die Ihrem K\u00f6rper und Geist helfen,\n wieder langsamer zu werden.\n      <\/p>\n    <\/header>\n\n    <div class=\"vnd-method__cards\" data-method-reveal=\"\">\n      <article class=\"vnd-method-card vnd-method-card--structure\">\n        <div class=\"vnd-method-card__icon\" aria-hidden=\"true\">\n          <img decoding=\"async\" src=\"https:\/\/vietnamdetox.com\/staging\/redesign-clickdummy-2026\/assets\/root-purpose\/SVG\/german-methodology.svg\" alt=\"\">\n        <\/div>\n\n        <span class=\"vnd-method-card__label vnd-method-card__label--forest\">\n Strukturierter Fastenansatz\n        <\/span>\n\n        <h3>Eine klare, begleitete Fastenstruktur<\/h3>\n\n        <p>\n  Inspiriert von der in Deutschland entwickelten Buchinger-Fastentradition folgt jedes Retreat einem strukturierten Rhythmus mit Vorbereitung, Fasten,\n Bewegung, Wissensvermittlung und behutsamer Reintegration.\n\n        <\/p>\n      <\/article>\n\n      <article class=\"vnd-method-card vnd-method-card--restorative\">\n        <div class=\"vnd-method-card__icon\" aria-hidden=\"true\">\n          <img decoding=\"async\" class=\"vnd-method-card__icon--green\" src=\"https:\/\/vietnamdetox.com\/staging\/redesign-clickdummy-2026\/assets\/root-purpose\/SVG\/vietnamese-wisdom.svg\" alt=\"\">\n        <\/div>\n\n        <span class=\"vnd-method-card__label vnd-method-card__label--ember\">\n Regenerative Praktiken\n        <\/span>\n\n        <h3>Praktiken, die Ihrem K\u00f6rper helfen, langsamer zu werden<\/h3>\n\n        <p>\n  Kr\u00e4utertees, achtsame Bewegung, warme Br\u00fchen, Massage und ruhige\n Routinen unterst\u00fctzen Ruhe, die Regeneration des Nervensystems und das Wiederankommen \u2013 w\u00e4hrend jedes Retreats.\n\n        <\/p>\n      <\/article>\n\n      <article class=\"vnd-method-card vnd-method-card--guided\">\n        <div class=\"vnd-method-card__icon\" aria-hidden=\"true\">\n          <img decoding=\"async\" class=\"vnd-method-card__icon--green\" src=\"https:\/\/vietnamdetox.com\/staging\/redesign-clickdummy-2026\/assets\/root-purpose\/SVG\/guided-process.svg\" alt=\"\">\n        <\/div>\n\n        <span class=\"vnd-method-card__label vnd-method-card__label--gold\">\n Begleitetes Erlebnis\n        <\/span>\n\n        <h3>Sie werden im Prozess nicht allein gelassen<\/h3>\n\n        <p>\n  Von der Vorbereitung vor der Anreise bis zur Anleitung f\u00fcr die Aufbauphase danach ist jedes Retreat so gestaltet, dass es sich unterst\u00fctzend, gut machbar und Schritt f\u00fcr Schritt pers\u00f6nlich begleitet anf\u00fchlt.\n\n\n        <\/p>\n      <\/article>\n    <\/div>\n\n    <p class=\"vnd-method__closing\">\n  Zusammen schaffen diese Elemente Fastenretreats, die strukturiert genug sind, um Vertrauen zu geben \u2013 und sanft genug, um wirklich anzukommen.\n\n    <\/p>\n\n    <!-- Hidden until \/the-method\/ is published. Restore by removing this comment wrapper.\n    <div class=\"vnd-method__action\">\n      <a class=\"vnd-method__button\" href=\"https:\/\/vietnamdetox.com\/de\/die-methode\/\">\n        Explore The Method\n      <\/a>\n    <\/div>\n    -->\n  <\/div>\n<\/section>\n\n<script>\n(function () {\n  \"use strict\";\n\n  var sections = document.querySelectorAll(\n    \"[data-vnd-method]:not([data-vnd-method-ready])\"\n  );\n\n  sections.forEach(function (section) {\n    section.setAttribute(\"data-vnd-method-ready\", \"true\");\n\n    var revealElement = section.querySelector(\"[data-method-reveal]\");\n    if (!revealElement) return;\n\n    var reducedMotion = window.matchMedia(\n      \"(prefers-reduced-motion: reduce)\"\n    ).matches;\n\n    if (reducedMotion || !(\"IntersectionObserver\" in window)) {\n      revealElement.classList.add(\"is-visible\");\n      return;\n    }\n\n    var observer = new IntersectionObserver(function (entries) {\n      entries.forEach(function (entry) {\n        if (!entry.isIntersecting) return;\n\n        entry.target.classList.add(\"is-visible\");\n        observer.unobserve(entry.target);\n      });\n    }, {\n      threshold: 0.12,\n      rootMargin: \"0px 0px -40px 0px\"\n    });\n\n    observer.observe(revealElement);\n  });\n})();\n<\/script>\n\t\t\t\t<\/div>\n\t\t\t\t<\/section>\n\t\t<section class=\"elementor-element elementor-element-bf503c4 e-flex e-con-boxed e-con e-parent\" data-id=\"bf503c4\" 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-66b3399 elementor-widget elementor-widget-html\" data-id=\"66b3399\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!--\r\n  Copy this entire file into ONE Elementor HTML widget.\r\n  Put elementor-retreat-cta.css into the same widget's\r\n  Advanced > Custom CSS field.\r\n-->\r\n\r\n<section class=\"vcta\" data-vcta-section=\"\" aria-labelledby=\"vcta-title\">\r\n  <div class=\"vcta__shell\">\r\n    <div class=\"vcta__card vcta__reveal\" data-vcta-reveal=\"\">\r\n      <div class=\"vcta__content\">\r\n        <header class=\"vcta__header\">\r\n          <span class=\"vcta__eyebrow\">Bereit, wenn Sie es sind<\/span>\r\n          <span class=\"vcta__rule\" aria-hidden=\"true\"><\/span>\r\n          <h2 class=\"vcta__headline\" id=\"vcta-title\">\r\n  Reservieren Sie Ihren Platz in einem unserer kommenden\r\n            <em>Retreats.<\/em>\r\n          <\/h2>\r\n        <\/header>\r\n\r\n        <figure class=\"vcta__visual\">\r\n          <img src=\"\/wp-content\/uploads\/2026\/05\/happy-guest-during-hike.webp\" alt=\"Gast genie\u00dft eine achtsame Wanderung in den Bergen\" loading=\"lazy\" decoding=\"async\">\r\n        <\/figure>\r\n\r\n        <div class=\"vcta__body\">\r\n          <p class=\"vcta__copy\">\r\n  Wenn Sie bereits ein bestimmter Ort oder Termin anspricht, sichern Sie sich Ihren Platz\r\n jetzt. Noch nicht ganz sicher? Wir f\u00fchren Sie gern durch Atmosph\u00e4re, Screening und Timing \u2013 in einem ruhigen Kennenlerngespr\u00e4ch.\r\n  \r\n          <\/p>\r\n          <p class=\"vcta__note\">\r\n  Manche G\u00e4ste starten mit Begleitung. Andere wissen bereits, dass sie Retreats entdecken m\u00f6chten.\r\n \r\n          <\/p>\r\n\r\n          <div class=\"vcta__buttons\">\r\n            <a class=\"vcta__button vcta__button--forest\" href=\"#retreats\">Finden Sie Ihr Retreat-Erlebnis<\/a>\r\n            <a class=\"vcta__button vcta__button--outline\" href=\"https:\/\/vietnamdetox.com\/de\/retreat-ueberblick\/\">Retreats entdecken<\/a>\r\n          <\/div>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\r\n\r\n<script>\r\n(function() {\r\n  'use strict';\r\n\r\n  var sections = document.querySelectorAll('[data-vcta-section]');\r\n\r\n  sections.forEach(function(section) {\r\n    if (section.dataset.vctaReady === 'true') return;\r\n    section.dataset.vctaReady = 'true';\r\n\r\n    var card = section.querySelector('[data-vcta-reveal]');\r\n    var reducedMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches;\r\n\r\n    function reveal() {\r\n      if (card) card.classList.add('is-visible');\r\n    }\r\n\r\n    if (!card || reducedMotion || !('IntersectionObserver' in window)) {\r\n      reveal();\r\n      return;\r\n    }\r\n\r\n    var observer = new IntersectionObserver(function(entries) {\r\n      entries.forEach(function(entry) {\r\n        if (!entry.isIntersecting) return;\r\n        entry.target.classList.add('is-visible');\r\n        observer.unobserve(entry.target);\r\n      });\r\n    }, {\r\n      threshold: 0.1,\r\n      rootMargin: '0px 0px -40px 0px'\r\n    });\r\n\r\n    observer.observe(card);\r\n  });\r\n})();\r\n<\/script>\r\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/section>\n\t\t<div class=\"elementor-element elementor-element-809b002 e-con-full e-flex e-con e-parent\" data-id=\"809b002\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-278d3b1 elementor-widget__width-inherit elementor-widget elementor-widget-html\" data-id=\"278d3b1\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!--\n  Vietnam Detox \u2014 Elementor Locations Slider\n  Paste this entire file into one Elementor HTML widget.\n  Add locations-slider.css separately as described in README.md.\n-->\n\n<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=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;1,300;1,400&family=Be+Vietnam+Pro:wght@300;400;500;600;700&display=swap\" rel=\"stylesheet\">\n\n<section class=\"vnd-locations\" data-vnd-locations=\"\" data-api-url=\"\/wp-json\/retreats\/v1\/all\">\n  <div class=\"vnd-locations__heading\">\n    <span class=\"vnd-locations__eyebrow\">Unsere Standorte<\/span>\n    <span class=\"vnd-locations__rule\"><\/span>\n\n    <h2 class=\"vnd-locations__headline\">\n  Orte, an denen es leichter wird,\n      <span>herunterzufahren.<\/span>\n    <\/h2>\n\n    <p class=\"vnd-locations__intro\">\n  Jeder Retreat-Standort wird so gew\u00e4hlt, dass L\u00e4rm, Druck und \u00dcberstimulation reduziert werden,\n damit K\u00f6rper und Geist wieder zur Ruhe kommen k\u00f6nnen.\n    <\/p>\n  <\/div>\n\n  <div class=\"vnd-locations__slider\">\n    <div class=\"vnd-locations__viewport\" data-location-viewport=\"\" tabindex=\"0\" aria-label=\"Available retreat locations\">\n      <button type=\"button\" class=\"vnd-locations__arrow vnd-locations__arrow--previous\" data-location-previous=\"\" aria-label=\"Previous location\"><\/button>\n\n      <div class=\"vnd-locations__track\" data-location-track=\"\" aria-live=\"polite\"><\/div>\n\n      <button type=\"button\" class=\"vnd-locations__arrow vnd-locations__arrow--next\" data-location-next=\"\" aria-label=\"Next location\"><\/button>\n    <\/div>\n\n    <div class=\"vnd-locations__controls\">\n      <div class=\"vnd-locations__dots\" data-location-dots=\"\" aria-label=\"Choose a location\"><\/div>\n    <\/div>\n\n    <p class=\"vnd-locations__status\" data-location-status=\"\">\n  Verf\u00fcgbare Retreat-Standorte werden geladen\u2026\n    <\/p>\n  <\/div>\n<\/section>\n\n<script>\n(function () {\n  \"use strict\";\n\n  function getLanguage() {\n    var detected = String(document.documentElement.lang || \"en\")\n      .toLowerCase()\n      .split(\/[-_]\/)[0];\n\n    return [\"en\", \"vi\", \"de\"].indexOf(detected) !== -1\n      ? detected\n      : \"en\";\n  }\n\n  function getSharedRetreatApi() {\n    if (window.VietnamDetoxRetreatAPI) {\n      return window.VietnamDetoxRetreatAPI;\n    }\n\n    window.VietnamDetoxRetreatAPI = {\n      requests: {},\n\n      load: function (apiPath, requestedLanguage) {\n        var apiUrl = new URL(\n          apiPath || \"\/wp-json\/retreats\/v1\/all\",\n          window.location.origin\n        );\n\n        apiUrl.searchParams.set(\n          \"lang\",\n          requestedLanguage || \"en\"\n        );\n\n        var cacheKey = apiUrl.href;\n\n        if (!this.requests[cacheKey]) {\n          this.requests[cacheKey] = fetch(cacheKey, {\n            headers: { Accept: \"application\/json\" }\n          })\n            .then(function (response) {\n              if (!response.ok) {\n                throw new Error(\n                  \"Retreat API returned HTTP \" + response.status\n                );\n              }\n\n              return response.json();\n            })\n            .then(function (retreats) {\n              if (!Array.isArray(retreats)) {\n                throw new Error(\"Unexpected retreat API response\");\n              }\n\n              return retreats;\n            })\n            .catch(function (error) {\n              delete window.VietnamDetoxRetreatAPI.requests[cacheKey];\n              throw error;\n            });\n        }\n\n        return this.requests[cacheKey];\n      }\n    };\n\n    return window.VietnamDetoxRetreatAPI;\n  }\n\n  var language = getLanguage();\n  var textByLanguage = {\n    en: {\n      locale: \"en\",\n      loading: \"Loading available retreat locations\u2026\",\n      fallbackRetreat: \"Retreat\",\n      fallbackDescription:\n        \"A peaceful setting selected for rest, reflection and supported fasting.\",\n      nextAvailableRetreat: \"Next available retreat\",\n      moreAvailableDates: function (count) {\n        return (\n          \"+\" +\n          count +\n          \" more available \" +\n          (count === 1 ? \"date\" : \"dates\")\n        );\n      },\n      viewAvailableRetreat: \"View available retreat\",\n      viewOnGoogle: \"View on Google\",\n      availableLocations: \"Available retreat locations\",\n      previousLocation: \"Previous location\",\n      nextLocation: \"Next location\",\n      chooseLocation: \"Choose a location\",\n      showLocation: function (index) {\n        return \"Show location \" + index;\n      },\n      noLocations: \"No retreat locations currently have upcoming dates.\",\n      loadError:\n        \"The available retreat locations could not be loaded. Please try again later.\"\n    },\n    vi: {\n      locale: \"vi\",\n      loading: \"\u0110ang t\u1ea3i c\u00e1c \u0111\u1ecba \u0111i\u1ec3m retreat hi\u1ec7n c\u00f3\u2026\",\n      fallbackRetreat: \"Retreat\",\n      fallbackDescription:\n        \"Kh\u00f4ng gian y\u00ean b\u00ecnh \u0111\u01b0\u1ee3c l\u1ef1a ch\u1ecdn \u0111\u1ec3 ngh\u1ec9 ng\u01a1i, chi\u00eam nghi\u1ec7m v\u00e0 nh\u1ecbn \u0103n c\u00f3 h\u01b0\u1edbng d\u1eabn.\",\n      nextAvailableRetreat: \"L\u1ecbch retreat g\u1ea7n nh\u1ea5t\",\n      moreAvailableDates: function (count) {\n        return \"+\" + count + \" l\u1ecbch kh\u00e1c\";\n      },\n      viewAvailableRetreat: \"Xem l\u1ecbch retreat\",\n      viewOnGoogle: \"Xem tr\u00ean Google\",\n      availableLocations: \"C\u00e1c \u0111\u1ecba \u0111i\u1ec3m retreat hi\u1ec7n c\u00f3\",\n      previousLocation: \"\u0110\u1ecba \u0111i\u1ec3m tr\u01b0\u1edbc\",\n      nextLocation: \"\u0110\u1ecba \u0111i\u1ec3m ti\u1ebfp theo\",\n      chooseLocation: \"Ch\u1ecdn m\u1ed9t \u0111\u1ecba \u0111i\u1ec3m\",\n      showLocation: function (index) {\n        return \"Hi\u1ec3n th\u1ecb \u0111\u1ecba \u0111i\u1ec3m \" + index;\n      },\n      noLocations: \"Hi\u1ec7n kh\u00f4ng c\u00f3 \u0111\u1ecba \u0111i\u1ec3m retreat n\u00e0o c\u00f3 l\u1ecbch s\u1eafp t\u1edbi.\",\n      loadError:\n        \"Kh\u00f4ng th\u1ec3 t\u1ea3i c\u00e1c \u0111\u1ecba \u0111i\u1ec3m retreat hi\u1ec7n c\u00f3. Vui l\u00f2ng th\u1eed l\u1ea1i sau.\"\n    },\n    de: {\n      locale: \"de\",\n      loading: \"Verf\u00fcgbare Retreat-Orte werden geladen\u2026\",\n      fallbackRetreat: \"Retreat\",\n      fallbackDescription:\n        \"Ein ruhiger Ort, ausgew\u00e4hlt f\u00fcr Erholung, Reflexion und begleitetes Fasten.\",\n      nextAvailableRetreat: \"N\u00e4chstes verf\u00fcgbares Retreat\",\n      moreAvailableDates: function (count) {\n        return count === 1\n          ? \"+1 weiterer verf\u00fcgbarer Termin\"\n          : \"+\" + count + \" weitere verf\u00fcgbare Termine\";\n      },\n      viewAvailableRetreat: \"Verf\u00fcgbares Retreat ansehen\",\n      viewOnGoogle: \"Auf Google ansehen\",\n      availableLocations: \"Verf\u00fcgbare Retreat-Orte\",\n      previousLocation: \"Vorheriger Ort\",\n      nextLocation: \"N\u00e4chster Ort\",\n      chooseLocation: \"Ort ausw\u00e4hlen\",\n      showLocation: function (index) {\n        return \"Ort \" + index + \" anzeigen\";\n      },\n      noLocations: \"Derzeit gibt es an keinem Retreat-Ort kommende Termine.\",\n      loadError:\n        \"Die verf\u00fcgbaren Retreat-Orte konnten nicht geladen werden. Bitte versuchen Sie es sp\u00e4ter erneut.\"\n    }\n  };\n  var text = textByLanguage[language] || textByLanguage.en;\n  var locale = text.locale;\n  var sections = document.querySelectorAll(\n    \"[data-vnd-locations]:not([data-vnd-locations-ready])\"\n  );\n\n  sections.forEach(function (section) {\n    section.setAttribute(\"data-vnd-locations-ready\", \"true\");\n\n    var apiUrl = section.getAttribute(\"data-api-url\");\n    var viewport = section.querySelector(\"[data-location-viewport]\");\n    var track = section.querySelector(\"[data-location-track]\");\n    var previousButton = section.querySelector(\"[data-location-previous]\");\n    var nextButton = section.querySelector(\"[data-location-next]\");\n    var dotsContainer = section.querySelector(\"[data-location-dots]\");\n    var status = section.querySelector(\"[data-location-status]\");\n\n    if (!apiUrl || !viewport || !track) return;\n\n    viewport.setAttribute(\"aria-label\", text.availableLocations);\n    if (previousButton) {\n      previousButton.setAttribute(\"aria-label\", text.previousLocation);\n    }\n    if (nextButton) {\n      nextButton.setAttribute(\"aria-label\", text.nextLocation);\n    }\n    if (dotsContainer) {\n      dotsContainer.setAttribute(\"aria-label\", text.chooseLocation);\n    }\n    if (status) status.textContent = text.loading;\n\n    var retreatRequest = getSharedRetreatApi().load(apiUrl, language);\n\n    function extractRetreats(response) {\n      if (Array.isArray(response)) return response;\n      if (response && Array.isArray(response.data)) return response.data;\n      if (response && Array.isArray(response.retreats)) return response.retreats;\n      if (\n        response &&\n        response.data &&\n        Array.isArray(response.data.retreats)\n      ) {\n        return response.data.retreats;\n      }\n      return [];\n    }\n\n    \/* Supports both YYYY-MM-DD and the API's current MM\/DD\/YYYY values. *\/\n    function parseApiDate(value) {\n      if (!value) return null;\n\n      var cleanValue = String(value).trim();\n      var match = cleanValue.match(\/^(\\d{4})-(\\d{1,2})-(\\d{1,2})\/);\n\n      if (match) {\n        return new Date(Date.UTC(\n          Number(match[1]),\n          Number(match[2]) - 1,\n          Number(match[3])\n        ));\n      }\n\n      match = cleanValue.match(\/^(\\d{1,2})\\\/(\\d{1,2})\\\/(\\d{4})\/);\n\n      if (match) {\n        return new Date(Date.UTC(\n          Number(match[3]),\n          Number(match[1]) - 1,\n          Number(match[2])\n        ));\n      }\n\n      var fallback = new Date(cleanValue);\n      return isNaN(fallback.getTime()) ? null : fallback;\n    }\n\n    function getTodayTimestamp() {\n      var today = new Date();\n      return Date.UTC(\n        today.getFullYear(),\n        today.getMonth(),\n        today.getDate()\n      );\n    }\n\n    function cleanText(value) {\n      var temporary = document.createElement(\"div\");\n      temporary.innerHTML = value || \"\";\n      return (temporary.textContent || \"\").replace(\/\\s+\/g, \" \").trim();\n    }\n\n    function shortenText(value, maximumLength) {\n      var text = cleanText(value);\n      if (text.length <= maximumLength) return text;\n      return text.slice(0, maximumLength).replace(\/\\s+\\S*$\/, \"\") + \"\u2026\";\n    }\n\n    function createElement(tag, className, text) {\n      var element = document.createElement(tag);\n      if (className) element.className = className;\n      if (typeof text !== \"undefined\") element.textContent = text;\n      return element;\n    }\n\n    function formatDate(date) {\n      return new Intl.DateTimeFormat(locale, {\n        day: \"2-digit\",\n        month: \"short\",\n        year: \"numeric\",\n        timeZone: \"UTC\"\n      }).format(date);\n    }\n\n    function formatDateRange(startDate, endDate) {\n      if (!startDate) return \"\";\n      if (!endDate) return formatDate(startDate);\n\n      var sameYear =\n        startDate.getUTCFullYear() === endDate.getUTCFullYear();\n      var sameMonth =\n        sameYear && startDate.getUTCMonth() === endDate.getUTCMonth();\n\n      if (sameMonth) {\n        return (\n          String(startDate.getUTCDate()).padStart(2, \"0\") +\n          \"\u2013\" +\n          String(endDate.getUTCDate()).padStart(2, \"0\") +\n          \" \" +\n          new Intl.DateTimeFormat(locale, {\n            month: \"short\",\n            year: \"numeric\",\n            timeZone: \"UTC\"\n          }).format(endDate)\n        );\n      }\n\n      return formatDate(startDate) + \" \u2013 \" + formatDate(endDate);\n    }\n\n    function getDisplayLocation(location) {\n      var locationNames = {\n        \"M Gallery Legacy Yen Tu\": \"Legacy Yen Tu MGallery\"\n      };\n      return locationNames[location] || location;\n    }\n\n    function groupAvailableLocations(retreats) {\n      var todayTimestamp = getTodayTimestamp();\n      var locationMap = {};\n\n      retreats.forEach(function (retreat) {\n        var location = cleanText(retreat.location);\n        if (!location) return;\n\n        var dates = Array.isArray(retreat.dates) ? retreat.dates : [];\n        var availableDates = dates\n          .map(function (date) {\n            var startDate = parseApiDate(\n              date.start || date.start_date || date.date\n            );\n            var endDate = parseApiDate(\n              date.end || date.end_date || date.start || date.date\n            );\n\n            return {\n              startDate: startDate,\n              endDate: endDate,\n              label: date.label || \"\",\n              limited: Boolean(date.limited),\n              retreatName: cleanText(\n                retreat.name || retreat.title || text.fallbackRetreat\n              ),\n              retreatUrl: retreat.url || \"#retreats\"\n            };\n          })\n          .filter(function (date) {\n            return (\n              date.startDate &&\n              date.endDate &&\n              date.endDate.getTime() >= todayTimestamp\n            );\n          });\n\n        if (!availableDates.length) return;\n\n        availableDates.sort(function (first, second) {\n          return first.startDate - second.startDate;\n        });\n\n        if (!locationMap[location]) {\n          locationMap[location] = {\n            location: location,\n            displayLocation: getDisplayLocation(location),\n            image: retreat.image || \"\",\n            description: retreat.description || \"\",\n            retreats: [],\n            dates: []\n          };\n        }\n\n        var group = locationMap[location];\n        if (!group.image && retreat.image) group.image = retreat.image;\n        if (!group.description && retreat.description) {\n          group.description = retreat.description;\n        }\n\n        group.retreats.push({\n          name: cleanText(\n            retreat.name || retreat.title || text.fallbackRetreat\n          ),\n          url: retreat.url || \"#retreats\"\n        });\n        group.dates = group.dates.concat(availableDates);\n      });\n\n      return Object.keys(locationMap)\n        .map(function (location) {\n          var group = locationMap[location];\n\n          group.dates.sort(function (first, second) {\n            return first.startDate - second.startDate;\n          });\n\n          group.retreats = group.retreats.filter(function (\n            retreat,\n            index,\n            allRetreats\n          ) {\n            return allRetreats.findIndex(function (item) {\n              return item.name === retreat.name;\n            }) === index;\n          });\n\n          return group;\n        })\n        .sort(function (first, second) {\n          return first.dates[0].startDate - second.dates[0].startDate;\n        });\n    }\n\n    function createLocationCard(location) {\n      var card = createElement(\"article\", \"vnd-location-card\");\n      var figure = createElement(\"figure\", \"vnd-location-card__image\");\n\n      if (location.image) {\n        var image = document.createElement(\"img\");\n        image.src = location.image;\n        image.alt = location.displayLocation;\n        image.loading = \"lazy\";\n        image.decoding = \"async\";\n        figure.appendChild(image);\n      } else {\n        figure.classList.add(\"is-empty\");\n      }\n\n      var information = createElement(\"div\", \"vnd-location-card__content\");\n      var title = createElement(\n        \"h3\",\n        \"vnd-location-card__title\",\n        location.displayLocation\n      );\n      var description = createElement(\n        \"p\",\n        \"vnd-location-card__description\",\n        shortenText(\n          location.description ||\n            text.fallbackDescription,\n          190\n        )\n      );\n      var retreatTags = createElement(\"ul\", \"vnd-location-card__tags\");\n\n      location.retreats.slice(0, 3).forEach(function (retreat) {\n        retreatTags.appendChild(createElement(\"li\", \"\", retreat.name));\n      });\n\n      var availability = createElement(\n        \"div\",\n        \"vnd-location-card__availability\"\n      );\n      var availabilityEyebrow = createElement(\n        \"span\",\n        \"vnd-location-card__availability-label\",\n        text.nextAvailableRetreat\n      );\n      var nextDate = location.dates[0];\n      var dateText = createElement(\n        \"strong\",\n        \"vnd-location-card__date\",\n        formatDateRange(nextDate.startDate, nextDate.endDate)\n      );\n      var retreatName = createElement(\n        \"span\",\n        \"vnd-location-card__retreat-name\",\n        nextDate.retreatName\n      );\n\n      availability.appendChild(availabilityEyebrow);\n      availability.appendChild(dateText);\n      availability.appendChild(retreatName);\n\n      if (location.dates.length > 1) {\n        var remainingDateCount = location.dates.length - 1;\n        availability.appendChild(\n          createElement(\n            \"span\",\n            \"vnd-location-card__more-dates\",\n            text.moreAvailableDates(remainingDateCount)\n          )\n        );\n      }\n\n      var links = createElement(\"div\", \"vnd-location-card__links\");\n      var retreatLink = createElement(\n        \"a\",\n        \"vnd-location-card__primary-link\",\n        text.viewAvailableRetreat\n      );\n      retreatLink.href = nextDate.retreatUrl || \"#retreats\";\n\n      var mapLink = createElement(\n        \"a\",\n        \"vnd-location-card__map-link\",\n        text.viewOnGoogle\n      );\n      mapLink.href =\n        \"https:\/\/www.google.com\/maps\/search\/?api=1&query=\" +\n        encodeURIComponent(location.location);\n      mapLink.target = \"_blank\";\n      mapLink.rel = \"noopener\";\n\n      links.appendChild(retreatLink);\n      links.appendChild(mapLink);\n      information.appendChild(title);\n      information.appendChild(description);\n      information.appendChild(retreatTags);\n      information.appendChild(availability);\n      information.appendChild(links);\n      card.appendChild(figure);\n      card.appendChild(information);\n\n      return card;\n    }\n\n    function initializeSlider() {\n      var cards = Array.prototype.slice.call(\n        track.querySelectorAll(\".vnd-location-card\")\n      );\n      if (!cards.length) return;\n\n      var dots = [];\n      var currentIndex = 0;\n      var touchStartX = null;\n      var resizeTimer = null;\n\n      dotsContainer.innerHTML = \"\";\n\n      cards.forEach(function (card, index) {\n        var dot = createElement(\"button\", \"vnd-locations__dot\");\n        dot.type = \"button\";\n        dot.setAttribute(\"aria-label\", text.showLocation(index + 1));\n        dot.addEventListener(\"click\", function () {\n          goTo(index);\n        });\n        dotsContainer.appendChild(dot);\n        dots.push(dot);\n      });\n\n      function updateDots() {\n        dots.forEach(function (dot, index) {\n          var active = index === currentIndex;\n          dot.classList.toggle(\"is-active\", active);\n          if (active) dot.setAttribute(\"aria-current\", \"true\");\n          else dot.removeAttribute(\"aria-current\");\n        });\n      }\n\n      function goTo(index, instant) {\n        currentIndex = (index + cards.length) % cards.length;\n\n        var card = cards[currentIndex];\n        var viewportStyles = window.getComputedStyle(viewport);\n        var paddingLeft = parseFloat(viewportStyles.paddingLeft) || 0;\n        var paddingRight = parseFloat(viewportStyles.paddingRight) || 0;\n        var availableWidth =\n          viewport.clientWidth - paddingLeft - paddingRight;\n        var viewportCenter = paddingLeft + availableWidth \/ 2;\n        var cardCenter =\n          paddingLeft + card.offsetLeft + card.offsetWidth \/ 2;\n        var offset = cardCenter - viewportCenter;\n\n        if (instant) track.style.transition = \"none\";\n        track.style.transform = \"translate3d(\" + -offset + \"px, 0, 0)\";\n\n        if (instant) {\n          window.requestAnimationFrame(function () {\n            track.style.transition = \"\";\n          });\n        }\n\n        updateDots();\n      }\n\n      previousButton.addEventListener(\"click\", function () {\n        goTo(currentIndex - 1);\n      });\n\n      nextButton.addEventListener(\"click\", function () {\n        goTo(currentIndex + 1);\n      });\n\n      viewport.addEventListener(\"keydown\", function (event) {\n        if (event.key === \"ArrowLeft\") {\n          event.preventDefault();\n          goTo(currentIndex - 1);\n        }\n        if (event.key === \"ArrowRight\") {\n          event.preventDefault();\n          goTo(currentIndex + 1);\n        }\n      });\n\n      viewport.addEventListener(\"touchstart\", function (event) {\n        if (!event.touches.length) return;\n        touchStartX = event.touches[0].clientX;\n      }, { passive: true });\n\n      viewport.addEventListener(\"touchend\", function (event) {\n        if (touchStartX === null || !event.changedTouches.length) return;\n\n        var difference = event.changedTouches[0].clientX - touchStartX;\n        touchStartX = null;\n        if (Math.abs(difference) < 40) return;\n        goTo(difference > 0 ? currentIndex - 1 : currentIndex + 1);\n      }, { passive: true });\n\n      window.addEventListener(\"resize\", function () {\n        window.clearTimeout(resizeTimer);\n        resizeTimer = window.setTimeout(function () {\n          goTo(currentIndex, true);\n        }, 100);\n      });\n\n      if (cards.length === 1) section.classList.add(\"has-one-location\");\n      goTo(0, true);\n    }\n\n    function renderLocations(response) {\n      var retreats = extractRetreats(response);\n      var locations = groupAvailableLocations(retreats);\n      track.innerHTML = \"\";\n\n      if (!locations.length) {\n        status.textContent = text.noLocations;\n        section.classList.add(\"has-no-locations\");\n        return;\n      }\n\n      locations.forEach(function (location) {\n        track.appendChild(createLocationCard(location));\n      });\n\n      status.hidden = true;\n      initializeSlider();\n    }\n\n    retreatRequest\n      .then(renderLocations)\n      .catch(function (error) {\n        console.error(\"Location carousel error:\", error);\n        status.textContent = text.loadError;\n        section.classList.add(\"has-api-error\");\n      });\n  });\n})();\n<\/script>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-0bc222a e-flex e-con-boxed e-con e-parent\" data-id=\"0bc222a\" 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-89187cb elementor-widget elementor-widget-html\" data-id=\"89187cb\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!--\r\n  Copy this entire file into ONE Elementor HTML widget.\r\n  Put elementor-retreat-fit.css into the same widget's\r\n  Advanced > Custom CSS field.\r\n\r\n  This source section has no interactive JavaScript dependency.\r\n-->\r\n\r\n<section class=\"vfit\" aria-labelledby=\"vfit-title\">\r\n  <div class=\"vfit__shell\">\r\n    <header class=\"vfit__header\">\r\n      <span class=\"vfit__eyebrow\">F\u00fcr Sie gemacht<\/span>\r\n      <span class=\"vfit__rule\" aria-hidden=\"true\"><\/span>\r\n      <h2 class=\"vfit__headline\" id=\"vfit-title\">\r\n  F\u00fcr <em>\u00fcberlastete K\u00f6pfe<\/em> und ersch\u00f6pfte K\u00f6rper.\r\n      <\/h2>\r\n      <p class=\"vfit__introduction\">\r\n  Vietnam Detox ist f\u00fcr Menschen gedacht, die sich mental \u00fcberlastet,\r\n k\u00f6rperlich ersch\u00f6pft oder aus dem Rhythmus f\u00fchlen und strukturierte Unterst\u00fctzung suchen, um wirklich herunterzufahren.\r\n Es ist nicht f\u00fcr alle \u2013 und das ist bewusst so. \r\n      <\/p>\r\n    <\/header>\r\n\r\n    <div class=\"vfit__layout\">\r\n      <div class=\"vfit__grid\">\r\n        <article class=\"vfit__card vfit__card--green\">\r\n          <h3>Unsere Retreats passen oft gut f\u00fcr Menschen, die\u2026<\/h3>\r\n          <ul class=\"vfit__list\" role=\"list\">\r\n            <li class=\"vfit__bullet\">\r\n              <img decoding=\"async\" src=\"\/wp-content\/uploads\/2026\/05\/Asset-11@3x.webp\" alt=\"\" class=\"vfit__bullet-icon\" aria-hidden=\"true\">\r\n              <span>sich mental \u00fcberlastet oder st\u00e4ndig \u201ean\u201c f\u00fchlen<\/span>\r\n            <\/li>\r\n            <li class=\"vfit__bullet\">\r\n              <img decoding=\"async\" src=\"\/wp-content\/uploads\/2026\/05\/Asset-11@3x.webp\" alt=\"\" class=\"vfit__bullet-icon\" aria-hidden=\"true\">\r\n              <span>ruhige Struktur statt extremer Wellness-Trends wollen<\/span>\r\n            <\/li>\r\n            <li class=\"vfit__bullet\">\r\n              <img decoding=\"async\" src=\"\/wp-content\/uploads\/2026\/05\/Asset-11@3x.webp\" alt=\"\" class=\"vfit__bullet-icon\" aria-hidden=\"true\">\r\n              <span>bereit sind, wirklich herunterzufahren<\/span>\r\n            <\/li>\r\n            <li class=\"vfit__bullet\">\r\n              <img decoding=\"async\" src=\"\/wp-content\/uploads\/2026\/05\/Asset-11@3x.webp\" alt=\"\" class=\"vfit__bullet-icon\" aria-hidden=\"true\">\r\n              <span>ihren K\u00f6rper verstehen wollen, statt nur Anweisungen zu folgen<\/span>\r\n            <\/li>\r\n          <\/ul>\r\n        <\/article>\r\n\r\n        <article class=\"vfit__card vfit__card--warm\">\r\n          <h3>Unsere Retreats sind m\u00f6glicherweise nicht passend, wenn\u2026<\/h3>\r\n          <ul class=\"vfit__list\" role=\"list\">\r\n            <li class=\"vfit__bullet\">\r\n              <img decoding=\"async\" src=\"\/wp-content\/uploads\/2026\/05\/Asset-12@3x.webp\" alt=\"\" class=\"vfit__bullet-icon\" aria-hidden=\"true\">\r\n              <span>Sie einen Luxus-Urlaub suchen, ohne im Alltag etwas zu ver\u00e4ndern<\/span>\r\n            <\/li>\r\n            <li class=\"vfit__bullet\">\r\n              <img decoding=\"async\" src=\"\/wp-content\/uploads\/2026\/05\/Asset-12@3x.webp\" alt=\"\" class=\"vfit__bullet-icon\" aria-hidden=\"true\">\r\n              <span>Sie derzeit schwanger sind oder medizinische Beschwerden haben, die m\u00f6glicherweise nicht mit Fasten vereinbar sind<\/span>\r\n            <\/li>\r\n            <li class=\"vfit__bullet\">\r\n              <img decoding=\"async\" src=\"\/wp-content\/uploads\/2026\/05\/Asset-12@3x.webp\" alt=\"\" class=\"vfit__bullet-icon\" aria-hidden=\"true\">\r\n              <span>Sie nicht bereit sind, f\u00fcr ein paar Tage langsamer zu werden, zu ruhen oder sich von st\u00e4ndiger Reiz\u00fcberflutung zur\u00fcckzuziehen<\/span>\r\n            <\/li>\r\n            <li class=\"vfit__bullet\">\r\n              <img decoding=\"async\" src=\"\/wp-content\/uploads\/2026\/05\/Asset-12@3x.webp\" alt=\"\" class=\"vfit__bullet-icon\" aria-hidden=\"true\">\r\n              <span>Sie schnelle Ergebnisse erwarten \u2013 ohne Reflexion, Struktur oder pers\u00f6nliche Verantwortung<\/span>\r\n            <\/li>\r\n          <\/ul>\r\n        <\/article>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"vfit__gallery\">\r\n      <figure>\r\n        <img src=\"\/wp-content\/uploads\/2026\/05\/Vietnam-detox-wellness-retreat-healthy-lifestyle-song-khoe-thai-doc-18.webp\" alt=\"Gast schreibt ruhig Tagebuch mit Tee und Blick in den Garten\" loading=\"lazy\" decoding=\"async\">\r\n        <figcaption>Stille Reflexion zwischen den Retreat-Sessions<\/figcaption>\r\n      <\/figure>\r\n      <figure>\r\n        <img src=\"\/wp-content\/uploads\/2026\/05\/Vietnam-detox-wellness-retreat-healthy-lifestyle-song-khoe-thai-doc-25.webp\" alt=\"Coach begleitet ein sanftes Kr\u00e4uterritual mit einem Gast\" loading=\"lazy\" decoding=\"async\">\r\n        <figcaption>Momente der Ruhe und Wiederverbindung w\u00e4hrend des Retreats<\/figcaption>\r\n      <\/figure>\r\n      <figure>\r\n        <img src=\"\/wp-content\/uploads\/2026\/08\/Hoan-and-Dieter-standing-smiling.webp\" alt=\"Vietnam-Detox-Team\" loading=\"lazy\" decoding=\"async\">\r\n        <figcaption>Pers\u00f6nliche Begleitung und beruhigende t\u00e4gliche Rituale<\/figcaption>\r\n      <\/figure>\r\n    <\/div>\r\n\r\n    <p class=\"vfit__note\">\r\n  Wir sprechen mit jedem Gast, bevor wir einen Platz best\u00e4tigen, damit sich das passende Retreat-Erlebnis von Anfang an klar anf\u00fchlt.\r\n Wenn Sie unsicher sind, ob Fasten f\u00fcr Sie geeignet ist, begleiten wir Sie gern pers\u00f6nlich vor der Buchung.\r\n \r\n    <\/p>\r\n  <\/div>\r\n<\/section>\r\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<section class=\"elementor-element elementor-element-ce260c7 e-flex e-con-boxed e-con e-parent\" data-id=\"ce260c7\" 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-819e563 elementor-widget elementor-widget-html\" data-id=\"819e563\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!--\r\n  Copy this entire file into ONE Elementor HTML widget.\r\n  Put elementor-free-guide.css into the same widget's\r\n  Advanced > Custom CSS field.\r\n-->\r\n\r\n<div class=\"vgd\" data-vgd-component=\"\">\r\n  <section class=\"vgd__section\" aria-labelledby=\"vgd-title\">\r\n    <div class=\"vgd__shell\">\r\n      <div class=\"vgd__grid\">\r\n        <div class=\"vgd__left\">\r\n          <header class=\"vgd__header\">\r\n            <span class=\"vgd__eyebrow\">Kostenloser Download<\/span>\r\n            <span class=\"vgd__rule\" aria-hidden=\"true\"><\/span>\r\n            <h2 class=\"vgd__headline\" id=\"vgd-title\">\r\n  Neugierig aufs Fasten?<br>              <em>Laden Sie den Vietnam-Detox-Guide herunter.<\/em>\r\n            <\/h2>\r\n          <\/header>\r\n\r\n          <figure class=\"vgd__visual\">\r\n            <img src=\"\/wp-content\/uploads\/2026\/05\/template-mockup-paper-wellness.webp\" alt=\"Pr\u00e4sentation des Buchinger-Fasten-Guides\" loading=\"lazy\" decoding=\"async\">\r\n          <\/figure>\r\n        <\/div>\r\n\r\n        <aside class=\"vgd__card\" aria-label=\"Free guide contents\">\r\n          <figure class=\"vgd__preview\">\r\n            <img src=\"\/wp-content\/uploads\/2026\/05\/free-pdf-cover.webp\" alt=\"Vorschau des Covers des Buchinger-Fasten-Guides\" loading=\"lazy\" decoding=\"async\">\r\n          <\/figure>\r\n\r\n          <ul class=\"vgd__benefits\" role=\"list\">\r\n            <li class=\"vgd__benefit\">\r\n              <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 16 16\" fill=\"none\" aria-hidden=\"true\">\r\n                <path d=\"M2 8 L6 12 L14 4\"><\/path>\r\n              <\/path><\/svg>\r\n              <span>Was w\u00e4hrend des Fastens tats\u00e4chlich in Ihrem K\u00f6rper passiert<\/span>\r\n            <\/li>\r\n            <li class=\"vgd__benefit\">\r\n              <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 16 16\" fill=\"none\" aria-hidden=\"true\">\r\n                <path d=\"M2 8 L6 12 L14 4\"><\/path>\r\n              <\/path><\/svg>\r\n              <span>Wie sich Retreat-Tage anf\u00fchlen<\/span>\r\n            <\/li>\r\n            <li class=\"vgd__benefit\">\r\n              <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 16 16\" fill=\"none\" aria-hidden=\"true\">\r\n                <path d=\"M2 8 L6 12 L14 4\"><\/path>\r\n              <\/path><\/svg>\r\n              <span>Warum viele G\u00e4ste beginnen, sich ruhiger, klarer und leichter zu f\u00fchlen<\/span>\r\n            <\/li>\r\n            <li class=\"vgd__benefit\">\r\n              <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 16 16\" fill=\"none\" aria-hidden=\"true\">\r\n                <path d=\"M2 8 L6 12 L14 4\"><\/path>\r\n              <\/path><\/svg>\r\n              <span>Ob eines unserer Retreats realistisch gut zu Ihnen passt<\/span>\r\n            <\/li>\r\n          <\/ul>\r\n\r\n          <button class=\"vgd__button vgd__button--forest\" type=\"button\" data-vgd-open=\"\" aria-haspopup=\"dialog\" aria-controls=\"vgd-modal\" aria-expanded=\"false\">\r\n            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 14 14\" fill=\"none\" aria-hidden=\"true\">\r\n              <path d=\"M7 1 L7 9 M4 6 L7 9 L10 6\"><\/path>\r\n              <path d=\"M2 11 L12 11\"><\/path>\r\n            <\/path><\/path><\/svg>\r\n            <span>Kostenlosen Guide erhalten<\/span>\r\n          <\/button>\r\n\r\n          <p class=\"vgd__reading-time\">Dauert etwa 5 Minuten zu lesen.<\/p>\r\n        <\/aside>\r\n      <\/div>\r\n    <\/div>\r\n  <\/section>\r\n\r\n  <div class=\"vgd__modal\" id=\"vgd-modal\" data-vgd-modal=\"\" aria-hidden=\"true\" hidden=\"\">\r\n    <div class=\"vgd__backdrop\" data-vgd-close=\"\" aria-hidden=\"true\"><\/div>\r\n\r\n    <div class=\"vgd__dialog\" data-vgd-dialog=\"\" role=\"dialog\" aria-modal=\"true\" aria-labelledby=\"vgd-modal-title\" aria-describedby=\"vgd-modal-copy\" tabindex=\"-1\">\r\n      <button type=\"button\" class=\"vgd__close\" data-vgd-close=\"\" aria-label=\"Close popup\">\u00d7<\/button>\r\n\r\n      <header class=\"vgd__modal-header\">\r\n        <div class=\"vgd__modal-logo-wrap\">\r\n          <img decoding=\"async\" src=\"\/wp-content\/uploads\/2026\/05\/logo-icon-color_cutout.svg\" alt=\"Vietnam Detox\" class=\"vgd__modal-logo\">\r\n        <\/div>\r\n        <h3 class=\"vgd__modal-headline\" id=\"vgd-modal-title\">Holen Sie sich Ihren kostenlosen Guide<\/h3>\r\n        <p class=\"vgd__modal-copy\" id=\"vgd-modal-copy\">\r\n  Geben Sie Ihre E-Mail-Adresse ein, und wir schalten den Buchinger-Fasten-Guide f\u00fcr Sie frei.\r\n        <\/p>\r\n      <\/header>\r\n\r\n      <form class=\"vgd__form\" data-vgd-form=\"\" novalidate=\"\">\r\n        <label for=\"vgd-email\" class=\"vgd__label\">E-Mail-Adresse<\/label>\r\n        <input type=\"email\" id=\"vgd-email\" class=\"vgd__input\" name=\"email\" placeholder=\"you@example.com\" autocomplete=\"email\" inputmode=\"email\" required=\"\" data-vgd-email=\"\">\r\n\r\n        <div class=\"vgd__actions\">\r\n          <button type=\"submit\" class=\"vgd__button vgd__button--ember\">\r\n  Senden Sie mir den Guide\r\n          <\/button>\r\n        <\/div>\r\n\r\n        <p class=\"vgd__status\" data-vgd-status=\"\" role=\"status\" aria-live=\"polite\">\r\n  Danke. Dieses Demo-Formular kann jetzt mit Ihrem E-Mail-Versanddienst verbunden werden. \r\n        <\/p>\r\n      <\/form>\r\n    <\/div>\r\n  <\/div>\r\n<\/div>\r\n\r\n<script>\r\n(function() {\r\n  'use strict';\r\n\r\n  var components = document.querySelectorAll('[data-vgd-component]');\r\n\r\n  components.forEach(function(root) {\r\n    if (root.dataset.vgdReady === 'true') return;\r\n    root.dataset.vgdReady = 'true';\r\n\r\n    var openButton = root.querySelector('[data-vgd-open]');\r\n    var modal = root.querySelector('[data-vgd-modal]');\r\n    var dialog = root.querySelector('[data-vgd-dialog]');\r\n    var form = root.querySelector('[data-vgd-form]');\r\n    var emailInput = root.querySelector('[data-vgd-email]');\r\n    var status = root.querySelector('[data-vgd-status]');\r\n    var closeButtons = root.querySelectorAll('[data-vgd-close]');\r\n\r\n    if (!openButton || !modal || !dialog || !form || !emailInput || !status) return;\r\n\r\n    var lastFocused = null;\r\n    var previousBodyOverflow = '';\r\n    var closeTimer = null;\r\n\r\n    function openModal() {\r\n      if (closeTimer) window.clearTimeout(closeTimer);\r\n      lastFocused = document.activeElement;\r\n      previousBodyOverflow = document.body.style.overflow;\r\n      document.body.style.overflow = 'hidden';\r\n      form.reset();\r\n      status.classList.remove('is-visible');\r\n      modal.hidden = false;\r\n      modal.setAttribute('aria-hidden', 'false');\r\n      openButton.setAttribute('aria-expanded', 'true');\r\n\r\n      window.requestAnimationFrame(function() {\r\n        modal.classList.add('is-open');\r\n        window.setTimeout(function() { emailInput.focus(); }, 30);\r\n      });\r\n    }\r\n\r\n    function closeModal() {\r\n      if (modal.hidden) return;\r\n      modal.classList.remove('is-open');\r\n      modal.setAttribute('aria-hidden', 'true');\r\n      openButton.setAttribute('aria-expanded', 'false');\r\n      document.body.style.overflow = previousBodyOverflow;\r\n\r\n      closeTimer = window.setTimeout(function() {\r\n        modal.hidden = true;\r\n      }, 220);\r\n\r\n      if (lastFocused && typeof lastFocused.focus === 'function') {\r\n        lastFocused.focus();\r\n      }\r\n    }\r\n\r\n    openButton.addEventListener('click', openModal);\r\n\r\n    closeButtons.forEach(function(button) {\r\n      button.addEventListener('click', closeModal);\r\n    });\r\n\r\n    dialog.addEventListener('keydown', function(event) {\r\n      if (event.key !== 'Tab') return;\r\n\r\n      var focusable = Array.prototype.slice.call(dialog.querySelectorAll(\r\n        'a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex=\"-1\"])'\r\n      )).filter(function(element) {\r\n        return !element.hidden && element.offsetParent !== null;\r\n      });\r\n\r\n      if (!focusable.length) return;\r\n      var first = focusable[0];\r\n      var last = focusable[focusable.length - 1];\r\n\r\n      if (event.shiftKey && document.activeElement === first) {\r\n        event.preventDefault();\r\n        last.focus();\r\n      } else if (!event.shiftKey && document.activeElement === last) {\r\n        event.preventDefault();\r\n        first.focus();\r\n      }\r\n    });\r\n\r\n    document.addEventListener('keydown', function(event) {\r\n      if (event.key === 'Escape' && !modal.hidden) closeModal();\r\n    });\r\n\r\n    form.addEventListener('submit', function(event) {\r\n      event.preventDefault();\r\n\r\n      if (!emailInput.checkValidity()) {\r\n        emailInput.reportValidity();\r\n        return;\r\n      }\r\n\r\n      status.classList.add('is-visible');\r\n    });\r\n  });\r\n})();\r\n<\/script>\r\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/section>\n\t\t<section class=\"elementor-element elementor-element-3fd4e08 e-flex e-con-boxed e-con e-parent\" data-id=\"3fd4e08\" 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-2ed1a56 elementor-widget elementor-widget-html\" data-id=\"2ed1a56\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!--\n  Paste this markup into the HTML widget inside the outer discovery-call\n  Elementor container. Booking happens on the dedicated discovery-call page;\n  this section only links to it. See README.md.\n-->\n\n<header class=\"vbook__header\">\n  <span class=\"vbook__eyebrow\">Hier beginnen<\/span>\n  <span class=\"vbook__rule\" aria-hidden=\"true\"><\/span>\n  <h2 class=\"vbook__headline\" id=\"vbook-title\">\n  Sprechen Sie vor Ihrer Entscheidung mit Dieter\n  <\/h2>\n  <p class=\"vbook__introduction\">\n  Ein kostenloses 30-min\u00fctiges Gespr\u00e4ch. Kein Verkauf, kein Druck. Nur ein ehrliches\n Gespr\u00e4ch dar\u00fcber, ob eines unserer Retreats zu Ihnen passt\n \u2013 und ob Sie bereit sind.  \n  <\/p>\n<\/header>\n\n<ol class=\"vbook__steps\" role=\"list\">\n  <li class=\"vbook__step\">\n    <span class=\"vbook__number\" aria-hidden=\"true\">01<\/span>\n    <h3>Wir h\u00f6ren zuerst zu<\/h3>\n    <p>\n  Sie erz\u00e4hlen, wo Sie auf Ihrem Gesundheitsweg stehen und was Sie sich erhoffen.\n\n    <\/p>\n  <\/li>\n\n  <li class=\"vbook__step vbook__step--middle\">\n    <span class=\"vbook__number\" aria-hidden=\"true\">02<\/span>\n    <h3>Wir sind ehrlich<\/h3>\n    <p>\n  Wenn wir nicht glauben, dass Fasten f\u00fcr Sie gerade richtig ist, sagen wir das klar.\n\n    <\/p>\n  <\/li>\n\n  <li class=\"vbook__step vbook__step--last\">\n    <span class=\"vbook__number\" aria-hidden=\"true\">03<\/span>\n    <h3>Keine Verpflichtung<\/h3>\n    <p>\n  Dieses Gespr\u00e4ch verpflichtet Sie zu nichts. Es ist einfach der richtige Ort, um zu starten.\n \n    <\/p>\n  <\/li>\n<\/ol>\n\n<div class=\"vbook__cta\">\n  <a class=\"vbook__button\" href=\"https:\/\/vietnamdetox.com\/de\/kennenlerngespraech\/\">Kennenlerngespr\u00e4ch buchen<\/a>\n  <p class=\"vbook__email-note\">\n  Oder schreiben Sie an\n    <a href=\"mailto:info@vietnamdetox.com\">info@vietnamdetox.com<\/a>\n  <\/p>\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/section>\n\t\t<section class=\"elementor-element elementor-element-43d5e64 e-flex e-con-boxed e-con e-parent\" data-id=\"43d5e64\" 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-bf99e11 elementor-widget elementor-widget-html\" data-id=\"bf99e11\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!--\n  Copy this entire file into ONE Elementor HTML widget.\n  Put wellness-coaching.css into the same widget's\n  Advanced > Custom CSS field.\n\n  This source section has no interactive JavaScript dependency.\n-->\n\n<section class=\"vcoach\" aria-labelledby=\"vcoach-title\">\n  <div class=\"vcoach__shell\">\n    <div class=\"vcoach__grid\">\n      <div class=\"vcoach__content\">\n        <header class=\"vcoach__header\">\n          <span class=\"vcoach__eyebrow\">Nach dem Retreat<\/span>\n          <span class=\"vcoach__rule\" aria-hidden=\"true\"><\/span>\n          <h2 class=\"vcoach__headline\" id=\"vcoach-title\">\n  Setzen Sie Ihre Ver\u00e4nderung zu Hause fort\n          <\/h2>\n        <\/header>\n\n        <p class=\"vcoach__introduction\">\n  Jedes Retreat \u00f6ffnet eine T\u00fcr. Privates Wellness-Coaching hilft Ihnen, hindurchzugehen.\n Wir bieten pers\u00f6nliches Coaching f\u00fcr langfristige Verhaltens\u00e4nderung,\n Ern\u00e4hrungsberatung und Integration nach dem Retreat.  \n        <\/p>\n\n        <ul class=\"vcoach__benefits\" role=\"list\">\n          <li>\n            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 16 16\" fill=\"none\" aria-hidden=\"true\">\n              <circle cx=\"8\" cy=\"8\" r=\"6\"><\/circle>\n              <path d=\"M5.5 8 L7 9.5 L10.5 6\"><\/path>\n            <\/svg>\n            <span>W\u00f6chentliche 1:1-Video-Sessions mit Dieter<\/span>\n          <\/li>\n          <li>\n            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 16 16\" fill=\"none\" aria-hidden=\"true\">\n              <circle cx=\"8\" cy=\"8\" r=\"6\"><\/circle>\n              <path d=\"M5.5 8 L7 9.5 L10.5 6\"><\/path>\n            <\/svg>\n            <span>Pers\u00f6nliche Ern\u00e4hrungs- und Alltagsrhythmus-Planung<\/span>\n          <\/li>\n          <li>\n            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 16 16\" fill=\"none\" aria-hidden=\"true\">\n              <circle cx=\"8\" cy=\"8\" r=\"6\"><\/circle>\n              <path d=\"M5.5 8 L7 9.5 L10.5 6\"><\/path>\n            <\/svg>\n            <span>Unterst\u00fctzung bei der Integration nach dem Retreat f\u00fcr nachhaltige Ver\u00e4nderung<\/span>\n          <\/li>\n        <\/ul>\n\n        <a href=\"https:\/\/vietnamdetox.com\/de\/wellness-coaching-mit-dieter-buchner\/\" class=\"vcoach__button\">Mehr \u00fcber Coaching erfahren<\/a>\n      <\/div>\n\n      <figure class=\"vcoach__portrait\">\n        <img src=\"\/wp-content\/uploads\/2026\/08\/Dieter-Buchner-Co-Founder-and-Retreat-Leader-vietnam-detox.webp\" alt=\"Dieter Buchner\" loading=\"lazy\" decoding=\"async\">\n      <\/figure>\n    <\/div>\n  <\/div>\n<\/section>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/section>\n\t\t<section class=\"elementor-element elementor-element-d7b0458 elementor-hidden-desktop elementor-hidden-tablet elementor-hidden-mobile e-flex e-con-boxed e-con e-parent\" data-id=\"d7b0458\" data-element_type=\"container\" data-e-type=\"container\" id=\"journal\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div data-dce-title-color=\"#1E3D20\" class=\"elementor-element elementor-element-54f66e1 eyebrow eyebrow-forest elementor-widget elementor-widget-heading\" data-id=\"54f66e1\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<span class=\"elementor-heading-title elementor-size-default\">Ritual Notes<\/span>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8d9ddda elementor-widget-divider--view-line elementor-widget elementor-widget-divider\" data-id=\"8d9ddda\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"divider.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-divider\">\n\t\t\t<span class=\"elementor-divider-separator\">\n\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a9d19e2 elementor-widget__width-initial elementor-widget elementor-widget-text-editor\" data-id=\"a9d19e2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<h2 class=\"s-headline\" style=\"font-size:66px;\">Journal \u00fcber Fasten, Ritual &#038; Ort.<\/h2>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a0badeb elementor-widget__width-initial elementor-widget elementor-widget-text-editor\" data-id=\"a0badeb\" 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>Praktische Notizen zu achtsamer Ern\u00e4hrung, vietnamesischem Kr\u00e4uterwissen und den pr\u00e4ventiven Gewohnheiten, die wir in jedem Retreat vermitteln.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-c42e66e e-grid e-con-full e-con e-child\" data-id=\"c42e66e\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-3f58ae9 e-con-full e-flex e-con e-child\" data-id=\"3f58ae9\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5f2c146 dce_masking-none elementor-widget elementor-widget-image\" data-id=\"5f2c146\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"800\" height=\"491\" src=\"https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/thanhnamnguyen-huong-river-1979373-1024x628.webp\" class=\"attachment-large size-large wp-image-22607\" alt=\"\" srcset=\"https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/thanhnamnguyen-huong-river-1979373-1024x628.webp 1024w, https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/thanhnamnguyen-huong-river-1979373-300x184.webp 300w, https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/thanhnamnguyen-huong-river-1979373-768x471.webp 768w, https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/thanhnamnguyen-huong-river-1979373-1536x943.webp 1536w, https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/thanhnamnguyen-huong-river-1979373-scaled.webp 1920w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-acdcad8 e-flex e-con-boxed e-con e-child\" data-id=\"acdcad8\" 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-a87b2ca elementor-widget__width-initial elementor-widget elementor-widget-heading\" data-id=\"a87b2ca\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<span class=\"elementor-heading-title elementor-size-default\">Wellness<\/span>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9439260 elementor-widget__width-initial elementor-widget elementor-widget-heading\" data-id=\"9439260\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<span class=\"elementor-heading-title elementor-size-default\">5 Min. Lesezeit<\/span>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-bfd5f70 elementor-widget__width-initial elementor-widget elementor-widget-heading\" data-id=\"bfd5f70\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<span class=\"elementor-heading-title elementor-size-default\">M\u00e4rz 2026<\/span>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-961a81d elementor-widget elementor-widget-heading\" data-id=\"961a81d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\">So bereiten Sie sich auf Ihr erstes Buchinger-Fasten vor<\/div>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4e71783 elementor-widget elementor-widget-text-editor\" data-id=\"4e71783\" 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>Eine praktische Checkliste zu medizinischem Screening, Koffein-Reduktion, Packliste, Journaling-Impulsen und wie Sie Ihre Familie vor der Abreise informieren.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-11b1c6f elementor-align-center elementor-widget elementor-widget-button\" data-id=\"11b1c6f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"#\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Mehr lesen<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\n<hr class=\"e-ac12451-15f8d55 e-divider-base\" data-interaction-id=\"ac12451\" data-e-type=\"widget\" data-id=\"ac12451\" \/>\n\t\t<div class=\"elementor-element elementor-element-ef22a19 e-con-full e-flex e-con e-child\" data-id=\"ef22a19\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-7e6b135 dce_masking-none elementor-widget elementor-widget-image\" data-id=\"7e6b135\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"800\" height=\"998\" src=\"https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/Dieter-Buchner-Co-Founder-and-Retreat-Leader-vietnam-detox.webp\" class=\"attachment-large size-large wp-image-22978\" alt=\"\" srcset=\"https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/Dieter-Buchner-Co-Founder-and-Retreat-Leader-vietnam-detox.webp 802w, https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/Dieter-Buchner-Co-Founder-and-Retreat-Leader-vietnam-detox-241x300.webp 241w, https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/Dieter-Buchner-Co-Founder-and-Retreat-Leader-vietnam-detox-768x958.webp 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-6171a25 e-con-full e-flex e-con e-child\" data-id=\"6171a25\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-0587502 elementor-widget elementor-widget-heading\" data-id=\"0587502\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\">Dieter Buchner<\/div>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b5e153d elementor-widget elementor-widget-heading\" data-id=\"b5e153d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Zertifizierter Fastencoach<\/p>\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<div class=\"elementor-element elementor-element-b95679c e-con-full e-flex e-con e-child\" data-id=\"b95679c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-9e003e0 dce_masking-none elementor-widget elementor-widget-image\" data-id=\"9e003e0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"1920\" height=\"1280\" src=\"https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/herbal-thumbnail-blog.webp\" class=\"attachment-full size-full wp-image-22982\" alt=\"\" srcset=\"https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/herbal-thumbnail-blog.webp 1920w, https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/herbal-thumbnail-blog-300x200.webp 300w, https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/herbal-thumbnail-blog-1024x683.webp 1024w, https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/herbal-thumbnail-blog-768x512.webp 768w, https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/herbal-thumbnail-blog-1536x1024.webp 1536w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-57e4f11 e-flex e-con-boxed e-con e-child\" data-id=\"57e4f11\" 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-c990b62 elementor-widget__width-initial elementor-widget elementor-widget-heading\" data-id=\"c990b62\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<span class=\"elementor-heading-title elementor-size-default\">Fastenwissenschaft<\/span>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6704f22 elementor-widget__width-initial elementor-widget elementor-widget-heading\" data-id=\"6704f22\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<span class=\"elementor-heading-title elementor-size-default\">6 Min. Lesezeit<\/span>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5ff5587 elementor-widget__width-initial elementor-widget elementor-widget-heading\" data-id=\"5ff5587\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<span class=\"elementor-heading-title elementor-size-default\">Februar 2026<\/span>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-13fe2dc elementor-widget elementor-widget-heading\" data-id=\"13fe2dc\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\">Was Sie vor und nach einem Retreat essen sollten<\/div>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8bf3101 elementor-widget elementor-widget-text-editor\" data-id=\"8bf3101\" 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>Konkrete Mahlzeiten, Br\u00fchen und Timing f\u00fcr die Reduktionsphase vor dem Fasten und die dreit\u00e4gige Aufbauphase \u2013 plus wie Sie typische Verdauungs\u00fcberraschungen vermeiden.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4e56266 elementor-align-center elementor-widget elementor-widget-button\" data-id=\"4e56266\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"#\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Mehr lesen<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\n<hr class=\"e-96a2d16-f7ceef3 e-divider-base\" data-interaction-id=\"96a2d16\" data-e-type=\"widget\" data-id=\"96a2d16\" \/>\n\t\t<div class=\"elementor-element elementor-element-d1fb951 e-con-full e-flex e-con e-child\" data-id=\"d1fb951\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-ba7e750 dce_masking-none elementor-widget elementor-widget-image\" data-id=\"ba7e750\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"779\" height=\"914\" src=\"https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/vietnamdetox-Truong-Tan-Hoan-Retreatleader-Cofounder-vietnam-detox.webp\" class=\"attachment-large size-large wp-image-22979\" alt=\"\" srcset=\"https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/vietnamdetox-Truong-Tan-Hoan-Retreatleader-Cofounder-vietnam-detox.webp 779w, https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/vietnamdetox-Truong-Tan-Hoan-Retreatleader-Cofounder-vietnam-detox-256x300.webp 256w, https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/vietnamdetox-Truong-Tan-Hoan-Retreatleader-Cofounder-vietnam-detox-768x901.webp 768w\" sizes=\"(max-width: 779px) 100vw, 779px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-5ac62b0 e-con-full e-flex e-con e-child\" data-id=\"5ac62b0\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-780cca5 elementor-widget elementor-widget-heading\" data-id=\"780cca5\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\">Tr\u01b0\u01a1ng T\u1ea5n Ho\u00e0n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1348a9f elementor-widget elementor-widget-heading\" data-id=\"1348a9f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Programmdirektor<\/p>\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<div class=\"elementor-element elementor-element-abead9d e-con-full e-flex e-con e-child\" data-id=\"abead9d\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-83b6b1a dce_masking-none elementor-widget elementor-widget-image\" data-id=\"83b6b1a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"780\" height=\"437\" src=\"https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/Legacy-Yen-Tu-MGallery-Other.webp\" class=\"attachment-full size-full wp-image-22981\" alt=\"\" srcset=\"https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/Legacy-Yen-Tu-MGallery-Other.webp 780w, https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/Legacy-Yen-Tu-MGallery-Other-300x168.webp 300w, https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/Legacy-Yen-Tu-MGallery-Other-768x430.webp 768w\" sizes=\"(max-width: 780px) 100vw, 780px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-c82c9a2 e-flex e-con-boxed e-con e-child\" data-id=\"c82c9a2\" 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-d8261b9 elementor-widget__width-initial elementor-widget elementor-widget-heading\" data-id=\"d8261b9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<span class=\"elementor-heading-title elementor-size-default\">Retreat-Alltag<\/span>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d5caae7 elementor-widget__width-initial elementor-widget elementor-widget-heading\" data-id=\"d5caae7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<span class=\"elementor-heading-title elementor-size-default\">4 Min. Lesezeit<\/span>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c96db69 elementor-widget__width-initial elementor-widget elementor-widget-heading\" data-id=\"c96db69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<span class=\"elementor-heading-title elementor-size-default\">Januar 2026<\/span>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-67489d1 elementor-widget elementor-widget-heading\" data-id=\"67489d1\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\">Fasten in Kleingruppen: Was jeder Tag beinhaltet<\/div>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7151b5d elementor-widget elementor-widget-text-editor\" data-id=\"7151b5d\" 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>Von morgendlichen Vitalwerten und Vortr\u00e4gen bis zu abendlichen Gespr\u00e4chskreisen: Dieser Artikel skizziert die Wissensvermittlung, Bewegung und Ruhe, die in jeder Gruppe enthalten sind.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-de09048 elementor-align-center elementor-widget elementor-widget-button\" data-id=\"de09048\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"#\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Mehr lesen<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\n<hr class=\"e-94f7842-b82ba99 e-divider-base\" data-interaction-id=\"94f7842\" data-e-type=\"widget\" data-id=\"94f7842\" \/>\n\t\t<div class=\"elementor-element elementor-element-7316d26 e-con-full e-flex e-con e-child\" data-id=\"7316d26\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-6380aaf dce_masking-none elementor-widget elementor-widget-image\" data-id=\"6380aaf\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"779\" height=\"914\" src=\"https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/vietnamdetox-Truong-Tan-Hoan-Retreatleader-Cofounder-vietnam-detox.webp\" class=\"attachment-large size-large wp-image-22979\" alt=\"\" srcset=\"https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/vietnamdetox-Truong-Tan-Hoan-Retreatleader-Cofounder-vietnam-detox.webp 779w, https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/vietnamdetox-Truong-Tan-Hoan-Retreatleader-Cofounder-vietnam-detox-256x300.webp 256w, https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/vietnamdetox-Truong-Tan-Hoan-Retreatleader-Cofounder-vietnam-detox-768x901.webp 768w\" sizes=\"(max-width: 779px) 100vw, 779px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-57cf14a e-con-full e-flex e-con e-child\" data-id=\"57cf14a\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-20a9f84 elementor-widget elementor-widget-heading\" data-id=\"20a9f84\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\">Tr\u01b0\u01a1ng T\u1ea5n Ho\u00e0n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9f14ced elementor-widget elementor-widget-heading\" data-id=\"9f14ced\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Programmdirektor<\/p>\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\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/section>\n\t\t<section class=\"elementor-element elementor-element-8baad31 newsletter e-flex e-con-boxed e-con e-parent\" data-id=\"8baad31\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-de42b92 e-con-full vnls__shell e-flex e-con e-child\" data-id=\"de42b92\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-81aef3e e-con-full vnls__card e-flex e-con e-child\" data-id=\"81aef3e\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-cd50fb1 elementor-widget elementor-widget-html\" data-id=\"cd50fb1\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!--\r\n  Paste this markup into the FIRST HTML widget inside the native Elementor\r\n  container with class `vnls__card`.\r\n\r\n  The real Fluent Form must be a separate Fluent Forms\/Shortcode widget below\r\n  this HTML widget. See README.md for the complete Elementor structure.\r\n-->\r\n\r\n<div class=\"vnls__content\">\r\n  <span class=\"vnls__eyebrow\">In Verbindung bleiben<\/span>\r\n  <span class=\"vnls__rule\" aria-hidden=\"true\"><\/span>\r\n\r\n  <figure class=\"vnls__visual vnls__visual--inline\">\r\n    <img src=\"\/wp-content\/uploads\/2026\/05\/Hoan-Dieter-in-herb-garden-dieter-showing-leaves.webp\" alt=\"Hoan und Dieter teilen ihr Wissen im Kr\u00e4utergarten\" loading=\"lazy\" decoding=\"async\">\r\n  <\/figure>\r\n\r\n  <h2 class=\"vnls__headline\" id=\"vnls-title\">\r\n  Erhalten Sie <em>Retreat-Termine<\/em>,\r\n    <span class=\"vnls__headline-sub\">\r\n Fastentipps, G\u00e4stegeschichten und fr\u00fchzeitigen Zugang zu begrenzten Pl\u00e4tzen.\r\n    <\/span> \r\n  <\/h2>\r\n\r\n  <p class=\"vnls__description\">\r\n  Diese viertelj\u00e4hrliche E-Mail behandelt Screening-Zeitfenster, Buchinger-Wissen,\r\n wie Alumni sich zu Hause vorbereiten und die n\u00e4chsten Retreat-Ver\u00f6ffentlichungen.\r\n  <\/p>\r\n<\/div>\r\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-611f309 e-con-full vnls__form-wrap e-flex e-con e-child\" data-id=\"611f309\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-6da923c elementor-widget elementor-widget-shortcode\" data-id=\"6da923c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><div class='fluentform ff-default fluentform_wrapper_4 ffs_default_wrap'><form data-form_id=\"4\" id=\"fluentform_4\" class=\"frm-fluent-form fluent_form_4 ff-el-form-top ff_form_instance_4_1 ff-form-loading ffs_default\" data-form_instance=\"ff_form_instance_4_1\" method=\"POST\" ><fieldset  style=\"border: none!important;margin: 0!important;padding: 0!important;background-color: transparent!important;box-shadow: none!important;outline: none!important; min-inline-size: 100%;\">\n                    <legend class=\"ff_screen_reader_title\" style=\"display: block; margin: 0!important;padding: 0!important;height: 0!important;text-indent: -999999px;width: 0!important;overflow:hidden;\">Homepage Newsletter<\/legend><input type='hidden' name='__fluent_form_embded_post_id' value='22580' \/><input type=\"hidden\" id=\"_fluentform_4_fluentformnonce\" name=\"_fluentform_4_fluentformnonce\" value=\"0d352be4ab\" \/><input type=\"hidden\" name=\"_wp_http_referer\" value=\"\/de\/wp-json\/wp\/v2\/pages\/22580\" \/><div class='ff-el-group ff-el-form-top'><div class=\"ff-el-input--label ff-el-is-required asterisk-right\"><label for='ff_4_email' id='label_ff_4_email'>Email address<\/label><\/div><div class='ff-el-input--content'><input type=\"email\" name=\"email\" id=\"ff_4_email\" class=\"ff-el-form-control\" placeholder=\"Your email address\" data-name=\"email\"  aria-invalid=\"false\" aria-required=true><\/div><\/div><div class='ff-form-inline-style' hidden><style>form.fluent_form_4 .ff-btn-submit:not(.ff_btn_no_style) { background-color: var(--fluentform-primary); color: #ffffff; }<\/style><\/div><div class='ff-el-group ff-text-left ff_submit_btn_wrapper'><button type=\"submit\" class=\"ff-btn ff-btn-submit ff-btn-md ff_btn_style\"  aria-label=\"Join the List\">Join the List<\/button><\/div><\/fieldset><\/form><div id='fluentform_4_errors' class='ff-errors-in-stack ff_form_instance_4_1 ff-form-loading_errors ff_form_instance_4_1_errors'><\/div><\/div>            <script type=\"text\/javascript\">\n                window.fluent_form_ff_form_instance_4_1 = {\"id\":\"4\",\"ajaxUrl\":\"https:\\\/\\\/vietnamdetox.com\\\/wp-admin\\\/admin-ajax.php\",\"settings\":{\"layout\":{\"labelPlacement\":\"top\",\"asteriskPlacement\":\"asterisk-right\",\"helpMessagePlacement\":\"with_label\",\"errorMessagePlacement\":\"inline\",\"cssClassName\":\"\"},\"restrictions\":{\"denyEmptySubmission\":{\"enabled\":false}}},\"form_instance\":\"ff_form_instance_4_1\",\"form_id_selector\":\"fluentform_4\",\"rules\":{\"email\":{\"required\":{\"value\":true,\"message\":\"Dieses Feld ist erforderlich\",\"global_message\":\"This field is required\",\"global\":true},\"email\":{\"value\":true,\"message\":\"Dieses Feld muss eine g\\u00fcltige E-Mail-Adresse enthalten\",\"global_message\":\"This field must contain a valid email\",\"global\":true}}},\"debounce_time\":300,\"file_upload_settings\":[]};\n                            <\/script>\n            <\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-670ffe7 elementor-widget elementor-widget-html\" data-id=\"670ffe7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<p class=\"vnls__privacy\">\r\n  Wir respektieren Ihre Privatsph\u00e4re. Kein Spam. Abmeldung jederzeit m\u00f6glich.  \r\n  Sehen Sie sich unsere Datenschutzerkl\u00e4rung an.\r\n  <!-- Link \"privacy policy\" again once a Privacy Policy page is published (EN and VI). -->\r\n<\/p>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ab50ffc vnls__visual-widget elementor-widget elementor-widget-html\" data-id=\"ab50ffc\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!--\r\n  Paste into the second HTML widget inside `vnls__shell`.\r\n  Give that HTML widget the CSS class `vnls__visual-widget`.\r\n-->\r\n\r\n<figure class=\"vnls__visual vnls__visual--outer\">\r\n  <img src=\"\/wp-content\/uploads\/2026\/05\/Hoan-Dieter-in-herb-garden-dieter-showing-leaves.webp\" alt=\"Hoan und Dieter teilen ihr Wissen im Kr\u00e4utergarten\" loading=\"lazy\" decoding=\"async\">\r\n<\/figure>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/section>\n\t\t<div class=\"elementor-element elementor-element-8207162 partners-section e-con-full e-flex e-con e-parent\" data-id=\"8207162\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-ea82935 elementor-widget elementor-widget-html\" data-id=\"ea82935\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!--\n  Vietnam Detox \u2014 Elementor Partners Section\n  Paste this entire file into one Elementor HTML widget.\n  Add partners-section.css separately as described in README.md.\n-->\n\n<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=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;1,300;1,400&family=Be+Vietnam+Pro:wght@300;400;500;600;700&display=swap\" rel=\"stylesheet\">\n\n<section class=\"vnd-partners\" data-vnd-partners=\"\">\n  <div class=\"vnd-partners__shell\">\n    <header class=\"vnd-partners__heading\">\n      <span class=\"vnd-partners__eyebrow\">Unsere strategischen Partner<\/span>\n      <span class=\"vnd-partners__rule\" aria-hidden=\"true\"><\/span>\n    <\/header>\n\n    <div class=\"vnd-partners__carousel\">\n      <button class=\"vnd-partners__arrow vnd-partners__arrow--previous\" type=\"button\" data-partners-previous=\"\" aria-label=\"View previous partners\">\n        <span aria-hidden=\"true\">\u2039<\/span>\n      <\/button>\n\n      <div class=\"vnd-partners__viewport\" data-partners-viewport=\"\">\n        <div class=\"vnd-partners__track\" data-partners-track=\"\">\n          <button class=\"vnd-partner-card\" type=\"button\" data-partner-name=\"Namia River Retreat Hoi An\" data-partner-logo=\"https:\/\/vietnamdetox.com\/staging\/redesign-clickdummy-2026\/assets\/partners\/namia-river-retreat.png\" data-partner-link=\"https:\/\/namiariverretreat.com\/\" aria-label=\"Learn more about Namia River Retreat Hoi An\">\n            <img decoding=\"async\" src=\"https:\/\/vietnamdetox.com\/staging\/redesign-clickdummy-2026\/assets\/partners\/namia-river-retreat.png\" alt=\"Namia River Retreat Hoi An Logo\" loading=\"lazy\">\n          <\/button>\n\n          <button class=\"vnd-partner-card\" type=\"button\" data-partner-name=\"Legacy Yen Tu MGallery\" data-partner-logo=\"https:\/\/vietnamdetox.com\/staging\/redesign-clickdummy-2026\/assets\/partners\/legacy-yen-tu.png\" data-partner-link=\"https:\/\/mgallery.accor.com\/en\/hotels\/B1Y7\/wellness.html\" aria-label=\"Learn more about Legacy Yen Tu MGallery\">\n            <img decoding=\"async\" src=\"https:\/\/vietnamdetox.com\/staging\/redesign-clickdummy-2026\/assets\/partners\/legacy-yen-tu.png\" alt=\"Legacy Yen Tu MGallery Logo\" loading=\"lazy\">\n          <\/button>\n\n          <button class=\"vnd-partner-card\" type=\"button\" data-partner-name=\"Azerai La Residence Hue\" data-partner-logo=\"https:\/\/vietnamdetox.com\/staging\/redesign-clickdummy-2026\/assets\/partners\/azerai-la-residence-hue-logo.webp\" data-partner-link=\"https:\/\/azerai.com\/azerai-la-residence-hue\/\" aria-label=\"Learn more about Azerai La Residence Hue\">\n            <img decoding=\"async\" src=\"https:\/\/vietnamdetox.com\/staging\/redesign-clickdummy-2026\/assets\/partners\/azerai-la-residence-hue-logo.webp\" alt=\"Azerai La Residence Hue Logo\" loading=\"lazy\">\n          <\/button>\n\n          <button class=\"vnd-partner-card\" type=\"button\" data-partner-name=\"Alba Wellness Valley Hue\" data-partner-logo=\"https:\/\/vietnamdetox.com\/staging\/redesign-clickdummy-2026\/assets\/partners\/AlbaWellnessValley.webp\" data-partner-link=\"https:\/\/fusion-collection.com\/albawellnessvalleyhue\/en\/homepage\/\" aria-label=\"Learn more about Alba Wellness Valley Hue\">\n            <img decoding=\"async\" src=\"https:\/\/vietnamdetox.com\/staging\/redesign-clickdummy-2026\/assets\/partners\/AlbaWellnessValley.webp\" alt=\"Alba Wellness Valley Hue Logo\" loading=\"lazy\">\n          <\/button>\n\n          <button class=\"vnd-partner-card\" type=\"button\" data-partner-name=\"Deutsche Fastenakademie (dfa)\" data-partner-logo=\"https:\/\/vietnamdetox.com\/staging\/redesign-clickdummy-2026\/assets\/partners\/dfa-logo-2012_1024.webp\" data-partner-link=\"https:\/\/fastenakademie.de\/\" aria-label=\"Learn more about Deutsche Fastenakademie\">\n            <img decoding=\"async\" src=\"https:\/\/vietnamdetox.com\/staging\/redesign-clickdummy-2026\/assets\/partners\/dfa-logo-2012_1024.webp\" alt=\"Deutsche Fastenakademie Logo\" loading=\"lazy\">\n          <\/button>\n        <\/div>\n      <\/div>\n\n      <button class=\"vnd-partners__arrow vnd-partners__arrow--next\" type=\"button\" data-partners-next=\"\" aria-label=\"View next partners\">\n        <span aria-hidden=\"true\">\u203a<\/span>\n      <\/button>\n    <\/div>\n  <\/div>\n\n  <div class=\"vnd-partner-modal\" data-partner-modal=\"\" aria-hidden=\"true\">\n    <div class=\"vnd-partner-modal__dialog\" role=\"dialog\" aria-modal=\"true\" aria-label=\"Partner details\">\n      <button type=\"button\" class=\"vnd-partner-modal__close\" data-partner-modal-close=\"\" aria-label=\"Close partner details\">\n \u00d7\n      <\/button>\n\n      <div class=\"vnd-partner-modal__logo\">\n        <img decoding=\"async\" data-partner-modal-logo=\"\" src=\"\" alt=\"\">\n      <\/div>\n\n      <h3 class=\"vnd-partner-modal__name\" data-partner-modal-name=\"\">\n  Partner\n      <\/h3>\n\n      <p class=\"vnd-partner-modal__copy\" data-partner-modal-copy=\"\">\n  Weitere Informationen zu diesem Partner werden in K\u00fcrze erg\u00e4nzt.\n      <\/p>\n\n      <a class=\"vnd-partner-modal__link\" data-partner-modal-link=\"\" href=\"#\" target=\"_blank\" rel=\"noopener\">\n  Partner-Website besuchen\n      <\/a>\n    <\/div>\n  <\/div>\n<\/section>\n\n<script>\n(function () {\n  \"use strict\";\n\n  var sections = document.querySelectorAll(\n    \"[data-vnd-partners]:not([data-vnd-partners-ready])\"\n  );\n\n  sections.forEach(function (section) {\n    section.setAttribute(\"data-vnd-partners-ready\", \"true\");\n\n    var viewport = section.querySelector(\"[data-partners-viewport]\");\n    var track = section.querySelector(\"[data-partners-track]\");\n    var previousButton = section.querySelector(\"[data-partners-previous]\");\n    var nextButton = section.querySelector(\"[data-partners-next]\");\n    var cards = section.querySelectorAll(\".vnd-partner-card\");\n    var modal = section.querySelector(\"[data-partner-modal]\");\n    var modalDialog = modal\n      ? modal.querySelector(\".vnd-partner-modal__dialog\")\n      : null;\n    var closeButton = section.querySelector(\"[data-partner-modal-close]\");\n    var modalLogo = section.querySelector(\"[data-partner-modal-logo]\");\n    var modalName = section.querySelector(\"[data-partner-modal-name]\");\n    var modalCopy = section.querySelector(\"[data-partner-modal-copy]\");\n    var modalLink = section.querySelector(\"[data-partner-modal-link]\");\n\n    if (!viewport || !track || !cards.length) return;\n\n    var animating = false;\n    var autoTimer = null;\n    var touchStartX = null;\n    var lastFocusedElement = null;\n    var transitionValue =\n      \"transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94)\";\n    var reducedMotion = window.matchMedia(\n      \"(prefers-reduced-motion: reduce)\"\n    ).matches;\n\n    function getGap() {\n      var styles = window.getComputedStyle(track);\n      var gap = parseFloat(\n        styles.columnGap || styles.gap || styles.rowGap || 0\n      );\n      return isNaN(gap) ? 0 : gap;\n    }\n\n    function stepForward() {\n      if (animating || track.children.length < 2) return;\n\n      animating = true;\n      var first = track.firstElementChild;\n      var width = first.getBoundingClientRect().width + getGap();\n\n      track.style.transition = transitionValue;\n      track.style.transform = \"translate3d(\" + -width + \"px, 0, 0)\";\n\n      window.setTimeout(function () {\n        track.style.transition = \"none\";\n        track.appendChild(first);\n        track.style.transform = \"translate3d(0, 0, 0)\";\n        animating = false;\n      }, 650);\n    }\n\n    function stepBackward() {\n      if (animating || track.children.length < 2) return;\n\n      animating = true;\n      var last = track.lastElementChild;\n      var width = last.getBoundingClientRect().width + getGap();\n\n      track.style.transition = \"none\";\n      track.insertBefore(last, track.firstElementChild);\n      track.style.transform = \"translate3d(\" + -width + \"px, 0, 0)\";\n\n      window.requestAnimationFrame(function () {\n        track.style.transition = transitionValue;\n        track.style.transform = \"translate3d(0, 0, 0)\";\n\n        window.setTimeout(function () {\n          track.style.transition = \"none\";\n          animating = false;\n        }, 650);\n      });\n    }\n\n    function stopAutoPlay() {\n      if (!autoTimer) return;\n      window.clearInterval(autoTimer);\n      autoTimer = null;\n    }\n\n    function startAutoPlay() {\n      stopAutoPlay();\n\n      if (\n        reducedMotion ||\n        document.hidden ||\n        track.children.length < 2 ||\n        (modal && modal.classList.contains(\"is-open\"))\n      ) {\n        return;\n      }\n\n      autoTimer = window.setInterval(stepForward, 3500);\n    }\n\n    function moveAndRestart(direction) {\n      stopAutoPlay();\n      if (direction === \"previous\") stepBackward();\n      else stepForward();\n      startAutoPlay();\n    }\n\n    if (previousButton) {\n      previousButton.addEventListener(\"click\", function () {\n        moveAndRestart(\"previous\");\n      });\n    }\n\n    if (nextButton) {\n      nextButton.addEventListener(\"click\", function () {\n        moveAndRestart(\"next\");\n      });\n    }\n\n    viewport.addEventListener(\"touchstart\", function (event) {\n      if (!event.touches.length) return;\n      touchStartX = event.touches[0].clientX;\n      stopAutoPlay();\n    }, { passive: true });\n\n    viewport.addEventListener(\"touchend\", function (event) {\n      if (touchStartX === null || !event.changedTouches.length) {\n        startAutoPlay();\n        return;\n      }\n\n      var difference = event.changedTouches[0].clientX - touchStartX;\n      touchStartX = null;\n\n      if (Math.abs(difference) >= 40) {\n        if (difference > 0) stepBackward();\n        else stepForward();\n      }\n\n      startAutoPlay();\n    }, { passive: true });\n\n    section.addEventListener(\"mouseenter\", stopAutoPlay);\n    section.addEventListener(\"mouseleave\", startAutoPlay);\n\n    section.addEventListener(\"focusin\", stopAutoPlay);\n    section.addEventListener(\"focusout\", function (event) {\n      if (!section.contains(event.relatedTarget)) startAutoPlay();\n    });\n\n    document.addEventListener(\"visibilitychange\", function () {\n      if (document.hidden) stopAutoPlay();\n      else startAutoPlay();\n    });\n\n    function setModal(open) {\n      if (!modal) return;\n\n      modal.classList.toggle(\"is-open\", open);\n      modal.setAttribute(\"aria-hidden\", String(!open));\n      document.body.classList.toggle(\"vnd-partner-modal-open\", open);\n\n      if (open) {\n        stopAutoPlay();\n        window.setTimeout(function () {\n          if (closeButton) closeButton.focus();\n        }, 20);\n      } else {\n        startAutoPlay();\n        if (\n          lastFocusedElement &&\n          typeof lastFocusedElement.focus === \"function\"\n        ) {\n          lastFocusedElement.focus();\n        }\n      }\n    }\n\n    function openPartnerModal(card) {\n      if (\n        !modal ||\n        !modalLogo ||\n        !modalName ||\n        !modalCopy ||\n        !modalLink\n      ) {\n        return;\n      }\n\n      var name = card.getAttribute(\"data-partner-name\") || \"Partner\";\n      var logo = card.getAttribute(\"data-partner-logo\") || \"\";\n      var link = card.getAttribute(\"data-partner-link\") || \"#\";\n      var description = card.getAttribute(\"data-partner-description\") ||\n        \"More information about this partner will be added soon.\";\n\n      lastFocusedElement = card;\n      modalName.textContent = name;\n      modalLogo.src = logo;\n      modalLogo.alt = name + \" logo\";\n      modalCopy.textContent = description;\n      modalLink.href = link;\n      setModal(true);\n    }\n\n    Array.prototype.forEach.call(cards, function (card) {\n      card.addEventListener(\"click\", function () {\n        openPartnerModal(card);\n      });\n    });\n\n    if (closeButton) {\n      closeButton.addEventListener(\"click\", function () {\n        setModal(false);\n      });\n    }\n\n    if (modal) {\n      modal.addEventListener(\"click\", function (event) {\n        if (event.target === modal) setModal(false);\n      });\n    }\n\n    document.addEventListener(\"keydown\", function (event) {\n      if (!modal || !modal.classList.contains(\"is-open\")) return;\n\n      if (event.key === \"Escape\") {\n        event.preventDefault();\n        setModal(false);\n        return;\n      }\n\n      if (event.key === \"Tab\" && modalDialog) {\n        var focusable = modalDialog.querySelectorAll(\n          \"button:not([disabled]), a[href], [tabindex]:not([tabindex='-1'])\"\n        );\n\n        if (!focusable.length) return;\n\n        var firstFocusable = focusable[0];\n        var lastFocusable = focusable[focusable.length - 1];\n\n        if (event.shiftKey && document.activeElement === firstFocusable) {\n          event.preventDefault();\n          lastFocusable.focus();\n        } else if (\n          !event.shiftKey &&\n          document.activeElement === lastFocusable\n        ) {\n          event.preventDefault();\n          firstFocusable.focus();\n        }\n      }\n    });\n\n    if (track.children.length < 2) {\n      section.classList.add(\"has-one-partner\");\n    }\n\n    startAutoPlay();\n  });\n})();\n<\/script>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div data-dce-background-color=\"#F5E8D0\" class=\"elementor-element elementor-element-6f73f92 e-flex e-con-boxed e-con e-parent\" data-id=\"6f73f92\" 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-1bc70c5 elementor-widget elementor-widget-html\" data-id=\"1bc70c5\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!--\r\n  Elementor setup\r\n  1. Add an HTML widget where the CTA card should appear.\r\n  2. Paste this entire file into the widget.\r\n  3. Add the companion CSS from elementor-footer-retreat-cta.css to the widget's\r\n     Advanced > Custom CSS field (Elementor Pro).\r\n\r\n  This component is static, so no JavaScript is required.\r\n-->\r\n\r\n<section class=\"vrcta\" aria-labelledby=\"vrcta-title\">\r\n  <span class=\"vrcta__eyebrow\">Bereit, wenn Sie es sind<\/span>\r\n\r\n  <h2 class=\"vrcta__headline\" id=\"vrcta-title\">\r\n  Reservieren Sie Ihren Platz in einem unserer kommenden <em>Retreats.<\/em>\r\n  <\/h2>\r\n\r\n  <p class=\"vrcta__description\">\r\n  Wenn Sie sich bereits zu einem bestimmten Retreat hingezogen f\u00fchlen, k\u00f6nnen Sie Ihren Platz jetzt reservieren. Noch unsicher, welches Retreat am besten zu Ihnen passt? Gern f\u00fchren wir Sie in einem ruhigen Kennenlerngespr\u00e4ch durch Orte, Atmosph\u00e4re, Timing und Fastenansatz.  \r\n  <\/p>\r\n\r\n  <div class=\"vrcta__buttons\">\r\n    <a class=\"vrcta__button vrcta__button--ember\" href=\"https:\/\/vietnamdetox.com\/de\/retreat-ueberblick\/\">Retreats entdecken<\/a>\r\n    <!-- Hidden until \/the-method\/ is published:\r\n    <a class=\"vrcta__button vrcta__button--outline\" href=\"https:\/\/vietnamdetox.com\/de\/die-methode\/\">Understand the Method<\/a>\r\n    -->\r\n  <\/div>\r\n\r\n  <p class=\"vrcta__description vrcta__closing\">\r\n  Manche G\u00e4ste starten mit Fragen. Andere wissen bereits, dass sie einen Neustart brauchen. \r\n  <\/p>\r\n<\/section>\r\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Box ausblenden \u00d7 Erholen Sie sich, bevor Ersch\u00f6pfung zu Ihrem Normalzustand wird. Deutsches Buchinger-Fasten. Vietnamesische Heiltradition. Ihr Browser unterst\u00fctzt das Video-Tag nicht. Ruhige, strukturierte Fastenretreats f\u00fcr Menschen, die sich mental \u00fcberlastet, k\u00f6rperlich ersch\u00f6pft oder von echter Erholung abgeschnitten f\u00fchlen. Retreats entdecken Die Methode verstehen Scrollen Ein stilles Gef\u00fchl, das viele G\u00e4ste wiedererkennen Wann haben Sie [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":22611,"parent":0,"menu_order":1,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-22580","page","type-page","status-publish","has-post-thumbnail","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v28.8 (Yoast SEO v28.8) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Startseite - Vietnamdetox<\/title>\n<meta name=\"description\" content=\"Ruhige, strukturierte Fastenretreats f\u00fcr Menschen, die sich mental \u00fcberlastet, k\u00f6rperlich ersch\u00f6pft oder von echter Erholung abgeschnitten f\u00fchlen\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/vietnamdetox.com\/de\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Startseite\" \/>\n<meta property=\"og:description\" content=\"Ruhige, strukturierte Fastenretreats f\u00fcr Menschen, die sich mental \u00fcberlastet, k\u00f6rperlich ersch\u00f6pft oder von echter Erholung abgeschnitten f\u00fchlen\" \/>\n<meta property=\"og:url\" content=\"https:\/\/vietnamdetox.com\/de\/\" \/>\n<meta property=\"og:site_name\" content=\"Vietnamdetox\" \/>\n<meta property=\"article:modified_time\" content=\"2026-11-04T09:12:00+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/guests-relaxing-in-hot-spring.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"1244\" \/>\n\t<meta property=\"og:image:height\" content=\"931\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Gesch\u00e4tzte Lesezeit\" \/>\n\t<meta name=\"twitter:data1\" content=\"22\u00a0Minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/vietnamdetox.com\\\/de\\\/\",\"url\":\"https:\\\/\\\/vietnamdetox.com\\\/de\\\/\",\"name\":\"Startseite - Vietnamdetox\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/vietnamdetox.com\\\/de\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/vietnamdetox.com\\\/de\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/vietnamdetox.com\\\/de\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/vietnamdetox.com\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/guests-relaxing-in-hot-spring.webp\",\"datePublished\":\"2026-05-16T03:32:58+00:00\",\"dateModified\":\"2026-11-04T09:12:00+00:00\",\"description\":\"Ruhige, strukturierte Fastenretreats f\u00fcr Menschen, die sich mental \u00fcberlastet, k\u00f6rperlich ersch\u00f6pft oder von echter Erholung abgeschnitten f\u00fchlen\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/vietnamdetox.com\\\/de\\\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/vietnamdetox.com\\\/de\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/vietnamdetox.com\\\/de\\\/#primaryimage\",\"url\":\"https:\\\/\\\/vietnamdetox.com\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/guests-relaxing-in-hot-spring.webp\",\"contentUrl\":\"https:\\\/\\\/vietnamdetox.com\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/guests-relaxing-in-hot-spring.webp\",\"width\":1244,\"height\":931},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/vietnamdetox.com\\\/de\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/vietnamdetox.com\\\/de\\\/startseite\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Startseite\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/vietnamdetox.com\\\/de\\\/#website\",\"url\":\"https:\\\/\\\/vietnamdetox.com\\\/de\\\/\",\"name\":\"Staging Vietnamdetox\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/vietnamdetox.com\\\/de\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/vietnamdetox.com\\\/de\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"de\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/vietnamdetox.com\\\/de\\\/#organization\",\"name\":\"Staging Vietnamdetox\",\"url\":\"https:\\\/\\\/vietnamdetox.com\\\/de\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/vietnamdetox.com\\\/de\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/vietnamdetox.com\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/logo-icon-color_cutout.svg\",\"contentUrl\":\"https:\\\/\\\/vietnamdetox.com\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/logo-icon-color_cutout.svg\",\"width\":314,\"height\":435,\"caption\":\"Staging Vietnamdetox\"},\"image\":{\"@id\":\"https:\\\/\\\/vietnamdetox.com\\\/de\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Startseite - Vietnamdetox","description":"Ruhige, strukturierte Fastenretreats f\u00fcr Menschen, die sich mental \u00fcberlastet, k\u00f6rperlich ersch\u00f6pft oder von echter Erholung abgeschnitten f\u00fchlen","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/vietnamdetox.com\/de\/","og_locale":"de_DE","og_type":"article","og_title":"Startseite","og_description":"Ruhige, strukturierte Fastenretreats f\u00fcr Menschen, die sich mental \u00fcberlastet, k\u00f6rperlich ersch\u00f6pft oder von echter Erholung abgeschnitten f\u00fchlen","og_url":"https:\/\/vietnamdetox.com\/de\/","og_site_name":"Vietnamdetox","article_modified_time":"2026-11-04T09:12:00+00:00","og_image":[{"width":1244,"height":931,"url":"https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/guests-relaxing-in-hot-spring.webp","type":"image\/webp"}],"twitter_card":"summary_large_image","twitter_misc":{"Gesch\u00e4tzte Lesezeit":"22\u00a0Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/vietnamdetox.com\/de\/","url":"https:\/\/vietnamdetox.com\/de\/","name":"Startseite - Vietnamdetox","isPartOf":{"@id":"https:\/\/vietnamdetox.com\/de\/#website"},"primaryImageOfPage":{"@id":"https:\/\/vietnamdetox.com\/de\/#primaryimage"},"image":{"@id":"https:\/\/vietnamdetox.com\/de\/#primaryimage"},"thumbnailUrl":"https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/guests-relaxing-in-hot-spring.webp","datePublished":"2026-05-16T03:32:58+00:00","dateModified":"2026-11-04T09:12:00+00:00","description":"Ruhige, strukturierte Fastenretreats f\u00fcr Menschen, die sich mental \u00fcberlastet, k\u00f6rperlich ersch\u00f6pft oder von echter Erholung abgeschnitten f\u00fchlen","breadcrumb":{"@id":"https:\/\/vietnamdetox.com\/de\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/vietnamdetox.com\/de\/"]}]},{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/vietnamdetox.com\/de\/#primaryimage","url":"https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/guests-relaxing-in-hot-spring.webp","contentUrl":"https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/guests-relaxing-in-hot-spring.webp","width":1244,"height":931},{"@type":"BreadcrumbList","@id":"https:\/\/vietnamdetox.com\/de\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/vietnamdetox.com\/de\/startseite\/"},{"@type":"ListItem","position":2,"name":"Startseite"}]},{"@type":"WebSite","@id":"https:\/\/vietnamdetox.com\/de\/#website","url":"https:\/\/vietnamdetox.com\/de\/","name":"Staging Vietnamdetox","description":"","publisher":{"@id":"https:\/\/vietnamdetox.com\/de\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/vietnamdetox.com\/de\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"de"},{"@type":"Organization","@id":"https:\/\/vietnamdetox.com\/de\/#organization","name":"Staging Vietnamdetox","url":"https:\/\/vietnamdetox.com\/de\/","logo":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/vietnamdetox.com\/de\/#\/schema\/logo\/image\/","url":"https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/logo-icon-color_cutout.svg","contentUrl":"https:\/\/vietnamdetox.com\/wp-content\/uploads\/2026\/05\/logo-icon-color_cutout.svg","width":314,"height":435,"caption":"Staging Vietnamdetox"},"image":{"@id":"https:\/\/vietnamdetox.com\/de\/#\/schema\/logo\/image\/"}}]}},"_hostinger_reach_plugin_has_subscription_block":false,"_hostinger_reach_plugin_is_elementor":false,"_links":{"self":[{"href":"https:\/\/vietnamdetox.com\/de\/wp-json\/wp\/v2\/pages\/22580","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vietnamdetox.com\/de\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/vietnamdetox.com\/de\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/vietnamdetox.com\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/vietnamdetox.com\/de\/wp-json\/wp\/v2\/comments?post=22580"}],"version-history":[{"count":16,"href":"https:\/\/vietnamdetox.com\/de\/wp-json\/wp\/v2\/pages\/22580\/revisions"}],"predecessor-version":[{"id":23030,"href":"https:\/\/vietnamdetox.com\/de\/wp-json\/wp\/v2\/pages\/22580\/revisions\/23030"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/vietnamdetox.com\/de\/wp-json\/wp\/v2\/media\/22611"}],"wp:attachment":[{"href":"https:\/\/vietnamdetox.com\/de\/wp-json\/wp\/v2\/media?parent=22580"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}