PageSourceSearch

https://www.hancelot.be/room-detail/charme-sup-rieur-kamer

html hancelot.be collected 2026-10-08 07:56:44 UTC 126,725 bytes, 3,164 lines download raw bytes

1<!doctype html >
2<html xmlns="http://www.w3.org/1999/xhtml" lang="nl"
3      class="ios-preview-native-scroll">
4<head>
5    <meta charset="utf-8">
6    
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45<script type="text/javascript">
46    window._currentDevice = 'desktop';
47    window.Parameters = window.Parameters || {
48        HomeUrl: 'https://www.hancelot.be/',
49
50        SystemID: 'EU_PRODUCTION',
51        SiteAlias: 'ea0190f4896547fd8e65f9c711a88618',
52        SiteType: atob('RFVEQU9ORQ=='),
53        PublicationDate: 'Aug 26, 2026',
54        ExternalUid: '208966',
55        IsSiteMultilingual: true,
56        InitialPostAlias: '',
57        InitialPostPageUuid: '',
58        InitialDynamicItem: 'charme-sup-rieur-kamer',
59        DynamicPageInfo: {
60            isDynamicPage: true,
61            base64JsonRowData: 'eyJwYWdlX2l0ZW1fdXJsIjoiY2hhcm1lLXN1cC1yaWV1ci1rYW1lciIsIm1haW5fdGl0bGVfaGVybyI6IkNoYXJtZSBTdXDDqXJpZXVyIGthbWVyIiwicm9vbV9pY29ucyI6W10sImhlcm9faW1hZ2UiOiJodHRwczovL2RlLmNkbi13ZWJzaXRlLmNvbS9lYTAxOTBmNDg5NjU0N2ZkOGU2NWY5YzcxMWE4ODYxOC9kbXMzcmVwL211bHRpL2thbWVyLTFjLWdyb290LWZiNWIwZTdmLmpwZyIsImZlYXR1cmVzIjpbIlByaWpzIHBlciBuYWNodCBwZXIga2FtZXIiLCJJbmNsdXNpZWYgb250YmlqdCBidWZmZXQiLCJFeGNsdXNpZWYgdGFrc2VuIiwiQmFkIiwiQmFka2FtZXIiLCJWZW50aWxhdG9yIiwiQ2VudHJhbGUgdmVyd2FybWluZyIsIktsdWlzIiwiRG91Y2hlIiwiVG9pbGV0IiwiVFYiLCJLb2ZmaWV6ZXQvV2F0ZXJrb2tlciIsIkhhYXJkcm9nZXIiLCJaaXRob2VrIiwiU2xpcHBlcnMiLCJEcmFhZGxvb3MgaW50ZXJuZXQiLCJXYXN0YWZlbCIsIkJhc2lzdm9vcnppZW5pbmdlbiJdLCJ2aWV3IjoiIiwic2l6ZSI6IiIsInByaWNlIjoiIiwiZ3Vlc3RzIjoiMyIsImJ1dHRvbl9saW5rIjoiaHR0cHM6Ly9ib29raW5nZW5naW5lLm15bGlnaHRob3VzZS5jb20vY2hhcm1lLWhvdGVsLWhhbmNlbG90LWdlbnQvUm9vbXMvR2VuZXJhbEF2YWlsYWJpbGl0eT9Sb29tPTQwOTEmTGFuZ3VhZ2U9bmwiLCJzZWN0aW9uXzFfcGFyYWdyYXBoIjoiRGV6ZSB6ZWVyIHJ1aW1lIGVuIGx1eHVldXplIENoYXJtZSBTdXDDqXJpZXVyIGthbWVycyB2YW4gbWluc3RlbnMgKy8tIDQ1bcKyIGdyb290IGJldmluZGVuIHppY2ggb3AgZGUgZWVyc3RlIHZlcmRpZXBpbmcgZW4gemlqbiB2b29yemllbiB2YW4gZ2V6ZWxsaWdlIHppdGhvZWssIGZsYXRzY3JlZW4gVFYsIGdyYXRpcyB3aXJlbGVzcyBpbnRlcm5ldCBlbiBrb2ZmaWUgJiB0aGVlIGZhY2lsaXRlaXRlbi4gRGUgQ2hhcm1lIFN1cMOpcmlldXIga2FtZXIgaGVlZnQgb2YgZWVuIG1vZGVybmUgYmFka2FtZXIgbWV0IGJhZCBlbi9vZiBhcGFydGUgcmVnZW4vbWFzc2FnZSBkb3VjaGUtY2FiaW5lIG9mIGhlZWZ0IGVlbiBhdXRoZW50aWVrZSBiYWRrYW1lciBtZXQgYmFkIHZvb3IgdHdlZSBwZXJzb25lbiBlbiBkb3VjaGUuIEJlaWRlIGJhZGthbWVycyB6aWpuIHVpdGdlcnVzdCBtZXQgbGF2YWJvLCB0b2lsZXQgZW4gdWl0Z2VicmVpZGVyIGFzc29ydGltZW50IGJhZHByb2R1a3Rlbi4iLCJoZXJvX2Rlc2NyaXB0aW9uIjoiRGV6ZSB6ZWVyIHJ1aW1lIGVuIGx1eHVldXplIENoYXJtZSBTdXDDqXJpZXVyIGthbWVycyB2YW4gbWluc3RlbnMgKy8tIDQ1bcKyIGdyb290IGJldmluZGVuIHppY2ggb3AgZGUgZWVyc3RlIHZlcmRpZXBpbmcgZW4gemlqbiB2b29yemllbiB2YW4gZ2V6ZWxsaWdlIHppdGhvZWssIGZsYXRzY3JlZW4gVFYsIGdyYXRpcyB3aXJlbGVzcyBpbnRlcm5ldCBlbiBrb2ZmaWUgJiB0aGVlIGZhY2lsaXRlaXRlbi4gRGUgQ2hhcm1lIFN1cMOpcmlldXIga2FtZXIgaGVlZnQgb2YgZWVuIG1vZGVybmUgYmFka2FtZXIgbWV0IGJhZCBlbi9vZiBhcGFydGUgcmVnZW4vbWFzc2FnZSBkb3VjaGUtY2FiaW5lIG9mIGhlZWZ0IGVlbiBhdXRoZW50aWVrZSBiYWRrYW1lciBtZXQgYmFkIHZvb3IgdHdlZSBwZXJzb25lbiBlbiBkb3VjaGUuIEJlaWRlIGJhZGthbWVycyB6aWpuIHVpdGdlcnVzdCBtZXQgbGF2YWJvLCB0b2lsZXQgZW4gdWl0Z2VicmVpZGVyIGFzc29ydGltZW50IGJhZHByb2R1a3Rlbi4iLCJpbWFnZV9nYWxsZXJ5IjpbeyJpbWFnZSI6Imh0dHBzOi8vZGUuY2RuLXdlYnNpdGUuY29tL2VhMDE5MGY0ODk2NTQ3ZmQ4ZTY1ZjljNzExYTg4NjE4L2RtczNyZXAvbXVsdGkva2FtZXItMWMtMi1ncm9vdC5qcGciLCJhbHRfdGV4dCI6IkNoYXJtZSBTdXDDqXJpZXVyIGthbWVyIn0seyJpbWFnZSI6Imh0dHBzOi8vZGUuY2RuLXdlYnNpdGUuY29tL2VhMDE5MGY0ODk2NTQ3ZmQ4ZTY1ZjljNzExYTg4NjE4L2RtczNyZXAvbXVsdGkva2FtZXItMWEtZ3Jvb3QuanBnIiwiYWx0X3RleHQiOiJDaGFybWUgU3Vww6lyaWV1ciBrYW1lciJ9LHsiaW1hZ2UiOiJodHRwczovL2RlLmNkbi13ZWJzaXRlLmNvbS9lYTAxOTBmNDg5NjU0N2ZkOGU2NWY5YzcxMWE4ODYxOC9kbXMzcmVwL211bHRpL2thbWVyLTFhLTItZ3Jvb3QuanBnIiwiYWx0X3RleHQiOiJDaGFybWUgU3Vww6lyaWV1ciBrYW1lciJ9LHsiaW1hZ2UiOiJodHRwczovL2RlLmNkbi13ZWJzaXRlLmNvbS9lYTAxOTBmNDg5NjU0N2ZkOGU2NWY5YzcxMWE4ODYxOC9kbXMzcmVwL211bHRpL2thbWVyLTFhLTMtZ3Jvb3QuanBnIiwiYWx0X3RleHQiOiJDaGFybWUgU3Vww6lyaWV1ciBrYW1lciJ9LHsiaW1hZ2UiOiJodHRwczovL2RlLmNkbi13ZWJzaXRlLmNvbS9lYTAxOTBmNDg5NjU0N2ZkOGU2NWY5YzcxMWE4ODYxOC9kbXMzcmVwL211bHRpL2thbWVyLTFhLTQtZ3Jvb3QuanBnIiwiYWx0X3RleHQiOiJDaGFybWUgU3Vww6lyaWV1ciBrYW1lciJ9LHsiaW1hZ2UiOiJodHRwczovL2RlLmNkbi13ZWJzaXRlLmNvbS9lYTAxOTBmNDg5NjU0N2ZkOGU2NWY5YzcxMWE4ODYxOC9kbXMzcmVwL211bHRpL2thbWVyLTFhLTYtZ3Jvb3QuanBnIiwiYWx0X3RleHQiOiJDaGFybWUgU3Vww6lyaWV1ciBrYW1lciJ9LHsiaW1hZ2UiOiJodHRwczovL2RlLmNkbi13ZWJzaXRlLmNvbS9lYTAxOTBmNDg5NjU0N2ZkOGU2NWY5YzcxMWE4ODYxOC9kbXMzcmVwL211bHRpL2thbWVyLTFiLWdyb290LmpwZyIsImFsdF90ZXh0IjoiQ2hhcm1lIFN1cMOpcmlldXIga2FtZXIifSx7ImltYWdlIjoiaHR0cHM6Ly9kZS5jZG4td2Vic2l0ZS5jb20vZWEwMTkwZjQ4OTY1NDdmZDhlNjVmOWM3MTFhODg2MTgvZG1zM3JlcC9tdWx0aS9rYW1lci0xYi0zLWdyb290LmpwZyIsImFsdF90ZXh0IjoiQ2hhcm1lIFN1cMOpcmlldXIga2FtZXIifSx7ImltYWdlIjoiaHR0cHM6Ly9kZS5jZG4td2Vic2l0ZS5jb20vZWEwMTkwZjQ4OTY1NDdmZDhlNjVmOWM3MTFhODg2MTgvZG1zM3JlcC9tdWx0aS9rYW1lci0xYy0zLWdyb290LmpwZyIsImFsdF90ZXh0IjoiQ2hhcm1lIFN1cMOpcmlldXIga2FtZXIifSx7ImltYWdlIjoiaHR0cHM6Ly9kZS5jZG4td2Vic2l0ZS5jb20vZWEwMTkwZjQ4OTY1NDdmZDhlNjVmOWM3MTFhODg2MTgvZG1zM3JlcC9tdWx0aS9rYW1lci0xYS01LWdyb290LmpwZyIsImFsdF90ZXh0IjoiQ2hhcm1lIFN1cMOpcmlldXIga2FtZXIifSx7ImltYWdlIjoiaHR0cHM6Ly9kZS5jZG4td2Vic2l0ZS5jb20vZWEwMTkwZjQ4OTY1NDdmZDhlNjVmOWM3MTFhODg2MTgvZG1zM3JlcC9tdWx0aS9rYW1lci0xYi0yLWdyb290LmpwZyIsImFsdF90ZXh0IjoiQ2hhcm1lIFN1cMOpcmlldXIga2FtZXIifSx7ImltYWdlIjoiaHR0cHM6Ly9kZS5jZG4td2Vic2l0ZS5jb20vZWEwMTkwZjQ4OTY1NDdmZDhlNjVmOWM3MTFhODg2MTgvZG1zM3JlcC9tdWx0aS9rYW1lci0yZC0zLWdyb290LTEuanBnIiwiYWx0X3RleHQiOiJDaGFybWUgU3Vww6lyaWV1ciBrYW1lciJ9XX0=',
62        },
63        InitialPageAlias: 'room-detail/~page-item~',
64        InitialPageUuid: 'a51b7147dadc4a27bf39ba009d474637',
65        InitialPageId: '37515853',
66        InitialEncodedPageAlias: 'cm9vbS1kZXRhaWwvfnBhZ2UtaXRlbX4=',
67        InitialHeaderUuid: '5431a258100041e39f014ded47698105',
68        CurrentPageUrl: '',
69        IsCurrentHomePage: false,
70        AllowAjax: false,
71        AfterAjaxCommand: null,
72        HomeLinkText: 'Back To Home',
73        UseGalleryModule: false,
74        CurrentThemeName: 'Layout Theme',
75        ThemeVersion: '500000',
76        DefaultPageAlias: '',
77        RemoveDID: true,
78        WidgetStyleID: null,
79        IsHeaderFixed: false,
80        IsHeaderSkinny: false,
81        IsBfs: true,
82        StorePageAlias: 'null',
83        StorePagesUrls: 'e30=',
84        IsNewStore: 'false',
85        StorePath: '',
86        StoreId: 'null',
87        StoreVersion: 0,
88        StoreBaseUrl: '',
89        StoreCleanUrl: true,
90        StoreDisableScrolling: true,
91        IsStoreSuspended: false,
92        HasCustomDomain: true,
93        SimpleSite: false,
94        showCookieNotification: false,
95        cookiesNotificationMarkup: 'null',
96        translatedPageUrl: '',
97        isFastMigrationSite: false,
98        sidebarPosition: 'NA',
99        currentLanguage: 'nl',
100        currentLocale: 'nl',
101        NavItems: '{}',
102        errors: {
103            general: 'There was an error connecting to the page.<br/> Make sure you are not offline.',
104            password: 'Incorrect name/password combination',
105            tryAgain: 'Try again'
106        },
107        
108        mapConsent: {
109            message: 'Deze inhoud wordt aangeboden door een derde partij, {0}. Indien ingeschakeld, kan {0} informatie verzamelen over uw activiteiten.',
110            enable: 'Inschakelen'
111        },
112        NavigationAreaParams: {
113            ShowBackToHomeOnInnerPages: true,
114            NavbarSize: -1,
115            NavbarLiveHomePage: 'https://www.hancelot.be/',
116            BlockContainerSelector: '.dmBody',
117            NavbarSelector: '#dmNav:has(a)',
118            SubNavbarSelector: '#subnav_main'
119        },
120        hasCustomCode: false,
121        planID: '7',
122        customTemplateId: 'null',
123        siteTemplateId: 'null',
124        productId: 'DM_DIRECT',
125        disableTracking: false,
126        pageType: 'DYNAMIC_PAGE_SUFFIX',
127        isRuntimeServer: true,
128        isInEditor: false,
129        isInPreview: false,
130        hasNativeStore: false,
131        defaultLang: 'nl',
132        hamburgerMigration: null,
133        isFlexSite: true
134    };
135
136    window.Parameters.LayoutID = {};
137    window.Parameters.LayoutID[window._currentDevice] = 30;
138    window.Parameters.LayoutVariationID = {};
139    window.Parameters.LayoutVariationID[window._currentDevice] = 5;
140</script>
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163<!-- Injecting site-wide to the head -->
164
165
166<style data-swh-uuid="b87a493f2230466d98164ef152cfc733">
167  
168/* Show the logo on tablet + mobile: Duda hides the whole desktop logo/nav
169   group via data-hidden-on-tablet / data-hidden-on-mobile
170   (display:none !important in the flex-nav runtime CSS). Re-show only the
171   group that holds a connected logo; keep its other children hidden.
172   NOTE: no "&gt;" combinators anywhere - Duda HTML-escapes "&gt;" to "&amp;gt;" in
173   snippet markup, which silently invalidates the rule. */
174@media (max-width: 767px) {
175  #dm .dmInner .group[data-hidden-on-mobile]:has(.site-logo img:not([src*="blank_image_placeholder"])) {
176    display: flex !important;
177  }
178  #dm .dmInner .group[data-hidden-on-mobile]:has(.site-logo) .flex-element:not(.site-logo) {
179    display: none !important;
180  }
181}
182
183@media (min-width: 768px) and (max-width: 1024px) {
184  #dm .dmInner .group[data-hidden-on-tablet]:has(.site-logo img:not([src*="blank_image_placeholder"])) {
185    display: flex !important;
186  }
187  #dm .dmInner .group[data-hidden-on-tablet]:has(.site-logo) .flex-element:not(.site-logo) {
188    display: none !important;
189  }
190}
191
192/* The published tablet/mobile markup has 0-size attributes on the logo img
193   (the widget was hidden at publish time), so size it here. */
194@media (max-width: 1024px) {
195  #dm .dmInner .site-logo,
196  #dm .dmInner .site-logo .imageWidget {
197    width: auto !important;
198    height: auto !important;
199  }
200  #dm .dmInner .site-logo .imageWidget img {
201    display: block;
202    height: 40px !important;
203    width: auto !important;
204    min-width: 24px; /* pre-load box so the lazy image still fetches */
205    max-width: 180px;
206    object-fit: contain;
207  }
208}
209
210</style>
211
212<script src="https://www.thehotelsnetwork.com/js/loader.js?partnership_id=132" async="" data-swh-uuid="ce622f17dd3b40d19da3d399f29fad52">
213</script>
213
214
215<script type="application/ld+json" data-swh-uuid="7d2eb4d4705a47b0992e6845445c3f1a">
216
217
218{
219  "@context": "https://schema.org",
220  "@type": "LodgingBusiness",
221  "name": "Charmehotel Hancelot",
222  "image": "https://de.cdn-website.com/ea0190f4896547fd8e65f9c711a88618/dms3rep/multi/aff460847e5e413bb3fc6c075f3d2cbe.jpg",
223  "email": "[email protected]",
224  "telephone": "+3232014930",
225  "address": {
226    "@type": "PostalAddress",
227    "streetAddress": "Vijfwindgatenstraat 19",
228    "addressLocality": "Gent",
229    "postalCode": "9000",
230    "addressCountry": "BE"
231  },
232  "geo": {
233    "@type": "GeoCoordinates",
234    "latitude": "51.0446",
235    "longitude": "3.7344"
236  },
237  "knowsLanguage": [
238    {
239      "@type": "Language",
240      "name": "nl"
241    },
242    {
243      "@type": "Language",
244      "name": "fr"
245    },
246    {
247      "@type": "Language",
248      "name": "en"
249    }
250  ]
251}
252
253
254</script>
254
255
256<script data-swh-uuid="46f77f6d86954f36947697cf1b18b74d">
257
258
259window.dataLayer = window.dataLayer || [];
260window.dataLayer.push({ "subscription_id": "208966" });
261
262
263</script>
263
264
265
266
267<!-- End Injecting site-wide to the head -->
268
269<!-- Inject secured cdn script -->
270
271
272<!-- ========= Meta Tags ========= -->
273<!-- PWA settings -->
274<script>
275    function toHash(str) {
276        var hash = 5381, i = str.length;
277        while (i) {
278            hash = hash * 33 ^ str.charCodeAt(--i)
279        }
280        return hash >>> 0
281    }
282</script>
vendor: 1 bytes, line 282
282
283<script>
284    (function (global) {
285    //const cacheKey = global.cacheKey;
286    const isOffline = 'onLine' in navigator && navigator.onLine === false;
287    const hasServiceWorkerSupport = 'serviceWorker' in navigator;
288    if (isOffline) {
289        console.log('offline mode');
290    }
291    if (!hasServiceWorkerSupport) {
292        console.log('service worker is not supported');
293    }
294    if (hasServiceWorkerSupport && !isOffline) {
295        window.addEventListener('load', function () {
296            const serviceWorkerPath = '/runtime-service-worker.js?v=3';
297            navigator.serviceWorker
298                .register(serviceWorkerPath, { scope: './' })
299                .then(
300                    function (registration) {
301                        // Registration was successful
302                        console.log(
303                            'ServiceWorker registration successful with scope: ',
304                            registration.scope
305                        );
306                    },
307                    function (err) {
308                        // registration failed :(
309                        console.log('ServiceWorker registration failed: ', err);
310                    }
311                )
312                .catch(function (err) {
313                    console.log(err);
314                });
315        });
316
317        // helper function to refresh the page
318        var refreshPage = (function () {
319            var refreshing;
320            return function () {
321                if (refreshing) return;
322                // prevent multiple refreshes
323                var refreshkey = 'refreshed' + location.href;
324                var prevRefresh = localStorage.getItem(refreshkey);
325                if (prevRefresh) {
326                    localStorage.removeItem(refreshkey);
327                    if (Date.now() - prevRefresh < 30000) {
328                        return; // dont go into a refresh loop
329                    }
330                }
331                refreshing = true;
332                localStorage.setItem(refreshkey, Date.now());
333                console.log('refereshing page');
334                window.location.reload();
335            };
336        })();
337
338        function messageServiceWorker(data) {
339            return new Promise(function (resolve, reject) {
340                if (navigator.serviceWorker.controller) {
341                    var worker = navigator.serviceWorker.controller;
342                    var messageChannel = new MessageChannel();
343                    messageChannel.port1.onmessage = replyHandler;
344                    worker.postMessage(data, [messageChannel.port2]);
345                    function replyHandler(event) {
346                        resolve(event.data);
347                    }
348                } else {
349                    resolve();
350                }
351            });
352        }
353    }
354})(window);
355</script>
355
356<!-- Add manifest -->
357<!-- End PWA settings -->
358
359
360
361<link rel="canonical" href="https://www.hancelot.be/room-detail/charme-sup-rieur-kamer">
362
363<meta id="view" name="viewport" content="initial-scale=1, minimum-scale=1, maximum-scale=5, viewport-fit=cover">
364
365<meta name="apple-mobile-web-app-capable" content="yes">
366
367<!--Add favorites icons-->
368
369<link rel="icon" type="image/x-icon" href="https://de.cdn-website.com/ea0190f4896547fd8e65f9c711a88618/site_favicon_16_1785154289205.ico"/>
370
371<!-- End favorite icons -->
372<link rel="preconnect" href="https://le-de.cdn-website.com"/>
373<link rel="preconnect" href="https://de.cdn-website.com" crossorigin/>
374<link rel="preconnect" href="https://static.cdn-website.com"/>
375<link rel="preconnect" href="https://de.cdn-website.com"/>
376
377
378
379<!-- render the required CSS and JS in the head section -->
380<script id='d-js-dmapi'>
381    window.SystemID = 'EU_PRODUCTION';
382
383    if (!window.dmAPI) {
384        window.dmAPI = {
385            registerExternalRuntimeComponent: function () {
386            },
387            getCurrentDeviceType: function () {
388                return window._currentDevice;
389            },
390            runOnReady: (ns, fn) => {
391                const safeFn = dmAPI.toSafeFn(fn);
392                ns = ns || 'global_' + Math.random().toString(36).slice(2, 11);
393                const eventName = 'afterAjax.' + ns;
394
395                if (document.readyState === 'complete') {
396                    $.DM.events.off(eventName).on(eventName, safeFn);
397                    setTimeout(function () {
398                        safeFn({
399                            isAjax: false,
400                        });
401                    }, 0);
402                } else {
403                    window?.waitForDeferred?.('dmAjax', () => {
404                        $.DM.events.off(eventName).on(eventName, safeFn);
405                        safeFn({
406                            isAjax: false,
407                        });
408                    });
409                }
410            },
411            toSafeFn: (fn) => {
412                if (fn?.safe) {
413                    return fn;
414                }
415                const safeFn = function (...args) {
416                    try {
417                        return fn?.apply(null, args);
418                    } catch (e) {
419                        console.log('function failed ' + e.message);
420                    }
421                };
422                safeFn.safe = true;
423                return safeFn;
424            }
425        };
426    }
427
428    if (!window.requestIdleCallback) {
429        window.requestIdleCallback = function (fn) {
430            setTimeout(fn, 0);
431        }
432    }
433</script>
433
434
435<!-- loadCSS function header.jsp-->
436
437
438
439
440
441
442<script id="d-js-load-css">
443/**
444 * There are a few <link> tags with CSS resource in them that are preloaded in the page
445 * in each of those there is a "onload" handler which invokes the loadCSS callback
446 * defined here.
447 * We are monitoring 3 main CSS files - the runtime, the global and the page.
448 * When each load we check to see if we can append them all in a batch. If threre
449 * is no page css (which may happen on inner pages) then we do not wait for it
450 */
451(function () {
452  let cssLinks = {};
453  function loadCssLink(link) {
454    link.onload = null;
455    link.rel = "stylesheet";
456    link.type = "text/css";
457  }
458  
459    function checkCss() {
460      const pageCssLink = document.querySelector("[id*='CssLink']");
461      const widgetCssLink = document.querySelector("[id*='widgetCSS']");
462
463        if (cssLinks && cssLinks.runtime && cssLinks.global && (!pageCssLink || cssLinks.page) && (!widgetCssLink || cssLinks.widget)) {
464            const storedRuntimeCssLink = cssLinks.runtime;
465            const storedPageCssLink = cssLinks.page;
466            const storedGlobalCssLink = cssLinks.global;
467            const storedWidgetCssLink = cssLinks.widget;
468
469            storedGlobalCssLink.disabled = true;
470            loadCssLink(storedGlobalCssLink);
471
472            if (storedPageCssLink) {
473                storedPageCssLink.disabled = true;
474                loadCssLink(storedPageCssLink);
475            }
476
477            if(storedWidgetCssLink) {
478                storedWidgetCssLink.disabled = true;
479                loadCssLink(storedWidgetCssLink);
480            }
481
482            storedRuntimeCssLink.disabled = true;
483            loadCssLink(storedRuntimeCssLink);
484
485            requestAnimationFrame(() => {
486                setTimeout(() => {
487                    storedRuntimeCssLink.disabled = false;
488                    storedGlobalCssLink.disabled = false;
489                    if (storedPageCssLink) {
490                      storedPageCssLink.disabled = false;
491                    }
492                    if (storedWidgetCssLink) {
493                      storedWidgetCssLink.disabled = false;
494                    }
495                    // (SUP-4179) Clear the accumulated cssLinks only when we're
496                    // sure that the document has finished loading and the document 
497                    // has been parsed.
498                    if(document.readyState === 'interactive') {
499                      cssLinks = null;
500                    }
501                }, 0);
502            });
503        }
504    }
505  
506
507  function loadCSS(link) {
508    try {
509      var urlParams = new URLSearchParams(window.location.search);
510      var noCSS = !!urlParams.get("nocss");
511      var cssTimeout = urlParams.get("cssTimeout") || 0;
512
513      if (noCSS) {
514        return;
515      }
516      if (link.href && link.href.includes("d-css-runtime")) {
517        cssLinks.runtime = link;
518        checkCss();
519      } else if (link.id === "siteGlobalCss") {
520        cssLinks.global = link;
521        checkCss();
522      } 
523      
524      else if (link.id && link.id.includes("CssLink")) {
525        cssLinks.page = link;
526        checkCss();
527      } else if (link.id && link.id.includes("widgetCSS")) {
528        cssLinks.widget = link;
529        checkCss();
530      }
531      
532      else {
533        requestIdleCallback(function () {
534          window.setTimeout(function () {
535            loadCssLink(link);
536          }, parseInt(cssTimeout, 10));
537        });
538      }
539    } catch (e) {
540      throw e
541    }
542  }
543  window.loadCSS = window.loadCSS || loadCSS;
544})();
545</script>
545
546
547
548
549<script data-role="deferred-init" type="text/javascript">
550    /* usage: window.getDeferred(<deferred name>).resolve() or window.getDeferred(<deferred name>).promise.then(...)*/
551    function Def() {
552        this.promise = new Promise((function (a, b) {
553            this.resolve = a, this.reject = b
554        }).bind(this))
555    }
556
557    const defs = {};
558    window.getDeferred = function (a) {
559        return null == defs[a] && (defs[a] = new Def), defs[a]
560    }
561    window.waitForDeferred = function (b, a, c) {
562        let d = window?.getDeferred?.(b);
563        d
564            ? d.promise.then(a)
565            : c && ["complete", "interactive"].includes(document.readyState)
566                ? setTimeout(a, 1)
567                : c
568                    ? document.addEventListener("DOMContentLoaded", a)
569                    : console.error(`Deferred  does not exist`);
570    };
571</script>
571
572<style id="forceCssIncludes">
573    /* This file is auto-generated from a `scss` file with the same name */
574
575.videobgwrapper{overflow:hidden;position:absolute;z-index:0;width:100%;height:100%;top:0;left:0;pointer-events:none;border-radius:inherit}.videobgframe{position:absolute;width:101%;height:100%;top:50%;left:50%;transform:translateY(-50%) translateX(-50%);object-fit:fill}#dm video.videobgframe{margin:0}@media (max-width:767px){.dmRoot .dmPhotoGallery.newPhotoGallery:not(.photo-gallery-done){min-height:80vh}}@media (min-width:1025px){.dmRoot .dmPhotoGallery.newPhotoGallery:not(.photo-gallery-done){min-height:45vh}}@media (min-width:768px) and (max-width:1024px){.responsiveTablet .dmPhotoGallery.newPhotoGallery:not(.photo-gallery-done){min-height:45vh}}#dm [data-show-on-page-only]{display:none!important}#dmRoot div.stickyHeaderFix div.site_content{margin-top:0!important}#dmRoot div.stickyHeaderFix div.hamburger-header-container{position:relative}@media (min-width:768px) and (max-width:1024px){.responsiveTablet #dm .dmInner .hide-for-medium,[data-hidden-on-tablet]{display:none!important}}
576    
577
578</style>
579<style id="cssVariables" type="text/css">
580    :root {
581  --color_1: rgba(195,170,115,1);
582  --color_10: rgba(94, 88, 80, 1);
583  --color_2: rgba(44,74,62,1);
584  --color_3: rgba(255,248,240,1);
585  --color_4: rgba(139,69,19,1);
586  --color_5: rgba(44,74,62,1);
587  --color_6: rgba(44,74,62,1);
588  --color_7: rgba(38, 34, 28, 1);
589  --color_8: rgba(255, 255, 255, 1);
590  --color_9: rgba(249, 245, 241, 1);
591  --max-content-width_1: 1200px;
592}
593</style>
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619<!-- Google Fonts Include -->
620
621
622
623
624
625
626
627
628
629
630
631
632
633<!-- loadCSS function fonts.jsp-->
634
635
636
637<link type="text/css" rel="stylesheet" href="https://de.cdn-website.com/fonts/css2?family=Playfair+Display:ital,wght@0,400..900;1,400..900&family=Montserrat:ital,wght@0,100..900;1,100..900&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=DM+Sans:ital,wght@0,100..1000;1,100..1000&amp;subset=latin-ext&amp;display=swap"  />
638
639
640
641
642
643<!-- RT CSS Include d-css-runtime-flex-new-nav-->
644<link rel="stylesheet" type="text/css" href="https://static.cdn-website.com/mnlt/production/6803/_dm/s/rt/dist/css/d-css-runtime-flex-new-nav.min.css" />
645
646<!-- End of RT CSS Include -->
647
648<link type="text/css" rel="stylesheet" href="https://de.cdn-website.com/WIDGET_CSS/5c0285296a37389797227006fba4c8f2.css" id="widgetCSS" />
649
650<!-- Support `img` size attributes -->
651<style>img[width][height] {
652  height: auto;
653}</style>
654
655<!-- Support showing sticky element on page only -->
656<style>
657  body[data-page-alias="room-detail/~page-item~"] #dm [data-show-on-page-only="room-detail/~page-item~"] {
658    display: block !important;
659  }
660</style>
661
662<!-- This is populated in Ajax navigation -->
663<style id="pageAdditionalWidgetsCss" type="text/css">
664</style>
665
666
667
668
669<!-- Site CSS -->
670<link type="text/css" rel="stylesheet" href="https://de.cdn-website.com/ea0190f4896547fd8e65f9c711a88618/files/ea0190f4896547fd8e65f9c711a88618_header_1.min.css?v=25" id="siteGlobalCss" />
671
672
673
674<style id="customWidgetStyle" type="text/css">
675    
676</style>
677<style id="innerPagesStyle" type="text/css">
678    
679</style>
680
681
682<style
683        id="additionalGlobalCss" type="text/css"
684>
685</style>
686
687<style id="pagestyle" type="text/css">
688    @media all {
689  *#dm .dmInner nav.u_1998592992 { color:black !important; }
690
691  *#dm .dmInner *.u_3356754003 .room-guests-icon { color:var(--color_1) !important; }
692
693  *#dm .dmInner div.u_3356754003 .room-book-btn:hover {
694    background-color:var(--color_2) !important;
695    background-image:none !important;
696  }
697
698  *#dm .dmInner div.u_3356754003 .room-book-btn.hover {
699    background-color:var(--color_2) !important;
700    background-image:none !important;
701  }
702}
703
704</style>
705
706<style id="pagestyleDevice" type="text/css">
707    
708</style>
709
710<!-- Flex Sections CSS -->
711
712 <style data-page-uuid="a51b7147dadc4a27bf39ba009d474637" id="grid-styles-common-63bd85219866cc362278151e-a51b7147dadc4a27bf39ba009d474637">@media all {
713    
714#\36 3bd85219866cc3622781521 {
715    min-height: 8px;
716    column-gap: 4%;
717    row-gap: 24px;
718    width: 100%;
719    min-width: 4%;
720    background-color: rgba(0, 0, 0, 0);
721    align-self: auto;
722    padding: 0px 0px 0px 0px;
723    margin: 0% 0% 0% 0%;
724}
725    
726#\36 3bd85219866cc3622781520 {
727    min-height: auto;
728    column-gap: 4%;
729    row-gap: 24px;
730    width: 100%;
731    flex-wrap: nowrap;
732    align-items: flex-start;
733    max-width: var(--max-content-width_1, 1200px);
734    padding: 3% 2% 3% 2%;
735    margin: 0% 0% 0% 0%;
736}
737    
738#\36 3bd85219866cc362278151f {
739    border-width: 0px;
740    border-color: rgba(0, 0, 0, 1);
741    border-style: solid;
742    background-color: var(--color_3);
743    background-image: none;
744}
745    
746#\36 3c7b8b76c596a2813341bc5 {
747    height: auto;
748}
749    
750#widget_mdk.flex-element.widget-wrapper > [data-element-type] {
751    padding: 0px 0px 0px 0px;
752}
753#widget_mdk {
754    width: 100%;
755    height: auto;
756    max-width: 100%;
757    min-height: 80vh;
758    margin: 0px 0% 0px 0%;
759}
760    
761#\36 3bd85219866cc362278151d {
762    margin: 0px 0% 0px 0%;
763}
764}</style> 
765 <style data-page-uuid="5431a258100041e39f014ded47698105" data-is-header="true" id="grid-styles-common-flex-footer-5431a258100041e39f014ded47698105">@media all {
766    
767#flex-footer {
768    background-color: var(--color_7);
769    background-image: none;
770}
771}</style> 
772 <style data-page-uuid="5431a258100041e39f014ded47698105" data-is-header="true" id="grid-styles-common-flex-
772header-5431a258100041e39f014ded47698105">@media all {
773    
774#flex-header[data-changeable-on-scroll][data-scrolling] [data-widget-type="image"] img {
775    transform: scale(0.66);
776}
777#flex-header {
778    background-color: var(--color_8);
779    
780    background-image: none;
781    padding: 10px 8% 10px 8%;
782    margin: 0px 0% 0px 0%;
783}
784#flex-header[data-changeable-on-scroll][data-scrolling] {
785    padding-top: 0px;
786    padding-bottom: 0px;
787    background-color: rgba(255, 255, 255, 1);
788}
789}</style> 
790 <style data-page-uuid="5431a258100041e39f014ded47698105" data-is-header="true" id="grid-styles-common-c093187e-5431a258100041e39f014ded47698105">@media all {
791    
792#\39 dc5a074 {
793    min-height: 82px;
794    column-gap: 0%;
795    row-gap: 0px;
796    max-width: none;
797    width: 100%;
798    flex-wrap: nowrap;
799    padding: 6px 0% 6px 0%;
800    margin: 0% 0% 0% 0%;
801}
802    
803#\32 3d5f850 {
804    width: 79.27%;
805    height: auto;
806    max-width: 100%;
807    order: 0;
808    grid-area: auto / auto / auto / auto;
809}
810    
811#\37 80d21df {
812    flex-direction: row;
813    align-items: center;
814    width: 89.52%;
815    min-width: 4%;
816    min-height: 8px;
817    column-gap: 4%;
818    row-gap: 24px;
819    justify-content: flex-start;
820    order: 1;
821    background-color: rgba(0, 0, 0, 0);
822    background-image: none;
823    padding: 6px 16px 6px 16px;
824    margin: 0% 0% 0% 0%;
825}
826    
827#\37 64397de {
828    min-height: 8px;
829    column-gap: 4%;
830    row-gap: 24px;
831    flex-direction: row;
832    width: 29.35%;
833    justify-content: flex-end;
834    align-items: center;
835    min-width: 4%;
836    order: 2;
837    padding: 16px 16px 16px 16px;
838    margin: 0% 0% 0% 0%;
839}
840    
841#\30 0ca91b4 {
842    width: 30px;
843    height: 30px;
844    max-width: 100%;
845}
846    
847#\31 c1481e3 {
848    margin: 0px 0% 0px 0%;
849}
850    
851#widget_idl {
852    width: 183px;
853    height: auto;
854    max-width: 100%;
855    justify-self: auto;
856    align-self: auto;
857    order: 1;
858    margin: 0px 0% 0px 0%;
859    grid-area: auto / auto / auto / auto;
860}
861    
862#\36 fe0ae20 {
863    min-height: 8px;
864    column-gap: 4%;
865    row-gap: 24px;
866    width: 6.48%;
867    align-items: center;
868    min-width: 4%;
869    order: 0;
870    background-color: rgba(0, 0, 0, 0);
871    background-image: none;
872}
873    
874#widget_c5a {
875    width: 86px;
876    height: auto;
877    max-width: 100%;
878}
879    
880#\38 258bb2f {
881    min-height: 8px;
882    column-gap: 4%;
883    row-gap: 24px;
884    width: 4%;
885    align-items: center;
886    min-width: 4%;
887    order: 3;
888}
889}</style> 
890 <style data-page-uuid="5431a258100041e39f014ded47698105" data-is-header="true" id="grid-styles-common-18f5ea00-5431a258100041e39f014ded47698105">@media all {
891    
892#\39 d047ce9 {
893    min-height: 8px;
894    column-gap: 4%;
895    row-gap: 24px;
896    width: 100%;
897    min-width: 4%;
898    align-items: flex-end;
899    justify-content: flex-end;
900    padding: 16px 16px 16px 16px;
901    margin-right: 0%;
902    margin-top: 0%;
903    margin-left: 0%;
904    margin-bottom: 0%;
905}
906    
907#a1f8711f {
908    min-height: 0px;
909    column-gap: 4%;
910    row-gap: 24px;
911    width: 100%;
912    padding: 4% 4% 2% 4%;
913    margin-right: 0%;
914    margin-top: 0%;
915    margin-left: 0%;
916    margin-bottom: 0%;
917}
918    
919#\31 2a003a5 svg {
920    fill: rgba(120,120,120,1);
921}
922#\31 2a003a5 .hamburgerButton {
923    background-color: rgba(0,0,0,0);
924}
925#\31 2a003a5 {
926    width: 30px;
927    height: 30px;
928}
929}</style> 
930 <style data-page-uuid="5431a258100041e39f014ded47698105" data-is-header="true" id="grid-styles-common-63a049320d35b55b4ef2a372-5431a258100041e39f014ded47698105">@media all {
931    
932#\36 3a049320d35b55b4ef2a374 {
933    min-height: 8px;
934    column-gap: 4%;
935    row-gap: 24px;
936    width: 100%;
937    min-width: 4%;
938    background-color: rgba(0, 0, 0, 0);
939    justify-content: flex-start;
940    padding: 16px 16px 16px 16px;
941    margin-right: 0%;
942    margin-top: 0%;
943    margin-left: 0%;
944    margin-bottom: 0%;
945}
946    
947#\36 3a049320d35b55b4ef2a376 {
948    background-color: rgba(0, 0, 0, 0);
949}
950    
951#\36 3a049320d35b55b4ef2a377 {
952    min-height: 531px;
953    column-gap: 4%;
954    row-gap: 24px;
955    width: 100%;
956    padding: 4% 4% 2% 4%;
957    margin-right: 0%;
958    margin-top: 0%;
959    margin-left: 0%;
960    margin-bottom: 0%;
961}
962    
963#\36 3a049ca0d35b55b4ef2a5c3 {
964    width: 544px;
965    height: auto;
966    max-width: 100%;
967    align-self: auto;
968    order: 0;
969    grid-area: auto / auto / auto / auto;
970}
971    
972#\36 2d6a167a824ca526194d9a5 {
973    background-color: rgba(232, 255, 133, 1);
974}
975}</style> 
976 <style data-page-uuid="5431a258100041e39f014ded47698105" data-is-header="true" id="grid-styles-common-6406026c90e1521f6ecb0eca-5431a258100041e39f014ded47698105">@media all {
977    
978#\36 406026c90e1521f6ecb0ecd {
979    min-height: 8px;
980    column-gap: 4%;
981    row-gap: 24px;
982    width: 100%;
983    min-width: 4%;
984    padding: 16px 16px 16px 16px;
985    margin: 0% 0% 0% 0%;
986}
987    
988#\36 406026c90e1521f6ecb0ecc {
989    min-height: 238px;
990    column-gap: 4%;
991    row-gap: 24px;
992    width: 100%;
993    padding: 4% 4% 4% 4%;
994    margin: 0% 0% 0% 0%;
995}
996    
997#widget_s4l {
998    width: 100%;
999    height: auto;
1000    max-width: 100%;
1001    order: 1;
1002}
1003    
1004#widget_u7g {
1005    width: 100%;
1006    height: auto;
1007    position: relative;
1008    min-width: 10px;
1009    min-height: 10px;
1010    max-width: 100%;
1011    order: 2;
1012}
1013    
1014#widget_3i7 {
1015    width: 100%;
1016    height: auto;
1017    position: relative;
1018    min-width: 10px;
1019    min-height: 10px;
1020    max-width: 100%;
1021    order: 3;
1022}
1023}</style> 
1024 <style data-page-uuid="5431a258100041e39f014ded47698105" data-is-header="true" id="grid-styles-common-63da2bddeae8da42b2353671-5431a258100041e39f014ded47698105">@media all {
1025    
1026#\36 3da2bddeae8da42b2353673 {
1027    min-height: 0;
1028    column-gap: 1%;
1029    row-gap: 6px;
1030    width: 100%;
1031    max-width: none;
1032    flex-direction: column;
1033    flex-wrap: nowrap;
1034    padding: 1% 8% 1% 8%;
1035    margin: 0% 0% 0% 0%;
1036}
1037    
1038#\36 3da2bf2eae8da42b23538a3 {
1039    width: 100%;
1040    height: auto;
1041    max-width: 100%;
1042    order: 1;
1043    margin-right: 0%;
1044    margin-left: 0%;
1045}
1046    
1047#\36 3da2bf2eae8da42b23538a2 {
1048    min-height: 84px;
1049    column-gap: 4%;
1050    row-gap: 24px;
1051    width: 100%;
1052    min-width: 4%;
1053    background-color: rgba(0, 0, 0, 0);
1054    order: 0;
1055    flex-wrap: nowrap;
1056    justify-content: flex-start;
1057    flex-direction: row;
1058    height: auto;
1059    padding: 0px 0px 0px 0px;
1060    margin: 0% 0% 0% 0%;
1061}
1062    
1063#\36 3da2bfbeae8da42b2353a44 {
1064    width: auto;
1065    height: auto;
1066    max-width: 100%;
1067    order: 1;
1068    justify-self: auto;
1069    align-self: auto;
1070    margin: 0px 0% 0px 0%;
1071    grid-area: auto / auto / auto / auto;
1072}
1073    
1074#\36 3c7b8b76c596a2813341bc5 {
1075    height: auto;
1076}
1077    
1078#group_5mc {
1079    width: 100%;
1080    min-width: 4%;
1081    min-height: 55px;
1082    column-gap: 4%;
1083    row-gap: 10px;
1084    order: 1;
1085    justify-content: flex-start;
1086    border-width: 0px 0px 0px 0px;
1087    border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0);
1088    border-style: solid;
1089    padding: 0px 0px 0px 0px;
1090    margin: 0% 0% 0% 0%;
1091}
1092    
1093#c0504b3a {
1094    width: auto;
1095    height: auto;
1096    max-width: 100%;
1097    order: 0;
1098}
1099    
1100#\36 3da2bddeae8da42b2353670 {
1101    margin: 0px 0% 0px 0%;
1102}
1103    
1104#widget_5co {
1105    width: 100%;
1106    height: auto;
1107    max-width: 100%;
1108    order: 0;
1109    margin-right: 0%;
1110    margin-left: 0%;
1111}
1112    
1113#group_diu {
1114    justify-content: flex-start;
1115    align-items: center;
1116    width: 48%;
1117    min-height: auto;
1118    max-height: 100%;
1119    row-gap: 24px;
1120    column-gap: 6.769501983252534%;
1121    order: 0;
1122    flex-wrap: nowrap;
1123    padding: 0px 0px 0px 0px;
1124    margin: 0px 0% 0px 0%;
1125}
1126    
1127#\31 b227e4d {
1128    justify-content: flex-start;
1129    align-items: center;
1130    width: 48%;
1131    min-height: auto;
1132    max-height: 100%;
1133    row-gap: 24px;
1134    column-gap: 6.769501983252534%;
1135    order: 0;
1136    flex-wrap: nowrap;
1137    padding: 0px 0px 0px 0px;
1138    margin: 0px 0% 0px 0%;
1139}
1140    
1141#\34 64459a5 {
1142    width: 100%;
1143    height: auto;
1144    max-width: 100%;
1145    order: 0;
1146    margin-right: 0%;
1147    margin-left: 0%;
1148}
1149    
1150#a932d2eb {
1151    justify-content: flex-start;
1152    align-items: flex-start;
1153    width: 48%;
1154    min-height: auto;
1155    max-height: 100%;
1156    row-gap: 24px;
1157    column-gap: 6.769501983252534%;
1158    order: 0;
1159    flex-wrap: nowrap;
1160    padding: 0px 0px 0px 0px;
1161    margin: 0px 0% 0px 0%;
1162}
1163    
1164#\39 409844f {
1165    width: 100%;
1166    height: auto;
1167    max-width: 100%;
1168    order: 0;
1169    margin-right: 0%;
1170    margin-left: 0%;
1171}
1172    
1173#widget_ufn.flex-element.widget-wrapper > [data-element-type] {
1174    padding-top: 4px;
1175    padding-bottom: 4px;
1176}
1177#widget_ufn {
1178    width: 100%;
1179    height: auto;
1180    min-height: 1px;
1181    max-width: 100%;
1182    order: 0;
1183}
1184    
1185#group_vom {
1186    flex-direction: row;
1187    justify-content: space-between;
1188    align-items: center;
1189    width: 100%;
1190    min-height: auto;
1191    max-height: 100%;
1192    row-gap: 24px;
1193    column-gap: 24px;
1194    padding: 0px 0px 0px 0px;
1195    margin: 0px 0% 0px 0%;
1196}
1197    
1198#\36 74d2422 {
1199    width: 100%;
1200    height: auto;
1201    max-width: 100%;
1202    justify-self: auto;
1203    align-self: auto;
1204    order: 2;
1205    margin: 0px 0% 0px 0%;
1206    grid-area: auto / auto / auto / auto;
1207}
1208    
1209#\38 29f79c8 {
1210    width: 100%;
1211    height: auto;
1212    max-width: 100%;
1213    justify-self: auto;
1214    align-self: auto;
1215    order: 2;
1216    margin: 0px 0% 0px 0%;
1217    grid-area: auto / auto / auto / auto;
1218}
1219    
1220#widget_iar {
1221    width: 68.41%;
1222    height: auto;
1223    max-width: 100%;
1224    order: 2;
1225    align-self: auto;
1226    justify-self: auto;
1227    margin: 0px 0% 0px 0%;
1228    grid-area: auto / auto / auto / auto;
1229}
1230}</style> 
1231 <style data-page-uuid="5431a258100041e39f014ded47698105" data-is-header="true" id="grid-styles-common-6394be04-5431a258100041e39f014ded47698105">@media all {
1232    
1233#d18fcf34 {
1234    min-height: 240px;
1235    column-gap: 4%;
1236    row-gap: 24px;
1237    max-width: none;
1238    width: 100%;
1239    flex-wrap: nowrap;
1240}
1241    
1242#\31 d55dab4 {
1243    grid-template-rows: minmax(300px, max-content);
1244    width: 100%;
1245    max-width: 100%;
1246}
1247    
1248#\30 a0a3590 {
1249    min-height: 8px;
1250    column-gap: 4%;
1251    row-gap: 24px;
1252    width: 100%;
1253    min-width: 4%;
1254}
1255}</style> 
1256 <style data-page-uuid="5431a258100041e39f014ded47698105" data-is-header="true" id="grid-styles-desktop-flex-header-5431a258100041e39f014ded47698105">@media (min-width: 1025px) {
1257}</style> 
1258 <style data-page-uuid="5431a258100041e39f014ded47698105" data-is-header="true" id="grid-styles-desktop-6406026c90e1521f6ecb0eca-5431a258100041e39f014ded47698105">@media (min-width: 1025px) {
1259    
1260#widget_s4l {
1261    justify-self: auto;
1262    align-self: auto;
1263    width: 95.82%;
1264    grid-area: auto / auto / auto / auto;
1265}
1266}</style> 
1267 <style data-page-uuid="5431a258100041e39f014ded47698105" data-is-header="true" id="grid-styles-tablet_implicit-flex-header-5431a258100041e39f014ded47698105">@media (min-width: 768px) and (max-width: 1024px) {
1268}</style> 
1269 <style data-page-uuid="5431a258100041e39f014ded47698105" data-is-header="true" id="grid-styles-tablet-flex-footer-5431a258100041e39f014ded47698105">@media (min-width: 768px) and (max-width: 1024px) {
1270    
1271#flex-footer {
1272}
1273}</style> 
1274 <style data-page-uuid="5431a258100041e39f014ded47698105" data-is-header="true" id="grid-styles-tablet-flex-header-5431a258100041e39f014ded47698105">@media (min-width: 768px) and (max-width: 1024px) {
1275    
1276#flex-header {
1277    
1278}
1279}</style> 
1280 <style data-page-uuid="5431a258100041e39f014ded47698105" data-is-header="true" id="grid-styles-tablet-c093187e-5431a258100041e39f014ded47698105">@media (min-width: 768px) and (max-width: 1024px) {
1281    
1282#\39 dc5a074 {
1283    padding-left: 2%;
1284    padding-right: 2%;
1285    flex-direction: row;
1286    flex-wrap: nowrap;
1287    min-height: 0px;
1288}
1289    
1290#\37 80d21df {
1291    width: 3.58%;
1292    order: 0;
1293    justify-content: flex-end;
1294    padding-right: 50px;
1295}
1296    
1297#\37 64397de {
1298    order: 2;
1299    width: 66.58%;
1300    min-height: 8px;
1301}
1302    
1303#\30 0ca91b4 {
1304    justify-self: auto;
1305    align-self: auto;
1306    order: 0;
1307    margin: 0px 0% 0px 0%;
1308    grid-area: auto / auto / auto / auto;
1309}
1310    
1311#\32 3d5f850 {
1312    order: 0;
1313}
1314    
1315#widget_idl {
1316    order: 1;
1317}
1318    
1319#\36 fe0ae20 {
1320    order: 1;
1321    width: 29.41%;
1322    min-height: 8px;
1323}
1324    
1325#\38 258bb2f {
1326    order: 3;
1327}
1328}</style> 
1329 <style data-page-uuid="5431a258100041e39f014ded47698105" data-is-header="true" id="grid-styles-tablet-18f5ea00-5431a258100041e39f014ded47698105">@media (min-width: 768px) and (max-width: 1024px) {
1330    
1331#a1f8711f {
1332    padding-left: 4%;
1333    padding-right: 4%;
1334    padding-bottom: 4%;
1335}
1336    
1337#\39 d047ce9 {
1338    padding-bottom: 6px;
1339}
1340}</style> 
1341 <style data-page-uuid="5431a258100041e39f014ded47698105" data-is-header="true" id="grid-styles-tablet-63a049320d35b55b4ef2a372-5431a258100041e39f014ded47698105">@media (min-width: 768px) and (max-width: 1024px) {
1342    
1343#\36 3a049320d35b55b4ef2a374 {
1344    justify-content: flex-start;
1345    padding-top: 16px;
1346}
1347    
1348#\36 3a049320d35b55b4ef2a377 {
1349    min-height: 522px;
1350    padding: 4% 4% 4% 4%;
1351}
1352}</style> 
1353 <style data-page-uuid="5431a258100041e39f014ded47698105" data-is-header="true" id="grid-styles-tablet-6406026c90e1521f6ecb0eca-5431a258100041e39f014ded47698105">@media (min-width: 768px) and (max-width: 1024px) {
1354    
1355#\36 406026c90e1521f6ecb0ecc {
1356    min-height: 279px;
1357    padding: 4% 4% 4% 4%;
1358}
1359    
1360#\36 406026c90e1521f6ecb0ecd {
1361    justify-content: flex-end;
1362    padding-bottom: 16px;
1363}
1364}</style> 
1365 <style data-page-uuid="5431a258100041e39f014ded47698105" data-is-header="true" id="grid-styles-tablet-63da2bddeae8da42b2353671-5431a258100041e39f014ded47698105">@media (min-width: 768px) and (max-width: 1024px) {
1366    
1367#\36 3da2bf2eae8da42b23538a2 {
1368    order: 1;
1369    align-items: flex-start;
1370    width: 100%;
1371    min-height: 80px;
1372    height: auto;
1373    padding: 0px 0px 0px 0px;
1374    margin: 0% 0% 0% 0%;
1375}
1376    
1377#group_5mc {
1378    order: 2;
1379    width: 100%;
1380    min-height: 50px;
1381    height: auto;
1382    margin: 0% 0% 0% 0%;
1383}
1384    
1385#c0504b3a {
1386    width: 100%;
1387}
1388    
1389#\36 3da2bddeae8da42b2353673 {
1390    flex-direction: column;
1391    flex-wrap: nowrap;
1392    min-height: 0;
1393    column-gap: 1%;
1394}
1395    
1396#\36 3da2bfbeae8da42b2353a44 {
1397    width: 35%;
1398}
1399}</style> 
1400 <style data-page-uuid="5431a258100041e39f014ded47698105" data-is-header="true" id="grid-styles-tablet-6394be04-5431a258100041e39f014ded47698105">@media (min-width: 768px) and (max-width: 1024px) {
1401    
1402#d18fcf34 {
1403    padding-left: 2%;
1404    padding-right: 2%;
1405}
1406}</style> 
1407
1408
1409
1410
1411
1412
1413<style id="globalFontSizeStyle" type="text/css">
1414    @media (min-width: 1025px) { [data-version] .size-14, [data-version] .font-size-14 {--font-size: 14;} }@media (min-width: 768px) and (max-width: 1024px) { [data-version] .t-size-14, [data-version] .t-font-size-14 {--font-size: 14;} }@media (max-width: 767px) { [data-version] .m-size-14, [data-version] .m-font-size-14 {--font-size: 14;} }
1415</style>
1416<style id="pageFontSizeStyle" type="text/css">
1417</style>
1418
1419
1420
1421
1422<style id="hideAnimFix">
1423  .dmDesktopBody:not(.editGrid) [data-anim-desktop]:not([data-anim-desktop='none']), .dmDesktopBody:not(.editGrid) [data-anim-extended] {
1424    visibility: hidden;
1425  }
1426
1427  .dmDesktopBody:not(.editGrid) .dmNewParagraph[data-anim-desktop]:not([data-anim-desktop='none']), .dmDesktopBody:not(.editGrid) .dmNewParagraph[data-anim-extended] {
1428    visibility: hidden !important;
1429  }
1430
1431  #dmRoot:not(.editGrid) .flex-element [data-anim-extended] {
1432    visibility: hidden;
1433  }
1434
1435</style>
1436
1437
1438
1439
1440<style id="fontFallbacks">
1441    @font-face {
1442  font-family: "Playfair Display Fallback";
1443  src: local('Arial');
1444  ascent-override: 106.3701%;
1445  descent-override: 24.6755%;
1446  size-adjust: 101.7204%;
1447  line-gap-override: 0%;
1448 }@font-face {
1449  font-family: "Montserrat Fallback";
1450  src: local('Arial');
1451  ascent-override: 84.9466%;
1452  descent-override: 22.0264%;
1453  size-adjust: 113.954%;
1454  line-gap-override: 0%;
1455 }@font-face {
1456  font-family: "Poppins Fallback";
1457  src: local('Arial');
1458  ascent-override: 92.326%;
1459  descent-override: 30.7753%;
1460  line-gap-override: 8.793%;
1461  size-adjust: 113.7274%;
1462}@font-face {
1463  font-family: "DM Sans Fallback";
1464  src: local('Arial');
1465  ascent-override: 94.3696%;
1466  descent-override: 29.4905%;
1467  size-adjust: 105.1186%;
1468  line-gap-override: 0%;
1469 }
1470</style>
1471
1472
1473<!-- End render the required css and JS in the head section -->
1474
1475
1476
1477
1478
1479
1480
1481
1482<meta property="og:type" content="website">
1483<meta property="og:url" content="https://www.hancelot.be/room-detail/charme-sup-rieur-kamer">
1484
1485  <title>
1486    Charmehotel Hancelot | Gent
1487  </title>
1488  <meta name="description" content="Charme Hotel Hancelot is centraal gelegen vlakbij het mooie Zuidpark en op 15 minuten wandelen van het Belfort en de Sint-Baafskathedraal. "/>
1489
1490  <meta name="twitter:card" content="summary"/>
1491  <meta name="twitter:title" content="Charmehotel Hancelot | Gent"/>
1492  <meta name="twitter:description" content="Charme Hotel Hancelot is centraal gelegen vlakbij het mooie Zuidpark en op 15 minuten wandelen van het Belfort en de Sint-Baafskathedraal. "/>
1493  <meta name="twitter:image" content="https://le-de.cdn-website.com/ea0190f4896547fd8e65f9c711a88618/dms3rep/multi/opt/hancelot-hotel-gent-by-rudyroan-2-9-groot-1920w.jpg"/>
1494  <meta property="og:description" content="Charme Hotel Hancelot is centraal gelegen vlakbij het mooie Zuidpark en op 15 minuten wandelen van het Belfort en de Sint-Baafskathedraal. "/>
1495  <meta property="og:title" content="Charmehotel Hancelot | Gent"/>
1496  <meta property="og:image" content="https://le-de.cdn-website.com/ea0190f4896547fd8e65f9c711a88618/dms3rep/multi/opt/hancelot-hotel-gent-by-rudyroan-2-9-groot-1920w.jpg"/>
1497
1498
1499
1500
1501<!-- SYS- RVVfUFJPRFVDVElPTg== -->
1502</head>
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524<body id="dmRoot" data-page-alias="room-detail/~page-item~"  class="dmRoot fix-mobile-scrolling flex-site dmResellerSite "
1525      style="padding:0;margin:0;"
1526      
1527     data-flex-site >
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543<!-- ========= Site Content ========= -->
1544<div id="dm" class='dmwr'>
1545    
1546    <div class="dm_wrapper -var5 null ">
1547         <div dmwrapped="true" id="1901957768" class="dm-home-page" themewaschanged="true"> <div dmtemplateid="FlexHeader" data-responsive-name="FlexLayout" class="runtime-module-container dm-bfs dm-layout-sec hasAnimations hasStickyHeader inMiniHeaderMode rows-1200 page-2b2463b3 page-50a8fda8 page-0678a957 page-d2362dfa page-8df86148 page-4e6aacca page-0aee2423 page-95d28383 page-6e561b90 page-6327052c page-b97c47c0 page-9e404a12 page-bbace6c9 page-2d95b3ad page-c4dd7e13 page-bd28da08 page-df1fbf19 page-14327688 page-e52b5b03 page-5f6f451c page-f4e03518 hamburger-reverse dmPageBody d-page-1716942098 inputs-css-clean dmDHeader" id="dm-outer-wrapper" data-page-class="1716942098" data-soch="true" data-background-parallax-selector=".dmHomeSection1, .dmSectionParallex"> <div id="dmStyle_outerContainer" class="dmOuter"> <div id="dmStyle_innerContainer" class="dmInner" data-auto="page-inner"> <div class="dmLayoutWrapper standard-var dmStandardDesktop"> <div id="site_content"> <div id="dmFlexHeaderContainer" class="flex_hfcontainer"> <div id="flex-header" data-variation-id="variation0" data-sticky="true" data-changeable-on-scroll="true" role="banner"> <div data-auto="flex-section" id="1990152846" data-flex-id="c093187e" data-layout-section="" data-page-element-type="section" data-page-element-id="1475755753"> <div class="flex-widgets-container" id="1140644136"></div> 
1548 <section id="1c1481e3" class="flex-element section" data-auto="flex-element-section"> <div id="603c3bb7" class="flex-element grid" data-auto="flex-element-grid" data-layout-grid=""> <div id="9dc5a074" class="flex-element group" data-auto="flex-element-group"> <div id="6fe0ae20" class="flex-element group" data-auto="flex-element-group"> <div id="widget_c5a" class="flex-element widget-wrapper" data-auto="flex-element-widget-wrapper" data-widget-type="image" data-keep-proportion="true" data-external-id="935299215"> <div class="imageWidget align-center" data-element-type="image" data-widget-type="image" id="935299215"><img src="https://le-de.cdn-website.com/ea0190f4896547fd8e65f9c711a88618/dms3rep/multi/opt/logo-hancelot-wit-c03ab282-1920w.webp" alt="" id="1318225934" class="" width="210" height="165" data-dm-image-path="https://de.cdn-website.com/ea0190f4896547fd8e65f9c711a88618/dms3rep/multi/logo-hancelot-wit-c03ab282.webp" onerror="handleImageLoadError(this)"/></div> 
1549</div> 
1550</div> 
1551 <div id="780d21df" class="flex-element group" data-auto="flex-element-group" data-hidden-on-tablet="" data-hidden-on-mobile=""> <div id="23d5f850" class="flex-element widget-wrapper" data-auto="flex-element-widget-wrapper" data-widget-type="ONELinksMenu" data-hidden-on-tablet="" data-hidden-on-mobile="" data-external-id="1198691314"> <nav class="u_1198691314 effect-bottom main-navigation unifiednav dmLinksMenu" data-auto="links-menu" role="navigation" layout-main="horizontal_nav_layout_1" layout-sub="submenu_horizontal_1" data-show-vertical-sub-items="HOVER" id="1198691314" dmle_extension="onelinksmenu" data-element-type="onelinksmenu" data-logo-src="" alt="" data-nav-structure="HORIZONTAL" wr="true" icon="true" surround="true" adwords="" navigation-id="unifiedNav"> <ul role="menubar" class="unifiednav__container unav-top  " data-auto="navigation-pages"> <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/" class="unifiednav__item unav-item unav-top-item  dmUDNavigationItem_00  " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text="Home" data-auto="page-text-style">Home<span class="icon icon-angle-down"></span> 
1552</span> 
1553</a> 
1554</li> 
1555 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/#OurStory" class="unifiednav__item unav-item unav-top-item  dmUDNavigationItem_01010144992  " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text="Ons verhaal" data-auto="page-text-style">Ons verhaal<span class="icon icon-angle-down"></span> 
1556</span> 
1557</a> 
1558</li> 
1559 <li role="menuitem" aria-haspopup="true" aria-expanded="false" data-sub-nav-menu="true" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/#Rooms" class="unifiednav__item unav-item unav-top-item  dmUDNavigationItem_010101716650  unifiednav__item_has-sub-nav" target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text="Kamers" data-auto="page-text-style">Kamers<span class="icon icon-angle-down"></span> 
1560</span> 
1561</a> 
1562 <ul role="menu" class="unifiednav__container unifiednav__container_sub-nav unav-sub" data-depth="0" data-auto="sub-pages"> <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="1"> <a href="/room-detail/charme-kamer" class="unifiednav__item unav-item     " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text="Charme kamer" data-auto="page-text-style">Charme kamer<span class="icon icon-angle-right"></span> 
1563</span> 
1564</a> 
1565</li> 
1566 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="1"> <a href="/room-detail/charme-deluxe-kamer" class="unifiednav__item unav-item     " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text="Charme Deluxe kamer" data-auto="page-text-style">Charme Deluxe kamer<span class="icon icon-angle-right"></span> 
1567</span> 
1568</a> 
1569</li> 
1570 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="1"> <a href="/room-detail/charme-sup-rieur-kamer" class="unifiednav__item unav-item     " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text="Charme Supérieur kamer" data-auto="page-text-style">Charme Sup&eacute;rieur kamer<span class="icon icon-angle-right"></span> 
1571</span> 
1572</a> 
1573</li> 
1574</ul> 
1575</li> 
1576 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/#Gallery" class="unifiednav__item unav-item unav-top-item  dmUDNavigationItem_010101991312  " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text="Galerij" data-auto="page-text-style">Galerij<span class="icon icon-angle-down"></span> 
1577</span> 
1578</a> 
1579</li> 
1580 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/#Amenities" class="unifiednav__item unav-item unav-top-item  dmUDNavigationItem_010101704242  " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text="Voorzieningen" data-auto="page-text-style">Voorzieningen<span class="icon icon-angle-down"></span> 
1581</span> 
1582</a> 
1583</li> 
1584 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/#Localarea" class="unifiednav__item unav-item unav-top-item  dmUDNavigationItem_01010170706  " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text="Lokale omgeving" data-auto="page-text-style">Lokale omgeving<span class="icon icon-angle-down"></span> 
1585</span> 
1586</a> 
1587</li> 
1588 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/#Contact" class="unifiednav__item unav-item unav-top-item  dmUDNavigationItem_010101753446  " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text="Contact" data-auto="page-text-style">Contact<span class="icon icon-angle-down"></span> 
1589</span> 
1590</a> 
1591</li> 
1592</ul> 
1593</nav> 
1594</div> 
1595 <div id="widget_idl" class="flex-element widget-wrapper" data-auto="flex-element-widget-wrapper" data-widget-type="custom" data-external-id="219313090"> <div class="widget-4b77e2 u_219313090 dmCustomWidget" data-lazy-load="true" data-title="" id="219313090" dmle_extension="custom_extension" data-element-type="custom_extension" icon="false" surround="false" data-widget-id="4b77e2d743e44a28a7118c9b67456426" data-widget-version="18" data-widget-config="eyJidG5MaW5rIjp7InZhbHVlIjoiIyIsInR5cGUiOiJhbmNob3IiLCJocmVmIjoiIyIsInJhd191cmwiOiIvc2l0ZS8yMDBkMjY2YzM4OGQ0MDI0YTVjZTc0ODQ4NTQwODBmOT9uZWU9dHJ1ZSZlZD10cnVlJnNob3dPcmlnaW5hbD10cnVlJnByZXZpZXc9dHJ1ZSZkbV90cnlfbW9kZT10cnVlJmRtX2NoZWNrU3luYz0xIn0sImJ0bkxhYmVsIjoiQm9layBudSJ9">
1595 <a value="#" type="anchor" href="#" raw_url="/site/200d266c388d4024a5ce7484854080f9?nee=true&ed=true&showOriginal=true&preview=true&dm_try_mode=true&dm_checkSync=1"> <div class="dmWidget book-btn"> <span class="text">Boek nu</span> 
1596 <span class="iconBg"></span> 
1597</div> 
1598</a> 
1599</div> 
1600</div> 
1601</div> 
1602 <div id="764397de" class="flex-element group" data-auto="flex-element-group" data-hidden-on-desktop=""> <div id="00ca91b4" class="flex-element widget-wrapper" data-auto="flex-element-widget-wrapper" data-widget-type="hamburgerButton" data-external-id="1998777521"> <button class="hamburgerButton" data-element-type="hamburgerButton" id="1998777521" aria-controls="hamburger-drawer" aria-expanded="false" aria-label="Open menu"> <svg width="100pt" height="100pt" version="1.1" viewbox="0 0 100 100" xmlns="http://www.w3.org/2000/svg" id="1555668457"> <path d="m3.6172 10.754h-0.050782c-1.9727 0-3.5703 1.5977-3.5703 3.5703 0 1.9727 1.5977 3.5703 3.5703 3.5703h0.054688 92.758 0.050782c1.9727 0 3.5703-1.5977 3.5703-3.5703 0-1.9727-1.5977-3.5703-3.5703-3.5703h-0.054688zm0 35.676h-0.050782c-1.9727 0-3.5703 1.5977-3.5703 3.5703s1.5977 3.5703 3.5703 3.5703h0.054688 92.758 0.050782c1.9727 0 3.5703-1.5977 3.5703-3.5703s-1.5977-3.5703-3.5703-3.5703h-0.054688zm0 35.68h-0.050782c-1.9727 0-3.5703 1.5977-3.5703 3.5703 0 1.9727 1.5977 3.5703 3.5703 3.5703h0.054688 92.758 0.050782c1.9727 0 3.5703-1.5977 3.5703-3.5703 0-1.9727-1.5977-3.5703-3.5703-3.5703h-0.054688z"></path> 
1603</svg> 
1604</button> 
1605</div> 
1606</div> 
1607 <div id="8258bb2f" class="flex-element group" data-auto="flex-element-group"> <div id="40e42c37" class="flex-element widget-wrapper" data-auto="flex-element-widget-wrapper" data-widget-type="multilingual" data-external-id="1172712003"> <div id="1172712003" class="multilingualWidget dropdown flag-only" data-auto="multilingual-widget" dmle_extension="multilingual" data-element-type="multilingual" data-display="dropdown" icon="false" surround="false"> <div class="desktopMultilingual"> <div class="language current-language" data-auto="multilingual-current-language"> <a href="/room-detail/charme-sup-rieur-kamer" data-disable-ajax-navigation="true"><img src="https://dd-cdn.multiscreensite.com/flags/flags_iso/32/nl.png" alt="Nederlands" data-code="" onerror="handleImageLoadError(this)"/> <span class="name">Nederlands</span> 
1608 <span class="short-label">nl</span> 
1609 <div class="dm-icon dm-icon-chevron-down"></div> 
1610</a> 
1611</div> 
1612 <div class="language other-languages" data-auto="multilingual-other-languages"> <a href="/fr/room-detail/chambre-charme" data-code="" data-disable-ajax-navigation="true"><img src="https://dd-cdn.multiscreensite.com/flags/flags_iso/32/fr.png" alt="Français" onerror="handleImageLoadError(this)"/> <span class="name">Fran&ccedil;ais</span> 
1613 <span class="short-label">fr</span> 
1614</a> 
1615 <a href="/en/room-detail/charme-room" data-code="" data-disable-ajax-navigation="true"><img src="https://dd-cdn.multiscreensite.com/flags/flags_iso/32/us.png" alt="English" onerror="handleImageLoadError(this)"/> <span class="name">English</span> 
1616 <span class="short-label">en</span> 
1617</a> 
1618</div> 
1619</div> 
1620</div> 
1621</div> 
1622</div> 
1623</div> 
1624</div> 
1625</section> 
1626</div> 
1627</div> 
1628 <div id="hamburger-drawer" class="hamburger-drawer layout-drawer" layout="5ff40d2f36ae4e5ea1bc96b2e2fcf67e===header" data-origin="side-reverse"> <div data-layout-section="" data-auto="flex-section" id="1558513594" data-flex-id="18f5ea00"> <div class="flex-widgets-container" id="1554675836"></div> 
1629 <section id="f6054f97" class="flex-element section" data-auto="flex-element-section"> <div id="ef8b5b8a" class="flex-element grid" data-auto="flex-element-grid" data-layout-grid=""> <div id="a1f8711f" class="flex-element group" data-auto="flex-element-group"> <div id="9d047ce9" class="flex-element group" data-auto="flex-element-group"> <div id="12a003a5" class="flex-element widget-wrapper" data-auto="flex-element-widget-wrapper" data-widget-type="hamburgerButton" data-external-id="1717245942"> <button class="hamburgerButton" data-element-type="hamburgerButton" id="1717245942" aria-controls="hamburger-drawer" aria-expanded="false" aria-label="Close menu"> <svg width="100pt" height="100pt" version="1.1" viewbox="0 0 100 100" xmlns="http://www.w3.org/2000/svg" id="1463788326"> <path d="m82 87.883c1.625 1.625 4.2656 1.625 5.8906 0 1.6289-1.6289 1.6289-4.2656 0-5.8945l-32.414-32.41 32.406-32.406c1.6289-1.625 1.6289-4.2656
1630 0-5.8906-1.6289-1.6289-4.2656-1.6289-5.8906 0l-32.406 32.402-32.406-32.406c-1.625-1.625-4.2656-1.625-5.8906 0-1.6289 1.6289-1.6289 4.2656 0
1631 5.8945l32.402 32.406-32.41 32.414c-1.6289 1.625-1.6289 4.2617 0 5.8906 1.625 1.6289 4.2656 1.6289 5.8906 0l32.414-32.414z" fill-rule="evenodd"></path> 
1632</svg> 
1633</button> 
1634</div> 
1635</div> 
1636</div> 
1637</div> 
1638</section> 
1639</div> 
1640 <div data-auto="flex-section" id="1099442592" data-flex-id="63a049320d35b55b4ef2a372" data-layout-section=""> <div class="flex-widgets-container" id="1247649854"></div> 
1641 <section id="63a049320d35b55b4ef2a373" class="flex-element section" data-auto="flex-element-section"> <div id="63a049320d35b55b4ef2a376" class="flex-element grid" data-auto="flex-element-grid" data-layout-grid=""> <div id="63a049320d35b55b4ef2a377" class="flex-element group" data-auto="flex-element-group"> <div id="63a049320d35b55b4ef2a374" class="flex-element group" data-auto="flex-element-group"> <div id="63a049ca0d35b55b4ef2a5c3" class="flex-element widget-wrapper" data-auto="flex-element-widget-wrapper" data-widget-type="ONELinksMenu" data-external-id="1998592992"> <nav class="u_1998592992 effect-bottom2 main-navigation unifiednav dmLinksMenu" data-auto="links-menu" role="navigation" layout-main="vertical_nav_layout_2" layout-sub="" data-show-vertical-sub-items="HIDE" id="1998592992" dmle_extension="onelinksmenu" data-element-type="onelinksmenu" data-logo-src="" alt="" data-nav-structure="VERTICAL" wr="true" icon="true" surround="true" adwords="" navigation-id="unifiedNav"> <ul role="menubar" class="unifiednav__container unav-top  " data-auto="navigation-pages"> <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/" class="unifiednav__item unav-item unav-top-item  dmUDNavigationItem_00  " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text="Home" data-auto="page-text-style">Home<span class="icon icon-angle-down"></span> 
1642</span> 
1643</a> 
1644</li> 
1645 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/#OurStory" class="unifiednav__item unav-item unav-top-item  dmUDNavigationItem_01010144992  " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text="Ons verhaal" data-auto="page-text-style">Ons verhaal<span class="icon icon-angle-down"></span> 
1646</span> 
1647</a> 
1648</li> 
1649 <li role="menuitem" aria-haspopup="true" aria-expanded="false" data-sub-nav-menu="true" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/#Rooms" class="unifiednav__item unav-item unav-top-item  dmUDNavigationItem_010101716650  unifiednav__item_has-sub-nav" target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text="Kamers" data-auto="page-text-style">Kamers<span class="icon icon-angle-down"></span> 
1650</span> 
1651</a> 
1652 <ul role="menu" class="unifiednav__container unifiednav__container_sub-nav unav-sub" data-depth="0" data-auto="sub-pages"> <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="1"> <a href="/room-detail/charme-kamer" class="unifiednav__item unav-item     " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text="Charme kamer" data-auto="page-text-style">Charme kamer<span class="icon icon-angle-right"></span> 
1653</span> 
1654</a> 
1655</li> 
1656 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="1"> <a href="/room-detail/charme-deluxe-kamer" class="unifiednav__item unav-item     " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text="Charme Deluxe kamer" data-auto="page-text-style">Charme Deluxe kamer<span class="icon icon-angle-right"></span> 
1657</span> 
1658</a> 
1659</li> 
1660 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="1"> <a href="/room-detail/charme-sup-rieur-kamer" class="unifiednav__item unav-item     " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text="Charme Supérieur kamer" data-auto="page-text-style">Charme Sup&eacute;rieur kamer<span class="icon icon-angle-right"></span> 
1661</span> 
1662</a> 
1663</li> 
1664</ul> 
1665</li> 
1666 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/#Gallery" class="unifiednav__item unav-item unav-top-item  dmUDNavigationItem_010101991312  " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text="Galerij" data-auto="page-text-style">Galerij<span class="icon icon-angle-down"></span> 
1667</span> 
1668</a> 
1669</li> 
1670 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/#Amenities" class="unifiednav__item unav-item unav-top-item  dmUDNavigationItem_010101704242  " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text="Voorzieningen" data-auto="page-text-style">Voorzieningen<span class="icon icon-angle-down"></span> 
1671</span> 
1672</a> 
1673</li> 
1674 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/#Localarea" class="unifiednav__item unav-item unav-top-item  dmUDNavigationItem_01010170706  " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text="Lokale omgeving" data-auto="page-text-style">Lokale omgeving<span class="icon icon-angle-down"></span> 
1675</span> 
1676</a> 
1677</li> 
1678 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/#Contact" class="unifiednav__item unav-item unav-top-item  dmUDNavigationItem_010101753446  " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text="Contact" data-auto="page-text-style">Contact<span class="icon icon-angle-down"></span> 
1679</span> 
1680</a> 
1681</li> 
1682</ul> 
1683</nav> 
1684</div> 
1685</div> 
1686</div> 
1687</div> 
1688</section> 
1689</div> 
1690 <div data-auto="flex-section" id="1029527021" data-flex-id="6406026c90e1521f6ecb0eca" data-layout-section=""> <div class="flex-widgets-container" id="1659590659"></div> 
1691 <section id="6406026c90e1521f6ecb0ec9" class="flex-element section" data-auto="flex-element-section"> <div id="6406026c90e1521f6ecb0ecb" class="flex-element grid" data-auto="flex-element-grid" data-layout-grid=""> <div id="6406026c90e1521f6ecb0ecc" class="flex-element group" data-auto="flex-element-group"> <div id="6406026c90e1521f6ecb0ecd" class="flex-element group" data-auto="flex-element-group"> <div id="widget_s4l" class="flex-element widget-wrapper" data-auto="flex-element-widget-wrapper" data-widget-type="paragraph" data-external-id="1287536004"> <div class="dmNewParagraph u_1287536004" data-element-type="paragraph" data-version="5" id="1287536004" style=""> <h4 class="m-text-align-left" style="line-height: 2;"> <span style="color:var(--color_1);display:unset;">Neem contact op</span> 
1692</h4> 
1693</div> 
1694</div> 
1695 <div id="widget_u7g" class="flex-element widget-wrapper" data-auto="flex-element-widget-wrapper" data-widget-type="paragraph" data-external-id="181630546"> <div class="dmNewParagraph u_181630546" data-element-type="paragraph" data-version="5" id="181630546" data-binding="W3siYmluZGluZ05hbWUiOiJ0ZXh0IiwidmFsdWUiOiJjb250ZW50X2xpYnJhcnkuZ2xvYmFsLnBob25lLnRlbGVwaG9uZSJ9XQ==" data-diy-text="">+32 3 201 49 30</div> 
1696</div> 
1697 <div id="widget_3i7" class="flex-element widget-wrapper" data-auto="flex-element-widget-wrapper" data-widget-type="paragraph" data-external-id="328162913"> <div class="dmNewParagraph u_328162913" data-element-type="paragraph" data-version="5" id="328162913" data-binding="W3siYmluZGluZ05hbWUiOiJ0ZXh0IiwidmFsdWUiOiJjb250ZW50X2xpYnJhcnkuZ2xvYmFsLmVtYWlsLmVtYWlsIn1d" data-diy-text="">[email protected]</div> 
1698</div> 
1699</div> 
1700</div> 
1701</div> 
1702</section> 
1703</div> 
1704</div> 
1705 <div class="layout-drawer-overlay" id="layout-drawer-overlay"></div> 
1706</div> 
1707 <div dmwrapped="true" id="dmFirstContainer" class="dmBody u_dmStyle_template_room-detail/~page-item~ dm-home-page" themewaschanged="true"> <div id="allWrapper" class="allWrapper" data-auto="all-wrapper"><!-- navigation placeholders -->
1707 <div id="dm_content" class="dmContent" role="main"> <div dm:templateorder="170" class="dmHomeRespTmpl mainBorder dmRespRowsWrapper dmFullRowRespTmpl" id="1716942098"> <div data-auto="flex-section" id="1507551858" data-flex-id="63bd85219866cc362278151e" data-layout-section=""> <div class="flex-widgets-container" id="1865266723"></div> 
1708 <section id="63bd85219866cc362278151d" class="flex-element section" data-auto="flex-element-section"> <div id="63bd85219866cc362278151f" class="flex-element grid" data-auto="flex-element-grid" data-layout-grid=""> <div id="63bd85219866cc3622781520" class="flex-element group" data-auto="flex-element-group"> <div id="63bd85219866cc3622781521" class="flex-element group" data-auto="flex-element-group"> <div id="widget_mdk" class="flex-element widget-wrapper" data-auto="flex-element-widget-wrapper" data-widget-type="custom" data-external-id="3356754003"> <div class="widget-97a95c u_3356754003 dmCustomWidget" data-lazy-load="true" data-title="" id="3356754003" dmle_extension="custom_extension" data-element-type="custom_extension" icon="false" surround="false" data-widget-id="97a95c369c4c403d92d29e42348fa217" data-widget-version="33" data-widget-config="eyJndWVzdHNJY29uRGVzaWduIjpudWxsLCJzaG93TGVzc1RleHQiOiJNaW5kZXIgd2VlcmdldmVuIiwiZ3Vlc3RzRmllbGQiOiJndWVzdHMiLCJuYW1lRmllbGQiOiJtYWluX3RpdGxlX2hlcm8iLCJjb2xsZWN0aW9uRmllbGRzIjpudWxsLCJ1cmxGaWVsZCI6InBhZ2VfaXRlbV91cmwiLCJwcmV2aWV3TW9kZSI6ZmFsc2UsImNvbGxlY3Rpb25OYW1lIjoiUm9vbXMiLCJib29raW5nTGluayI6eyJocmVmIjoiIiwidGFyZ2V0IjoiX2JsYW5rIiwidHlwZSI6ImV4dGVybmFsIn0sImRlc2NGaWVsZCI6Imhlcm9fZGVzY3JpcHRpb24iLCJnYWxsZXJ5RGVzaWduIjpudWxsLCJzaG93TW9yZVRleHQiOiJNZWVyIHdlZXJnZXZlbiIsImltYWdlc0ZpZWxkIjoiaW1hZ2VfZ2FsbGVyeSIsInByaWNlRmllbGQiOiJwcmljZSIsImJ1dHRvblVybEZpZWxkIjoiYnV0dG9uX2xpbmsiLCJtYWluSW1hZ2VGaWVsZCI6Imhlcm9faW1hZ2UiLCJib29raW5nQnRuRGVzaWduIjpudWxsLCJkZXNjTGluZXMiOiI1IiwiZGVzY3JpcHRpb25EZXNpZ24iOm51bGwsImFtZW5pdGllc0Rlc2lnbiI6bnVsbCwiYm9va2luZ0J0blRleHQiOiJCb2VrIG51Iiwicm9vbU5hbWVEZXNpZ24iOm51bGwsImFtZW5pdGllc0ZpZWxkIjoiZmVhdHVyZXMiLCJtYXhWaXNpYmxlVGFncyI6IjUiLCJtYWluSW1hZ2VEZXNpZ24iOm51bGx9"> <div class="room-details-widget"><!-- Loading state --> <div class="room-loading"> <div class="loading-spinner"></div> 
1709</div> 
1710<!-- Error state --> <div class="room-error" style="display:none;"> <p>Unable to load room details. Please check your collection settings.</p> 
1711</div> 
1712<!-- Main content --> <div class="room-content" style="display:none;"><!-- Top section: main image + info --> <div class="room-top"><!-- Main image --> <div class="room-main-image-wrap"><img class="room-main-image" src="" alt="Room image" onerror="handleImageLoadError(this)"/></div> 
1713<!-- Info panel --> <div class="room-info"> <h2 class="room-name"></h2> 
1714 <div class="room-meta"> <span class="room-guests-icon"> <svg class="guests-icon-svg" xmlns="http://www.w3.org/2000/svg" viewbox="0 0 24 24" width="16" height="16" fill="currentColor"> <path d="M16 11c1.66 0 2.99-1.34 2.99-3S17.66 5 16 5c-1.66 0-3 1.34-3 3s1.34 3 3 3zm-8 0c1.66 0 2.99-1.34 2.99-3S9.66 5 8 5C6.34 5 5 6.34 5 8s1.34 3 3 3zm0 2c-2.33 0-7 1.17-7 3.5V19h14v-2.5c0-2.33-4.67-3.5-7-3.5zm8 0c-.29 0-.62.02-.97.05 1.16.84 1.97 1.97 1.97 3.45V19h6v-2.5c0-2.33-4.67-3.5-7-3.5z"></path> 
1715</svg> 
1716</span> 
1717 <span class="room-guests-count"></span> 
1718</div> 
1719 <div class="room-description-wrap"> <div class="room-description"></div> 
1720 <button class="desc-show-more-btn" style="display:none;">Show more</button> 
1721 <button class="desc-show-less-btn" style="display:none;">Show less</button> 
1722</div> 
1723 <div class="room-amenities"> <div class="amenities-tags"></div> 
1724 <button class="show-more-btn" aria-label="Meer weergeven" style="display:none;">Meer weergeven</button> 
1725 <button class="show-less-btn" aria-label="Minder weergeven" style="display:none;">Minder weergeven</button> 
1726</div> 
1727 <div class="room-price-wrap" style="display:none;"> <span class="room-price-label">From</span> 
1728 <span class="room-price"></span> 
1729 <span class="room-price-unit">/ night</span> 
1730</div> 
1731 <div class="room-cta"> <a href="" target="_blank" type="external"> <div class="dmWidget room-book-btn"> <span class="text">Boek nu</span> 
1732 <span class="iconBg"></span> 
1733</div> 
1734</a> 
1735</div> 
1736</div> 
1737</div> 
1738<!-- Overflow section: description + amenities + price + CTA move here when text is too long --> <div class="room-overflow" style="display:none;"></div> 
1739<!-- Bottom gallery (hidden when only 1 image) --> <div class="room-gallery-section" style="display:none;"> <div class="room-gallery-track-wrap"> <div class="room-gallery-track"></div> 
1740</div> 
1741 <div class="room-gallery-nav"> <button class="gallery-prev" aria-label="Previous image"> <svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 24 24" width="20" height="20" fill="none" stroke="currentColor" stroke-width="2"> <polyline points="15 18 9 12 15 6"></polyline> 
1742</svg> 
1743</button> 
1744 <button class="gallery-next" aria-label="Next image"> <svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 24 24" width="20" height="20" fill="none" stroke="currentColor" stroke-width="2"> <polyline points="9 18 15 12 9 6"></polyline> 
1745</svg> 
1746</button> 
1747</div> 
1748</div> 
1749</div> 
1750<!-- Lightbox overlay --> <div class="gallery-lightbox" style="display:none;" aria-modal="true" role="dialog" aria-label="Image lightbox"> <div class="lightbox-backdrop"></div> 
1751 <div class="lightbox-content"> <button class="lightbox-close" aria-label="Close"> <svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round"> <line x1="18" y1="6" x2="6" y2="18"></line> 
1752 <line x1="6" y1="6" x2="18" y2="18"></line> 
1753</svg> 
1754</button> 
1755 <button class="lightbox-prev" aria-label="Previous image"> <svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round"> <polyline points="15 18 9 12 15 6"></polyline> 
1756</svg> 
1757</button> 
1758<img class="lightbox-img" src="" alt="Room photo" onerror="handleImageLoadError(this)"/> <button class="lightbox-next" aria-label="Next image"> <svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round"> <polyline points="9 18 15 12 9 6"></polyline> 
1759</svg> 
1760</button> 
1761 <div class="lightbox-counter"></div> 
1762</div> 
1763</div> 
1764</div> 
1765</div> 
1766</div> 
1767</div> 
1768</div> 
1769</div> 
1770</section> 
1771</div> 
1772</div> 
1773</div> 
1774</div> 
1775</div> 
1776 <div class="dmFooterContainer flex_hfcontainer"> <div id="flex-footer" role="contentinfo"> <div data-auto="flex-section" id="1755561873" data-flex-id="63da2bddeae8da42b2353671" data-layout-section=""> <div class="flex-widgets-container" id="1245219930"></div> 
1777 <section id="63da2bddeae8da42b2353670" class="flex-element section" data-auto="flex-element-section"> <div id="63da2bddeae8da42b2353672" class="flex-element grid" data-auto="flex-element-grid" data-layout-grid=""> <div id="63da2bddeae8da42b2353673" class="flex-element group" data-auto="flex-element-group"> <div id="63da2bf2eae8da42b23538a2" class="flex-element group" data-auto="flex-element-group"> <div id="group_diu" class="flex-element group" data-auto="flex-element-group"> <div id="widget_5co" class="flex-element widget-wrapper" data-auto="flex-element-widget-wrapper" data-widget-type="paragraph" data-external-id="1138762217"> <div class="dmNewParagraph" data-element-type="paragraph" data-version="5" id="1138762217" style=""> <h6> <span style="display:unset;">ADRES</span> 
1778</h6> 
1779</div> 
1780</div> 
1781 <div id="63da2bf2eae8da42b23538a3" class="flex-element widget-wrapper" data-auto="flex-element-widget-wrapper" data-widget-type="paragraph" data-external-id="1721508574"> <div class="dmNewParagraph u_1721508574" data-element-type="paragraph" data-version="5" id="1721508574" style="" new-inline-bind-applied="true" data-diy-text="" data-binding="W3siYmluZGluZ05hbWUiOiJ0ZXh0IiwidmFsdWUiOiJjb250ZW50X2xpYnJhcnkuZ2xvYmFsIn1d"><p class="size-14 t-size-14 m-size-14" id="1792717824"><span style="color:rgb(249, 245, 241);font-weight:300;display:initial;font-family:'DM Sans', 'DM Sans Fallback';" class="font-size-14 t-font-size-14 m-font-size-14" id="1111161304"><span class="inline-data-binding" data-encoded-value="R2FzdG9uIENyb21tZW5sYWFuLCA5MDUwIEdlbnQsIEVhc3QgRmxhbmRlcnMsIEJlbGdpdW0=" data-inline-binding="content_library.global" data-inline-binding-encoded="Y29udGVudF9saWJyYXJ5Lmdsb2JhbA==" id="1660037462">Vijfwindgatenstraat 19, Gent, 9000, BE</span></span></p></div> 
1782</div> 
1783</div> 
1784 <div id="1b227e4d" class="flex-element group" data-auto="flex-element-group"> <div id="464459a5" class="flex-element widget-wrapper" data-auto="flex-element-widget-wrapper" data-widget-type="paragraph" data-external-id="1485897579"> <div class="dmNewParagraph" data-element-type="paragraph" data-version="5" id="1485897579" style=""> <h6> <span style="display:unset;">telefoon</span> 
1785</h6> 
1786</div> 
1787</div> 
1788 <div id="674d2422" class="flex-element widget-wrapper" data-auto="flex-element-widget-wrapper" data-widget-type="paragraph" data-external-id="1577315101"> <div class="dmNewParagraph u_1577315101" data-element-type="paragraph" data-version="5" id="1577315101" data-diy-text="" data-binding="W3siYmluZGluZ05hbWUiOiJ0ZXh0IiwidmFsdWUiOiJjb250ZW50X2xpYnJhcnkuZ2xvYmFsLnBob25lLnRlbGVwaG9uZSJ9XQ==" style="">+32 3 201 49 30</div> 
1789</div> 
1790</div> 
1791 <div id="a932d2eb" class="flex-element group" data-auto="flex-element-group"> <div id="9409844f" class="flex-element widget-wrapper" data-auto="flex-element-widget-wrapper" data-widget-type="paragraph" data-external-id="1109642522"> <div class="dmNewParagraph" data-element-type="paragraph" data-version="5" id="1109642522" style=""> <h6 class="text-align-left"> <span style="display:unset;">e-mail</span> 
1792</h6> 
1793</div> 
1794</div> 
1795 <div id="829f79c8" class="flex-element widget-wrapper" data-auto="flex-element-widget-wrapper" data-widget-type="paragraph" data-external-id="1121428134"> <div class="dmNewParagraph u_1121428134" data-element-type="paragraph" data-version="5" id="1121428134" data-diy-text="" data-binding="W3siYmluZGluZ05hbWUiOiJ0ZXh0IiwidmFsdWUiOiJjb250ZW50X2xpYnJhcnkuZ2xvYmFsLmVtYWlsLmVtYWlsIn1d" style="">[email protected]</div> 
1796</div> 
1797</div> 
1798</div> 
1799 <div id="group_5mc" class="flex-element group" data-auto="flex-element-group"> <div id="widget_ufn" class="flex-element widget-wrapper" data-auto="flex-element-widget-wrapper" data-widget-type="divider" data-external-id="2595395054"> <div class="dmDividerWrapper clearfix u_2595395054" data-element-type="dDividerId" data-layout="divider-style-1" data-widget-version="2" id="2595395054"><hr class="dmDivider" style="border-width:2px; border-top-style:solid; color:grey;" id="1229337926"/></div> 
1800</div> 
1801 <div id="group_vom" class="flex-element group" data-auto="flex-element-group"> <div id="c0504b3a" class="flex-element widget-wrapper" data-auto="flex-element-widget-wrapper" data-widget-type="custom" data-external-id="1056813044"> <div class="widget-1f5975 u_1056813044 dmCustomWidget" data-lazy-load="" data-title="" id="1056813044" dmle_extension="custom_extension" data-element-type="custom_extension" data-binding="W3siYmluZGluZ05hbWUiOiJjb3B5cmlnaHRUZXh0IiwidmFsdWUiOiJjb250ZW50X2xpYnJhcnkuZ2xvYmFsLmNvbXBhbnlfbmFtZSJ9XQ==" icon="false" surround="false" data-widget-id="1f5975986930429f819d4cd2154b5c4a" data-widget-version="25" data-widget-config="eyJyZXZlcnNlRmxhZyI6dHJ1ZSwiY29weXJpZ2h0VGV4dCI6IkNoYXJtZWhvdGVsIEhhbmNlbG90In0="> <div class="copyright"> <div>Charmehotel Hancelot</div> 
1802 <div>&nbsp;&copy; 2026</div> 
1803</div> 
1804</div> 
1805</div> 
1806 <div id="63da2bfbeae8da42b2353a44" class="flex-element widget-wrapper" data-auto="flex-element-widget-wrapper" data-widget-type="socialhub" data-external-id="1069507160"> <div class="align-center text-align-center u_1069507160 dmSocialHub gapSpacing" id="1069507160" dmle_extension="social_hub" data-element-type="social_hub" data-binding="W3siYmluZGluZ05hbWUiOiJzb2NpYWwiLCJ2YWx1ZSI6ImNvbnRlbn
1806RfbGlicmFyeS5nbG9iYWwuc29jaWFsIn1d" wr="true" networks="" icon="true" surround="true" adwords=""> <div class="socialHubWrapper"> <div class="socialHubInnerDiv " data-auto="social-hub-inner"> <a href="https://facebook.com/hancelotgent/" target="_blank" dm_dont_rewrite_url="true" aria-label="facebook" onclick="dm_gaq_push_event &amp;&amp; dm_gaq_push_event(&apos;socialLink&apos;, &apos;click&apos;, &apos;Facebook&apos;)"> <span class="dmSocialFacebook dm-social-icons-facebook oneIcon socialHubIcon style9" aria-hidden="true" data-hover-effect="opacity"></span> 
1807</a> 
1808 <a href="https://instagram.com/hotelhancelotgent/" target="_blank" dm_dont_rewrite_url="true" aria-label="instagram" onclick="dm_gaq_push_event &amp;&amp; dm_gaq_push_event(&apos;socialLink&apos;, &apos;click&apos;, &apos;Instagram&apos;)"> <span class="dmSocialInstagram dm-social-icons-instagram oneIcon socialHubIcon style9" aria-hidden="true" data-hover-effect="opacity"></span> 
1809</a> 
1810</div> 
1811</div> 
1812</div> 
1813</div> 
1814 <div id="widget_iar" class="flex-element widget-wrapper" data-auto="flex-element-widget-wrapper" data-widget-type="ONELinksMenu" data-external-id="110138473"> <nav class="effect-bottom2 u_110138473 main-navigation unifiednav dmLinksMenu" data-auto="links-menu" role="navigation" layout-main="horizontal_nav_layout_1" layout-sub="submenu_horizontal_1" data-show-vertical-sub-items="HOVER" id="110138473" dmle_extension="onelinksmenu" data-element-type="onelinksmenu" data-logo-src="" alt="" data-nav-structure="HORIZONTAL" wr="true" icon="true" surround="true" adwords="" navigation-id="unifiedNav"> <ul role="menubar" class="unifiednav__container unav-top  " data-auto="navigation-pages"> <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/privacy-policy" class="unifiednav__item unav-item unav-top-item    " target="" data-target-page-alias="privacy-policy"> <span class="nav-item-text " data-link-text="Privacybeleid" data-auto="page-text-style">Privacybeleid<span class="icon icon-angle-down" data-hidden-on-mobile="" data-hidden-on-desktop="" data-hidden-on-tablet=""></span> 
1815</span> 
1816</a> 
1817</li> 
1818 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/cookie-policy" class="unifiednav__item unav-item unav-top-item    " target="" data-target-page-alias="cookie-policy"> <span class="nav-item-text " data-link-text="Cookiebeleid" data-auto="page-text-style">Cookiebeleid<span class="icon icon-angle-down" data-hidden-on-mobile="" data-hidden-on-desktop="" data-hidden-on-tablet=""></span> 
1819</span> 
1820</a> 
1821</li> 
1822 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/terms-and-conditions" class="unifiednav__item unav-item unav-top-item    " target="" data-target-page-alias="terms-and-conditions"> <span class="nav-item-text " data-link-text="Algemene voorwaarden" data-auto="page-text-style">Algemene voorwaarden<span class="icon icon-angle-down" data-hidden-on-mobile="" data-hidden-on-desktop="" data-hidden-on-tablet=""></span> 
1823</span> 
1824</a> 
1825</li> 
1826 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/reservation-conditions" class="unifiednav__item unav-item unav-top-item    " target="" data-target-page-alias="reservation-conditions"> <span class="nav-item-text " data-link-text="Reserveringsvoorwaarden" data-auto="page-text-style">Reserveringsvoorwaarden<span class="icon icon-angle-down" data-hidden-on-mobile="" data-hidden-on-desktop="" data-hidden-on-tablet=""></span> 
1827</span> 
1828</a> 
1829</li> 
1830</ul> 
1831</nav> 
1832</div> 
1833</div> 
1834</div> 
1835</div> 
1836</div> 
1837</section> 
1838</div> 
1839</div> 
1840</div> 
1841 <div id="dmFlexStickyContainer" class="flex_hfcontainer"> <div id="flex-sticky"> <div data-layout-section="" data-auto="flex-section" id="1503768182" data-flex-id="6394be04"> <div class="flex-widgets-container" id="1062069677"></div> 
1842 <section id="e53ab3e1" class="flex-element section" data-auto="flex-element-section"> <div id="8fe713cc" class="flex-element grid" data-auto="flex-element-grid" data-layout-grid=""> <div id="d18fcf34" class="flex-element group" data-auto="flex-element-group"> <div id="0a0a3590" class="flex-element group" data-auto="flex-element-group"> <div id="1d55dab4" class="flex-element inner-grid" data-auto="flex-element-inner-grid"></div> 
1843</div> 
1844</div> 
1845</div> 
1846</section> 
1847</div> 
1848</div> 
1849</div> 
1850</div> 
1851</div> 
1852</div> 
1853</div> 
1854</div> 
1855</div> 
1856
1857    </div>
1858</div>
1859<!--  Add full CSS and Javascript before the close tag of the body if needed -->
1860 <style data-page-uuid="5431a258100041e39f014ded47698105" data-is-header="true" id="grid-styles-mobile_implicit-flex-header-5431a258100041e39f014ded47698105">@media (max-width: 767px) {
1861}</style> 
1862 <style data-page-uuid="a51b7147dadc4a27bf39ba009d474637" id="grid-styles-mobile-63bd85219866cc362278151e-a51b7147dadc4a27bf39ba009d474637">@media (max-width: 767px) {
1863    
1864#\36 3bd85219866cc3622781521 {
1865    min-height: 80px;
1866    align-items: center;
1867    width: 100%;
1868}
1869    
1870#\36 3bd85219866cc3622781520 {
1871    min-height: 0;
1872    flex-direction: column;
1873    padding-left: 4%;
1874    padding-right: 4%;
1875    flex-wrap: nowrap;
1876}
1877    
1878#widget_mdk {
1879    height: 846px;
1880}
1881}</style> 
1882 <style data-page-uuid="5431a258100041e39f014ded47698105" data-is-header="true" id="grid-styles-mobile-flex-footer-5431a258100041e39f014ded47698105">@media (max-width: 767px) {
1883    
1884#flex-footer {
1885}
1886}</style> 
1887 <style data-page-uuid="5431a258100041e39f014ded47698105" data-is-header="true" id="grid-styles-mobile-flex-header-5431a258100041e39f014ded47698105">@media (max-width: 767px) {
1888    
1889#flex-header {
1890    
1891}
1892}</style> 
1893 <style data-page-uuid="5431a258100041e39f014ded47698105" data-is-header="true" id="grid-styles-mobile-c093187e-5431a258100041e39f014ded47698105">@media (max-width: 767px) {
1894    
1895#\39 dc5a074 {
1896    min-height: 0px;
1897    flex-direction: row;
1898    flex-wrap: nowrap;
1899    padding: 0px 0% 0px 0%;
1900}
1901    
1902#\37 80d21df {
1903    width: 2.13%;
1904    order: 0;
1905}
1906    
1907#\37 64397de {
1908    align-items: center;
1909    width: 48%;
1910    order: 2;
1911    min-height: 8px;
1912}
1913    
1914#\31 c1481e3 {
1915    margin: 0px 0% 0px 0%;
1916}
1917    
1918#\36 fe0ae20 {
1919    align-items: center;
1920    order: 1;
1921    width: 48%;
1922    min-height: 8px;
1923}
1924    
1925#\38 258bb2f {
1926    align-items: center;
1927    order: 3;
1928}
1929}</style> 
1930 <style data-page-uuid="5431a258100041e39f014ded47698105" data-is-header="true" id="grid-styles-mobile-18f5ea00-5431a258100041e39f014ded47698105">@media (max-width: 767px) {
1931    
1932#\39 d047ce9 {
1933    width: 100%;
1934    min-height: 62px;
1935    height: auto;
1936    padding-bottom: 6px;
1937}
1938    
1939#a1f8711f {
1940    min-height: unset;
1941    flex-direction: column;
1942    padding-left: 4%;
1943    padding-right: 4%;
1944    padding-bottom: 4%;
1945}
1946}</style> 
1947 <style data-page-uuid="5431a258100041e39f014ded47698105" data-is-header="true" id="grid-styles-mobile-63a049320d35b55b4ef2a372-5431a258100041e39f014ded47698105">@media (max-width: 767px) {
1948    
1949#\36 3a049320d35b55b4ef2a374 {
1950    min-height: 535px;
1951    justify-content: flex-start;
1952    padding-top: 16px;
1953    width: 100%;
1954    height: auto;
1955}
1956    
1957#\36 3a049320d35b55b4ef2a377 {
1958    min-height: unset;
1959    flex-direction: column;
1960    padding: 4% 4% 4% 4%;
1961}
1962    
1963#\36 3a049ca0d35b55b4ef2a5c3 {
1964    align-self: flex-start;
1965    margin-left: 0px;
1966    margin-right: 0px;
1967}
1968}</style> 
1969 <style data-page-uuid="5431a258100041e39f014ded47698105" data-is-header="true" id="grid-styles-mobile-6406026c90e1521f6ecb0eca-5431a258100041e39f014ded47698105">@media (max-width: 767px) {
1970    
1971#\36 406026c90e1521f6ecb0ecd {
1972    min-height: 206px;
1973    justify-content: center;
1974    padding-bottom: 16px;
1975    width: 100%;
1976    height: auto;
1977}
1978    
1979#\36 406026c90e1521f6ecb0ecc {
1980    min-height: unset;
1981    flex-direction: column;
1982    padding: 4% 4% 4% 4%;
1983}
1984    
1985#widget_s4l {
1986    margin-left: 0px;
1987    margin-right: 0px;
1988}
1989}</style> 
1990 <style data-page-uuid="5431a258100041e39f014ded47698105" data-is-header="true" id="grid-styles-mobile-63da2bddeae8da42b2353671-5431a258100041e39f014ded47698105">@media (max-width: 767px) {
1991    
1992#\36 3da2bddeae8da42b2353673 {
1993    min-height: 0;
1994    flex-direction: column;
1995    row-gap: 0px;
1996    flex-wrap: nowrap;
1997    padding: 8% 4% 8% 4%;
1998}
1999    
2000#\36 3da2bf2eae8da42b23538a2 {
2001    width: 100%;
2002    min-height: 80px;
2003    align-self: auto;
2004    order: 1;
2005    height: auto;
2006    column-gap: 4%;
2007    flex-direction: column;
2008    flex-wrap: nowrap;
2009}
2010    
2011#group_5mc {
2012    width: 100%;
2013    min-height: 80px;
2014    order: 2;
2015    height: auto;
2016}
2017    
2018#c0504b3a {
2019    width: auto;
2020}
2021    
2022#group_diu {
2023    margin-right: 0%;
2024    margin-left: 0%;
2025    width: 100%;
2026}
2027    
2028#\31 b227e4d {
2029    margin-right: 0%;
2030    margin-left: 0%;
2031    width: 100%;
2032}
2033    
2034#a932d2eb {
2035    margin-right: 0%;
2036    margin-left: 0%;
2037    width: 100%;
2038}
2039}</style> 
2040 <style data-page-uuid="5431a258100041e39f014ded47698105" data-is-header="true" id="grid-styles-mobile-6394be04-5431a258100041e39f014ded47698105">@media (max-width: 767px) {
2041    
2042#d18fcf34 {
2043    min-height: 0;
2044    flex-direction: column;
2045    padding-left: 4%;
2046    padding-right: 4%;
2047    flex-wrap: nowrap;
2048}
2049    
2050#\30 a0a3590 {
2051    width: 100%;
2052    min-height: 80px;
2053    align-items: center;
2054}
2055}</style> 
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094<!-- ========= JS Section ========= -->
2095<script>
2096    var isWLR = true;
2097
2098    window.customWidgetsFunctions = {};
2099    window.customWidgetsStrings = {};
2100    window.collections = {};
2101    window.currentLanguage = "DUTCH"
2102    window.isSitePreview = false;
2103</script>
2103
2104
2105
2106
2107<script>
2108    window.customWidgetsFunctions["4b77e2d743e44a28a7118c9b67456426~18"] = function (element, data, api) {
2109        window.dmAPI.runOnReady('book-btn-widget', async () => {
2110  const anchor = element.querySelector('a');
2111
2112  // Apply theme colors if enabled
2113  const useThemeColors = data.config['useThemeColors'];
2114  if (useThemeColors !== false && anchor) {
2115    const rootStyles = getComputedStyle(document.documentElement);
2116    const primaryColor = rootStyles.getPropertyValue('--primary-color').trim();
2117    const primaryTextColor = rootStyles.getPropertyValue('--primary-text-color').trim();
2118
2119    if (primaryColor) {
2120      anchor.style.setProperty('background-color', primaryColor, 'important');
2121    }
2122    if (primaryTextColor) {
2123      anchor.style.setProperty('color', primaryTextColor, 'important');
2124    }
2125  }
2126
2127  // Resolve the final URL — prefer IBE collection, fall back to configured link
2128  let resolvedUrl = anchor ? anchor.getAttribute('href') : null;
2129
2130  try {
2131    const collection = await dmAPI.loadCollectionsAPI();
2132    const result = await collection.data('IBE').get();
2133
2134    if (result && result.values && result.values.length > 0) {
2135      const firstRow = result.values[0].data;
2136      const dynamicUrl = firstRow['IBEurl'];
2137      if (dynamicUrl) {
2138        resolvedUrl = dynamicUrl;
2139        if (anchor) {
2140          anchor.setAttribute('raw_url', dynamicUrl);
2141          anchor.href = dynamicUrl;
2142        }
2143      }
2144    }
2145  } catch (e) {
2146    // IBE collection not available — use fallback link
2147  }
2148
2149  // Force new-tab open on left-click, bypassing the platform's internal router
2150  if (anchor) {
2151    anchor.setAttribute('target', '_blank');
2152    anchor.setAttribute('rel', 'noopener noreferrer');
2153
2154    anchor.addEventListener('click', (e) => {
2155      e.preventDefault();
2156      e.stopPropagation();
2157      const url = anchor.getAttribute('href') || resolvedUrl;
2158      if (url && url !== '#') {
2159        window.open(url, '_blank', 'noopener,noreferrer');
2160      }
2161    });
2162  }
2163});
2164
2165    };
2166</script>
2166
2167
2168<script>
2169    window.customWidgetsFunctions["97a95c369c4c403d92d29e42348fa217~33"] = function (element, data, api) {
2170        window.dmAPI.runOnReady('roomDetailsWidget', async () => {
2171  // All collection settings live inside the "collectionFields" group; fall back to top-level for backward compatibility
2172  const fields         = data.config['collectionFields'] || data.config || {};
2173  const collectionName = fields['collectionName'] || data.config['collectionName'] || '';
2174
2175  // Extract the last segment of the page URL slug for matching against page_item_url field.
2176  // e.g. "/rooms/deluxe-room" → "deluxe-room"
2177  // Always use the URL slug on a live page, only fall back to manual filter if no slug is available.
2178  const slugSegment = window.location.pathname
2179    .replace(/\/+$/, '')           // strip trailing slashes
2180    .split('/')
2181    .filter(Boolean)
2182    .pop() || '';
2183  // Priority: URL slug > manual filter setting
2184  const roomFilter  = slugSegment || fields['roomFilter'] || data.config['roomFilter'] || '';
2185  const maxTags        = parseInt(data.config['maxVisibleTags'] || '5', 10);
2186  const amenitiesField = fields['amenitiesField'] || data.config['amenitiesField'] || 'features';
2187  const guestsField    = fields['guestsField']    || data.config['guestsField']    || 'guests';
2188  const nameField      = fields['nameField']      || data.config['nameField']      || 'main_title_hero';
2189  const descField      = fields['descField']      || data.config['descField']      || 'hero_description';
2190  const priceField     = fields['priceField']     || data.config['priceField']     || 'price';
2191  const imagesField    = fields['imagesField']    || data.config['imagesField']    || 'image_gallery';
2192  const mainImageField = fields['mainImageField'] || data.config['mainImageField'] || 'hero_image';
2193  const buttonUrlField = fields['buttonUrlField'] || data.config['buttonUrlField'] || 'button_link';
2194  const urlField       = fields['urlField']       || data.config['urlField']       || 'page_item_url';
2195
2196  const widget        = element;
2197  const loadingEl     = widget.querySelector('.room-loading');
2198  const errorEl       = widget.querySelector('.room-error');
2199  const contentEl     = widget.querySelector('.room-content');
2200  const mainImgEl     = widget.querySelector('.room-main-image');
2201  const nameEl        = widget.querySelector('.room-name');
2202  const guestsEl      = widget.querySelector('.room-guests-count');
2203  const descEl        = widget.querySelector('.room-description');
2204  const tagsEl        = widget.querySelector('.amenities-tags');
2205  const showMoreBtn   = widget.querySelector('.show-more-btn');
2206  const showLessBtn   = widget.querySelector('.show-less-btn');
2207  const priceWrap     = widget.querySelector('.room-price-wrap');
2208  const priceEl       = widget.querySelector('.room-price');
2209  const gallerySection= widget.querySelector('.room-gallery-section');
2210  const galleryTrack  = widget.querySelector('.room-gallery-track');
2211  const prevBtn       = widget.querySelector('.gallery-prev');
2212  const nextBtn       = widget.querySelector('.gallery-next');
2213
2214  // -- Helpers --
2215  const show = el => el && (el.style.display = '');
2216  const hide = el => el && (el.style.display = 'none');
2217
2218  function showError() {
2219    hide(loadingEl);
2220    show(errorEl);
2221    hide(contentEl);
2222  }
2223
2224  // -- Fetch collection --
2225  const isPreview = data.config['previewMode'] === true || data.config['previewMode'] === 'true';
2226  if (!collectionName && !isPreview) {
2227    showError();
2228    return;
2229  }
2230
2231  // -- Preview mode: inject sample data instead of fetching the collection --
2232  let roomData = null;
2233  if (isPreview) {
2234    roomData = {
2235      [nameField]:      'Deluxe Ocean Suite',
2236      [guestsField]:    '2 Guests',
2237      [descField]:      'Perched above the shimmering coastline, the Deluxe Ocean Suite is a sanctuary of calm and comfort. Floor-to-ceiling windows frame panoramic sea views, flooding the space with natural light from dawn to dusk. The suite features a king-size bed dressed in premium linens, a rainfall shower, a freestanding soaking tub, and a private terrace where you can sip your morning coffee to the sound of waves. Thoughtful touches — from handcrafted local artwork to a curated minibar — make every moment feel effortlessly luxurious.',
2238      [priceField]:     '$320',
2239      [amenitiesField]: ['Ocean View', 'King Bed', 'Free Wi-Fi', 'Air Conditioning', 'Private Terrace', 'Rainfall Shower', 'Soaking Tub', 'Minibar', 'Room Service', 'Smart TV', 'Safe', 'Bathrobe & Slippers'],
2240      [mainImageField]: 'https://de-image-res.s3.amazonaws.com/cwdt/97a95c369c4c403d92d29e42348fa217/images/6ee2f64c-ac47-4002-8e90-221cba4e4b83.png',
2241      [imagesField]:    [],
2242      [buttonUrlField]: '',
2243      [urlField]:       ''
2244    };
2245  } else {
2246    try {
2247      const collection = await dmAPI.loadCollectionsAPI();
2248    
2249      // Get current site language for multilingual collections
2250      const currentLang = dmAPI.getCurrentLanguage ? dmAPI.getCurrentLanguage() : null;
2251      
2252      // Build base query with language support
2253      let baseQuery = collection.data(collectionName);
2254      if (currentLang) {
2255        baseQuery = baseQuery.language(currentLang);
2256      }
2257      
2258      // Get all items
2259      const allItems = await baseQuery.pageSize(100).get();
2260      
2261      // Always try to filter if we have a room filter value
2262      if (roomFilter) {
2263        // Since the collection doesn't allow filtering on page_item_url,
2264        // we'll fetch all items and filter in JavaScript
2265        
2266        // Find the matching room from the items we already fetched
2267        const matchedItem = allItems.values.find(item => item.data[urlField] === roomFilter);
2268        
2269        if (matchedItem) {
2270          roomData = matchedItem.data;
2271        } else {
2272          // Use first item as fallback
2273          if (allItems.values.length > 0) {
2274            roomData = allItems.values[0].data;
2275          } else {
2276            showError();
2277            return;
2278          }
2279        }
2280      } else {
2281        // No filter - show first item (preview mode)
2282        if (allItems && allItems.values && allItems.values.length > 0) {
2283          roomData = allItems.values[0].data;
2284        } else {
2285          showError();
2286          return;
2287        }
2288      }
2289    } catch (e) {
2290      showError();
2291      return;
2292    }
2293  }
2294
2295  // -- Populate content --
2296  // Name
2297  nameEl.textContent = roomData[nameField] || 'Room';
2298
2299  // Guests
2300  const guests = roomData[guestsField];
2301  if (guests !== undefined && guests !== null && guests !== '') {
2302    guestsEl.textContent = guests;
2303  } else {
2304    widget.querySelector('.room-meta').style.display = 'none';
2305  }
2306
2307  // Description
2308  const desc = roomData[descField] || '';
2309  descEl.innerHTML = desc;
2310
2311  // Show more / show less for description
2312  const descShowMoreBtn = widget.querySelector('.desc-show-more-btn');
2313  const descShowLessBtn = widget.querySelector('.desc-show-less-btn');
2314
2315  // Wait for layout then check if text is actually clamped
2316  const descLineCount = parseInt(data.config['descLines'] || '5', 10);
2317  setTimeout(() => {
2318    descEl.style.webkitLineClamp = descLineCount;
2319    descEl.classList.add('is-collapsed');
2320    // scrollHeight > clientHeight means content is taller than the clamped area
2321    if (descEl.scrollHeight > descEl.clientHeight + 2) {
2322      descShowMoreBtn.style.display = 'block';
2323    } else {
2324      descEl.classList.remove('is-collapsed');
2325    }
2326  }, 120);
2327
2328  descShowMoreBtn.addEventListener('click', () => {
2329    // If description was moved to overflow section, move it back first
2330    const overflowSectionEl = widget.querySelector('.room-overflow');
2331    const descWrap = widget.querySelector('.room-description-wrap');
2332    if (descWrap && overflowSectionEl && overflowSectionEl.contains(descWrap)) {
2333      // Find anchor: insert before price wrap or amenities, or append to room-info
2334      const roomInfoRefEl = widget.querySelector('.room-info');
2335      const priceWrapRefEl = widget.querySelector('.room-price-wrap');
2336      const amenitiesRefEl = widget.querySelector('.room-amenities');
2337      const anchor = amenitiesRefEl || priceWrapRefEl;
2338      if (anchor && roomInfoRefEl && roomInfoRefEl.contains(anchor)) {
2339        roomInfoRefEl.insertBefore(descWrap, anchor);
2340      } else if (roomInfoRefEl) {
2341        roomInfoRefEl.appendChild(descWrap);
2342      }
2343      overflowSectionEl.style.display = 'none';
2344    }
2345    descEl.classList.remove('is-collapsed');
2346    descShowMoreBtn.style.display = 'none';
2347    descShowLessBtn.style.display = 'block';
2348  });
2349
2350  descShowLessBtn.addEventListener('click', () => {
2351    descEl.classList.add('is-collapsed');
2352    descShowLessBtn.style.display = 'none';
2353    descShowMoreBtn.style.display = 'block';
2354  });
2355
2356  // Price
2357  const price = roomData[priceField];
2358  if (price !== undefined && price !== null && price !== '') {
2359    priceEl.textContent = price;
2360    show(priceWrap);
2361  }
2362
2363  // Amenities / tags
2364  let amenities = roomData[amenitiesField];
2365  if (amenities) {
2366    if (typeof amenities === 'string') {
2367      // Support comma-separated string
2368      amenities = amenities.split(',').map(a => a.trim()).filter(Boolean);
2369    }
2370    if (Array.isArray(amenities) && amenities.length > 0) {
2371      const allTags = amenities;
2372      let expanded = false;
2373
2374      function renderTags(showAll) {
2375        tagsEl.innerHTML = '';
2376        const visible = showAll ? allTags : allTags.slice(0, maxTags);
2377        visible.forEach(tag => {
2378          const span = document.createElement('span');
2379          span.className = 'amenity-tag';
2380          span.textContent = tag;
2381          tagsEl.appendChild(span);
2382        });
2383        if (allTags.length > maxTags) {
2384          if (showAll) {
2385            hide(showMoreBtn);
2386            show(showLessBtn);
2387          } else {
2388            show(showMoreBtn);
2389            hide(showLessBtn);
2390          }
2391        }
2392      }
2393
2394      renderTags(false);
2395
2396      showMoreBtn.addEventListener('click', () => {
2397        expanded = true;
2398        renderTags(true);
2399      });
2400      showLessBtn.addEventListener('click', () => {
2401        expanded = false;
2402        renderTags(false);
2403      });
2404    }
2405  }
2406
2407  // -- Images --
2408  let images = []; // gallery images only
2409
2410  // Helper: normalise a single raw value (string or object) to { src, alt }
2411  function normaliseImage(raw, fallbackAlt) {
2412    if (!raw) return null;
2413    if (typeof raw === 'string') {
2414      const s = raw.trim();
2415      return s ? { src: s, alt: fallbackAlt } : null;
2416    }
2417    if (typeof raw === 'object') {
2418      // Support { image, alt_text }, { src, alt }, { url }, { href }
2419      const src = raw.image || raw.src || raw.url || raw.href || '';
2420      const alt = raw.alt_text || raw.alt || fallbackAlt;
2421      return src ? { src, alt } : null;
2422    }
2423    return null;
2424  }
2425
2426  const roomName = roomData[nameField] || 'Room';
2427
2428  // -- Main image (always independent of gallery) --
2429  const mainImg = roomData[mainImageField];
2430  const mainImgObj = normaliseImage(mainImg, roomName + ' image');
2431  if (mainImgObj) {
2432    mainImgEl.src = mainImgObj.src;
2433    mainImgEl.alt = mainImgObj.alt;
2434    // Add error handler to prevent console errors
2435    mainImgEl.onerror = function() {
2436      this.onerror = null;
2437      this.src = 'https://de-image-res.s3.amazonaws.com/cwdt/97a95c369c4c403d92d29e42348fa217/images/0ecf78c3-3248-4c97-bede-ca8bf8d40980.png';
2438    };
2439  } else {
2440    mainImgEl.src = 'https://de-image-res.s3.amazonaws.com/cwdt/97a95c369c4c403d92d29e42348fa217/images/0ecf78c3-3248-4c97-bede-ca8bf8d40980.png';
2441    mainImgEl.alt = 'Room image';
2442  }
2443
2444  // -- Gallery images (separate from main image) --
2445  const rawImages = roomData[imagesField];
2446  if (rawImages) {
2447    if (Array.isArray(rawImages)) {
2448      rawImages.forEach((item, i) => {
2449        const img = normaliseImage(item, roomName + ' photo ' + (i + 1));
2450        if (img) images.push(img);
2451      });
2452    } else if (typeof rawImages === 'string' && rawImages.trim()) {
2453      rawImages.split(',').map(s => s.trim()).filter(Boolean).forEach((src, i) => {
2454        images.push({ src, alt: roomName + ' photo ' + (i + 1) });
2455      });
2456    }
2457  }
2458
2459  // If gallery has 2 or fewer images, combine with main image
2460  let combinedImages = [];
2461  let showGallery = false;
2462  
2463  if (images.length <= 2) {
2464    // Combine main image + gallery images for the hero/lightbox
2465    if (mainImgObj) {
2466      combinedImages.push(mainImgObj);
2467    }
2468    combinedImages = combinedImages.concat(images);
2469    showGallery = false; // Hide separate gallery section
2470  } else {
2471    // Show separate gallery as before
2472    combinedImages = images;
2473    showGallery = true;
2474  }
2475
2476  // Gallery: show if there are 3+ gallery images, OR use combined for lightbox
2477  if (combinedImages.length > 0) {
2478    // Lightbox elements
2479    const lightbox      = widget.querySelector('.gallery-lightbox');
2480    const lightboxImg   = widget.querySelector('.lightbox-img');
2481    const lightboxClose = widget.querySelector('.lightbox-close');
2482    const lightboxPrev  = widget.querySelector('.lightbox-prev');
2483    const lightboxNext  = widget.querySelector('.lightbox-next');
2484    const lightboxCtr   = widget.querySelector('.lightbox-counter');
2485    const lightboxBack  = widget.querySelector('.lightbox-backdrop');
2486    let lightboxIndex   = 0;
2487
2488    function openLightbox(index) {
2489      lightboxIndex = index;
2490      lightboxImg.src = combinedImages[lightboxIndex].src;
2491      lightboxImg.alt = combinedImages[lightboxIndex].alt;
2492      lightboxCtr.textContent = (lightboxIndex + 1) + ' / ' + combinedImages.length;
2493      lightboxPrev.disabled = lightboxIndex === 0;
2494      lightboxNext.disabled = lightboxIndex === combinedImages.length - 1;
2495      lightbox.style.display = 'flex';
2496      document.body.style.overflow = 'hidden';
2497    }
2498
2499    function closeLightbox() {
2500      lightbox.style.display = 'none';
2501      document.body.style.overflow = '';
2502    }
2503
2504    lightboxClose.addEventListener('click', closeLightbox);
2505    lightboxBack.addEventListener('click', closeLightbox);
2506
2507    lightboxPrev.addEventListener('click', () => {
2508      if (lightboxIndex > 0) openLightbox(lightboxIndex - 1);
2509    });
2510
2511    lightboxNext.addEventListener('click', () => {
2512      if (lightboxIndex < combinedImages.length - 1) openLightbox(lightboxIndex + 1);
2513    });
2514
2515    document.addEventListener('keydown', (e) => {
2516      if (lightbox.style.display === 'none') return;
2517      if (e.key === 'Escape') closeLightbox();
2518      if (e.key === 'ArrowLeft'  && lightboxIndex > 0)               openLightbox(lightboxIndex - 1);
2519      if (e.key === 'ArrowRight' && lightboxIndex < combinedImages.length - 1) openLightbox(lightboxIndex + 1);
2520    });
2521
2522    // If 2 or fewer gallery images, create a carousel in the hero area
2523    if (!showGallery && combinedImages.length > 1) {
2524      // Hide the static main image
2525      mainImgEl.style.display = 'none';
2526      
2527      // Create hero carousel container
2528      const heroCarousel = document.createElement('div');
2529      heroCarousel.className = 'hero-carousel';
2530      heroCarousel.style.position = 'relative';
2531      heroCarousel.style.width = '100%';
2532      heroCarousel.style.height = '380px';
2533      heroCarousel.style.borderRadius = 'var(--main-img-radius)';
2534      heroCarousel.style.overflow = 'hidden';
2535      
2536      // Create track for hero images
2537      const heroTrack = document.createElement('div');
2538      heroTrack.style.display = 'flex';
2539      heroTrack.style.height = '100%';
2540      heroTrack.style.transition = 'transform 0.4s ease';
2541      
2542      // Add all combined images to hero track
2543      combinedImages.forEach((imgObj, idx) => {
2544        const imgWrap = document.createElement('div');
2545        imgWrap.style.flex = '0 0 100%';
2546        imgWrap.style.height = '100%';
2547        
2548        const img = document.createElement('img');
2549        img.src = imgObj.src;
2550        img.alt = imgObj.alt;
2551        img.style.width = '100%';
2552        img.style.height = '100%';
2553        img.style.objectFit = 'cover';
2554        img.style.display = 'block';
2555        img.style.cursor = 'zoom-in';
2556        img.addEventListener('click', () => openLightbox(idx));
2557        
2558        imgWrap.appendChild(img);
2559        heroTrack.appendChild(imgWrap);
2560      });
2561      
2562      heroCarousel.appendChild(heroTrack);
2563
2564      // Create navigation buttons below the hero carousel (same style as fill gallery nav)
2565      const heroNavWrap = document.createElement('div');
2566      heroNavWrap.className = 'room-gallery-nav';
2567
2568      const heroPrevBtn = document.createElement('button');
2569      heroPrevBtn.className = 'gallery-prev';
2570      heroPrevBtn.setAttribute('aria-label', 'Previous image');
2571      heroPrevBtn.innerHTML = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="20" height="20" fill="none" stroke="currentColor" stroke-width="2"><polyline points="15 18 9 12 15 6"/></svg>';
2572
2573      const heroNextBtn = document.createElement('button');
2574      heroNextBtn.className = 'gallery-next';
2575      heroNextBtn.setAttribute('aria-label', 'Next image');
2576      heroNextBtn.innerHTML = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="20" height="20" fill="none" stroke="currentColor" stroke-width="2"><polyline points="9 18 15 12 9 6"/></svg>';
2577
2578      heroNavWrap.appendChild(heroPrevBtn);
2579      heroNavWrap.appendChild(heroNextBtn);
2580
2581      // Insert hero carousel and nav below it inside the main image wrap
2582      const mainImgWrap = widget.querySelector('.room-main-image-wrap');
2583      mainImgWrap.appendChild(heroCarousel);
2584      mainImgWrap.appendChild(heroNavWrap);
2585      
2586      // Hero carousel logic
2587      let heroIndex = 0;
2588      
2589      function updateHeroCarousel() {
2590        heroTrack.style.transform = `translateX(-${heroIndex * 100}%)`;
2591        heroPrevBtn.disabled = heroIndex === 0;
2592        heroNextBtn.disabled = heroIndex === combinedImages.length - 1;
2593      }
2594      
2595      heroPrevBtn.addEventListener('click', () => {
2596        if (heroIndex > 0) {
2597          heroIndex--;
2598          updateHeroCarousel();
2599        }
2600      });
2601      
2602      heroNextBtn.addEventListener('click', () => {
2603        if (heroIndex < combinedImages.length - 1) {
2604          heroIndex++;
2605          updateHeroCarousel();
2606        }
2607      });
2608      
2609      updateHeroCarousel();
2610    } else if (!showGallery && combinedImages.length === 1) {
2611      // Single image - just make it clickable
2612      mainImgEl.style.cursor = 'zoom-in';
2613      mainImgEl.addEventListener('click', () => openLightbox(0));
2614    }
2615
2616    // Build gallery items (clickable) - only if showing separate gallery
2617    if (showGallery) {
2618      combinedImages.forEach((imgObj, idx) => {
2619        const div = document.createElement('div');
2620        div.className = 'gallery-item';
2621        const img = document.createElement('img');
2622        img.src = imgObj.src;
2623        img.alt = imgObj.alt;
2624        // Add error handler for gallery images
2625        img.onerror = function() {
2626          this.style.display = 'none';
2627          this.parentElement.style.display = 'none';
2628        };
2629        img.addEventListener('click', () => openLightbox(idx));
2630        div.appendChild(img);
2631        galleryTrack.appendChild(div);
2632      });
2633
2634      show(gallerySection);
2635
2636      // Carousel logic: show 3 at a time
2637      const visibleCount = 3;
2638      let currentIndex = 0;
2639      const totalItems = combinedImages.length;
2640
2641      function getItemWidth() {
2642        const item = galleryTrack.querySelector('.gallery-item');
2643        if (!item) return 0;
2644        const gap = 16;
2645        return item.offsetWidth + gap;
2646      }
2647
2648      function updateCarousel() {
2649        const itemW = getItemWidth();
2650        galleryTrack.style.transform = `translateX(-${currentIndex * itemW}px)`;
2651        prevBtn.disabled = currentIndex === 0;
2652        nextBtn.disabled = currentIndex >= totalItems - visibleCount;
2653      }
2654
2655      prevBtn.addEventListener('click', () => {
2656        if (currentIndex > 0) {
2657          currentIndex--;
2658          updateCarousel();
2659        }
2660      });
2661
2662      nextBtn.addEventListener('click', () => {
2663        if (currentIndex < totalItems - visibleCount) {
2664          currentIndex++;
2665          updateCarousel();
2666        }
2667      });
2668
2669      // Init after a short delay for layout
2670      setTimeout(updateCarousel, 50);
2671      window.addEventListener('resize', () => {
2672        if (currentIndex > totalItems - visibleCount) {
2673          currentIndex = Math.max(0, totalItems - visibleCount);
2674        }
2675        updateCarousel();
2676      });
2677    }
2678  }
2679
2680  // -- Collection button URL override --
2681  // If the collection record has a URL in buttonUrlField, use it for the booking button (opens in new tab).
2682  const collectionBtnUrl = roomData[buttonUrlField];
2683  if (collectionBtnUrl) {
2684    const bookBtn = widget.querySelector('a[data-link], .room-cta a');
2685    if (bookBtn) {
2686      bookBtn.href = collectionBtnUrl;
2687      bookBtn.target = '_blank';
2688      bookBtn.rel = 'noopener noreferrer';
2689    } else {
2690      // If the Handlebars link wasn't rendered (no bookingLink set), create the button dynamically
2691      const ctaEl = widget.querySelector('.room-cta');
2692      if (!ctaEl) {
2693        const ctaDiv = document.createElement('div');
2694        ctaDiv.className = 'room-cta';
2695        const btnText = data.config['bookingBtnText'] || 'Book Now';
2696        const a = document.createElement('a');
2697        a.href = collectionBtnUrl;
2698        a.target = '_blank';
2699        a.rel = 'noopener noreferrer';
2700        a.className = 'room-book-btn';
2701        a.textContent = btnText;
2702        ctaDiv.appendChild(a);
2703        widget.querySelector('.room-info').appendChild(ctaDiv);
2704      } else {
2705        const existingLink = ctaEl.querySelector('a');
2706        if (existingLink) {
2707          existingLink.href = collectionBtnUrl;
2708          existingLink.target = '_blank';
2709          existingLink.rel = 'noopener noreferrer';
2710        }
2711      }
2712    }
2713  }
2714
2715  // -- Handle text overflow: move long content below the hero --
2716  const overflowSection = widget.querySelector('.room-overflow');
2717  const roomInfoEl = widget.querySelector('.room-info');
2718  const mainImageWrapEl = widget.querySelector('.room-main-image-wrap');
2719
2720  function checkOverflow() {
2721    // Only run on desktop (side-by-side layout)
2722    if (window.innerWidth <= 767) return;
2723
2724    // Use the actual rendered image height as the reference
2725    const imageHeight = mainImgEl.offsetHeight || 380;
2726
2727    // Measure only the description wrapper's rendered height
2728    const descriptionEl = roomInfoEl.querySelector('.room-description-wrap');
2729    if (!descriptionEl) return;
2730
2731    // Get the top position of description relative to the info panel top
2732    const infoPanelTop  = roomInfoEl.getBoundingClientRect().top;
2733    const descBottom    = descriptionEl.getBoundingClientRect().bottom;
2734    const contentUsed   = descBottom - infoPanelTop;
2735
2736    // Only move content if the description alone already exceeds the image height
2737    if (contentUsed > imageHeight) {
2738      const elementsToMove = [
2739        roomInfoEl.querySelector('.room-description-wrap'),
2740      ].filter(Boolean);
2741
2742      if (elementsToMove.length > 0) {
2743        elementsToMove.forEach(el => overflowSection.appendChild(el));
2744        overflowSection.style.display = '';
2745      }
2746    }
2747  }
2748
2749  // Run after layout settles
2750  setTimeout(checkOverflow, 100);
2751
2752  // -- Show content --
2753  hide(loadingEl);
2754  hide(errorEl);
2755  contentEl.style.display = '';
2756});
2757
2758    };
2759</script>
2759
2760
2761<script>
2762    window.customWidgetsFunctions["1f5975986930429f819d4cd2154b5c4a~25"] = function (element, data, api) {
2763        null
2764    };
2765</script>
2765
2766
2767
2768<script type="text/javascript">
2769
2770    var d_version = "production_6803";
2771    var build = "2026-09-28T10_50_11";
2772    window['v' + 'ersion'] = d_version;
2773
2774    function buildEditorParent() {
2775        window.isMultiScreen = true;
2776        window.editorParent = {};
2777        window.previewParent = {};
2778        window.assetsCacheQueryParam = "?version=2026-09-28T10_50_11";
2779        try {
2780            var _p = window.parent;
2781            if (_p && _p.document && _p.$ && _p.$.dmfw) {
2782                window.editorParent = _p;
2783            } else if (_p.isSitePreview) {
2784                window.previewParent = _p;
2785            }
2786        } catch (e) {
2787
2788        }
2789    }
2790
2791    buildEditorParent();
2792</script>
2792
2793
2794
2795
2796<!-- Injecting site-wide before scripts -->
2797
2798
2799<script src="https://app.termly.io/resource-blocker/8da948db-5d5b-45b9-b41b-d17d2bd1cc68?autoBlock=on" data-swh-uuid="f4d7dd0edba14f0dbf0c95eaf8f217a2">
2800</script>
2800
2801
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819<script type="text/javascript" id="d_track_campaign">
2820    (function() {
2821        if (!window.location.search) {
2822            return;
2823        }
2824        const cleanParams = window.location.search.substring(1); // Strip ?
2825        const queryParams = cleanParams.split('&');
2826
2827        const expires = 'expires=' + new Date().getTime() + 24 * 60 * 60 * 1000;
2828        const domain = 'domain=' + window.location.hostname;
2829        const path = "path=/";
2830
2831        queryParams.forEach((param) => {
2832            const [key, value = ''] = param.split('=');
2833            if (key.startsWith('utm_')) {
2834                const cookieName = "_dm_rt_" + key.substring(4);
2835                const cookie = cookieName + "=" + value;
2836                const joined = [cookie, expires, domain, path].join(";");
2837                document.cookie = joined;
2838            }
2839        });
2840    }());
2841</script>
vendor: 1 bytes, line 2841
2841
2842<script type="text/javascript" id="d_track_referrer">
2843    (function() {
2844        const cookieName = '_dm_entry_referrer';
2845        const referrer = document.referrer;
2846        if (!referrer) {
2847            return;
2848        }
2849        let referrerOrigin;
2850        try {
2851            referrerOrigin = new URL(referrer).origin;
2852        } catch (e) {
2853            return;
2854        }
2855        // 'null' is what an opaque origin (sandboxed iframe, file://) serializes to.
2856        if (!referrerOrigin || referrerOrigin === 'null' || referrerOrigin === window.location.origin) {
2857            return;
2858        }
2859        try {
2860            const existing = document.cookie
2861                .split('; ')
2862                .find((candidate) => candidate.indexOf(cookieName + '=') === 0);
2863            if (existing && decodeURIComponent(existing.slice(cookieName.length + 1))) {
2864                return;
2865            }
2866            // No expiry: session-scoped, matching the _dm_rt_ cookies above that a submission
2867            // reads alongside this one (session-scoped in practice — see FBN-5389).
2868            const secure = window.location.protocol === 'https:' ? ';Secure' : '';
2869            document.cookie = cookieName + '=' + encodeURIComponent(referrerOrigin)
2870                + ';path=/;SameSite=Lax' + secure;
2871        } catch (e) {
2872            return;
2873        }
2874    }());
2875</script>
2875
2876
2877<script type="text/javascript" >
2878    var _dm_gaq = {};
2879    var _gaq = _gaq || [];
2880    var _dm_insite = [];
2881</script>
2881
2882
2883
2884
2885
2886
2887
2888
2889<!-- End Injecting site-wide to the head -->
2890
2891
2892
2893
2894
2895
2896<script>
2897    window.cookiesNotificationMarkupPreview = 'null';
2898</script>
2898
2899
2900<!-- HEAD RT JS Include -->
2901<script id='d-js-params'>
2902    window.INSITE = window.INSITE || {};
2903    window.INSITE.device = "desktop";
2904
2905    window.rtCommonProps = {};
2906    rtCommonProps["rt.ajax.ajaxScriptsFix"] =true;
2907    rtCommonProps["rt.pushnotifs.sslframe.encoded"] = 'aHR0cHM6Ly97c3ViZG9tYWlufS5wdXNoLW5vdGlmcy5jb20=';
2908    rtCommonProps["runtimecollector.url"] = 'https://rtc.eu-multiscreensite.com';
2909    rtCommonProps["performance.tabletPreview.removeScroll"] = 'false';
2910    rtCommonProps["inlineEditGrid.snap"] =true;
2911    rtCommonProps["popup.insite.cookie.ttl"] = '0.5';
2912    rtCommonProps["rt.pushnotifs.force.button"] =true;
2913    rtCommonProps["common.mapbox.token"] = 'pk.eyJ1IjoiZGFubnliMTIzIiwiYSI6ImNqMGljZ256dzAwMDAycXBkdWxwbDgzeXYifQ.Ck5P-0NKPVKAZ6SH98gxxw';
2914    rtCommonProps["common.mapbox.js.override"] =false;
2915    rtCommonProps["common.here.appId"] = 'iYvDjIQ2quyEu0rg0hLo';
2916    rtCommonProps["common.here.appCode"] = '1hcIxLJcbybmtBYTD9Z1UA';
2917    rtCommonProps["isCoverage.test"] =false;
2918    rtCommonProps["ecommerce.ecwid.script"] = 'https://app.multiscreenstore.com/script.js';
2919    rtCommonProps["common.resources.dist.cdn"] =true;
2920    rtCommonProps["common.build.dist.folder"] = 'production/6803';
2921    rtCommonProps["common.resources.cdn.host"] = 'https://static.cdn-website.com';
2922    rtCommonProps["common.resources.folder"] = 'https://static.cdn-website.com/mnlt/production/6803';
2923    rtCommonProps["common.fonts.api.v2.url"] = 'https://de.cdn-website.com/fonts/css2?family=';
2924    rtCommonProps["feature.flag.runtime.backgroundSlider.preload.slowly"] =true;
2925    rtCommonProps["feature.flag.runtime.newAnimation.enabled"] =true;
2926    rtCommonProps["feature.flag.runtime.newAnimation.jitAnimation.enabled"] =true;
2927    rtCommonProps["feature.flag.sites.google.analytics.gtag"] =true;
2928    rtCommonProps["feature.flag.runOnReadyNewTask"] =true;
2929    rtCommonProps["isAutomation.test"] =false;
2930    rtCommonProps["booking.cal.api.domain"] = 'api.cal.eu';
2931
2932    
2933    rtCommonProps['common.mapsProvider'] = 'mapbox';
2934    
2935    rtCommonProps['common.mapsProvider.version'] = '0.52.0';
2936    rtCommonProps['common.geocodeProvider'] = 'mapbox';
2937    rtCommonProps['server.for.resources'] = '';
2938    rtCommonProps['feature.flag.lazy.widgets'] = true;
2939    rtCommonProps['feature.flag.single.wow'] = false;
2940    rtCommonProps['feature.flag.disallowPopupsInEditor'] = true;
2941    rtCommonProps['feature.flag.mark.anchors'] = true;
2942    rtCommonProps['captcha.public.key'] = '6LffcBsUAAAAAMU-MYacU-6QHY4iDtUEYv_Ppwlz';
2943    rtCommonProps['captcha.invisible.public.key'] = '6LeiWB8UAAAAAHYnVJM7_-7ap6bXCUNGiv7bBPME';
2944    rtCommonProps["images.sizes.small"] =160;
2945    rtCommonProps["images.sizes.mobile"] =640;
2946    rtCommonProps["images.sizes.tablet"] =1280;
2947    rtCommonProps["images.sizes.desktop"] =1920;
2948    rtCommonProps["modules.resources.cdn"] =true;
2949    rtCommonProps["import.images.storage.imageCDN"] = 'https://le-de.cdn-website.com/';
2950    rtCommonProps["feature.flag.runtime.inp.threshold"] =150;
2951    rtCommonProps["feature.flag.performance.logs"] =false;
2952    rtCommonProps["site.widget.form.captcha.type"] = 'g_recaptcha';
2953    rtCommonProps["friendly.captcha.site.key"] = 'FCMGSQG9GVNMFS8K';
2954    rtCommonProps["cookiebot.mapbox.consent.category"] = 'marketing';
2955    rtCommonProps["termly.mapbox.consent.category"] = 'performance';
2956    // feature flags that's used out of runtime module (in  legacy files)
2957    rtCommonProps["platform.monolith.personalization.dateTimeCondition.popupMsgAction.moveToclient.enabled"] =true;
2958
2959    window.rtFlags = {};
2960    rtFlags["unsuspendEcwidStoreOnRuntime.enabled"] =false;
2961    rtFlags["scripts.widgetCount.enabled"] =true;
2962    rtFlags["fnb.animations.tracking.enabled"] =true;
2963    rtFlags["ecom.ecwidNewUrlStructure.enabled"] = false;
2964    rtFlags["ecom.ecwid.accountPage.emptyBaseUrl.enabled"] = true;
2965    rtFlags["ecom.ecwid.accountPage.repeatOrderRedirect.enabled"] = false;
2966    rtFlags["ecom.ecwid.pages.links.disable.listeners"] = true;
2967    rtFlags["ecom.ecwid.storefrontV3.enabled"] = false;
2968    rtFlags["ecom.monolith.legacy.js.api.disabled.for.new.sites"] = false;
2969    rtFlags["geocode.search.localize"] =false;
2970    rtFlags["feature.flag.runtime.newAnimation.asyncInit.setTimeout.enabled"] =false;
2971    rtFlags["twitter.heightLimit.enabled"] = true;
2972    rtFlags["runtime.lottieOverflow"] =false;
2973    rtFlags["runtime.monitoring.sentry.ignoreErrors"] = "";
2974    rtFlags["streamline.monolith.personalization.supportMultipleConditions.enabled"] =false;
2975    rtFlags["flex.animation.design.panel.layout"] =true;
2976    rtFlags["runtime.cwv.report.cls.enabled"] =false;
2977    rtFlags["runtime.cwv.report.lcp.enabled"] =false;
2978    rtFlags["runtime.lcp.preload.selfheal.enabled"] =true;
2979    rtFlags["runtime.lcp.preload.bootstrap.enabled"] =true;
2980    rtFlags["runtime.lcp.preload.monitor.enabled"] =false;
2981    rtFlags["runtime.customwidget.heightpin.enabled"] =true;
2982    rtFlags["contact.form.useActiveForm"] =true;
2983    rtFlags["contact.form.custom.errors.enabled"] =false;
2984    rtFlags["runtime.ssr.productStore.internal.observer"] =true;
2985    rtFlags["runtime.ssr.productCustomizations"] =true;
2986    rtFlags["runtime.ssr.runtime.filter-sort.newFilterSortWidgetWithOptions.enabled"] =true;
2987    rtFlags["runtime.ssr.ssrSlider.jumpThreshold.enabled"] =true;
2988    rtFlags["editor.widget.form.a11y"] =true;
2989</script>
vendor: 1 bytes, line 2989
2989
2990<script src="https://static.cdn-website.com/mnlt/production/6803/_dm/s/rt/dist/scripts/d-js-runtime-flex-package.min.js"  id="d-js-core" defer></script>
2990
2991
2992<!-- End of HEAD RT JS Include -->
2993
2994
2995
2996
2997
2998
2999
3000
3001
3002
3003
3004
3005
3006
3007<script>
3008    document.addEventListener('DOMContentLoaded', () =>
3009        window.runtime.initLayout()
3010    );
3011</script>
3011
3012
3013
3014
3015
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
3027
3028
3029
3030
3031<script type="text/javascript" id="d_track_sp">
3032    ;(function(p,l,o,w,i,n,g){if(!p[i]){p.GlobalSnowplowNamespace=p.GlobalSnowplowNamespace||[];
3033        p.GlobalSnowplowNamespace.push(i);p[i]=function(){(p[i].q=p[i].q||[]).push(arguments)
3034        };p[i].q=p[i].q||[];n=l.createElement(o);g=l.getElementsByTagName(o)[0];n.async=1;
3035        n.src=w;g.parentNode.insertBefore(n,g)}}(window,document,"script","//d3uzsv7k2lpopp.cloudfront.net/sp-2.0.0-dm-0.1.min.js","snowplow"));
3036    window.dmsnowplow  = window.snowplow;
3037
3038    dmsnowplow('newTracker', 'cf', 'd3uzsv7k2lpopp.cloudfront.net', { // Initialise a tracker
3039        appId: 'ea0190f4896547fd8e65f9c711a88618'
3040    });
3041
3042    // snowplow queries element styles so we wait until CSS calculations are done.
3043    requestAnimationFrame(() => {
3044        dmsnowplow('trackPageView');
3045        _dm_insite.forEach((rule) => {
3046            // Specifically in popup only the client knows if it is shown or not so we don't always want to track its impression here
3047            // the tracking is in popup.js
3048            if (rule.actionName !== "popup") {
3049                dmsnowplow('trackStructEvent', 'insite', 'impression', rule.ruleType, rule.ruleId);
3050            }
3051            window?.waitForDeferred?.('dmAjax', () => {
3052                $.DM.events.trigger('event-ruleTriggered', {value: rule});
3053            });
3054        });
3055    });
3056</script>
3056
3057
3058
3059
3060<div style="display:none;" id="P6iryBW0Wu"></div>
3061
3062<!-- photoswipe markup -->
3063
3064
3065
3066
3067
3068
3069
3070
3071
3072<!-- Root element of PhotoSwipe. Must have class pswp. -->
3073<div class="pswp" tabindex="-1" role="dialog" aria-hidden="true">
3074
3075    <!-- Background of PhotoSwipe. 
3076         It's a separate element as animating opacity is faster than rgba(). -->
3077    <div class="pswp__bg"></div>
3078
3079    <!-- Slides wrapper with overflow:hidden. -->
3080    <div class="pswp__scroll-wrap">
3081
3082        <!-- Container that holds slides. 
3083            PhotoSwipe keeps only 3 of them in the DOM to save memory.
3084            Don't modify these 3 pswp__item elements, data is added later on. -->
3085        <div class="pswp__container">
3086            <div class="pswp__item"></div>
3087            <div class="pswp__item"></div>
3088            <div class="pswp__item"></div>
3089        </div>
3090
3091        <!-- Default (PhotoSwipeUI_Default) interface on top of sliding area. Can be changed. -->
3092        <div class="pswp__ui pswp__ui--hidden">
3093
3094            <div class="pswp__top-bar">
3095
3096                <!--  Controls are self-explanatory. Order can be changed. -->
3097
3098                <div class="pswp__counter"></div>
3099
3100                <button class="pswp__button pswp__button--close" data-auto="pswp-close" title="Sluiten (Esc)"></button>
3101
3102                <button class="pswp__button pswp__button--share" data-auto="pswp-share" title="Delen"></button>
3103
3104                <button class="pswp__button pswp__button--fs" title="Volledig scherm in- of uitschakelen"></button>
3105
3106                <button class="pswp__button pswp__button--zoom" title="In-/uitzoomen"></button>
3107
3108                <!-- Preloader demo http://codepen.io/dimsemenov/pen/yyBWoR -->
3109                <!-- element will get class pswp__preloader--active when preloader is running -->
3110                <div class="pswp__preloader">
3111                    <div class="pswp__preloader__icn">
3112                      <div class="pswp__preloader__cut">
3113                        <div class="pswp__preloader__donut"></div>
3114                      </div>
3115                    </div>
3116                </div>
3117            </div>
3118
3119            <div class="pswp__share-modal pswp__share-modal--hidden pswp__single-tap">
3120                <div class="pswp__share-tooltip"></div> 
3121            </div>
3122
3123            <button class="pswp__button pswp__button--arrow--left" title="Vorige (pijl naar links)">
3124            </button>
3125
3126            <button class="pswp__button pswp__button--arrow--right" title="Volgende (pijl naar rechts)">
3127            </button>
3128
3129            <div class="pswp__caption">
3130                <div class="pswp__caption__center"></div>
3131            </div>
3132
3133        </div>
3134
3135    </div>
3136
3137</div>
3138<div id="fb-root"
3139        data-locale="nl_NL"></div>
3140<!-- Alias: ea0190f4896547fd8e65f9c711a88618 -->
3141<script id="d_track_personalization">
3142	window?.waitForDeferred?.('dmAjax', () => {
3143		// Collects client data and updates cookies used by smart sites
3144		window.expireDays = 365;
3145		window.visitLength = 30 * 60000;
3146		$.setCookie("dm_timezone_offset", (new Date()).getTimezoneOffset(), window.expireDays);
3147			setSmartSiteCookiesInternal("dm_this_page_view","dm_last_page_view","dm_total_visits","dm_last_visit");
3148	});
3149</script>
vendor: 1 bytes, line 3149
3149
3150<script type="text/javascript">
3151    
3152    Parameters.NavigationAreaParams.MoreButtonText = 'MORE';
3153    
3154    Parameters.NavigationAreaParams.LessButtonText = 'LESS';
3155    Parameters.HomeLinkText = 'Home';
3156    </script>
3156
3157<!--  End Script tags -->
3158<!--  Site Wide Html Markup -->
3159<div id="swh-6ac6aa5c70664cb28a43d50e1c644f90"><style>/* wm-hidden-sections */ #FAQ, #Reviews { display: none !important; }</style></div>
3160<div id="swh-0e51f03c28c84af69eb9b1d20d019122">
3160<script type="text/javascript" src="https://cdn.stardekk.com/website-manager/ratebox-v2.bundle.js"></script>
vendor: 1 bytes, line 3160
3160
3161<script type="text/javascript">var _rbLocale=(window.location.pathname.match(/^\/([a-z]{2,3})(?:\/|$)/i)||[])[1]||'nl';var rb = new Ratebox({IBEUrl: 'charme-hotel-hancelot-gent', key: '6D94030D-D8C5-4DF8-90F7-33DA44A7869A', locale: _rbLocale});</script>
3161</div>
3162<div id="swh-e8552bb29b324f47865a553b9f4915d0"><style>.cubilis-ratebox {--rb-primary: #C3AA73 !important;--rb-secondary: #2C4A3E !important;--rb-primary-text: #FFF8F0 !important;--rb-secondary-text: #FFF8F0 !important;--rb-tertiary: #8B4513 !important;}</style></div><!--  Site Wide Html Markup -->
3163</body>
3164</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.