{"id":31,"date":"2025-08-03T01:03:07","date_gmt":"2025-08-03T01:03:07","guid":{"rendered":"https:\/\/ctattorneys.co.za\/?page_id=31"},"modified":"2026-06-05T01:53:05","modified_gmt":"2026-06-05T01:53:05","slug":"home","status":"publish","type":"page","link":"https:\/\/ctattorneys.co.za\/","title":{"rendered":"Home"},"content":{"rendered":"\n\n\t<div id=\"gap-1940684417\" class=\"gap-element clearfix\" style=\"display:block; height:auto;\">\n\t\t\n<style>\n#gap-1940684417 {\n  padding-top: 30px;\n}\n<\/style>\n\t<\/div>\n\t\n\n\t<div id=\"gap-789381552\" class=\"gap-element clearfix show-for-medium\" style=\"display:block; height:auto;\">\n\t\t\n<style>\n#gap-789381552 {\n  padding-top: 50px;\n}\n<\/style>\n\t<\/div>\n\t\n\n\n\n\n    <style>\n        :root {\n            --cta-theme: rgba(146, 21, 19, 1);\n            --cta-theme-dark: rgba(106, 14, 13, 1);\n            --cta-text: #222;\n            --cta-soft: #f8f5f4;\n            --cta-border: #eadfdd;\n        }\n\n        .cta-landing,\n        .cta-landing * {\n            box-sizing: border-box;\n        }\n\n        .cta-landing {\n            font-family: inherit;\n            color: var(--cta-text);\n            background: #fff;\n            overflow: hidden;\n        }\n\n        .cta-section {\n            padding: 70px 20px;\n        }\n\n        .cta-container {\n            width: 100%;\n            max-width: 1180px;\n            margin: 0 auto;\n        }\n\n        .cta-fly {\n            opacity: 0;\n            transform: translateY(34px);\n            transition: opacity 0.75s ease, transform 0.75s ease;\n            will-change: opacity, transform;\n        }\n\n        .cta-fly.cta-in-view {\n            opacity: 1;\n            transform: translateY(0);\n        }\n\n        .cta-fly-left {\n            opacity: 0;\n            transform: translateX(-38px);\n            transition: opacity 0.8s ease, transform 0.8s ease;\n            will-change: opacity, transform;\n        }\n\n        .cta-fly-right {\n            opacity: 0;\n            transform: translateX(38px);\n            transition: opacity 0.8s ease, transform 0.8s ease;\n            will-change: opacity, transform;\n        }\n\n        .cta-fly-left.cta-in-view,\n        .cta-fly-right.cta-in-view {\n            opacity: 1;\n            transform: translateX(0);\n        }\n\n        .cta-btn-small {\n            display: inline-block;\n            padding: 11px 24px;\n            border: 1px solid var(--cta-theme);\n            background: transparent;\n            color: var(--cta-theme) !important;\n            text-decoration: none;\n            font-weight: 700;\n            text-transform: uppercase;\n            letter-spacing: 0.04em;\n            margin-bottom: 25px;\n            transition: 0.3s ease;\n            border-radius: 0 !important;\n        }\n\n        .cta-btn-small:hover {\n            background: var(--cta-theme);\n            color: #fff !important;\n        }\n\n        .cta-about-grid {\n            display: grid;\n            grid-template-columns: 1.1fr 0.9fr;\n            gap: 45px;\n            align-items: center;\n        }\n\n        .cta-about-content h1 {\n            font-size: 42px;\n            line-height: 1.15;\n            margin: 0 0 22px;\n            color: #111;\n        }\n\n        .cta-about-content p {\n            font-size: 17px;\n            line-height: 1.85;\n            margin-bottom: 16px;\n        }\n\n        .cta-about-content strong {\n            color: var(--cta-theme);\n        }\n\n        .cta-about-image {\n            position: relative;\n            border: 1px solid var(--cta-border);\n            background: #fff;\n            padding: 12px;\n        }\n\n        .cta-about-image:before {\n            content: \"\";\n            position: absolute;\n            left: -14px;\n            top: 22px;\n            width: 70%;\n            height: calc(100% - 44px);\n            border: 2px solid var(--cta-theme);\n            z-index: 0;\n        }\n\n        .cta-about-image img {\n            position: relative;\n            z-index: 1;\n            width: 100%;\n            height: 520px;\n            object-fit: cover;\n            display: block;\n            border-radius: 0 !important;\n        }\n\n        .cta-contact-section {\n            background: var(--cta-soft);\n        }\n\n        .cta-section-title {\n            text-align: center;\n            margin-bottom: 35px;\n        }\n\n        .cta-section-title h2 {\n            font-size: 36px;\n            margin-bottom: 10px;\n            color: #111;\n        }\n\n        .cta-section-title h2:after {\n            content: \"\";\n            display: block;\n            width: 72px;\n            height: 3px;\n            background: var(--cta-theme);\n            margin: 14px auto 0;\n        }\n\n        .cta-section-title p {\n            max-width: 760px;\n            margin: 0 auto;\n            font-size: 16px;\n            line-height: 1.7;\n        }\n\n        .cta-consultation-layout {\n            display: grid;\n            grid-template-columns: 0.95fr 1.05fr;\n            gap: 28px;\n            align-items: stretch;\n        }\n\n        .cta-consultation-wrap {\n            background: #fff;\n            padding: 35px;\n            border: 1px solid var(--cta-border);\n            box-shadow: 0 15px 45px rgba(0,0,0,0.08);\n            border-radius: 0 !important;\n        }\n\n        .cta-consultation-wrap h3,\n        .cta-offices-panel h3 {\n            margin: 0 0 20px;\n            font-size: 25px;\n            color: #111;\n        }\n\n        .cta-consultation-wrap h3 span,\n        .cta-offices-panel h3 span {\n            color: var(--cta-theme);\n        }\n\n        .cta-form-row {\n            display: grid;\n            grid-template-columns: 1fr 1fr;\n            gap: 18px;\n        }\n\n        .cta-field {\n            margin-bottom: 18px;\n        }\n\n        .cta-field label {\n            display: block;\n            font-size: 14px;\n            font-weight: 700;\n            margin-bottom: 7px;\n            color: #222;\n        }\n\n        .cta-field input,\n        .cta-field textarea {\n            width: 100%;\n            border: 1px solid #ddd;\n            padding: 14px 15px;\n            font-size: 15px;\n            background: #fff;\n            color: #222;\n            border-radius: 0 !important;\n            outline: none;\n        }\n\n        .cta-field input:focus,\n        .cta-field textarea:focus {\n            border-color: var(--cta-theme);\n            box-shadow: 0 0 0 2px rgba(146, 21, 19, 0.08);\n        }\n\n        .cta-field textarea {\n            min-height: 130px;\n            resize: vertical;\n        }\n\n        .cta-submit-btn {\n            display: inline-block;\n            width: 100%;\n            border: none;\n            background: var(--cta-theme);\n            color: #fff;\n            padding: 15px 24px;\n            font-size: 15px;\n            font-weight: 800;\n            text-transform: uppercase;\n            letter-spacing: 0.04em;\n            cursor: pointer;\n            transition: 0.3s ease;\n            border-radius: 0 !important;\n        }\n\n        .cta-submit-btn:hover {\n            background: var(--cta-theme-dark);\n            color: #fff;\n        }\n\n        .cta-submit-btn:disabled {\n            opacity: 0.75;\n            cursor: wait;\n        }\n\n        .cta-form-message {\n            margin-top: 18px;\n            font-weight: 700;\n            display: none;\n        }\n\n        .cta-form-message.success {\n            color: #0a7a24;\n        }\n\n        .cta-form-message.error {\n            color: #b00020;\n        }\n\n        .cta-offices-panel {\n            background: #fff;\n            padding: 35px;\n            border: 1px solid var(--cta-border);\n            box-shadow: 0 15px 45px rgba(0,0,0,0.06);\n            border-radius: 0 !important;\n        }\n\n        .cta-offices-grid {\n            display: grid;\n            grid-template-columns: 1fr 1fr;\n            gap: 18px;\n        }\n\n        .cta-office-card {\n            background: #fff;\n            border: 1px solid var(--cta-border);\n            padding: 26px;\n            box-shadow: 0 10px 30px rgba(0,0,0,0.04);\n            border-radius: 0 !important;\n        }\n\n        .cta-office-card h4 {\n            margin: 0 0 14px;\n            font-size: 21px;\n            color: var(--cta-theme);\n        }\n\n        .cta-office-card p {\n            font-size: 16px;\n            line-height: 1.7;\n            margin-bottom: 18px;\n        }\n\n        .cta-whatsapp-link {\n            display: inline-block;\n            width: 100%;\n            background: var(--cta-theme);\n            color: #fff !important;\n            padding: 12px 14px;\n            font-weight: 800;\n            text-decoration: none;\n            text-align: center;\n            border-radius: 0 !important;\n            transition: 0.3s ease;\n        }\n\n        .cta-whatsapp-link:hover {\n            background: var(--cta-theme-dark);\n            color: #fff !important;\n        }\n\n        .cta-reviews-section {\n            background: #fff;\n            color: #222;\n        }\n\n        .cta-reviews-shell {\n            position: relative;\n        }\n\n        .cta-reviews-track {\n            display: flex;\n            gap: 24px;\n            overflow-x: auto;\n            overflow-y: hidden;\n            scroll-snap-type: x mandatory;\n            scroll-behavior: smooth;\n            scroll-padding-inline: 2px;\n            padding: 6px 2px 24px;\n            -webkit-overflow-scrolling: touch;\n            scrollbar-width: none;\n            cursor: grab;\n        }\n\n        .cta-reviews-track::-webkit-scrollbar {\n            display: none;\n        }\n\n        .cta-reviews-track:active {\n            cursor: grabbing;\n        }\n\n        .cta-review-card {\n            flex: 0 0 calc((100% - 24px) \/ 2);\n            scroll-snap-align: start;\n            background: #fff;\n            padding: 30px;\n            border: 1px solid var(--cta-border);\n            border-top: 5px solid var(--cta-theme);\n            box-shadow: 0 12px 35px rgba(146, 21, 19, 0.08);\n            border-radius: 0 !important;\n        }\n\n        .cta-stars {\n            color: #ffbf00;\n            font-size: 25px;\n            line-height: 1;\n            letter-spacing: 3px;\n            margin-bottom: 16px;\n            text-shadow: 0 1px 0 rgba(0,0,0,0.18);\n            font-weight: 900;\n        }\n\n        .cta-review-card h3 {\n            color: var(--cta-theme);\n            font-size: 19px;\n            line-height: 1.4;\n            margin: 0 0 15px;\n        }\n\n        .cta-review-card p {\n            color: #333;\n            line-height: 1.8;\n            font-size: 15px;\n            margin-bottom: 14px;\n        }\n\n        .cta-review-card strong {\n            color: #111;\n        }\n\n        .cta-review-dots {\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            gap: 9px;\n            margin-top: 2px;\n        }\n\n        .cta-review-dot {\n            width: 7px;\n            height: 7px;\n            padding: 0;\n            border: 1px solid var(--cta-theme);\n            background: transparent;\n            border-radius: 0 !important;\n            cursor: pointer;\n            transition: transform 0.25s ease, background 0.25s ease;\n        }\n\n        .cta-review-dot:hover,\n        .cta-review-dot.is-active {\n            background: var(--cta-theme);\n            transform: scale(1.15);\n        }\n\n        .cta-review-dot:focus-visible {\n            outline: 2px solid var(--cta-theme);\n            outline-offset: 3px;\n        }\n\n        @media (max-width: 1000px) {\n            .cta-consultation-layout {\n                grid-template-columns: 1fr;\n            }\n        }\n\n        @media (max-width: 850px) {\n            .cta-about-grid,\n            .cta-offices-grid,\n            .cta-form-row {\n                grid-template-columns: 1fr;\n            }\n\n            .cta-about-content h1 {\n                font-size: 32px;\n            }\n\n            .cta-about-image img {\n                height: 360px;\n            }\n\n            .cta-section {\n                padding: 50px 18px;\n            }\n\n            .cta-consultation-wrap,\n            .cta-offices-panel {\n                padding: 25px;\n            }\n\n            .cta-reviews-track {\n                padding-left: 7%;\n                padding-right: 7%;\n                scroll-padding-inline: 7%;\n            }\n\n            .cta-review-card {\n                flex-basis: 86%;\n                scroll-snap-align: center;\n            }\n        }\n\n        @media (max-width: 480px) {\n            .cta-section {\n                padding: 42px 14px;\n            }\n\n            .cta-about-content h1,\n            .cta-section-title h2 {\n                font-size: 28px;\n                line-height: 1.2;\n            }\n\n            .cta-about-content p,\n            .cta-section-title p,\n            .cta-office-card p,\n            .cta-review-card p {\n                font-size: 15px;\n                line-height: 1.7;\n            }\n\n            .cta-consultation-wrap,\n            .cta-offices-panel,\n            .cta-office-card,\n            .cta-review-card {\n                padding: 22px;\n            }\n\n            .cta-about-image {\n                padding: 8px;\n            }\n\n            .cta-about-image:before {\n                left: -8px;\n                top: 16px;\n                height: calc(100% - 32px);\n            }\n\n            .cta-about-image img {\n                height: 280px;\n            }\n\n            .cta-whatsapp-link {\n                width: 100%;\n                text-align: center;\n                padding: 13px 12px;\n            }\n\n            .cta-btn-small {\n                width: 100%;\n                text-align: center;\n            }\n\n            .cta-reviews-track {\n                padding-left: 6%;\n                padding-right: 6%;\n                scroll-padding-inline: 6%;\n            }\n\n            .cta-review-card {\n                flex-basis: 88%;\n                scroll-snap-align: center;\n            }\n\n            .cta-stars {\n                font-size: 23px;\n                letter-spacing: 2px;\n            }\n        }\n\n        @media (prefers-reduced-motion: reduce) {\n            .cta-fly,\n            .cta-fly-left,\n            .cta-fly-right {\n                opacity: 1;\n                transform: none;\n                transition: none;\n            }\n\n            .cta-reviews-track {\n                scroll-behavior: auto;\n            }\n        }\n    <\/style>\n\n    <div class=\"cta-landing\">\n\n        <!-- ABOUT SECTION -->\n        <section id=\"about\" class=\"cta-section\">\n            <div class=\"cta-container\">\n                <div class=\"cta-about-grid\">\n\n                    <div class=\"cta-about-content cta-fly-left\">\n                        <a href=\"https:\/\/ctattorneys.co.za\/?page_id=33\" class=\"cta-btn-small\">About Us<\/a>\n\n                        <h1>Welcome to Clementina Thai Attorneys<\/h1>\n\n                        <p>\n                            <strong>CTA<\/strong> is a full-service law firm in Johannesburg with satellite offices.\n                            We provide affordable and reliable legal services to clients and corporates.\n                        <\/p>\n\n                        <p>\n                            We offer a wide range of legal services in \n                            <strong>Contract Law, Civil and Criminal Litigation, Labour Disputes,\n                            Family Law related issues including Divorce and Maintenance, Personal Injury and Road Accident Fund matters.<\/strong>\n                        <\/p>\n                    <\/div>\n\n                    <div class=\"cta-about-image cta-fly-right\">\n                        <img decoding=\"async\" src=\"https:\/\/ctattorneys.co.za\/wp-content\/uploads\/2026\/06\/190.jpg\" alt=\"Law court, law office or lady justice\">\n                    <\/div>\n\n                <\/div>\n            <\/div>\n        <\/section>\n\n\n        <!-- CONSULTATION + OFFICES -->\n        <section id=\"book-consultation\" class=\"cta-section cta-contact-section\">\n            <div class=\"cta-container\">\n\n                <div class=\"cta-consultation-layout\">\n\n                    <div class=\"cta-consultation-wrap cta-fly-left\">\n                        <h3>Book <span>Consultation<\/span><\/h3>\n\n                        <form id=\"cta-consultation-form\">\n\n                            <input type=\"hidden\" name=\"action\" value=\"cta_send_consultation_form\">\n                            <input type=\"hidden\" name=\"security\" value=\"48631854b9\">\n\n                            <div class=\"cta-form-row\">\n                                <div class=\"cta-field\">\n                                    <label for=\"cta_name\">Full Name<\/label>\n                                    <input type=\"text\" id=\"cta_name\" name=\"name\" required>\n                                <\/div>\n\n                                <div class=\"cta-field\">\n                                    <label for=\"cta_email\">Email Address<\/label>\n                                    <input type=\"email\" id=\"cta_email\" name=\"email\" required>\n                                <\/div>\n                            <\/div>\n\n                            <div class=\"cta-field\">\n                                <label for=\"cta_phone\">Cell Number<\/label>\n                                <input type=\"tel\" id=\"cta_phone\" name=\"phone\" required>\n                            <\/div>\n\n                            <div class=\"cta-field\">\n                                <label for=\"cta_issue\">Legal Issue<\/label>\n                                <textarea id=\"cta_issue\" name=\"issue\" required><\/textarea>\n                            <\/div>\n\n                            <button type=\"submit\" class=\"cta-submit-btn\">Send Consultation Request<\/button>\n\n                            <div id=\"cta-form-message\" class=\"cta-form-message\"><\/div>\n\n                        <\/form>\n                    <\/div>\n\n\n                    <div class=\"cta-offices-panel cta-fly-right\">\n                        <h3>Visit Our <span>Offices<\/span><\/h3>\n\n                        <div class=\"cta-offices-grid\">\n\n                            <div class=\"cta-office-card\">\n                                <h4>Johannesburg Office<\/h4>\n                                <p>\n                                    22 Toby Street<br>\n                                    Westdene<br>\n                                    Johannesburg\n                                <\/p>\n                                <a class=\"cta-whatsapp-link\" href=\"https:\/\/wa.me\/27817698864\" target=\"_blank\" rel=\"noopener\">\n                                    +27 81 769 8864\n                                <\/a>\n                            <\/div>\n\n                            <div class=\"cta-office-card\">\n                                <h4>Rustenburg Office<\/h4>\n                                <p>\n                                    214 Beyer Naude Drive<br>\n                                    Ground Floor<br>\n                                    Rustenburg CBD\n                                <\/p>\n                                <a class=\"cta-whatsapp-link\" href=\"https:\/\/wa.me\/27752842521\" target=\"_blank\" rel=\"noopener\">\n                                    +27 75 284 2521\n                                <\/a>\n                            <\/div>\n\n                        <\/div>\n                    <\/div>\n\n                <\/div>\n\n            <\/div>\n        <\/section>\n\n\n        <!-- REVIEWS -->\n        <section id=\"client-reviews\" class=\"cta-section cta-reviews-section\">\n            <div class=\"cta-container\">\n\n                <div class=\"cta-section-title cta-fly\">\n                    <h2>Client Reviews<\/h2>\n                <\/div>\n\n                <div class=\"cta-reviews-shell cta-fly\">\n                    <div class=\"cta-reviews-track\" id=\"cta-reviews-track\">\n\n                        <div class=\"cta-review-card\">\n                            <h3>Review by Ms Susan Phungula \u2013 Contested Divorce Matter<\/h3>\n\n                            <div class=\"cta-stars\" aria-label=\"5 stars\">\u2605\u2605\u2605\u2605\u2605<\/div>\n\n                            <p>\n                                \u201cI would like to express my sincere gratitude to Clementina Thai Attorneys\n                                for their exceptional handling of my contested divorce matter. Throughout\n                                the process, the firm demonstrated professionalism, compassion, and a\n                                thorough understanding of family law.\u201d\n                            <\/p>\n\n                            <p><strong>\u2014 Susan Phungula<\/strong><\/p>\n                        <\/div>\n\n\n                        <div class=\"cta-review-card\">\n                            <h3>Review by Imizizi (Pty) Ltd \u2013 Contract Management Services<\/h3>\n\n                            <div class=\"cta-stars\" aria-label=\"5 stars\">\u2605\u2605\u2605\u2605\u2605<\/div>\n\n                            <p>\n                                \u201cImizizi (Pty) Ltd has benefited greatly from the contract management\n                                services provided by Clementina Thai Attorneys. The firm\u2019s attention to\n                                detail, commercial insight, and proactive approach have significantly\n                                strengthened our contractual processes and reduced legal risks. Their\n                                advice is always practical, timely, and tailored to our business needs.\n                                We value our professional relationship with the firm and highly recommend\n                                their corporate legal services.\u201d\n                            <\/p>\n\n                            <p><strong>\u2014 CEO - Imizizi (Pty) Ltd<\/strong><\/p>\n                        <\/div>\n\n\n                        <div class=\"cta-review-card\">\n                            <h3>Review by Mr Kenneth Zila \u2013 Unlawful Termination and Reinstatement<\/h3>\n\n                            <div class=\"cta-stars\" aria-label=\"5 stars\">\u2605\u2605\u2605\u2605\u2605<\/div>\n\n                            <p>\n                                \u201cAfter being unlawfully dismissed from my employment, I turned to\n                                Clementina Thai Attorneys for assistance. Their legal team handled my\n                                matter with confidence and determination, ensuring that my rights were\n                                protected throughout the process. Thanks to their expertise and dedication,\n                                I was successfully reinstated to my position.\u201d\n                            <\/p>\n\n                            <p><strong>\u2014 Kenneth Zila<\/strong><\/p>\n                        <\/div>\n\n\n                        <div class=\"cta-review-card\">\n                            <h3>Review by EeziServ (Pty) Ltd \u2013 Disciplinary Hearing Chairperson<\/h3>\n\n                            <div class=\"cta-stars\" aria-label=\"5 stars\">\u2605\u2605\u2605\u2605\u2605<\/div>\n\n                            <p>\n                                \u201cClementina Thai Attorneys provided independent and professional chairing\n                                services for one of our company disciplinary hearings. The hearing was\n                                conducted fairly, impartially, and in accordance with all applicable labour\n                                law requirements. Their ability to manage the process efficiently while\n                                ensuring procedural fairness gave all parties confidence in the outcome.\n                                We highly recommend their labour law and workplace dispute management services.\u201d\n                            <\/p>\n\n                            <p><strong>\u2014 EeziServ (Pty) Ltd<\/strong><\/p>\n                        <\/div>\n\n\n                        <div class=\"cta-review-card\">\n                            <h3>Review by Mrs K. Vanderwalt \u2013 Children\u2019s Maintenance Claim<\/h3>\n\n                            <div class=\"cta-stars\" aria-label=\"5 stars\">\u2605\u2605\u2605\u2605\u2605<\/div>\n\n                            <p>\n                                \u201cI am extremely pleased with the legal services I received from Clementina\n                                Thai Attorneys in relation to my children\u2019s maintenance claim. The firm\n                                handled my case with professionalism, empathy, and determination, ensuring\n                                that my children\u2019s best interests remained the priority throughout.\u201d\n                            <\/p>\n\n                            <p><strong>\u2014 K. Vanderwalt<\/strong><\/p>\n                        <\/div>\n\n                    <\/div>\n\n                    <div\n                        class=\"cta-review-dots\"\n                        id=\"cta-review-dots\"\n                        aria-label=\"Review slider navigation\">\n                    <\/div>\n                <\/div>\n\n            <\/div>\n        <\/section>\n\n    <\/div>\n\n\n    <script>\n    document.addEventListener('DOMContentLoaded', function() {\n        const form = document.getElementById('cta-consultation-form');\n        const messageBox = document.getElementById('cta-form-message');\n\n        if (form) {\n            form.addEventListener('submit', function(e) {\n                e.preventDefault();\n\n                const submitBtn = form.querySelector('.cta-submit-btn');\n\n                messageBox.style.display = 'block';\n                messageBox.className = 'cta-form-message';\n                messageBox.textContent = 'Sending your consultation request...';\n\n                if (submitBtn) {\n                    submitBtn.disabled = true;\n                    submitBtn.textContent = 'Sending...';\n                }\n\n                const formData = new FormData(form);\n\n                fetch('https:\/\/ctattorneys.co.za\/wp-admin\/admin-ajax.php', {\n                    method: 'POST',\n                    body: formData\n                })\n                .then(response => response.json())\n                .then(data => {\n                    if (data.success) {\n                        messageBox.className = 'cta-form-message success';\n                        messageBox.textContent = data.data.message;\n\n                        form.reset();\n\n                        \/**\n                         * Google Ads conversion fires only after successful form submission.\n                         *\/\n                        if (typeof gtag === 'function') {\n                            gtag('event', 'conversion', {\n                                'send_to': 'AW-985162091\/A5_VCJ7WxbgcEOvC4dUD'\n                            });\n                        }\n\n                    } else {\n                        messageBox.className = 'cta-form-message error';\n                        messageBox.textContent =\n                            data.data.message ||\n                            'Something went wrong. Please try again.';\n                    }\n                })\n                .catch(() => {\n                    messageBox.className = 'cta-form-message error';\n                    messageBox.textContent =\n                        'Something went wrong. Please try again.';\n                })\n                .finally(() => {\n                    if (submitBtn) {\n                        submitBtn.disabled = false;\n                        submitBtn.textContent = 'Send Consultation Request';\n                    }\n                });\n            });\n        }\n\n\n        \/**\n         * Fly-in animation on scroll.\n         *\/\n        const animatedItems = document.querySelectorAll(\n            '.cta-fly, .cta-fly-left, .cta-fly-right'\n        );\n\n        if ('IntersectionObserver' in window) {\n            const observer = new IntersectionObserver(function(entries) {\n                entries.forEach(function(entry) {\n                    if (entry.isIntersecting) {\n                        entry.target.classList.add('cta-in-view');\n                        observer.unobserve(entry.target);\n                    }\n                });\n            }, {\n                threshold: 0.18\n            });\n\n            animatedItems.forEach(function(item) {\n                observer.observe(item);\n            });\n        } else {\n            animatedItems.forEach(function(item) {\n                item.classList.add('cta-in-view');\n            });\n        }\n\n\n        \/**\n         * Reviews horizontal auto-scroll.\n         * Auto-scroll always moves forward.\n         * Manual interaction pauses it briefly.\n         * Slider squares allow direct navigation.\n         *\/\n        const reviewsTrack = document.getElementById('cta-reviews-track');\n        const reviewDotsWrap = document.getElementById('cta-review-dots');\n\n        if (reviewsTrack && reviewDotsWrap) {\n            const reviewCards = Array.from(\n                reviewsTrack.querySelectorAll('.cta-review-card')\n            );\n\n            let autoScrollTimer = null;\n            let resumeTimer = null;\n            let scrollEndTimer = null;\n            let isPointerDown = false;\n            let startX = 0;\n            let startScrollLeft = 0;\n            let currentIndex = 0;\n\n            const pauseDuration = 9000;\n\n            function getReviewScrollLeft(card) {\n                if (window.matchMedia('(max-width: 850px)').matches) {\n                    return Math.max(\n                        0,\n                        card.offsetLeft -\n                        ((reviewsTrack.clientWidth - card.offsetWidth) \/ 2)\n                    );\n                }\n\n                return Math.max(0, card.offsetLeft);\n            }\n\n            function setActiveDot(index) {\n                currentIndex = Math.max(\n                    0,\n                    Math.min(index, reviewCards.length - 1)\n                );\n\n                reviewDotsWrap\n                    .querySelectorAll('.cta-review-dot')\n                    .forEach(function(dot, dotIndex) {\n                        const isActive = dotIndex === currentIndex;\n\n                        dot.classList.toggle('is-active', isActive);\n                        dot.setAttribute(\n                            'aria-current',\n                            isActive ? 'true' : 'false'\n                        );\n                    });\n            }\n\n            function goToReview(index, smooth = true) {\n                if (!reviewCards.length) {\n                    return;\n                }\n\n                const safeIndex = Math.max(\n                    0,\n                    Math.min(index, reviewCards.length - 1)\n                );\n\n                reviewsTrack.scrollTo({\n                    left: getReviewScrollLeft(reviewCards[safeIndex]),\n                    behavior: smooth ? 'smooth' : 'auto'\n                });\n\n                setActiveDot(safeIndex);\n            }\n\n            function findNearestReview() {\n                const viewportCenter =\n                    reviewsTrack.scrollLeft +\n                    (reviewsTrack.clientWidth \/ 2);\n\n                let nearestIndex = 0;\n                let nearestDistance = Infinity;\n\n                reviewCards.forEach(function(card, index) {\n                    const cardCenter =\n                        card.offsetLeft +\n                        (card.offsetWidth \/ 2);\n\n                    const distance = Math.abs(\n                        cardCenter - viewportCenter\n                    );\n\n                    if (distance < nearestDistance) {\n                        nearestDistance = distance;\n                        nearestIndex = index;\n                    }\n                });\n\n                return nearestIndex;\n            }\n\n            reviewCards.forEach(function(card, index) {\n                const dot = document.createElement('button');\n\n                dot.type = 'button';\n                dot.className = 'cta-review-dot';\n                dot.setAttribute(\n                    'aria-label',\n                    'Show review ' + (index + 1)\n                );\n\n                dot.addEventListener('click', function() {\n                    pauseThenResume();\n                    goToReview(index, true);\n                });\n\n                reviewDotsWrap.appendChild(dot);\n            });\n\n            function startAutoScroll() {\n                stopAutoScroll();\n\n                autoScrollTimer = setInterval(function() {\n                    if (!reviewCards.length) {\n                        return;\n                    }\n\n                    if (currentIndex >= reviewCards.length - 1) {\n                        \/*\n                         * Reset instantly, then continue forward.\n                         * This avoids a visible animated backward slide.\n                         *\/\n                        goToReview(0, false);\n                    } else {\n                        goToReview(currentIndex + 1, true);\n                    }\n                }, 5000);\n            }\n\n            function stopAutoScroll() {\n                if (autoScrollTimer) {\n                    clearInterval(autoScrollTimer);\n                    autoScrollTimer = null;\n                }\n            }\n\n            function pauseThenResume() {\n                stopAutoScroll();\n\n                if (resumeTimer) {\n                    clearTimeout(resumeTimer);\n                }\n\n                resumeTimer = setTimeout(function() {\n                    currentIndex = findNearestReview();\n                    setActiveDot(currentIndex);\n                    startAutoScroll();\n                }, pauseDuration);\n            }\n\n            reviewsTrack.addEventListener(\n                'wheel',\n                pauseThenResume,\n                { passive: true }\n            );\n\n            reviewsTrack.addEventListener(\n                'touchstart',\n                pauseThenResume,\n                { passive: true }\n            );\n\n            reviewsTrack.addEventListener(\n                'scroll',\n                function() {\n                    if (scrollEndTimer) {\n                        clearTimeout(scrollEndTimer);\n                    }\n\n                    scrollEndTimer = setTimeout(function() {\n                        setActiveDot(findNearestReview());\n                    }, 90);\n                },\n                { passive: true }\n            );\n\n            reviewsTrack.addEventListener('mousedown', function(e) {\n                isPointerDown = true;\n                startX = e.pageX - reviewsTrack.offsetLeft;\n                startScrollLeft = reviewsTrack.scrollLeft;\n\n                pauseThenResume();\n            });\n\n            reviewsTrack.addEventListener('mouseleave', function() {\n                isPointerDown = false;\n            });\n\n            reviewsTrack.addEventListener('mouseup', function() {\n                isPointerDown = false;\n                setActiveDot(findNearestReview());\n            });\n\n            reviewsTrack.addEventListener('mousemove', function(e) {\n                if (!isPointerDown) {\n                    return;\n                }\n\n                e.preventDefault();\n\n                const x = e.pageX - reviewsTrack.offsetLeft;\n                const walk = (x - startX) * 1.4;\n\n                reviewsTrack.scrollLeft = startScrollLeft - walk;\n            });\n\n            setActiveDot(0);\n            startAutoScroll();\n        }\n    });\n    <\/script>\n\n    \n\n\n\t<div id=\"gap-1053076127\" class=\"gap-element clearfix hidden\" style=\"display:block; height:auto;\">\n\t\t\n<style>\n#gap-1053076127 {\n  padding-top: 30px;\n}\n<\/style>\n\t<\/div>\n\t\n\n\t<div id=\"text-3896893991\" class=\"text hidden\">\n\t\t\n\n<h1>Our <span data-text-color=\"primary\"><strong>Legal Services<\/strong><\/span><\/h1>\n\t\t\n<style>\n#text-3896893991 {\n  line-height: 0.75;\n  text-align: center;\n}\n<\/style>\n\t<\/div>\n\t\n  <div class=\"banner-grid-wrapper\">\n  <div id=\"banner-grid-136540459\" class=\"banner-grid row row-grid hidden row-small\" data-packery-options=\"\">\n                      \n\n<div class=\"col grid-col small-12 large-3 grid-col-1\" ><div class=\"col-inner\">\n\n\n  <div class=\"banner has-hover bg-blur\" id=\"banner-313606956\">\n          <div class=\"banner-inner fill\">\n        <div class=\"banner-bg fill\" >\n            <div class=\"bg fill bg-fill \"><\/div>\n                        <div class=\"overlay\"><\/div>            \n                    <\/div>\n\t\t\n        <div class=\"banner-layers container\">\n            <a class=\"fill\" href=\"https:\/\/ctattorneys.co.za\/?page_id=37\/#section1\" ><div class=\"fill banner-link\"><\/div><\/a>            \n\n   <div id=\"text-box-527996644\" class=\"text-box banner-layer x50 md-x50 lg-x50 y50 md-y50 lg-y50 res-text\">\n                                <div class=\"text-box-content text dark\">\n              \n              <div class=\"text-inner text-center\">\n                  \n\n\t<div id=\"text-803345631\" class=\"text\">\n\t\t\n\n<h4 class=\"uppercase\"><strong>Contracts and negotiations<\/strong><\/h4>\n\t\t\n<style>\n#text-803345631 {\n  font-size: 0.75rem;\n}\n<\/style>\n\t<\/div>\n\t\n\n              <\/div>\n           <\/div>\n                            \n<style>\n#text-box-527996644 {\n  width: 100%;\n}\n#text-box-527996644 .text-box-content {\n  font-size: 187%;\n}\n@media (min-width:550px) {\n  #text-box-527996644 {\n    width: 70%;\n  }\n}\n<\/style>\n    <\/div>\n \n\n        <\/div>\n      <\/div>\n\n            \n<style>\n#banner-313606956 {\n  padding-top: 500px;\n}\n#banner-313606956 .bg.bg-loaded {\n  background-image: url(https:\/\/ctattorneys.co.za\/wp-content\/uploads\/2025\/08\/Asset-4-100t.jpg);\n}\n#banner-313606956 .overlay {\n  background-color: rgba(21, 11, 11, 0.663);\n}\n#banner-313606956 .bg {\n  background-position: 44% 100%;\n}\n<\/style>\n  <\/div>\n\n\n\n<\/div><\/div>\n<div class=\"col grid-col large-6 grid-col-1-2\" ><div class=\"col-inner\">\n\n\n  <div class=\"banner has-hover bg-blur\" id=\"banner-1607962692\">\n          <div class=\"banner-inner fill\">\n        <div class=\"banner-bg fill\" >\n            <div class=\"bg fill bg-fill \"><\/div>\n                        <div class=\"overlay\"><\/div>            \n                    <\/div>\n\t\t\n        <div class=\"banner-layers container\">\n            <a class=\"fill\" href=\"https:\/\/ctattorneys.co.za\/?page_id=37\" ><div class=\"fill banner-link\"><\/div><\/a>            \n\n   <div id=\"text-box-1160151056\" class=\"text-box banner-layer x50 md-x50 lg-x50 y50 md-y50 lg-y50 res-text\">\n                                <div class=\"text-box-content text dark\">\n              \n              <div class=\"text-inner text-center\">\n                  \n\n<h3 class=\"uppercase\"><strong>civil disputes and litigation<\/strong><\/h3>\n\n              <\/div>\n           <\/div>\n                            \n<style>\n#text-box-1160151056 {\n  width: 100%;\n}\n#text-box-1160151056 .text-box-content {\n  font-size: 100%;\n}\n@media (min-width:550px) {\n  #text-box-1160151056 {\n    width: 40%;\n  }\n}\n<\/style>\n    <\/div>\n \n\n        <\/div>\n      <\/div>\n\n            \n<style>\n#banner-1607962692 {\n  padding-top: 500px;\n}\n#banner-1607962692 .bg.bg-loaded {\n  background-image: url(https:\/\/ctattorneys.co.za\/wp-content\/uploads\/2025\/08\/Asset-5-100t.jpg);\n}\n#banner-1607962692 .overlay {\n  background-color: rgba(0, 0, 0, 0.58);\n}\n<\/style>\n  <\/div>\n\n\n\n<\/div><\/div>\n<div class=\"col grid-col large-6 grid-col-1-2\" ><div class=\"col-inner\">\n\n\n  <div class=\"banner has-hover bg-glow bg-blur\" id=\"banner-1635489465\">\n          <div class=\"banner-inner fill\">\n        <div class=\"banner-bg fill\" >\n            <div class=\"bg fill bg-fill \"><\/div>\n                        <div class=\"overlay\"><\/div>            \n                    <\/div>\n\t\t\n        <div class=\"banner-layers container\">\n            <a class=\"fill\" href=\"https:\/\/ctattorneys.co.za\/?page_id=37\/#section3\" ><div class=\"fill banner-link\"><\/div><\/a>            \n\n   <div id=\"text-box-1099818230\" class=\"text-box banner-layer x50 md-x50 lg-x50 y50 md-y50 lg-y50 res-text\">\n                                <div class=\"text-box-content text dark\">\n              \n              <div class=\"text-inner text-center\">\n                  \n\n<h3 class=\"uppercase\"><strong>bail application assistance<\/strong><\/h3>\n<p>\u00a0<\/p>\n\n              <\/div>\n           <\/div>\n                            \n<style>\n#text-box-1099818230 {\n  width: 100%;\n}\n#text-box-1099818230 .text-box-content {\n  font-size: 100%;\n}\n@media (min-width:550px) {\n  #text-box-1099818230 {\n    width: 40%;\n  }\n}\n<\/style>\n    <\/div>\n \n\n        <\/div>\n      <\/div>\n\n            \n<style>\n#banner-1635489465 {\n  padding-top: 500px;\n}\n#banner-1635489465 .bg.bg-loaded {\n  background-image: url(https:\/\/ctattorneys.co.za\/wp-content\/uploads\/2025\/08\/Asset-7-100t.jpg);\n}\n#banner-1635489465 .overlay {\n  background-color: rgba(0, 0, 0, 0.58);\n}\n<\/style>\n  <\/div>\n\n\n\n<\/div><\/div>\n<div class=\"col grid-col small-6 large-3 grid-col-1-2\" ><div class=\"col-inner\">\n\n\n  <div class=\"banner has-hover bg-blur bg-overlay-add\" id=\"banner-2014820554\">\n          <div class=\"banner-inner fill\">\n        <div class=\"banner-bg fill\" >\n            <div class=\"bg fill bg-fill \"><\/div>\n                        <div class=\"overlay\"><\/div>            \n                    <\/div>\n\t\t\n        <div class=\"banner-layers container\">\n            <a class=\"fill\" href=\"https:\/\/ctattorneys.co.za\/?page_id=37\/#section4\" ><div class=\"fill banner-link\"><\/div><\/a>            \n\n   <div id=\"text-box-2085639136\" class=\"text-box banner-layer x50 md-x50 lg-x50 y50 md-y50 lg-y50 res-text\">\n                                <div class=\"text-box-content text dark\">\n              \n              <div class=\"text-inner text-center\">\n                  \n\n<h3 class=\"uppercase\"><strong>criminal matters<\/strong><\/h3>\n\n              <\/div>\n           <\/div>\n                            \n<style>\n#text-box-2085639136 {\n  width: 100%;\n}\n#text-box-2085639136 .text-box-content {\n  font-size: 100%;\n}\n@media (min-width:550px) {\n  #text-box-2085639136 {\n    width: 40%;\n  }\n}\n<\/style>\n    <\/div>\n \n\n        <\/div>\n      <\/div>\n\n            \n<style>\n#banner-2014820554 {\n  padding-top: 500px;\n}\n#banner-2014820554 .bg.bg-loaded {\n  background-image: url(https:\/\/ctattorneys.co.za\/wp-content\/uploads\/2025\/08\/Asset-6-100t.jpg);\n}\n#banner-2014820554 .overlay {\n  background-color: rgba(0, 0, 0, 0.58);\n}\n<\/style>\n  <\/div>\n\n\n\n<\/div><\/div>\n<div class=\"col grid-col small-6 large-3 grid-col-1-2\" ><div class=\"col-inner\">\n\n\n  <div class=\"banner has-hover bg-blur\" id=\"banner-1725604407\">\n          <div class=\"banner-inner fill\">\n        <div class=\"banner-bg fill\" >\n            <div class=\"bg fill bg-fill \"><\/div>\n                        <div class=\"overlay\"><\/div>            \n                    <\/div>\n\t\t\n        <div class=\"banner-layers container\">\n            <a class=\"fill\" href=\"https:\/\/ctattorneys.co.za\/?page_id=37\/#section5\" ><div class=\"fill banner-link\"><\/div><\/a>            \n\n   <div id=\"text-box-1395161100\" class=\"text-box banner-layer x50 md-x50 lg-x50 y50 md-y50 lg-y50 res-text\">\n                                <div class=\"text-box-content text dark\">\n              \n              <div class=\"text-inner text-center\">\n                  \n\n\t<div id=\"text-4263632577\" class=\"text\">\n\t\t\n\n<h4 class=\"uppercase\"><strong>employment and labour disputes<\/strong><\/h4>\n<p>\u00a0<\/p>\n\t\t\n<style>\n#text-4263632577 {\n  font-size: 0.75rem;\n}\n<\/style>\n\t<\/div>\n\t\n\n              <\/div>\n           <\/div>\n                            \n<style>\n#text-box-1395161100 {\n  width: 97%;\n}\n#text-box-1395161100 .text-box-content {\n  font-size: 100%;\n}\n@media (min-width:550px) {\n  #text-box-1395161100 {\n    width: 40%;\n  }\n}\n<\/style>\n    <\/div>\n \n\n        <\/div>\n      <\/div>\n\n            \n<style>\n#banner-1725604407 {\n  padding-top: 500px;\n}\n#banner-1725604407 .bg.bg-loaded {\n  background-image: url(https:\/\/ctattorneys.co.za\/wp-content\/uploads\/2025\/08\/Asset-8-100t.jpg);\n}\n#banner-1725604407 .overlay {\n  background-color: rgba(0, 0, 0, 0.535);\n}\n<\/style>\n  <\/div>\n\n\n\n<\/div><\/div>\n\n            <\/div>\n    <style>\n    #banner-grid-136540459 .grid-col-1{height: 600px}\n    #banner-grid-136540459 .grid-col-1-2{height: 300px}\n    #banner-grid-136540459 .grid-col-1-3{height:200px}\n    #banner-grid-136540459 .grid-col-2-3{height: 400px}\n    #banner-grid-136540459 .grid-col-1-4{height: 150px}\n    #banner-grid-136540459 .grid-col-3-4{height: 450px}\n\n\n    \n    \n\n  <\/style>\n    <\/div>\n  \n\n\t<div id=\"gap-681580223\" class=\"gap-element clearfix hidden\" style=\"display:block; height:auto;\">\n\t\t\n<style>\n#gap-681580223 {\n  padding-top: 30px;\n}\n<\/style>\n\t<\/div>\n\t\n\n\n\n\n\n<head>\n    <style>\n        html {\n            scroll-behavior: smooth;\n        }\n    <\/style>\n<\/head>\n<body>\n    <button onclick=\"scrollToSection('#section2')\"><\/button>\n\n    <!-- Content of the page -->\n    <section id=\"section2\">\n        \n\n    <!-- JavaScript code -->\n    <script>\n        function scrollToSection(sectionId) {\n            document.querySelector(sectionId).scrollIntoView({ behavior: 'smooth' });\n        }\n    <\/script>\n<\/body>\n\n\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"page-transparent-header.php","meta":{"footnotes":""},"class_list":["post-31","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/ctattorneys.co.za\/index.php?rest_route=\/wp\/v2\/pages\/31","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ctattorneys.co.za\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/ctattorneys.co.za\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/ctattorneys.co.za\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ctattorneys.co.za\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=31"}],"version-history":[{"count":62,"href":"https:\/\/ctattorneys.co.za\/index.php?rest_route=\/wp\/v2\/pages\/31\/revisions"}],"predecessor-version":[{"id":349,"href":"https:\/\/ctattorneys.co.za\/index.php?rest_route=\/wp\/v2\/pages\/31\/revisions\/349"}],"wp:attachment":[{"href":"https:\/\/ctattorneys.co.za\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=31"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}