0%

ML. MASSAGE

document.addEventListener("DOMContentLoaded", function () {
    const startTime = Date.now(); // Record page script start time for preloader minimum display

    // =================================================================
    // SECTION: Preloader Setup & Logic
    // =================================================================
    const preloader = document.querySelector('.preloader-container');
    const preloaderCounter = document.querySelector('.preloader-counter');
    const vimeoDesktopIframe = document.getElementById('vimeo-desktop'); // Use your desktop ID
    const vimeoMobileIframe = document.getElementById('vimeo-mobile');   // Use your mobile ID
    const minimumDisplayTime = 1500; // Minimum preloader time in milliseconds (e.g., 1.5 seconds)

    let preloaderCount = 0;
    let pageLoadComplete = false;
    let videoReady = false;
    let preloaderHidden = false;
    let preloaderCounterInterval;
    let preloaderFailsafeTimeout;

    // --- Preloader Element Checks ---
    if (!preloader || !preloaderCounter) {
        console.warn('Preloader elements (.preloader-container or .preloader-counter) not found! Cannot initialize preloader.');
        // Attempt to hide preloader container if it exists but counter doesn't, to prevent blocking page
        if(preloader) {
            preloader.style.opacity = '0';
            preloader.style.visibility = 'hidden';
            preloader.style.display = 'none';
        }
        return; // Stop execution of preloader logic if elements are missing
    }

    // --- Determine visible Vimeo iframe ---
    let visibleVimeoIframe = null;
    if (vimeoDesktopIframe && vimeoDesktopIframe.offsetParent !== null) {
        // offsetParent is null if display:none (or parent is display:none)
        visibleVimeoIframe = vimeoDesktopIframe;
        console.log("Preloader: Detected visible video - Desktop");
    } else if (vimeoMobileIframe && vimeoMobileIframe.offsetParent !== null) {
        visibleVimeoIframe = vimeoMobileIframe;
        console.log("Preloader: Detected visible video - Mobile");
    } else {
        console.log("Preloader: No visible Vimeo background iframe detected on load.");
    }
    const shouldWaitForVideo = !!visibleVimeoIframe;
    // Initialize videoReady state: If no video visible, consider it 'ready'.
    videoReady = !shouldWaitForVideo;

    // --- Preloader Hide Function (with minimum display time) ---
    function checkAndHidePreloader() {
        // Prevent running if already hidden or elements missing
        if (preloaderHidden || !preloader || !preloaderCounter) return;

        // Check conditions: page loaded AND video ready (or not needed)
        if (pageLoadComplete && videoReady) {
            preloaderHidden = true; // Mark as hidden early to prevent race conditions
            console.log('Preloader: Conditions met. Calculating hide delay...');

            // Stop counter interval and failsafe timeout
            if (preloaderCounterInterval) clearInterval(preloaderCounterInterval);
            if (preloaderFailsafeTimeout) clearTimeout(preloaderFailsafeTimeout);

            // Ensure 100% is displayed
            preloaderCounter.textContent = '100%';

            // Calculate time needed to meet minimum display duration
            const elapsedTime = Date.now() - startTime;
            const delayNeeded = Math.max(0, minimumDisplayTime - elapsedTime);
            console.log(`Preloader: Elapsed: ${elapsedTime}ms, Delaying hide by: ${delayNeeded}ms to meet minimum of ${minimumDisplayTime}ms`);

            // Use calculated delay before starting fade-out animation
            setTimeout(() => {
                preloader.classList.add('preloader-hidden');
                preloader.setAttribute('aria-busy', 'false'); // Accessibility update

                // Remove from layout after animation (match CSS transition duration)
                setTimeout(() => {
                    preloader.style.display = 'none';
                    console.log('Preloader: Set display to none.');
                }, 500); // Should match your CSS transition duration for opacity/visibility
            }, delayNeeded);
        } else {
             // Optional log for debugging if called but conditions aren't met
             // console.log('checkAndHidePreloader called but conditions not met:', { pageLoadComplete, videoReady });
        }
    }

    // --- Preloader Failsafe Function ---
    function forceHidePreloader() {
        if (!preloaderHidden) {
            console.warn('Preloader failsafe triggered after timeout. Forcing hide.');
            pageLoadComplete = true; // Force completion states
            videoReady = true;
            checkAndHidePreloader(); // Attempt to hide gracefully
        }
    }

    // --- Preloader Event Listener: Window Load ---
    window.addEventListener('load', function() {
        console.log('Preloader: window.load event fired.');
        pageLoadComplete = true;
        checkAndHidePreloader();
    });

    // --- Preloader: Initialize Vimeo Player API (if needed) ---
    if (shouldWaitForVideo) {
        console.log("Preloader: Initializing Vimeo Player API for the visible iframe...");
        try {
            // Ensure the Vimeo Player API script is loaded before this runs
            if (typeof Vimeo === 'undefined' || !Vimeo.Player) {
                 console.error("Preloader: Vimeo Player API not loaded or available. Video readiness cannot be checked.");
                 videoReady = true; // Treat video as ready to not block indefinitely
                 checkAndHidePreloader(); // Check if page load is ready
            } else {
                const player = new Vimeo.Player(visibleVimeoIframe);

                player.on('playing', function() {
                    console.log('Preloader: Visible Vimeo player "playing" event fired.');
                    if (!videoReady) { // Ensure this runs only once
                        videoReady = true;
                        checkAndHidePreloader();
                    }
                });

                player.on('error', function(error) {
                    console.error('Preloader: Visible Vimeo player error:', error);
                    if (!videoReady) { // Prevent calling check multiple times
                        videoReady = true; // Don't block preloader on video error
                        checkAndHidePreloader();
                    }
                });

                 // Optional: Add loaded listener as a fallback in case playing never fires?
                 // player.on('loaded', function() { ... });
            }
        } catch (error) {
             console.error("Preloader: Error initializing or using Vimeo Player API:", error);
             if (!videoReady) { // Prevent calling check multiple times
                 videoReady = true; // Don't block preloader if API fails
                 checkAndHidePreloader();
             }
        }
    } else {
        console.log("Preloader: Skipping Vimeo Player API initialization (no visible video).");
    }

    // --- Preloader Counter Animation ---
    // Start only if conditions are not already met (preventing instant 100% jump if possible)
    if (!pageLoadComplete || !videoReady) {
        console.log("Preloader: Starting counter animation.");
        preloaderCounterInterval = setInterval(function() {
            if (preloaderHidden) { // Stop if hidden prematurely
                clearInterval(preloaderCounterInterval);
                return;
            }
            if (preloaderCount < 99) {
                preloaderCount++;
                preloaderCounter.textContent = preloaderCount + '%';
            } else {
                 // Stop incrementing counter at 99 if loading isn't finished.
                 // It will be forced to 100% in checkAndHidePreloader when ready.
                 // We can clear interval here if everything IS loaded, just waiting for min display time
                 if (pageLoadComplete && videoReady) {
                     clearInterval(preloaderCounterInterval);
                     console.log("Preloader: Counter reached 99%, conditions met, stopping interval.");
                 }
            }
        }, 30); // Adjust interval timing (e.g., 30-50ms)
    } else {
        // If conditions already met before interval logic runs (very fast load), attempt hide.
        console.log("Preloader: Conditions met before counter interval setup, attempting hide.");
        checkAndHidePreloader();
    }

    // --- Preloader Failsafe Timeout ---
    // Set a timeout to hide the preloader regardless after X seconds
    preloaderFailsafeTimeout = setTimeout(forceHidePreloader, 15000); // 15 seconds failsafe

}); // End DOMContentLoaded

