{"id":475,"date":"2026-07-29T12:59:41","date_gmt":"2026-07-29T10:59:41","guid":{"rendered":"https:\/\/consoldemo.co.za\/rebelle\/?st-import=a9969e1cd98dfb0b331579c7cd809abb"},"modified":"2026-09-08T14:01:53","modified_gmt":"2026-09-08T12:01:53","slug":"what-we-do","status":"publish","type":"page","link":"https:\/\/consoldemo.co.za\/rebelle\/what-we-do\/","title":{"rendered":"What We Do"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"475\" class=\"elementor elementor-475\">\n\t\t\t\t<div class=\"elementor-element elementor-element-3d81762a e-flex e-con-boxed e-con e-parent\" data-id=\"3d81762a\" 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-e67a1de e-con-full e-flex e-con e-child\" data-id=\"e67a1de\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f791ac0 elementor-widget__width-inherit elementor-widget elementor-widget-html\" data-id=\"f791ac0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\n\/* =====================================================\n   REBELLE - THINK IT \/ DESIGN IT \/ SOURCE IT \/\n   MAKE IT HAPPEN\n===================================================== *\/\n\n.rebelle-make-shell,\n.rebelle-make-shell * {\n    box-sizing: border-box;\n}\n\n.rebelle-make-shell {\n    width: 100%;\n    max-width: 100%;\n\n    \/*\n       Extra vertical breathing room prevents\n       Arboria from clipping at the top and bottom\n    *\/\n    padding-top: 10px;\n    padding-bottom: 14px;\n\n    overflow: hidden;\n}\n\n\n\/* =====================================================\n   MAIN TEXT\n===================================================== *\/\n\n.rebelle-make-heading {\n    width: 100%;\n\n    margin: 0;\n    padding: 0;\n\n    color: #b02960;\n\n    font-family: \"Arboria Bold\", \"Arboria\", sans-serif !important;\n\n    \/* DESKTOP TYPOGRAPHY *\/\n    font-size: 90px;\n    line-height: 70px;\n\n    font-weight: 700;\n    letter-spacing: -0.035em;\n}\n\n\n\/* =====================================================\n   EACH LINE\n===================================================== *\/\n\n.rebelle-make-line {\n    display: block;\n\n    width: 100%;\n\n    margin: 0;\n    padding: 0;\n\n    white-space: nowrap;\n\n    color: #b02960;\n\n    font-family: \"Arboria Bold\", \"Arboria\", sans-serif !important;\n\n    font-size: 90px;\n    line-height: 70px;\n\n    font-weight: 700;\n    letter-spacing: -0.035em;\n}\n\n\n\/* =====================================================\n   CONTROLLED SPACING BETWEEN LINES\n===================================================== *\/\n\n.rebelle-make-line + .rebelle-make-line {\n    margin-top: 5px;\n}\n\n\n\/* =====================================================\n   CREAM \"MAKE IT HAPPEN\" BLOCK\n===================================================== *\/\n\n.rebelle-make-highlight {\n    display: inline-block;\n\n    background-color: #eae1d4;\n    color: #b02960;\n\n    margin: 0;\n\n    \/*\n       Extra vertical padding prevents letters such\n       as p, g and punctuation from clipping\n    *\/\n    padding: 10px 8px 12px;\n\n    font-family: \"Arboria Bold\", \"Arboria\", sans-serif !important;\n\n    font-size: 90px;\n    line-height: 70px;\n\n    font-weight: 700;\n    letter-spacing: -0.035em;\n\n    will-change: transform, opacity;\n}\n\n\n\/* =====================================================\n   STARTING POSITION\n   Cream block starts to the left\n===================================================== *\/\n\n.rebelle-make-shell.animate-ready .rebelle-make-highlight {\n    opacity: 0;\n    transform: translateX(-220px);\n}\n\n\n\/* =====================================================\n   FLY-IN ANIMATION\n===================================================== *\/\n\n.rebelle-make-shell.animate-ready.is-visible .rebelle-make-highlight {\n    animation:\n        rebelleMakeFlyIn\n        1.5s\n        cubic-bezier(0.22, 1, 0.36, 1)\n        forwards;\n}\n\n\n@keyframes rebelleMakeFlyIn {\n\n    0% {\n        opacity: 0;\n        transform: translateX(-220px);\n    }\n\n    100% {\n        opacity: 1;\n        transform: translateX(0);\n    }\n\n}\n\n\n\/* =====================================================\n   TABLET\n===================================================== *\/\n\n@media screen and (max-width: 1024px) {\n\n    .rebelle-make-shell {\n        padding-top: 8px;\n        padding-bottom: 12px;\n    }\n\n    .rebelle-make-heading,\n    .rebelle-make-line {\n        font-size: 54px;\n        line-height: 46px;\n    }\n\n    .rebelle-make-line + .rebelle-make-line {\n        margin-top: 5px;\n    }\n\n    .rebelle-make-highlight {\n        font-size: 54px;\n        line-height: 46px;\n\n        padding: 7px 7px 9px;\n    }\n\n}\n\n\n\/* =====================================================\n   MOBILE\n===================================================== *\/\n\n@media screen and (max-width: 767px) {\n\n    .rebelle-make-shell {\n        padding-top: 6px;\n        padding-bottom: 10px;\n    }\n\n    .rebelle-make-heading,\n    .rebelle-make-line {\n        font-size: 34px;\n        line-height: 31px;\n    }\n\n    .rebelle-make-line {\n        white-space: normal;\n    }\n\n    .rebelle-make-line + .rebelle-make-line {\n        margin-top: 4px;\n    }\n\n    .rebelle-make-highlight {\n        font-size: 34px;\n        line-height: 31px;\n\n        padding: 5px 5px 7px;\n    }\n\n}\n\n\n\/* =====================================================\n   REDUCED MOTION ACCESSIBILITY\n===================================================== *\/\n\n@media (prefers-reduced-motion: reduce) {\n\n    .rebelle-make-shell.animate-ready .rebelle-make-highlight {\n        opacity: 1;\n        transform: none;\n        animation: none;\n    }\n\n}\n<\/style>\n\n\n<div class=\"rebelle-make-shell\">\n\n    <div class=\"rebelle-make-heading\">\n\n\n        <!-- LINE 1 -->\n\n        <div class=\"rebelle-make-line\">\n            We Think It.\n        <\/div>\n\n\n        <!-- LINE 2 -->\n\n        <div class=\"rebelle-make-line\">\n            Design It.\n        <\/div>\n\n\n        <!-- LINE 3 -->\n\n        <div class=\"rebelle-make-line\">\n            Source It.\n        <\/div>\n\n\n        <!-- LINE 4 -->\n\n        <div class=\"rebelle-make-line\">\n\n            <span class=\"rebelle-make-highlight\">\n                Make It Happen.\n            <\/span>\n\n        <\/div>\n\n\n    <\/div>\n\n<\/div>\n\n\n<script>\n(function () {\n\n    const sections =\n        document.querySelectorAll('.rebelle-make-shell');\n\n\n    if (!sections.length) {\n        return;\n    }\n\n\n    const prefersReducedMotion =\n        window.matchMedia(\n            '(prefers-reduced-motion: reduce)'\n        ).matches;\n\n\n    sections.forEach(function(section) {\n\n\n        \/* ENABLE ANIMATION STYLING *\/\n\n        section.classList.add('animate-ready');\n\n\n        \/* NO MOVEMENT FOR REDUCED-MOTION USERS *\/\n\n        if (prefersReducedMotion) {\n\n            section.classList.add('is-visible');\n\n            return;\n\n        }\n\n\n        \/* TRIGGER WHEN SECTION ENTERS VIEW *\/\n\n        const observer = new IntersectionObserver(\n\n            function(entries, observerInstance) {\n\n                entries.forEach(function(entry) {\n\n                    if (entry.isIntersecting) {\n\n                        entry.target.classList.add(\n                            'is-visible'\n                        );\n\n                        \/* ANIMATE ONCE *\/\n\n                        observerInstance.unobserve(\n                            entry.target\n                        );\n\n                    }\n\n                });\n\n            },\n\n            {\n                threshold: 0.3\n            }\n\n        );\n\n\n        observer.observe(section);\n\n    });\n\n})();\n<\/script>\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-51cbadce e-con-full e-flex e-con e-parent\" data-id=\"51cbadce\" 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-7a3bfdf4 elementor-widget elementor-widget-html\" data-id=\"7a3bfdf4\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\n\/* =====================================================\n   REBELLE CONTINUOUS MARQUEE\n===================================================== *\/\n\n.rebelle-marquee {\n    width: 100%;\n    overflow: hidden;\n\n    background-color: #b02960;\n    color: #eae1d4;\n\n    padding: 12px 0;\n}\n\n\n\/* =====================================================\n   MOVING TRACK\n===================================================== *\/\n\n.rebelle-marquee-track {\n    display: flex;\n    width: max-content;\n\n    will-change: transform;\n\n    animation-name: rebelleContinuousScroll;\n    animation-timing-function: linear;\n    animation-iteration-count: infinite;\n\n    \/*\n     * These are calculated automatically\n     * by the JavaScript below.\n     *\/\n    animation-duration: var(--rebelle-duration, 22s);\n}\n\n\n\/* =====================================================\n   DUPLICATED GROUPS\n===================================================== *\/\n\n.rebelle-marquee-group {\n    display: flex;\n    align-items: center;\n\n    flex-shrink: 0;\n}\n\n\n\/* =====================================================\n   INDIVIDUAL TEXT\n===================================================== *\/\n\n.rebelle-marquee-text {\n    display: block;\n    flex-shrink: 0;\n\n    padding-right: 15px;\n\n    white-space: nowrap;\n\n    font-family: inherit;\n    font-size: clamp(20px, 1.2vw, 38px);\n    font-weight: 600;\n    line-height: 1.2;\n    letter-spacing: -0.02em;\n\n    color: #eae1d4;\n}\n\n\n\/* =====================================================\n   SEAMLESS MOVEMENT\n===================================================== *\/\n\n@keyframes rebelleContinuousScroll {\n\n    from {\n        transform: translateX(0);\n    }\n\n    to {\n        transform: translateX(\n            var(--rebelle-scroll-distance, -1000px)\n        );\n    }\n\n}\n\n\n\/* =====================================================\n   ACCESSIBILITY\n===================================================== *\/\n\n@media (prefers-reduced-motion: reduce) {\n\n    .rebelle-marquee-track {\n        animation-play-state: paused;\n    }\n\n}\n\n\n\/* =====================================================\n   MOBILE\n===================================================== *\/\n\n@media screen and (max-width: 767px) {\n\n    .rebelle-marquee {\n        padding: 10px 0;\n    }\n\n    .rebelle-marquee-text {\n        font-size: 27px;\n        padding-right: 25px;\n    }\n\n}\n<\/style>\n\n\n<div\n    class=\"rebelle-marquee\"\n    aria-label=\"Ideas first. Details always.\"\n>\n\n    <div class=\"rebelle-marquee-track\">\n\n        <!-- ORIGINAL GROUP -->\n        <div class=\"rebelle-marquee-group rebelle-marquee-original\">\n\n            <span class=\"rebelle-marquee-text\">\n                Ideas first. Details always.\n            <\/span>\n\n        <\/div>\n\n\n        <!-- DUPLICATE GROUP -->\n        <div\n            class=\"rebelle-marquee-group rebelle-marquee-copy\"\n            aria-hidden=\"true\"\n        ><\/div>\n\n    <\/div>\n\n<\/div>\n\n\n<script>\n(function () {\n\n    function buildRebelleMarquee(marquee) {\n\n        const track =\n            marquee.querySelector('.rebelle-marquee-track');\n\n        const original =\n            marquee.querySelector('.rebelle-marquee-original');\n\n        const copy =\n            marquee.querySelector('.rebelle-marquee-copy');\n\n\n        if (!track || !original || !copy) {\n            return;\n        }\n\n\n        \/* -----------------------------------------\n           RESET ORIGINAL GROUP\n        ----------------------------------------- *\/\n\n        original.innerHTML = '';\n\n        const createText = function () {\n\n            const span =\n                document.createElement('span');\n\n            span.className =\n                'rebelle-marquee-text';\n\n            span.textContent =\n                'Ideas first. Details always.';\n\n            return span;\n\n        };\n\n\n        \/*\n         * Add enough repetitions so that ONE\n         * group is wider than the visible banner.\n         *\n         * The extra width prevents any blank area\n         * appearing on large desktop screens.\n         *\/\n\n        original.appendChild(createText());\n\n\n        while (\n            original.scrollWidth <\n            marquee.clientWidth + 350\n        ) {\n\n            original.appendChild(\n                createText()\n            );\n\n        }\n\n\n        \/* -----------------------------------------\n           CREATE AN EXACT DUPLICATE\n        ----------------------------------------- *\/\n\n        copy.innerHTML =\n            original.innerHTML;\n\n\n        \/* -----------------------------------------\n           CALCULATE EXACT LOOP DISTANCE\n        ----------------------------------------- *\/\n\n        const groupWidth =\n            original.getBoundingClientRect().width;\n\n\n        track.style.setProperty(\n            '--rebelle-scroll-distance',\n            '-' + groupWidth + 'px'\n        );\n\n\n        \/*\n         * Maintain a consistent scrolling speed.\n\n         * Larger screens automatically contain\n         * more text, so duration increases instead\n         * of making the marquee suddenly faster.\n         *\/\n\n        const pixelsPerSecond = 50;\n\n        const duration =\n            groupWidth \/ pixelsPerSecond;\n\n\n        track.style.setProperty(\n            '--rebelle-duration',\n            duration + 's'\n        );\n\n    }\n\n\n    function initRebelleMarquees() {\n\n        const marquees =\n            document.querySelectorAll(\n                '.rebelle-marquee'\n            );\n\n\n        marquees.forEach(function (marquee) {\n\n            buildRebelleMarquee(marquee);\n\n        });\n\n    }\n\n\n    \/* INITIAL LOAD *\/\n\n    initRebelleMarquees();\n\n\n    \/* HELPS INSIDE ELEMENTOR *\/\n\n    setTimeout(\n        initRebelleMarquees,\n        300\n    );\n\n\n    \/* REBUILD IF SCREEN WIDTH CHANGES *\/\n\n    let rebelleResizeTimer;\n\n    window.addEventListener(\n        'resize',\n        function () {\n\n            clearTimeout(\n                rebelleResizeTimer\n            );\n\n            rebelleResizeTimer =\n                setTimeout(\n                    initRebelleMarquees,\n                    200\n                );\n\n        }\n    );\n\n})();\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-47afa7ee e-con-full e-flex e-con e-parent\" data-id=\"47afa7ee\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t<div class=\"elementor-element elementor-element-b882d0e e-flex e-con-boxed e-con e-child\" data-id=\"b882d0e\" 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-7e8b1515 elementor-widget__width-initial elementor-widget elementor-widget-text-editor\" data-id=\"7e8b1515\" 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 class=\"p1\">Rebelle works at the intersection of creative thinking and real-world execution. Our projects may <span style=\"font-style: inherit; font-weight: inherit;\">begin with a marketing objective, an event, a product launch, an employee moment or an empty box. <\/span><span style=\"font-style: inherit; font-weight: inherit;\">Wherever they begin, our role is to find the central idea and carry it consistently through every detail.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-7419079e e-flex e-con-boxed e-con e-child\" data-id=\"7419079e\" 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-3c77d1ea elementor-widget__width-auto elementor-widget elementor-widget-button\" data-id=\"3c77d1ea\" 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 elementor-animation-grow\" href=\"https:\/\/consoldemo.co.za\/rebelle\/our-work\/\">\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\">View Our Work<\/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 class=\"elementor-element elementor-element-a0cfc3b elementor-widget__width-auto elementor-widget elementor-widget-button\" data-id=\"a0cfc3b\" 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 elementor-animation-grow\" href=\"https:\/\/consoldemo.co.za\/rebelle\/start-a-project\/\">\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\">Start A Project<\/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\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<div class=\"elementor-element elementor-element-2870283e e-flex e-con-boxed e-con e-parent\" data-id=\"2870283e\" 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-5d7693b e-con-full e-flex e-con e-child\" data-id=\"5d7693b\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-253ea2b0 e-con-full e-flex e-con e-child\" data-id=\"253ea2b0\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-ae6910f elementor-widget elementor-widget-html\" data-id=\"ae6910f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\n.rebelle-image-wrap {\n  position: relative;\n  width: 100%;\n}\n\n.rebelle-main-image {\n  display: block;\n  width: 100%;\n  height: auto;\n}\n\n.rebelle-purple-caption {\n  position: absolute;\n  left: 0;\n  bottom: -32px;\n\n  background-color: #a08ea3;\n  color: #eae1d4;\n\n  padding: 18px 24px;\n\n  font-family: \"Arboria\", sans-serif;\n  font-size: 24px;\n  font-weight: 700;\n  line-height: 1.1;\n\n  text-transform: uppercase;\n  z-index: 2;\n}\n\n\n\/* =========================\n   SLIDE-IN FROM LEFT\n========================= *\/\n\n.rebelle-caption-left {\n  opacity: 0;\n  transform: translateX(-120px);\n\n  transition:\n    transform 0.9s cubic-bezier(0.22, 1, 0.36, 1),\n    opacity 0.6s ease;\n}\n\n.rebelle-caption-left.rebelle-show {\n  opacity: 1;\n  transform: translateX(0);\n}\n\n\n\/* MOBILE *\/\n@media (max-width: 767px) {\n\n  .rebelle-purple-caption {\n    font-size: 16px;\n    padding: 12px 16px;\n    bottom: -20px;\n    max-width: 90%;\n    line-height: 1.2;\n  }\n\n}\n<\/style>\n\n\n<div class=\"rebelle-image-wrap\">\n\n  <img decoding=\"async\" \n    src=\"https:\/\/consoldemo.co.za\/rebelle\/wp-content\/uploads\/2026\/08\/WhatsApp-Image-2026-08-18-at-15.33.01-2-e1787122269573.jpeg\"\n    alt=\"Campaign creative\"\n    class=\"rebelle-main-image\"\n   title=\"What We Do\">\n\n  <div class=\"rebelle-purple-caption rebelle-caption-left\">\n    WE CREATE IDEAS THAT GET PEOPLE TALKING.\n  <\/div>\n\n<\/div>\n\n\n<script>\n(function() {\n\n  function initRebelleCaption() {\n\n    const captions = document.querySelectorAll(\n      '.rebelle-caption-left:not(.rebelle-observed)'\n    );\n\n    captions.forEach(function(caption) {\n\n      caption.classList.add('rebelle-observed');\n\n      const observer = new IntersectionObserver(function(entries) {\n\n        entries.forEach(function(entry) {\n\n          if (entry.isIntersecting) {\n\n            requestAnimationFrame(function() {\n              entry.target.classList.add('rebelle-show');\n            });\n\n            observer.unobserve(entry.target);\n          }\n\n        });\n\n      }, {\n        threshold: 0.2\n      });\n\n      observer.observe(caption);\n\n    });\n  }\n\n  \/* Works on normal page load *\/\n  initRebelleCaption();\n\n  \/* Also works properly inside Elementor *\/\n  setTimeout(initRebelleCaption, 300);\n\n})();\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-34a2040f e-con-full e-flex e-con e-child\" data-id=\"34a2040f\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-9618037 elementor-widget elementor-widget-heading\" data-id=\"9618037\" 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\">Campaigns.<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6f64022 elementor-widget elementor-widget-html\" data-id=\"6f64022\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\n.rebelle-left-list {\n    width: 100%;\n    margin: 0;\n    padding: 0;\n\n    display: flex;\n    flex-direction: column;\n    align-items: flex-start;\n\n    gap: 14px;\n    list-style: none;\n}\n\n\n\/* =====================================================\n   LIST ITEMS\n===================================================== *\/\n\n.rebelle-left-list li {\n    display: flex;\n    align-items: center;\n    justify-content: flex-start;\n\n    width: 100%;\n    margin: 0;\n    padding: 0;\n\n    font-family: \"Arboria\", sans-serif;\n    font-size: 20px;\n    font-weight: 500;\n    font-style: italic;\n    line-height: 1.2;\n\n    color: #100f22;\n    text-align: left;\n}\n\n\n\/* =====================================================\n   CIRCLE BULLETS\n   30% SMALLER\n===================================================== *\/\n\n.rebelle-left-list li::before {\n    content: \"\";\n\n    width: 17px;\n    height: 17px;\n    min-width: 17px;\n\n    margin-right: 16px;\n\n    border: 1.5px solid #100f22;\n    border-radius: 50%;\n\n    \/*\n       Makes the visible circle exactly 30% smaller\n       without changing the text alignment or spacing\n    *\/\n    transform: scale(0.7);\n    transform-origin: center;\n\n    flex-shrink: 0;\n}\n\n\n\/* =====================================================\n   TABLET\n===================================================== *\/\n\n@media screen and (max-width: 1024px) {\n\n    .rebelle-left-list li {\n        font-size: 18px;\n    }\n\n    .rebelle-left-list {\n        gap: 12px;\n    }\n}\n\n\n\/* =====================================================\n   MOBILE\n===================================================== *\/\n\n@media screen and (max-width: 767px) {\n\n    .rebelle-left-list li {\n        font-size: 16px;\n    }\n\n    .rebelle-left-list {\n        gap: 10px;\n    }\n\n    .rebelle-left-list li::before {\n        width: 14px;\n        height: 14px;\n        min-width: 14px;\n\n        margin-right: 11px;\n\n        \/*\n           Also 30% smaller on mobile\n        *\/\n        transform: scale(0.7);\n    }\n}\n<\/style>\n\n\n<ul class=\"rebelle-left-list\">\n\n    <li>Campaign Strategy<\/li>\n\n    <li>Concept Development<\/li>\n\n    <li>Creative Direction<\/li>\n\n    <li>Product Launches<\/li>\n\n    <li>Internal Campaigns<\/li>\n\n    <li>Campaign Rollout<\/li>\n\n    <li>Messaging &amp; Copywriting<\/li>\n\n<\/ul>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-15b010a elementor-widget__width-auto elementor-widget elementor-widget-button\" data-id=\"15b010a\" 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 elementor-animation-grow\" href=\"https:\/\/consoldemo.co.za\/rebelle\/start-a-project\/\">\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\">Start A Project<\/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\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-ab7ed9e e-con-full e-flex e-con e-child\" data-id=\"ab7ed9e\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-ddbffef e-con-full e-flex e-con e-child\" data-id=\"ddbffef\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c0f681f elementor-widget elementor-widget-heading\" data-id=\"c0f681f\" 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\">Activations.<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6a8b2bb elementor-widget elementor-widget-html\" data-id=\"6a8b2bb\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\n\/* =========================================\n   REBELLE RIGHT-SIDE BULLET LIST\n========================================= *\/\n\n.rebelle-right-list {\n    width: 100%;\n    margin: 0;\n    padding: 0;\n\n    display: flex;\n    flex-direction: column;\n    align-items: flex-end;\n\n    gap: 14px;\n\n    list-style: none;\n}\n\n\n\/* =========================================\n   INDIVIDUAL ROW\n========================================= *\/\n\n.rebelle-right-list li {\n    display: flex;\n    align-items: center;\n    justify-content: flex-end;\n\n    width: 100%;\n\n    margin: 0;\n    padding: 0;\n\n    font-family: \"Arboria\", sans-serif;\n    font-size: 20px;\n    font-weight: 500;\n    font-style: italic;\n    line-height: 1.2;\n\n    color: #100f22;\n\n    text-align: right;\n}\n\n\n\/* =========================================\n   HOLLOW CIRCLE ON THE RIGHT\n   30% SMALLER\n========================================= *\/\n\n.rebelle-right-list li::after {\n    content: \"\";\n\n    width: 17px;\n    height: 17px;\n    min-width: 17px;\n\n    margin-left: 16px;\n\n    border: 1.5px solid #100f22;\n    border-radius: 50%;\n\n    \/*\n       Makes the visible circle 30% smaller\n       without changing text positioning\n    *\/\n    transform: scale(0.7);\n    transform-origin: center;\n\n    flex-shrink: 0;\n}\n\n\n\/* =========================================\n   TABLET\n========================================= *\/\n\n@media screen and (max-width: 1024px) {\n\n    .rebelle-right-list li {\n        font-size: 18px;\n    }\n\n    .rebelle-right-list {\n        gap: 12px;\n    }\n\n}\n\n\n\/* =========================================\n   MOBILE\n========================================= *\/\n\n@media screen and (max-width: 767px) {\n\n    .rebelle-right-list li {\n        font-size: 16px;\n    }\n\n    .rebelle-right-list {\n        gap: 10px;\n    }\n\n    .rebelle-right-list li::after {\n        width: 14px;\n        height: 14px;\n        min-width: 14px;\n\n        margin-left: 11px;\n\n        \/*\n           Also 30% smaller on mobile\n        *\/\n        transform: scale(0.7);\n    }\n\n}\n<\/style>\n\n\n<ul class=\"rebelle-right-list\">\n\n    <li>Brand Activations<\/li>\n\n    <li>Product Launches<\/li>\n\n    <li>PR &amp; Media Kits<\/li>\n\n    <li>Influencer Mailers<\/li>\n\n    <li>Campaign Drops<\/li>\n\n    <li>Delegate Experiences<\/li>\n\n    <li>Event Branding &amp; Touchpoints<\/li>\n\n<\/ul>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-64e8dfc elementor-widget__width-auto elementor-align-right elementor-widget elementor-widget-button\" data-id=\"64e8dfc\" 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 elementor-animation-grow\" href=\"https:\/\/consoldemo.co.za\/rebelle\/start-a-project\/\">\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\">Start A Project<\/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-deb5335 e-con-full e-flex e-con e-child\" data-id=\"deb5335\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-28cff9e elementor-widget elementor-widget-html\" data-id=\"28cff9e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\n\/* =========================\n   IMAGE BLOCK\n========================= *\/\n\n.rebelle-image-wrap {\n  position: relative;\n  width: 100%;\n}\n\n.rebelle-main-image {\n  display: block;\n  width: 100%;\n  height: auto;\n}\n\n\n\/* =========================\n   PURPLE CAPTION\n========================= *\/\n\n.rebelle-purple-caption {\n  position: absolute;\n  left: 0;\n  bottom: -32px;\n\n  background-color: #a08ea3;\n  color: #eae1d4;\n\n  padding: 18px 24px;\n\n  font-family: \"Arboria\", sans-serif;\n  font-size: 24px;\n  font-weight: 700;\n  line-height: 1.1;\n\n  text-transform: uppercase;\n  z-index: 2;\n}\n\n\n\/* =========================\n   SLIDE IN FROM RIGHT\n========================= *\/\n\n.rebelle-caption-right {\n  opacity: 0;\n  transform: translateX(120px);\n\n  transition:\n    transform 0.9s cubic-bezier(0.22, 1, 0.36, 1),\n    opacity 0.6s ease;\n}\n\n.rebelle-caption-right.rebelle-show {\n  opacity: 1;\n  transform: translateX(0);\n}\n\n\n\/* =========================\n   MOBILE\n========================= *\/\n\n@media (max-width: 767px) {\n\n  .rebelle-purple-caption {\n    font-size: 16px;\n    padding: 12px 16px;\n    bottom: -20px;\n    max-width: 90%;\n    line-height: 1.2;\n  }\n\n}\n<\/style>\n\n\n<div class=\"rebelle-image-wrap\">\n\n  <img decoding=\"async\"\n    src=\"https:\/\/consoldemo.co.za\/rebelle\/wp-content\/uploads\/2026\/08\/2ccb1636-6497-42e9-bff2-c418798154b7.jpg\"\n    alt=\"Brand activation\"\n    class=\"rebelle-main-image\"\n   title=\"What We Do\">\n\n  <div class=\"rebelle-purple-caption rebelle-caption-right\">\n    WE TURN BRANDS INTO EXPERIENCES.\n  <\/div>\n\n<\/div>\n\n\n<script>\n(function () {\n\n  function initRebelleRightCaption() {\n\n    const captions = document.querySelectorAll(\n      '.rebelle-caption-right:not(.rebelle-observed)'\n    );\n\n    captions.forEach(function (caption) {\n\n      caption.classList.add('rebelle-observed');\n\n      const observer = new IntersectionObserver(function (entries) {\n\n        entries.forEach(function (entry) {\n\n          if (entry.isIntersecting) {\n\n            requestAnimationFrame(function () {\n              entry.target.classList.add('rebelle-show');\n            });\n\n            observer.unobserve(entry.target);\n          }\n\n        });\n\n      }, {\n        threshold: 0.2\n      });\n\n      observer.observe(caption);\n\n    });\n  }\n\n  initRebelleRightCaption();\n\n  \/* Helps Elementor editor initialise the animation *\/\n  setTimeout(initRebelleRightCaption, 300);\n\n})();\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-93f078e e-con-full e-flex e-con e-child\" data-id=\"93f078e\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-5ec41f7 e-con-full e-flex e-con e-child\" data-id=\"5ec41f7\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-17a7060 elementor-widget elementor-widget-html\" data-id=\"17a7060\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\n.rebelle-image-wrap {\n  position: relative;\n  width: 100%;\n}\n\n.rebelle-main-image {\n  display: block;\n  width: 100%;\n  height: auto;\n}\n\n.rebelle-purple-caption {\n  position: absolute;\n  left: 0;\n  bottom: -32px;\n\n  background-color: #a08ea3;\n  color: #eae1d4;\n\n  padding: 18px 24px;\n\n  font-family: \"Arboria\", sans-serif;\n  font-size: 24px;\n  font-weight: 700;\n  line-height: 1.1;\n\n  text-transform: uppercase;\n  z-index: 2;\n}\n\n\n\/* =========================\n   SLIDE-IN FROM LEFT\n========================= *\/\n\n.rebelle-caption-left {\n  opacity: 0;\n  transform: translateX(-120px);\n\n  transition:\n    transform 0.9s cubic-bezier(0.22, 1, 0.36, 1),\n    opacity 0.6s ease;\n}\n\n.rebelle-caption-left.rebelle-show {\n  opacity: 1;\n  transform: translateX(0);\n}\n\n\n\/* MOBILE *\/\n@media (max-width: 767px) {\n\n  .rebelle-purple-caption {\n    font-size: 16px;\n    padding: 12px 16px;\n    bottom: -20px;\n    max-width: 90%;\n    line-height: 1.2;\n  }\n\n}\n<\/style>\n\n\n<div class=\"rebelle-image-wrap\">\n\n  <img decoding=\"async\" \n    src=\"https:\/\/consoldemo.co.za\/rebelle\/wp-content\/uploads\/2026\/08\/WhatsApp-Image-2026-08-18-at-15.33.01-01-e1787122385486.png\"\n    alt=\"GIFTING creative\"\n    class=\"rebelle-main-image\"\n   title=\"What We Do\">\n\n  <div class=\"rebelle-purple-caption rebelle-caption-left\">\n    WE CREATE GIFTS WITH PURPOSE.\n  <\/div>\n\n<\/div>\n\n\n<script>\n(function() {\n\n  function initRebelleCaption() {\n\n    const captions = document.querySelectorAll(\n      '.rebelle-caption-left:not(.rebelle-observed)'\n    );\n\n    captions.forEach(function(caption) {\n\n      caption.classList.add('rebelle-observed');\n\n      const observer = new IntersectionObserver(function(entries) {\n\n        entries.forEach(function(entry) {\n\n          if (entry.isIntersecting) {\n\n            requestAnimationFrame(function() {\n              entry.target.classList.add('rebelle-show');\n            });\n\n            observer.unobserve(entry.target);\n          }\n\n        });\n\n      }, {\n        threshold: 0.2\n      });\n\n      observer.observe(caption);\n\n    });\n  }\n\n  \/* Works on normal page load *\/\n  initRebelleCaption();\n\n  \/* Also works properly inside Elementor *\/\n  setTimeout(initRebelleCaption, 300);\n\n})();\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-fa0f534 e-con-full e-flex e-con e-child\" data-id=\"fa0f534\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-ed23062 elementor-widget elementor-widget-heading\" data-id=\"ed23062\" 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\">Gifting.<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4873751 elementor-widget elementor-widget-html\" data-id=\"4873751\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\n.rebelle-left-list {\n    width: 100%;\n    margin: 0;\n    padding: 0;\n\n    display: flex;\n    flex-direction: column;\n    align-items: flex-start;\n\n    gap: 14px;\n    list-style: none;\n}\n\n.rebelle-left-list li {\n    display: flex;\n    align-items: center;\n    justify-content: flex-start;\n\n    width: 100%;\n    margin: 0;\n    padding: 0;\n\n    font-family: \"Arboria\", sans-serif;\n    font-size: 20px;\n    font-weight: 500;\n    font-style: italic;\n    line-height: 1.2;\n\n    color: #100f22;\n    text-align: left;\n}\n\n.rebelle-left-list li::before {\n    content: \"\";\n\n    width: 17px;\n    height: 17px;\n    min-width: 17px;\n\n    margin-right: 16px;\n\n    border: 1.5px solid #100f22;\n    border-radius: 50%;\n}\n\n\n\/* TABLET *\/\n@media screen and (max-width: 1024px) {\n\n    .rebelle-left-list li {\n        font-size: 18px;\n    }\n\n    .rebelle-left-list {\n        gap: 12px;\n    }\n}\n\n\n\/* MOBILE *\/\n@media screen and (max-width: 767px) {\n\n    .rebelle-left-list li {\n        font-size: 16px;\n    }\n\n    .rebelle-left-list {\n        gap: 10px;\n    }\n\n    .rebelle-left-list li::before {\n        width: 14px;\n        height: 14px;\n        min-width: 14px;\n\n        margin-right: 11px;\n    }\n}\n<\/style>\n\n\n<ul class=\"rebelle-left-list\">\n\n    <li>Corporate Gifting<\/li>\n\n    <li>Employee Gifts<\/li>\n\n    <li>Client Appreciation<\/li>\n\n    <li>Welcome Packs<\/li>\n\n    <li>Launch Kits<\/li>\n\n    <li>Product Sourcing<\/li>\n\n    <li>Year End Gifts<\/li>\n\n<\/ul>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7de90a9 elementor-widget__width-auto elementor-widget elementor-widget-button\" data-id=\"7de90a9\" 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 elementor-animation-grow\" href=\"https:\/\/consoldemo.co.za\/rebelle\/start-a-project\/\">\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\">Start A Project<\/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\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-1b4cb7f e-con-full e-flex e-con e-child\" data-id=\"1b4cb7f\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-9336548 e-con-full e-flex e-con e-child\" data-id=\"9336548\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-83b5393 elementor-widget elementor-widget-heading\" data-id=\"83b5393\" 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\">Packaging.<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8003a83 elementor-widget elementor-widget-html\" data-id=\"8003a83\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\n.rebelle-right-list {\n    width: 100%;\n    margin: 0;\n    padding: 0;\n\n    display: flex;\n    flex-direction: column;\n    align-items: flex-end;\n\n    gap: 14px;\n    list-style: none;\n}\n\n.rebelle-right-list li {\n    display: flex;\n    align-items: center;\n    justify-content: flex-end;\n\n    width: 100%;\n    margin: 0;\n    padding: 0;\n\n    font-family: \"Arboria\", sans-serif;\n    font-size: 20px;\n    font-weight: 500;\n    font-style: italic;\n    line-height: 1.2;\n\n    color: #100f22;\n    text-align: right;\n}\n\n.rebelle-right-list li::after {\n    content: \"\";\n\n    width: 17px;\n    height: 17px;\n    min-width: 17px;\n\n    margin-left: 16px;\n\n    border: 1.5px solid #100f22;\n    border-radius: 50%;\n}\n\n\n\/* TABLET *\/\n@media screen and (max-width: 1024px) {\n\n    .rebelle-right-list li {\n        font-size: 18px;\n    }\n\n    .rebelle-right-list {\n        gap: 12px;\n    }\n}\n\n\n\/* MOBILE *\/\n@media screen and (max-width: 767px) {\n\n    .rebelle-right-list li {\n        font-size: 16px;\n    }\n\n    .rebelle-right-list {\n        gap: 10px;\n    }\n\n    .rebelle-right-list li::after {\n        width: 14px;\n        height: 14px;\n        min-width: 14px;\n\n        margin-left: 11px;\n    }\n}\n<\/style>\n\n\n<ul class=\"rebelle-right-list\">\n\n    <li>Luxury Packaging<\/li>\n\n    <li>Presentation Boxes<\/li>\n\n    <li>Custom Packaging<\/li>\n\n    <li>Packaging Design<\/li>\n\n    <li>Print &amp; Production<\/li>\n\n    <li>Finishing &amp; Assembly<\/li>\n\n    <li>Allocations or Packaging<\/li>\n\n<\/ul>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ba3ae67 elementor-widget__width-auto elementor-align-right elementor-widget elementor-widget-button\" data-id=\"ba3ae67\" 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 elementor-animation-grow\" href=\"https:\/\/consoldemo.co.za\/rebelle\/start-a-project\/\">\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\">Start A Project<\/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-ef302c8 e-con-full e-flex e-con e-child\" data-id=\"ef302c8\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1cccc7b elementor-widget elementor-widget-html\" data-id=\"1cccc7b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\n\/* =========================\n   IMAGE BLOCK\n========================= *\/\n\n.rebelle-image-wrap {\n  position: relative;\n  width: 100%;\n}\n\n.rebelle-main-image {\n  display: block;\n  width: 100%;\n  height: auto;\n}\n\n\n\/* =========================\n   PURPLE CAPTION\n========================= *\/\n\n.rebelle-purple-caption {\n  position: absolute;\n  left: 0;\n  bottom: -32px;\n\n  background-color: #a08ea3;\n  color: #eae1d4;\n\n  padding: 18px 24px;\n\n  font-family: \"Arboria\", sans-serif;\n  font-size: 24px;\n  font-weight: 700;\n  line-height: 1.1;\n\n  text-transform: uppercase;\n  z-index: 2;\n}\n\n\n\/* =========================\n   SLIDE IN FROM RIGHT\n========================= *\/\n\n.rebelle-caption-right {\n  opacity: 0;\n  transform: translateX(120px);\n\n  transition:\n    transform 0.9s cubic-bezier(0.22, 1, 0.36, 1),\n    opacity 0.6s ease;\n}\n\n.rebelle-caption-right.rebelle-show {\n  opacity: 1;\n  transform: translateX(0);\n}\n\n\n\/* =========================\n   MOBILE\n========================= *\/\n\n@media (max-width: 767px) {\n\n  .rebelle-purple-caption {\n    font-size: 16px;\n    padding: 12px 16px;\n    bottom: -20px;\n    max-width: 90%;\n    line-height: 1.2;\n  }\n\n}\n<\/style>\n\n\n<div class=\"rebelle-image-wrap\">\n\n  <img decoding=\"async\"\n    src=\"https:\/\/consoldemo.co.za\/rebelle\/wp-content\/uploads\/2026\/08\/WhatsApp-Image-2026-08-18-at-15.33.01-3.jpeg\"\n    alt=\"Brand activation\"\n    class=\"rebelle-main-image\"\n   title=\"What We Do\">\n\n  <div class=\"rebelle-purple-caption rebelle-caption-right\">\n    WE TURN BRANDS INTO EXPERIENCES.\n  <\/div>\n\n<\/div>\n\n\n<script>\n(function () {\n\n  function initRebelleRightCaption() {\n\n    const captions = document.querySelectorAll(\n      '.rebelle-caption-right:not(.rebelle-observed)'\n    );\n\n    captions.forEach(function (caption) {\n\n      caption.classList.add('rebelle-observed');\n\n      const observer = new IntersectionObserver(function (entries) {\n\n        entries.forEach(function (entry) {\n\n          if (entry.isIntersecting) {\n\n            requestAnimationFrame(function () {\n              entry.target.classList.add('rebelle-show');\n            });\n\n            observer.unobserve(entry.target);\n          }\n\n        });\n\n      }, {\n        threshold: 0.2\n      });\n\n      observer.observe(caption);\n\n    });\n  }\n\n  initRebelleRightCaption();\n\n  \/* Helps Elementor editor initialise the animation *\/\n  setTimeout(initRebelleRightCaption, 300);\n\n})();\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-0b3cf71 e-con-full e-flex e-con e-child\" data-id=\"0b3cf71\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-86e166a e-con-full e-flex e-con e-child\" data-id=\"86e166a\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e9e2af4 elementor-widget elementor-widget-html\" data-id=\"e9e2af4\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\n.rebelle-image-wrap {\n  position: relative;\n  width: 100%;\n}\n\n.rebelle-main-image {\n  display: block;\n  width: 100%;\n  height: auto;\n}\n\n.rebelle-purple-caption {\n  position: absolute;\n  left: 0;\n  bottom: -32px;\n\n  background-color: #a08ea3;\n  color: #eae1d4;\n\n  padding: 18px 24px;\n\n  font-family: \"Arboria\", sans-serif;\n  font-size: 24px;\n  font-weight: 700;\n  line-height: 1.1;\n\n  text-transform: uppercase;\n  z-index: 2;\n}\n\n\n\/* =========================\n   SLIDE-IN FROM LEFT\n========================= *\/\n\n.rebelle-caption-left {\n  opacity: 0;\n  transform: translateX(-120px);\n\n  transition:\n    transform 0.9s cubic-bezier(0.22, 1, 0.36, 1),\n    opacity 0.6s ease;\n}\n\n.rebelle-caption-left.rebelle-show {\n  opacity: 1;\n  transform: translateX(0);\n}\n\n\n\/* MOBILE *\/\n@media (max-width: 767px) {\n\n  .rebelle-purple-caption {\n    font-size: 16px;\n    padding: 12px 16px;\n    bottom: -20px;\n    max-width: 90%;\n    line-height: 1.2;\n  }\n\n}\n<\/style>\n\n\n<div class=\"rebelle-image-wrap\">\n\n  <img decoding=\"async\" \n    src=\"https:\/\/consoldemo.co.za\/rebelle\/wp-content\/uploads\/2026\/09\/KY-Farm-624-Final-Logo-RGB-Estate.png\"\n    alt=\"Branding creative\"\n    class=\"rebelle-main-image\"\n   title=\"What We Do\">\n\n  <div class=\"rebelle-purple-caption rebelle-caption-left\">\n    WE BUILD BRANDS THAT STAND OUT.\n  <\/div>\n\n<\/div>\n\n\n<script>\n(function() {\n\n  function initRebelleCaption() {\n\n    const captions = document.querySelectorAll(\n      '.rebelle-caption-left:not(.rebelle-observed)'\n    );\n\n    captions.forEach(function(caption) {\n\n      caption.classList.add('rebelle-observed');\n\n      const observer = new IntersectionObserver(function(entries) {\n\n        entries.forEach(function(entry) {\n\n          if (entry.isIntersecting) {\n\n            requestAnimationFrame(function() {\n              entry.target.classList.add('rebelle-show');\n            });\n\n            observer.unobserve(entry.target);\n          }\n\n        });\n\n      }, {\n        threshold: 0.2\n      });\n\n      observer.observe(caption);\n\n    });\n  }\n\n  \/* Works on normal page load *\/\n  initRebelleCaption();\n\n  \/* Also works properly inside Elementor *\/\n  setTimeout(initRebelleCaption, 300);\n\n})();\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-3594d1c e-con-full e-flex e-con e-child\" data-id=\"3594d1c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-ad1bda5 elementor-widget elementor-widget-heading\" data-id=\"ad1bda5\" 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\">Brand Design.<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f90128f elementor-widget elementor-widget-html\" data-id=\"f90128f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\n.rebelle-left-list {\n    width: 100%;\n    margin: 0;\n    padding: 0;\n\n    display: flex;\n    flex-direction: column;\n    align-items: flex-start;\n\n    gap: 14px;\n    list-style: none;\n}\n\n.rebelle-left-list li {\n    display: flex;\n    align-items: center;\n    justify-content: flex-start;\n\n    width: 100%;\n    margin: 0;\n    padding: 0;\n\n    font-family: \"Arboria\", sans-serif;\n    font-size: 20px;\n    font-weight: 500;\n    font-style: italic;\n    line-height: 1.2;\n\n    color: #100f22;\n    text-align: left;\n}\n\n.rebelle-left-list li::before {\n    content: \"\";\n\n    width: 17px;\n    height: 17px;\n    min-width: 17px;\n\n    margin-right: 16px;\n\n    border: 1.5px solid #100f22;\n    border-radius: 50%;\n}\n\n\n\/* TABLET *\/\n@media screen and (max-width: 1024px) {\n\n    .rebelle-left-list li {\n        font-size: 18px;\n    }\n\n    .rebelle-left-list {\n        gap: 12px;\n    }\n}\n\n\n\/* MOBILE *\/\n@media screen and (max-width: 767px) {\n\n    .rebelle-left-list li {\n        font-size: 16px;\n    }\n\n    .rebelle-left-list {\n        gap: 10px;\n    }\n\n    .rebelle-left-list li::before {\n        width: 14px;\n        height: 14px;\n        min-width: 14px;\n\n        margin-right: 11px;\n    }\n}\n<\/style>\n\n\n<ul class=\"rebelle-left-list\">\n\n    <li>Brand Identity<\/li>\n\n    <li>Logo Design<\/li>\n\n    <li>Brand Guidelines<\/li>\n\n    <li>Marketing Collateral<\/li>\n\n    <li>Print &amp; Digital Design<\/li>\n\n    <li>Presentations<\/li>\n\n    <li>Signage &amp; Environmental Graphics<\/li>\n\n<\/ul>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-79f8203 elementor-widget__width-auto elementor-widget elementor-widget-button\" data-id=\"79f8203\" 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 elementor-animation-grow\" href=\"https:\/\/consoldemo.co.za\/rebelle\/start-a-project\/\">\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\">Start A Project<\/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\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-c8f59df e-con-full e-flex e-con e-child\" data-id=\"c8f59df\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-1bc0b82 e-con-full e-flex e-con e-child\" data-id=\"1bc0b82\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-497509c elementor-widget elementor-widget-heading\" data-id=\"497509c\" 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\">Event\nStationery.<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-699352b elementor-widget elementor-widget-html\" data-id=\"699352b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\n.rebelle-right-list {\n    width: 100%;\n    margin: 0;\n    padding: 0;\n\n    display: flex;\n    flex-direction: column;\n    align-items: flex-end;\n\n    gap: 14px;\n    list-style: none;\n}\n\n.rebelle-right-list li {\n    display: flex;\n    align-items: center;\n    justify-content: flex-end;\n\n    width: 100%;\n    margin: 0;\n    padding: 0;\n\n    font-family: \"Arboria\", sans-serif;\n    font-size: 20px;\n    font-weight: 500;\n    font-style: italic;\n    line-height: 1.2;\n\n    color: #100f22;\n    text-align: right;\n}\n\n.rebelle-right-list li::after {\n    content: \"\";\n\n    width: 17px;\n    height: 17px;\n    min-width: 17px;\n\n    margin-left: 16px;\n\n    border: 1.5px solid #100f22;\n    border-radius: 50%;\n}\n\n\n\/* TABLET *\/\n@media screen and (max-width: 1024px) {\n\n    .rebelle-right-list li {\n        font-size: 18px;\n    }\n\n    .rebelle-right-list {\n        gap: 12px;\n    }\n}\n\n\n\/* MOBILE *\/\n@media screen and (max-width: 767px) {\n\n    .rebelle-right-list li {\n        font-size: 16px;\n    }\n\n    .rebelle-right-list {\n        gap: 10px;\n    }\n\n    .rebelle-right-list li::after {\n        width: 14px;\n        height: 14px;\n        min-width: 14px;\n\n        margin-left: 11px;\n    }\n}\n<\/style>\n\n\n<ul class=\"rebelle-right-list\">\n\n    <li>Invitations<\/li>\n\n    <li>Menus<\/li>\n\n    <li>Place Cards<\/li>\n\n    <li>Name Badges<\/li>\n\n    <li>Seating Plans<\/li>\n\n    <li>Welcome Signage<\/li>\n\n    <li>Event Collateral<\/li>\n\n<\/ul>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b08be20 elementor-widget__width-auto elementor-align-right elementor-widget elementor-widget-button\" data-id=\"b08be20\" 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 elementor-animation-grow\" href=\"https:\/\/consoldemo.co.za\/rebelle\/start-a-project\/\">\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\">Start A Project<\/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-8b772d1 e-con-full e-flex e-con e-child\" data-id=\"8b772d1\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-dbb6909 elementor-widget elementor-widget-html\" data-id=\"dbb6909\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\n\/* =========================\n   IMAGE BLOCK\n========================= *\/\n\n.rebelle-image-wrap {\n  position: relative;\n  width: 100%;\n}\n\n.rebelle-main-image {\n  display: block;\n  width: 100%;\n  height: auto;\n}\n\n\n\/* =========================\n   PURPLE CAPTION\n========================= *\/\n\n.rebelle-purple-caption {\n  position: absolute;\n  left: 0;\n  bottom: -32px;\n\n  background-color: #a08ea3;\n  color: #eae1d4;\n\n  padding: 18px 24px;\n\n  font-family: \"Arboria\", sans-serif;\n  font-size: 24px;\n  font-weight: 700;\n  line-height: 1.1;\n\n  text-transform: uppercase;\n  z-index: 2;\n}\n\n\n\/* =========================\n   SLIDE IN FROM RIGHT\n========================= *\/\n\n.rebelle-caption-right {\n  opacity: 0;\n  transform: translateX(120px);\n\n  transition:\n    transform 0.9s cubic-bezier(0.22, 1, 0.36, 1),\n    opacity 0.6s ease;\n}\n\n.rebelle-caption-right.rebelle-show {\n  opacity: 1;\n  transform: translateX(0);\n}\n\n\n\/* =========================\n   MOBILE\n========================= *\/\n\n@media (max-width: 767px) {\n\n  .rebelle-purple-caption {\n    font-size: 16px;\n    padding: 12px 16px;\n    bottom: -20px;\n    max-width: 90%;\n    line-height: 1.2;\n  }\n\n}\n<\/style>\n\n\n<div class=\"rebelle-image-wrap\">\n\n  <img decoding=\"async\"\n    src=\"https:\/\/consoldemo.co.za\/rebelle\/wp-content\/uploads\/2026\/08\/4af63bcd-d1a5-4243-a50e-370897261e9b.jpg\"\n    alt=\"Brand activation\"\n    class=\"rebelle-main-image\"\n   title=\"What We Do\">\n\n  <div class=\"rebelle-purple-caption rebelle-caption-right\">\n    WE DESIGN THE DETAILS.\n  <\/div>\n\n<\/div>\n\n\n<script>\n(function () {\n\n  function initRebelleRightCaption() {\n\n    const captions = document.querySelectorAll(\n      '.rebelle-caption-right:not(.rebelle-observed)'\n    );\n\n    captions.forEach(function (caption) {\n\n      caption.classList.add('rebelle-observed');\n\n      const observer = new IntersectionObserver(function (entries) {\n\n        entries.forEach(function (entry) {\n\n          if (entry.isIntersecting) {\n\n            requestAnimationFrame(function () {\n              entry.target.classList.add('rebelle-show');\n            });\n\n            observer.unobserve(entry.target);\n          }\n\n        });\n\n      }, {\n        threshold: 0.2\n      });\n\n      observer.observe(caption);\n\n    });\n  }\n\n  initRebelleRightCaption();\n\n  \/* Helps Elementor editor initialise the animation *\/\n  setTimeout(initRebelleRightCaption, 300);\n\n})();\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-64b6af7e e-flex e-con-boxed e-con e-parent\" data-id=\"64b6af7e\" 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-6536bd5 e-con-full e-flex e-con e-child\" data-id=\"6536bd5\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-67499e05 e-con-full e-flex e-con e-child\" data-id=\"67499e05\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-fbdb8ee e-con-full e-flex e-con e-child\" data-id=\"fbdb8ee\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-a41bb6b elementor-widget__width-auto elementor-widget elementor-widget-text-editor\" data-id=\"a41bb6b\" 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 Approach.<\/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-90267b3 e-con-full e-flex e-con e-child\" data-id=\"90267b3\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-20e2bcf5 elementor-widget__width-initial elementor-widget elementor-widget-text-editor\" data-id=\"20e2bcf5\" 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 class=\"p1\">Our process is collaborative, intentional and designed to deliver results. From the first conversation to the final delivery, every step has purpose. Creative Thinking. Tangible Outcomes.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\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-2b50951 e-con-full e-flex e-con e-child\" data-id=\"2b50951\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c3e6747 elementor-widget elementor-widget-html\" data-id=\"c3e6747\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\n\/* ===========================\n   REBELLE PROCESS ACCORDION\n=========================== *\/\n\n.rebelle-process {\n  width: 100%;\n  font-family: \"Arboria\", sans-serif;\n  color: #eae1d4;\n}\n\n\/* Individual accordion item *\/\n.rebelle-process-item {\n  border-bottom: 3px solid #eae1d4;\n}\n\n\/* Clickable heading row *\/\n.rebelle-process-header {\n  display: flex;\n  align-items: center;\n  width: 100%;\n  padding: 16px 0 11px 0;\n  cursor: pointer;\n  user-select: none;\n}\n\n\/* Cream circle *\/\n.rebelle-process-circle {\n  width: 31px;\n  height: 31px;\n  min-width: 31px;\n  border-radius: 50%;\n  background-color: #eae1d4;\n  margin-right: 16px;\n}\n\n\/* Heading *\/\n.rebelle-process-title {\n  font-size: 20px;\n  line-height: 1;\n  font-weight: 700;\n  text-transform: uppercase;\n  flex-grow: 1;\n}\n\n\/* Arrow *\/\n.rebelle-process-arrow {\n  width: 18px;\n  height: 18px;\n  border-right: 1.5px solid #eae1d4;\n  border-bottom: 1.5px solid #eae1d4;\n  transform: rotate(45deg);\n  margin-right: 5px;\n  margin-top: -7px;\n  transition: transform 0.35s ease;\n}\n\n\/* Open arrow *\/\n.rebelle-process-item.active .rebelle-process-arrow {\n  transform: rotate(225deg);\n  margin-top: 8px;\n}\n\n\/* Hidden content *\/\n.rebelle-process-content {\n  max-height: 0;\n  overflow: hidden;\n  opacity: 0;\n  transition:\n    max-height 0.45s ease,\n    opacity 0.3s ease,\n    padding 0.35s ease;\n}\n\n\/* Open content *\/\n.rebelle-process-item.active .rebelle-process-content {\n  max-height: 180px;\n  opacity: 1;\n}\n\n\/* Description *\/\n.rebelle-process-content p {\n  margin: 0;\n  padding: 17px 25px 20px 47px;\n  font-size: 19px;\n  line-height: 1.45;\n  font-weight: 400;\n}\n\n\/* Remove final bottom border if desired *\/\n.rebelle-process-item:last-child {\n  border-bottom: none;\n}\n\n\n\/* ===========================\n   TABLET\n=========================== *\/\n\n@media (max-width: 1024px) {\n\n  .rebelle-process-title {\n    font-size: 18px;\n  }\n\n  .rebelle-process-content p {\n    font-size: 17px;\n  }\n}\n\n\n\/* ===========================\n   MOBILE\n=========================== *\/\n\n@media (max-width: 767px) {\n\n  .rebelle-process-header {\n    padding: 13px 0 10px;\n  }\n\n  .rebelle-process-circle {\n    width: 25px;\n    height: 25px;\n    min-width: 25px;\n    margin-right: 12px;\n  }\n\n  .rebelle-process-title {\n    font-size: 16px;\n  }\n\n  .rebelle-process-content p {\n    padding: 13px 10px 17px 37px;\n    font-size: 15px;\n    line-height: 1.4;\n  }\n\n  .rebelle-process-arrow {\n    width: 14px;\n    height: 14px;\n  }\n\n  .rebelle-process-item {\n    border-bottom-width: 2px;\n  }\n}\n<\/style>\n\n\n<div class=\"rebelle-process\">\n\n  <!-- DISCOVER -->\n  <div class=\"rebelle-process-item active\">\n    <div class=\"rebelle-process-header\">\n      <span class=\"rebelle-process-circle\"><\/span>\n\n      <span class=\"rebelle-process-title\">\n        Discover\n      <\/span>\n\n      <span class=\"rebelle-process-arrow\"><\/span>\n    <\/div>\n\n    <div class=\"rebelle-process-content\">\n      <p>\n        We unpack and breakdown the brief, audience, brand and desired response.\n      <\/p>\n    <\/div>\n  <\/div>\n\n\n  <!-- DEFINE -->\n  <div class=\"rebelle-process-item\">\n    <div class=\"rebelle-process-header\">\n      <span class=\"rebelle-process-circle\"><\/span>\n\n      <span class=\"rebelle-process-title\">\n        Define\n      <\/span>\n\n      <span class=\"rebelle-process-arrow\"><\/span>\n    <\/div>\n\n    <div class=\"rebelle-process-content\">\n      <p>\n        We establish the central idea and recommend the most effective experience or touchpoints.\n      <\/p>\n    <\/div>\n  <\/div>\n\n\n  <!-- DESIGN -->\n  <div class=\"rebelle-process-item\">\n    <div class=\"rebelle-process-header\">\n      <span class=\"rebelle-process-circle\"><\/span>\n\n      <span class=\"rebelle-process-title\">\n        Design\n      <\/span>\n\n      <span class=\"rebelle-process-arrow\"><\/span>\n    <\/div>\n\n    <div class=\"rebelle-process-content\">\n      <p>\n        We develop the visual direction, messaging and complete creative system.\n      <\/p>\n    <\/div>\n  <\/div>\n\n\n  <!-- PRODUCE -->\n  <div class=\"rebelle-process-item\">\n    <div class=\"rebelle-process-header\">\n      <span class=\"rebelle-process-circle\"><\/span>\n\n      <span class=\"rebelle-process-title\">\n        Produce\n      <\/span>\n\n      <span class=\"rebelle-process-arrow\"><\/span>\n    <\/div>\n\n    <div class=\"rebelle-process-content\">\n      <p>\n        We coordinate sourcing, manufacturing, printing, packaging and quality control.\n      <\/p>\n    <\/div>\n  <\/div>\n\n\n  <!-- DELIVER -->\n  <div class=\"rebelle-process-item\">\n    <div class=\"rebelle-process-header\">\n      <span class=\"rebelle-process-circle\"><\/span>\n\n      <span class=\"rebelle-process-title\">\n        Deliver\n      <\/span>\n\n      <span class=\"rebelle-process-arrow\"><\/span>\n    <\/div>\n\n    <div class=\"rebelle-process-content\">\n      <p>\n        We assemble and oversee the final execution so the experience arrives as intended.\n      <\/p>\n    <\/div>\n  <\/div>\n\n<\/div>\n\n\n<script>\ndocument.querySelectorAll('.rebelle-process-header').forEach(header => {\n\n  header.addEventListener('click', function () {\n\n    const clickedItem = this.parentElement;\n\n    \/* Close other open items *\/\n    document.querySelectorAll('.rebelle-process-item').forEach(item => {\n      if (item !== clickedItem) {\n        item.classList.remove('active');\n      }\n    });\n\n    \/* Open \/ close clicked item *\/\n    clickedItem.classList.toggle('active');\n\n  });\n\n});\n<\/script>\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-436e62d e-con-full e-flex e-con e-child\" data-id=\"436e62d\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-28f5389 elementor-widget__width-auto elementor-widget elementor-widget-button\" data-id=\"28f5389\" 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 elementor-animation-grow\" href=\"https:\/\/consoldemo.co.za\/rebelle\/start-a-project\/\">\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\">Start A Project<\/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 class=\"elementor-element elementor-element-91b27f7 elementor-widget__width-auto elementor-widget elementor-widget-button\" data-id=\"91b27f7\" 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 elementor-animation-grow\" href=\"mailto:info@rebelle.co.za?subject=Rebelle%20Brandmakers%20%7C%20Enquiry\">\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\">Email Us<\/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\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>We Think It. Design It. Source It. Make It Happen. Ideas first. Details always. Rebelle works at the intersection of creative thinking and real-world execution. Our projects may begin with a marketing objective, an event, a product launch, an employee moment or an empty box. Wherever they begin, our role is to find the central [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"site-sidebar-layout":"no-sidebar","site-content-layout":"page-builder","ast-site-content-layout":"full-width-container","site-content-style":"unboxed","site-sidebar-style":"unboxed","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"disabled","ast-breadcrumbs-content":"disabled","ast-featured-img":"disabled","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"disabled","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"set","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-475","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/consoldemo.co.za\/rebelle\/wp-json\/wp\/v2\/pages\/475","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/consoldemo.co.za\/rebelle\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/consoldemo.co.za\/rebelle\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/consoldemo.co.za\/rebelle\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/consoldemo.co.za\/rebelle\/wp-json\/wp\/v2\/comments?post=475"}],"version-history":[{"count":125,"href":"https:\/\/consoldemo.co.za\/rebelle\/wp-json\/wp\/v2\/pages\/475\/revisions"}],"predecessor-version":[{"id":3270,"href":"https:\/\/consoldemo.co.za\/rebelle\/wp-json\/wp\/v2\/pages\/475\/revisions\/3270"}],"wp:attachment":[{"href":"https:\/\/consoldemo.co.za\/rebelle\/wp-json\/wp\/v2\/media?parent=475"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}