{"id":28722,"date":"2025-04-28T18:58:04","date_gmt":"2025-04-28T18:58:04","guid":{"rendered":"https:\/\/www.visitvirginiabeach.com\/erlebnisse\/outdoor-aktivitaeten\/"},"modified":"2026-09-11T21:16:24","modified_gmt":"2026-09-11T21:16:24","slug":"outdoor-aktivitaeten","status":"publish","type":"page","link":"https:\/\/www.visitvirginiabeach.com\/de\/erlebnisse\/outdoor-aktivitaeten\/","title":{"rendered":"Outdoor-Aktivit\u00e4ten"},"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_False-Cape-State-Park-Hiking-Camping-31jpg-scaled.jpg\" alt=\"Two men hiking through a sunlit wooded trail, surrounded by green trees and fallen leaves.\" width=\"1920\" height=\"1080\" fetchpriority=\"high\"\/><div class=\"overlay-content\"><h1 class=\"extra\">Outdoor-Aktivit\u00e4ten in Virginia Beach<\/h1><\/div><\/div><\/div><div class=\"after-overlay-content page-content-wrap fold-wrap md padded\"><p>Virginia Beach ist ber\u00fchmt f\u00fcr <a href=\"https:\/\/www.visitvirginiabeach.com\/trip-ideas\/the-ultimate-beach-lovers-guide-to-virginia-beach\/\" data-type=\"post\" data-id=\"986\">sonnenverw\u00f6hnte Str\u00e4nde<\/a> und schimmernde Wasserwege \u2013 doch das Outdoor-Abenteuer endet nicht, sobald Sie den Strand verlassen. Finden Sie Ihr pers\u00f6nliches Gl\u00fcck in diesen atemberaubenden Naturr\u00e4umen. <br\/><br\/>Entdecken Sie mehr als 4.000 Acres K\u00fcsten- und Waldidylle in wildtierreichen National Refuges, weitl\u00e4ufigen Stadtparks und ruhigen State Parks. In den State Parks <a href=\"https:\/\/www.visitvirginiabeach.com\/experiences\/outdoor-activities\/parks-nature\/first-landing-state-park\/\" data-type=\"page\" data-id=\"15078\">First Landing<\/a> und <a href=\"https:\/\/www.visitvirginiabeach.com\/experiences\/outdoor-activities\/parks-nature\/false-cape-state-park\/\" data-type=\"page\" data-id=\"14776\">False Cape<\/a> schl\u00e4ngeln Sie sich \u00fcber kilometerweite <a href=\"https:\/\/www.visitvirginiabeach.com\/trip-ideas\/8-easy-hiking-trails-in-virginia-beach\/\" data-type=\"post\" data-id=\"978\">Wander-<\/a> und <a href=\"https:\/\/www.visitvirginiabeach.com\/trip-ideas\/cycling-in-virginia-beach\/\" data-type=\"post\" data-id=\"1182\">Radwege<\/a> \u2013 oder schlagen Sie ein Zelt auf und blicken Sie auf einem der <a href=\"https:\/\/www.visitvirginiabeach.com\/experiences\/outdoor-activities\/camping-in-virginia-beach\/\">familienfreundlichen Campingpl\u00e4tze<\/a> in den Sternenhimmel.   <br\/><br\/>Wenn Sie sportlich unterwegs sind, schlagen Sie auf Virginia Beachs <a href=\"https:\/\/www.visitvirginiabeach.com\/experiences\/outdoor-activities\/golf\/\" data-type=\"page\" data-id=\"14770\">sanft h\u00fcgeligen Golfpl\u00e4tzen<\/a> ab oder spielen Sie in der Stadt auf den Tennis- und Pickleball-Pl\u00e4tzen. Pfl\u00fccken Sie auf lokalen <a href=\"https:\/\/www.visitvirginiabeach.com\/experiences\/outdoor-activities\/you-pick-farms-in-virginia-beach\/\" data-type=\"page\" data-id=\"14760\">Selbstpfl\u00fcck-Farmen<\/a> Ihre eigenen saftigen Erdbeeren und saisonalen Ernteprodukte. Und kosten Sie anschlie\u00dfend dieselben frischen Aromen, von lokalen K\u00fcchenchefs in einem Restaurant in Downtown zubereitet \u2013 am besten al fresco auf einer <a href=\"https:\/\/www.visitvirginiabeach.com\/trip-ideas\/best-restaurants-with-outdoor-seating-in-virginia-beach\/\" data-type=\"link\" data-id=\"https:\/\/www.visitvirginiabeach.com\/trip-ideas\/best-restaurants-with-outdoor-seating-in-virginia-beach\/\">Restaurantterrasse<\/a>, mit einem eiskalten Cocktail in der Hand.    <br\/><br\/><strong>Bereit, mehr als nur den Strand zu entdecken? Ihr Outdoor-Abenteuer beginnt hier.   <\/strong><br\/><\/p><\/div><\/section>\n\n<section class=\"mosaic-section mg-top-x2\"><div class=\"title-wrap title-wrap--plus fold flex-nowrap gapped fold-wrap xl padded mg-bottom-x2\"><div class=\"title-content\"><p class=\"alt-font-family size-32 mg-bottom-small\" id=\"related-articles-eyebrow\">Entdecken<\/p><h2 class=\"color-default\">Raus ins Freie in Virginia Beach<\/h2><p>W\u00e4hlen Sie Ihr ganz pers\u00f6nliches Outdoor-Abenteuer \u2013 ob Ihr Gl\u00fcck beim Wandern, Radfahren, Paddeln oder Angeln liegt.<\/p><\/div><\/div><div class=\"fold-wrap xl mosaic-wrap padded boxes\">\n<div class=\"box box--hover\"><a href=\"https:\/\/www.visitvirginiabeach.com\/experiences\/outdoor-activities\/parks-nature\/\" class=\"image-border image-border--bottom active-hover active-hover--lemon mg-bottom image-border--lemon\"><figure><img decoding=\"async\" src=\"https:\/\/www.visitvirginiabeach.com\/wp-content\/uploads\/2025\/07\/PH_LSR18_Hiking_False-Cape-State-Park_12_compressed-800x600.jpg\" alt=\"Zwei Wanderer auf einem Weg durch einen &#xFC;ppigen Wald: ein Mann mit gro&#xDF;em Rucksack und Trekkingst&#xF6;cken sowie eine Frau mit kleinerem Rucksack im False Cape State Park.\" width=\"400\" height=\"300\" loading=\"lazy\"\/><\/figure><\/a><div class=\"box-info\"><p class=\"box-title size-24 head-font-family font-weight-700\">Naturparks<\/p><p class=\"size-14\">Genie\u00dfen Sie die Natur auf mehr als 4.000 Acres \u00fcppiger, malerischer Parks.  <\/p><a href=\"https:\/\/www.visitvirginiabeach.com\/experiences\/outdoor-activities\/parks-nature\/\" class=\"button has-icon has-icon--after has-icon--tailarrow-right has-icon--bg-lemon-900 mg-top\" aria-label=\"Read more - Nature Parks\">Mehr erfahren<\/a><\/div><\/div>\n\n\n\n<div class=\"box box--hover\"><a href=\"https:\/\/www.visitvirginiabeach.com\/experiences\/outdoor-activities\/cycling-bike-trails\/\" class=\"image-border image-border--bottom active-hover active-hover--lemon mg-bottom image-border--lemon\"><figure><img decoding=\"async\" src=\"https:\/\/www.visitvirginiabeach.com\/wp-content\/uploads\/2025\/02\/144_3_3084_jpeg_b8674720-760a-43d2-8ce2-fc3726770b2b-3-scaled-800x600.jpg\" alt=\"Mann und Frau fahren auf einem Weg im Wald Fahrrad und blicken auf S&#xFC;&#xDF;wasser\" width=\"400\" height=\"300\" loading=\"lazy\"\/><\/figure><\/a><div class=\"box-info\"><p class=\"box-title size-24 head-font-family font-weight-700\">Radwege<\/p><p class=\"size-14\">Virginia Beach bietet malerische Radwege f\u00fcr jedes K\u00f6nnensniveau.<\/p><a href=\"https:\/\/www.visitvirginiabeach.com\/experiences\/outdoor-activities\/cycling-bike-trails\/\" class=\"button has-icon has-icon--after has-icon--tailarrow-right has-icon--bg-lemon-900 mg-top\" aria-label=\"Read more - Biking Trails\">Mehr erfahren<\/a><\/div><\/div>\n\n\n\n<div class=\"box box--hover\"><a href=\"https:\/\/www.visitvirginiabeach.com\/experiences\/outdoor-activities\/camping-in-virginia-beach\/\" class=\"image-border image-border--bottom active-hover active-hover--lemon mg-bottom image-border--lemon\"><figure><img decoding=\"async\" src=\"https:\/\/www.visitvirginiabeach.com\/wp-content\/uploads\/2025\/02\/144_3_3795_jpeg_08db94ae-23d8-4d96-bfd5-1f383dacec83-scaled-800x600.jpg\" alt=\"Eine dreik&#xF6;pfige Familie sitzt an einem Lagerfeuer im Wald. Das Kind isst einen Snack, und die Frau r&#xF6;stet einen Marshmallow. Im Hintergrund sind Campingausr&#xFC;stung und B&#xE4;ume zu sehen.\" width=\"400\" height=\"300\" loading=\"lazy\"\/><\/figure><\/a><div class=\"box-info\"><p class=\"box-title size-24 head-font-family font-weight-700\">Camping<\/p><p class=\"size-14\">Finden Sie den perfekten Campingplatz in Virginia Beach f\u00fcr Ihr n\u00e4chstes Outdoor-Abenteuer.<\/p><a href=\"https:\/\/www.visitvirginiabeach.com\/experiences\/outdoor-activities\/camping-in-virginia-beach\/\" class=\"button has-icon has-icon--after has-icon--tailarrow-right has-icon--bg-lemon-900 mg-top\" aria-label=\"Read more - Camping\">Mehr erfahren<\/a><\/div><\/div>\n\n\n\n<div class=\"box box--hover\"><a href=\"https:\/\/www.visitvirginiabeach.com\/experiences\/outdoor-activities\/golf\/\" class=\"image-border image-border--bottom active-hover active-hover--lemon mg-bottom image-border--lemon\"><figure><img decoding=\"async\" src=\"https:\/\/www.visitvirginiabeach.com\/wp-content\/uploads\/2025\/02\/144_3_1747_jpeg_46564b94-2227-408d-84a1-8cee6532eb00.jpg\" alt=\"Golfplatzlandschaft mit gr&#xFC;nen Fairways, Sandbunkern und umstehenden B&#xE4;umen unter einem klaren blauen Himmel.\" width=\"400\" height=\"300\" loading=\"lazy\"\/><\/figure><\/a><div class=\"box-info\"><p class=\"box-title size-24 head-font-family font-weight-700\">Golf<\/p><p class=\"size-14\">Auf unseren Fairways ist das Gras immer gr\u00fcner. Wir zeigen Ihnen, wo Sie in Virginia Beach abschlagen k\u00f6nnen.   <\/p><a href=\"https:\/\/www.visitvirginiabeach.com\/experiences\/outdoor-activities\/golf\/\" class=\"button has-icon has-icon--after has-icon--tailarrow-right has-icon--bg-lemon-900 mg-top\" aria-label=\"Read more - Golf\">Mehr erfahren<\/a><\/div><\/div>\n\n\n\n<div class=\"box box--hover\"><a href=\"https:\/\/www.visitvirginiabeach.com\/experiences\/outdoor-activities\/you-pick-farms-in-virginia-beach\/\" class=\"image-border image-border--bottom active-hover active-hover--lemon mg-bottom image-border--lemon\"><figure><img decoding=\"async\" src=\"https:\/\/www.visitvirginiabeach.com\/wp-content\/uploads\/2025\/02\/Henley_Farms_Pungo_Strawberries_Spring_1__dd442bca-ce77-481b-9dab-a4f4cebf426e-1-800x600.jpg\" alt=\"Arm h&#xE4;lt einen Korb mit reifen Erdbeeren auf einer Erdbeerfarm\" width=\"400\" height=\"300\" loading=\"lazy\"\/><\/figure><\/a><div class=\"box-info\"><p class=\"box-title size-24 head-font-family font-weight-700\">Selbstpfl\u00fcck-Farmen<\/p><p class=\"size-14\">Genie\u00dfen Sie familienfreundliche Selbstpfl\u00fcck-Abenteuer auf den Pungo-Farmen in Virginia Beach.<\/p><a href=\"https:\/\/www.visitvirginiabeach.com\/experiences\/outdoor-activities\/you-pick-farms-in-virginia-beach\/\" class=\"button has-icon has-icon--after has-icon--tailarrow-right has-icon--bg-lemon-900 mg-top\" aria-label=\"Read more - You-Pick Farms\">Mehr erfahren<\/a><\/div><\/div>\n\n\n\n<div class=\"box box--hover\"><a href=\"https:\/\/www.visitvirginiabeach.com\/experiences\/outdoor-activities\/parks-nature\/nature-trails\/\" class=\"image-border image-border--bottom active-hover active-hover--lemon mg-bottom image-border--lemon\"><figure><img decoding=\"async\" src=\"https:\/\/www.visitvirginiabeach.com\/wp-content\/uploads\/2025\/07\/PH_LSR22_Friends-Hiking-FLSP-Compressed-46-800x600.jpg\" alt=\"Drei Frauen steigen einen laubbedeckten Hang in einem Wald hinauf und zeigen eine herbstliche Landschaft mit B&#xE4;umen und erdigen Farbt&#xF6;nen im First Landing State Park.\" width=\"400\" height=\"300\" loading=\"lazy\"\/><\/figure><\/a><div class=\"box-info\"><p class=\"box-title size-24 head-font-family font-weight-700\">Naturpfade<\/p><p class=\"size-14\">Mit mehr als 100 Meilen gepflegter Wege, die sich durch unsere Stadt-, State- und Nationalparks sowie Refuges schl\u00e4ngeln, finden Sie ganz leicht Ihren Lieblingsweg, um sich mit der Natur zu verbinden.<\/p><a href=\"https:\/\/www.visitvirginiabeach.com\/experiences\/outdoor-activities\/parks-nature\/nature-trails\/\" class=\"button has-icon has-icon--after has-icon--tailarrow-right has-icon--bg-lemon-900 mg-top\" aria-label=\"Read more - Nature Trails\">Mehr erfahren<\/a><\/div><\/div>\n<\/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\">Entdecken<\/p><h2 class=\"color-default\" id=\"related-articles-heading\">Top-Outdoor-Attraktionen  <\/h2><p>Drau\u00dfen sein hat noch nie so viel Spa\u00df gemacht. Hier sind die Top-Spots in Virginia Beach.   <\/p><\/div><\/div><div class=\"splide__track\"><div class=\"splide__list\">\n<div class=\"splide__slide box\"><a href=\"https:\/\/www.visitvirginiabeach.com\/listing\/the-adventure-park-at-virginia-aquarium\/2780\/ \" 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_1568_jpeg_9b2828ed-aea8-402d-812a-b644ca426ab9-1-388x258.jpg\" alt=\"\" width=\"388\" height=\"258\" loading=\"lazy\"\/><figcaption class=\"visually-hidden\">The Adventure Park at Virginia Aquarium  <\/figcaption><\/figure><\/a><h3 class=\"h5 mg-top\"><a href=\"https:\/\/www.visitvirginiabeach.com\/listing\/the-adventure-park-at-virginia-aquarium\/2780\/&#10;%20\" target=\"_self\" class=\"read-more\" aria-label=\"Read more about The Adventure Park at Virginia Aquarium , opens in a new tab\">The Adventure Park at Virginia Aquarium  <\/a><\/h3><p class=\"size-14\">Hey, Adrenalinjunkies \u2013 Ziplines und Hochseilg\u00e4rten rufen nach Ihnen.<\/p><\/div>\n\n\n\n<div class=\"splide__slide box\"><a href=\"\/experiences\/outdoor-activities\/parks-nature\/first-landing-state-park\/\" 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_3795_jpeg_08db94ae-23d8-4d96-bfd5-1f383dacec83-2-388x258.jpg\" alt=\"\" width=\"388\" height=\"258\" loading=\"lazy\"\/><figcaption class=\"visually-hidden\">First Landing State Park<\/figcaption><\/figure><\/a><h3 class=\"h5 mg-top\"><a href=\"https:\/\/www.visitvirginiabeach.com\/experiences\/outdoor-activities\/parks-nature\/first-landing-state-park\/\" target=\"_self\" class=\"read-more\" aria-label=\"Read more about First Landing State Park, opens in a new tab\">First Landing State Park<\/a><\/h3><p class=\"size-14\">W\u00e4hlen Sie Ihr eigenes Abenteuer: Wandern, Radfahren, Kajakfahren oder Campen in Virginias meistbesuchtem State Park.<\/p><\/div>\n\n\n\n<div class=\"splide__slide box\"><a href=\"\/listing\/hunt-club-farm\/3024\/ \" 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\/Arts_Culture_Hunt_Club_Farm_Hunt_Club_Farm_1_jpg_a3693d03-e091-48e4-8e65-8087b16576ce-2-388x258.jpg\" alt=\"\" width=\"388\" height=\"258\" loading=\"lazy\"\/><figcaption class=\"visually-hidden\">Hunt Club Farm<\/figcaption><\/figure><\/a><h3 class=\"h5 mg-top\"><a href=\"\/listing\/hunt-club-farm\/3024\/&#10;%20\" target=\"_self\" class=\"read-more\" aria-label=\"Read more about Hunt Club Farm, opens in a new tab\">Hunt Club Farm<\/a><\/h3><p class=\"size-14\">Genie\u00dfen Sie Ponyreiten, einen Streichelzoo, eine Wellensittich-Voliere \u2013 sogar Kuhkuscheln und Fl\u00e4schchenf\u00fcttern.  <\/p><\/div>\n\n\n\n<div class=\"splide__slide box\"><a href=\"\/experiences\/outdoor-activities\/parks-nature\/mount-trashmore-park\/\" 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\/04\/042723_Mount-Trashmore_0362-lowres-388x258.jpg\" alt=\"\" width=\"388\" height=\"258\" loading=\"lazy\"\/><figcaption class=\"visually-hidden\">Mount Trashmore Park<\/figcaption><\/figure><\/a><h3 class=\"h5 mg-top\"><a href=\"https:\/\/www.visitvirginiabeach.com\/experiences\/outdoor-activities\/parks-nature\/mount-trashmore-park\/\" target=\"_self\" class=\"read-more\" aria-label=\"Read more about Mount Trashmore Park, opens in a new tab\">Mount Trashmore Park<\/a><\/h3><p class=\"size-14\">Lernen Sie diesen beliebten Park in Virginia Beach kennen, der auf einer ehemaligen M\u00fclldeponie errichtet wurde.<\/p><\/div>\n<\/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\">Prev<\/button><div class=\"fraction-indicator\"><\/div><button class=\"splide__arrow splide__arrow--next\">Next<\/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><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);\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-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\">\/\/ ============================================================\r\n  \/\/ Find the instance element and config by selector or template.\r\n  \/\/ ============================================================\r\n  function findInstance(selector) {\r\n    var el = document.querySelector(selector);\r\n    if (!el) return null;\r\n    try {\r\n      return {\r\n        el: el,\r\n        config: JSON.parse(el.getAttribute('data-config')),\r\n        template: el.getAttribute('data-template'),\r\n      };\r\n    } catch (e) {\r\n      return null;\r\n    }\r\n  }\r\n\r\n  \/\/ ============================================================\r\n  \/\/ Mount handler \u2014 fires once per instance\r\n  \/\/ ============================================================\r\n  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 instance = findInstance(selector);\r\n    if (!instance) return;\r\n\r\n    var config = {};\r\n\r\n    \/\/ Event type\r\n    if (instance.config.type === 'event') {\r\n      config.searchBehavior = { placeholder: 'Search for events by interest, topic, or idea...' };\r\n      config.filters = Object.assign(config.filters || {}, { showDatePicker: true });\r\n      config.results = Object.assign(config.results || {}, { resultLayout: \"list\" });\r\n      config.sorting = {\r\n        initialSort: 'next_occurrence:asc',\r\n        sortOptions: []\r\n      };\r\n    }\r\n\r\n    if (Object.keys(config).length > 0) {\r\n      config.selector = selector;\r\n      window.dispatchEvent(new CustomEvent('aisearch_updateConfig', { detail: config }));\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<\/script><div class=\"miles-ai-mfe miles-ai-template--listings-with-map miles-ai-template--listings\" id=\"miles-ai-1\" data-template=\"listings-with-map\" 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;Search Outdoor Activities in Virginia Beach&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;Outdoor Activities&quot;,&quot;Region&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;:2000,&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;preFilters&quot;:&quot;\\&quot;Outdoor Activities\\&quot;&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;}'><\/div>\n<section class=\"single-promo-block with-elements mg-top-x2\"><div class=\"elements-wrap fold-wrap xl\"><div class=\"fold pd-top-x2 pd-bottom-x2 align-items-center\"><div class=\"image-wrap col-sm-3\"><img decoding=\"async\" loading=\"lazy\" src=\"https:\/\/www.visitvirginiabeach.com\/wp-content\/uploads\/2025\/05\/WS1_1792-lowres.jpg\" alt=\"A couple enjoys jet skiing on the ocean, with city buildings visible in the background under a cloudy sky.\" width=\"700\" height=\"525\"\/><\/div><div class=\"content-wrap col-sm-3\"><p class=\"alt-font-family size-32 mg-bottom-small eyebrow\">Noch mehr entdecken<\/p><h2 class=\"mg-bottom color-default\">Raus aufs Wasser<\/h2><p>Mit mehr als 35 Meilen malerischer K\u00fcstenlinie zum Erkunden ist Virginia Beach ein Paradies f\u00fcr alle Arten von Wassersport. Von Paddleboarding und Jetski bis hin zum Surfen \u2013 gehen Sie aufs Wasser und erleben Sie nonstop Spa\u00df. <\/p><a href=\"\/experiences\/on-the-water\/\" target=\"_self\" aria-label=\"Let's Go - Get on the Water\" class=\"button has-icon has-icon--after has-icon--tailarrow-right mg-top\">Los geht\u2019s<\/a><\/div><\/div><\/div><\/section>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":5,"featured_media":28723,"parent":28081,"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-28722","page","type-page","status-publish","has-post-thumbnail","hentry"],"acf":[],"publishpress_future_action":{"enabled":false,"date":"2026-09-19 01:04:45","action":"change-status","newStatus":"draft","terms":[],"taxonomy":"translation_priority","extraData":[]},"publishpress_future_workflow_manual_trigger":{"enabledWorkflows":[]},"_links":{"self":[{"href":"https:\/\/www.visitvirginiabeach.com\/de\/wp-json\/wp\/v2\/pages\/28722","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.visitvirginiabeach.com\/de\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.visitvirginiabeach.com\/de\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.visitvirginiabeach.com\/de\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/www.visitvirginiabeach.com\/de\/wp-json\/wp\/v2\/comments?post=28722"}],"version-history":[{"count":2,"href":"https:\/\/www.visitvirginiabeach.com\/de\/wp-json\/wp\/v2\/pages\/28722\/revisions"}],"predecessor-version":[{"id":28726,"href":"https:\/\/www.visitvirginiabeach.com\/de\/wp-json\/wp\/v2\/pages\/28722\/revisions\/28726"}],"up":[{"embeddable":true,"href":"https:\/\/www.visitvirginiabeach.com\/de\/wp-json\/wp\/v2\/pages\/28081"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.visitvirginiabeach.com\/de\/wp-json\/wp\/v2\/media\/28723"}],"wp:attachment":[{"href":"https:\/\/www.visitvirginiabeach.com\/de\/wp-json\/wp\/v2\/media?parent=28722"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}