Übersicht

Körpermassage

Rücken massageRücken massage

Dauer & Preise

30 Min.
45,00 €
45 Min.
60,00 €
60 Min.
75,00 €
75 Min.
85,00 €
90 Min.
100,00 €
120 Min
130,00 €

Massagen

Körpermassage

Die Hot-Stone-Massage nutzt warme Steine, um Verspannungen zu lösen und die Durchblutung zu fördern. Sie sorgt für tiefe Entspannung und steigert das Wohlbefinden.

Die Honigmassage ist eine effektive Methode zur Hautstraffung. Durch das Einmassieren von Honig werden die Hautzellen stimuliert, was die Durchblutung fördert und die Elastizität der Haut verbessert. Die natürlichen Inhaltsstoffe des Honigs wirken feuchtigkeitsspendend und helfen, das Hautbild zu verfeinern.

Gezielte Massagegriffe lösen Verspannungen im Rücken-, Schulter- und Nackenbereich. Ideal bei sitzender Tätigkeit oder Stress – für mehr Beweglichkeit und ein leichtes, freies Körpergefühl.

Eine wohltuende Massage von Kopf bis Fuß, die den gesamten Körper in Einklang bringt. Sie lockert Muskeln, beruhigt das Nervensystem und schenkt ein tiefes Gefühl von Ausgeglichenheit und Vitalität

