PageSourceSearch

https://villavauban.lu/

html villavauban.lu collected 2026-09-24 23:08:29 UTC 164,002 bytes, 2,044 lines download raw bytes

1
2<!DOCTYPE html>
3<html dir="ltr" lang="fr-FR"
4	prefix="og: https://ogp.me/ns#"  xmlns:og="http://opengraphprotocol.org/schema/" xmlns:fb="http://www.facebook.com/2008/fbml" class=" ">
5
6<head>
7    <meta charset="UTF-8">
8    <meta name="viewport" content="width=device-width, initial-scale=1">
9    <meta name="apple-mobile-web-app-capable" content="yes">
10    <link href="https://villavauban.lu/wp-content/themes/vv/img/favicon.ico" rel="shortcut icon" type="image/x-icon" />
11    <link href="https://villavauban.lu/wp-content/themes/vv/img/favicon.png" rel="shortcut icon" type="image/png">
12
13    <meta name="theme-color" content="#">
14    <link rel="profile" href="http://gmpg.org/xfn/11">
15    <link rel="pingback" href="https://villavauban.lu/xmlrpc.php">
16
17    <link href='https://fonts.googleapis.com/css?family=Open+Sans:400,600,700' rel='stylesheet' type='text/css'>
18
19    <title>Villa Vauban - Musée d'Art de la Ville</title>
20<link rel="alternate" hreflang="fr-fr" href="https://villavauban.lu/" />
21<link rel="alternate" hreflang="de-de" href="https://villavauban.lu/de/" />
22<link rel="alternate" hreflang="en-us" href="https://villavauban.lu/en/" />
23<link rel="alternate" hreflang="x-default" href="https://villavauban.lu/" />
24
25		<!-- All in One SEO 4.4.1 - aioseo.com -->
26		<meta name="robots" content="max-image-preview:large" />
27		<meta name="keywords" content="musée,villa,beaux-art,extenstion contemporaine,jardin,détente,collections" />
28		<link rel="canonical" href="https://villavauban.lu/" />
29		<meta name="generator" content="All in One SEO (AIOSEO) 4.4.1" />
30		<meta property="og:locale" content="fr_FR" />
31		<meta property="og:site_name" content="Villa Vauban | Musée d&#039;Art de la Ville de Luxembourg" />
32		<meta property="og:type" content="article" />
33		<meta property="og:title" content="Villa Vauban - Musée d&#039;Art de la Ville" />
34		<meta property="og:url" content="https://villavauban.lu/" />
35		<meta property="article:published_time" content="2015-02-05T08:47:21+00:00" />
36		<meta property="article:modified_time" content="2026-09-15T13:56:36+00:00" />
37		<meta name="twitter:card" content="summary" />
38		<meta name="twitter:title" content="Villa Vauban - Musée d&#039;Art de la Ville" />
39		<meta name="google" content="nositelinkssearchbox" />
40		
40<script type="text/javascript" src="/ruxitagentjs_ICA7NVfqrux_10345260810170330.js" data-dtconfig="rid=RID_2418|rpid=-581734362|domain=villavauban.lu|reportUrl=/rb_346f84e3-bc47-4402-a52e-1ece4c66c238|uam=1|app=f63b837de58cff4b|ssc=1|owasp=1|featureHash=ICA7NVfqrux|rdnt=1|uxrgce=1|cuc=m2hr4a5p|mel=100000|dpvc=1|lastModification=1790175327729|tp=500,50,0|srbbv=2|agentUri=/ruxitagentjs_ICA7NVfqrux_10345260810170330.js"></script>
40<script type="text/javascript" >
41			window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date;
42			ga('create', "UA-7104152-10", 'auto');
43			ga('send', 'pageview');
44		</script>
44
45		
45<script async src="https://www.google-analytics.com/analytics.js"></script>
45
46		<!-- All in One SEO -->
47
48<link rel="alternate" type="application/rss+xml" title="Villa Vauban &raquo; Flux" href="https://villavauban.lu/feed/" />
49<link rel="alternate" type="application/rss+xml" title="Villa Vauban &raquo; Flux des commentaires" href="https://villavauban.lu/comments/feed/" />
50<link rel="alternate" type="application/rss+xml" title="Villa Vauban &raquo; Accueil Flux des commentaires" href="https://villavauban.lu/acceuil/feed/" />
51<link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://villavauban.lu/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fvillavauban.lu%2F" />
52<link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://villavauban.lu/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fvillavauban.lu%2F&#038;format=xml" />
53
54                    <meta property="fb:app_id" content="1613017428916930" />        <meta property="fb:admins" content="535675792" />
55        <meta property="fb:admins" content="741289432" />
56        <meta property="fb:admins" content="789972287" />
57
58
59        
60            <meta property="og:url" content="https://villavauban.lu/" />
61
62                            <meta property="og:title" content="Accueil" />
63            
64                            <meta property="og:description" content="" />
65            
66            <meta property="og:type" content="article" />
67
68            <meta property="og:image" content="https://villavauban.lu/wp-content/uploads/2015/02/villa.jpg" />
69
70            <meta property="og:site_name" content="Villa Vauban" />
71
72        
73    <style id='wp-img-auto-sizes-contain-inline-css' type='text/css'>
74img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px}
75/*# sourceURL=wp-img-auto-sizes-contain-inline-css */
76</style>
77<style id='wp-emoji-styles-inline-css' type='text/css'>
78
79	img.wp-smiley, img.emoji {
80		display: inline !important;
81		border: none !important;
82		box-shadow: none !important;
83		height: 1em !important;
84		width: 1em !important;
85		margin: 0 0.07em !important;
86		vertical-align: -0.1em !important;
87		background: none !important;
88		padding: 0 !important;
89	}
90/*# sourceURL=wp-emoji-styles-inline-css */
91</style>
92<link rel='stylesheet' id='wp-block-library-css' href='https://villavauban.lu/wp-includes/css/dist/block-library/style.min.css?ver=6.9.4' type='text/css' media='all' />
93
94<style id='classic-theme-styles-inline-css' type='text/css'>
95/*! This file is auto-generated */
96.wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none}
97/*# sourceURL=/wp-includes/css/classic-themes.min.css */
98</style>
99<style id='global-styles-inline-css' type='text/css'>
100:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgb(6,147,227) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgb(252,185,0) 0%,rgb(255,105,0) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgb(255,105,0) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);
100--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0);--wp--preset--shadow--crisp: 6px 6px 0px rgb(0, 0, 0);}:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}
100.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}
101/*# sourceURL=global-styles-inline-css */
102</style>
103
104<link rel='stylesheet' id='op_css-css' href='https://villavauban.lu/wp-content/plugins/wp-opening-hours/dist/styles/main.css?ver=6.9.4' type='text/css' media='all' />
105<link rel='stylesheet' id='wpml-legacy-horizontal-list-0-css' href='https://villavauban.lu/wp-content/plugins/sitepress-multilingual-cms/templates/language-switchers/legacy-list-horizontal/style.min.css?ver=1' type='text/css' media='all' />
106<style id='wpml-legacy-horizontal-list-0-inline-css' type='text/css'>
107.wpml-ls-statics-shortcode_actions, .wpml-ls-statics-shortcode_actions .wpml-ls-sub-menu, .wpml-ls-statics-shortcode_actions a {border-color:none;}.wpml-ls-statics-shortcode_actions a, .wpml-ls-statics-shortcode_actions .wpml-ls-sub-menu a, .wpml-ls-statics-shortcode_actions .wpml-ls-sub-menu a:link, .wpml-ls-statics-shortcode_actions li:not(.wpml-ls-current-language) .wpml-ls-link, .wpml-ls-statics-shortcode_actions li:not(.wpml-ls-current-language) .wpml-ls-link:link {color:rgba(255,255,255,.6);background-color:transparent;}.wpml-ls-statics-shortcode_actions .wpml-ls-sub-menu a:hover,.wpml-ls-statics-shortcode_actions .wpml-ls-sub-menu a:focus, .wpml-ls-statics-shortcode_actions .wpml-ls-sub-menu a:link:hover, .wpml-ls-statics-shortcode_actions .wpml-ls-sub-menu a:link:focus {color:#FFFFFF;background-color:transparent;}.wpml-ls-statics-shortcode_actions .wpml-ls-current-language > a {color:#FFFFFF;background-color:transparent;}.wpml-ls-statics-shortcode_actions .wpml-ls-current-language:hover>a, .wpml-ls-statics-shortcode_actions .wpml-ls-current-language>a:focus {color:#FFFFFF;background-color:transparent;}
108/*# sourceURL=wpml-legacy-horizontal-list-0-inline-css */
109</style>
110<link rel='stylesheet' id='bootstrap-style-css' href='https://villavauban.lu/wp-content/themes/vv/css/bootstrap.min.css?ver=3.3.2' type='text/css' media='all' />
111<link rel='stylesheet' id='flickity-theme-style-css' href='https://villavauban.lu/wp-content/themes/vv/css/flickity.min.css?ver=1.0.0' type='text/css' media='all' />
112<link rel='stylesheet' id='picker-css' href='https://villavauban.lu/wp-content/themes/vv/css/picker.css?ver=3.5.6' type='text/css' media='all' />
113<link rel='stylesheet' id='picker-date-css' href='https://villavauban.lu/wp-content/themes/vv/css/picker.date.css?ver=3.5.6' type='text/css' media='all' />
114<link rel='stylesheet' id='picker-time-css' href='https://villavauban.lu/wp-content/themes/vv/css/picker.time.css?ver=3.5.6' type='text/css' media='all' />
115<link rel='stylesheet' id='vv-style-css' href='https://villavauban.lu/wp-content/themes/vv/style.css?ver=1.0.2' type='text/css' media='all' />
116<link rel='stylesheet' id='vv-style-update-css' href='https://villavauban.lu/wp-content/themes/vv/style-update.css?ver=1.0.4' type='text/css' media='all' />
117<link rel='stylesheet' id='update-css' href='https://villavauban.lu/wp-content/themes/vv/update.css?ver=1.0.1' type='text/css' media='all' />
118<link rel='stylesheet' id='vv-style-shop-css' href='https://villavauban.lu/wp-content/themes/vv/style-shop.css?ver=1.0.1' type='text/css' media='all' />
119<link rel='stylesheet' id='accessibility-css' href='https://villavauban.lu/wp-content/themes/vv/css/accessibility.css?ver=6.9.4' type='text/css' media='all' />
120<link rel='stylesheet' id='moove_gdpr_frontend-css' href='https://villavauban.lu/wp-content/plugins/gdpr-cookie-compliance/dist/styles/gdpr-main.css?ver=5.0.11' type='text/css' media='all' />
121<style id='moove_gdpr_frontend-inline-css' type='text/css'>
122#moove_gdpr_cookie_modal,#moove_gdpr_cookie_info_bar,.gdpr_cookie_settings_shortcode_content{font-family:&#039;Nunito&#039;,sans-serif}#moove_gdpr_save_popup_settings_button{background-color:#373737;color:#fff}#moove_gdpr_save_popup_settings_button:hover{background-color:#000}#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton,#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton{background-color:#000}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder a.mgbutton,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.mgbutton,.gdpr_cookie_settings_shortcode_content .gdpr-shr-button.button-green{background-color:#000;border-color:#000}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder a.mgbutton:hover,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.mgbutton:hover,.gdpr_cookie_settings_shortcode_content .gdpr-shr-button.button-green:hover{background-color:#fff;color:#000}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-close i,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-close span.gdpr-icon{background-color:#000;border:1px solid #000}#moove_gdpr_cookie_info_bar span.moove-gdpr-infobar-allow-all.focus-g,#moove_gdpr_cookie_info_bar span.moove-gdpr-infobar-allow-all:focus,#moove_gdpr_cookie_info_bar button.moove-gdpr-infobar-allow-all.focus-g,#moove_gdpr_cookie_info_bar button.moove-gdpr-infobar-allow-all:focus,#moove_gdpr_cookie_info_bar span.moove-gdpr-infobar-reject-btn.focus-g,#moove_gdpr_cookie_info_bar span.moove-gdpr-infobar-reject-btn:focus,#moove_gdpr_cookie_info_bar button.moove-gdpr-infobar-reject-btn.focus-g,#moove_gdpr_cookie_info_bar button.moove-gdpr-infobar-reject-btn:focus,#moove_gdpr_cookie_info_bar span.change-settings-button.focus-g,#moove_gdpr_cookie_info_bar span.change-settings-button:focus,#moove_gdpr_cookie_info_bar button.change-settings-button.focus-g,#moove_gdpr_cookie_info_bar button.change-settings-button:focus{-webkit-box-shadow:0 0 1px 3px #000;-moz-box-shadow:0 0 1px 3px #000;box-shadow:0 0 1px 3px #000}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-close i:hover,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-close span.gdpr-icon:hover,#moove_gdpr_cookie_info_bar span[data-href]>u.change-settings-button{color:#000}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li.menu-item-selected a span.gdpr-icon,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li.menu-item-selected button span.gdpr-icon{color:inherit}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li a span.gdpr-icon,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li button span.gdpr-icon{color:inherit}#moove_gdpr_cookie_modal .gdpr-acc-link{line-height:0;font-size:0;color:transparent;position:absolute}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-close
122:hover i,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li a,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li button,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li button i,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li a i,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-tab-main-content a:hover,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton:hover,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton:hover,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a:hover,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button:hover,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content span.change-settings-button:hover,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.change-settings-button:hover,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content u.change-settings-button:hover,#moove_gdpr_cookie_info_bar span[data-href]>u.change-settings-button,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton.focus-g,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.focus-g,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.focus-g,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.focus-g,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton:focus,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton:focus,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a:focus,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button:focus,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content span.change-settings-button.focus-g,span.change-settings-button:focus,button.change-settings-button.focus-g,button.change-settings-button:focus,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content u.change-settings-button.focus-g,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content u.change-settings-button:focus{color:#000}#moove_gdpr_cookie_modal .moove-gdpr-branding.focus-g span,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main a.focus-g,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .gdpr-cd-details-toggle.focus-g{color:#000}#moove_gdpr_cookie_modal.gdpr_lightbox-hide{display:none}
123/*# sourceURL=moove_gdpr_frontend-inline-css */
124</style>
125<script type="text/javascript" src="https://villavauban.lu/wp-includes/js/jquery/jquery.min.js?ver=3.7.1" id="jquery-core-js"></script>
vendor: 1 bytes, line 125
125
126<script type="text/javascript" src="https://villavauban.lu/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.4.1" id="jquery-migrate-js"></script>
vendor: 1 bytes, line 126
126
127<script type="text/javascript" src="https://villavauban.lu/wp-content/themes/vv/js/flickity.pkgd.min.js?ver=1.0.0" id="flickity-js"></script>
vendor: 1 bytes, line 127
127
128<script type="text/javascript" src="https://villavauban.lu/wp-content/themes/vv/js/jquery.mousewheel.min.js?ver=3.1.12" id="mousewheel-js"></script>
vendor: 1 bytes, line 128
128
129<script type="text/javascript" src="https://villavauban.lu/wp-content/themes/vv/js/fix_undefined_functions.js?ver=1.0.0" id="fix-undefined-functions-js"></script>
vendor: 1 bytes, line 129
129
130<script type="text/javascript" src="https://villavauban.lu/wp-content/themes/vv/js/js.cookie.min.js?ver=6.9.4" id="cookie-js-js"></script>
vendor: 1 bytes, line 130
130
131<script type="text/javascript" src="https://villavauban.lu/wp-content/themes/vv/js/custom-script.js?ver=6.9.4" id="custom-js-js"></script>
131
132<link rel="https://api.w.org/" href="https://villavauban.lu/wp-json/" /><link rel="alternate" title="JSON" type="application/json" href="https://villavauban.lu/wp-json/wp/v2/pages/86" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://villavauban.lu/xmlrpc.php?rsd" />
133<meta name="generator" content="WordPress 6.9.4" />
134<link rel='shortlink' href='https://villavauban.lu/' />
135<meta name="generator" content="WPML ver:4.9.2 stt:1,4,3;" />
136
137    
137<script type="text/javascript">
138        var customPath = 'https://villavauban.lu/wp-content/themes/vv/fonts/Villa_Vauban';
139    </script>
139
140
141    <!-- Twitter universal website tag code -->
142    
142<script>
143        ! function(e, t, n, s, u, a) {
144            e.twq || (s = e.twq = function() {
145                    s.exe ? s.exe.apply(s, arguments) : s.queue.push(arguments);
146                }, s.version = '1.1', s.queue = [], u = t.createElement(n), u.async = !0, u.src = '//static.ads-twitter.com/uwt.js',
147                a = t.getElementsByTagName(n)[0], a.parentNode.insertBefore(u, a))
148        }(window, document, 'script');
149        // Insert Twitter Pixel ID and Standard Event data below
150        twq('init', 'nw8jq');
151        twq('track', 'PageView');
152    </script>
152
153    <!-- End Twitter universal website tag code -->
154
155    <style>
156        .videoWrapper {
157            position: relative;
158            padding-bottom: 56.25%;
159            padding-top: 25px;
160            height: 0;
161        }
162
163        .videoWrapper iframe {
164            position: absolute;
165            left: 0px;
166            top: 0px;
167            width: 100%;
168            height: 100%;
169        }
170
171        @media (max-width:1200px) {
172            .overlay-menu {
173                margin-top: 100px;
174            }
175        }
176    </style>
177    </head>
178<body class="home wp-singular page-template page-template-page-templates page-template-home-page page-template-page-templateshome-page-php page page-id-86 wp-theme-vv ">
179    <ul class="skip-links">
180        <li>
181            <a href="#site-navigation">Aller au menu principal</a>
182        </li>
183        <li>
184            <a href="#main">Aller au contenu</a>
185        </li>
186        <li>
187            <a href="#footer">Aller au pied de page </a>
188        </li>
189    </ul>
190    <div id="fb-root"></div>
191    
191<script>
192        (function(d, s, id) {
193            var js, fjs = d.getElementsByTagName(s)[0];
194            if (d.getElementById(id)) return;
195            js = d.createElement(s);
196            js.id = id;
197            js.src = "//connect.facebook.net/en_GB/sdk.js#xfbml=1&version=v2.3&appId=1613017428916930";
198            fjs.parentNode.insertBefore(js, fjs);
199        }(document, 'script', 'facebook-jssdk'));
200    </script>
200
201
202    <!-- Facebook Pixel Code -->
203    
203<script>
vendor: 678 bytes, lines 203-222
203
204        ! function(f, b, e, v, n, t, s) {
205            if (f.fbq) return;
206            n = f.fbq = function() {
207                n.callMethod ?
208                    n.callMethod.apply(n, arguments) : n.queue.push(arguments)
209            };
210            if (!f._fbq) f._fbq = n;
211            n.push = n;
212            n.loaded = !0;
213            n.version = '2.0';
214            n.queue = [];
215            t = b.createElement(e);
216            t.async = !0;
217            t.src = v;
218            s = b.getElementsByTagName(e)[0];
219            s.parentNode.insertBefore(t, s)
220        }(window, document, 'script',
221            'https://connect.facebook.net/en_US/fbevents.js');
222        fbq('init', '
2221355396987938323
vendor: 42 bytes, lines 222-224
222');
223        fbq('track', 'PageView');
224    
224</script>
224
225    <noscript><img height="1" width="1" style="display:none"
226            src="https://www.facebook.com/tr?id=1355396987938323&ev=PageView&noscript=1" /></noscript>
227    <!-- End Facebook Pixel Code -->
228
229    
230
231
232    <div class="language-overlay">
233        <div class="navigation">
234            <div class="language-close">
235                <span class="vv-hamburger" aria-hidden="true"></span>
236            </div>
237        </div>
238        <div class="container">
239            <div class="row">
240                <div class="col-xs-12">
241                    <div id="lang_sel_list-overlay" class="lang_sel_list_horizontal"><ul aria-label="Sélecteur de langue"><li class="icl-fr"><a href="https://villavauban.lu/" class="lang_sel_sel">Français<span class="sr-only">sélectionnés</span></a></li><li class="icl-de"><a href="https://villavauban.lu/de/" class="lang_sel_other">Allemand</a></li><li class="icl-en"><a href="https://villavauban.lu/en/" class="lang_sel_other">Anglais</a></li></ul></div>                </div>
242            </div>
243        </div>
244    </div>
245
246    <header id="site-navigation" class="header" role="banner">
247
248        <div class="header-inner">
249            <a class="scroll-down static-banner">
250                <span class="glyphicon glyphicon-menu-down"></span>
251            </a>
252            <nav class="navigation" role="navigation">
253                <div class="language-menu">
254                    <div id="lang_sel_list-menu" class="lang_sel_list_horizontal"><ul aria-label="Sélecteur de langue"><li class="lang_sel_list-item icl-fr"><a href="https://villavauban.lu/" class="lang_sel_sel"><span class="sr-only">Français sélectionnés</span><span aria-hidden="true">FR</span></a></li><li class="lang_sel_list-item icl-de"><a href="https://villavauban.lu/de/" class="lang_sel_other"><span class="sr-only">Allemand</span><span aria-hidden="true">DE</span></a></li><li class="lang_sel_list-item icl-en"><a href="https://villavauban.lu/en/" class="lang_sel_other"><span class="sr-only">Anglais</span><span aria-hidden="true">EN</span></a></li></ul></div>                </div>
255                <div class="menu-overlay" tabindex="-1" role="dialog" aria-labelledby="main-menu" aria-hidden="true" aria-modal="true">
256                    <div class="navigation">
257                        <a href="#" class="menu" role="button">
258                            <span class="vv-hamburger" aria-hidden="true"></span>
259                            <div class="menu-label hidden-xs"><span class="sr-only">Fermer le menu</span><span aria-hidden="true">MENU</span></div>
260                        </a>
261                    </div>
262                    <div class="container menu-container">
263                        <span class="sr-only" id="main-menu">Menu principal</span>
264
265                        <div id="overlay-menu" class="overlay-menu"><div class="row"><div class="col-sm-12 col-md-4"><ul><li><a href="https://villavauban.lu/visiter-le-musee/agenda/" title="Agenda"><div class="original"><span>Agenda</span></div></a></li></ul></div><div class="col-sm-12 col-md-4"><ul><li><a href="https://villavauban.lu/expositions/" title="Expositions"><div class="original"><span>Expositions</span></div></a></li></ul></div><div class="col-sm-12 col-md-4"><ul><li><a href="https://villavauban.lu/visiter-le-musee/" title="Visiter"><div class="original"><span>Visiter</span></div></a></li></ul></div><div class="col-sm-12 col-md-4 col-md-offset-2"><ul><li><a href="https://villavauban.lu/digital/" title="Digital"><div class="original"><span>Digital</span></div></a></li></ul></div><div class="col-sm-12 col-md-4"><ul><li><a href="https://villavauban.lu/le-musee/" title="Le Mus&eacute;e"><div class="original"><span>Le Musée</span></div></a></li></ul></div></div></div>                                            </div>
266
267                                            <div class="cookie-disclaimer">
268                            <div class="container">
269                                <div class="row">
270                                    <div class="col-xs-12">
271                                        <div class="disclaimer-text">
272                                            We use cookies to enhance your experience when visiting our website. <a href="http://www.legilux.public.lu/leg/directives/archives/2009/2009D0136.html" target="_blank" aria-label="(opens in a new window)"> Learn more </a><a class="remove-cookie-disclaimer btn btn-link"><span class="glyphicon glyphicon-remove" aria-hidden="true"></span></a>                                        </div>
273                                    </div>
274                                </div>
275                            </div>
276                        </div>
277                    
278                    <a href="#subscribe" class="subscribe">Abonnez-vous</a>
279                </div>
280                <a href="#" class="menu" role="button">
281                    <span class="vv-hamburger" aria-hidden="true"></span>
282                    <div class="menu-label hidden-xs"><span class="sr-only">Ouvrir le menu</span><span aria-hidden="true">MENU</span></div>
283                </a>
284                <div class="logo">
285                    <div class="vv-logo">
286                        <h1>
287                            <img src="https://villavauban.lu/wp-content/themes/vv/img/villa-logo.png" alt="Villa Vauban">
288                        </h1>
289                    </div>
290                </div>
291
292                <div class="right-menu-wrapper">
293                    <div class="language-switcher hidden-xs">
294                        <div id="lang_sel_list-desktop" class="lang_sel_list_horizontal"><ul aria-label="Sélecteur de langue"><li class="lang_sel_list-item icl-fr"><a href="https://villavauban.lu/" class="lang_sel_sel"><span class="sr-only">Français sélectionnés</span><span aria-hidden="true">FR</span></a></li><li class="lang_sel_list-item icl-de"><a href="https://villavauban.lu/de/" class="lang_sel_other"><span class="sr-only">Allemand</span><span aria-hidden="true">DE</span></a></li><li class="lang_sel_list-item icl-en"><a href="https://villavauban.lu/en/" class="lang_sel_other"><span class="sr-only">Anglais</span><span aria-hidden="true">EN</span></a></li></ul></div>                    </div>
295
296                    <div class="access-module">
297                            <div class="access-menu">
298        <div class="acces-container">
299            <button class="expand_module" type="button" aria-expanded="false" aria-label="Options d'accessibilité">
300                <svg xmlns="http://www.w3.org/2000/svg" height="1em" viewBox="0 0 512 512" aria-hidden="true"><!--! Font Awesome Free 6.4.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->
301                    <path d="M0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zm161.5-86.1c-12.2-5.2-26.3 .4-31.5 12.6s.4 26.3 12.6 31.5l11.9 5.1c17.3 7.4 35.2 12.9 53.6 16.3v50.1c0 4.3-.7 8.6-2.1 12.6l-28.7 86.1c-4.2 12.6 2.6 26.2 15.2 30.4s26.2-2.6 30.4-15.2l24.4-73.2c1.3-3.8 4.8-6.4 8.8-6.4s7.6 2.6 8.8 6.4l24.4 73.2c4.2 12.6 17.8 19.4 30.4 15.2s19.4-17.8 15.2-30.4l-28.7-86.1c-1.4-4.1-2.1-8.3-2.1-12.6V235.5c18.4-3.5 36.3-8.9 53.6-16.3l11.9-5.1c12.2-5.2 17.8-19.3 12.6-31.5s-19.3-17.8-31.5-12.6L338.7 175c-26.1 11.2-54.2 17-82.7 17s-56.5-5.8-82.7-17l-11.9-5.1zM256 160a40 40 0 1 0 0-80 40 40 0 1 0 0 80z" />
302                </svg>
303            </button>
304
305            <div class="access_module">
306                <p class="module_title">Options d'accessibilité</p>
307                <div class="block-popin-accessibility">
308                    <label class="my-toggle">
309                        <input type="checkbox" id="fontsize" class="my-toggle-checkbox" aria-labelledby="font_size" data-accessibility-name="font_size" >
310                        <span class="my-toggle-checkbox-toggle"></span>
311                        <span id="font_size">
312                            <span>Augmenter la police</span>
313                        </span>
314                    </label>
315                </div>
316
317                <div class="block-popin-accessibility">
318                    <label class="my-toggle">
319                        <input type="checkbox" id="contraste" class="my-toggle-checkbox" aria-labelledby="contraste" data-accessibility-name="contraste" >
320                        <span class="my-toggle-checkbox-toggle"></span>
321                        <span id="contraste">
322                            <span>Accentuer les contrastes</span>
323                        </span>
324                    </label>
325                </div>
326
327            </div>
328        </div>
329    </div>
330                    </div>
331                </div>
332            </nav>
333            <div class="home-slider carousel slide" id="home-slider">
334                <!-- <div class="carousel-inner"> -->
335                <div class="gallery-cell item active news ">    <div class="slider-image" style="background-image: url(https://villavauban.lu/wp-content/uploads/2026/09/2026075668_VDL_Programmes_2026_03_cover-web_VV_2500x1542_BAT-1600x900.jpg);">    </div>    <div class="slider-caption">        <div class="inner">            <div class="container">                <div class="row">                    <div class="">                        <div class="slider-box">                            <div class="innerleft" style="">                                <h2>Nouveau programme culturel - septembre 2026 à avril 2027</h2>                                <p></p>                                <a href=https://villavauban.lu/news/nouveau-programme-culturel-septembre-2026-a-avril-2027/ class="btn btn-vv white">News<span class="glyphicon glyphicon-menu-right"></span></a>                            </div>                        </div>                    </div>                </div>            </div>        </div>    </div></div><div class="gallery-cell item exhibition ">    <div class="slider-image" style="background-image: url(https://villavauban.lu/wp-content/uploads/2025/12/Site_150-dpi_JMW-Turner-Luxembourg-Rham-Bock-1839-TATE.jpg);">    </div>    <div class="slider-caption">        <div class="inner">            <div class="container">                <div class="row">                    <div class="">                        <div class="slider-box">                            <div class="innerleft" style="">                                <h2>Grand Tourists to Turner</h2>                                <h3 class="hidden-xs">Artistes britanniques en Europe, 1750-1850</h3><p>04.07.2026 > 11.10.2026</p>                                <a href=https://villavauban.lu/exhibition/grand-tourists-to-turner/ class="btn btn-vv white">Exposition<span class="glyphicon glyphicon-menu-right"></span></a>                            </div>                        </div>                    </div>                </div>            </div>        </div>    </div></div><div class="gallery-cell item news ">    <div class="slider-image" style="background-image: url(https://villavauban.lu/wp-content/uploads/2025/06/La-Guinguette-Villa-Vauban-2025-2-1600x900.jpg);">    </div>    <div class="slider-caption">        <div class="inner">            <div class="container">                <div class="row">                    <div class="">                        <div class="slider-box">                            <div class="innerleft" style="">                                <h2>« La Guinguette » revient à la Villa Vauban</h2>                                <p></p>                                <a href=https://villavauban.lu/news/la-guinguette-revient-a-la-villa-vauban/ class="btn btn-vv white">News<span class="glyphicon glyphicon-menu-right"></span></a>                            </div>                        </div>                    </div>                </div>            </div>        </div>    </div></div><div class="gallery-cell item exhibition ">    <div class="slider-image" style="background-image: url(https://villavauban.lu/wp-content/uploads/2020/12/Site-photo_new-sans-texte.jpg);">    </div>    <div class="slider-caption">        <div class="inner">            <div class="container">                <div class="row">                    <div class="">                        <div class="slider-box">                            <div class="innerleft" style="">                                <h2>Une promenade à travers l'art</h2>                                <h3 class="hidden-xs">Peintures et sculptures européennes, 17e - 19e siècles</h3><p>04.07.2026 > 11.10.2026</p>                                <a href=https://villavauban.lu/exhibition/une-promenade-a-travers-lart/ class="btn btn-vv white">Exposition<span class="glyphicon glyphicon-menu-right"></span></a>                            </div>                        </div>                    </div>                </div>            </div>        </div>    </div></div>
336            </div>
337
338        </div>
339
340
341    </header>
342    <!-- <span id="main"></span> -->
343
344    <section class="top">
345        <div class="container">
346                    </div>
347    </section>
348
349    <main id="main" role="main">
350                            <section id="test" class="content">
351                <div class="container">
352                    <section class="block">
353                        <div class="row">
354                            <div class="col-xs-12 divider">
355                                <div class="title">
356                                    <h2>Expositions en cours</h2>
357                                </div>
358                                <div class="line">
359                                    <div class="inner"></div>
360                                </div>
361                                <div class="more">
362                                    <a href="https://villavauban.lu/expositions/" class="btn btn-vv black">
363                                        Voir tout<span class="glyphicon glyphicon-menu-right"></span>
364                                    </a>
365                                </div>
366                            </div>
367                        </div>
368
369                        <div class="row"><div class="col-xs-4 listing-col col-xxs-12">    <a href="https://villavauban.lu/exhibition/grand-tourists-to-turner/" title="Grand Tourists to Turner">        <section>            <article>            <figure>                <img src="https://villavauban.lu/wp-content/uploads/2025/12/Site_150-dpi_JMW-Turner-Luxembourg-Rham-Bock-1839-TATE-340x461.jpg" alt="" style="background: #333333;">            </figure>                <div class="list-item-content">                    <header>                        <h3>Grand Tourists to Turner</h3><h3>Artistes britanniques en Europe, 1750-1850</h3>                    </header>                    <div class="small">04.07.2026 > 11.10.2026                    </div>                </div>            </article>        </section>    </a></div><div class="col-xs-4 listing-col col-xxs-12">    <a href="https://villavauban.lu/exhibition/gravures-anglaises-lediteur-john-boydell-1719-1804/" title="Gravures anglaises : L&rsquo;&eacute;diteur John Boydell (1719-1804)">        <section>            <article>            <figure>                <img src="https://villavauban.lu/wp-content/uploads/2025/12/John-Boydell--340x461.jpg" alt="" style="background: #333333;">            </figure>                <div class="list-item-content">                    <header>                        <h3>Gravures anglaises : L’éditeur John Boydell (1719-1804)</h3>                    </header>                    <div class="small">04.07.2026 > 11.10.2026                    </div>                </div>            </article>        </section>    </a></div><div class="col-xs-4 listing-col col-xxs-12">    <a href="https://villavauban.lu/exhibition/une-promenade-a-travers-lart/" title="Une promenade &agrave; travers l'art">        <section>            <article>            <figure>                <img src="https://villavauban.lu/wp-content/uploads/2020/12/Site-photo_new-sans-texte-340x461.jpg" alt="" style="background: #333333;">            </figure>                <div class="list-item-content">                    <header>                        <h3>Une promenade à travers l'art</h3><h3>Peintures et sculptures européennes, 17e - 19e siècles</h3>                    </header>                </div>            </article>        </section>    </a></div></div>
370                    </section>
371                </div>
372            </section>
373        
374                            <section class="content">
375                <div class="container">
376                    <section class="block">
377                        <div class="row">
378                            <div class="col-xs-12 divider">
379                                <div class="title">
380                                    <h2>Événements phares</h2>
381                                </div>
382                                <div class="line">
383                                    <div class="inner"></div>
384                                </div>
385                                <div class="more">
386                                    <a href="https://villavauban.lu/visiter-le-musee/agenda/" class="btn btn-vv black">
387                                        Voir tout<span class="glyphicon glyphicon-menu-right"></span>
388                                    </a>
389                                </div>
390                            </div>
391                        </div>
392
393                        <div class="row">    <div class="col-xs-4 listing-col col-xxs-12">        <a href="https://villavauban.lu/event/visite-guidee-reguliere-grand-tourists-to-turner/?date=1790359200">            <section>                <article>                    <div class="date" style="color:#b48700;">25 Sep</div>            <figure style="background: #b48700;">
393                <span class="corner" style="background: #E1CF99;"></span>                <img src="https://villavauban.lu/wp-content/uploads/2026/04/Turner-D20245-340x461.jpg" alt="">            </figure>                    <div class="list-item-content">                        <div>                            <h3 style="color:#b48700;">Visite guidée régulière : Grand Tourists to Turner</h3>                        </div><div class="small-date">Vendredi, 18h00 (FR)</div>                    </div>          </article>      </section>  </a><div class="event-types">                        <div class="small"><a class="type-item" href="https://villavauban.lu/visiter-le-musee/agenda/?eventType[]=visite-guidee">Visite guidée</a></div>                        <div class="small">(<a class="type-item" href="https://villavauban.lu/visiter-le-musee/agenda/?publicType[]=tout-public">Tout public</a>)</div></div></div>    <div class="col-xs-4 listing-col col-xxs-12">        <a href="https://villavauban.lu/event/villa-plage-tricot-sur-lherbe-2/">            <section>                <article>            <figure style="background: #b48700;">                <span class="corner" style="background: #E1CF99;"></span>                <img src="https://villavauban.lu/wp-content/uploads/2026/06/Tricot-2026-340x461.jpg" alt="">            </figure>                    <div class="list-item-content">                        <div>                            <h3 style="color:#b48700;">Villa Plage : Tricot sur l’herbe</h3>                        </div>                    </div>          </article>      </section>  </a><div class="event-types">                        <div class="small"><a class="type-item" href="https://villavauban.lu/visiter-le-musee/agenda/?eventType[]=workshop-2">Workshop</a></div>                        <div class="small">(<a class="type-item" href="https://villavauban.lu/visiter-le-musee/agenda/?publicType[]=adultes">Adultes</a>)</div></div></div>    <div class="col-xs-4 listing-col col-xxs-12">        <a href="https://villavauban.lu/event/concerts-de-midi/">            <section>                <article>            <figure style="background: #b48700;">                <span class="corner" style="background: #E1CF99;"></span>                <img src="https://villavauban.lu/wp-content/uploads/2022/04/Concerts-de-midi-340x461.jpg" alt="">            </figure>                    <div class="list-item-content">                        <div>                            <h3 style="color:#b48700;">Concerts de midi</h3>                        </div>                    </div>          </article>      </section>  </a><div class="event-types">                        <div class="small">(<a class="type-item" href="https://villavauban.lu/visiter-le-musee/agenda/?publicType[]=tout-public">Tout public</a>)</div></div></div></div>
394                    </section>
395                </div>
396            </section>
397        
398
399
400        
401        <section class="content">
402            <div class="container">
403                <section class="block">
404                    <div class="row">
405                        <div class="col-xs-12 divider">
406                            <div class="title">
407                                <h2></h2>
408                                <h2>Visites et ateliers privés</h2>
409                            </div>
410                            <div class="line">
411                                <div class="inner"></div>
412                            </div>
413                            <div class="more">
414                                <a href="https://villavauban.lu/visiter-le-musee/sur-demande/" class="btn btn-vv black">
415                                    Voir tout<span class="glyphicon glyphicon-menu-right"></span>
416                                </a>
417                            </div>
418                        </div>
419                    </div>
420
421                    <div class="row">    <div class="col-xs-4 listing-col col-xxs-12">        <a href="https://villavauban.lu/event/visite-guidee-pour-personnes-a-besoins-specifiques/" target="_blank" aria-label="(opens in a new window)">            <section>                <article>            <figure style="background: #1;">
421                <span class="corner" style="background: #999999;"></span>                <img src="https://villavauban.lu/wp-content/uploads/2017/10/photo14_VG-pour-personnes-en-situation-de-handicap-340x461.jpg" alt="">            </figure>                    <div class="list-item-content">                        <div>                            <h3 style="color:#1;">Visite guidée pour personnes à besoins spécifiques</h3>                        </div>                    </div>          </article>      </section>  </a><div class="event-types">                        <div class="small"><a class="type-item" href="https://villavauban.lu/visiter-le-musee/agenda/?eventType[]=visite-guidee">Visite guidée</a></div></div></div>    <div class="col-xs-4 listing-col col-xxs-12">        <a href="https://villavauban.lu/event/les-magiciens-des-couleurs/" target="_blank" aria-label="(opens in a new window)">            <section>                <article>            <figure style="background: #1;">                <span class="corner" style="background: #999999;"></span><span class="for-children edouard-1" aria-hidden="true"><span class="inner"></span></span>                <img src="https://villavauban.lu/wp-content/uploads/2024/12/456A9144-340x461.jpg" alt="">            </figure>                    <div class="list-item-content">                        <div>                            <h3 style="color:#1;">Les magiciens des couleurs</h3>                        </div>                    </div>          </article>      </section>  </a><span class="sr-only for-children edouard-2"><span class="inner"></span></span><div class="event-types">                        <div class="small"><a class="type-item" href="https://villavauban.lu/visiter-le-musee/agenda/?eventType[]=visite-guidee">Visite guidée</a>, <a class="type-item" href="https://villavauban.lu/visiter-le-musee/agenda/?eventType[]=workshop-2">Workshop</a></div>                        <div class="small">(<a class="type-item" href="https://villavauban.lu/visiter-le-musee/agenda/?publicType[]=ecoles">Écoles</a>, <a class="type-item" href="https://villavauban.lu/visiter-le-musee/agenda/?publicType[]=creches">Crèches</a>)</div></div></div>    <div class="col-xs-4 listing-col col-xxs-12">        <a href="https://villavauban.lu/event/walk-the-art-2/" target="_blank" aria-label="(opens in a new window)">            <section>                <article>            <figure style="background: #1;">                <span class="corner" style="background: #999999;"></span><span class="for-children edouard-2" aria-hidden="true"><span class="inner"></span></span>                <img src="https://villavauban.lu/wp-content/uploads/2020/08/S2A1206_SIMON-VERJUS_MaisonModerne-340x461.jpg" alt="">            </figure>                    <div class="list-item-content">                        <div>                            <h3 style="color:#1;">Walk the Art</h3>                        </div>                    </div>          </article>      </section>  </a><span class="sr-only for-children edouard-1"><span class="inner"></span></span><div class="event-types">                        <div class="small"><a class="type-item" href="https://villavauban.lu/visiter-le-musee/agenda/?eventType[]=visite-guidee">Visite guidée</a></div>                        <div class="small">(<a class="type-item" href="https://villavauban.lu/visiter-le-musee/agenda/?publicType[]=ecoles">Écoles</a>, <a class="type-item" href="https://villavauban.lu/visiter-le-musee/agenda/?publicType[]=creches">Crèches</a>)</div></div></div></div>
422                </section>
423            </div>
424        </section>
425
426    </main>
427
428    
428<script type="text/javascript">
429        function setHomeHeaderFixed() {
430            jQuery('.gallery-cell.item.active.is-selected').removeClass('is-selected');
431
432            setTimeout(function() {
433                jQuery('.gallery-cell.item.active .slider-caption').css('visibility', 'hidden');
434                jQuery('.header').addClass('fixed-header');
435
436                setTimeout(function() {
437                    jQuery('.header').css('position', 'fixed');
438                    jQuery('.top').css('padding-top', '130px');
439
440                    isScrolling = false;
441                }, 550);
442            }, 300);
443
444            isScrolling = true;
445        }
446
447        function setHomeHeaderStatic() {
448            jQuery('.header').removeClass('fixed-header');
449
450            setTimeout(function() {
451                jQuery('.header').css('position', 'static');
452                jQuery('.top').css('padding-top', '0px');
453
454                jQuery('.gallery-cell.item.active .slider-caption').css('visibility', 'visible');
455                jQuery('.gallery-cell.item.active').addClass('is-selected');
456            }, 550);
457
458            isScrolling = true;
459        }
460
461        function resizeSlider() {
462            if (jQuery('body').hasClass('is-mobile')) {
463                jQuery('header.header').css('height', (jQuery(window).height() - jQuery('section.top').height() - 8) + 'px');
464            }
465        }
466
467        function setStickyHeader() {
468            jQuery(window).off('.affix');
469
470            jQuery('.sticky-header').removeData('bs.affix').removeClass('affix affix-top affix-bottom');
471
472            jQuery('.sticky-header').affix({
473                offset: {
474                    top: (jQuery(window).height() - jQuery('section.top').height() - 8),
475                }
476            });
477        }
478
479        var interval, timer;
480        var isScrolling = true;
481        var firstScrollUp = true;
482        var firstScrollUpTimer;
483        var homeSlider;
484
485        jQuery(window).on('load', function() {
486            setTimeout(function() {
487                jQuery('html,body').scrollTop(0);
488                homeSlider.flickity('resize');
489                updateTabindex(); // ADD ACCESSIBILITY
490                resizeSlider();
491            }, 0);
492        });
493
494        // ADD ACCESSIBILITY
495        function updateTabindex() {
496            var slides = document.querySelectorAll('#home-slider .gallery-cell');
497            slides.forEach(function(slide) {
498                // for each slide item check if class .is-selected, if yes remove aria-hidden and tabindex="-1" else add aria-hidden and tabindex="-1"
499                if (slide.classList.contains('is-selected')) {
500                    slide.removeAttribute('aria-hidden');
501                    slide.querySelectorAll('a, input, button, select').forEach(function(focusable) {
502                        focusable.removeAttribute('tabindex');
503                    });
504                } else {
505                    slide.setAttribute('aria-hidden', 'true');
506                    slide.querySelectorAll('a, input, button, select').forEach(function(focusable) {
507                        focusable.setAttribute('tabindex', '-1');
508                    });
509                }
510            });
511        }
512
513        jQuery(document).ready(function() {
514            homeSlider = jQuery('#home-slider').flickity({
515                cellAlign: 'center',
516                contain: true,
517                wrapAround: true,
518                imagesLoaded: true,
519                prevNextButtons: true,
520                pageDots: false,
521                percentPosition: false,
522                setGallerySize: false,
523                lazyLoad: true,
524                //   autoPlay: 10000
525                autoPlay: false,
526                on: {
527                    ready: function() {
528                        updateTabindex();
529                    },
530                    change: function() {
531                        updateTabindex();
532                    }
533                }
534            });
535
536            jQuery('.flickity-prev-next-button.previous').attr('aria-label', '←');
537            jQuery('.flickity-prev-next-button.next').attr('aria-label', '→');
538
539            jQuery(window).resize(function(event) {
540                resizeSlider();
541
542                            });
543
544                            if (jQuery('#home-slider').length) {
545                    jQuery(document).on('click', '.scroll-down', function(event) {
546                        event.preventDefault();
547
548                        setHomeHeaderFixed();
549                    });
550                }
551
552
553                jQuery('body').on('mousewheel', function(event) {
554                    if (isScrolling) {
555                        event.preventDefault();
556                        event.stopPropagation();
557                        jQuery("html,body").stop();
558                    }
559
560                    if (event.deltaY < 0 && !jQuery('.header').hasClass('fixed-header')) {
561                        setHomeHeaderFixed();
562                    } else if (jQuery(window).scrollTop() == 0 && event.deltaY > 0 && jQuery('.header').hasClass('fixed-header')) {
563                        if (firstScrollUp) {
564                            firstScrollUpTimer = setTimeout(function() {
565                                firstScrollUp = false;
566                            }, 600);
567                        } else {
568                            setHomeHeaderStatic();
569                        }
570                    }
571
572                    if (event.deltaY < 0) {
573                        clearTimeout(firstScrollUpTimer);
574                        firstScrollUp = true;
575                    }
576                });
577
578                jQuery(document).keydown(function(event) {
579                    if (event.keyCode == 32 || event.keyCode == 40) {
580
581                        if (!jQuery('.header').hasClass('fixed-header')) {
582                            event.preventDefault();
583
584                            setHomeHeaderFixed();
585                            return false;
586                        }
587                    } else if (event.keyCode == 38) {
588                        if (jQuery(window).scrollTop() == 0 && jQuery('.header').hasClass('fixed-header')) {
589                            event.preventDefault();
590
591                            clearTimeout(firstScrollUpTimer);
592                            firstScrollUp = true;
593                            setHomeHeaderStatic();
594
595                            return false;
596                        }
597                    }
598                });
599
600                if (jQuery(window).scrollTop() == 0 && jQuery('.header').hasClass('fixed-header')) {
601                    setHomeHeaderStatic();
602                }
603                    });
604    </script>
604
605
606    
607
608
609<section class="bottom news" role="region" aria-labelledby="region-news">
610    <div class="container">
611        <div class="row">
612            <div class="col-xs-12 divider">
613                <div class="title">
614                    <h2 id="region-news">News</h2>
615                </div>
616                <div class="line"><div class="inner"></div></div>
617                <div class="more">
618                    <a href="https://villavauban.lu/actualites/" class="btn btn-vv black">
619                        Afficher tout<span class="glyphicon glyphicon-menu-right"></span>
620                    </a>
621                </div>
622            </div>
623        </div>
624        <div class="row">
625            <a href="https://villavauban.lu/news/nouveau-programme-culturel-septembre-2026-a-avril-2027/"><article><div class="col-xs-4"><figure><img src="https://villavauban.lu/wp-content/uploads/2026/09/2026075668_VDL_Programmes_2026_03_cover-web_VV_2500x1542_BAT-340x215.jpg" alt=""></figure></div><div class="col-xs-8"><header><h3>Nouveau programme culturel - septembre 2026 à avril 2027</h3></header><p>La Villa Vauban vous invite à plonger au cœur de sa nouvelle programmation culturelle ! Expositions, visites guidées, ateliers et événements rythmeront les prochains mois et vous permettront…<span class="glyphicon glyphicon-menu-right"></span></p></div></article></a>        </div>
626    </div>
627</section>
628
629
630
631
632<section class="bottom news" role="region" aria-labelledby="region-news">
633    <div class="container">
634        <div class="row">
635            <div class="col-xs-12 divider">
636                <div class="title">
637                    <h2 id="region-news">Actuellement en vente au musée</h2>
638                </div>
639                <div class="line"><div class="inner"></div></div>
640                <div class="more">
641                    <a href="https://villavauban.lu/le-musee/actuellement-en-vente-au-musee/" class="btn btn-vv black">
642                        Afficher tout<span class="glyphicon glyphicon-menu-right"></span>
643                    </a>
644                </div>
645            </div>
646        </div>
647        <div class="row">
648                            <div class="col-xs-12 col-xs-4_ col-sm-4 col-md-3 product-col">
649                    <article class="product-item">
650                        <a href="https://villavauban.lu/products/viaggio-in-italia/">
651                                                            <div class="image">
652                                    <figure>
653                                        <div class="corner"></div>
654                                        <img width="245" height="250" src="https://villavauban.lu/wp-content/uploads/2025/08/Livre-Viaggio_Christof-Weber-2025-245x250.jpg" class="attachment-shop-image size-shop-image wp-post-image" alt="" decoding="async" loading="lazy" srcset="https://villavauban.lu/wp-content/uploads/2025/08/Livre-Viaggio_Christof-Weber-2025-245x250.jpg 245w, https://villavauban.lu/wp-content/uploads/2025/08/Livre-Viaggio_Christof-Weber-2025-294x300.jpg 294w, https://villavauban.lu/wp-content/uploads/2025/08/Livre-Viaggio_Christof-Weber-2025-1003x1024.jpg 1003w, https://villavauban.lu/wp-content/uploads/2025/08/Livre-Viaggio_Christof-Weber-2025-768x784.jpg 768w, https://villavauban.lu/wp-content/uploads/2025/08/Livre-Viaggio_Christof-Weber-2025-1504x1536.jpg 1504w, https://villavauban.lu/wp-content/uploads/2025/08/Livre-Viaggio_Christof-Weber-2025-2006x2048.jpg 2006w, https://villavauban.lu/wp-content/uploads/2025/08/Livre-Viaggio_Christof-Weber-2025-59x60.jpg 59w, https://villavauban.lu/wp-content/uploads/2025/08/Livre-Viaggio_Christof-Weber-2025-413x422.jpg 413w, https://villavauban.lu/wp-content/uploads/2025/08/Livre-Viaggio_Christof-Weber-2025-1567x1600.jpg 1567w, https://villavauban.lu/wp-content/uploads/2025/08/Livre-Viaggio_Christof-Weber-2025-564x576.jpg 564w" sizes="auto, (max-width: 245px) 100vw, 245px" />                                    </figure>
655                                </div>
656                                                        <div class="title">
657                                <h3>Viaggio in Italia</h3>
658                            </div>
659                            <div class="price">10 €</div>
660                        </a>
661                    </article>
662                </div>
663                            <div class="col-xs-12 col-xs-4_ col-sm-4 col-md-3 product-col">
664                    <article class="product-item">
665                        <a href="https://villavauban.lu/products/rome-ville-eternelle/">
666                                                            <div class="image">
667                                    <figure>
668                                        <div class="corner"></div>
669                                        <img width="200" height="250" src="https://villavauban.lu/wp-content/uploads/2025/08/Livre-R
669ome-ville-eternelle_Christof-Weber-2025-200x250.jpg" class="attachment-shop-image size-shop-image wp-post-image" alt="" decoding="async" loading="lazy" srcset="https://villavauban.lu/wp-content/uploads/2025/08/Livre-Rome-ville-eternelle_Christof-Weber-2025-200x250.jpg 200w, https://villavauban.lu/wp-content/uploads/2025/08/Livre-Rome-ville-eternelle_Christof-Weber-2025-240x300.jpg 240w, https://villavauban.lu/wp-content/uploads/2025/08/Livre-Rome-ville-eternelle_Christof-Weber-2025-818x1024.jpg 818w, https://villavauban.lu/wp-content/uploads/2025/08/Livre-Rome-ville-eternelle_Christof-Weber-2025-768x962.jpg 768w, https://villavauban.lu/wp-content/uploads/2025/08/Livre-Rome-ville-eternelle_Christof-Weber-2025-1227x1536.jpg 1227w, https://villavauban.lu/wp-content/uploads/2025/08/Livre-Rome-ville-eternelle_Christof-Weber-2025-1636x2048.jpg 1636w, https://villavauban.lu/wp-content/uploads/2025/08/Livre-Rome-ville-eternelle_Christof-Weber-2025-48x60.jpg 48w, https://villavauban.lu/wp-content/uploads/2025/08/Livre-Rome-ville-eternelle_Christof-Weber-2025-337x422.jpg 337w, https://villavauban.lu/wp-content/uploads/2025/08/Livre-Rome-ville-eternelle_Christof-Weber-2025-1278x1600.jpg 1278w, https://villavauban.lu/wp-content/uploads/2025/08/Livre-Rome-ville-eternelle_Christof-Weber-2025-460x576.jpg 460w, https://villavauban.lu/wp-content/uploads/2025/08/Livre-Rome-ville-eternelle_Christof-Weber-2025-1917x2400.jpg 1917w, https://villavauban.lu/wp-content/uploads/2025/08/Livre-Rome-ville-eternelle_Christof-Weber-2025-scaled.jpg 2045w" sizes="auto, (max-width: 200px) 100vw, 200px" />                                    </figure>
670                                </div>
671                                                        <div class="title">
672                                <h3>Rome, ville éternelle</h3>
673                            </div>
674                            <div class="price">8 €</div>
675                        </a>
676                    </article>
677                </div>
678                            <div class="col-xs-12 col-xs-4_ col-sm-4 col-md-3 product-col">
679                    <article class="product-item">
680                        <a href="https://villavauban.lu/products/beckius-1899-1946-impressions-dici-et-dailleurs/">
681                                                            <div class="image">
682                                    <figure>
683                                        <div class="corner"></div>
684                                        <img width="254" height="250" src="https://villavauban.lu/wp-content/uploads/2025/02/Livre-Beckius_Christof-Weber-2025-1-254x250.jpg" class="attachment-shop-image size-shop-image wp-post-image" alt="" decoding="async" loading="lazy" srcset="https://villavauban.lu/wp-content/uploads/2025/02/Livre-Beckius_Christof-Weber-2025-1-254x250.jpg 254w, https://villavauban.lu/wp-content/uploads/2025/02/Livre-Beckius_Christof-Weber-2025-1-300x296.jpg 300w, https://villavauban.lu/wp-content/uploads/2025/02/Livre-Beckius_Christof-Weber-2025-1-1024x1010.jpg 1024w, https://villavauban.lu/wp-content/uploads/2025/02/Livre-Beckius_Christof-Weber-2025-1-768x757.jpg 768w, https://villavauban.lu/wp-content/uploads/2025/02/Livre-Beckius_Christof-Weber-2025-1-1536x1514.jpg 1536w, https://villavauban.lu/wp-content/uploads/2025/02/Livre-Beckius_Christof-Weber-2025-1-2048x2019.jpg 2048w, https://villavauban.lu/wp-content/uploads/2025/02/Livre-Beckius_Christof-Weber-2025-1-61x60.jpg 61w, https://villavauban.lu/wp-content/uploads/2025/02/Livre-Beckius_Christof-Weber-2025-1-428x422.jpg 428w, https://villavauban.lu/wp-content/uploads/2025/02/Livre-Beckius_Christof-Weber-2025-1-1600x1578.jpg 1600w, https://villavauban.lu/wp-content/uploads/2025/02/Livre-Beckius_Christof-Weber-2025-1-584x576.jpg 584w" sizes="auto, (max-width: 254px) 100vw, 254px" />                                    </figure>
685                                </div>
686                                                        <div class="title">
687                                <h3>Beckius (1899-1946). Impressions d&rsquo;ici et d&rsquo;ailleurs</h3>
688                            </div>
689                            <div class="price">10 €</div>
690                        </a>
691                    </article>
692                </div>
693                            <div class="col-xs-12 col-xs-4_ col-sm-4 col-md-3 product-col">
694                    <article class="product-item">
695                        <a href="https://villavauban.lu/products/le-paradis-terrestre/">
696                                                            <div class="image">
697                                    <figure>
698                                        <div class="corner"></div>
699                                        <img width="202" height="250" src="https://villavauban.lu/wp-content/uploads/2024/08/Livre-Paradis-terrestre_Christof-Weber-2024-202x250.jpg" class="attachment-sh
699op-image size-shop-image wp-post-image" alt="" decoding="async" loading="lazy" srcset="https://villavauban.lu/wp-content/uploads/2024/08/Livre-Paradis-terrestre_Christof-Weber-2024-202x250.jpg 202w, https://villavauban.lu/wp-content/uploads/2024/08/Livre-Paradis-terrestre_Christof-Weber-2024-242x300.jpg 242w, https://villavauban.lu/wp-content/uploads/2024/08/Livre-Paradis-terrestre_Christof-Weber-2024-827x1024.jpg 827w, https://villavauban.lu/wp-content/uploads/2024/08/Livre-Paradis-terrestre_Christof-Weber-2024-768x951.jpg 768w, https://villavauban.lu/wp-content/uploads/2024/08/Livre-Paradis-terrestre_Christof-Weber-2024-1240x1536.jpg 1240w, https://villavauban.lu/wp-content/uploads/2024/08/Livre-Paradis-terrestre_Christof-Weber-2024-1654x2048.jpg 1654w, https://villavauban.lu/wp-content/uploads/2024/08/Livre-Paradis-terrestre_Christof-Weber-2024-48x60.jpg 48w, https://villavauban.lu/wp-content/uploads/2024/08/Livre-Paradis-terrestre_Christof-Weber-2024-341x422.jpg 341w, https://villavauban.lu/wp-content/uploads/2024/08/Livre-Paradis-terrestre_Christof-Weber-2024-1292x1600.jpg 1292w, https://villavauban.lu/wp-content/uploads/2024/08/Livre-Paradis-terrestre_Christof-Weber-2024-465x576.jpg 465w, https://villavauban.lu/wp-content/uploads/2024/08/Livre-Paradis-terrestre_Christof-Weber-2024-1938x2400.jpg 1938w" sizes="auto, (max-width: 202px) 100vw, 202px" />                                    </figure>
700                                </div>
701                                                        <div class="title">
702                                <h3>Le paradis terrestre</h3>
703                            </div>
704                            <div class="price">10 €</div>
705                        </a>
706                    </article>
707                </div>
708                    </div>
709    </div>
710</section>
711    
712<div id="footer" role="contentinfo">
713    <div class="footer">
714
715
716
717        <div class="footer-end">
718            <div class="container">
719                <div class="row">
720                    <div class="col-sm-4">
721                        <h2 id="region-news">Abonnez-vous</h2>
722                    </div>
723                </div>
724            </div>
725
726            <div class="container">
727                <div class="row mbottom">
728                    <div class="col-sm-4">
729                        <div>
730                            <h3>Programme culturel</h3>
731                        </div>
732                        <button id="cultural-programm-button" class="btn btn-vv" data-toggle="modal" data-target="#formOrderModal">Abonner<span class="glyphicon glyphicon-menu-right"></span></button>
733                    </div>
734                    <div class="col-sm-4">
735                        <section class="right-box">
736                            <div>
737                                <h3>Newsletter</h3>
738                            </div>
739
740                            <!-- Begin MailChimp Signup Form -->
741                            <div id="mc_embed_signup">
742                                <form action="//2musees.us11.list-manage.com/subscribe/post?u=74c1a3a0efbc6389fff165cb3&amp;id=25b7ebb32a" method="post" id="mc-embedded-subscribe-form" name="mc-embedded-subscribe-form" class="validate" target="_blank" novalidate>
743                                    <div id="mc_embed_signup_scroll">
744
745                                        <div class="mc-field-group form-group form-group-animated">
746                                            <label for="mce-EMAIL">Votre courriel</label>
747                                            <input type="email" value="" name="EMAIL" class="required email form-control" id="mce-EMAIL">
748                                            <div style="position: absolute; left: -5000px;"><input type="text" name="b_74c1a3a0efbc6389fff165cb3_25b7ebb32a" tabindex="-1" value="" role="presentation" aria-hidden="true"></div>
749                                            <div class="clear"><a href="javascript:document.forms['mc-embedded-subscribe-form'].submit();" id="mc-embedded-subscribe" class="button btn-vv"><span class="sr-only">S'abonner à la newsletter</span><span aria-hidden="true">Abonner</span><span class="glyphicon glyphicon-menu-right"></span></a><a
750                                                    href="https://2musees.us11.list-manage.com/unsub
750scribe?u=74c1a3a0efbc6389fff165cb3&id=25b7ebb32a" class="unsubscribe-link pull-right"><span class="sr-only">Se désabonner de la newsletter ?</span><span aria-hidden="true">Se désabonner ?</span></a></div>
751                                        </div>
752                                        <div id="mce-responses" class="clear">
753                                            <div class="response" id="mce-error-response" style="display:none"></div>
754                                            <div class="response" id="mce-success-response" style="display:none"></div>
755                                        </div> <!-- real people should not fill this in and expect good things - do not remove this or risk form bot signups-->
756                                    </div>
757                                </form>
758                            </div>
759                            <!--End mc_embed_signup-->
760
761                        </section>
762                    </div>
763                    <div class="col-sm-4 align-right">
764                        <div>
765                            <h3>Invitations</h3>
766                        </div>
767                        <a id="invitation-button" class="btn btn-vv" data-toggle="modal" data-target="#formInvitationModal">Abonner<span class="glyphicon glyphicon-menu-right"></span></a>
768                    </div>
769                </div>
770            </div>
771
772
773        </div>
774
775
776
777
778        <div class="container footer-white">
779            <div class="row">
780                <div class="col-xs-6">
781                    <div class="footer-logo">
782                        <img src="https://villavauban.lu/wp-content/themes/vv/img/villa-logo-big.png" alt="villa vauban logo">
783                    </div>
784                </div>
785                <div class="col-xs-6">
786                    <div class="social-networks pull-right">
787                        <a href="https://www.facebook.com/pages/Villa-Vauban-Mus%C3%A9e-dArt-de-la-Ville-de-Luxembourg/117710858241034" target="_blank" aria-label="Facebook (opens in a new window)"><img src="https://villavauban.lu/wp-content/themes/vv/img/facebook-logo.png" alt="Facebook Logo"></a><a href="https://twitter.com/VillaVauban" target="_blank" aria-label="Twitter (opens in a new window)"><img src="https://villavauban.lu/wp-content/themes/vv/img/x-logo.png" alt="Twitter Logo"></a><a href="https://instagram.com/VillaVauban" target="_blank" aria-label="Instagram (opens in a new window)"><img src="https://villavauban.lu/wp-content/themes/vv/img/instagram-logo.png" alt="Instagram Logo"></a><a href="https://www.youtube.com/@villavauban8152" target="_blank" aria-label="Youtube (opens in a new window)"><img src="https://villavauban.lu/wp-content/themes/vv/img/youtube-logo.png" alt="Youtube Logo"></a><a href="https://www.tiktok.com/search?q=villa%20vauban%20luxembourg&t=1720443753546" target="_blank" aria-label="TikTok (opens in a new window)"><img src="https://villavauban.lu/wp-content/themes/vv/img/tiktok-logo.png" alt="TikTok Logo"></a>                    </div>
788                </div>
789            </div>
790            <div class="row">
791                <div class="col-sm-4">
792                    <section class="address">
793                        <div>
794                            <h2 class="h3">Adresse</h2>
795                        </div>
796                        <address>
797                            <p>18, avenue Émile Reuter<br />L-2420 Luxembourg</p><a class="btn btn-vv btn-address" href="https://www.google.lu/maps/dir//Villa+Vauban,+18+Avenue+Emile+Reuter,+2420+Luxembourg/@49.61307,6.0855657,13z/data=!3m1!4b1!4m8!4m7!1m0!1m5!1m1!1s0x47954ed569d09479:0x96445070a632a52f!2m2!1d6.1224732!2d49.6130203?hl=en" title="Plan de situation (opens in a new window)">Plan de situation<span class="glyphicon glyphicon-menu-right"></span></a><br>                            <a tabindex="0" id="footer-contact-button" class="btn btn-vv" data-toggle="modal" data-target="#formContactModal">Contactez-nous<span class="glyphicon glyphicon-menu-right"></span></a>
798                        </address>
799                    </section>
800                </div>
801                <div class="col-sm-4 ">
802                    <div>
803                        <h2 class="h3">Heures d'ouverture</h2>
804                    </div>
805                    <p class="opening-hours-small">
806                        <span class="opening-state">actuellement <span class="closed">Fermé</span></span><br><span class="opening-time"><span class="opening-today">Aujourd'hui 10h00 – 18h00</span></span><!-- 22:55:56 -->                    </p>
807                    <span class="opening-link">
808                        <a class="btn btn-vv" href="https://villavauban.lu/le-musee/informations-generales/" title="Afficher tout">Afficher tout<span class="glyphicon glyphicon-menu-right"></span></a>
809                    </span>
810                </div>
811
812            </div>
813
814            <div class="row">
815                <div class="col-sm-6">
816                    <div class="fb-like" data-href="https://www.facebook.com/pages/Villa-Vauban-Mus&#xe9;e-dArt-de-la-Ville-de-Luxembourg/117710858241034" data-width="300" data-layout="button_count" data-action="like" data-show-faces="false" data-share="false"></div>
817                </div>
818                <div class="col-sm-6 vdl-logos">
819                    <span class="padding-element"></span>
820                    <a href="http://www.vdl.lu" target="_blank" aria-label="Ville de Luxembourg - (opens in a new window)">
821                        <img src="https://villavauban.lu/wp-content/themes/vv/img/vdl-logo.png" alt="Ville de Luxembourg logo">
822                    </a>
823                    <a href="http://www.vdl.lu" target="_blank" aria-label="Ville de Luxembourg - (opens in a new window)">
824                        <img src="https://villavauban.lu/wp-content/themes/vv/img/multiplicity-logo.png" alt="multiplicity logo">
825                    </a>
826                </div>
827            </div>
828        </div>
829        <div class="mascots">
830            <div class="edouard">
831                <button role="button" aria-label="Moien! Ech sinn den Édouard. Méi Info (opens in a new window)" class="for-children edouard-1"><div class="bubble"><div class="bubble-inner">Moien!<br>Ech sinn den Édouard.<br><span class="more-info">Méi Info</span></div><div class="corner-wrapper"><div class="corner-big"></div></div></div><span class="inner"></span></button>            </div>
832            <div class="mil">
833                <button role="button" aria-label="Moien! Je suis Mil! (opens in a new window) (opens in a new window)" class="for-children mil-1"><div class="bubble"><div class="bubble-inner">Moien!<br>Je suis Mil!<br><span class="more-info">Méi Info</span></div><div class="corner-wrapper"><div class="corner-big"></div></div></div><span class="inner"></span></button>            </div>
834        </div>
835    </div>
836
837    <div class="related-site">
838        <div class="container">
839            <section class="block">
840                <div class="row">
841                    <div class="col-xs-7">
842                        <h2>&lt; Quoi de neuf au Lëtzebuerg City Museum ? &gt;</h2>
843                    </div>
844                    <div class="col-xs-5 other-museum-logo">
845                        <a href="http://www.citymuseum.lu" class="pull-right">
846                            <img src="https://villavauban.lu/wp-content/themes/vv/img/city-museum_negatif.svg" alt="mhvl logo">
847                        </a>
848                    </div>
849                </div>
850                <div class="row related-events">    <div class="col-xs-4 listing-col col-xxs-12">        <a href="https://citymuseum.lu/event/visite-guidee-reguliere-the-luxembourg-story/?date=1790272800" target="_blank" aria-label="(opens in a new window)">            <section class="extra">                <article>                    <div class="date"><span class="tbg-wrapper"><div class="shadow-wrapper"><div aria-hidden="true" class="shadow-left"><span style="background: linear-gradient(to left, #b48700, #b48700);">24 Sep</span></div><div aria-hidden="true" class="shadow-right"><span style="background: linear-gradient(to left, #b48700, #b48700);">24 Sep</span></div><div class="original"><span style="background: linear-gradient(to left, #b48700, #b48700);">24 Sep</span></div></div></span></div>            <figure style="background: #b48700;">                <img src="https://citymuseum.lu/wp-content/uploads/2017/04/the-lux-story2-340x461.jpg" alt="">            </figure>                    <div class="list-item-content">                        <div>                            <h3 class="tbg-wrapper">Visite guidée régulière: The Luxembourg Story</h3>                        </div><div class="small-date">Jeudi, 18h00 (FR)</div>                    </div>          </article>      </section>  </a><div class="event-types">                        <div class="small"><a class="type-item" href="https://citymuseum.lu/visiter-le-musee/agenda/?eventType[]=visite-guidee">Visite guidée</a></div>                        <div class="small">(<a class="type-item" href="https://citymuseum.lu/visiter-le-musee/agenda/?publicType[]=tout-public">Tout public</a>)</div></div></div>    <div class="col-xs-4 listing-col col-xxs-12">        <a href="https://citymuseum.lu/event/vernissage-le-mur-luxembourg/?date=1790355600" target="_blank" aria-label="(opens in a new window)">            <section class="extra">                <article>                    <div class="date"><span class="tbg-wrapper"><div class="shadow-wrapper"><div aria-hidden="true" class="shadow-left"><span style="background: linear-gradient(to left, #b48700, #b48700);">25 Sep</span></div><div aria-hidden="true" class="shadow-right"><span style="background: linear-gradient(to left, #b48700, #b48700);">25 Sep</span></div><div class="original"><span style="background: linear-gradient(to left, #b48700, #b48700);">25 Sep</span></div></div></span></div>            <figure style="background: #b48700;">                <img src="https://citymuseum.lu/wp-content/uploads/2024/11/Digital-use-small-©-Ville-de-Luxembourg-Tom-Jungbluth-1080268-340x461.png" alt="">            </figure>                    <div class="list-item-content">                        <div>                            <h3 class="tbg-wrapper">Vernissage Le mur Luxembourg</h3>                        </div><div class="small-date">Vendredi, 17h00</div>                    </div>          </article>      </section>  </a></div>    <div class="col-xs-4 listing-col col-xxs-12">        <a href="https://citymuseum.lu/event/balade-photographique-family-edition/?date=1790431200" target="_blank" aria-label="(opens in a new window)">            <section class="extra">                <article>                    <div class="date"><span class="tbg-wrapper"><div class="shadow-wrapper"><div aria-hidden="true" class="shadow-left"><span style="background: linear-gradient(to left, #b48700, #b48700);">26 Sep</span></div><div aria-hidden="true" class="shadow-right"><span style="background: linear-gradient(to left, #b48700, #b48700);">26 Sep</span></div><div class="original"><span style="background: linear-gradient(to left, #b48700, #b48700);">26 Sep</span></div></div></span></div>            <figure style="background: #b48700;"><span class="for-children mil-2" aria-hidden="true"><span class="inner"></span></span>                <img src="https://citymuseum.lu/wp-content/uploads/2025/12/Scholtes-340x461.jpg" alt="">            </figure>                    <div class="list-item-content">                        <div>                            <h3 class="tbg-wrapper">Balade Photographique : Family edition</h3>                        </div><div class="small-date">Samedi, 14h00</div>                    </div>          </article>      </section>  </a><span class="sr-only for-children edouard-1"><span class="inner"></span></span><div class="event-types">                        <div class="small"><a class="type-item" href="https://citymuseum.lu/visiter-le-musee/agenda/?eventType[]=visite-guidee">Visite guidée</a></div>                        <div class="small">(<a class="type-item" href="https://citymuseum.lu/visiter-le-musee/agenda/?publicType[]=enfants">Enfants</a>, <a class="type-item" href="https://citymuseum.lu/visiter-le-musee/agenda/?publicType[]=familles">Familles</a>)</div></div></div></div>            </section>
851        </div>
852    </div>
853
854    <div class="footer-end">
855        <div class="container">
856            <div class="row">    <div class="col-sm-12"><div id="footer-menu" class="footer-menu"><a href="https://villavauban.lu/notice-legale/" title="Notice l&eacute;gale">Notice légale</a> - <a href="https://villavauban.lu/declaration-daccessibilite/" title="D&eacute;claration d&rsquo;accessibilit&eacute;">Déclaration d’accessibilité</a></div>    </div></div>            <div class="row footer-end-bottom">
857                <div class="col-sm-8 copyright">
858                    Copyright &copy; 2026, Lëtzebuerg City Museum. Tous droits réservés                </div>
859                <div class="col-sm-4">
860                    <a href="http://apart.lu" target="_blank" class="madebyapart pull-right" aria-label="(opens in a new window)">
861                        made by Apart
862                    </a>
863                </div>
864            </div>
865        </div>
866    </div>
867
868</div>
869
870
871
872<div class="modal fade" id="formSharingModal" tabindex="-1" role="dialog" aria-labelledby="formModalLabelSharing" aria-hidden="true">
873    <div class="modal-dialog modal-dialog-fullscreen">
874        <div class="modal-content">
875            <div class="modal-header">
876                <button class="modal-close open" data-dismiss="modal" aria-label="Close">
877                    <span class="vv-hamburger" aria-hidden="true"></span>
878                </button>
879                <h4 class="modal-title" id="formModalLabelSharing">Share this page</h4>
880            </div>
881            <div class="modal-body">
882                <div class="container">
883                    <section class="">
884                        <div class="row navigation">
885                            <div class="col-sm-4">
886                                <div class="share-wrapper fb">
887                                    <a href="https://www.facebook.com/sharer/sharer.php?u=https://villavauban.lu/" target="_blank" aria-label="Facebook (opens in a new window)">
888                                        Facebook
889                                    </a>
890                                </div>
891                            </div>
892                            <div class="col-sm-4">
893                                <div class="share-wrapper twitter">
894                                    <a class="twitter-share-button" href="https://twitter.com/intent/tweet?text=Accueil&url=https%3A%2F%2Fvillavauban.lu%2F&hashtags=VillaVauban" target="_blank" aria-label="Twitter (opens in a new window)">
895                                        Twitter
896                                    </a>
897                                </div>
898                            </div>
899                            <div class="col-sm-4">
900                                <div class="share-wrapper email">
901                                                                        <a href="mailto:?subject=Accueil&body=Check out this page of Villa Vauban! villavauban.lu/" aria-label="Email (opens in a new window)">
902                                        Email
903                                    </a>
904                                </div>
905                            </div>
906                        </div>
907                    </section>
908                </div>
909            </div>
910        </div>
911    </div>
912</div>
913
914<div class="modal fade" id="formContactModal" tabindex="-1" role="dialog" aria-labelledby="formModalLabelContact" aria-hidden="true">
915    <div class="modal-dialog modal-dialog-fullscreen">
916        <div class="modal-content">
917            <div class="modal-header">
918                <button class="modal-close open" data-dismiss="modal" aria-label="Close">
919                    <span class="vv-hamburger" aria-hidden="true"></span>
920                </button>
921                <h4 class="modal-title" id="formModalLabelContact">Contactez-nous</h4>
922            </div>
923            <div class="modal-body">
924                <div class="container">
925                    <section class="">
926                        <div class="form-message text-center">
927                            <p>Veuillez remplir le formulaire ci-dessous et nous vous contacterons dans les plus brefs délais.</p>
928                            <p>* Champs obligatoires</p>
929                        </div>
930                        <div class="row navigation">
931                            <form id="forms-contact">
932                                <div class="col-sm-6">
933                                    <div class="form-group has-feedback form-group-animated">
934                                        <label for="inputContactLastName">Nom </label>
935                                        <input type="text" class="form-control" id="inputContactLastName" name="inputContactLastName">
936                                        <div class="error-msg">Veuillez saisir votre nom de famille.</div>
937                                    </div>
938                                    <div class="form-group has-feedback form-group-animated">
939                                        <label for="inputContactFirstName">Prénom</label>
940                                        <input type="text" class="form-control" id="inputContactFirstName" name="inputContactFirstName">
941                                        <div class="error-msg">Veuillez saisir votre prénom.</div>
942                                    </div>
943                                    <div class="form-group has-feedback form-group-animated">
944                                        <label for="inputContactEmail">
944Courriel</label>
945                                        <input type="email" class="form-control" id="inputContactEmail" name="inputContactEmail">
946                                        <div class="error-msg">Veuillez saisir une adresse e-mail valide.</div>
947                                    </div>
948                                    <div class="form-group has-feedback form-group-animated">
949                                        <label for="inputContactPhone">Numéro de téléphone</label>
950                                        <input type="tel" class="form-control" id="inputContactPhone" name="inputContactPhone">
951                                        <p style="margin-top:5px;">Le numéro de téléphone sera utilisé uniquement en cas d'annulation ou de modification de l'activité.</p>
952                                        <div class="error-msg">Veuillez saisir un numéro de téléphone valide.</div>
953
954                                    </div>
955                                </div>
956                                <div class="col-sm-6">
957                                    <div class="form-group has-feedback form-group-animated">
958                                        <label for="inputContactMessage">Votre demande / question</label>
959                                        <textarea class="form-control" id="inputContactMessage" name="inputContactMessage" rows="6"></textarea>
960                                        <div class="error-msg">Veuillez saisir votre message.</div>
961
962                                                                            </div>
963                                </div>
964                            </form>
965                        </div>
966                    </section>
967                </div>
968                <div class="notification-message">
969                    <p class="message">
970                    </p>
971                </div>
972            </div>
973        </div>
974        <div class="modal-bottom">
975            <div class="gradient-black"></div>
976            <div class="container">
977                <div class="row">
978                    <div class="col-xs-12">
979                        <div class="inner">
980                            <a tabindex="0" class="btn btn-vv white" id="sendFormContact">Envoyer</a>
981                        </div>
982                    </div>
983                </div>
984            </div>
985        </div>
986    </div>
987</div>
988
989<script type="text/javascript">
990    (function($) {
991        $(document).ready(function() {
992            $(document).on('change', '#inputContactMessage', function(event) {
993
994                if ($(this).val().length > 0) {
995
996                    $(this).parent().addClass('has-success').removeClass('has-error');
997
998                } else {
999
1000                    $(this).parent().addClass('has-error').removeClass('has-success');
1001
1002                }
1003
1004            });
1005
1006            $('#forms-contact').submit(function(e) {
1007                e.preventDefault();
1008
1009                var $form = $(e.target);
1010
1011                var isValidInputContactFirstName = validateTextValue($('#inputContactFirstName'));
1012                var isValidInputContactLastName = validateTextValue($('#inputContactLastName'));
1013                var isValidInputContactEmail = validateEmailValue($('#inputContactEmail'));
1014                var isValidInputContactPhone = validateTextValue($('#inputContactPhone'));
1015                var isValidInputContactMessage = validateTextValue($('#inputContactMessage'));
1016
1017                if ($('input[name="inputEventName"]').length) {
1018                    var inputEventName = $('input[name="inputEventName"]').val();
1019                    if (inputEventName == '') {
1020                        $('input[name="inputEventName"]').remove();
1021                    }
1022                }
1023
1024                if (isValidInputContactFirstName && isValidInputContactLastName && isValidInputContactEmail && isValidInputContactPhone && isValidInputContactMessage) {
1025
1026                    var values = $form.serializeArray();
1027                    values.push({
1028                        name: 'action',
1029                        value: 'siteWideMessage'
1030                    });
1031                    values.push({
1032                        name: 'subject',
1033                        value: "Contactez-nous"
1034                    });
1035
1036                    var newMessage = "Bonjour\r\n\r\nVous avez envoyé le message suivant à Villa Vauban: " + "\r\n\r\n";
1037                    var inputContactFirstName = '';
1038                    var inputContactLastName = '';
1039                    var inputContactEmail = '';
1040                    var inputContactPhone = '';
1041                    var message = '';
1042                    var inputEventName = '';
1043
1044                    for (index = 0; index < values.length; ++index) {
1045                        if (values[index].name == "inputContactFirstName") {
1046                            var originalMessage = values[index].value;
1047                            inputContactFirstName = (originalMessage != '' ? "Prénom: " + originalMessage + "\r\n" : "");
1048                        } else if (values[index].name == "inputContactLastName") {
1049                            var originalMessage = values[index].value;
1050                            inputContactLastName = (originalMessage != '' ? "Nom de famille: " + originalMessage + "\r\n" : "");
1051                        } else if (values[index].name == "inputContactEmail") {
1052                            var originalMessage = values[index].value;
1053                            values[index].name = "inputEmail";
1054                            inputContactEmail = (originalMessage != '' ? "Courriel: " + originalMessage + "\r\n" : "");
1055                        } else if (values[index].name == "inputContactPhone") {
1056                            var originalMessage = values[index].value;
1057                            inputContactPhone = (originalMessage != '' ? "Numéro de téléphone: " + originalMessage + "\r\n" : "");
1058                        }
1059                        if (values[index].name == "inputContactMessage") {
1060                            var originalMessage = values[index].value;
1061                            message = "\r\n" + originalMessage + "\r\n\r\n";
1062                        }
1063                        if (values[index].name == "inputEventName") {
1064                            console.log('inputEventName found');
1065
1066                            var originalMessage = values[index].value;
1067                            values[index].name = "inputEventName";
1068                            inputEventName = (originalMessage != '' ? "Événement: " + originalMessage + "\r\n" : "");
1069                        }
1070                    }
1071
1072                    // values.push({
1073                    //     name: 'inputMessage',
1074                    //     value: newMessage + inputContactFirstName + inputContactLastName + inputContactEmail + inputContactPhone + inputEventName + message + "\r\nMerci pour votre demande de contact. Nous allons vous contacter dès que possible.\r\n\r\nSi vous avez des questions supplémentaires, merci de nous contacter: T+352 4796 4900,  E-mail : [email protected]\r\n\r\nL’équipe de la Villa Vauban\r\n\r\nVilla Vauban\r\n18, avenue Émile Reuter\r\nL-2420 Luxembourg\r\n\r\nHeures d'ouverture\r\nLundi: 10:00 – 18:00\r\nMercredi: 10:00 – 18:00\r\nJeudi: 10:00 – 18:00\r\nVendredi: 10:00 – 21:00\r\nSamedi: 10:00 – 18:00\r\nDimanche: 10:00 – 18:00\r\n\r\n"
1075                    // });
1076
1077                    values.push({
1078                        name: 'inputMessage',
1079                        value: JSON.stringify({
1080                            'usermessage': newMessage + inputContactFirstName + inputContactLastName + inputContactEmail + inputContactPhone + inputEventName + message + "\r\nMerci pour votre demande de contact. Nous allons vous contacter dès que possible.\r\n\r\nSi vous avez des questions supplémentaires, merci de nous contacter: T+352 4796 4900,  E-mail : [email protected]\r\n\r\nL’équipe de la Villa Vauban\r\n\r\nVilla Vauban\r\n18, avenue Émile Reuter\r\nL-2420 Luxembourg\r\n\r\nHeures d'ouverture\r\nLundi: 10:00 – 18:00\r\nMercredi: 10:00 – 18:00\r\nJeudi: 10:00 – 18:00\r\nVendredi: 10:00 – 21:00\r\nSamedi: 10:00 – 18:00\r\nDimanche: 10:00 – 18:00\r\n\r\n",
1081                            'adminmessage': inputContactFirstName + inputContactLastName + inputContactEmail + inputContactPhone + inputEventName + message
1082                        })
1083                    });
1084
1085                    $.ajax({
1086                        url: 'https://villavauban.lu/wp-admin/admin-ajax.php',
1087                        type: 'POST',
1088                        data: $.param(values),
1089                        success: function(result) {
1090                            $('#formContactModal .modal-dialog').addClass('modal-dialog-notification');
1091
1092                            jQuery('.form-message').hide();
1093                            if (result == true) {
1094                                $('.notification-message .message').html("Merci pour votre demande de contact. Nous allons vous contacter dès que possible.");
1095                            } else {
1096                                $('.notification-message .message').html("Il y a eu une erreur. Merci d'essayer encore une fois.<br><br>Si vous avez des questions supplémentaires, merci de nous contacter au: T + 352 4796 4900,  E-mail : [email protected]");
1097                            }
1098                        }
1099                    });
1100
1101                }
1102
1103            });
1104
1105            $('#formContactModal').on('hidden.bs.modal', function(e) {
1106                $('#formContactModal').modal('hide');
1107
1108                $('#formContactModal .modal-dialog').addClass('modal-dialog-fullscreen').removeClass('modal-dialog-notification');
1109            });
1110
1111            $(document).on('click', '#sendFormContact', function(event) {
1112                event.preventDefault();
1113
1114                $('#forms-contact').submit();
1115            });
1116
1117        });
1118    })(jQuery);
1119</script>
1119
1120<div class="modal fade" id="formOrderModal" tabindex="-1" role="dialog" aria-labelledby="formModalLabelOrder" aria-hidden="true">
1121    <div class="modal-dialog modal-dialog-fullscreen">
1122        <div class="modal-content">
1123            <div class="modal-header">
1124                <button class="modal-close open" data-dismiss="modal" aria-label="Close">
1125                    <span class="vv-hamburger" aria-hidden="true"></span>
1126                </button>
1127                <h4 class="modal-title" id="formModalLabelOrder">Abonnez-vous à notre programme culturel</h4>
1128            </div>
1129            <div class="modal-body">
1130                <div class="container">
1131                    <section class="">
1132                        <div class="form-message text-center">
1133                            <p>Veuillez remplir le formulaire ci-dessous et nous vous contacterons dans les plus brefs délais.</p>
1134                            <p>* Champs obligatoires</p>
1135                        </div>
1136                        <div class="row navigation">
1137                            <form id="forms-order">
1138                                <div class="col-sm-6">
1139                                    <div class="form-group has-feedback form-group-animated">
1140                                        <label for="inputLastName">Nom </label>
1141                                        <input type="text" class="form-control" id="inputLastName" name="inputLastName">
1142                                        <div class="error-msg">Veuillez saisir votre nom de famille.</div>
1143                                    </div>
1144                                    <div class="form-group has-feedback form-group-animated">
1145                                        <label for="inputFirstName">Prénom</label>
1146                                        <input type="text" class="form-control" id="inputFirstName" name="inputFirstName">
1147                                        <div class="error-msg">Veuillez saisir votre prénom.</div>
1148                                    </div>
1149                                    <div class="form-group has-feedback form-group-animated">
1150                                        <label for="inputEmail">Courriel</label>
1151                                        <input type="email" class="form-control" id="inputEmail" name="inputEmail">
1152                                        <div class="error-msg">Veuillez saisir une adresse e-mail valide.</div>
1153                                    </div>
1154                                    <div class="form-group has-feedback">
1155                                        <input type="checkbox" class="sr-only" id="inputDigital" name="inputDigital" value="digital" checked>
1156                                        <label for="inputDigital"><span class="ui" aria-hidden="true"></span>J'aimerais avoir une version digitale</label>
1157                                    </div>
1158                                    <div class="form-group has-feedback">
1159                                        <input type="checkbox" class="sr-only" id="inputPrint" name="inputPrint" value="print">
1160                                        <label for="inputPrint"><span class="ui" aria-hidden="true"></span>Je voudrais une version imprimée</label>
1161                                    </div>
1162                                    <div class="form-group has-feedback">
1163                                        <input type="checkbox" class="sr-only" id="inputMHVL" name="inputMHVL" value="MHVL">
1164                                        <label for="inputMHVL"><span class="ui" aria-hidden="true"></span>Je souhaite également recevoir le programme du Lëtzebuerg City Museum</label>
1165                                    </div>
1166                                    <small class="help-block checkError">
1167                                        Sélectionnez au moins une version                                    </small>
1168                                </div>
1169                                <div class="col-sm-6 address">
1170                                    <div class="form-group has-feedback form-group-animated">
1171                                        <label for="inputAddress">N° & adresse</label>
1172                                        <input type="text" class="form-control" id="inputAddress" name="inputAddress">
1173                                        <div class="error-msg">Veuillez indiquer votre adresse.</div>
1174                                    </div>
1175                                    <div class="form-group has-feedback form-group-animated">
1176                                        <label for="inputPostalCode">Code postal</label>
1177                                        <input type="text" class="form-control" id="inputPostalCode" name="inputPostalCode">
1178                                        <div class="error-msg">Veuillez saisir votre code postal.</div>
1179                                    </div>
1180                                    <div class="form-group has-feedback form-group-animated">
1181                                        <label for="inputCity">Ville</label>
1182                                        <input type="text" class="form-control" id="inputCity" name="inputCity">
1183                                        <div class="error-msg">Veuillez indiquer votre ville.</div>
1184                                    </div>
1185                                    <div class="form-group has-feedback form-group-animated">
1186                                        <label for="inputCountry">Pays</label>
1187                                        <input type="text" class="form-control" id="inputCountry" name="inputCountry">
1188                                        <div class="error-msg">Veuillez indiquer votre pays.</div>
1189                                    </div>
1190                                </div>
1191                            </form>
1192                        </div>
1193                    </section>
1194                </div>
1195                <div class="notification-message">
1196                    <p class="message">
1197                    </p>
1198                </div>
1199            </div>
1200        </div>
1201        <div class="modal-bottom">
1202            <div class="gradient-black"></div>
1203            <div class="container">
1204                <div class="row">
1205                    <div class="col-xs-12">
1206                        <div class="inner">
1207                            <a tabindex="0" href="javascript:(void);" class="btn btn-vv white" id="sendFormOrder">
1207Envoyer</a>
1208                        </div>
1209                    </div>
1210                </div>
1211            </div>
1212        </div>
1213    </div>
1214</div>
1215
1216<script type="text/javascript">
1217    (function($) {
1218        function validateTextValue(textElement) {
1219
1220            var text = $(textElement).val();
1221
1222            $(textElement).val(text);
1223
1224            if (text.length > 0) {
1225
1226                $(textElement).parent().addClass('has-success').removeClass('has-error');
1227
1228                return true;
1229
1230            } else {
1231
1232                $(textElement).parent().addClass('has-error').removeClass('has-success');
1233
1234                return false;
1235
1236            }
1237
1238        }
1239
1240        function validateNumberValue(numberElement) {
1241
1242            var number = $(numberElement).val();
1243
1244            if (number.length > 0 && !isNaN(parseFloat(number)) && isFinite(number)) {
1245
1246                $(numberElement).parent().addClass('has-success').removeClass('has-error');
1247
1248                return true;
1249
1250            } else {
1251
1252                $(numberElement).parent().addClass('has-error').removeClass('has-success');
1253
1254                return false;
1255
1256            }
1257
1258        }
1259
1260        function validateEmailValue(emailElement) {
1261
1262            var pattern = new RegExp('^(([^<>()\\[\\]\\\\.,;:\\s@"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@"]+)*)|(".+"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$');
1263            var email = $(emailElement).val().replace(/\s+/g, '');
1264
1265            $(emailElement).val(email);
1266
1267            if (email.length > 0 && pattern.test(email)) {
1268
1269                $(emailElement).parent().addClass('has-success').removeClass('has-error');
1270
1271                return true;
1272            } else {
1273
1274                $(emailElement).parent().addClass('has-error').removeClass('has-success');
1275
1276                return false;
1277
1278            }
1279
1280        }
1281
1282        function validateCheckboxValue(checkboxElement) {
1283
1284            if ($(checkboxElement).is(':checked')) {
1285                return true;
1286            } else {
1287                return false;
1288            }
1289
1290        }
1291
1292        $(document).ready(function() {
1293            $('#forms-order').submit(function(e) {
1294                e.preventDefault();
1295
1296                var $form = $(e.target);
1297
1298                var isValidInputFirstName = validateTextValue($('#inputFirstName'));
1299                var isValidInputLastName = validateTextValue($('#inputLastName'));
1300                var isValidInputEmail = validateEmailValue($('#inputEmail'));
1301                var isValidInputAddress = validateTextValue($('#inputAddress'));
1302                var isValidInputPostalCode = validateNumberValue($('#inputPostalCode'));
1303                var isValidInputCity = validateTextValue($('#inputCity'));
1304                var isValidInputCountry = validateTextValue($('#inputCountry'));
1305                var isValidInputDigital = validateCheckboxValue($('#inputDigital'));
1306                var isValidInputPrint = validateCheckboxValue($('#inputPrint'));
1307
1308                if (isValidInputFirstName && isValidInputLastName && isValidInputEmail && (isValidInputDigital || (isValidInputPrint && isValidInputAddress && isValidInputPostalCode && isValidInputCity && isValidInputCountry))) {
1309
1310                    var values = $form.serializeArray();
1311                    values.push({
1312                        name: 'action',
1313                        value: 'siteWideMessage'
1314                    });
1315                    values.push({
1316                        name: 'subject',
1317                        value: "Subscribe to our cultural programm"
1318                    });
1319
1320                    var newMessage = "Bonjour\r\n\r\nVous avez envoyé le message suivant à Villa Vauban: " + "\r\n\r\n";
1321                    var inputFirstName = '';
1322                    var inputLastName = '';
1323                    var inputEmail = '';
1324                    var inputAddress = '';
1325                    var inputPostalCode = '';
1326                    var inputCity = '';
1327                    var inputCountry = '';
1328                    var inputDigital = '';
1329                    var inputPrint = '';
1330                    var inputVillaVauban = '';
1331
1332                    for (index = 0; index < values.length; ++index) {
1333                        if (values[index].name == "inputFirstName") {
1334                            var originalMessage = values[index].value;
1335                            inputFirstName = (originalMessage != '' ? "First Name: " + originalMessage + "\r\n" : "");
1336                        } else if (values[index].name == "inputLastName") {
1337                            var originalMessage = values[index].value;
1338                            inputLastName = (originalMessage != '' ? "Last Name: " + originalMessage + "\r\n" : "");
1339                        } else if (values[index].name == "inputEmail") {
1340                            var originalMessage = values[index].value;
1341                            inputEmail = (originalMessage != '' ? "Email: " + originalMessage + "\r\n" : "");
1342                        } else if (isValidInputPrint && values[index].name == "inputAddress") {
1343                            var originalMessage = values[index].value;
1344                            inputAddress = (originalMessage != '' ? "Address: " + originalMessage + "\r\n" : "");
1345                        } else if (isValidInputPrint && values[index].name == "inputPostalCode") {
1346                            var originalMessage = values[index].value;
1347                            inputPostalCode = (originalMessage != '' ? "Postal Code: " + originalMessage + "\r\n" : "");
1348                        } else if (isValidInputPrint && values[index].name == "inputCity") {
1349                            var originalMessage = values[index].value;
1350                            inputCity = (originalMessage != '' ? "City: " + originalMessage + "\r\n" : "");
1351                        } else if (isValidInputPrint && values[index].name == "inputCountry") {
1352                            var originalMessage = values[index].value;
1353                            inputCountry = (originalMessage != '' ? "Country: " + originalMessage + "\r\n" : "");
1354                        } else if (values[index].name == "inputDigital") {
1355                            var originalMessage = values[index].value;
1356                            inputDigital = (originalMessage != '' ? "\r\n" + "I want a digital version\r\n" : "");
1357                        } else if (values[index].name == "inputPrint") {
1358                            var originalMessage = values[index].value;
1359                            inputPrint = (originalMessage != '' ? "\r\n" + "I want a print version\r\n" : "");
1360                        } else if (values[index].name == "inputVillaVauban") {
1361                            var originalMessage = values[index].value;
1362                            inputVillaVauban = (originalMessage != '' ? "\r\n" + "I would also like to receive the programme of Villa Vauban – Musée d’Art de la Ville de Luxembourg\r\n" : "");
1363                        }
1364                    }
1365
1366                    // values.push({
1367                    //     name: 'inputMessage',
1368                    //     value: newMessage + inputFirstName + inputLastName + inputEmail + inputAddress + inputPostalCode + inputCity + inputCountry + inputDigital + inputPrint + inputVillaVauban + "\r\nMerci pour votre demande de contact. Nous allons vous contacter dès que possible.\r\n\r\nSi vous avez des questions supplémentaires, merci de nous contacter: T+352 4796 4900,  E-mail : [email protected]\r\n\r\nL’équipe de la Villa Vauban\r\n\r\nVilla Vauban\r\n18, avenue Émile Reuter\r\nL-2420 Luxembourg\r\n\r\nHeures d'ouverture\r\nLundi: 10:00 – 18:00\r\nMercredi: 10:00 – 18:00\r\nJeudi: 10:00 – 18:00\r\nVendredi: 10:00 – 21:00\r\nSamedi: 10:00 – 18:00\r\nDimanche: 10:00 – 18:00\r\n\r\n"
1369                    // });
1370
1371                    values.push({
1372                        name: 'inputMessage',
1373                        value: JSON.stringify({
1374                            'usermessage': newMessage + inputFirstName + inputLastName + inputEmail + inputAddress + inputPostalCode + inputCity + inputCountry + inputDigital + inputPrint + inputVillaVauban + "\r\nMerci pour votre demande de contact. Nous allons vous contacter dès que possible.\r\n\r\nSi vous avez des questions supplémentaires, merci de nous contacter: T+352 4796 4900,  E-mail : [email protected]\r\n\r\nL’équipe de la Villa Vauban\r\n\r\nVilla Vauban\r\n18, avenue Émile Reuter\r\nL-2420 Luxembourg\r\n\r\nHeures d'ouverture\r\nLundi: 10:00 – 18:00\r\nMercredi: 10:00 – 18:00\r\nJeudi: 10:00 – 18:00\r\nVendredi: 10:00 – 21:00\r\nSamedi: 10:00 – 18:00\r\nDimanche: 10:00 – 18:00\r\n\r\n",
1375                            'adminmessage': inputFirstName + inputLastName + inputEmail + inputAddress + inputPostalCode + inputCity + inputCountry + inputDigital + inputPrint + inputVillaVauban
1376                        })
1377                    });
1378
1379                    $.ajax({
1380                        url: 'https://villavauban.lu/wp-admin/admin-ajax.php',
1381                        type: 'POST',
1382                        data: $.param(values),
1383                        success: function(result) {
1384                            $('#formOrderModal .modal-dialog').addClass('modal-dialog-notification');
1385
1386                            jQuery('.form-message').hide();
1387                            if (result == true) {
1388                                $('.notification-message .message').html("Thank y
1388ou very much for your order request. We will process your request as soon as possible.");
1389                            } else {
1390                                $('.notification-message .message').html("An error occured. Please try again.<br><br>For further questions, please contact us: T + 352 4796 4500,  E-mail : [email protected].");
1391                            }
1392                        }
1393                    });
1394
1395                }
1396
1397            });
1398
1399            $('#formOrderModal').on('hidden.bs.modal', function(e) {
1400                $('#formOrderModal').modal('hide');
1401
1402                $('#formOrderModal .modal-dialog').addClass('modal-dialog-fullscreen').removeClass('modal-dialog-notification');
1403            });
1404
1405            $(document).on('click', '#sendFormOrder', function(event) {
1406                event.preventDefault();
1407
1408                $('#forms-order').submit();
1409            });
1410
1411            $(document).on('click', '#inputPrint', function(event) {
1412                if ($(this).is(':checked')) {
1413                    $('.address').css('display', 'block');
1414                } else {
1415                    $('.address').css('display', 'none');
1416                }
1417            });
1418
1419            $(document).on('change', '#inputPrint, #inputDigital', function(event) {
1420                if ($('#inputPrint').is(':checked') || $('#inputDigital').is(':checked')) {
1421                    $('.checkError').css('display', 'none');
1422                } else {
1423                    $('.checkError').css('display', 'block');
1424                }
1425            });
1426        });
1427    })(jQuery);
1428</script>
1428
1429<div class="modal fade" id="formInvitationModal" tabindex="-1" role="dialog" aria-labelledby="formModalLabelOrder" aria-hidden="true">
1430    <div class="modal-dialog modal-dialog-fullscreen">
1431        <div class="modal-content">
1432            <div class="modal-header">
1433                <button class="modal-close open" data-dismiss="modal" aria-label="Close">
1434                    <span class="vv-hamburger" aria-hidden="true"></span>
1435                </button>
1436                <h4 class="modal-title" id="formModalLabelOrder">Invitations</h4>
1437            </div>
1438            <div class="modal-body">
1439                <div class="container">
1440                    <section class="">
1441                        <div class="form-message text-center">
1442                            <p>Inscrivez-vous et recevez des invitations exclusives à nos vernissages pour être les premiers à découvrir nos nouvelles expositions et rencontrer d’autres passionnés d’art.</p>
1443                            <p>Veuillez remplir le formulaire ci-dessous.</p>
1444                            <p>* Champs obligatoires</p>
1445                        </div>
1446                        <div class="row navigation">
1447                            <form id="forms-invitation">
1448                                <div class="col-sm-6">
1449                                    <div class="form-group has-feedback form-group-animated">
1450                                        <label for="inputLastName_Invitation">Nom </label>
1451                                        <input type="text" class="form-control" id="inputLastName_Invitation" name="inputLastName_Invitation">
1452                                        <div class="error-msg">Veuillez saisir votre nom de famille.</div>
1453                                    </div>
1454                                    <div class="form-group has-feedback form-group-animated">
1455                                        <label for="inputFirstName_Invitation">Prénom</label>
1456                                        <input type="text" class="form-control" id="inputFirstName_Invitation" name="inputFirstName_Invitation">
1457                                        <div class="error-msg">Veuillez saisir votre prénom.</div>
1458                                    </div>
1459                                    <div class="form-group has-feedback form-group-animated">
1460                                        <label for="inputEmail_Invitation">Courriel</label>
1461                                        <input type="email" class="form-control" id="inputEmail_Invitation" name="inputEmail_Invitation">
1462                                        <div class="error-msg">Veuillez saisir une adresse e-mail valide.</div>
1463                                    </div>
1464                                    <div class="form-group has-feedback">
1465                                        <input type="checkbox" class="sr-only" id="inputDigital_Invitation" name="inputDigital_Invitation" value="digital" checked>
1466                                        <label for="inputDigital_Invitation">
1467                                            <span class="ui" aria-hidden="true"></span>
1468                                            Je voudrais recevoir les invitations en version numérique<br>
1469                                            (pour grandes expositions temporaires, événements, expositions de plus petit format)                                        </label>
1470                                    </div>
1471                                    <div class="form-group has-feedback">
1472                                        <input type="checkbox" class="sr-only" id="inputPrint_Invitation" name="inputPrint_Invitation" value="print">
1473                                        <label for="inputPrint_Invitation">
1474                                            <span class="ui" aria-hidden="true"></span>
1475                                            Je voudrais recevoir une version imprimée<br>
1476                                            (uniquement envoyée pour les grandes expositions temporaires)                                        </label>
1477                                    </div>
1478                                    <div class="form-group has-feedback">
1479                                        <input type="checkbox" class="sr-only" id="inputBothVersions" name="inputBothVersions" value="VillaVauban">
1480                                        <label for="inputBothVersions"><span class="ui" aria-hidden="true"></span>J'aimerais recevoir les deux</label>
1481                                    </div>
1482                                    <small class="help-block checkError">
1483                                        Sélectionnez au moins une version                                    </small>
1484
1485                                    <div class="form-group text-right">
1486                                        <a href="https://citymuseum.lu/#inv
1486itation-form" target="blank" style="color:#ffffff;">
1487                                            Inscription Lëtzebuerg City Museum                                        </a>
1488                                    </div>
1489                                </div>
1490                                <div class="col-sm-6 address">
1491                                    <div class="form-group has-feedback form-group-animated">
1492                                        <label for="inputAddress_Invitation">N° & adresse</label>
1493                                        <input type="text" class="form-control" id="inputAddress_Invitation" name="inputAddress_Invitation">
1494                                        <div class="error-msg">Veuillez indiquer votre adresse.</div>
1495                                    </div>
1496                                    <div class="form-group has-feedback form-group-animated">
1497                                        <label for="inputPostalCode_Invitation">Code postal</label>
1498                                        <input type="text" class="form-control" id="inputPostalCode_Invitation" name="inputPostalCode_Invitation">
1499                                        <div class="error-msg">Veuillez saisir votre code postal.</div>
1500                                    </div>
1501                                    <div class="form-group has-feedback form-group-animated">
1502                                        <label for="inputCity_Invitation">Ville</label>
1503                                        <input type="text" class="form-control" id="inputCity_Invitation" name="inputCity_Invitation">
1504                                        <div class="error-msg">Veuillez indiquer votre ville.</div>
1505                                    </div>
1506                                    <div class="form-group has-feedback form-group-animated">
1507                                        <label for="inputCountry_Invitation">Pays</label>
1508                                        <input type="text" class="form-control" id="inputCountry_Invitation" name="inputCountry_Invitation">
1509                                        <div class="error-msg">Veuillez indiquer votre pays.</div>
1510                                    </div>
1511                                </div>
1512                            </form>
1513                        </div>
1514                    </section>
1515                </div>
1516                <div class="notification-message">
1517                    <p class="message">
1518                    </p>
1519                </div>
1520            </div>
1521        </div>
1522        <div class="modal-bottom">
1523            <div class="gradient-black"></div>
1524            <div class="container">
1525                <div class="row">
1526                    <div class="col-xs-12">
1527                        <div class="inner">
1528                            <a tabindex="0" href="javascript:(void);" class="btn btn-vv white" id="sendFormOrder">Envoyer</a>
1529                        </div>
1530                    </div>
1531                </div>
1532            </div>
1533        </div>
1534    </div>
1535</div>
1536
1537<script type="text/javascript">
1538    (function($) {
1539        function validateTextValue(textElement) {
1540
1541            var text = $(textElement).val();
1542
1543            $(textElement).val(text);
1544
1545            if (text.length > 0) {
1546
1547                $(textElement).parent().addClass('has-success').removeClass('has-error');
1548
1549                return true;
1550
1551            } else {
1552
1553                $(textElement).parent().addClass('has-error').removeClass('has-success');
1554
1555                return false;
1556
1557            }
1558
1559        }
1560
1561        function validateNumberValue(numberElement) {
1562
1563            var number = $(numberElement).val();
1564
1565            if (number.length > 0 && !isNaN(parseFloat(number)) && isFinite(number)) {
1566
1567                $(numberElement).parent().addClass('has-success').removeClass('has-error');
1568
1569                return true;
1570
1571            } else {
1572
1573                $(numberElement).parent().addClass('has-error').removeClass('has-success');
1574
1575                return false;
1576
1577            }
1578
1579        }
1580
1581        function validateEmailValue(emailElement) {
1582
1583            var pattern = new RegExp('^(([^<>()\\[\\]\\\\.,;:\\s@"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@"]+)*)|(".+"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$');
1584            var email = $(emailElement).val().replace(/\s+/g, '');
1585
1586            $(emailElement).val(email);
1587
1588            if (email.length > 0 && pattern.test(email)) {
1589
1590                $(emailElement).parent().addClass('has-success').removeClass('has-error');
1591
1592                return true;
1593            } else {
1594
1595                $(emailElement).parent().addClass('has-error').removeClass('has-success');
1596
1597                return false;
1598
1599            }
1600
1601        }
1602
1603        function validateCheckboxValue(checkboxElement) {
1604
1605            if ($(checkboxElement).is(':checked')) {
1606                return true;
1607            } else {
1608                return false;
1609            }
1610
1611        }
1612
1613        $(document).ready(function() {
1614            // on VillaVauban checked check both digital and print
1615            $('#inputBothVersions').change(function() {
1616                if ($(this).is(':checked')) {
1617                    $('#inputDigital_Invitation').prop('checked', true);
1618                    $('#inputPrint_Invitation').prop('checked', true);
1619                    $('.address').css('display', 'block');
1620                } else {
1621                    $('#inputDigital_Invitation').prop('checked', false);
1622                    $('#inputPrint_Invitation').prop('checked', false);
1623                    $('.address').css('display', 'none');
1624                }
1625            });
1626
1627            $('#forms-invitation').submit(function(e) {
1628                e.preventDefault();
1629
1630                var $form = $(e.target);
1631
1632                var isValidinputFirstName_Invitation = validateTextValue($('#inputFirstName_Invitation'));
1633                var isValidinputLastName_Invitation = validateTextValue($('#inputLastName_Invitation'));
1634                var isValidinputEmail_Invitation = validateEmailValue($('#inputEmail_Invitation'));
1635                var isValidinputAddress_Invitation = validateTextValue($('#inputAddress_Invitation'));
1636                var isValidinputPostalCode_Invitation = validateNumberValue($('#inputPostalCode_Invitation'));
1637                var isValidinputCity_Invitation = validateTextValue($('#inputCity_Invitation'));
1638                var isValidinputCountry_Invitation = validateTextValue($('#inputCountry_Invitation'));
1639                var isValidinputDigital_Invitation = validateCheckboxValue($('#inputDigital_Invitation'));
1640                var isValidinputPrint_Invitation = validateCheckboxValue($('#inputPrint_Invitation'));
1641                var BothVersions = validateCheckboxValue($('#inputBothVersions'));
1642
1643
1644                if (isValidinputFirstName_Invitation && isValidinputLastName_Invitation && isValidinputEmail_Invitation && (isValidinputDigital_Invitation || (isValidinputPrint_Invitation && isValidinputAddress_Invitation && isValidinputPostalCode_Invitation && isValidinputCity_Invitation && isValidinputCountry_Invitation))) {
1645                    var values = $form.serializeArray();
1646                    values.push({
1647                        name: 'action',
1648                        value: 'siteWideMessage'
1649                    });
1650                    values.push({
1651                        name: 'subject',
1652                        value: "Inscription aux invitations"
1653                    });
1654
1655                    values.push({
1656                        name: 'type',
1657                        value: "invitation"
1658                    });
1659
1660                    values.push({
1661                        name: 'recipient',
1662                        value: "[email protected]"
1663                    });
1664
1665                    var newMessage = "Bonjour\r\n\r\nVous avez envoyé le message suivant à Villa Vauban: " + "\r\n\r\n";
1666                    var inputFirstName_Invitation = '';
1667                    var inputLastName_Invitation = '';
1668                    var inputEmail_Invitation = '';
1669                    var inputAddress_Invitation = '';
1670                    var inputPostalCode_Invitation = '';
1671                    var inputCity_Invitation = '';
1672                    var inputCountry_Invitation = '';
1673                    var inputDigital_Invitation = '';
1674                    var inputPrint_Invitation = '';
1675                    var inputBothVersions = '';
1676
1677                    for (index = 0; index < values.length; ++index) {
1678                        if (values[index].name == "inputFirstName_Invitation") {
1679                            var originalMessage = values[index].value;
1680                            inputFirstName_Invitation = (originalMessage != '' ? "First Name: " + originalMessage + "\r\n" : "");
1681                        } else if (values[index].name == "inputLastName_Invitation") {
1682                            var originalMessage = values[index].value;
1683                            inputLastName_Invitation = (originalMessage != '' ? "Last Name: " + originalMessage + "\r\n" : "");
1684                        } else if (values[index].name == "inputEmail_Invitation") {
1685                            var originalMessage = values[index].value;
1686                            inputEmail_Invitation = (originalMessage != '' ? "Email: " + originalMessage + "\r\n" : "");
1687                        } else if (isValidinputPrint_Invitation && values[index].name == "inputAddress_Invitation") {
1688                            var originalMessage = values[index].value;
1689                            inputAddress_Invitation = (originalMessage != '' ? "Address: " + originalMessage + "\r\n" : "");
1690                        } else if (isValidinputPrint_Invitation && values[index].name == "inputPostalCode_Invitation") {
1691                            var originalMessage = values[index].value;
1692                            inputPostalCode_Invitation = (originalMessage != '' ? "Postal Code: " + originalMessage + "\r\n" : "");
1693                        } else if (isValidinputPrint_Invitation && values[index].name == "inputCity_Invitation") {
1694                            var originalMessage = values[index].value;
1695                            inputCity_Invitation = (originalMessage != '' ? "City: " + originalMessage + "\r\n" : "");
1696                        } else if (isValidinputPrint_Invitation && values[index].name == "inputCountry_Invitation") {
1697                            var originalMessage = values[index].value;
1698                            inputCountry_Invitation = (originalMessage != '' ? "Country: " + originalMessage + "\r\n" : "");
1699                        } else if (values[index].name == "inputDigital_Invitation") {
1700                            var originalMessage = values[index].value;
1701                            if (!BothVersions) {
1702                                inputDigital_Invitation = (originalMessage != '' ? "\r\n" + "Je voudrais recevoir les invitations en version numérique\r\n" : "");
1703                            }
1704                            // inputDigital_Invitation = (originalMessage != '' ? "\r\n" + "Je voudrais recevoir les invitations en version numérique\r\n" : "");
1705                        } else if (values[index].name == "inputPrint_Invitation") {
1706                            var originalMessage = values[index].value;
1707                            // if bothVersions is checked, don't add the print version
1708                            if (!BothVersions) {
1709                                inputPrint_Invitation = (originalMessage != '' ? "\r\n" + "Je voudrais recevoir une version imprimée\r\n" : "");
1710                            }
1711                            // inputPrint_Invitation = (originalMessage != '' ? "\r\n" + "Je voudrais recevoir une version imprimée\r\n" : "");
1712                        } else if (values[index].name == "inputBothVersions") {
1713                            var originalMessage = values[index].value;
1714                            inputBothVersions = (originalMessage != '' ? "\r\n" + "J'aimerais recevoir les deux\r\n" : "");
1715                        }
1716                    }
1717
1718                    // values.push({
1719                    //     name: 'inputMessage',
1720                    //     value: newMessage + inputFirstName_Invitation + inputLastName_Invitation + inputEmail_Invitation + inputAddress_Invitation + inputPostalCode_Invitation + inputCity_Invitation + inputCountry_Invitation + inputDigital_Invitation + inputPrint_Invitation + inputBothVersions + "\r\nSi vous avez des questions supplémentaires, merci de nous contacter: T+352 4796 4900,  E-mail : [email protected]\r\n\r\nL’équipe de la Villa Vauban\r\n\r\nVilla Vauban\r\n18, avenue Émile Reuter\r\nL-2420 Luxembourg\r\n\r\nHeures d'ouverture\r\nLundi: 10:00 – 18:00\r\nMercredi: 10:00 – 18:00\r\nJeudi: 10:00 – 18:00\r\nVendredi: 10:00 – 21:00\r\nSamedi: 10:00 – 18:00\r\nDimanche: 10:00 – 18:00\r\n\r\n"
1721                    // });
1722
1723                    values.push({
1724                        name: 'inputMessage',
1725                        value: JSON.stringify({
1726                            'usermessage': newMessage + inputFirstName_Invitation + inputLastName_Invitation + inputEmail_Invitation + inputAddress_Invitation + inputPostalCode_Invitation + inputCity_Invitation + inputCountry_Invitation + inputDigital_Invitation + inputPrint_Invitation + inputBothVersions + "\r\nSi vous avez des questions supplémentaires, merci de nous contacter: T+352 4796 4900,  E-mail : [email protected]\r\n\r\nL’équipe de la Villa Vauban\r\n\r\nVilla Vauban\r\n18, avenue Émile Reuter\r\nL-2420 Luxembourg\r\n\r\nHeures d'ouverture\r\nLundi: 10:00 – 18:00\r\nMercredi: 10:00 – 18:00\r\nJeudi: 10:00 – 18:00\r\nVendredi: 10:00 – 21:00\r\nSamedi: 10:00 – 18:00\r\nDimanche: 10:00 – 18:00\r\n\r\n",
1727                            'adminmessage': inputFirstName_Invitation + inputLastName_Invitation + inputEmail_Invitation + inputAddress_Invitation + inputPostalCode_Invitation + inputCity_Invitation + inputCountry_Invitation + inputDigital_Invitation + inputPrint_Invitation + inputBothVersions
1728                        })
1729                    });
1730
1731                    $.ajax({
1732                        url: 'https://villavauban.lu/wp-admin/admin-ajax.php',
1733                        type: 'POST',
1734                        data: $.param(values),
1735                        success: function(result) {
1736                            $('#formInvitationModal .modal-dialog').addClass('modal-dialog-notification');
1737                            // $('#formInvitationModal .modal-dialog').addClass('modal-dialog-notification');
1738
1739                            if (result == true) {
1740                                $('.form-message').hide();
1741                                // if ($('#inputDigital_Invitation').is(':checked')) {
1742                                //     GoogleAnalyticsHelper.sendEvent(GoogleAnalyticsHelper.CATEGORY.application, GoogleAnalyticsHelper.ACTION.SUBSCRIBE, GoogleAnalyticsHelper.LABEL.CULTURAL_PROGRAMM, GoogleAnalyticsHelper.VALUES.ONLY_DIGITAL);
1743                                // }
1744                                // else if ($('#inputPrint_Invitation').is(':checked')) {
1745                                //     GoogleAnalyticsHelper.sendEvent(GoogleAnalyticsHelper.CATEGORY.application, GoogleAnalyticsHelper.ACTION.SUBSCRIBE, GoogleAnalyticsHelper.LABEL.CULTURAL_PROGRAMM, GoogleAnalyticsHelper.VALUES.ONLY_PRINT);
1746                                // }
1747                                // else if ($('#inputDigital_Invitation').is(':checked') && $('#inputPrint_Invitation').is(':checked')) {
1748                                //     GoogleAnalyticsHelper.sendEvent(GoogleAnalyticsHelper.CATEGORY.application, GoogleAnalyticsHelper.ACTION.SUBSCRIBE, GoogleAnalyticsHelper.LABEL.CULTURAL_PROGRAMM, GoogleAnalyticsHelper.VALUES.DIGITAL_PRINT);
1749                                // }
1750                                // else if ($('#inputDigital_Invitation').is(':checked') && $('#inputBothVersions').is(':checked')) {
1751                                //     GoogleAnalyticsHelper.sendEvent(GoogleAnalyticsHelper.CATEGORY.application, GoogleAnalyticsHelper.ACTION.SUBSCRIBE, GoogleAnalyticsHelper.LABEL.CULTURAL_PROGRAMM, GoogleAnalyticsHelper.VALUES.ONLY_DIGITAL_BOTH);
1752                                // }
1753                                // else if ($('#inputBothVersions').is(':checked') && $('#inputPrint_Invitation').is(':checked')) {
1754                                //     GoogleAnalyticsHelper.sendEvent(GoogleAnalyticsHelper.CATEGORY.application, GoogleAnalyticsHelper.ACTION.SUBSCRIBE, GoogleAnalyticsHelper.LABEL.CULTURAL_PROGRAMM, GoogleAnalyticsHelper.VALUES.ONLY_PRINT_BOTH);
1755                                // }
1756                                // else if ($('#inputDigital_Invitation').is(':checked') && $('#inputPrint_Invitation').is(':checked') && $('#inputBothVersions').is(':checked')) {
1757                                //     GoogleAnalyticsHelper.sendEvent(GoogleAnalyticsHelper.CATEGORY.application, GoogleAnalyticsHelper.ACTION.SUBSCRIBE, GoogleAnalyticsHelper.LABEL.CULTURAL_PROGRAMM, GoogleAnalyticsHelper.VALUES.DIGITAL_PRINT_BOTH);
1758                                // }
1759
1760                                // GoogleAnalyticsHelper.sendPageView(GoogleAnalyticsHelper.TYPE.SENDFORM_CULTURAL_PROGRAMM);
1761
1762                                $('.notification-message .message').html("Merci beaucoup de votre intérêt.");
1763                            } else {
1764                                $('.notification-message .message').html("An error occured. Please try again.<br><br>For further questions, please contact us: T + 352 4796 4500,  E-mail : [email protected].");
1765                            }
1766                        }
1767                    });
1768
1769                }
1770
1771            });
1772
1773            $('#formInvitationModal').on('hidden.bs.modal', function(e) {
1774                $('#formInvitationModal').modal('hide');
1775
1776                $('#formInvitationModal .modal-dialog').addClass('modal-dialog-fullscreen').removeClass('modal-dialog-notification');
1777            });
1778
1779            $(document).on('click', '#sendFormOrder', function(event) {
1780                event.preventDefault();
1781
1782                $('#forms-invitation').submit();
1783            });
1784
1785            $(document).on('click', '#inputPrint_Invitation', function(event) {
1786                if ($(this).is(':checked')) {
1787                    $('.address').css('display', 'block');
1788                } else {
1789                    $('.address').css('display', 'none');
1790                    $('#inputBothVersions').prop('checked', false);
1791                }
1792            });
1793
1794            $(document).on('change', '#inputPrint_Invitation, #inputDigital_Invitation, #inputBothVersions', function(event) {
1795                if ($('#inputPrint_Invitation').is(':checked') || $('#inputDigital_Invitation').is(':checked')) {
1796                    $('.checkError').css('display', 'none');
1797                } else {
1798                    $('.checkError').css('display', 'block');
1799                }
1800            });
1801        });
1802    })(jQuery);
1803</script>
1803<script type="speculationrules">
1804{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/*"},{"not":{"href_matches":["/wp-*.php","/wp-admin/*","/wp-content/uploads/*","/wp-content/*","/wp-content/plugins/*","/wp-content/themes/vv/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]}
1805</script>
1805
1806	<!--copyscapeskip-->
1807	<aside id="moove_gdpr_cookie_info_bar" class="moove-gdpr-info-bar-hidden moove-gdpr-align-center moove-gdpr-dark-scheme gdpr_infobar_postion_bottom" aria-label="Bannière de cookies GDPR" style="display: none;">
1808	<div class="moove-gdpr-info-bar-container">
1809		<div class="moove-gdpr-info-bar-content">
1810		
1811<div class="moove-gdpr-cookie-notice">
1812  <p>Nous utilisons des cookies pour vous offrir la meilleure expérience sur notre site.</p>
1813<p>Vous trouverez plus d'informations à ce sujet dans les <button  tabindex="0"  aria-haspopup="true" data-href="#moove_gdpr_cookie_modal" class="change-settings-button">réglages</button>.</p>
1814</div>
1815<!--  .moove-gdpr-cookie-notice -->
1816		
1817<div class="moove-gdpr-button-holder">
1818			<button class="mgbutton moove-gdpr-infobar-allow-all gdpr-fbo-0" aria-label="Accepter"  tabindex="1" >Accepter</button>
1819						<button class="mgbutton moove-gdpr-infobar-reject-btn gdpr-fbo-1 "  tabindex="1"  aria-label="Refuser">Refuser</button>
1820			</div>
1821<!--  .button-container -->
1822		</div>
1823		<!-- moove-gdpr-info-bar-content -->
1824	</div>
1825	<!-- moove-gdpr-info-bar-container -->
1826	</aside>
1827	<!-- #moove_gdpr_cookie_info_bar -->
1828	<!--/copyscapeskip-->
1829<script type="text/javascript" src="https://villavauban.lu/wp-content/themes/vv/js/modernizr.custom.js?ver=2.8.3" id="modernizr-js"></script>
vendor: 1 bytes, line 1829
1829
1830<script type="text/javascript" src="https://villavauban.lu/wp-content/themes/vv/js/Villa_Vauban.js?ver=2985248" id="vv-font-js"></script>
vendor: 1 bytes, line 1830
1830
1831<script type="text/javascript" src="https://villavauban.lu/wp-content/themes/vv/js/navigation.js?ver=20120206" id="vv-navigation-js"></script>
vendor: 1 bytes, line 1831
1831
1832<script type="text/javascript" src="https://villavauban.lu/wp-content/themes/vv/js/skip-link-focus-fix.js?ver=20130115" id="vv-skip-link-focus-fix-js"></script>
vendor: 1 bytes, line 1832
1832
1833<script type="text/javascript" src="https://villavauban.lu/wp-content/themes/vv/js/bootstrap.min.js?ver=3.3.2" id="bootstrap-js"></script>
vendor: 1 bytes, line 1833
1833
1834<script type="text/javascript" src="https://villavauban.lu/wp-content/themes/vv/js/jquery.backstretch.min.js?ver=2.0.4" id="backstretch-js"></script>
vendor: 1 bytes, line 1834
1834
1835<script type="text/javascript" src="https://villavauban.lu/wp-content/themes/vv/js/jquery.scrollTo.min.js?ver=2.1.2" id="scrollTo-js"></script>
vendor: 1 bytes, line 1835
1835
1836<script type="text/javascript" src="https://villavauban.lu/wp-content/themes/vv/js/picker.js?ver=3.5.6" id="picker-js"></script>
vendor: 1 bytes, line 1836
1836
1837<script type="text/javascript" src="https://villavauban.lu/wp-content/themes/vv/js/picker.date.js?ver=3.5.6" id="picker-date-js"></script>
vendor: 1 bytes, line 1837
1837
1838<script type="text/javascript" src="https://villavauban.lu/wp-content/themes/vv/js/picker.time.js?ver=3.5.6" id="picker-time-js"></script>
vendor: 1 bytes, line 1838
1838
1839<script type="text/javascript" src="https://villavauban.lu/wp-includes/js/dist/vendor/moment.min.js?ver=2.30.1" id="moment-js"></script>
vendor: 1 bytes, line 1839
1839
1840<script type="text/javascript" id="moment-js-after">
1841/* <![CDATA[ */
1842moment.updateLocale( 'fr_FR', {"months":["Janvier","f\u00e9vrier","mars","avril","mai","juin","juillet","ao\u00fbt","septembre","octobre","novembre","d\u00e9cembre"],"monthsShort":["Jan","F\u00e9v","Mar","Avr","Mai","Juin","Juil","Ao\u00fbt","Sep","Oct","Nov","D\u00e9c"],"weekdays":["Dimanche","Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi"],"weekdaysShort":["dim","lun","mar","mer","jeu","ven","sam"],"week":{"dow":1},"longDateFormat":{"LT":"G\\hi","LTS":null,"L":null,"LL":"j F Y","LLL":"d F Y G\\hi","LLLL":null}} );
1843//# sourceURL=moment-js-after
1844/* ]]> */
1845</script>
vendor: 1 bytes, line 1845
1845
1846<script type="text/javascript" src="https://villavauban.lu/wp-content/themes/vv/js/uiProgressButton.js?ver=1.0.0" id="uiProgressButton-js"></script>
vendor: 1 bytes, line 1846
1846
1847<script type="text/javascript" src="https://villavauban.lu/wp-content/themes/vv/js/apartscript.min.js?ver=1.0.1" id="apartscript-js"></script>
vendor: 1 bytes, line 1847
1847
1848<script type="text/javascript" src="https://villavauban.lu/wp-includes/js/comment-reply.min.js?ver=6.9.4" id="comment-reply-js" async="async" data-wp-strategy="async" fetchpriority="low"></script>
vendor: 1 bytes, line 1848
1848
1849<script type="text/javascript" id="moove_gdpr_frontend-js-extra">
1850/* <![CDATA[ */
1851var moove_frontend_gdpr_scripts = {"ajaxurl":"https://villavauban.lu/wp-admin/admin-ajax.php","post_id":"86","plugin_dir":"https://villavauban.lu/wp-content/plugins/gdpr-cookie-compliance","show_icons":"all","is_page":"1","ajax_cookie_removal":"false","strict_init":"2","enabled_default":{"strict":1,"third_party":0,"advanced":0,"performance":0,"preference":0},"geo_location":"false","force_reload":"false","is_single":"","hide_save_btn":"false","current_user":"0","cookie_expiration":"365","script_delay":"2000","close_btn_action":"1","close_btn_rdr":"","scripts_defined":"{\"cache\":true,\"header\":\"\",\"body\":\"\",\"footer\":\"\",\"thirdparty\":{\"header\":\"\u003C!-- Matomo --\u003E\\r\\n\u003Cscript data-gdpr type=\\\"text\\/javascript\\\"\u003E\\r\\n  var _paq = window._paq = window._paq || [];\\r\\n  \\/* tracker methods like \\\"setCustomDimension\\\" should be called before \\\"trackPageView\\\" *\\/\\r\\n  _paq.push(['trackPageView']);\\r\\n  _paq.push(['enableLinkTracking']);\\r\\n  (function() {\\r\\n    var u=\\\"https:\\/\\/piwik.vdl.lu\\/\\\";\\r\\n    _paq.push(['setTrackerUrl', u+'matomo.php']);\\r\\n    _paq.push(['setSiteId', '56']);\\r\\n    var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];\\r\\n    g.type='text\\/javascript'; g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);\\r\\n  })();\\r\\n\u003C\\/script\u003E\\r\\n\u003C!-- End Matomo Code --\u003E\",\"body\":\"\",\"footer\":\"\"},\"strict\":{\"header\":\"\",\"body\":\"\",\"footer\":\"\"},\"advanced\":{\"header\":\"\",\"body\":\"\",\"footer\":\"\"}}","gdpr_scor":"true","wp_lang":"_fr","wp_consent_api":"false","gdpr_nonce":"56e9d5edd2"};
1852//# sourceURL=moove_gdpr_frontend-js-extra
1853/* ]]> */
1854</script>
vendor: 1 bytes, line 1854
1854
1855<script type="text/javascript" src="https://villavauban.lu/wp-content/plugins/gdpr-cookie-compliance/dist/scripts/main.js?ver=5.0.11" id="moove_gdpr_frontend-js"></script>
vendor: 1 bytes, line 1855
1855
1856<script type="text/javascript" id="moove_gdpr_frontend-js-after">
1857/* <![CDATA[ */
1858var gdpr_consent__strict = "false"
1859var gdpr_consent__thirdparty = "false"
1860var gdpr_consent__advanced = "false"
1861var gdpr_consent__performance = "false"
1862var gdpr_consent__preference = "false"
1863var gdpr_consent__cookies = ""
1864//# sourceURL=moove_gdpr_frontend-js-after
1865/* ]]> */
1866</script>
vendor: 1 bytes, line 1866
1866
1867<script id="wp-emoji-settings" type="application/json">
1868{"baseUrl":"https://s.w.org/images/core/emoji/17.0.2/72x72/","ext":".png","svgUrl":"https://s.w.org/images/core/emoji/17.0.2/svg/","svgExt":".svg","source":{"concatemoji":"https://villavauban.lu/wp-includes/js/wp-emoji-release.min.js?ver=6.9.4"}}
1869</script>
vendor: 1 bytes, line 1869
1869
1870<script type="module">
1871/* <![CDATA[ */
1872/*! This file is auto-generated */
1873const a=JSON.parse(document.getElementById("wp-emoji-settings").textContent),o=(window._wpemojiSettings=a,"wpEmojiSettingsSupports"),s=["flag","emoji"];function i(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(o,JSON.stringify(t))}catch(e){}}function c(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0);const a=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);return t.every((e,t)=>e===a[t])}function p(e,t){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var n=e.getImageData(16,16,1,1);for(let e=0;e<n.data.length;e++)if(0!==n.data[e])return!1;return!0}function u(e,t,n,a){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\udde8\ud83c\uddf6","\ud83c\udde8\u200b\ud83c\uddf6")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!a(e,"\ud83e\u1fac8")}return!1}function f(e,t,n,a){let r;const o=(r="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):document.createElement("canvas")).getContext("2d",{willReadFrequently:!0}),s=(o.textBaseline="top",o.font="600 32px Arial",{});return e.forEach(e=>{s[e]=t(o,e,n,a)}),s}function r(e){var t=document.createElement("script");t.src=e,t.defer=!0,document.head.appendChild(t)}a.supports={everything:!0,everythingExceptFlag:!0},new Promise(t=>{let n=function(){try{var e=JSON.parse(sessionStorage.getItem(o));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(s),u.toString(),c.toString(),p.toString()].join(",")+"));",a=new Blob([e],{type:"text/javascript"});const r=new Worker(URL.createObjectURL(a),{name:"wpTestEmojiSupports"});return void(r.onmessage=e=>{i(n=e.data),r.terminate(),t(n)})}catch(e){}i(n=f(s,u,c,p))}t(n)}).then(e=>{for(const n in e)a.supports[n]=e[n],a.supports.everything=a.supports.everything&&a.supports[n],"flag"!==n&&(a.supports.everythingExceptFlag=a.supports.everythingExceptFlag&&a.supports[n]);var t;a.supports.everythingExceptFlag=a.supports.everythingExceptFlag&&!a.supports.flag,a.supports.everything||((t=a.source||{}).concatemoji?r(t.concatemoji):t.wpemoji&&t.twemoji&&(r(t.twemoji),r(t.wpemoji)))});
1874//# sourceURL=https://villavauban.lu/wp-includes/js/wp-emoji-loader.min.js
1875/* ]]> */
1876</script>
1876
1877
1878    
1879	<!--copyscapeskip-->
1880	<!-- V1 -->
1881	<dialog id="moove_gdpr_cookie_modal" class="gdpr_lightbox-hide" aria-modal="true" aria-label="Écran des réglages GDPR">
1882	<div class="moove-gdpr-modal-content moove-clearfix logo-position-left moove_gdpr_modal_theme_v1">
1883		    
1884		<button class="moove-gdpr-modal-close" autofocus aria-label="Fermer les réglages des cookies GDPR">
1885			<span class="gdpr-sr-only">Fermer les réglages des cookies GDPR</span>
1886			<span class="gdpr-icon moovegdpr-arrow-close"></span>
1887		</button>
1888				<div class="moove-gdpr-modal-left-content">
1889		
1890<div class="moove-gdpr-company-logo-holder">
1891	<img src="https://villavauban.lu/wp-content/themes/vv/img/villa-logo-big.png" alt="Villa Vauban"     class="img-responsive" />
1892</div>
1893<!--  .moove-gdpr-company-logo-holder -->
1894		<ul id="moove-gdpr-menu">
1895			
1896<li class="menu-item-on menu-item-privacy_overview menu-item-selected">
1897	<button data-href="#privacy_overview" class="moove-gdpr-tab-nav" aria-label="Résumé de la politique de confidentialité">
1898	<span class="gdpr-nav-tab-title">Résumé de la politique de confidentialité</span>
1899	</button>
1900</li>
1901
1902	<li class="menu-item-strict-necessary-cookies menu-item-off">
1903	<button data-href="#strict-necessary-cookies" class="moove-gdpr-tab-nav" aria-label="Cookies strictement nécessaires">
1904		<span class="gdpr-nav-tab-title">Cookies strictement nécessaires</span>
1905	</button>
1906	</li>
1907
1908
1909	<li class="menu-item-off menu-item-third_party_cookies">
1910	<button data-href="#third_party_cookies" class="moove-gdpr-tab-nav" aria-label="Cookies tiers">
1911		<span class="gdpr-nav-tab-title">Cookies tiers</span>
1912	</button>
1913	</li>
1914
1915
1916
1917		</ul>
1918		
1919<div class="moove-gdpr-branding-cnt">
1920			<a href="https://wordpress.org/plugins/gdpr-cookie-compliance/" rel="noopener noreferrer" target="_blank" class='moove-gdpr-branding'>Powered by&nbsp; <span>GDPR Cookie Compliance</span></a>
1921		</div>
1922<!--  .moove-gdpr-branding -->
1923		</div>
1924		<!--  .moove-gdpr-modal-left-content -->
1925		<div class="moove-gdpr-modal-right-content">
1926		<div class="moove-gdpr-modal-title">
1927			 
1928		</div>
1929		<!-- .moove-gdpr-modal-ritle -->
1930		<div class="main-modal-content">
1931
1932			<div class="moove-gdpr-tab-content">
1933			
1934<div id="privacy_overview" class="moove-gdpr-tab-main">
1935		<span class="tab-title">Résumé de la politique de confidentialité</span>
1936		<div class="moove-gdpr-tab-main-content">
1937	<p>Ce site utilise des cookies afin que nous puissions vous fournir la meilleure expérience utilisateur possible. Les informations sur les cookies sont stockées dans votre navigateur et remplissent des fonctions telles que vous reconnaître lorsque vous revenez sur notre site Web et aider notre équipe à comprendre les sections du site que vous trouvez les plus intéressantes et utiles.</p>
1938		</div>
1939	<!--  .moove-gdpr-tab-main-content -->
1940
1941</div>
1942<!-- #privacy_overview -->
1943			
1944  <div id="strict-necessary-cookies" class="moove-gdpr-tab-main" style="display:none">
1945    <span class="tab-title">Cookies strictement nécessaires</span>
1946    <div class="moove-gdpr-tab-main-content">
1947      <p>Cette option doit être activée à tout moment afin que nous puissions enregistrer vos préférences pour les réglages de cookie.</p>
1948      <div class="moove-gdpr-status-bar ">
1949        <div class="gdpr-cc-form-wrap">
1950          <div class="gdpr-cc-form-fieldset">
1951            <label class="cookie-switch" for="moove_gdpr_strict_cookies">    
1952              <span class="gdpr-sr-only">Activer ou désactiver les cookies</span>        
1953              <input type="checkbox" aria-label="Cookies strictement nécessaires"  value="check" name="moove_gdpr_strict_cookies" id="moove_gdpr_strict_cookies">
1954              <span class="cookie-slider cookie-round gdpr-sr" data-text-enable="Activé" data-text-disabled="Désactivé">
1955                <span class="gdpr-sr-label">
1956                  <span class="gdpr-sr-enable">Activé</span>
1957                  <span class="gdpr-sr-disable">Désactivé</span>
1958                </span>
1959              </span>
1960            </label>
1961          </div>
1962          <!-- .gdpr-cc-form-fieldset -->
1963        </div>
1964        <!-- .gdpr-cc-form-wrap -->
1965      </div>
1966      <!-- .moove-gdpr-status-bar -->
1967                                              
1968    </div>
1969    <!--  .moove-gdpr-tab-main-content -->
1970  </div>
1971  <!-- #strict-necesarry-cookies -->
1972			
1973  <div id="third_party_cookies" class="moove-gdpr-tab-main" style="display:none">
1974    <span class="tab-title">Cookies tiers</span>
1975    <div class="moove-gdpr-tab-main-content">
1976      <p>Ce site utilise Matomo pour collecter des informations anonymes telles que le nombre de visiteurs du site et les pages les plus populaires.</p>
1977<p>
1977Garder ce cookie activé nous aide à améliorer notre site Web.</p>
1978      <div class="moove-gdpr-status-bar">
1979        <div class="gdpr-cc-form-wrap">
1980          <div class="gdpr-cc-form-fieldset">
1981            <label class="cookie-switch" for="moove_gdpr_performance_cookies">    
1982              <span class="gdpr-sr-only">Activer ou désactiver les cookies</span>     
1983              <input type="checkbox" aria-label="Cookies tiers" value="check" name="moove_gdpr_performance_cookies" id="moove_gdpr_performance_cookies" disabled>
1984              <span class="cookie-slider cookie-round gdpr-sr" data-text-enable="Activé" data-text-disabled="Désactivé">
1985                <span class="gdpr-sr-label">
1986                  <span class="gdpr-sr-enable">Activé</span>
1987                  <span class="gdpr-sr-disable">Désactivé</span>
1988                </span>
1989              </span>
1990            </label>
1991          </div>
1992          <!-- .gdpr-cc-form-fieldset -->
1993        </div>
1994        <!-- .gdpr-cc-form-wrap -->
1995      </div>
1996      <!-- .moove-gdpr-status-bar -->
1997             
1998    </div>
1999    <!--  .moove-gdpr-tab-main-content -->
2000  </div>
2001  <!-- #third_party_cookies -->
2002			
2003									
2004			</div>
2005			<!--  .moove-gdpr-tab-content -->
2006		</div>
2007		<!--  .main-modal-content -->
2008		<div class="moove-gdpr-modal-footer-content">
2009			<div class="moove-gdpr-button-holder">
2010						<button class="mgbutton moove-gdpr-modal-allow-all button-visible" aria-label="Tout activer">Tout activer</button>
2011								<button class="mgbutton moove-gdpr-modal-save-settings button-visible" aria-label="Enregistrer les réglages">Enregistrer les réglages</button>
2012				</div>
2013<!--  .moove-gdpr-button-holder -->
2014		</div>
2015		<!--  .moove-gdpr-modal-footer-content -->
2016		</div>
2017		<!--  .moove-gdpr-modal-right-content -->
2018
2019		<div class="moove-clearfix"></div>
2020
2021	</div>
2022	<!--  .moove-gdpr-modal-content -->
2023	</dialog>
2024	<!-- #moove_gdpr_cookie_modal -->
2025	<!--/copyscapeskip-->
2026<style>
2027    @media screen and (max-width: 390px) {
2028        .footer .container .row .social-networks a img {
2029            width: 30px;
2030        }
2031    }
2032</style>
2033</body>
2034
2035</html>
2036<!-- Dynamic page generated in 2.803 seconds. -->
2037<!-- Cached page generated by WP-Super-Cache on 2026-09-25 00:55:56 -->
2038
2039<!-- Dynamic Super Cache -->
2039<script id="f5_cspm">(function(){var f5_cspm={f5_p:'BLEOOBCOHKGMBPKNIIKJJPFBJHAOKINOFLCCBPABCIJMBLALFCMNJCLHFJGCJFOBCEIBFKDAAANEBIBGAIGAHPPDAADNADMHDCDACPAGOBCPMCCEEDMAADMIJMMCBKPF',setCharAt:function(str,index,chr){if(index>str.length-1)return str;return str.substr(0,index)+chr+str.substr(index+1);},get_byte:function(str,i){var s=(i/16)|0;i=(i&15);s=s*32;return((str.charCodeAt(i+16+s)-65)<<4)|(str.charCodeAt(i+s)-65);},set_byte:function(str,i,b){var s=(i/16)|0;i=(i&15);s=s*32;str=f5_cspm.setCharAt(str,(i+16+s),String.fromCharCode((b>>4)+65));str=f5_cspm.setCharAt(str,(i+s),String.fromCharCode((b&15)+65));return str;},set_latency:function(str,latency){latency=latency&0xffff;str=f5_cspm.set_byte(str,40,(latency>>8));str=f5_cspm.set_byte(str,41,(latency&0xff));str=f5_cspm.set_byte(str,35,2);return str;},wait_perf_data:function(){try{var wp=window.performance.timing;if(wp.loadEventEnd>0){var res=wp.loadEventEnd-wp.navigationStart;if(res<60001){var cookie_val=f5_cspm.set_latency(f5_cspm.f5_p,res);window.document.cookie='f5avr0195355257aaaaaaaaaaaaaaaa_cspm_='+encodeURIComponent(cookie_val)+';path=/;'+'';}
2040return;}}
2041catch(err){return;}
2042setTimeout(f5_cspm.wait_perf_data,100);return;},go:function(){var chunk=window.document.cookie.split(/\s*;\s*/);for(var i=0;i<chunk.length;++i){var pair=chunk[i].split(/\s*=\s*/);if(pair[0]=='f5_cspm'&&pair[1]=='1234')
2043{var d=new Date();d.setTime(d.getTime()-1000);window.document.cookie='f5_cspm=;expires='+d.toUTCString()+';path=/;'+';';setTimeout(f5_cspm.wait_perf_data,100);}}}}
2044f5_cspm.go();}());</script>

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.