{"id":28408,"date":"2025-04-15T19:20:35","date_gmt":"2025-04-15T19:20:35","guid":{"rendered":"https:\/\/www.visitvirginiabeach.com\/evenements\/"},"modified":"2026-10-13T21:49:10","modified_gmt":"2026-10-13T21:49:10","slug":"evenements","status":"publish","type":"page","link":"https:\/\/www.visitvirginiabeach.com\/fr\/evenements\/","title":{"rendered":"\u00c9v\u00e9nements"},"content":{"rendered":"\n<section class=\"image-heading\" arialabelledby=\"Image Header\"><div class=\"fold-wrap xl video-wrap\"><div class=\"image-container\"><img decoding=\"async\" src=\"https:\/\/www.visitvirginiabeach.com\/wp-content\/uploads\/2025\/07\/PH_LSR25_Point-Break-Music-Festival-2025-17-scaled.jpg\" alt=\"A vibrant concert scene at Point Break Music Festival in Virginia Beach, featuring a large crowd with raised hands and colorful stage lights.\" width=\"1920\" height=\"1080\" fetchpriority=\"high\"\/><div class=\"overlay-content\"><h1 class=\"extra\">\u00c9v\u00e9nements 2026 \u00e0 Virginia Beach<\/h1><\/div><\/div><\/div><div class=\"after-overlay-content page-content-wrap fold-wrap md padded\"><p>On ne s\u2019ennuie jamais \u00e0 Virginia Beach \u2014 rien que des bonnes ondes, une \u00e9nergie conviviale et des \u00e9v\u00e9nements \u00e9piques toute l\u2019ann\u00e9e. Que tu sois un passionn\u00e9 de cuisine \u00e0 l\u2019aff\u00fbt de rassemblements de food-trucks, un mordu de musique live pr\u00eat \u00e0 <a href=\"https:\/\/www.visitvirginiabeach.com\/fr\/evenements\/festivals-et-concerts\/\" data-type=\"link\" data-id=\"https:\/\/www.visitvirginiabeach.com\/events\/festivals-concerts\/\">t\u2019\u00e9clater en festival<\/a> ou un fan de <a href=\"https:\/\/www.visitvirginiabeach.com\/events\/sporting-events\/\">sport pro<\/a> voulant voir un match pendant ton voyage, ton type de plaisir est d\u00e9j\u00e0 not\u00e9 au calendrier. <br\/><br\/>Planifie ton voyage autour des incontournables annuels comme la savoureuse <a href=\"https:\/\/www.visitvirginiabeach.com\/virginia-beach-restaurant-week\/\">Virginia Beach Restaurant Week<\/a> (janvier), la c\u00e9l\u00e9bration patriotique <a href=\"https:\/\/www.visitvirginiabeach.com\/events\/starsstripesandspurs\/\" data-type=\"link\" data-id=\"https:\/\/www.visitvirginiabeach.com\/events\/starsstripesandspurs\/\">Stars, Stripes and Spurs<\/a> (avril), le plein d\u2019adr\u00e9naline du <a href=\"https:\/\/www.visitvirginiabeach.com\/fr\/jackalope-festival\/\" data-type=\"link\" data-id=\"https:\/\/www.visitvirginiabeach.com\/jackalope-festival\/\">Jackalope Fest<\/a> (mai\/juin), le l\u00e9gendaire <a href=\"https:\/\/www.visitvirginiabeach.com\/event\/64th-annual-coastal-edge-east-coast-surfing-championship-ecsc\/11292\/\">Coastal Edge East Coast Surfing Championship<\/a> (ao\u00fbt) et le tr\u00e8s artistique <a href=\"https:\/\/www.visitvirginiabeach.com\/neptune-festival\/\">Neptune Festival<\/a> (septembre). L\u2019hiver apporte sa magie avec les \u00e9blouissantes <a href=\"https:\/\/www.visitvirginiabeach.com\/event\/holiday-lights-at-the-beach\/7019\/\">Holiday Lights at the Beach<\/a> \u2014 et l\u2019\u00e9t\u00e9 atteint des sommets avec la s\u00e9rie de concerts <a href=\"https:\/\/www.visitvirginiabeach.com\/event\/oceanfront-concert-series\/9821\/\">Oceanfront Concert Series<\/a>. <br\/><br\/><strong>Plonge dans le programme complet des \u00e9v\u00e9nements et commence \u00e0 planifier ton escapade \u00e0 Virginia Beach.<\/strong><br\/><\/p><\/div><\/section>\n\n<section class=\"image-accordion\" role=\"group\" aria-label=\"Accordion Sections\"><div class=\"title-wrap padded fold-wrap xl mg-bottom-x2 mg-top-x2\"><p class=\"alt-font-family size-32 color-neo-700 mg-bottom-small eyebrow\" id=\"related-articles-eyebrow\">Explore<\/p><h2 class=\"color-default\" id=\"related-articles-heading\">Festivals et \u00e9v\u00e9nements \u00e0 Virginia Beach<\/h2><p>Pr\u00e9pare-toi \u00e0 remplir ton calendrier de festivit\u00e9s. Tellement d\u2019\u00e9v\u00e9nements fun, si peu de FOMO. <\/p><\/div><div class=\"accordion-wrap padded fold fold-wrap xl mg-bottom-x4\">\n<div class=\"col\"><div class=\"col-anchor has-bg\" aria-controls=\"Festivals and Concerts\" id=\"anchor1\" role=\"button\" tabindex=\"0\" aria-label=\"Festivals and Concerts\" aria-expanded=\"false\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.visitvirginiabeach.com\/wp-content\/uploads\/2025\/07\/PH_LSR25_Point-Break-Music-Festival-2025-12-scaled.jpg\" alt=\"A large crowd enjoys a lively outdoor concert, illuminated by vibrant red lighting, with urban buildings in the background in Virginia Beach at Point Break Music Festival.\" class=\"background-image\" width=\"0\" height=\"0\"\/><span class=\"anchor-title color-white size-24 head-font-family weight-700\">Festivals et concerts<\/span><div class=\"col-content\" id=\"spring\" aria-labelledby=\"anchor1\"><p class=\"h3 color-default\">Festivals et concerts<\/p><p class=\"size-14 color-neo-700\">Monte le son \u00e0 Virginia Beach : musique live, festivals \u00e9piques et des ondes qui tombent pile poil, toute l\u2019ann\u00e9e.<\/p><a href=\"\/events\/festivals-concerts\/\" class=\"head-font-family color-fuchsia-900  has-icon--tailarrow-right mg-top-small read-more\" rel=\"noopener noreferrer\">C\u2019est parti<\/a><\/div><\/div><\/div>\n\n\n\n<div class=\"col\"><div class=\"col-anchor has-bg\" aria-controls=\"Sporting Events \" id=\"anchor1\" role=\"button\" tabindex=\"0\" aria-label=\"Sporting Events \" aria-expanded=\"false\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.visitvirginiabeach.com\/wp-content\/uploads\/2025\/07\/PH_SPTMKT24_Jackalope-Festival-2024-34-scaled.jpg\" alt=\"A skateboarder performs a trick on a rail at Jackalope Festival an outdoor event, with an audience and tents in the background.\" class=\"background-image\" width=\"0\" height=\"0\"\/><span class=\"anchor-title color-white size-24 head-font-family weight-700\">\u00c9v\u00e9nements sportifs <\/span><div class=\"col-content\" id=\"spring\" aria-labelledby=\"anchor1\"><p class=\"h3 color-default\">\u00c9v\u00e9nements sportifs <\/p><p class=\"size-14 color-neo-700\">Place au jeu. Virginia Beach fait vibrer l\u2019action avec des \u00e9v\u00e9nements sportifs et des comp\u00e9titions tout au long de l\u2019ann\u00e9e.  <\/p><a href=\"\/events\/sporting-events\/\" class=\"head-font-family color-fuchsia-900  has-icon--tailarrow-right mg-top-small read-more\" rel=\"noopener noreferrer\">C\u2019est parti<\/a><\/div><\/div><\/div>\n\n\n\n<div class=\"col\"><div class=\"col-anchor has-bg\" aria-controls=\"This Weekend \" id=\"anchor1\" role=\"button\" tabindex=\"0\" aria-label=\"This Weekend \" aria-expanded=\"false\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.visitvirginiabeach.com\/wp-content\/uploads\/2025\/07\/PH_LSR24_Funk-Fest-2024-2-scaled.jpg\" alt=\"Aerial view of a crowded beach event with numerous people gathered on the sand, coastal buildings, and the ocean in the background.\" class=\"background-image\" width=\"0\" height=\"0\"\/><span class=\"anchor-title color-white size-24 head-font-family weight-700\">Ce week-end <\/span><div class=\"col-content\" id=\"spring\" aria-labelledby=\"anchor1\"><p class=\"h3 color-default\">Ce week-end <\/p><p class=\"size-14 color-neo-700\">Il se passe toujours quelque chose \u00e0 Virginia Beach. Voici le programme de ce week-end.  <\/p><a href=\"\/events\/events-this-weekend\/\" class=\"head-font-family color-fuchsia-900  has-icon--tailarrow-right mg-top-small read-more\" rel=\"noopener noreferrer\">C\u2019est parti<\/a><\/div><\/div><\/div>\n\n\n<div class=\"col\">\n    <div class=\"col-anchor has-bg\" aria-controls=\"Stay\" id=\"anchor1\" role=\"button\" aria-label=\"Stay\" aria-expanded=\"false\">\n        <img loading=\"lazy\" decoding=\"async\" src=\"\/wp-content\/themes\/virginia-beach\/assets\/images\/this_month.jpg\" alt=\"This Month\" class=\"background-image\" width=\"0\" height=\"0\" \/>\n\n        <span class=\"anchor-title color-white size-24 head-font-family weight-700\">This Month<\/span>\n\n        <div class=\"col-content\" id=\"spring\" aria-labelledby=\"anchor1\">\n            <p class=\"h3 color-default\">This Month<\/p>\n                    <\/div>\n    <\/div>\n<\/div><\/div><\/section>\n\n<section class=\"common-slider pd-bottom-x2 pd-top-x2\"><div class=\"splide slide_boxes hide_pagination fold-wrap xl\"><div class=\"fold-wrap padded common-boxes\"><div class=\"title-wrap fold flex-nowrap gapped fold-wrap xl mg-bottom-x2\"><div class=\"title-content\"><p class=\"alt-font-family size-32 color-neo-700 mg-bottom-small eyebrow\">Note la date dans ton calendrier <\/p><h2 class=\"color-default\" id=\"related-articles-heading\">\u00c9v\u00e9nements annuels \u00e0 ne pas manquer<\/h2><p>Des cascades de haut vol aux rythmes en bord de mer et aux courses embl\u00e9matiques, ces \u00e9v\u00e9nements apportent de l\u2019\u00e9nergie toute l\u2019ann\u00e9e.<\/p><\/div><\/div><div class=\"splide__track\"><div class=\"splide__list\">\n<div class=\"splide__slide box\"><a href=\"https:\/\/www.visitvirginiabeach.com\/holiday-trail-of-lights\/\" target=\"_self\" class=\"thumb-link active-hover active-hover--fuchsia\" aria-hidden=\"true\" tabindex=\"-1\"><figure><img decoding=\"async\" src=\"https:\/\/www.visitvirginiabeach.com\/wp-content\/uploads\/2026\/10\/mick-haupt-3pviI9isyY8-unsplash-1-388x258.jpg\" alt=\"\" width=\"388\" height=\"258\" loading=\"lazy\"\/><figcaption class=\"visually-hidden\">Holiday Trail of Lights | 20 nov. 2026 \u2013 3 janv. 2027<\/figcaption><\/figure><\/a><h3 class=\"h5 mg-top\"><a href=\"https:\/\/www.visitvirginiabeach.com\/holiday-trail-of-lights\/\" target=\"_self\" class=\"read-more\" aria-label=\"Read more about Holiday Trail of Lights | Nov. 20, 2026 &#x2013; Jan. 3, 2027, opens in a new tab\">Holiday Trail of Lights | 20 nov. 2026 \u2013 3 janv. 2027<\/a><\/h3><p class=\"size-14\">Enjoy holiday magic at the Virginia Aquarium with a walking trail of twinkling lights and festive displays.<\/p><\/div>\n\n\n\n<div class=\"splide__slide box\"><a href=\"https:\/\/www.visitvirginiabeach.com\/events\/shamrock-marathon\/\" target=\"_self\" class=\"thumb-link active-hover active-hover--fuchsia\" aria-hidden=\"true\" tabindex=\"-1\"><figure><img decoding=\"async\" src=\"https:\/\/www.visitvirginiabeach.com\/wp-content\/uploads\/2025\/07\/PHT_SPTMKT19_Shamrock-Marathon-23-388x258.jpg\" alt=\"\" width=\"388\" height=\"258\" loading=\"lazy\"\/><figcaption class=\"visually-hidden\">Marathon Yuengling Shamrock | 19\u201321 mars 2027<\/figcaption><\/figure><\/a><h3 class=\"h5 mg-top\"><a href=\"https:\/\/www.visitvirginiabeach.com\/events\/shamrock-marathon\/\" target=\"_self\" class=\"read-more\" aria-label=\"Read more about Yuengling Shamrock Marathon | March 19&#x2013;21, 2027, opens in a new tab\">Marathon Yuengling Shamrock | 19\u201321 mars 2027<\/a><\/h3><p class=\"size-14\">Enfile tes baskets pour un week-end festif de courses, d\u2019encouragements et de bi\u00e8re verte (oui, verte) lors de cet \u00e9v\u00e9nement de course printanier l\u00e9gendaire.<\/p><\/div>\n\n\n\n<div class=\"splide__slide box\"><a href=\"https:\/\/www.visitvirginiabeach.com\/jackalope-festival\/\" target=\"_self\" class=\"thumb-link active-hover active-hover--fuchsia\" aria-hidden=\"true\" tabindex=\"-1\"><figure><img decoding=\"async\" src=\"https:\/\/www.visitvirginiabeach.com\/wp-content\/uploads\/2025\/05\/230603_Jackalope_0256-lowres-388x258.jpg\" alt=\"\" width=\"388\" height=\"258\" loading=\"lazy\"\/><figcaption class=\"visually-hidden\">Festival Jackalope | 4-6 juin 2027<\/figcaption><\/figure><\/a><h3 class=\"h5 mg-top\"><a href=\"https:\/\/www.visitvirginiabeach.com\/fr\/jackalope-festival\/\" target=\"_self\" class=\"read-more\" aria-label=\"Read more about Jackalope Festival | June 4-6, 2027, opens in a new tab\">Festival Jackalope | 4-6 juin 2027<\/a><\/h3><p class=\"size-14\">Sports extr\u00eames, musique live et \u00e9nergie du front de mer se rencontrent \u00e0 Jackalope, une mont\u00e9e d\u2019adr\u00e9naline gratuite de trois jours sur le sable.<\/p><\/div>\n\n\n\n<div class=\"splide__slide box\"><a href=\"\/the-north-american-sand-soccer-championship\/\" target=\"_self\" class=\"thumb-link active-hover active-hover--fuchsia\" aria-hidden=\"true\" tabindex=\"-1\"><figure><img decoding=\"async\" src=\"https:\/\/www.visitvirginiabeach.com\/wp-content\/uploads\/2025\/07\/PH_SPTMKT24_NASSC-Sand-Soccer-2024-8-388x258.jpg\" alt=\"\" width=\"388\" height=\"258\" loading=\"lazy\"\/><figcaption class=\"visually-hidden\">Championnat nord-am\u00e9ricain de sand soccer | 11\u201313 juin 2027<\/figcaption><\/figure><\/a><h3 class=\"h5 mg-top\"><a href=\"https:\/\/www.visitvirginiabeach.com\/the-north-american-sand-soccer-championship\/\" target=\"_self\" class=\"read-more\" aria-label=\"Read more about North American Sand Soccer Championship | June 11&#x2013;13, 2027, opens in a new tab\">Championnat nord-am\u00e9ricain de sand soccer | 11\u201313 juin 2027<\/a><\/h3><p class=\"size-14\">Ressens le frisson du beach soccer dynamique alors que les meilleures \u00e9quipes du monde entier s\u2019affrontent directement sur le sable.<\/p><\/div>\n\n\n\n<div class=\"splide__slide box\"><a href=\"\/point-break-music-festival\/\" target=\"_self\" class=\"thumb-link active-hover active-hover--fuchsia\" aria-hidden=\"true\" tabindex=\"-1\"><figure><img decoding=\"async\" src=\"https:\/\/www.visitvirginiabeach.com\/wp-content\/uploads\/2025\/07\/PH_LSR25_Point-Break-Music-Festival-2025-14-388x258.jpg\" alt=\"\" width=\"388\" height=\"258\" loading=\"lazy\"\/><figcaption class=\"visually-hidden\">Point Break Music Festival <\/figcaption><\/figure><\/a><h3 class=\"h5 mg-top\"><a href=\"https:\/\/www.visitvirginiabeach.com\/fr\/point-break-music-festival\/\" target=\"_self\" class=\"read-more\" aria-label=\"Read more about Point Break Music Festival , opens in a new tab\">Point Break Music Festival <\/a><\/h3><p class=\"size-14\">Viens profiter de concerts live de tous styles \u00e0 ce festival en bord de mer, o\u00f9 chaque set s\u2019accompagne d\u2019une brise iod\u00e9e et d\u2019une superbe vue.<\/p><\/div>\n\n\n\n<div class=\"splide__slide box\"><a href=\"https:\/\/www.visitvirginiabeach.com\/the-coastal-edge-east-coast-surfing-championship\/\" target=\"_self\" class=\"thumb-link active-hover active-hover--fuchsia\" aria-hidden=\"true\" tabindex=\"-1\"><figure><img decoding=\"async\" src=\"https:\/\/www.visitvirginiabeach.com\/wp-content\/uploads\/2025\/07\/PHT_SPTMKT17_ECSC-14-388x258.jpg\" alt=\"\" width=\"388\" height=\"258\" loading=\"lazy\"\/><figcaption class=\"visually-hidden\">East Coast Surf Championship <\/figcaption><\/figure><\/a><h3 class=\"h5 mg-top\"><a href=\"https:\/\/www.visitvirginiabeach.com\/the-coastal-edge-east-coast-surfing-championship\/\" target=\"_self\" class=\"read-more\" aria-label=\"Read more about East Coast Surf Championship , opens in a new tab\">East Coast Surf Championship <\/a><\/h3><p class=\"size-14\">Une tradition l\u00e9gendaire de Virginia Beach : du surf d\u2019\u00e9lite, de la musique live, des sports de plage et une culture c\u00f4ti\u00e8re vibrante, lors de l\u2019une des comp\u00e9titions de surf les plus anciennes au monde.<\/p><\/div>\n\n\n\n<div class=\"splide__slide box\"><a href=\"\/events\/neptune-festival\/\" target=\"_self\" class=\"thumb-link active-hover active-hover--fuchsia\" aria-hidden=\"true\" tabindex=\"-1\"><figure><img decoding=\"async\" src=\"https:\/\/www.visitvirginiabeach.com\/wp-content\/uploads\/2025\/02\/144_3_4765_jpeg_5047920d-ac28-4d20-a423-d42315cd4e04-1-388x258.jpg\" alt=\"\" width=\"388\" height=\"258\" loading=\"lazy\"\/><figcaption class=\"visually-hidden\">Week-end du Neptune Festival Boardwalk <\/figcaption><\/figure><\/a><h3 class=\"h5 mg-top\"><a href=\"https:\/\/www.visitvirginiabeach.com\/fr\/evenements\/neptune-festival\/\" target=\"_self\" class=\"read-more\" aria-label=\"Read more about Neptune Festival Boardwalk Weekend , opens in a new tab\">Week-end du Neptune Festival Boardwalk <\/a><\/h3><p class=\"size-14\">Une tradition de Virginia Beach : de l\u2019art, de la musique, des sculptures de sable et une ambiance 100 % bord de mer lors de ce festival d\u2019automne incontournable.<\/p><\/div>\n<div class=\"splide__slide box box--cta\" style=\"margin-right:0\"><a href=\"\/events\" class=\"button has-icon has-icon--after has-icon--tailarrow-right has-icon--bg-white cta-link js-lastFrame\" target=\"_blank\" rel=\"noopener noreferrer\" aria-label=\"Explore All Events, opens in a new tab\">D\u00e9couvrir tous les \u00e9v\u00e9nements<\/a><\/div><\/div><\/div><div class=\"splide__arrows fold align-items-center gapped flex-shrink-0 flex-grow-0 to-the-right align-self-end\"><button class=\"splide__arrow splide__arrow--prev\">Pr\u00e9c.<\/button><div class=\"fraction-indicator\"><\/div><button class=\"splide__arrow splide__arrow--next\">Suivant<\/button><\/div><\/div><\/div><\/section>\n<style data-miles-ai=\"loading-css\">.miles-ai-mfe:not(.loaded) { position: relative; min-height: 100px; display: flex; align-items: center; justify-content: center; }.miles-ai-mfe:not(.loaded)::after { content: \"\"; position: relative; width: 20px; height: 20px; border: 2px solid #ccc; border-top: 2px solid #333; border-radius: 50%; animation: ai-spin 1s linear infinite; z-index: 1; }@keyframes ai-spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }.miles-ai-mfe.loaded::before, .miles-ai-mfe.loaded::after { display: none; }<\/style><style data-miles-ai=\"global-css\">.miles-ai-mfe {\r\n  .miles-ai-search {\r\n    .miles-ai-search-filter-option[data-term=\"VBCC Newsletter\"] { display: none; }\r\n  }\r\n}<\/style><script data-miles-ai=\"global-js\">window.addEventListener('aisearch_unifyFilterKeys', function (event) {\r\n  const filterKeyMappings = {\r\n  '_to_delete': [       \r\n      'Hours of Operation',\r\n      'Happy Hour Times',   \r\n      'Admission Fee Cost',\r\n      'Live Music',\r\n      'Operating Hours'                                                                                                                                                                                                   \r\n    ], \r\n  'Tags': ['post_tag'],\r\n  'Categories': ['category']\r\n};\r\n\r\n  event.detail.mappings = filterKeyMappings;\r\n});<\/script><style data-miles-ai=\"template-css\" data-template=\"listings-with-map\">.miles-ai-template--listings {\r\n  .miles-ai-search {\r\n    --drawer-direction: right;\r\n    --drawer-size: 100%;\r\n    --font-family: var(--font-family-base);\r\n    --background-page: var(--color-white);\r\n    --primary-color: var(--color-fuchsia-900);\r\n    --primary-hover: var(--color-fuchsia-200);\r\n    --text-primary: var(--color-cyan-900);\r\n    --text-secondary: var(--color-black);\r\n    --border-radius: 0;\r\n\r\n    --input-border: var(--color-cyan-900);\r\n    --input-focus: var(--color-cyan-900);\r\n\r\n    \/* helpful base tuning *\/\r\n    --card-padding: 20px;\r\n    --grid-gap: 24px;\r\n    --desktop-grid-gap: 24px;\r\n    --list-item-gap: 20px;\r\n    --list-item-padding: 20px;\r\n    --results-grid-card-size: 260px;\r\n    --results-grid-card-size-desktop: 320px;\r\n\r\n    \/* button system *\/\r\n    --button-bg: var(--color-fuchsia);\r\n    --button-border: var(--color-fuchsia);\r\n    --button-color: var(--color-white);\r\n\r\n    --button-bg-hover: var(--color-fuchsia-200);\r\n    --button-border-hover: var(--color-fuchsia-200);\r\n    --button-color-hover: var(--color-black);\r\n\r\n    --button-bg-active: var(--color-fuchsia);\r\n    --button-border-active: var(--color-fuchsia);\r\n    --button-color-active: var(--color-white);\r\n\r\n    --button-bg-active-hover: var(--color-fuchsia-200);\r\n    --button-border-active-hover: var(--color-fuchsia-200);\r\n    --button-color-active-hover: var(--color-black);\r\n\r\n    max-width: 1680px;\r\n    padding-left: calc(var(--grid-gap)*2);\r\n    padding-right: calc(var(--grid-gap)*2);\r\n    font-size: 16px;\r\n    line-height: 1.5;\r\n  }\r\n\r\n  .miles-ai-search-show-more-button {\r\n    border: none;\r\n    border-bottom: 2px solid rgba(0, 0, 0, 0);\r\n    border-radius: 0;\r\n    justify-content: flex-start;\r\n    background: none;\r\n    padding: 0 0 .3rem 0;\r\n    font-family: var(--head-font-family);\r\n    font-size: 14px;\r\n    font-weight: 400;\r\n    color: var(--primary-color);\r\n    display: inline-flex;\r\n    width: fit-content;\r\n    align-self: flex-start;\r\n    align-items: center;\r\n    gap: 6px;\r\n    cursor: pointer;\r\n\r\n    span {\r\n      display: inline-flex;\r\n      align-items: center;\r\n      color: var(--primary-color);\r\n    }\r\n\r\n    .miles-ai-search-show-more-chevron {\r\n      color: var(--primary-color);\r\n      transition: transform 0.2s ease;\r\n    }\r\n\r\n    &:hover,\r\n    &:focus {\r\n      border-color: var(--primary-hover);\r\n    }\r\n\r\n    &[aria-expanded=\"true\"] .miles-ai-search-show-more-chevron {\r\n      transform: rotate(180deg);\r\n    }\r\n  }\r\n\r\n  .miles-ai-search-component-title {\r\n    h2,\r\n    a {\r\n      color: var(--color-cyan-900);\r\n    }\r\n  }\r\n\r\n  .miles-ai-search-result-card-title {\r\n    font-size: 20px;\r\n    line-height: 1.2;\r\n    font-weight: 700;\r\n  }\r\n\r\n  .miles-ai-search-result-card,\r\n  .miles-ai-search-filter-group {\r\n    font-size: 14px;\r\n    line-height: 1.4;\r\n  }\r\n\r\n  .miles-ai-search__filters-sidebar {\r\n    border: none;\r\n    padding: 16px 26px 16px 16px;\r\n  }\r\n\r\n  .miles-ai-search-drawer-overlay {\r\n    z-index: 1001; \/* to be over leaflet map pane which has 1000 z-index *\/\r\n  }\r\n\r\n  .miles-ai-search__filter-footer--drawer {\r\n    margin-bottom: 3rem; \/* to put footer higher than cookie button on mobile *\/\r\n  }\r\n\r\n  .miles-ai-search__filter-section {\r\n    .miles-ai-search-date-range-filter__inputs {\r\n      display: none;\r\n    }\r\n    .miles-ai-search__filter-section-title {\r\n      font-size: 20px;\r\n    }\r\n    .miles-ai-search-filter-title {\r\n      font-size: 16px;\r\n    }\r\n    .miles-ai-search-filter-label {\r\n      font-size: 14px;\r\n    }\r\n  }\r\n\r\n  .miles-ai-search-result-card {\r\n    border: none;\r\n  }\r\n\r\n  .miles-ai-search__content-type--event {\r\n    .miles-ai-search-result-card-time,\r\n    .miles-ai-search-result-card-teaser {\r\n      display: none;\r\n    }\r\n  }\r\n  \/* result card images *\/\r\n  .miles-ai-search-result-card-image,\r\n  .miles-ai-search-result-card-image img {\r\n    aspect-ratio: 4 \/ 3;\r\n    object-fit: cover;\r\n  }\r\n\r\n  \/* image hover corner arrow (match site pattern) *\/\r\n  .miles-ai-search-result-card {\r\n    .card-detail-row {\r\n      color: var(--text-secondary);\r\n    }\r\n    .miles-ai-search-result-card-image {\r\n      position: relative;\r\n      overflow: hidden;\r\n\r\n      &::selection {\r\n        background: transparent;\r\n      }\r\n\r\n      img {\r\n        display: block;\r\n        border-bottom: 4px solid var(--color-cyan);\r\n      }\r\n\r\n      .miles-ai-search-result-card-image--clickable {\r\n        position: relative;\r\n        display: block;\r\n\r\n        &::before,\r\n        &::after {\r\n          content: \"\";\r\n          position: absolute;\r\n          bottom: 0;\r\n          width: 16px;\r\n          height: 4px;\r\n          background: var(--background-page);\r\n          z-index: 2;\r\n        }\r\n\r\n        &::before {\r\n          left: 0;\r\n        }\r\n\r\n        &::after {\r\n          right: 0;\r\n        }\r\n      }\r\n\r\n      &::after {\r\n        content: \"\";\r\n        position: absolute;\r\n        bottom: -20%;\r\n        right: -20%;\r\n        width: 60px;\r\n        height: 60px;\r\n        background-color: var(--color-cyan);\r\n        clip-path: polygon(100% 0, 0% 100%, 100% 100%);\r\n        transition: bottom 0.3s ease, right 0.3s ease;\r\n        z-index: 2;\r\n      }\r\n\r\n      &::before {\r\n        content: \"\";\r\n        position: absolute;\r\n        bottom: -20%;\r\n        right: -20%;\r\n        width: 60px;\r\n        height: 60px;\r\n        background: url(\"data:image\/svg+xml,%0A%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http:\/\/www.w3.org\/2000\/svg'%3E%3Cpath d='M18.2063 12.2063L18.9156 11.5001L18.2094 10.7938L13.7094 6.29385L13 5.58447L11.5875 7.0001L12.2937 7.70635L15.0875 10.5001H6H5V12.5001H6H15.0844L12.2906 15.2938L11.5875 16.0001L13 17.4157L13.7063 16.7095L18.2063 12.2095V12.2063Z' fill='black'\/%3E%3C\/svg%3E%0A\") no-repeat 90% 90%\/50%;\r\n        z-index: 3;\r\n        transition: bottom 0.3s ease, right 0.3s ease;\r\n      }\r\n\r\n      &:hover::after,\r\n      &:hover::before {\r\n        bottom: 0;\r\n        right: 0;\r\n      }\r\n    }\r\n    .miles-ai-search-result-card-date-wrapper {\r\n      .card-detail-row {\r\n        font-size: 14px;\r\n      }\r\n    }\r\n  }\r\n\r\n  .miles-ai-search-pagination-page-button {\r\n    border: none;\r\n    border-radius: 0;\r\n    background-color: var(--background-page);\r\n    font-family: var(--head-font-family);\r\n    font-size: 16px;\r\n    font-weight: 400;\r\n    color: var(--text-secondary);\r\n    &:hover, &:focus {\r\n      background-color: var(--button-bg-hover);\r\n    }\r\n    &.active:disabled {\r\n      background-color: var(--button-bg-active);\r\n      color: var(--button-color-active);\r\n      opacity: 1;\r\n    }\r\n  }\r\n  .miles-ai-search-pagination-button {\r\n    border-radius: 0;\r\n    border: none;\r\n    background-color: var(--background-page);\r\n    color: var(--text-secondary);\r\n    span {\r\n      color: var(--text-secondary);\r\n    }\r\n    &:disabled {\r\n      display: none;\r\n    }\r\n  }\r\n\r\n  .miles-ai-search-input-wrapper {\r\n    .miles-ai-search-icon {\r\n      display: none !important;\r\n    }\r\n    .miles-ai-search-input {\r\n      border-radius: 32px;\r\n      padding-left: var(--search-input-padding);\r\n      font-size: 13.333px;\r\n      font-weight: normal;\r\n      &:focus-visible {\r\n        border: 2px solid var(--input-focus);\r\n      }\r\n    }\r\n    .miles-ai-search-button--inline {\r\n      background: var(--color-cyan-100);\r\n      border-radius: 32px;\r\n      border-color: var(--color-cyan-100);\r\n      right: .7rem;\r\n      &:hover, &:focus {\r\n        background: var(--color-cyan-900);\r\n        border-color: var(--color-cyan-900);\r\n        .miles-ai-search-button-icon {\r\n          color: var(--color-white);\r\n        }\r\n      }\r\n      .miles-ai-search-button-icon {\r\n        width: 18px !important;\r\n        height: 18px !important;\r\n        scale: .65;\r\n        color: var(--color-default);\r\n\r\n        &:hover, &:focus {\r\n          background: var(--color-cyan-900);\r\n          border-color: var(--color-cyan-900);\r\n          color: var(--color-white);\r\n        }\r\n\r\n        svg {\r\n          overflow: visible;\r\n        }\r\n\r\n        path {\r\n          stroke: currentColor;\r\n          stroke-width: .6;\r\n        }\r\n      }\r\n    }\r\n  }\r\n\r\n  \/* display switcher (segmented pill - match live site) *\/\r\n  .miles-ai-search-display-switcher {\r\n    display: inline-flex;\r\n    align-items: center;\r\n    flex-wrap: nowrap;\r\n    justify-content: center;\r\n    gap: 2px;\r\n    padding: 5px;\r\n    border-radius: 20px;\r\n    background-color: var(--color-fuchsia-100);\r\n  }\r\n\r\n  .miles-ai-search-display-switcher__btn {\r\n    display: inline-flex;\r\n    align-items: center;\r\n    gap: 6px;\r\n    padding: .4rem 1.5rem .4rem 1.2rem;\r\n\r\n    font-family: var(--head-font-family);\r\n    font-size: 14px;\r\n    font-weight: 500;\r\n\r\n    border: none;\r\n    border-radius: 9999px;\r\n    background-color: transparent;\r\n\r\n    color: var(--text-secondary);\r\n    cursor: pointer;\r\n\r\n    transition: background-color 0.2s ease, color 0.2s ease;\r\n    &:hover, :focus {\r\n      background-color: var(--color-fuchsia-200);\r\n      .miles-ai-search-display-switcher__label, .miles-icon {\r\n        color: var(--text-secondary);\r\n      }\r\n    }\r\n\r\n  }\r\n\r\n  .miles-ai-search-display-switcher__btn--active {\r\n    &:hover, :focus {\r\n      .miles-icon {\r\n        color: var(--text-secondary);\r\n      }\r\n      .miles-ai-search-display-switcher__label {\r\n        color: var(--color-white);\r\n      }\r\n    }\r\n  }\r\n\r\n  .miles-ai-search-display-switcher__btn[aria-pressed=\"true\"] {\r\n    background-color: var(--button-bg);\r\n    color: var(--button-color);\r\n  }\r\n\r\n  .miles-ai-search-display-switcher__btn:not([aria-pressed=\"true\"]):hover {\r\n    color: var(--primary-color);\r\n  }\r\n\r\n  @media screen and (max-width: 450px) {\r\n    .miles-ai-search-results-header:has(.miles-ai-search-results-header__text):has(.miles-ai-search-sort-container):has(.miles-ai-search-display-switcher):not(:has(.miles-ai-search-filter-pills)) {\r\n        grid-template-columns: auto;\r\n        grid-template-rows: 1fr 1fr;\r\n        grid-template-areas: \"sorting switcher\"\r\n                             \"text text\";\r\n    }\r\n}\r\n\r\n  \/* datepicker (air-datepicker) theming *\/\r\n  \/* (existing air-datepicker theming block would be here) *\/\r\n\r\n  \/* react-datepicker theming (actual component in use) *\/\r\n  .react-datepicker {\r\n    border: none;\r\n    border-radius: var(--border-radius);\r\n    background: var(--background-page);\r\n    font-family: var(--head-font-family);\r\n  }\r\n\r\n  .react-datepicker__header {\r\n    background: transparent;\r\n    border-bottom: 1px solid var(--color-cyan-900);\r\n  }\r\n\r\n  .react-datepicker__current-month {\r\n    font-size: 16px;\r\n    font-weight: 600;\r\n    color: var(--text-primary);\r\n  }\r\n\r\n  .react-datepicker__day-name {\r\n    color: var(--text-secondary);\r\n    font-size: 12px;\r\n  }\r\n\r\n  .react-datepicker__day {\r\n    color: var(--text-primary);\r\n    border-radius: 0;\r\n  }\r\n\r\n  .react-datepicker__day:hover {\r\n    background: var(--color-fuchsia-100);\r\n  }\r\n\r\n  .react-datepicker__day--selected,\r\n  .react-datepicker__day--keyboard-selected {\r\n    background: var(--button-bg);\r\n    color: var(--button-color);\r\n  }\r\n\r\n  .react-datepicker__day,\r\n  .react-datepicker__day--selected,\r\n  .react-datepicker__day--keyboard-selected {\r\n    border-radius: 50px;\r\n    padding: 3px 15px;\r\n  }\r\n\r\n  .react-datepicker__day--in-range {\r\n    background: var(--color-fuchsia-100);\r\n  }\r\n\r\n  .react-datepicker__day--disabled {\r\n    color: #ccc;\r\n  }\r\n\r\n  .react-datepicker__navigation-icon::before {\r\n    border-color: var(--text-secondary);\r\n  }\r\n\r\n  \/* make date inputs full width *\/\r\n  .miles-ai-search-date-range-filter__inputs {\r\n    display: block;\r\n    .miles-ai-search-date-range-filter__start-date,\r\n    .miles-ai-search-date-range-filter__end-date {\r\n      margin-bottom: 12px;\r\n    }\r\n    .react-datepicker__input-container {\r\n      border-radius: var(--gap-2);\r\n      border: 0 none;\r\n      padding: var(--gap) var(--gap) var(--gap) 2.5rem;\r\n      width: 100%;\r\n      background: var(--color-cyan-100) url(\"data:image\/svg+xml,%0A%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http:\/\/www.w3.org\/2000\/svg'%3E%3Cpath d='M4.3125 0.5625V0H3.1875V0.5625V1.5H0.75V3.375V4.5V10.875V12H1.875H10.125H11.25V10.875V4.5V3.375V1.5H8.8125V0.5625V0H7.6875V0.5625V1.5H4.3125V0.5625ZM1.875 4.5H3.75V5.8125H1.875V4.5ZM1.875 6.9375H3.75V8.4375H1.875V6.9375ZM4.875 6.9375H7.125V8.4375H4.875V6.9375ZM8.25 6.9375H10.125V8.4375H8.25V6.9375ZM10.125 5.8125H8.25V4.5H10.125V5.8125ZM10.125 9.5625V10.875H8.25V9.5625H10.125ZM7.125 9.5625V10.875H4.875V9.5625H7.125ZM3.75 9.5625V10.875H1.875V9.5625H3.75ZM7.125 5.8125H4.875V4.5H7.125V5.8125Z' fill='%230A7FAA'\/%3E%3C\/svg%3E%0A\") no-repeat 16px 16px\/14px;\r\n      font-size: 12px;\r\n      color: var(--color-neo-700);\r\n\r\n      textarea {\r\n        border: none;\r\n        padding: 0;\r\n        background-color: var(--color-cyan-100);\r\n        font-family: var(--head-font-family);\r\n      }\r\n    }\r\n  }\r\n\r\n  .leaflet-popup-content-wrapper {\r\n    border-radius: 0;\r\n  }\r\n\r\n  .leaflet-popup-content {\r\n    min-width: 180px;\r\n    margin: 0;\r\n    \r\n    @media screen and (min-width: 400px) {\r\n      min-width: 250px;\r\n    }\r\n  }\r\n\r\n  .leaflet-popup-content {\r\n    .miles-ai-search-result-card {\r\n      width: 100%;\r\n      min-width: 100%;\r\n      border: none;\r\n    }\r\n  }\r\n}\n\n\/* Child template styles *\/\n.miles-ai-mfe[data-template=\"listings-with-map\"] {\r\n  .miles-ai-search {\r\n    @media screen and (min-width: 768px) {\r\n      .miles-ai-search-display-switcher__label {\r\n        position: relative;\r\n        height: auto;\r\n        width: auto;\r\n        margin: unset;\r\n      }\r\n    }\r\n  }\r\n}<\/style><script data-miles-ai=\"template-js\" data-template=\"listings-with-map\">window.addEventListener('aisearch_onMount', function (event) {\r\n  var selector = event.detail && event.detail.selector;\r\n  if (!selector) return;\r\n\r\n  var config = window.milesAI.utils.getConfig(selector);\r\n  if (!config) return;\r\n\r\n  if (window.milesAI.utils.hasType(config, 'event')) {\r\n    window.dispatchEvent(\r\n      new CustomEvent('aisearch_updateConfig', {\r\n        detail: {\r\n          selector: selector,\r\n          searchBehavior: { placeholder: 'Search for events by interest, topic, or idea...' },\r\n          filters: { showDatePicker: true },\r\n          results: { resultLayout: 'list' },\r\n          sorting: { initialSort: 'next_occurrence:asc', sortOptions: [] },\r\n        },\r\n      }),\r\n    );\r\n  }\r\n});\r\n\r\nwindow.addEventListener('aisearch_onTransformResults', function(event) {\r\n  event.detail.results.forEach(function(result) {\r\n    var extras = result.json.extras;\r\n    extras.rankSort = (extras.rank || '').toLowerCase() === 'yes' ? 1 : 0;\r\n  });\r\n});\n\n\/\/ Child template scripts\n\/**\r\n * Custom Display Multi-Layout Template\r\n *\/\r\n\r\n\/\/ ========================================================================\r\n\/\/ CONFIG\r\n\/\/ ========================================================================\r\n\r\nvar LEAFLET_CSS = 'https:\/\/unpkg.com\/leaflet@1.9.4\/dist\/leaflet.css';\r\nvar LEAFLET_JS = 'https:\/\/unpkg.com\/leaflet@1.9.4\/dist\/leaflet.js';\r\n\r\n\/\/ Default map center and zoom (Virginia Beach)\r\nvar DEFAULT_CENTER = [36.85, -75.98];\r\nvar DEFAULT_ZOOM = 11;\r\n\r\n\/\/ Map container height\r\nvar MAP_HEIGHT = '600px';\r\n\r\n\/\/ Max distance in degrees from DEFAULT_CENTER to include a marker (~1 degree \u2248 69 miles).\r\n\/\/ Skips results with bad\/erroneous lat\/lon outside the Virginia Beach area.\r\nvar MAX_DISTANCE = 1;\r\n\r\n\/\/ Only render for a specific selector (or null for all instances)\r\nvar SELECTOR_FILTER = null;\r\n\r\n\/\/ ========================================================================\r\n\/\/ STATE\r\n\/\/ ========================================================================\r\n\r\nvar map = null;\r\nvar markersLayer = null;\r\nvar leafletReady = false;\r\nvar pendingDetail = null;\r\nvar popupCleanups = [];\r\n\r\n\/\/ ========================================================================\r\n\/\/ MAP INITIALIZATION\r\n\/\/ ========================================================================\r\n\r\nfunction injectTileFix() {\r\n    if (document.getElementById('leaflet-tile-fix')) return;\r\n    var style = document.createElement('style');\r\n    style.id = 'leaflet-tile-fix';\r\n    \/\/ Override any site CSS that constrains img dimensions (e.g. max-width: 100%).\r\n    \/\/ Leaflet tiles are <img> elements with absolute positioning and must not be constrained.\r\n    style.textContent = '.leaflet-container img { max-width: none !important; max-height: none !important; width: auto !important; min-width: unset !important; }';\r\n    document.head.appendChild(style);\r\n}\r\n\r\nfunction initMap(container, onReady) {\r\n    var L = window.L;\r\n    injectTileFix();\r\n    container.style.height = MAP_HEIGHT;\r\n    container.style.width = '100%';\r\n    \/\/ tap: false fixes iOS Safari touch handling conflicts in Leaflet\r\n    map = L.map(container, { tap: false }).setView(DEFAULT_CENTER, DEFAULT_ZOOM);\r\n    L.tileLayer('https:\/\/tile.openstreetmap.org\/{z}\/{x}\/{y}.png', {\r\n        attribution: '&copy; <a href=\"http:\/\/www.openstreetmap.org\/copyright\">OpenStreetMap<\/a>',\r\n        maxZoom: 19,\r\n        detectRetina: false\r\n    }).addTo(map);\r\n    markersLayer = L.layerGroup().addTo(map);\r\n    map.invalidateSize();\r\n    onReady();\r\n}\r\n\r\n\/\/ ========================================================================\r\n\/\/ LAYOUT RENDER FUNCTIONS\r\n\/\/ ========================================================================\r\n\r\nfunction placeMarkers(detail) {\r\n    var L = window.L;\r\n    markersLayer.clearLayers();\r\n\r\n    popupCleanups.forEach(function (cleanup) { cleanup(); });\r\n    popupCleanups.length = 0;\r\n\r\n    var results = detail.filteredResults || [];\r\n    var bounds = [];\r\n\r\n    results.forEach(function (result) {\r\n        var lat = result && result.json && result.json.extras && result.json.extras.lat;\r\n        var lon = result && result.json && result.json.extras && result.json.extras.lon;\r\n        if (!lat || !lon) return;\r\n\r\n        if (MAX_DISTANCE) {\r\n            var dLat = Math.abs(lat - DEFAULT_CENTER[0]);\r\n            var dLon = Math.abs(lon - DEFAULT_CENTER[1]);\r\n            if (dLat > MAX_DISTANCE || dLon > MAX_DISTANCE) return;\r\n        }\r\n\r\n        var id = result.content_identifier || result.id || String((result.json || {}).id);\r\n        var marker = L.marker([lat, lon]).addTo(markersLayer);\r\n\r\n        var popupEl = document.createElement('div');\r\n\r\n        try {\r\n            var cleanup = detail.renderCard(id, popupEl);\r\n            if (cleanup) popupCleanups.push(cleanup);\r\n        } catch (e) {\r\n            popupEl.innerHTML = '<div style=\"padding:8px\">' + (result.json && result.json.title ? result.json.title : 'View') + '<\/div>';\r\n        }\r\n\r\n        marker.bindPopup(popupEl);\r\n        bounds.push([lat, lon]);\r\n    });\r\n\r\n    if (bounds.length) {\r\n        map.fitBounds(bounds, { padding: [40, 40], maxZoom: 16 });\r\n    }\r\n}\r\n\r\nfunction renderMapLayout(container, detail) {\r\n    if (!map) {\r\n        initMap(container, function () { placeMarkers(detail); });\r\n    } else {\r\n        map.invalidateSize();\r\n        placeMarkers(detail);\r\n    }\r\n}\r\n\r\n\/\/ ========================================================================\r\n\/\/ LAYOUT REGISTRY\r\n\/\/ Map layout keys to their render functions.\r\n\/\/ Container convention: #aisearch-custom-display-{key}\r\n\/\/ To add a layout: define a render function and add an entry here.\r\n\/\/ ========================================================================\r\n\r\nvar layouts = {\r\n    'map': renderMapLayout,\r\n    \/\/ 'otherDisplayKey': renderCustomLayout\r\n};\r\n\r\n\/\/ ========================================================================\r\n\/\/ LEAFLET LOADING\r\n\/\/ ========================================================================\r\n\r\nfunction loadLeaflet(callback) {\r\n    var cssReady = false;\r\n    var jsReady = false;\r\n\r\n    function onBothReady() {\r\n        \/\/ One rAF ensures the CSS has been applied to the DOM before Leaflet\r\n        \/\/ reads any computed styles during map initialization.\r\n        requestAnimationFrame(function () { callback(); });\r\n    }\r\n\r\n    function check() {\r\n        if (cssReady && jsReady) onBothReady();\r\n    }\r\n\r\n    var link = document.createElement('link');\r\n    link.rel = 'stylesheet';\r\n    link.href = LEAFLET_CSS;\r\n    link.onload = function () { cssReady = true; check(); };\r\n    link.onerror = function () { cssReady = true; check(); }; \/\/ don't block on CSS failure\r\n    document.head.appendChild(link);\r\n\r\n    var script = document.createElement('script');\r\n    script.src = LEAFLET_JS;\r\n    script.onload = function () { leafletReady = true; jsReady = true; check(); };\r\n    script.onerror = function () {\r\n        console.error('[vvb-map] Failed to load Leaflet from:', LEAFLET_JS);\r\n    };\r\n    document.head.appendChild(script);\r\n}\r\n\r\n\/\/ ========================================================================\r\n\/\/ DISPLAY HANDLER\r\n\/\/ ========================================================================\r\n\r\nfunction handleDisplayResults(detail) {\r\n    var handler = layouts[detail.activeLayout];\r\n    if (!handler) return;\r\n\r\n    var containerId = 'aisearch-custom-display-' + detail.activeLayout;\r\n    var root = detail.selector ? document.querySelector(detail.selector) : document;\r\n    var container = (root || document).querySelector('#' + containerId);\r\n    if (!container) return;\r\n\r\n    handler(container, detail);\r\n}\r\n\r\n\/\/ ========================================================================\r\n\/\/ EVENT LISTENER\r\n\/\/ ========================================================================\r\n\r\nwindow.addEventListener('aisearch_onDisplayResults', function (event) {\r\n    var detail = event.detail;\r\n    if (!detail) return;\r\n\r\n    if (!layouts[detail.activeLayout]) return;\r\n\r\n    if (SELECTOR_FILTER && detail.selector !== SELECTOR_FILTER) return;\r\n\r\n    if (typeof window.L !== 'undefined') {\r\n        leafletReady = true;\r\n    }\r\n\r\n    if (!leafletReady) {\r\n        pendingDetail = detail;\r\n        if (!document.querySelector('script[src=\"' + LEAFLET_JS + '\"]')) {\r\n            loadLeaflet(function () {\r\n                if (pendingDetail) {\r\n                    handleDisplayResults(pendingDetail);\r\n                    pendingDetail = null;\r\n                }\r\n            });\r\n        }\r\n        return;\r\n    }\r\n\r\n    handleDisplayResults(detail);\r\n});\r\n\r\nwindow.addEventListener(\"aisearch_onMount\", function (event) {\r\n  if (window.location.pathname !== \"\/events\/events-this-weekend\/\") return;\r\n  if (event.detail.selector !== \"#miles-ai-1\") return;\r\n\r\n  window.dispatchEvent(\r\n    new CustomEvent(\"aisearch_updateConfig\", {\r\n      detail: {\r\n        selector: \"#miles-ai-1\",\r\n        filters: { dateQuickFilters: [\"thisWeekend\"] },\r\n      },\r\n    })\r\n  );\r\n\r\n  window.dispatchEvent(\r\n    new CustomEvent(\"aisearch_setDateQuickFilter\", {\r\n      detail: { quickFilter: \"thisWeekend\", selector: \"#miles-ai-1\" },\r\n    })\r\n  );\r\n});\r\n<\/script><div class=\"miles-ai-mfe miles-ai-template--listings-with-map miles-ai-template--listings\" id=\"miles-ai-100127\" data-template=\"listings-with-map\" data-mount-type=\".\/searchMount\" data-config='{&quot;apiEndpoint&quot;:&quot;listings&quot;,&quot;modules&quot;:[&quot;pagination&quot;,&quot;filtering&quot;,&quot;sorting&quot;,&quot;ai-search&quot;,&quot;analytics&quot;],&quot;ui&quot;:{&quot;showAiLogos&quot;:true,&quot;componentTitle&quot;:&quot;Events Calendar&quot;},&quot;searchBehavior&quot;:{&quot;placeholder&quot;:&quot;Search&quot;,&quot;mode&quot;:&quot;manual&quot;,&quot;minQueryLength&quot;:4,&quot;showButton&quot;:true,&quot;hideExpiredContent&quot;:true,&quot;buttonText&quot;:&quot;&quot;,&quot;buttonIcon&quot;:&quot;magnifying-glass&quot;,&quot;showQueryAsPill&quot;:true,&quot;showAISummary&quot;:true,&quot;useStreamingSummary&quot;:true},&quot;results&quot;:{&quot;resultLayout&quot;:&quot;Grid&quot;,&quot;showResultsHeader&quot;:true,&quot;customImageFallback&quot;:&quot;\/wp-content\/themes\/virginia-beach\/assets\/images\/profile_default.webp?v=1&quot;,&quot;resultsHeaderText&quot;:&quot;Showing {firstResult} - {lastResult} of {totalResults} {:totalResults}&quot;,&quot;cardClickable&quot;:false,&quot;linkTarget&quot;:&quot;_self&quot;,&quot;showImages&quot;:true,&quot;imageClickable&quot;:true,&quot;showTeasers&quot;:true,&quot;lineClamp&quot;:4,&quot;showRegion&quot;:true,&quot;showScores&quot;:false,&quot;showContentType&quot;:false,&quot;showFeatured&quot;:false,&quot;showCTALink&quot;:false,&quot;listingWebsites&quot;:{&quot;business&quot;:&quot;&quot;,&quot;booking&quot;:&quot;&quot;,&quot;mobile&quot;:&quot;&quot;,&quot;meetings&quot;:&quot;&quot;},&quot;displayOptions&quot;:[{&quot;key&quot;:&quot;list&quot;,&quot;label&quot;:&quot;List View&quot;,&quot;icon&quot;:&quot;list&quot;},{&quot;key&quot;:&quot;map&quot;,&quot;label&quot;:&quot;Map View&quot;,&quot;icon&quot;:&quot;location-dot&quot;,&quot;showPager&quot;:false,&quot;showSorting&quot;:false}]},&quot;filters&quot;:{&quot;dynamicFilters&quot;:true,&quot;collapsibleGroups&quot;:false,&quot;mainFilterLabel&quot;:&quot;Filter Results&quot;,&quot;datesFilterLabel&quot;:&quot;Select your dates&quot;,&quot;filterLogic&quot;:&quot;AND&quot;,&quot;separateRangeSelector&quot;:true,&quot;showInputAndCal&quot;:true,&quot;showFilterResultCount&quot;:false,&quot;showMoreText&quot;:&quot;View All&quot;,&quot;showLessText&quot;:&quot;View Less&quot;,&quot;maxFilterValues&quot;:4,&quot;datePickerOptions&quot;:{&quot;monthsShown&quot;:1},&quot;filtersToShow&quot;:[&quot;Event Categories&quot;]},&quot;sorting&quot;:{&quot;initialSort&quot;:&quot;rankSort:desc:shuffle&quot;,&quot;sortOptions&quot;:[{&quot;key&quot;:&quot;rankSort&quot;,&quot;label&quot;:&quot;Ranked&quot;,&quot;direction&quot;:&quot;desc&quot;,&quot;nestedSort&quot;:&quot;shuffle&quot;},{&quot;key&quot;:&quot;random&quot;,&quot;label&quot;:&quot;Random&quot;,&quot;direction&quot;:&quot;asc&quot;},{&quot;key&quot;:&quot;title&quot;,&quot;label&quot;:&quot;A to Z&quot;,&quot;direction&quot;:&quot;asc&quot;},{&quot;key&quot;:&quot;title&quot;,&quot;label&quot;:&quot;Z to A&quot;,&quot;direction&quot;:&quot;desc&quot;}]},&quot;pagination&quot;:{&quot;paginationStyle&quot;:&quot;prevNext&quot;,&quot;limit&quot;:2001,&quot;showPageButtons&quot;:true,&quot;showFirstLastButtons&quot;:false,&quot;prevNextIcon&quot;:&quot;arrow&quot;,&quot;nextButtonText&quot;:&quot;&quot;,&quot;prevButtonText&quot;:&quot;&quot;,&quot;visiblePageLinks&quot;:9,&quot;allowResultsPerPageChange&quot;:false,&quot;paginationInfoText&quot;:&quot;&quot;},&quot;responsive&quot;:{&quot;mobile&quot;:{&quot;results&quot;:{&quot;resultLayout&quot;:&quot;list&quot;},&quot;filters&quot;:{&quot;filterLayout&quot;:&quot;drawer&quot;}},&quot;desktop&quot;:{&quot;results&quot;:{&quot;resultLayout&quot;:&quot;grid&quot;},&quot;filters&quot;:{&quot;filterLayout&quot;:&quot;sidebar&quot;}}},&quot;tokenUrl&quot;:&quot;https:\/\/www.visitvirginiabeach.com\/fr\/wp-json\/miles-ai-mfe\/v1\/guided-discovery\/token&quot;,&quot;type&quot;:[&quot;event&quot;],&quot;client&quot;:&quot;visit-virginia-beach&quot;,&quot;apiUrl&quot;:&quot;https:\/\/api-search.milesai.net\/api&quot;,&quot;timezone&quot;:&quot;America\/New_York&quot;}' data-meta='{&quot;mountType&quot;:&quot;.\/searchMount&quot;,&quot;instanceKey&quot;:&quot;miles-ai-100127&quot;,&quot;siteEnvironment&quot;:&quot;live&quot;}'><\/div>\n<section class=\"image-accordion\" role=\"group\" aria-label=\"Accordion Sections\"><div class=\"title-wrap padded fold-wrap xl mg-bottom-x2 mg-top-x2\"><p class=\"alt-font-family size-32 color-neo-700 mg-bottom-small eyebrow\" id=\"related-articles-eyebrow\">D\u00e9couvre<\/p><h2 class=\"color-default\" id=\"related-articles-heading\">Lance tes vacances \u00e0 Virginia Beach<\/h2><p>Trouve ton bonheur, trace tes souvenirs. On est l\u00e0 pour t\u2019aider. <\/p><\/div><div class=\"accordion-wrap padded fold fold-wrap xl mg-bottom-x4\">\n<div class=\"col\"><div class=\"col-anchor has-bg\" aria-controls=\"Stay\" id=\"anchor1\" role=\"button\" tabindex=\"0\" aria-label=\"Stay\" aria-expanded=\"false\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.visitvirginiabeach.com\/wp-content\/uploads\/2025\/07\/PH_LSR25_Hilton-Oceanfront-17-scaled.jpg\" alt=\"A mom and a daughter stand together on a balcony overlooking the ocean, enjoying a sunny day with clear blue skies at the Hilton Oceanfront.\" class=\"background-image\" width=\"0\" height=\"0\"\/><span class=\"anchor-title color-white size-24 head-font-family weight-700\">S\u00e9jour<\/span><div class=\"col-content\" id=\"spring\" aria-labelledby=\"anchor1\"><p class=\"h3 color-default\">S\u00e9jour<\/p><p class=\"size-14 color-neo-700\">R\u00e9veille-toi au son des vagues ou d\u00e9connecte sous les \u00e9toiles. Virginia Beach propose des resorts en bord de mer, des cabanes cosy, des s\u00e9jours pet-friendly et tout ce qu\u2019il y a entre les deux. <\/p><a href=\"\/stay\/\" class=\"head-font-family color-fuchsia-900  has-icon--tailarrow-right mg-top-small read-more\" rel=\"noopener noreferrer\">C\u2019est parti<\/a><\/div><\/div><\/div>\n\n\n\n<div class=\"col\"><div class=\"col-anchor has-bg\" aria-controls=\"Experience\" id=\"anchor1\" role=\"button\" tabindex=\"0\" aria-label=\"Experience\" aria-expanded=\"false\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.visitvirginiabeach.com\/wp-content\/uploads\/2025\/07\/PH_LSR23_Kayaking-First-Landing-State-Park-1_1.jpg\" alt=\"A couple kayaks in First Landing State park on a calm body of water surrounded by greenery, enjoying a sunny day with their paddles and wearing life jackets.\" class=\"background-image\" width=\"0\" height=\"0\"\/><span class=\"anchor-title color-white size-24 head-font-family weight-700\">Exp\u00e9riences<\/span><div class=\"col-content\" id=\"spring\" aria-labelledby=\"anchor1\"><p class=\"h3 color-default\">Exp\u00e9riences<\/p><p class=\"size-14 color-neo-700\">La plage n\u2019est que le d\u00e9but. Explore des sites embl\u00e9matiques, des aventures en plein air, une sc\u00e8ne artistique et culturelle vibrante, des quartiers commer\u00e7ants et des spas relaxants \u00e0 Virginia Beach. <\/p><a href=\"\/experiences\" class=\"head-font-family color-fuchsia-900  has-icon--tailarrow-right mg-top-small read-more\" rel=\"noopener noreferrer\">C\u2019est parti<\/a><\/div><\/div><\/div>\n\n\n\n<div class=\"col\"><div class=\"col-anchor has-bg\" aria-controls=\"Taste\" id=\"anchor1\" role=\"button\" tabindex=\"0\" aria-label=\"Taste\" aria-expanded=\"false\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.visitvirginiabeach.com\/wp-content\/uploads\/2025\/04\/042023_Mahis_0503-Edit-lowres.jpg\" alt=\"Three people sit at an outdoor restaurant table, smiling and talking while enjoying food and drinks at sunset.\" class=\"background-image\" width=\"0\" height=\"0\"\/><span class=\"anchor-title color-white size-24 head-font-family weight-700\">Savourer<\/span><div class=\"col-content\" id=\"spring\" aria-labelledby=\"anchor1\"><p class=\"h3 color-default\">Savourer<\/p><p class=\"size-14 color-neo-700\">Des fruits de mer tout juste p\u00each\u00e9s aux saveurs tout droit sorties de la ferme, la sc\u00e8ne culinaire brille \u00e0 Virginia Beach. Profite de tables au bord de l\u2019eau, de terrasses en plein air, et m\u00eame de pique-niques \u00e0 emporter. <\/p><a href=\"\/taste\/\" class=\"head-font-family color-fuchsia-900  has-icon--tailarrow-right mg-top-small read-more\" rel=\"noopener noreferrer\">C\u2019est parti<\/a><\/div><\/div><\/div>\n\n\n\n<div class=\"col\"><div class=\"col-anchor has-bg\" aria-controls=\"Plan\" id=\"anchor1\" role=\"button\" tabindex=\"0\" aria-label=\"Plan\" aria-expanded=\"false\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.visitvirginiabeach.com\/wp-content\/uploads\/2025\/05\/Inn-at-Old-Beach-Exterior-Friends.jpg\" alt=\"Two women walking down a path flanked by greenery, approaching a light blue house with a porch.\" class=\"background-image\" width=\"0\" height=\"0\"\/><span class=\"anchor-title color-white size-24 head-font-family weight-700\">Planifie<\/span><div class=\"col-content\" id=\"spring\" aria-labelledby=\"anchor1\"><p class=\"h3 color-default\">Planifie<\/p><p class=\"size-14 color-neo-700\">Des id\u00e9es de s\u00e9jour aux conseils transport, planifie chaque d\u00e9tail de ton escapade \u00e0 VB en toute simplicit\u00e9. Retrouve des guides, des cartes, des infos parking et plus encore pour des vacances sans stress. <\/p><a href=\"\/plan\/\" class=\"head-font-family color-fuchsia-900  has-icon--tailarrow-right mg-top-small read-more\" rel=\"noopener noreferrer\">C\u2019est parti<\/a><\/div><\/div><\/div>\n<\/div><\/section>\n<section class=\"ugc-block mg-top-x2\">\n\t<div class=\"fold-sm-up fold-wrap xl padded-sm-up gapped pd-top-x2 pd-bottom-x2 justify-content-center\">\n\t\t<div class=\"content-wrap col-sm-2\">\n\t\t\t<p class=\"alt-font-family size-32 mg-bottom-small color-white\">Quand les vagues rencontrent les m\u00e9lodies<\/p>\n\t\t\t<h2 class=\"mg-bottom\">Atlantic Anthems : la bande-son c\u00f4ti\u00e8re de la Virginie<\/h2>\n\t\t\t<p>D\u00e9couvre ce qui rassemble les gens \u00e0 Virginia Beach<\/p>\n\t\t<\/div>\n\t\t<div class=\"crowdriff-wrap col-sm-4\">\n\t\t\t<script id=\"cr-init__9b6b146f2c3f72e6\" src=\"https:\/\/starling.crowdriff.com\/js\/crowdriff.js\" async=\"\"><\/script>\n\t\t<\/div>\n\t<\/div>\n<\/section>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":2,"featured_media":28410,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"enable_ai_generated_excerpts":true,"ai_model_name":"","ai_prompt_id":"","footnotes":""},"class_list":["post-28408","page","type-page","status-publish","has-post-thumbnail","hentry"],"acf":[],"publishpress_future_action":{"enabled":false,"date":"2026-10-22 11:14:24","action":"change-status","newStatus":"draft","terms":[],"taxonomy":"translation_priority","extraData":[]},"publishpress_future_workflow_manual_trigger":{"enabledWorkflows":[]},"_links":{"self":[{"href":"https:\/\/www.visitvirginiabeach.com\/fr\/wp-json\/wp\/v2\/pages\/28408","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.visitvirginiabeach.com\/fr\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.visitvirginiabeach.com\/fr\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.visitvirginiabeach.com\/fr\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.visitvirginiabeach.com\/fr\/wp-json\/wp\/v2\/comments?post=28408"}],"version-history":[{"count":14,"href":"https:\/\/www.visitvirginiabeach.com\/fr\/wp-json\/wp\/v2\/pages\/28408\/revisions"}],"predecessor-version":[{"id":32614,"href":"https:\/\/www.visitvirginiabeach.com\/fr\/wp-json\/wp\/v2\/pages\/28408\/revisions\/32614"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.visitvirginiabeach.com\/fr\/wp-json\/wp\/v2\/media\/28410"}],"wp:attachment":[{"href":"https:\/\/www.visitvirginiabeach.com\/fr\/wp-json\/wp\/v2\/media?parent=28408"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}