Die Lomi Lomi Massage ist eine traditionelle hawaiianische Technik, die durch sanfte, fließende Bewegungen und den Einsatz von warmem Öl eine tiefgehende Entspannung fördert. Sie verbindet körperliche Berührung mit spiritueller Heilung und hilft, Blockaden zu lösen und das innere Gleichgewicht wiederherzustellen.

Mit sanften, rhythmischen Griffen unterstützt die manuelle Lymphdrainage den Abfluss von Gewebsflüssigkeit. Sie wirkt entschlackend, entstauend und ist ideal bei Schwellungen, schweren Beinen oder zur Regeneration nach Operationen.

Die Sportmassage ist eine gezielte Technik, die darauf abzielt, die Leistungsfähigkeit von Sportlern zu verbessern und Verletzungen vorzubeugen. Durch spezielle Grifftechniken werden Verspannungen gelöst, die Durchblutung gefördert und die Regeneration nach intensiven Trainingseinheiten beschleunigt.

Erleben Sie pure Erholung bei einer wohltuenden Entspannungsmassage. Lassen Sie den Stress des Alltags hinter sich und tauchen Sie ein in völlige Ruhe.

Gezielte Drucktechniken und sanfte Griffe aktivieren Reflexzonen an den Füßen. Diese Massageform entspannt nicht nur müde Füße, sondern stimuliert den gesamten Organismus.

Kräftige, dynamische Grifftechniken aktivieren tief liegende Muskelschichten und bringen neue Energie in den Körper. Diese Massage ist ideal für alle, die Verspannungen gezielt lösen und sich rundum gestärkt fühlen möchten.

Durch den Einsatz von Schröpfgläsern entsteht ein Unterdruck, der die Durchblutung anregt und tief sitzende Verspannungen löst. Diese intensive Massageform unterstützt die Entgiftung und fördert die Regeneration des Gewebes.

Pressotherapie

Dauer & Preise

30 Min
50,00 €
45 Min
60,00 €
60 Min
75,00 €
30 Min mit Körperwickel
65,00 €
45 Min mit Körperwickel
75,00 €
60 Min mit Körperwickel
90 €

Massagen

Die Pressotherapie ist eine moderne, nicht-invasive Methode zur Förderung der Lymphzirkulation und Entgiftung des Körpers. Durch sanften, rhythmischen Luftdruck werden Beine, Bauch und Arme massiert, was Schwellungen reduziert, die Durchblutung verbessert und das Bindegewebe strafft. Diese Therapie eignet sich ideal zur Unterstützung bei Cellulite-Behandlungen, zur Regeneration nach dem Sport oder einfach zur tiefen Entspannung.

Für einen intensiveren Lymphdrainage- oder Anti-Cellulite-Effekt kann die Behandlung optional mit einem speziellen Körperwickel kombiniert werden. Die Kombination verstärkt die Wirkung, fördert die Hautstraffung und unterstützt die Entgiftung noch effektiver.

Gönnen Sie sich eine Auszeit und bringen Sie Ihren Körper ins Gleichgewicht – mit der wohltuenden Wirkung der Pressotherapie.

Kinesiotaping

Dauer & Preise

Massage 30 Min + Kinesiotaping 1 Zone
60,00 €
Massage 45 Min + Kinesiotaping 1 Zone
75,00 €
Massage 60 Min + Kinesiotaping 1 Zone
90,00 €

Massagen

Kinesiotaping ist eine Therapieform, bei der elastische, farbige Klebebänder (die sogenannten Kinesiotapes) auf die Haut geklebt werden. Die Methode stammt ursprünglich aus Japan und wird vor allem in der Physiotherapie, Sportmedizin und Schmerzbehandlung eingesetzt.

Ziel von Kinesiotaping ist es, Muskeln, Bänder und Gelenke zu unterstützen – ohne die Beweglichkeit einzuschränken. Das Tape wirkt durch die Reizung der Haut und darunterliegenden Strukturen auf das Nervensystem, die Durchblutung und den Lymphfluss.

Whiskey-Wickel

Dauer & Preise

