{"id":649,"date":"2022-10-07T07:06:13","date_gmt":"2022-10-07T07:06:13","guid":{"rendered":"https:\/\/startersites.io\/elementor\/renovation\/?page_id=649"},"modified":"2026-07-23T15:31:13","modified_gmt":"2026-07-23T13:31:13","slug":"home","status":"publish","type":"page","link":"https:\/\/lemcomrenovations.urbanlifestylegroup.co.za\/","title":{"rendered":"Home"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"649\" class=\"elementor elementor-649\">\n\t\t\t\t<div class=\"elementor-element elementor-element-4218f299 e-con-full e-flex e-con e-parent\" data-id=\"4218f299\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-11afe431 elementor-widget elementor-widget-html\" data-id=\"11afe431\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- \r\n  MAIN CAROUSEL CONTAINER\r\n  This is the full hero section.\r\n  Everything inside this div belongs to the carousel.\r\n-->\r\n<div class=\"custom-hero-carousel\">\r\n\r\n  <!-- \r\n    SLIDE 1\r\n    This is the first image.\r\n    The word \"active\" means this slide is visible when the page first loads.\r\n  -->\r\n  <div class=\"carousel-slide active\">\r\n    <img decoding=\"async\" src=\"https:\/\/lemcomrenovations.urbanlifestylegroup.co.za\/wp-content\/uploads\/2026\/06\/pexels-waqas-ilyas-81841622-36903860.jpg\" alt=\"Slide 1\">\r\n  <\/div>\r\n\r\n  <!-- \r\n    SLIDE 2\r\n    This slide starts hidden.\r\n    JavaScript will show it after a few seconds.\r\n  -->\r\n  <div class=\"carousel-slide\">\r\n    <img decoding=\"async\" src=\"https:\/\/lemcomrenovations.urbanlifestylegroup.co.za\/wp-content\/uploads\/2026\/06\/pexels-deno-wang-205948777-11671082.jpg\" alt=\"Slide 2\">\r\n  <\/div>\r\n\r\n  <!-- \r\n    SLIDE 3\r\n    Add more slides by copying this block and changing the image URL.\r\n  -->\r\n  <div class=\"carousel-slide\">\r\n    <img decoding=\"async\" src=\"https:\/\/lemcomrenovations.urbanlifestylegroup.co.za\/wp-content\/uploads\/2026\/06\/pexels-charlotteblackcarservice-36511381.jpg\" alt=\"Slide 3\">\r\n  <\/div>\r\n  \r\n  <div class=\"https:\/\/lemcomrenovations.urbanlifestylegroup.co.za\/wp-content\/uploads\/2026\/06\/pexels-artbovich-8082327.jpg\" alt =\"Slide 3\">\r\n      \r\n  <\/div>\r\n\r\n  <!-- \r\n    OVERLAY\r\n    This sits on top of the image.\r\n    It makes the background image softer so the text is easier to read.\r\n  -->\r\n  <div class=\"carousel-overlay\"><\/div>\r\n\r\n  <!-- \r\n    TEXT CONTENT\r\n    This is the heading, paragraph, and button that appear on top of the carousel.\r\n  -->\r\n  <div class=\"carousel-content\">\r\n    <h1>LEMCOM RENOVATIONS<\/h1>\r\n    <p>Quality renovations built with care, detail, and experience.<\/p>\r\n    <a href=\"#contact\">Get a Quote<\/a>\r\n  <\/div>\r\n\r\n<\/div>\r\n\r\n<style>\r\n\/* \r\n  MAIN CAROUSEL WRAPPER\r\n  This controls the size of the entire hero section.\r\n*\/\r\n.custom-hero-carousel {\r\n  position: relative;       \/* Allows child elements to be positioned inside it *\/\r\n  width: 100vw;             \/* Makes the carousel full browser width *\/\r\n  height: 100vh;            \/* Makes the carousel exactly full screen height *\/\r\n  overflow: hidden;         \/* Hides any image parts that go outside the hero *\/\r\n  margin: 0;                \/* Removes outside spacing *\/\r\n  padding: 0;               \/* Removes inside spacing *\/\r\n}\r\n\r\n\/* \r\n  EACH SLIDE\r\n  All slides are stacked on top of each other.\r\n*\/\r\n.carousel-slide {\r\n  position: absolute;       \/* Places each slide on top of the same area *\/\r\n  inset: 0;                 \/* Shortcut for top: 0; right: 0; bottom: 0; left: 0 *\/\r\n  opacity: 0;               \/* Hidden by default *\/\r\n  transition: opacity 1s ease-in-out; \/* Smooth fade between images *\/\r\n}\r\n\r\n\/* \r\n  ACTIVE SLIDE\r\n  Only the slide with the active class is visible.\r\n*\/\r\n.carousel-slide.active {\r\n  opacity: 1;               \/* Makes the current slide visible *\/\r\n}\r\n\r\n\/* \r\n  IMAGE INSIDE EACH SLIDE\r\n  This is the important part that fixes your height problem.\r\n*\/\r\n.carousel-slide img {\r\n  width: 100%;              \/* Image fills the full width of the carousel *\/\r\n  height: 100%;             \/* Image fills the full height of the carousel *\/\r\n  object-fit: cover;        \/* Crops image neatly instead of stretching it *\/\r\n  object-position: center;  \/* Keeps the center of the image visible *\/\r\n  display: block;           \/* Removes tiny unwanted gaps under images *\/\r\n}\r\n\r\n\/* \r\n  OVERLAY LAYER\r\n  This creates a light transparent layer over the image.\r\n*\/\r\n.carousel-overlay {\r\n  position: absolute;       \/* Places overlay on top of the image *\/\r\n  inset: 0;                 \/* Makes overlay cover the whole carousel *\/\r\n  background: rgba(255, 255, 255, 0.35); \/* White overlay with 35% opacity *\/\r\n  z-index: 2;               \/* Places overlay above images but below text *\/\r\n}\r\n\r\n\/* \r\n  CONTENT BOX\r\n  This controls where the heading, paragraph, and button sit.\r\n*\/\r\n.carousel-content {\r\n  position: absolute;       \/* Allows exact placement over the carousel *\/\r\n  z-index: 3;               \/* Places content above the overlay *\/\r\n  top: 50%;                 \/* Moves content halfway down the hero *\/\r\n  left: 7%;                 \/* Moves content away from the left edge *\/\r\n  transform: translateY(-50%); \/* Perfectly centers content vertically *\/\r\n  max-width: 700px;         \/* Prevents text from becoming too wide *\/\r\n}\r\n\r\n\/* \r\n  MAIN HEADING STYLE\r\n*\/\r\n.carousel-content h1 {\r\n  font-size: clamp(42px, 7vw, 90px); \/* Responsive font size *\/\r\n  line-height: 0.95;        \/* Makes heading tighter vertically *\/\r\n  margin: 0 0 20px;         \/* Adds space below heading *\/\r\n  color: #111827;           \/* Dark text color *\/\r\n  font-weight: 900;         \/* Very bold text *\/\r\n  text-transform: uppercase; \/* Makes heading all caps *\/\r\n}\r\n\r\n\/* \r\n  PARAGRAPH STYLE\r\n*\/\r\n.carousel-content p {\r\n  font-size: clamp(16px, 2vw, 22px); \/* Responsive paragraph size *\/\r\n  color: #111827;           \/* Dark paragraph text *\/\r\n  margin: 0 0 30px;         \/* Adds space below paragraph *\/\r\n  max-width: 500px;         \/* Keeps paragraph readable *\/\r\n}\r\n\r\n\/* \r\n  BUTTON STYLE\r\n  This is actually a link styled to look like a button.\r\n*\/\r\n.carousel-content a {\r\n  display: inline-block;    \/* Allows padding and button shape *\/\r\n  background: #0074C8;      \/* Lemcom blue button background *\/\r\n  color: white;             \/* Button text color *\/\r\n  padding: 14px 28px;       \/* Button size *\/\r\n  text-decoration: none;    \/* Removes underline *\/\r\n  font-weight: 700;         \/* Makes button text bold *\/\r\n  border-radius: 4px;       \/* Slightly rounded corners *\/\r\n}\r\n\r\n\/* \r\n  MOBILE RESPONSIVE SETTINGS\r\n  These rules only apply on screens smaller than 768px.\r\n*\/\r\n@media (max-width: 768px) {\r\n  .custom-hero-carousel {\r\n    height: 100vh;          \/* Keeps hero full screen on mobile *\/\r\n  }\r\n\r\n  .carousel-content {\r\n    left: 5%;               \/* Less side spacing on mobile *\/\r\n    right: 5%;              \/* Prevents content from touching right edge *\/\r\n    max-width: 90%;         \/* Allows content to fit smaller screens *\/\r\n  }\r\n\r\n  .carousel-content h1 {\r\n    font-size: 42px;        \/* Smaller heading on mobile *\/\r\n  }\r\n}\r\n<\/style>\r\n\r\n<script>\r\n(function () {\r\n  function startCarousel() {\r\n    const carousel = document.querySelector(\".custom-hero-carousel\");\r\n\r\n    if (!carousel) return;\r\n\r\n    const slides = carousel.querySelectorAll(\".carousel-slide\");\r\n\r\n    if (slides.length <= 1) return;\r\n\r\n    let currentSlide = 0;\r\n\r\n    slides[currentSlide].classList.add(\"active\");\r\n\r\n    setInterval(function () {\r\n      slides[currentSlide].classList.remove(\"active\");\r\n\r\n      currentSlide = (currentSlide + 1) % slides.length;\r\n\r\n      slides[currentSlide].classList.add(\"active\");\r\n    }, 5000);\r\n  }\r\n\r\n  if (document.readyState === \"loading\") {\r\n    document.addEventListener(\"DOMContentLoaded\", startCarousel);\r\n  } else {\r\n    startCarousel();\r\n  }\r\n})();\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-6501a28 e-flex e-con-boxed e-con e-parent\" data-id=\"6501a28\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-3576d77 e-con-full e-flex e-con e-child\" data-id=\"3576d77\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-fec3644 elementor-widget elementor-widget-heading\" data-id=\"fec3644\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Our <span style=\"color: #0074C8\"> Services<\/span><\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-899287b elementor-widget elementor-widget-text-editor\" data-id=\"899287b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>A wide range of renovation and maintenance services tailored to your space, budget and vision.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-71c68eb4 e-grid e-con-boxed e-con e-parent\" data-id=\"71c68eb4\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-d47c8cf e-con-full e-flex e-con e-child\" data-id=\"d47c8cf\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-3657677b elementor-widget elementor-widget-html\" data-id=\"3657677b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- \r\n  STYLE SECTION\r\n  This controls the service card design and hover effects.\r\n-->\r\n<style>\r\n  \/* \r\n    NORMAL CARD STYLE\r\n    This is how the card looks before hover.\r\n  *\/\r\n  .service-card {\r\n    display: flex;                 \/* Arranges icon and text neatly *\/\r\n    flex-direction: column;         \/* Places icon above text *\/\r\n    align-items: center;            \/* Centers everything horizontally *\/\r\n    justify-content: center;        \/* Centers everything vertically *\/\r\n    text-decoration: none;          \/* Removes link underline *\/\r\n    color: #111827;                 \/* Normal text colour *\/\r\n    padding: 30px 20px;             \/* Space inside the card *\/\r\n    border-radius: 12px;            \/* Rounded corners *\/\r\n    min-height: 160px;              \/* Card height *\/\r\n    background-color: transparent;  \/* Normal background *\/\r\n    transition: all 0.3s ease;      \/* Smooth hover animation *\/\r\n  }\r\n\r\n  \/* \r\n    CARD HOVER STYLE\r\n    This activates when your mouse is over the card.\r\n  *\/\r\n  .service-card:hover {\r\n    background-color: #0074C8;      \/* Changes card background to blue *\/\r\n    color: #ffffff;                 \/* Changes text to white *\/\r\n    transform: translateY(-5px);    \/* Slight lift effect *\/\r\n  }\r\n\r\n  \/* \r\n    SVG ICON NORMAL STYLE\r\n    This controls the icon before hover.\r\n  *\/\r\n  .service-card svg {\r\n    width: 55px;                    \/* Icon width *\/\r\n    height: 55px;                   \/* Icon height *\/\r\n    fill: #0074C8;                  \/* Icon colour before hover *\/\r\n    margin-bottom: 15px;            \/* Space between icon and text *\/\r\n    transition: all 0.3s ease;      \/* Smooth colour change *\/\r\n  }\r\n\r\n  \/* \r\n    SVG ICON HOVER STYLE\r\n    This changes the SVG icon colour when hovering over the card.\r\n  *\/\r\n  .service-card:hover svg {\r\n    fill: #ffffff;                  \/* Icon becomes white on hover *\/\r\n  }\r\n\r\n  \/* \r\n    HEADING STYLE\r\n  *\/\r\n  .service-card h3 {\r\n    margin: 0;                      \/* Removes default heading spacing *\/\r\n    font-size: 18px;                \/* Text size *\/\r\n    font-weight: 700;               \/* Bold text *\/\r\n    text-align: center;             \/* Centers text *\/\r\n    line-height: 1.2;               \/* Better spacing if text wraps *\/\r\n    color: inherit;                 \/* Text follows the card colour *\/\r\n  }\r\n<\/style>\r\n\r\n\r\n<!-- \r\n  FULL CLICKABLE SERVICE CARD\r\n  The whole card is clickable because everything is inside the <a> tag.\r\n-->\r\n<a href=\"\/bathroom-renovations\/\" class=\"service-card\">\r\n\r\n  <!-- \r\n    SVG ICON\r\n    This icon is built into the code.\r\n    It does not rely on Elementor or Font Awesome, so it should show on the live page.\r\n  -->\r\n<!-- \r\n  Bathroom Renovations icon: Bathtub\r\n  This represents bathrooms, baths, bathroom upgrades, and bathroom renovations.\r\n-->\r\n<svg viewBox=\"0 0 24 24\" aria-hidden=\"true\">\r\n  <!-- \r\n    This path draws a bathtub shape with a shower\/tap section on the left.\r\n  -->\r\n  <path d=\"M7 4c0-1.1.9-2 2-2h2c1.1 0 2 .9 2 2v1h-2V4H9v6h12v5c0 1.86-1.28 3.43-3 3.87V21h-2v-2H8v2H6v-2.13C4.28 18.43 3 16.86 3 15v-3h2v3c0 1.1.9 2 2 2h10c1.1 0 2-.9 2-2v-3H3v-2h4V4zm2 4h2V6H9v2z\"\/>\r\n<\/svg>\r\n\r\n  <!-- \r\n    SERVICE TITLE\r\n    This text changes to white on hover because of color: inherit.\r\n  -->\r\n  <h3>Bathroom Renovations<\/h3>\r\n\r\n<\/a>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-a2982cd e-con-full e-flex e-con e-child\" data-id=\"a2982cd\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-157acb82 elementor-widget elementor-widget-html\" data-id=\"157acb82\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- \r\n  STYLE SECTION\r\n  This controls the service card design and hover effects.\r\n-->\r\n<style>\r\n  \/* \r\n    NORMAL CARD STYLE\r\n    This is how the card looks before hover.\r\n  *\/\r\n  .service-card {\r\n    display: flex;                 \/* Arranges icon and text neatly *\/\r\n    flex-direction: column;         \/* Places icon above text *\/\r\n    align-items: center;            \/* Centers everything horizontally *\/\r\n    justify-content: center;        \/* Centers everything vertically *\/\r\n    text-decoration: none;          \/* Removes link underline *\/\r\n    color: #111827;                 \/* Normal text colour *\/\r\n    padding: 30px 20px;             \/* Space inside the card *\/\r\n    border-radius: 12px;            \/* Rounded corners *\/\r\n    min-height: 160px;              \/* Card height *\/\r\n    background-color: transparent;  \/* Normal background *\/\r\n    transition: all 0.3s ease;      \/* Smooth hover animation *\/\r\n  }\r\n\r\n  \/* \r\n    CARD HOVER STYLE\r\n    This activates when your mouse is over the card.\r\n  *\/\r\n  .service-card:hover {\r\n    background-color: #0074C8;      \/* Changes card background to blue *\/\r\n    color: #ffffff;                 \/* Changes card text to white *\/\r\n    transform: translateY(-5px);    \/* Slight lift effect *\/\r\n  }\r\n\r\n  \/* \r\n    ICON NORMAL STYLE\r\n  *\/\r\n  .service-card i {\r\n    font-size: 55px;                \/* Icon size *\/\r\n    color: #0074C8;                 \/* Icon is blue before hover *\/\r\n    margin-bottom: 15px;            \/* Space below icon *\/\r\n    transition: all 0.3s ease;      \/* Smooth icon colour change *\/\r\n  }\r\n\r\n  \/* \r\n    ICON HOVER STYLE\r\n    Icon turns white when the whole card is hovered.\r\n  *\/\r\n  .service-card:hover i {\r\n    color: #ffffff;\r\n  }\r\n\r\n  \/* \r\n    HEADING STYLE\r\n  *\/\r\n  .service-card h3 {\r\n    margin: 0;                      \/* Removes default heading spacing *\/\r\n    font-size: 18px;                \/* Text size *\/\r\n    font-weight: 700;               \/* Bold text *\/\r\n    text-align: center;             \/* Centers text *\/\r\n    line-height: 1.2;               \/* Better spacing if text wraps *\/\r\n    color: inherit;                 \/* IMPORTANT: heading follows the card colour *\/\r\n  }\r\n<\/style>\r\n\r\n\r\n<!-- \r\n  FULL CLICKABLE SERVICE CARD\r\n  Because everything is inside the <a> tag, the whole card is clickable.\r\n-->\r\n<a href=\"\/bathroom-renovations\/\" class=\"service-card\">\r\n\r\n  <!-- \r\n    ICON\r\n    Change \"fas fa-bath\" to another icon class for different services.\r\n  -->\r\n<!-- Painting icon -->\r\n<svg viewBox=\"0 0 24 24\" aria-hidden=\"true\">\r\n  <path d=\"M3 3h13c1.1 0 2 .9 2 2v3h1c1.1 0 2 .9 2 2v2c0 1.1-.9 2-2 2h-7v2h1c.55 0 1 .45 1 1v3c0 .55-.45 1-1 1H9c-.55 0-1-.45-1-1v-3c0-.55.45-1 1-1h1v-4h9v-2h-1v1H3V3zm2 2v5h11V5H5z\"\/>\r\n<\/svg>\r\n\r\n  <!-- \r\n    SERVICE TITLE\r\n    This text will turn white on hover because of color: inherit above.\r\n  -->\r\n  <h3>Painting<\/h3>\r\n\r\n<\/a>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-27bb0f3d e-con-full e-flex e-con e-child\" data-id=\"27bb0f3d\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-621acdb0 elementor-widget elementor-widget-html\" data-id=\"621acdb0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- \r\n  STYLE SECTION\r\n  This controls the service card design and hover effects.\r\n-->\r\n<style>\r\n  \/* \r\n    NORMAL CARD STYLE\r\n    This is how the card looks before hover.\r\n  *\/\r\n  .service-card {\r\n    display: flex;                 \/* Arranges icon and text neatly *\/\r\n    flex-direction: column;         \/* Places icon above text *\/\r\n    align-items: center;            \/* Centers everything horizontally *\/\r\n    justify-content: center;        \/* Centers everything vertically *\/\r\n    text-decoration: none;          \/* Removes link underline *\/\r\n    color: #111827;                 \/* Normal text colour *\/\r\n    padding: 30px 20px;             \/* Space inside the card *\/\r\n    border-radius: 12px;            \/* Rounded corners *\/\r\n    min-height: 160px;              \/* Card height *\/\r\n    background-color: transparent;  \/* Normal background *\/\r\n    transition: all 0.3s ease;      \/* Smooth hover animation *\/\r\n  }\r\n\r\n  \/* \r\n    CARD HOVER STYLE\r\n    This activates when your mouse is over the card.\r\n  *\/\r\n  .service-card:hover {\r\n    background-color: #0074C8;      \/* Changes card background to blue *\/\r\n    color: #ffffff;                 \/* Changes card text to white *\/\r\n    transform: translateY(-5px);    \/* Slight lift effect *\/\r\n  }\r\n\r\n  \/* \r\n    ICON NORMAL STYLE\r\n  *\/\r\n  .service-card i {\r\n    font-size: 55px;                \/* Icon size *\/\r\n    color: #0074C8;                 \/* Icon is blue before hover *\/\r\n    margin-bottom: 15px;            \/* Space below icon *\/\r\n    transition: all 0.3s ease;      \/* Smooth icon colour change *\/\r\n  }\r\n\r\n  \/* \r\n    ICON HOVER STYLE\r\n    Icon turns white when the whole card is hovered.\r\n  *\/\r\n  .service-card:hover i {\r\n    color: #ffffff;\r\n  }\r\n\r\n  \/* \r\n    HEADING STYLE\r\n  *\/\r\n  .service-card h3 {\r\n    margin: 0;                      \/* Removes default heading spacing *\/\r\n    font-size: 18px;                \/* Text size *\/\r\n    font-weight: 700;               \/* Bold text *\/\r\n    text-align: center;             \/* Centers text *\/\r\n    line-height: 1.2;               \/* Better spacing if text wraps *\/\r\n    color: inherit;                 \/* IMPORTANT: heading follows the card colour *\/\r\n  }\r\n<\/style>\r\n\r\n\r\n<!-- \r\n  FULL CLICKABLE SERVICE CARD\r\n  Because everything is inside the <a> tag, the whole card is clickable.\r\n-->\r\n<a href=\"\/bathroom-renovations\/\" class=\"service-card\">\r\n\r\n  <!-- \r\n    ICON\r\n    Change \"fas fa-bath\" to another icon class for different services.\r\n  -->\r\n  <!-- Kitchen icon -->\r\n<svg viewBox=\"0 0 24 24\" aria-hidden=\"true\">\r\n  <path d=\"M6 2c.55 0 1 .45 1 1v7h1V3c0-.55.45-1 1-1s1 .45 1 1v7h1V3c0-.55.45-1 1-1s1 .45 1 1v7c0 1.66-1.34 3-3 3v8c0 .55-.45 1-1 1s-1-.45-1-1v-8c-1.66 0-3-1.34-3-3V3c0-.55.45-1 1-1zm11 0c2.21 0 4 2.69 4 6s-1.79 6-4 6v7c0 .55-.45 1-1 1s-1-.45-1-1V3c0-.55.45-1 1-1h1z\"\/>\r\n<\/svg>\r\n\r\n  <!-- \r\n    SERVICE TITLE\r\n    This text will turn white on hover because of color: inherit above.\r\n  -->\r\n  <h3>Kitchen Renovations<\/h3>\r\n\r\n<\/a>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-24bc5f65 e-con-full e-flex e-con e-child\" data-id=\"24bc5f65\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-4b514c5 elementor-widget elementor-widget-html\" data-id=\"4b514c5\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- \r\n  STYLE SECTION\r\n  This controls the service card design and hover effects.\r\n-->\r\n<style>\r\n  \/* \r\n    NORMAL CARD STYLE\r\n    This is how the card looks before hover.\r\n  *\/\r\n  .service-card {\r\n    display: flex;                 \/* Arranges icon and text neatly *\/\r\n    flex-direction: column;         \/* Places icon above text *\/\r\n    align-items: center;            \/* Centers everything horizontally *\/\r\n    justify-content: center;        \/* Centers everything vertically *\/\r\n    text-decoration: none;          \/* Removes link underline *\/\r\n    color: #111827;                 \/* Normal text colour *\/\r\n    padding: 30px 20px;             \/* Space inside the card *\/\r\n    border-radius: 12px;            \/* Rounded corners *\/\r\n    min-height: 160px;              \/* Card height *\/\r\n    background-color: transparent;  \/* Normal background *\/\r\n    transition: all 0.3s ease;      \/* Smooth hover animation *\/\r\n  }\r\n\r\n  \/* \r\n    CARD HOVER STYLE\r\n    This activates when your mouse is over the card.\r\n  *\/\r\n  .service-card:hover {\r\n    background-color: #0074C8;      \/* Changes card background to blue *\/\r\n    color: #ffffff;                 \/* Changes card text to white *\/\r\n    transform: translateY(-5px);    \/* Slight lift effect *\/\r\n  }\r\n\r\n  \/* \r\n    ICON NORMAL STYLE\r\n  *\/\r\n  .service-card i {\r\n    font-size: 55px;                \/* Icon size *\/\r\n    color: #0074C8;                 \/* Icon is blue before hover *\/\r\n    margin-bottom: 15px;            \/* Space below icon *\/\r\n    transition: all 0.3s ease;      \/* Smooth icon colour change *\/\r\n  }\r\n\r\n  \/* \r\n    ICON HOVER STYLE\r\n    Icon turns white when the whole card is hovered.\r\n  *\/\r\n  .service-card:hover i {\r\n    color: #ffffff;\r\n  }\r\n\r\n  \/* \r\n    HEADING STYLE\r\n  *\/\r\n  .service-card h3 {\r\n    margin: 0;                      \/* Removes default heading spacing *\/\r\n    font-size: 18px;                \/* Text size *\/\r\n    font-weight: 700;               \/* Bold text *\/\r\n    text-align: center;             \/* Centers text *\/\r\n    line-height: 1.2;               \/* Better spacing if text wraps *\/\r\n    color: inherit;                 \/* IMPORTANT: heading follows the card colour *\/\r\n  }\r\n<\/style>\r\n\r\n\r\n<!-- \r\n  FULL CLICKABLE SERVICE CARD\r\n  Because everything is inside the <a> tag, the whole card is clickable.\r\n-->\r\n<a href=\"\/bathroom-renovations\/\" class=\"service-card\">\r\n\r\n  <!-- \r\n    ICON\r\n    Change \"fas fa-bath\" to another icon class for different services.\r\n  -->\r\n<!-- Plumbing icon -->\r\n<svg viewBox=\"0 0 24 24\" aria-hidden=\"true\">\r\n  <path d=\"M7 2h10v4h-3v3h3c2.21 0 4 1.79 4 4v3h-4v-3c0-.55-.45-1-1-1h-2v10h-4V12H8c-.55 0-1 .45-1 1v3H3v-3c0-2.21 1.79-4 4-4h3V6H7V2z\"\/>\r\n<\/svg>\r\n\r\n  <!-- \r\n    SERVICE TITLE\r\n    This text will turn white on hover because of color: inherit above.\r\n  -->\r\n  <h3>Plumbing Support<\/h3>\r\n\r\n<\/a>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-7e119cbc e-con-full e-flex e-con e-child\" data-id=\"7e119cbc\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-a3a4e1b elementor-widget elementor-widget-html\" data-id=\"a3a4e1b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- \r\n  STYLE SECTION\r\n  This controls the service card design and hover effects.\r\n-->\r\n<style>\r\n  \/* \r\n    NORMAL CARD STYLE\r\n    This is how the card looks before hover.\r\n  *\/\r\n  .service-card {\r\n    display: flex;                 \/* Arranges icon and text neatly *\/\r\n    flex-direction: column;         \/* Places icon above text *\/\r\n    align-items: center;            \/* Centers everything horizontally *\/\r\n    justify-content: center;        \/* Centers everything vertically *\/\r\n    text-decoration: none;          \/* Removes link underline *\/\r\n    color: #111827;                 \/* Normal text colour *\/\r\n    padding: 30px 20px;             \/* Space inside the card *\/\r\n    border-radius: 12px;            \/* Rounded corners *\/\r\n    min-height: 160px;              \/* Card height *\/\r\n    background-color: transparent;  \/* Normal background *\/\r\n    transition: all 0.3s ease;      \/* Smooth hover animation *\/\r\n  }\r\n\r\n  \/* \r\n    CARD HOVER STYLE\r\n    This activates when your mouse is over the card.\r\n  *\/\r\n  .service-card:hover {\r\n    background-color: #0074C8;      \/* Changes card background to blue *\/\r\n    color: #ffffff;                 \/* Changes card text to white *\/\r\n    transform: translateY(-5px);    \/* Slight lift effect *\/\r\n  }\r\n\r\n  \/* \r\n    ICON NORMAL STYLE\r\n  *\/\r\n  .service-card i {\r\n    font-size: 55px;                \/* Icon size *\/\r\n    color: #0074C8;                 \/* Icon is blue before hover *\/\r\n    margin-bottom: 15px;            \/* Space below icon *\/\r\n    transition: all 0.3s ease;      \/* Smooth icon colour change *\/\r\n  }\r\n\r\n  \/* \r\n    ICON HOVER STYLE\r\n    Icon turns white when the whole card is hovered.\r\n  *\/\r\n  .service-card:hover i {\r\n    color: #ffffff;\r\n  }\r\n\r\n  \/* \r\n    HEADING STYLE\r\n  *\/\r\n  .service-card h3 {\r\n    margin: 0;                      \/* Removes default heading spacing *\/\r\n    font-size: 18px;                \/* Text size *\/\r\n    font-weight: 700;               \/* Bold text *\/\r\n    text-align: center;             \/* Centers text *\/\r\n    line-height: 1.2;               \/* Better spacing if text wraps *\/\r\n    color: inherit;                 \/* IMPORTANT: heading follows the card colour *\/\r\n  }\r\n<\/style>\r\n\r\n\r\n<!-- \r\n  FULL CLICKABLE SERVICE CARD\r\n  Because everything is inside the <a> tag, the whole card is clickable.\r\n-->\r\n<a href=\"\/bathroom-renovations\/\" class=\"service-card\">\r\n\r\n  <!-- \r\n    ICON\r\n    Change \"fas fa-bath\" to another icon class for different services.\r\n  -->\r\n <!-- Electrical Support icon -->\r\n<svg viewBox=\"0 0 24 24\" aria-hidden=\"true\">\r\n  <!-- \r\n    Lightning bolt shape.\r\n    Good for electrical work, wiring, and electrical support.\r\n  -->\r\n  <path d=\"M13 2L4 14h6l-1 8 9-12h-6l1-8z\"\/>\r\n<\/svg>\r\n  <!-- \r\n    SERVICE TITLE\r\n    This text will turn white on hover because of color: inherit above.\r\n  -->\r\n  <h3>Electrical Support<\/h3>\r\n\r\n<\/a>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-671241fe e-con-full e-flex e-con e-child\" data-id=\"671241fe\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-22a7bd3a elementor-widget elementor-widget-html\" data-id=\"22a7bd3a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- \r\n  STYLE SECTION\r\n  This controls the service card design and hover effects.\r\n-->\r\n<style>\r\n  \/* \r\n    NORMAL CARD STYLE\r\n    This is how the card looks before hover.\r\n  *\/\r\n  .service-card {\r\n    display: flex;                 \/* Arranges icon and text neatly *\/\r\n    flex-direction: column;         \/* Places icon above text *\/\r\n    align-items: center;            \/* Centers everything horizontally *\/\r\n    justify-content: center;        \/* Centers everything vertically *\/\r\n    text-decoration: none;          \/* Removes link underline *\/\r\n    color: #111827;                 \/* Normal text colour *\/\r\n    padding: 30px 20px;             \/* Space inside the card *\/\r\n    border-radius: 12px;            \/* Rounded corners *\/\r\n    min-height: 160px;              \/* Card height *\/\r\n    background-color: transparent;  \/* Normal background *\/\r\n    transition: all 0.3s ease;      \/* Smooth hover animation *\/\r\n  }\r\n\r\n  \/* \r\n    CARD HOVER STYLE\r\n    This activates when your mouse is over the card.\r\n  *\/\r\n  .service-card:hover {\r\n    background-color: #0074C8;      \/* Changes card background to blue *\/\r\n    color: #ffffff;                 \/* Changes card text to white *\/\r\n    transform: translateY(-5px);    \/* Slight lift effect *\/\r\n  }\r\n\r\n  \/* \r\n    ICON NORMAL STYLE\r\n  *\/\r\n  .service-card i {\r\n    font-size: 55px;                \/* Icon size *\/\r\n    color: #0074C8;                 \/* Icon is blue before hover *\/\r\n    margin-bottom: 15px;            \/* Space below icon *\/\r\n    transition: all 0.3s ease;      \/* Smooth icon colour change *\/\r\n  }\r\n\r\n  \/* \r\n    ICON HOVER STYLE\r\n    Icon turns white when the whole card is hovered.\r\n  *\/\r\n  .service-card:hover i {\r\n    color: #ffffff;\r\n  }\r\n\r\n  \/* \r\n    HEADING STYLE\r\n  *\/\r\n  .service-card h3 {\r\n    margin: 0;                      \/* Removes default heading spacing *\/\r\n    font-size: 18px;                \/* Text size *\/\r\n    font-weight: 700;               \/* Bold text *\/\r\n    text-align: center;             \/* Centers text *\/\r\n    line-height: 1.2;               \/* Better spacing if text wraps *\/\r\n    color: inherit;                 \/* IMPORTANT: heading follows the card colour *\/\r\n  }\r\n<\/style>\r\n\r\n\r\n<!-- \r\n  FULL CLICKABLE SERVICE CARD\r\n  Because everything is inside the <a> tag, the whole card is clickable.\r\n-->\r\n<a href=\"\/bathroom-renovations\/\" class=\"service-card\">\r\n\r\n  <!-- \r\n    ICON\r\n    Change \"fas fa-bath\" to another icon class for different services.\r\n  -->\r\n<!-- Commercial Renovations icon -->\r\n<svg viewBox=\"0 0 24 24\" aria-hidden=\"true\">\r\n  <!-- \r\n    Building icon.\r\n    Represents offices, shops, commercial spaces, and business renovations.\r\n  -->\r\n  <path d=\"M4 22V3c0-.55.45-1 1-1h10c.55 0 1 .45 1 1v5h3c.55 0 1 .45 1 1v13h-6v-4h-4v4H4zm3-16v2h2V6H7zm4 0v2h2V6h-2zM7 10v2h2v-2H7zm4 0v2h2v-2h-2zM7 14v2h2v-2H7zm4 0v2h2v-2h-2zm6-3v2h1v-2h-1zm0 4v2h1v-2h-1z\"\/>\r\n<\/svg>\r\n\r\n  <!-- \r\n    SERVICE TITLE\r\n    This text will turn white on hover because of color: inherit above.\r\n  -->\r\n  <h3>Commercial Renovations<\/h3>\r\n\r\n<\/a>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-ad583c1 e-con-full e-flex e-con e-child\" data-id=\"ad583c1\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5463a114 elementor-widget elementor-widget-html\" data-id=\"5463a114\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- \r\n  STYLE SECTION\r\n  This controls the service card design and hover effects.\r\n-->\r\n<style>\r\n  \/* \r\n    NORMAL CARD STYLE\r\n    This is how the card looks before hover.\r\n  *\/\r\n  .service-card {\r\n    display: flex;                 \/* Arranges icon and text neatly *\/\r\n    flex-direction: column;         \/* Places icon above text *\/\r\n    align-items: center;            \/* Centers everything horizontally *\/\r\n    justify-content: center;        \/* Centers everything vertically *\/\r\n    text-decoration: none;          \/* Removes link underline *\/\r\n    color: #111827;                 \/* Normal text colour *\/\r\n    padding: 30px 20px;             \/* Space inside the card *\/\r\n    border-radius: 12px;            \/* Rounded corners *\/\r\n    min-height: 160px;              \/* Card height *\/\r\n    background-color: transparent;  \/* Normal background *\/\r\n    transition: all 0.3s ease;      \/* Smooth hover animation *\/\r\n  }\r\n\r\n  \/* \r\n    CARD HOVER STYLE\r\n    This activates when your mouse is over the card.\r\n  *\/\r\n  .service-card:hover {\r\n    background-color: #0074C8;      \/* Changes card background to blue *\/\r\n    color: #ffffff;                 \/* Changes card text to white *\/\r\n    transform: translateY(-5px);    \/* Slight lift effect *\/\r\n  }\r\n\r\n  \/* \r\n    ICON NORMAL STYLE\r\n  *\/\r\n  .service-card i {\r\n    font-size: 55px;                \/* Icon size *\/\r\n    color: #0074C8;                 \/* Icon is blue before hover *\/\r\n    margin-bottom: 15px;            \/* Space below icon *\/\r\n    transition: all 0.3s ease;      \/* Smooth icon colour change *\/\r\n  }\r\n\r\n  \/* \r\n    ICON HOVER STYLE\r\n    Icon turns white when the whole card is hovered.\r\n  *\/\r\n  .service-card:hover i {\r\n    color: #ffffff;\r\n  }\r\n\r\n  \/* \r\n    HEADING STYLE\r\n  *\/\r\n  .service-card h3 {\r\n    margin: 0;                      \/* Removes default heading spacing *\/\r\n    font-size: 18px;                \/* Text size *\/\r\n    font-weight: 700;               \/* Bold text *\/\r\n    text-align: center;             \/* Centers text *\/\r\n    line-height: 1.2;               \/* Better spacing if text wraps *\/\r\n    color: inherit;                 \/* IMPORTANT: heading follows the card colour *\/\r\n  }\r\n<\/style>\r\n\r\n\r\n<!-- \r\n  FULL CLICKABLE SERVICE CARD\r\n  Because everything is inside the <a> tag, the whole card is clickable.\r\n-->\r\n<a href=\"\/bathroom-renovations\/\" class=\"service-card\">\r\n\r\n  <!-- \r\n    ICON\r\n    Change \"fas fa-bath\" to another icon class for different services.\r\n  -->\r\n<!-- \r\n  Roofing \/ Ceiling icon: People under roof\r\n  This represents roofing, ceilings, shelter, home improvement, and covered spaces.\r\n-->\r\n<svg viewBox=\"0 0 24 24\" aria-hidden=\"true\">\r\n  <!-- \r\n    Roof shape at the top.\r\n    It creates the idea of protection, roofing, and overhead structure.\r\n  -->\r\n  <path d=\"M12 3L3 10h3v2h2V9.1l4-3.1 4 3.1V12h2v-2h3L12 3z\"\/>\r\n\r\n  <!-- \r\n    Left person head.\r\n  -->\r\n  <path d=\"M8 13c1.1 0 2 .9 2 2s-.9 2-2 2-2-.9-2-2 .9-2 2-2z\"\/>\r\n\r\n  <!-- \r\n    Right person head.\r\n  -->\r\n  <path d=\"M16 13c1.1 0 2 .9 2 2s-.9 2-2 2-2-.9-2-2 .9-2 2-2z\"\/>\r\n\r\n  <!-- \r\n    People bodies underneath the roof.\r\n  -->\r\n  <path d=\"M4 22v-1c0-1.66 1.34-3 3-3h2c1.66 0 3 1.34 3 3v1H4zm8 0v-1c0-1.66 1.34-3 3-3h2c1.66 0 3 1.34 3 3v1h-8z\"\/>\r\n<\/svg>\r\n\r\n  <!-- \r\n    SERVICE TITLE\r\n    This text will turn white on hover because of color: inherit above.\r\n  -->\r\n  <h3>Roofing<\/h3>\r\n\r\n<\/a>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-23ef7362 e-con-full e-flex e-con e-child\" data-id=\"23ef7362\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-45fd2b4c elementor-widget elementor-widget-html\" data-id=\"45fd2b4c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- \r\n  STYLE SECTION\r\n  This controls the service card design and hover effects.\r\n-->\r\n<style>\r\n  \/* \r\n    NORMAL CARD STYLE\r\n    This is how the card looks before hover.\r\n  *\/\r\n  .service-card {\r\n    display: flex;                 \/* Arranges icon and text neatly *\/\r\n    flex-direction: column;         \/* Places icon above text *\/\r\n    align-items: center;            \/* Centers everything horizontally *\/\r\n    justify-content: center;        \/* Centers everything vertically *\/\r\n    text-decoration: none;          \/* Removes link underline *\/\r\n    color: #111827;                 \/* Normal text colour *\/\r\n    padding: 30px 20px;             \/* Space inside the card *\/\r\n    border-radius: 12px;            \/* Rounded corners *\/\r\n    min-height: 160px;              \/* Card height *\/\r\n    background-color: transparent;  \/* Normal background *\/\r\n    transition: all 0.3s ease;      \/* Smooth hover animation *\/\r\n  }\r\n\r\n  \/* \r\n    CARD HOVER STYLE\r\n    This activates when your mouse is over the card.\r\n  *\/\r\n  .service-card:hover {\r\n    background-color: #0074C8;      \/* Changes card background to blue *\/\r\n    color: #ffffff;                 \/* Changes card text to white *\/\r\n    transform: translateY(-5px);    \/* Slight lift effect *\/\r\n  }\r\n\r\n  \/* \r\n    ICON NORMAL STYLE\r\n  *\/\r\n  .service-card i {\r\n    font-size: 55px;                \/* Icon size *\/\r\n    color: #0074C8;                 \/* Icon is blue before hover *\/\r\n    margin-bottom: 15px;            \/* Space below icon *\/\r\n    transition: all 0.3s ease;      \/* Smooth icon colour change *\/\r\n  }\r\n\r\n  \/* \r\n    ICON HOVER STYLE\r\n    Icon turns white when the whole card is hovered.\r\n  *\/\r\n  .service-card:hover i {\r\n    color: #ffffff;\r\n  }\r\n\r\n  \/* \r\n    HEADING STYLE\r\n  *\/\r\n  .service-card h3 {\r\n    margin: 0;                      \/* Removes default heading spacing *\/\r\n    font-size: 18px;                \/* Text size *\/\r\n    font-weight: 700;               \/* Bold text *\/\r\n    text-align: center;             \/* Centers text *\/\r\n    line-height: 1.2;               \/* Better spacing if text wraps *\/\r\n    color: inherit;                 \/* IMPORTANT: heading follows the card colour *\/\r\n  }\r\n<\/style>\r\n\r\n\r\n<!-- \r\n  FULL CLICKABLE SERVICE CARD\r\n  Because everything is inside the <a> tag, the whole card is clickable.\r\n-->\r\n<a href=\"\/bathroom-renovations\/\" class=\"service-card\">\r\n\r\n  <!-- \r\n    ICON\r\n    Change \"fas fa-bath\" to another icon class for different services.\r\n  -->\r\n  <!-- Tiling icon -->\r\n<svg viewBox=\"0 0 24 24\" aria-hidden=\"true\">\r\n  <path d=\"M3 3h8v8H3V3zm10 0h8v8h-8V3zM3 13h8v8H3v-8zm10 0h8v8h-8v-8z\"\/>\r\n<\/svg>\r\n\r\n  <!-- \r\n    SERVICE TITLE\r\n    This text will turn white on hover because of color: inherit above.\r\n  -->\r\n  <h3>Tiling<\/h3>\r\n\r\n<\/a>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-35427334 e-con-full e-flex e-con e-child\" data-id=\"35427334\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-21e28ed6 elementor-widget elementor-widget-html\" data-id=\"21e28ed6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- \r\n  STYLE SECTION\r\n  This controls the service card design and hover effects.\r\n-->\r\n<style>\r\n  \/* \r\n    NORMAL CARD STYLE\r\n    This is how the card looks before hover.\r\n  *\/\r\n  .service-card {\r\n    display: flex;                 \/* Arranges icon and text neatly *\/\r\n    flex-direction: column;         \/* Places icon above text *\/\r\n    align-items: center;            \/* Centers everything horizontally *\/\r\n    justify-content: center;        \/* Centers everything vertically *\/\r\n    text-decoration: none;          \/* Removes link underline *\/\r\n    color: #111827;                 \/* Normal text colour *\/\r\n    padding: 30px 20px;             \/* Space inside the card *\/\r\n    border-radius: 12px;            \/* Rounded corners *\/\r\n    min-height: 160px;              \/* Card height *\/\r\n    background-color: transparent;  \/* Normal background *\/\r\n    transition: all 0.3s ease;      \/* Smooth hover animation *\/\r\n  }\r\n\r\n  \/* \r\n    CARD HOVER STYLE\r\n    This activates when your mouse is over the card.\r\n  *\/\r\n  .service-card:hover {\r\n    background-color: #0074C8;      \/* Changes card background to blue *\/\r\n    color: #ffffff;                 \/* Changes card text to white *\/\r\n    transform: translateY(-5px);    \/* Slight lift effect *\/\r\n  }\r\n\r\n  \/* \r\n    ICON NORMAL STYLE\r\n  *\/\r\n  .service-card i {\r\n    font-size: 55px;                \/* Icon size *\/\r\n    color: #0074C8;                 \/* Icon is blue before hover *\/\r\n    margin-bottom: 15px;            \/* Space below icon *\/\r\n    transition: all 0.3s ease;      \/* Smooth icon colour change *\/\r\n  }\r\n\r\n  \/* \r\n    ICON HOVER STYLE\r\n    Icon turns white when the whole card is hovered.\r\n  *\/\r\n  .service-card:hover i {\r\n    color: #ffffff;\r\n  }\r\n\r\n  \/* \r\n    HEADING STYLE\r\n  *\/\r\n  .service-card h3 {\r\n    margin: 0;                      \/* Removes default heading spacing *\/\r\n    font-size: 18px;                \/* Text size *\/\r\n    font-weight: 700;               \/* Bold text *\/\r\n    text-align: center;             \/* Centers text *\/\r\n    line-height: 1.2;               \/* Better spacing if text wraps *\/\r\n    color: inherit;                 \/* IMPORTANT: heading follows the card colour *\/\r\n  }\r\n<\/style>\r\n\r\n\r\n<!-- \r\n  FULL CLICKABLE SERVICE CARD\r\n  Because everything is inside the <a> tag, the whole card is clickable.\r\n-->\r\n<a href=\"\/bathroom-renovations\/\" class=\"service-card\">\r\n\r\n  <!-- \r\n    ICON\r\n    Change \"fas fa-bath\" to another icon class for different services.\r\n  -->\r\n<!-- Tools \/ maintenance icon -->\r\n<svg viewBox=\"0 0 24 24\" aria-hidden=\"true\">\r\n  <path d=\"M22 19.6l-6.3-6.3c.6-1.8.2-3.8-1.2-5.2-1.5-1.5-3.7-1.9-5.6-1.1l3.1 3.1-2.8 2.8-3.2-3.1c-.8 1.9-.4 4.1 1.1 5.6 1.4 1.4 3.4 1.8 5.2 1.2l6.3 6.3c.4.4 1 .4 1.4 0l2-2c.4-.3.4-1 0-1.3zM4.5 13.5L2 16l3 3 2.5-2.5c-.7-.4-1.3-.9-1.9-1.5-.5-.5-.8-1-1.1-1.5z\"\/>\r\n<\/svg>\r\n\r\n  <!-- \r\n    SERVICE TITLE\r\n    This text will turn white on hover because of color: inherit above.\r\n  -->\r\n  <h3>General Maintenance<\/h3>\r\n\r\n<\/a>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-3c59200f e-con-full e-flex e-con e-child\" data-id=\"3c59200f\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5c53d49d elementor-widget elementor-widget-html\" data-id=\"5c53d49d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- \r\n  STYLE SECTION\r\n  This controls the service card design and hover effects.\r\n-->\r\n<style>\r\n  \/* \r\n    NORMAL CARD STYLE\r\n    This is how the card looks before hover.\r\n  *\/\r\n  .service-card {\r\n    display: flex;                 \/* Arranges icon and text neatly *\/\r\n    flex-direction: column;         \/* Places icon above text *\/\r\n    align-items: center;            \/* Centers everything horizontally *\/\r\n    justify-content: center;        \/* Centers everything vertically *\/\r\n    text-decoration: none;          \/* Removes link underline *\/\r\n    color: #111827;                 \/* Normal text colour *\/\r\n    padding: 30px 20px;             \/* Space inside the card *\/\r\n    border-radius: 12px;            \/* Rounded corners *\/\r\n    min-height: 160px;              \/* Card height *\/\r\n    background-color: transparent;  \/* Normal background *\/\r\n    transition: all 0.3s ease;      \/* Smooth hover animation *\/\r\n  }\r\n\r\n  \/* \r\n    CARD HOVER STYLE\r\n    This activates when your mouse is over the card.\r\n  *\/\r\n  .service-card:hover {\r\n    background-color: #0074C8;      \/* Changes card background to blue *\/\r\n    color: #ffffff;                 \/* Changes card text to white *\/\r\n    transform: translateY(-5px);    \/* Slight lift effect *\/\r\n  }\r\n\r\n  \/* \r\n    ICON NORMAL STYLE\r\n  *\/\r\n  .service-card i {\r\n    font-size: 55px;                \/* Icon size *\/\r\n    color: #0074C8;                 \/* Icon is blue before hover *\/\r\n    margin-bottom: 15px;            \/* Space below icon *\/\r\n    transition: all 0.3s ease;      \/* Smooth icon colour change *\/\r\n  }\r\n\r\n  \/* \r\n    ICON HOVER STYLE\r\n    Icon turns white when the whole card is hovered.\r\n  *\/\r\n  .service-card:hover i {\r\n    color: #ffffff;\r\n  }\r\n\r\n  \/* \r\n    HEADING STYLE\r\n  *\/\r\n  .service-card h3 {\r\n    margin: 0;                      \/* Removes default heading spacing *\/\r\n    font-size: 18px;                \/* Text size *\/\r\n    font-weight: 700;               \/* Bold text *\/\r\n    text-align: center;             \/* Centers text *\/\r\n    line-height: 1.2;               \/* Better spacing if text wraps *\/\r\n    color: inherit;                 \/* IMPORTANT: heading follows the card colour *\/\r\n  }\r\n<\/style>\r\n\r\n\r\n<!-- \r\n  FULL CLICKABLE SERVICE CARD\r\n  Because everything is inside the <a> tag, the whole card is clickable.\r\n-->\r\n<a href=\"\/bathroom-renovations\/\" class=\"service-card\">\r\n\r\n  <!-- \r\n    ICON\r\n    Change \"fas fa-bath\" to another icon class for different services.\r\n  -->\r\n  <!-- Outdoor Renovations icon -->\r\n<svg viewBox=\"0 0 24 24\" aria-hidden=\"true\">\r\n  <!-- \r\n    Outdoor landscape icon with sun, ground, and plant.\r\n    Represents patios, gardens, paving, exterior work, and outdoor renovations.\r\n  -->\r\n  <path d=\"M17 3c1.66 0 3 1.34 3 3s-1.34 3-3 3-3-1.34-3-3 1.34-3 3-3zM3 21v-3c3.5 0 5.6-1.4 7.5-3.3 1.8-1.8 3.5-3.7 6.5-3.7h4v10H3zm2-2h14v-6h-2c-2.1 0-3.3 1.3-4.9 2.9C10.5 17.5 8.6 18.8 5 19zM8 10c1.66 0 3 1.34 3 3v1H9v-1c0-.55-.45-1-1-1s-1 .45-1 1v1H5v-1c0-1.66 1.34-3 3-3z\"\/>\r\n<\/svg>\r\n\r\n  <!-- \r\n    SERVICE TITLE\r\n    This text will turn white on hover because of color: inherit above.\r\n  -->\r\n  <h3>Outdoor Renovations<\/h3>\r\n\r\n<\/a>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-5976804d e-con-full e-flex e-con e-child\" data-id=\"5976804d\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-677f24b1 elementor-widget elementor-widget-html\" data-id=\"677f24b1\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- \r\n  STYLE SECTION\r\n  This controls the service card design and hover effects.\r\n-->\r\n<style>\r\n  \/* \r\n    NORMAL CARD STYLE\r\n    This is how the card looks before hover.\r\n  *\/\r\n  .service-card {\r\n    display: flex;                 \/* Arranges icon and text neatly *\/\r\n    flex-direction: column;         \/* Places icon above text *\/\r\n    align-items: center;            \/* Centers everything horizontally *\/\r\n    justify-content: center;        \/* Centers everything vertically *\/\r\n    text-decoration: none;          \/* Removes link underline *\/\r\n    color: #111827;                 \/* Normal text colour *\/\r\n    padding: 30px 20px;             \/* Space inside the card *\/\r\n    border-radius: 12px;            \/* Rounded corners *\/\r\n    min-height: 160px;              \/* Card height *\/\r\n    background-color: transparent;  \/* Normal background *\/\r\n    transition: all 0.3s ease;      \/* Smooth hover animation *\/\r\n  }\r\n\r\n  \/* \r\n    CARD HOVER STYLE\r\n    This activates when your mouse is over the card.\r\n  *\/\r\n  .service-card:hover {\r\n    background-color: #0074C8;      \/* Changes card background to blue *\/\r\n    color: #ffffff;                 \/* Changes card text to white *\/\r\n    transform: translateY(-5px);    \/* Slight lift effect *\/\r\n  }\r\n\r\n  \/* \r\n    ICON NORMAL STYLE\r\n  *\/\r\n  .service-card i {\r\n    font-size: 55px;                \/* Icon size *\/\r\n    color: #0074C8;                 \/* Icon is blue before hover *\/\r\n    margin-bottom: 15px;            \/* Space below icon *\/\r\n    transition: all 0.3s ease;      \/* Smooth icon colour change *\/\r\n  }\r\n\r\n  \/* \r\n    ICON HOVER STYLE\r\n    Icon turns white when the whole card is hovered.\r\n  *\/\r\n  .service-card:hover i {\r\n    color: #ffffff;\r\n  }\r\n\r\n  \/* \r\n    HEADING STYLE\r\n  *\/\r\n  .service-card h3 {\r\n    margin: 0;                      \/* Removes default heading spacing *\/\r\n    font-size: 18px;                \/* Text size *\/\r\n    font-weight: 700;               \/* Bold text *\/\r\n    text-align: center;             \/* Centers text *\/\r\n    line-height: 1.2;               \/* Better spacing if text wraps *\/\r\n    color: inherit;                 \/* IMPORTANT: heading follows the card colour *\/\r\n  }\r\n<\/style>\r\n\r\n\r\n<!-- \r\n  FULL CLICKABLE SERVICE CARD\r\n  Because everything is inside the <a> tag, the whole card is clickable.\r\n-->\r\n<a href=\"\/bathroom-renovations\/\" class=\"service-card\">\r\n\r\n  <!-- \r\n    ICON\r\n    Change \"fas fa-bath\" to another icon class for different services.\r\n  -->\r\n <!-- Home renovations icon -->\r\n<svg viewBox=\"0 0 24 24\" aria-hidden=\"true\">\r\n  <path d=\"M12 3l9 8h-3v9c0 .55-.45 1-1 1h-4v-6h-2v6H7c-.55 0-1-.45-1-1v-9H3l9-8z\"\/>\r\n<\/svg>\r\n\r\n  <!-- \r\n    SERVICE TITLE\r\n    This text will turn white on hover because of color: inherit above.\r\n  -->\r\n  <h3>Home Renovations<\/h3>\r\n\r\n<\/a>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-6c8edb92 e-con-full e-flex e-con e-child\" data-id=\"6c8edb92\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-789a182 elementor-widget elementor-widget-html\" data-id=\"789a182\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- \r\n  STYLE SECTION\r\n  This controls the service card design and hover effects.\r\n-->\r\n<style>\r\n  \/* \r\n    NORMAL CARD STYLE\r\n    This is how the card looks before hover.\r\n  *\/\r\n  .service-card {\r\n    display: flex;                 \/* Arranges icon and text neatly *\/\r\n    flex-direction: column;         \/* Places icon above text *\/\r\n    align-items: center;            \/* Centers everything horizontally *\/\r\n    justify-content: center;        \/* Centers everything vertically *\/\r\n    text-decoration: none;          \/* Removes link underline *\/\r\n    color: #111827;                 \/* Normal text colour *\/\r\n    padding: 30px 20px;             \/* Space inside the card *\/\r\n    border-radius: 12px;            \/* Rounded corners *\/\r\n    min-height: 160px;              \/* Card height *\/\r\n    background-color: transparent;  \/* Normal background *\/\r\n    transition: all 0.3s ease;      \/* Smooth hover animation *\/\r\n  }\r\n\r\n  \/* \r\n    CARD HOVER STYLE\r\n    This activates when your mouse is over the card.\r\n  *\/\r\n  .service-card:hover {\r\n    background-color: #0074C8;      \/* Changes card background to blue *\/\r\n    color: #ffffff;                 \/* Changes card text to white *\/\r\n    transform: translateY(-5px);    \/* Slight lift effect *\/\r\n  }\r\n\r\n  \/* \r\n    ICON NORMAL STYLE\r\n  *\/\r\n  .service-card i {\r\n    font-size: 55px;                \/* Icon size *\/\r\n    color: #0074C8;                 \/* Icon is blue before hover *\/\r\n    margin-bottom: 15px;            \/* Space below icon *\/\r\n    transition: all 0.3s ease;      \/* Smooth icon colour change *\/\r\n  }\r\n\r\n  \/* \r\n    ICON HOVER STYLE\r\n    Icon turns white when the whole card is hovered.\r\n  *\/\r\n  .service-card:hover i {\r\n    color: #ffffff;\r\n  }\r\n\r\n  \/* \r\n    HEADING STYLE\r\n  *\/\r\n  .service-card h3 {\r\n    margin: 0;                      \/* Removes default heading spacing *\/\r\n    font-size: 18px;                \/* Text size *\/\r\n    font-weight: 700;               \/* Bold text *\/\r\n    text-align: center;             \/* Centers text *\/\r\n    line-height: 1.2;               \/* Better spacing if text wraps *\/\r\n    color: inherit;                 \/* IMPORTANT: heading follows the card colour *\/\r\n  }\r\n<\/style>\r\n\r\n\r\n<!-- \r\n  FULL CLICKABLE SERVICE CARD\r\n  Because everything is inside the <a> tag, the whole card is clickable.\r\n-->\r\n<a href=\"\/bathroom-renovations\/\" class=\"service-card\">\r\n\r\n  <!-- \r\n    ICON\r\n    Change \"fas fa-bath\" to another icon class for different services.\r\n  -->\r\n <!-- Heating and Aircon icon -->\r\n<svg viewBox=\"0 0 24 24\" aria-hidden=\"true\">\r\n  <!-- \r\n    Fan \/ air movement icon.\r\n    Represents air conditioning, ventilation, cooling, and heating support.\r\n  -->\r\n  <path d=\"M12 10.5c.83 0 1.5.67 1.5 1.5s-.67 1.5-1.5 1.5-1.5-.67-1.5-1.5.67-1.5 1.5-1.5zM12 2c2.2 0 4 1.8 4 4 0 1.8-1.2 3.3-2.8 3.8-.5.2-1-.2-1.1-.7-.2-1.2-.6-2.5-.6-3.6C11.5 3.6 11.6 2 12 2zm0 20c-2.2 0-4-1.8-4-4 0-1.8 1.2-3.3 2.8-3.8.5-.2 1 .2 1.1.7.2 1.2.6 2.5.6 3.6 0 1.9-.1 3.5-.5 3.5zM2 12c0-2.2 1.8-4 4-4 1.8 0 3.3 1.2 3.8 2.8.2.5-.2 1-.7 1.1-1.2.2-2.5.6-3.6.6C3.6 12.5 2 12.4 2 12zm20 0c0 2.2-1.8 4-4 4-1.8 0-3.3-1.2-3.8-2.8-.2-.5.2-1 .7-1.1 1.2-.2 2.5-.6 3.6-.6 1.9 0 3.5.1 3.5.5z\"\/>\r\n<\/svg>\r\n\r\n  <!-- \r\n    SERVICE TITLE\r\n    This text will turn white on hover because of color: inherit above.\r\n  -->\r\n  <h3>Heating & Aircon<\/h3>\r\n\r\n<\/a>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-1785292 e-flex e-con-boxed e-con e-parent\" data-id=\"1785292\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-6eeb461 elementor-widget elementor-widget-heading\" data-id=\"6eeb461\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Testimonials<\/h2>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-4bfc826 e-flex e-con-boxed e-con e-parent\" data-id=\"4bfc826\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-981c45b elementor-widget elementor-widget-elementskit-testimonial\" data-id=\"981c45b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"elementskit-testimonial.default\">\n\t\t\t\t\t<div class=\"ekit-wid-con\" ><div  class=\"elementskit-testimonial-slider ekit_testimonial_style_6 arrow_inside \" data-config=\"{&quot;rtl&quot;:false,&quot;arrows&quot;:false,&quot;dots&quot;:false,&quot;pauseOnHover&quot;:false,&quot;autoplay&quot;:false,&quot;speed&quot;:1000,&quot;slidesPerGroup&quot;:1,&quot;slidesPerView&quot;:3,&quot;loop&quot;:false,&quot;spaceBetween&quot;:15,&quot;breakpoints&quot;:{&quot;320&quot;:{&quot;slidesPerView&quot;:1,&quot;slidesPerGroup&quot;:1,&quot;spaceBetween&quot;:10},&quot;768&quot;:{&quot;slidesPerView&quot;:2,&quot;slidesPerGroup&quot;:1,&quot;spaceBetween&quot;:10},&quot;1024&quot;:{&quot;slidesPerView&quot;:3,&quot;slidesPerGroup&quot;:1,&quot;spaceBetween&quot;:15}}}\">\n\t<div class=\"ekit-main-swiper swiper\">\n\t\t<div class=\"swiper-wrapper\">\n\t\t\t\t\t\t\t<div class=\"swiper-slide\">\n\t\t\t\t\t<div class=\"swiper-slide-inner\">\n\t\t\t\t\t\t<div class=\"elementskit-single-testimonial-slider elementskit-testimonial-slider-block-style elementskit-testimonial-slider-block-style-three  elementor-repeater-item-037ed55\" >\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"elementskit-watermark-icon elementskit-icon-content \">\n\t\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"icon icon-quote\"><\/i>\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"elementskit-commentor-bio \">\n\t\t\t\t\t\t\t\t\t<div class=\"elementkit-commentor-details\">\n\t\t\t\t\t\t\t\t\t\t<div class=\"elementskit-commentor-image ekit-testimonial--avatar\">\n\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"70\" height=\"70\" src=\"https:\/\/lemcomrenovations.urbanlifestylegroup.co.za\/wp-content\/uploads\/2026\/06\/WhatsApp-Image-2026-06-22-at-21.35.00.jpeg\" class=\"attachment-full size-full\" alt=\"\" \/>\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"elementskit-profile-info\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<strong class=\"elementskit-author-name\">Colleen Brand<\/strong>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementskit-author-des\">Home Renovation<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"elementskit-commentor-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<ul class=\"elementskit-stars\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li><a><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 576 512\"><path d=\"M316.9 18C311.6 7 300.4 0 288.1 0s-23.4 7-28.8 18L195 150.3 51.4 171.5c-12 1.8-22 10.2-25.7 21.7s-.7 24.2 7.9 32.7L137.8 329 113.2 474.7c-2 12 3 24.2 12.9 31.3s23 8 33.8 2.3l128.3-68.5 128.3 68.5c10.8 5.7 23.9 4.9 33.8-2.3s14.9-19.3 12.9-31.3L438.5 329 542.7 225.9c8.6-8.5 11.7-21.2 7.9-32.7s-13.7-19.9-25.7-21.7L381.2 150.3 316.9 18z\" \/><\/svg><\/a><\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li><a><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 576 512\"><path d=\"M316.9 18C311.6 7 300.4 0 288.1 0s-23.4 7-28.8 18L195 150.3 51.4 171.5c-12 1.8-22 10.2-25.7 21.7s-.7 24.2 7.9 32.7L137.8 329 113.2 474.7c-2 12 3 24.2 12.9 31.3s23 8 33.8 2.3l128.3-68.5 128.3 68.5c10.8 5.7 23.9 4.9 33.8-2.3s14.9-19.3 12.9-31.3L438.5 329 542.7 225.9c8.6-8.5 11.7-21.2 7.9-32.7s-13.7-19.9-25.7-21.7L381.2 150.3 316.9 18z\" \/><\/svg><\/a><\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li><a><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 576 512\"><path d=\"M316.9 18C311.6 7 300.4 0 288.1 0s-23.4 7-28.8 18L195 150.3 51.4 171.5c-12 1.8-22 10.2-25.7 21.7s-.7 24.2 7.9 32.7L137.8 329 113.2 474.7c-2 12 3 24.2 12.9 31.3s23 8 33.8 2.3l128.3-68.5 128.3 68.5c10.8 5.7 23.9 4.9 33.8-2.3s14.9-19.3 12.9-31.3L438.5 329 542.7 225.9c8.6-8.5 11.7-21.2 7.9-32.7s-13.7-19.9-25.7-21.7L381.2 150.3 316.9 18z\" \/><\/svg><\/a><\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li><a><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 576 512\"><path d=\"M316.9 18C311.6 7 300.4 0 288.1 0s-23.4 7-28.8 18L195 150.3 51.4 171.5c-12 1.8-22 10.2-25.7 21.7s-.7 24.2 7.9 32.7L137.8 329 113.2 474.7c-2 12 3 24.2 12.9 31.3s23 8 33.8 2.3l128.3-68.5 128.3 68.5c10.8 5.7 23.9 4.9 33.8-2.3s14.9-19.3 12.9-31.3L438.5 329 542.7 225.9c8.6-8.5 11.7-21.2 7.9-32.7s-13.7-19.9-25.7-21.7L381.2 150.3 316.9 18z\" \/><\/svg><\/a><\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li><a><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 576 512\"><path d=\"M316.9 18C311.6 7 300.4 0 288.1 0s-23.4 7-28.8 18L195 150.3 51.4 171.5c-12 1.8-22 10.2-25.7 21.7s-.7 24.2 7.9 32.7L137.8 329 113.2 474.7c-2 12 3 24.2 12.9 31.3s23 8 33.8 2.3l128.3-68.5 128.3 68.5c10.8 5.7 23.9 4.9 33.8-2.3s14.9-19.3 12.9-31.3L438.5 329 542.7 225.9c8.6-8.5 11.7-21.2 7.9-32.7s-13.7-19.9-25.7-21.7L381.2 150.3 316.9 18z\" \/><\/svg><\/a><\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/ul>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<p>Lemcom Renovations did a great job with the work at our home. The team was friendly, professional, and kept everything neat throughout the process. What I appreciated most was that they listened to what we wanted and gave honest advice where needed. The final result came out clean and exactly what we were hoping for. I would definitely recommend them to anyone needing reliable renovation work.\n<\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<div class=\"swiper-slide\">\n\t\t\t\t\t<div class=\"swiper-slide-inner\">\n\t\t\t\t\t\t<div class=\"elementskit-single-testimonial-slider elementskit-testimonial-slider-block-style elementskit-testimonial-slider-block-style-three  elementor-repeater-item-11b824a\" >\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"elementskit-watermark-icon elementskit-icon-content \">\n\t\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"icon icon-quote\"><\/i>\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"elementskit-commentor-bio \">\n\t\t\t\t\t\t\t\t\t<div class=\"elementkit-commentor-details\">\n\t\t\t\t\t\t\t\t\t\t<div class=\"elementskit-commentor-image ekit-testimonial--avatar\">\n\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"70\" height=\"70\" src=\"https:\/\/lemcomrenovations.urbanlifestylegroup.co.za\/wp-content\/uploads\/2022\/08\/team-member-2.webp\" class=\"attachment-full size-full\" alt=\"\" \/>\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"elementskit-profile-info\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<strong class=\"elementskit-author-name\">Michael Peterson<\/strong>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementskit-author-des\">Bathroom Renovation<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"elementskit-commentor-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<ul class=\"elementskit-stars\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li><a><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 576 512\"><path d=\"M316.9 18C311.6 7 300.4 0 288.1 0s-23.4 7-28.8 18L195 150.3 51.4 171.5c-12 1.8-22 10.2-25.7 21.7s-.7 24.2 7.9 32.7L137.8 329 113.2 474.7c-2 12 3 24.2 12.9 31.3s23 8 33.8 2.3l128.3-68.5 128.3 68.5c10.8 5.7 23.9 4.9 33.8-2.3s14.9-19.3 12.9-31.3L438.5 329 542.7 225.9c8.6-8.5 11.7-21.2 7.9-32.7s-13.7-19.9-25.7-21.7L381.2 150.3 316.9 18z\" \/><\/svg><\/a><\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li><a><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 576 512\"><path d=\"M316.9 18C311.6 7 300.4 0 288.1 0s-23.4 7-28.8 18L195 150.3 51.4 171.5c-12 1.8-22 10.2-25.7 21.7s-.7 24.2 7.9 32.7L137.8 329 113.2 474.7c-2 12 3 24.2 12.9 31.3s23 8 33.8 2.3l128.3-68.5 128.3 68.5c10.8 5.7 23.9 4.9 33.8-2.3s14.9-19.3 12.9-31.3L438.5 329 542.7 225.9c8.6-8.5 11.7-21.2 7.9-32.7s-13.7-19.9-25.7-21.7L381.2 150.3 316.9 18z\" \/><\/svg><\/a><\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li><a><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 576 512\"><path d=\"M316.9 18C311.6 7 300.4 0 288.1 0s-23.4 7-28.8 18L195 150.3 51.4 171.5c-12 1.8-22 10.2-25.7 21.7s-.7 24.2 7.9 32.7L137.8 329 113.2 474.7c-2 12 3 24.2 12.9 31.3s23 8 33.8 2.3l128.3-68.5 128.3 68.5c10.8 5.7 23.9 4.9 33.8-2.3s14.9-19.3 12.9-31.3L438.5 329 542.7 225.9c8.6-8.5 11.7-21.2 7.9-32.7s-13.7-19.9-25.7-21.7L381.2 150.3 316.9 18z\" \/><\/svg><\/a><\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li><a><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 576 512\"><path d=\"M316.9 18C311.6 7 300.4 0 288.1 0s-23.4 7-28.8 18L195 150.3 51.4 171.5c-12 1.8-22 10.2-25.7 21.7s-.7 24.2 7.9 32.7L137.8 329 113.2 474.7c-2 12 3 24.2 12.9 31.3s23 8 33.8 2.3l128.3-68.5 128.3 68.5c10.8 5.7 23.9 4.9 33.8-2.3s14.9-19.3 12.9-31.3L438.5 329 542.7 225.9c8.6-8.5 11.7-21.2 7.9-32.7s-13.7-19.9-25.7-21.7L381.2 150.3 316.9 18z\" \/><\/svg><\/a><\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li><a><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 576 512\"><path d=\"M316.9 18C311.6 7 300.4 0 288.1 0s-23.4 7-28.8 18L195 150.3 51.4 171.5c-12 1.8-22 10.2-25.7 21.7s-.7 24.2 7.9 32.7L137.8 329 113.2 474.7c-2 12 3 24.2 12.9 31.3s23 8 33.8 2.3l128.3-68.5 128.3 68.5c10.8 5.7 23.9 4.9 33.8-2.3s14.9-19.3 12.9-31.3L438.5 329 542.7 225.9c8.6-8.5 11.7-21.2 7.9-32.7s-13.7-19.9-25.7-21.7L381.2 150.3 316.9 18z\" \/><\/svg><\/a><\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/ul>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<p>We were very happy with the service from Lemcom Renovations. They arrived on time, communicated well, and paid attention to the small details that make a big difference. The workmanship was solid, and the space looked so much better once they were finished. It\u2019s hard to find people who take pride in their work, but you can see that they do.\n<\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<div class=\"swiper-slide\">\n\t\t\t\t\t<div class=\"swiper-slide-inner\">\n\t\t\t\t\t\t<div class=\"elementskit-single-testimonial-slider elementskit-testimonial-slider-block-style elementskit-testimonial-slider-block-style-three  elementor-repeater-item-fac095e\" >\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"elementskit-watermark-icon elementskit-icon-content \">\n\t\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"icon icon-quote\"><\/i>\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"elementskit-commentor-bio \">\n\t\t\t\t\t\t\t\t\t<div class=\"elementkit-commentor-details\">\n\t\t\t\t\t\t\t\t\t\t<div class=\"elementskit-commentor-image ekit-testimonial--avatar\">\n\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"70\" height=\"70\" src=\"https:\/\/lemcomrenovations.urbanlifestylegroup.co.za\/wp-content\/uploads\/2022\/08\/team-member-3.webp\" class=\"attachment-full size-full\" alt=\"\" \/>\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"elementskit-profile-info\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<strong class=\"elementskit-author-name\">Candice Williams<\/strong>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementskit-author-des\">Commercial Maintenance<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"elementskit-commentor-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<ul class=\"elementskit-stars\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li><a><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 576 512\"><path d=\"M316.9 18C311.6 7 300.4 0 288.1 0s-23.4 7-28.8 18L195 150.3 51.4 171.5c-12 1.8-22 10.2-25.7 21.7s-.7 24.2 7.9 32.7L137.8 329 113.2 474.7c-2 12 3 24.2 12.9 31.3s23 8 33.8 2.3l128.3-68.5 128.3 68.5c10.8 5.7 23.9 4.9 33.8-2.3s14.9-19.3 12.9-31.3L438.5 329 542.7 225.9c8.6-8.5 11.7-21.2 7.9-32.7s-13.7-19.9-25.7-21.7L381.2 150.3 316.9 18z\" \/><\/svg><\/a><\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li><a><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 576 512\"><path d=\"M316.9 18C311.6 7 300.4 0 288.1 0s-23.4 7-28.8 18L195 150.3 51.4 171.5c-12 1.8-22 10.2-25.7 21.7s-.7 24.2 7.9 32.7L137.8 329 113.2 474.7c-2 12 3 24.2 12.9 31.3s23 8 33.8 2.3l128.3-68.5 128.3 68.5c10.8 5.7 23.9 4.9 33.8-2.3s14.9-19.3 12.9-31.3L438.5 329 542.7 225.9c8.6-8.5 11.7-21.2 7.9-32.7s-13.7-19.9-25.7-21.7L381.2 150.3 316.9 18z\" \/><\/svg><\/a><\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li><a><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 576 512\"><path d=\"M316.9 18C311.6 7 300.4 0 288.1 0s-23.4 7-28.8 18L195 150.3 51.4 171.5c-12 1.8-22 10.2-25.7 21.7s-.7 24.2 7.9 32.7L137.8 329 113.2 474.7c-2 12 3 24.2 12.9 31.3s23 8 33.8 2.3l128.3-68.5 128.3 68.5c10.8 5.7 23.9 4.9 33.8-2.3s14.9-19.3 12.9-31.3L438.5 329 542.7 225.9c8.6-8.5 11.7-21.2 7.9-32.7s-13.7-19.9-25.7-21.7L381.2 150.3 316.9 18z\" \/><\/svg><\/a><\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li><a><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 576 512\"><path d=\"M316.9 18C311.6 7 300.4 0 288.1 0s-23.4 7-28.8 18L195 150.3 51.4 171.5c-12 1.8-22 10.2-25.7 21.7s-.7 24.2 7.9 32.7L137.8 329 113.2 474.7c-2 12 3 24.2 12.9 31.3s23 8 33.8 2.3l128.3-68.5 128.3 68.5c10.8 5.7 23.9 4.9 33.8-2.3s14.9-19.3 12.9-31.3L438.5 329 542.7 225.9c8.6-8.5 11.7-21.2 7.9-32.7s-13.7-19.9-25.7-21.7L381.2 150.3 316.9 18z\" \/><\/svg><\/a><\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li><a><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 576 512\"><path d=\"M316.9 18C311.6 7 300.4 0 288.1 0s-23.4 7-28.8 18L195 150.3 51.4 171.5c-12 1.8-22 10.2-25.7 21.7s-.7 24.2 7.9 32.7L137.8 329 113.2 474.7c-2 12 3 24.2 12.9 31.3s23 8 33.8 2.3l128.3-68.5 128.3 68.5c10.8 5.7 23.9 4.9 33.8-2.3s14.9-19.3 12.9-31.3L438.5 329 542.7 225.9c8.6-8.5 11.7-21.2 7.9-32.7s-13.7-19.9-25.7-21.7L381.2 150.3 316.9 18z\" \/><\/svg><\/a><\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/ul>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<p>I had a really good experience working with Lemcom Renovations. They were easy to deal with, explained the work clearly, and made sure everything was done properly before leaving. The job was completed neatly and the finish made a big difference to the look of the house. I\u2019d happily use them again for future work.\n<\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\n\t\t\n\t\t\t<\/div>\n<\/div>\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-f25195b e-flex e-con-boxed e-con e-parent\" data-id=\"f25195b\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-35f71fe elementor-widget elementor-widget-heading\" data-id=\"35f71fe\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\"><a href=\"http:\/\/Wo\">Our <span style=\"color: #0074C8\"> Works<\/span><\/a><\/h2>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-35799b7 e-grid e-con-boxed e-con e-parent\" data-id=\"35799b7\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-322ec27 e-con-full e-flex e-con e-child\" data-id=\"322ec27\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-f0939d9 e-con-full e-flex e-con e-child\" data-id=\"f0939d9\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c636e11 elementor-widget elementor-widget-heading\" data-id=\"c636e11\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Bathroom Renovations<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-8845b0c e-con-full e-flex e-con e-child\" data-id=\"8845b0c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-489a325 elementor-widget elementor-widget-html\" data-id=\"489a325\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- BEFORE & AFTER SLIDER WITH FULLSCREEN BUTTON + SMART LABEL HIDING -->\r\n\r\n<style>\r\n  \/*\r\n    MAIN SLIDER CONTAINER\r\n    This holds the before image, after image, labels, handle, and fullscreen button.\r\n  *\/\r\n  .before-after-slider {\r\n    --position: 50%;\r\n\r\n    position: relative;\r\n    width: 100%;\r\n    max-width: 1100px;\r\n    aspect-ratio: 16 \/ 9;\r\n    margin: 0 auto;\r\n    overflow: hidden;\r\n    border-radius: 18px;\r\n    background: #000000;\r\n    box-shadow: 0 20px 45px rgba(0, 0, 0, 0.25);\r\n    user-select: none;\r\n  }\r\n\r\n  \/*\r\n    BOTH IMAGES\r\n    They sit directly on top of each other.\r\n  *\/\r\n  .before-after-slider img {\r\n    position: absolute;\r\n    inset: 0;\r\n    width: 100%;\r\n    height: 100%;\r\n    object-fit: cover;\r\n  }\r\n\r\n  \/*\r\n    BEFORE IMAGE\r\n    This sits underneath and shows on the LEFT side.\r\n  *\/\r\n  .before-after-slider .before-img {\r\n    z-index: 1;\r\n  }\r\n\r\n  \/*\r\n    AFTER IMAGE\r\n    This sits on top and shows on the RIGHT side.\r\n    The clip-path changes as you drag.\r\n  *\/\r\n  .before-after-slider .after-img {\r\n    z-index: 2;\r\n    clip-path: inset(0 0 0 var(--position));\r\n  }\r\n\r\n  \/*\r\n    INVISIBLE RANGE INPUT\r\n    This is what makes the image draggable.\r\n  *\/\r\n  .before-after-slider .slider-range {\r\n    position: absolute;\r\n    inset: 0;\r\n    z-index: 10;\r\n    width: 100%;\r\n    height: 100%;\r\n    opacity: 0;\r\n    cursor: ew-resize;\r\n  }\r\n\r\n  \/*\r\n    WHITE MIDDLE LINE\r\n    This follows the slider position.\r\n  *\/\r\n  .before-after-slider .slider-line {\r\n    position: absolute;\r\n    top: 0;\r\n    bottom: 0;\r\n    left: var(--position);\r\n    z-index: 3;\r\n    width: 4px;\r\n    background: #ffffff;\r\n    transform: translateX(-50%);\r\n    pointer-events: none;\r\n  }\r\n\r\n  \/*\r\n    ROUND ARROW HANDLE\r\n    This is the circle in the middle.\r\n  *\/\r\n  .before-after-slider .slider-handle {\r\n    position: absolute;\r\n    top: 50%;\r\n    left: var(--position);\r\n    z-index: 5;\r\n    width: 58px;\r\n    height: 58px;\r\n    border: 4px solid #ffffff;\r\n    border-radius: 50%;\r\n    background: rgba(0, 0, 0, 0.35);\r\n    transform: translate(-50%, -50%);\r\n    display: flex;\r\n    align-items: center;\r\n    justify-content: center;\r\n    color: #ffffff;\r\n    font-size: 24px;\r\n    font-weight: 700;\r\n    pointer-events: none;\r\n    backdrop-filter: blur(4px);\r\n  }\r\n\r\n  \/*\r\n    ARROW INSIDE THE CIRCLE\r\n  *\/\r\n  .before-after-slider .slider-handle::before {\r\n    content: \"\u2194\";\r\n    line-height: 1;\r\n  }\r\n\r\n  \/*\r\n    BEFORE \/ AFTER LABELS\r\n  *\/\r\n  .before-after-slider .ba-label {\r\n    position: absolute;\r\n    top: 20px;\r\n    z-index: 4;\r\n    padding: 8px 14px;\r\n    border-radius: 999px;\r\n    background: rgba(0, 0, 0, 0.65);\r\n    color: #ffffff;\r\n    font-size: 13px;\r\n    font-weight: 700;\r\n    letter-spacing: 0.5px;\r\n    text-transform: uppercase;\r\n    pointer-events: none;\r\n    opacity: 1;\r\n    transition: opacity 0.25s ease;\r\n  }\r\n\r\n  .before-after-slider .before-label {\r\n    left: 20px;\r\n  }\r\n\r\n  .before-after-slider .after-label {\r\n    right: 20px;\r\n  }\r\n\r\n  \/*\r\n    SMART LABEL HIDING\r\n\r\n    When the slider is fully showing AFTER,\r\n    the BEFORE label disappears.\r\n  *\/\r\n  .before-after-slider.is-fully-after .before-label {\r\n    opacity: 0;\r\n  }\r\n\r\n  \/*\r\n    When the slider is fully showing BEFORE,\r\n    the AFTER label disappears.\r\n  *\/\r\n  .before-after-slider.is-fully-before .after-label {\r\n    opacity: 0;\r\n  }\r\n\r\n  \/*\r\n    FULLSCREEN BUTTON\r\n    This appears in the bottom-right corner.\r\n  *\/\r\n  .before-after-slider .fullscreen-btn {\r\n    position: absolute;\r\n    right: 18px;\r\n    bottom: 18px;\r\n    z-index: 20;\r\n    width: 44px;\r\n    height: 44px;\r\n    border: none;\r\n    border-radius: 50%;\r\n    background: rgba(0, 0, 0, 0.65);\r\n    color: #ffffff;\r\n    font-size: 20px;\r\n    font-weight: 700;\r\n    cursor: pointer;\r\n    display: flex;\r\n    align-items: center;\r\n    justify-content: center;\r\n    backdrop-filter: blur(4px);\r\n    transition: all 0.25s ease;\r\n  }\r\n\r\n  .before-after-slider .fullscreen-btn:hover {\r\n    background: #ffffff;\r\n    color: #000000;\r\n    transform: scale(1.05);\r\n  }\r\n\r\n  \/*\r\n    CLOSE FULLSCREEN BUTTON\r\n    Hidden normally. Only shows when fullscreen is active.\r\n  *\/\r\n  .before-after-slider .close-fullscreen-btn {\r\n    display: none;\r\n    position: absolute;\r\n    right: 24px;\r\n    top: 24px;\r\n    z-index: 30;\r\n    width: 48px;\r\n    height: 48px;\r\n    border: none;\r\n    border-radius: 50%;\r\n    background: rgba(0, 0, 0, 0.75);\r\n    color: #ffffff;\r\n    font-size: 28px;\r\n    line-height: 1;\r\n    cursor: pointer;\r\n    align-items: center;\r\n    justify-content: center;\r\n    backdrop-filter: blur(4px);\r\n  }\r\n\r\n  .before-after-slider .close-fullscreen-btn:hover {\r\n    background: #ffffff;\r\n    color: #000000;\r\n  }\r\n\r\n  \/*\r\n    FULLSCREEN ACTIVE STATE\r\n    This makes the selected slider cover the whole screen.\r\n  *\/\r\n  .before-after-slider.is-fullscreen {\r\n    position: fixed !important;\r\n    inset: 0 !important;\r\n    z-index: 999999 !important;\r\n    width: 100vw !important;\r\n    height: 100vh !important;\r\n    max-width: none !important;\r\n    aspect-ratio: auto !important;\r\n    margin: 0 !important;\r\n    border-radius: 0 !important;\r\n    box-shadow: none !important;\r\n  }\r\n\r\n  \/*\r\n    FULLSCREEN IMAGE STYLE\r\n    Shows the full image without cropping.\r\n  *\/\r\n  .before-after-slider.is-fullscreen img {\r\n    object-fit: contain;\r\n    background: #000000;\r\n  }\r\n\r\n  \/*\r\n    Hide fullscreen button when already fullscreen.\r\n  *\/\r\n  .before-after-slider.is-fullscreen .fullscreen-btn {\r\n    display: none;\r\n  }\r\n\r\n  \/*\r\n    Show close button when fullscreen.\r\n  *\/\r\n  .before-after-slider.is-fullscreen .close-fullscreen-btn {\r\n    display: flex;\r\n  }\r\n\r\n  \/*\r\n    Prevent page scrolling while fullscreen is open.\r\n  *\/\r\n  body.ba-no-scroll {\r\n    overflow: hidden;\r\n  }\r\n\r\n  \/*\r\n    MOBILE SETTINGS\r\n  *\/\r\n \/* Update your MOBILE SETTINGS block *\/\r\n@media (max-width: 768px) {\r\n  .before-after-slider {\r\n    aspect-ratio: 4 \/ 5;\r\n    border-radius: 14px;\r\n    margin-bottom: 24px; \/* <--- ADD THIS LINE *\/\r\n  }\r\n\r\n  \/* ... rest of your mobile settings ... *\/\r\n}\r\n\r\n    .before-after-slider .slider-handle {\r\n      width: 48px;\r\n      height: 48px;\r\n      font-size: 20px;\r\n    }\r\n\r\n    .before-after-slider .ba-label {\r\n      top: 14px;\r\n      font-size: 11px;\r\n      padding: 6px 10px;\r\n    }\r\n\r\n    .before-after-slider .fullscreen-btn {\r\n      right: 14px;\r\n      bottom: 14px;\r\n      width: 40px;\r\n      height: 40px;\r\n      font-size: 18px;\r\n    }\r\n\r\n    .before-after-slider .close-fullscreen-btn {\r\n      right: 16px;\r\n      top: 16px;\r\n      width: 44px;\r\n      height: 44px;\r\n      font-size: 26px;\r\n    }\r\n  }\r\n<\/style>\r\n\r\n\r\n<div class=\"before-after-slider\">\r\n\r\n  <!-- BEFORE IMAGE -->\r\n  <img decoding=\"async\" \r\n    src=\"https:\/\/lemcomrenovations.urbanlifestylegroup.co.za\/wp-content\/uploads\/2026\/06\/PAINT-BEFORE.png\" \r\n    alt=\"Before renovation\" \r\n    class=\"before-img\"\r\n  >\r\n\r\n  <!-- AFTER IMAGE -->\r\n  <img decoding=\"async\" \r\n    src=\"https:\/\/lemcomrenovations.urbanlifestylegroup.co.za\/wp-content\/uploads\/2026\/06\/PAINT-AFTER.png\" \r\n    alt=\"After renovation\" \r\n    class=\"after-img\"\r\n  >\r\n\r\n  <!-- BEFORE \/ AFTER LABELS -->\r\n  <span class=\"ba-label before-label\">Before<\/span>\r\n  <span class=\"ba-label after-label\">After<\/span>\r\n\r\n  <!-- MIDDLE SLIDER LINE -->\r\n  <div class=\"slider-line\"><\/div>\r\n\r\n  <!-- CIRCLE ARROW HANDLE -->\r\n  <div class=\"slider-handle\"><\/div>\r\n\r\n  <!-- FULLSCREEN BUTTON -->\r\n  <button class=\"fullscreen-btn\" type=\"button\" aria-label=\"Open fullscreen\">\r\n    \u26f6\r\n  <\/button>\r\n\r\n  <!-- CLOSE FULLSCREEN BUTTON -->\r\n  <button class=\"close-fullscreen-btn\" type=\"button\" aria-label=\"Close fullscreen\">\r\n    \u00d7\r\n  <\/button>\r\n\r\n  <!-- INVISIBLE DRAGGABLE SLIDER INPUT -->\r\n  <input \r\n    type=\"range\" \r\n    min=\"0\" \r\n    max=\"100\" \r\n    value=\"50\" \r\n    class=\"slider-range\" \r\n    aria-label=\"Before and after renovation slider\"\r\n  >\r\n\r\n<\/div>\r\n\r\n\r\n<script>\r\n  \/*\r\n    This script handles:\r\n    1. Moving the before\/after slider\r\n    2. Hiding the correct label when fully crossed over\r\n    3. Opening fullscreen\r\n    4. Closing fullscreen\r\n    5. Supporting multiple sliders on the same page\r\n  *\/\r\n\r\n  document.querySelectorAll('.before-after-slider').forEach(function(slider) {\r\n\r\n    \/*\r\n      Prevents the same slider from being initialized twice.\r\n      This helps when Elementor reloads widgets in the editor.\r\n    *\/\r\n    if (slider.classList.contains('ba-slider-ready')) return;\r\n    slider.classList.add('ba-slider-ready');\r\n\r\n    const range = slider.querySelector('.slider-range');\r\n    const fullscreenBtn = slider.querySelector('.fullscreen-btn');\r\n    const closeBtn = slider.querySelector('.close-fullscreen-btn');\r\n\r\n    \/*\r\n      This number controls how close to the edge the slider must be\r\n      before one label disappears.\r\n\r\n      0 = label disappears only at the absolute edge.\r\n      2 = label disappears when slider is very close to the edge.\r\n    *\/\r\n    const edgeBuffer = 1;\r\n\r\n    \/*\r\n      Updates slider position and label visibility.\r\n    *\/\r\n    function updateSlider() {\r\n      const value = Number(range.value);\r\n\r\n      \/*\r\n        Moves the slider line and controls how much of the after image shows.\r\n      *\/\r\n      slider.style.setProperty('--position', value + '%');\r\n\r\n      \/*\r\n        Remove both label states first.\r\n        This means both labels show during normal split view.\r\n      *\/\r\n      slider.classList.remove('is-fully-before');\r\n      slider.classList.remove('is-fully-after');\r\n\r\n      \/*\r\n        value <= edgeBuffer means the AFTER image is fully visible.\r\n        So the BEFORE label hides.\r\n      *\/\r\n      if (value <= edgeBuffer) {\r\n        slider.classList.add('is-fully-after');\r\n      }\r\n\r\n      \/*\r\n        value >= 100 - edgeBuffer means the BEFORE image is fully visible.\r\n        So the AFTER label hides.\r\n      *\/\r\n      if (value >= 100 - edgeBuffer) {\r\n        slider.classList.add('is-fully-before');\r\n      }\r\n    }\r\n\r\n    \/*\r\n      Runs the update while dragging.\r\n    *\/\r\n    range.addEventListener('input', updateSlider);\r\n\r\n    \/*\r\n      Sets the correct starting position when the page loads.\r\n    *\/\r\n    updateSlider();\r\n\r\n    \/*\r\n      Opens only this specific slider in fullscreen.\r\n    *\/\r\n    fullscreenBtn.addEventListener('click', function(event) {\r\n      event.stopPropagation();\r\n\r\n      slider.classList.add('is-fullscreen');\r\n      document.body.classList.add('ba-no-scroll');\r\n    });\r\n\r\n    \/*\r\n      Closes this specific slider from fullscreen.\r\n    *\/\r\n    closeBtn.addEventListener('click', function(event) {\r\n      event.stopPropagation();\r\n\r\n      slider.classList.remove('is-fullscreen');\r\n\r\n      \/*\r\n        Only allow page scrolling again if no other slider is fullscreen.\r\n      *\/\r\n      if (!document.querySelector('.before-after-slider.is-fullscreen')) {\r\n        document.body.classList.remove('ba-no-scroll');\r\n      }\r\n    });\r\n  });\r\n\r\n  \/*\r\n    Press ESC to close any fullscreen slider.\r\n  *\/\r\n  document.addEventListener('keydown', function(event) {\r\n    if (event.key === 'Escape') {\r\n      document.querySelectorAll('.before-after-slider.is-fullscreen').forEach(function(slider) {\r\n        slider.classList.remove('is-fullscreen');\r\n      });\r\n\r\n      document.body.classList.remove('ba-no-scroll');\r\n    }\r\n  });\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-9336010 e-con-full e-flex e-con e-child\" data-id=\"9336010\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-346c4d3 e-con-full e-flex e-con e-child\" data-id=\"346c4d3\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-475e6b3 elementor-widget elementor-widget-heading\" data-id=\"475e6b3\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Kitchen Renovations<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-6624a29 e-con-full e-flex e-con e-child\" data-id=\"6624a29\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-215cfec elementor-widget elementor-widget-html\" data-id=\"215cfec\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- BEFORE & AFTER SLIDER WITH FULLSCREEN BUTTON + SMART LABEL HIDING -->\r\n\r\n<style>\r\n  \/*\r\n    MAIN SLIDER CONTAINER\r\n    This holds the before image, after image, labels, handle, and fullscreen button.\r\n  *\/\r\n  .before-after-slider {\r\n    --position: 50%;\r\n\r\n    position: relative;\r\n    width: 100%;\r\n    max-width: 1100px;\r\n    aspect-ratio: 16 \/ 9;\r\n    margin: 0 auto;\r\n    overflow: hidden;\r\n    border-radius: 18px;\r\n    background: #000000;\r\n    box-shadow: 0 20px 45px rgba(0, 0, 0, 0.25);\r\n    user-select: none;\r\n  }\r\n\r\n  \/*\r\n    BOTH IMAGES\r\n    They sit directly on top of each other.\r\n  *\/\r\n  .before-after-slider img {\r\n    position: absolute;\r\n    inset: 0;\r\n    width: 100%;\r\n    height: 100%;\r\n    object-fit: cover;\r\n  }\r\n\r\n  \/*\r\n    BEFORE IMAGE\r\n    This sits underneath and shows on the LEFT side.\r\n  *\/\r\n  .before-after-slider .before-img {\r\n    z-index: 1;\r\n  }\r\n\r\n  \/*\r\n    AFTER IMAGE\r\n    This sits on top and shows on the RIGHT side.\r\n    The clip-path changes as you drag.\r\n  *\/\r\n  .before-after-slider .after-img {\r\n    z-index: 2;\r\n    clip-path: inset(0 0 0 var(--position));\r\n  }\r\n\r\n  \/*\r\n    INVISIBLE RANGE INPUT\r\n    This is what makes the image draggable.\r\n  *\/\r\n  .before-after-slider .slider-range {\r\n    position: absolute;\r\n    inset: 0;\r\n    z-index: 10;\r\n    width: 100%;\r\n    height: 100%;\r\n    opacity: 0;\r\n    cursor: ew-resize;\r\n  }\r\n\r\n  \/*\r\n    WHITE MIDDLE LINE\r\n    This follows the slider position.\r\n  *\/\r\n  .before-after-slider .slider-line {\r\n    position: absolute;\r\n    top: 0;\r\n    bottom: 0;\r\n    left: var(--position);\r\n    z-index: 3;\r\n    width: 4px;\r\n    background: #ffffff;\r\n    transform: translateX(-50%);\r\n    pointer-events: none;\r\n  }\r\n\r\n  \/*\r\n    ROUND ARROW HANDLE\r\n    This is the circle in the middle.\r\n  *\/\r\n  .before-after-slider .slider-handle {\r\n    position: absolute;\r\n    top: 50%;\r\n    left: var(--position);\r\n    z-index: 5;\r\n    width: 58px;\r\n    height: 58px;\r\n    border: 4px solid #ffffff;\r\n    border-radius: 50%;\r\n    background: rgba(0, 0, 0, 0.35);\r\n    transform: translate(-50%, -50%);\r\n    display: flex;\r\n    align-items: center;\r\n    justify-content: center;\r\n    color: #ffffff;\r\n    font-size: 24px;\r\n    font-weight: 700;\r\n    pointer-events: none;\r\n    backdrop-filter: blur(4px);\r\n  }\r\n\r\n  \/*\r\n    ARROW INSIDE THE CIRCLE\r\n  *\/\r\n  .before-after-slider .slider-handle::before {\r\n    content: \"\u2194\";\r\n    line-height: 1;\r\n  }\r\n\r\n  \/*\r\n    BEFORE \/ AFTER LABELS\r\n  *\/\r\n  .before-after-slider .ba-label {\r\n    position: absolute;\r\n    top: 20px;\r\n    z-index: 4;\r\n    padding: 8px 14px;\r\n    border-radius: 999px;\r\n    background: rgba(0, 0, 0, 0.65);\r\n    color: #ffffff;\r\n    font-size: 13px;\r\n    font-weight: 700;\r\n    letter-spacing: 0.5px;\r\n    text-transform: uppercase;\r\n    pointer-events: none;\r\n    opacity: 1;\r\n    transition: opacity 0.25s ease;\r\n  }\r\n\r\n  .before-after-slider .before-label {\r\n    left: 20px;\r\n  }\r\n\r\n  .before-after-slider .after-label {\r\n    right: 20px;\r\n  }\r\n\r\n  \/*\r\n    SMART LABEL HIDING\r\n\r\n    When the slider is fully showing AFTER,\r\n    the BEFORE label disappears.\r\n  *\/\r\n  .before-after-slider.is-fully-after .before-label {\r\n    opacity: 0;\r\n  }\r\n\r\n  \/*\r\n    When the slider is fully showing BEFORE,\r\n    the AFTER label disappears.\r\n  *\/\r\n  .before-after-slider.is-fully-before .after-label {\r\n    opacity: 0;\r\n  }\r\n\r\n  \/*\r\n    FULLSCREEN BUTTON\r\n    This appears in the bottom-right corner.\r\n  *\/\r\n  .before-after-slider .fullscreen-btn {\r\n    position: absolute;\r\n    right: 18px;\r\n    bottom: 18px;\r\n    z-index: 20;\r\n    width: 44px;\r\n    height: 44px;\r\n    border: none;\r\n    border-radius: 50%;\r\n    background: rgba(0, 0, 0, 0.65);\r\n    color: #ffffff;\r\n    font-size: 20px;\r\n    font-weight: 700;\r\n    cursor: pointer;\r\n    display: flex;\r\n    align-items: center;\r\n    justify-content: center;\r\n    backdrop-filter: blur(4px);\r\n    transition: all 0.25s ease;\r\n  }\r\n\r\n  .before-after-slider .fullscreen-btn:hover {\r\n    background: #ffffff;\r\n    color: #000000;\r\n    transform: scale(1.05);\r\n  }\r\n\r\n  \/*\r\n    CLOSE FULLSCREEN BUTTON\r\n    Hidden normally. Only shows when fullscreen is active.\r\n  *\/\r\n  .before-after-slider .close-fullscreen-btn {\r\n    display: none;\r\n    position: absolute;\r\n    right: 24px;\r\n    top: 24px;\r\n    z-index: 30;\r\n    width: 48px;\r\n    height: 48px;\r\n    border: none;\r\n    border-radius: 50%;\r\n    background: rgba(0, 0, 0, 0.75);\r\n    color: #ffffff;\r\n    font-size: 28px;\r\n    line-height: 1;\r\n    cursor: pointer;\r\n    align-items: center;\r\n    justify-content: center;\r\n    backdrop-filter: blur(4px);\r\n  }\r\n\r\n  .before-after-slider .close-fullscreen-btn:hover {\r\n    background: #ffffff;\r\n    color: #000000;\r\n  }\r\n\r\n  \/*\r\n    FULLSCREEN ACTIVE STATE\r\n    This makes the selected slider cover the whole screen.\r\n  *\/\r\n  .before-after-slider.is-fullscreen {\r\n    position: fixed !important;\r\n    inset: 0 !important;\r\n    z-index: 999999 !important;\r\n    width: 100vw !important;\r\n    height: 100vh !important;\r\n    max-width: none !important;\r\n    aspect-ratio: auto !important;\r\n    margin: 0 !important;\r\n    border-radius: 0 !important;\r\n    box-shadow: none !important;\r\n  }\r\n\r\n  \/*\r\n    FULLSCREEN IMAGE STYLE\r\n    Shows the full image without cropping.\r\n  *\/\r\n  .before-after-slider.is-fullscreen img {\r\n    object-fit: contain;\r\n    background: #000000;\r\n  }\r\n\r\n  \/*\r\n    Hide fullscreen button when already fullscreen.\r\n  *\/\r\n  .before-after-slider.is-fullscreen .fullscreen-btn {\r\n    display: none;\r\n  }\r\n\r\n  \/*\r\n    Show close button when fullscreen.\r\n  *\/\r\n  .before-after-slider.is-fullscreen .close-fullscreen-btn {\r\n    display: flex;\r\n  }\r\n\r\n  \/*\r\n    Prevent page scrolling while fullscreen is open.\r\n  *\/\r\n  body.ba-no-scroll {\r\n    overflow: hidden;\r\n  }\r\n\r\n  \/*\r\n    MOBILE SETTINGS\r\n  *\/\r\n  \/* Update your MOBILE SETTINGS block *\/\r\n@media (max-width: 768px) {\r\n  .before-after-slider {\r\n    aspect-ratio: 4 \/ 5;\r\n    border-radius: 14px;\r\n    margin-bottom: 24px; \/* <--- ADD THIS LINE *\/\r\n  }\r\n\r\n  \/* ... rest of your mobile settings ... *\/\r\n}\r\n\r\n    .before-after-slider .slider-handle {\r\n      width: 48px;\r\n      height: 48px;\r\n      font-size: 20px;\r\n    }\r\n\r\n    .before-after-slider .ba-label {\r\n      top: 14px;\r\n      font-size: 11px;\r\n      padding: 6px 10px;\r\n    }\r\n\r\n    .before-after-slider .fullscreen-btn {\r\n      right: 14px;\r\n      bottom: 14px;\r\n      width: 40px;\r\n      height: 40px;\r\n      font-size: 18px;\r\n    }\r\n\r\n    .before-after-slider .close-fullscreen-btn {\r\n      right: 16px;\r\n      top: 16px;\r\n      width: 44px;\r\n      height: 44px;\r\n      font-size: 26px;\r\n    }\r\n  }\r\n<\/style>\r\n\r\n\r\n<div class=\"before-after-slider\">\r\n\r\n  <!-- BEFORE IMAGE -->\r\n  <img decoding=\"async\" \r\n    src=\"https:\/\/lemcomrenovations.urbanlifestylegroup.co.za\/wp-content\/uploads\/2026\/06\/KITCHEN-BEFORE.png\" \r\n    alt=\"Before renovation\" \r\n    class=\"before-img\"\r\n  >\r\n\r\n  <!-- AFTER IMAGE -->\r\n  <img decoding=\"async\" \r\n    src=\"https:\/\/lemcomrenovations.urbanlifestylegroup.co.za\/wp-content\/uploads\/2026\/06\/KITCHEN-AFTER.png\" \r\n    alt=\"After renovation\" \r\n    class=\"after-img\"\r\n  >\r\n\r\n  <!-- BEFORE \/ AFTER LABELS -->\r\n  <span class=\"ba-label before-label\">Before<\/span>\r\n  <span class=\"ba-label after-label\">After<\/span>\r\n\r\n  <!-- MIDDLE SLIDER LINE -->\r\n  <div class=\"slider-line\"><\/div>\r\n\r\n  <!-- CIRCLE ARROW HANDLE -->\r\n  <div class=\"slider-handle\"><\/div>\r\n\r\n  <!-- FULLSCREEN BUTTON -->\r\n  <button class=\"fullscreen-btn\" type=\"button\" aria-label=\"Open fullscreen\">\r\n    \u26f6\r\n  <\/button>\r\n\r\n  <!-- CLOSE FULLSCREEN BUTTON -->\r\n  <button class=\"close-fullscreen-btn\" type=\"button\" aria-label=\"Close fullscreen\">\r\n    \u00d7\r\n  <\/button>\r\n\r\n  <!-- INVISIBLE DRAGGABLE SLIDER INPUT -->\r\n  <input \r\n    type=\"range\" \r\n    min=\"0\" \r\n    max=\"100\" \r\n    value=\"50\" \r\n    class=\"slider-range\" \r\n    aria-label=\"Before and after renovation slider\"\r\n  >\r\n\r\n<\/div>\r\n\r\n\r\n<script>\r\n  \/*\r\n    This script handles:\r\n    1. Moving the before\/after slider\r\n    2. Hiding the correct label when fully crossed over\r\n    3. Opening fullscreen\r\n    4. Closing fullscreen\r\n    5. Supporting multiple sliders on the same page\r\n  *\/\r\n\r\n  document.querySelectorAll('.before-after-slider').forEach(function(slider) {\r\n\r\n    \/*\r\n      Prevents the same slider from being initialized twice.\r\n      This helps when Elementor reloads widgets in the editor.\r\n    *\/\r\n    if (slider.classList.contains('ba-slider-ready')) return;\r\n    slider.classList.add('ba-slider-ready');\r\n\r\n    const range = slider.querySelector('.slider-range');\r\n    const fullscreenBtn = slider.querySelector('.fullscreen-btn');\r\n    const closeBtn = slider.querySelector('.close-fullscreen-btn');\r\n\r\n    \/*\r\n      This number controls how close to the edge the slider must be\r\n      before one label disappears.\r\n\r\n      0 = label disappears only at the absolute edge.\r\n      2 = label disappears when slider is very close to the edge.\r\n    *\/\r\n    const edgeBuffer = 1;\r\n\r\n    \/*\r\n      Updates slider position and label visibility.\r\n    *\/\r\n    function updateSlider() {\r\n      const value = Number(range.value);\r\n\r\n      \/*\r\n        Moves the slider line and controls how much of the after image shows.\r\n      *\/\r\n      slider.style.setProperty('--position', value + '%');\r\n\r\n      \/*\r\n        Remove both label states first.\r\n        This means both labels show during normal split view.\r\n      *\/\r\n      slider.classList.remove('is-fully-before');\r\n      slider.classList.remove('is-fully-after');\r\n\r\n      \/*\r\n        value <= edgeBuffer means the AFTER image is fully visible.\r\n        So the BEFORE label hides.\r\n      *\/\r\n      if (value <= edgeBuffer) {\r\n        slider.classList.add('is-fully-after');\r\n      }\r\n\r\n      \/*\r\n        value >= 100 - edgeBuffer means the BEFORE image is fully visible.\r\n        So the AFTER label hides.\r\n      *\/\r\n      if (value >= 100 - edgeBuffer) {\r\n        slider.classList.add('is-fully-before');\r\n      }\r\n    }\r\n\r\n    \/*\r\n      Runs the update while dragging.\r\n    *\/\r\n    range.addEventListener('input', updateSlider);\r\n\r\n    \/*\r\n      Sets the correct starting position when the page loads.\r\n    *\/\r\n    updateSlider();\r\n\r\n    \/*\r\n      Opens only this specific slider in fullscreen.\r\n    *\/\r\n    fullscreenBtn.addEventListener('click', function(event) {\r\n      event.stopPropagation();\r\n\r\n      slider.classList.add('is-fullscreen');\r\n      document.body.classList.add('ba-no-scroll');\r\n    });\r\n\r\n    \/*\r\n      Closes this specific slider from fullscreen.\r\n    *\/\r\n    closeBtn.addEventListener('click', function(event) {\r\n      event.stopPropagation();\r\n\r\n      slider.classList.remove('is-fullscreen');\r\n\r\n      \/*\r\n        Only allow page scrolling again if no other slider is fullscreen.\r\n      *\/\r\n      if (!document.querySelector('.before-after-slider.is-fullscreen')) {\r\n        document.body.classList.remove('ba-no-scroll');\r\n      }\r\n    });\r\n  });\r\n\r\n  \/*\r\n    Press ESC to close any fullscreen slider.\r\n  *\/\r\n  document.addEventListener('keydown', function(event) {\r\n    if (event.key === 'Escape') {\r\n      document.querySelectorAll('.before-after-slider.is-fullscreen').forEach(function(slider) {\r\n        slider.classList.remove('is-fullscreen');\r\n      });\r\n\r\n      document.body.classList.remove('ba-no-scroll');\r\n    }\r\n  });\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-ce0733b e-con-full e-flex e-con e-child\" data-id=\"ce0733b\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-a552a52 e-con-full e-flex e-con e-child\" data-id=\"a552a52\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-8bb2145 elementor-widget elementor-widget-heading\" data-id=\"8bb2145\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Outdoor Renovations<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-cb32dd7 e-con-full e-flex e-con e-child\" data-id=\"cb32dd7\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f7c7b38 elementor-widget elementor-widget-html\" data-id=\"f7c7b38\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- BEFORE & AFTER SLIDER WITH FULLSCREEN BUTTON + SMART LABEL HIDING -->\r\n\r\n<style>\r\n  \/*\r\n    MAIN SLIDER CONTAINER\r\n    This holds the before image, after image, labels, handle, and fullscreen button.\r\n  *\/\r\n  .before-after-slider {\r\n    --position: 50%;\r\n\r\n    position: relative;\r\n    width: 100%;\r\n    max-width: 1100px;\r\n    aspect-ratio: 16 \/ 9;\r\n    margin: 0 auto;\r\n    overflow: hidden;\r\n    border-radius: 18px;\r\n    background: #000000;\r\n    box-shadow: 0 20px 45px rgba(0, 0, 0, 0.25);\r\n    user-select: none;\r\n  }\r\n\r\n  \/*\r\n    BOTH IMAGES\r\n    They sit directly on top of each other.\r\n  *\/\r\n  .before-after-slider img {\r\n    position: absolute;\r\n    inset: 0;\r\n    width: 100%;\r\n    height: 100%;\r\n    object-fit: cover;\r\n  }\r\n\r\n  \/*\r\n    BEFORE IMAGE\r\n    This sits underneath and shows on the LEFT side.\r\n  *\/\r\n  .before-after-slider .before-img {\r\n    z-index: 1;\r\n  }\r\n\r\n  \/*\r\n    AFTER IMAGE\r\n    This sits on top and shows on the RIGHT side.\r\n    The clip-path changes as you drag.\r\n  *\/\r\n  .before-after-slider .after-img {\r\n    z-index: 2;\r\n    clip-path: inset(0 0 0 var(--position));\r\n  }\r\n\r\n  \/*\r\n    INVISIBLE RANGE INPUT\r\n    This is what makes the image draggable.\r\n  *\/\r\n  .before-after-slider .slider-range {\r\n    position: absolute;\r\n    inset: 0;\r\n    z-index: 10;\r\n    width: 100%;\r\n    height: 100%;\r\n    opacity: 0;\r\n    cursor: ew-resize;\r\n  }\r\n\r\n  \/*\r\n    WHITE MIDDLE LINE\r\n    This follows the slider position.\r\n  *\/\r\n  .before-after-slider .slider-line {\r\n    position: absolute;\r\n    top: 0;\r\n    bottom: 0;\r\n    left: var(--position);\r\n    z-index: 3;\r\n    width: 4px;\r\n    background: #ffffff;\r\n    transform: translateX(-50%);\r\n    pointer-events: none;\r\n  }\r\n\r\n  \/*\r\n    ROUND ARROW HANDLE\r\n    This is the circle in the middle.\r\n  *\/\r\n  .before-after-slider .slider-handle {\r\n    position: absolute;\r\n    top: 50%;\r\n    left: var(--position);\r\n    z-index: 5;\r\n    width: 58px;\r\n    height: 58px;\r\n    border: 4px solid #ffffff;\r\n    border-radius: 50%;\r\n    background: rgba(0, 0, 0, 0.35);\r\n    transform: translate(-50%, -50%);\r\n    display: flex;\r\n    align-items: center;\r\n    justify-content: center;\r\n    color: #ffffff;\r\n    font-size: 24px;\r\n    font-weight: 700;\r\n    pointer-events: none;\r\n    backdrop-filter: blur(4px);\r\n  }\r\n\r\n\r\n  \/*\r\n    ARROW INSIDE THE CIRCLE\r\n  *\/\r\n  .before-after-slider .slider-handle::before {\r\n    content: \"\u2194\";\r\n    line-height: 1;\r\n    \r\n  }\r\n\r\n  \/*\r\n    BEFORE \/ AFTER LABELS\r\n  *\/\r\n  .before-after-slider .ba-label {\r\n    position: absolute;\r\n    top: 20px;\r\n    z-index: 4;\r\n    padding: 8px 14px;\r\n    border-radius: 999px;\r\n    background: rgba(0, 0, 0, 0.65);\r\n    color: #ffffff;\r\n    font-size: 13px;\r\n    font-weight: 700;\r\n    letter-spacing: 0.5px;\r\n    text-transform: uppercase;\r\n    pointer-events: none;\r\n    opacity: 1;\r\n    transition: opacity 0.25s ease;\r\n  }\r\n\r\n  .before-after-slider .before-label {\r\n    left: 20px;\r\n  }\r\n\r\n  .before-after-slider .after-label {\r\n    right: 20px;\r\n  }\r\n\r\n  \/*\r\n    SMART LABEL HIDING\r\n\r\n    When the slider is fully showing AFTER,\r\n    the BEFORE label disappears.\r\n  *\/\r\n  .before-after-slider.is-fully-after .before-label {\r\n    opacity: 0;\r\n  }\r\n\r\n  \/*\r\n    When the slider is fully showing BEFORE,\r\n    the AFTER label disappears.\r\n  *\/\r\n  .before-after-slider.is-fully-before .after-label {\r\n    opacity: 0;\r\n  }\r\n\r\n  \/*\r\n    FULLSCREEN BUTTON\r\n    This appears in the bottom-right corner.\r\n  *\/\r\n  .before-after-slider .fullscreen-btn {\r\n    position: absolute;\r\n    right: 18px;\r\n    bottom: 18px;\r\n    z-index: 20;\r\n    width: 44px;\r\n    height: 44px;\r\n    border: none;\r\n    border-radius: 50%;\r\n    background: rgba(0, 0, 0, 0.65);\r\n    color: #ffffff;\r\n    font-size: 20px;\r\n    font-weight: 700;\r\n    cursor: pointer;\r\n    display: flex;\r\n    align-items: center;\r\n    justify-content: center;\r\n    backdrop-filter: blur(4px);\r\n    transition: all 0.25s ease;\r\n  }\r\n\r\n  .before-after-slider .fullscreen-btn:hover {\r\n    background: #ffffff;\r\n    color: #000000;\r\n    transform: scale(1.05);\r\n  }\r\n\r\n  \/*\r\n    CLOSE FULLSCREEN BUTTON\r\n    Hidden normally. Only shows when fullscreen is active.\r\n  *\/\r\n  .before-after-slider .close-fullscreen-btn {\r\n    display: none;\r\n    position: absolute;\r\n    right: 24px;\r\n    top: 24px;\r\n    z-index: 30;\r\n    width: 48px;\r\n    height: 48px;\r\n    border: none;\r\n    border-radius: 50%;\r\n    background: rgba(0, 0, 0, 0.75);\r\n    color: #ffffff;\r\n    font-size: 28px;\r\n    line-height: 1;\r\n    cursor: pointer;\r\n    align-items: center;\r\n    justify-content: center;\r\n    backdrop-filter: blur(4px);\r\n  }\r\n\r\n  .before-after-slider .close-fullscreen-btn:hover {\r\n    background: #ffffff;\r\n    color: #000000;\r\n  }\r\n\r\n  \/*\r\n    FULLSCREEN ACTIVE STATE\r\n    This makes the selected slider cover the whole screen.\r\n  *\/\r\n  .before-after-slider.is-fullscreen {\r\n    position: fixed !important;\r\n    inset: 0 !important;\r\n    z-index: 999999 !important;\r\n    width: 100vw !important;\r\n    height: 100vh !important;\r\n    max-width: none !important;\r\n    aspect-ratio: auto !important;\r\n    margin: 0 !important;\r\n    border-radius: 0 !important;\r\n    box-shadow: none !important;\r\n  }\r\n\r\n  \/*\r\n    FULLSCREEN IMAGE STYLE\r\n    Shows the full image without cropping.\r\n  *\/\r\n  .before-after-slider.is-fullscreen img {\r\n    object-fit: contain;\r\n    background: #000000;\r\n  }\r\n\r\n  \/*\r\n    Hide fullscreen button when already fullscreen.\r\n  *\/\r\n  .before-after-slider.is-fullscreen .fullscreen-btn {\r\n    display: none;\r\n  }\r\n\r\n  \/*\r\n    Show close button when fullscreen.\r\n  *\/\r\n  .before-after-slider.is-fullscreen .close-fullscreen-btn {\r\n    display: flex;\r\n  }\r\n\r\n  \/*\r\n    Prevent page scrolling while fullscreen is open.\r\n  *\/\r\n  body.ba-no-scroll {\r\n    overflow: hidden;\r\n  }\r\n\r\n  \/*\r\n    MOBILE SETTINGS\r\n  *\/\r\n  \/* Update your MOBILE SETTINGS block *\/\r\n@media (max-width: 768px) {\r\n  .before-after-slider {\r\n    aspect-ratio: 4 \/ 5;\r\n    border-radius: 14px;\r\n    margin-bottom: 24px; \/* <--- ADD THIS LINE *\/\r\n  }\r\n\r\n  \/* ... rest of your mobile settings ... *\/\r\n}\r\n\r\n    .before-after-slider .slider-handle {\r\n      width: 48px;\r\n      height: 48px;\r\n      font-size: 20px;\r\n    }\r\n\r\n    .before-after-slider .ba-label {\r\n      top: 14px;\r\n      font-size: 11px;\r\n      padding: 6px 10px;\r\n    }\r\n\r\n    .before-after-slider .fullscreen-btn {\r\n      right: 14px;\r\n      bottom: 14px;\r\n      width: 40px;\r\n      height: 40px;\r\n      font-size: 18px;\r\n    }\r\n\r\n    .before-after-slider .close-fullscreen-btn {\r\n      right: 16px;\r\n      top: 16px;\r\n      width: 44px;\r\n      height: 44px;\r\n      font-size: 26px;\r\n    }\r\n  }\r\n<\/style>\r\n\r\n\r\n<div class=\"before-after-slider\">\r\n\r\n  <!-- BEFORE IMAGE -->\r\n  <img decoding=\"async\" \r\n    src=\"https:\/\/lemcomrenovations.urbanlifestylegroup.co.za\/wp-content\/uploads\/2026\/06\/Outdoor-Renovation-BEFORE.png\" \r\n    \r\n    alt=\"Before renovation\" \r\n    class=\"before-img\"\r\n  >\r\n\r\n  <!-- AFTER IMAGE -->\r\n  <img decoding=\"async\" \r\n    src=\"https:\/\/lemcomrenovations.urbanlifestylegroup.co.za\/wp-content\/uploads\/2026\/06\/Outdoor-Renovation-AFTER.png\" \r\n    alt=\"After renovation\" \r\n    class=\"after-img\"\r\n  >\r\n\r\n  <!-- BEFORE \/ AFTER LABELS -->\r\n  <span class=\"ba-label before-label\">Before<\/span>\r\n  <span class=\"ba-label after-label\">After<\/span>\r\n\r\n  <!-- MIDDLE SLIDER LINE -->\r\n  <div class=\"slider-line\"><\/div>\r\n\r\n  <!-- CIRCLE ARROW HANDLE -->\r\n  <div class=\"slider-handle\"><\/div>\r\n\r\n  <!-- FULLSCREEN BUTTON -->\r\n  <button class=\"fullscreen-btn\" type=\"button\" aria-label=\"Open fullscreen\">\r\n    \u26f6\r\n  <\/button>\r\n\r\n  <!-- CLOSE FULLSCREEN BUTTON -->\r\n  <button class=\"close-fullscreen-btn\" type=\"button\" aria-label=\"Close fullscreen\">\r\n    \u00d7\r\n  <\/button>\r\n\r\n  <!-- INVISIBLE DRAGGABLE SLIDER INPUT -->\r\n  <input \r\n    type=\"range\" \r\n    min=\"0\" \r\n    max=\"100\" \r\n    value=\"50\" \r\n    class=\"slider-range\" \r\n    aria-label=\"Before and after renovation slider\"\r\n  >\r\n\r\n<\/div>\r\n\r\n\r\n<script>\r\n  \/*\r\n    This script handles:\r\n    1. Moving the before\/after slider\r\n    2. Hiding the correct label when fully crossed over\r\n    3. Opening fullscreen\r\n    4. Closing fullscreen\r\n    5. Supporting multiple sliders on the same page\r\n  *\/\r\n\r\n  document.querySelectorAll('.before-after-slider').forEach(function(slider) {\r\n\r\n    \/*\r\n      Prevents the same slider from being initialized twice.\r\n      This helps when Elementor reloads widgets in the editor.\r\n    *\/\r\n    if (slider.classList.contains('ba-slider-ready')) return;\r\n    slider.classList.add('ba-slider-ready');\r\n\r\n    const range = slider.querySelector('.slider-range');\r\n    const fullscreenBtn = slider.querySelector('.fullscreen-btn');\r\n    const closeBtn = slider.querySelector('.close-fullscreen-btn');\r\n\r\n    \/*\r\n      This number controls how close to the edge the slider must be\r\n      before one label disappears.\r\n\r\n      0 = label disappears only at the absolute edge.\r\n      2 = label disappears when slider is very close to the edge.\r\n    *\/\r\n    const edgeBuffer = 1;\r\n\r\n    \/*\r\n      Updates slider position and label visibility.\r\n    *\/\r\n    function updateSlider() {\r\n      const value = Number(range.value);\r\n\r\n      \/*\r\n        Moves the slider line and controls how much of the after image shows.\r\n      *\/\r\n      slider.style.setProperty('--position', value + '%');\r\n\r\n      \/*\r\n        Remove both label states first.\r\n        This means both labels show during normal split view.\r\n      *\/\r\n      slider.classList.remove('is-fully-before');\r\n      slider.classList.remove('is-fully-after');\r\n\r\n      \/*\r\n        value <= edgeBuffer means the AFTER image is fully visible.\r\n        So the BEFORE label hides.\r\n      *\/\r\n      if (value <= edgeBuffer) {\r\n        slider.classList.add('is-fully-after');\r\n      }\r\n\r\n      \/*\r\n        value >= 100 - edgeBuffer means the BEFORE image is fully visible.\r\n        So the AFTER label hides.\r\n      *\/\r\n      if (value >= 100 - edgeBuffer) {\r\n        slider.classList.add('is-fully-before');\r\n      }\r\n    }\r\n\r\n    \/*\r\n      Runs the update while dragging.\r\n    *\/\r\n    range.addEventListener('input', updateSlider);\r\n\r\n    \/*\r\n      Sets the correct starting position when the page loads.\r\n    *\/\r\n    updateSlider();\r\n\r\n    \/*\r\n      Opens only this specific slider in fullscreen.\r\n    *\/\r\n    fullscreenBtn.addEventListener('click', function(event) {\r\n      event.stopPropagation();\r\n\r\n      slider.classList.add('is-fullscreen');\r\n      document.body.classList.add('ba-no-scroll');\r\n    });\r\n\r\n    \/*\r\n      Closes this specific slider from fullscreen.\r\n    *\/\r\n    closeBtn.addEventListener('click', function(event) {\r\n      event.stopPropagation();\r\n\r\n      slider.classList.remove('is-fullscreen');\r\n\r\n      \/*\r\n        Only allow page scrolling again if no other slider is fullscreen.\r\n      *\/\r\n      if (!document.querySelector('.before-after-slider.is-fullscreen')) {\r\n        document.body.classList.remove('ba-no-scroll');\r\n      }\r\n    });\r\n  });\r\n\r\n  \/*\r\n    Press ESC to close any fullscreen slider.\r\n  *\/\r\n  document.addEventListener('keydown', function(event) {\r\n    if (event.key === 'Escape') {\r\n      document.querySelectorAll('.before-after-slider.is-fullscreen').forEach(function(slider) {\r\n        slider.classList.remove('is-fullscreen');\r\n      });\r\n\r\n      document.body.classList.remove('ba-no-scroll');\r\n    }\r\n  });\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-845e7f8 e-con-full e-flex e-con e-child\" data-id=\"845e7f8\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-471f62e e-con-full e-flex e-con e-child\" data-id=\"471f62e\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-b971f6b elementor-widget elementor-widget-heading\" data-id=\"b971f6b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Paint Renovations<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-cfbbdfd e-con-full e-flex e-con e-child\" data-id=\"cfbbdfd\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-423ed3e elementor-widget elementor-widget-html\" data-id=\"423ed3e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- BEFORE & AFTER SLIDER WITH FULLSCREEN BUTTON + SMART LABEL HIDING -->\r\n\r\n<style>\r\n  \/*\r\n    MAIN SLIDER CONTAINER\r\n    This holds the before image, after image, labels, handle, and fullscreen button.\r\n  *\/\r\n  .before-after-slider {\r\n    --position: 50%;\r\n\r\n    position: relative;\r\n    width: 100%;\r\n    max-width: 1100px;\r\n    aspect-ratio: 16 \/ 9;\r\n    margin: 0 auto;\r\n    overflow: hidden;\r\n    border-radius: 18px;\r\n    background: #000000;\r\n    box-shadow: 0 20px 45px rgba(0, 0, 0, 0.25);\r\n    user-select: none;\r\n  }\r\n\r\n  \/*\r\n    BOTH IMAGES\r\n    They sit directly on top of each other.\r\n  *\/\r\n  .before-after-slider img {\r\n    position: absolute;\r\n    inset: 0;\r\n    width: 100%;\r\n    height: 100%;\r\n    object-fit: cover;\r\n  }\r\n\r\n  \/*\r\n    BEFORE IMAGE\r\n    This sits underneath and shows on the LEFT side.\r\n  *\/\r\n  .before-after-slider .before-img {\r\n    z-index: 1;\r\n  }\r\n\r\n  \/*\r\n    AFTER IMAGE\r\n    This sits on top and shows on the RIGHT side.\r\n    The clip-path changes as you drag.\r\n  *\/\r\n  .before-after-slider .after-img {\r\n    z-index: 2;\r\n    clip-path: inset(0 0 0 var(--position));\r\n  }\r\n\r\n  \/*\r\n    INVISIBLE RANGE INPUT\r\n    This is what makes the image draggable.\r\n  *\/\r\n  .before-after-slider .slider-range {\r\n    position: absolute;\r\n    inset: 0;\r\n    z-index: 10;\r\n    width: 100%;\r\n    height: 100%;\r\n    opacity: 0;\r\n    cursor: ew-resize;\r\n  }\r\n\r\n  \/*\r\n    WHITE MIDDLE LINE\r\n    This follows the slider position.\r\n  *\/\r\n  .before-after-slider .slider-line {\r\n    position: absolute;\r\n    top: 0;\r\n    bottom: 0;\r\n    left: var(--position);\r\n    z-index: 3;\r\n    width: 4px;\r\n    background: #ffffff;\r\n    transform: translateX(-50%);\r\n    pointer-events: none;\r\n  }\r\n\r\n  \/*\r\n    ROUND ARROW HANDLE\r\n    This is the circle in the middle.\r\n  *\/\r\n  .before-after-slider .slider-handle {\r\n    position: absolute;\r\n    top: 50%;\r\n    left: var(--position);\r\n    z-index: 5;\r\n    width: 58px;\r\n    height: 58px;\r\n    border: 4px solid #ffffff;\r\n    border-radius: 50%;\r\n    background: rgba(0, 0, 0, 0.35);\r\n    transform: translate(-50%, -50%);\r\n    display: flex;\r\n    align-items: center;\r\n    justify-content: center;\r\n    color: #ffffff;\r\n    font-size: 24px;\r\n    font-weight: 700;\r\n    pointer-events: none;\r\n    backdrop-filter: blur(4px);\r\n  }\r\n\r\n\r\n  \/*\r\n    ARROW INSIDE THE CIRCLE\r\n  *\/\r\n  .before-after-slider .slider-handle::before {\r\n    content: \"\u2194\";\r\n    line-height: 1;\r\n    \r\n  }\r\n\r\n  \/*\r\n    BEFORE \/ AFTER LABELS\r\n  *\/\r\n  .before-after-slider .ba-label {\r\n    position: absolute;\r\n    top: 20px;\r\n    z-index: 4;\r\n    padding: 8px 14px;\r\n    border-radius: 999px;\r\n    background: rgba(0, 0, 0, 0.65);\r\n    color: #ffffff;\r\n    font-size: 13px;\r\n    font-weight: 700;\r\n    letter-spacing: 0.5px;\r\n    text-transform: uppercase;\r\n    pointer-events: none;\r\n    opacity: 1;\r\n    transition: opacity 0.25s ease;\r\n  }\r\n\r\n  .before-after-slider .before-label {\r\n    left: 20px;\r\n  }\r\n\r\n  .before-after-slider .after-label {\r\n    right: 20px;\r\n  }\r\n\r\n  \/*\r\n    SMART LABEL HIDING\r\n\r\n    When the slider is fully showing AFTER,\r\n    the BEFORE label disappears.\r\n  *\/\r\n  .before-after-slider.is-fully-after .before-label {\r\n    opacity: 0;\r\n  }\r\n\r\n  \/*\r\n    When the slider is fully showing BEFORE,\r\n    the AFTER label disappears.\r\n  *\/\r\n  .before-after-slider.is-fully-before .after-label {\r\n    opacity: 0;\r\n  }\r\n\r\n  \/*\r\n    FULLSCREEN BUTTON\r\n    This appears in the bottom-right corner.\r\n  *\/\r\n  .before-after-slider .fullscreen-btn {\r\n    position: absolute;\r\n    right: 18px;\r\n    bottom: 18px;\r\n    z-index: 20;\r\n    width: 44px;\r\n    height: 44px;\r\n    border: none;\r\n    border-radius: 50%;\r\n    background: rgba(0, 0, 0, 0.65);\r\n    color: #ffffff;\r\n    font-size: 20px;\r\n    font-weight: 700;\r\n    cursor: pointer;\r\n    display: flex;\r\n    align-items: center;\r\n    justify-content: center;\r\n    backdrop-filter: blur(4px);\r\n    transition: all 0.25s ease;\r\n  }\r\n\r\n  .before-after-slider .fullscreen-btn:hover {\r\n    background: #ffffff;\r\n    color: #000000;\r\n    transform: scale(1.05);\r\n  }\r\n\r\n  \/*\r\n    CLOSE FULLSCREEN BUTTON\r\n    Hidden normally. Only shows when fullscreen is active.\r\n  *\/\r\n  .before-after-slider .close-fullscreen-btn {\r\n    display: none;\r\n    position: absolute;\r\n    right: 24px;\r\n    top: 24px;\r\n    z-index: 30;\r\n    width: 48px;\r\n    height: 48px;\r\n    border: none;\r\n    border-radius: 50%;\r\n    background: rgba(0, 0, 0, 0.75);\r\n    color: #ffffff;\r\n    font-size: 28px;\r\n    line-height: 1;\r\n    cursor: pointer;\r\n    align-items: center;\r\n    justify-content: center;\r\n    backdrop-filter: blur(4px);\r\n  }\r\n\r\n  .before-after-slider .close-fullscreen-btn:hover {\r\n    background: #ffffff;\r\n    color: #000000;\r\n  }\r\n\r\n  \/*\r\n    FULLSCREEN ACTIVE STATE\r\n    This makes the selected slider cover the whole screen.\r\n  *\/\r\n  .before-after-slider.is-fullscreen {\r\n    position: fixed !important;\r\n    inset: 0 !important;\r\n    z-index: 999999 !important;\r\n    width: 100vw !important;\r\n    height: 100vh !important;\r\n    max-width: none !important;\r\n    aspect-ratio: auto !important;\r\n    margin: 0 !important;\r\n    border-radius: 0 !important;\r\n    box-shadow: none !important;\r\n  }\r\n\r\n  \/*\r\n    FULLSCREEN IMAGE STYLE\r\n    Shows the full image without cropping.\r\n  *\/\r\n  .before-after-slider.is-fullscreen img {\r\n    object-fit: contain;\r\n    background: #000000;\r\n  }\r\n\r\n  \/*\r\n    Hide fullscreen button when already fullscreen.\r\n  *\/\r\n  .before-after-slider.is-fullscreen .fullscreen-btn {\r\n    display: none;\r\n  }\r\n\r\n  \/*\r\n    Show close button when fullscreen.\r\n  *\/\r\n  .before-after-slider.is-fullscreen .close-fullscreen-btn {\r\n    display: flex;\r\n  }\r\n\r\n  \/*\r\n    Prevent page scrolling while fullscreen is open.\r\n  *\/\r\n  body.ba-no-scroll {\r\n    overflow: hidden;\r\n  }\r\n\r\n  \/*\r\n    MOBILE SETTINGS\r\n  *\/\r\n \/* Update your MOBILE SETTINGS block *\/\r\n@media (max-width: 768px) {\r\n  .before-after-slider {\r\n    aspect-ratio: 4 \/ 5;\r\n    border-radius: 14px;\r\n    margin-bottom: 24px; \/* <--- ADD THIS LINE *\/\r\n  }\r\n\r\n  \/* ... rest of your mobile settings ... *\/\r\n}\r\n\r\n    .before-after-slider .slider-handle {\r\n      width: 48px;\r\n      height: 48px;\r\n      font-size: 20px;\r\n    }\r\n\r\n    .before-after-slider .ba-label {\r\n      top: 14px;\r\n      font-size: 11px;\r\n      padding: 6px 10px;\r\n    }\r\n\r\n    .before-after-slider .fullscreen-btn {\r\n      right: 14px;\r\n      bottom: 14px;\r\n      width: 40px;\r\n      height: 40px;\r\n      font-size: 18px;\r\n    }\r\n\r\n    .before-after-slider .close-fullscreen-btn {\r\n      right: 16px;\r\n      top: 16px;\r\n      width: 44px;\r\n      height: 44px;\r\n      font-size: 26px;\r\n    }\r\n  }\r\n<\/style>\r\n\r\n\r\n<div class=\"before-after-slider\">\r\n\r\n  <!-- BEFORE IMAGE -->\r\n  <img decoding=\"async\" \r\n    src=\"https:\/\/lemcomrenovations.urbanlifestylegroup.co.za\/wp-content\/uploads\/2026\/06\/PAINT-BEFORE-1.png\" \r\n    \r\n    alt=\"Before renovation\" \r\n    class=\"before-img\"\r\n  >\r\n\r\n  <!-- AFTER IMAGE -->\r\n  <img decoding=\"async\" \r\n    src=\"https:\/\/lemcomrenovations.urbanlifestylegroup.co.za\/wp-content\/uploads\/2026\/06\/PAINT-AFTER-1.png\"\r\n    \r\n    alt=\"After renovation\"\r\n    class=\"after-img\"\r\n  >\r\n\r\n  <!-- BEFORE \/ AFTER LABELS -->\r\n  <span class=\"ba-label before-label\">Before<\/span>\r\n  <span class=\"ba-label after-label\">After<\/span>\r\n\r\n  <!-- MIDDLE SLIDER LINE -->\r\n  <div class=\"slider-line\"><\/div>\r\n\r\n  <!-- CIRCLE ARROW HANDLE -->\r\n  <div class=\"slider-handle\"><\/div>\r\n\r\n  <!-- FULLSCREEN BUTTON -->\r\n  <button class=\"fullscreen-btn\" type=\"button\" aria-label=\"Open fullscreen\">\r\n    \u26f6\r\n  <\/button>\r\n\r\n  <!-- CLOSE FULLSCREEN BUTTON -->\r\n  <button class=\"close-fullscreen-btn\" type=\"button\" aria-label=\"Close fullscreen\">\r\n    \u00d7\r\n  <\/button>\r\n\r\n  <!-- INVISIBLE DRAGGABLE SLIDER INPUT -->\r\n  <input \r\n    type=\"range\" \r\n    min=\"0\" \r\n    max=\"100\" \r\n    value=\"50\" \r\n    class=\"slider-range\" \r\n    aria-label=\"Before and after renovation slider\"\r\n  >\r\n\r\n<\/div>\r\n\r\n\r\n<script>\r\n  \/*\r\n    This script handles:\r\n    1. Moving the before\/after slider\r\n    2. Hiding the correct label when fully crossed over\r\n    3. Opening fullscreen\r\n    4. Closing fullscreen\r\n    5. Supporting multiple sliders on the same page\r\n  *\/\r\n\r\n  document.querySelectorAll('.before-after-slider').forEach(function(slider) {\r\n\r\n    \/*\r\n      Prevents the same slider from being initialized twice.\r\n      This helps when Elementor reloads widgets in the editor.\r\n    *\/\r\n    if (slider.classList.contains('ba-slider-ready')) return;\r\n    slider.classList.add('ba-slider-ready');\r\n\r\n    const range = slider.querySelector('.slider-range');\r\n    const fullscreenBtn = slider.querySelector('.fullscreen-btn');\r\n    const closeBtn = slider.querySelector('.close-fullscreen-btn');\r\n\r\n    \/*\r\n      This number controls how close to the edge the slider must be\r\n      before one label disappears.\r\n\r\n      0 = label disappears only at the absolute edge.\r\n      2 = label disappears when slider is very close to the edge.\r\n    *\/\r\n    const edgeBuffer = 1;\r\n\r\n    \/*\r\n      Updates slider position and label visibility.\r\n    *\/\r\n    function updateSlider() {\r\n      const value = Number(range.value);\r\n\r\n      \/*\r\n        Moves the slider line and controls how much of the after image shows.\r\n      *\/\r\n      slider.style.setProperty('--position', value + '%');\r\n\r\n      \/*\r\n        Remove both label states first.\r\n        This means both labels show during normal split view.\r\n      *\/\r\n      slider.classList.remove('is-fully-before');\r\n      slider.classList.remove('is-fully-after');\r\n\r\n      \/*\r\n        value <= edgeBuffer means the AFTER image is fully visible.\r\n        So the BEFORE label hides.\r\n      *\/\r\n      if (value <= edgeBuffer) {\r\n        slider.classList.add('is-fully-after');\r\n      }\r\n\r\n      \/*\r\n        value >= 100 - edgeBuffer means the BEFORE image is fully visible.\r\n        So the AFTER label hides.\r\n      *\/\r\n      if (value >= 100 - edgeBuffer) {\r\n        slider.classList.add('is-fully-before');\r\n      }\r\n    }\r\n\r\n    \/*\r\n      Runs the update while dragging.\r\n    *\/\r\n    range.addEventListener('input', updateSlider);\r\n\r\n    \/*\r\n      Sets the correct starting position when the page loads.\r\n    *\/\r\n    updateSlider();\r\n\r\n    \/*\r\n      Opens only this specific slider in fullscreen.\r\n    *\/\r\n    fullscreenBtn.addEventListener('click', function(event) {\r\n      event.stopPropagation();\r\n\r\n      slider.classList.add('is-fullscreen');\r\n      document.body.classList.add('ba-no-scroll');\r\n    });\r\n\r\n    \/*\r\n      Closes this specific slider from fullscreen.\r\n    *\/\r\n    closeBtn.addEventListener('click', function(event) {\r\n      event.stopPropagation();\r\n\r\n      slider.classList.remove('is-fullscreen');\r\n\r\n      \/*\r\n        Only allow page scrolling again if no other slider is fullscreen.\r\n      *\/\r\n      if (!document.querySelector('.before-after-slider.is-fullscreen')) {\r\n        document.body.classList.remove('ba-no-scroll');\r\n      }\r\n    });\r\n  });\r\n\r\n  \/*\r\n    Press ESC to close any fullscreen slider.\r\n  *\/\r\n  document.addEventListener('keydown', function(event) {\r\n    if (event.key === 'Escape') {\r\n      document.querySelectorAll('.before-after-slider.is-fullscreen').forEach(function(slider) {\r\n        slider.classList.remove('is-fullscreen');\r\n      });\r\n\r\n      document.body.classList.remove('ba-no-scroll');\r\n    }\r\n  });\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-f649488 e-flex e-con-boxed e-con e-parent\" data-id=\"f649488\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-61aa753 elementor-widget elementor-widget-heading\" data-id=\"61aa753\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Why Choose Us<\/h2>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-744c532 e-flex e-con-boxed e-con e-parent\" data-id=\"744c532\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-f52d561 e-con-full e-flex e-con e-child\" data-id=\"f52d561\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-952cbfe elementor-widget elementor-widget-heading\" data-id=\"952cbfe\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h4 class=\"elementor-heading-title elementor-size-default\">Warranty<\/h4>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-aa4ad05 elementor-widget elementor-widget-text-editor\" data-id=\"aa4ad05\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>We stand behind the quality of our workmanship. Every project is completed with care, and commitment to long lasting results.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-77ed0d9 elementor-widget elementor-widget-heading\" data-id=\"77ed0d9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h4 class=\"elementor-heading-title elementor-size-default\">Responsibility<\/h4>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7a5ab19 elementor-widget elementor-widget-text-editor\" data-id=\"7a5ab19\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>We treat every home as if it were our own. From preparation to clean up, we work neatly, respectfully abd professionally.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-ed74809 e-con-full e-flex e-con e-child\" data-id=\"ed74809\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-a69b2d2 elementor-widget elementor-widget-image\" data-id=\"a69b2d2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"768\" height=\"1024\" src=\"https:\/\/lemcomrenovations.urbanlifestylegroup.co.za\/wp-content\/uploads\/2026\/06\/FB_IMG_1782327411503.jpg.jpeg\" class=\"attachment-large size-large wp-image-1509\" alt=\"\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-edf8149 e-con-full e-flex e-con e-child\" data-id=\"edf8149\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-4e3dfdd elementor-widget elementor-widget-heading\" data-id=\"4e3dfdd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h4 class=\"elementor-heading-title elementor-size-default\">Quality<\/h4>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ad38ee7 elementor-widget elementor-widget-text-editor\" data-id=\"ad38ee7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Our team focuses on strong finishes, reliable materials and tidy craftmanship that improves both the look and value of your space.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-dc38d97 elementor-widget elementor-widget-heading\" data-id=\"dc38d97\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h4 class=\"elementor-heading-title elementor-size-default\">Safety<\/h4>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2cceaa3 elementor-widget elementor-widget-text-editor\" data-id=\"2cceaa3\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>We follow safe working practices on every job, keeping your home, family and property protected throughout the renovation proccess.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-019f31a e-flex e-con-boxed e-con e-parent\" data-id=\"019f31a\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-83f6627 e-con-full e-flex e-con e-child\" data-id=\"83f6627\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5622e34 elementor-widget elementor-widget-heading\" data-id=\"5622e34\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">Perfection In Every Step We Take<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8bfa1be elementor-widget elementor-widget-text-editor\" data-id=\"8bfa1be\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>At Lemcom Renovations, we focus on reliable workmanship, neat finishes and practical renovation solutions.<\/p><p>From small repairs to full home and commercial upgrades, we help clients improve their spaces with care and attention to detail.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-622a0a7 e-con-full e-flex e-con e-child\" data-id=\"622a0a7\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-7c6f54a e-flex e-con-boxed e-con e-parent\" data-id=\"7c6f54a\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-10f2956 e-con-full e-flex e-con e-child\" data-id=\"10f2956\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1d0fa83 elementor-widget elementor-widget-counter\" data-id=\"1d0fa83\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"counter.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-counter\">\n\t\t\t<div class=\"elementor-counter-title\">Years of Experience<\/div>\t\t\t<div class=\"elementor-counter-number-wrapper\">\n\t\t\t\t<span class=\"elementor-counter-number-prefix\"><\/span>\n\t\t\t\t<span class=\"elementor-counter-number\" data-duration=\"2000\" data-to-value=\"25\" data-from-value=\"0\" data-delimiter=\",\">0<\/span>\n\t\t\t\t<span class=\"elementor-counter-number-suffix\">+<\/span>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-03b6f74 e-con-full e-flex e-con e-child\" data-id=\"03b6f74\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-583a935 elementor-widget elementor-widget-counter\" data-id=\"583a935\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"counter.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-counter\">\n\t\t\t<div class=\"elementor-counter-title\">Awards Winning<\/div>\t\t\t<div class=\"elementor-counter-number-wrapper\">\n\t\t\t\t<span class=\"elementor-counter-number-prefix\"><\/span>\n\t\t\t\t<span class=\"elementor-counter-number\" data-duration=\"2000\" data-to-value=\"100\" data-from-value=\"0\" data-delimiter=\",\">0<\/span>\n\t\t\t\t<span class=\"elementor-counter-number-suffix\"><\/span>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-6786398 e-con-full e-flex e-con e-child\" data-id=\"6786398\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-6713e33 elementor-widget elementor-widget-counter\" data-id=\"6713e33\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"counter.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-counter\">\n\t\t\t<div class=\"elementor-counter-title\">Happy Customers<\/div>\t\t\t<div class=\"elementor-counter-number-wrapper\">\n\t\t\t\t<span class=\"elementor-counter-number-prefix\"><\/span>\n\t\t\t\t<span class=\"elementor-counter-number\" data-duration=\"2000\" data-to-value=\"450\" data-from-value=\"0\" data-delimiter=\",\">0<\/span>\n\t\t\t\t<span class=\"elementor-counter-number-suffix\"><\/span>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-3c4236f e-con-full e-flex e-con e-child\" data-id=\"3c4236f\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-431b280 elementor-widget elementor-widget-counter\" data-id=\"431b280\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"counter.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-counter\">\n\t\t\t<div class=\"elementor-counter-title\">Projects Completed<\/div>\t\t\t<div class=\"elementor-counter-number-wrapper\">\n\t\t\t\t<span class=\"elementor-counter-number-prefix\"><\/span>\n\t\t\t\t<span class=\"elementor-counter-number\" data-duration=\"2000\" data-to-value=\"240\" data-from-value=\"0\" data-delimiter=\",\">0<\/span>\n\t\t\t\t<span class=\"elementor-counter-number-suffix\"><\/span>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-a66c457 e-flex e-con-boxed e-con e-parent\" data-id=\"a66c457\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-0f3dc08 e-con-full e-flex e-con e-child\" data-id=\"0f3dc08\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5eb34c2 elementor-widget elementor-widget-heading\" data-id=\"5eb34c2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">Contact Us<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c6b6146 elementor-widget elementor-widget-text-editor\" data-id=\"c6b6146\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>We are ready to help you with your home renovation project.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8c3e104 elementor-widget elementor-widget-wpforms\" data-id=\"8c3e104\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"wpforms.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"wpforms-container wpforms-render-modern\" id=\"wpforms-400\"><form id=\"wpforms-form-400\" class=\"wpforms-validate wpforms-form wpforms-ajax-form\" data-formid=\"400\" method=\"post\" enctype=\"multipart\/form-data\" action=\"\/index.php\/wp-json\/wp\/v2\/pages\/649\" data-token=\"77824e3a733a56a7bf0c43b0b69ecd29\" data-token-time=\"1791457932\"><noscript class=\"wpforms-error-noscript\">Please enable JavaScript in your browser to complete this form.<\/noscript><div id=\"wpforms-error-noscript\" style=\"display: none;\">Please enable JavaScript in your browser to complete this form.<\/div><div class=\"wpforms-field-container\"><div id=\"wpforms-400-field_0-container\" class=\"wpforms-field wpforms-field-name\" data-field-id=\"0\"><fieldset><legend class=\"wpforms-field-label\">Name <span class=\"wpforms-required-label\" aria-hidden=\"true\">*<\/span><\/legend><div class=\"wpforms-field-row wpforms-field-large\"><div class=\"wpforms-field-row-block wpforms-first wpforms-one-half\"><input type=\"text\" id=\"wpforms-400-field_0\" class=\"wpforms-field-name-first wpforms-field-required\" name=\"wpforms[fields][0][first]\" aria-errormessage=\"wpforms-400-field_0-error\" required><label for=\"wpforms-400-field_0\" class=\"wpforms-field-sublabel after\">First<\/label><\/div><div class=\"wpforms-field-row-block wpforms-one-half\"><input type=\"text\" id=\"wpforms-400-field_0-last\" class=\"wpforms-field-name-last wpforms-field-required\" name=\"wpforms[fields][0][last]\" aria-errormessage=\"wpforms-400-field_0-last-error\" required><label for=\"wpforms-400-field_0-last\" class=\"wpforms-field-sublabel after\">Last<\/label><\/div><\/div><\/fieldset><\/div><div id=\"wpforms-400-field_1-container\" class=\"wpforms-field wpforms-field-email\" data-field-id=\"1\"><label class=\"wpforms-field-label\" for=\"wpforms-400-field_1\">Email <span class=\"wpforms-required-label\" aria-hidden=\"true\">*<\/span><\/label><input type=\"email\" id=\"wpforms-400-field_1\" class=\"wpforms-field-large wpforms-field-required\" name=\"wpforms[fields][1]\" spellcheck=\"false\" aria-errormessage=\"wpforms-400-field_1-error\" required><\/div><div id=\"wpforms-400-field_2-container\" class=\"wpforms-field wpforms-field-textarea\" data-field-id=\"2\"><label class=\"wpforms-field-label\" for=\"wpforms-400-field_2\">Message<\/label><textarea id=\"wpforms-400-field_2\" class=\"wpforms-field-large\" name=\"wpforms[fields][2]\" aria-errormessage=\"wpforms-400-field_2-error\" ><\/textarea><\/div><\/div><!-- .wpforms-field-container --><div class=\"wpforms-submit-container\" ><input type=\"hidden\" name=\"wpforms[id]\" value=\"400\"><input type=\"hidden\" name=\"page_title\" value=\"\"><input type=\"hidden\" name=\"page_url\" value=\"https:\/\/lemcomrenovations.urbanlifestylegroup.co.za\/index.php\/wp-json\/wp\/v2\/pages\/649\"><input type=\"hidden\" name=\"url_referer\" value=\"\"><button type=\"submit\" name=\"wpforms[submit]\" id=\"wpforms-submit-400\" class=\"wpforms-submit\" data-alt-text=\"Sending...\" data-submit-text=\"Send Message\" aria-live=\"assertive\" value=\"wpforms-submit\">Send Message<\/button><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/lemcomrenovations.urbanlifestylegroup.co.za\/wp-content\/plugins\/wpforms-lite\/assets\/images\/submit-spin.svg\" class=\"wpforms-submit-spinner\" style=\"display: none;\" width=\"26\" height=\"26\" alt=\"Loading\"><\/div><\/form><\/div>  <!-- .wpforms-container -->\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-d134c16 e-flex e-con-boxed e-con e-parent\" data-id=\"d134c16\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-35f2680 e-con-full e-flex e-con e-child\" data-id=\"35f2680\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-4dbed30 elementor-widget elementor-widget-text-editor\" data-id=\"4dbed30\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Are you looking to make your renovation dreams a reality?<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ddc73c4 elementor-mobile-align-center elementor-tablet-align-center elementor-widget elementor-widget-button\" data-id=\"ddc73c4\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"#\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Learn More<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-2c9a663 e-con-full e-flex e-con e-child\" data-id=\"2c9a663\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-75b6d94 elementor-widget elementor-widget-image\" data-id=\"75b6d94\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"617\" src=\"https:\/\/lemcomrenovations.urbanlifestylegroup.co.za\/wp-content\/uploads\/2026\/06\/pexels-lorena-martinez-1218850-2351865.jpg\" class=\"attachment-large size-large wp-image-1518\" alt=\"\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>LEMCOM RENOVATIONS Quality renovations built with care, detail, and experience. Get a Quote Our Services A wide range of renovation and maintenance services tailored to your space, budget and vision. Bathroom Renovations Painting Kitchen Renovations Plumbing Support Electrical Support Commercial Renovations Roofing Tiling General Maintenance Outdoor Renovations Home Renovations Heating &#038; Aircon Testimonials Colleen Brand [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-649","page","type-page","status-publish","hentry"],"blocksy_meta":{"page_title_panel":"","has_hero_section":"disabled","619b5fdf8f425c19c75ee7ee435a46bc":"","hero_section":"type-1","hero_elements":[{"id":"custom_title","enabled":true,"heading_tag":"h1","title":"Home"},{"id":"custom_description","enabled":true,"description_visibility":{"desktop":true,"tablet":true,"mobile":false}},{"id":"custom_meta","enabled":false,"meta_elements":[{"id":"author","enabled":true,"label":"By","has_author_avatar":"yes","avatar_size":25},{"id":"post_date","enabled":true,"label":"On","date_format_source":"default","date_format":"M j, Y"},{"id":"updated_date","enabled":false,"label":"On","date_format_source":"default","date_format":"M j, Y"},{"id":"categories","enabled":false,"label":"In","style":"simple"},{"id":"comments","enabled":true}],"page_meta_elements":{"joined":true,"articles_count":true,"comments":true}},{"id":"breadcrumbs","enabled":false}],"ecb4b38300f9cdf24f664e660b431160":"","hero_alignment1":"CT_CSS_SKIP_RULE","hero_margin":40,"hero_alignment2":"center","hero_vertical_alignment":"center","a2d929d2769997982cb3124a9526a308":"","hero_structure":"narrow","7603c156aed953189bf6c6ed24c3c56b":"","page_title_bg_type":"featured_image","custom_hero_background":{"attachment_id":null},"page_title_image_size":"full","parallax":{"desktop":false,"tablet":false,"mobile":false},"21fca22b22c136abdc57a3b95ac2961f":"","hero_height":"250px","pageTitleFont":{"family":"Default","variation":"Default","size":"30px","line-height":"CT_CSS_SKIP_RULE","letter-spacing":"CT_CSS_SKIP_RULE","text-transform":"CT_CSS_SKIP_RULE","text-decoration":"CT_CSS_SKIP_RULE"},"pageTitleFontColor":{"default":{"color":"CT_CSS_SKIP_RULEDEFAULT"}},"pageMetaFont":{"family":"Default","variation":"n6","size":"12px","line-height":"1.3","letter-spacing":"CT_CSS_SKIP_RULE","text-transform":"uppercase","text-decoration":"CT_CSS_SKIP_RULE"},"pageMetaFontColor":{"default":{"color":"CT_CSS_SKIP_RULEDEFAULT"},"hover":{"color":"CT_CSS_SKIP_RULEDEFAULT"}},"page_meta_button_type_font_colors":{"default":{"color":"CT_CSS_SKIP_RULEDEFAULT"},"hover":{"color":"CT_CSS_SKIP_RULEDEFAULT"}},"page_meta_button_type_background_colors":{"default":{"color":"CT_CSS_SKIP_RULEDEFAULT"},"hover":{"color":"CT_CSS_SKIP_RULEDEFAULT"}},"pageExcerptFont":{"family":"Default","variation":"Default","size":"CT_CSS_SKIP_RULE","line-height":"CT_CSS_SKIP_RULE","letter-spacing":"CT_CSS_SKIP_RULE","text-transform":"CT_CSS_SKIP_RULE","text-decoration":"CT_CSS_SKIP_RULE"},"pageExcerptColor":{"default":{"color":"CT_CSS_SKIP_RULEDEFAULT"}},"breadcrumbsFont":{"family":"Default","variation":"Default","size":"CT_CSS_SKIP_RULE","line-height":"CT_CSS_SKIP_RULE","letter-spacing":"CT_CSS_SKIP_RULE","text-transform":"CT_CSS_SKIP_RULE","text-decoration":"CT_CSS_SKIP_RULE"},"breadcrumbsFontColor":{"default":{"color":"CT_CSS_SKIP_RULEDEFAULT"},"initial":{"color":"CT_CSS_SKIP_RULEDEFAULT"},"hover":{"color":"CT_CSS_SKIP_RULEDEFAULT"}},"pageTitleOverlay":{"background_type":"color","background_pattern":"type-1","background_image":{"attachment_id":null,"x":0,"y":0},"gradient":"linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%)","background_repeat":"repeat","background_size":"auto","background_attachment":"scroll","patternColor":{"default":{"color":"#e5e7ea"}},"overlayColor":{"default":{"color":"CT_CSS_SKIP_RULE"}},"backgroundColor":{"default":{"color":"CT_CSS_SKIP_RULE"}}},"pageTitleBackground":{"background_type":"color","background_pattern":"type-1","background_image":{"attachment_id":null,"x":0,"y":0},"gradient":"linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%)","background_repeat":"repeat","background_size":"auto","background_attachment":"scroll","patternColor":{"default":{"color":"#e5e7ea"}},"overlayColor":{"default":{"color":"CT_CSS_SKIP_RULE"}},"backgroundColor":{"default":{"color":"var(--theme-palette-color-6)"}}},"pageTitlePadding":{"top":"50px","bottom":"50px","left":"auto","right":"auto","linked":true},"1c6a8ffb4ac3d8da7bc4be76c67ae2f6":"","page_structure_type":"default","0c2eafba48c72713eeb6618b1f17b2de":"","content_style_source":"inherit","content_style":"wide","vertical_spacing_source":"custom","content_area_spacing":"none","background":{"background_type":"color","background_pattern":"type-1","background_image":{"attachment_id":null,"x":0,"y":0},"gradient":"linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%)","background_repeat":"repeat","background_size":"auto","background_attachment":"scroll","patternColor":{"default":{"color":"#e5e7ea"}},"overlayColor":{"default":{"color":"CT_CSS_SKIP_RULE"}},"backgroundColor":{"default":{"color":"CT_CSS_SKIP_RULE"}}},"content_background":{"background_type":"color","background_pattern":"type-1","background_image":{"attachment_id":null,"x":0,"y":0},"gradient":"linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%)","background_repeat":"repeat","background_size":"auto","background_attachment":"scroll","patternColor":{"default":{"color":"#e5e7ea"}},"overlayColor":{"default":{"color":"CT_CSS_SKIP_RULE"}},"backgroundColor":{"default":{"color":"var(--theme-palette-color-8)"}}},"content_boxed_shadow":{"inherit":false,"blur":18,"spread":-6,"v_offset":12,"h_offset":0,"inset":false,"enable":true,"color":{"color":"rgba(34, 56, 101, 0.04)"}},"content_boxed_border":{"width":1,"style":"none","color":{"color":"rgba(44,62,80,0.2)"}},"content_boxed_radius":{"top":"3px","bottom":"3px","left":"3px","right":"3px","linked":true},"boxed_content_spacing":{"desktop":{"top":"40px","bottom":"40px","left":"40px","right":"40px","linked":true},"tablet":{"top":"35px","bottom":"35px","left":"35px","right":"35px","linked":true},"mobile":{"top":"20px","bottom":"20px","left":"20px","right":"20px","linked":true}},"ed934e385f857abcff3c7e4d7a6fc3ec":"","disable_featured_image":"no","disable_share_box":"no","disable_header":"no","disable_footer":"no","styles_descriptor":{"styles":{"desktop":"","tablet":"","mobile":""},"google_fonts":[],"version":6}},"_links":{"self":[{"href":"https:\/\/lemcomrenovations.urbanlifestylegroup.co.za\/index.php\/wp-json\/wp\/v2\/pages\/649","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lemcomrenovations.urbanlifestylegroup.co.za\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/lemcomrenovations.urbanlifestylegroup.co.za\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/lemcomrenovations.urbanlifestylegroup.co.za\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/lemcomrenovations.urbanlifestylegroup.co.za\/index.php\/wp-json\/wp\/v2\/comments?post=649"}],"version-history":[{"count":156,"href":"https:\/\/lemcomrenovations.urbanlifestylegroup.co.za\/index.php\/wp-json\/wp\/v2\/pages\/649\/revisions"}],"predecessor-version":[{"id":1645,"href":"https:\/\/lemcomrenovations.urbanlifestylegroup.co.za\/index.php\/wp-json\/wp\/v2\/pages\/649\/revisions\/1645"}],"wp:attachment":[{"href":"https:\/\/lemcomrenovations.urbanlifestylegroup.co.za\/index.php\/wp-json\/wp\/v2\/media?parent=649"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}