1<!DOCTYPE html> 2<!--[if IE 6]> 3<html id="ie6" lang="en-US"> 4<![endif]--> 5<!--[if IE 7]> 6<html id="ie7" lang="en-US"> 7<![endif]--> 8<!--[if IE 8]> 9<html id="ie8" lang="en-US"> 10<![endif]--> 11<!--[if !(IE 6) | !(IE 7) | !(IE 8) ]><!--> 12<html lang="en-US"> 13<!--<![endif]--> 14<head> 15<meta charset="UTF-8" /> 16<meta name="viewport" content="width=device-width" /> 17<meta name="lnm.location" content="linknowmedia.tips" /> 18<title>Contact Foothills Drywall & Renovation | (778) 922-4663</title> 19<link rel="profile" href="http://gmpg.org/xfn/11" /> 20<link rel="pingback" href="https://foothillshomerepair.ca/xmlrpc.php" /> 21<!--[if lt IE 9]>
22<script src="https://foothillshomerepair.ca/wp-content/themes/hand4/scripts/html5.js" type="text/javascript"></script>
22 23<![endif]--> 24 <link rel="shortcut icon" type="image/jpg" href="https://foothillshomerepair.ca/wp-content/uploads/sites/978/2025/03/fav.jpg" /><link rel="preconnect" href="https://fonts.gstatic.com"> 25<link href="https://fonts.googleapis.com/css2?family=DM+Serif+Display&family=Lato:wght@400;700&display=swap" rel="stylesheet"><meta name='robots' content='max-image-preview:large' /> 26<meta name="description" content="Foothills Drywall & Renovation is your source for professional and efficient handyman services. Contact us today for more information." /><meta name="keywords" content="Salt Spring Island Drywall Repair, Salt Spring Island Painting Contractor, Salt Spring Island Water Damage Restoration, Duncan Drywall Repair, Duncan Painting Contractor, Duncan Water Damage Restoration, South Gulf Island Drywall Repair, South Gulf Island Painting Contractor, South Gulf Island Water Damage Restoration" /><meta name="lnm.themename" content="hand4" /><link rel='dns-prefetch' href='//www.google.com' /> 27<link rel='dns-prefetch' href='//maps.googleapis.com' /> 28<link rel='dns-prefetch' href='//kit.fontawesome.com' /> 29<link rel="alternate" type="application/rss+xml" title="Foothills Drywall & Renovation » Contact Comments Feed" href="https://foothillshomerepair.ca/contact-us/feed/" /> 30<style id='wp-img-auto-sizes-contain-inline-css' type='text/css'> 31img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px} 32/*# sourceURL=wp-img-auto-sizes-contain-inline-css */ 33</style> 34<link rel='stylesheet' id='wp-block-library-css' href='https://foothillshomerepair.ca/wp-includes/css/dist/block-library/style.min.css' media='all' /> 35 36<style id='global-styles-inline-css' type='text/css'> 37:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgb(6,147,227) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgb(252,185,0) 0%,rgb(255,105,0) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgb(255,105,0) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);
37--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0);--wp--preset--shadow--crisp: 6px 6px 0px rgb(0, 0, 0);}:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}
37.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;} 38/*# sourceURL=global-styles-inline-css */ 39</style> 40 41<link rel='stylesheet' id='normalize-css' href='https://foothillshomerepair.ca/wp-content/themes/hand4/normalize.min.css' media='all' /> 42<link rel='stylesheet' id='foundation-css' href='https://foothillshomerepair.ca/wp-content/themes/hand4/foundation.css' media='all' /> 43<link rel='stylesheet' id='style-css' href='https://foothillshomerepair.ca/wp-content/themes/hand4/style.css' media='all' /> 44<link rel='stylesheet' id='dateTimeCss-css' href='https://foothillshomerepair.ca/wp-content/themes/hand4/styles/jquery.datetimepicker.css' media='all' /> 45<link rel='stylesheet' id='pagestylephp-css' href='https://foothillshomerepair.ca/wp-content/themes/hand4/page-css.php' media='all' />
46<script src="https://foothillshomerepair.ca/wp-content/themes/hand4/scripts/jquery.min.js" id="jquery-js"></script>
vendor: 1 bytes, line 46
46
47<script src="https://foothillshomerepair.ca/wp-content/themes/hand4/js/foundation/foundation.js" id="foundationjs-js"></script>
vendor: 1 bytes, line 47
47
48<script src="https://foothillshomerepair.ca/wp-content/themes/hand4/js/foundation/foundation.topbar.js" id="topbar-js"></script>
vendor: 1 bytes, line 48
48
49<script src="https://kit.fontawesome.com/f9c8f97a41.js" id="fontawesome-js"></script>
vendor: 1 bytes, line 49
49
50<script src="https://foothillshomerepair.ca/wp-content/themes/hand4/scripts/vendor/modernizr.js" id="modernizr-js"></script>
50 51<link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://foothillshomerepair.ca/xmlrpc.php?rsd" /> 52<meta name="generator" content="WordPress 6.9.9" /> 53<link rel="canonical" href="https://foothillshomerepair.ca/contact-us/" /> 54<link rel='shortlink' href='https://foothillshomerepair.ca/?p=42' />
55<script src='https://foothillshomerepair.ca/?dm=7e80cecfd348522f11b95375c3e48a2a&action=load&blogid=978&siteid=1&t=1565894156&back=https%3A%2F%2Ffoothillshomerepair.ca%2Fcontact-us%2F' type='text/javascript'></script>
55
55<script type="text/javascript"> 56 var lnmcrAjaxUrl = "https://foothillshomerepair.ca/wp-admin/admin-ajax.php"; 57 var lnmcrNonce = "2f2c266469"; 58 59 // ultimate url regex 60 function urlRegex(string){ 61 var regex = "((?:(http|https|Http|Https|rtsp|Rtsp):\\/\\/(?:(?:[a-zA-Z0-9\\$\\-\\_\\.\\+\\!\\*\\'\\(\\)" 62 + "\\,\\;\\?\\&\\=]|(?:\\%[a-fA-F0-9]{2})){1,64}(?:\\:(?:[a-zA-Z0-9\\$\\-\\_" 63 + "\\.\\+\\!\\*\\'\\(\\)\\,\\;\\?\\&\\=]|(?:\\%[a-fA-F0-9]{2})){1,25})?\\@)?)?" 64 + "((?:(?:[a-zA-Z0-9][a-zA-Z0-9\\-]{0,64}\\.)+" // named host 65 + "(?:" // plus top level domain 66 + "(?:aero|arpa|asia|a[cdefgilmnoqrstuwxz])" 67 + "|(?:biz|b[abdefghijmnorstvwyz])" 68 + "|(?:cat|com|coop|c[acdfghiklmnoruvxyz])" 69 + "|d[ejkmoz]" 70 + "|(?:edu|e[cegrstu])" 71 + "|f[ijkmor]" 72 + "|(?:gov|g[abdefghilmnpqrstuwy])" 73 + "|h[kmnrtu]" 74 + "|(?:info|int|i[delmnoqrst])" 75 + "|(?:jobs|j[emop])" 76 + "|k[eghimnrwyz]" 77 + "|l[abcikrstuvy]" 78 + "|(?:mil|mobi|museum|m[acdghklmnopqrstuvwxyz])" 79 + "|(?:name|net|n[acefgilopruz])" 80 + "|(?:org|om)" 81 + "|(?:pro|p[aefghklmnrstwy])" 82 + "|qa" 83 + "|r[eouw]" 84 + "|s[abcdeghijklmnortuvyz]" 85 + "|(?:tel|travel|t[cdfghjklmnoprtvwz])" 86 + "|u[agkmsyz]" 87 + "|v[aceginu]" 88 + "|w[fs]" 89 + "|y[etu]" 90 + "|z[amw]))" 91 + "|(?:(?:25[0-5]|2[0-4]" // or ip address 92 + "[0-9]|[0-1][0-9]{2}|[1-9][0-9]|[1-9])\\.(?:25[0-5]|2[0-4][0-9]" 93 + "|[0-1][0-9]{2}|[1-9][0-9]|[1-9]|0)\\.(?:25[0-5]|2[0-4][0-9]|[0-1]" 94 + "[0-9]{2}|[1-9][0-9]|[1-9]|0)\\.(?:25[0-5]|2[0-4][0-9]|[0-1][0-9]{2}" 95 + "|[1-9][0-9]|[0-9])))" 96 + "(?:\\:\\d{1,5})?)" // plus option port number 97 + "(\\/(?:(?:[a-zA-Z0-9\\;\\/\\?\\:\\@\\&\\=\\#\\~" // plus option query params 98 + "\\-\\.\\+\\!\\*\\'\\(\\)\\,\\_])|(?:\\%[a-fA-F0-9]{2}))*)?" 99 + "(?:\\b|$)"; 100 if (regex.match(string)) { 101 return 'Error: Urls are not allowed.'; 102 } else { 103 return true; // invalid email. 104 } 105 } 106 107 // detect urls in strings 108 function detectUrl(string) { 109 if (string.match(/(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/)) { 110 return true; 111 } else { 112 return false; 113 } 114 } 115 116 function validateTextareaValue(textarea){ 117 if (textarea.length<8 || textarea.length>1000) { 118 return 'Error: Your review text must be between 8 and 1000 characters in length.'; 119 } else { 120 if (detectUrl(textarea) == true) { 121 // Url detected in textarea body. 122 return 'Error: Your review text must NOT contain any urls.'; 123 } else { 124 return true; 125 } 126 } 127 } 128 129 // for text 130 function reviewTextValidation(){ 131 var erriddiv = '#lnmreviewtext-error'; 132 var validate = urlRegex($('#lnmreviewtext').val()); 133 var validated = validateTextareaValue($('#lnmreviewtext').val()); 134 if (validated !== true || validate !== true) { 135 $('#lnmreviewtext').addClass('review-error'); 136 $(erriddiv).html(validated).slideDown(0); 137 return false; 138 } else { 139 return true; 140 }; 141 } 142 143 144 145 146 // for input title 147 function validateTitleValue(title){ 148 var regex = /^[a-zA-Z\s]+$/; 149 if (title.length<3 || title.length>32) { 150 return 'Error: Your review title must be between 3 and 32 characters in length.'; 151 } else { 152 if (regex.test(title)) { 153 return true; 154 } else { 155 return 'Error: Please use only letters and spaces.'; 156 } 157 } 158 } 159 // for title 160 function reviewTitleValidation(){ 161 var erriddiv = '#lnmreviewtitle-error'; 162 var validated = validateTitleValue($('#lnmreviewtitle').val()); 163 if (validated !== true) { 164 $('#lnmreviewtitle').addClass('review-error'); 165 $(erriddiv).html(validated).slideDown(0); 166 return false; 167 } else { 168 return true; 169 }; 170 } 171 172 173 174 // for input name 175 function validateNameValue(name){ 176 var regex = /^[a-zA-Z\s]+$/; 177 if (name.length<3 || name.length>32) { 178 return 'Error: Your review name must be between 3 and 32 characters in length.'; 179 } else { 180 if (regex.test(name)) { 181 return true; 182 } else { 183 return 'Error: Please use only letters and spaces.'; 184 } 185 } 186 } 187 // for name 188 function reviewNameValidation(){
189 var erriddiv = '#lnmreviewname-error'; 190 var validated = validateNameValue($('#lnmreviewname').val()); 191 if (validated !== true) { 192 $('#lnmreviewname').addClass('review-error'); 193 $(erriddiv).html(validated).slideDown(0); 194 return false; 195 } else { 196 return true; 197 }; 198 } 199 200 201 202 203 // for input email 204 function validateEmailValue(email){ 205 var regex = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/; 206 if (regex.test(email)) { 207 return true; 208 } else { 209 // invalid email. 210 return 'Error: The email provided is invalid.'; 211 } 212 } 213 214 // for email 215 function reviewEmailValidation(){ 216 var erriddiv = '#lnmreviewemail-error'; 217 var validated = validateEmailValue($('#lnmreviewemail').val()); 218 if (validated !== true) { 219 $('#lnmreviewemail').addClass('review-error'); 220 $(erriddiv).html(validated).slideDown(0); 221 return false; 222 } else { 223 return true; 224 }; 225 } 226 227 228 229 // for terms 230 function reviewTermsValidation(){ 231 var erriddiv = '#lnmreviewterms-error'; 232 if (!$('#lnmreviewterms').is(':checked')) { 233 $('#lnmreviewterms').addClass('review-error'); 234 $(erriddiv).html('You must agree to terms.').slideDown(0); 235 return false; 236 } else { 237 return true; 238 }; 239 } 240 241 function reviewAllValidation(){ 242 var isvalid = true; 243 244 // Validate Terms 245 var terms = reviewTermsValidation(); 246 if (terms === false) { 247 isvalid = false; 248 }; 249 250 // Validate Text 251 var text = reviewTextValidation(); 252 if (text === false) { 253 isvalid = false; 254 }; 255 // Validate Title 256 var title = reviewTitleValidation(); 257 if (title === false) { 258 isvalid = false; 259 }; 260 // Validate Author 261 var name = reviewNameValidation(); 262 if (name === false) { 263 isvalid = false; 264 }; 265 // Validate Email 266 var email = reviewEmailValidation(); 267 if (email === false) { 268 isvalid = false; 269 }; 270 return isvalid; 271 } 272 273 274 $(function(){ 275 $('.review-error-container').slideUp(0); 276 $('.lnmcr-submit').addClass('disabled'); 277 278 279 $( '#lnmreviewform input, #lnmreviewform textarea' ).on("change", function(){ 280 var erriddiv = '#'+$(this).attr('id')+'-error'; 281 $(this).removeClass('review-error'); 282 $(erriddiv).empty().slideUp(0); 283 }); 284 $( '#lnmreviewform input, #lnmreviewform textarea' ).on("blur", function(){ 285 if ($(this).attr('type') !== 'radio') { 286 287 // lnmreviewtitle 288 if ($(this).attr('id') === 'lnmreviewtitle') { 289 reviewTitleValidation(); 290 }; 291 // lnmreviewname 292 if ($(this).attr('id') === 'lnmreviewname') { 293 reviewNameValidation(); 294 }; 295 // lnmreviewemail 296 if ($(this).attr('id') === 'lnmreviewemail') { 297 reviewEmailValidation(); 298 }; 299 // lnmreviewtext 300 if ($(this).attr('id') === 'lnmreviewtext') { 301 reviewTextValidation(); 302 }; 303 // lnmreviewterms 304 if ($(this).attr('id') === 'lnmreviewterms') { 305 reviewTermsValidation(); 306 }; 307 }; 308 }); 309 310 $('#lnmreviewterms').change(function(){ 311 if (this.checked) { 312 var isvalidreview = reviewAllValidation(); 313 if (isvalidreview === false) { 314 $(this).prop('checked', false); 315 $('.lnmcr-submit').addClass('disabled'); 316 } else { 317 $('.lnmcr-submit').removeClass('disabled'); 318 }; 319 }; 320 }); 321 322 $( '.lnmcr-submit' ).on( 'click', function(e) { 323 e.preventDefault(); 324 var isvalidreview = reviewAllValidation(); 325 if (isvalidreview === true) { 326 var serializedata = $("#lnmreviewform").serialize(); 327 serializedata = serializedata.split('&'); 328 for (var i = serializedata.length - 1; i >= 0; i--) { 329 if (!serializedata[i].startsWith('lnmcr')) { 330 delete serializedata[i]; 331 } 332 }; 333 serializedata = serializedata.flat().join("&"); 334 335 $.ajax({
336 url: lnmcrAjaxUrl, // no â?actionâ here 337 method: 'POST', 338 dataType: 'json', // expect JSON back 339 crossDomain: true, 340 xhrFields: { withCredentials: true }, // send cookies/session 341 data: { 342 action: 'lnmcr_ajax_post', 343 security: lnmcrNonce, 344 lnmreviewterms: $('#lnmreviewterms').val(), 345 lnmreviewserialized: serializedata, 346 }, 347 beforeSend() { 348 $('#lnmreviewform').slideUp(250); 349 $('#review-response-container') 350 .html('<i class="fa-solid fa-spinner fa-spin-pulse"></i>'); 351 }, 352 success(response) { 353 console.log(response); 354 setTimeout(() => { 355 $('#review-response-container').html('<span style="background:white;padding:10px;border-radius:4px;display:block">'+response.data+'<span>'); 356 }, 3500); 357 }, 358 error(xhr) { 359 console.error('AJAX error', xhr.status, xhr.responseText); 360 $('#review-response-container') 361 .html('<span style="background:white;padding:10px;border-radius:4px;display:block" class="error-message">Unexpected error occurred.</span>'); 362 } 363 }); 364 365 } 366 }); 367 }); 368 </script>
368 369<!-- pulled from default Schema Settings & Modified by LinkNow Media Customer Reviews -->
369<script type="application/ld+json">{"@context":"http:\/\/schema.org\/","@type":"LocalBusiness","name":"Foothills Drywall & Renovation","description":"Drywall Repair, Painting Contractor and Water Damage Restoration","image":"https:\/\/foothillshomerepair.ca\/wp-content\/themes\/hand4\/images\/rich-card.png","url":"https:\/\/foothillshomerepair.ca","logo":"https:\/\/foothillshomerepair.ca\/wp-content\/uploads\/sites\/978\/2025\/03\/logo-1.jpg","faxNumber":"","email":"[email protected]","areaServed":"Salt Spring Island, Duncan and South Gulf Island","paymentAccepted":"Mastercard, Cash, Check, E-transfer","address":{"@type":"PostalAddress","streetAddress":"","addressLocality":"Salt Spring Island","addressRegion":"BC","postalCode":"V8K 2M8","postOfficeBoxNumber":""},"sameAs":[],"contactPoint":[{"@type":"ContactPoint","telephone":"+1-778-922-4663","contactType":"customer service"}],"telephone":"+1-778-922-4663","openingHoursSpecification":[{"@type":"OpeningHoursSpecification","dayOfWeek":"http:\/\/schema.org\/Monday","opens":"Closed","closes":"Closed"},{"@type":"OpeningHoursSpecification","dayOfWeek":"http:\/\/schema.org\/Tuesday","opens":"Closed","closes":"Closed"},{"@type":"OpeningHoursSpecification","dayOfWeek":"http:\/\/schema.org\/Wednesday","opens":"Closed","closes":"Closed"},{"@type":"OpeningHoursSpecification","dayOfWeek":"http:\/\/schema.org\/Thursday","opens":"Closed","closes":"Closed"},{"@type":"OpeningHoursSpecification","dayOfWeek":"http:\/\/schema.org\/Friday","opens":"Closed","closes":"Closed"},{"@type":"OpeningHoursSpecification","dayOfWeek":"http:\/\/schema.org\/Saturday","opens":"By Appointment","closes":"By Appointment"},{"@type":"OpeningHoursSpecification","dayOfWeek":"http:\/\/schema.org\/Sunday","opens":"Closed","closes":"Closed"}],"aggregateRating":{"@type":"AggregateRating","ratingValue":5,"reviewCount":5},"review":[{"@type":"Review","author":{"@type":"Person","name":"T. Grue"},"datePublished":"2022-03-03 16:18:01","description":"We needed some work done relating to a basement renovation. Kevin was prompt in his service delivery and did an excellent job. I highly recommend him.","name":"Outstanding Sevice","reviewRating":{"@type":"Rating","bestRating":"5","ratingValue":"5","worstRating":"1"}},{"@type":"Review","author":{"@type":"Person","name":"Linda Picault"},"datePublished":"2022-01-26 16:18:01","description":"This was a particular challenge for Kevin. Flooding from an upstairs unit\u2019s bathroom ,flowing directly to apartment . below . After a week of drying (ceiling opened to release any contained water ) the profesional was called in. Kevin somehow , in a small area, managed to reconstruct the ceiling which was no easy task . However through studs added, than drywall etc . job looked like new . Painting as well to match the existing . This sounds trivial but a lot of work required again no easy task. My Hat\u2019s off to kevin and would highly recommend his Company. He kept his quote therefore within budget. Oh ! did I mention he cleaned up the mess resultin from this ?","name":"reconstruction of Bathroom ceiling","reviewRating":{"@type":"Rating","bestRating":"5","ratingValue":"5","worstRating":"1"}}]}</script>
369<style type="text/css">.recentcomments a{display:inline !important;padding:0 !important;margin:0 !important;}</style>
369<script>
vendor: 349 bytes, lines 369-375
369 370 (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ 371 (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), 372 m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) 373 })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); 374 375 ga('create', '
375UA-204466325-58
vendor: 44 bytes, lines 375-378
375', 'auto'); 376 ga('send', 'pageview'); 377 378
378</script>
378 379 380 <!-- Google tag (gtag.js) (GA4) -->
vendor: 73 bytes, lines 380-381
380 381 <script async src="https://www.googletagmanager.com/gtag/js?id=
381G-SC5K02J1GZ
vendor: 21 bytes, lines 381-382
381"></script> 382
382<script> 383
vendor: 164 bytes, lines 383-386
383window.dataLayer = window.dataLayer || []; 384 function gtag(){dataLayer.push(arguments);} 385 gtag('js', new Date()); 386 gtag('config', '
386G-SC5K02J1GZ
vendor: 13 bytes, lines 386-387
386'); 387
387</script>
387 388 389 <meta name="townorder" id="townorder" content="Salt Spring Island, Duncan and South Gulf Island"> 390<meta name="marketspecialties" id="marketspecialties" content="Drywall Repair, Painting Contractor and Water Damage Restoration"> 391<meta name="city" id="city" content="Salt Spring Island"> 392<link rel='stylesheet' id='datetimecss-css' href='https://foothillshomerepair.ca/wp-content/plugins/linknowmedia-email/styles/jquery.datetimepicker.css' media='all' /> 393 394</head> 395<body class="wp-singular page-template-default page page-id-42 wp-theme-hand4"> 396 397<header class="header-wrapper header-home"> 398 <div class="mobile-menu hide-for-large-up"> 399 <span class="mobile-navigation navigation-toggle"><i class="toggle-bars fa fa-bars"></i></span> 400 <div class="navigation-wrapper fullwidth-navigation"> 401 <nav class="top-bar fading" data-options=" custom_back_text: true; back_text: Back;" data-topbar itemscope itemtype="http://www.schema.org/SiteNavigationElement"> 402 <ul class="title-area"> 403 <li class="name"></li> 404 <li class="toggle-topbar menu-icon"><a href="#"><span>Menu</span></a></li> 405 </ul> 406 <div class="top-bar-section section"> 407 <div class="menu-menu-1-container"><ul id="menu-menu-1" class="menu"><li id="menu-item-404" class="menu-item menu-item-type-custom menu-item-object-custom first-menu-item menu-item-404"><a href="http://5879687307.linknowmedia.tips/">Home</a></li> 408<li id="menu-item-427" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-427 has-dropdown not-click"><a href="https://foothillshomerepair.ca/about-us/">About</a> 409<ul class='dropdown'> 410 <li id="menu-item-428" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-428"><a href="https://foothillshomerepair.ca/about-us/blog/">Blog</a></li> 411 <li id="menu-item-1332" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1332"><a href="https://foothillshomerepair.ca/about-us/testimonials/">Testimonials</a></li> 412</ul> 413</li> 414<li id="menu-item-436" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-436 has-dropdown not-click"><a href="https://foothillshomerepair.ca/drywall/">Drywall</a> 415<ul class='dropdown'> 416 <li id="menu-item-438" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-438"><a href="https://foothillshomerepair.ca/drywall/commercial-drywall/">Commercial Drywall</a></li> 417 <li id="menu-item-439" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-439"><a href="https://foothillshomerepair.ca/drywall/drywall-contractor/">Drywall Contractor</a></li> 418 <li id="menu-item-440" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-440"><a href="https://foothillshomerepair.ca/drywall/drywall-installation/">Drywall Installation</a></li> 419 <li id="menu-item-441" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-441"><a href="https://foothillshomerepair.ca/drywall/drywall-repair-for-re-piping/">Drywall Repair for Re-Piping</a></li> 420 <li id="menu-item-442" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-442"><a href="https://foothillshomerepair.ca/drywall/fiberglass-roxyl-insulation-installation/">Fiberglass/Roxyl Insulation Installation</a></li> 421 <li id="menu-item-443" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-443"><a href="https://foothillshomerepair.ca/drywall/mold-remediation/">Mold Remediation</a></li> 422 <li id="menu-item-444" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-444"><a href="https://foothillshomerepair.ca/drywall/mold-removal/">Mold Removal</a></li> 423 <li id="menu-item-445" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-445"><a href="https://foothillshomerepair.ca/drywall/plaster-repair/">Plaster Repair</a></li> 424 <li id="menu-item-446" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-446"><a href="https://foothillshomerepair.ca/drywall/popcorn-ceiling-removal/">Popcorn Ceiling Removal</a></li> 425 <li id="menu-item-447" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-447"><a href="https://foothillshomerepair.ca/drywall/residential-drywall/">Residential Drywall</a></li> 426 <li id="menu-item-448" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-448"><a href="https://foothillshomerepair.ca/drywall/wall-soundproofing/">Wall Soundproofing</a></li> 427</ul> 428</li> 429<li id="menu-item-418" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-418 has-dropdown not-click"><a href="https://foothillshomerepair.ca/painting/">Painting</a> 430<ul class='dropdown'> 431 <li id="menu-item-419" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-419"><a href="https://foothillshomerepair.ca/painting/commercial-painting/">Commercial Painting</a></li> 432 <li id="menu-item-420" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-420"><a href="https://foothillshomerepair.ca/painting/fence-painters/">Fence Painters</a></li> 433 <li id="menu-item-421" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-421"><a href="https://foothillshomerepair.ca/painting/house-painting/">House Painting</a></li> 434 <li id="menu-item-422" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-422"><a href="https://foothillshomerepair.ca/painting/interior-painting/">Interior Painting</a></li> 435 <li id="menu-item-423" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-423"><a href="https://foothillshomerepair.ca/painting/painting-estimates/">Painting Estimates</a></li> 436 <li id="menu-item-424" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-424"><a href="https://foothillshomerepair.ca/painting/pressure-washing-services/">Pressure Washing Services</a></li> 437 <li id="menu-item-425" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-425"><a href="https://foothillshomerepair.ca/painting/spray-applied-exterior-painting/">Spray-Applied Exterior Painting</a></li> 438 <li id="menu-item-426" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-426"><a href="https://foothillshomerepair.ca/painting/wallpaper-removal-services/">Wallpaper Removal Services</a></li> 439 <li id="menu-item-590" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-590"><a href="https://foothillshomerepair.ca/painting/painting/">Painting</a></li> 440</ul> 441</li> 442<li id="menu-item-455" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-455 has-dropdown not-click"><a href="https://foothillshomerepair.ca/flooring/">Flooring</a> 443<ul class='dropdown'> 444 <li id="menu-item-437" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-437"><a href="https://foothillshomerepair.ca/flooring/baseboard-installations/">Baseboard Installations</a></li> 445 <li id="menu-item-449" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-449"><a href="https://foothillshomerepair.ca/flooring/floor-levelling/">Floor Levelling</a></li> 446 <li id="menu-item-450" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-450"><a href="https://foothillshomerepair.ca/flooring/flooring-design/">Flooring Design</a></li> 447 <li id="menu-item-451" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-451"><a href="https://foothillshomerepair.ca/flooring/hardwood-flooring/">Hardwood Flooring</a></li> 448 <li id="menu-item-452" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-452"><a href="https://foothillshomerepair.ca/flooring/laminate-flooring/">Laminate Flooring</a></li> 449 <li id="menu-item-453" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-453"><a href="https://foothillshomerepair.ca/flooring/stone-flooring/">Stone Flooring</a></li> 450 <li id="menu-item-454" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-454"><a href="https://foothillshomerepair.ca/flooring/luxury-vinyl-plank-flooring/">Luxury Vinyl Plank Flooring</a></li> 451 <li id="menu-item-624" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-624"><a href="https://foothillshomerepair.ca/flooring/flooring-installation/">Flooring Installation</a></li> 452</ul> 453</li> 454<li id="menu-item-411" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-411 has-dropdown not-click"><a href="https://foothillshomerepair.ca/home-repair/">Home Repair</a> 455<ul class='dropdown'> 456 <li id="menu-item-412" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-412"><a href="https://foothillshomerepair.ca/home-repair/emergency-restoration/">
456Emergency Restoration</a></li> 457 <li id="menu-item-413" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-413"><a href="https://foothillshomerepair.ca/home-repair/framing/">Framing</a></li> 458 <li id="menu-item-414" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-414"><a href="https://foothillshomerepair.ca/home-repair/home-improvement/">Home Improvement</a></li> 459 <li id="menu-item-415" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-415"><a href="https://foothillshomerepair.ca/home-repair/home-repairs/">Home Repairs</a></li> 460 <li id="menu-item-416" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-416"><a href="https://foothillshomerepair.ca/home-repair/trim-installation/">Trim Installation</a></li> 461 <li id="menu-item-417" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-417"><a href="https://foothillshomerepair.ca/home-repair/water-damage-restoration/">Water Damage Restoration</a></li> 462 <li id="menu-item-628" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-628"><a href="https://foothillshomerepair.ca/home-repair/carpentry/">Carpentry</a></li> 463 <li id="menu-item-1098" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1098"><a href="https://foothillshomerepair.ca/home-repair/renovations/">Renovations</a></li> 464 <li id="menu-item-1346" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1346"><a href="https://foothillshomerepair.ca/home-repair/drainage-excavation/">Drainage/Excavation</a></li> 465 <li id="menu-item-1248" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1248"><a href="https://foothillshomerepair.ca/home-repair/service-areas/">Service Areas</a></li> 466</ul> 467</li> 468<li id="menu-item-1419" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1419"><a href="https://foothillshomerepair.ca/indoor-air-quality/">Indoor Air Quality</a></li> 469<li id="menu-item-435" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-435"><a href="https://foothillshomerepair.ca/faq/">FAQ</a></li> 470<li id="menu-item-456" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-456 has-dropdown not-click"><a href="https://foothillshomerepair.ca/gallery/">Gallery</a> 471<ul class='dropdown'> 472 <li id="menu-item-810" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-810"><a href="https://foothillshomerepair.ca/gallery/our-recent-project-gallery/">Our Recent Project Gallery</a></li> 473</ul> 474</li> 475<li id="menu-item-457" class="menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-42 current_page_item menu-item-457 active"><a href="https://foothillshomerepair.ca/contact-us/" aria-current="page">Contact</a></li> 476</ul></div></div></nav> 477 </div> 478 </div> 479 <div class="content-wrapper side-buffer"> 480 <div class="row header-row"> 481 <div class="large-12 columns header-details strip-padding text-center flex"> 482 <div class="large-3 columns service-order"> 483 <p>Home Repair Contractor and Painting Contractor</p> 484 </div> 485 <div class="large-6 columns logo-wrapper text-center"> 486 <a href="/" title="Foothills Drywall & Renovation"><img src="https://foothillshomerepair.ca/wp-content/uploads/sites/978/2025/03/logo-1.jpg" alt="Foothills Drywall & Renovation" width="300" height="91"></a> 487 </div> 488 <div class="large-3 columns header-cta-wrapper"> 489 <a class="header-cta" href="tel:+17789224663">(778) 922-4663 </a> 490 </div> 491 </div> 492 </div> 493 </div> 494 <div class="nav-bar side-buffer hide-for-medium-down"> 495 <div class="row navigation-wrapper"> 496 <div class="large-12 columns strip-padding"> 497 <nav class="top-bar fading" data-options=" custom_back_text: true; back_text: Back;" data-topbar itemscope itemtype="http://www.schema.org/SiteNavigationElement"> 498 <ul class="title-area"> 499 <li class="name"></li> 500 <li class="toggle-topbar menu-icon"><a href="#"><span>Menu</span></a></li> 501 </ul> 502 <div class="top-bar-section section"> 503 <div class="menu-menu-1-container"><ul id="menu-menu-2" class="menu"><li class="menu-item menu-item-type-custom menu-item-object-custom first-menu-item menu-item-404"><a href="http://5879687307.linknowmedia.tips/">Home</a></li> 504<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-427 has-dropdown not-click"><a href="https://foothillshomerepair.ca/about-us/">About</a> 505<ul class='dropdown'> 506 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-428"><a href="https://foothillshomerepair.ca/about-us/blog/">Blog</a></li> 507 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1332"><a href="https://foothillshomerepair.ca/about-us/testimonials/">Testimonials</a></li> 508</ul> 509</li> 510<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-436 has-dropdown not-click"><a href="https://foothillshomerepair.ca/drywall/">Drywall</a> 511<ul class='dropdown'> 512 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-438"><a href="https://foothillshomerepair.ca/drywall/commercial-drywall/">Commercial Drywall</a></li> 513 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-439"><a href="https://foothillshomerepair.ca/drywall/drywall-contractor/">Drywall Contractor</a></li> 514 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-440"><a href="https://foothillshomerepair.ca/drywall/drywall-installation/">Drywall Installation</a></li> 515 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-441"><a href="https://foothillshomerepair.ca/drywall/drywall-repair-for-re-piping/">Drywall Repair for Re-Piping</a></li> 516 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-442"><a href="https://foothillshomerepair.ca/drywall/fiberglass-roxyl-insulation-installation/">Fiberglass/Roxyl Insulation Installation</a></li> 517 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-443"><a href="https://foothillshomerepair.ca/drywall/mold-remediation/">Mold Remediation</a></li> 518 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-444"><a href="https://foothillshomerepair.ca/drywall/mold-removal/">Mold Removal</a></li> 519 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-445"><a href="https://foothillshomerepair.ca/drywall/plaster-repair/">Plaster Repair</a></li> 520 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-446"><a href="https://foothillshomerepair.ca/drywall/popcorn-ceiling-removal/">Popcorn Ceiling Removal</a></li> 521 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-447"><a href="https://foothillshomerepair.ca/drywall/residential-drywall/">Residential Drywall</a></li> 522 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-448"><a href="https://foothillshomerepair.ca/drywall/wall-soundproofing/">Wall Soundproofing</a></li> 523</ul> 524</li> 525<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-418 has-dropdown not-click"><a href="https://foothillshomerepair.ca/painting/">Painting</a> 526<ul class='dropdown'> 527 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-419"><a href="https://foothillshomerepair.ca/painting/commercial-painting/">Commercial Painting</a></li> 528 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-420"><a href="https://foothillshomerepair.ca/painting/fence-painters/">Fence Painters</a></li> 529 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-421"><a href="https://foothillshomerepair.ca/painting/house-painting/">House Painting</a></li> 530 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-422"><a href="https://foothillshomerepair.ca/painting/interior-painting/">Interior Painting</a></li> 531 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-423"><a href="https://foothillshomerepair.ca/painting/painting-estimates/">Painting Estimates</a></li> 532 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-424"><a href="https://foothillshomerepair.ca/painting/pressure-washing-services/">Pressure Washing Services</a></li> 533 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-425"><a href="https://foothillshomerepair.ca/painting/spray-applied-exterior-painting/">Spray-Applied Exterior Painting</a></li> 534 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-426"><a href="https://foothillshomerepair.ca/painting/wallpaper-removal-services/">Wallpaper Removal Services</a></li> 535 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-590"><a href="https://foothillshomerepair.ca/painting/painting/">Painting</a></li> 536</ul> 537</li> 538<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-455 has-dropdown not-click"><a href="https://foothillshomerepair.ca/flooring/">Flooring</a> 539<ul class='dropdown'> 540 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-437"><a href="https://foothillshomerepair.ca/flooring/baseboard-installations/">Baseboard Installations</a></li> 541 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-449"><a href="https://foothillshomerepair.ca/flooring/floor-levelling/">Floor Levelling</a></li> 542 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-450"><a href="https://foothillshomerepair.ca/flooring/flooring-design/">Flooring Design</a></li> 543 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-451"><a href="https://foothillshomerepair.ca/flooring/hardwood-flooring/">Hardwood Flooring</a></li> 544 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-452"><a href="https://foothillshomerepair.ca/flooring/laminate-flooring/">Laminate Flooring</a></li> 545 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-453"><a href="https://foothillshomerepair.ca/flooring/stone-flooring/">Stone Flooring</a></li> 546 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-454"><a href="https://foothillshomerepair.ca/flooring/luxury-vinyl-plank-flooring/">Luxury Vinyl Plank Flooring</a></li> 547 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-624"><a href="https://foothillshomerepair.ca/flooring/flooring-installation/">Flooring Installation</a></li> 548</ul> 549</li> 550<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-411 has-dropdown not-click"><a href="https://foothillshomerepair.ca/home-repair/">Home Repair</a> 551<ul class='dropdown'> 552 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-412"><a href="https://foothillshomerepair.ca/home-repair/emergency-restoration/">
552Emergency Restoration</a></li> 553 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-413"><a href="https://foothillshomerepair.ca/home-repair/framing/">Framing</a></li> 554 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-414"><a href="https://foothillshomerepair.ca/home-repair/home-improvement/">Home Improvement</a></li> 555 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-415"><a href="https://foothillshomerepair.ca/home-repair/home-repairs/">Home Repairs</a></li> 556 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-416"><a href="https://foothillshomerepair.ca/home-repair/trim-installation/">Trim Installation</a></li> 557 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-417"><a href="https://foothillshomerepair.ca/home-repair/water-damage-restoration/">Water Damage Restoration</a></li> 558 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-628"><a href="https://foothillshomerepair.ca/home-repair/carpentry/">Carpentry</a></li> 559 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1098"><a href="https://foothillshomerepair.ca/home-repair/renovations/">Renovations</a></li> 560 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1346"><a href="https://foothillshomerepair.ca/home-repair/drainage-excavation/">Drainage/Excavation</a></li> 561 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1248"><a href="https://foothillshomerepair.ca/home-repair/service-areas/">Service Areas</a></li> 562</ul> 563</li> 564<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1419"><a href="https://foothillshomerepair.ca/indoor-air-quality/">Indoor Air Quality</a></li> 565<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-435"><a href="https://foothillshomerepair.ca/faq/">FAQ</a></li> 566<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-456 has-dropdown not-click"><a href="https://foothillshomerepair.ca/gallery/">Gallery</a> 567<ul class='dropdown'> 568 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-810"><a href="https://foothillshomerepair.ca/gallery/our-recent-project-gallery/">Our Recent Project Gallery</a></li> 569</ul> 570</li> 571<li class="menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-42 current_page_item menu-item-457 active"><a href="https://foothillshomerepair.ca/contact-us/" aria-current="page">Contact</a></li> 572</ul></div></div></nav> 573 </div> 574 </div> 575 </div> 576</header> 577<div class="mobile-header-bg hide-for-large-up"> </div> 578<div class="mobile-sticky-cta"> 579 <a class="sticky-btn" href="tel:+17789224663">Call Us </a> 580 <a href="/contact-us/" class="sticky-btn alt" title="Send Us A Message">Message Us</a> 581 </div><div class="clearfix"></div><main> 582 583<article class="section-article"> 584 <div class="content-wrapper"> 585 <div class="row full" data-equalizer> 586 <div class="large-6 columns bg-box contact-bg mobile-bg-remove hide-for-medium-down" data-equalizer-watch> 587 </div> 588 <div class="large-6 columns contact-box" data-equalizer-watch> 589 <h1>Contact Foothills Drywall & Renovation</h1> 590 <p>Foothills Drywall has moved to Saltspring Island and look forward to meeting you. Often we are busy and will make an effort to call you the same day. Its best to text us your name, phone number, along with your address and what services you need so we know how we can help or direct you to the right person that is best suited for your needs.</p> 591 <p>Foothills Drywall & Renovation (Phone or Text: (778) 922-4663)</p> 592 <p>Email: [email protected] </p> 593 <div class="large-12 columns strip-padding contact-form"> 594 <form id="contactForm" class="contactForm" method="POST"> 595 <input type="hidden" name="submitContact"> 596 <div class="groupWrapper"> 597 <label for="fullName">Full Name:</label> 598 <input class="fancyInput validate[required] shortField" type="text" name="fullName" id="fullName" title="Full Name"> 599 </div> 600 <div class="groupWrapper"> 601 <label for="phoneNumber">Phone Number:</label> 602 <input class="fancyInput validate[required,
602custom[phone]]" type="text" name="phoneNumber" id="phoneNumber" title="Phone Number"> 603 </div> 604 <div class="groupWrapper"> 605 <label for="emailAddress">Email Address:</label> 606 <input class="fancyInput validate[required,custom[emailAddress]]" type="text" name="emailAddress" id="emailAddress" title="Email Address"> 607 </div> 608 <div class="groupWrapper"> 609 <label for="emailMessage">Your Message:</label> 610 <textarea class="fancyInput validate[required]" type="text" name="emailMessage" id="emailMessage" title="Your Message"></textarea> 611 </div> 612 613 614 <div class="submitWrapper"> 615 <button type="submit" class="cta-btn" name="submitContact" id="submitContact">SEND</button> 616 </div> 617 <input type="hidden" name="akismet_check" value="1"><input type="hidden" name="lnm_recaptcha" value="1"><input type="hidden" name="g-recaptcha-response" value=""></form> 618 </div> 619 620 </div> 621 622 </div> 623 624 </div> 625 626 </article> 627 628</main> 629<div class="clearfix"></div> 630<footer class="footer-wrapper"> 631 <div class="content-wrapper side-buffer"> 632 <div class="row footer-inner vertical-padding-large"> 633 <div class="large-3 columns footer-address"> 634 <h2>Contact Us</h2> 635 <p>Salt Spring Island BC V8K 2M8</p> 636 <p>Phone: <a class="" href="tel:+17789224663">(778) 922-4663 </a></p> 637 <p>Email: [email protected]</p> 638 </div> 639 <div class="large-3 columns footer-hours"> 640 <h2>Hours of Operation</h2> 641 <p>Mon - Fri: Closed</p> 642 <p>Sat: By Appointment</p> 643 <p>Sun: Closed</p> 644 <p>Emergenvy Service Available</p> 645 <p>Emergency work for water damaged drywall. We go in behind plumbers.</p> 646 </div> 647 <div class="large-3 columns payment-methods text-center"> 648 <h2>Payment Methods</h2> 649 <svg class="payment-icon circle" id="ci-e-transfer" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 38.1 38.1"> 650 <defs> 651 <style> 652 #ci-e-transfer .cls-1 { 653 fill: #eaa825; 654 }#ci-e-transfer .cls-2 { 655 font-size: 7.24px; 656 fill: #231f20; 657 font-family: Arial-BoldMT, Arial; 658 font-weight: 700; 659 }#ci-e-transfer .cls-3 { 660 letter-spacing: -0.06em; 661 } 662 </style> 663 </defs> 664 <title>Interact e-Transfer</title> 665 <g> 666 <circle class="cls-1" cx="19.1" cy="19.1" r="19.1" transform="translate(-7.9 19.1) rotate(-45)"/> 667 <text class="cls-2" transform="translate(1.5 20.8)">e-<tspan class="cls-3" x="6.4" y="0">T</tspan><tspan x="10.5" y="0">ransfer</tspan></text> 668 </g> 669</svg> 670 <svg class="payment-icon circle" id="ci-check" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 38.1 38.1"> 671 <defs> 672 <style> 673 #ci-check .cls-1 { 674 fill: #0058a0; 675 }#ci-check .cls-2 { 676 fill: #fff; 677 } 678 </style> 679 </defs> 680 <title>Check</title> 681 <g> 682 <circle class="cls-1" cx="19.1" cy="19.1" r="19.1" transform="translate(-7.9 19.1) rotate(-45)"/> 683 <g> 684 <path class="cls-2" d="M31.7,15V28.3H6.4V15Zm-1.4,1.3H8.4c-.6,0-.7.2-.7.7v9.1c0,.8.2,1,1,1H30.3Z"/> 685 <path class="cls-2" d="M28.9,9.8l.8,3.9c-1.3.2-1.3.2-1.5-.9a2.5,2.5,0,0,1-.2-.7c0-.5-.2-.7-.8-.5l-8.7,1.9c-1.1.2-2.3.2-3.4.3H11.6Z"/> 686 <path class="cls-2" d="M23.1,20.6V18.3h5.5v2.3Z"/> 687 <path class="cls-2" d="M9.5,25.2v-.9H22.9v.9Z"/> 688 <path class="cls-2" d="M9.5,21.6v-1h8.9v1Z"/> 689 </g> 690 </g> 691</svg> 692 <svg class="payment-icon circle" id="ci-visa" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 38.1 38.1"> 693 <defs> 694 <style> 695 #ci-visa .cls-1 { 696 fill: #0058a0; 697 }#ci-visa .cls-2 { 698 fill: #fff; 699 }#ci-visa .cls-3 { 700 fill: #faa61a; 701 } 702 </style> 703 </defs> 704 <title>Visa</title> 705 <g> 706 <circle class="cls-1" cx="19.1" cy="19.1" r="19.1" transform="translate(-7.9 19.1) rotate(-45)"/> 707 <g> 708 <path class="cls-2" d="M24.5,10,18.9,25l-.6-3.1a17.4,17.4,0,0,0-7.9-9.2L15.5,32h6.1l8.9-22h-6"/> 709 <path class="cls-3" d="M13.8,10H4.6v.3c7.2,1.9,11.9,6.3,13.8,11.6l-2-10.1A2.2,2.2,0,0,0,13.8,10Z"/> 710 </g> 711 </g> 712</svg> 713 <svg class="payment-icon circle" id="ci-cash" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 38.1 38.1"> 714 <defs> 715 <style> 716 #ci-cash .cls-1 { 717 fill: #0058a0; 718 }#ci-cash .cls-2 { 719 fill: #fff; 720 } 721 </style> 722 </defs> 723 <title>Cash</title> 724 <g> 725 <circle class="cls-1" cx="19.1" cy="19.1" r="19.1" transform="translate(-7.9 19.1) rotate(-45)"/> 726 <g> 727 <path class="cls-2" d="M19,20.5H4.5a.7.7,0,0,1-.6-.9,5,5,0,0,1,.3-1.3L6.4,11A1.6,1.6,0,0,1,8.1,9.7H29.8a2.8,2.8,0,0,1,1.3.3,1.3,1.3,0,0,1,.6.7c.8,2.9,1.7,5.7,2.5,8.6.2.7-.1,1.2-.9,1.2H19ZM5.9,16.7h.3a4.8,4.8,0,0,1,2.1.7,2.9,2.9,0,0,1,1.3,1.4c.1.3.3.3.5.3H28.4a2.4,2.4,0,0,1,1.5-1.7l2.3-.9c-.3-1.1-.7-2.2-1-3.4s-.2-.3-.4-.3l-1.5-.4a4.8,4.8,0,0,1-2.4-1.8l-.4-.3H11.3A4.3,4.3,0,0,1,9.7,12a7.8,7.8,0,0,1-2.4.9c-.2,0-.4.1-.4.3s-.3,1.2-.5,1.8Z"/> 728 <path class="cls-2" d="M19.1,22H33.9c.2,0,.3.1.4.3s-.3,1-.8,1H4.5a.8.8,0,0,1-.6-1.1l.2-.2h15Z"/> 729 <path class="cls-2" d="M19.1,24.6H33.9c.2,0,.3,0,.4.3a1,1,0,0,1-.8,1H4.5a.8.8,0,0,1-.6-1.1H19.1Z"/> 730 <path class="cls-2" d="M19.1,27.1H33.9c.2,0,.3.1.4.3s-.3,1-.8,1H4.5a.8.8,0,0,1-.6-1.1c0-.1.1-.1.2-.2h15Z"/> 731 <path class="cls-2" d="M22.4,12.1A5,5,0,0,0,19.2,11a5.7,5.7,0,0,0-3.4,1,3,3,0,0,0-.3,4.9,5,5,0,0,0,3.1,1.2,4.9,4.9,0,0,0,3.7-.9A3,3,0,0,0,22.4,12.1Zm-1.2,4-1.5.4c0,.4,0,.4-.5.4h-.4c-.3,0-.4-.1-.4-.3v-.2l-1.7-.2c-.1,0-.4,0-.4-.2s.3-.6.5-.6h2.6l.4-.2
731-.4-.2-1.8-.5-.6-.3a.8.8,0,0,1-.2-1.3,2.2,2.2,0,0,1,1.2-.5h.5c.1-.2.1-.4.2-.4h.7c.1,0,.2.2.2.3s0,.2.2.2l1.1.2a.4.4,0,0,1,.4.3.6.6,0,0,1-.6.5h-2l-.3.2.3.2,1.7.5.9.3a1.1,1.1,0,0,1,.5.9A.9.9,0,0,1,21.2,16.1Z"/> 732 </g> 733 </g> 734</svg> 735 <svg class="payment-icon circle" id="ci-debit" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 38.1 38.1"> 736 <defs> 737 <style> 738 #ci-debit .cls-1 { 739 fill: #0058a0; 740 }#ci-debit .cls-2 { 741 fill: #fff; 742 } 743 </style> 744 </defs> 745 <title>Debit</title> 746 <g> 747 <circle class="cls-1" cx="19.1" cy="19.1" r="19.1" transform="translate(-7.9 19.1) rotate(-45)"/> 748 <g> 749 <path class="cls-2" d="M24.3,17.6h0Z"/> 750 <path class="cls-2" d="M31.6,13v-.7a2.1,2.1,0,0,0-2.1-1.6H8.6a2.1,2.1,0,0,0-2.1,2.2V25.2a2.1,2.1,0,0,0,2.2,2.2H29.4a2.1,2.1,0,0,0,2.2-2.2Zm-8.4,1.4a1,1,0,0,1,1.1-1h3.5c.7,0,1,.4,1,1.1v2a1,1,0,0,1-1,1.1H24.3a1,1,0,0,1-1.1-1.1Zm-7.4-1a.6.6,0,0,1,.6.6.6.6,0,0,1-.6.6.5.5,0,0,1-.6-.6A.6.6,0,0,1,15.8,13.4Zm-1.6.2c0-.3.2-.2.4-.2s.4-.1.4.2v.6c0,.4-.2.6-.6.4l-.2-.2Zm-.8-.2a.7.7,0,0,1,.7.6.6.6,0,0,1-.6.6c-.4,0-.7-.2-.7-.5A.7.7,0,0,1,13.4,13.4Zm-1.5,3.5v-.2c0-.4.1-.5.6-.4a.3.3,0,0,1,.1.2,2.1,2.1,0,0,1,0,.8c.1.3-.2.3-.4.3a.3.3,0,0,1-.3-.3v-.4Zm0-2.9v-.2c0-.4,0-.4.4-.4s.4.1.4.3a.9.9,0,0,0-.1.5c0,.4-.2.6-.6.4V14ZM10.3,24c0,.5-.2.6-.6.5a.3.3,0,0,0-.1-.2v-.9c0-.2.1-.2.3-.2s.4-.1.4.2v.5Zm-.7-7.1v-.2c0-.4.1-.5.5-.4a.2.2,0,0,1,.2.2v.8c0,.3-.2.3-.4.3s-.3,0-.3-.3v-.4Zm.7-3.2v.5c0,.4,0,.4-.4.4s-.3,0-.3-.3v-.6c-.1-.3.1-.3.4-.3S10.4,13.4,10.3,13.7Zm.8-.3a.7.7,0,0,1,.6.7.6.6,0,0,1-.6.5.6.6,0,0,1-.6-.6A.6.6,0,0,1,11.1,13.4Zm0,11.1a.6.6,0,1,1,0-1.2.6.6,0,1,1,0,1.2Zm0-6.9a.7.7,0,0,1-.6-.7.6.6,0,0,1,.6-.6.7.7,0,0,1,.6.7A.6.6,0,0,1,11.1,17.6ZM12.6,24c0,.5-.1.6-.5.5l-.2-.2v-.6c0-.4.2-.6.6-.5v.2c.1.2,0,.3,0,.5Zm.8-7.7a.9.9,0,0,1,.7.6.9.9,0,0,1-.6.7.7.7,0,0,1-.7-.6A.9.9,0,0,1,13.4,16.3Zm0,8.2a.6.6,0,1,1,0-1.2.7.7,0,0,1,.7.6A.7.7,0,0,1,13.4,24.5ZM15,24c0,.5-.2.6-.6.5l-.2-.2v-.9c0-.2.3-.2.4-.2s.4,0,.4.2v.5Zm0-7.1h0v.2c0,.4-.2.6-.6.5l-.2-.2v-.9c0-.2.2-.2.3-.2s.4-.1.5.2Zm.8,7.6a.6.6,0,0,1-.6-.6c-.1-.3.2-.6.6-.6a.6.6,0,0,1,0,1.2Zm0-6.9a.6.6,0,0,1-.6-.6.6.6,0,0,1,.6-.7.6.6,0,0,1,.6.6A.7.7,0,0,1,15.8,17.6Zm1.5-.7v.2c0,.4-.2.6-.6.5a.3.3,0,0,1-.1-.2,2.7,2.7,0,0,1,0-.9c0-.3.2-.2.4-.2s.3,0,.3.2Zm0,6.6v.4h0c0,.5,0,.5-.5.5s-.2-.1-.2-.2v-.8c0-.4.2-.3.4-.3S17.3,23.2,17.3,23.5Zm-.4-8.9c-.3,0-.4,0-.3-.3v-.6c-.1-.3.1-.3.3-.3s.4,0,.4.3V14h0v.2C17.3,14.6,17.2,14.7,16.9,14.6Zm1.2,9.9a.6.6,0,1,1,0-1.2.6.6,0,0,1,.6.6A.6.6,0,0,1,18.1,24.5Zm0-6.9a.6.6,0,0,1-.6-.6.7.7,0,0,1,.6-.7.7.7,0,0,1,.6.7A.6.6,0,0,1,18.1,17.6Zm0-3a.6.6,0,0,1-.6-.6.6.6,0,1,1,1.2,0A.6.6,0,0,1,18.1,14.6Zm1.5,2.3v.2c0,.4-.2.6-.6.4v-1c0-.3.2-.2.4-.2s.3,0,.3.2Zm0,7v.2c0,.4,0,.4-.4.4a.3.3,0,0,1-.3-.3v-.5c0-.4.2-.6.6-.4h.1v.5Zm-.3-9.3c-.4,0-.4,0-.4-.4v-.6c0-.2.2-.2.4-.2s.3-.1.3.2v.7C19.7,14.6,19.5,14.7,19.3,14.6Zm1.1,9.9a.6.6,0,0,1,0-1.2.5.5,0,0,1,.6.6A.6.6,0,0,1,20.4,24.5Zm0-9.9a.6.6,0,1,1,0-1.2.6.6,0,0,1,.6.6A.5.5,0,0,1,20.4,14.6Zm1.5,8.9v.4h0v.2c0,.4,0,.4-.4.4a.3.3,0,0,1-.3-.3v-.7c0-.4.3-.3.4-.3S22,23.2,21.9,23.5Zm0-9.8V14h0v.2c0,.4,0,.4-.4.4s-.3,0-.3-.3v-.6c0-.3.2-.3.4-.3S22,13.4,21.9,13.7ZM26,24.8a3,3,0,0,1-3-3,3,3,0,1,1,6,0A3,3,0,0,1,26,24.8Z"/> 751 <path class="cls-2" d="M27.1,20.7H25l-.2.9h2.4Z"/> 752 <path class="cls-2" d="M27.1,23V22H24.8l.2,1Z"/> 753 <path class="cls-2" d="M26.9,20.3c-.2-.5-.5-.9-.9-.9a1.2,1.2,0,0,0-.9.9h1.8Z"/> 754 <path class="cls-2" d="M26,24.2c.5,0,.7-.4.9-.8H25.1C25.3,23.8,25.5,24.2,26,24.2Z"/> 755 <path class="cls-2" d="M24.6,20.6l-.5-.3a2.1,2.1,0,0,0-.5,1.3h.8Z"/> 756 <path class="cls-2" d="M27.4,20.6l.2,1h1L28,20.3Z"/> 757 <path class="cls-2" d="M27.6,22l-.2,1.1.6.3.5-1.3h-.9Z"/> 758 <path class="cls-2" d="M24.6,23.1,24.4,22h-.9l.3.8c.2.6.2.6.8.3Z"/> 759 <path class="cls-2" d="M25,19.6h0l-.7.4.4.2Z"/> 760 <path class="cls-2" d="M27,24.1h0l.7-.5h-.4Z"/> 761 <path class="cls-2" d="M27.7,20l-.7-.4h0l.3.6Z"/> 762 <path class="cls-2" d="M24.3,23.6l.7.5h0l-.3-.6Z"/> 763 <path class="cls-2" d="M24.3,17h3.4c.4-.1.5-.2.5-.6V14.5c0-.4-.1-.5-.5-.5H24.3c-.4,0-.5.1-.5.5v2C23.8,16.8,23.9,16.9,24.3,17Z"/> 764 </g> 765 </g> 766</svg> 767 768 </div> 769 <div class="large-3 columns footer-social text-center"> 770 <h2>Social</h2> 771 <a href="https://www.google.com/maps?cid=9256045560735359224" target="_blank" title="Foothills Drywall & Renovation's Google Maps" rel="noreferrer noopener"><i class="fa fa-map-marker"></i></a> 772 <a href="https://www.facebook.com/profile.php?id=100075851305343" target="_blank" title="Foothills Drywall & Renovation's facebook" rel="noreferrer noopener"><i class="fa fa-facebook"></i></a> 773 </div> 774 </div> 775 </div> 776 <div class="content-wrapper disclaimer"> 777 <div class="row"> 778 <div class="large-3 columns large-centered text-center"> 779 <img src="https://linknow.com/linknow_images/linknow-logo-white.png" alt="Website Hosted By LinkNow&trade Media" width="200" height="75" loading="lazy" /> 780 </div> 781 </div> 782 </div> 783</footer><div class="lnm-policies text-center lnm-policy-footer-links"><ul class="lnm-policy-useful-links"><li class="lnm-policy-list-item"><a href="https://foothillshomerepair.ca/policy/privacy-policy/" class="lnm-policy-list-link">Privacy Policy</a></li></ul></div><style>.lnm-policies {background: white;}.lnm-policies li, .lnm-policies li.lnm-policy-list-item{display: inline-block;padding: 5px;}.lnm-policies a, .lnm-policies a.lnm-policy-list-link {color:#333333;}.lnm-policies ul.useful-links, .lnm-policies ul.lnm-policy-useful-links {color:#333333;}cmp-toolbar {display: inline-block !important;}@media (width <= 767px) {.lnm-policies { padding-bottom:100px;}}</style>
783<script type="speculationrules"> 784{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/*"},{"not":{"href_matches":["/wp-*.php","/wp-admin/*","/wp-content/uploads/sites/978/*","/wp-content/*","/wp-content/plugins/*","/wp-content/themes/hand4/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]} 785</script>
vendor: 1 bytes, line 785
785
786<script type="text/javascript">!function(){ var b=function(){ window.__AudioEyeSiteHash = "7494f4253eae5b79ba8a77b895dc7a22"; var a=document.createElement("script"); a.src="https://wsmcdn.audioeye.com/aem.js"; a.type="text/javascript"; a.setAttribute("async",""); document.getElementsByTagName("body")[0].appendChild(a)}; "complete"!==document.readyState?window.addEventListener?window.addEventListener("load",b):window.attachEvent&&window.attachEvent("onload",b):b()}(); </script>
786 787<style> 788.lnmreviewform { 789 width: 750px; 790 max-width: 100%; 791 margin: 0 auto; 792} 793.lnmreviewform #lnmreviewtext { 794 min-height: 150px; 795} 796.lnmcr-review-card { 797 margin: 45px auto; 798 padding: 45px 45px 65px 45px; 799 border: 1px solid #CCCCCC; 800 width: 100%; 801 max-width: 750px; 802} 803.lnmcr-review-card-title h3 { 804 margin: 0 auto; 805 806 padding: 0 0 10px 0; 807} 808.lnmcr-review-card-rating { 809 color:#ffcc00; 810 width: 100%; 811 max-width: 165px; 812 font-size: 28px; 813 display: inline-block; 814 float: left; 815} 816.lnmcr-review-card-author { 817 display: inline-block; 818 float: right; 819 padding: 0 25px 0 0; 820 821} 822.lnmcr-review-card-text { 823 margin: 20px 0; 824} 825.lnmcr-review-card-author span { 826 text-transform: capitalize; 827 display: block; 828 position: relative; 829 font-style: italic; 830 font-weight: bold; 831} 832 833 834.lnmcr-review-card-author span::before { 835 content: ""; 836 display: block; 837 width: 15px; 838 height: 1px; 839 background: #CCCCCC; 840 position: absolute; 841 top: 14px; 842 left: -25px; 843} 844 845.lnmcr-row { 846 padding-top: 45px; 847 padding-bottom: 45px; 848} 849.star-rating { 850 font-size: 40px; 851 padding: 0.25em 0.375em; 852 display: inline-flex; 853 flex-flow: row-reverse; 854 855 overflow: hidden; 856 border-radius: 0.75em; 857 background-color: white; 858} 859.star-rating input { 860 appearance:initial; 861 cursor: pointer; 862 position: relative; 863 padding: 0; 864 width: 1em; 865 height: 1em; 866 float: left; 867 text-align: center; 868 line-height: 1em; 869} 870.star-rating input::before, 871.star-rating input::after { 872 display: block; 873 top: 0; 874 bottom: 0; 875 left: 0; 876 right: 0; 877 position: absolute; 878} 879.star-rating input::before { 880 content: ""; 881 background-color: white; 882} 883.star-rating input::after { 884 content: "\2605"; 885 color: #CCCCCC; 886-webkit-transition: color 0.2s ease; 887-moz-transition: color 0.2s ease; 888-ms-transition: color 0.2s ease; 889-o-transition: color 0.2s ease; 890transition: color 0.2s ease; 891} 892.star-rating input:checked::after, 893.star-rating input:checked ~ input::after { 894 color: #ffcc00; 895} 896input.hasError, 897textarea.hasError { 898 border-color: red; 899} 900input.lnmcr-input-error { 901 border: 1px solid red !important; 902} 903input.errorType-charlength { 904 box-shadow: 10px 5px 5px red; 905} 906 907input.error { 908 border: 1px solid red !important; 909 /*box-shadow: 10px 5px 5px red;*/ 910} 911 912.hasError.errorType-charlength::after { 913 /*content: "x";*/ 914} 915.lnmreviewtextformError { 916 display: none !important; 917} 918 919#lnmreviewform .review-error { 920 border: 1px solid red; 921} 922span.success-message { 923 background: #4BB543; 924 color: white; 925 padding: 15px; 926} 927span.error-message { 928 background: #D32F2F; 929 color: white; 930 padding: 15px; 931} 932 933 934 935 936#review-response-container i.fa-solid.fa-spinner.fa-spin-pulse { 937 font-size: 28px; 938} 939 940.lnmcr-review-pagination a, 941.lnmcr-review-pagination span.current { 942 /* padding: 5px 10px; */ 943 background: none; 944 width: 30px; 945 height: 30px; 946 line-height: 26px; 947 margin: 0 2px 0 0; 948 border: 1px solid #CCCCCC; 949 display: inline-block; 950 font-size: 16px; 951} 952.lnmcr-review-pagination span.current { 953 background: #333; 954 color: white; 955} 956.lnmcr-review-pagination a:hover { 957 background: #333; 958 color: white; 959} 960input.review-error, textarea.review-error { 961 margin-bottom: 0; 962} 963.review-error-container { 964 display: none; 965 padding: 10px; 966 border-left: 1px solid red; 967 border-bottom: ; 968 border-bottom: 1px solid red; 969 border-right: 1px solid red; 970 margin-bottom: 25px; 971 color: white; 972 font-weight: bold; 973 background: red; 974} 975 976@media only screen and (max-width: 650px) {.lnmcr-review-card {max-width: 100%;}} 977</style>
vendor: 71 bytes, lines 977-979
977 978 979<script src="https://www.google.com/recaptcha/enterprise.js?render=
9796LflbUQsAAAAADQa-oHKDxYnfKpy0TfaniKv449Y
vendor: 45 bytes, line 979
979" id="lnm-recaptcha-enterprise-js"></script>
980<script id="lnm-recaptcha-enterprise-js-after"> 981/* <![CDATA[ */ 982console.log('[LNM] recaptcha inline loaded'); 983 984(function(){ 985 function ensureHidden(form){ 986 var el = form.querySelector('input[name="g-recaptcha-response"]'); 987 if(!el){ 988 el = document.createElement('input'); 989 el.type = 'hidden'; 990 el.name = 'g-recaptcha-response'; 991 form.appendChild(el); 992 } 993 return el; 994 } 995 996document.addEventListener('click', function(e){ 997 var el = e.target.closest('#contactForm #submitContact, #contactForm .submit, #requestForm #submitContact'); 998 if(!el) return; 999 1000 var form = el.closest('form'); 1001 if(!form) return; 1002 1003 // trigger a real submit event path (lets other listeners run) 1004 e.preventDefault(); 1005 1006 if (form.requestSubmit) { 1007 form.requestSubmit(); // preferred: dispatches submit event 1008 } else { 1009 // fallback for older browsers 1010 var evt = document.createEvent('Event'); 1011 evt.initEvent('submit', true, true); 1012 if (form.dispatchEvent(evt)) { 1013 form.submit(); 1014 } 1015 } 1016}, true); 1017 1018 1019 1020 document.addEventListener('submit', function(e){ 1021 var form = e.target; 1022 if(!form || form.nodeName !== 'FORM') return; 1023 1024console.log('[LNM] submit captured', form); 1025 1026 // Only forms you explicitly mark in the HTML. 1027 if(!form.querySelector('input[name="lnm_recaptcha"][value="1"]')) return; 1028 1029 // Prevent infinite loop: after we inject a token once, allow the submit. 1030 if(form.dataset && form.dataset.lnmRecaptchaDone === '1') return; 1031 1032 var hidden = ensureHidden(form); 1033 1034 // If we already have a token, let it submit. 1035 if(hidden && hidden.value) { 1036 if(form.dataset) form.dataset.lnmRecaptchaDone = '1'; 1037 return; 1038 } 1039 1040 // If grecaptcha isn't available, DO NOT block submission. 1041 // (Server-side enforce may still reject; but UX won't "freeze".) 1042 if(!window.grecaptcha || !grecaptcha.enterprise || !grecaptcha.enterprise.execute) { 1043 return; 1044 } 1045 1046 // From this point on, we are taking over submission. 1047 e.preventDefault(); 1048 1049 var done = false; 1050 1051 function finishSubmit(){ 1052 if(done) return; 1053 done = true; 1054 if(form.dataset) form.dataset.lnmRecaptchaDone = '1'; 1055 form.submit(); 1056 } 1057 1058 // Hard safety: never allow recaptcha to stall the UX. 1059 var timer = setTimeout(function(){ 1060 finishSubmit(); // fallback: submit even if token never arrives 1061 }, 6000); 1062 1063 try { 1064 grecaptcha.enterprise.ready(function(){ 1065 try { 1066 var p = grecaptcha.enterprise.execute('6LflbUQsAAAAADQa-oHKDxYnfKpy0TfaniKv449Y', {action: 'lnm_email_00119043797'}); 1067 if(p && typeof p.then === 'function'){ 1068 p.then(function(token){ 1069 clearTimeout(timer); 1070 hidden.value = token || ''; 1071 finishSubmit(); 1072 }).catch(function(){ 1073 clearTimeout(timer); 1074 finishSubmit(); 1075 }); 1076 } else { 1077 clearTimeout(timer); 1078 finishSubmit(); 1079 } 1080 } catch(err){ 1081 clearTimeout(timer); 1082 finishSubmit(); 1083 } 1084 }); 1085 } catch(err){ 1086 clearTimeout(timer); 1087 finishSubmit(); 1088 } 1089 }, true); 1090})(); 1091//# sourceURL=lnm-recaptcha-enterprise-js-after 1092/* ]]> */ 1093</script>
vendor: 1 bytes, line 1093
1093
1094<script src="https://foothillshomerepair.ca/wp-content/themes/hand4/scripts/cookie-js.min.js" id="cookiejs-js"></script>
vendor: 1 bytes, line 1094
1094
1095<script src="https://foothillshomerepair.ca/wp-content/themes/hand4/scripts/lnm-scripts.min.js" id="lnmscripts-js"></script>
vendor: 1 bytes, line 1095
1095
1096<script src="https://foothillshomerepair.ca/wp-content/plugins/linknowmedia-email/scripts/compiled.js" id="formjs-js"></script>
vendor: 1 bytes, line 1096
1096
1097<script id="formjs-js-after"> 1098/* <![CDATA[ */ 1099(function () { 1100 function getForms() { 1101 return Array.prototype.slice.call(document.querySelectorAll('form.contactForm, form#contactForm')); 1102 } 1103 1104 function getKey(form) { 1105 var host = window.location.host || ''; 1106 var path = window.location.pathname || ''; 1107 var formId = form ? (form.id || 'contactForm') : 'contactForm'; 1108 return 'lnm_form_retention:' + host + ':' + path + ':' + formId; 1109 } 1110 1111 function trackedNames() { 1112 return ['fullName', 'phoneNumber', 'emailAddress', 'emailMessage']; 1113 } 1114 1115 function saveForm(form) { 1116 if (!form || !window.sessionStorage) return; 1117 1118 var data = {}; 1119 trackedNames().forEach(function (name) { 1120 var field = form.querySelector('[name="' + name + '"]'); 1121 if (field) { 1122 data[name] = field.value || ''; 1123 } 1124 }); 1125 1126 try { 1127 sessionStorage.setItem(getKey(form), JSON.stringify(data)); 1128 } catch (e) {} 1129 } 1130 1131 function restoreForm(form) { 1132 if (!form || !window.sessionStorage) return; 1133 1134 try { 1135 var raw = sessionStorage.getItem(getKey(form)); 1136 if (!raw) return; 1137 1138 var data = JSON.parse(raw); 1139 if (!data || typeof data !== 'object') return; 1140 1141 trackedNames().forEach(function (name) { 1142 var field = form.querySelector('[name="' + name + '"]'); 1143 if (!field) return; 1144 1145 if ((field.value || '') === '' && typeof data[name] !== 'undefined') { 1146 field.value = data[name]; 1147 } 1148 }); 1149 } catch (e) {} 1150 } 1151 1152 function clearForCurrentPage() { 1153 if (!window.sessionStorage) return; 1154
1155 getForms().forEach(function (form) { 1156 try { 1157 sessionStorage.removeItem(getKey(form)); 1158 } catch (e) {} 1159 }); 1160 1161 if (!getForms().length) { 1162 var host = window.location.host || ''; 1163 var path = window.location.pathname || ''; 1164 try { 1165 sessionStorage.removeItem('lnm_form_retention:' + host + ':' + path + ':contactForm'); 1166 } catch (e) {} 1167 } 1168 } 1169 1170 document.addEventListener('DOMContentLoaded', function () { 1171 var retentionMeta = document.getElementById('lnm-form-retention-meta'); 1172 var shouldRetain = retentionMeta && retentionMeta.getAttribute('data-retain-form') === '1'; 1173 1174 if (!shouldRetain && retentionMeta) { 1175 clearForCurrentPage(); 1176 } 1177 1178 getForms().forEach(function (form) { 1179 restoreForm(form); 1180 1181 trackedNames().forEach(function (name) { 1182 var field = form.querySelector('[name="' + name + '"]'); 1183 if (!field) return; 1184 1185 field.addEventListener('input', function () { 1186 saveForm(form); 1187 }); 1188 1189 field.addEventListener('change', function () { 1190 saveForm(form); 1191 }); 1192 }); 1193 1194 form.addEventListener('submit', function () { 1195 saveForm(form); 1196 }, true); 1197 }); 1198 }); 1199})(); 1200//# sourceURL=formjs-js-after 1201/* ]]> */ 1202</script>
vendor: 1 bytes, line 1202
1202
1203<script src="https://foothillshomerepair.ca/wp-content/themes/hand4/js/foundation/foundation.equalizer.js" id="equalizer-js"></script>
1203 1204 1205 <style> 1206 body.covid-banner { 1207 padding-top: 50px !important; 1208 } 1209 #covid-banner { 1210 display: none; 1211 } 1212 .covid-banner #covid-banner { 1213 background: #960000; 1214 display: block; 1215 border-bottom: 1px solid #960000; 1216 position: fixed; 1217 width: 100%; 1218 height: 50px; 1219 text-align: center; 1220 font-family: "Arial"; 1221 display: block; 1222 top: 0px; 1223 z-index: 9999999999999; 1224 } 1225 .covid-banner #covid-readmore { 1226 position: absolute; 1227 width: 0; 1228 height: 0; 1229 top: 0; 1230 left: 0; 1231 overflow: hidden; 1232 text-align: left; 1233 } 1234 .covid-banner p.banner-toggle { 1235 /*cursor: pointer;*/ 1236 font-family: "Arial"; 1237 font-size: 18px; 1238 font-weight: lighter; 1239 line-height: 45px; 1240 margin: 3px; 1241 color:white; 1242 } 1243 .covid-banner #covid-readmore.active { 1244 width: 100%; 1245 min-height: 100vh; 1246 position: relative; 1247 background: white; 1248 padding: 15%; 1249 } 1250 .covid-banner #close-covid-banner { 1251 position: absolute; 1252 display: none; 1253 right: 10px; 1254 font-size: 27px; 1255 color: white; 1256 cursor: pointer; 1257 width: 50px; 1258 height: 50px; 1259 text-align: center; 1260 line-height: 50px; 1261 } 1262 .covid-banner #close-covid-banner.visible { 1263 display: block; 1264 } 1265 .read-more-banner-button { 1266 cursor: pointer; 1267 display: inline-block; 1268 border: 1px solid #ffff; 1269 line-height: 35px; 1270 margin: 0 15px; 1271 padding: 0 15px; 1272 border-radius: 10px; 1273 font-weight: lighter; 1274 } 1275 </style> 1276
1276<script> 1277 $(function(){ 1278 $("body").addClass("covid-banner"); 1279 $(".read-more-banner-button").on("click", function(){ 1280 $("#covid-readmore").toggleClass("active"); 1281 $("#close-covid-banner").toggleClass("visible"); 1282 }); 1283 $("#close-covid-banner").on("click", function(){ 1284 $("#covid-readmore").toggleClass("active"); 1285 $("#close-covid-banner").toggleClass("visible"); 1286 }); 1287 }); 1288 </script>
1288 1289 1290 1291 1292 1293 <div id='covid-banner'> 1294 <span id='close-covid-banner'> 1295 <i class='fa fa-close'></i> 1296 </span> 1297 <p class='banner-toggle'> 1298 Winter Special 2026 <span class='read-more-banner-button'> Read More</span> 1299 </p> 1300 <div id='covid-readmore'> 1301 <p>2026 New Years Winter Special!!!<br />NO GST For ALL Services<br /> 1302<br /><strong>Call, TEXT or Email for More Information!</strong></p> 1303 </div> 1304 </div> 1305 1306 1307
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.