60,00 Min.
80,00 €

Massagen

Die Wickel fördern die Durchblutung, regen den Stoffwechsel an und helfen, überschüssige Flüssigkeit aus dem Gewebe zu entfernen. Das Hautbild wird gestrafft und Cellulite gemildert. Diese Behandlung ist ideal zur Modellierung der Silhouette und zur Unterstützung von Detox-Programmen. Styx Körperwickel ist eine wohltuende, effektive Methode für ein glattes, gefestigtes Hautbild und eine schöne Figur.

LPG-Massage

Dauer & Preise

30 Min.
60,00 €
45 Min.
70,00 €
60 Min.
80,00 €

Massagen

Erleben Sie die innovative LPG-Massage – eine effektive und sichere apparative Methode, um Ihre Haut zu verbessern und Ihre Figur zu formen. Die Behandlung wirkt tief in den Gewebeschichten, fördert den Stoffwechsel, verbessert die Durchblutung und reduziert Cellulite.
✔ Moderne Technologie: Für sichtbare und langanhaltende Ergebnisse.
✔ Glatte und straffe Haut: Bringen Sie die natürliche Schönheit Ihrer Haut zum Vorschein.
✔ Perfekte Figur: Effektive Behandlung von Problemzonen.
✔ Wohlfühlen und Effektivität: Eine Behandlung, die Resultate liefert und gleichzeitig entspannt.
Spüren Sie den Unterschied schon nach den ersten Sitzungen! Buchen Sie jetzt Ihre LPG-Massage und gönnen Sie sich die Pflege, die Sie verdienen

Gesichtsmassage

Dauer & Preise

30 Min.
50,00 €
45 Min.
65,00€
80 Min.
80,00 €

Massagen

Die Facial Upper Care ist eine ganzheitliche Behandlung, die Gesichts-, Kopf- und Handmassage mit einer regenerierenden Gesichtsmaske kombiniert. Mit sanften, gezielten Bewegungen werden Verspannungen gelöst und die Durchblutung gefördert. Diese wohltuende Kombination schenkt tiefe Entspannung für Körper und Geist, während sie gleichzeitig die Haut mit Feuchtigkeit versorgt und zum Strahlen bringt.

Nagelbrett-Meditation

Dauer & Preise

1 Std. 30 Min.
75,00 €

Massagen

Kurzes Kennenlernen und Gespräch (5-10 Minuten)
Grundlegende Massage ohne Öl durch ein Handtuch zur Entspannung (10 Minuten)
Gemeinsames Aufwärmen (10 Minuten)
Meditation (5 Minuten)
Eigentliche Nagelbrett-Praxis (5-40 Minuten)
Ausklang und Abschluss der Praxis (5 Minuten)

Paarmassage

Dauer & Preise

60 Min.
150,00 €
75 Min.
170,00 €
90 Min.
200,00 €

Massagen

Wir bieten Ihnen in unserem Massage-Studio die Möglichkeit an, sich zu zweit oder zu dritt massieren zu lassen.

Kindermassage

Dauer & Preise

30 Min.
45,00 €

*Kinder ab 5 Jahren.

Massagen

Die Kindermassage ist weit mehr als nur eine wohltuende Berührung – sie unterstützt Kinder ganzheitlich in ihrer körperlichen und emotionalen Entwicklung. Mit sanften, speziell angepassten Griffen werden Spannungen gelöst, das Körperbewusstsein gestärkt und das Nervensystem beruhigt.

Gerade im Wachstum, wenn der Körper sich ständig verändert, kann eine gezielte Massage helfen, Beschwerden vorzubeugen oder gezielt zu lindern – ob bei Haltungsschwächen, muskulären Ungleichgewichten oder innerer Unruhe.

Kindermassage schafft Raum für Entspannung, Vertrauen und bewusste Körperwahrnehmung – in einer sicheren, kindgerechten Umgebun

Anfrageformular

Buchung

Salonregeln

  1. Bei einer Absage weniger als 24 Stunden vor dem Termin ist eine Zahlung von 50% des Dienstleistungspreises erforderlich.

     

  2. Verspätung: Wenn Sie mehr als 10 Minuten zu spät kommen, wird die Massagezeit entsprechend verkürzt.

     

  3. Abonement: Wenn Sie ein Abonement gekauft haben und die Buchung weniger als 24 Stunden vor dem Termin absagen, verfällt die Massageeinheit.