1<!DOCTYPE html> 2<html lang="en-US"> 3<head> 4 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
5<script> 6var gform;gform||(document.addEventListener("gform_main_scripts_loaded",function(){gform.scriptsLoaded=!0}),document.addEventListener("gform/theme/scripts_loaded",function(){gform.themeScriptsLoaded=!0}),window.addEventListener("DOMContentLoaded",function(){gform.domLoaded=!0}),gform={domLoaded:!1,scriptsLoaded:!1,themeScriptsLoaded:!1,isFormEditor:()=>"function"==typeof InitializeEditor,callIfLoaded:function(o){return!(!gform.domLoaded||!gform.scriptsLoaded||!gform.themeScriptsLoaded&&!gform.isFormEditor()||(gform.isFormEditor()&&console.warn("The use of gform.initializeOnLoaded() is deprecated in the form editor context and will be removed in Gravity Forms 3.1."),o(),0))},initializeOnLoaded:function(o){gform.callIfLoaded(o)||(document.addEventListener("gform_main_scripts_loaded",()=>{gform.scriptsLoaded=!0,gform.callIfLoaded(o)}),document.addEventListener("gform/theme/scripts_loaded",()=>{gform.themeScriptsLoaded=!0,gform.callIfLoaded(o)}),window.addEventListener("DOMContentLoaded",()=>{gform.domLoaded=!0,gform.callIfLoaded(o)}))},hooks:{action:{},filter:{}},addAction:function(o,r,e,t){gform.addHook("action",o,r,e,t)},addFilter:function(o,r,e,t){gform.addHook("filter",o,r,e,t)},doAction:function(o){gform.doHook("action",o,arguments)},applyFilters:function(o){return gform.doHook("filter",o,arguments)},removeAction:function(o,r){gform.removeHook("action",o,r)},removeFilter:function(o,r,e){gform.removeHook("filter",o,r,e)},addHook:function(o,r,e,t,n){null==gform.hooks[o][r]&&(gform.hooks[o][r]=[]);var d=gform.hooks[o][r];null==n&&(n=r+"_"+d.length),gform.hooks[o][r].push({tag:n,callable:e,priority:t=null==t?10:t})},doHook:function(r,o,e){var t;if(e=Array.prototype.slice.call(e,1),null!=gform.hooks[r][o]&&((o=gform.hooks[r][o]).sort(function(o,r){return o.priority-r.priority}),o.forEach(function(o){"function"!=typeof(t=o.callable)&&(t=window[t]),"action"==r?t.apply(null,e):e[0]=t.apply(null,e)})),"filter"==r)return e[0]},removeHook:function(o,r,t,n){var e;null!=gform.hooks[o][r]&&(e=(e=gform.hooks[o][r]).filter(function(o,r,e){return!!(null!=n&&n!=o.tag||null!=t&&t!=o.priority)}),gform.hooks[o][r]=e)}}); 7</script>
7 8 9 <meta name="viewport" content="width=device-width, initial-scale=1" /> 10 <link rel="preconnect" href="https://www.google.com"> 11 <link rel="preconnect" href="https://www.gstatic.com" crossorigin> 12 <link rel="preconnect" href="https://fonts.googleapis.com"> 13 <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> 14 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Material+Symbols+Sharp:opsz,wght,FILL,GRAD@40,100..300,0..1,0&display=block" /> 15 <title>Contact Island Vacation Properties | Island Vacation Properties</title> 16 17 <!-- All in One SEO Pro 5.0.2 - aioseo.com --> 18 <meta name="description" content="Contact Island Vacation Properties with any questions or feedback you may have. Our goal is to ensure your Anna Maria Island vacation rental meets your needs." /> 19 <meta name="robots" content="max-snippet:-1, max-image-preview:large, max-video-preview:-1" /> 20 <link rel="canonical" href="https://www.islandvacationproperties.com/contact/" /> 21 <meta name="generator" content="All in One SEO Pro (AIOSEO) 5.0.2" /> 22 <meta property="og:locale" content="en_US" /> 23 <meta property="og:site_name" content="Island Vacation Properties" /> 24 <meta property="og:type" content="website" /> 25 <meta property="og:title" content="Contact Island Vacation Properties | Island Vacation Properties" /> 26 <meta property="og:description" content="Contact Island Vacation Properties with any questions or feedback you may have. Our goal is to ensure your Anna Maria Island vacation rental meets your needs." /> 27 <meta property="og:url" content="https://www.islandvacationproperties.com/contact/" /> 28 <meta property="article:published_time" content="2019-12-10T16:06:39+00:00" /> 29 <meta property="article:modified_time" content="2026-09-16T13:35:45+00:00" /> 30 <meta property="article:publisher" content="https://www.facebook.com/islandvacationproperties/" /> 31 <meta name="twitter:card" content="summary" /> 32 <meta name="twitter:title" content="Contact Island Vacation Properties | Island Vacation Properties" /> 33 <meta name="twitter:description" content="Contact Island Vacation Properties with any questions or feedback you may have. Our goal is to ensure your Anna Maria Island vacation rental meets your needs." /> 34
34<script type="application/ld+json" class="aioseo-schema"> 35 {"@context":"https:\/\/schema.org","@graph":[{"@type":"BreadcrumbList","@id":"https:\/\/www.islandvacationproperties.com\/contact\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/www.islandvacationproperties.com\/#listItem","position":1,"name":"Home","item":"https:\/\/www.islandvacationproperties.com\/","nextItem":{"@type":"ListItem","@id":"https:\/\/www.islandvacationproperties.com\/contact\/#listItem","name":"Contact Us"}},{"@type":"ListItem","@id":"https:\/\/www.islandvacationproperties.com\/contact\/#listItem","position":2,"name":"Contact Us","previousItem":{"@type":"ListItem","@id":"https:\/\/www.islandvacationproperties.com\/#listItem","name":"Home"}}]},{"@type":"Organization","@id":"https:\/\/www.islandvacationproperties.com\/#organization","name":"Island Vacation Properties","description":"Anna Maria Island Vacation Rentals","url":"https:\/\/www.islandvacationproperties.com\/","email":"[email protected]","telephone":"+19417781000","logo":{"@type":"ImageObject","url":"https:\/\/www.islandvacationproperties.com\/wp-content\/uploads\/2026\/08\/IVPBlue200.png","@id":"https:\/\/www.islandvacationproperties.com\/contact\/#organizationLogo","width":367,"height":200,"caption":"ivp logo"},"image":{"@id":"https:\/\/www.islandvacationproperties.com\/contact\/#organizationLogo"},"sameAs":["https:\/\/www.facebook.com\/islandvacationproperties\/","https:\/\/www.google.com\/maps\/place\/?q=place_id:ChIJnZBkwbARw4gR3gR-y7Y6aB4"]},{"@type":"WebPage","@id":"https:\/\/www.islandvacationproperties.com\/contact\/#webpage","url":"https:\/\/www.islandvacationproperties.com\/contact\/","name":"Contact Island Vacation Properties | Island Vacation Properties","description":"Contact Island Vacation Properties with any questions or feedback you may have. Our goal is to ensure your Anna Maria Island vacation rental meets your needs.","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/www.islandvacationproperties.com\/#website"},"breadcrumb":{"@id":"https:\/\/www.islandvacationproperties.com\/contact\/#breadcrumblist"},"datePublished":"2019-12-10T11:06:39-05:00","dateModified":"2026-09-16T09:35:45-04:00"},{"@type":"WebSite","@id":"https:\/\/www.islandvacationproperties.com\/#website","url":"https:\/\/www.islandvacationproperties.com\/","name":"Island Vacation Properties","description":"Anna Maria Island Vacation Rentals","inLanguage":"en-US","publisher":{"@id":"https:\/\/www.islandvacationproperties.com\/#organization"}}]} 36 </script>
36 37 <!-- All in One SEO Pro --> 38 39<link rel='dns-prefetch' href='//www.google.com' /> 40<link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://www.islandvacationproperties.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.islandvacationproperties.com%2Fcontact%2F" /> 41<link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://www.islandvacationproperties.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.islandvacationproperties.com%2Fcontact%2F&format=xml" /> 42<style id="wp-img-auto-sizes-contain-inline-css"> 43img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px} 44/*# sourceURL=wp-img-auto-sizes-contain-inline-css */ 45</style> 46<style id="wp-emoji-styles-inline-css"> 47 48 img.wp-smiley, img.emoji { 49 display: inline !important; 50 border: none !important; 51 box-shadow: none !important; 52 height: 1em !important; 53 width: 1em !important; 54 margin: 0 0.07em !important; 55 vertical-align: -0.1em !important; 56 background: none !important; 57 padding: 0 !important; 58 } 59/*# sourceURL=wp-emoji-styles-inline-css */ 60</style> 61<style id="wp-block-library-inline-css"> 62:root{--wp-block-synced-color:#7a00df;--wp-block-synced-color--rgb:122,0,223;--wp-bound-block-color:var(--wp-block-synced-color);--wp-editor-canvas-background:#ddd;--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,160.5;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.wp-element-button{cursor:pointer}:root .has-very-light-gray-background-color{background-color:#eee}:root .has-very-dark-gray-background-color{background-color:#313131}:root .has-very-light-gray-color{color:#eee}:root .has-very-dark-gray-color{color:#313131}:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background{background:linear-gradient(135deg,#00d084,#0693e3)}:root .has-purple-crush-gradient-background{background:linear-gradient(135deg,#34e2e4,#4721fb 50%,#ab1dfe)}:root .has-hazy-dawn-gradient-background{background:linear-gradient(135deg,#faaca8,#dad0ec)}:root .has-subdued-olive-gradient-background{background:linear-gradient(135deg,#fafae1,#67a671)}:root .has-atomic-cream-gradient-background{background:linear-gradient(135deg,#fdd79a,#004a59)}:root .has-nightshade-gradient-background{background:linear-gradient(135deg,#330968,#31cdcf)}:root .has-midnight-gradient-background{background:linear-gradient(135deg,#020381,#2874fc)}:root{--wp--preset--font-size--normal:16px;
62--wp--preset--font-size--huge:42px}.has-regular-font-size{font-size:1em}.has-larger-font-size{font-size:2.625em}.has-normal-font-size{font-size:var(--wp--preset--font-size--normal)}.has-huge-font-size{font-size:var(--wp--preset--font-size--huge)}:root .has-text-align-center{text-align:center}:root .has-text-align-left{text-align:left}:root .has-text-align-right{text-align:right}.has-fit-text{white-space:nowrap!important}#end-resizable-editor-section{display:none}.aligncenter{clear:both}.items-justified-left{justify-content:flex-start}.items-justified-center{justify-content:center}.items-justified-right{justify-content:flex-end}.items-justified-space-between{justify-content:space-between}.screen-reader-text{word-wrap:normal!important;border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-break:normal!important}.screen-reader-text:focus{background-color:#ddd;clip-path:none;color:#444;display:block;font-size:1em;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}html :where(.has-border-color){border-style:solid}html :where([style^=border-color],[style*=";border-color"],[style*="; border-color"]){border-style:solid}html :where([style^=border-top-color],[style*=";border-top-color"],[style*="; border-top-color"]){border-top-style:solid}html :where([style^=border-right-color],[style*=";border-right-color"],[style*="; border-right-color"]){border-right-style:solid}html :where([style^=border-bottom-color],[style*=";border-bottom-color"],[style*="; border-bottom-color"]){border-bottom-style:solid}html :where([style^=border-left-color],[style*=";border-left-color"],[style*="; border-left-color"]){border-left-style:solid}html :where([style^=border-width],[style*=";border-width"],[style*="; border-width"]){border-style:solid}html :where([style^=border-top-width],[style*=";border-top-width"],[style*="; border-top-width"]){border-top-style:solid}html :where([style^=border-right-width],[style*=";border-right-width"],[style*="; border-right-width"]){border-right-style:solid}html :where([style^=border-bottom-width],[style*=";border-bottom-width"],[style*="; border-bottom-width"]){border-bottom-style:solid}html :where([style^=border-left-width],[style*=";border-left-width"],[style*="; border-left-width"]){border-left-style:solid}html :where(img[class*=wp-image-]){height:auto;max-width:100%}:where(figure){margin:0 0 1em}html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:var(--wp-admin--admin-bar--height,0px)}@media screen and (max-width:600px){html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:0px}} 63 64/*# sourceURL=/wp-includes/css/dist/block-library/common.min.css */ 65</style> 66<style id="wp-block-paragraph-inline-css"> 67.is-small-text{font-size:.875em}.is-regular-text{font-size:1em}.is-large-text{font-size:2.25em}.is-larger-text{font-size:3em}.has-drop-cap:not(:focus):first-letter{float:left;font-size:8.4em;font-style:normal;font-weight:100;line-height:.68;margin:.05em .1em 0 0;text-transform:uppercase}body.rtl .has-drop-cap:not(:focus):first-letter{float:none;margin-left:.1em}p.has-drop-cap.has-background{overflow:hidden}:root :where(p.has-background){padding:1.25em 2.375em}:where(p.has-text-color:not(.has-link-color)) a{color:inherit}p.has-text-align-left[style*="writing-mode:vertical-lr"],p.has-text-align-right[style*="writing-mode:vertical-rl"]{rotate:180deg} 68/*# sourceURL=https://www.islandvacationproperties.com/wp-includes/blocks/paragraph/style.min.css */ 69</style> 70<style id="wp-block-columns-inline-css"> 71.wp-block-columns{box-sizing:border-box;display:flex;flex-wrap:wrap!important}@media (min-width:782px){.wp-block-columns{flex-wrap:nowrap!important}}.wp-block-columns{align-items:normal!important}.wp-block-columns.are-vertically-aligned-top{align-items:flex-start}.wp-block-columns.are-vertically-aligned-center{align-items:center}.wp-block-columns.are-vertically-aligned-bottom{align-items:flex-end}@media (max-width:781px){.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column{flex-basis:100%!important}}@media (min-width:782px){.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column{flex-basis:0;flex-grow:1}.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column[style*=flex-basis]{flex-grow:0}}.wp-block-columns.is-not-stacked-on-mobile{flex-wrap:nowrap!important}.wp-block-columns.is-not-stacked-on-mobile>.wp-block-column{flex-basis:0;flex-grow:1}.wp-block-columns.is-not-stacked-on-mobile>.wp-block-column[style*=flex-basis]{flex-grow:0}:where(.wp-block-columns){margin-bottom:1.75em}:where(.wp-block-columns.has-background){padding:1.25em 2.375em}.wp-block-column{flex-grow:1;min-width:0;overflow-wrap:break-word;word-break:break-word}.wp-block-column.is-vertically-aligned-top{align-self:flex-start}.wp-block-column.is-vertically-aligned-center{align-self:center}.wp-block-column.is-vertically-aligned-bottom{align-self:flex-end}.wp-block-column.is-vertically-aligned-stretch{align-self:stretch}.wp-block-column.is-vertically-aligned-bottom,.wp-block-column.is-vertically-aligned-center,.wp-block-column.is-vertically-aligned-top{width:100%} 72/*# sourceURL=https://www.islandvacationproperties.com/wp-includes/blocks/columns/style.min.css */ 73</style> 74 75 76<style id="global-styles-inline-css"> 77:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--color--rt-primary: #f4dd56;--wp--preset--color--rt-secondary: #f4dd56;--wp--preset--color--rt-above-footer: #737578;--wp--preset--color--rt-footer: #000000;--wp--preset--color--rt-accent: #55a0a3;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgb(6,147,227) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgb(252,185,
770) 0%,rgb(255,105,0) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgb(255,105,0) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: clamp(.8rem, .8rem + ((1vw - 0.48rem) * 1.194), 1rem);--wp--preset--font-size--medium: clamp(.8rem, 1rem + ((1vw - 0.48rem) * 1.194), 1.6rem);--wp--preset--font-size--large: clamp(1.6rem, 1.6rem + ((1vw - 0.48rem) * 1.592), 2.5rem);--wp--preset--font-size--x-large: clamp(25.014px, 1.563rem + ((1vw - 3.2px) * 1.213), 42px);--wp--preset--font-size--extra-large: clamp(2.5rem, 2.5rem + ((1vw - 0.48rem) * 1.99), 3.5rem);--wp--preset--font-size--extra-extra-large: clamp(3.5rem, 3.5rem + ((1vw - 0.48rem) * 1.99), 4.55rem);--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0);--wp--preset--shadow--crisp: 6px 6px 0px rgb(0, 0, 0);}.wp-block-button{--wp--preset--dimension--25: 25%;--wp--preset--dimension--50: 50%;--wp--preset--dimension--75: 75%;--wp--preset--dimension--100: 100%;}:root { --wp--style--global--content-size: 1200px;--wp--style--global--wide-size: 1720px; }:where(body) { margin: 0; }.wp-site-blocks > .alignleft { float: left; margin-right: 2em; }.wp-site-blocks > .alignright { float: right; margin-left: 2em; }.wp-site-blocks > .aligncenter { justify-content: center; margin-left: auto; margin-right: auto; }:where(.wp-site-blocks) > * { margin-block-start: 24px; margin-block-end: 0; }:where(.wp-site-blocks) > :first-child { margin-block-start: 0; }:where(.wp-site-blocks) > :last-child { margin-block-end: 0; }:root { --wp--style--block-gap: 24px; }:root :where(.is-layout-flow) > :first-child{margin-block-start: 0;}:root :where(.is-layout-flow) > :last-child{margin-block-end: 0;}:root :where(.is-layout-flow) > *{margin-block-start: 24px;margin-block-end: 0;}:root :where(.is-layout-constrained) > :first-child{margin-block-start: 0;}:root :where(.is-layout-constrained) > :last-child{margin-block-end: 0;}:root :where(.is-layout-constrained) > *{margin-block-start: 24px;margin-block-end: 0;}:root :where(.is-layout-flex){gap: 24px;}:root :where(.is-layout-grid){gap: 24px;}.is-layout-flow > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}.is-layout-flow > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}.is-layout-flow > .aligncenter{margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}.is-layout-constrained > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}.is-layout-constrained > .aligncenter{margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained >
77 :where(:not(.alignleft):not(.alignright):not(.alignfull)){max-width: var(--wp--style--global--content-size);margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > .alignwide{max-width: var(--wp--style--global--wide-size);}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}body{padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}:root :where(.wp-element-button, .wp-block-button__link){background-color: #32373c;border-width: 0;color: #fff;font-family: inherit;font-size: inherit;font-style: inherit;font-weight: inherit;letter-spacing: inherit;line-height: inherit;padding-top: calc(0.667em + 2px);padding-right: calc(1.333em + 2px);padding-bottom: calc(0.667em + 2px);padding-left: calc(1.333em + 2px);text-decoration: none;text-transform: inherit;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-rt-primary-color{color: var(--wp--preset--color--rt-primary) !important;}.has-rt-secondary-color{color: var(--wp--preset--color--rt-secondary) !important;}.has-rt-above-footer-color{color: var(--wp--preset--color--rt-above-footer) !important;}.has-rt-footer-color{color: var(--wp--preset--color--rt-footer) !important;}.has-rt-accent-color{color: var(--wp--preset--color--rt-accent) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-rt-primary-background-color{background-color: var(--wp--preset--color--rt-primary) !important;}.has-rt-secondary-background-color{background-color: var(--wp--preset--color--rt-secondary) !important;}.has-rt-above-footer-background-color{background-color: var(--wp--preset--color--rt-above-footer) !important;}.has-rt-footer-background-color{background-color: var(--wp--preset--color--rt-footer) !important;}.has-rt-accent-background-color{background-color: var(--wp--preset--color--rt-accent) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-rt-primary-border-color{border-color: var(--wp--preset--color--rt-primary) !important;}.has-rt-secondary-border-color{border-color: var(--wp--preset--color--rt-secondary) !important;}.has-rt-above-footer-border-color{border-color: var(--wp--preset--color--rt-above-footer) !important;}.has-rt-footer-border-color{border-color: var(--wp--preset--color--rt-footer) !important;}.has-rt-accent-border-color{border-color: var(--wp--preset--color--rt-accent) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}
77.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}.has-extra-large-font-size{font-size: var(--wp--preset--font-size--extra-large) !important;}.has-extra-extra-large-font-size{font-size: var(--wp--preset--font-size--extra-extra-large) !important;} 78/*# sourceURL=global-styles-inline-css */ 79</style> 80 81<link rel='stylesheet' id='normalize-css' href='https://www.islandvacationproperties.com/wp-content/themes/rtapi/css/normalize.css?ver=7.1.3' media='all' /> 82<link rel='stylesheet' id='icons-css' href='https://www.islandvacationproperties.com/wp-content/themes/rtapi/material-icons.css?ver=7.1.3' media='all' /> 83<link rel='stylesheet' id='core-css' href='https://www.islandvacationproperties.com/wp-content/themes/rtapi/style.css?ver=1791205626' media='' /> 84<link rel='stylesheet' id='gforms_reset_css-css' href='https://www.islandvacationproperties.com/wp-content/plugins/gravityforms/legacy/css/formreset.min.css?ver=3.1.2' media='all' /> 85<link rel='stylesheet' id='gforms_formsmain_css-css' href='https://www.islandvacationproperties.com/wp-content/plugins/gravityforms/legacy/css/formsmain.min.css?ver=3.1.2' media='all' /> 86<link rel='stylesheet' id='gforms_ready_class_css-css' href='https://www.islandvacationproperties.com/wp-content/plugins/gravityforms/legacy/css/readyclass.min.css?ver=3.1.2' media='all' /> 87<link rel='stylesheet' id='gforms_browsers_css-css' href='https://www.islandvacationproperties.com/wp-content/plugins/gravityforms/legacy/css/browsers.min.css?ver=3.1.2' media='all' /> 88<link rel='stylesheet' id='popup-maker-site-css' href='//www.islandvacationproperties.com/wp-content/uploads/pum/pum-site-styles.css?generated=1787948087&ver=1.25.0' media='all' />
89<script id="jquery-core-js" src="https://www.islandvacationproperties.com/wp-includes/js/jquery/jquery.min.js?ver=3.7.1"></script>
vendor: 1 bytes, line 89
89
90<script id="jquery-migrate-js" src="https://www.islandvacationproperties.com/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.4.1"></script>
vendor: 1 bytes, line 90
90
91<script id="jquery-ui-core-js-before"> 92jQuery.uiBackCompat = true; 93jQuery.uiBackCompat = true; 94//# sourceURL=jquery-ui-core-js-before 95</script>
vendor: 1 bytes, line 95
95
96<script id="jquery-ui-core-js" src="https://www.islandvacationproperties.com/wp-includes/js/jquery/ui/core.min.js?ver=1.14.2"></script>
vendor: 1 bytes, line 96
96
97<script id="jquery-ui-mouse-js" src="https://www.islandvacationproperties.com/wp-includes/js/jquery/ui/mouse.min.js?ver=1.14.2"></script>
vendor: 1 bytes, line 97
97
98<script id="jquery-ui-sortable-js" src="https://www.islandvacationproperties.com/wp-includes/js/jquery/ui/sortable.min.js?ver=1.14.2"></script>
vendor: 1 bytes, line 98
98
99<script id="jquery-ui-resizable-js" src="https://www.islandvacationproperties.com/wp-includes/js/jquery/ui/resizable.min.js?ver=1.14.2"></script>
vendor: 1 bytes, line 99
99
100<script id="acf-js" src="https://www.islandvacationproperties.com/wp-content/plugins/advanced-custom-fields-pro/assets/build/js/acf.min.js?ver=6.8.10"></script>
vendor: 1 bytes, line 100
100
101<script id="wp-dom-ready-js" src="https://www.islandvacationproperties.com/wp-includes/js/dist/dom-ready.min.js?ver=3fe927cab37bf38d6a23"></script>
vendor: 1 bytes, line 101
101
102<script id="wp-hooks-js" src="https://www.islandvacationproperties.com/wp-includes/js/dist/hooks.min.js?ver=f0f188028580e8dc1255"></script>
vendor: 1 bytes, line 102
102
103<script id="wp-i18n-js" src="https://www.islandvacationproperties.com/wp-includes/js/dist/i18n.min.js?ver=1dfe7db3940c23ea9216"></script>
vendor: 1 bytes, line 103
103
104<script id="wp-i18n-js-after"> 105wp.i18n.setLocaleData( { 'text direction\u0004ltr': [ 'ltr' ] } ); 106wp.i18n.setLocaleData( { 'text direction\u0004ltr': [ 'ltr' ] } ); 107//# sourceURL=wp-i18n-js-after 108</script>
vendor: 1 bytes, line 108
108
109<script id="wp-a11y-js" src="https://www.islandvacationproperties.com/wp-includes/js/dist/a11y.min.js?ver=31c6cec5a4ff7aff483d"></script>
vendor: 1 bytes, line 109
109
110<script id="acf-input-js" src="https://www.islandvacationproperties.com/wp-content/plugins/advanced-custom-fields-pro/assets/build/js/acf-input.min.js?ver=6.8.10"></script>
vendor: 1 bytes, line 110
110
111<script id="rtc-acf-fixer-js-extra"> 112var rtwpVars = {"theme_url":"https://www.islandvacationproperties.com/wp-content/themes/rtapi"}; 113//# sourceURL=rtc-acf-fixer-js-extra 114</script>
vendor: 1 bytes, line 114
114
115<script id="rtc-acf-fixer-js" src="https://www.islandvacationproperties.com/wp-content/themes/rtapi/js/rtc-acf-fixer.js?ver=7.1.3"></script>
vendor: 1 bytes, line 115
115
116<script id="custom-js" src="https://www.islandvacationproperties.com/wp-content/themes/rtapi/js/submenu.js?ver=1.0.0"></script>
vendor: 1 bytes, line 116
116
117<script id="vue-js" src="https://www.islandvacationproperties.com/wp-content/themes/rtapi/js/vue.global.prod.js?ver=3.5.41"></script>
vendor: 1 bytes, line 117
117
118<script id="vueuse-shared-js" src="https://www.islandvacationproperties.com/wp-content/themes/rtapi/js/vueuse-shared.iife.js?ver=14.4.0"></script>
vendor: 1 bytes, line 118
118
119<script id="vueuse-core-js" src="https://www.islandvacationproperties.com/wp-content/themes/rtapi/js/vueuse-core.iife.js?ver=14.4.0"></script>
vendor: 1 bytes, line 119
119
120<script id="axios-js" src="https://www.islandvacationproperties.com/wp-content/themes/rtapi/js/axios.min.js?ver=1.19.0"></script>
vendor: 1 bytes, line 120
120
121<script id="gform_json-js" defer='defer' src="https://www.islandvacationproperties.com/wp-content/plugins/gravityforms/js/jquery.json.min.js?ver=3.1.2"></script>
vendor: 1 bytes, line 121
121
122<script id="gform_gravityforms-js-extra"> 123var gf_global = {"gf_currency_config":{"name":"U.S. Dollar","symbol_left":"$","symbol_right":"","symbol_padding":"","thousand_separator":",","decimal_separator":".","decimals":2,"code":"USD"},"base_url":"https://www.islandvacationproperties.com/wp-content/plugins/gravityforms","number_formats":[],"version_hash":"19dbec403806d76761dede907ba49b18","countries":{"AF":"Afghanistan","AX":"\u00c5land Islands","AL":"Albania","DZ":"Algeria","AS":"American Samoa","AD":"Andorra","AO":"Angola","AI":"Anguilla","AQ":"Antarctica","AG":"Antigua and Barbuda","AR":"Argentina","AM":"Armenia","AW":"Aruba","AU":"Australia","AT":"Austria","AZ":"Azerbaijan","BS":"Bahamas","BH":"Bahrain","BD":"Bangladesh","BB":"Barbados","BY":"Belarus","BE":"Belgium","BZ":"Belize","BJ":"Benin","BM":"Bermuda","BT":"Bhutan","BO":"Bolivia","BQ":"Bonaire, Sint Eustatius and Saba","BA":"Bosnia and Herzegovina","BW":"Botswana","BV":"Bouvet Island","BR":"Brazil","IO":"British Indian Ocean Territory","BN":"Brunei Darussalam","BG":"Bulgaria","BF":"Burkina Faso","BI":"Burundi","CV":"Cabo Verde","KH":"Cambodia","CM":"Cameroon","CA":"Canada","KY":"Cayman Islands","CF":"Central African Republic","TD":"Chad","CL":"Chile","CN":"China","CX":"Christmas Island","CC":"Cocos Islands","CO":"Colombia","KM":"Comoros","CD":"Congo, Democratic Republic of the","CG":"Congo","CK":"Cook Islands","CR":"Costa Rica","CI":"C\u00f4te d'Ivoire","HR":"Croatia","CU":"Cuba","CW":"Cura\u00e7ao","CY":"Cyprus","CZ":"Czechia","DK":"Denmark","DJ":"Djibouti","DM":"Dominica","DO":"Dominican Republic","EC":"Ecuador","EG":"Egypt","SV":"El Salvador","GQ":"Equatorial Guinea","ER":"Eritrea","EE":"Estonia","SZ":"Eswatini","ET":"Ethiopia","FK":"Falkland Islands","FO":"Faroe Islands","FJ":"Fiji","FI":"Finland","FR":"France","GF":"French Guiana","PF":"French Polynesia","TF":"French Southern Territories","GA":"Gabon","GM":"Gambia","GE":"Georgia","DE":"Germany","GH":"Ghana","GI":"Gibraltar","GR":"Greece","GL":"Greenland","GD":"Grenada","GP":"Guadeloupe","GU":"Guam","GT":"Guatemala","GG":"Guernsey","GN":"Guinea","GW":"Guinea-Bissau","GY":"Guyana","HT":"Haiti","HM":"Heard Island and McDonald Islands","VA":"Holy See","HN":"Honduras","HK":"Hong Kong","HU":"Hungary","IS":"Iceland","IN":"India","ID":"Indonesia","IR":"Iran","IQ":"Iraq","IE":"Ireland","IM":"Isle of Man","IL":"Israel","IT":"Italy","JM":"Jamaica","JP":"Japan","JE":"Jersey","JO":"Jordan","KZ":"Kazakhstan","KE":"Kenya","KI":"Kiribati","KP":"Korea, Democratic People's Republic of","KR":"Korea, Republic of","KW":"Kuwait","KG":"Kyrgyzstan","LA":"Lao People's Democratic Republic","LV":"Latvia","LB":"Lebanon","LS":"Lesotho","LR":"Liberia","LY":"Libya","LI":"Liechtenstein","LT":"Lithuania","LU":"Luxembourg","MO":"Macao","MG":"Madagascar","MW":"Malawi","MY":"Malaysia","MV":"Maldives","ML":"Mali","MT":"Malta","MH":"Marshall Islands","MQ":"Martinique","MR":"Mauritania","MU":"Mauritius","YT":"Mayotte","MX":"Mexico","FM":"Micronesia","MD":"Moldova","MC":"Monaco","MN":"Mongolia","ME":"Montenegro","MS":"Montserrat","MA":"Morocco","MZ":"Mozambique","MM":"Myanmar","NA":"Namibia","NR":"Nauru","NP":"Nepal","NL":"Netherlands","NC":"New Caledonia","NZ":"New Zealand","NI":"Nicaragua","NE":"Niger","NG":"Nigeria","NU":"Niue","NF":"Norfolk Island","MK":"North Macedonia","MP":"Northern Mariana Islands","NO":"Norway","OM":"Oman","PK":"Pakistan","PW":"Palau","PS":"Palestine, State of","PA":"Panama","PG":"Papua New Guinea","PY":"Paraguay","PE":"Peru","PH":"Philippines","PN":"Pitcairn","PL":"Poland","PT":"Portugal","PR":"Puerto Rico","QA":"Qatar","RE":"R\u00e9union","RO":"Romania","RU":"Russian Federation","RW":"Rwanda","BL":"Saint Barth\u00e9lemy","SH":"Saint Helena, Ascension and Tristan da Cunha","KN":"Saint Kitts and Nevis","LC":"Saint Lucia","MF":"Saint Martin","PM":"Saint Pierre and Miquelon","VC":"Saint Vincent and the Grenadines","WS":"Samoa","SM":"San Marino","ST":"Sao Tome and Principe","SA":"Saudi Arabia","SN":"Senegal","RS":"Serbia","SC":"Seychelles","SL":"Sierra Leone","SG":"Singapore","SX":"Sint Maarten","SK":"Slovakia","SI":"Slovenia","SB":"Solomon Islands","SO":"Somalia","ZA":"South Africa","GS":"South Georgia and the South Sandwich Islands","SS":"South Sudan","ES":"Spain","LK":"Sri Lanka","SD":"Sudan","SR":"Suriname","SJ":"Svalbard and Jan Mayen","SE":"Sweden","CH":"Switzerland","SY":"Syria Arab Republic","TW":"Taiwan","TJ":"Tajikistan","TZ":"Tanzania, the United Republic of","TH":"Thailand","TL":"Timor-Leste","TG":"Togo","TK":"Tokelau","TO":"Tonga","TT":"Trinidad and Tobago","TN":"Tunisia","TR":"T\u00fcrkiye","TM":"Turkmenistan","TC":"Turks and Caicos Islands","TV":"Tuvalu","UG":"Uganda","UA":"Ukraine","AE":"United Arab Emirates","GB":"United Kingdom","US":"United States","UY":"Uruguay","UM":"US Minor Outlying Islands","UZ":"Uzbekistan","VU":"Vanuatu","VE":"Venezuela","VN":"Viet Nam","VG":"Virgin Islands, British","VI":"Virgin Islands, U.S.","WF":"Wallis and Futuna","EH":"Western Sahara","YE":"Yemen","ZM":"Zambia","ZW":"Zimbabwe"},"strings":{"newRowAdded":"New row added.","rowRemoved":"Row removed","formSaved":"The form has been saved. The content contains the link to return and complete the form."}}; 124var gf_global = {"gf_currency_config":{"name":"U.S. Dollar","symbol_left":"$","symbol_right":"","symbol_padding":"","thous
124and_separator":",","decimal_separator":".","decimals":2,"code":"USD"},"base_url":"https://www.islandvacationproperties.com/wp-content/plugins/gravityforms","number_formats":[],"version_hash":"19dbec403806d76761dede907ba49b18","countries":{"AF":"Afghanistan","AX":"\u00c5land Islands","AL":"Albania","DZ":"Algeria","AS":"American Samoa","AD":"Andorra","AO":"Angola","AI":"Anguilla","AQ":"Antarctica","AG":"Antigua and Barbuda","AR":"Argentina","AM":"Armenia","AW":"Aruba","AU":"Australia","AT":"Austria","AZ":"Azerbaijan","BS":"Bahamas","BH":"Bahrain","BD":"Bangladesh","BB":"Barbados","BY":"Belarus","BE":"Belgium","BZ":"Belize","BJ":"Benin","BM":"Bermuda","BT":"Bhutan","BO":"Bolivia","BQ":"Bonaire, Sint Eustatius and Saba","BA":"Bosnia and Herzegovina","BW":"Botswana","BV":"Bouvet Island","BR":"Brazil","IO":"British Indian Ocean Territory","BN":"Brunei Darussalam","BG":"Bulgaria","BF":"Burkina Faso","BI":"Burundi","CV":"Cabo Verde","KH":"Cambodia","CM":"Cameroon","CA":"Canada","KY":"Cayman Islands","CF":"Central African Republic","TD":"Chad","CL":"Chile","CN":"China","CX":"Christmas Island","CC":"Cocos Islands","CO":"Colombia","KM":"Comoros","CD":"Congo, Democratic Republic of the","CG":"Congo","CK":"Cook Islands","CR":"Costa Rica","CI":"C\u00f4te d'Ivoire","HR":"Croatia","CU":"Cuba","CW":"Cura\u00e7ao","CY":"Cyprus","CZ":"Czechia","DK":"Denmark","DJ":"Djibouti","DM":"Dominica","DO":"Dominican Republic","EC":"Ecuador","EG":"Egypt","SV":"El Salvador","GQ":"Equatorial Guinea","ER":"Eritrea","EE":"Estonia","SZ":"Eswatini","ET":"Ethiopia","FK":"Falkland Islands","FO":"Faroe Islands","FJ":"Fiji","FI":"Finland","FR":"France","GF":"French Guiana","PF":"French Polynesia","TF":"French Southern Territories","GA":"Gabon","GM":"Gambia","GE":"Georgia","DE":"Germany","GH":"Ghana","GI":"Gibraltar","GR":"Greece","GL":"Greenland","GD":"Grenada","GP":"Guadeloupe","GU":"Guam","GT":"Guatemala","GG":"Guernsey","GN":"Guinea","GW":"Guinea-Bissau","GY":"Guyana","HT":"Haiti","HM":"Heard Island and McDonald Islands","VA":"Holy See","HN":"Honduras","HK":"Hong Kong","HU":"Hungary","IS":"Iceland","IN":"India","ID":"Indonesia","IR":"Iran","IQ":"Iraq","IE":"Ireland","IM":"Isle of Man","IL":"Israel","IT":"Italy","JM":"Jamaica","JP":"Japan","JE":"Jersey","JO":"Jordan","KZ":"Kazakhstan","KE":"Kenya","KI":"Kiribati","KP":"Korea, Democratic People's Republic of","KR":"Korea, Republic of","KW":"Kuwait","KG":"Kyrgyzstan","LA":"Lao People's Democratic Republic","LV":"Latvia","LB":"Lebanon","LS":"Lesotho","LR":"Liberia","LY":"Libya","LI":"Liechtenstein","LT":"Lithuania","LU":"Luxembourg","MO":"Macao","MG":"Madagascar","MW":"Malawi","MY":"Malaysia","MV":"Maldives","ML":"Mali","MT":"Malta","MH":"Marshall Islands","MQ":"Martinique","MR":"Mauritania","MU":"Mauritius","YT":"Mayotte","MX":"Mexico","FM":"Micronesia","MD":"Moldova","MC":"Monaco","MN":"Mongolia","ME":"Montenegro","MS":"Montserrat","MA":"Morocco","MZ":"Mozambique","MM":"Myanmar","NA":"Namibia","NR":"Nauru","NP":"Nepal","NL":"Netherlands","NC":"New Caledonia","NZ":"New Zealand","NI":"Nicaragua","NE":"Niger","NG":"Nigeria","NU":"Niue","NF":"Norfolk Island","MK":"North Macedonia","MP":"Northern Mariana Islands","NO":"Norway","OM":"Oman","PK":"Pakistan","PW":"Palau","PS":"Palestine, State of","PA":"Panama","PG":"Papua New Guinea","PY":"Paraguay","PE":"Peru","PH":"Philippines","PN":"Pitcairn","PL":"Poland","PT":"Portugal","PR":"Puerto Rico","QA":"Qatar","RE":"R\u00e9union","RO":"Romania","RU":"Russian Federation","RW":"Rwanda","BL":"Saint Barth\u00e9lemy","SH":"Saint Helena, Ascension and Tristan da Cunha","KN":"Saint Kitts and Nevis","LC":"Saint Lucia","MF":"Saint Martin","PM":"Saint Pierre and Miquelon","VC":"Saint Vincent and the Grenadines","WS":"Samoa","SM":"San Marino","ST":"Sao Tome and Principe","SA":"Saudi Arabia","SN":"Senegal","RS":"Serbia","SC":"Seychelles","SL":"Sierra Leone","SG":"Singapore","SX":"Sint Maarten","SK":"Slovakia","SI":"Slovenia","SB":"Solomon Islands","SO":"Somalia","ZA":"South Africa","GS":"South Georgia and the South Sandwich Islands","SS":"South Sudan","ES":"Spain","LK":"Sri Lanka","SD":"Sudan","SR":"Suriname","SJ":"Svalbard and Jan Mayen","SE":"Sweden","CH":"Switzerland","SY":"Syria Arab Republic","TW":"Taiwan","TJ":"Tajikistan","TZ":"Tanzania, the United Republic of","TH":"Thailand","TL":"Timor-Leste","TG":"Togo","TK":"Tokelau","TO":"Tonga","TT":"Trinidad and Tobago","TN":"Tunisia","TR":"T\u00fcrkiye","TM":"Turkmenistan","TC":"Turks and Caicos Islands","TV":"Tuvalu","UG":"Uganda","UA":"Ukraine","AE":"United Arab Emirates","GB":"United Kingdom","US":"United States","UY":"Uruguay","UM":"US Minor Outlying Islands","UZ":"Uzbekistan","VU":"Vanuatu","VE":"Venezuela","VN":"Viet Nam","VG":"Virgin Islands, British","VI":"Virgin Islands, U.S.","WF":"Wallis and Futuna","EH":"Western Sahara","YE":"Yemen","ZM":"Zambia","ZW":"Zimbabwe"},"strings":{"newRowAdded":"New row added.","rowRemoved":"Row removed","formSaved":"The form has been saved. The content contains the link to return and complete the form."}}; 125var gform_i18n = {"datepicker":{"wdOffset":0,"helpTextShort":"Press F1 for help","helpText":"Press the arrow keys to navigate by day, PageUp and PageDown to navigate by month, Alt+PageUp and Alt+PageDown to navigate by year, or Escape to cancel.","openOnFocusHelpText":"Press Down arrow to browse the calendar, or Escape to close.","tooltipTxt":"Press Escape to cancel","disabledTxt":"Disabled","markedTxt":"Selected","prevTxt":"Previous","nextTxt":"Next","monthTxt":"Month","yearTxt":"Year","months":["January","February","March","April","May","June","July","August","September","October","November","December"],"days":[{"s":"S","l":"Sunday"},{"s":"M","l":"Monday"},{"s":"T","l":"Tuesday"},{"s":"W","l":"Wednesday"},{"s":"T","l":"Thursday"},{"s":"F","l":"Friday"},{"s":"S","l":"Saturday"}]}}; 126var gf_legacy_multi = {"10":"1","4":"1"};
127var gform_gravityforms = {"strings":{"invalid_file_extension":"This type of file is not allowed. Must be one of the following:","file_uploaded":"File uploaded","delete_file":"Delete this file","in_progress":"in progress","file_exceeds_limit":"File exceeds size limit","illegal_extension":"This type of file is not allowed.","max_reached":"Maximum number of files reached","unknown_error":"There was a problem while saving the file on the server","currently_uploading":"Please wait for the uploading to complete","cancel":"Cancel","cancel_upload":"Cancel this upload","cancelled":"Cancelled","error":"Error","message":"Message"},"vars":{"images_url":"https://www.islandvacationproperties.com/wp-content/plugins/gravityforms/images"}}; 128//# sourceURL=gform_gravityforms-js-extra 129</script>
vendor: 1 bytes, line 129
129
130<script id="gform_gravityforms-js" defer='defer' src="https://www.islandvacationproperties.com/wp-content/plugins/gravityforms/js/gravityforms.min.js?ver=3.1.2"></script>
vendor: 1 bytes, line 130
130
131<script id="gform_gravityforms_utils-js" defer='defer' src="https://www.islandvacationproperties.com/wp-content/plugins/gravityforms/assets/js/dist/utils.min.js?ver=69a9db57304a9f86c3d1a0bea5fd2cf9"></script>
vendor: 1 bytes, line 131
131
132<script id="gform_conditional_logic-js-extra"> 133var gf_legacy = {"is_legacy":"1"}; 134//# sourceURL=gform_conditional_logic-js-extra 135</script>
vendor: 1 bytes, line 135
135
136<script id="gform_conditional_logic-js" defer='defer' src="https://www.islandvacationproperties.com/wp-content/plugins/gravityforms/js/conditional_logic.min.js?ver=3.1.2"></script>
vendor: 150 bytes, lines 136-137
136 137<script id="gform_recaptcha-js" defer='defer' src="https://www.google.com/recaptcha/api.js?hl=en&&ver=7.1.3#038;render=explicit"></script>
138<link rel="https://api.w.org/" href="https://www.islandvacationproperties.com/wp-json/" /><link rel="alternate" title="JSON" type="application/json" href="https://www.islandvacationproperties.com/wp-json/wp/v2/pages/114" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://www.islandvacationproperties.com/xmlrpc.php?rsd" /> 139<meta name="generator" content="WordPress 7.1.3" /> 140<link rel='shortlink' href='https://www.islandvacationproperties.com/?p=114' /> 141<link rel="icon" href="https://www.islandvacationproperties.com/wp-content/uploads/2026/08/favicon.jpg" sizes="32x32" /> 142<link rel="icon" href="https://www.islandvacationproperties.com/wp-content/uploads/2026/08/favicon.jpg" sizes="192x192" /> 143<link rel="apple-touch-icon" href="https://www.islandvacationproperties.com/wp-content/uploads/2026/08/favicon.jpg" /> 144<meta name="msapplication-TileImage" content="https://www.islandvacationproperties.com/wp-content/uploads/2026/08/favicon.jpg" /> 145 <!-- Google Tag Manager -->
146<script>
vendor: 359 bytes, lines 146-150
146(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 147 new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 148 j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 149 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 150 })(window,document,'script','dataLayer','
150GTM-KDN4RC6
vendor: 3 bytes, line 150
150');
150</script>
150 151<!-- End Google Tag Manager --> 152 <link href="https://fonts.googleapis.com/css2?family=Marcellus:wght@400&family=Cabin:wght@400;500;600;700&display=fallback" rel="stylesheet"> 153<style> 154 :root { 155 --primary: #f4dd56; 156 --primary-text: #333333; 157 --secondary: #f4dd56; 158 --secondary-text: #00437c; 159 --above-footer: #737578; 160 --footer: #000000; 161 --menu: #03437c; 162 --menu-hover: #21619a; 163 --qs-color: #00437c; 164 --heading-color: #00437c; 165 --splash-medium: rgb(204,227,227); 166 --splash-extra-light: rgb(247,250,250); 167 --splash-light: rgb(238,246,246); 168 --splash-dark: rgb(51,141,145); 169 --splash-extra-dark: rgb(-43,89,94); 170 --tone-extra-light: color-mix(in srgb, rgb(247,250,250) 55%, #f4f4f4); 171 --tone-light: color-mix(in srgb, rgb(247,250,250) 75%, #eee); 172 --heading-font-family: "Marcellus", sans-serif; 173 --body-font-family: "Cabin", sans-serif; 174 --heading-weight: 400; 175 --subheading-weight: 400; 176 --body-weight: 400; 177 --h-scale: 1.35rem; 178 --h-vw: 1.1vw; 179 --b-scale: 1.25rem; 180 --fluid-heading: calc(var(--h-scale) + var(--h-vw)); 181 --fluid-body: calc(var(--b-scale)); 182 } 183 head, body { 184 font-family: var(--body-font-family) !important; 185 font-size: var(--fluid-body) !important; 186 font-weight: var(--body-weight) !important; 187 } 188 h1, h2.page-title, .page-title, .page-title h1, .page-title h2, .page-title h3 { 189 font-family: var(--heading-font-family) !important; 190 font-weight: var(--heading-weight) !important; 191 } 192 h1, .page-title h1, .page-title h2, .cta-wrapper h2.page-title { 193 font-size: var(--fluid-heading) !important; 194 } 195 h2, h3 { 196 font-weight: var(--subheading-weight) !important; 197 } 198 </style> <style id="core-block-supports-inline-css"> 199.wp-container-core-columns-is-layout-7387b849{flex-wrap:nowrap;} 200/*# sourceURL=core-block-supports-inline-css */ 201</style> 202 203</head> 204<body class="wp-singular page-template-default page page-id-114 wp-theme-rtapi"> 205 <!-- Google Tag Manager (noscript) -->
vendor: 68 bytes, lines 205-206
205 206<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
206GTM-KDN4RC6
vendor: 83 bytes, line 206
206" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
207<!-- End Google Tag Manager (noscript) --> 208 <div id="content-wrap" class="content-wrap"> 209 <div class="site-wrap"> 210 <div class="header-main-wrapper classic"> 211 <a role="link" class="sr-only" href="#post-114">Skip to main content</a> 212 <header id="header" role="banner" class="classic" aria-label="banner"> 213 <div class="header-wrap"> 214 <div class="header contained"> 215 <div class="logo"> 216 <a id="rt-logo-anchor" href="https://www.islandvacationproperties.com/"> 217 <img width="367" height="200" src="https://www.islandvacationproperties.com/wp-content/uploads/2026/08/IVPBlue200.png" class="attachment-full size-full" alt="Island Vacation Properties Logo" id="rtlogo" style="max-width:250px;" decoding="async" fetchpriority="high" /> </a> 218 </div> 219 <button id="toggle" role='button' aria-label="Mobile Navigation Trigger" class="open-button toggle-spot white-text"> 220 <div class="toggle-spot"> 221 <span></span> 222 </div> 223 </button> 224 <div class="headerright"> 225 <div class="headerright-top"> 226 <div style="position:relative; cursor: pointer;" id="my-rentals-header"> 227 <div v-if="displayMyRentalsHeader"> 228 <a href="https://www.islandvacationproperties.com/vacation-rentals/results/?myrentals" title="View Favorite Rentals" style="gap: 2px;" aria-label="View favorite Rentals"> 229 <i class="rt-google-icon heart" :class="{'filled-symbol': favoritesCount }" aria-hidden="true"></i> 230 <span v-if="favoritesCount" class="filter-ticker">{{favoritesCount}}</span> 231 <span class="nomobile">My Rentals</span> 232 </a> 233 </div> 234</div> 235
236<script> 237 const { useStorage } = VueUse; 238 const sanitizeRtFavorited = function (raw) { 239 const clean = { 240 favorites: [], 241 recently_viewed: [], 242 date_history: [], 243 check_history: [], 244 select_history: [], 245 sort_order: { 246 field: "", 247 direction: "", 248 }, 249 version: 1, 250 }; 251 252 // Check data types and clean unapproved types 253 const isValidId = (v) => typeof v === 'string' && v.length > 0; 254 255 if (Array.isArray(raw.favorites)) { 256 clean.favorites = [...new Set(raw.favorites.filter(isValidId))].slice(0, 100); 257 } 258 if (Array.isArray(raw.recently_viewed)) { 259 clean.recently_viewed = [...new Set(raw.recently_viewed.filter(isValidId))].slice(0, 10); 260 } 261 262 if (Array.isArray(raw.date_history)) { 263 clean.date_history = raw.date_history 264 .filter(d => d && !isNaN(Date.parse(d.arrive)) && !isNaN(Date.parse(d.depart)) && new Date(d.depart) > new Date(d.arrive)) 265 .map(d => ({ arrive: d.arrive, depart: d.depart, latest_search: !!d.latest_search })) 266 .slice(0, 3); 267 } 268 if (Array.isArray(raw.check_history)) { 269 clean.check_history = raw.check_history 270 .filter(c => c && typeof c.label === 'string' && c.latest_search === true) 271 .map(c => ({ label: c.label, latest_search: true })); 272 } 273 if (Array.isArray(raw.select_history)) { 274 clean.select_history = raw.select_history 275 .filter(s => s && typeof s.label === 'string' && typeof s.value === 'string' && s.latest_search === true) 276 .map(s => ({ label: s.label, value: s.value, latest_search: true })); 277 } 278 279 // Preserve the sort_order if it exists in the raw local storage 280 if (raw.sort_order && typeof raw.sort_order === 'object') { 281 const field = typeof raw.sort_order.field === 'string' ? raw.sort_order.field : ""; 282 const direction = typeof raw.sort_order.direction === 'string' ? raw.sort_order.direction : ""; 283 const validDirections = ['asc', 'desc']; 284 285 if (field && validDirections.includes(direction)) { 286 clean.sort_order = {field, direction}; 287 } 288 // else: leave clean.sort_order at its default {field: "", direction: ""} 289 } 290 291 return clean; 292 } 293 294 const rtFavorited = useStorage('rt-favorited', { 295 favorites: [], 296 recently_viewed: [], 297 date_history: [], 298 check_history: [], 299 select_history: [], 300 sort_order: { 301 field: "", 302 direction: "", 303 }, 304 version: 1, 305 }); 306 307 rtFavorited.value = sanitizeRtFavorited(rtFavorited.value); 308 309 310 const myRentalsHeaderApp = Vue.createApp({ 311 // hand the app the global ref 312 setup() { 313 return { unitsFavorite: rtFavorited }; 314 }, 315 data() { 316 return { 317 displayMyRentalsHeader: true, 318 localStorageClean: false, 319 } 320 }, 321 computed: { 322 favoritesCount: function () { 323 if (this.unitsFavorite.favorites && this.unitsFavorite.favorites.length > 0) { 324 return this.unitsFavorite.favorites.length; 325 } else { 326 return 0; 327 } 328 }, 329 }, 330 methods: { 331 cleanseStorage: function() { 332 var appRoot = this; 333 334 axios.post('https://www.islandvacationproperties.com/vacation-rentals' + '/router/', { 335 call: 'cleanseFavorites', 336 store: appRoot.unitsFavorite, 337 }) 338 .then(function (response) { 339 appRoot.localStorageClean = true; 340 341 const validFavorites = response.data.favorites || []; 342 const validRecent = response.data.recently_viewed || []; 343 344 appRoot.unitsFavorite.favorites = appRoot.unitsFavorite.favorites.filter(id => validFavorites.includes(id)); 345 appRoot.unitsFavorite.recently_viewed = appRoot.unitsFavorite.recently_viewed.filter(id => validRecent.includes(id)); 346 347 appRoot.unitsFavorite.check_history = response.data.check_history || appRoot.unitsFavorite.check_history; 348 appRoot.unitsFavorite.select_history = response.data.select_history || appRoot.unitsFavorite.select_history; 349 }) 350 .catch(function (error) { 351 console.log(error); 352 }); 353 }, 354 }, 355 mounted: function() { 356 const hasData = this.unitsFavorite.favorites.length 357 || this.unitsFavorite.recently_viewed.length 358 || this.unitsFavorite.check_history.length 359 || this.unitsFavorite.select_history.length; 360 361 if (!this.localStorageClean && hasData) { 362 this.cleanseStorage(); 363 } 364 }, 365 }); 366 367 myRentalsHeaderApp.mount('#my-rentals-header'); 368</script>
368 <a class="headerright-top-tel" href="tel:(941) 7781000"> 369 <i class="rt-google-icon phone" aria-hidden="true"></i> 370 <span>(941) 778-1000 </span> 371 </a> 372 </div> 373 <nav class="navclass nav classic"> 374 <ul id="menu-main-nav" class="menu clearfix hide-nav leftnav white-text"><li id="menu-item-110" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-110"><a href="https://www.islandvacationproperties.com/vacation-rentals/results/?viewall" aria-haspopup="true" aria-expanded="false">Vacation Rentals</a><ul class="sub-menu"> <li id="menu-item-5865" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-5865"><a href="https://www.islandvacationproperties.com/vacation-rentals/results/?viewall">View All Rentals</a></li> <li id="menu-item-162" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-162"><a aria-haspopup="true" aria-expanded="false">Rentals By Amenity</a> <ul class="sub-menu"> <li id="menu-item-691" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-691"><a href="https://www.islandvacationproperties.com/beachfront-rentals/">Beachfront</a></li> <li id="menu-item-163" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-163"><a href="https://www.islandvacationproperties.com/pool-properties/">Rentals With Pool</a></li> <li id="menu-item-189" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-189"><a href="https://www.islandvacationproperties.com/pet-friendly-rentals/">Pet Friendly</a></li> </ul></li> <li id="menu-item-183" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-183"><a aria-haspopup="true" aria-expanded="false">Rentals By Community</a> <ul class="sub-menu"> <li id="menu-item-186" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-186"><a href="https://www.islandvacationproperties.com/anna-maria-rentals/">City of Anna Maria</a></li> <li id="menu-item-188" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-188"><a href="https://www.islandvacationproperties.com/holmes-beach-rentals/">Holmes Beach</a></li> <li id="menu-item-187" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-187"><a href="https://www.islandvacationproperties.com/bradenton-beach-rentals/">Bradenton Beach</a></li> <li id="menu-item-184" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-184"><a href="https://www.islandvacationproperties.com/main-land-rentals/">Mainland</a></li> <li id="menu-item-1179" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1179"><a href="https://www.islandvacationproperties.com/one-particular-harbour-rentals/">One Particular Harbour</a></li> <li id="menu-item-295" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-295"><a href="https://www.islandvacationproperties.com/rentals-by-area/">All Rentals By Area</a></li> </ul></li> <li id="menu-item-1672" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-1672"><a aria-haspopup="true" aria-expanded="false">Rentals By Type</a> <ul class="sub-menu"> <li id="menu-item-1458" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1458"><a href="https://www.islandvacationproperties.com/house-rentals/">House Rentals</a></li> <li id="menu-item-1673" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1673"><a href="https://www.islandvacationproperties.com/anna-maria-island-condo-rentals/">Condo Rentals</a></li> <li id="menu-item-164" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-164"><a href="https://www.islandvacationproperties.com/long-weekend-rentals/">Long Weekend Rentals</a></li> <li id="menu-item-2147" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2147"><a href="https://www.islandvacationproperties.com/anna-maria-island-monthly-rentals/">Monthly Rentals</a></li> <li id="menu-item-4944" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-4944"><a href="https://www.islandvacationproperties.com/duplex-and-fourplex-rentals/">Multi Unit Properties</a></li> </ul></li> <li id="menu-item-873" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-873"><a aria-haspopup="true" aria-expanded="false">Rentals by Bedroom</a> <ul class="sub-menu"> <li id="menu-item-874" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-874"><a href="https://www.islandvacationproperties.com/1-bedroom-rentals/">1 Bedroom</a></li> <li id="menu-item-951" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-951"><a href="https://www.islandvacationproperties.com/2-bedroom-rentals/">2 Bedroom</a></li> <li id="menu-item-1009" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1009"><a href="https://www.islandvacationproperties.com/three-bedroom-rentals/">3 Bedroom</a></li> <li id="menu-item-1455" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1455"><a href="https://www.islandvacationproperties.com/four-bedroom-rentals/">4 Bedroom</a></li> <li id="menu-item-1454" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1454"><a href="https://www.islandvacationproperties.com/five-bedroom-rentals/">5+ Bedroom</a></li> </ul></li> <li id="menu-item-240" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-240"><a href="https://www.islandvacationproperties.com/featured-properties/">Featured AMI Vacation Rentals</a></li> <li id="menu-item-4125" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-4125"><a href="https://www.islandvacationproperties.com/specials/">Specials</a></li> <li id="menu-item-3654" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-3654"><a href="https://www.islandvacationproperties.com/travel-insurance-information/">Travel Insurance Information</a></li> <li id="menu-item-5751" class="menu-item menu-item-type-post_type menu-item-object-rtc menu-item-5751"><a href="https://www.islandvacationproperties.com/vacation-rentals/rentals-availability-calendar/">Availability Calendar</a></li></ul></li><li id="menu-item-111" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-111">
374<a href="https://islandvacationproperties.idxbroker.com/idx/featured" aria-haspopup="true" aria-expanded="false">Real Estate Sales</a><ul class="sub-menu"> <li id="menu-item-146" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-146"><a href="https://islandvacationproperties.idxbroker.com/idx/search/advanced">Search MLS</a></li> <li id="menu-item-147" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-147"><a href="https://islandvacationproperties.idxbroker.com/idx/featured">Our Featured Listings</a></li> <li id="menu-item-128" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-128"><a href="https://www.islandvacationproperties.com/anna-maria-island-real-estate-buyer-resources/">Home Buying Tips</a></li> <li id="menu-item-129" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-129"><a href="https://www.islandvacationproperties.com/anna-maria-island-real-estate-seller-resources/">Home Selling Tips</a></li> <li id="menu-item-148" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-148"><a href="https://islandvacationproperties.idxbroker.com/idx/mortgage">Mortgage Calculator</a></li> <li id="menu-item-227" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-227"><a href="https://www.islandvacationproperties.com/meet-our-sales-agents/">Meet Our Sales Agents</a></li></ul></li><li id="menu-item-195" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-195"><a href="https://www.islandvacationproperties.com/property-management/" aria-haspopup="true" aria-expanded="false">Property Management</a><ul class="sub-menu"> <li id="menu-item-106" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-106"><a href="https://www.islandvacationproperties.com/property-management/">List With IVP</a></li> <li id="menu-item-260" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-260"><a target="_blank" rel="noopener noreferrer" href="https://owner.escapia.com/dist/index.html#/login">Owner Log-In</a></li> <li id="menu-item-199" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-199"><a href="https://www.islandvacationproperties.com/contact-property-management/">Contact Property Management</a></li></ul></li><li id="menu-item-119" class="menu-item menu-item-type-custom menu-item-object-custom current-menu-ancestor current-menu-parent menu-item-has-children menu-item-119"><a href="https://www.islandvacationproperties.com/about-island-vacation-properties/" aria-haspopup="true" aria-expanded="false">About Us</a><ul class="sub-menu"> <li id="menu-item-5207" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-5207"><a href="https://www.islandvacationproperties.com/about-island-vacation-properties/">Our Story</a></li> <li id="menu-item-220" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-220"><a href="https://www.islandvacationproperties.com/meet-our-team/">Meet Our Rentals Team</a></li> <li id="menu-item-159" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-159"><a href="https://www.islandvacationproperties.com/frequently-asked-questions/">Frequently Asked Questions</a></li> <li id="menu-item-229" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-229"><a href="https://www.islandvacationproperties.com/driving-directions/">Driving Directions</a></li> <li id="menu-item-117" class="menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-114 current_page_item menu-item-117"><a href="https://www.islandvacationproperties.com/contact/" aria-current="page">Contact Us</a></li></ul></li><li id="menu-item-120" class="last-link menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-120"><a href="https://www.islandvacationproperties.com/island-blog/" aria-haspopup="true" aria-expanded="false">Explore AMI</a><ul class="sub-menu"> <li id="menu-item-107" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-107"><a href="https://www.islandvacationproperties.com/about-anna-maria-island/">Anna Maria Island History</a></li> <li id="menu-item-108" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-108"><a href="https://www.islandvacationproperties.com/anna-maria-island-information/">City of Anna Maria</a></li> <li id="menu-item-122" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-122"><a target="_blank" href="/wp-content/uploads/2019/12/trolley-map.pdf">Free Trolley Map</a></li> <li id="menu-item-4228" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-4228"><a href="https://www.islandvacationproperties.com/island-blog/">Our Blog</a></li></ul></li></ul> </nav> 375 </div> 376 </div> 377 </div> 378 </header> 379 <figure class="hero" role="complementary" aria-label="hero image"> 380 <img width="1920" height="500" src="https://www.islandvacationproperties.com/wp-content/uploads/2026/08/IVPsecondary.jpg" class="banner-image" alt="Island Vacation Properties" decoding="async" srcset="https://www.islandvacationproperties.com/wp-content/uploads/2026/08/IVPsecondary.jpg 1920w, https://www.islandvacationproperties.com/wp-content/uploads/2026/08/IVPsecondary-600x156.jpg 600w, https://www.islandvacationproperties.com/wp-content/uploads/2026/08/IVPsecondary-1200x313.jpg 1200w, https://www.islandvacationproperties.com/wp-content/uploads/2026/08/IVPsecondary-768x200.jpg 768w, https://www.islandvacationproperties.com/wp-content/uploads/2026/08/IVPsecondary-1536x400.jpg 1536w" sizes="(max-width: 1920px) 100v
380w, 1920px" /> </figure> 381 <div class="qswrap classic"> 382 <div class="qscenter"> 383 <div id="qsformroot"> 384 <form id="qsform" @keydown.enter.prevent @submit.prevent role="search" aria-label="Search for available properties using specific search criteria." title="search for vacation rentals"> 385 <datepick-inputs 386 v-on:update-dates="newDates" 387 ></datepick-inputs> 388 <div v-for="(select,index) in searchCriteria.selectBoxes" class="select-wrap" :key="'select-id-'+index"> 389 <div class="select-container"> 390 <label :for="'select-'+index" class="hidden-label">{{select.label}}</label> 391 <select :id="'select-'+index" v-model="select.selected"> 392 <option value="">{{select.label}}</option> 393 <option v-for="(option,index) in select.options" :value="option.value" :key="select.input+'-option'+index">{{option.name}}</option> 394 </select> 395 </div> 396 </div> 397 <button class="button" @click="performSearch" @keydown.enter="performSearch" key="performSearch" aria-label="Go to the search results for the selected criteria.">Search</button> 398 </form> 399 </div> 400 <div id="property-search-instance"> 401 <propertysearch></propertysearch> 402</div> 403 404<template id="rt-searchbox"> 405 <div v-click-outside="outsideClick" class="property-searchbox-wrap"> 406 <form aria-label="Search for specific properties by filtering as you type."> 407 <div class="input-wrap"> 408 <input :value="query" 409 @input="query = $event.target.value" 410 @focus="openDropdown()" 411 @click="openDropdown()" 412 @enter.prevent="toggleDropdown()" 413 placeholder="Jump to a Property" 414 autocomplete="off" 415 aria-label="If you would like to go to a specific property webpage, type in the first few characters of the property you want to search for, then tab down through a list of matching results and then select the appropriate property link." 416 > 417 <i role="presentation" class="rt-google-icon search"></i> 418 </div> 419 <transition-group v-if="active" name="fade" tag="ul" mode="out-in"> 420 <li v-for="(item, index) in computedList" 421 v-bind:key="item.option" 422 v-bind:data-index="index" 423 ><a role="link" :href="'https://www.islandvacationproperties.com/vacation-rentals/rental/' + item.propName + '/'" :aria-label="'Go to the webpage for ' + item.option">{{ item.option }}</a></li> 424 </transition-group> 425 </form> 426 </div> 427</template>
428<script> 429 const rtpropsearchbox = { 430 template: '#rt-searchbox', 431 props: { 432 }, 433 data: function() { 434 return { 435 active: false, 436 query: '', 437 hasFocus: false, 438 units: [{"unit_id":"2531-250437","prop_name":" The Point at Bermuda Bay Club","prop_number":"2531-250437"},{"unit_id":"2531-241210","prop_name":"1239 Edgewater Circle","prop_number":"2531-241210"},{"unit_id":"2531-207379","prop_name":"A Getaway Retreat A","prop_number":"2531-207379"},{"unit_id":"2531-207381","prop_name":"A Getaway Retreat B","prop_number":"2531-207381"},{"unit_id":"2531-207370","prop_name":"A Getaway Retreat Both Units","prop_number":"2531-207370"},{"unit_id":"2531-174509","prop_name":"A Wright Place","prop_number":"2531-174509"},{"unit_id":"2531-174510","prop_name":"Absolutely Perfect","prop_number":"2531-174510"},{"unit_id":"2531-271103","prop_name":"Anglers Bay at One Particular Harbour 392-103","prop_number":"2531-271103"},{"unit_id":"2531-174455","prop_name":"Anna Cabana Bungalow #1","prop_number":"2531-174455"},{"unit_id":"2531-174456","prop_name":"Anna Cabana Bungalow #2","prop_number":"2531-174456"},{"unit_id":"2531-174457","prop_name":"Anna Cabana Bungalow #3","prop_number":"2531-174457"},{"unit_id":"2531-174458","prop_name":"Anna Cabana Bungalow #4","prop_number":"2531-174458"},{"unit_id":"2531-174514","prop_name":"Anna Maria Beach Place, Unit 3","prop_number":"2531-174514"},{"unit_id":"2531-174516","prop_name":"Anna Maria Beach Place, Unit 5","prop_number":"2531-174516"},{"unit_id":"2531-174517","prop_name":"Anna Maria Beach Place, Unit 6","prop_number":"2531-174517"},{"unit_id":"2531-174519","prop_name":"Annas Cottage","prop_number":"2531-174519"},{"unit_id":"2531-248838","prop_name":"Avenue A Retreat","prop_number":"2531-248838"},{"unit_id":"2531-174522","prop_name":"Bay Watch 6a","prop_number":"2531-174522"},{"unit_id":"2531-256701","prop_name":"Bayview Condo B","prop_number":"2531-256701"},{"unit_id":"2531-234316","prop_name":"Bayview Inn #101","prop_number":"2531-234316"},{"unit_id":"2531-174526","prop_name":"Beach House Resort 10","prop_number":"2531-174526"},{"unit_id":"2531-174528","prop_name":"Beach House Resort 3","prop_number":"2531-174528"},{"unit_id":"2531-174533","prop_name":"Beach House Resort 9","prop_number":"2531-174533"},{"unit_id":"2531-174536","prop_name":"Beachside","prop_number":"2531-174536"},{"unit_id":"2531-274431","prop_name":"Beachview #5","prop_number":"2531-274431"},{"unit_id":"2531-174460","prop_name":"Bliss & Tonic Both","prop_number":"2531-174460"},{"unit_id":"2531-174461","prop_name":"Bliss & Tonic Down","prop_number":"2531-174461"},{"unit_id":"2531-174462","prop_name":"Bliss & Tonic Up","prop_number":"2531-174462"},{"unit_id":"2531-174468","prop_name":"Bollinger Duplex 2 Units ","prop_number":"2531-174468"},{"unit_id":"2531-174469","prop_name":"Bollinger Duplex, A","prop_number":"2531-174469"},{"unit_id":"2531-174470","prop_name":"Bollinger Duplex, B","prop_number":"2531-174470"},{"unit_id":"2531-174540","prop_name":"Bradenton Beach Club D","prop_number":"2531-174540"},{"unit_id":"2531-174541","prop_name":"Breakers 1","prop_number":"2531-174541"},{"unit_id":"2531-174542","prop_name":"Breakers 3","prop_number":"2531-174542"},{"unit_id":"2531-174543","prop_name":"Breakers 4 At Sandcastle #1","prop_number":"2531-174543"},{"unit_id":"2531-174545","prop_name":"Bridgeport Condo 101","prop_number":"2531-174545"},{"unit_id":"2531-174445","prop_name":"Bridgeport Condo 204","prop_number":"2531-174445"},{"unit_id":"2531-174446","prop_name":"Bridgeport Condo 209","prop_number":"2531-174446"},{"unit_id":"2531-174546","prop_name":"Bridgeport Condo 211","prop_number":"2531-174546"},{"unit_id":"2531-284000","prop_name":"Coastal Cottage","prop_number":"2531-284000"},{"unit_id":"2531-174549","prop_name":"Coco Cabana","prop_number":"2531-174549"},{"unit_id":"2531-174550","prop_name":"Coquina Beach Club 101","prop_number":"2531-174550"},{"unit_id":"2531-260960","prop_name":"Coquina Beach Club 102","prop_number":"2531-260960"},{"unit_id":"2531-174552","prop_name":"Coquina Moorings 102","prop_number":"2531-174552"},{"unit_id":"2531-174554","prop_name":"Coquina Moorings 202","prop_number":"2531-174554"},{"unit_id":"2531-260136","prop_name":"Coquina Moorings 203","prop_number":"2531-260136"},{"unit_id":"2531-174555","prop_name":"Coquina Moorings 206","prop_number":"2531-174555"},{"unit_id":"2531-274179","prop_name":"Cove at Sandy Pointe 112","prop_number":"2531-274179"},{"unit_id":"2531-174560","prop_name":"Cove At Sandy Pointe 208","prop_number":"2531-174560"},{"unit_id":"2531-174475","prop_name":"Dolphin Dance Both","prop_number":"2531-174475"},{"unit_id":"2531-174476","prop_name":"Dolphin Dance, North Side","prop_number":"2531-174476"},{"unit_id":"2531-174477","prop_name":"Dolphin Dance, South Side","prop_number":"2531-174477"},{"unit_id":"2531-254395","prop_name":"Escape to Serenity 2 Units ","prop_number":"2531-254395"},{"unit_id":"2531-254393","prop_name":"Escape to Serenity A","prop_number":"2531-254393"},{"unit_id":"2531-254394","prop_name":"Escape to Serenity B","prop_number":"2531-254394"},{"unit_id":"2531-174564","prop_name":"Fountainhead Condo 3","prop_number":"2531-174564"},{"unit_id":"2531-174565","prop_name":"Fountainhead Condo 4","prop_number":"2531-174565"},{"unit_id":"2531-174478","prop_name":"Four Beach Lovers 1","prop_number":"2531-174478"},{"unit_id":"2531-174479","prop_name":"Four Beach Lovers 2","prop_number":"2531-174479"},{"unit_id":"2531-174480","prop_name":"Four Beach Lovers 3","prop_number":"2531-174480"},{"unit_id":"2531-174481","prop_name":"Four Beach Lovers 4","prop_number":"2531-174481"},{"unit_id":"2531-174482","prop_name":"Four Beach Lovers 4 Units ","prop_number":"2531-174482"},{"unit_id":"2531-174568","prop_name":"Franks Beach House","prop_number":"2531-174568"},{"unit_id":"2531-174483","prop_name":"Good Times Both Units","prop_number":"2531-174483"},{"unit_id":"2531-174484","prop_name":"Good Times Downstairs","prop_number":"2531-174484"},{"unit_id":"2531-174485","prop_name":"Good Times Upstairs A","prop_number":"2531-174485"},{"unit_id":"2531-174570","prop_name":"Gulf Sands 201","prop_number":"2531-174570"},{"unit_id":"2531-174575","prop_name":"Island Daze","prop_number":"2531-174575"},{"unit_id":"2531-240263","prop_name":"Island Walk, Cove At Sandy Point 207","prop_number":"2531-240263"},{"unit_id":"2531-213680","prop_name":"La Playita 7","prop_number":"2531-213680"},{"unit_id":"2531-174578","prop_name":"Lakeside Beach House","prop_number":"2531-174578"},{"unit_id":"2531-265790","prop_name":"LaPlage #3","prop_number":"2531-265790"},{"unit_id":"2531-216483","prop_name":"Lazy Livin 6","prop_number":"2531-216483"},{"unit_id":"2531-230130","prop_name":"Made In The Shade 2 Units ","prop_number":"2531-230130"},{"unit_id":"2531-230126","prop_name":"Made In The Shade A","prop_number":"2531-230126"},{"unit_id":"2531-230128","prop_name":"Made In The Shade B","prop_number":"2531-230128"}
438,{"unit_id":"2531-174436","prop_name":"MI Happy Place Sand Castle 1","prop_number":"2531-174436"},{"unit_id":"2531-174437","prop_name":"MI Happy Place Sand Dollar 2","prop_number":"2531-174437"},{"unit_id":"2531-174487","prop_name":"MI Happy Place Sea Horse 3","prop_number":"2531-174487"},{"unit_id":"2531-174488","prop_name":"MI Happy Place Sea Turtle 4","prop_number":"2531-174488"},{"unit_id":"2531-174489","prop_name":"MI Happy Place-4 Units ","prop_number":"2531-174489"},{"unit_id":"2531-174581","prop_name":"Ocean Park Terrace 202","prop_number":"2531-174581"},{"unit_id":"2531-216784","prop_name":"One Particular Harbour Sound View 379-401","prop_number":"2531-216784"},{"unit_id":"2531-230259","prop_name":"One Particular Harbour 379-101","prop_number":"2531-230259"},{"unit_id":"2531-206954","prop_name":"One Particular Harbour 387-101","prop_number":"2531-206954"},{"unit_id":"2531-206004","prop_name":"One Particular Harbour 391-201","prop_number":"2531-206004"},{"unit_id":"2531-283886","prop_name":"One Particular Harbour 391-203","prop_number":"2531-283886"},{"unit_id":"2531-208713","prop_name":"One Particular Harbour 392-201","prop_number":"2531-208713"},{"unit_id":"2531-265896","prop_name":"One Particular Harbour 395-402","prop_number":"2531-265896"},{"unit_id":"2531-259917","prop_name":"One Particular Harbour 396-303","prop_number":"2531-259917"},{"unit_id":"2531-247410","prop_name":"One Particular Harbour Lagoon view 383-202","prop_number":"2531-247410"},{"unit_id":"2531-198297","prop_name":"One Particular Harbour Lagoon View 395-103","prop_number":"2531-198297"},{"unit_id":"2531-256990","prop_name":"Otter Lagoon at One Particular Harbour 379-103","prop_number":"2531-256990"},{"unit_id":"2531-174584","prop_name":"Palm Cay 3","prop_number":"2531-174584"},{"unit_id":"2531-174585","prop_name":"Palm Cay 4","prop_number":"2531-174585"},{"unit_id":"2531-174586","prop_name":"Palm Cay 5","prop_number":"2531-174586"},{"unit_id":"2531-245092","prop_name":"Palm View Lakehouse","prop_number":"2531-245092"},{"unit_id":"2531-231137","prop_name":"Palma Sola","prop_number":"2531-231137"},{"unit_id":"2531-174490","prop_name":"Peace 'n Paradise","prop_number":"2531-174490"},{"unit_id":"2531-174588","prop_name":"Pelican Cove 15","prop_number":"2531-174588"},{"unit_id":"2531-261257","prop_name":"Pelican Place at The Nautilus","prop_number":"2531-261257"},{"unit_id":"2531-277058","prop_name":"Penthouse View at One Particular Harbour 388-401","prop_number":"2531-277058"},{"unit_id":"2531-237311","prop_name":"Pool Party 2 Units ","prop_number":"2531-237311"},{"unit_id":"2531-237312","prop_name":"Pool Party North","prop_number":"2531-237312"},{"unit_id":"2531-237313","prop_name":"Pool Party South","prop_number":"2531-237313"},{"unit_id":"2531-174592","prop_name":"Runaway Bay 250","prop_number":"2531-174592"},{"unit_id":"2531-174593","prop_name":"Sail Away Cottage","prop_number":"2531-174593"},{"unit_id":"2531-275311","prop_name":"Sand & Sun 2 Units ","prop_number":"2531-275311"},{"unit_id":"2531-275312","prop_name":"Sand & Sun A SIDE","prop_number":"2531-275312"},{"unit_id":"2531-275313","prop_name":"Sand & Sun B SIDE","prop_number":"2531-275313"},{"unit_id":"2531-174595","prop_name":"Sandcastle 3","prop_number":"2531-174595"},{"unit_id":"2531-273507","prop_name":"Sandy Feet Retreat","prop_number":"2531-273507"},{"unit_id":"2531-174596","prop_name":"Sandy Pointe 210","prop_number":"2531-174596"},{"unit_id":"2531-278824","prop_name":"Sapphire Serenity ","prop_number":"2531-278824"},{"unit_id":"2531-174597","prop_name":"Sea Pirate 3","prop_number":"2531-174597"},{"unit_id":"2531-174599","prop_name":"Sea Pirate 7","prop_number":"2531-174599"},{"unit_id":"2531-174600","prop_name":"Sea-Esta","prop_number":"2531-174600"},{"unit_id":"2531-174601","prop_name":"Seabreeze Condo B","prop_number":"2531-174601"},{"unit_id":"2531-174611","prop_name":"Seaside Beach House 101 ","prop_number":"2531-174611"},{"unit_id":"2531-174612","prop_name":"Seaside Beach House 102 ","prop_number":"2531-174612"},{"unit_id":"2531-174613","prop_name":"Seaside Beach House 105 ","prop_number":"2531-174613"},{"unit_id":"2531-174614","prop_name":"Seaside Beach House 201 ","prop_number":"2531-174614"},{"unit_id":"2531-204602","prop_name":"Seaside Beach House 203 ","prop_number":"2531-204602"},{"unit_id":"2531-174615","prop_name":"Seaside Beach House 205 ","prop_number":"2531-174615"},{"unit_id":"2531-174617","prop_name":"Shell Cove 9","prop_number":"2531-174617"},{"unit_id":"2531-174619","prop_name":"Sirena Del Mar","prop_number":"2531-174619"},{"unit_id":"2531-261258","prop_name":"So Beachy Chic","prop_number":"2531-261258"},{"unit_id":"2531-178725","prop_name":"Southern Comfort","prop_number":"2531-178725"},{"unit_id":"2531-174492","prop_name":"SS Salamander 2 Units ","prop_number":"2531-174492"},{"unit_id":"2531-174493","prop_name":"SS Salamander North","prop_number":"2531-174493"},{"unit_id":"2531-174494","prop_name":"SS Salamander South","prop_number":"2531-174494"},{"unit_id":"2531-262804","prop_name":"Sunset FantaSea at One Particular Harbour 380-202","prop_number":"2531-262804"}
438,{"unit_id":"2531-174621","prop_name":"Sunset Terrace 108 ","prop_number":"2531-174621"},{"unit_id":"2531-174623","prop_name":"Sunset Terrace 201","prop_number":"2531-174623"},{"unit_id":"2531-174448","prop_name":"Sunset Villas","prop_number":"2531-174448"},{"unit_id":"2531-257566","prop_name":"SWEPT AWAY B","prop_number":"2531-257566"},{"unit_id":"2531-218299","prop_name":"Swizzle On The Sound","prop_number":"2531-218299"},{"unit_id":"2531-174628","prop_name":"Terrace Condo 1","prop_number":"2531-174628"},{"unit_id":"2531-248621","prop_name":"Terrace Condo 6","prop_number":"2531-248621"},{"unit_id":"2531-235198","prop_name":"The Palms #3","prop_number":"2531-235198"},{"unit_id":"2531-231331","prop_name":"The Palms #4","prop_number":"2531-231331"},{"unit_id":"2531-204768","prop_name":"The Sunset Retreat at One Particular Harbour 384-202","prop_number":"2531-204768"},{"unit_id":"2531-285578","prop_name":"Tides & Turtles","prop_number":"2531-285578"},{"unit_id":"2531-174630","prop_name":"Tiki","prop_number":"2531-174630"},{"unit_id":"2531-277062","prop_name":"Tortuga Cottage","prop_number":"2531-277062"},{"unit_id":"2531-248571","prop_name":"Turquoise Turtle at One Particular Harbour 388-403 ","prop_number":"2531-248571"},{"unit_id":"2531-174500","prop_name":"Valhalla 2 Units ","prop_number":"2531-174500"},{"unit_id":"2531-174499","prop_name":"Valhalla Downstairs","prop_number":"2531-174499"},{"unit_id":"2531-174501","prop_name":"Valhalla Upstairs","prop_number":"2531-174501"},{"unit_id":"2531-174632","prop_name":"Waters Edge 102 N","prop_number":"2531-174632"},{"unit_id":"2531-174633","prop_name":"Waters Edge 106s","prop_number":"2531-174633"},{"unit_id":"2531-174634","prop_name":"Waters Edge 110s","prop_number":"2531-174634"},{"unit_id":"2531-174503","prop_name":"West Bay Cove 131","prop_number":"2531-174503"},{"unit_id":"2531-174640","prop_name":"West Bay Cove 142","prop_number":"2531-174640"},{"unit_id":"2531-278919","prop_name":"West Bay Cove 213","prop_number":"2531-278919"},{"unit_id":"2531-174643","prop_name":"West Bay Cove 216","prop_number":"2531-174643"},{"unit_id":"2531-207705","prop_name":"West Bay Cove 223","prop_number":"2531-207705"},{"unit_id":"2531-174644","prop_name":"West Bay Cove 226","prop_number":"2531-174644"},{"unit_id":"2531-174508","prop_name":"West Bay Cove 231","prop_number":"2531-174508"},{"unit_id":"2531-174505","prop_name":"West Bay Cove 236","prop_number":"2531-174505"},{"unit_id":"2531-174506","prop_name":"West Bay Cove 238","prop_number":"2531-174506"},{"unit_id":"2531-276790","prop_name":"West Bay Cove 242","prop_number":"2531-276790"},{"unit_id":"2531-257568","prop_name":"WHILE AWAY 2 Units ","prop_number":"2531-257568"},{"unit_id":"2531-174645","prop_name":"WHILE AWAY A","prop_number":"2531-174645"}], 439 } 440 }, 441 computed: { 442 list: function() { 443 var propsArray = new Array(); 444 this.units.forEach(function(prop) { 445 var propIndex = prop.prop_number.replace(/\s/g,''); 446 propsArray.push({propName:propIndex, option: prop.prop_name}); 447 }); 448 return propsArray; 449 }, 450 computedList: function () { 451 var vm = this; 452 return this.list.filter(function (item) { 453 return item.option.toLowerCase().indexOf(vm.query.toLowerCase()) !== -1; 454 }) 455 }, 456 }, 457 methods: { 458 makeSelection: function(option) { 459 this.closeDropdown(); 460 this.$emit('smartselect', option.value); 461 }, 462 openDropdown: function () { 463 this.active = true; 464 }, 465 closeDropdown: function() { 466 this.active = false; 467 }, 468 outsideClick: function(e) { 469 // Close the calendar when clicking outside 470 this.closeDropdown(); 471 }, 472 toggleDropdown: function() { 473 if(this.active) { 474 this.active = false; 475 } else { 476 this.active = true; 477 } 478 }, 479 toggle: function () { 480 if(this.hasFocus == false) { 481 this.hasFocus = true; 482 } else { 483 this.hasFocus = false;
484 } 485 486 }, 487 getYpos: function () { 488 var qsForm = this.$refs.quicksearchForm; 489 var qsFormYpos = qsForm.getBoundingClientRect().y; 490 if(qsFormYpos > 425) { 491 this.popupTopAlign = true; 492 } else { 493 this.popupTopAlign = false; 494 } 495 } 496 }, 497 directives: { 498 'click-outside': { 499 mounted(el, binding, vnode) { 500 el.clickOutsideEvent = function(event) { 501 if (!(el === event.target || el.contains(event.target))) { 502 binding.value(event, el); 503 } 504 }; 505 document.body.addEventListener('click', el.clickOutsideEvent); 506 }, 507 unmounted(el) { 508 document.body.removeEventListener('click', el.clickOutsideEvent); 509 } 510 }, 511 }, 512 }; 513 // register the components and mount the app 514 const rtPropSearch = Vue.createApp({}); 515 rtPropSearch.component('propertysearch', rtpropsearchbox); 516 rtPropSearch.mount('#property-search-instance'); 517</script>
517 518 </div> 519</div> 520 521<template id="general-calendar"> 522 <div class="calendar" @mouseleave="leaveCalendar($event)" :class="[{arriveballoon: calendarVisible && !arriveDate && ! departDate},{departballoon: calendarVisible && arriveDate && ! departDate}]"> 523 <div class="month-wrap"> 524 <div class="header"> 525 <i class="arrow rt-google-icon left-chevron" :class="{nonav: (monthIndex <= currentMonth && year == currentYear)}" @click="movePreviousMonth"></i> 526 <span v-cloak class="title">{{ header.label }}</span> 527 <i class="arrow rt-google-icon right-chevron" :class="{ nonav: year == calEndYear && month >= calEndMonth }" @click="moveNextMonth"></i> 528 </div> 529 <div class="weekdays"> 530 <div v-cloak class="weekday" v-for="weekday in weekdays"> 531 {{ weekday.label_3 }} 532 </div> 533 </div> 534 <div class='week' v-for="(week,index) in weeks" :key="'week'+index" 535 @touchstart="touchStart($event)" 536 @touchmove="touchMove($event)" 537 @touchend="touchEnd($event)"> 538 <div class="day-wrap" v-for="day in week" :key="day.dayKeyIndex"> 539 <transition :name="daysSliding" mode="out-in"> 540 <div v-cloak 541 class="day" 542 :key="daysSliding" 543 :class="{ today: day.isToday, booked: day.isBooked, bookstart: day.bookingStart, bookend: day.bookingEnd, unselectable: day.unselectable, unforeseeable: day.unforeseeable, anotherMonthDate: day.dateInAnotherMonth, anotherMonthDateCheckout: day.dateInAnotherMonthCheckout, 'not-in-month': !day.inMonth, 'selected': day.isSelected && !day.dragActive, 'dragged': day.isDragged, 'endpoint': day.startsDrag || day.endsDrag, 'navdate': day.navigateDate }" 544 @click="selectDay(day)" 545 @mouseenter="enterDay(day)"> 546 {{ day[dayKey] }} 547 </div> 548 </transition> 549 </div> 550 </div> 551 </div> 552 <div class="datepick-footer"> 553 <div v-if="flexButtons && flexButtons.length > 0"> 554 <div style="font-size: .85em;">Are your search dates flexible?</div> 555 <div class="flex-button-toolbar"> 556 <button 557 v-for="button in flexButtons" 558 @click.prevent="selectFlexButton(button)" 559 @keydown.enter.prevent="selectFlexButton(button)" 560 :key="'flexbutton'+button" 561 class="flex-degree-buttons" 562 :class="{selectedFlex: button === flexDegree, desktop: button > 2}" 563 :aria-label="'Search for properties within plus or minus '+button+' days of your search dates.'" 564 :aria-pressed="button === flexDegree ? true : false" 565 >±{{button}} day<span v-if="button > 1">s</span> 566 </button> 567 </div> 568 </div> 569 <transition name="fade"> 570 <button id="clear-dates-calendar-button" class="clear-dates" @click.stop="$parent.clearDates" @keyup.enter="$parent.clearDates" @keydown.tab="$parent.closeCalendar()" aria-label="Clear search dates from the calendar."> 571 <i class="rt-google-icon close-window" role="presentation"></i> 572 <span>Clear Dates</span> 573 </button> 574 </transition> 575 </div> 576 <div id="general-datepick-nav-message">{{navigationAriaMessage}}</div> 577 </div> 578</template> 579<template id="rt-general-datepick-app"> 580 <div id="rt-general-datepick" class="rt-general-datepick"> 581 <rt-modal v-if="isMobile && mobileDatesModal" ref="mobilecalmodal" @close-modal="closeCalendar" max-width="500px"> 582 <div id="mobile-calendar-target" class="calendar-container" :class="{calendarvisible: calendarVisible}"></div> 583 </rt-modal> 584 <div class="calendar-container" v-click-outside="outsideClick"> 585 <div class="modal-container" > 586 <div class="interface-wrap"> 587 <div class="interface-body"> 588 <div class="interface-inner-wrap"> 589 <div class="input-container date-input google-icon-calendar" 590 :class="{inputcoloration: calendarVisible && !arriveDate && !departDate}"> 591 <label for="arriveinput" class="hidden-label">Arrival Date</label> 592 <input id="arriveinput" ref="arriveinput" type="text" name="arrive_date" 593 :value="dateString(arriveDate)"
594 @focus="openCalendar()" 595 @keyup.enter="!navigateActive ? navigateActive=true : null" 596 @keydown.tab.shift.exact="closeCalendar()" 597 @keydown.escape="navigateActive=false" 598 @keydown.delete="clearDates" 599 @keydown.arrow-down.prevent 600 @keydown.arrow-up.prevent 601 @keydown.page-down.prevent 602 @keydown.page-up.prevent 603 @click="openCalendar()" 604 @keydown.enter.prevent="openCalendar()" 605 @keydown="navigationKeyStroke=$event.key" 606 placeholder="Arrival" 607 aria-describedby="general-datepick-nav-message" 608 readonly 609 /> 610 </div> 611 <div class="input-container date-input google-icon-calendar" 612 :class="{inputcoloration: calendarVisible && arriveDate && !departDate}"> 613 <label for="departinput" class="hidden-label">Departure Date</label> 614 <input id="departinput" ref="departinput" type="text" name="depart_date" 615 :value="dateString(departDate)" 616 @focus="openCalendar()" 617 @keydown.tab="closeCalendar()" 618 @keyup.enter="!navigateActive ? navigateActive=true : null" 619 @keydown.escape="navigateActive=false" 620 @keydown.delete="clearDates" 621 @keydown.arrow-down.prevent 622 @keydown.arrow-up.prevent 623 @keydown.page-down.prevent 624 @keydown.page-up.prevent 625 @click="openCalendar()" 626 @keydown.enter.prevent="openCalendar()" 627 @keydown="navigationKeyStroke=$event.key" 628 placeholder="Departure" 629 aria-describedby="general-datepick-nav-message" 630 readonly 631 /> 632 </div> 633 <div id="general-calendar-home" style="display: contents;"></div> 634 <teleport defer :to="(isMobile && mobileDatesModal) ? '#mobile-calendar-target' : '#general-calendar-home'"> 635 <div v-show="!isMobile || mobileDatesModal" class="calendar-wrap rt-general-datepick"> 636 <div v-if="mobileDatesModal" class="interface-wrap"> 637 <div class="interface-body"> 638 <div class="interface-inner-wrap" style="display: flex;"> 639 <div class="input-container date-input google-icon-calendar" :class="{inputcoloration: calendarVisible && !arriveDate && !departDate}"> 640 <label for="arriveinput" class="hidden-label">Arrival Date</label> 641 <input id="arriveinput" ref="arriveinput" type="text" name="arrive_date" 642 :value="dateString(arriveDate)" 643 @focus="openCalendar()" 644 @keyup.enter="!navigateActive ? navigateActive=true : null" 645 @keydown.tab.shift.exact="closeCalendar(
645)" 646 @keydown.escape="navigateActive=false" 647 @keydown.delete="clearDates" 648 @keydown.arrow-down.prevent 649 @keydown.arrow-up.prevent 650 @keydown.page-down.prevent 651 @keydown.page-up.prevent 652 @click="openCalendar()" 653 @keydown.enter.prevent="openCalendar()" 654 @keydown="navigationKeyStroke=$event.key" 655 placeholder="Arrival" 656 aria-describedby="general-datepick-nav-message" 657 readonly 658 /> 659 </div> 660 <div class="input-container date-input google-icon-calendar" 661 :class="{inputcoloration: calendarVisible && arriveDate && !departDate}"> 662 <label for="departinput" class="hidden-label">Departure Date</label> 663 <input id="departinput" ref="departinput" type="text" name="depart_date" 664 :value="dateString(departDate)" 665 @focus="openCalendar()" 666 @keydown.tab="closeCalendar()" 667 @keyup.enter="!navigateActive ? navigateActive=true : null" 668 @keydown.escape="navigateActive=false" 669 @keydown.delete="clearDates" 670 @keydown.arrow-down.prevent 671 @keydown.arrow-up.prevent 672 @keydown.page-down.prevent 673 @keydown.page-up.prevent 674 @click="openCalendar()" 675 @keydown.enter.prevent="openCalendar()" 676 @keydown="navigationKeyStroke=$event.key" 677 placeholder="Departure" 678 aria-describedby="general-datepick-nav-message" 679 readonly 680 /> 681 </div> 682 </div> 683 </div> 684 </div> 685 <div class="calendar-layout" :class="{openAbove: spaceAboveInputs}"> 686 <general-date-range-picker ref="rtGenDatepicker" 687 v-show="calendarVisible" 688 v-model="dateSelection" 689 :is-mobile="isMobile" 690 @drag="dragSelection = $event" 691 @emit-keystrokecomplete="navigationKeyStroke = null" 692 @emit-newflexdegree="newFlexDegree($event)" 693 :calendar-visible="calendarVisible" 694 :space-above-inputs="spaceAboveInputs" 695 :navigation-mode="navigateActive" 696 :key-stroke="navigationKeyStroke"> 697 </general-date-range-picker> 698 </div> 699 </div> 700 </teleport> 701 </div> 702 </div> 703 </div> 704 </div> 705 </div> 706 </div> 707</template>
708<script> 709 var _daysInMonths = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; 710 var _weekdayLabels = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday']; 711 var _monthLabels = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December']; 712 var _today = new Date(); 713 var _todayComps = { 714 year: _today.getFullYear(), 715 month: _today.getMonth() + 1, 716 day: _today.getDate() 717 }; 718 var _initialMonth = _todayComps.month; 719 var _initialYear = _todayComps.year; 720 // set the initial month view ahead one month when we're past the 20th of the current month, which mirrors the availability calendar's logic 721 if(_todayComps.day >= 20) { 722 if(_initialMonth !== 12) { 723 _initialMonth++; 724 } else { // special case for December 725 _initialMonth = 1; 726 _initialYear++; 727 } 728 } 729 730 const generalCalendar = { 731 template: '#general-calendar', 732 data: function data() { 733 return { 734 month: _initialMonth, 735 year: _initialYear, 736 touchState: null, 737 arriveDate: null, 738 arriveMinDays: null, 739 departDate: null, 740 calStartDate: new Date(new Date(new Date().setDate(new Date().getDate() + 1)).setHours(0,0,0,0)), 741 calEndDate: new Date(new Date(new Date().setDate(new Date().getDate() + 425)).setHours(0,0,0,0)), 742 valueIsValid: false, 743 dragRange: null, 744 navigationDate: new Date(new Date(new Date().setDate(new Date().getDate() + 1)).setHours(0,0,0,0)), 745 navigationDateObject: null, 746 daysSliding: null, 747 flexDegree: 0, 748 flexButtons: [1,2,3], 749 }; 750 }, 751 props: { 752 dayKey: { type: String, default: 'label' }, 753 modelValue: { type: Object, default: {} }, 754 calendarVisible: { type: Boolean, default: false }, 755 spaceAboveInputs: { type: Boolean, default: false }, 756 navigationMode: { type: Boolean, default: false }, 757 keyStroke: { type: String, default: null }, 758 }, 759 emits: ['update:modelValue', 'drag', 'emit-newflexdegree', 'emit-keystrokecomplete'], 760 computed: { 761 normalizedValue: function normalizedValue() { 762 return this.normalizeRange(this.modelValue); 763 }, 764 normalizedDragRange: function normalizedDragRange() { 765 return this.normalizeRange(this.dragRange); 766 }, 767 // Our component exposes month as 1-based, but sometimes we need 0-based 768 monthIndex: function monthIndex() { 769 return this.month - 1; 770 }, 771 isLeapYear: function isLeapYear() { 772 return this.year % 4 === 0 && this.year % 100 !== 0 || this.year % 400 === 0; 773 }, 774 currentMonth: function currentMonth() { 775 var currentDate = new Date(); 776 return currentDate.getMonth(); 777 }, 778 currentYear: function currentMonth() { 779 var currentDate = new Date(); 780 return currentDate.getFullYear(); 781 }, 782 calEndMonth: function calEndMonth() { 783 return this.calEndDate.getMonth() + 1; 784 }, 785 calEndYear: function calEndYear() { 786 return this.calEndDate.getFullYear(); 787 }, 788 // Day/month/year components for previous month 789 previousMonthComps: function previousMonthComps() { 790 if (this.month === 1) return { 791 days: _daysInMonths[11], 792 month: 12, 793 year: this.year - 1 794 }; 795 return { 796 days: this.month === 3 && this.isLeapYear ? 29 : _daysInMonths[this.month - 2], 797 month: this.month - 1, 798 year: this.year 799 }; 800 }, 801 // Day/month/year components for next month 802 nextMonthComps: function nextMonthComps() { 803 if (this.month === 12) return { 804 days: _daysInMonths[0], 805 month: 1, 806 year: this.year + 1 807 }; 808 return { 809 days: this.month === 2 && this.isLeapYear ? 29 : _daysInMonths[this.month], 810 month: this.month + 1, 811 year: this.year 812 }; 813 }, 814 // State for calendar header (no dependencies yet...) 815 months: function months() { 816 return _monthLabels.map(function (ml, i) { 817 return { 818 label: ml, 819 label_1: ml.substring(0, 1), 820 label_2: ml.substring(0, 2), 821 label_3: ml.substring(0, 3), 822 number: i + 1 823 }; 824 }); 825 }, 826 // State for weekday header (no dependencies yet...) 827 weekdays: function weekdays() { 828 return _weekdayLabels.map(function (wl, i) { 829 return { 830 label: wl, 831 label_1: wl.substring(0, 1), 832 label_2: wl.substring(0, 2), 833 label_3: wl.substring(0, 3), 834 number: i + 1 835 }; 836 }); 837 }, 838 // State for calendar header 839 header: function header() {
840 var month = this.months[this.monthIndex]; 841 return { 842 month: month, 843 year: this.year.toString(), 844 shortYear: this.year.toString().substring(2, 4), 845 label: month.label + ' ' + this.year 846 }; 847 }, 848 // Returns number for first weekday (1-7), starting from Sunday 849 firstWeekdayInMonth: function firstWeekdayInMonth() { 850 return new Date(this.year, this.monthIndex, 1).getDay() + 1; 851 }, 852 // Returns number of days in the current month 853 daysInMonth: function daysInMonth() { 854 // Check for February in a leap year 855 if (this.month === 2 && this.isLeapYear) return 29; 856 // ...Just a normal month 857 return _daysInMonths[this.monthIndex]; 858 }, 859 // Returns number of days in the last month 860 daysInLastMonth: function daysInMonth() { 861 var lastmonth = 0; 862 if(this.monthIndex > 0) { 863 lastmonth = this.monthIndex - 1; 864 } else { 865 lastmonth == 11; 866 } 867 // Check for February in a leap year 868 if ((this.month - 1) === 2 && this.isLeapYear) return 29; 869 // ...Just a normal month 870 return _daysInMonths[lastmonth]; 871 }, 872 weeks: function weeks() { 873 //Create an index key for the days showing 874 var dayIndex = 0; 875 var weeks = []; 876 var previousMonth = true, thisMonth = false, nextMonth = false; 877 var day = this.previousMonthComps.days - this.firstWeekdayInMonth + 2; 878 var month = this.previousMonthComps.month; 879 var year = this.previousMonthComps.year; 880 var lastMonthArray = []; 881 // Cycle through each week of the month, up to 6 total 882 for (var w = 1; w <= 6; w++) { 883 // Cycle through each weekday 884 var week = []; 885 for (var d = 1; d <= 7; d++) { 886 dayIndex++; 887 // lets populate last months dates on this months calendar 888 if (w === 1 && d < this.firstWeekdayInMonth) { 889 var lastDay = this.daysInLastMonth; 890 lastMonthArray.push(lastDay); 891 day = lastDay - (this.firstWeekdayInMonth - (dayIndex + 1)); 892 month = this.previousMonthComps.month; 893 year = this.previousMonthComps.year; 894 thisMonth = true; 895 } 896 // We need to know when to start counting actual month days 897 if (previousMonth && d >= this.firstWeekdayInMonth) { 898 // Reset day/month/year counters 899 day = 1; 900 month = this.month; 901 year = this.year; 902 // ...and flag we're tracking actual month days 903 previousMonth = false; 904 thisMonth = true; 905 } 906 907 // Append day info for the current week 908 // Note: this might or might not be an actual month day 909 // We don't know how the UI wants to display various days, 910 // so we'll supply all the data we can 911 var dayInfo = { 912 dayKeyIndex: dayIndex, 913 label: (day && thisMonth) ? day.toString() : '', 914 day: day, 915 weekday: d, 916 week: w, 917 month: month, 918 year: year, 919 date: new Date(year, month - 1, day), 920 beforeMonth: previousMonth, 921 afterMonth: nextMonth, 922 inMonth: thisMonth, 923 isToday: day === _todayComps.day && month
923=== _todayComps.month && year === _todayComps.year, 924 isFirstDay: thisMonth && day === 1, 925 isLastDay: thisMonth && day === this.daysInMonth, 926 unselectable: false, 927 unforeseeable: false, 928 dateInAnotherMonth: false, 929 dateInAnotherMonthCheckout: false, 930 navigateDate: false, 931 }; 932 //Identify calendar start and end 933 if(this.calStartDate && dayInfo.date < this.calStartDate) { 934 dayInfo.unforeseeable = true; 935 } else if(this.calEndDate && dayInfo.date > this.calEndDate) { 936 dayInfo.unforeseeable = true; 937 } 938 //Identify which date is currently navigated to in screen-reader mode 939 if(this.navigationMode && this.navigationDate) { 940 var navDate = this.navigationDate.getTime(); 941 var compareToday = dayInfo.date.getTime(); 942 if(navDate === compareToday) { 943 dayInfo.navigateDate = true; 944 } 945 } 946 /**SECOND RENDER OF DATES AFTER AN ARRIVE DATE IS SELECTED**/ 947 if(this.arriveDate && this.departDate === null) { 948 var compRoot = this; 949 //Make all days selectable by default 950 dayInfo.unselectable = false; 951 952 //Any date behind the arrive date is unselectable 953 if(dayInfo.date <= compRoot.arriveDate) { 954 dayInfo.unselectable = true; 955 } 956 // add class for selectable dates in other months to distinguish 957 if((dayInfo.date > compRoot.arriveDate) && (w >= 5 && (dayInfo.date.getDate() < 20)) || (this.previousMonthComps.month === this.arriveDate.getMonth() + 1)) { 958 dayInfo.dateInAnotherMonthCheckout = true; 959 } 960 /**FIRST RENDER OF DATES WHEN NO ARRIVE DATE IS SELECTED OR BOTH AN ARRIVE AND DEPART ARE SELECTED**/ 961 } else { 962 if(this.calEndDate && dayInfo.date >= this.calEndDate) { 963 dayInfo.unselectable = true; 964 } 965 } /**END OF EVALUATIONS OF WHETHER DATES HAVE BEEN SELECTED OR NOT**/ 966 this.configureDay(dayInfo); 967 week.push(dayInfo); 968 969 // We've hit the last day of the month 970 // but let's keep adding the first few days of the next month to keep week 6 on the calendar for all months 971 if (thisMonth && day >= this.daysInMonth) { 972 day = 1; 973 month = this.nextMonthComps.month; 974 year = this.nextMonthComps.year; 975 // Still in the middle of the month (hasn't ended yet) 976 } else { 977 day++; 978 } 979 // add class for selectable dates in other months to distinguish 980 if((w >= 5 && (dayInfo.date.getDate() < 20)) || previousMonth) { 981 dayInfo.dateInAnotherMonth = true; 982 } 983 } 984 // Append week info for the month 985 weeks.push(week); 986 } 987 return weeks; 988 }, 989 nights: function () { 990 var nights = null; 991 if(this.arriveDate && this.departDate) { 992 var timeDiff = Math.abs(this.departDate.getTime() - this.arriveDate.getTime()); 993 nights = Math.round(timeDiff / (1000 * 3600 * 24)); 994 return nights; 995 } else if(this.dragRange && this.dragRange.start && this.dragRange.end && this.dragRange.end > this.dragRange.start) { 996 var timeDiff = Math.abs(this.dragRange.end.getTime() - this.dragRange.start.getTime()); 997 nights = Math.round(timeDiff / (1000 * 3600 * 24)); 998 } 999 return nights; 1000 }, 1001 navigationAriaMessage: function () { 1002 var ariaMessage = ""; 1003 var bookedMessage = ''; 1004 var minDayMessage = ''; 1005 var selectInstructions = ''; 1006 if(this.navigationMode && this.navigationDate && this.calendarVisible) { //Message for when keyboard navigation mode is active 1007 ariaMessage = 'You have navigated to ' + this.navigationDate.toDateString() + '. '; 1008 for(var i = 0; i < this.weeks.length; i++) { 1009 var weekArray = this.weeks[i]; 1010 var navDateFound = false;
1011 //Loop over every day in the visible month to grab the navigationDateObject 1012 for (var ii = 0; ii < this.weeks[i].length; ii++) { 1013 if (this.weeks[i][ii].date && this.weeks[i][ii].date.getTime() === this.navigationDate.getTime()) { 1014 this.navigationDateObject = this.weeks[i][ii]; 1015 break; 1016 } 1017 } 1018 } 1019 if(this.navigationDateObject) { 1020 if(this.navigationDateObject.unselectable || this.navigationDateObject.unforeseeable) { 1021 ariaMessage += 'This date is not available '; 1022 } else { 1023 ariaMessage += 'This date is available '; 1024 selectInstructions = ' Click enter if you want to select this date.'; 1025 } 1026 //Add the appropriate check-in/check-out substring to the message 1027 if(this.arriveDate && this.departDate === null) { 1028 ariaMessage += 'for a departure date.'; 1029 } else { 1030 ariaMessage += 'for an arrival date.'; 1031 ariaMessage += minDayMessage; 1032 } 1033 ariaMessage += selectInstructions; 1034 } 1035 } else if(this.calendarVisible) { //Default input labels when not in navigation mode 1036 var inputLabel = 'Select an arrival date and a departure date.'; 1037 var navInstructions = ' If you wish to navigate through the calendar using your keyboard, click the enter key to initiate keyboard calendar navigation. Once keyboard calendar navigation is active, you can use the arrow keys, page up, and page down to navigate through the calendar. Press the delete key to clear your dates. Press the escape key to exit keyboard calendar navigation and return to the main page content.' 1038 // add navigation verbiage when flex exists 1039 if(this.flexButtons && this.flexButtons.length > 0) { 1040 navInstructions += ' If you are flexible with your search dates and wish to
1040see results for a certain number of adjacent dates, tab to the next set of inputs, then back tab to this arrival date input and follow the screen reader instructions to enter calendar keyboard navigation.'; 1041 } 1042 if(this.arriveDate) { 1043 inputLabel += ' The currently selected arrive date is ' + this.arriveDate.toDateString() + '.'; 1044 } 1045 if(this.departDate) { 1046 inputLabel += ' The currently selected departure date is ' + this.departDate.toDateString() + '.'; 1047 } 1048 ariaMessage = inputLabel + navInstructions; 1049 } 1050 return ariaMessage; 1051 } 1052 }, 1053 methods: { 1054 configureDay: function configureDay(day) { 1055 var dateTime = day.date.getTime(); 1056 var valueRange = this.normalizedValue; 1057 var dragRange = this.normalizedDragRange; 1058 day.isSelected = valueRange && dateTime >= valueRange.startTime && dateTime <= valueRange.endTime; 1059 day.startsSelection = valueRange && dateTime === valueRange.startTime; 1060 day.endsSelection = valueRange && dateTime === valueRange.endTime; 1061 day.dragActive = dragRange; // Just to var day know drag is happening somewhere 1062 day.isDragged = dragRange && dateTime >= dragRange.startTime && dateTime <= dragRange.endTime; 1063 day.startsDrag = dragRange && dateTime === dragRange.startTime; 1064 day.endsDrag = dragRange && dateTime === dragRange.endTime; 1065 }, 1066 selectDay: function selectDay(day) { 1067 // Start new drag selection if not dragging 1068 if(day.unselectable || day.unforeseeable) { 1069 return; 1070 } 1071 if (!this.dragRange) { 1072 this.dragRange = { 1073 start: day.date, 1074 end: day.date 1075 }; 1076 this.arriveDate = this.dragRange.start; 1077 if(day.minDays) { 1078 this.arriveMinDays = day.minDays; 1079 } else if(day.rateData) { 1080 this.arriveMinDays = day.rateData.minDays; 1081 } 1082 this.departDate = null; 1083 // Complete drag selection 1084 } else { 1085 var _normalizedDragRange = this.normalizedDragRange, 1086 start = _normalizedDragRange.start, 1087 end = _normalizedDragRange.end; 1088 // Clear drag selection 1089 this.departDate = this.dragRange.end; 1090 this.dragRange = null; 1091 // Signal new value selected on drag complete 1092 this.$emit('update:modelValue', { start: start, end: end }); 1093 } 1094 }, 1095 navSelectDay: function navSelectDay(navDate) { 1096 // Start new drag selection if not dragging 1097 if (!this.dragRange) { 1098 this.dragRange = { 1099 start: navDate.date, 1100 end: navDate.date 1101 }; 1102 this.arriveDate = this.dragRange.start; 1103 this.departDate = null; 1104 // Complete drag selection 1105 } else { 1106 var _normalizedDragRange = this.normalizedDragRange, 1107 start = _normalizedDragRange.start, 1108 end = navDate.date; 1109 // Clear drag selection 1110 this.departDate = this.dragRange.end; 1111 this.dragRange = null; 1112 // Signal new value selected on drag complete 1113 this.$emit('update:modelValue', { start: start, end: end }); 1114 } 1115 }, 1116 enterDay: function enterDay(day) { 1117 if (!this.dragRange) { 1118 return; //Restrict end of selection to greater than first selection of range 1119 } 1120 // Update drag selection 1121 this.dragRange = { 1122 start: this.dragRange.start, 1123 end: day.date 1124 }; 1125 if((day.unselectable || day.unforeseeable) && this.dragRange.start && this.dragRange.end) { 1126 this.dragRange.end = this.dragRange.start; 1127 } 1128 },
1129 leaveCalendar: function leaveCalendar() { 1130 if(this.dragRange && this.dragRange.start && this.dragRange.end) { 1131 this.dragRange.end = this.dragRange.start; 1132 } 1133 }, 1134 1135 // Ranges can privately have end date earlier than start date 1136 // This function will correct the order before exposing it to to other components 1137 normalizeRange: function normalizeRange(range) { 1138 if (!range) return null; 1139 var start = range.start, 1140 end = range.end; 1141 1142 var startTime = start.getTime(); 1143 var endTime = end.getTime(); 1144 var isNormal = start < end; 1145 return { 1146 start: isNormal ? start : end, 1147 startTime: isNormal ? startTime : endTime, 1148 end: isNormal ? end : start, 1149 endTime: isNormal ? endTime : startTime 1150 }; 1151 }, 1152 moveThisMonth: function moveThisMonth() { 1153 this.month = _todayComps.month; 1154 this.year = _todayComps.year; 1155 }, 1156 moveNextMonth: function moveNextMonth() { 1157 this.daysSliding = 'slideleft'; 1158 var _nextMonthComps = this.nextMonthComps, 1159 month = _nextMonthComps.month, 1160 year = _nextMonthComps.year; 1161 1162 this.month = month; 1163 this.year = year; 1164 //Create a short DOM update delay for allowing day slide to transition 1165 this.$nextTick( 1166 function() { 1167 this.daysSliding = null; 1168 } 1169 ); 1170 }, 1171 movePreviousMonth: function movePreviousMonth() { 1172 this.daysSliding = 'slideright'; 1173 var _previousMonthComps = this.previousMonthComps, 1174 month = _previousMonthComps.month, 1175 year = _previousMonthComps.year; 1176 1177 this.month = month; 1178 this.year = year; 1179 //Create a short DOM update delay for allowing day slide to transition 1180 this.$nextTick( 1181 function() { 1182 this.daysSliding = null; 1183 } 1184 ); 1185 }, 1186 moveNextYear: function moveNextYear() { 1187 this.year++; 1188 }, 1189 movePreviousYear: function movePreviousYear() { 1190 this.year--; 1191 }, 1192 touchStart: function(e) { 1193 var t = e.changedTouches[0]; 1194 this.touchState = { 1195 active: true, 1196 startX: t.screenX, 1197 startY: t.screenY, 1198 startTime: new Date().getTime(), 1199 isSwiping: false, 1200 isMonitoringSwipe: true, 1201 }; 1202 }, 1203 touchMove: function(e) { 1204 if (!this.touchState.isMonitoringSwipe) { 1205 if (this.touchState.isSwiping) e.preventDefault(); 1206 return; 1207 } 1208 var deltaTime = new Date().getTime() - this.touchState.startTime; 1209 if (deltaTime <= 5) { 1210 e.preventDefault(); 1211 return; 1212 } 1213 var t = e.changedTouches[0]; 1214 var deltaX = t.screenX - this.touchState.startX; 1215 var deltaY = t.screenY - this.touchState.startY; 1216 if (Math.abs(deltaX) >= Math.abs(deltaY)) { 1217 this.touchState.isSwiping = true; 1218 //e.preventDefault(); 1219 } 1220 this.touchState.isMonitoringSwipe = false; 1221 }, 1222 touchEnd: function(e) { 1223 var t = e.changedTouches[0]; 1224 var deltaX = t.screenX - this.touchState.startX; 1225 var deltaY = t.screenY - this.touchState.startY; 1226 var deltaTime = new Date().getTime() - this.touchState.startTime; 1227 if (deltaTime < 300) { 1228 if ( 1229 Math.abs(deltaX) >= 60 && 1230 Math.abs(deltaY) <= 80 1231 ) { 1232 // Swipe left 1233 // Move to next month 1234 if (deltaX < 0) { 1235 if (this.year === this.calEndYear) { 1236 if (this.month < this.calEndMonth) { 1237 this.moveNextMonth(); 1238 } 1239 } else if (this.year < this.calEndYear) { 1240 this.moveNextMonth(); 1241 } 1242 // Swipe right 1243 // Move to previous month 1244 } else { 1245 if(this.year === this.currentYear) { 1246 if(this.monthIndex > this.currentMonth) { 1247 this.movePreviousMonth(); 1248 } 1249 } else if(this.year > this.currentYear) { 1250 this.movePreviousMonth(); 1251 } 1252 } 1253 } 1254 } 1255 }, 1256 selectFlexButton: function(flexSelection) { 1257 // if flexSelection is the same as what flexDegree already is, the user is unchecking this button and we set flexDegree to zero 1258 if(this.flexDegree === flexSelection) { 1259 this.flexDegree = 0; 1260 } else { 1261 this.flexDegree = flexSelection; 1262 } 1263 }, 1264 updateFlexSession: function() { 1265 var siteURL = document.location.origin; 1266 axios.post(siteURL + '/vacation-rentals/router/', { 1267 call: 'updateFlexSession', 1268 flexDegree: this.flexDegree 1269 }) 1270 .then(function (response) { 1271 return; 1272 }) 1273 .catch(function (error) { 1274 console.log(error); 1275 }); 1276 }, 1277 }, 1278 mounted: function() { 1279 //What to do when we land with dates in the session 1280 if(this.modelValue && this.modelValue.start && this.modelValue.end) { 1281 var sessionStart = this.modelValue.start; 1282 var sessionEnd = this.modelValue.end; 1283 } 1284 }, 1285 watch: { 1286 normalizedDragRange: function normalizedDragRange(val) { 1287 // Any time drag changes, normalize it and emit 'drag' event 1288 this.$emit('drag', val ? { start: val.start, end: val.end } : null); 1289 }, 1290 keyStroke: function () { 1291 var keystroke = this.keyStroke; 1292 var fromNavDate = new Date(this.navigationDate); 1293 var toNavDate = fromNavDate; 1294 //Set the calendar month and year in case we need to change the view 1295 this.month = fromNavDate.getMonth() + 1; 1296 this.year = fromNavDate.getFullYear(); 1297 if(this.navigationMode) { 1298 //If the keystroke is enter to select a day, make sure it's actually selectable 1299 if(keystroke === 'Enter' && this.navigationDateObject && this.navigationDateObject.unselectable === false && this.navigationDateObject.unforeseeable === false) { 1300 this.navSelectDay(this.navigationDateObject); 1301 //Set the focus on the depart input 1302 document.getElementById('departinput').focus({preventScroll:true}); 1303 } else if(keystroke === 'ArrowRight') { 1304 toNavDate.setFullYear(fromNavDate.getFullYear()); 1305 toNavDate.setMonth(fromNavDate.getMonth()); 1306 toNavDate.setDate(fromNavDate.getDate() + 1); 1307 toNavDate.setHours(0,0,0,0); 1308 } else if(keystroke === 'ArrowLeft') { 1309 toNavDate.setFullYear(fromNavDate.getFullYear()); 1310 toNavDate.setMonth(fromNavDate.getMonth()); 1311 toNavDate.setDate(fromNavDate.getDate() - 1); 1312 toNavDate.setHours(0,0,0,0); 1313 } else if(keystroke === 'ArrowDown') { 1314 toNavDate.setFullYear(fromNavDate.getFullYear()); 1315 toNavDate.setMonth(fromNavDate.getMonth()); 1316 toNavDate.setDate(fromNavDate.getDate() + 7); 1317 toNavDate.setHours(0,0,0,0); 1318 } else if(keystroke === 'ArrowUp') { 1319 toNavDate.setFullYear(fromNavDate.getFullYear()); 1320 toNavDate.setMonth(fromNavDate.getMonth()); 1321 toNavDate.setDate(fromNavDate.getDate() - 7); 1322 toNavDate.setHours(0,0,0,0); 1323 } else if(keystroke === 'PageDown') { 1324 toNavDate.setDate(1); 1325 toNavDate.setFullYear(fromNavDate.getFullYear()); 1326 toNavDate.setMonth(fromNavDate.getMonth() + 1); 1327 toNavDate.setHours(0,0,0,0); 1328 } else if(keystroke === 'PageUp') { 1329 toNavDate.setDate(1); 1330 toNavDate.setFullYear(fromNavDate.getFullYear()); 1331 toNavDate.setMonth(fromNavDate.getMonth() - 1); 1332 toNavDate.setHours(0,0,0,0); 1333 } 1334 //Set the calendar month and year in case we need to change the view 1335 this.month = toNavDate.getMonth() + 1; 1336 this.year = toNavDate.getFullYear(); 1337 this.navigationDate = toNavDate; 1338 } else { // events that are available before entering calendar keyboard navigation mode 1339 if(keystroke === 'Tab') { 1340 if(this.flexButtons && this.flexButtons.length > 0 && document.getElementsByClassName('flex-degree-buttons')[0] !== undefined) { 1341 document.getElementsByClassName('flex-degree-buttons')[0].focus({preventScroll:true}); 1342 } else if(document.getElementById('clear-dates-calendar-button') !== undefined) { 1343 document.getElementById('clear-dates-calendar-button').focus({preventScroll:true}); 1344 } else { 1345 document.getElementById('departinput').focus({preventScroll:true}); 1346 } 1347 } 1348 } 1349 //Let the parent instance know the keystroke is finished being evaluated 1350 this.$emit('emit-keystrokecomplete'); 1351 }, 1352 flexDegree: { 1353 immediate: true, 1354 handler: function () { 1355 //Let the parent instance know the keystroke is finished being evaluated 1356 var flexDegree = this.flexDegree; 1357 this.$emit('emit-newflexdegree', flexDegree); 1358 this.updateFlexSession(); 1359 } 1360 } 1361 }, 1362 }; 1363 const rtDateInputs = { 1364 template: '#rt-general-datepick-app', 1365 props: [], 1366 emits: ['update-dates', 'emit-newflexdegree'], 1367 data: function() { 1368 return { 1369 dateSelection: null, 1370 dragSelection: null, 1371 calendarVisible: false, 1372 spaceAboveInputs: false, // is there room above inputs to fit the calendar; false by default 1373 mobileInterfaceVisible: false, 1374 mobileDatesModal: false, 1375 navigateActive: false, 1376 navigationKeyStroke: null, 1377 windowWidth: 0, 1378 windowHeight: 0 1379 } 1380 }, 1381 computed: { 1382 isMobile: function() { 1383 if(this.windowWidth) { 1384 if(this.windowWidth <= 640) { 1385 return true; 1386 } else { 1387 return false;
1388 } 1389 } else { 1390 return null; 1391 } 1392 }, 1393 arriveDate: function () { 1394 if(this.dragSelection == null && this.dateSelection == null) { 1395 return null; 1396 } else if (this.dragSelection) { 1397 this.priceQuote = null; 1398 this.isAvailable = null; 1399 return this.dragSelection.start; 1400 } else if (this.dragSelection == null && this.dateSelection) { 1401 return this.dateSelection.start; 1402 } else { 1403 return null; 1404 } 1405 }, 1406 departDate: function () { 1407 if(this.dragSelection == null && this.dateSelection == null) { 1408 return null; 1409 } else if (this.dragSelection == null && this.dateSelection) { 1410 return this.dateSelection.end; 1411 } else { 1412 return null; 1413 } 1414 }, 1415 dateSelectionLabel: function dateSelectionLabel() { 1416 return JSON.stringify(this.dateSelection, null, '\t'); 1417 }, 1418 }, 1419 methods: { 1420 clearDates: function () { 1421 //Clear root element values 1422 this.dragSelection = null; 1423 this.dateSelection = null; 1424 //Clear child component values 1425 if(this.$refs.rtGenDatepicker) { 1426 this.$refs.rtGenDatepicker.dragRange = null; 1427 this.$refs.rtGenDatepicker.arriveDate = null; 1428 this.$refs.rtGenDatepicker.arriveMinDays = null; 1429 this.$refs.rtGenDatepicker.departDate = null; 1430 } 1431 this.openCalendar(); 1432 //emit the dates to the parent component 1433 this.$emit('update-dates', {'arrive': this.arriveDate, 'depart': this.departDate}); 1434 }, 1435 dateString: function dateString(MyDate) { 1436 if(MyDate) { 1437 return ('0' + (MyDate.getMonth()+1)).slice(-2) + '/' 1438 + ('0' + MyDate.getDate()).slice(-2) + '/' 1439 + MyDate.getFullYear(); 1440 } 1441 }, 1442 getWindowWidth: function(event) { 1443 this.windowWidth = document.documentElement.clientWidth; 1444 }, 1445 getWindowHeight: function(event) { 1446 this.windowHeight = document.documentElement.clientHeight; 1447 }, 1448 activateModal: function () { 1449 this.mobileInterfaceVisible = true; 1450 this.clearDates(); 1451 }, 1452 openCalendar: function () { 1453 this.calendarVisible = true; 1454 if (this.isMobile) { 1455 this.mobileDatesModal = true; 1456 } 1457 if(document.getElementById('rt-general-datepick').getBoundingClientRect().top > 500) { 1458 this.spaceAboveInputs = true; 1459 } 1460 }, 1461 closeCalendar: function () { 1462 this.spaceAboveInputs = false; 1463 this.mobileDatesModal = false; // Close the modal 1464 this.calendarVisible = false; 1465 }, 1466 outsideClick: function(e) { 1467 // If the mobile modal is active, let rt-modal handle its own closing 1468 if (this.mobileDatesModal) { 1469 return; 1470 } 1471 // Close the calendar when clicking outside 1472 this.closeCalendar(); 1473 }, 1474 newFlexDegree: function (flexDegree) { 1475 this.$emit('emit-newflexdegree', flexDegree); 1476 }, 1477 }, 1478 directives: { 1479 'click-outside': { 1480 mounted(el, binding, vnode) { 1481 el.clickOutsideEvent = function(event) { 1482 if (!(el === event.target || el.contains(event.target))) { 1483 binding.value(event, el); 1484 } 1485 }; 1486 document.body.addEventListener('click', el.clickOutsideEvent); 1487 }, 1488 unmounted(el) { 1489 document.body.removeEventListener('click', el.clickOutsideEvent); 1490 } 1491 }, 1492 }, 1493 watch: { 1494 selectMode: function selectMode() { 1495 this.dateSelection = null; 1496 }, 1497 //Whenever a depart date is defined, run the price call 1498 departDate: function() { 1499 if(this.arriveDate && this.departDate) { 1500 //emit the dates to the parent component
1501 this.$emit('update-dates', {'arrive': this.arriveDate, 'depart': this.departDate}); 1502 // Automatically close the calendar 1503 this.closeCalendar(); 1504 } 1505 } 1506 }, 1507 mounted: function() { 1508 if(this.arriveDate && this.departDate) { 1509 this.$refs.rtGenDatepicker.month = this.arriveDate.getMonth() +1; 1510 this.$refs.rtGenDatepicker.year = this.arriveDate.getFullYear(); 1511 this.$emit('update-dates', {'arrive': this.arriveDate, 'depart': this.departDate}); 1512 } 1513 // Add a window-resize event listener 1514 this.$nextTick(function() { 1515 window.addEventListener('resize', this.getWindowWidth); 1516 window.addEventListener('resize', this.getWindowHeight); 1517 1518 //Init 1519 this.getWindowWidth(); 1520 this.getWindowHeight(); 1521 }); 1522 }, 1523 beforeDestroy: function() { 1524 window.removeEventListener('resize', this.getWindowWidth); 1525 window.removeEventListener('resize', this.getWindowHeight); 1526 }, 1527 }; 1528</script>
1528<template id="rt-modal"> 1529 <Teleport to="body"> 1530 <div class="rt-modal popover-mask"> 1531 <div class="popover-wrapper"> 1532 <div class="popover" :style="{maxWidth: maxWidth}"> 1533 <button class="popover-close" @click.prevent="$emit('close-modal')" @keydown.enter.prevent="$emit('close-modal')" aria-label="Close the popup window"><i role="presentation" class="rt-google-icon close-window filled-symbol"></i></button> 1534 <span class="sr-only" role="alert" aria-label="You have opened a modal window. You can press the escape key at any time to close this modal window."></span> 1535 <slot/> 1536 </div> 1537 </div> 1538 </div> 1539 </Teleport> 1540</template>
1541<script> 1542 const rtModal = { 1543 template: '#rt-modal', 1544 props: { 1545 maxWidth: { 1546 type: String, 1547 default: '700px' 1548 }, 1549 }, 1550 emits: ['close-modal'], 1551 methods: { 1552 resizeModal: function () { 1553 if(document.getElementsByClassName('popover-mask')[0] !== undefined) { 1554 document.getElementsByClassName('popover-mask')[0].style.height = "100vh"; 1555 document.getElementsByClassName('popover-mask')[0].style.width = "100%"; 1556 } 1557 }, 1558 escapeClose: function (event) { 1559 if(event.key === 'Escape') { 1560 this.$emit('close-modal'); 1561 } 1562 } 1563 }, 1564 mounted: function () { 1565 // add window resize event to deal with screen rotation, and the shrinking address bar on iOS 1566 window.addEventListener('resize', this.resizeModal); 1567 // add escape key listener 1568 document.addEventListener('keyup', this.escapeClose) 1569 }, 1570 unmounted: function () { 1571 // remove escape key listener 1572 document.removeEventListener('keyup', this.escapeClose); 1573 }, 1574 beforeDestroy: function () { 1575 window.removeEventListener('resize', this.resizeModal); 1576 }, 1577 }; 1578</script>
1578<script> 1579 const rtQuickSearch = Vue.createApp({ 1580 data() { 1581 return { 1582 searchCriteria: { 1583 arriveDate: null, 1584 departDate: null, 1585 selectBoxes: [], 1586 }, 1587 windowWidth: 0 1588 } 1589 }, 1590 computed: { 1591 urlQuerystring: function () { 1592 var queryString = '?searchform=1'; 1593 // Build up the dates part of the URL string 1594 if(this.searchCriteria.arriveDate && this.searchCriteria.departDate) { 1595 var datesString = ''; 1596 var arriveString = ''; 1597 var departString = ''; 1598 var arriveMonth = this.searchCriteria.arriveDate.getMonth() +1; 1599 var arriveDay = this.searchCriteria.arriveDate.getDate(); 1600 var arriveYear = this.searchCriteria.arriveDate.getFullYear(); 1601 arriveString = arriveMonth + '/' + arriveDay + '/' + arriveYear; 1602 var departMonth = this.searchCriteria.departDate.getMonth() +1; 1603 var departDay = this.searchCriteria.departDate.getDate(); 1604 var departYear = this.searchCriteria.departDate.getFullYear(); 1605 departString = departMonth + '/' + departDay + '/' + departYear; 1606 datesString = '&arrive_date=' + arriveString + '&depart_date=' + departString; 1607 queryString += datesString; 1608 } 1609 // Loop over every other defined option 1610 for(var i = 0; i < this.searchCriteria.selectBoxes.length; i++) { 1611 var optionString = ''; 1612 if(this.searchCriteria.selectBoxes[i].selected) { 1613 optionString = '&' + this.searchCriteria.selectBoxes[i].label + '=' + this.searchCriteria.selectBoxes[i].selected; 1614 queryString += optionString; 1615 } 1616 } 1617 return encodeURI(queryString).replace(/[\/]/g, '%2F'); 1618 } 1619 }, 1620 methods: { 1621 newDates: function (dates) { 1622 this.searchCriteria.arriveDate = dates.arrive; 1623 this.searchCriteria.departDate = dates.depart; 1624 }, 1625 performSearch: function () { 1626 window.location.href = 'https://www.islandvacationproperties.com/vacation-rentals' + '/results/' + this.urlQuerystring; 1627 }, 1628 getWindowWidth: function(event) { 1629 this.windowWidth = window.innerWidth; 1630 }, 1631 }, 1632 mounted: function() { 1633 // Add a window-resize event listener 1634 window.addEventListener('resize', this.getWindowWidth); 1635 this.getWindowWidth(); 1636 }, 1637 beforeDestroy: function() { 1638 window.removeEventListener('resize', this.getWindowWidth); 1639 }, 1640 }); 1641 // register the components and mount the app 1642 rtQuickSearch.component('general-date-range-picker', generalCalendar); 1643 rtQuickSearch.component('datepick-inputs', rtDateInputs); 1644 rtQuickSearch.component('rt-modal', rtModal); 1645 rtQuickSearch.mount('#qsformroot'); 1646</script>
1646 1647 </div> 1648
1649<script> 1650 jQuery(".menu-item-has-children a").focus(function(){ 1651 jQuery(this).next(".sub-menu").addClass("focusSubmenu"); 1652 jQuery(this).closest('ul').find('li.menu-item-has-children > a').attr('aria-expanded', function (i, attr) { 1653 return attr == 'true' ? 'false' : 'true' 1654 }); 1655 }); 1656 jQuery("ul li:last-of-type").focusout(function(){ 1657 jQuery(this).closest(".sub-menu").removeClass("focusSubmenu"); 1658 jQuery(this).closest('.nav').find('li.menu-item-has-children > a').attr('aria-expanded', function (i, attr) { 1659 return attr == 'false' ? 'true' : 'false' 1660 }); 1661 }); 1662</script>
1662 <div class="content"> 1663 <div class="content-full contained"> 1664 <main role="main" aria-label="main content" id="post-114"> 1665 <div role="complementary" class="content-full"> 1666 <h1 class="page-title">Contact Us</h1> 1667 </div> 1668 <article class="entry"> 1669 1670<p class="has-medium-font-size wp-block-paragraph">We would like the opportunity to provide you with more information. Please fill in the simple form below and we will get back to you shortly. </p> 1671 1672 1673 1674<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-7387b849 wp-block-columns-is-layout-flex"> 1675<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow"> 1676<iframe src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d160171.66834514317!2d-82.80773190697113!3d27.49019547331247!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x88c311b0c164909d%3A0x1e683ab6cb7e04de!2sIsland%20Vacation%20Properties%20-%20Anna%20Maria%20Island%2C%20FL!5e0!3m2!1sen!2sus!4v1576618450246!5m2!1sen!2sus" width="100%" height="650" frameborder="0" style="border:0;" allowfullscreen=""></iframe> 1677</div> 1678 1679 1680 1681<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow"> 1682 <div class='gf_browser_chrome gform_wrapper gform_legacy_markup_wrapper gform-theme--no-framework' data-form-theme='legacy' data-form-index='0' id='gform_wrapper_4' style='display:none'><div id='gf_4' class='gform_anchor' tabindex='-1'></div><form method='post' enctype='multipart/form-data' id='gform_4' action='/contact/#gf_4' data-formid='4' novalidate><div class='gf_invisible ginput_recaptchav3' data-sitekey='6LeDap0tAAAAAH8QvJNFDOpBZOagZYajMX8m-Iiv' data-tabindex='0'><input id="input_1c9cb9763a57953039690a5d3630d98b" class="gfield_recaptcha_response" type="hidden" name="input_1c9cb9763a57953039690a5d3630d98b" value=""/></div> 1683 <div class='gform-body gform_body'><ul id='gform_fields_4' class='gform_fields top_label form_sublabel_below description_below validation_below'><li id="field_4_22" class="gfield gfield--type-honeypot gform_validation_container field_sublabel_below gfield--has-description field_description_below field_validation_below gfield_visibility_visible" ><label class='gfield_label gform-field-label' for='input_4_22'><span class='gform-field-label__text'>X/Twitter</span></label><div class='ginput_container'><input name='input_22' id='input_4_22' type='text' value='' autocomplete='new-password'/></div><div class='gfield_description' id='gfield_description_4_22'>This field is for validation purposes and should be left unchanged.</div></li><li id="field_4_6" class="gfield gfield--type-text contact-fields gf_left_half gfield_contains_required field_sublabel_below gfield--no-description field_description_below hidden_label field_validation_below gfield_visibility_visible" ><label class='gfield_label gform-field-label screen-reader-text' for='input_4_6'><span class='gform-field-label__text'>Name</span><span class="gfield_required"><span class="gfield_required gfield_required_asterisk">*</span></span></label><div class='ginput_container ginput_container_text'><input name='input_6' id='input_4_6' type='text' value='' class='large' placeholder='Name' aria-required="true" aria-invalid="false" /></div></li><li id="field_4_5" class="gfield gfield--type-email contact-fields gf_right_half gfield_contains_required field_sublabel_below gfield--no-description field_description_below hidden_label field_validation_below gfield_visibility_visible" ><label class='gfield_label gform-field-label screen-reader-text' for='input_4_5'><span class='gform-field-label__text'>Email</span><span class="gfield_required"><span class="gfield_required gfield_required_asterisk">*</span></span></label><div class='ginput_container ginput_container_email'> 1684 <input name='input_5' id='input_4_5' type='email' value='' class='large' placeholder='Email' aria-required="true" aria-invalid="false" /> 1685 </div></li><li id="field_4_2" class="gfield gfield--type-phone gfield--phone-format-standard contact-fields field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible" ><label class='gfield_label gform-field-label screen-reader-text' for='input_4_2'><span class='gform-field-label__text'>Phone</span></label><div class='ginput_container ginput_container_phone'><input name='input_2' id='input_4_2' type='tel' value='' class='large' placeholder='Phone' aria-invalid="false" data-mask="(999) 999-9999" /></div></li><li id="field_4_11" class="gfield gfield--type-radio gfield--type-choice field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible gfield--choice-align-vertical" ><label class='gfield_label gform-field-label' ><span class='gform-field-label__text'>What can we help you with today?</span></label><div class='ginput_container ginput_container_radio'><ul class='gfield_radio' id='input_4_11'> 1686 <li class='gchoice gchoice_4_11_0'> 1687 <input name='input_11' type='radio' value='Island Vacation Properties Vacation Rentals' id='choice_4_11_0' /> 1688 <label for='choice_4_11_0' id='label_4_11_0' class='gform-field-label gform-field-label--type-inline'>Island Vacation Properties Vacation Rentals</label> 1689 </li> 1690 <li class='gchoice gchoice_4_11_1'> 1691 <input name='input_11' type='radio' value='Island Vacation Properties Real Estate' id='choice_4_11_1' /> 1692 <label for='choice_4_11_1' id='label_4_11_1' class='gform-field-label gform-field-label--type-inline'>Island Vacation Properties Real Estate</label> 1693 </li> 1694 <li class='gchoice gchoice_4_11_2'> 1695 <input name='input_11' type='radio' value='Island Vacation Properties Property Management' id='choice_4_11_2' /> 1696 <label for='choice_4_11_2' id='label_4_11_2' class='gform-field-label gform-field-label--type-inline'>Island Vacation Properties Property Management</label> 1697 </li> 1698 <li class='gchoice gchoice_4_11_3'> 1699 <input name='input_11' type='radio' value='All of the Above - Please contact me with information' checked='checked' id='choice_4_11_3' /> 1700 <label for='choice_4_11_3' id='label_4_11_3' class='gform-field-label gform-field-label--type-inline'>All of the Above – Please contact me with information</label> 1701 </li></ul></div></li><li id="field_4_17" class="gfield gfield--type-text gf_left_half field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible" ><label class='gfield_label gform-field-label' for='input_4_17'><span class='gform-field-label__text'>Name of Rental Property</span></label><div class='ginput_container ginput_container_text'><input name='input_17' id='input_4_17' type='text' value='' class='medium' placeholder='leave blank if unknown' aria-invalid="false" /></div></li><li id="field_4_18" class="gfield gfield--type-radio gfield--type-choice gf_right_half field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible gfield--choice-align-vertical" ><label class='gfield_label gform-field-label' ><span class='gform-field-label__text'>Do you require multiple units?</span></label><div class='ginput_container ginput_container_radio'><ul class='gfield_radio' id='input_4_18'> 1702 <li class='gchoice gchoice_4_18_0'> 1703 <input name='input_18' type='radio' value='Yes' id='choice_4_18_0' /> 1704 <label for='choice_4_18_0' id='label_4_18_0' class='gform-field-label gform-field-label--type-inline'>Yes</label> 1705 </li> 1706 <li class='gchoice gchoice_4_18_1'> 1707 <input name='input_18' type='radio' value='No' id='choice_4_18_1' /> 1708 <label for='choice_4_18_1' id='label_4_18_1' class='gform-field-label gform-field-label--type-inline'>No</label> 1709 </li> 1710 <li class='gchoice gchoice_4_18_2'> 1711 <input name='input_18' type='radio' value='I don't know' id='choice_4_18_2' /> 1712 <label for='choice_4_18_2' id='label_4_18_2' class='gform-field-label gform-field-label--type-inline'>I don’t know</label> 1713 </li></ul></div></li>
1713<li id="field_4_16" class="gfield gfield--type-date gfield--input-type-datepicker gfield--datepicker-default-icon gf_left_third field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible" ><label class='gfield_label gform-field-label' for='input_4_16'><span class='gform-field-label__text'>Date</span></label><div class='ginput_container ginput_container_date'> 1714 <input 1715 placeholder='mm/dd/yyyy' 1716 id='input_4_16' 1717 class='datepicker gform-datepicker mdy datepicker_with_icon gdatepicker_with_icon' 1718 type='text' 1719 name='input_16' 1720 value='' 1721 1722 aria-invalid="false" 1723 1724 1725 1726 data-mask="99/99/9999" 1727 /> 1728 <kbd id='keyboardHint_input_4_16' hidden class='down'></kbd> 1729 <button type='button' id='datepicker_toggle_input_4_16' class='gform-datepicker-toggle gform-datepicker-toggle--default accCalendar aria-date-picker gform-button gform-theme-button gform-theme-button--simple gform-theme-button--simple-in-ctrl' aria-expanded='false' aria-controls='input_4_16' aria-label='Date: Choose date on calendar' > 1730 <span class="gform-calendar-icon gform-datepicker-toggle-icon gform-datepicker-toggle-icon--default dashicons dashicons-calendar-alt" aria-hidden="true"></span> 1731 </button> 1732 </div></li><li id="field_4_15" class="gfield gfield--type-number gf_middle_third field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible" ><label class='gfield_label gform-field-label' for='input_4_15'><span class='gform-field-label__text'>How many Nights ?</span></label><div class='ginput_container ginput_container_number'><input name='input_15' id='input_4_15' type='text' step='any' min='2' value='' class='medium' aria-invalid="false" aria-describedby="gfield_instruction_4_15" /><div class='gfield_description instruction ' id='gfield_instruction_4_15'>Please enter a number greater than or equal to <strong>2</strong>.</div></div></li><li id="field_4_14" class="gfield gfield--type-number gf_right_third field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible" ><label class='gfield_label gform-field-label' for='input_4_14'><span class='gform-field-label__text'>How many Guests ?</span></label><div class='ginput_container ginput_container_number'><input name='input_14' id='input_4_14' type='text' step='any' min='1' value='' class='medium' aria-invalid="false" aria-describedby="gfield_instruction_4_14" /><div class='gfield_description instruction ' id='gfield_instruction_4_14'>Please enter a number greater than or equal to <strong>1</strong>.</div></div></li><li id="field_4_19" class="gfield gfield--type-checkbox gfield--type-choice gf_left_half field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible gfield--choice-align-vertical" ><label class='gfield_label gform-field-label gfield_label_before_complex' ><span class='gform-field-label__text'>Will you be bringing a pet?</span></label><div class='ginput_container ginput_container_checkbox'><ul class='gfield_checkbox' id='input_4_19'><li class='gchoice gchoice_4_19_1'> 1733 <input class='gfield-choice-input' name='input_19.1' type='checkbox' value='Yes' id='choice_4_19_1' /> 1734 <label for='choice_4_19_1' id='label_4_19_1' class='gform-field-label gform-field-label--type-inline'>Yes</label> 1735 </li><li class='gchoice gchoice_4_19_2'> 1736 <input class='gfield-choice-input' name='input_19.2' type='checkbox' value='No' id='choice_4_19_2' /> 1737 <label for='choice_4_19_2' id='label_4_19_2' class='gform-field-label gform-field-label--type-inline'>No</label> 1738 </li></ul></div></li><li id="field_4_20" class="gfield gfield--type-checkbox gfield--type-choice gf_right_half field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible gfield--choice-align-vertical" ><label class='gfield_label gform-field-label gfield_label_before_complex' ><span class='gform-field-label__text'>Would you like to be added to our mailing list?</span></label>
1738<div class='ginput_container ginput_container_checkbox'><ul class='gfield_checkbox' id='input_4_20'><li class='gchoice gchoice_4_20_1'> 1739 <input class='gfield-choice-input' name='input_20.1' type='checkbox' value='Yes' id='choice_4_20_1' /> 1740 <label for='choice_4_20_1' id='label_4_20_1' class='gform-field-label gform-field-label--type-inline'>Yes</label> 1741 </li><li class='gchoice gchoice_4_20_2'> 1742 <input class='gfield-choice-input' name='input_20.2' type='checkbox' value='No' id='choice_4_20_2' /> 1743 <label for='choice_4_20_2' id='label_4_20_2' class='gform-field-label gform-field-label--type-inline'>No</label> 1744 </li></ul></div></li><li id="field_4_8" class="gfield gfield--type-html gfield_html gfield_html_formatted gfield_no_follows_desc field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible" ><h3>How May We Help You?</h3> 1745<p>So that we may better serve you, please give us as much information about your vacation as possible. For example, how many guests are coming, when do you wish to stay, or what amenities or activities are important to you.</p></li><li id="field_4_12" class="gfield gfield--type-html gfield_html gfield_html_formatted gfield_no_follows_desc field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible" ><h3>How May We Help You?</h3> 1746<p>So that we may better serve you, please give us as much information about your Property Management needs as possible or fill out our <a href="/contact-property-management/">Property Management Inquiry</a>.</p></li><li id="field_4_10" class="gfield gfield--type-html gfield_html gfield_html_formatted gfield_no_follows_desc field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible" ><h3>How May We Help You?</h3> 1747<p>So that we may better serve you, please give us as much information about your real estate needs as possible. For example, what areas around Florida are you looking at? What type of property are you interested in? What type of features and amenities are important to you?</p></li><li id="field_4_21" class="gfield gfield--type-html gfield_html gfield_html_formatted gfield_no_follows_desc field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible" ><h3>How May We Help You?</h3> 1748<p>So that we may better serve you, please give us as much information about your Real Estate & Vacation Rentals needs as possible. Someone from our friendly staff will follow up with you as soon as possible.</p></li><li id="field_4_4" class="gfield gfield--type-textarea contact-fields field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible" ><label class='gfield_label gform-field-label screen-reader-text' for='input_4_4'><span class='gform-field-label__text'></span></label><div class='ginput_container ginput_container_textarea'><textarea name='input_4' id='input_4_4' class='textarea large' aria-invalid="false" rows='10' cols='50'></textarea></div></li></ul></div> 1749 <div class='gform-footer gform_footer top_label'> <button type='submit' id='gform_submit_button_4' class='gform_button button' onclick='gform.submission.handleButtonClick(this);' data-submission-type='submit' >Send Message</button> 1750 <input type='hidden' class='gform_hidden' name='gform_submission_method' data-js='gform_submission_method_4' value='postback' /> 1751 <input type='hidden' class='gform_hidden' name='gform_theme' data-js='gform_theme_4' id='gform_theme_4' value='legacy' /> 1752 <input type='hidden' class='gform_hidden' name='gform_style_settings' data-js='gform_style_settings_4' id='gform_style_settings_4' value='{"inputPrimaryColor":"#204ce5"}' /> 1753 <input type='hidden' class='gform_hidden' name='is_submit_4' value='1' /> 1754 <input type='hidden' class='gform_hidden' name='gform_submit' value='4' /> 1755 1756 <input type='hidden' class='gform_hidden' name='gform_currency' data-currency='USD' value='EKn5Sf50eCe4HwMg16bvy26XZBiFWE80aADv1TFQhuPXPGnWybFfmxUowV4A2t3fcwf0R0CTwniqrUXxUmnNH90hDbbZLovV9gHHV+hjxxFKggI=' /> 1757 <input type='hidden' class='gform_hidden' name='gform_unique_id' value='' /> 1758 <input type='hidden' class='gform_hidden' name='state_4' value='WyJ7XCJnZm9ybV9zdWJtaXNzaW9uX21ldGhvZFwiOltcIjcxOTc2NzZjMzA4OWIyZjdlMTY0ZWRkMTJlZTY1ZmU1XCIsXCI0N2ExNDZlMGNiZDlhZWE4NjlhNGFjOGU2ZDgxMTIxYlwiXSxcImdmb3JtX3RoZW1lXCI6XCJhMjA2MTczOWM5NmJkN2NiM2YxMzc5ZjcxOTU5NzFmOFwiLFwiZ2Zvcm1fc3R5bGVfc2V0dGluZ3NcIjpcIjJiODMwNzM5YmNmZWQwODNhNDQzMzA5OWUyNzZiZTVlXCIsXCJmb3JtX2lkXCI6XCIxYzFkYWVlMTdkNTEwNGZmYjhlMmZjZDczNTJmODk3Y1wiLFwidXJsXCI6XCJkYmViMTU3YTNmNjY3MzNiNGQyODhlNTgxZmFkODFlMVwiLFwic3RhdGVfdGltZXN0YW1wXCI6XCI3MzhjN2EwOTkzYzY5MjE0ZDY4ZjMzYjBkYmI0YjFjMlwifSIsImY3ZmQ5Yjg1ZDljOTUxYzVmNjc0ODAxNmNiZDVkN2RiIiwxNzkxNDU2OTA5XQ==' /> 1759 <input type='hidden' autocomplete='off' class='gform_hidden' name='gform_target_page_number_4' id='gform_target_page_number_4' value='0' /> 1760 <input type='hidden' autocomplete='off' class='gform_hidden' name='gform_source_page_number_4' id='gform_source_page_number_4' value='1' /> 1761 <input type='hidden' name='gform_field_values' value='' /> 1762 1763 </div> 1764 <p style="display: none !important;" class="akismet-fields-container" data-prefix="ak_"><label>Δ<textarea name="ak_hp_textarea" cols="45" rows="8" maxlength="100"></textarea></label><input type="hidden" id="ak_js_2" name="ak_js" value="194"/>
1764<script> 1765document.getElementById( "ak_js_2" ).setAttribute( "value", ( new Date() ).getTime() ); 1766</script>
1766 1767</p></form> 1768 </div></div> 1769</div> 1770 1771 1772 <div class="flex-container logo-bar" class="align wp-block-acf-logobar" style="background:#ffffff;"> 1773 <div class="logo-bar-logos contained"> 1774 <img loading="lazy" decoding="async" width="226" height="91" src="https://www.islandvacationproperties.com/wp-content/uploads/2026/09/logo-VRMA.jpg" class="attachment-small size-small" alt="logo-VRMA" /><img loading="lazy" decoding="async" width="250" height="107" src="https://www.islandvacationproperties.com/wp-content/uploads/2026/09/logo-ManateeChamber.jpg" class="attachment-small size-small" alt="logo-ManateeChamber" /><img loading="lazy" decoding="async" width="500" height="500" src="https://www.islandvacationproperties.com/wp-content/uploads/2026/09/chamber.jpg" class="attachment-small size-small" alt="chamber" srcset="https://www.islandvacationproperties.com/wp-content/uploads/2026/09/chamber.jpg 500w, https://www.islandvacationproperties.com/wp-content/uploads/2026/09/chamber-300x300.jpg 300w" sizes="auto, (max-width: 500px) 100v
1774w, 500px" /> </div> 1775 </div> 1776 </article> 1777 <div class="clear"></div> 1778 </main> 1779 </div> 1780 </div> 1781 <section aria-label="content above footer" role="complementary" class="ft-top white-text"><div class="above-footer-grid contained"><div class="above-footer-column"><div class="above-footer-block footer-block--logo"><img width="296" height="146" src="https://www.islandvacationproperties.com/wp-content/uploads/2026/09/whitelogo.png" class="rtfooterlogo" alt="Island Vacation Properties Logo" style="max-width:210px;" decoding="async" loading="lazy" /></div><div class="above-footer-block footer-block--contact"><div><strong>Island Vacation Properties</strong><br>3001 Gulf Drive<br />Holmes Beach, FL 34217<br><br><a href="tel:(941) 7781000">(941) 778-1000</a></div></div><div class="above-footer-block footer-block--social"><div class="above-footer-social-grid"><a href="https://www.facebook.com/islandvacationproperties/" target="_blank" rel="noopener" aria-label="opens in new window" title="Follow us on Facebook"><i role="presentation" class="rt-icon icon-facebook"></i></a></div></div></div><div class="above-footer-column"><div class="above-footer-block footer-block--menu"><div class="ft-column-title" role="heading" aria-level="4">Rental Links</div><div class="menu-footer-l-container"><ul id="menu-footer-l" class="menu"><li id="menu-item-139" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-139"><a href="https://www.islandvacationproperties.com/pool-properties/">Rentals With Pool</a></li><li id="menu-item-140" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-140"><a href="https://www.islandvacationproperties.com/long-weekend-rentals/">Weekend Vacation Rentals</a></li><li id="menu-item-158" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-158"><a href="https://www.islandvacationproperties.com/frequently-asked-questions/">FAQ</a></li><li id="menu-item-165" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-165"><a href="https://www.generalitravelinsurance.com/customer/coronavirus">Travel Insurance</a></li><li id="menu-item-5863" class="menu-item menu-item-type-post_type menu-item-object-rtc menu-item-5863"><a href="https://www.islandvacationproperties.com/vacation-rentals/terms-conditions/">Terms & Conditions</a></li><li id="menu-item-5204" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-privacy-policy menu-item-5204"><a rel="privacy-policy" href="https://www.islandvacationproperties.com/privacy-policy/">Privacy Policy</a></li></ul></div></div></div><div class="above-footer-column"><div class="above-footer-block footer-block--menu"><div class="ft-column-title" role="heading" aria-level="4">Other Links</div><div class="menu-footer-r-container"><ul id="menu-footer-r" class="menu"><li id="menu-item-142" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-142"><a href="https://islandvacationproperties.idxbroker.com/idx/search/advanced">MLS Search</a></li><li id="menu-item-143" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-143"><a href="https://islandvacationproperties.idxbroker.com/idx/featured">Our Listings</a></li><li id="menu-item-144" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-144"><a href="https://www.islandvacationproperties.com/anna-maria-island-real-estate-buyer-resources/">Home Buying Tips</a></li><li id="menu-item-145" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-145"><a href="https://www.islandvacationproperties.com/anna-maria-island-real-estate-seller-resources/">Home Selling Tips</a></li><li id="menu-item-149" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-149"><a href="https://islandvacationproperties.idxbroker.com/idx/mortgage">Mortgage Calculator</a></li><li id="menu-item-228" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-228"><a href="https://www.islandvacationproperties.com/meet-our-sales-agents/">Meet Our Sales Agents</a></li></ul></div></div></div><div class="above-footer-column"><div class="above-footer-block footer-block--gravity-form"><div class="ft-column-title" role="heading" aria-level="4">Sign Up For Our Newsletter</div><div style="flex: 1 1 auto;"><div class='gf_browser_chrome gform_wrapper gform_legacy_markup_wrapper gform-theme--no-framework' data-form-theme='legacy' data-form-index='0' id='gform_wrapper_3' ><div id='gf_3' class='gform_anchor' tabindex='-1'></div><div class='gform_heading'><p class='gform_description'>Stay in the know. Get exclusive offers straight to your inbox:</p></div><form method='post' enctype='multipart/form-data' target='gform_ajax_frame_3' id='gform_3'action='/contact/#gf_3' data-formid='3' novalidate><div class='gf_invisible ginput_recaptchav3' data-sitekey='6LeDap0tAAAAAH8QvJNFDOpBZOagZYajMX8m-Iiv' data-tabindex='0'><input id="input_758befbaf0db4f55f79edb12dec25966" class="gfield_recaptcha_response" type="hidden" name="input_758befbaf0db4f55f79edb12dec25966" value=""/></div><div class='gform-body gform_body'><ul id='gform_fields_3' class='gform_fields top_label form_sublabel_below description_below validation_below'><li id="field_3_4" class="gfield gfield--type-honeypot gform_validation_container field_sublabel_below gfield--has-description field_description_below field_validation_below gfield_visibility_visible"><label class='gfield_label gform-field-label' for='input_3_4'><span class='gform-field-label__text'>Email</span></label><div class='ginput_container'><input name='input_4' id='input_3_4' type='text' value='' autocomplete='new-password'/></div><div class='gfield_description' id='gfield_description_3_4'>This field is for validation purposes and should be left unchanged.</div></li>
1781<li id="field_3_1" class="gfield gfield--type-email gfield--input-type-email newsletter-form-field gfield_contains_required field_sublabel_below gfield--no-description field_description_below hidden_label field_validation_below gfield_visibility_visible"><label class='gfield_label gform-field-label' for='input_3_1'><span class='gform-field-label__text'>Email</span><span class="gfield_required"><span class="gfield_required gfield_required_asterisk">*</span></span></label><div class='ginput_container ginput_container_email'><input name='input_1' id='input_3_1' type='email' value='' class='large' placeholder='Your Email Address' aria-required="true" aria-invalid="false"/></div></li><li id="field_3_3" class="gfield gfield--type-name gfield--input-type-name gfield--width-full gfield_contains_required field_sublabel_hidden_label gfield--no-description field_description_below hidden_label field_validation_below gfield_visibility_visible"><label class='gfield_label gform-field-label gfield_label_before_complex' ><span class='gform-field-label__text'>Name</span><span class="gfield_required"><span class="gfield_required gfield_required_asterisk">*</span></span></label><div class='ginput_complex ginput_container ginput_container--name no_prefix has_first_name no_middle_name no_last_name no_suffix gf_name_has_1 ginput_container_name gform-grid-row' id='input_3_3'><span id='input_3_3_3_container' class='name_first gform-grid-col gform-grid-col--size-auto' ><input type='text' name='input_3.3' id='input_3_3_3' value='' aria-required='true' placeholder='Your Name'/><label for='input_3_3_3' class='gform-field-label gform-field-label--type-sub hidden_sub_label screen-reader-text'>First</label></span></div></li></ul></div><div class='gform-footer gform_footer top_label'> <button type='submit' id='gform_submit_button_3' class='gform_button button' onclick='gform.submission.handleButtonClick(this);' data-submission-type='submit' >Yes, Sign Me Up!</button> <input type='hidden' name='gform_ajax' value='form_id=3&title=&description=1&tabindex=0&theme=legacy&hash=d7aac58212932cf536521f9aa25fc1ec' /><input type='hidden' class='gform_hidden' name='gform_submission_method' data-js='gform_submission_method_3' value='iframe' /><input type='hidden' class='gform_hidden' name='gform_theme' data-js='gform_theme_3' id='gform_theme_3' value='legacy' /><input type='hidden' class='gform_hidden' name='gform_style_settings' data-js='gform_style_settings_3' id='gform_style_settings_3' value='' /><input type='hidden' class='gform_hidden' name='is_submit_3' value='1' /><input type='hidden' class='gform_hidden' name='gform_submit' value='3' /><input type='hidden' class='gform_hidden' name='gform_currency' data-currency='USD' value='vmsQxeniOceA5kaLf8Exd7aykbC64Ty3tEK9JlNomi1cAPqlQuXwZ2rF0nbbfJSB3JsK9ATtLE57aNMjcIayLjsGTb7p8x3PXvYctGtQtpSvsQ4=' /><input type='hidden' class='gform_hidden' name='gform_unique_id' value='' /><input type='hidden' class='gform_hidden' name='state_3' value='WyJ7XCJnZm9ybV9zdWJtaXNzaW9uX21ldGhvZFwiOltcIjcxOTc2NzZjMzA4OWIyZjdlMTY0ZWRkMTJlZTY1ZmU1XCIsXCI0N2ExNDZlMGNiZDlhZWE4NjlhNGFjOGU2ZDgxMTIxYlwiLFwiMWEzY2I0YjUwYTNlNDVhOWQ2ZjI0NTUwZDllNWEzOTZcIl0sXCJnZm9ybV90aGVtZVwiOlwiYTIwNjE3MzljOTZiZDdjYjNmMTM3OWY3MTk1OTcxZjhcIixcImdmb3JtX3N0eWxlX3NldHRpbmdzXCI6XCI4NTU1NWEwODIwNzY2OTgyNWEzMzlhNTMzYzkwNjAxNFwiLFwiZm9ybV9pZFwiOlwiNDI2YWY2ZWJjYzRmODYxMGM4NGYyNzhjZjFlMWUwODNcIixcInVybFwiOlwiZGJlYjE1N2EzZjY2NzMzYjRkMjg4ZTU4MWZhZDgxZTFcIixcInN0YXRlX3RpbWVzdGFtcFwiOlwiNzM4YzdhMDk5M2M2OTIxNGQ2OGYzM2IwZGJiNGIxYzJcIn0iLCJjYTFlN2MwMmMwZTQ2ZGM1NGNlZmNiNzkzN2E0MjJmNiIsMTc5MTQ1NjkwOV0=' /><input type='hidden' autocomplete='off' class='gform_hidden' name='gform_target_page_number_3' id='gform_target_page_number_3' value='0' /><input type='hidden' autocomplete='off' class='gform_hidden' name='gform_source_page_number_3' id='gform_source_page_number_3' value='1' /><input type='hidden' name='gform_field_values' value='' /></div><p style="display: none !important;" class="akismet-fields-container" data-prefix="ak_"><label>Δ<textarea name="ak_hp_textarea" cols="45" rows="8" maxlength="100"></textarea></label><input type="hidden" id="ak_js_3" name="ak_js" value="160"/>
1781<script>document.getElementById( "ak_js_3" ).setAttribute( "value", ( new Date() ).getTime() );</script>
1781</p></form></div><iframe style='display:none;width:0px;height:0px;' src='about:blank' name='gform_ajax_frame_3' id='gform_ajax_frame_3' title='This iframe contains the logic required to handle Ajax powered Gravity Forms.'></iframe>
1781<script>gform.initializeOnLoaded( function() {jQuery('#gform_ajax_frame_3').on('load',function(){var contents = jQuery(this).contents().find('*').html();var is_postback = contents.indexOf('GF_AJAX_POSTBACK') >= 0;if(!is_postback){return;}var form_content = jQuery(this).contents().find('#gform_wrapper_3');var is_confirmation = jQuery(this).contents().find('#gform_confirmation_wrapper_3').length > 0;var is_redirect = contents.indexOf('gformRedirect(){') >= 0;var is_form = form_content.length > 0 && ! is_redirect && ! is_confirmation;var mt = parseInt(jQuery('html').css('margin-top'), 10) + parseInt(jQuery('body').css('margin-top'), 10) + 100;if(is_form){jQuery('#gform_wrapper_3').html(form_content.html());if(form_content.hasClass('gform_validation_error')){jQuery('#gform_wrapper_3').addClass('gform_validation_error');} else {jQuery('#gform_wrapper_3').removeClass('gform_validation_error');}setTimeout( function() { /* delay the scroll by 50 milliseconds to fix a bug in chrome */ jQuery(document).scrollTop(jQuery('#gform_wrapper_3').offset().top - mt); }, 50 );var current_page = jQuery('#gform_source_page_number_3').val();jQuery(document).trigger('gform_page_loaded', [3, current_page]);window['gf_submitting_3'] = false;}else if(!is_redirect){var confirmation_content = jQuery(this).contents().find('.GF_AJAX_POSTBACK').html();if(!confirmation_content){confirmation_content = contents;}jQuery('#gform_wrapper_3').replaceWith(confirmation_content);jQuery(document).scrollTop(jQuery('#gf_3').offset().top - mt);jQuery(document).trigger('gform_confirmation_loaded', [3]);window['gf_submitting_3'] = false;wp.a11y.speak(jQuery('#gform_confirmation_message_3').text());}else{jQuery('#gform_3').append(contents);if(window['gformRedirect']) {gformRedirect();}}jQuery(document).trigger("gform_pre_post_render", [{ formId: "3", currentPage: "current_page", abort: function() { this.preventDefault(); } }]);if (event && event.defaultPrevented) {return;}const gformWrapperDiv = document.getElementById( "gform_wrapper_3" );if ( gformWrapperDiv ) {const visibilitySpan = document.createElement( "span" );visibilitySpan.id = "gform_visibility_test_3";gformWrapperDiv.insertAdjacentElement( "afterend", visibilitySpan );}const visibilityTestDiv = document.getElementById( "gform_visibility_test_3" );let postRenderFired = false;function triggerPostRender() {if ( postRenderFired ) {return;}postRenderFired = true;gform.core.triggerPostRenderEvents( 3, current_page );if ( visibilityTestDiv ) {visibilityTestDiv.parentNode.removeChild( visibilityTestDiv );}}function debounce( func, wait, immediate ) {var timeout;return function() {var context = this, args = arguments;var later = function() {timeout = null;if ( !immediate ) func.apply( context, args );};var callNow = immediate && !timeout;clearTimeout( timeout );timeout = setTimeout( later, wait );if ( callNow ) func.apply( context, args );};}const debouncedTriggerPostRender = debounce( function() {triggerPostRender();}, 200 );if ( visibilityTestDiv && visibilityTestDiv.offsetParent === null ) {const observer = new MutationObserver( ( mutations ) => {mutations.forEach( ( mutation ) => {if ( mutation.type === 'attributes' && visibilityTestDiv.offsetParent !== null ) {debouncedTriggerPostRender();observer.disconnect();}});});observer.observe( document.body, {attributes: true,childList: false,subtree: true,attributeFilter: [ 'style', 'class' ],});} else {triggerPostRender();}} );} );</script>
1781</div></div></div></div></section> <footer aria-label="footer" role="contentinfo" class="footer-wrap white-text"> 1782 <div class="footer contained"> 1783 <div class="footerleft">© Copyright 2026 Island Vacation Properties | <i>Anna Maria Island Vacation Rentals</i> <br><a href="https://www.islandvacationproperties.com/website-accessibility-policy/">Website Accessibility Policy</a> | <a href="https://www.islandvacationproperties.com/privacy-policy/">Privacy Policy</a> 1784 </div> 1785 <div class="footerright"><a href="//www.realtechvr.com" target="_blank" rel="nofollow noopener noreferrer" aria-label="opens in new window" title="Link for RealTech Webmasters"><i class="rt-icon icon-rt-circle-icon" aria-hidden="true"></i>Website Powered by RealTech Direct</a><br> 1786 This site is protected by reCAPTCHA and the Google 1787 <a href="https://policies.google.com/privacy">Privacy Policy</a> and 1788 <a href="https://policies.google.com/terms">Terms of Service</a> apply. 1789 </div> 1790 <div style="clear:both;"></div> 1791 <div class="footer-yapstone yapstone-terms">Powered by Yapstone Inc. | For disclosures and information about consumer complaints regarding your payments, please see: <a href="https://www.yapstone.com/legal-licenses/" target="_blank" rel="nofollow">https://www.yapstone.com/legal-licenses/</a></div> 1792 </div> 1793
1793<script src="https://cdn.userway.org/widget.js" data-account="WjewwfEzKf"></script>
1793 </footer> 1794 </div><!-- end .site-wrap --> 1795 </div> <!-- end content wrap --> 1796 1797 <div class="navclass nav"> 1798 <nav aria-label="Mobile Navigation" id="c-menu--push-left" class="c-menu c-menu--push-left"> 1799 <button class="c-menu__close">← Close Menu</button> 1800 <div id="nav-acc" class="menu-main-nav-container"><ul id="menu-main-nav-1" class="c-menu__items white-text"><li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-110"><a href="https://www.islandvacationproperties.com/vacation-rentals/results/?viewall" aria-haspopup="true" aria-expanded="false">Vacation Rentals</a><ul class="sub-menu"> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-5865"><a href="https://www.islandvacationproperties.com/vacation-rentals/results/?viewall">View All Rentals</a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-162"><a aria-haspopup="true" aria-expanded="false">Rentals By Amenity</a> <ul class="sub-menu"> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-691"><a href="https://www.islandvacationproperties.com/beachfront-rentals/">Beachfront</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-163"><a href="https://www.islandvacationproperties.com/pool-properties/">Rentals With Pool</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-189"><a href="https://www.islandvacationproperties.com/pet-friendly-rentals/">Pet Friendly</a></li> </ul></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-183"><a aria-haspopup="true" aria-expanded="false">Rentals By Community</a> <ul class="sub-menu"> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-186"><a href="https://www.islandvacationproperties.com/anna-maria-rentals/">City of Anna Maria</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-188"><a href="https://www.islandvacationproperties.com/holmes-beach-rentals/">Holmes Beach</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-187"><a href="https://www.islandvacationproperties.com/bradenton-beach-rentals/">Bradenton Beach</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-184"><a href="https://www.islandvacationproperties.com/main-land-rentals/">Mainland</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1179"><a href="https://www.islandvacationproperties.com/one-particular-harbour-rentals/">One Particular Harbour</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-295"><a href="https://www.islandvacationproperties.com/rentals-by-area/">All Rentals By Area</a></li> </ul></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-1672"><a aria-haspopup="true" aria-expanded="false">Rentals By Type</a> <ul class="sub-menu"> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1458"><a href="https://www.islandvacationproperties.com/house-rentals/">House Rentals</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1673"><a href="https://www.islandvacationproperties.com/anna-maria-island-condo-rentals/">Condo Rentals</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-164"><a href="https://www.islandvacationproperties.com/long-weekend-rentals/">Long Weekend Rentals</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2147"><a href="https://www.islandvacationproperties.com/anna-maria-island-monthly-rentals/">Monthly Rentals</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-4944"><a href="https://www.islandvacationproperties.com/duplex-and-fourplex-rentals/">Multi Unit Properties</a></li> </ul></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-873"><a aria-haspopup="true" aria-expanded="false">Rentals by Bedroom</a> <ul class="sub-menu"> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-874"><a href="https://www.islandvacationproperties.com/1-bedroom-rentals/">1 Bedroom</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-951"><a href="https://www.islandvacationproperties.com/2-bedroom-rentals/">2 Bedroom</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1009"><a href="https://www.islandvacationproperties.com/three-bedroom-rentals/">3 Bedroom</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1455"><a href="https://www.islandvacationproperties.com/four-bedroom-rentals/">4 Bedroom</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1454"><a href="https://www.islandvacationproperties.com/five-bedroom-rentals/">5+ Bedroom</a></li> </ul></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-240"><a href="https://www.islandvacationproperties.com/featured-properties/">Featured AMI Vacation Rentals</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-4125"><a href="https://www.islandvacationproperties.com/specials/">Specials</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-3654"><a href="https://www.islandvacationproperties.com/travel-insurance-information/">Travel Insurance Information</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-rtc menu-item-5751"><a href="https://www.islandvacationproperties.com/vacation-rentals/rentals-availability-calendar/">Availability Calendar</a></li></ul></li><li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-111">
1800<a href="https://islandvacationproperties.idxbroker.com/idx/featured" aria-haspopup="true" aria-expanded="false">Real Estate Sales</a><ul class="sub-menu"> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-146"><a href="https://islandvacationproperties.idxbroker.com/idx/search/advanced">Search MLS</a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-147"><a href="https://islandvacationproperties.idxbroker.com/idx/featured">Our Featured Listings</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-128"><a href="https://www.islandvacationproperties.com/anna-maria-island-real-estate-buyer-resources/">Home Buying Tips</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-129"><a href="https://www.islandvacationproperties.com/anna-maria-island-real-estate-seller-resources/">Home Selling Tips</a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-148"><a href="https://islandvacationproperties.idxbroker.com/idx/mortgage">Mortgage Calculator</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-227"><a href="https://www.islandvacationproperties.com/meet-our-sales-agents/">Meet Our Sales Agents</a></li></ul></li><li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-195"><a href="https://www.islandvacationproperties.com/property-management/" aria-haspopup="true" aria-expanded="false">Property Management</a><ul class="sub-menu"> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-106"><a href="https://www.islandvacationproperties.com/property-management/">List With IVP</a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-260"><a target="_blank" rel="noopener noreferrer" href="https://owner.escapia.com/dist/index.html#/login">Owner Log-In</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-199"><a href="https://www.islandvacationproperties.com/contact-property-management/">Contact Property Management</a></li></ul></li><li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-ancestor current-menu-parent menu-item-has-children menu-item-119"><a href="https://www.islandvacationproperties.com/about-island-vacation-properties/" aria-haspopup="true" aria-expanded="false">About Us</a><ul class="sub-menu"> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-5207"><a href="https://www.islandvacationproperties.com/about-island-vacation-properties/">Our Story</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-220"><a href="https://www.islandvacationproperties.com/meet-our-team/">Meet Our Rentals Team</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-159"><a href="https://www.islandvacationproperties.com/frequently-asked-questions/">Frequently Asked Questions</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-229"><a href="https://www.islandvacationproperties.com/driving-directions/">Driving Directions</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-114 current_page_item menu-item-117"><a href="https://www.islandvacationproperties.com/contact/" aria-current="page">Contact Us</a></li></ul></li><li class="last-link menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-120"><a href="https://www.islandvacationproperties.com/island-blog/" aria-haspopup="true" aria-expanded="false">Explore AMI</a><ul class="sub-menu"> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-107"><a href="https://www.islandvacationproperties.com/about-anna-maria-island/">Anna Maria Island History</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-108"><a href="https://www.islandvacationproperties.com/anna-maria-island-information/">City of Anna Maria</a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-122"><a target="_blank" href="/wp-content/uploads/2019/12/trolley-map.pdf">Free Trolley Map</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-4228"><a href="https://www.islandvacationproperties.com/island-blog/">Our Blog</a></li></ul></li></ul></div> </nav> 1801 </div> <!-- end div #nav --> 1802 <div style="clear:both;"></div> 1803 <div id="content-mask" class="content-mask"></div><!-- /content-mask --> 1804
1804<script type="speculationrules"> 1805{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/*"},{"not":{"href_matches":["/wp-*.php","/wp-admin/*","/wp-content/uploads/*","/wp-content/*","/wp-content/plugins/*","/wp-content/themes/rtapi/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]} 1806</script>
1806 1807<div 1808 id="pum-4776" 1809 role="dialog" 1810 aria-modal="false" 1811 aria-labelledby="pum_popup_title_4776" 1812 class="pum pum-overlay pum-theme-823 pum-theme-default-theme popmake-overlay pum-overlay-disabled auto_open click_open" 1813 data-popmake="{"id":4776,"slug":"newsletter-sign-up","theme_id":823,"cookies":[{"event":"on_popup_close","settings":{"name":"pum-4776","key":"","session":false,"path":"1","time":"1 month"}}],"triggers":[{"type":"auto_open","settings":{"cookie_name":["pum-4776"],"delay":"10000"}},{"type":"click_open","settings":{"extra_selectors":"","cookie_name":null}}],"mobile_disabled":null,"tablet_disabled":null,"meta":{"display":{"stackable":"1","overlay_disabled":"1","scrollable_content":false,"disable_reposition":false,"size":"small","responsive_min_width":"300px","responsive_min_width_unit":false,"responsive_max_width":"400px","responsive_max_width_unit":false,"custom_width":"300px","custom_width_unit":false,"custom_height":"px","custom_height_unit":false,"custom_height_auto":"1","location":"right bottom","position_from_trigger":false,"position_top":"100","position_left":"0","position_bottom":"10","position_right":"10","position_fixed":"1","animation_type":"slide","animation_speed":"350","animation_origin":"bottom","overlay_zindex":false,"zindex":"1999999999"},"close":{"text":"x","button_delay":"0","overlay_click":false,"esc_press":false,"f4_press":false},"click_open":[]}}"> 1814 1815 <div id="popmake-4776" class="pum-container popmake theme-823 pum-responsive pum-responsive-small responsive size-small pum-position-fixed"> 1816 1817 1818 <div id="pum_popup_title_4776" class="pum-title popmake-title"> 1819 Newsletter Sign Up </div> 1820 1821 1822 <div class="pum-content popmake-content" tabindex="0"> 1823 1824 <div class='gf_browser_chrome gform_wrapper gform_legacy_markup_wrapper gform-theme--no-framework' data-form-theme='legacy' data-form-index='0' id='gform_wrapper_10' ><div id='gf_10' class='gform_anchor' tabindex='-1'></div> 1825 <div class='gform_heading'> 1826 <p class='gform_description'>Stay in the know. Get exclusive offers straight to your inbox:</p> 1827 </div><form method='post' enctype='multipart/form-data' id='gform_10' action='/contact/#gf_10' data-formid='10' novalidate><div class='gf_invisible ginput_recaptchav3' data-sitekey='6LeDap0tAAAAAH8QvJNFDOpBZOagZYajMX8m-Iiv' data-tabindex='0'><input id="input_42285b71e9989e0d1c1db7eeb502e71f" class="gfield_recaptcha_response" type="hidden" name="input_42285b71e9989e0d1c1db7eeb502e71f" value=""/></div> 1828 <div class='gform-body gform_body'><ul id='gform_fields_10' class='gform_fields top_label form_sublabel_below description_below validation_below'><li id="field_10_4" class="gfield gfield--type-honeypot gform_validation_container field_sublabel_below gfield--has-description field_description_below field_validation_below gfield_visibility_visible" ><label class='gfield_label gform-field-label' for='input_10_4'><span class='gform-field-label__text'>Company</span></label><div class='ginput_container'><input name='input_4' id='input_10_4' type='text' value='' autocomplete='new-password'/></div><div class='gfield_description' id='gfield_description_10_4'>This field is for validation purposes and should be left unchanged.</div></li>
1828<li id="field_10_1" class="gfield gfield--type-email gfield--input-type-email newsletter-form-field gfield_contains_required field_sublabel_below gfield--no-description field_description_below hidden_label field_validation_below gfield_visibility_visible" ><label class='gfield_label gform-field-label' for='input_10_1'><span class='gform-field-label__text'>Email</span><span class="gfield_required"><span class="gfield_required gfield_required_asterisk">*</span></span></label><div class='ginput_container ginput_container_email'> 1829 <input name='input_1' id='input_10_1' type='email' value='' class='large' placeholder='Your Email Address' aria-required="true" aria-invalid="false" /> 1830 </div></li><li id="field_10_3" class="gfield gfield--type-name gfield--input-type-name gfield--width-full field_sublabel_hidden_label gfield--no-description field_description_below hidden_label field_validation_below gfield_visibility_visible" ><label class='gfield_label gform-field-label gfield_label_before_complex' ><span class='gform-field-label__text'>Name</span></label><div class='ginput_complex ginput_container ginput_container--name no_prefix has_first_name no_middle_name no_last_name no_suffix gf_name_has_1 ginput_container_name gform-grid-row' id='input_10_3'> 1831 1832 <span id='input_10_3_3_container' class='name_first gform-grid-col gform-grid-col--size-auto' > 1833 <input type='text' name='input_3.3' id='input_10_3_3' value='' aria-required='false' placeholder='Your Name' /> 1834 <label for='input_10_3_3' class='gform-field-label gform-field-label--type-sub hidden_sub_label screen-reader-text'>First</label> 1835 </span> 1836 1837 1838 1839 </div></li></ul></div> 1840 <div class='gform-footer gform_footer top_label'> <button type='submit' id='gform_submit_button_10' class='gform_button button' onclick='gform.submission.handleButtonClick(this);' data-submission-type='submit' >Yes, Sign Me Up!</button> 1841 <input type='hidden' class='gform_hidden' name='gform_submission_method' data-js='gform_submission_method_10' value='postback' /> 1842 <input type='hidden' class='gform_hidden' name='gform_theme' data-js='gform_theme_10' id='gform_theme_10' value='legacy' /> 1843 <input type='hidden' class='gform_hidden' name='gform_style_settings' data-js='gform_style_settings_10' id='gform_style_settings_10' value='[]' /> 1844 <input type='hidden' class='gform_hidden' name='is_submit_10' value='1' /> 1845 <input type='hidden' class='gform_hidden' name='gform_submit' value='10' /> 1846 1847 <input type='hidden' class='gform_hidden' name='gform_currency' data-currency='USD' value='2HlBMVlixjWK9K0JykZObuQVEyaoknNaHTr9SUDjrJAZkJ81CrJ7bU0FppVz5q69vHSg4Fguvr9sj8HM5+vjZZy1bvszU1wYwLQ94iW9GrmOH64=' /> 1848 <input type='hidden' class='gform_hidden' name='gform_unique_id' value='' /> 1849 <input type='hidden' class='gform_hidden' name='state_10' value='WyJ7XCJnZm9ybV9zdWJtaXNzaW9uX21ldGhvZFwiOltcIjcxOTc2NzZjMzA4OWIyZjdlMTY0ZWRkMTJlZTY1ZmU1XCIsXCI0N2ExNDZlMGNiZDlhZWE4NjlhNGFjOGU2ZDgxMTIxYlwiXSxcImdmb3JtX3RoZW1lXCI6XCJhMjA2MTczOWM5NmJkN2NiM2YxMzc5ZjcxOTU5NzFmOFwiLFwiZ2Zvcm1fc3R5bGVfc2V0dGluZ3NcIjpcImQ3MGU5ODhmOTY2ZjlhNDBkMzdhZGQyODY1ZTc4ZTBhXCIsXCJmb3JtX2lkXCI6XCJhZGE2N2NkNDU2OThlNDQxMmNhNDEwMDAwNDk2Y2M3N1wiLFwidXJsXCI6XCJkYmViMTU3YTNmNjY3MzNiNGQyODhlNTgxZmFkODFlMVwiLFwic3RhdGVfdGltZXN0YW1wXCI6XCI3MzhjN2EwOTkzYzY5MjE0ZDY4ZjMzYjBkYmI0YjFjMlwifSIsIjQ2MjRmMTI3YTk2MTJmYTdjM
1849DNkNWYyODdmZTU0YzU2IiwxNzkxNDU2OTA5XQ==' /> 1850 <input type='hidden' autocomplete='off' class='gform_hidden' name='gform_target_page_number_10' id='gform_target_page_number_10' value='0' /> 1851 <input type='hidden' autocomplete='off' class='gform_hidden' name='gform_source_page_number_10' id='gform_source_page_number_10' value='1' /> 1852 <input type='hidden' name='gform_field_values' value='' /> 1853 1854 </div> 1855 <p style="display: none !important;" class="akismet-fields-container" data-prefix="ak_"><label>Δ<textarea name="ak_hp_textarea" cols="45" rows="8" maxlength="100"></textarea></label><input type="hidden" id="ak_js_1" name="ak_js" value="24"/>
1855<script> 1856document.getElementById( "ak_js_1" ).setAttribute( "value", ( new Date() ).getTime() ); 1857</script>
1857 1858</p></form> 1859 </div> 1860 </div> 1861 1862 1863 <button type="button" class="pum-close popmake-close" aria-label="Close"> 1864 x </button> 1865 1866 </div> 1867 1868</div>
1869<script id="menu-js" src="https://www.islandvacationproperties.com/wp-content/themes/rtapi/js/menu.js?ver=1.0"></script>
vendor: 1 bytes, line 1869
1869
1870<script id="shrinkhead-js" src="https://www.islandvacationproperties.com/wp-content/themes/rtapi/js/shrinkhead.js?ver=1.0"></script>
vendor: 1 bytes, line 1870
1870
1871<script id="focus-visible-js" src="https://www.islandvacationproperties.com/wp-content/themes/rtapi/js/focus-visible.js?ver=5.1.0"></script>
vendor: 1 bytes, line 1871
1871
1872<script id="gforms_recaptcha_recaptcha-js-extra"> 1873var gforms_recaptcha_recaptcha_strings = {"nonce":"51bc720e2c","disconnect":"Disconnecting","change_connection_type":"Resetting","spinner":"https://www.islandvacationproperties.com/wp-content/plugins/gravityforms/images/spinner.svg","connection_type":"classic","disable_badge":"1","change_connection_type_title":"Change Connection Type","change_connection_type_message":"Changing the connection type will delete your current settings. Do you want to proceed?","disconnect_title":"Disconnect","disconnect_message":"Disconnecting from reCAPTCHA will delete your current settings. Do you want to proceed?","site_key":"6LeDap0tAAAAAH8QvJNFDOpBZOagZYajMX8m-Iiv"}; 1874//# sourceURL=gforms_recaptcha_recaptcha-js-extra 1875</script>
vendor: 127 bytes, lines 1875-1876
1875 1876<script data-wp-strategy="defer" defer id="gforms_recaptcha_recaptcha-js" src="https://www.google.com/recaptcha/api.js?render=
18766LeDap0tAAAAAH8QvJNFDOpBZOagZYajMX8m-Iiv
vendor: 27 bytes, line 1876
1876&ver=2.2.2"></script>
1877<script data-wp-strategy="defer" defer id="gforms_recaptcha_frontend-js" src="https://www.islandvacationproperties.com/wp-content/plugins/gravityformsrecaptcha/js/frontend.min.js?ver=2.2.2"></script>
vendor: 1 bytes, line 1877
1877
1878<script id="gform_placeholder-js" defer='defer' src="https://www.islandvacationproperties.com/wp-content/plugins/gravityforms/js/placeholders.jquery.min.js?ver=3.1.2"></script>
vendor: 1 bytes, line 1878
1878
1879<script id="gform_gravityforms_theme_vendors-js" defer='defer' src="https://www.islandvacationproperties.com/wp-content/plugins/gravityforms/assets/js/dist/vendor-theme.min.js?ver=0c901cb641ce64b99c20ea1a4d208cc9"></script>
vendor: 1 bytes, line 1879
1879
1880<script id="gform_gravityforms_theme-js-extra"> 1881var gform_theme_config = {"common":{"form":{"honeypot":{"version_hash":"19dbec403806d76761dede907ba49b18"},"ajax":{"ajaxurl":"https://www.islandvacationproperties.com/wp-admin/admin-ajax.php","ajax_submission_nonce":"7bb29140b0","i18n":{"step_announcement":"Step %1$s of %2$s, %3$s","unknown_error":"There was an unknown error processing your request. Please try again.","error_403":"The request was blocked (403 error) for unknown security reasons. Remove any code-like text (scripts or DB queries) and try again."}},"product_meta":[],"pagination":{"4":""}}},"hmr_dev":"","public_path":"https://www.islandvacationproperties.com/wp-content/plugins/gravityforms/assets/js/dist/","config_nonce":"114f76e95b"}; 1882//# sourceURL=gform_gravityforms_theme-js-extra 1883</script>
vendor: 1 bytes, line 1883
1883
1884<script id="gform_gravityforms_theme-js" defer='defer' src="https://www.islandvacationproperties.com/wp-content/plugins/gravityforms/assets/js/dist/scripts-theme.min.js?ver=e27d9712159624c99129c8c208f022ad"></script>
vendor: 1 bytes, line 1884
1884
1885<script defer id="akismet-frontend-js" src="https://www.islandvacationproperties.com/wp-content/plugins/akismet/_inc/akismet-frontend.js?ver=1787933035"></script>
vendor: 1 bytes, line 1885
1885
1886<script id="popup-maker-site-js-extra"> 1887var pum_vars = {"version":"1.25.0","pm_dir_url":"https://www.islandvacationproperties.com/wp-content/plugins/popup-maker/","ajaxurl":"https://www.islandvacationproperties.com/wp-admin/admin-ajax.php","restapi":"https://www.islandvacationproperties.com/wp-json/pum/v1","rest_nonce":null,"default_theme":"823","debug_mode":"","disable_tracking":"","disable_url_params":"","home_url":"/","message_position":"top","core_sub_forms_enabled":"1","popups":[],"cookie_domain":"","paramNames":{"popup_id":"pid","cta":"cta","notrack":"notrack"},"analytics_enabled":"1","analytics_route":"analytics","analytics_api":"https://www.islandvacationproperties.com/wp-json/pum/v1"}; 1888var pum_sub_vars = {"ajaxurl":"https://www.islandvacationproperties.com/wp-admin/admin-ajax.php","message_position":"top"}; 1889var pum_popups = {"pum-4776":{"triggers":[{"type":"auto_open","settings":{"cookie_name":["pum-4776"],"delay":"10000"}}],"cookies":[{"event":"on_popup_close","settings":{"name":"pum-4776","key":"","session":false,"path":"1","time":"1 month"}}],"disable_on_mobile":false,"disable_on_tablet":false,"explain":null,"type_section":null,"theme_id":"823","size":"small","responsive_min_width":"300px","responsive_max_width":"400px","custom_width":"300px","custom_height_auto":true,"custom_height":"px","scrollable_content":false,"animation_type":"slide","animation_speed":"350","animation_origin":"bottom","open_sound":"none","custom_sound":"","location":"right bottom","position_top":"100","position_bottom":"10","position_left":"0","position_right":"10","position_from_trigger":false,"position_fixed":true,"overlay_disabled":true,"stackable":true,"disable_reposition":false,"zindex":"1999999999","close_button_delay":"0","close_on_form_submission":false,"close_on_form_submission_delay":"0","close_on_overlay_click":false,"close_on_esc_press":false,"close_on_f4_press":false,"disable_form_reopen":false,"disable_accessibility":false,"theme_slug":"default-theme","id":4776,"slug":"newsletter-sign-up"}}; 1890//# sourceURL=popup-maker-site-js-extra 1891</script>
vendor: 1 bytes, line 1891
1891
1892<script id="popup-maker-site-js" src="//www.islandvacationproperties.com/wp-content/uploads/pum/pum-site-scripts.js?defer&generated=1787948090&ver=1.25.0"></script>
vendor: 1 bytes, line 1892
1892
1893<script id="wp-emoji-settings" type="application/json"> 1894{"baseUrl":"https://s.w.org/images/core/emoji/17.0.2/72x72/","ext":".png","svgUrl":"https://s.w.org/images/core/emoji/17.0.2/svg/","svgExt":".svg","source":{"concatemoji":"https://www.islandvacationproperties.com/wp-includes/js/wp-emoji-release.min.js?ver=7.1.3"}} 1895</script>
vendor: 1 bytes, line 1895
1895
1896<script type="module"> 1897/*! This file is auto-generated */ 1898var e="script#wp-emoji-settings",t=document.querySelector(e);if(!(t instanceof HTMLScriptElement))throw new Error("Element missing: "+e);const r=JSON.parse(t.text),s=(window._wpemojiSettings=r,"wpEmojiSettingsSupports"),o=["flag","emoji"];function i(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(s,JSON.stringify(t))}catch(e){}}function c(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0);const r=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);return t.every((e,t)=>e===r[t])}function p(e,t){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var n=e.getImageData(16,16,1,1);for(let e=0;e<n.data.length;e++)if(0!==n.data[e])return!1;return!0}function u(e,t,n,r){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\udde8\ud83c\uddf6","\ud83c\udde8\u200b\ud83c\uddf6")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!r(e,"\ud83e\u1fac8")}return!1}function f(e,t,n,r){let a;const s=(a="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):document.createElement("canvas")).getContext("2d",{willReadFrequently:!0}),o=(s.textBaseline="top",s.font="600 32px Arial",{});return e.forEach(e=>{o[e]=t(s,e,n,r)}),o}function a(e){var t=document.createElement("script");t.src=e,t.defer=!0,document.head.appendChild(t)}r.supports={everything:!0,everythingExceptFlag:!0},new Promise(t=>{let n=function(){try{var e=JSON.parse(sessionStorage.getItem(s));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(o),u.toString(),c.toString(),p.toString()].join(",")+"));",r=new Blob([e],{type:"text/javascript"});const a=new Worker(URL.createObjectURL(r),{name:"wpTestEmojiSupports"});return void(a.onmessage=e=>{i(n=e.data),a.terminate(),t(n)})}catch(e){}i(n=f(o,u,c,p))}t(n)}).then(e=>{for(const n in e)r.supports[n]=e[n],r.supports.everything=r.supports.everything&&r.supports[n],"flag"!==n&&(r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&r.supports[n]);var t;r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&!r.supports.flag,r.supports.everything||((t=r.source||{}).concatemoji?a(t.concatemoji):t.wpemoji&&t.twemoji&&(a(t.twemoji),a(t.wpemoji)))}); 1899//# sourceURL=https://www.islandvacationproperties.com/wp-includes/js/wp-emoji-loader.min.js 1900</script>
vendor: 1 bytes, line 1900
1900
1901<script> 1902gform.initializeOnLoaded( function() { jQuery(document).on('gform_post_render', function(event, formId, currentPage){if(formId == 10) {if(typeof Placeholders != 'undefined'){ 1903 Placeholders.enable(); 1904 }} } );jQuery(document).on('gform_post_conditional_logic', function(event, formId, fields, isInit){} ) } ); 1905</script>
vendor: 1 bytes, line 1905
1905
1906<script> 1907gform.initializeOnLoaded( function() {jQuery(document).trigger("gform_pre_post_render", [{ formId: "10", currentPage: "1", abort: function() { this.preventDefault(); } }]); if (event && event.defaultPrevented) { return; } const gformWrapperDiv = document.getElementById( "gform_wrapper_10" ); if ( gformWrapperDiv ) { const visibilitySpan = document.createElement( "span" ); visibilitySpan.id = "gform_visibility_test_10"; gformWrapperDiv.insertAdjacentElement( "afterend", visibilitySpan ); } const visibilityTestDiv = document.getElementById( "gform_visibility_test_10" ); let postRenderFired = false; function triggerPostRender() { if ( postRenderFired ) { return; } postRenderFired = true; gform.core.triggerPostRenderEvents( 10, 1 ); if ( visibilityTestDiv ) { visibilityTestDiv.parentNode.removeChild( visibilityTestDiv ); } } function debounce( func, wait, immediate ) { var timeout; return function() { var context = this, args = arguments; var later = function() { timeout = null; if ( !immediate ) func.apply( context, args ); }; var callNow = immediate && !timeout; clearTimeout( timeout ); timeout = setTimeout( later, wait ); if ( callNow ) func.apply( context, args ); }; } const debouncedTriggerPostRender = debounce( function() { triggerPostRender(); }, 200 ); if ( visibilityTestDiv && visibilityTestDiv.offsetParent === null ) { const observer = new MutationObserver( ( mutations ) => { mutations.forEach( ( mutation ) => { if ( mutation.type === 'attributes' && visibilityTestDiv.offsetParent !== null ) { debouncedTriggerPostRender(); observer.disconnect(); } }); }); observer.observe( document.body, { attributes: true, childList: false, subtree: true, attributeFilter: [ 'style', 'class' ], }); } else { triggerPostRender(); } } ); 1908</script>
vendor: 1 bytes, line 1908
1908
1909<script> 1910gform.initializeOnLoaded( function() { jQuery(document).on('gform_post_render', function(event, formId, currentPage){if(formId == 4) {gf_global["number_formats"][4] = {"6":{"price":false,"value":false},"5":{"price":false,"value":false},"2":{"price":false,"value":false},"11":{"price":false,"value":false},"17":{"price":false,"value":false},"18":{"price":false,"value":false},"16":{"price":false,"value":false},"15":{"price":false,"value":"decimal_comma"},"14":{"price":false,"value":"decimal_comma"},"19":{"price":false,"value":false},"20":{"price":false,"value":false},"8":{"price":false,"value":false},"12":{"price":false,"value":false},"10":{"price":false,"value":false},"21":{"price":false,"value":false},"4":{"price":false,"value":false}};if(window['jQuery']){if(!window['gf_form_conditional_logic'])window['gf_form_conditional_logic'] = new Array();window['gf_form_conditional_logic'][4] = { logic: { 17: {"field":{"actionType":"show","logicType":"all","rules":[{"fieldId":"11","operator":"is","value":"Island Vacation Properties Vacation Rentals"}]},"nextButton":null,"section":null},18: {"field":{"actionType":"show","logicType":"all","rules":[{"fieldId":"11","operator":"is","value":"Island Vacation Properties Vacation Rentals"}]},"nextButton":null,"section":null},16: {"field":{"actionType":"show","logicType":"all","rules":[{"fieldId":"11","operator":"is","value":"Island Vacation Properties Vacation Rentals"}]},"nextButton":null,"section":null},15: {"field":{"actionType":"show","logicType":"all","rules":[{"fieldId":"11","operator":"is","value":"Island Vacation Properties Vacation Rentals"}]},"nextButton":null,"section":null},14: {"field":{"actionType":"show","logicType":"all","rules":[{"fieldId":"11","operator":"is","value":"Island Vacation Properties Vacation Rentals"}]},"nextButton":null,"section":null},19: {"field":{"actionType":"show","logicType":"all","rules":[{"fieldId":"11","operator":"is","value":"Island Vacation Properties Vacation Rentals"}]},"nextButton":null,"section":null},20: {"field":{"actionType":"show","logicType":"all","rules":[{"fieldId":"11","operator":"is","value":"Island Vacation Properties Vacation Rentals"}]},"nextButton":null,"section":null},8: {"field":{"actionType":"show","logicType":"all","rules":[{"fieldId":"11","operator":"is","value":"Island Vacation Properties Vacation Rentals"}]},"nextButton":null,"section":null},12: {"field":{"actionType":"show","logicType":"all","rules":[{"fieldId":"11","operator":"is","value":"Island Vacation Properties Property Management"}]},"nextButton":null,"section":null},10: {"field":{"actionType":"show","logicType":"all","rules":[{"fieldId":"11","operator":"is","value":"Island Vacation Properties Real Estate"}]},"nextButton":null,"section":null},21: {"field":{"actionType":"show","logicType":"all","rules":[{"fieldId":"11","operator":"is","value":"All of the Above - Please contact me with information"}]},"nextButton":null,"section":null} }, dependents: { 17: [17],18: [18],16: [16],15: [15],14: [14],19: [19],20: [20],8: [8],12: [12],10: [10],21: [21] }, animation: 0, defaults: {"11":["choice_4_11_3"]}, fields: {"6":[],"5":[],"2":[],"11":[17,18,16,15,14,19,20,8,12,10,21],"17":[],"18":[],"16":[],"15":[],"14":[],"19":[],"20":[],"8":[],"12":[],"10":[],"21":[],"4":[]} }; if(!window['gf_number_format'])window['gf_number_format'] = 'decimal_dot';jQuery(document).ready(function(){gform.utils.trigger({ event: 'gform/conditionalLogic/init/start', native: false, data: { formId: 4, fields: null, isInit: true } });gf_apply_rules(4, [17,18,16,15,14,19,20,8,12,10,21], true);jQuery('#gform_wrapper_4').show();jQuery('#gform_wrapper_4 form').css('opacity', '');jQuery(document).trigger('gform_post_conditional_logic', [4, null, true]);gform.utils.trigger({ event: 'gform/conditionalLogic/init/end', native: false, data: { formId: 4, fields: null, isInit: true } });} );} if(typeof Placeholders != 'undefined'){ 1911 Placeholders.enable(); 1912 }} } );jQuery(document).on('gform_post_conditional_logic', function(event, formId, fields, isInit){} ) } ); 1913</script>
vendor: 1 bytes, line 1913
1913
1914<script> 1915gform.initializeOnLoaded( function() {jQuery(document).trigger("gform_pre_post_render", [{ formId: "4", currentPage: "1", abort: function() { this.preventDefault(); } }]); if (event && event.defaultPrevented) { return; } const gformWrapperDiv = document.getElementById( "gform_wrapper_4" ); if ( gformWrapperDiv ) { const visibilitySpan = document.createElement( "span" ); visibilitySpan.id = "gform_visibility_test_4"; gformWrapperDiv.insertAdjacentElement( "afterend", visibilitySpan ); } const visibilityTestDiv = document.getElementById( "gform_visibility_test_4" ); let postRenderFired = false; function triggerPostRender() { if ( postRenderFired ) { return; } postRenderFired = true; gform.core.triggerPostRenderEvents( 4, 1 ); if ( visibilityTestDiv ) { visibilityTestDiv.parentNode.removeChild( visibilityTestDiv ); } } function debounce( func, wait, immediate ) { var timeout; return function() { var context = this, args = arguments; var later = function() { timeout = null; if ( !immediate ) func.apply( context, args ); }; var callNow = immediate && !timeout; clearTimeout( timeout ); timeout = setTimeout( later, wait ); if ( callNow ) func.apply( context, args ); }; } const debouncedTriggerPostRender = debounce( function() { triggerPostRender(); }, 200 ); if ( visibilityTestDiv && visibilityTestDiv.offsetParent === null ) { const observer = new MutationObserver( ( mutations ) => { mutations.forEach( ( mutation ) => { if ( mutation.type === 'attributes' && visibilityTestDiv.offsetParent !== null ) { debouncedTriggerPostRender(); observer.disconnect(); } }); }); observer.observe( document.body, { attributes: true, childList: false, subtree: true, attributeFilter: [ 'style', 'class' ], }); } else { triggerPostRender(); } } ); 1916</script>
vendor: 1 bytes, line 1916
1916
1917<script> 1918gform.initializeOnLoaded( function() { jQuery(document).on('gform_post_render', function(event, formId, currentPage){if(formId == 3) {if(typeof Placeholders != 'undefined'){ 1919 Placeholders.enable(); 1920 }} } );jQuery(document).on('gform_post_conditional_logic', function(event, formId, fields, isInit){} ) } ); 1921</script>
vendor: 1 bytes, line 1921
1921
1922<script> 1923gform.initializeOnLoaded( function() {jQuery(document).trigger("gform_pre_post_render", [{ formId: "3", currentPage: "1", abort: function() { this.preventDefault(); } }]); if (event && event.defaultPrevented) { return; } const gformWrapperDiv = document.getElementById( "gform_wrapper_3" ); if ( gformWrapperDiv ) { const visibilitySpan = document.createElement( "span" ); visibilitySpan.id = "gform_visibility_test_3"; gformWrapperDiv.insertAdjacentElement( "afterend", visibilitySpan ); } const visibilityTestDiv = document.getElementById( "gform_visibility_test_3" ); let postRenderFired = false; function triggerPostRender() { if ( postRenderFired ) { return; } postRenderFired = true; gform.core.triggerPostRenderEvents( 3, 1 ); if ( visibilityTestDiv ) { visibilityTestDiv.parentNode.removeChild( visibilityTestDiv ); } } function debounce( func, wait, immediate ) { var timeout; return function() { var context = this, args = arguments; var later = function() { timeout = null; if ( !immediate ) func.apply( context, args ); }; var callNow = immediate && !timeout; clearTimeout( timeout ); timeout = setTimeout( later, wait ); if ( callNow ) func.apply( context, args ); }; } const debouncedTriggerPostRender = debounce( function() { triggerPostRender(); }, 200 ); if ( visibilityTestDiv && visibilityTestDiv.offsetParent === null ) { const observer = new MutationObserver( ( mutations ) => { mutations.forEach( ( mutation ) => { if ( mutation.type === 'attributes' && visibilityTestDiv.offsetParent !== null ) { debouncedTriggerPostRender(); observer.disconnect(); } }); }); observer.observe( document.body, { attributes: true, childList: false, subtree: true, attributeFilter: [ 'style', 'class' ], }); } else { triggerPostRender(); } } ); 1924</script>
1924 1925 1926 </body> 1927</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.