www.absolutepaintingservices.ca
Open in
urlscan Pro
2606:4700:3036::ac43:c93c
Public Scan
Submitted URL: https://absolutepaintingservices.ca/
Effective URL: https://www.absolutepaintingservices.ca/
Submission: On March 12 via api from US — Scanned from US
Effective URL: https://www.absolutepaintingservices.ca/
Submission: On March 12 via api from US — Scanned from US
Form analysis
2 forms found in the DOMName: wf-form-get_free_estimate — POST https://forms.wboost.io/api/f/XXp1Aq30VJ
<form id="wf-form-get_free_estimate" name="wf-form-get_free_estimate" data-name="get_free_estimate" action="https://forms.wboost.io/api/f/XXp1Aq30VJ" method="post" data-comrade-form="XXp1Aq30VJ" class="contact__form-content"
data-wf-page-id="65b9eb5ba92f1955bfc2bc56" data-wf-element-id="7c22fb7e-69e7-dce0-aa70-c1b8eb916b1d" aria-label="get_free_estimate">
<div class="contact__items">
<div class="contact__group">
<div class="contact__item"><label for="first_name" class="contact__label">First Name *</label><input class="contact__input w-input" data-akismet="name" maxlength="256" name="first_name" data-name="first_name" placeholder="John" type="text"
id="first_name" required="">
<p class="form-err-msg">This field is required.</p>
</div>
<div class="contact__item"><label for="last_name" class="contact__label">Last Name *</label><input class="contact__input w-input" data-akismet="name" maxlength="256" name="last_name" data-name="last_name" placeholder="Cravec" type="text"
id="last_name" required="">
<p class="form-err-msg">This field is required.</p>
</div>
</div>
<div class="contact__group">
<div class="contact__item"><label for="email" class="contact__label">Email *</label><input class="contact__input w-input" data-akismet="email" maxlength="256" name="email" data-name="email" placeholder="info@gmail.com" type="email" id="email"
required="">
<p class="form-err-msg">This field is required.</p>
</div>
<div class="contact__item"><label for="phone_number" class="contact__label">Phone *</label><input class="contact__input w-input" maxlength="12" name="phone_number" data-name="phone_number" placeholder="(xxx) xxx-xxxx" minlength="12" type="tel"
id="phone_number" required="">
<p class="form-err-msg">This field is required.</p>
</div>
</div>
<div class="contact__group">
<div class="contact__item"><label for="city" class="contact__label">City *</label><input class="contact__input w-input" maxlength="256" name="city" data-name="city" placeholder="Toronto" type="text" id="city" required=""></div>
<div class="contact__item"><label for="street_name" class="contact__label">Street Address *</label><input class="contact__input w-input" maxlength="256" name="street_name" data-name="street_name" placeholder="123 Bremner Blvd " type="text"
id="street_name" required=""></div>
</div>
<div class="contact__group">
<div class="contact__item"><label for="postal_code" class="contact__label">Postal Code *</label><input class="contact__input w-input" maxlength="256" name="postal_code" data-name="postal_code" placeholder="82637 " type="text" id="postal_code"
required=""></div>
<div class="contact__item"><label for="services_required" class="contact__label">Services Required *</label><select id="services_required" name="services_required" data-name="services_required" required=""
class="contact__input contact__input_select w-select">
<option value="Interior Painting">Interior Painting</option>
<option value="Exterior Painting">Exterior Painting</option>
<option value="Lawn and Garden Maintenance">Lawn and Garden Maintenance</option>
<option value="Interlock">Interlock</option>
<option value="Handyman">Handyman</option>
<option value="Landscaping">Landscaping</option>
<option value="Commercial Painting">Commercial Painting</option>
<option value="Window Cleaning">Window Cleaning</option>
<option value="Eavestrough/Gutter Cleaning">Eavestrough/Gutter Cleaning</option>
<option value="Snow Removal">Snow Removal</option>
<option value="Deck/Fence repair or build">Deck/Fence repair or build</option>
<option value="Other">Other</option>
</select></div>
</div>
<div class="contact__item"><label for="message" class="contact__label">Additional Notes</label><textarea class="contact__input w-input" data-akismet="message" maxlength="5000" name="additional_notes" data-name="additional_notes"
placeholder="Additional Notes" id="message"></textarea></div>
<div class="contact__item"><label class="w-checkbox contact__checkbox">
<div class="w-checkbox-input w-checkbox-input--inputType-custom contact__checkbox-field"></div><input type="checkbox" name="future_promotions" id="future_promotions_1" data-name="future_promotions"
style="opacity:0;position:absolute;z-index:-1"><span class="contact__chackbox-label w-form-label" for="future_promotions">Yes, I’m interested in receiving future promotions and information regarding Absolute Home Services. We will not sell
or share your information with third parties.</span>
</label></div>
</div>
<div class="section-button section-button_right"><input type="submit" data-wait="Please wait..." id="submit_button_1" class="button button_purple w-button" value="Get Free Estimate"></div>
<div class="style w-embed">
<style>
select:not(.contact__input_aside) {
background: url('https://assets-global.website-files.com/6434f924e5b4b364bcb3edd5/643e4d55c25f421f3c0e4624_select.svg') no-repeat right 18px top 50%;
-moz-appearance: none;
-webkit-appearance: none;
appearance: none;
}
@media screen and (min-width: 768px) {
.contact__input_aside {
background: url('https://assets-global.website-files.com/6434f924e5b4b364bcb3edd5/64462d808b2e40179b94f7df_Group%203063.svg') no-repeat right 18px top 50%;
-moz-appearance: none;
-webkit-appearance: none;
appearance: none;
}
}
@media screen and (max-width: 767px) {
.contact__input_aside {
background: url('https://assets-global.website-files.com/6434f924e5b4b364bcb3edd5/643e4d55c25f421f3c0e4624_select.svg') no-repeat right 18px top 50%;
-moz-appearance: none;
-webkit-appearance: none;
appearance: none;
}
}
.contact__checkbox-field {
box-shadow: none !important;
}
.contact__form-content input:-webkit-autofill,
.contact__form-content input:-webkit-autofill:hover,
.contact__form-content input:-webkit-autofill:focus,
.contact__form-content select:-webkit-autofill,
.contact__form-content select:-webkit-autofill:hover,
.contact__form-content select:-webkit-autofill:focus {
//-webkit-text-fill-color: #9B9B9B;
-webkit-box-shadow: 0 0 0px 1000px #f8f6fa inset;
transition: background-color 5000s ease-in-out 0s;
}
.cft-success-container {
position: absolute;
top: 0;
bottom: 0;
background: #f8f8f8;
display: flex;
align-items: center;
justify-content: center;
border-radius: 20px;
color: #50267c;
font-size: 40px;
line-height: 44px;
font-family: 'Work-sans-font';
font-weight: 400;
padding: 32px;
}
.in-form .contact__label {
font-size: 16px;
color: #505050;
line-height: 26px;
font-weight: 500;
max-width: none;
font-family: "Manrope-font";
}
</style>
</div>
<div class="script w-embed w-script">
<script>
var Webflow = Webflow || [];
Webflow.push(function() {
if (!Webflow.env("editor")) {
if (window.location.href.indexOf("/contact-us") == -1 && window.location.href.indexOf('/free-quote') == -1 && document.querySelector('#how-hear-block')) {
document.querySelector('#how-hear-block').classList.add('in-form');
}
function normal(input) {
input.css({
"border-color": "#909090",
//color: "#9B9B9B",
});
input.siblings(".form-err-msg").slideUp();
}
function focus(input) {
input.css({
"border-color": "#50267C",
color: "#262626",
});
input.siblings(".form-err-msg").slideUp();
}
function success(input) {
input.not('input[type="submit"]').css({
"border-color": "#909090",
//color: "#9B9B9B",
});
input.siblings(".form-err-msg").slideUp();
}
function invalid(input) {
input.css({
"border-color": "#E41616",
//color: "#9B9B9B",
});
input.siblings(".form-err-msg").slideDown();
}
let mainForm = $("#estimate-form");
// focus
function getFocus(form) {
$("input", form).not('input[type="submit"]').on("focus", function() {
focus($(this));
});
$("textarea", form).on("focus", function() {
focus($(this));
});
$("select", form).on("focus", function() {
focus($(this));
});
}
getFocus(mainForm);
// required fields validator + textarea
function changeReqInput(form) {
$("textarea", form).on("blur", function() {
if ($(this).val().length > 0) {
success($(this));
} else {
normal($(this));
}
});
$("select", form).on("blur", function() {
if ($(this).val().length > 0) {
success($(this));
} else {
normal($(this));
}
});
$("input", form).not('input[type="tel"]', 'input[type="submit"]', 'input[type="email"]').on("blur", function() {
if ($(this).val().length > 0) {
success($(this));
} else {
normal($(this));
}
});
}
changeReqInput(mainForm);
// phone validator
(function() {
const isNumericInput = (event) => {
const key = event.keyCode;
return (key >= 48 && key <= 57) || (key >= 96 && key <= 105);
};
const isModifierKey = (event) => {
const key = event.keyCode;
return (event.shiftKey === true || key === 35 || key === 36 || key === 8 || key === 9 || key === 13 || key === 46 || (key > 36 && key < 41) || ((event.ctrlKey === true || event.metaKey === true) && (key === 65 || key === 67 ||
key === 86 || key === 88 || key === 90)));
};
const enforceFormat = (event) => {
if (!isNumericInput(event) && !isModifierKey(event)) {
event.preventDefault();
}
};
const formatToPhone = (event) => {
if (isModifierKey(event)) {
return;
}
const target = event.target;
const input = target.value.replace(/\D/g, "").substring(0, 10);
const zip = input.substring(0, 3);
const middle = input.substring(3, 6);
const last = input.substring(6, 10);
if (input.length > 6) {
target.value = `${zip}-${middle}-${last}`;
} else if (input.length > 3) {
target.value = `${zip}-${middle}`;
} else if (input.length > 0) {
target.value = `${zip}`;
}
};
$("input[type='tel']").on("keydown", enforceFormat);
$("input[type='tel']").on("keyup", formatToPhone);
$("input[type='tel']").on("paste", function(event) {
if (event.originalEvent.clipboardData.getData("Text").match(/[^\d]/)) {
event.preventDefault();
}
});
})();
let invalidPhone = true;
$('input[type="tel"]').on("input", function() {
if (this.validity.tooShort) {
invalidPhone = true;
this.setCustomValidity("Phone is invalid");
} else {
invalidPhone = false;
this.setCustomValidity("");
}
});
function changePhone(form) {
$('input[type="tel"]', form).on("blur", function() {
if ($(this).val().length == 0) {
normal($(this));
} else if (invalidPhone) {
invalid($(this));
} else {
success($(this));
}
});
}
changePhone(mainForm);
//Email validator
function validateEmail(email) {
var re = /[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?/;
return re.test(String(email).toLowerCase());
}
function changeEmail(form) {
$('input[type="email"]', form).on("blur", function(event) {
const email = $('input[type="email"]', form);
if (!validateEmail(email.val()) && email.val().length > 0) {
invalid(email);
} else if (email.val().length == 0) {
normal(email);
} else {
success(email);
}
});
}
changeEmail(mainForm);
// submit form-->
function submitForm(form) {
$('input[type="submit"]', form).on("click", function(event) {
let arrInputs = $("input[required]", form).not('input[type="submit"]', 'input[type="tel"]', 'input[type="email"]');
let success = true;
arrInputs.each(function() {
if ($(this).val().length == 0) {
event.preventDefault();
invalid($(this));
success = false;
}
});
if ($('input[type="tel"]', form).val().length == 0 || invalidPhone) {
event.preventDefault();
invalid($('input[type="tel"]', form));
success = false;
}
if (!validateEmail($('input[type="email"]', form).val())) {
event.preventDefault();
if (!$('input[type="email"]', form).siblings(".form-err-msg").hidden) {
invalid($('input[type="email"]', form));
success = false;
}
}
});
}
submitForm(mainForm);
}
});
</script>
</div>
</form>
Name: wf-form-Get-our-newsletter — GET
<form id="newsletter-form" name="wf-form-Get-our-newsletter" data-name="Get our newsletter" method="get" class="newsletter__form" data-wf-page-id="65b9eb5ba92f1955bfc2bc56" data-wf-element-id="c57f1102-2b56-8e1d-2a78-99a8b323098f"
aria-label="Get our newsletter">
<div class="style w-embed">
<style>
.newsletter__form input:-webkit-autofill,
.newsletter__form input:-webkit-autofill:hover,
.newsletter__form input:-webkit-autofill:focus,
.newsletter__form select:-webkit-autofill,
.newsletter__form select:-webkit-autofill:hover,
.newsletter__form select:-webkit-autofill:focus {
-webkit-text-fill-color: #fff;
-webkit-box-shadow: 0 0 0px 1000px transparent inset;
transition: background-color 5000s ease-in-out 0s;
}
</style>
</div>
<div class="script w-embed w-script">
<script>
var Webflow = Webflow || [];
Webflow.push(function() {
if (!Webflow.env("editor")) {
function normalWhite(input) {
input.css({
"border-color": "#fff",
color: "#fff",
});
input.siblings(".form-err-msg").slideUp();
}
function focusWhite(input) {
input.css({
"border-color": "#fff",
color: "#fff",
});
input.siblings(".form-err-msg").slideUp();
}
function successWhite(input) {
input.css({
"border-color": "#fff",
color: "#fff",
});
input.siblings(".form-err-msg").slideUp();
}
function invalidWhite(input) {
input.css({
"border-color": "#E41616",
color: "#fff",
});
input.siblings(".form-err-msg").slideDown();
}
let newsForm = $("#newsletter-form");
// focus
function getFocusWhite(form) {
$("input", form).not('input[type="submit"]').on("focus", function() {
focusWhite($(this));
});
}
getFocusWhite(newsForm);
//Email validator
function validateNewsEmail(email) {
var re = /[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?/;
return re.test(String(email).toLowerCase());
}
function changeEmailWhite(form) {
$('input[type="email"]', form).on("blur", function(event) {
const email = $('input[type="email"]', form);
if (!validateNewsEmail(email.val()) && email.val().length > 0) {
invalidWhite(email);
} else if (email.val().length == 0) {
normalWhite(email);
} else {
successWhite(email);
}
});
}
changeEmailWhite(newsForm);
// submit form-->
function submitWhiteForm(form) {
$('input[type="submit"]', form).on("click", function(event) {
let success = true;
if (!validateNewsEmail($('input[type="email"]', form).val())) {
event.preventDefault();
if (!$('input[type="email"]', form).siblings(".form-err-msg").hidden) {
invalidWhite($('input[type="email"]', form));
success = false;
}
}
});
}
submitWhiteForm(newsForm);
}
});
</script>
</div><label for="email-newsletter" class="newsletter__label">Get our newsletter!</label>
<div class="newsletter__group">
<div class="contact__item"><input class="contact__input contact__input_white w-input" maxlength="256" name="Your-Email" data-name="Your Email" placeholder="Your Email" type="email" id="email-newsletter" required="">
<p class="form-err-msg">This field is required.</p>
</div><input type="submit" data-wait="Please wait..." class="button button_newsletter w-button" value="Sign Up">
</div>
</form>
Text Content
* Services * * Residential Painting services * Commercial Painting Services * Projects * Testimonials * About Us * * Our Story * Contact Us * Contact Us Get Free Estimate Call Today! (888) 846-5540 Email us info@absolutehomeservices.ca Privacy Policy @ 2024 Absolute Home Services Created by Comrade Digital Marketing Agency (888) 846-5540 Get a Free Estimate Absolute Painting Services A HOME IMPROVEMENTS CONTRACTOR SERVING THE GREATER TORONTO AREA Need your home or business painted? Look now further than Absolute Home Services We are experts in interior and exterior residential and commercial painting Get a Free Estimate * 9.7 rating 403 reviews * 4.9 rating 643 reviews * 4.7 rating 188 reviews PAINTING SERVICES You can rely on a hassle free service from our Project Managers and our field staff so you don’t have to worry. Our uniformed skilled painters are professionals with experience in interior and exterior painting. Our Services Residential Painting Company Commercial Painting Services RESIDENTIAL PAINTING COMPANY Change the entire exterior of your home, refresh your bedroom or paint your entire home with our professional painting teams and top of the line paints. * Exterior House Painting Exterior House Painting Extensive preparation and top of the line paint is essential for a long lasting exterior paint job. We take extra time and care with the preparation to ensure your paint is going to adhere and last as long as possible. Painting your home every 5-7 years is recommended to maintain your home for the long run. * Interior House Painting Interior House Painting Our interior painting crews have years of experience to get the job done right but also done efficently and clean. A professional paint job comes with both quality an d efficiency. * Deck Staining & Painting Deck Staining & Painting Deck stain can help keep your deck looking great and protect it from the elements. For the longest lasting deck stain, it will require a dry surface, proper ventilation, thorough preparation and a great product. * Drywall Repair Drywall Repair Interior paint jobs often require some drywall repair to bring them back to life. Our painting or handyman crews are skilled in doing any size drywall repair from a small dent to an entire room. View Residential Services COMMERCIAL PAINTING SERVICES Business and Commercial Painting Services that cater to the needs of your business. Our teams can tackle any project from interior painting to exterior paiinting and work around your needs to ensure you can continue to run your business without interruption. * Exterior Painting Exterior Painting Transform the exterior of your business to create a welcoming and fresh feel to your business. Our teams have the tools, lifts, training and skils to tackle exterior commercial painting projects. * Interior Painting Interior Painting Give your business a facelift with a fresh interior paint job that represents the brand and vision of your company. We can work outside of business hours so we don’t disturb your business workflow. * Deck and Fence Staining Deck and Fence Staining Our crews can repair and refinish your deck or fence for your business with skilled carpenters and painters who take pride in what they do. With top of the line stain and thorough preparation, we can refurbish your deck or fence. * Cabinet Painting Cabinet Painting Does your office kitchen or bathroom need an upgrade? Our painting crews can provide a spray finish to your office cabinets to give them a modern appearance. View Commercial Services READY TO START YOUR PROJECT? Our team of skilled painters is dedicated to providing top-quality workmanship and exceptional service, no matter the size or scope of your project. Whether you`re looking to update a single room or repaint your entire house, we`ve got you covered. Get a Free Estimate OUR PROJECTS STAIRCASE STAINING AND PAINTING Burlington About the Project Before After COTTAGE PAINTING Muskoka About the Project Before After BOATHOUSE PAINTING Muskoka About the Project Before After WHOLE EXTERIOR PAINTING Burlington About the Project Before After BRICK PAINTING Burlington About the Project Before After DECK REFINISHING Oakville About the Project Before After FRONT PORCH STAINING Toronto About the Project Before After STAIRCASE PAINTING Oakville About the Project Before After VINYL SIDING PAINTING Burlington About the Project Before After EXTERIOR PAINTING BURLINGTON Burlington About the Project Before After HAMILTON EXTERIOR PAINTING Hamilton About the Project Before After KITCHEN CABINET PAINTING Oakville About the Project Before After LAKE JOSEPH EXTERIOR PAINTING Muskoka About the Project Before After DORSET EXTERIOR PAINTING Dorset About the Project Before After WHAT OUR CLIENTS SAY Contacted Absolute Home Services for some exterior painting on our house and was thoroughly impressed with them. They responded quickly and professionally and the job was handled efficiently with expert quality and detail. I would definitely recommend them and plan on using their services for future projects. J.D. 5 Absolute Home Services did a fantastic job fixing our stairs and refinishing our front deck. Looks brand new. They were clean, courteous and efficient. Job was finished on time and no extra costs or surprises. Michael Dargaval 5 We had the company sand and stain our deck. It was a great experience from start to finish. We were so pleased with the quality of their work. allan smith 5 ABSOLUTE PAINTING SERVICES - TRUSTED PAINTING CONTRACTOR We're here to simplify your life by handling the time-consuming and arduous tasks involved in home maintenance. Operating as a family-owned business since 2012, we've successfully connected numerous delighted homeowners with skilled crews for repair, installation, and maintenance services. Count on us to ensure exceptional quality for all your projects. Allow us to assist in turning your home dreams into reality! About Us WE`RE TRUSTED BY OUR CLIENTS * CLEAN UP After completing the work, we will thoroughly clean up to ensure that every room we work on is spotless, including sweeping, vacuuming, and wiping down the area. We will ensure we leave it better than we found it. * QUICK & EFFICIENT We have multiple teams of interior painters, so we can undertake any size project and ensure it is completed quickly, efficiently, and with minimal disturbance. * EXPERIENCED TEAM Our team has the expertise to help you choose the right products for your home. With years of experience, we ensure your project is done on time and on budget. * * * OUR OTHER SERVICES * Landscaping * Deck & Fence * Handyman OUR PAINTING PROFESSIONALS As a leading home improvement contractor, we're proud to offer our services to Hamilton, Burlington, Oakville, Mississauga, Milton, Muskoka and Toronto. LOCATIONS WE SERVE We proudly service the Muskoka area and beyond including Mississauga, Toronto, Burlington and Oakville. REQUEST A FREE QUOTE TODAY Complete the form below and a representative will contact you shortly to arrange your free estimate. First Name * This field is required. Last Name * This field is required. Email * This field is required. Phone * This field is required. City * Street Address * Postal Code * Services Required *Interior PaintingExterior PaintingLawn and Garden MaintenanceInterlockHandymanLandscapingCommercial PaintingWindow CleaningEavestrough/Gutter CleaningSnow RemovalDeck/Fence repair or buildOther Additional Notes Yes, I’m interested in receiving future promotions and information regarding Absolute Home Services. We will not sell or share your information with third parties. Our Contact Info * 5025 Guelph line, Burlington, ON L7P 0A5 * (888) 846-5540 * info@absolutehomeservices.ca Get our newsletter! This field is required. Thank you! Your submission has been received! Oops! Something went wrong while submitting the form. Privacy Policy @ 2024 Absolute Home Services Created By Comrade Digital Marketing Agency