{"id":5064,"date":"2025-02-04T14:37:45","date_gmt":"2025-02-04T14:37:45","guid":{"rendered":"https:\/\/3at.ma\/?page_id=5064"},"modified":"2025-02-04T14:41:11","modified_gmt":"2025-02-04T14:41:11","slug":"beaulieu","status":"publish","type":"page","link":"https:\/\/3at.ma\/index.php\/en\/beaulieu\/","title":{"rendered":"BEAULIEU"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"5064\" class=\"elementor elementor-5064\">\n\t\t\t\t<div class=\"elementor-element elementor-element-70c890c e-con-full e-flex e-con e-parent\" data-id=\"70c890c\" data-element_type=\"container\">\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-e4b69c4 e-con-full e-flex e-con e-parent\" data-id=\"e4b69c4\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-a47e4bf e-flex e-con-boxed e-con e-parent\" data-id=\"a47e4bf\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-bd73abc elementor-widget elementor-widget-heading\" data-id=\"bd73abc\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\"> BEAULIEU<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-44ea6d4 elementor-widget elementor-widget-text-editor\" data-id=\"44ea6d4\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>A housing block that provided an opportunity to experiment with various structural and aesthetic innovations. The project stands out for its commitment to collective quality of life. It offers a variety of thoughtfully designed living spaces, including a gym, indoor and outdoor pools, a children&rsquo;s club, and a series of gardens.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-37be365 elementor-hidden-mobile e-flex e-con-boxed e-con e-parent\" data-id=\"37be365\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-e673f0f e-con-full e-flex e-con e-child\" data-id=\"e673f0f\" data-element_type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-491b960 e-con-full e-flex e-con e-child\" data-id=\"491b960\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-50869df elementor-widget elementor-widget-text-editor\" data-id=\"50869df\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Location<br \/>Year<br \/>Program<br \/>Construction Cost<br \/>Client<br \/>Status<\/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<div class=\"elementor-element elementor-element-51e41a9 e-con-full e-flex e-con e-child\" data-id=\"51e41a9\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-837a870 elementor-widget elementor-widget-text-editor\" data-id=\"837a870\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Zenata &#8211; MAROC<br \/>2014<br \/>R\u00e9sidence ferm\u00e9e<br \/>250.000.000<br \/>Groupe ALLALI<br \/>Ongoing construction<\/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\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-bf1747d e-grid elementor-hidden-desktop elementor-hidden-tablet e-con-boxed e-con e-parent\" data-id=\"bf1747d\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-26de9c9 elementor-widget elementor-widget-text-editor\" data-id=\"26de9c9\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Location<br \/>Year<br \/>Program<br \/>Construction Cost<br \/>Client<br \/>Status<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4cf225e elementor-widget elementor-widget-text-editor\" data-id=\"4cf225e\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Zenata &#8211; MAROC<br \/>2014<br \/>R\u00e9sidence ferm\u00e9e<br \/>250.000.000<br \/>Groupe ALLALI<br \/>Ongoing\u00a0<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-14d446f e-flex e-con-boxed e-con e-parent\" data-id=\"14d446f\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f5c7e19 elementor-widget elementor-widget-image\" data-id=\"f5c7e19\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"2560\" height=\"1495\" src=\"https:\/\/3at.ma\/wp-content\/uploads\/2024\/08\/Beaulieu-3AT-9-scaled.jpg\" class=\"attachment-full size-full wp-image-3236\" alt=\"\" srcset=\"https:\/\/3at.ma\/wp-content\/uploads\/2024\/08\/Beaulieu-3AT-9-scaled.jpg 2560w, https:\/\/3at.ma\/wp-content\/uploads\/2024\/08\/Beaulieu-3AT-9-300x175.jpg 300w, https:\/\/3at.ma\/wp-content\/uploads\/2024\/08\/Beaulieu-3AT-9-1024x598.jpg 1024w, https:\/\/3at.ma\/wp-content\/uploads\/2024\/08\/Beaulieu-3AT-9-768x448.jpg 768w, https:\/\/3at.ma\/wp-content\/uploads\/2024\/08\/Beaulieu-3AT-9-1536x897.jpg 1536w, https:\/\/3at.ma\/wp-content\/uploads\/2024\/08\/Beaulieu-3AT-9-2048x1196.jpg 2048w\" sizes=\"(max-width: 2560px) 100vw, 2560px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-afa7ff2 e-flex e-con-boxed e-con e-parent\" data-id=\"afa7ff2\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-159554b e-con-full e-flex e-con e-child\" data-id=\"159554b\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-6b2dc1a e-con-full e-flex e-con e-child\" data-id=\"6b2dc1a\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-0a209f3 e-flex e-con-boxed e-con e-parent\" data-id=\"0a209f3\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-d705dbc e-con-full e-flex e-con e-child\" data-id=\"d705dbc\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-8ff54fc e-con-full e-flex e-con e-child\" data-id=\"8ff54fc\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-deaaea0 e-con-full e-flex e-con e-child\" data-id=\"deaaea0\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-002792a e-flex e-con-boxed e-con e-parent\" data-id=\"002792a\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-fcaeba4 e-con-full e-flex e-con e-child\" data-id=\"fcaeba4\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-9e42d4c e-con-full e-flex e-con e-child\" data-id=\"9e42d4c\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-d650f76 e-con-full e-flex e-con e-child\" data-id=\"d650f76\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-8b9e978 e-flex e-con-boxed e-con e-parent\" data-id=\"8b9e978\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c53b8d8 elementor-widget elementor-widget-video\" data-id=\"c53b8d8\" data-element_type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;autoplay&quot;:&quot;yes&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;loop&quot;:&quot;yes&quot;}\" data-widget_type=\"video.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/3at.ma\/wp-content\/uploads\/2024\/08\/beaulieu-3AT.mp4\" autoplay=\"\" loop=\"\" muted=\"muted\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-86837c6 e-con-full e-flex e-con e-parent\" data-id=\"86837c6\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-3428a32 elementor-widget elementor-widget-shortcode\" data-id=\"3428a32\" data-element_type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">    <div class=\"slider-container\" onmousemove=\"handleMouseMove(event)\" onclick=\"handleClick(event)\">\n        <div class=\"slider\">\n            <div class=\"slide\"><img decoding=\"async\" src=\"https:\/\/3at.ma\/wp-content\/uploads\/2024\/08\/Beaulieu-3AT-8-scaled.jpg\" alt=\"Slide Image\"><\/div><div class=\"slide\"><img decoding=\"async\" src=\"https:\/\/3at.ma\/wp-content\/uploads\/2024\/08\/Beaulieu-3AT-9-scaled.jpg\" alt=\"Slide Image\"><\/div><div class=\"slide\"><img decoding=\"async\" src=\"https:\/\/3at.ma\/wp-content\/uploads\/2024\/06\/zenata.png\" alt=\"Slide Image\"><\/div><div class=\"slide\"><img decoding=\"async\" src=\"https:\/\/3at.ma\/wp-content\/uploads\/2024\/06\/zenata3.png\" alt=\"Slide Image\"><\/div><div class=\"slide\"><img decoding=\"async\" src=\"https:\/\/3at.ma\/wp-content\/uploads\/2024\/08\/Beaulieu-3AT-1.jpg\" alt=\"Slide Image\"><\/div><div class=\"slide\"><img decoding=\"async\" src=\"https:\/\/3at.ma\/wp-content\/uploads\/2024\/08\/Beaulieu-3AT-2.jpg\" alt=\"Slide Image\"><\/div><div class=\"slide\"><img decoding=\"async\" src=\"https:\/\/3at.ma\/wp-content\/uploads\/2024\/08\/Beaulieu-3AT-3.jpg\" alt=\"Slide Image\"><\/div><div class=\"slide\"><img decoding=\"async\" src=\"https:\/\/3at.ma\/wp-content\/uploads\/2024\/08\/Beaulieu-3AT-4-scaled.jpg\" alt=\"Slide Image\"><\/div><div class=\"slide\"><img decoding=\"async\" src=\"https:\/\/3at.ma\/wp-content\/uploads\/2024\/08\/Beaulieu-3AT-5.jpg\" alt=\"Slide Image\"><\/div><div class=\"slide\"><img decoding=\"async\" src=\"https:\/\/3at.ma\/wp-content\/uploads\/2024\/08\/Beaulieu-3AT-6.jpg\" alt=\"Slide Image\"><\/div><div class=\"slide\"><img decoding=\"async\" src=\"https:\/\/3at.ma\/wp-content\/uploads\/2024\/08\/Beaulieu-3AT-8-scaled.jpg\" alt=\"Slide Image\"><\/div><div class=\"slide\"><img decoding=\"async\" src=\"https:\/\/3at.ma\/wp-content\/uploads\/2024\/08\/Beaulieu-3AT-9-scaled.jpg\" alt=\"Slide Image\"><\/div><div class=\"slide\"><img decoding=\"async\" src=\"https:\/\/3at.ma\/wp-content\/uploads\/2024\/06\/zenata.png\" alt=\"Slide Image\"><\/div><div class=\"slide\"><img decoding=\"async\" src=\"https:\/\/3at.ma\/wp-content\/uploads\/2024\/06\/zenata3.png\" alt=\"Slide Image\"><\/div>        <\/div>\n    <\/div>\n\n    <style>\n        .slider-container {\n            width: 100%;\n            height: 700px; \/* Set the height of the container *\/\n            overflow: hidden;\n            position: relative;\n            display: flex;\n            justify-content: center; \/* Center the slider horizontally *\/\n        }\n\n        .slide {\n            flex: 0 0 70vw; \/* Set the width of each slide to 80vw *\/\n            height: 700px; \/* Set the height of each slide to 700px *\/\n            box-sizing: border-box;\n            display: flex;\n            justify-content: center;\n            align-items: center;\n        }\n\n        .slider img {\n            width: 100%; \/* Make the image cover the entire width *\/\n            height: 100%; \/* Make the image cover the entire height *\/\n            object-fit: cover; \/* Cover the container without distortion *\/\n\n\t\t\tborder-left: 4px solid white; \/* Add a 4px white border to the left side *\/\n\t\t\tborder-right: 4px solid white; \/* Add a 4px white border to the right side *\/\n\n\t\t\t\n\t\t\topacity: 0.2; \/* Set the opacity of all images to 10% by default *\/\n            transition: opacity 0.5s ease-in-out; \/* Add a transition effect for opacity *\/\n        }\n\n        .slider img.active {\n            opacity: 1; \/* Set the opacity of the active image to 100% *\/\n        }\n\n        .slider {\n            display: flex;\n            height: 700px; \/* Set the height of the slider *\/\n            width: calc(100% + (70vw * 2)); \/* Extend the width to accommodate 3 images *\/\n            transition: transform 0.5s ease-in-out;\n            transform: translateX(calc(-70vw + (100% - 70vw) \/ 2)); \/* Initial position to center the images *\/\n        }\n    <\/style>\n\n    <script>\n        let currentIndex = 2;\n        let isTransitioning = false;\n\n        function handleClick(event) {\n            if (isTransitioning) return;\n            const containerWidth = event.currentTarget.offsetWidth;\n            const clickPosition = event.clientX - event.currentTarget.getBoundingClientRect().left;\n\n            if (clickPosition < containerWidth \/ 2) {\n                showPrevious();\n            } else {\n                showNext();\n            }\n        }\n\n        function showNext() {\n            if (isTransitioning) return;\n            const slider = document.querySelector('.slider');\n            const totalSlides = slider.children.length;\n\n            currentIndex++;\n            slider.style.transition = 'transform 0.5s ease-in-out';\n            slider.style.transform = `translateX(calc(-${currentIndex * 70}vw + (100% - 70vw) \/ 2))`; \/\/ Center the active slide\n            updateOpacity();\n\n            \/\/ Looping logic\n            if (currentIndex >= totalSlides - 2) {\n                isTransitioning = true;\n                setTimeout(() => {\n                    currentIndex = 2;\n                    slider.style.transition = 'none';\n                    slider.style.transform = `translateX(calc(-${currentIndex * 70}vw + (100% - 70vw) \/ 2))`; \/\/ Center the active slide\n                    updateOpacity();\n                    setTimeout(() => {\n                        slider.style.transition = 'transform 0.5s ease-in-out';\n                        isTransitioning = false;\n                    }, 50);\n                }, 500);\n            }\n        }\n\n        function showPrevious() {\n            if (isTransitioning) return;\n            const slider = document.querySelector('.slider');\n            const totalSlides = slider.children.length;\n\n            currentIndex--;\n            slider.style.transition = 'transform 0.5s ease-in-out';\n            slider.style.transform = `translateX(calc(-${currentIndex * 70}vw + (100% - 70vw) \/ 2))`; \/\/ Center the active slide\n            updateOpacity();\n\n            \/\/ Looping logic\n            if (currentIndex < 2) {\n                isTransitioning = true;\n                setTimeout(() => {\n                    currentIndex = totalSlides - 3;\n                    slider.style.transition = 'none';\n                    slider.style.transform = `translateX(calc(-${currentIndex * 70}vw + (100% - 70vw) \/ 2))`; \/\/ Center the active slide\n                    updateOpacity();\n                    setTimeout(() => {\n                        slider.style.transition = 'transform 0.5s ease-in-out';\n                        isTransitioning = false;\n                    }, 50);\n                }, 500);\n            }\n        }\n\n        function handleMouseMove(event) {\n            const containerWidth = event.currentTarget.offsetWidth;\n            const hoverPosition = event.clientX - event.currentTarget.getBoundingClientRect().left;\n\n            if (hoverPosition < containerWidth \/ 2) {\n                event.currentTarget.style.cursor = 'url(https:\/\/3at.ma\/wp-content\/uploads\/2024\/06\/Vector-3.png), auto'; \/\/ Change cursor to the left image\n            } else {\n                event.currentTarget.style.cursor = 'url(https:\/\/3at.ma\/wp-content\/uploads\/2024\/06\/Vector-2.png), auto'; \/\/ Change cursor to the right image\n            }\n        }\n\n        function updateOpacity() {\n            const slides = document.querySelectorAll('.slide');\n            slides.forEach((slide, index) => {\n                const img = slide.querySelector('img');\n                if (index === currentIndex) {\n                    img.classList.add('active');\n                } else {\n                    img.classList.remove('active');\n                }\n            });\n        }\n\n        document.addEventListener('DOMContentLoaded', () => {\n            \/\/ Manually set initial position and update opacity\n            const slider = document.querySelector('.slider');\n            slider.style.transform = `translateX(calc(-${currentIndex * 70}vw + (100% - 70vw) \/ 2))`; \/\/ Initial position to center the images\n            updateOpacity(); \/\/ Set the opacity of the initial middle image to 100%\n        });\n    <\/script>\n    <\/div>\n\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","protected":false},"excerpt":{"rendered":"<p>BEAULIEU A housing block that provided an opportunity to experiment with various structural and aesthetic innovations. The project stands out for its commitment to collective quality of life. It offers a variety of thoughtfully designed living spaces, including a gym, indoor and outdoor pools, a children&rsquo;s club, and a series of gardens. LocationYearProgramConstruction CostClientStatus Zenata [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-5064","page","type-page","status-publish","hentry"],"blocksy_meta":[],"_links":{"self":[{"href":"https:\/\/3at.ma\/index.php\/wp-json\/wp\/v2\/pages\/5064","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/3at.ma\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/3at.ma\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/3at.ma\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/3at.ma\/index.php\/wp-json\/wp\/v2\/comments?post=5064"}],"version-history":[{"count":5,"href":"https:\/\/3at.ma\/index.php\/wp-json\/wp\/v2\/pages\/5064\/revisions"}],"predecessor-version":[{"id":5069,"href":"https:\/\/3at.ma\/index.php\/wp-json\/wp\/v2\/pages\/5064\/revisions\/5069"}],"wp:attachment":[{"href":"https:\/\/3at.ma\/index.php\/wp-json\/wp\/v2\/media?parent=5064"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}