<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>[ia] Design génératif - Conceptions de contenus 2D / 3D / Espaces</title>
	<atom:link href="https://presentcomposedesign.fr/category/ia/feed/" rel="self" type="application/rss+xml" />
	<link>https://presentcomposedesign.fr/category/ia/</link>
	<description>Direction Artistique, concepts &#38; innovations, Design 2D/3D/ia/AR/VR</description>
	<lastBuildDate>Thu, 02 Apr 2026 15:24:12 +0000</lastBuildDate>
	<language>fr-FR</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://presentcomposedesign.fr/wp-content/uploads/2025/07/cropped-logo_PCd_2025-512-32x32.png</url>
	<title>[ia] Design génératif - Conceptions de contenus 2D / 3D / Espaces</title>
	<link>https://presentcomposedesign.fr/category/ia/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Paper plane</title>
		<link>https://presentcomposedesign.fr/paper-plane-mode_for_arrival-space/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Fri, 27 Mar 2026 01:19:08 +0000</pubDate>
				<category><![CDATA[[ia]]]></category>
		<category><![CDATA[[VR]]]></category>
		<category><![CDATA[Design d'espace]]></category>
		<category><![CDATA[Design produit]]></category>
		<guid isPermaLink="false">https://presentcomposedesign.fr/?p=36135</guid>

					<description><![CDATA[<p>Click here &#x1F861; from your VR headset Paper Plane in VR ᯅ Plein écran &#x1F5D6; Paper Plane Mon tout premier plugin Arrival.Space. Un avatar universel pour le web immersif. Le concept Paper Plane est parti d&#8217;une question simple : et si le meilleur avatar était aussi le plus universel ? Pas de personnage genré, pas de corps humanoïde. Juste un avion en papier, instinctif et léger, qui traverse librement chaque monde d&#8217;Arrival.Space. Pourquoi un avion en papier ? Tout le monde en a plié un. Tout le monde en a lancé un. C&#8217;est peut-être l&#8217;objet le plus démocratique qui existe. En tant qu&#8217;avatar, il efface toute friction d&#8217;identification : pas d&#8217;âge, pas de genre, pas de skin à choisir. Du mouvement pur, et une liberté totale d&#8217;exploration. De SplatGate à Paper Plane Ce projet s&#8217;appuie sur toute l&#8217;expertise en Gaussian Splatting que j&#8217;ai construite avec SplatGate. Paper Plane, c&#8217;est mon premier pas dans l&#8217;écosystème Arrival.Space, un nouveau terrain pour pousser les limites du web immersif, du spatial computing et du vibe coding. 🧊 Gaussian Splatting 🌐 Web Immersif Full VR available Experience -ᯅ- ✔️ Explorer les univers gagnants Essayer Paper Plane Soutenir / Remercier Organisé par Arrival.Space &#038; CHOICE DAO</p>
<p>Cet article <a href="https://presentcomposedesign.fr/paper-plane-mode_for_arrival-space/">Paper plane</a> est apparu en premier sur <a href="https://presentcomposedesign.fr">Présent Composé design</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="36135" class="elementor elementor-36135">
						<header class="elementor-section elementor-top-section elementor-element elementor-element-f1e5d23 elementor-section-full_width elementor-section-height-default elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no" data-id="f1e5d23" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-no">
					<header class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-8a6a45b" data-id="8a6a45b" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-035d3b0 elementor-widget__width-inherit elementor-widget elementor-widget-html" data-id="035d3b0" data-element_type="widget" data-e-type="widget" data-widget_type="html.default">
				<div class="elementor-widget-container">
					<!--
// PAPER PLANE MODE for Arrival space, © All rights reserved.
//
//                                                                              ++==--=+++-=
//                                                                     +++++-:::::-=++=:. .=
//                                                        +++++=++============++*+=:....  .=
//                                              =+++++===================+**#*=-:::.... .:-=
//                                 =+++++++++===========++++**********###*==-::::::..:-====
//                          %%%##********************************##%%%#**+==-::::-=========
//                     **************************************#%%%%%*+**++++==--=+++++++++=-
//               **************************************###%%%%##*************#*++++++++++=
//            ****************########################%%%%%**************######*+++++++++=
//                 ####***#######################%%%%%##*************############*+++++++
//                       ####################%%%%%##**************#################*++++=
//                              @#######%%%%%%%***************######################***+-
//                                   @%%%%##**************############################*+
//                                    %%%###########**#################################*
//                                    %%%#########*####################################
//                                    @%%%####**-     @%#%###########################
//                                    @%%%#+                 %%##################%
//                                                                %%%%%%%%%%%%#%
//                                                                    @%%%%%%@
//
// Dev-Xprmnts · VR_Xprmnts, Present Compound Design           ║
// ║ Alban DESBARAX - Designer 360° / Creative Technologist    ║
// ║ Toulouse, FRANCE                                          ║
// ║                                                           ║
// ║   · Expertise & Support 2D, 3D, AR, VR, XR, AI            ║
// ║   · Product Design & Industrial Design                    ║
// ║   · Digital communication                                 ║
// ║   · Immersive experiences  -ᯅ- ✔️                       ║
// ║                                                           ║
// · 🡺 https://presentcomposedesign.fr/
//
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%#*++==------===**%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#++-::::::::::::::::::::::-=*%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+-::::::::::::::::::::::::::::::::=*%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@#+::::::::::::::::::::::::::::::::::::::::=%@@@@@@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@@%+:::::::::::::::::=++***+=-::::::::::::::::::::=%@@@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@#=::::::::::::::::+%@@@@@@@@@@%+-:::::::::::::::::::=#@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@#-::::::::::::::::#@@@@@@@@@@@@@@@@%-:::::::::::::::::::=#@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@%=::::::::::::::::*@@@@@@**==-=+##@@@@@*-:::::::::::::::::::=%@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@=:::::::::::::::::%@@@@@+::::::::::-*@@@@#-::::::::::::::::::::=@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@#::::::::::::::::::%@@@@=::::::::::::::-%@@@#-:::::::::::::::::::::#@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@=::::::::::::::::::*@@@@=::::::::::::::::-%@@@*::::::::::::::::::::::=@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@%-::::::::::::::::::-@@@@=::::::::::::::::::-%@@@-::::::::::::::::::::::-%@@@@@@@@@@@@@
// @@@@@@@@@@@@#::::::::::::::::::::*@@@#::::::::::::::::::::=@@@*::::::::::::::::::::::::*@@@@@@@@@@@@
// @@@@@@@@@@@#:::::::::::::::::::::%@@@+::::::::::::::::::::-@@@%:::::::::::::::::::::::::*@@@@@@@@@@@
// @@@@@@@@@@+::::::::::::::::::::::@@@@-:::::::::::::::::::::%@@@::::::::::::::::::::::::::*@@@@@@@@@@
// @@@@@@@@@*:::::::::::::::::::::::@@@@=:::::::::::::::::::::@@@@:::::::::::::::::::::::::::*@@@@@@@@@
// @@@@@@@@%::::::::::::::::::::::::@@@@*:::::::::::::::::::::@@@%::::::::::::::::::::::::::::*@@@@@@@@
// @@@@@@@%:::::::::::::::::::::::::@@@@%::::::::::::::::::::+@@@*:::::::::::::::::::::::::::::%@@@@@@@
// @@@@@@@::::::::::::::::::::::::::@@@@@*::::::::::::::::::-@@@@::::::::::::::::::::::::::::::-@@@@@@@
// @@@@@@=::::::::::::::::::::::::::@@@@@@*::::::::::::::::-@@@@+:::::::::::::::::::::::::::::::*@@@@@@
// @@@@@%:::::::::::::::::::::::::::@@@@@@@*::::::::::::::-%@@@#:::::::::::::::::::::::::::::::::*@@@@@
// @@@@@::::::::::::::::::::::::::::@@@@@@@@@*::::::::::+@@@@@*::::::::::::::::::::::::::::::::::-@@@@@
// @@@@*::::::::::::::::::::::::::::@@@#=@@@@@@%#*+=**%@@@@@@=::::::::::::::::::::::::::::::::::::*@@@@
// @@@@:::::::::::::::::::::::::::::@@@#::*@@@@@@@@@@@@@@@@*:::::::::::::::::::::::::::::::::::::::@@@@
// @@@*:::::::::::::::::::::::::::::@@@#::::=*@@@@@@@@@%#=:::::::::::::::::::::::::::::::::::::::::#@@@
// @@@=:::::::::::::::::::::::::::::@@@#::::::::-==+=-:::::::::::::::::::::::::::::::::::::::::::::=@@@
// @@@::::::::::::::::::::::::::::::@@@#:::::::::::::::::::::::::::::::::::::::::::::::::--:::::::::@@@
// @@*::::::::::::::::::::::::::::::@@@#:::::::::+######*:::::::::::::::::::::::::::::::+@=:::::::::#@@
// @@*::::::::::::::::::::::::::::::@@@#:::--::::===+*+==:::::=-:::::::=-::::::-::::::::+@=:::::::::+@@
// @@:::::::::::::::::::::::::::::::@@@#::+@#@@::-#@@%@%=::=@@@@+:::+@@@@@+-::@@@@%*-::#@@%#:::::::::@@
// @@:::::::::::::::::+*##%%#*=-::::@@@#::+@@=::-%@:::-*@=:%@-:=:::*@*:::-@*::@@-:=@%::=*@*=:::::::::@@
// @@::::::::::::::+%@@@@@@@@@@@%*-:@@@#::+@*:::*@@@@@@@@#:+@%*-:::@@@@@@@@@-:@%:::#@:::+@=::::::::::@@
// @%::::::::::::*@@@@@@@@@@@@@@@@@#+@@#::+@+:::+@=-------:::=%@*::@%-------::@%:::#@:::+@=::::::::::%@
// @%::::::::::-@@@@@@++-::::-=#@@@@@+*#::+@+:::-@%=-:+%%-:-=::#@::*@*-::+%=::@%:::#@:::+@=::::::::::#@
// @%:::::::::=@@@@%+::::::::::::#@@@@**::+@+::::-#@@@@%=::#@%%@+:::+@@@@@*:::@%:::#@:::+@=::::::::::%@
// @%::::::::-@@@@+:::::::::::::::-@@@@+:::-::::::::--:::::::=-:::::::-=-:::::--:::-=----=-::::::::::%@
// @@:::::::-@@@@*:::::::::::::::::-%%%*:::::::::::::::::::::::::::::::::::::::::::+%%%%%%#::::::::::@@
// @@:::::::*@@@#:::::::+#@%*-::::::=+*#*=+#*=-:::::+#%%#-::::::=#%%#=::::-#@@#-::::=##%#+-::::::::::@@
// @@-::::::@@@@-:::::-%@#+*%@*:::::%@#+#@@+*@*::::%@+==#@*::::%@#+=%@*-::%@-=*=:::*@*+=+@%-::::::::-@@
// @@+:::::-@@@@::::::#@=::::#@=::::%@::=@*::#@-::*@=::::-@+::*@*::::*@*::*@*-::::-@@####%@#::::::::*@@
// @@#:::::-@@@*::::::@@:::::=@*::::%@::=@*::#@-::%@::::::@*::%@-::::-@%:::=%@%-::*@#******+::::::::*@@
// @@@-::::-@@@%::::::#@+::::%@-::::%@::=@*::#@-::@@-::::=@-::*@*::::*@*:::-::@%::=@*::::-=-::::::::@@@
// @@@+:::::@@@@-::::::%@%*#@@+:::::%@::=@*::#@-::@@@#=+#@+::::*@%*+@@*:::#@*+@*:::*@%*+%@%::::::::-@@@
// @@@#:::::#@@@+:::::::=*##+-::::::+*::-*=::+*:::@%=*%#*-::::::=*%#*-:::::=*#+:::::-*##*=--=::::::*@@@
// @@@@-::::=@@@@-::::::::::::::::::=**+::::::::::@%:::::::::::::::::::::::-==++**##%%@@@@@@@-::::-@@@@
// @@@@*:::::*@@@@-::::::::::::::::+@@@#::::::::::::::::::::-==++**##=-#@@@@@@@@@@@@@@@@@@@@@=::::*@@@@
// @@@@@-:::::#@@@@+-:::::::::::::*@@@@::::::-==++--##%@@@@@@@@@#*#@@%%@@@@@@@@@@@#@@@@@*#@@@+:::-@@@@@
// @@@@@%::::::*@@@@@+-:::::::::+@@@@%:=@@@@@@@@@@==@@@**%@@@@*-#@*-@@*@@@*-+**@@@:%@@==@++@@*:::%@@@@@
// @@@@@@*::::::=@@@@@@@%%**##@@@@@@=::=@@@@#-:--=-=@@=+@+=@@@:%@@@=+@-*@*-@@@+:@@=#@:*@@%-@@#::+@@@@@@
// @@@@@@@-:::::::+%@@@@@@@@@@@@@@#-::::@@@+-%@@@*--@@:@@=*@@@%=*%@@@@*=@-*@@@*:+@=+=#@@@%:@@%:-@@@@@@@
// @@@@@@@@-::::::::=*%@@@@@@@##-:::::::@@@:#@@@@@*:@@:%==@@@@@@%+-%@@#-@*+@@@:+:@*:*@@@@@:%@@-@@@@@@@@
// @@@@@@@@#-:::::::::::::-:::::::::::::@@%:%@@@@@*-@@-#@@@#-@*%@@@-#@@:@@#=+:%@-#@:@@@@@@*=@@%@@@@@@@@
// @@@@@@@@@*:::::::::::::::::::::::::::#@@--@@@@%:*@@%*+*=*@@=+@@@=+@@-#@@@@@@@=#@#@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@*-:::::::::::::::::::::::::#@@@+-==-:#@@@@@@@@@@@@#++*#@@@@@@@#@@@%:@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@*-::::::::::::::::::::::::+@@@@@%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@-=-:+**++==--::%@@@@@@@@@@@
// @@@@@@@@@@@@#-:::::::::::::::::::::::=@@@@@@@@@@@@@@@@@@@@@%%##**++=---::::::::::::::::%@@@@@@@@@@@@
// @@@@@@@@@@@@@@-::::::::::::::::::::::-@@@@@@%###**++=--::::::::::::::::::::::::::::::-%@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@+::::::::::::::::::::::--::::::::::::::::::::::::::::::::::::::::::::+@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@%-::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-%@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@+-:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::+@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@%=::::::::::::::::::::::::::::::::::::::::::::::::::::::::::+%@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@%=::::::::::::::::::::::::::::::::::::::::::::::::::::::=%@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@%=-:::::::::::::::::::::::::::::::::::::::::::::::::+%@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@@@*-:::::::::::::::::::::::::::::::::::::::::::::#@@@@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@%+-:::::::::::::::::::::::::::::::::::::::+%@@@@@@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*=-:::::::::::::::::::::::::::::::+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%**=-:::::::::::::::::::::=+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%**++=====+++*##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 
-->
<!-- Font Awesome -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css" integrity="sha512-DTOQO9RWCH3ppGqcWaEA1BIZOC6xxalwEsw9c2QQeAIftl+Vegovlnee1c9QX4TctnWMn13TZye+giMm8e2LwA==" crossorigin="anonymous" referrerpolicy="no-referrer" />
<div class="paperplane-container">
    <iframe
        id="arrival-space-iframe-pp"
        src="https://arrival.space/82998375_8446?utm=embed_82998375"
        width="100%"
        height="860"
        allow="camera; microphone; vr; xr; xr-spatial-tracking; fullscreen"
        allowfullscreen
        loading="lazy">
    </iframe>
    <div class="pp-buttons-container">
        <div class="pp-vr-instruction-text">
            Click here &#x1F861; from your VR headset
        </div>
        <a
            href="https://arrival.space/82998375_8446"
            target="_blank"
            class="pp-direct-link pp-vr-button"
        >
            <i class="fa-regular fa-paper-plane"></i> Paper Plane in VR ᯅ
        </a>
        <a
            id="pp-fullscreen-link"
            class="pp-direct-link pp-fullscreen-button"
        >
            Plein écran &#x1F5D6;
        </a>
    </div>
</div>
<style>
    .paperplane-container {
        position: relative;
        width: 100vw;
        max-width: 100%;
        margin: 0;
        padding: 0;
        height: 860px;
        overflow: hidden;
    }
    .pp-buttons-container {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        pointer-events: none;
    }
    .pp-vr-instruction-text {
        position: absolute;
        top: 64px;
        left: 50%;
        transform: translateX(-50%);
        color: white;
        font-size: 14px;
        text-align: center;
        z-index: 1001;
        text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.8);
        pointer-events: auto;
    }
    .pp-direct-link {
        position: absolute;
        padding: 8px 15px;
        background: #00BFFF;
        color: white;
        text-decoration: none;
        font-weight: bold;
        font-size: 14px;
        border-radius: 8px;
        border: 2px solid white;
        box-shadow: 0 0 8px rgba(0, 191, 255, 0.7);
        z-index: 1000;
        pointer-events: auto;
        cursor: pointer;
        transition: all 0.3s;
        font-family: sans-serif;
    }
    .pp-vr-button {
        top: 16px;
        left: 50%;
        transform: translateX(-50%);
    }
    .pp-fullscreen-button {
        bottom: 20px;
        right: 20px;
    }
    .pp-direct-link:hover {
        background: #1E90FF;
        box-shadow: 0 0 12px rgba(0, 191, 255, 0.9);
        z-index: 1001 !important;
    }
    #arrival-space-iframe-pp {
        border: none;
        display: block;
        width: 100vw;
        margin: 0;
    }
</style>
<script>
    document.getElementById('pp-fullscreen-link').addEventListener('click', function(e) {
        e.preventDefault();
        var iframe = document.getElementById('arrival-space-iframe-pp');
        if (iframe.requestFullscreen) iframe.requestFullscreen();
        else if (iframe.webkitRequestFullscreen) iframe.webkitRequestFullscreen();
        else if (iframe.msRequestFullscreen) iframe.msRequestFullscreen();
    });
</script>
				</div>
				</div>
					</div>
		</header>
					</div>
		</header>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-a5e22ff elementor-section-full_width elementor-section-stretched elementor-section-height-default elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no" data-id="a5e22ff" data-element_type="section" data-e-type="section" data-settings="{&quot;stretch_section&quot;:&quot;section-stretched&quot;,&quot;background_background&quot;:&quot;classic&quot;}">
						<div class="elementor-container elementor-column-gap-default">
					<header class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-8d89f52" data-id="8d89f52" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-2954048 elementor-widget__width-inherit elementor-widget elementor-widget-html" data-id="2954048" data-element_type="widget" data-e-type="widget" data-widget_type="html.default">
				<div class="elementor-widget-container">
					<!--
// PAPER PLANE MODE for Arrival space, © All rights reserved.
//
//                                                                              ++==--=+++-=
//                                                                     +++++-:::::-=++=:. .=
//                                                        +++++=++============++*+=:....  .=
//                                              =+++++===================+**#*=-:::.... .:-=
//                                 =+++++++++===========++++**********###*==-::::::..:-====
//                          %%%##********************************##%%%#**+==-::::-=========
//                     **************************************#%%%%%*+**++++==--=+++++++++=-
//               **************************************###%%%%##*************#*++++++++++=
//            ****************########################%%%%%**************######*+++++++++=
//                 ####***#######################%%%%%##*************############*+++++++
//                       ####################%%%%%##**************#################*++++=
//                              @#######%%%%%%%***************######################***+-
//                                   @%%%%##**************############################*+
//                                    %%%###########**#################################*
//                                    %%%#########*####################################
//                                    @%%%####**-     @%#%###########################
//                                    @%%%#+                 %%##################%
//                                                                %%%%%%%%%%%%#%
//                                                                    @%%%%%%@
//
// Dev-Xprmnts · VR_Xprmnts, Present Compound Design           ║
// ║ Alban DESBARAX - Designer 360° / Creative Technologist    ║
// ║ Toulouse, FRANCE                                          ║
// ║                                                           ║
// ║   · Expertise & Support 2D, 3D, AR, VR, XR, AI            ║
// ║   · Product Design & Industrial Design                    ║
// ║   · Digital communication                                 ║
// ║   · Immersive experiences  -ᯅ- ✔️                       ║
// ║                                                           ║
// · 🡺 https://presentcomposedesign.fr/
//
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#****+++++****##%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@**+-::::::::::::::::::::==*#%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*+-::::::::::::::::::::::::::::::==#%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+-::::::::::::::::::::::::::::::::::::::=*%@@@@@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@@@@*-::::::::::::::::::::::::::::::::::::::::::::=*%@@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@#+:::::::::::::::++****%%@@@@@%%##**=--:::::::::::::=#@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@*=:::::::::::::+*%@@@@@@@@@@@@@@@@@@@@@@@#*=-:::::::::::=#@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@#=:::::::::::+*%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#=-::::::::::=#@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@%=::::::::::+%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*=::::::::::=%@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@*::::::::::*%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+-:::::::::*%@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@%=::::::::=*@@@@@@@@@@@@@@%#*********#%%@@@@@@@@@@@@@@@@@@@%+-::::::::=%@@@@@@@@@@@@@@
// @@@@@@@@@@@@@#:::::::::#@@@@@@@@@@@**+-::::::::::::::::-+#%@%@@@@@@@@@@@@@@%+-::::::::*@@@@@@@@@@@@@
// @@@@@@@@@@@@+::::::::+@@@@@@@@@@*-::::::::::::::::::::::#@@@##%%@@@@@@@@@@@@@@+::::::::*%@@@@@@@@@@@
// @@@@@@@@@@@=:::::::=#@@@@@@@@@+::::::::::::::::::::::::-*@@@@@@#%%@@@@@@@@@@@@@*-:::::::=%@@@@@@@@@@
// @@@@@@@@@@=:::::::*@@@@@@@@@%=::::::::::::::::::::::::::*@@@@@@@@##%@@@@@@@@@@@@%+:::::::=%@@@@@@@@@
// @@@@@@@@@%=:::::::#@@@@@@@@@%:::::::::::::::::::::::::::+@@@@@@@@@@@%%@@@@@@@@@@@@@*-::::::-%@@@@@@@
// @@@@@@@@@=::::::-#@@@@@@@@@%-:::::::::::::::::::::::::==#@@@@@@@@@@@@%#@@@@@@@@@@@@@#-::::::=%@@@@@@
// @@@@@@@@=::::::-%@@@@@@@@@@=:::::::::::::::::::::::::*=#%@@@@@@@@@@@@@%#@@@@@@@@@@@@@#-::::::*@@@@@@
// @@@@@@@*::::::-#@@@@@@@@@@*::::::::::::::::::::::::*=#+%@@@%@@@@@@@@@@@%%@@@@@@@@@@@@@%-::::::*@@@@@
// @@@@@@%:::::::#@@@@@@@@@@%:::::::::::::::::::---:::-:-+*@%%@@@@@@@@@@@@@*%@@@@@@@@@@@@@%-::::::%@@@@
// @@@@@@-::::::#@@@@@@@@@@@-::::::::::::::::::::+=#-=#*#=+%%@@@@@@@@@@@@@@@%@@@@@@@@@@@@@@#-:::::-%@@@
// @@@@@*::::::*@@@@@@@@@@@#:::::::::::::::::::::-++=#==#+-%%%@@@@@@@@@@@@@@%@@@@@@@@@@@@@@@*::::::*@@@
// @@@@%::::::-@@@@@@@@@@@@=::::::::::::::::::::::::+=++#%=%*@@@@@@@@@@@@@@@@*@@@@@@@@@@@@@@@-::::::%@@
// @@@@*::::::#@@@@@@@@@@@%:::::::::::::::::::::::::+#:+@%+%@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@%-:::::*@@
// @@@%::::::=@@@@@@@@@@@@*::::::::::::::::::::::::-#*-#+=@@%@%@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@*::::::%@
// @@@*::::::%@@@@@@@@@@@@=:::::::::::::::::::::::+=#@++=+%@@@@@@@@@@@@@@#@@@+-%@@@@@@@@@@@@@@@-:::::*@
// @@::::::*@@@@@@@@@@@@@-:::::::::::::::::::::::-**+@+*=%@%@@@@@@@@@@@#@@%=::*@@@@@@@@@@@@@@@*::::::%@
// @%::::::#@@@@@@@@@@@@@::::::::::::::::::::::::::==#@%+@%+*%%@@@@@@@#==+::=-#@@@@@@@@@@@@@@@#::::::*@
// @*:::::-@@@@@@@@@@@@@@::::::::::::::::::::::::::::***%-@*@%%@@@@@@@%%=+*%%%@@@@@@@@@@@@@@@@@-:::::+@
// @=:::::*@@@@@@@@@@@@@@-::::::::::::::::::::::::::-+@+=+*%*%@@@@@@@%@@@%*=:*@@@@@@@@@@@@@@@@@+:::::=@
// %::::::*@@@@@@@@@@@@@@*::::::::::::::::::::::-=-=+#**#=%+@@*@@@@@@@@@@@+=**%@@@@@@@@@@@@@@@@#::::::%
// %::::::%@@@@@@@@@@@@@@#:::::::::::::::::::+#@++@%@@#*+*+#=@@@@@@@@@@@@@@*%@#%@@@@@@@@@@@@@@@#::::::#
// *::::::@@@@@@@@@@@@@@@@-:::::::::::::::::*@@@:::%@@@@*---**@@@@@@@@@@@@@@@@@@%@@@@@@@@@@@@@@%::::::*
// *::::::@@@@@@@@@@@@@@@@+:::::::::::::::::@@@@%::*@@@@@+-:=%+@@@@@@@@@@@@@@@@@@%@@@@@@@@@@@@@@::::::*
// *:::::-@@@@@@@@@@@@@@@@#:::::::::::::::::%=%@@-:+@@@@@*::%*@@@@@@@@@@@@@@@@@@@@%@@@@@@@@@@@@@-:::::*  
// *:::::=@@@@@@@@@@@@@@@@@+::::::::::::::::*:-@*::*-*@@@@-:-=%@%@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@::::::*
// *:::::-@@@@@@@@@@@@@@@@@%-:::::::::::::::*+:%@@:::-@@@@-:=+%%@%@@@@@@@@@@@*@@@@@@@@@@@@@@@@@@::::::*
// *::::::%@@@@@@@@@@@@@@@@@*::::::::::::::::*=-@*::::%@@@+:+*@@@%@@@@@@@@@@@%@@%#@@@@@@@@@@@@@%::::::*
// #::::::%@@@@@@@@@@@@@@@@@%-::::::::::::::::#+**:::::%@@*:-=%@*@@@@@@@@@@@#**%@@@@@@@@@@@@@@@%::::::#
// @::::::*@@@@@@@@@@@@@@@@@@*::::::::::::::::-%@@@@@**@@%=::=+@@@@@%@@@@@@@@@%@@@@@@@@@@@@@@@@*::::::@
// @-:::::*@@@@@@@@@@@@@@@@@@@=:::::::::::::::::#@@@@@@@@%:::+=%@@@@@@@@@@@@@@@%@@@@@@@@@@@@@@@*:::::-@
// @+:::::=@@@@@@@@@@@@@@@@@@@%-:::::::::::::::::*%@@@*%@-:::-*=*%@@@@@@@@@@@@@%@@@@@@@@@@@@@@@::::::*@
// @*::::::%@@@@@@@@@@@@@@@@@@@*:::::::::::::::::::=%%+#@=:::=*++@@@@@@@@@@@@@#@@@@@@@@@@@@@@@%::::::*@
// @@-:::::*@@@@@@@@@@@@@@@@@@@#::::::::::::::::----:=###::::=**%%@@@@@@@@@@@+%@@@@@@@@@@@@@@@@+:::::-@
// @@+:::::-%@@@@@@@@@@@@@@@@@@@-:::::::::::::=@@@@@+::::::::-*#%%%@@@@@@@@@%*%@@@@@@@@@@@@@@%::::::*@@
// @@#::::::*@@@@@@@@@@@@@@@@@@@+::::::::::::::%@@@@@-:::::::+%@%%%@@@@@@@@@%@@@@@@@@@@@@@@@@+::::::%@@
// @@@+::::::%@@@@@@@@@@@@@@@@@@*::::::::::::::*@@@@@-:::::::-+#@%%@%@@@@@@@%@@@@@@@@@@@@@@@%::::::=@@@
// @@@%-:::::*@@@@@@@@@@@@@@@@@@*::::::::::::::#@@@@@::::::::::*@%**%@@@@@@@#@@@@@@@@@@@@@@@=::::::%@@@
// @@@@*::::::%@@@@@@@@@@@@@@@@@*::::::::::::::*@@@@@#-::::::::===+-%%@@@@@@%%@@@@@@@@@@@@@*::::::*@@@@
// @@@@@-:::::-%@@@@@@@@@@@@@@@@+::::::::::::::=#%@@@@*--#=::::::--:=@@%%%@@%@@@@@@@@@@@@@#::::::-@@@@@
// @@@@@#-:::::-%@@@@@@@@@@@@@@@=::::::::::::::==@%@%%%#+%%*:::::::-=#%%*%@#*@@@@@@@@@@@@%:::::::#@@@@@
// @@@@@@*::::::*%@@@@@@@@@@**+-:::::::::::::::@#@@%@@@%#%@*::::-::::==::%%*@@@@@@@@@@@@%=::::::*@@@@@@
// @@@@@@@+::::::*@@@@@@@@*::::::::::::::::::-##%%@#@@@@%%%*-==*%:-::==+**@@@@@@@@@@@@@%=::::::=@@@@@@@
// @@@@@@@@-::::::*%@@@@*::::::::::::::::::::::%%%%%@@@@@@@#%@@%%@@@@@@@@@@@@@@@@@@@@@%=::::::=@@@@@@@@
// @@@@@@@@%-::::::=%@@%:::::::::::::::::::::#@%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#:::::::-@@@@@@@@@
// @@@@@@@@@@-::::::-%@#::::::::::::::::::::+@@@@@%@@@@@@@@@@@%%@@@@@@@@@@@@@@@@@@@@*:::::::=@@@@@@@@@@
// @@@@@@@@@@@-:::::::*@-:::::::::::::::::::-%@@@@@@@@@@@@@@@@*@@@@@@@@@@@@@@@@@@@@=:::::::=@@@@@@@@@@@
// @@@@@@@@@@@@+:::::::==:::::::::::::::::::-%@@@@@@@@@@@@@@@%@@@@@@@@@@@@@@@@@@@#-:::::::+@@@@@@@@@@@@
// @@@@@@@@@@@@@*-:::::::::::::::::::::::::::=@@@@@@@@@@@@@@%#@@@@@@@@@@@@@@@@@%=::::::::#@@@@@@@@@@@@@
// @@@@@@@@@@@@@@#-:::::::::::::::::::::::::::*@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@+::::::::=#@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@*-::::::::::::::::::::::::::*%@@@@@@@@@@*@@@@@@@@@@@@@@@@+:::::::::*@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@%=:::::::::::::::::::::::::::*%@@@@@@@@#@@@@@@@@@@@@@*=:::::::::=%@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@#-:::::::::::::::::::::::::::*%@@@@@@@%#@@@@@@@@*+-:::::::::=#@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@#-:::::::::::::::::::::::::::*%@@@@@@@%@@@@*+:::::::::::=#@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@#=-::::::::::::::::::::::::::+%@@@@%**--::::::::::::+#@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@@@%*-:::::::::::::::::::::::::::::::::::::::::::::*%@@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@#*-:::::::::::::::::::::::::::::::::::::::+%@@@@@@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##=-:::::::::::::::::::::::::::::::+*%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##*=-::::::::::::::::::::-+**%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%##****+++++****%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
//
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%#*++==------===**@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#++-::::::::::::::::::::::-=*%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+-::::::::::::::::::::::::::::::::=*%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@#+::::::::::::::::::::::::::::::::::::::::=%@@@@@@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@@%+:::::::::::::::::=++***+=-::::::::::::::::::::=%@@@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@#=::::::::::::::::+%@@@@@@@@@@%+-:::::::::::::::::::=#@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@#-::::::::::::::::#@@@@@@@@@@@@@@@@%-:::::::::::::::::::=#@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@%=::::::::::::::::*@@@@@@**==-=+##@@@@@*-:::::::::::::::::::=%@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@=:::::::::::::::::%@@@@@+::::::::::-*@@@@#-::::::::::::::::::::=@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@#::::::::::::::::::%@@@@=::::::::::::::-%@@@#-:::::::::::::::::::::#@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@=::::::::::::::::::*@@@@=::::::::::::::::-%@@@*::::::::::::::::::::::=@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@%-::::::::::::::::::-@@@@=::::::::::::::::::-%@@@-::::::::::::::::::::::-%@@@@@@@@@@@@@
// @@@@@@@@@@@@#::::::::::::::::::::*@@@#::::::::::::::::::::=@@@*::::::::::::::::::::::::*@@@@@@@@@@@@
// @@@@@@@@@@@#:::::::::::::::::::::%@@@+::::::::::::::::::::-@@@%:::::::::::::::::::::::::*@@@@@@@@@@@
// @@@@@@@@@@+::::::::::::::::::::::@@@@-:::::::::::::::::::::%@@@::::::::::::::::::::::::::*@@@@@@@@@@
// @@@@@@@@@*:::::::::::::::::::::::@@@@=:::::::::::::::::::::@@@@:::::::::::::::::::::::::::*@@@@@@@@@
// @@@@@@@@%::::::::::::::::::::::::@@@@*:::::::::::::::::::::@@@%::::::::::::::::::::::::::::*@@@@@@@@
// @@@@@@@%:::::::::::::::::::::::::@@@@%::::::::::::::::::::+@@@*:::::::::::::::::::::::::::::%@@@@@@@
// @@@@@@@::::::::::::::::::::::::::@@@@@*::::::::::::::::::-@@@@::::::::::::::::::::::::::::::-@@@@@@@
// @@@@@@=::::::::::::::::::::::::::@@@@@@*::::::::::::::::-@@@@+:::::::::::::::::::::::::::::::*@@@@@@
// @@@@@%:::::::::::::::::::::::::::@@@@@@@*::::::::::::::-%@@@#:::::::::::::::::::::::::::::::::*@@@@@
// @@@@@::::::::::::::::::::::::::::@@@@@@@@@*::::::::::+@@@@@*::::::::::::::::::::::::::::::::::-@@@@@
// @@@@*::::::::::::::::::::::::::::@@@#=@@@@@@%#*+=**%@@@@@@=::::::::::::::::::::::::::::::::::::*@@@@
// @@@@:::::::::::::::::::::::::::::@@@#::*@@@@@@@@@@@@@@@@*:::::::::::::::::::::::::::::::::::::::@@@@
// @@@*:::::::::::::::::::::::::::::@@@#::::=*@@@@@@@@@%#=:::::::::::::::::::::::::::::::::::::::::#@@@
// @@@=:::::::::::::::::::::::::::::@@@#::::::::-==+=-:::::::::::::::::::::::::::::::::::::::::::::=@@@
// @@@::::::::::::::::::::::::::::::@@@#:::::::::::::::::::::::::::::::::::::::::::::::::--:::::::::@@@
// @@*::::::::::::::::::::::::::::::@@@#:::::::::+######*:::::::::::::::::::::::::::::::+@=:::::::::#@@
// @@*::::::::::::::::::::::::::::::@@@#:::--::::===+*+==:::::=-:::::::=-::::::-::::::::+@=:::::::::+@@
// @@:::::::::::::::::::::::::::::::@@@#::+@#@@::-#@@%@%=::=@@@@+:::+@@@@@+-::@@@@%*-::#@@%#:::::::::@@
// @@:::::::::::::::::+*##%%#*=-::::@@@#::+@@=::-%@:::-*@=:%@-:=:::*@*:::-@*::@@-:=@%::=*@*=:::::::::@@
// @@::::::::::::::+%@@@@@@@@@@@%*-:@@@#::+@*:::*@@@@@@@@#:+@%*-:::@@@@@@@@@-:@%:::#@:::+@=::::::::::@@
// @%::::::::::::*@@@@@@@@@@@@@@@@@#+@@#::+@+:::+@=-------:::=%@*::@%-------::@%:::#@:::+@=::::::::::%@
// @%::::::::::-@@@@@@++-::::-=#@@@@@+*#::+@+:::-@%=-:+%%-:-=::#@::*@*-::+%=::@%:::#@:::+@=::::::::::#@
// @%:::::::::=@@@@%+::::::::::::#@@@@**::+@+::::-#@@@@%=::#@%%@+:::+@@@@@*:::@%:::#@:::+@=::::::::::%@
// @%::::::::-@@@@+:::::::::::::::-@@@@+:::-::::::::--:::::::=-:::::::-=-:::::--:::-=----=-::::::::::%@
// @@:::::::-@@@@*:::::::::::::::::-%%%*:::::::::::::::::::::::::::::::::::::::::::+%%%%%%#::::::::::@@
// @@:::::::*@@@#:::::::+#@%*-::::::=+*#*=+#*=-:::::+#%%#-::::::=#%%#=::::-#@@#-::::=##%#+-::::::::::@@
// @@-::::::@@@@-:::::-%@#+*%@*:::::%@#+#@@+*@*::::%@+==#@*::::%@#+=%@*-::%@-=*=:::*@*+=+@%-::::::::-@@
// @@+:::::-@@@@::::::#@=::::#@=::::%@::=@*::#@-::*@=::::-@+::*@*::::*@*::*@*-::::-@@####%@#::::::::*@@
// @@#:::::-@@@*::::::@@:::::=@*::::%@::=@*::#@-::%@::::::@*::%@-::::-@%:::=%@%-::*@#******+::::::::*@@
// @@@-::::-@@@%::::::#@+::::%@-::::%@::=@*::#@-::@@-::::=@-::*@*::::*@*:::-::@%::=@*::::-=-::::::::@@@
// @@@+:::::@@@@-::::::%@%*#@@+:::::%@::=@*::#@-::@@@#=+#@+::::*@%*+@@*:::#@*+@*:::*@%*+%@%::::::::-@@@
// @@@#:::::#@@@+:::::::=*##+-::::::+*::-*=::+*:::@%=*%#*-::::::=*%#*-:::::=*#+:::::-*##*=--=::::::*@@@
// @@@@-::::=@@@@-::::::::::::::::::=**+::::::::::@%:::::::::::::::::::::::-==++**##%%@@@@@@@-::::-@@@@
// @@@@*:::::*@@@@-::::::::::::::::+@@@#::::::::::::::::::::-==++**##=-#@@@@@@@@@@@@@@@@@@@@@=::::*@@@@
// @@@@@-:::::#@@@@+-:::::::::::::*@@@@::::::-==++--##%@@@@@@@@@#*#@@%%@@@@@@@@@@@#@@@@@*#@@@+:::-@@@@@
// @@@@@%::::::*@@@@@+-:::::::::+@@@@%:=@@@@@@@@@@==@@@**%@@@@*-#@*-@@*@@@*-+**@@@:%@@==@++@@*:::%@@@@@
// @@@@@@*::::::=@@@@@@@%%**##@@@@@@=::=@@@@#-:--=-=@@=+@+=@@@:%@@@=+@-*@*-@@@+:@@=#@:*@@%-@@#::+@@@@@@
// @@@@@@@-:::::::+%@@@@@@@@@@@@@@#-::::@@@+-%@@@*--@@:@@=*@@@%=*%@@@@*=@-*@@@*:+@=+=#@@@%:@@%:-@@@@@@@
// @@@@@@@@-::::::::=*%@@@@@@@##-:::::::@@@:#@@@@@*:@@:%==@@@@@@%+-%@@#-@*+@@@:+:@*:*@@@@@:%@@-@@@@@@@@
// @@@@@@@@#-:::::::::::::-:::::::::::::@@%:%@@@@@*-@@-#@@@#-@*%@@@-#@@:@@#=+:%@-#@:@@@@@@*=@@%@@@@@@@@
// @@@@@@@@@*:::::::::::::::::::::::::::#@@--@@@@%:*@@%*+*=*@@=+@@@=+@@-#@@@@@@@=#@#@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@*-:::::::::::::::::::::::::#@@@+-==-:#@@@@@@@@@@@@#++*#@@@@@@@#@@@%:@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@*-::::::::::::::::::::::::+@@@@@%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@-=-:+**++==--::%@@@@@@@@@@@
// @@@@@@@@@@@@#-:::::::::::::::::::::::=@@@@@@@@@@@@@@@@@@@@@%%##**++=---::::::::::::::::%@@@@@@@@@@@@
// @@@@@@@@@@@@@@-::::::::::::::::::::::-@@@@@@%###**++=--::::::::::::::::::::::::::::::-%@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@+::::::::::::::::::::::--::::::::::::::::::::::::::::::::::::::::::::+@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@%-::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-%@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@+-:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::+@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@%=::::::::::::::::::::::::::::::::::::::::::::::::::::::::::+%@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@%=::::::::::::::::::::::::::::::::::::::::::::::::::::::=%@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@%=-:::::::::::::::::::::::::::::::::::::::::::::::::+%@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@@@*-:::::::::::::::::::::::::::::::::::::::::::::#@@@@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@%+-:::::::::::::::::::::::::::::::::::::::+%@@@@@@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*=-:::::::::::::::::::::::::::::::+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%**=-:::::::::::::::::::::=+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%**++=====+++*##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 
-->
<!-- Font Awesome -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css" integrity="sha512-DTOQO9RWCH3ppGqcWaEA1BIZOC6xxalwEsw9c2QQeAIftl+Vegovlnee1c9QX4TctnWMn13TZye+giMm8e2LwA==" crossorigin="anonymous" referrerpolicy="no-referrer" />
<div class="pp-desc-container">
    <div class="pp-desc-wrap">

        <!-- Badge lauréat -->
        <div class="pp-award-row">
            <div class="pp-laurel-badge">
                <img decoding="async"
                    src="https://presentcomposedesign.fr/wp-content/uploads/2026/03/3rd_place_svg_PresentComposedesign_NWSOPC.svg"
                    alt="3rd Place - New Worlds and Splats Open Call"
                    class="pp-laurel-img"
                />
            </div>
        </div>

        <h2 class="pp-title">Paper Plane <i class="fa-regular fa-paper-plane pp-title-icon"></i></h2>
        <p class="pp-subtitle">Mon tout premier plugin Arrival.Space. Un avatar universel pour le web immersif.</p>

        <div class="pp-divider"></div>

        <div class="pp-content">
            <div class="pp-block">
                <h3 class="pp-heading">Le concept</h3>
                <p>Paper Plane est parti d'une question simple : et si le meilleur avatar était aussi le plus universel ? Pas de personnage genré, pas de corps humanoïde. Juste un avion en papier, instinctif et léger, qui traverse librement chaque monde d'Arrival.Space.</p>
            </div>

            <div class="pp-block">
                <h3 class="pp-heading">Pourquoi un avion en papier ?</h3>
                <p>Tout le monde en a plié un. Tout le monde en a lancé un. C'est peut-être l'objet le plus démocratique qui existe. En tant qu'avatar, il efface toute friction d'identification : pas d'âge, pas de genre, pas de skin à choisir. Du mouvement pur, et une liberté totale d'exploration.</p>
            </div>

            <div class="pp-block">
                <h3 class="pp-heading">De SplatGate à Paper Plane</h3>
                <p>Ce projet s'appuie sur toute l'expertise en Gaussian Splatting que j'ai construite avec SplatGate. Paper Plane, c'est mon premier pas dans l'écosystème Arrival.Space, un nouveau terrain pour pousser les limites du web immersif, du spatial computing et du vibe coding.</p>
            </div>

            <!-- Tags compacts + VR gradient -->
            <div class="pp-tags">
                <span class="pp-tag">🧊 Gaussian Splatting</span>
                <span class="pp-tag">🌐 Web Immersif</span>
                <span class="pp-tag pp-tag-vr"><span class="pp-vr-gradient">Full VR available Experience -ᯅ-</span> ✔️</span>
            </div>
        </div>

        <!-- CTAs - 3 boutons sur une ligne -->
        <div class="pp-cta-row">
            <a href="https://arrival.space/83754293_5074?gate=608f2483-802b-4fa7-95bb-920bed1431ad" target="_blank" class="pp-cta-primary">
                Explorer les univers gagnants <i class="fa-regular fa-paper-plane"></i>
            </a>
            <a href="https://arrival.space/82998375_8446" target="_blank" class="pp-cta-secondary">
                Essayer Paper Plane
            </a>
            <a href="https://buymeacoffee.com/presentcomposedesign" target="_blank" class="pp-cta-support">
                <i class="fa-solid fa-heart pp-heart-pulse"></i> Soutenir / Remercier
            </a>
        </div>

        <!-- Partenaires -->
        <div class="pp-partners">
            <span class="pp-partners-label">Organisé par</span>
            <div class="pp-partners-logos">
                <a href="https://arrival.space/" target="_blank" class="pp-partner-block" title="Arrival.Space">
                    <img decoding="async"
                        src="https://presentcomposedesign.fr/wp-content/uploads/2026/03/arrival-space-logo-white.svg"
                        alt="Arrival.Space"
                        class="pp-partner-logo"
                    />
                    <span class="pp-partner-name">Arrival.Space</span>
                </a>
                <span class="pp-partners-sep">&</span>
                <a href="https://www.choice.love/" target="_blank" class="pp-partner-block" title="CHOICE DAO">
                    <img decoding="async"
                        src="https://presentcomposedesign.fr/wp-content/uploads/2026/03/choice-DAO-logo-1.svg"
                        alt="CHOICE DAO"
                        class="pp-partner-logo"
                    />
                    <span class="pp-partner-name">CHOICE DAO</span>
                </a>
            </div>
        </div>

    </div>
</div>
<style>
    /* Animations */
    @keyframes ppHoloFlow {
        0% { background-position: 0% 50%; }
        100% { background-position: 200% 50%; }
    }
    @keyframes ppBronzeFlow {
        0% { background-position: 0% 50%; }
        100% { background-position: 200% 50%; }
    }
    @keyframes ppHeartBeat {
        0% { transform: scale(1); }
        50% { transform: scale(1.15); }
        100% { transform: scale(1); }
    }

    .pp-desc-container {
        width: 100vw;
        position: relative;
        left: 50%;
        right: 50%;
        margin-left: -50vw;
        margin-right: -50vw;
        padding: 0;
        background: linear-gradient(175deg, #0a0e1a 0%, #111827 50%, #0f172a 100%);
        box-sizing: border-box;
        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, sans-serif;
        overflow: hidden;
    }
    .pp-desc-wrap {
        max-width: 900px;
        margin: 0 auto;
        padding: 60px 40px 50px;
    }

    /* Badge lauréat */
    .pp-award-row {
        display: flex;
        justify-content: center;
        margin-bottom: 4px;
    }
    .pp-laurel-badge {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 8px;
    }
    .pp-laurel-img {
        width: 160px;
        height: auto;
        filter: drop-shadow(0 0 14px rgba(184, 122, 94, 0.35));
    }
    .pp-award-label {
        font-size: 11px;
        font-weight: 600;
        color: #C4836A;
        letter-spacing: 2.5px;
        text-transform: uppercase;
        text-align: center;
        opacity: 0.85;
    }

    /* Titre & sous-titre */
    .pp-title {
        font-size: 46px;
        font-weight: 800;
        color: #ffffff;
        margin: 0 0 10px 0;
        line-height: 1.1;
        text-align: center;
    }
    .pp-title-icon {
        font-size: 36px;
        vertical-align: middle;
        margin-left: 6px;
        color: #00BFFF;
    }
    .pp-subtitle {
        font-size: 18px;
        color: #94a3b8;
        margin: 0 0 30px 0;
        line-height: 1.5;
        text-align: center;
    }
    .pp-divider {
        width: 60px;
        height: 3px;
        background: linear-gradient(90deg, #00BFFF, #1E90FF);
        border-radius: 2px;
        margin: 0 auto 40px;
    }

    /* Contenu */
    .pp-content {
        margin-bottom: 36px;
    }
    .pp-block {
        margin-bottom: 28px;
    }
    .pp-heading {
        font-size: 18px;
        font-weight: 700;
        color: #e2e8f0;
        margin: 0 0 8px 0;
    }
    .pp-block p {
        font-size: 15px;
        color: #94a3b8;
        line-height: 1.7;
        margin: 0;
    }

    /* Tags compacts */
    .pp-tags {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        margin-top: 28px;
        justify-content: center;
    }
    .pp-tag {
        display: inline-flex;
        align-items: center;
        padding: 2px 10px;
        font-size: 11px;
        line-height: 1.4;
        font-weight: 500;
        color: #94a3b8;
        background: rgba(255, 255, 255, 0.03);
        border: 1px solid rgba(255, 255, 255, 0.06);
        border-radius: 20px;
        letter-spacing: 0.3px;
        white-space: nowrap;
    }
    .pp-tag-vr {
        gap: 4px;
    }
    .pp-vr-gradient {
        background: linear-gradient(120deg, #00F7AD, #0010EF 50%, #00F7AD);
        background-size: 200% 200%;
        animation: ppHoloFlow 5s linear infinite;
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
        font-weight: 600;
    }

    /* CTAs - 3 boutons sur une ligne */
    .pp-cta-row {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 12px;
        flex-wrap: nowrap;
        margin-bottom: 50px;
    }

    /* CTA principal - contour gradient animé bronze/or */
    .pp-cta-primary {
        position: relative;
        display: inline-flex;
        align-items: center;
        gap: 8px;
        padding: 12px 24px;
        background: rgba(255, 255, 255, 0.03);
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
        color: #D4967A;
        text-decoration: none;
        font-size: 14px;
        font-weight: 700;
        border-radius: 10px;
        border: 2px solid transparent;
        transition: transform 0.2s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.2s;
        white-space: nowrap;
    }
    .pp-cta-primary::before {
        content: "";
        position: absolute;
        inset: 0;
        border-radius: 10px;
        padding: 2px;
        background: linear-gradient(120deg, #C9A84C, #B87A5E 30%, #D4967A 60%, #C9A84C);
        background-size: 200% 200%;
        animation: ppBronzeFlow 4s linear infinite;
        -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
        -webkit-mask-composite: xor;
        mask-composite: exclude;
        z-index: -1;
    }
    .pp-cta-primary:hover {
        transform: translateY(-2px);
        box-shadow: 0 5px 20px rgba(184, 122, 94, 0.25);
    }

    .pp-cta-secondary {
        display: inline-flex;
        align-items: center;
        padding: 12px 24px;
        background: transparent;
        color: #00BFFF;
        text-decoration: none;
        font-size: 14px;
        font-weight: 700;
        border-radius: 10px;
        border: 2px solid rgba(0, 191, 255, 0.4);
        transition: all 0.3s ease;
        white-space: nowrap;
    }
    .pp-cta-secondary:hover {
        border-color: #00BFFF;
        background: rgba(0, 191, 255, 0.08);
        transform: translateY(-2px);
    }
    .pp-cta-support {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        padding: 12px 24px;
        background: rgba(255, 255, 255, 0.03);
        color: #fff;
        text-decoration: none;
        font-size: 14px;
        font-weight: 700;
        border-radius: 10px;
        border: 2px solid rgba(255, 255, 255, 0.12);
        transition: all 0.3s ease;
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
        white-space: nowrap;
    }
    .pp-cta-support:hover {
        transform: translateY(-2px);
        background: rgba(255, 255, 255, 0.08);
        border-color: rgba(255, 255, 255, 0.25);
        box-shadow: 0 0 20px rgba(255, 64, 129, 0.2);
    }
    .pp-heart-pulse {
        color: #ff4081;
        animation: ppHeartBeat 2s infinite ease-in-out;
    }

    /* Partenaires */
    .pp-partners {
        text-align: center;
        padding-top: 30px;
        border-top: 1px solid rgba(255, 255, 255, 0.06);
    }
    .pp-partners-label {
        display: block;
        font-size: 11px;
        font-weight: 600;
        color: #64748b;
        letter-spacing: 2px;
        text-transform: uppercase;
        margin-bottom: 18px;
    }
    .pp-partners-logos {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 20px;
    }
    .pp-partner-block {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 8px;
        text-decoration: none;
        opacity: 0.7;
        transition: opacity 0.3s;
    }
    .pp-partner-block:hover {
        opacity: 1;
    }
    .pp-partner-name {
        font-size: 12px;
        font-weight: 200;
        color: #94a3b8;
        letter-spacing: 0.5px;
    }
    .pp-partner-logo {
        height: 22px;
        width: auto;
        object-fit: contain;
    }
    .pp-partners-sep {
        color: #64748b;
        font-size: 20px;
        font-weight: 200;
        align-self: center;
        padding: 0 10px;
    }

    /* Responsive */
    @media (max-width: 768px) {
        .pp-desc-wrap {
            padding: 40px 20px 36px;
        }
        .pp-title {
            font-size: 30px;
        }
        .pp-title-icon {
            font-size: 24px;
        }
        .pp-subtitle {
            font-size: 16px;
        }
        .pp-cta-row {
            flex-wrap: wrap;
            flex-direction: column;
            align-items: center;
        }
        .pp-cta-primary,
        .pp-cta-secondary,
        .pp-cta-support {
            width: 100%;
            max-width: 300px;
            text-align: center;
            justify-content: center;
        }
        .pp-partners-logos {
            flex-direction: column;
            width: 80px;
            gap: 14px;
        }
        .pp-partners-sep {
            display: none;
        }
        .pp-laurel-img {
            width: 120px;
        }
    }
</style>
				</div>
				</div>
					</div>
		</header>
					</div>
		</section>
				</div>
		<p>Cet article <a href="https://presentcomposedesign.fr/paper-plane-mode_for_arrival-space/">Paper plane</a> est apparu en premier sur <a href="https://presentcomposedesign.fr">Présent Composé design</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Curiosity</title>
		<link>https://presentcomposedesign.fr/curiosity/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Thu, 25 Dec 2025 18:47:39 +0000</pubDate>
				<category><![CDATA[[ia]]]></category>
		<category><![CDATA[Design graphique]]></category>
		<category><![CDATA[Design produit]]></category>
		<guid isPermaLink="false">https://presentcomposedesign.fr/?p=35140</guid>

					<description><![CDATA[<p>Curiosity Viewer ● Curiosity Chat 🧠 Curiosity 🗑️ ⚙️ 👋 Bonjour, Je suis Curiosity, votre oracle culturel français. Posez-moi n&#8217;importe quelle question ! 🎤 ▶️ ⚙️ Réglages Avancés ✕ 🎨 Apparence Thème Choisissez le thème d&#8217;affichage Auto ☀️ Clair 🌙 Sombre Affichage du personnage Montrer/cacher Curiosity Afficher le personnage Curiosity Taille de la fenêtre Ajuster la taille selon vos préférences 100% 🎤 Synthèse Vocale Voix française Sélectionnez la voix de lecture Vitesse de lecture 1.0x Lecture automatique des réponses Lire les sources à voix haute 💬 Conversation Mode de réponse Longueur des réponses de Curiosity Concis (2 phrases)Détaillé (5 phrases)Complet (10+ phrases) Historique conservé Nombre d&#8217;échanges mémorisés 10 Sauvegarder l&#8217;historique (localStorage) 🔧 Avancé URL de l&#8217;API Ne modifiez que si nécessaire Délai d&#8217;affichage des yeux Durée d&#8217;affichage des recherches (secondes) 8s Effet parallax sur le personnage Mode debug (console) 💾 Sauvegarder les paramètres</p>
<p>Cet article <a href="https://presentcomposedesign.fr/curiosity/">Curiosity</a> est apparu en premier sur <a href="https://presentcomposedesign.fr">Présent Composé design</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="35140" class="elementor elementor-35140">
				<div class="elementor-element elementor-element-11b78ac e-flex e-con-boxed wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no e-con e-parent" data-id="11b78ac" data-element_type="container" data-e-type="container">
					<div class="e-con-inner">
				<div class="elementor-element elementor-element-cfacc9d elementor-widget elementor-widget-html" data-id="cfacc9d" data-element_type="widget" data-e-type="widget" data-widget_type="html.default">
				<div class="elementor-widget-container">
					<!DOCTYPE html>
<html lang="fr">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Curiosity Viewer</title>
    <style>
        :root {
            --phi: 1.618;
            --viewer-size: min(500px, 80vmin);
        }

        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        body {
            display: flex;
            align-items: center;
            justify-content: center;
            min-height: 100vh;
            background: #f5f7fa;
            font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
        }

        .curiosity-viewer {
            position: relative;
            width: var(--viewer-size);
            height: var(--viewer-size);
            transition: transform 0.1s ease-out;
        }

        /* Base character image */
        .character-base {
            width: 100%;
            height: 100%;
            position: absolute;
            top: 0;
            left: 0;
        }

        .character-base img {
            width: 100%;
            height: 100%;
            object-fit: contain;
            filter: drop-shadow(0 20px 40px rgba(0,0,0,0.15));
        }

        /* Screen container with perfect SVG mask */
        .screen-container {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            -webkit-mask-image: url('https://presentcomposedesign.fr/wp-content/uploads/2025/12/Curiosity_mask-screen-transparent_PresentComposedesign.svg');
            mask-image: url('https://presentcomposedesign.fr/wp-content/uploads/2025/12/Curiosity_mask-screen-transparent_PresentComposedesign.svg');
            -webkit-mask-size: 100% 100%;
            mask-size: 100% 100%;
            -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
            -webkit-mask-position: center;
            mask-position: center;
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 0;
            padding: 0;
            background: #000;
        }

        /* Left Eye - Code */
        .left-eye {
            width: 100%;
            height: 100%;
            background: #000;
            overflow: hidden;
            display: flex;
            flex-direction: column;
            justify-content: flex-start;
            padding: 8%;
            font-family: 'Courier New', monospace;
            font-size: 7px;
            line-height: 1.5;
            color: #fff;
            opacity: 0;
            transition: opacity 0.3s;
        }

        .left-eye.active {
            opacity: 1;
            animation: scrollCode 6s linear infinite;
        }

        @keyframes scrollCode {
            0% { transform: translateY(0); }
            100% { transform: translateY(-30%); }
        }

        .code-line {
            white-space: nowrap;
            text-shadow: 0 0 8px #fff;
            margin-bottom: 1px;
        }

        /* Right Eye - Preview */
        .right-eye {
            width: 100%;
            height: 100%;
            background: #fff;
            overflow: hidden;
            position: relative;
        }

        .eye-preview {
            width: 100%;
            height: 100%;
            display: none;
        }

        .eye-preview.active {
            display: block;
        }

        .eye-preview iframe {
            width: 400%;
            height: 400%;
            border: none;
            transform: scale(0.25);
            transform-origin: top left;
            pointer-events: none;
        }

        .preview-placeholder {
            width: 100%;
            height: 100%;
            display: flex;
            align-items: center;
            justify-content: center;
            color: #fff;
            font-family: monospace;
            font-size: 8px;
            text-align: center;
            background: #000;
        }

        /* Status Indicator */
        .status-indicator {
            position: absolute;
            bottom: 8%;
            right: 12%;
            width: calc(var(--viewer-size) * 0.08);
            height: calc(var(--viewer-size) * 0.08);
            border-radius: 50%;
            background: #4ade80;
            box-shadow: 0 0 0 calc(var(--viewer-size) * 0.02) rgba(74,222,128,0.3);
            z-index: 100;
            transition: all 0.3s ease;
        }

        .status-indicator.thinking {
            background: #fbbf24;
            box-shadow: 0 0 0 calc(var(--viewer-size) * 0.02) rgba(251,191,36,0.3);
            animation: pulse 1.5s infinite;
        }

        .status-indicator.error {
            background: #f87171;
            box-shadow: 0 0 0 calc(var(--viewer-size) * 0.02) rgba(248,113,113,0.3);
        }

        @keyframes pulse {
            0%, 100% { transform: scale(1); }
            50% { transform: scale(1.2); }
        }

        /* Responsive */
        @media (max-width: 768px) {
            :root {
                --viewer-size: min(320px, 85vmin);
            }
            .left-eye {
                font-size: 6px;
            }
        }
    </style>
</head>
<body>
    <div class="curiosity-viewer" id="viewer">
        <!-- Character Base -->
        <div class="character-base">
            <img decoding="async" id="characterImg" 
                 src="https://presentcomposedesign.fr/wp-content/uploads/2025/12/Curiosity_OFF_PresentComposedesign.png"
                 alt="Curiosity">
        </div>

        <!-- Eyes Screen -->
        <div class="screen-container">
            <!-- Left Eye -->
            <div class="left-eye" id="leftEye"></div>
            
            <!-- Right Eye -->
            <div class="right-eye">
                <div id="rightEye" class="eye-preview">
                    <div class="preview-placeholder">●</div>
                </div>
            </div>
        </div>

        <!-- Status -->
        <div id="statusIndicator" class="status-indicator"></div>
    </div>

    <script>
        const STATES = {
            OFF: 'https://presentcomposedesign.fr/wp-content/uploads/2025/12/Curiosity_OFF_PresentComposedesign.png',
            ON: 'https://presentcomposedesign.fr/wp-content/uploads/2025/12/Curiosity_ON_PresentComposedesign.png',
            THINKING: 'https://presentcomposedesign.fr/wp-content/uploads/2025/12/Curiosity_requesting-sample_PresentComposedesign.png',
            GOOD: 'https://presentcomposedesign.fr/wp-content/uploads/2025/12/Curiosity_good_PresentComposedesign.png',
            BAD: 'https://presentcomposedesign.fr/wp-content/uploads/2025/12/Curiosity_bad_PresentComposedesign.png'
        };

        // API pour contrôler le viewer depuis l'extérieur
        window.CuriosityViewer = {
            setState(state) {
                document.getElementById('characterImg').src = STATES[state] || STATES.ON;
            },

            setStatus(status) {
                const indicator = document.getElementById('statusIndicator');
                indicator.className = 'status-indicator ' + (status || '');
            },

            showCode(query) {
                const leftEye = document.getElementById('leftEye');
                const code = [
                    `> web_search("${query}")`,
                    `> Connecting...`,
                    `> fetch wikipedia.org`,
                    `> fetch meteofrance.com`,
                    `> fetch coingecko.com`,
                    `> Parsing HTML...`,
                    `> const data = await parse()`,
                    `> Extracting content...`,
                    `> Processing 12 sources`,
                    `> Analyzing data...`,
                    `> Building response...`,
                    `> ✓ Complete`,
                    ``,
                    `// ${new Date().toLocaleTimeString()}`,
                    `// Query: "${query}"`,
                    `// Confidence: 96%`
                ];
                
                leftEye.innerHTML = code.map(line => 
                    `<div class="code-line">${line}</div>`
                ).join('');
                
                leftEye.classList.add('active');
            },

            showPreview(url) {
                const rightEye = document.getElementById('rightEye');
                if (url && url.startsWith('http')) {
                    rightEye.innerHTML = `<iframe src="${url}" sandbox="allow-same-origin"></iframe>`;
                    rightEye.classList.add('active');
                }
            },

            clearEyes() {
                const leftEye = document.getElementById('leftEye');
                const rightEye = document.getElementById('rightEye');
                
                leftEye.classList.remove('active');
                rightEye.classList.remove('active');
                
                setTimeout(() => {
                    leftEye.innerHTML = '';
                    rightEye.innerHTML = '<div class="preview-placeholder">●</div>';
                }, 300);
            }
        };

        // Parallax
        document.addEventListener('mousemove', e => {
            const x = (e.clientX / window.innerWidth - 0.5) * 12;
            const y = (e.clientY / window.innerHeight - 0.5) * 12;
            document.getElementById('viewer').style.transform = `translate(${x}px, ${y}px)`;
        });

        // Init
        window.CuriosityViewer.setState('OFF');
        setTimeout(() => {
            window.CuriosityViewer.setState('ON');
        }, 1000);

        // Écouter les messages du chat
        window.addEventListener('message', (event) => {
            const { action, data } = event.data;
            
            switch(action) {
                case 'setState':
                    window.CuriosityViewer.setState(data);
                    break;
                case 'setStatus':
                    window.CuriosityViewer.setStatus(data);
                    break;
                case 'showCode':
                    window.CuriosityViewer.showCode(data);
                    break;
                case 'showPreview':
                    window.CuriosityViewer.showPreview(data);
                    break;
                case 'clearEyes':
                    window.CuriosityViewer.clearEyes();
                    break;
            }
        });
    </script>
</body>
</html>				</div>
				</div>
				<div class="elementor-element elementor-element-d5da671 elementor-widget elementor-widget-html" data-id="d5da671" data-element_type="widget" data-e-type="widget" data-widget_type="html.default">
				<div class="elementor-widget-container">
					<!DOCTYPE html>
<html lang="fr">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Curiosity Chat</title>
    <style>
        /* ===================================
           CURIOSITY CHAT v3.2 - Golden Ratio
           © Présent Composé Design
           =================================== */
        
        :root {
            --phi: 1.618;
            --unit: 20px;
            
            /* Espacements selon le nombre d'or */
            --space-xxs: calc(var(--unit) / var(--phi) / var(--phi) / var(--phi));
            --space-xs: calc(var(--unit) / var(--phi) / var(--phi));
            --space-s: calc(var(--unit) / var(--phi));
            --space-m: var(--unit);
            --space-l: calc(var(--unit) * var(--phi));
            --space-xl: calc(var(--unit) * var(--phi) * var(--phi));
            --space-xxl: calc(var(--unit) * var(--phi) * var(--phi) * var(--phi));
            
            /* Tailles selon le nombre d'or */
            --text-xs: calc(var(--unit) / var(--phi) / var(--phi));
            --text-s: calc(var(--unit) / var(--phi));
            --text-m: var(--unit);
            --text-l: calc(var(--unit) * var(--phi));
            --text-xl: calc(var(--unit) * var(--phi) * var(--phi));
            
            --border-radius-s: calc(var(--unit) / var(--phi));
            --border-radius-m: var(--unit);
            --border-radius-l: calc(var(--unit) * var(--phi));
            
            --bg-light: #F5F7FA;
            --bg-dark: #0a0e27;
            --card-light: rgba(255,255,255,0.98);
            --card-dark: rgba(15,20,40,0.98);
            --text-light: #1a1a2e;
            --text-dark: #e8e9f3;
            --accent: #667eea;
            --accent-secondary: #764ba2;
            --success: #4ade80;
            --warning: #fbbf24;
            --error: #f87171;
            
            --chat-width: calc(600px);
            --chat-max-width: calc(var(--chat-width) * var(--phi));
        }

        * {
            box-sizing: border-box;
            margin: 0;
            padding: 0;
        }

        body {
            font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Inter', sans-serif;
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            line-height: var(--phi);
            transition: background-color 0.3s ease;
            min-height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: var(--space-m);
        }

        body.light-mode {
            background: var(--bg-light);
            color: var(--text-light);
        }

        body.dark-mode {
            background: var(--bg-dark);
            color: var(--text-dark);
        }

        /* Main Chat Container */
        .chat-container {
            width: 100%;
            max-width: var(--chat-max-width);
        }

        .chat-interface {
            width: 100%;
            backdrop-filter: blur(calc(var(--space-m) * var(--phi)));
            -webkit-backdrop-filter: blur(calc(var(--space-m) * var(--phi)));
            border-radius: var(--border-radius-l);
            padding: var(--space-l);
            box-shadow: 0 var(--space-m) var(--space-xl) rgba(0,0,0,0.15);
            transition: all 0.3s ease;
        }

        .light-mode .chat-interface {
            background: var(--card-light);
            border: 1px solid rgba(0,0,0,0.06);
        }

        .dark-mode .chat-interface {
            background: var(--card-dark);
            border: 1px solid rgba(255,255,255,0.1);
        }

        /* Header */
        .chat-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: var(--space-l);
            padding-bottom: var(--space-s);
            border-bottom: 1px solid rgba(102,126,234,0.1);
        }

        .chat-title {
            font-size: var(--text-xl);
            font-weight: 800;
            background: linear-gradient(135deg, var(--accent), var(--accent-secondary));
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
            letter-spacing: -0.02em;
        }

        .header-actions {
            display: flex;
            gap: var(--space-xs);
        }

        .icon-btn {
            width: calc(var(--space-l) * var(--phi));
            height: calc(var(--space-l) * var(--phi));
            border-radius: 50%;
            border: none;
            background: rgba(102,126,234,0.1);
            color: var(--accent);
            cursor: pointer;
            display: grid;
            place-items: center;
            transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
            font-size: var(--text-m);
        }

        .icon-btn.danger {
            background: rgba(248,113,113,0.1);
            color: var(--error);
        }

        .icon-btn:hover {
            transform: scale(1.1) rotate(10deg);
            background: rgba(102,126,234,0.2);
        }

        .icon-btn.danger:hover {
            background: rgba(248,113,113,0.2);
        }

        .icon-btn:active {
            transform: scale(0.95);
        }

        /* Messages Area */
        .messages-container {
            height: calc(var(--space-xxl) * 3);
            overflow-y: auto;
            margin-bottom: var(--space-l);
            padding: var(--space-xs);
            scrollbar-width: thin;
            scrollbar-color: var(--accent) transparent;
        }

        .messages-container::-webkit-scrollbar {
            width: calc(var(--space-xs) / 2);
        }

        .messages-container::-webkit-scrollbar-thumb {
            background: var(--accent);
            border-radius: calc(var(--border-radius-s) / 2);
        }

        .message {
            margin-bottom: var(--space-m);
            padding: var(--space-s) var(--space-m);
            border-radius: var(--border-radius-m);
            max-width: 85%;
            animation: slideIn 0.3s cubic-bezier(0.4, 0, 0.2, 1);
            word-wrap: break-word;
            line-height: var(--phi);
        }

        @keyframes slideIn {
            from {
                opacity: 0;
                transform: translateY(var(--space-s));
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        .message.user {
            background: linear-gradient(135deg, var(--accent), var(--accent-secondary));
            color: white;
            margin-left: auto;
            text-align: right;
            box-shadow: 0 var(--space-xs) var(--space-m) rgba(102,126,234,0.2);
        }

        .message.bot {
            background: rgba(102,126,234,0.08);
            border: 1px solid rgba(102,126,234,0.15);
        }

        .dark-mode .message.bot {
            background: rgba(102,126,234,0.12);
            border-color: rgba(102,126,234,0.25);
        }

        .message-sources {
            font-size: var(--text-xs);
            opacity: 0.7;
            margin-top: var(--space-xs);
            padding-top: var(--space-xs);
            border-top: 1px solid rgba(102,126,234,0.2);
            font-style: italic;
            display: flex;
            flex-wrap: wrap;
            gap: var(--space-xs);
        }

        .source-link {
            color: var(--accent);
            text-decoration: none;
            transition: all 0.2s;
            padding: var(--space-xxs) var(--space-xs);
            background: rgba(102,126,234,0.1);
            border-radius: var(--border-radius-s);
        }

        .source-link:hover {
            background: rgba(102,126,234,0.2);
            transform: translateY(-1px);
        }

        .read-sources-btn {
            font-size: var(--text-xs);
            padding: var(--space-xxs) var(--space-xs);
            border: 1px solid var(--accent);
            background: transparent;
            color: var(--accent);
            border-radius: var(--border-radius-s);
            cursor: pointer;
            transition: all 0.2s;
            margin-top: var(--space-xxs);
        }

        .read-sources-btn:hover {
            background: var(--accent);
            color: white;
        }

        /* Input Area */
        .input-area {
            display: flex;
            gap: var(--space-s);
            align-items: center;
        }

        .input-field {
            flex: 1;
            padding: var(--space-s) var(--space-m);
            border-radius: calc(var(--space-xxl));
            border: 2px solid transparent;
            background: rgba(102,126,234,0.08);
            font-size: var(--text-m);
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
            outline: none;
            font-family: inherit;
            line-height: var(--phi);
        }

        .light-mode .input-field {
            color: var(--text-light);
        }

        .dark-mode .input-field {
            color: var(--text-dark);
        }

        .input-field::placeholder {
            opacity: 0.5;
        }

        .input-field:focus {
            border-color: var(--accent);
            background: rgba(102,126,234,0.12);
            box-shadow: 0 0 0 calc(var(--space-xs) / 2) rgba(102,126,234,0.1);
        }

        .action-btn {
            width: calc(var(--space-l) * var(--phi));
            height: calc(var(--space-l) * var(--phi));
            border-radius: 50%;
            border: none;
            background: linear-gradient(135deg, var(--accent), var(--accent-secondary));
            color: white;
            cursor: pointer;
            display: grid;
            place-items: center;
            font-size: var(--text-l);
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
            box-shadow: 0 var(--space-xs) var(--space-m) rgba(102,126,234,0.3);
        }

        .action-btn:hover {
            transform: translateY(calc(var(--space-xxs) * -1));
            box-shadow: 0 var(--space-s) var(--space-l) rgba(102,126,234,0.4);
        }

        .action-btn:active {
            transform: scale(0.95);
        }

        .action-btn.listening {
            animation: pulse 1.5s infinite;
        }

        @keyframes pulse {
            0%, 100% { transform: scale(1); }
            50% { transform: scale(1.15); }
        }

        /* Settings Overlay */
        .settings-overlay {
            position: fixed;
            inset: 0;
            background: rgba(0,0,0,0.6);
            backdrop-filter: blur(var(--space-xs));
            z-index: 999;
            opacity: 0;
            pointer-events: none;
            transition: opacity 0.3s ease;
        }

        .settings-overlay.active {
            opacity: 1;
            pointer-events: all;
        }

        /* Settings Panel */
        .settings-panel {
            position: fixed;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%) scale(0.9);
            width: min(calc(var(--chat-width) * 0.8), 90vw);
            max-height: 85vh;
            overflow-y: auto;
            padding: var(--space-xl);
            border-radius: var(--border-radius-l);
            backdrop-filter: blur(calc(var(--space-l) * var(--phi)));
            box-shadow: 0 var(--space-l) var(--space-xxl) rgba(0,0,0,0.3);
            z-index: 1000;
            opacity: 0;
            pointer-events: none;
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        }

        .settings-panel.active {
            opacity: 1;
            pointer-events: all;
            transform: translate(-50%, -50%) scale(1);
        }

        .light-mode .settings-panel {
            background: var(--card-light);
            border: 1px solid rgba(0,0,0,0.1);
        }

        .dark-mode .settings-panel {
            background: var(--card-dark);
            border: 1px solid rgba(255,255,255,0.15);
        }

        .settings-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: var(--space-xl);
            padding-bottom: var(--space-m);
            border-bottom: 2px solid rgba(102,126,234,0.2);
        }

        .settings-title {
            font-size: var(--text-l);
            font-weight: 800;
            background: linear-gradient(135deg, var(--accent), var(--accent-secondary));
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
        }

        .close-btn {
            width: calc(var(--space-l) * var(--phi));
            height: calc(var(--space-l) * var(--phi));
            border-radius: 50%;
            border: none;
            background: rgba(248,113,113,0.1);
            color: var(--error);
            cursor: pointer;
            display: grid;
            place-items: center;
            font-size: var(--text-l);
            transition: all 0.2s;
        }

        .close-btn:hover {
            background: rgba(248,113,113,0.2);
            transform: scale(1.15) rotate(90deg);
        }

        .settings-section {
            margin-bottom: var(--space-l);
        }

        .section-title {
            font-size: var(--text-m);
            font-weight: 700;
            color: var(--accent);
            margin-bottom: var(--space-m);
            display: flex;
            align-items: center;
            gap: var(--space-s);
        }

        .setting-row {
            margin-bottom: var(--space-m);
        }

        .setting-label {
            display: block;
            font-size: var(--text-s);
            font-weight: 600;
            margin-bottom: var(--space-xs);
            opacity: 0.9;
        }

        .setting-description {
            font-size: var(--text-xs);
            opacity: 0.6;
            margin-bottom: var(--space-xs);
        }

        .setting-select,
        .setting-input {
            width: 100%;
            padding: var(--space-s) var(--space-m);
            border-radius: var(--border-radius-m);
            border: 1px solid rgba(102,126,234,0.2);
            background: rgba(102,126,234,0.08);
            font-size: var(--text-s);
            cursor: pointer;
            outline: none;
            font-family: inherit;
            transition: all 0.2s;
        }

        .light-mode .setting-select,
        .light-mode .setting-input {
            color: var(--text-light);
        }

        .dark-mode .setting-select,
        .dark-mode .setting-input {
            color: var(--text-dark);
        }

        .setting-select:hover,
        .setting-input:hover {
            border-color: var(--accent);
        }

        .setting-select:focus,
        .setting-input:focus {
            border-color: var(--accent);
            background: rgba(102,126,234,0.12);
        }

        .toggle-group {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(calc(var(--space-xxl) * 1.5), 1fr));
            gap: var(--space-xs);
        }

        .toggle-btn {
            padding: var(--space-s);
            border-radius: var(--border-radius-m);
            border: 2px solid transparent;
            background: rgba(102,126,234,0.08);
            cursor: pointer;
            transition: all 0.2s;
            font-weight: 600;
            font-size: var(--text-s);
            text-align: center;
        }

        .light-mode .toggle-btn {
            color: var(--text-light);
        }

        .dark-mode .toggle-btn {
            color: var(--text-dark);
        }

        .toggle-btn.active {
            border-color: var(--accent);
            background: rgba(102,126,234,0.2);
            color: var(--accent);
            transform: scale(1.02);
        }

        .toggle-btn:hover:not(.active) {
            background: rgba(102,126,234,0.15);
        }

        .checkbox-wrapper {
            display: flex;
            align-items: center;
            gap: var(--space-s);
            padding: var(--space-s);
            background: rgba(102,126,234,0.05);
            border-radius: var(--border-radius-m);
            cursor: pointer;
            transition: all 0.2s;
        }

        .checkbox-wrapper:hover {
            background: rgba(102,126,234,0.1);
        }

        .checkbox-wrapper input[type="checkbox"] {
            width: calc(var(--space-m) * var(--phi));
            height: calc(var(--space-m) * var(--phi));
            cursor: pointer;
        }

        .slider-container {
            display: flex;
            align-items: center;
            gap: var(--space-m);
        }

        .slider {
            flex: 1;
            height: var(--space-xs);
            border-radius: calc(var(--space-xs) / 2);
            background: rgba(102,126,234,0.2);
            outline: none;
            cursor: pointer;
        }

        .slider-value {
            min-width: calc(var(--space-xl));
            text-align: center;
            font-weight: 700;
            color: var(--accent);
        }

        /* Responsive */
        @media (max-width: 768px) {
            :root {
                --unit: 16px;
            }

            .chat-interface {
                padding: var(--space-m);
            }

            .settings-panel {
                padding: var(--space-l);
            }

            .toggle-group {
                grid-template-columns: 1fr;
            }
        }

        /* Accessibility */
        @media (prefers-reduced-motion: reduce) {
            *, *::before, *::after {
                animation-duration: 0.01ms !important;
                animation-iteration-count: 1 !important;
                transition-duration: 0.01ms !important;
            }
        }

        .sr-only {
            position: absolute;
            width: 1px;
            height: 1px;
            padding: 0;
            margin: -1px;
            overflow: hidden;
            clip: rect(0,0,0,0);
            white-space: nowrap;
            border: 0;
        }
    </style>
</head>
<body class="light-mode">
    <div class="chat-container">
        <article class="chat-interface">
            <header class="chat-header">
                <h1 class="chat-title">🧠 Curiosity</h1>
                <div class="header-actions">
                    <button class="icon-btn danger" onclick="clearConversation()" 
                            aria-label="Effacer" title="Effacer la conversation">🗑️</button>
                    <button class="icon-btn" onclick="openSettings()" 
                            aria-label="Paramètres" title="Paramètres">⚙️</button>
                </div>
            </header>

            <div id="messages" class="messages-container" role="log" aria-live="polite">
                <div class="message bot">
                    👋 <strong>Bonjour,</strong> Je suis Curiosity, votre oracle culturel français. 
                    <br>Posez-moi n'importe quelle question !
                </div>
            </div>

            <form class="input-area" onsubmit="event.preventDefault(); sendMessage();">
                <input type="text" id="inputField" class="input-field" 
                       placeholder="Posez votre question..." 
                       aria-label="Question">
                <button type="button" class="action-btn" id="micBtn" 
                        onclick="toggleVoice()" aria-label="Vocal">🎤</button>
                <button type="submit" class="action-btn" aria-label="Envoyer">▶️</button>
            </form>
        </article>
    </div>

    <!-- Settings Overlay -->
    <div class="settings-overlay" id="settingsOverlay" onclick="closeSettings()"></div>
    
    <!-- Settings Panel -->
    <aside class="settings-panel" id="settingsPanel" role="dialog" aria-modal="true">
        <header class="settings-header">
            <h2 class="settings-title">⚙️ Réglages Avancés</h2>
            <button class="close-btn" onclick="closeSettings()" aria-label="Fermer">✕</button>
        </header>

        <!-- SECTION: Apparence -->
        <section class="settings-section">
            <h3 class="section-title">🎨 Apparence</h3>
            
            <div class="setting-row">
                <label class="setting-label">Thème</label>
                <div class="setting-description">Choisissez le thème d'affichage</div>
                <div class="toggle-group">
                    <button class="toggle-btn" id="autoThemeBtn" onclick="setTheme('auto')">Auto</button>
                    <button class="toggle-btn active" id="lightThemeBtn" onclick="setTheme('light')">☀️ Clair</button>
                    <button class="toggle-btn" id="darkThemeBtn" onclick="setTheme('dark')">🌙 Sombre</button>
                </div>
            </div>

            <div class="setting-row">
                <label class="setting-label">Affichage du personnage</label>
                <div class="setting-description">Montrer/cacher Curiosity</div>
                <div class="checkbox-wrapper" onclick="toggleViewerDisplay(this)">
                    <input type="checkbox" id="showViewer" checked>
                    <label for="showViewer">Afficher le personnage Curiosity</label>
                </div>
            </div>

            <div class="setting-row">
                <label class="setting-label">Taille de la fenêtre</label>
                <div class="setting-description">Ajuster la taille selon vos préférences</div>
                <div class="slider-container">
                    <input type="range" class="slider" id="chatSize" min="0.8" max="1.5" step="0.1" value="1" 
                           oninput="updateChatSize(this.value)">
                    <span class="slider-value" id="chatSizeValue">100%</span>
                </div>
            </div>
        </section>

        <!-- SECTION: Voix -->
        <section class="settings-section">
            <h3 class="section-title">🎤 Synthèse Vocale</h3>
            
            <div class="setting-row">
                <label class="setting-label" for="voiceSelect">Voix française</label>
                <div class="setting-description">Sélectionnez la voix de lecture</div>
                <select id="voiceSelect" class="setting-select"></select>
            </div>

            <div class="setting-row">
                <label class="setting-label">Vitesse de lecture</label>
                <div class="slider-container">
                    <input type="range" class="slider" id="speechRate" min="0.5" max="2" step="0.1" value="1" 
                           oninput="updateSpeechRate(this.value)">
                    <span class="slider-value" id="speechRateValue">1.0x</span>
                </div>
            </div>

            <div class="setting-row">
                <div class="checkbox-wrapper" onclick="toggleAutoSpeak(this)">
                    <input type="checkbox" id="autoSpeak" checked>
                    <label for="autoSpeak">Lecture automatique des réponses</label>
                </div>
            </div>

            <div class="setting-row">
                <div class="checkbox-wrapper" onclick="toggleReadSources(this)">
                    <input type="checkbox" id="readSources">
                    <label for="readSources">Lire les sources à voix haute</label>
                </div>
            </div>
        </section>

        <!-- SECTION: Conversation -->
        <section class="settings-section">
            <h3 class="section-title">💬 Conversation</h3>
            
            <div class="setting-row">
                <label class="setting-label" for="modeSelect">Mode de réponse</label>
                <div class="setting-description">Longueur des réponses de Curiosity</div>
                <select id="modeSelect" class="setting-select">
                    <option value="concise">Concis (2 phrases)</option>
                    <option value="detailed">Détaillé (5 phrases)</option>
                    <option value="comprehensive">Complet (10+ phrases)</option>
                </select>
            </div>

            <div class="setting-row">
                <label class="setting-label">Historique conservé</label>
                <div class="setting-description">Nombre d'échanges mémorisés</div>
                <div class="slider-container">
                    <input type="range" class="slider" id="historySize" min="3" max="20" step="1" value="10" 
                           oninput="updateHistorySize(this.value)">
                    <span class="slider-value" id="historySizeValue">10</span>
                </div>
            </div>

            <div class="setting-row">
                <div class="checkbox-wrapper" onclick="togglePersistence(this)">
                    <input type="checkbox" id="persistence" checked>
                    <label for="persistence">Sauvegarder l'historique (localStorage)</label>
                </div>
            </div>
        </section>

        <!-- SECTION: Avancé -->
        <section class="settings-section">
            <h3 class="section-title">🔧 Avancé</h3>
            
            <div class="setting-row">
                <label class="setting-label" for="apiUrl">URL de l'API</label>
                <div class="setting-description">Ne modifiez que si nécessaire</div>
                <input type="text" id="apiUrl" class="setting-input" 
                       value="https://curiosity-silk.vercel.app/api/chat" 
                       placeholder="URL de l'API">
            </div>

            <div class="setting-row">
                <label class="setting-label">Délai d'affichage des yeux</label>
                <div class="setting-description">Durée d'affichage des recherches (secondes)</div>
                <div class="slider-container">
                    <input type="range" class="slider" id="eyesDelay" min="3" max="15" step="1" value="8" 
                           oninput="updateEyesDelay(this.value)">
                    <span class="slider-value" id="eyesDelayValue">8s</span>
                </div>
            </div>

            <div class="setting-row">
                <div class="checkbox-wrapper" onclick="toggleParallax(this)">
                    <input type="checkbox" id="parallax" checked>
                    <label for="parallax">Effet parallax sur le personnage</label>
                </div>
            </div>

            <div class="setting-row">
                <div class="checkbox-wrapper" onclick="toggleDebug(this)">
                    <input type="checkbox" id="debug">
                    <label for="debug">Mode debug (console)</label>
                </div>
            </div>
        </section>

        <button class="action-btn" style="width: 100%; border-radius: var(--border-radius-m); margin-top: var(--space-l);" 
                onclick="saveSettings()">
            💾 Sauvegarder les paramètres
        </button>
    </aside>

    <script>
        const API_URL = 'https://curiosity-silk.vercel.app/api/chat';
        
        let config = {
            theme: 'light',
            showViewer: true,
            chatSize: 1,
            speechRate: 1,
            autoSpeak: true,
            readSources: false,
            mode: 'concise',
            historySize: 10,
            persistence: true,
            apiUrl: API_URL,
            eyesDelay: 8,
            parallax: true,
            debug: false
};
let recognition, isListening = false, history = [], voices = [], selectedVoice;
    let viewerWindow = null;

    // ============================================
    // INIT & PERSISTENCE
    // ============================================
    function loadSettings() {
        try {
            const saved = localStorage.getItem('curiosity-config');
            if (saved) {
                config = { ...config, ...JSON.parse(saved) };
                applySettings();
            }
        } catch (e) {
            console.warn('Could not load settings:', e);
        }
    }

    function saveSettings() {
        try {
            localStorage.setItem('curiosity-config', JSON.stringify(config));
            alert('✅ Paramètres sauvegardés !');
            applySettings();
        } catch (e) {
            console.error('Could not save settings:', e);
            alert('❌ Erreur lors de la sauvegarde');
        }
    }

    function applySettings() {
        // Thème
        setTheme(config.theme);
        
        // Taille chat
        updateChatSize(config.chatSize);
        document.getElementById('chatSize').value = config.chatSize;
        
        // Voix
        document.getElementById('speechRate').value = config.speechRate;
        document.getElementById('speechRateValue').textContent = config.speechRate + 'x';
        
        // Checkboxes
        document.getElementById('autoSpeak').checked = config.autoSpeak;
        document.getElementById('readSources').checked = config.readSources;
        document.getElementById('persistence').checked = config.persistence;
        document.getElementById('showViewer').checked = config.showViewer;
        document.getElementById('parallax').checked = config.parallax;
        document.getElementById('debug').checked = config.debug;
        
        // Selects
        document.getElementById('modeSelect').value = config.mode;
        document.getElementById('apiUrl').value = config.apiUrl;
        
        // Sliders
        document.getElementById('historySize').value = config.historySize;
        document.getElementById('historySizeValue').textContent = config.historySize;
        document.getElementById('eyesDelay').value = config.eyesDelay;
        document.getElementById('eyesDelayValue').textContent = config.eyesDelay + 's';
    }

    function loadConversation() {
        if (!config.persistence) return;
        
        try {
            const savedHistory = localStorage.getItem('curiosity-history');
            const savedMessages = localStorage.getItem('curiosity-messages');
            
            if (savedHistory) {
                history = JSON.parse(savedHistory);
            }
            
            if (savedMessages) {
                document.getElementById('messages').innerHTML = savedMessages;
            }
        } catch (e) {
            if (config.debug) console.warn('Could not load conversation:', e);
        }
    }

    function saveConversation() {
        if (!config.persistence) return;
        
        try {
            localStorage.setItem('curiosity-history', JSON.stringify(history));
            localStorage.setItem('curiosity-messages', document.getElementById('messages').innerHTML);
        } catch (e) {
            if (config.debug) console.warn('Could not save conversation:', e);
        }
    }

    function clearConversation() {
        if (confirm('Effacer toute la conversation ?')) {
            history = [];
            localStorage.removeItem('curiosity-history');
            localStorage.removeItem('curiosity-messages');
            
            document.getElementById('messages').innerHTML = `
                <div class="message bot">
                    👋 <strong>Bonjour !</strong> Je suis Curiosity, votre oracle français. Météo, heure, Bitcoin, recettes, histoire... Posez-moi n'importe quelle question !
                </div>
            `;
        }
    }

    // ============================================
    // THEME
    // ============================================
    function detectTheme() {
        return window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light';
    }

    function setTheme(mode) {
        config.theme = mode;
        document.querySelectorAll('.toggle-btn').forEach(b => b.classList.remove('active'));
        document.getElementById(mode + 'ThemeBtn').classList.add('active');
        document.body.className = (mode === 'auto' ? detectTheme() : mode) + '-mode';
    }

    window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', () => {
        if(config.theme === 'auto') setTheme('auto');
    });

    // ============================================
    // VOICE RECOGNITION
    // ============================================
    if('webkitSpeechRecognition' in window || 'SpeechRecognition' in window) {
        const SR = window.SpeechRecognition || window.webkitSpeechRecognition;
        recognition = new SR();
        recognition.lang = 'fr-FR';
        recognition.onresult = e => {
            document.getElementById('inputField').value = e.results[0][0].transcript;
            sendMessage();
        };
        recognition.onend = () => stopListening();
    }

    function toggleVoice() {
        if(!recognition) return alert('❌ Non supporté');
        isListening ? stopListening() : startListening();
    }

    function startListening() {
        isListening = true;
        document.getElementById('micBtn').classList.add('listening');
        recognition.start();
    }

    function stopListening() {
        isListening = false;
        document.getElementById('micBtn').classList.remove('listening');
        if(recognition) recognition.stop();
    }

    // ============================================
    // VOICE SYNTHESIS
    // ============================================
    function loadVoices() {
        voices = speechSynthesis.getVoices().filter(v => v.lang.startsWith('fr'));
        const sel = document.getElementById('voiceSelect');
        sel.innerHTML = '';
        voices.forEach((v, i) => {
            const opt = document.createElement('option');
            opt.value = i;
            opt.textContent = `${v.name} (${v.lang})`;
            sel.appendChild(opt);
        });
        const pref = voices.findIndex(v => v.name.includes('Thomas') || v.name.includes('French'));
        if(pref !== -1) {
            sel.value = pref;
            selectedVoice = voices[pref];
        }
    }

    speechSynthesis.onvoiceschanged = loadVoices;
    loadVoices();
    document.getElementById('voiceSelect').onchange = e => selectedVoice = voices[e.target.value];

    function cleanTextForSpeech(text) {
        // Supprimer les caractères markdown: ** // _ ~~
        return text
            .replace(/\*\*/g, '')
            .replace(/\*/g, '')
            .replace(/\_\_/g, '')
            .replace(/\_/g, '')
            .replace(/\~\~/g, '')
            .replace(/\`\`\`/g, '')
            .replace(/\`/g, '')
            .replace(/\#\#\#/g, '')
            .replace(/\#\#/g, '')
            .replace(/\#/g, '')
            .replace(/\//g, '')
            .trim();
    }

    function speak(text, includeSources = false) {
        if (!config.autoSpeak) return;
        if (!('speechSynthesis' in window)) return;

        const cleanText = cleanTextForSpeech(text);
        
        const utterance = new SpeechSynthesisUtterance(cleanText);
        utterance.lang = 'fr-FR';
        utterance.rate = config.speechRate;
        utterance.pitch = 1.0;
        if(selectedVoice) utterance.voice = selectedVoice;
        
        speechSynthesis.speak(utterance);
    }

    function speakSources(sources) {
        if (!config.readSources || !sources || !sources.length) return;
        
        const sourcesText = `Sources consultées: ${sources.map((s, i) => {
            const domain = s.match(/https?:\/\/([^\/]+)/)?.[1] || s;
            return `source ${i + 1}: ${domain}`;
        }).join(', ')}`;
        
        setTimeout(() => {
            speak(sourcesText);
        }, 1000);
    }

    // ============================================
    // VIEWER COMMUNICATION
    // ============================================
    function sendToViewer(action, data) {
        if (!config.showViewer) return;
        
        // Si viewer dans iframe
        const viewerFrame = parent.document.querySelector('#curiosity-viewer');
        if (viewerFrame && viewerFrame.contentWindow) {
            viewerFrame.contentWindow.postMessage({ action, data }, '*');
        }
        
        // Si viewer dans window séparée
        if (viewerWindow && !viewerWindow.closed) {
            viewerWindow.postMessage({ action, data }, '*');
        }
    }

    // ============================================
    // MESSAGES
    // ============================================
    function addMsg(text, type, sources) {
        const msgs = document.getElementById('messages');
        const div = document.createElement('div');
        div.className = `message ${type}`;
        let html = text;
        
        if(sources?.length) {
            const sourceLinks = sources.map((s, i) => {
                const domain = s.match(/https?:\/\/([^\/]+)/)?.[1] || `Source ${i + 1}`;
                return `<a href="${s}" class="source-link" target="_blank" rel="noopener">${domain}</a>`;
            }).join('');
            
            html += `<div class="message-sources">
                📚 ${sourceLinks}
                ${!config.readSources ? '<button class="read-sources-btn" onclick="speakSources(' + JSON.stringify(sources) + ')">🔊 Lire les sources</button>' : ''}
            </div>`;
        }
        
        div.innerHTML = html;
        msgs.appendChild(div);
        msgs.scrollTop = msgs.scrollHeight;
        
        saveConversation();
    }

    // ============================================
    // SEND MESSAGE
    // ============================================
    async function sendMessage() {
        const input = document.getElementById('inputField');
        const msg = input.value.trim();
        if(!msg) return;

        addMsg(msg, 'user');
        history.push({role: 'user', content: msg});
        if(history.length > config.historySize * 2) {
            history = history.slice(-config.historySize * 2);
        }
        input.value = '';

        // Viewer
        sendToViewer('setState', 'THINKING');
        sendToViewer('setStatus', 'thinking');
        sendToViewer('showCode', msg);

        try {
            const maxSentences = config.mode === 'concise' ? 2 : config.mode === 'detailed' ? 5 : 10;
            
            const res = await fetch(config.apiUrl, {
                method: 'POST',
                headers: {'Content-Type': 'application/json'},
                body: JSON.stringify({
                    question: msg,
                    max_sentences: maxSentences,
                    history: history.slice(-config.historySize)
                })
            });

            if(!res.ok) throw new Error();

            const data = await res.json();
            history.push({role: 'assistant', content: data.answer});

            addMsg(data.answer, 'bot', data.sources);

            // Aperçu dans l'œil droit
            if (data.sources && data.sources.length > 0) {
                sendToViewer('showPreview', data.sources[0]);
                
                setTimeout(() => {
                    sendToViewer('clearEyes');
                }, config.eyesDelay * 1000);
            }

            // Lecture vocale
            speak(data.answer);
            if (config.readSources) {
                speakSources(data.sources);
            }

            // Viewer
            sendToViewer('setState', 'GOOD');
            sendToViewer('setStatus', '');

        } catch(err) {
            if (config.debug) console.error(err);
            addMsg('❌ Erreur. Réessayez.', 'bot');
            sendToViewer('setState', 'BAD');
            sendToViewer('setStatus', 'error');
            sendToViewer('clearEyes');
        }
    }

    // ============================================
    // SETTINGS
    // ============================================
    function openSettings() {
        document.getElementById('settingsPanel').classList.add('active');
        document.getElementById('settingsOverlay').classList.add('active');
    }

    function closeSettings() {
        document.getElementById('settingsPanel').classList.remove('active');
        document.getElementById('settingsOverlay').classList.remove('active');
    }

    function updateChatSize(value) {
        config.chatSize = parseFloat(value);
        document.getElementById('chatSizeValue').textContent = Math.round(value * 100) + '%';
        document.documentElement.style.setProperty('--chat-width', `${600 * value}px`);
    }

    function updateSpeechRate(value) {
        config.speechRate = parseFloat(value);
        document.getElementById('speechRateValue').textContent = value + 'x';
    }

    function updateHistorySize(value) {
        config.historySize = parseInt(value);
        document.getElementById('historySizeValue').textContent = value;
    }

    function updateEyesDelay(value) {
        config.eyesDelay = parseInt(value);
        document.getElementById('eyesDelayValue').textContent = value + 's';
    }

    function toggleViewerDisplay(wrapper) {
        config.showViewer = wrapper.querySelector('input').checked;
    }

    function toggleAutoSpeak(wrapper) {
        config.autoSpeak = wrapper.querySelector('input').checked;
    }

    function toggleReadSources(wrapper) {
        config.readSources = wrapper.querySelector('input').checked;
    }

    function togglePersistence(wrapper) {
        config.persistence = wrapper.querySelector('input').checked;
    }

    function toggleParallax(wrapper) {
        config.parallax = wrapper.querySelector('input').checked;
        sendToViewer('toggleParallax', config.parallax);
    }

    function toggleDebug(wrapper) {
        config.debug = wrapper.querySelector('input').checked;
    }

    // ============================================
    // INIT
    // ============================================
    loadSettings();
    loadConversation();
    setTheme(config.theme);

    // Initialiser le viewer
    sendToViewer('setState', 'OFF');
    setTimeout(() => {
        sendToViewer('setState', 'ON');
        sendToViewer('setStatus', '');
    }, 1000);
</script>
</body>
</html>				</div>
				</div>
					</div>
				</div>
				</div>
		<p>Cet article <a href="https://presentcomposedesign.fr/curiosity/">Curiosity</a> est apparu en premier sur <a href="https://presentcomposedesign.fr">Présent Composé design</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>SPLATGATE⟶⦗⦘</title>
		<link>https://presentcomposedesign.fr/splatgate/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Sat, 15 Nov 2025 10:19:01 +0000</pubDate>
				<category><![CDATA[[ia]]]></category>
		<category><![CDATA[[VR]]]></category>
		<category><![CDATA[Design d'espace]]></category>
		<category><![CDATA[Design produit]]></category>
		<guid isPermaLink="false">https://presentcomposedesign.fr/?p=34089</guid>

					<description><![CDATA[<p>Embarquez pour un voyage immersif inédit avec SPLAT‎GATE, le portail WebXR de Présent Composé Design. Alliant la puissance du Gaussian Splatting à une accessibilité totale sans application, ce hub redéfinit l'exploration spatiale directement depuis votre navigateur. Découvrez notre candidature officielle pour le prix international #SplatOfTheYear aux #ThePolys et soutenez l'innovation française dans le futur du web 3D.</p>
<p>Cet article <a href="https://presentcomposedesign.fr/splatgate/">SPLATGATE⟶⦗⦘</a> est apparu en premier sur <a href="https://presentcomposedesign.fr">Présent Composé design</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="34089" class="elementor elementor-34089">
						<section class="elementor-section elementor-top-section elementor-element elementor-element-e54cb28 elementor-section-full_width elementor-section-height-min-height elementor-section-items-bottom elementor-section-content-middle elementor-section-stretched elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no" data-id="e54cb28" data-element_type="section" data-e-type="section" data-settings="{&quot;stretch_section&quot;:&quot;section-stretched&quot;,&quot;background_background&quot;:&quot;classic&quot;}">
						<div class="elementor-container elementor-column-gap-extended">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-d602f2f" data-id="d602f2f" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-4fd7d3a elementor-widget__width-inherit elementor-widget elementor-widget-html" data-id="4fd7d3a" data-element_type="widget" data-e-type="widget" data-widget_type="html.default">
				<div class="elementor-widget-container">
					<style>
    /* Section plein écran sans aucune bordure ou marge parasite */
    .splatgate-hero-video-only {
        position: relative;
        width: 100%;
        height: 70vh; /* Remplit 100% de la hauteur de la fenêtre */
        margin: 0;
        padding: 0;
        overflow: hidden;
        background-color: #000; /* Fond noir de secours */
    }

    /* La vidéo s'adapte parfaitement à tout l'espace disponible */
    .hero-video-full {
        width: 100%;
        height: 100%;
        object-fit: cover; /* Garantit que la vidéo couvre tout l'espace sans déformation */
        display: block;
    }

    /* Ajustement de la hauteur pour le mobile si besoin d'apercevoir le titre dessous */
    @media (max-width: 768px) {
        .splatgate-hero-video-only {
            height: 70vh; /* Permet de voir le début du titre suivant sur un petit écran */
        }
    }
</style>

<section class="splatgate-hero-video-only">
    <video 
        autoplay 
        muted 
        loop 
        playsinline 
        class="hero-video-full">
        <source src="https://presentcomposedesign.fr/wp-content/uploads/2025/11/video_presentation_SPLATGATE_PresentComposedesign-2025.mp4" type="video/mp4">
        Votre navigateur ne supporte pas la lecture de vidéos.
    </video>
</section>				</div>
				</div>
				<section class="elementor-section elementor-inner-section elementor-element elementor-element-14759a4 elementor-section-boxed elementor-section-height-default elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no" data-id="14759a4" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-inner-column elementor-element elementor-element-43ed930" data-id="43ed930" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-8fda2db splatgate-title elementor-widget elementor-widget-heading" data-id="8fda2db" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h1 class="elementor-heading-title elementor-size-default">SPLATGATE ⟶⦗⦘</h1>				</div>
				</div>
					</div>
		</div>
					</div>
		</section>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-5705354 elementor-section-full_width elementor-section-height-min-height elementor-section-items-bottom elementor-section-content-middle elementor-section-stretched elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no elementor-invisible" data-id="5705354" data-element_type="section" data-e-type="section" data-settings="{&quot;stretch_section&quot;:&quot;section-stretched&quot;,&quot;background_background&quot;:&quot;classic&quot;,&quot;animation&quot;:&quot;fadeInUp&quot;}">
						<div class="elementor-container elementor-column-gap-extended">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-85a3763" data-id="85a3763" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<section class="elementor-section elementor-inner-section elementor-element elementor-element-2ea17bf elementor-section-boxed elementor-section-height-default elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no" data-id="2ea17bf" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-fa870ea" data-id="fa870ea" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-d894641 elementor-widget elementor-widget-image" data-id="d894641" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img fetchpriority="high" decoding="async" width="1000" height="1000" src="https://presentcomposedesign.fr/wp-content/uploads/2025/11/SplatGate_Present-Compose-design-UHD2025_square.jpg" class="attachment-full size-full wp-image-35342" alt="Visuel présentation Splatgate" srcset="https://presentcomposedesign.fr/wp-content/uploads/2025/11/SplatGate_Present-Compose-design-UHD2025_square.jpg 1000w, https://presentcomposedesign.fr/wp-content/uploads/2025/11/SplatGate_Present-Compose-design-UHD2025_square-300x300.jpg 300w, https://presentcomposedesign.fr/wp-content/uploads/2025/11/SplatGate_Present-Compose-design-UHD2025_square-150x150.jpg 150w, https://presentcomposedesign.fr/wp-content/uploads/2025/11/SplatGate_Present-Compose-design-UHD2025_square-768x768.jpg 768w, https://presentcomposedesign.fr/wp-content/uploads/2025/11/SplatGate_Present-Compose-design-UHD2025_square-600x600.jpg 600w" sizes="(max-width: 1000px) 100vw, 1000px" />															</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-dd36fbf" data-id="dd36fbf" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-9570f92 elementor-widget__width-initial elementor-widget elementor-widget-text-editor" data-id="9570f92" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><style>
    .emoji-container {<br />        display: inline-block;<br />        width: 0.8em; /* Taille du conteneur ajustée pour mieux voir l'effet */<br />        height: 0.8em;<br />        margin-right: 0.2em;<br />        position: relative;<br />        background: linear-gradient(45deg, #ff00ff, #00ffff, #ff00ff); /* Dégradé à 45 degrés */<br />        border-radius: 50%;<br />        vertical-align: middle;<br />        animation: colorchange 6s infinite;<br />    }</p>
<p>    .inner-circle {<br />        width: 50%; /* Taille du cercle blanc par rapport au conteneur */<br />        height: 20%;<br />        border-radius: 50%;<br />        background-color: white;<br />        position: relative;<br />        top: 50%; /* Ajuste la position verticale pour centrer */<br />        left: 50%; /* Ajuste la position horizontale pour centrer */<br />        animation: rotate 20s linear infinite; /* Animation de rotation */<br />        transform-origin: center center; /* Point de rotation au centre */<br />    }</p>
<p>    @keyframes colorchange {<br />        0% { filter: hue-rotate(0deg); }<br />        100% { filter: hue-rotate(360deg); }<br />    }</p>
<p>    @keyframes rotate {<br />        0% { transform: translate(-50%, -50%) rotate(0deg); }<br />        100% { transform: translate(-50%, -50%) rotate(360deg); }<br />    }<br /></style></p><div class="inner-circle"> </div><h1><span style="color: #0010ef;">Votre passeport VR pour ailleurs</span><span style="color: #0010ef; font-size: 16px;"> </span></h1><div class="vce-row-container" data-vce-boxed-width="true"><div id="el-ba3f564d" class="vce-row vce-row--col-gap-30 vce-row-equal-height vce-row-content--top" data-vce-do-apply="all el-ba3f564d"><div class="vce-row-content" data-vce-element-content="true"><div id="el-11f4390c" class="vce-col vce-col--md-auto vce-col--xs-1 vce-col--xs-last vce-col--xs-first vce-col--sm-last vce-col--sm-first vce-col--md-last vce-col--lg-last vce-col--xl-last vce-col--md-first vce-col--lg-first vce-col--xl-first"><div class="vce-col-inner" data-vce-do-apply="border margin background el-11f4390c"><div class="vce-col-content" data-vce-element-content="true" data-vce-do-apply="padding el-11f4390c"><div class="vce-google-fonts-heading vce-google-fonts-heading--align-left vce-google-fonts-heading--color-b-0-16-255--45--5C00FF--FF7200 vce-google-fonts-heading--font-family-Roboto"><div id="el-6e30c05c" class="vce-google-fonts-heading-wrapper"><div><span style="color: #0010ef;"> </span></div><div><p><span style="color: #0010ef;">SPLATGATE ⟶⦗⦘ n’est pas un jeu : c’est un portail.</span></p></div><h2><span style="color: #000000;">Ce hub immersif vous permet d’explorer des paysages réalistes en réalité virtuelle depuis votre ordinateur, votre smartphone ou votre casque XR.<br data-start="350" data-end="353" /><br />Installez‑vous confortablement, mettez votre casque (ou utilisez l’interface en version bureau, tablette ou téléphone) et laissez‑vous transporter vers des destinations d’exception.</span></h2><p>« Voyagez » seul pour vous ressourcer ou partagez l’expérience entre amis ; l’accès est gratuit et illimité.</p></div></div><div class="vce-text-block"><div id="el-93e454cf" class="vce-text-block-wrapper vce" data-vce-do-apply="all el-93e454cf" data-vce-animate="vce-o-animate--fadeInDown"> </div></div></div></div></div></div></div></div><div class="vce-row-container" data-vce-boxed-width="true"><div id="el-d9d9a9fd" class="vce-row vce-row--col-gap-30 vce-row-equal-height vce-row-content--top" data-vce-do-apply="all el-d9d9a9fd"><div class="vce-row-content" data-vce-element-content="true"><div id="el-87440d41" class="vce-col vce-col--md-auto vce-col--xs-1 vce-col--xs-last vce-col--xs-first vce-col--sm-last vce-col--sm-first vce-col--md-last vce-col--lg-last vce-col--xl-last vce-col--md-first vce-col--lg-first vce-col--xl-first"><div class="vce-col-inner" data-vce-do-apply="border margin background el-87440d41"><div class="vce-col-content" data-vce-element-content="true" data-vce-do-apply="padding el-87440d41"><p><!-- /wp:vcwb/empty-comment-element-wrapper --></p></div></div></div><p><!-- /vcwb/dynamicElementComment:87440d41 --></p></div></div></div><p><!-- /vcwb/dynamicElementComment:d9d9a9fd --><!--vcv no format--></p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
					</div>
		</div>
					</div>
		</section>
		<div class="wpr-jarallax elementor-element elementor-element-5fe6ffb e-con-full wpr-jarallax-yes e-flex wpr-particle-no wpr-sticky-section-no e-con e-parent" speed-data="1.4" bg-image="https://presentcomposedesign.fr/wp-content/uploads/2025/11/SplatGate_Present-Compose-design-UHD2025-2_2553x1594.jpg" scroll-effect="scroll" data-id="5fe6ffb" data-element_type="container" data-e-type="container" data-settings="{&quot;background_background&quot;:&quot;classic&quot;}">
				<div class="elementor-element elementor-element-8ce9abf elementor-widget elementor-widget-spacer" data-id="8ce9abf" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				</div>
		<div class="elementor-element elementor-element-c8759f0 e-flex e-con-boxed wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no elementor-invisible e-con e-parent" data-id="c8759f0" data-element_type="container" data-e-type="container" data-settings="{&quot;background_background&quot;:&quot;classic&quot;,&quot;animation&quot;:&quot;slideInRight&quot;}">
					<div class="e-con-inner">
				<div class="elementor-element elementor-element-86a7112 elementor-arrows-position-outside elementor-pagination-position-outside elementor-widget elementor-widget-image-carousel" data-id="86a7112" data-element_type="widget" data-e-type="widget" data-settings="{&quot;slides_to_show&quot;:&quot;3&quot;,&quot;autoplay_speed&quot;:1800,&quot;speed&quot;:350,&quot;slides_to_scroll&quot;:&quot;1&quot;,&quot;image_spacing_custom&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:100,&quot;sizes&quot;:[]},&quot;navigation&quot;:&quot;both&quot;,&quot;autoplay&quot;:&quot;yes&quot;,&quot;pause_on_hover&quot;:&quot;yes&quot;,&quot;pause_on_interaction&quot;:&quot;yes&quot;,&quot;infinite&quot;:&quot;yes&quot;,&quot;image_spacing_custom_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;image_spacing_custom_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]}}" data-widget_type="image-carousel.default">
				<div class="elementor-widget-container">
							<div class="elementor-image-carousel-wrapper swiper" role="region" aria-roledescription="carousel" aria-label="Carrousel d’images" dir="ltr">
			<div class="elementor-image-carousel swiper-wrapper" aria-live="off">
								<div class="swiper-slide" role="group" aria-roledescription="slide" aria-label="1 sur 5"><figure class="swiper-slide-inner"><img decoding="async" class="swiper-slide-image" src="https://presentcomposedesign.fr/wp-content/uploads/2025/11/Broceliande-Present-Compose-design-360-600x600.png" alt="Vue 360° forêt Brocéliande avec cercle de pierres, immersion en réalité virtuelle, Présent Composé design pour_SPLATGATE ⟶⦗⦘" /><figcaption class="elementor-image-carousel-caption">Broceliande ⟶⦗⦘</figcaption></figure></div><div class="swiper-slide" role="group" aria-roledescription="slide" aria-label="2 sur 5"><figure class="swiper-slide-inner"><img decoding="async" class="swiper-slide-image" src="https://presentcomposedesign.fr/wp-content/uploads/2025/11/GRAND-CANYON-Present-Compose-design-HD-360-600x600.png" alt="Vue 360° Grand Canyon réaliste en réalité virtuelle, lumière naturelle filtrée, Présent Composé design pour SPLATGATE ⟶⦗⦘" /><figcaption class="elementor-image-carousel-caption">GRAND-CANYON ⟶⦗⦘</figcaption></figure></div><div class="swiper-slide" role="group" aria-roledescription="slide" aria-label="3 sur 5"><figure class="swiper-slide-inner"><img decoding="async" class="swiper-slide-image" src="https://presentcomposedesign.fr/wp-content/uploads/2025/11/Rail-Road_Present-Compose-design-360-600x600.png" alt="Vue 360° de rails enneigés sous un ciel orageux, voyage virtuel SPLATGATE ⟶⦗⦘ Présent Composé design" /><figcaption class="elementor-image-carousel-caption">Rail-Road ⟶⦗⦘</figcaption></figure></div><div class="swiper-slide" role="group" aria-roledescription="slide" aria-label="4 sur 5"><figure class="swiper-slide-inner"><img decoding="async" class="swiper-slide-image" src="https://presentcomposedesign.fr/wp-content/uploads/2025/11/SALAR-DE-UYUNI-Present-Compose-design-360-600x600.png" alt="Vue 360° du Salar d’Uyuni, désert de sel sous ciel bleu, Présent Composé design pour SPLATGATE ⟶⦗⦘" /><figcaption class="elementor-image-carousel-caption">SALAR DE UYUNI ⟶⦗⦘</figcaption></figure></div><div class="swiper-slide" role="group" aria-roledescription="slide" aria-label="5 sur 5"><figure class="swiper-slide-inner"><img decoding="async" class="swiper-slide-image" src="https://presentcomposedesign.fr/wp-content/uploads/2025/11/Zhangjiajie-Present-Compose-design-360-600x600.png" alt="Panorama 360° du parc national de Zhangjiajie en Chine, imposants pitons rocheux inspirant Avatar" /><figcaption class="elementor-image-carousel-caption">Zhangjiajie⟶⦗⦘</figcaption></figure></div>			</div>
												<div class="elementor-swiper-button elementor-swiper-button-prev" role="button" tabindex="0">
						<svg aria-hidden="true" class="e-font-icon-svg e-eicon-chevron-left" viewBox="0 0 1000 1000" xmlns="http://www.w3.org/2000/svg"><path d="M646 125C629 125 613 133 604 142L308 442C296 454 292 471 292 487 292 504 296 521 308 533L604 854C617 867 629 875 646 875 663 875 679 871 692 858 704 846 713 829 713 812 713 796 708 779 692 767L438 487 692 225C700 217 708 204 708 187 708 171 704 154 692 142 675 129 663 125 646 125Z"></path></svg>					</div>
					<div class="elementor-swiper-button elementor-swiper-button-next" role="button" tabindex="0">
						<svg aria-hidden="true" class="e-font-icon-svg e-eicon-chevron-right" viewBox="0 0 1000 1000" xmlns="http://www.w3.org/2000/svg"><path d="M696 533C708 521 713 504 713 487 713 471 708 454 696 446L400 146C388 133 375 125 354 125 338 125 325 129 313 142 300 154 292 171 292 187 292 204 296 221 308 233L563 492 304 771C292 783 288 800 288 817 288 833 296 850 308 863 321 871 338 875 354 875 371 875 388 867 400 854L696 533Z"></path></svg>					</div>
				
									<div class="swiper-pagination"></div>
									</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-63d407d elementor-widget elementor-widget-spacer" data-id="63d407d" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
				</div>
				<header class="elementor-section elementor-top-section elementor-element elementor-element-4c148bf elementor-section-full_width elementor-section-height-default elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no" data-id="4c148bf" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-no">
					<header class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-3c33b84" data-id="3c33b84" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-778d960 elementor-widget__width-inherit elementor-widget elementor-widget-html" data-id="778d960" data-element_type="widget" data-e-type="widget" data-widget_type="html.default">
				<div class="elementor-widget-container">
					<div class="splatgate-container">
    <!-- Iframe Arrival Space -->
    <iframe
        id="arrival-space-iframe"
        src="https://arrival.space/VR_Xprmnts?utm=embed_82998375"
        width="100%"
        height="860"
        allow="camera; microphone; vr; xr; fullscreen"
        allowfullscreen>
    </iframe>

    <!-- Conteneur pour les boutons -->
    <div class="buttons-container">
        <!-- Bloc de texte centré au-dessus du bouton VR -->
        <div class="vr-instruction-text">
            Click here 🡡 from your VR headset
        </div>

        <!-- Bouton VR (centré en haut) -->
        <a
            href="https://arrival.space/VR_Xprmnts"
            target="_blank"
            class="vr-direct-link vr-button"
        >
            SplatGate⟶⦗⦘ in VR ᯅ
        </a>

        <!-- Bouton Plein écran (bas à droite) -->
        <a
            id="fullscreen-link"
            class="vr-direct-link fullscreen-button"
        >
            Plein écran 🗖
        </a>
    </div>
</div>

<style>
    .splatgate-container {
        position: relative;
        width: 100vw;
        max-width: 100%;
        margin: 0;
        padding: 0;
        height: 860px;
        overflow: hidden;
    }

    .buttons-container {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        pointer-events: none;
    }

    .vr-instruction-text {
        position: absolute;
        top: 64px;
        left: 50%;
        transform: translateX(-50%);
        color: white;
        font-size: 14px;
        text-align: center;
        z-index: 1001;
        text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.8);
        pointer-events: auto;
    }

    .vr-direct-link {
        position: absolute;
        padding: 8px 15px;
        background: #FF00FF;
        color: white;
        text-decoration: none;
        font-weight: bold;
        font-size: 14px;
        border-radius: 8px;
        border: 2px solid white;
        box-shadow: 0 0 8px rgba(255, 0, 255, 0.7);
        z-index: 1000;
        pointer-events: auto;
        cursor: pointer;
        transition: all 0.3s;
        font-family: sans-serif;
    }

    .vr-button {
        top: 16px;
        left: 50%;
        transform: translateX(-50%);
    }

    .fullscreen-button {
        bottom: 20px;
        right: 20px;
    }

    .vr-direct-link:hover {
        background: #FF69B4;
        box-shadow: 0 0 12px rgba(255, 0, 255, 0.9);
        z-index: 1001 !important;
    }

    #arrival-space-iframe {
        border: none;
        display: block;
        width: 100vw;
        margin: 0;
    }
</style>

<script>
    // Gestion du bouton Plein écran
    document.getElementById('fullscreen-link').addEventListener('click', function(e) {
        e.preventDefault();
        const iframe = document.getElementById('arrival-space-iframe');
        if (iframe.requestFullscreen) iframe.requestFullscreen();
        else if (iframe.webkitRequestFullscreen) iframe.webkitRequestFullscreen();
        else if (iframe.msRequestFullscreen) iframe.msRequestFullscreen();
    });
</script>
				</div>
				</div>
					</div>
		</header>
					</div>
		</header>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-de33bb3 elementor-section-height-min-height elementor-section-items-bottom elementor-section-content-middle elementor-section-stretched elementor-section-boxed elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no" data-id="de33bb3" data-element_type="section" data-e-type="section" data-settings="{&quot;stretch_section&quot;:&quot;section-stretched&quot;,&quot;background_background&quot;:&quot;classic&quot;}">
						<div class="elementor-container elementor-column-gap-extended">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-87ce8ad" data-id="87ce8ad" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<section class="elementor-section elementor-inner-section elementor-element elementor-element-0da3fca elementor-section-full_width elementor-section-height-default elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no" data-id="0da3fca" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-797121e" data-id="797121e" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-5ab8be5 elementor-widget__width-initial elementor-widget elementor-widget-text-editor" data-id="5ab8be5" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<h1 style="color: #ffffff;">Des destinations à couper le souffle</h1><div data-vce-boxed-width="true"><div data-vce-do-apply="all el-ba3f564d"><div data-vce-element-content="true"><div data-vce-do-apply="border margin background el-11f4390c"><div data-vce-element-content="true" data-vce-do-apply="padding el-11f4390c"><h2 style="color: #ffffff;">Depuis le hall principal, 5 portes vous invitent à la découverte :</h2><h3 style="color: #ffffff;">Brocéliande : plongez au cœur de la mythique forêt bretonne. Ruisseaux chantants, arbres centenaires et clairières lumineuses vous attendent dans cette reconstitution 3D fidèle à l’esprit des légendes arthuriennes.</h3><h3 style="color: #ffffff;">Grand Canyon : admirez les falaises orangées, les gorges vertigineuses et les jeux de lumière du sud-ouest américain. La visite en VR vous permet d’appréhender l’échelle monumentale de ce site emblématique sans prendre l’avion.</h3><h3 style="color: #ffffff;">Salar d’Uyuni : marchez sur un miroir naturel géant en Bolivie. Ce désert de sel offre un horizon infini où ciel et terre se confondent, réinterprété ici en 360° pour vous procurer une sensation de liberté absolue.<br /><br />&#8230;</h3><h2 style="color: #ffffff;">Chaque univers a été sculpté dans un moteur graphique réaliste et optimisé pour la VR. Les textures, les sons d’ambiance et la profondeur des décors vous plongent dans une escapade dépaysante tout en restant chez vous. Revenez régulièrement : de nouvelles destinations sont en préparation.</h2><h6><a style="color: #ffffff; text-decoration: underline;" href="https://arrival.space/VR_Xprmnts">https://arrival.space/VR_Xprmnts</a></h6><h2 style="color: #ffffff; font-variant-ligatures: normal; font-variant-caps: normal; font-family: 'Inter Tight', sans-serif; font-style: normal; font-weight: 400;">Conception &amp; réalisation : <em style="font-size: 20px;">VR_Xprmnts, Présent Composé Design &#8211; 2025</em></h2></div></div></div></div></div>								</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-1738006" data-id="1738006" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-87f2b39 elementor-invisible elementor-widget elementor-widget-image" data-id="87f2b39" data-element_type="widget" data-e-type="widget" data-settings="{&quot;_animation&quot;:&quot;zoomIn&quot;}" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img decoding="async" width="768" height="384" src="https://presentcomposedesign.fr/wp-content/uploads/2025/11/SALAR-DE-UYUNI-Present-Compose-design-360-768x384.png" class="attachment-medium_large size-medium_large wp-image-34236" alt="Vue 360° du Salar d’Uyuni, désert de sel sous ciel bleu, Présent Composé design pour SPLATGATE ⟶⦗⦘" srcset="https://presentcomposedesign.fr/wp-content/uploads/2025/11/SALAR-DE-UYUNI-Present-Compose-design-360-768x384.png 768w, https://presentcomposedesign.fr/wp-content/uploads/2025/11/SALAR-DE-UYUNI-Present-Compose-design-360-300x150.png 300w, https://presentcomposedesign.fr/wp-content/uploads/2025/11/SALAR-DE-UYUNI-Present-Compose-design-360-1920x960.png 1920w, https://presentcomposedesign.fr/wp-content/uploads/2025/11/SALAR-DE-UYUNI-Present-Compose-design-360-1536x768.png 1536w, https://presentcomposedesign.fr/wp-content/uploads/2025/11/SALAR-DE-UYUNI-Present-Compose-design-360-2048x1024.png 2048w" sizes="(max-width: 768px) 100vw, 768px" />															</div>
				</div>
				<div class="elementor-element elementor-element-e71b66e elementor-invisible elementor-widget elementor-widget-image" data-id="e71b66e" data-element_type="widget" data-e-type="widget" data-settings="{&quot;_animation&quot;:&quot;zoomIn&quot;}" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img decoding="async" width="600" height="600" src="https://presentcomposedesign.fr/wp-content/uploads/2025/11/Broceliande-Present-Compose-design-360-600x600.png" class="attachment-ocean-thumb-m size-ocean-thumb-m wp-image-34233" alt="Vue 360° forêt Brocéliande avec cercle de pierres, immersion en réalité virtuelle, Présent Composé design pour_SPLATGATE ⟶⦗⦘" srcset="https://presentcomposedesign.fr/wp-content/uploads/2025/11/Broceliande-Present-Compose-design-360-600x600.png 600w, https://presentcomposedesign.fr/wp-content/uploads/2025/11/Broceliande-Present-Compose-design-360-150x150.png 150w" sizes="(max-width: 600px) 100vw, 600px" />															</div>
				</div>
				<div class="elementor-element elementor-element-4275f24 elementor-invisible elementor-widget elementor-widget-image" data-id="4275f24" data-element_type="widget" data-e-type="widget" data-settings="{&quot;_animation&quot;:&quot;zoomIn&quot;}" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="2048" height="1024" src="https://presentcomposedesign.fr/wp-content/uploads/2025/11/GRAND-CANYON-Present-Compose-design-HD-360-2048x1024.png" class="attachment-2048x2048 size-2048x2048 wp-image-34234" alt="Vue 360° Grand Canyon réaliste en réalité virtuelle, lumière naturelle filtrée, Présent Composé design pour SPLATGATE ⟶⦗⦘" srcset="https://presentcomposedesign.fr/wp-content/uploads/2025/11/GRAND-CANYON-Present-Compose-design-HD-360-2048x1024.png 2048w, https://presentcomposedesign.fr/wp-content/uploads/2025/11/GRAND-CANYON-Present-Compose-design-HD-360-300x150.png 300w, https://presentcomposedesign.fr/wp-content/uploads/2025/11/GRAND-CANYON-Present-Compose-design-HD-360-1920x960.png 1920w, https://presentcomposedesign.fr/wp-content/uploads/2025/11/GRAND-CANYON-Present-Compose-design-HD-360-768x384.png 768w, https://presentcomposedesign.fr/wp-content/uploads/2025/11/GRAND-CANYON-Present-Compose-design-HD-360-1536x768.png 1536w" sizes="(max-width: 2048px) 100vw, 2048px" />															</div>
				</div>
					</div>
		</div>
					</div>
		</section>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-b6639fe elementor-section-full_width elementor-section-height-min-height elementor-section-items-bottom elementor-section-content-middle elementor-section-stretched elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no elementor-invisible" data-id="b6639fe" data-element_type="section" data-e-type="section" data-settings="{&quot;stretch_section&quot;:&quot;section-stretched&quot;,&quot;background_background&quot;:&quot;classic&quot;,&quot;animation&quot;:&quot;fadeInUp&quot;}">
						<div class="elementor-container elementor-column-gap-extended">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-c5a8616" data-id="c5a8616" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<section class="elementor-section elementor-inner-section elementor-element elementor-element-adee29b elementor-section-boxed elementor-section-height-default elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no" data-id="adee29b" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-ac60838" data-id="ac60838" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-343ca59 elementor-widget__width-initial elementor-widget elementor-widget-text-editor" data-id="343ca59" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<h1><span style="color: #0010ef;">Une aventure collaborative</span><span style="color: #0010ef; font-size: 16px;"> </span></h1><div class="vce-row-container" data-vce-boxed-width="true"><div id="el-ba3f564d" class="vce-row vce-row--col-gap-30 vce-row-equal-height vce-row-content--top" data-vce-do-apply="all el-ba3f564d"><div class="vce-row-content" data-vce-element-content="true"><div id="el-11f4390c" class="vce-col vce-col--md-auto vce-col--xs-1 vce-col--xs-last vce-col--xs-first vce-col--sm-last vce-col--sm-first vce-col--md-last vce-col--lg-last vce-col--xl-last vce-col--md-first vce-col--lg-first vce-col--xl-first"><div class="vce-col-inner" data-vce-do-apply="border margin background el-11f4390c"><div class="vce-col-content" data-vce-element-content="true" data-vce-do-apply="padding el-11f4390c"><div class="vce-google-fonts-heading vce-google-fonts-heading--align-left vce-google-fonts-heading--color-b-0-16-255--45--5C00FF--FF7200 vce-google-fonts-heading--font-family-Roboto"><div id="el-6e30c05c" class="vce-google-fonts-heading-wrapper"><div><span style="color: #0010ef;"> </span></div><div><p><span style="color: #0010ef;">SPLATGATE ⟶⦗⦘ est une expérience participative &amp; évolutive.</span></p></div><h2><span style="color: #000000;">Dans le hall, <b>un écran interactif vous permet de voter pour les prochains lieux que vous aimeriez visiter. </b><br />Vos suggestions et vos retours guident le choix des futures scènes à recréer.</span></h2><p>Le projet est entièrement autofinancé. Si cette démarche vous plaît et que vous souhaitez soutenir le développement de nouvelles destinations et l’amélioration de l’expérience, vous pouvez contribuer de plusieurs façons:<br /><br data-start="350" data-end="353" /><b>Faites un don</b> ponctuel ou récurrent : <b>en un clic, offrez un « café »</b> via la plateforme Buy Me a Coffe intégrée à cette page.<br />Les dons servent à financer la modélisation 3D, l’hébergement des expériences.</p><p><b>Partagez </b><span style="color: #0010ef; font-family: 'Inter Tight', sans-serif; font-size: 14px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: bold;">SPLATGATE ⟶⦗⦘ </span> : parlez‑en autour de vous, sur les réseaux sociaux ou dans votre blog. Plus la communauté est grande, plus les votes et les idées seront riches.</p></div></div><div class="vce-text-block"> </div></div></div></div></div></div></div><div class="vce-row-container" data-vce-boxed-width="true"><div id="el-d9d9a9fd" class="vce-row vce-row--col-gap-30 vce-row-equal-height vce-row-content--top" data-vce-do-apply="all el-d9d9a9fd"><div class="vce-row-content" data-vce-element-content="true"><div id="el-87440d41" class="vce-col vce-col--md-auto vce-col--xs-1 vce-col--xs-last vce-col--xs-first vce-col--sm-last vce-col--sm-first vce-col--md-last vce-col--lg-last vce-col--xl-last vce-col--md-first vce-col--lg-first vce-col--xl-first"><div class="vce-col-inner" data-vce-do-apply="border margin background el-87440d41"><div class="vce-col-content" data-vce-element-content="true" data-vce-do-apply="padding el-87440d41"><p><!-- /wp:vcwb/empty-comment-element-wrapper --></p></div></div></div><p><!-- /vcwb/dynamicElementComment:87440d41 --></p></div></div></div><p><!-- /vcwb/dynamicElementComment:d9d9a9fd --><!--vcv no format--></p>								</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-7bf6dea" data-id="7bf6dea" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-859c5d0 elementor-widget elementor-widget-image" data-id="859c5d0" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="1000" height="1000" src="https://presentcomposedesign.fr/wp-content/uploads/2025/11/SplatGate_Present-Compose-design-UHD2025_square4.jpg" class="attachment-full size-full wp-image-35360" alt="Visuel promotionnel de l&#039;expérience virtuelle SplatGate, un environnement immersif accessible via la plateforme Arrival.Space. Cette expérience permet aux utilisateurs de découvrir des paysages virtuels et des escapades gratuitement et sans limites. L&#039;image montre deux &quot;voyageurs&quot; en réalité virtuelle, explorant l&#039;univers SplatGate et les destinations proposées." srcset="https://presentcomposedesign.fr/wp-content/uploads/2025/11/SplatGate_Present-Compose-design-UHD2025_square4.jpg 1000w, https://presentcomposedesign.fr/wp-content/uploads/2025/11/SplatGate_Present-Compose-design-UHD2025_square4-300x300.jpg 300w, https://presentcomposedesign.fr/wp-content/uploads/2025/11/SplatGate_Present-Compose-design-UHD2025_square4-150x150.jpg 150w, https://presentcomposedesign.fr/wp-content/uploads/2025/11/SplatGate_Present-Compose-design-UHD2025_square4-768x768.jpg 768w, https://presentcomposedesign.fr/wp-content/uploads/2025/11/SplatGate_Present-Compose-design-UHD2025_square4-600x600.jpg 600w" sizes="(max-width: 1000px) 100vw, 1000px" />															</div>
				</div>
				<div class="elementor-element elementor-element-d211448 elementor-widget elementor-widget-spacer" data-id="d211448" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-ea9b63d elementor-widget elementor-widget-html" data-id="ea9b63d" data-element_type="widget" data-e-type="widget" data-widget_type="html.default">
				<div class="elementor-widget-container">
					<section class="pcd-hero-title-wrap">
    <div class="pcd-card" style="max-width: 600px; margin: 0 auto; text-align: center;">
        <h3 class="pcd-animate-text" style="font-size: 1.5rem !important; margin-bottom: 15px;">
            Soutenez SPLATGATE ⟶⦗⦘
        </h3>
        <p style="color: #1001ef; margin-bottom: 25px;">
            Ce hub est gratuit et sans publicité. 
            Votre contribution aide à financer les futures destinations et soutient l'innovation de manière générale</strong>.
        </p>
        <div class="pcd-btn">
            <a href="https://www.buymeacoffee.com/presentcomposedesign" target="_blank">
                ☕ Soutenir le projet
            </a>
        </div>
    </div>
</section>				</div>
				</div>
					</div>
		</div>
					</div>
		</section>
					</div>
		</div>
					</div>
		</section>
				</div>
		<p>Cet article <a href="https://presentcomposedesign.fr/splatgate/">SPLATGATE⟶⦗⦘</a> est apparu en premier sur <a href="https://presentcomposedesign.fr">Présent Composé design</a>.</p>
]]></content:encoded>
					
		
		<enclosure url="https://presentcomposedesign.fr/wp-content/uploads/2025/11/video_presentation_SPLATGATE_PresentComposedesign-2025.mp4" length="45880030" type="video/mp4" />

			</item>
		<item>
		<title>Opti-môme</title>
		<link>https://presentcomposedesign.fr/opti-mome/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Mon, 29 Sep 2025 00:12:07 +0000</pubDate>
				<category><![CDATA[[ia]]]></category>
		<category><![CDATA[Design graphique]]></category>
		<guid isPermaLink="false">https://presentcomposedesign.fr/?p=33661</guid>

					<description><![CDATA[<p>Opti-môme est un concept d'application conçue et développée dans le cadre du Hackathon ia for impact organisé par La mêlée numérique. Son objectif : l'optimisation des transports dédiés à l’Aide Sociale à l’Enfance du conseil départemental de Haute Garonne. Simplification de la planification des trajets, mutualisation les déplacements, réduction des coûts et de l’impact environnemental tout en renforçant la sécurité et la coordination.</p>
<p>Cet article <a href="https://presentcomposedesign.fr/opti-mome/">Opti-môme</a> est apparu en premier sur <a href="https://presentcomposedesign.fr">Présent Composé design</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="33661" class="elementor elementor-33661">
				<div class="wpr-jarallax elementor-element elementor-element-8192ee7 wpr-jarallax-yes e-con-full e-flex wpr-particle-no wpr-parallax-no wpr-sticky-section-no e-con e-parent" speed-data="0.5" bg-image="https://presentcomposedesign.fr/wp-content/uploads/2025/10/prev_map_opti-mome.jpg" scroll-effect="scroll" data-id="8192ee7" data-element_type="container" data-e-type="container" data-settings="{&quot;background_background&quot;:&quot;classic&quot;}">
				<div class="elementor-element elementor-element-2627d84 elementor-widget__width-inherit elementor-widget elementor-widget-image" data-id="2627d84" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img decoding="async" src="https://presentcomposedesign.fr/wp-content/uploads/elementor/thumbs/logo_optimome_black-rd1rrp8gq9jp94h4vzy83bliln5ncrfal8y7ai3xt8.png" title="logo_opti-mome_app_black" alt="logo_opti-mome_app_black" loading="lazy" />															</div>
				</div>
				</div>
		<div class="elementor-element elementor-element-e235fbc e-flex e-con-boxed wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no elementor-invisible e-con e-parent" data-id="e235fbc" data-element_type="container" data-e-type="container" data-settings="{&quot;background_background&quot;:&quot;classic&quot;,&quot;animation&quot;:&quot;fadeInUp&quot;}">
					<div class="e-con-inner">
		<div class="elementor-element elementor-element-8d40ee4 e-con-full e-flex wpr-particle-no wpr-parallax-no wpr-sticky-section-no e-con e-child" data-id="8d40ee4" data-element_type="container" data-e-type="container" data-settings="{&quot;background_background&quot;:&quot;classic&quot;}">
				<div class="elementor-element elementor-element-014482d elementor-widget elementor-widget-spacer" data-id="014482d" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-426906f elementor-widget elementor-widget-image" data-id="426906f" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="1024" height="1024" src="https://presentcomposedesign.fr/wp-content/uploads/2025/10/phone2mokup.png" class="attachment-large size-large wp-image-33664" alt="" srcset="https://presentcomposedesign.fr/wp-content/uploads/2025/10/phone2mokup.png 1024w, https://presentcomposedesign.fr/wp-content/uploads/2025/10/phone2mokup-300x300.png 300w, https://presentcomposedesign.fr/wp-content/uploads/2025/10/phone2mokup-150x150.png 150w, https://presentcomposedesign.fr/wp-content/uploads/2025/10/phone2mokup-768x768.png 768w, https://presentcomposedesign.fr/wp-content/uploads/2025/10/phone2mokup-600x600.png 600w" sizes="(max-width: 1024px) 100vw, 1024px" />															</div>
				</div>
				</div>
		<div class="elementor-element elementor-element-1a31b73 e-con-full e-flex wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no e-con e-child" data-id="1a31b73" data-element_type="container" data-e-type="container">
				<div class="elementor-element elementor-element-6df7a1f elementor-widget__width-initial elementor-widget elementor-widget-text-editor" data-id="6df7a1f" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<h1><span style="color: #0381a2;">ux/ui Design</span></h1><h1><span style="color: #0381a2;">Concept d&rsquo;Application</span></h1><p><strong> </strong></p><p><strong>Opti-môme</strong> est un concept d&rsquo;application innovante de gestion et d’optimisation des transports dédiée à l’<strong>Aide Sociale à l’Enfance (ASE)</strong>. Développée dans le cadre du « <a href="https://www.meleenumerique.com/temps-fort-hackathon-ia-for-impact/#:~:text=La%20M%C3%AAl%C3%A9e%20organise%20un%20hackathon,propos%C3%A9s%20par%20des%20entreprises%20partenaires.">Hackathon ia for impact</a> » organisé par « <a href="https://lamelee.com/">La mêlée</a> » en partenariat avec les acteurs du département de la <strong>Haute-Garonne. <br /></strong><strong>Opti-môme </strong>répond à un double enjeu : <strong>améliorer la qualité de service</strong> offerte aux enfants confiés tout en <strong>réduisant l’impact environnemental</strong> et les coûts logistiques.</p><p>Grâce à l’intelligence artificielle, <strong>Opti-môme</strong> planifie, mutualise et suit en temps réel l’ensemble des trajets. L’application simplifie la communication entre <strong>chauffeurs</strong>, <strong>assistantes sociales</strong> et <strong>superviseurs</strong>, tout en garantissant la <strong>sécurité, la traçabilité et la fiabilité</strong> des transports. Son interface ergonomique, pensée pour le terrain, traduit une approche <strong>écologique, économique et humaine</strong> du service public.</p><p>Conçue comme une plateforme évolutive, <strong>Opti-môme</strong> s’inscrit dans une dynamique de <strong>transition numérique responsable</strong> et d’innovation sociale. Elle répond à un souhait marqué par le Département de moderniser la mobilité des enfants accompagnés, en conciliant <strong>efficacité, équité et durabilité</strong>.</p>								</div>
				</div>
				</div>
					</div>
				</div>
		<div class="elementor-element elementor-element-5787b5c e-con-full e-flex wpr-particle-no wpr-jarallax-no wpr-sticky-section-no e-con e-parent" data-id="5787b5c" data-element_type="container" data-e-type="container" data-settings="{&quot;background_background&quot;:&quot;classic&quot;}">
				<div class="elementor-element elementor-element-10cd316 elementor-widget elementor-widget-html" data-id="10cd316" data-element_type="widget" data-e-type="widget" data-widget_type="html.default">
				<div class="elementor-widget-container">
					<div class="viewer-container" id="viewer-container-10">
  <canvas class="viewer-canvas" id="viewer-canvas-10"></canvas>
</div>

<style>
  .viewer-container {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    height: 60vh; /* Ajustez en fonction de vos besoins */
    width: 100%;
    margin: 0;
    padding: 0;
  }

  .viewer-canvas {
    width: 100%;
    height: 100%;
  }

  /* Éviter les conflits avec les autres éléments du site */
  body {
    margin: 0;
  }
</style>

<script type="module">
  import { Application } from "https://esm.sh/@splinetool/runtime";

  const initializeViewer = (canvasId, fileName) => {
    const canvas = document.getElementById(canvasId);
    const app = new Application(canvas);
    app.load(`https://prod.spline.design/${fileName}/scene.splinecode`);
  };

  // Initialize first viewer
  initializeViewer('viewer-canvas-10', '2A8Sr5uxpOZ31tIN');

  // Add more viewers as needed
</script>
				</div>
				</div>
				</div>
		<div class="elementor-element elementor-element-fe1fb28 e-flex e-con-boxed wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no elementor-invisible e-con e-parent" data-id="fe1fb28" data-element_type="container" data-e-type="container" data-settings="{&quot;background_background&quot;:&quot;classic&quot;,&quot;animation&quot;:&quot;fadeInUp&quot;}">
					<div class="e-con-inner">
		<div class="elementor-element elementor-element-dac6e50 e-con-full e-flex wpr-particle-no wpr-parallax-no wpr-sticky-section-no e-con e-child" data-id="dac6e50" data-element_type="container" data-e-type="container" data-settings="{&quot;background_background&quot;:&quot;classic&quot;}">
				<div class="elementor-element elementor-element-fbd207b elementor-widget elementor-widget-image" data-id="fbd207b" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="600" height="600" src="https://presentcomposedesign.fr/wp-content/uploads/2025/10/chauffeur-600x600.png" class="attachment-ocean-thumb-m size-ocean-thumb-m wp-image-33663" alt="Conducteur ASE consultant ses trajets du jour sur l’application Opti-môme depuis le tableau de bord de son véhicule." srcset="https://presentcomposedesign.fr/wp-content/uploads/2025/10/chauffeur-600x600.png 600w, https://presentcomposedesign.fr/wp-content/uploads/2025/10/chauffeur-150x150.png 150w" sizes="(max-width: 600px) 100vw, 600px" />															</div>
				</div>
				<div class="elementor-element elementor-element-c0bf39c elementor-widget elementor-widget-spacer" data-id="c0bf39c" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				</div>
		<div class="elementor-element elementor-element-dffc864 e-con-full e-flex wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no e-con e-child" data-id="dffc864" data-element_type="container" data-e-type="container">
				<div class="elementor-element elementor-element-26e901e elementor-widget__width-initial elementor-widget elementor-widget-text-editor" data-id="26e901e" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<h2><span style="color: #8a3589;"><strong>⦿ Conducteurs affiliés</strong></span></h2><h2>Fonctionnalités proposées par l&rsquo;application:</h2><ul><li><h6><span style="color: #0381a2;"><strong>Page d’accueil :</strong></span> affichage du trajet du jour avec carte interactive, étapes, liste des arrêts et actions rapides (démarrer, signaler un retard, contacter un coordinateur).</h6></li><li><h6><span style="color: #0381a2;"><strong>Navigation et prise en charge :</strong></span> intégration GPS avec itinéraire préchargé, check-in/check-out digital via QR code ou signature électronique, accès hors ligne aux fiches des jeunes et signalement d’incident.</h6></li><li><h6><span style="color: #0381a2;"><strong>Tableau de bord personnel :</strong></span> suivi des kilomètres, du temps de trajet, de la consommation et des économies de CO₂, avec historique exportable.</h6></li><li><h6><span style="color: #0381a2;"><strong>Paramètres et personnalisation :</strong></span> mode clair/sombre, notifications, gestion du profil et verrouillage automatique pour la sécurité.</h6></li></ul>								</div>
				</div>
				<div class="elementor-element elementor-element-e5ce5c1 wpr-feature-list-left wpr-feature-list-square wpr-feature-list-line-yes elementor-widget elementor-widget-wpr-feature-list" data-id="e5ce5c1" data-element_type="widget" data-e-type="widget" data-widget_type="wpr-feature-list.default">
				<div class="elementor-widget-container">
					<div class="wpr-feature-list-wrap"><ul class="wpr-feature-list"><li class="wpr-feature-list-item elementor-repeater-item-5e38f5c"><div class="wpr-feature-list-icon-wrap"><span class="wpr-feature-list-line"></span><div class="wpr-feature-list-icon-inner-wrap"><svg aria-hidden="true" class="e-font-icon-svg e-far-check-circle" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M256 8C119.033 8 8 119.033 8 256s111.033 248 248 248 248-111.033 248-248S392.967 8 256 8zm0 48c110.532 0 200 89.451 200 200 0 110.532-89.451 200-200 200-110.532 0-200-89.451-200-200 0-110.532 89.451-200 200-200m140.204 130.267l-22.536-22.718c-4.667-4.705-12.265-4.736-16.97-.068L215.346 303.697l-59.792-60.277c-4.667-4.705-12.265-4.736-16.97-.069l-22.719 22.536c-4.705 4.667-4.736 12.265-.068 16.971l90.781 91.516c4.667 4.705 12.265 4.736 16.97.068l172.589-171.204c4.704-4.668 4.734-12.266.067-16.971z"></path></svg></div></div><div class="wpr-feature-list-content-wrap"><h5 class="wpr-feature-list-title"><a class="wpr-feature-list-url" target="_blank" rel="nofollow">Cahier des charge initial</a></h5><p class="wpr-feature-list-description"></p></div></li></ul></div>				</div>
				</div>
				</div>
					</div>
				</div>
		<div class="elementor-element elementor-element-8732660 e-flex e-con-boxed wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no elementor-invisible e-con e-parent" data-id="8732660" data-element_type="container" data-e-type="container" data-settings="{&quot;background_background&quot;:&quot;classic&quot;,&quot;animation&quot;:&quot;fadeInUp&quot;}">
					<div class="e-con-inner">
		<div class="elementor-element elementor-element-1169535 e-con-full e-flex wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no e-con e-child" data-id="1169535" data-element_type="container" data-e-type="container">
				<div class="elementor-element elementor-element-99977ce elementor-widget__width-initial elementor-widget elementor-widget-text-editor" data-id="99977ce" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<h2><span style="color: #8a3589;"><strong>⦿ Assistantes sociales / Maisons de solidarités</strong></span></h2><ul><li><h6><span style="color: #333333;"><span style="color: #0381a2;"><strong>Tableau de bord des demandes :</strong> </span>liste des ordres de mission en attente, validés ou refusés, vue calendrier des trajets programmés et filtres par date ou jeune.</span></h6></li><li><h6><span style="color: #333333;"><span style="color: #0381a2;"><strong>Création et validation de demande :</strong></span> formulaire de réservation de transport avec suggestion de créneaux et de chauffeurs, validation par signature électronique et notification des parties.</span></h6></li><li><h6><span style="color: #333333;"><span style="color: #0381a2;"><strong>Gestion des dossiers :</strong></span> consultation et mise à jour des fiches des jeunes (coordonnées, allergies, autorisations), transmission sécurisée au chauffeur assigné.</span></h6></li><li><h6><span style="color: #333333;"><span style="color: #0381a2;"><strong>Préfacturation et suivi budgétaire :</strong></span> module de préfacturation pour suivre les kilomètres et les coûts, export des données pour audit ou reporting.</span></h6></li></ul><h6> </h6>								</div>
				</div>
				<div class="elementor-element elementor-element-4673650 wpr-feature-list-left wpr-feature-list-square wpr-feature-list-line-yes elementor-widget elementor-widget-wpr-feature-list" data-id="4673650" data-element_type="widget" data-e-type="widget" data-widget_type="wpr-feature-list.default">
				<div class="elementor-widget-container">
					<div class="wpr-feature-list-wrap"><ul class="wpr-feature-list"><li class="wpr-feature-list-item elementor-repeater-item-5e38f5c"><div class="wpr-feature-list-icon-wrap"><span class="wpr-feature-list-line"></span><div class="wpr-feature-list-icon-inner-wrap"><svg aria-hidden="true" class="e-font-icon-svg e-fas-brain" viewBox="0 0 576 512" xmlns="http://www.w3.org/2000/svg"><path d="M208 0c-29.9 0-54.7 20.5-61.8 48.2-.8 0-1.4-.2-2.2-.2-35.3 0-64 28.7-64 64 0 4.8.6 9.5 1.7 14C52.5 138 32 166.6 32 200c0 12.6 3.2 24.3 8.3 34.9C16.3 248.7 0 274.3 0 304c0 33.3 20.4 61.9 49.4 73.9-.9 4.6-1.4 9.3-1.4 14.1 0 39.8 32.2 72 72 72 4.1 0 8.1-.5 12-1.2 9.6 28.5 36.2 49.2 68 49.2 39.8 0 72-32.2 72-72V64c0-35.3-28.7-64-64-64zm368 304c0-29.7-16.3-55.3-40.3-69.1 5.2-10.6 8.3-22.3 8.3-34.9 0-33.4-20.5-62-49.7-74 1-4.5 1.7-9.2 1.7-14 0-35.3-28.7-64-64-64-.8 0-1.5.2-2.2.2C422.7 20.5 397.9 0 368 0c-35.3 0-64 28.6-64 64v376c0 39.8 32.2 72 72 72 31.8 0 58.4-20.7 68-49.2 3.9.7 7.9 1.2 12 1.2 39.8 0 72-32.2 72-72 0-4.8-.5-9.5-1.4-14.1 29-12 49.4-40.6 49.4-73.9z"></path></svg></div></div><div class="wpr-feature-list-content-wrap"><h5 class="wpr-feature-list-title"><a class="wpr-feature-list-url" target="_blank" rel="nofollow">Fonctionnalités supplémentaires proposées</a></h5><p class="wpr-feature-list-description"></p></div></li></ul></div>				</div>
				</div>
				</div>
		<div class="elementor-element elementor-element-7fc3c12 e-con-full e-flex wpr-particle-no wpr-parallax-no wpr-sticky-section-no e-con e-child" data-id="7fc3c12" data-element_type="container" data-e-type="container" data-settings="{&quot;background_background&quot;:&quot;classic&quot;}">
				<div class="elementor-element elementor-element-56ce7b5 elementor-widget elementor-widget-image" data-id="56ce7b5" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="600" height="600" src="https://presentcomposedesign.fr/wp-content/uploads/2025/10/preview-app-4-600x600.jpg" class="attachment-ocean-thumb-m size-ocean-thumb-m wp-image-33773" alt="Assistante sociale utilisant l’application Opti-môme pour commander un trajet sécurisé pour un enfant accompagné." srcset="https://presentcomposedesign.fr/wp-content/uploads/2025/10/preview-app-4-600x600.jpg 600w, https://presentcomposedesign.fr/wp-content/uploads/2025/10/preview-app-4-150x150.jpg 150w" sizes="(max-width: 600px) 100vw, 600px" />															</div>
				</div>
				</div>
					</div>
				</div>
		<div class="elementor-element elementor-element-740e89b e-flex e-con-boxed wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no elementor-invisible e-con e-parent" data-id="740e89b" data-element_type="container" data-e-type="container" data-settings="{&quot;background_background&quot;:&quot;classic&quot;,&quot;animation&quot;:&quot;fadeInUp&quot;}">
					<div class="e-con-inner">
		<div class="elementor-element elementor-element-32cd6a1 e-con-full e-flex wpr-particle-no wpr-parallax-no wpr-sticky-section-no e-con e-child" data-id="32cd6a1" data-element_type="container" data-e-type="container" data-settings="{&quot;background_background&quot;:&quot;classic&quot;}">
				<div class="elementor-element elementor-element-3467bee elementor-widget elementor-widget-image" data-id="3467bee" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="600" height="600" src="https://presentcomposedesign.fr/wp-content/uploads/2025/10/preview-app-supervisor-600x600.jpg" class="attachment-ocean-thumb-m size-ocean-thumb-m wp-image-33808" alt="" srcset="https://presentcomposedesign.fr/wp-content/uploads/2025/10/preview-app-supervisor-600x600.jpg 600w, https://presentcomposedesign.fr/wp-content/uploads/2025/10/preview-app-supervisor-150x150.jpg 150w" sizes="(max-width: 600px) 100vw, 600px" />															</div>
				</div>
				<div class="elementor-element elementor-element-b22a7b6 elementor-widget elementor-widget-spacer" data-id="b22a7b6" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				</div>
		<div class="elementor-element elementor-element-c4a53a8 e-con-full e-flex wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no e-con e-child" data-id="c4a53a8" data-element_type="container" data-e-type="container">
				<div class="elementor-element elementor-element-bb466b9 elementor-widget__width-initial elementor-widget elementor-widget-text-editor" data-id="bb466b9" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<h2><span style="color: #8a3589;"><strong>⦿ Superviseurs / Responsables logistiques</strong></span></h2><ul><li><h6><strong><span style="color: #0381a2;">Supervision en temps réel</span> <span style="color: #0381a2;">:</span></strong> carte interactive des trajets en cours, liste dynamique, alertes instantanées et actions rapides (contacter un chauffeur, replanifier un trajet).</h6></li><li><h6><span style="color: #0381a2;"><strong>Bilan écologique :</strong></span> graphiques de suivi des émissions de CO₂, kilomètres évités, taux de mutualisation et recommandations automatiques pour optimiser les tournées.</h6></li><li><h6><span style="color: #0381a2;"><strong>Analyse économique :</strong></span> visualisation des coûts par kilomètre, répartition des dépenses (carburant, maintenance, taxis) et simulateur d’économies selon différents scénarios.</h6></li><li><h6><span style="color: #0381a2;"><strong>Gestion des ressources :</strong></span> tableau de bord des chauffeurs (ponctualité, kilomètres, économies réalisées), suivi des véhicules (maintenance, carburant) et gestion des incidents et de la conformité.</h6></li></ul><h6> </h6>								</div>
				</div>
				<div class="elementor-element elementor-element-04f6e76 wpr-feature-list-left wpr-feature-list-square wpr-feature-list-line-yes elementor-widget elementor-widget-wpr-feature-list" data-id="04f6e76" data-element_type="widget" data-e-type="widget" data-widget_type="wpr-feature-list.default">
				<div class="elementor-widget-container">
					<div class="wpr-feature-list-wrap"><ul class="wpr-feature-list"><li class="wpr-feature-list-item elementor-repeater-item-5e38f5c"><div class="wpr-feature-list-icon-wrap"><span class="wpr-feature-list-line"></span><div class="wpr-feature-list-icon-inner-wrap"><svg aria-hidden="true" class="e-font-icon-svg e-fas-brain" viewBox="0 0 576 512" xmlns="http://www.w3.org/2000/svg"><path d="M208 0c-29.9 0-54.7 20.5-61.8 48.2-.8 0-1.4-.2-2.2-.2-35.3 0-64 28.7-64 64 0 4.8.6 9.5 1.7 14C52.5 138 32 166.6 32 200c0 12.6 3.2 24.3 8.3 34.9C16.3 248.7 0 274.3 0 304c0 33.3 20.4 61.9 49.4 73.9-.9 4.6-1.4 9.3-1.4 14.1 0 39.8 32.2 72 72 72 4.1 0 8.1-.5 12-1.2 9.6 28.5 36.2 49.2 68 49.2 39.8 0 72-32.2 72-72V64c0-35.3-28.7-64-64-64zm368 304c0-29.7-16.3-55.3-40.3-69.1 5.2-10.6 8.3-22.3 8.3-34.9 0-33.4-20.5-62-49.7-74 1-4.5 1.7-9.2 1.7-14 0-35.3-28.7-64-64-64-.8 0-1.5.2-2.2.2C422.7 20.5 397.9 0 368 0c-35.3 0-64 28.6-64 64v376c0 39.8 32.2 72 72 72 31.8 0 58.4-20.7 68-49.2 3.9.7 7.9 1.2 12 1.2 39.8 0 72-32.2 72-72 0-4.8-.5-9.5-1.4-14.1 29-12 49.4-40.6 49.4-73.9z"></path></svg></div></div><div class="wpr-feature-list-content-wrap"><h5 class="wpr-feature-list-title"><a class="wpr-feature-list-url" target="_blank" rel="nofollow">Fonctionnalités supplémentaires proposées</a></h5><p class="wpr-feature-list-description"></p></div></li></ul></div>				</div>
				</div>
				</div>
					</div>
				</div>
		<div class="elementor-element elementor-element-3c0d6dd e-flex e-con-boxed wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no e-con e-parent" data-id="3c0d6dd" data-element_type="container" data-e-type="container" data-settings="{&quot;background_background&quot;:&quot;classic&quot;}">
					<div class="e-con-inner">
				<div class="elementor-element elementor-element-cfc4ced wpr-fancy-text-clip wpr-advanced-text-style-animated wpr-animated-text-infinite-yes elementor-widget elementor-widget-wpr-advanced-text" data-id="cfc4ced" data-element_type="widget" data-e-type="widget" data-settings="{&quot;anim_loop&quot;:&quot;yes&quot;}" data-widget_type="wpr-advanced-text.default">
				<div class="elementor-widget-container">
					
		<h3 class="wpr-advanced-text">

					
			
		<span class="wpr-anim-text wpr-anim-text-type-clip" data-anim-duration="1000,2000" data-anim-loop="yes">
			<span class="wpr-anim-text-inner">
									<b>Un projet ?</b>
									<b>Un besoin spécifique ? </b>
							</span>
			<span class="wpr-anim-text-cursor">|</span>		</span>

				
		</h3>
		
						</div>
				</div>
					</div>
				</div>
				</div>
		<p>Cet article <a href="https://presentcomposedesign.fr/opti-mome/">Opti-môme</a> est apparu en premier sur <a href="https://presentcomposedesign.fr">Présent Composé design</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>VR_Xprmnts</title>
		<link>https://presentcomposedesign.fr/vr_xprmnts/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Sat, 20 Sep 2025 22:09:13 +0000</pubDate>
				<category><![CDATA[[ia]]]></category>
		<category><![CDATA[[VR]]]></category>
		<category><![CDATA[Design d'espace]]></category>
		<guid isPermaLink="false">https://presentcomposedesign.fr/?p=33443</guid>

					<description><![CDATA[<p>La VR nécessite JavaScript. Ouvrir le monde : lien direct. broceliande ᯅ broceliande3 ᯅ broceliande3 ᯅ broceliande3 ᯅ broceliande3 ᯅ ᯅ ✕ broceliande ᯅ broceliande3 ᯅ ᯅ ✕ broceliande ᯅ broceliande3 ᯅ ᯅ ✕</p>
<p>Cet article <a href="https://presentcomposedesign.fr/vr_xprmnts/">VR_Xprmnts</a> est apparu en premier sur <a href="https://presentcomposedesign.fr">Présent Composé design</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="33443" class="elementor elementor-33443">
						<header class="elementor-section elementor-top-section elementor-element elementor-element-eb3024d elementor-section-full_width elementor-section-stretched elementor-section-height-default elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no" data-id="eb3024d" data-element_type="section" data-e-type="section" data-settings="{&quot;stretch_section&quot;:&quot;section-stretched&quot;}">
						<div class="elementor-container elementor-column-gap-no">
					<header class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-3fa2d06" data-id="3fa2d06" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-9f43ee9 elementor-widget elementor-widget-html" data-id="9f43ee9" data-element_type="widget" data-e-type="widget" data-widget_type="html.default">
				<div class="elementor-widget-container">
					<!-- VR EMBED – Centrage visuel du bouton "enter VR" natif -->
<style>
  html, body { height:100%; margin:0; padding:0; }
  .pcd-vr-wrap{
    position:relative;
    width:100vw;
    height:100svh;
    height:100dvh;
    min-height:100vh;
    overflow:hidden;
    background:#000;
    /* valeur par défaut si JS bloqué */
    --pcd-shift: 0vh; /* translation verticale appliquée à l'iframe */
  }
  .elementor .pcd-vr-wrap,
  .elementor-section .pcd-vr-wrap,
  .elementor-widget-container .pcd-vr-wrap{ max-height:none !important; }

  /* Canvas qui contient l'iframe, on garde overflow hidden */
  .pcd-vr-canvas{
    position:absolute; inset:0;
    overflow:hidden;
    background:#000;
  }

  /* L'iframe est agrandie en hauteur pour permettre la translation sans bords vides */
  .pcd-vr-iframe{
    position:absolute; left:0; width:100%;
    /* on ajoute 30vh au-dessus et 30vh en-dessous comme "marges" de sécurité */
    top:-30vh;
    height:calc(100% + 60vh);
    border:0; display:block;
    background:#000;
    /* translation pour "remonter" le contenu -> le bouton natif (en bas) vient au centre */
    transform:translateY(var(--pcd-shift));
    will-change:transform;
  }

  /* Icône fullscreen discrète (même style que précédemment) */
  .pcd-vr-fs{
    position:absolute; right:14px; bottom:14px; z-index:10;
    width:44px; height:44px; border-radius:999px; border:0;
    display:grid; place-items:center;
    background:rgba(255,255,255,.10);
    backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px);
    cursor:pointer; color:#fff; opacity:.85;
    transition:background .2s, opacity .2s, transform .08s;
  }
  .pcd-vr-fs:hover{ background:rgba(255,255,255,.18); opacity:1; }
  .pcd-vr-fs:active{ transform:translateY(1px) scale(.98); }
  .pcd-vr-fs svg{ width:22px; height:22px; display:block; }

  /* Barre admin WP */
  body.admin-bar .pcd-vr-wrap{ height:calc(100dvh - 32px); }
  @media (max-width:782px){
    body.admin-bar .pcd-vr-wrap{ height:calc(100dvh - 46px); }
  }
</style>

<div id="pcd-vr" class="pcd-vr-wrap"
     data-shift-desktop="0vh"
     data-shift-mobile="-18vh"
     data-shift-quest="-30vh">
  <div class="pcd-vr-canvas">
    <iframe
      id="pcd-vr-iframe"
      class="pcd-vr-iframe"
      src="https://marble.worldlabs.ai/worldvr/a9c1b8ad-9e88-431d-abc6-1199b6340a98"
      title="WorldLabs VR – Embedded"
      loading="eager"
      allow="accelerometer; magnetometer; gyroscope; gamepad; vr; xr-spatial-tracking; microphone; camera; autoplay; clipboard-write; fullscreen"
      allowfullscreen
      referrerpolicy="no-referrer-when-downgrade">
    </iframe>
  </div>

  <!-- Icône plein écran (style discret) -->
  <button class="pcd-vr-fs" type="button" id="pcd-vr-fs" aria-label="Plein écran">
    <svg viewBox="0 0 24 24" fill="none" aria-hidden="true">
      <path d="M4 9V5a1 1 0 0 1 1-1h4M20 9V5a1 1 0 0 0-1-1h-4M4 15v4a1 1 0 0 0 1 1h4M20 15v4a1 1 0 0 1-1 1h-4"
            stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
    </svg>
  </button>

  <noscript>
    <p style="position:absolute;left:12px;bottom:12px;color:#fff">
      La VR nécessite JavaScript. Ouvrir le monde :
      <a href="https://marble.worldlabs.ai/worldvr/b1f77449-6ddf-4aaf-bcf9-7c45d6949931" target="_blank" rel="noopener" style="color:#9cf">lien direct</a>.
    </p>
  </noscript>
</div>

<script>
  (function(){
    const wrap   = document.getElementById('pcd-vr');
    const iframe = document.getElementById('pcd-vr-iframe');
    const btnFS  = document.getElementById('pcd-vr-fs');

    // Hauteur robuste = hauteur viewport réelle (évite les barres d’adresse)
    function fit(){ wrap.style.height = (window.innerHeight || document.documentElement.clientHeight) + 'px'; }
    fit();
    window.addEventListener('resize', fit, {passive:true});
    window.addEventListener('orientationchange', fit, {passive:true});

    // Détection simple des devices pour centrer le bouton natif via translation du contenu
    const ua = navigator.userAgent || '';
    const isQuest  = /OculusBrowser|Meta\s?Quest|Quest/i.test(ua);
    const isMobile = /Android|iPhone|iPad|Mobile/i.test(ua);

    const shiftDesktop = wrap.dataset.shiftDesktop || '0vh';
    const shiftMobile  = wrap.dataset.shiftMobile  || '-18vh';
    const shiftQuest   = wrap.dataset.shiftQuest   || '-30vh';

    const shift = isQuest ? shiftQuest : (isMobile ? shiftMobile : shiftDesktop);
    wrap.style.setProperty('--pcd-shift', shift);

    // Plein écran natif
    function goFullscreen(el){
      const rfs = el.requestFullscreen || el.webkitRequestFullscreen ||
                  el.msRequestFullscreen || el.mozRequestFullScreen;
      if (rfs) rfs.call(el);
    }
    btnFS.addEventListener('click', ()=>{ goFullscreen(iframe) || goFullscreen(wrap); });

    // Option d’ajustement fin via touches (désactive si inutile)
    // Haut/Bas : affiner la translation par pas de 2vh
    let currentVal = parseFloat(String(shift).replace('vh','')) || 0;
    window.addEventListener('keydown', (e)=>{
      if(!e.altKey) return;    // Alt+↑ / Alt+↓ pour régler
      if(e.key === 'ArrowUp'){ currentVal -= 2; }
      if(e.key === 'ArrowDown'){ currentVal += 2; }
      wrap.style.setProperty('--pcd-shift', currentVal + 'vh');
    });
  })();
</script>
				</div>
				</div>
					</div>
		</header>
					</div>
		</header>
		<div class="elementor-element elementor-element-4921e6d e-flex e-con-boxed wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no e-con e-parent" data-id="4921e6d" data-element_type="container" data-e-type="container">
					<div class="e-con-inner">
					</div>
				</div>
		<div class="elementor-element elementor-element-2f6a63c e-flex e-con-boxed wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no e-con e-parent" data-id="2f6a63c" data-element_type="container" data-e-type="container">
					<div class="e-con-inner">
		<div class="elementor-element elementor-element-89c8d5a e-con-full e-flex wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no e-con e-child" data-id="89c8d5a" data-element_type="container" data-e-type="container">
				<div class="elementor-element elementor-element-678d08f elementor-widget elementor-widget-html" data-id="678d08f" data-element_type="widget" data-e-type="widget" data-widget_type="html.default">
				<div class="elementor-widget-container">
					<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8"/>
<meta name="viewport" content="width=device-width,initial-scale=1"/>
<link href="https://fonts.googleapis.com/css2?family=Inter+Tight:wght@600;700&display=swap" rel="stylesheet" />

<style>
  /* ===== Carte (style d’origine) + bordure légère & ombre douce ===== */
  .spline-card{
    position:relative; border-radius:16px; overflow:hidden;
    border:1px solid rgba(255,255,255,.14);
    box-shadow:
      0 12px 12px rgba(0,0,0,.24),
      0 12px 6px  rgba(0,0,0,.24);
    transform:translateZ(0); backface-visibility:hidden;
    transition:box-shadow .25s ease, filter .25s ease, transform .22s ease;
    margin:0 0 24px;
    background:#000; /* évite toute marge transparente parasite */
  }
  .spline-card:hover{
    transform:scale(1.022);
    box-shadow:
      0 20px 48px rgba(0,0,0,.28),
      0 4px 10px  rgba(0,0,0,.16);
  }

  /* ===== Glass effect (toggle) =====
     Active-le par carte avec data-glass="yes" */
  .spline-card[data-glass="yes"]{
    background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
    border-color: rgba(255,255,255,.22);
    backdrop-filter: blur(10px) saturate(120%);
    -webkit-backdrop-filter: blur(10px) saturate(120%);
    /* léger liseré intérieur pour un rendu “verre” sans masquer le contenu */
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.14),
      0 12px 12px rgba(0,0,0,.24),
      0 12px 6px  rgba(0,0,0,.24);
  }

  .spline-live{
    position:relative; width:100%; aspect-ratio:16/9; background:#000; overflow:hidden;
    /* Anti-bande noire horizontale */
    --overscan: 12px;
    /* Mini overscan vertical (corrige le fin liseré en bas/haut) */
    --overscanY: 2px; /* ajuste 0–4px si besoin */
  }
  .spline-canvas{ position:absolute; inset:0; width:100%; height:100%; display:block; border:0; }

  /* Iframe Marble : overscan centré + no-scrollbar */
  .spline-iframe{
    position:absolute;
    top:    calc(0px - var(--overscanY));
    bottom: calc(0px - var(--overscanY));
    left:   calc(10px - var(--overscan));
    right:  calc(10px - var(--overscan));
    width:  calc(100% + (var(--overscan) * 2));
    height: calc(100% + (var(--overscanY) * 2));
    display:block; border:0; background:#000;
    transform:translateZ(0); backface-visibility:hidden;
    -ms-overflow-style:none; scrollbar-width:none;
  }
  .spline-iframe::-webkit-scrollbar{ display:none; }

  /* Laisse le scroll à la page */
  .spline-hit{ position:absolute; inset:0; pointer-events:none; }

  /* Infobar (bas de carte) */
  .spline-infobar{
    position:absolute; left:0; right:0; bottom:0; z-index:3;
    display:flex; align-items:center; justify-content:space-between;
    padding:10px 12px; color:#fff;
    background:linear-gradient(180deg, rgba(0,0,0,0) 45%, rgba(0,0,0,.58) 100%);
    user-select:none;
  }
  .spline-title{
    margin:0; color:#fff;
    font:600 14px/1.2 "Inter Tight", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
    text-shadow:0 1px 6px rgba(0,0,0,.45);
  }

  /* Icônes pures */
  .icon-reset{ all: unset; display:inline-block; color:#fff; line-height:1; cursor:pointer; vertical-align:middle; }
  .icon-row{ display:flex; gap:10px; align-items:center; }
  .icon-reset svg{ width:20px; height:20px; display:block; }
  .icon-reset.text{ font-family:"Inter Tight", system-ui; font-weight:700; font-size:18px; }

  /* ===== Modal partagé (plein écran) ===== */
  .spline-modal{ position:fixed; inset:0; z-index:9999; display:none; }
  .spline-modal[aria-hidden="false"]{ display:block; }
  .spline-backdrop{ position:absolute; inset:0; background:rgba(0,0,0,.78); }
  .spline-stage{ position:absolute; inset:0; display:flex; flex-direction:column; background:#000; overflow:hidden; }
  .spline-bar{
    display:flex; justify-content:flex-end; gap:12px; padding:8px 12px; color:#fff;
    background:rgba(0,0,0,.45); border-bottom:1px solid rgba(255,255,255,.1);
    backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px);
  }
  .spline-fs, .spline-close{ all: unset; color:#fff; cursor:pointer; font:700 18px/1 "Inter Tight", system-ui; }

  .spline-canvas-full{
    position:relative; flex:1 1 auto; overflow:hidden; background:#000;
    --overscan: 12px;  /* horizontal */
    --overscanY: 2px;  /* vertical */
  }
  .spline-canvas-full canvas{ position:absolute; inset:0; width:100%; height:100%; display:block; border:0; }

  .spline-iframe-full{
    position:absolute;
    top:    calc(0px - var(--overscanY));
    bottom: calc(0px - var(--overscanY));
    left:   calc(12px - var(--overscan));
    right:  calc(12px - var(--overscan));
    width:  calc(100% + (var(--overscan) * 2));
    height: calc(100% + (var(--overscanY) * 2));
    display:block; border:0; background:#000;
    transform:translateZ(0); backface-visibility:hidden;
    -ms-overflow-style:none; scrollbar-width:none;
  }
  .spline-iframe-full::-webkit-scrollbar{ display:none; }
</style>
</head>
<body>

<!-- ======= Carte MARBLE #1 (glass ON) ======= -->
<div class="spline-card"
     data-src="https://marble.worldlabs.ai/worldvr/ab31b740-b8a8-4fc0-91a1-1d6c1e53c422"
     data-title="Impression soleil levant"
     data-display="yes"
     data-glass="yes">
  <div class="spline-live">
    <canvas class="spline-canvas"></canvas>
    <iframe class="spline-iframe"
            allow="xr-spatial-tracking; gyroscope; accelerometer; magnetometer; fullscreen; autoplay"
            allowfullscreen
            loading="lazy" referrerpolicy="no-referrer-when-downgrade" scrolling="no"></iframe>
    <div class="spline-hit" aria-hidden="true"></div>

    <div class="spline-infobar">
      <span class="spline-title">broceliande</span>
      <div class="icon-row">
        <span class="icon-reset text" data-action="open" aria-label="Ouvrir en plein écran">ᯅ</span>
        <span class="icon-reset" data-action="open" aria-label="Plein écran">
          <svg viewBox="0 0 24 24" aria-hidden="true">
            <path d="M7 3h4a1 1 0 1 1 0 2H8v3a1 1 0 1 1-2 0V4c0-.55.45-1 1-1Zm10 0c.55 0 1 .45 1 1v4a1 1 0 1 1-2 0V5h-3a1 1 0 1 1 0-2h4Zm1 16v-4a1 1 0 1 1 2 0v4c0 .55-.45 1-1 1h-4a1 1 0 1 1 0-2h3Zm-9 1H5c-.55 0-1-.45-1-1v-4a1 1 0 1 1 2 0v3h3a1 1 0 1 1 0 2Z" fill="currentColor"/>
          </svg>
        </span>
      </div>
    </div>
  </div>
</div>
<!-- ======= Carte MARBLE #2 (glass ON) ======= -->
<div class="spline-card"
     data-src="https://marble.worldlabs.ai/worldvr/5fcb836f-8d04-4357-ad72-79bba45313b0"
     data-title="Nuit étoilée"
     data-display="yes"
     data-glass="yes">
  <div class="spline-live">
    <canvas class="spline-canvas"></canvas>
    <iframe class="spline-iframe"
            allow="xr-spatial-tracking; gyroscope; accelerometer; magnetometer; fullscreen; autoplay"
            allowfullscreen
            loading="lazy" referrerpolicy="no-referrer-when-downgrade" scrolling="no"></iframe>
    <div class="spline-hit" aria-hidden="true"></div>

    <div class="spline-infobar">
      <span class="spline-title">broceliande3</span>
      <div class="icon-row">
        <span class="icon-reset text" data-action="open" aria-label="Ouvrir en plein écran">ᯅ</span>
        <span class="icon-reset" data-action="open" aria-label="Plein écran">
          <svg viewBox="0 0 24 24" aria-hidden="true">
            <path d="M7 3h4a1 1 0 1 1 0 2H8v3a1 1 0 1 1-2 0V4c0-.55.45-1 1-1Zm10 0c.55 0 1 .45 1 1v4a1 1 0 1 1-2 0V5h-3a1 1 0 1 1 0-2h4Zm1 16v-4a1 1 0 1 1 2 0v4c0 .55-.45 1-1 1h-4a1 1 0 1 1 0-2h3Zm-9 1H5c-.55 0-1-.45-1-1v-4a1 1 0 1 1 2 0v3h3a1 1 0 1 1 0 2Z" fill="currentColor"/>
          </svg>
        </span>
      </div>
    </div>
  </div>
</div>
<!-- ======= Carte MARBLE #3 (glass ON) ======= -->
<div class="spline-card"
     data-src="https://marble.worldlabs.ai/worldvr/130d798e-728f-492b-a5c7-04bfd76ce654"
     data-title="Nuit étoilée"
     data-display="yes"
     data-glass="yes">
  <div class="spline-live">
    <canvas class="spline-canvas"></canvas>
    <iframe class="spline-iframe"
            allow="xr-spatial-tracking; gyroscope; accelerometer; magnetometer; fullscreen; autoplay"
            allowfullscreen
            loading="lazy" referrerpolicy="no-referrer-when-downgrade" scrolling="no"></iframe>
    <div class="spline-hit" aria-hidden="true"></div>

    <div class="spline-infobar">
      <span class="spline-title">broceliande3</span>
      <div class="icon-row">
        <span class="icon-reset text" data-action="open" aria-label="Ouvrir en plein écran">ᯅ</span>
        <span class="icon-reset" data-action="open" aria-label="Plein écran">
          <svg viewBox="0 0 24 24" aria-hidden="true">
            <path d="M7 3h4a1 1 0 1 1 0 2H8v3a1 1 0 1 1-2 0V4c0-.55.45-1 1-1Zm10 0c.55 0 1 .45 1 1v4a1 1 0 1 1-2 0V5h-3a1 1 0 1 1 0-2h4Zm1 16v-4a1 1 0 1 1 2 0v4c0 .55-.45 1-1 1h-4a1 1 0 1 1 0-2h3Zm-9 1H5c-.55 0-1-.45-1-1v-4a1 1 0 1 1 2 0v3h3a1 1 0 1 1 0 2Z" fill="currentColor"/>
          </svg>
        </span>
      </div>
    </div>
  </div>
</div>
<!-- ======= Carte MARBLE #4 (glass ON) ======= -->
<div class="spline-card"
     data-src="https://marble.worldlabs.ai/worldvr/f52fe890-82ed-442b-8bc1-6653160fb3f5"
     data-title="Nuit étoilée"
     data-display="yes"
     data-glass="yes">
  <div class="spline-live">
    <canvas class="spline-canvas"></canvas>
    <iframe class="spline-iframe"
            allow="xr-spatial-tracking; gyroscope; accelerometer; magnetometer; fullscreen; autoplay"
            allowfullscreen
            loading="lazy" referrerpolicy="no-referrer-when-downgrade" scrolling="no"></iframe>
    <div class="spline-hit" aria-hidden="true"></div>

    <div class="spline-infobar">
      <span class="spline-title">broceliande3</span>
      <div class="icon-row">
        <span class="icon-reset text" data-action="open" aria-label="Ouvrir en plein écran">ᯅ</span>
        <span class="icon-reset" data-action="open" aria-label="Plein écran">
          <svg viewBox="0 0 24 24" aria-hidden="true">
            <path d="M7 3h4a1 1 0 1 1 0 2H8v3a1 1 0 1 1-2 0V4c0-.55.45-1 1-1Zm10 0c.55 0 1 .45 1 1v4a1 1 0 1 1-2 0V5h-3a1 1 0 1 1 0-2h4Zm1 16v-4a1 1 0 1 1 2 0v4c0 .55-.45 1-1 1h-4a1 1 0 1 1 0-2h3Zm-9 1H5c-.55 0-1-.45-1-1v-4a1 1 0 1 1 2 0v3h3a1 1 0 1 1 0 2Z" fill="currentColor"/>
          </svg>
        </span>
      </div>
    </div>
  </div>
</div>
<!-- ======= Carte MARBLE #4 (glass ON) ======= -->
<div class="spline-card"
     data-src="https://marble.worldlabs.ai/worldvr/b8389b1f-fdfb-4e8d-b33a-06a06c86905d"
     data-title="Nuit étoilée"
     data-display="yes"
     data-glass="yes">
  <div class="spline-live">
    <canvas class="spline-canvas"></canvas>
    <iframe class="spline-iframe"
            allow="xr-spatial-tracking; gyroscope; accelerometer; magnetometer; fullscreen; autoplay"
            allowfullscreen
            loading="lazy" referrerpolicy="no-referrer-when-downgrade" scrolling="no"></iframe>
    <div class="spline-hit" aria-hidden="true"></div>

    <div class="spline-infobar">
      <span class="spline-title">broceliande3</span>
      <div class="icon-row">
        <span class="icon-reset text" data-action="open" aria-label="Ouvrir en plein écran">ᯅ</span>
        <span class="icon-reset" data-action="open" aria-label="Plein écran">
          <svg viewBox="0 0 24 24" aria-hidden="true">
            <path d="M7 3h4a1 1 0 1 1 0 2H8v3a1 1 0 1 1-2 0V4c0-.55.45-1 1-1Zm10 0c.55 0 1 .45 1 1v4a1 1 0 1 1-2 0V5h-3a1 1 0 1 1 0-2h4Zm1 16v-4a1 1 0 1 1 2 0v4c0 .55-.45 1-1 1h-4a1 1 0 1 1 0-2h3Zm-9 1H5c-.55 0-1-.45-1-1v-4a1 1 0 1 1 2 0v3h3a1 1 0 1 1 0 2Z" fill="currentColor"/>
          </svg>
        </span>
      </div>
    </div>
  </div>
</div>
<!-- ===== Modal partagé ===== -->
<div class="spline-modal" id="splineModal" aria-hidden="true" aria-label="Visionneuse 3D">
  <div class="spline-backdrop" data-close="1"></div>
  <div class="spline-stage">
    <div class="spline-bar">
      <button class="spline-fs" type="button" id="splineFs" aria-label="Plein écran">ᯅ</button>
      <button class="spline-close" type="button" id="splineClose" aria-label="Fermer">✕</button>
    </div>
    <div class="spline-canvas-full">
      <canvas id="splineFullCanvas"></canvas>
      <!-- L’iframe plein écran est injectée ici -->
    </div>
  </div>
</div>

<script>
  // Plein écran utilitaire
  function goFullscreen(el){
    const rfs = el.requestFullscreen || el.webkitRequestFullscreen || el.msRequestFullscreen || el.mozRequestFullScreen;
    if (rfs) rfs.call(el);
  }

  const modal    = document.getElementById('splineModal');
  const fullCv   = document.getElementById('splineFullCanvas');
  const btnFs    = document.getElementById('splineFs');
  const btnClose = document.getElementById('splineClose');

  let fullIframe = null;

  // Init chaque carte Marble
  document.querySelectorAll('.spline-card').forEach((card)=>{
    // Commande d’affichage
    const display = (card.getAttribute('data-display') || 'yes').toLowerCase().trim();
    if(display === 'no'){
      card.style.display = 'none';
      return; // on n'initialise pas cette carte
    }

    const url    = card.getAttribute('data-src');
    const iframe = card.querySelector('.spline-iframe');

    iframe.src = url;
    iframe.setAttribute('allow','xr-spatial-tracking; gyroscope; accelerometer; magnetometer; fullscreen; autoplay');
    iframe.setAttribute('allowfullscreen','');
    iframe.setAttribute('scrolling','no');

    card.addEventListener('click',(e)=>{
      const icon = e.target.closest('[data-action="open"]');
      if(!icon) return;
      openModal(url);
    });
  });

  function openModal(url){
    if(fullIframe){ fullIframe.remove(); fullIframe=null; }

    fullIframe = document.createElement('iframe');
    fullIframe.className = 'spline-iframe-full';
    fullIframe.src = url;
    fullIframe.allow = "xr-spatial-tracking; gyroscope; accelerometer; magnetometer; fullscreen; autoplay";
    fullIframe.allowFullscreen = true;
    fullIframe.setAttribute('scrolling','no');
    fullCv.insertAdjacentElement('afterend', fullIframe);

    modal.setAttribute('aria-hidden','false');
    document.documentElement.style.overflow='hidden';
    document.body.style.overflow='hidden';
  }

  function closeModal(){
    modal.setAttribute('aria-hidden','true');
    document.documentElement.style.overflow='';
    document.body.style.overflow='';
    if(fullIframe){ fullIframe.remove(); fullIframe=null; }
  }

  btnClose.addEventListener('click', closeModal);
  btnFs.addEventListener('click', ()=> goFullscreen(fullIframe || fullCv) );
  modal.addEventListener('click',(e)=>{ if(e.target.dataset.close) closeModal(); });
  window.addEventListener('keydown',(e)=>{ if(e.key==='Escape' && modal.getAttribute('aria-hidden')==='false') closeModal(); });
</script>

</body>
</html>
				</div>
				</div>
				</div>
		<div class="elementor-element elementor-element-6153d7e e-con-full e-flex wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no e-con e-child" data-id="6153d7e" data-element_type="container" data-e-type="container">
				<div class="elementor-element elementor-element-95b21cc elementor-widget elementor-widget-html" data-id="95b21cc" data-element_type="widget" data-e-type="widget" data-widget_type="html.default">
				<div class="elementor-widget-container">
					<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8"/>
<meta name="viewport" content="width=device-width,initial-scale=1"/>
<link href="https://fonts.googleapis.com/css2?family=Inter+Tight:wght@600;700&display=swap" rel="stylesheet" />

<style>
  /* ===== Carte (style d’origine) + bordure légère & ombre douce ===== */
  .spline-card{
    position:relative; border-radius:16px; overflow:hidden;
    border:1px solid rgba(255,255,255,.14);
    box-shadow:
      0 12px 12px rgba(0,0,0,.24),
      0 12px 6px  rgba(0,0,0,.24);
    transform:translateZ(0); backface-visibility:hidden;
    transition:box-shadow .25s ease, filter .25s ease, transform .22s ease;
    margin:0 0 24px;
    background:#000; /* évite toute marge transparente parasite */
  }
  .spline-card:hover{
    transform:scale(1.022);
    box-shadow:
      0 20px 48px rgba(0,0,0,.28),
      0 4px 10px  rgba(0,0,0,.16);
  }

  /* ===== Glass effect (toggle) =====
     Active-le par carte avec data-glass="yes" */
  .spline-card[data-glass="yes"]{
    background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
    border-color: rgba(255,255,255,.22);
    backdrop-filter: blur(10px) saturate(120%);
    -webkit-backdrop-filter: blur(10px) saturate(120%);
    /* léger liseré intérieur pour un rendu “verre” sans masquer le contenu */
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.14),
      0 12px 12px rgba(0,0,0,.24),
      0 12px 6px  rgba(0,0,0,.24);
  }

  .spline-live{
    position:relative; width:100%; aspect-ratio:16/9; background:#000; overflow:hidden;
    /* Anti-bande noire horizontale */
    --overscan: 12px;
    /* Mini overscan vertical (corrige le fin liseré en bas/haut) */
    --overscanY: 2px; /* ajuste 0–4px si besoin */
  }
  .spline-canvas{ position:absolute; inset:0; width:100%; height:100%; display:block; border:0; }

  /* Iframe Marble : overscan centré + no-scrollbar */
  .spline-iframe{
    position:absolute;
    top:    calc(0px - var(--overscanY));
    bottom: calc(0px - var(--overscanY));
    left:   calc(10px - var(--overscan));
    right:  calc(10px - var(--overscan));
    width:  calc(100% + (var(--overscan) * 2));
    height: calc(100% + (var(--overscanY) * 2));
    display:block; border:0; background:#000;
    transform:translateZ(0); backface-visibility:hidden;
    -ms-overflow-style:none; scrollbar-width:none;
  }
  .spline-iframe::-webkit-scrollbar{ display:none; }

  /* Laisse le scroll à la page */
  .spline-hit{ position:absolute; inset:0; pointer-events:none; }

  /* Infobar (bas de carte) */
  .spline-infobar{
    position:absolute; left:0; right:0; bottom:0; z-index:3;
    display:flex; align-items:center; justify-content:space-between;
    padding:10px 12px; color:#fff;
    background:linear-gradient(180deg, rgba(0,0,0,0) 45%, rgba(0,0,0,.58) 100%);
    user-select:none;
  }
  .spline-title{
    margin:0; color:#fff;
    font:600 14px/1.2 "Inter Tight", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
    text-shadow:0 1px 6px rgba(0,0,0,.45);
  }

  /* Icônes pures */
  .icon-reset{ all: unset; display:inline-block; color:#fff; line-height:1; cursor:pointer; vertical-align:middle; }
  .icon-row{ display:flex; gap:10px; align-items:center; }
  .icon-reset svg{ width:20px; height:20px; display:block; }
  .icon-reset.text{ font-family:"Inter Tight", system-ui; font-weight:700; font-size:18px; }

  /* ===== Modal partagé (plein écran) ===== */
  .spline-modal{ position:fixed; inset:0; z-index:9999; display:none; }
  .spline-modal[aria-hidden="false"]{ display:block; }
  .spline-backdrop{ position:absolute; inset:0; background:rgba(0,0,0,.78); }
  .spline-stage{ position:absolute; inset:0; display:flex; flex-direction:column; background:#000; overflow:hidden; }
  .spline-bar{
    display:flex; justify-content:flex-end; gap:12px; padding:8px 12px; color:#fff;
    background:rgba(0,0,0,.45); border-bottom:1px solid rgba(255,255,255,.1);
    backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px);
  }
  .spline-fs, .spline-close{ all: unset; color:#fff; cursor:pointer; font:700 18px/1 "Inter Tight", system-ui; }

  .spline-canvas-full{
    position:relative; flex:1 1 auto; overflow:hidden; background:#000;
    --overscan: 12px;  /* horizontal */
    --overscanY: 2px;  /* vertical */
  }
  .spline-canvas-full canvas{ position:absolute; inset:0; width:100%; height:100%; display:block; border:0; }

  .spline-iframe-full{
    position:absolute;
    top:    calc(0px - var(--overscanY));
    bottom: calc(0px - var(--overscanY));
    left:   calc(12px - var(--overscan));
    right:  calc(12px - var(--overscan));
    width:  calc(100% + (var(--overscan) * 2));
    height: calc(100% + (var(--overscanY) * 2));
    display:block; border:0; background:#000;
    transform:translateZ(0); backface-visibility:hidden;
    -ms-overflow-style:none; scrollbar-width:none;
  }
  .spline-iframe-full::-webkit-scrollbar{ display:none; }
</style>
</head>
<body>

<!-- ======= Carte MARBLE #1 (glass ON) ======= -->
<div class="spline-card"
     data-src=https://marble.worldlabs.ai/worldvr/130d798e-728f-492b-a5c7-04bfd76ce654"
     data-title="Tsunami"
     data-display="yes"
     data-glass="yes">
  <div class="spline-live">
    <canvas class="spline-canvas"></canvas>
    <iframe class="spline-iframe"
            allow="xr-spatial-tracking; gyroscope; accelerometer; magnetometer; fullscreen; autoplay"
            allowfullscreen
            loading="lazy" referrerpolicy="no-referrer-when-downgrade" scrolling="no"></iframe>
    <div class="spline-hit" aria-hidden="true"></div>

    <div class="spline-infobar">
      <span class="spline-title">broceliande</span>
      <div class="icon-row">
        <span class="icon-reset text" data-action="open" aria-label="Ouvrir en plein écran">ᯅ</span>
        <span class="icon-reset" data-action="open" aria-label="Plein écran">
          <svg viewBox="0 0 24 24" aria-hidden="true">
            <path d="M7 3h4a1 1 0 1 1 0 2H8v3a1 1 0 1 1-2 0V4c0-.55.45-1 1-1Zm10 0c.55 0 1 .45 1 1v4a1 1 0 1 1-2 0V5h-3a1 1 0 1 1 0-2h4Zm1 16v-4a1 1 0 1 1 2 0v4c0 .55-.45 1-1 1h-4a1 1 0 1 1 0-2h3Zm-9 1H5c-.55 0-1-.45-1-1v-4a1 1 0 1 1 2 0v3h3a1 1 0 1 1 0 2Z" fill="currentColor"/>
          </svg>
        </span>
      </div>
    </div>
  </div>
</div>
<!-- ======= Carte MARBLE #2 (glass ON) ======= -->
<div class="spline-card"
     data-src="https://marble.worldlabs.ai/worldvr/b339a26a-74da-4a01-bad8-9269f35e4024"
     data-title="broceliande3"
     data-display="yes"
     data-glass="yes">
  <div class="spline-live">
    <canvas class="spline-canvas"></canvas>
    <iframe class="spline-iframe"
            allow="xr-spatial-tracking; gyroscope; accelerometer; magnetometer; fullscreen; autoplay"
            allowfullscreen
            loading="lazy" referrerpolicy="no-referrer-when-downgrade" scrolling="no"></iframe>
    <div class="spline-hit" aria-hidden="true"></div>

    <div class="spline-infobar">
      <span class="spline-title">broceliande3</span>
      <div class="icon-row">
        <span class="icon-reset text" data-action="open" aria-label="Ouvrir en plein écran">ᯅ</span>
        <span class="icon-reset" data-action="open" aria-label="Plein écran">
          <svg viewBox="0 0 24 24" aria-hidden="true">
            <path d="M7 3h4a1 1 0 1 1 0 2H8v3a1 1 0 1 1-2 0V4c0-.55.45-1 1-1Zm10 0c.55 0 1 .45 1 1v4a1 1 0 1 1-2 0V5h-3a1 1 0 1 1 0-2h4Zm1 16v-4a1 1 0 1 1 2 0v4c0 .55-.45 1-1 1h-4a1 1 0 1 1 0-2h3Zm-9 1H5c-.55 0-1-.45-1-1v-4a1 1 0 1 1 2 0v3h3a1 1 0 1 1 0 2Z" fill="currentColor"/>
          </svg>
        </span>
      </div>
    </div>
  </div>
</div>
<!-- ===== Modal partagé ===== -->
<div class="spline-modal" id="splineModal" aria-hidden="true" aria-label="Visionneuse 3D">
  <div class="spline-backdrop" data-close="1"></div>
  <div class="spline-stage">
    <div class="spline-bar">
      <button class="spline-fs" type="button" id="splineFs" aria-label="Plein écran">ᯅ</button>
      <button class="spline-close" type="button" id="splineClose" aria-label="Fermer">✕</button>
    </div>
    <div class="spline-canvas-full">
      <canvas id="splineFullCanvas"></canvas>
      <!-- L’iframe plein écran est injectée ici -->
    </div>
  </div>
</div>

<script>
  // Plein écran utilitaire
  function goFullscreen(el){
    const rfs = el.requestFullscreen || el.webkitRequestFullscreen || el.msRequestFullscreen || el.mozRequestFullScreen;
    if (rfs) rfs.call(el);
  }

  const modal    = document.getElementById('splineModal');
  const fullCv   = document.getElementById('splineFullCanvas');
  const btnFs    = document.getElementById('splineFs');
  const btnClose = document.getElementById('splineClose');

  let fullIframe = null;

  // Init chaque carte Marble
  document.querySelectorAll('.spline-card').forEach((card)=>{
    // Commande d’affichage
    const display = (card.getAttribute('data-display') || 'yes').toLowerCase().trim();
    if(display === 'no'){
      card.style.display = 'none';
      return; // on n'initialise pas cette carte
    }

    const url    = card.getAttribute('data-src');
    const iframe = card.querySelector('.spline-iframe');

    iframe.src = url;
    iframe.setAttribute('allow','xr-spatial-tracking; gyroscope; accelerometer; magnetometer; fullscreen; autoplay');
    iframe.setAttribute('allowfullscreen','');
    iframe.setAttribute('scrolling','no');

    card.addEventListener('click',(e)=>{
      const icon = e.target.closest('[data-action="open"]');
      if(!icon) return;
      openModal(url);
    });
  });

  function openModal(url){
    if(fullIframe){ fullIframe.remove(); fullIframe=null; }

    fullIframe = document.createElement('iframe');
    fullIframe.className = 'spline-iframe-full';
    fullIframe.src = url;
    fullIframe.allow = "xr-spatial-tracking; gyroscope; accelerometer; magnetometer; fullscreen; autoplay";
    fullIframe.allowFullscreen = true;
    fullIframe.setAttribute('scrolling','no');
    fullCv.insertAdjacentElement('afterend', fullIframe);

    modal.setAttribute('aria-hidden','false');
    document.documentElement.style.overflow='hidden';
    document.body.style.overflow='hidden';
  }

  function closeModal(){
    modal.setAttribute('aria-hidden','true');
    document.documentElement.style.overflow='';
    document.body.style.overflow='';
    if(fullIframe){ fullIframe.remove(); fullIframe=null; }
  }

  btnClose.addEventListener('click', closeModal);
  btnFs.addEventListener('click', ()=> goFullscreen(fullIframe || fullCv) );
  modal.addEventListener('click',(e)=>{ if(e.target.dataset.close) closeModal(); });
  window.addEventListener('keydown',(e)=>{ if(e.key==='Escape' && modal.getAttribute('aria-hidden')==='false') closeModal(); });
</script>

</body>
</html>
				</div>
				</div>
				</div>
		<div class="elementor-element elementor-element-d2f86d3 e-con-full e-flex wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no e-con e-child" data-id="d2f86d3" data-element_type="container" data-e-type="container">
				<div class="elementor-element elementor-element-a8a19f9 elementor-widget elementor-widget-html" data-id="a8a19f9" data-element_type="widget" data-e-type="widget" data-widget_type="html.default">
				<div class="elementor-widget-container">
					<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8"/>
<meta name="viewport" content="width=device-width,initial-scale=1"/>
<link href="https://fonts.googleapis.com/css2?family=Inter+Tight:wght@600;700&display=swap" rel="stylesheet" />

<style>
  /* ===== Carte (style d’origine) + bordure légère & ombre douce ===== */
  .spline-card{
    position:relative; border-radius:16px; overflow:hidden;
    border:1px solid rgba(255,255,255,.14);
    box-shadow:
      0 12px 12px rgba(0,0,0,.24),
      0 12px 6px  rgba(0,0,0,.24);
    transform:translateZ(0); backface-visibility:hidden;
    transition:box-shadow .25s ease, filter .25s ease, transform .22s ease;
    margin:0 0 24px;
    background:#000; /* évite toute marge transparente parasite */
  }
  .spline-card:hover{
    transform:scale(1.022);
    box-shadow:
      0 20px 48px rgba(0,0,0,.28),
      0 4px 10px  rgba(0,0,0,.16);
  }

  /* ===== Glass effect (toggle) =====
     Active-le par carte avec data-glass="yes" */
  .spline-card[data-glass="yes"]{
    background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
    border-color: rgba(255,255,255,.22);
    backdrop-filter: blur(10px) saturate(120%);
    -webkit-backdrop-filter: blur(10px) saturate(120%);
    /* léger liseré intérieur pour un rendu “verre” sans masquer le contenu */
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.14),
      0 12px 12px rgba(0,0,0,.24),
      0 12px 6px  rgba(0,0,0,.24);
  }

  .spline-live{
    position:relative; width:100%; aspect-ratio:16/9; background:#000; overflow:hidden;
    /* Anti-bande noire horizontale */
    --overscan: 12px;
    /* Mini overscan vertical (corrige le fin liseré en bas/haut) */
    --overscanY: 2px; /* ajuste 0–4px si besoin */
  }
  .spline-canvas{ position:absolute; inset:0; width:100%; height:100%; display:block; border:0; }

  /* Iframe Marble : overscan centré + no-scrollbar */
  .spline-iframe{
    position:absolute;
    top:    calc(0px - var(--overscanY));
    bottom: calc(0px - var(--overscanY));
    left:   calc(10px - var(--overscan));
    right:  calc(10px - var(--overscan));
    width:  calc(100% + (var(--overscan) * 2));
    height: calc(100% + (var(--overscanY) * 2));
    display:block; border:0; background:#000;
    transform:translateZ(0); backface-visibility:hidden;
    -ms-overflow-style:none; scrollbar-width:none;
  }
  .spline-iframe::-webkit-scrollbar{ display:none; }

  /* Laisse le scroll à la page */
  .spline-hit{ position:absolute; inset:0; pointer-events:none; }

  /* Infobar (bas de carte) */
  .spline-infobar{
    position:absolute; left:0; right:0; bottom:0; z-index:3;
    display:flex; align-items:center; justify-content:space-between;
    padding:10px 12px; color:#fff;
    background:linear-gradient(180deg, rgba(0,0,0,0) 45%, rgba(0,0,0,.58) 100%);
    user-select:none;
  }
  .spline-title{
    margin:0; color:#fff;
    font:600 14px/1.2 "Inter Tight", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
    text-shadow:0 1px 6px rgba(0,0,0,.45);
  }

  /* Icônes pures */
  .icon-reset{ all: unset; display:inline-block; color:#fff; line-height:1; cursor:pointer; vertical-align:middle; }
  .icon-row{ display:flex; gap:10px; align-items:center; }
  .icon-reset svg{ width:20px; height:20px; display:block; }
  .icon-reset.text{ font-family:"Inter Tight", system-ui; font-weight:700; font-size:18px; }

  /* ===== Modal partagé (plein écran) ===== */
  .spline-modal{ position:fixed; inset:0; z-index:9999; display:none; }
  .spline-modal[aria-hidden="false"]{ display:block; }
  .spline-backdrop{ position:absolute; inset:0; background:rgba(0,0,0,.78); }
  .spline-stage{ position:absolute; inset:0; display:flex; flex-direction:column; background:#000; overflow:hidden; }
  .spline-bar{
    display:flex; justify-content:flex-end; gap:12px; padding:8px 12px; color:#fff;
    background:rgba(0,0,0,.45); border-bottom:1px solid rgba(255,255,255,.1);
    backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px);
  }
  .spline-fs, .spline-close{ all: unset; color:#fff; cursor:pointer; font:700 18px/1 "Inter Tight", system-ui; }

  .spline-canvas-full{
    position:relative; flex:1 1 auto; overflow:hidden; background:#000;
    --overscan: 12px;  /* horizontal */
    --overscanY: 2px;  /* vertical */
  }
  .spline-canvas-full canvas{ position:absolute; inset:0; width:100%; height:100%; display:block; border:0; }

  .spline-iframe-full{
    position:absolute;
    top:    calc(0px - var(--overscanY));
    bottom: calc(0px - var(--overscanY));
    left:   calc(12px - var(--overscan));
    right:  calc(12px - var(--overscan));
    width:  calc(100% + (var(--overscan) * 2));
    height: calc(100% + (var(--overscanY) * 2));
    display:block; border:0; background:#000;
    transform:translateZ(0); backface-visibility:hidden;
    -ms-overflow-style:none; scrollbar-width:none;
  }
  .spline-iframe-full::-webkit-scrollbar{ display:none; }
</style>
</head>
<body>

<!-- ======= Carte MARBLE #1 (glass ON) ======= -->
<div class="spline-card"
     data-src="https://marble.worldlabs.ai/worldvr/cf74c541-11cb-412f-b658-b3d87e7604d0"
     data-title="broceliande"
     data-display="yes"
     data-glass="yes">
  <div class="spline-live">
    <canvas class="spline-canvas"></canvas>
    <iframe class="spline-iframe"
            allow="xr-spatial-tracking; gyroscope; accelerometer; magnetometer; fullscreen; autoplay"
            allowfullscreen
            loading="lazy" referrerpolicy="no-referrer-when-downgrade" scrolling="no"></iframe>
    <div class="spline-hit" aria-hidden="true"></div>

    <div class="spline-infobar">
      <span class="spline-title">broceliande</span>
      <div class="icon-row">
        <span class="icon-reset text" data-action="open" aria-label="Ouvrir en plein écran">ᯅ</span>
        <span class="icon-reset" data-action="open" aria-label="Plein écran">
          <svg viewBox="0 0 24 24" aria-hidden="true">
            <path d="M7 3h4a1 1 0 1 1 0 2H8v3a1 1 0 1 1-2 0V4c0-.55.45-1 1-1Zm10 0c.55 0 1 .45 1 1v4a1 1 0 1 1-2 0V5h-3a1 1 0 1 1 0-2h4Zm1 16v-4a1 1 0 1 1 2 0v4c0 .55-.45 1-1 1h-4a1 1 0 1 1 0-2h3Zm-9 1H5c-.55 0-1-.45-1-1v-4a1 1 0 1 1 2 0v3h3a1 1 0 1 1 0 2Z" fill="currentColor"/>
          </svg>
        </span>
      </div>
    </div>
  </div>
</div>
<!-- ======= Carte MARBLE #2 (glass ON) ======= -->
<div class="spline-card"
     data-src="https://marble.worldlabs.ai/worldvr/b8389b1f-fdfb-4e8d-b33a-06a06c86905d"
     data-title="Turner"
     data-display="yes"
     data-glass="yes">
  <div class="spline-live">
    <canvas class="spline-canvas"></canvas>
    <iframe class="spline-iframe"
            allow="xr-spatial-tracking; gyroscope; accelerometer; magnetometer; fullscreen; autoplay"
            allowfullscreen
            loading="lazy" referrerpolicy="no-referrer-when-downgrade" scrolling="no"></iframe>
    <div class="spline-hit" aria-hidden="true"></div>

    <div class="spline-infobar">
      <span class="spline-title">broceliande3</span>
      <div class="icon-row">
        <span class="icon-reset text" data-action="open" aria-label="Ouvrir en plein écran">ᯅ</span>
        <span class="icon-reset" data-action="open" aria-label="Plein écran">
          <svg viewBox="0 0 24 24" aria-hidden="true">
            <path d="M7 3h4a1 1 0 1 1 0 2H8v3a1 1 0 1 1-2 0V4c0-.55.45-1 1-1Zm10 0c.55 0 1 .45 1 1v4a1 1 0 1 1-2 0V5h-3a1 1 0 1 1 0-2h4Zm1 16v-4a1 1 0 1 1 2 0v4c0 .55-.45 1-1 1h-4a1 1 0 1 1 0-2h3Zm-9 1H5c-.55 0-1-.45-1-1v-4a1 1 0 1 1 2 0v3h3a1 1 0 1 1 0 2Z" fill="currentColor"/>
          </svg>
        </span>
      </div>
    </div>
  </div>
</div>
<!-- ===== Modal partagé ===== -->
<div class="spline-modal" id="splineModal" aria-hidden="true" aria-label="Visionneuse 3D">
  <div class="spline-backdrop" data-close="1"></div>
  <div class="spline-stage">
    <div class="spline-bar">
      <button class="spline-fs" type="button" id="splineFs" aria-label="Plein écran">ᯅ</button>
      <button class="spline-close" type="button" id="splineClose" aria-label="Fermer">✕</button>
    </div>
    <div class="spline-canvas-full">
      <canvas id="splineFullCanvas"></canvas>
      <!-- L’iframe plein écran est injectée ici -->
    </div>
  </div>
</div>

<script>
  // Plein écran utilitaire
  function goFullscreen(el){
    const rfs = el.requestFullscreen || el.webkitRequestFullscreen || el.msRequestFullscreen || el.mozRequestFullScreen;
    if (rfs) rfs.call(el);
  }

  const modal    = document.getElementById('splineModal');
  const fullCv   = document.getElementById('splineFullCanvas');
  const btnFs    = document.getElementById('splineFs');
  const btnClose = document.getElementById('splineClose');

  let fullIframe = null;

  // Init chaque carte Marble
  document.querySelectorAll('.spline-card').forEach((card)=>{
    // Commande d’affichage
    const display = (card.getAttribute('data-display') || 'yes').toLowerCase().trim();
    if(display === 'no'){
      card.style.display = 'none';
      return; // on n'initialise pas cette carte
    }

    const url    = card.getAttribute('data-src');
    const iframe = card.querySelector('.spline-iframe');

    iframe.src = url;
    iframe.setAttribute('allow','xr-spatial-tracking; gyroscope; accelerometer; magnetometer; fullscreen; autoplay');
    iframe.setAttribute('allowfullscreen','');
    iframe.setAttribute('scrolling','no');

    card.addEventListener('click',(e)=>{
      const icon = e.target.closest('[data-action="open"]');
      if(!icon) return;
      openModal(url);
    });
  });

  function openModal(url){
    if(fullIframe){ fullIframe.remove(); fullIframe=null; }

    fullIframe = document.createElement('iframe');
    fullIframe.className = 'spline-iframe-full';
    fullIframe.src = url;
    fullIframe.allow = "xr-spatial-tracking; gyroscope; accelerometer; magnetometer; fullscreen; autoplay";
    fullIframe.allowFullscreen = true;
    fullIframe.setAttribute('scrolling','no');
    fullCv.insertAdjacentElement('afterend', fullIframe);

    modal.setAttribute('aria-hidden','false');
    document.documentElement.style.overflow='hidden';
    document.body.style.overflow='hidden';
  }

  function closeModal(){
    modal.setAttribute('aria-hidden','true');
    document.documentElement.style.overflow='';
    document.body.style.overflow='';
    if(fullIframe){ fullIframe.remove(); fullIframe=null; }
  }

  btnClose.addEventListener('click', closeModal);
  btnFs.addEventListener('click', ()=> goFullscreen(fullIframe || fullCv) );
  modal.addEventListener('click',(e)=>{ if(e.target.dataset.close) closeModal(); });
  window.addEventListener('keydown',(e)=>{ if(e.key==='Escape' && modal.getAttribute('aria-hidden')==='false') closeModal(); });
</script>

</body>
</html>
				</div>
				</div>
				</div>
		<div class="elementor-element elementor-element-ef1f3b3 e-con-full e-flex wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no e-con e-child" data-id="ef1f3b3" data-element_type="container" data-e-type="container">
				</div>
					</div>
				</div>
				</div>
		<p>Cet article <a href="https://presentcomposedesign.fr/vr_xprmnts/">VR_Xprmnts</a> est apparu en premier sur <a href="https://presentcomposedesign.fr">Présent Composé design</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Fluffybrick AR</title>
		<link>https://presentcomposedesign.fr/fluffybrick-ar/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Tue, 17 Dec 2024 14:02:23 +0000</pubDate>
				<category><![CDATA[[ia]]]></category>
		<category><![CDATA[Design graphique]]></category>
		<guid isPermaLink="false">https://presentcomposedesign.fr/?p=30699</guid>

					<description><![CDATA[<p>Fluffybrick [AR] est un remake saturé de l’œuvre de 2022. Trois risographies uniques et 50 stickers imprimés, chacun accompagné de son jumeau numérique NFT. L’œuvre combine risographie, IA générative et réalité augmentée pour questionner la saturation visuelle et sonore à l’ère des outils créatifs démocratisés.</p>
<p>Cet article <a href="https://presentcomposedesign.fr/fluffybrick-ar/">Fluffybrick AR</a> est apparu en premier sur <a href="https://presentcomposedesign.fr">Présent Composé design</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="30699" class="elementor elementor-30699">
				<div class="elementor-element elementor-element-7d7d18b e-flex e-con-boxed wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no e-con e-parent" data-id="7d7d18b" data-element_type="container" data-e-type="container" data-settings="{&quot;background_background&quot;:&quot;classic&quot;}">
					<div class="e-con-inner">
				<div class="elementor-element elementor-element-36b5610 elementor-widget__width-inherit elementor-absolute elementor-widget elementor-widget-html" data-id="36b5610" data-element_type="widget" data-e-type="widget" data-settings="{&quot;_position&quot;:&quot;absolute&quot;}" data-widget_type="html.default">
				<div class="elementor-widget-container">
					<div id="container">
  <canvas id="canvas3d"></canvas>
</div>

<style>
  body {
    background-color: #FFFFFF00;
    margin: 0;
    overflow: hidden;
  }

  #container {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    height: 100% !important;
  }

  #canvas3d {
    width: 100% !important;
    height: 100% !important;
  }
</style>

<script type="module">
  const fileName = "aEutQhNMO3QPL-pO";
  import { Application } from "https://esm.sh/@splinetool/runtime";
  const canvas = document.getElementById('canvas3d');
  const app = new Application(canvas);
  const urlParams = new URLSearchParams(window.location.search);
  const colorValue = urlParams.size > 1 ? urlParams.get('destinationValue') : 3.2;

  app.load(`https://prod.spline.design/${fileName}/scene.splinecode`);
</script>
				</div>
				</div>
					</div>
				</div>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-cd23dd4 elementor-section-full_width elementor-section-height-min-height elementor-section-items-bottom elementor-section-content-middle elementor-section-stretched elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no" data-id="cd23dd4" data-element_type="section" data-e-type="section" data-settings="{&quot;stretch_section&quot;:&quot;section-stretched&quot;,&quot;background_background&quot;:&quot;classic&quot;}">
						<div class="elementor-container elementor-column-gap-extended">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-4c4f73e" data-id="4c4f73e" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<section class="elementor-section elementor-inner-section elementor-element elementor-element-33dfe8e elementor-section-boxed elementor-section-height-default elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no" data-id="33dfe8e" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-inner-column elementor-element elementor-element-30362e9" data-id="30362e9" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-e27097c elementor-widget elementor-widget-heading" data-id="e27097c" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h1 class="elementor-heading-title elementor-size-default">Fluffybrick <span style=", sans-serif;font-size: 8vw;font-style: normal;font-weight: 700;background-color: var( --e-global-color-a81baed )">[AR]</span><span style=", sans-serif;font-size: 8vw;font-style: normal;font-weight: 700;background-color: var( --e-global-color-a81baed )"> </span><span style=", sans-serif;font-size: 8vw;font-style: normal;font-weight: 700;background-color: var( --e-global-color-a81baed )"></span><br></h1>				</div>
				</div>
					</div>
		</div>
					</div>
		</section>
		<div class="elementor-element elementor-element-b30017a e-flex e-con-boxed wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no elementor-invisible e-con e-parent" data-id="b30017a" data-element_type="container" data-e-type="container" data-settings="{&quot;background_background&quot;:&quot;classic&quot;,&quot;animation&quot;:&quot;fadeInUp&quot;}">
					<div class="e-con-inner">
		<div class="elementor-element elementor-element-c2492ce e-con-full e-flex wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no e-con e-child" data-id="c2492ce" data-element_type="container" data-e-type="container">
				<div class="elementor-element elementor-element-b6c88d8 elementor-widget__width-initial elementor-widget elementor-widget-text-editor" data-id="b6c88d8" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<h1>Fluffybrick [AR]</h1>
<div data-vce-boxed-width="true">
<div data-vce-do-apply="all el-ba3f564d">
<div data-vce-element-content="true">
<div data-vce-do-apply="border margin background el-11f4390c">
<div data-vce-element-content="true" data-vce-do-apply="padding el-11f4390c">
<div><span style="color: #0010ef;">&nbsp;</span></div>
<h2>On peut considérer cette production comme un remake saturé version 2024 de  » l&rsquo;œuvre » initiale « Fluffybrick » produite en 2022 et pour laquelle les outils d&rsquo;intelligence artificielles génératifs utilisés n&rsquo;en étaient alors qu&rsquo;à leurs balbutiements.<p></p>
<p>Fluffybrick [AR] est une production intéractive, multimédia existant physiquement sous la forme de trois reproductions uniques pour chacune d&rsquo;entres elles puisqu&rsquo; imprimées en risographie.<br>Il est volontaire qu&rsquo;au premier abord l&rsquo;aspect graphique et visuel de la production paraisse relativement cloisonné et peu esthétique. En effet à l&rsquo;inverse de la version Fluffybrick de 2022, elle aussi imprimée en 10 exemplaires en risographie mais en bichromie, une troisième couche d&rsquo;encre noire mettant en avant les éléments de codes nécessaires à la génération de telles images (d&rsquo;ordinaire cachés) ont été volontairement superposés sur l&rsquo;image elle-même.</p>
<p>En y regardant de plus près on comprend alors qu&rsquo;une seconde lecture de l&rsquo;œuvre devient possible en utilisant son outil de prédilection du moment, à savoir, son smartphone.</p>
<p>En scannant le QR code présent sur la production risographique, et de ce fait grâce à votre « amulette numérique » fluffybrick se libère et apparaît sous une nouvelle forme qui relève cette fois-ci de la vidéo en réalité augmentée où là aussi, l&rsquo;intégralité des contenus qu&rsquo;ils soient visuels ou audios, ont volontairement été générés via ia.</p>
<p>Au delà du caractère absurde de son sujet Fluffybrick [AR] vise à provoquer  une forme de saturation à la fois visuelle et sonore qui questionne sur le rôle des créateurs, artistes, rêveurs, désormais à une époque où l&rsquo;accès et l&rsquo;utilisation « d&rsquo;outils ? »  sont devenus on ne peut plus massifs et démocratisés.&nbsp;</p>
<p><strong><span style="color: #0010ef;">Créations&nbsp; artistiques</span></strong> personnelles <strong><span style="color: #0010ef;">obtenues en utilisant des outils d&rsquo;intelligence artificielle générative</span></strong> entre autres logiciels, retouches &amp; modifications <strong><span style="color: #0010ef;">dans leur processus de réalisation</span></strong>.<br>PrésentComposédesign-2024</p>
</h2>
<h2 style="text-align: center;"><span style="color: #0010ef;"><strong><i class="fa-solid fa-chevron-down"></i>&nbsp;</strong></span></h2>
<h2 style="text-align: center;"><span style="color: #0010ef;"><strong>Vous êtes intéressé par l&rsquo;acquisition d&rsquo;un de ces 3 exemplaires ?&nbsp;</strong></span></h2>
<div><span style="color: #0010ef;"><strong><br></strong></span></div>
</div>
</div>
</div>
</div>
</div>
<div data-vce-boxed-width="true">
<div data-vce-do-apply="all el-d9d9a9fd">
<div data-vce-element-content="true">
<div>
<div data-vce-do-apply="border margin background el-87440d41">
<div data-vce-element-content="true" data-vce-do-apply="padding el-87440d41">
<p><!-- /wp:vcwb/empty-comment-element-wrapper --></p>
</div>
</div>
</div>
<p><!-- /vcwb/dynamicElementComment:87440d41 --></p>
</div>
</div>
</div>
<p><!-- /vcwb/dynamicElementComment:d9d9a9fd --><!--vcv no format--></p>								</div>
				</div>
				<div class="elementor-element elementor-element-ec35dd3 elementor-align-center elementor-widget elementor-widget-button" data-id="ec35dd3" data-element_type="widget" data-e-type="widget" data-widget_type="button.default">
				<div class="elementor-widget-container">
									<div class="elementor-button-wrapper">
					<a class="elementor-button elementor-button-link elementor-size-sm" href="https://presentcomposedesign.fr/contact/">
						<span class="elementor-button-content-wrapper">
									<span class="elementor-button-text">Cliquez ici</span>
					</span>
					</a>
				</div>
								</div>
				</div>
				</div>
		<div class="elementor-element elementor-element-385e30c e-con-full e-flex wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no e-con e-child" data-id="385e30c" data-element_type="container" data-e-type="container">
		<div class="elementor-element elementor-element-47b7392 e-flex e-con-boxed wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no e-con e-child" data-id="47b7392" data-element_type="container" data-e-type="container">
					<div class="e-con-inner">
				<div class="elementor-element elementor-element-f41da31 elementor-widget elementor-widget-video" data-id="f41da31" data-element_type="widget" data-e-type="widget" data-settings="{&quot;video_type&quot;:&quot;hosted&quot;,&quot;autoplay&quot;:&quot;yes&quot;,&quot;play_on_mobile&quot;:&quot;yes&quot;,&quot;loop&quot;:&quot;yes&quot;,&quot;controls&quot;:&quot;yes&quot;}" data-widget_type="video.default">
				<div class="elementor-widget-container">
							<div class="e-hosted-video elementor-wrapper elementor-open-inline">
					<video class="elementor-video" src="https://presentcomposedesign.fr/wp-content/uploads/2024/12/Sequence-01.mp4" autoplay="" loop="" controls="" playsinline="" controlsList="nodownload"></video>
				</div>
						</div>
				</div>
					</div>
				</div>
		<div class="elementor-element elementor-element-017f9e7 e-flex e-con-boxed wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no e-con e-child" data-id="017f9e7" data-element_type="container" data-e-type="container">
					<div class="e-con-inner">
				<div class="elementor-element elementor-element-2d7cb4d wpr-grid-columns-1 wpr-grid-columns--tablet3 wpr-grid-columns--mobile1 wpr-grid-pagination-center elementor-widget elementor-widget-wpr-media-grid" data-id="2d7cb4d" data-element_type="widget" data-e-type="widget" data-widget_type="wpr-media-grid.default">
				<div class="elementor-widget-container">
					<section class="wpr-grid wpr-media-grid elementor-clearfix" data-settings="{&quot;layout&quot;:&quot;masonry&quot;,&quot;columns_desktop&quot;:&quot;1&quot;,&quot;gutter_hr&quot;:1,&quot;gutter_hr_mobile&quot;:10,&quot;gutter_hr_mobile_extra&quot;:10,&quot;gutter_hr_tablet&quot;:10,&quot;gutter_hr_tablet_extra&quot;:1,&quot;gutter_hr_laptop&quot;:1,&quot;gutter_hr_widescreen&quot;:1,&quot;gutter_vr&quot;:1,&quot;gutter_vr_mobile&quot;:10,&quot;gutter_vr_mobile_extra&quot;:10,&quot;gutter_vr_tablet&quot;:10,&quot;gutter_vr_tablet_extra&quot;:1,&quot;gutter_vr_laptop&quot;:1,&quot;gutter_vr_widescreen&quot;:1,&quot;animation&quot;:&quot;default&quot;,&quot;animation_duration&quot;:0.3,&quot;animation_delay&quot;:0.1,&quot;deeplinking&quot;:&quot;&quot;,&quot;filters_default_filter&quot;:&quot;&quot;,&quot;filters_linkable&quot;:&quot;no&quot;,&quot;filters_count&quot;:&quot;&quot;,&quot;filters_hide_empty&quot;:&quot;no&quot;,&quot;filters_animation&quot;:&quot;default&quot;,&quot;filters_animation_duration&quot;:0.3,&quot;filters_animation_delay&quot;:0.1,&quot;pagination_type&quot;:&quot;load-more&quot;,&quot;pagination_max_pages&quot;:1,&quot;lightbox&quot;:{&quot;selector&quot;:&quot;.wpr-grid-image-wrap&quot;,&quot;iframeMaxWidth&quot;:&quot;60%&quot;,&quot;hash&quot;:false,&quot;autoplay&quot;:&quot;true&quot;,&quot;pause&quot;:5000,&quot;progressBar&quot;:&quot;true&quot;,&quot;counter&quot;:&quot;true&quot;,&quot;controls&quot;:&quot;true&quot;,&quot;getCaptionFromTitleOrAlt&quot;:&quot;true&quot;,&quot;thumbnail&quot;:&quot;&quot;,&quot;showThumbByDefault&quot;:&quot;&quot;,&quot;share&quot;:&quot;&quot;,&quot;zoom&quot;:&quot;true&quot;,&quot;fullScreen&quot;:&quot;true&quot;,&quot;download&quot;:&quot;true&quot;}}"><article class="wpr-grid-item elementor-clearfix post-30705 attachment type-attachment status-inherit hentry entry"><div class="wpr-grid-item-inner"><div class="wpr-grid-media-wrap wpr-effect-size-small "><div class="wpr-grid-image-wrap" data-src="https://presentcomposedesign.fr/wp-content/uploads/2024/12/FLUFFYBRICK_1.jpg"><img decoding="async" src="https://presentcomposedesign.fr/wp-content/uploads/2024/12/FLUFFYBRICK_1.jpg" alt="FLUFFYBRICK_1" class="wpr-anim-timing-ease-default"></div><div class="wpr-grid-media-hover wpr-animation-wrap"><div class="wpr-grid-media-hover-bg  wpr-overlay-fade-in wpr-anim-size-large wpr-anim-timing-ease-default wpr-anim-transparency" data-url="https://presentcomposedesign.fr/fluffybrick_1/"></div><div class="wpr-cv-container"><div class="wpr-cv-outer"><div class="wpr-cv-inner"><div class="wpr-grid-media-hover-middle elementor-clearfix"><div class="wpr-grid-item-lightbox elementor-repeater-item-4d1548a wpr-grid-item-display-block wpr-grid-item-align-center wpr-element-fade-in wpr-anim-size-large wpr-anim-timing-ease-default wpr-anim-transparency"><div class="inner-block"><span data-src="https://presentcomposedesign.fr/wp-content/uploads/2024/12/FLUFFYBRICK_1.jpg"><i class="fas fa-search"></i></span><div class="wpr-grid-lightbox-overlay"></div></div></div></div></div></div></div></div></div></div></article><article class="wpr-grid-item elementor-clearfix post-30706 attachment type-attachment status-inherit hentry entry"><div class="wpr-grid-item-inner"><div class="wpr-grid-media-wrap wpr-effect-size-small "><div class="wpr-grid-image-wrap" data-src="https://presentcomposedesign.fr/wp-content/uploads/2024/12/FLUFFYBRICK_2.jpg"><img decoding="async" src="https://presentcomposedesign.fr/wp-content/uploads/2024/12/FLUFFYBRICK_2.jpg" alt="FLUFFYBRICK_2" class="wpr-anim-timing-ease-default"></div><div class="wpr-grid-media-hover wpr-animation-wrap"><div class="wpr-grid-media-hover-bg  wpr-overlay-fade-in wpr-anim-size-large wpr-anim-timing-ease-default wpr-anim-transparency" data-url="https://presentcomposedesign.fr/fluffybrick_2/"></div><div class="wpr-cv-container"><div class="wpr-cv-outer"><div class="wpr-cv-inner"><div class="wpr-grid-media-hover-middle elementor-clearfix"><div class="wpr-grid-item-lightbox elementor-repeater-item-4d1548a wpr-grid-item-display-block wpr-grid-item-align-center wpr-element-fade-in wpr-anim-size-large wpr-anim-timing-ease-default wpr-anim-transparency"><div class="inner-block"><span data-src="https://presentcomposedesign.fr/wp-content/uploads/2024/12/FLUFFYBRICK_2.jpg"><i class="fas fa-search"></i></span><div class="wpr-grid-lightbox-overlay"></div></div></div></div></div></div></div></div></div></div></article><article class="wpr-grid-item elementor-clearfix post-30713 attachment type-attachment status-inherit hentry entry"><div class="wpr-grid-item-inner"><div class="wpr-grid-media-wrap wpr-effect-size-small "><div class="wpr-grid-image-wrap" data-src="https://presentcomposedesign.fr/wp-content/uploads/2024/12/FLUFFYBRICK_9-scaled.jpg"><img decoding="async" src="https://presentcomposedesign.fr/wp-content/uploads/2024/12/FLUFFYBRICK_9-scaled.jpg" alt="FLUFFYBRICK_9" class="wpr-anim-timing-ease-default"></div><div class="wpr-grid-media-hover wpr-animation-wrap"><div class="wpr-grid-media-hover-bg  wpr-overlay-fade-in wpr-anim-size-large wpr-anim-timing-ease-default wpr-anim-transparency" data-url="https://presentcomposedesign.fr/fluffybrick-ar/fluffybrick_9/"></div><div class="wpr-cv-container"><div class="wpr-cv-outer"><div class="wpr-cv-inner"><div class="wpr-grid-media-hover-middle elementor-clearfix"><div class="wpr-grid-item-lightbox elementor-repeater-item-4d1548a wpr-grid-item-display-block wpr-grid-item-align-center wpr-element-fade-in wpr-anim-size-large wpr-anim-timing-ease-default wpr-anim-transparency"><div class="inner-block"><span data-src="https://presentcomposedesign.fr/wp-content/uploads/2024/12/FLUFFYBRICK_9-scaled.jpg"><i class="fas fa-search"></i></span><div class="wpr-grid-lightbox-overlay"></div></div></div></div></div></div></div></div></div></div></article><article class="wpr-grid-item elementor-clearfix post-30710 attachment type-attachment status-inherit hentry entry"><div class="wpr-grid-item-inner"><div class="wpr-grid-media-wrap wpr-effect-size-small "><div class="wpr-grid-image-wrap" data-src="https://presentcomposedesign.fr/wp-content/uploads/2024/12/FLUFFYBRICK_6.jpg"><img decoding="async" src="https://presentcomposedesign.fr/wp-content/uploads/2024/12/FLUFFYBRICK_6.jpg" alt="FLUFFYBRICK_6" class="wpr-anim-timing-ease-default"></div><div class="wpr-grid-media-hover wpr-animation-wrap"><div class="wpr-grid-media-hover-bg  wpr-overlay-fade-in wpr-anim-size-large wpr-anim-timing-ease-default wpr-anim-transparency" data-url="https://presentcomposedesign.fr/fluffybrick_6/"></div><div class="wpr-cv-container"><div class="wpr-cv-outer"><div class="wpr-cv-inner"><div class="wpr-grid-media-hover-middle elementor-clearfix"><div class="wpr-grid-item-lightbox elementor-repeater-item-4d1548a wpr-grid-item-display-block wpr-grid-item-align-center wpr-element-fade-in wpr-anim-size-large wpr-anim-timing-ease-default wpr-anim-transparency"><div class="inner-block"><span data-src="https://presentcomposedesign.fr/wp-content/uploads/2024/12/FLUFFYBRICK_6.jpg"><i class="fas fa-search"></i></span><div class="wpr-grid-lightbox-overlay"></div></div></div></div></div></div></div></div></div></div></article><article class="wpr-grid-item elementor-clearfix post-30709 attachment type-attachment status-inherit hentry entry"><div class="wpr-grid-item-inner"><div class="wpr-grid-media-wrap wpr-effect-size-small "><div class="wpr-grid-image-wrap" data-src="https://presentcomposedesign.fr/wp-content/uploads/2024/12/FLUFFYBRICK_5.jpg"><img decoding="async" src="https://presentcomposedesign.fr/wp-content/uploads/2024/12/FLUFFYBRICK_5.jpg" alt="FLUFFYBRICK_5" class="wpr-anim-timing-ease-default"></div><div class="wpr-grid-media-hover wpr-animation-wrap"><div class="wpr-grid-media-hover-bg  wpr-overlay-fade-in wpr-anim-size-large wpr-anim-timing-ease-default wpr-anim-transparency" data-url="https://presentcomposedesign.fr/fluffybrick_5/"></div><div class="wpr-cv-container"><div class="wpr-cv-outer"><div class="wpr-cv-inner"><div class="wpr-grid-media-hover-middle elementor-clearfix"><div class="wpr-grid-item-lightbox elementor-repeater-item-4d1548a wpr-grid-item-display-block wpr-grid-item-align-center wpr-element-fade-in wpr-anim-size-large wpr-anim-timing-ease-default wpr-anim-transparency"><div class="inner-block"><span data-src="https://presentcomposedesign.fr/wp-content/uploads/2024/12/FLUFFYBRICK_5.jpg"><i class="fas fa-search"></i></span><div class="wpr-grid-lightbox-overlay"></div></div></div></div></div></div></div></div></div></div></article><article class="wpr-grid-item elementor-clearfix post-30708 attachment type-attachment status-inherit hentry entry"><div class="wpr-grid-item-inner"><div class="wpr-grid-media-wrap wpr-effect-size-small "><div class="wpr-grid-image-wrap" data-src="https://presentcomposedesign.fr/wp-content/uploads/2024/12/FLUFFYBRICK_4.jpg"><img decoding="async" src="https://presentcomposedesign.fr/wp-content/uploads/2024/12/FLUFFYBRICK_4.jpg" alt="FLUFFYBRICK_4" class="wpr-anim-timing-ease-default"></div><div class="wpr-grid-media-hover wpr-animation-wrap"><div class="wpr-grid-media-hover-bg  wpr-overlay-fade-in wpr-anim-size-large wpr-anim-timing-ease-default wpr-anim-transparency" data-url="https://presentcomposedesign.fr/fluffybrick_4/"></div><div class="wpr-cv-container"><div class="wpr-cv-outer"><div class="wpr-cv-inner"><div class="wpr-grid-media-hover-middle elementor-clearfix"><div class="wpr-grid-item-lightbox elementor-repeater-item-4d1548a wpr-grid-item-display-block wpr-grid-item-align-center wpr-element-fade-in wpr-anim-size-large wpr-anim-timing-ease-default wpr-anim-transparency"><div class="inner-block"><span data-src="https://presentcomposedesign.fr/wp-content/uploads/2024/12/FLUFFYBRICK_4.jpg"><i class="fas fa-search"></i></span><div class="wpr-grid-lightbox-overlay"></div></div></div></div></div></div></div></div></div></div></article><article class="wpr-grid-item elementor-clearfix post-30707 attachment type-attachment status-inherit hentry entry"><div class="wpr-grid-item-inner"><div class="wpr-grid-media-wrap wpr-effect-size-small "><div class="wpr-grid-image-wrap" data-src="https://presentcomposedesign.fr/wp-content/uploads/2024/12/FLUFFYBRICK_3.jpg"><img decoding="async" src="https://presentcomposedesign.fr/wp-content/uploads/2024/12/FLUFFYBRICK_3.jpg" alt="FLUFFYBRICK_3" class="wpr-anim-timing-ease-default"></div><div class="wpr-grid-media-hover wpr-animation-wrap"><div class="wpr-grid-media-hover-bg  wpr-overlay-fade-in wpr-anim-size-large wpr-anim-timing-ease-default wpr-anim-transparency" data-url="https://presentcomposedesign.fr/fluffybrick_3/"></div><div class="wpr-cv-container"><div class="wpr-cv-outer"><div class="wpr-cv-inner"><div class="wpr-grid-media-hover-middle elementor-clearfix"><div class="wpr-grid-item-lightbox elementor-repeater-item-4d1548a wpr-grid-item-display-block wpr-grid-item-align-center wpr-element-fade-in wpr-anim-size-large wpr-anim-timing-ease-default wpr-anim-transparency"><div class="inner-block"><span data-src="https://presentcomposedesign.fr/wp-content/uploads/2024/12/FLUFFYBRICK_3.jpg"><i class="fas fa-search"></i></span><div class="wpr-grid-lightbox-overlay"></div></div></div></div></div></div></div></div></div></div></article><article class="wpr-grid-item elementor-clearfix post-30717 attachment type-attachment status-inherit hentry entry"><div class="wpr-grid-item-inner"><div class="wpr-grid-media-wrap wpr-effect-size-small "><div class="wpr-grid-image-wrap" data-src="https://presentcomposedesign.fr/wp-content/uploads/2024/12/Fluffybrick_AR_Riso-1.jpg"><img decoding="async" src="https://presentcomposedesign.fr/wp-content/uploads/2024/12/Fluffybrick_AR_Riso-1.jpg" alt="Fluffybrick_AR_Riso" class="wpr-anim-timing-ease-default"></div><div class="wpr-grid-media-hover wpr-animation-wrap"><div class="wpr-grid-media-hover-bg  wpr-overlay-fade-in wpr-anim-size-large wpr-anim-timing-ease-default wpr-anim-transparency" data-url="https://presentcomposedesign.fr/fluffybrick-ar/fluffybrick_ar_riso-2/"></div><div class="wpr-cv-container"><div class="wpr-cv-outer"><div class="wpr-cv-inner"><div class="wpr-grid-media-hover-middle elementor-clearfix"><div class="wpr-grid-item-lightbox elementor-repeater-item-4d1548a wpr-grid-item-display-block wpr-grid-item-align-center wpr-element-fade-in wpr-anim-size-large wpr-anim-timing-ease-default wpr-anim-transparency"><div class="inner-block"><span data-src="https://presentcomposedesign.fr/wp-content/uploads/2024/12/Fluffybrick_AR_Riso-1.jpg"><i class="fas fa-search"></i></span><div class="wpr-grid-lightbox-overlay"></div></div></div></div></div></div></div></div></div></div></article></section>				</div>
				</div>
					</div>
				</div>
				</div>
					</div>
				</div>
					</div>
		</div>
					</div>
		</section>
		<div class="elementor-element elementor-element-9c20fa5 e-con-full e-flex wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no e-con e-parent" data-id="9c20fa5" data-element_type="container" data-e-type="container" data-settings="{&quot;background_background&quot;:&quot;classic&quot;}">
		<div class="elementor-element elementor-element-1489b53 e-con-full e-flex wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no e-con e-child" data-id="1489b53" data-element_type="container" data-e-type="container">
				<div class="elementor-element elementor-element-9b37b02 elementor-widget elementor-widget-video" data-id="9b37b02" data-element_type="widget" data-e-type="widget" data-settings="{&quot;video_type&quot;:&quot;hosted&quot;,&quot;autoplay&quot;:&quot;yes&quot;,&quot;play_on_mobile&quot;:&quot;yes&quot;,&quot;loop&quot;:&quot;yes&quot;,&quot;controls&quot;:&quot;yes&quot;}" data-widget_type="video.default">
				<div class="elementor-widget-container">
							<div class="e-hosted-video elementor-wrapper elementor-open-inline">
					<video class="elementor-video" src="https://presentcomposedesign.fr/wp-content/uploads/2024/12/Sequence-01.mp4" autoplay="" loop="" controls="" playsinline="" controlsList="nodownload"></video>
				</div>
						</div>
				</div>
				</div>
				</div>
				</div>
		<p>Cet article <a href="https://presentcomposedesign.fr/fluffybrick-ar/">Fluffybrick AR</a> est apparu en premier sur <a href="https://presentcomposedesign.fr">Présent Composé design</a>.</p>
]]></content:encoded>
					
		
		<enclosure url="https://presentcomposedesign.fr/wp-content/uploads/2024/12/Sequence-01.mp4" length="730046" type="video/mp4" />

			</item>
		<item>
		<title>Spirit E-Boost</title>
		<link>https://presentcomposedesign.fr/spirit-e-boost/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Mon, 04 Mar 2024 13:05:59 +0000</pubDate>
				<category><![CDATA[[ia]]]></category>
		<category><![CDATA[Design produit]]></category>
		<guid isPermaLink="false">https://presentcomposedesign.fr/?p=30015</guid>

					<description><![CDATA[<p>Spirit E-Boost<br />
Design prospectif d'un scooter électrique ultra-léger dans le cadre et la structure sont entièrement imprimées en 3D en métal selon une optimisation topologique permettant de n'utiliser que la matière nécessaire dans cet objectif.<br />
Projet en cours de développement... PrésentComposédesign-2024</p>
<p>Cet article <a href="https://presentcomposedesign.fr/spirit-e-boost/">Spirit E-Boost</a> est apparu en premier sur <a href="https://presentcomposedesign.fr">Présent Composé design</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="30015" class="elementor elementor-30015">
						<section class="elementor-section elementor-top-section elementor-element elementor-element-ec38232 elementor-section-full_width elementor-section-height-min-height elementor-section-items-bottom elementor-section-content-middle elementor-section-stretched elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no" data-id="ec38232" data-element_type="section" data-e-type="section" data-settings="{&quot;stretch_section&quot;:&quot;section-stretched&quot;,&quot;background_background&quot;:&quot;classic&quot;}">
						<div class="elementor-container elementor-column-gap-extended">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-f411c8d" data-id="f411c8d" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<section class="elementor-section elementor-inner-section elementor-element elementor-element-7765d2d elementor-section-boxed elementor-section-height-default elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no" data-id="7765d2d" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-inner-column elementor-element elementor-element-9503862" data-id="9503862" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-b25684a elementor-widget elementor-widget-heading" data-id="b25684a" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h1 class="elementor-heading-title elementor-size-default">Spirit e-BOOST</h1>				</div>
				</div>
					</div>
		</div>
					</div>
		</section>
					</div>
		</div>
					</div>
		</section>
		<div class="elementor-element elementor-element-e4df8a6 e-con-full e-flex wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no elementor-invisible e-con e-parent" data-id="e4df8a6" data-element_type="container" data-e-type="container" data-settings="{&quot;background_background&quot;:&quot;classic&quot;,&quot;animation&quot;:&quot;fadeInUp&quot;}">
		<div class="elementor-element elementor-element-a1ee7e0 e-con-full e-flex wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no e-con e-child" data-id="a1ee7e0" data-element_type="container" data-e-type="container">
				<div class="elementor-element elementor-element-0f810c9 elementor-widget__width-initial elementor-widget elementor-widget-text-editor" data-id="0f810c9" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<h1>Design Génératif [ia]</h1><div data-vce-boxed-width="true"><div data-vce-do-apply="all el-ba3f564d"><div data-vce-element-content="true"><div data-vce-do-apply="border margin background el-11f4390c"><div data-vce-element-content="true" data-vce-do-apply="padding el-11f4390c"><div><span style="color: #0010ef;"> </span></div><h2>Spirit E-Boost</h2><h2><br />Design prospectif d&rsquo;un <span style="color: #0010ef;"><strong>scooter électrique ultra-léger</strong></span> dont le cadre et la <strong><span style="color: #0010ef;">structure</span></strong> sont entièrement <strong><span style="color: #0010ef;">imprimées en 3D en métal</span></strong> selon une <strong><span style="color: #0010ef;">optimisation topologique</span></strong> permettant de <strong><span style="color: #0010ef;">n&rsquo;utiliser que la matière nécessaire</span></strong> dans cet objectif.</h2><h2><br />Projet en cours de développement&#8230; PrésentComposédesign-2024</h2></div></div></div></div></div><div data-vce-boxed-width="true"><div data-vce-do-apply="all el-d9d9a9fd"><div data-vce-element-content="true"><div><div data-vce-do-apply="border margin background el-87440d41"><div data-vce-element-content="true" data-vce-do-apply="padding el-87440d41"><p><!-- /wp:vcwb/empty-comment-element-wrapper --></p></div></div></div><p><!-- /vcwb/dynamicElementComment:87440d41 --></p></div></div></div><p><!-- /vcwb/dynamicElementComment:d9d9a9fd --><!--vcv no format--></p>								</div>
				</div>
				</div>
		<div class="elementor-element elementor-element-97fb5da e-con-full e-flex wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no e-con e-child" data-id="97fb5da" data-element_type="container" data-e-type="container">
		<div class="wpr-jarallax elementor-element elementor-element-52163d1 e-con-full wpr-jarallax-yes e-flex wpr-particle-no wpr-sticky-section-no elementor-invisible e-con e-child" speed-data="1.4" bg-image="https://presentcomposedesign.fr/wp-content/uploads/2024/03/ELECTRIC-Scooterv3_PresentComposedesign_2024_GIF2048.gif" scroll-effect="scale" data-id="52163d1" data-element_type="container" data-e-type="container" data-settings="{&quot;background_background&quot;:&quot;classic&quot;,&quot;animation&quot;:&quot;fadeInUp&quot;}">
				</div>
				</div>
				</div>
		<div class="elementor-element elementor-element-c783795 e-flex e-con-boxed wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no elementor-invisible e-con e-parent" data-id="c783795" data-element_type="container" data-e-type="container" data-settings="{&quot;background_background&quot;:&quot;classic&quot;,&quot;animation&quot;:&quot;slideInRight&quot;}">
					<div class="e-con-inner">
				<div class="elementor-element elementor-element-27c1527 elementor-view-default elementor-widget elementor-widget-icon" data-id="27c1527" data-element_type="widget" data-e-type="widget" data-widget_type="icon.default">
				<div class="elementor-widget-container">
							<div class="elementor-icon-wrapper">
			<div class="elementor-icon">
			<svg xmlns="http://www.w3.org/2000/svg" id="Calque_1" data-name="Calque 1" viewBox="0 0 230 95"><defs><style>      .cls-1 {        fill: #fc6a00;      }      .cls-1, .cls-2, .cls-3 {        stroke-width: 0px;      }      .cls-2 {        fill: #0010ef;      }      .cls-3 {        fill: #fff;        opacity: .8;      }    </style></defs><rect class="cls-3" x="13.9" y="4" width="212.9" height="57.7" rx="4" ry="4"></rect><path class="cls-2" d="M222.8,62.2H17.9c-2.5,0-4.5-2-4.5-4.5V8c0-2.5,2-4.5,4.5-4.5h204.9c2.5,0,4.5,2,4.5,4.5v49.7c0,2.5-2,4.5-4.5,4.5ZM17.9,4.5c-1.9,0-3.5,1.6-3.5,3.5v49.7c0,1.9,1.6,3.5,3.5,3.5h204.9c1.9,0,3.5-1.6,3.5-3.5V8c0-1.9-1.6-3.5-3.5-3.5H17.9Z"></path><g><path class="cls-2" d="M43.8,17.6c-.6-.3-1.2-.5-2.1-.5h-4v10.6h1.9v-3.6h2c.8,0,1.5-.2,2.1-.5.6-.3,1-.7,1.3-1.2.3-.5.4-1.1.4-1.8s-.1-1.3-.4-1.8c-.3-.5-.7-1-1.3-1.3ZM43.3,21.7c-.1.3-.4.5-.7.7-.3.2-.7.2-1.2.2h-1.8v-3.8h1.8c.5,0,.9,0,1.2.2.3.2.5.4.7.7.1.3.2.6.2,1s0,.7-.2,1Z"></path><path class="cls-2" d="M51.9,20.2c-.6-.3-1.2-.5-2-.5s-1.5.2-2,.5c-.6.3-1,.8-1.3,1.4-.3.6-.5,1.3-.5,2.2s.2,1.5.5,2.2c.3.6.8,1.1,1.3,1.4.6.3,1.2.5,2,.5s1.5-.2,2-.5c.6-.3,1-.8,1.3-1.4.3-.6.5-1.3.5-2.2s-.2-1.5-.5-2.2c-.3-.6-.8-1.1-1.3-1.4ZM51.5,25.2c-.1.4-.4.7-.6.9s-.6.3-1.1.3-.8-.1-1.1-.3-.5-.5-.6-.9-.2-.8-.2-1.3,0-.9.2-1.3.4-.7.6-.9.6-.3,1.1-.3.8.1,1.1.3.5.5.6.9.2.8.2,1.3,0,.9-.2,1.3Z"></path><path class="cls-2" d="M57.3,27.9c.6,0,1.1-.1,1.5-.4.4-.3.7-.7.9-1.1h0v1.4h1.8v-8h-1.9v4.6c0,.4,0,.7-.2,1-.2.3-.4.5-.6.6-.3.1-.5.2-.8.2-.5,0-.8-.1-1.1-.4-.3-.3-.4-.7-.4-1.2v-4.8h-1.9v5.1c0,.6.1,1.2.3,1.6.2.4.5.8.9,1,.4.2.9.3,1.4.3Z"></path><path class="cls-2" d="M64.9,23.1c0-.3,0-.6.2-.9s.4-.5.6-.6c.3-.1.6-.2.9-.2s.3,0,.5,0c.2,0,.3,0,.4,0v-1.7c0,0-.2,0-.3,0-.1,0-.2,0-.3,0-.5,0-.9.1-1.2.4-.4.2-.6.6-.7,1.1h0v-1.3h-1.8v8h1.9v-4.7Z"></path><path class="cls-2" d="M72.5,27.3c.4.4,1,.6,1.7.6s.4,0,.6,0,.4,0,.6-.1l-.3-1.5c0,0-.2,0-.3,0,0,0-.2,0-.3,0-.3,0-.5,0-.7-.2-.1-.1-.2-.4-.2-.7v-4.1h1.6v-1.5h-1.6v-1.9h-1.9v1.9h-1.1v1.5h1.1v4.4c0,.7.2,1.2.6,1.6Z"></path><path class="cls-2" d="M77.7,27.4c.6.3,1.2.5,2,.5s1.5-.2,2-.5c.6-.3,1-.8,1.3-1.4.3-.6.5-1.3.5-2.2s-.2-1.5-.5-2.2c-.3-.6-.8-1.1-1.3-1.4-.6-.3-1.2-.5-2-.5s-1.5.2-2,.5c-.6.3-1,.8-1.3,1.4-.3.6-.5,1.3-.5,2.2s.2,1.5.5,2.2c.3.6.8,1.1,1.3,1.4ZM78,22.5c.1-.4.4-.7.6-.9s.6-.3,1.1-.3.8.1,1.1.3.5.5.6.9.2.8.2,1.3,0,.9-.2,1.3-.4.7-.6.9-.6.3-1.1.3-.8-.1-1.1-.3-.5-.5-.6-.9-.2-.8-.2-1.3,0-.9.2-1.3Z"></path><path class="cls-2" d="M91.6,27.8v-8h-1.9v4.6c0,.4,0,.7-.2,1-.2.3-.4.5-.6.6-.3.1-.5.2-.8.2-.5,0-.8-.1-1.1-.4-.3-.3-.4-.7-.4-1.2v-4.8h-1.9v5.1c0,.6.1,1.2.3,1.6.2.4.5.8.9,1,.4.2.9.3,1.4.3.6,0,1.1-.1,1.5-.4.4-.3.7-.7.9-1.1h0v1.4h1.8Z"></path><path class="cls-2" d="M93.5,25.7c0,.7.2,1.2.6,1.6.4.4,1,.6,1.7.6s.4,0,.6,0,.4,0,.6-.1l-.3-1.5c0,0-.2,0-.3,0,0,0-.2,0-.3,0-.3,0-.5,0-.7-.2-.1-.1-.2-.4-.2-.7v-4.1h1.6v-1.5h-1.6v-1.9h-1.9v1.9h-1.1v1.5h1.1v4.4Z"></path><path class="cls-2" d="M103,27.7c.5-.2.9-.5,1.2-.8s.5-.7.6-1.2l-1.8-.2c0,.2-.2.4-.4.6-.2.2-.3.3-.6.3-.2,0-.5.1-.7.1-.4,0-.8,0-1.1-.3-.3-.2-.5-.4-.7-.8-.2-.3-.2-.7-.2-1.1h5.5v-.6c0-.7,0-1.3-.3-1.8-.2-.5-.5-.9-.8-1.3-.3-.3-.7-.6-1.2-.7-.4-.2-.9-.2-1.4-.2-.8,0-1.4.2-2,.5-.6.3-1,.8-1.3,1.5-.3.6-.5,1.3-.5,2.2s.2,1.6.5,2.2c.3.6.8,1.1,1.3,1.4.6.3,1.3.5,2.1.5s1.2,0,1.6-.3ZM100.2,21.5c.3-.2.6-.3,1-.3s.7,0,1,.3c.3.2.5.5.6.8,0,.2.1.5.2.8h-3.7c0-.3,0-.6.2-.8.1-.3.4-.6.6-.8Z"></path><path class="cls-2" d="M112,26.7c.3-.4.4-.8.4-1.3s-.2-1-.6-1.4c-.4-.4-.9-.6-1.7-.8l-1.4-.3c-.4,0-.7-.2-.9-.4s-.3-.3-.3-.6.1-.5.4-.7c.3-.2.6-.3,1-.3s.8.1,1,.3.4.4.5.7l1.7-.2c-.1-.7-.5-1.2-1-1.6-.5-.4-1.3-.6-2.2-.6s-1.2,0-1.7.3c-.5.2-.9.5-1.1.8s-.4.8-.4,1.3.2,1.1.5,1.4c.4.4.9.6,1.7.8l1.4.3c.7.2,1.1.5,1.1.9s-.1.5-.4.7-.6.3-1.1.3-.8,0-1.1-.3c-.3-.2-.5-.5-.5-.8l-1.8.2c.1.7.5,1.3,1.1,1.7.6.4,1.4.6,2.3.6s1.3-.1,1.8-.3.9-.5,1.2-.9Z"></path><path class="cls-2" d="M117.7,27.5c.5.3,1.1.5,1.7.5s.8,0,1.1-.2c.3-.2.5-.3.7-.6.2-.2.3-.4.4-.6h.1v1.3h1.8v-10.6h-1.9v4h0c0-.2-.2-.4-.4-.6-.2-.2-.4-.4-.7-.6-.3-.2-.7-.2-1.2-.2s-1.2.2-1.7.5c-.5.3-.9.8-1.2,1.4-.3.6-.4,1.4-.4,2.2s.1,1.6.4,2.2.7,1.1,1.2,1.4ZM118.3,22.5c.1-.4.4-.7.6-.9s.6-.3,1-.3.7.1,1,.3.5.5.6.9c.1.4.2.8.2,1.4s0,1-.2,1.4c-.1.4-.4.7-.6.9-.3.2-.6.3-1,.3s-.8-.1-1-.3c-.3-.2-.5-.5-.6-.9s-.2-.8-.2-1.3,0-.9.2-1.3Z"></path><path class="cls-2" d="M130.2,27.7c.5-.2.9-.5,1.2-.8s.5-.7.6-1.2l-1.8-.2c0,.2-.2.4-.4.6-.2.2-.3.3-.6.3-.2,0-.5.1-.7.1-.4,0-.8,0-1.1-.3s-.5-.4-.7-.8c-.2-.3-.2-.7-.2-1.1h5.5v-.6c0-.7,0-1.3-.3-1.8-.2-.5-.5-.9-.8-1.3-.3-.3-.7-.6-1.2-.7-.4-.2-.9-.2-1.4-.2-.8,0-1.4.2-2,.5s-1,.8-1.3,1.5c-.3.6-.5,1.3-.5,2.2s.2,1.6.5,2.2.8,1.1,1.3,1.4c.6.3,1.3.5,2.1.5s1.2,0,1.6-.3ZM127.4,21.5c.3-.2.6-.3,1-.3s.7,0,1,.3c.3.2.5.5.6.8,0,.2.1.5.2.8h-3.7c0-.3,0-.6.2-.8.1-.3.4-.6.6-.8Z"></path><path class="cls-2" d="M142,21.7c.3.2.4.6.4,1.1v5.1h1.9v-5.3c0-.9-.2-1.6-.7-2-.5-.5-1.1-.7-1.8-.7s-1.1.1-1.5.4c-.4.3-.7.6-.9,1.1h0c-.1-.5-.4-.8-.8-1.1-.4-.3-.8-.4-1.4-.4s-1,.1-1.4.4-.7.6-.8,1.1h0v-1.4h-1.8v8h1.9v-4.8c0-.3,0-.6.2-.9.1-.2.3-.4.5-.6.2-.1.5-.2.7-.2.4,0,.7.1,1,.4.2.2.4.6.4,1v5.1h1.9v-5c0-.4.1-.8.4-1.1.3-.3.6-.4,1.1-.4s.7.1,1,.3Z"></path><path class="cls-2" d="M149.8,27.3c.2-.2.4-.4.5-.6h0v1.1h1.8v-5.3c0-.5,0-1-.3-1.3-.2-.4-.4-.6-.8-.8-.3-.2-.7-.4-1-.4-.4,0-.8-.1-1.1-.1-.6,0-1.1,0-1.5.2-.5.2-.8.4-1.2.7s-.5.7-.7,1.2l1.7.2c0-.3.3-.5.5-.7.3-.2.6-.3,1.1-.3s.8.1,1,.3c.2.2.3.5.3.9h0c0,.2,0,.3-.2.4-.1,0-.3.1-.6.2s-.7,0-1.1.1c-.4,0-.8.1-1.1.2s-.7.2-1,.4c-.3.2-.5.4-.7.7-.2.3-.2.7-.2,1.1s.1,1,.3,1.3c.2.4.6.6,1,.8.4.2.9.3,1.4.3s.8,0,1.1-.2c.3-.1.6-.3.8-.5ZM147.5,26.3c-.3-.2-.4-.4-.4-.8s0-.4.2-.6c.1-.2.3-.3.5-.4.2,0,.5-.2.8-.2.1,0,.3,0,.4,0,.2,0,.3,0,.5,0s.3,0,.5-.1c.1,0,.2,0,.3-.1v.9c0,.3,0,.6-.2.8-.2.2-.4.4-.6.6-.3.1-.6.2-1,.2s-.7,0-1-.3Z"></path><path class="cls-2" d="M159.3,20.1c-.4-.2-.9-.3-1.4-.3s-1.1.1-1.5.4c-.4.3-.7.6-.9,1.1h0v-1.4h-1.8v8h1.9v-4.7c0-.4,0-.7.2-1,.1-.3.3-.5.6-.6.3-.1.5-.2.9-.2.5,0,.9.2,1.1.5.3.3.4.7.4,1.3v4.8h1.9v-5.1c0-.6-.1-1.2-.3-1.6-.2-.4-.5-.8-1-1Z"></path><path class="cls-2" d="M166,27.7c.3-.2.5-.3.7-.6.2-.2.3-.4.4-.6h.1v1.3h1.8v-10.6h-1.9v4h0c0-.2-.2-.4-.4-.6-.2-.2-.4-.4-.7-.6-.3-.2-.7-.2-1.2-.2s-1.2.2-1.7.5c-.5.3-.9.8-1.2,1.4-.3.6-.4,1.4-.4,2.2s.1,1.6.4,2.2.7,1.1,1.2,1.4c.5.3,1.1.5,1.7.5s.8,0,1.1-.2ZM163.7,25.2c-.1-.4-.2-.8-.2-1.3s0-.9.2-1.3c.1-.4.4-.7.6-.9.3-.2.6-.3,1-.3s.7.1,1,.3c.3.2.5.5.6.9.1.4.2.8.2,1.4s0,1-.2,1.4c-.1.4-.4.7-.6.9-.3.2-.6.3-1,.3s-.8-.1-1-.3c-.3-.2-.5-.5-.6-.9Z"></path><path class="cls-2" d="M175.7,25.5c0,.2-.2.4-.4.6-.2.2-.3.3-.6.3-.2,0-.5.1-.7.1-.4,0-.8,0-1.1-.3s-.5-.4-.7-.8c-.2-.3-.2-.7-.2-1.1h5.5v-.6c0-.7,0-1.3-.3-1.8-.2-.5-.5-.9-.8-1.3-.3-.3-.7-.6-1.2-.7-.4-.2-.9-.2-1.4-.2-.8,0-1.4.2-2,.5s-1,.8-1.3,1.5c-.3.6-.5,1.3-.5,2.2s.2,1.6.5,2.2c.3.6.8,1.1,1.3,1.4.6.3,1.3.5,2.1.5s1.2,0,1.6-.3.9-.5,1.2-.8.5-.7.6-1.2l-1.8-.2ZM172.9,21.5c.3-.2.6-.3,1-.3s.7,0,1,.3c.3.2.5.5.6.8,0,.2.1.5.2.8h-3.7c0-.3,0-.6.2-.8.1-.3.4-.6.6-.8Z"></path><path class="cls-2" d="M182.8,23.3l-1.4-.3c-.4,0-.7-.2-.9-.4-.2-.1-.3-.3-.3-.6s.1-.5.4-.7c.3-.2.6-.3,1-.3s.8.1,1,.3.4.4.5.7l1.7-.2c-.1-.7-.5-1.2-1-1.6-.5-.4-1.3-.6-2.2-.6s-1.2,0-1.7.3c-.5.2-.9.5-1.1.8-.3.4-.4.8-.4,1.3s.2,1.1.5,1.4c.4.4.9.6,1.7.8l1.4.3c.7.2,1.1.5,1.1.9s-.1.5-.4.7c-.3.2-.6.3-1.1.3s-.8,0-1.1-.3-.5-.5-.5-.8l-1.8.2c.1.7.5,1.3,1.1,1.7s1.4.6,2.3.6,1.3-.1,1.8-.3.9-.5,1.2-.9c.3-.4.4-.8.4-1.3s-.2-1-.6-1.4c-.4-.4-.9-.6-1.7-.8Z"></path><path class="cls-2" d="M194.6,20.2c-.6-.3-1.2-.5-2-.5s-1.5.2-2,.5c-.6.3-1,.8-1.3,1.4-.3.6-.5,1.3-.5,2.2s.2,1.5.5,2.2c.3.6.8,1.1,1.3,1.4s1.2.5,2,.5,1.5-.2,2-.5,1-.8,1.3-1.4c.3-.6.5-1.3.5-2.2s-.2-1.5-.5-2.2c-.3-.6-.8-1.1-1.3-1.4ZM194.3,25.2c-.1.4-.4.7-.6.9-.3.2-.6.3-1.1.3s-.8-.1-1.1-.3-.5-.5-.6-.9c-.1-.4-.2-.8-.2-1.3s0-.9.2-1.3c.1-.4.4-.7.6-.9s.6-.3,1.1-.3.8.1,1.1.3c.3.2.5.5.6.9.1.4.2.8.2,1.3s0,.9-.2,1.3Z"></path><path class="cls-2" d="M198.7,27.6c.4.2.9.3,1.4.3.6,0,1.1-.1,1.5-.4.4-.3.7-.7.9-1.1h0v1.4h1.8v-8h-1.9v4.6c0,.4,0,.7-.2,1-.2.3-.4.5-.6.6-.3.1-.5.2-.8.2-.5,0-.8-.1-1.1-.4-.3-.3-.4-.7-.4-1.2v-4.8h-1.9v5.1c0,.6.1,1.2.3,1.6.2.4.5.8.9,1Z"></path><path class="cls-2" d="M61.4,37.7c-.5-.3-1-.5-1.7-.5s-.9,0-1.2.2c-.3.2-.5.3-.7.6-.2.2-.3.4-.4.6h-.1v-1.3h-1.8v10.9h1.9v-4.2h0c0,.2.2.4.4.6.2.2.4.4.7.6s.7.2,1.1.2,1.2-.2,1.7-.5c.5-.3.9-.8,1.2-1.4s.4-1.4.4-2.2-.1-1.6-.4-2.2c-.3-.6-.7-1.1-1.2-1.4ZM60.9,42.7c-.1.4-.4.7-.6.9-.3.2-.6.3-1,.3s-.7-.1-1-.3c-.3-.2-.5-.5-.6-.9-.1-.4-.2-.8-.2-1.4s0-1,.2-1.4c.1-.4.4-.7.6-.9s.6-.3,1-.3.8.1,1,.3c.3.2.5.5.6.9s.2.8.2,1.3,0,.9-.2,1.3Z"></path><path class="cls-2" d="M67.9,37.2c-.5,0-.9.1-1.2.4-.4.2-.6.6-.7,1.1h0v-1.3h-1.8v8h1.9v-4.7c0-.3,0-.6.2-.9s.4-.5.6-.6c.3-.1.6-.2.9-.2s.3,0,.5,0c.2,0,.3,0,.4,0v-1.7c0,0-.2,0-.3,0-.1,0-.2,0-.3,0Z"></path><path class="cls-2" d="M70.2,34.2c-.3,0-.6,0-.8.3-.2.2-.3.4-.3.7s.1.5.3.7.5.3.8.3.5,0,.8-.3.3-.4.3-.7-.1-.5-.3-.7c-.2-.2-.5-.3-.8-.3Z"></path><rect class="cls-2" x="69.3" y="37.4" width="1.9" height="8"></rect><path class="cls-2" d="M76.8,40.8l-1.4-.3c-.4,0-.7-.2-.9-.4s-.3-.3-.3-.6.1-.5.4-.7c.3-.2.6-.3,1-.3s.8.1,1,.3.4.4.5.7l1.7-.2c-.1-.7-.5-1.2-1-1.6-.5-.4-1.3-.6-2.2-.6s-1.2,0-1.7.3c-.5.2-.9.5-1.1.8s-.4.8-.4,1.3.2,1.1.5,1.4c.4.4.9.6,1.7.8l1.4.3c.7.2,1.1.5,1.1.9s-.1.5-.4.7-.6.3-1.1.3-.8,0-1.1-.3c-.3-.2-.5-.5-.5-.8l-1.8.2c.1.7.5,1.3,1.1,1.7.6.4,1.4.6,2.3.6s1.3-.1,1.8-.3.9-.5,1.2-.9c.3-.4.4-.8.4-1.3s-.2-1-.6-1.4c-.4-.4-.9-.6-1.7-.8Z"></path><path class="cls-2" d="M86,38.2c-.3-.3-.7-.6-1.2-.7-.4-.2-.9-.2-1.4-.2-.8,0-1.4.2-2,.5-.6.3-1,.8-1.3,1.5-.3.6-.5,1.3-.5,2.2s.2,1.6.5,2.2c.3.6.8,1.1,1.3,1.4.6.3,1.3.5,2.1.5s1.2,0,1.6-.3.9-.5,1.2-.8.5-.7.6-1.2l-1.8-.2c0,.2-.2.4-.4.6-.2.2-.3.3-.6.3-.2,0-.5.1-.7.1-.4,0-.8,0-1.1-.3-.3-.2-.5-.4-.7-.8-.2-.3-.2-.7-.2-1.1h5.5v-.6c0-.7,0-1.3-.3-1.8-.2-.5-.5-.9-.8-1.3ZM82.4,39c.3-.2.6-.3,1-.3s.7,0,1,.3c.3.2.5.5.6.8,0,.2.1.5.2.8h-3.7c0-.3,0-.6.2-.8.1-.3.4-.6.6-.8Z"></path><path class="cls-2" d="M96.5,38.7h0c0-.2-.2-.4-.4-.6-.2-.2-.4-.4-.7-.6-.3-.2-.7-.2-1.2-.2s-1.2.2-1.7.5-.9.8-1.2,1.4c-.3.6-.4,1.4-.4,2.2s.1,1.6.4,2.2.7,1.1,1.2,1.4c.5.3,1.1.5,1.7.5s.8,0,1.1-.2c.3-.2.5-.3.7-.6.2-.2.3-.4.4-.6h.1v1.3h1.8v-10.6h-1.9v4ZM96.3,42.7c-.1.4-.4.7-.6.9-.3.2-.6.3-1,.3s-.8-.1-1-.3c-.3-.2-.5-.5-.6-.9s-.2-.8-.2-1.3,0-.9.2-1.3.4-.7.6-.9.6-.3,1-.3.7.1,1,.3c.3.2.5.5.6.9s.2.8.2,1.4,0,1-.2,1.4Z"></path><path class="cls-2" d="M105.7,38.2c-.3-.3-.7-.6-1.2-.7-.4-.2-.9-.2-1.4-.2-.8,0-1.4.2-2,.5-.6.3-1,.8-1.3,1.5-.3.6-.5,1.3-.5,2.2s.2,1.6.5,2.2c.3.6.8,1.1,1.3,1.4.6.3,1.3.5,2.1.5s1.2,0,1.6-.3.9-.5,1.2-.8.5-.7.6-1.2l-1.8-.2c0,.2-.2.4-.4.6-.2.2-.3.3-.6.3-.2,0-.5.1-.7.1-.4,0-.8,0-1.1-.3-.3-.2-.5-.4-.7-.8-.2-.3-.2-.7-.2-1.1h5.5v-.6c0-.7,0-1.3-.3-1.8-.2-.5-.5-.9-.8-1.3ZM102.1,39c.3-.2.6-.3,1-.3s.7,0,1,.3c.3.2.5.5.6.8,0,.2.1.5.2.8h-3.7c0-.3,0-.6.2-.8.1-.3.4-.6.6-.8Z"></path><path class="cls-2" d="M113.4,39.1c.3-.2.6-.3,1-.3s.6,0,.8.2c.2.1.4.3.5.5.1.2.2.4.3.7h1.8c0-.6-.2-1.1-.5-1.5-.3-.4-.7-.8-1.2-1-.5-.2-1.1-.4-1.7-.4s-1.4.2-2,.5c-.6.3-1,.8-1.3,1.5-.3.6-.5,1.3-.5,2.1s.2,1.5.5,2.1c.3.6.7,1.1,1.3,1.5s1.3.5,2,.5,1.2-.1,1.7-.4c.5-.2.9-.6,1.2-1,.3-.4.5-.9.5-1.5h-1.8c0,.4-.3.8-.6,1s-.6.4-1.1.4-.7-.1-1-.3c-.3-.2-.5-.5-.7-.9-.2-.4-.2-.9-.2-1.4s0-1,.2-1.4.4-.7.7-.9Z"></path><path class="cls-2" d="M124.3,37.8c-.6-.3-1.2-.5-2-.5s-1.5.2-2,.5c-.6.3-1,.8-1.3,1.4-.3.6-.5,1.3-.5,2.2s.2,1.5.5,2.2c.3.6.8,1.1,1.3,1.4.6.3,1.2.5,2,.5s1.5-.2,2-.5c.6-.3,1-.8,1.3-1.4.3-.6.5-1.3.5-2.2s-.2-1.5-.5-2.2c-.3-.6-.8-1.1-1.3-1.4ZM124,42.7c-.1.4-.4.7-.6.9s-.6.3-1.1.3-.8-.1-1.1-.3-.5-.5-.6-.9c-.1-.4-.2-.8-.2-1.3s0-.9.2-1.3c.1-.4.4-.7.6-.9s.6-.3,1.1-.3.8.1,1.1.3.5.5.6.9c.1.4.2.8.2,1.3s0,.9-.2,1.3Z"></path><path class="cls-2" d="M132.8,37.6c-.4-.2-.9-.3-1.4-.3s-1.1.1-1.5.4c-.4.3-.7.6-.9,1.1h0v-1.4h-1.8v8h1.9v-4.7c0-.4,0-.7.2-1,.1-.3.3-.5.6-.6.3-.1.5-.2.9-.2.5,0,.9.2,1.1.5.3.3.4.7.4,1.3v4.8h1.9v-5.1c0-.6-.1-1.2-.3-1.6-.2-.4-.5-.8-1-1Z"></path><path class="cls-2" d="M139,43.8c0,0-.2,0-.3,0-.3,0-.5,0-.7-.2s-.2-.4-.2-.7v-4.1h1.6v-1.5h-1.6v-1.9h-1.9v1.9h-1.1v1.5h1.1v4.4c0,.7.2,1.2.6,1.6.4.4,1,.6,1.7.6s.4,0,.6,0c.2,0,.4,0,.6-.1l-.3-1.5c0,0-.2,0-.3,0Z"></path><path class="cls-2" d="M145.9,37.8c-.3-.2-.7-.4-1-.4-.4,0-.8-.1-1.1-.1-.6,0-1.1,0-1.5.2-.5.2-.8.4-1.2.7s-.5.7-.7,1.2l1.7.2c0-.3.3-.5.5-.7.3-.2.6-.3,1.1-.3s.8.1,1,.3c.2.2.3.5.3.9h0c0,.2,0,.3-.2.4-.1,0-.3.1-.6.2s-.7,0-1.1.1c-.4,0-.8.1-1.1.2s-.7.2-1,.4c-.3.2-.5.4-.7.7-.2.3-.2.7-.2,1.1s.1,1,.3,1.3c.2.4.6.6,1,.8.4.2.9.3,1.4.3s.8,0,1.1-.2c.3-.1.6-.3.8-.5s.4-.4.5-.6h0v1.1h1.8v-5.3c0-.5,0-1-.3-1.3-.2-.4-.4-.6-.8-.8ZM145.1,42.5c0,.3,0,.6-.2.8-.2.2-.4.4-.6.6-.3.1-.6.2-1,.2s-.7,0-1-.3-.4-.4-.4-.8,0-.4.2-.6c.1-.2.3-.3.5-.4.2,0,.5-.2.8-.2.1,0,.3,0,.4,0,.2,0,.3,0,.5,0s.3,0,.5-.1c.1,0,.2,0,.3-.1v.9Z"></path><path class="cls-2" d="M150.9,39.1c.3-.2.6-.3,1-.3s.6,0,.8.2c.2.1.4.3.5.5.1.2.2.4.3.7h1.8c0-.6-.2-1.1-.5-1.5-.3-.4-.7-.8-1.2-1-.5-.2-1.1-.4-1.7-.4s-1.4.2-2,.5c-.6.3-1,.8-1.3,1.5-.3.6-.5,1.3-.5,2.1s.2,1.5.5,2.1c.3.6.7,1.1,1.3,1.5s1.3.5,2,.5,1.2-.1,1.7-.4c.5-.2.9-.6,1.2-1,.3-.4.5-.9.5-1.5h-1.8c0,.4-.3.8-.6,1s-.6.4-1.1.4-.7-.1-1-.3c-.3-.2-.5-.5-.7-.9-.2-.4-.2-.9-.2-1.4s0-1,.2-1.4c.2-.4.4-.7.7-.9Z"></path><path class="cls-2" d="M159.8,43.8c0,0-.2,0-.3,0-.3,0-.5,0-.7-.2s-.2-.4-.2-.7v-4.1h1.6v-1.5h-1.6v-1.9h-1.9v1.9h-1.1v1.5h1.1v4.4c0,.7.2,1.2.6,1.6.4.4,1,.6,1.7.6s.4,0,.6,0c.2,0,.4,0,.6-.1l-.3-1.5c0,0-.2,0-.3,0Z"></path><path class="cls-2" d="M168.2,37.2c-.5,0-.9.1-1.2.4-.4.2-.6.6-.7,1.1h0v-1.3h-1.8v8h1.9v-4.7c0-.3,0-.6.2-.9s.4-.5.6-.6c.3-.1.6-.2.9-.2s.3,0,.5,0c.2,0,.3,0,.4,0v-1.7c0,0-.2,0-.3,0-.1,0-.2,0-.3,0Z"></path><path class="cls-2" d="M174.9,37.8c-.3-.2-.7-.4-1-.4-.4,0-.8-.1-1.1-.1-.6,0-1.1,0-1.5.2-.5.2-.8.4-1.2.7s-.5.7-.7,1.2l1.7.2c0-.3.3-.5.5-.7.3-.2.6-.3,1.1-.3s.8.1,1,.3c.2.2.3.5.3.9h0c0,.2,0,.3-.2.4-.1,0-.3.1-.6.2s-.7,0-1.1.1c-.4,0-.8.1-1.1.2s-.7.2-1,.4c-.3.2-.5.4-.7.7-.2.3-.2.7-.2,1.1s.1,1,.3,1.3c.2.4.6.6,1,.8.4.2.9.3,1.4.3s.8,0,1.1-.2c.3-.1.6-.3.8-.5s.4-.4.5-.6h0v1.1h1.8v-5.3c0-.5,0-1-.3-1.3-.2-.4-.4-.6-.8-.8ZM174.1,42.5c0,.3,0,.6-.2.8-.2.2-.4.4-.6.6-.3.1-.6.2-1,.2s-.7,0-1-.3-.4-.4-.4-.8,0-.4.2-.6c.1-.2.3-.3.5-.4.2,0,.5-.2.8-.2.1,0,.3,0,.4,0,.2,0,.3,0,.5,0s.3,0,.5-.1c.1,0,.2,0,.3-.1v.9Z"></path><path class="cls-2" d="M183.2,37.7c-.5-.3-1-.5-1.7-.5s-.9,0-1.2.2c-.3.2-.5.3-.7.6-.2.2-.3.4-.4.6h-.1v-1.3h-1.8v10.9h1.9v-4.2h0c0,.2.2.4.4.6.2.2.4.4.7.6.3.2.7.2,1.1.2s1.2-.2,1.7-.5c.5-.3.9-.8,1.2-1.4.3-.6.4-1.4.4-2.2s-.1-1.6-.4-2.2c-.3-.6-.7-1.1-1.2-1.4ZM182.7,42.7c-.1.4-.4.7-.6.9-.3.2-.6.3-1,.3s-.7-.1-1-.3c-.3-.2-.5-.5-.6-.9-.1-.4-.2-.8-.2-1.4s0-1,.2-1.4c.1-.4.4-.7.6-.9.3-.2.6-.3,1-.3s.8.1,1,.3c.3.2.5.5.6.9s.2.8.2,1.3,0,.9-.2,1.3Z"></path><path class="cls-2" d="M186.8,34.2c-.3,0-.6,0-.8.3-.2.2-.3.4-.3.7s.1.5.3.7.5.3.8.3.5,0,.8-.3.3-.4.3-.7-.1-.5-.3-.7c-.2-.2-.5-.3-.8-.3Z"></path><rect class="cls-2" x="185.9" y="37.4" width="1.9" height="8"></rect><path class="cls-2" d="M194.4,38.7h0c0-.2-.2-.4-.4-.6-.2-.2-.4-.4-.7-.6-.3-.2-.7-.2-1.2-.2s-1.2.2-1.7.5c-.5.3-.9.8-1.2,1.4-.3.6-.4,1.4-.4,2.2s.1,1.6.4,2.2.7,1.1,1.2,1.4c.5.3,1.1.5,1.7.5s.8,0,1.1-.2c.3-.2.5-.3.7-.6.2-.2.3-.4.4-.6h.1v1.3h1.8v-10.6h-1.9v4ZM194.3,42.7c-.1.4-.4.7-.6.9-.3.2-.6.3-1,.3s-.8-.1-1-.3c-.3-.2-.5-.5-.6-.9s-.2-.8-.2-1.3,0-.9.2-1.3c.1-.4.4-.7.6-.9.3-.2.6-.3,1-.3s.7.1,1,.3c.3.2.5.5.6.9.1.4.2.8.2,1.4s0,1-.2,1.4Z"></path><path class="cls-2" d="M204.8,41.3c0-.7,0-1.3-.3-1.8-.2-.5-.5-.9-.8-1.3-.3-.3-.7-.6-1.2-.7-.4-.2-.9-.2-1.4-.2-.8,0-1.4.2-2,.5s-1,.8-1.3,1.5c-.3.6-.5,1.3-.5,2.2s.2,1.6.5,2.2c.3.6.8,1.1,1.3,1.4.6.3,1.3.5,2.1.5s1.2,0,1.6-.3.9-.5,1.2-.8.5-.7.6-1.2l-1.8-.2c0,.2-.2.4-.4.6-.2.2-.3.3-.6.3-.2,0-.5.1-.7.1-.4,0-.8,0-1.1-.3s-.5-.4-.7-.8c-.2-.3-.2-.7-.2-1.1h5.5v-.6ZM200.1,39c.3-.2.6-.3,1-.3s.7,0,1,.3c.3.2.5.5.6.8,0,.2.1.5.2.8h-3.7c0-.3,0-.6.2-.8.1-.3.4-.6.6-.8Z"></path></g><path class="cls-1" d="M41.4,62.3S-10.4,45.2,28.6,1.1c0,0-64.5,42.1,10.1,74.6l-8.9,14.8,42.1-14.9-32.5-30.1,2,16.7Z"></path><path class="cls-2" d="M72.4,75.2c-3.6-3.4-7.3-6.7-10.9-10.1-5.9-5.4-11.7-10.8-17.6-16.2-1.3-1.2-2.7-2.5-4-3.7-.4-.4-1.3,0-1.3.6.6,5.2,1.3,10.4,1.9,15.6-4.9-1.8-9.6-4.5-13.6-7.7-3.8-3-7.1-6.6-9.3-10.9-2.6-5-3.3-10.7-2.3-16.3,1.7-9.5,7.7-17.9,14-25,.6-.7-.7-.9-1.1-.6-2.1,1.4-4.1,2.9-6,4.6-4.3,3.6-8.3,7.5-11.7,12-3.8,5-7,10.7-8.1,17-1.2,7,.6,13.9,4.6,19.6,6.3,9.1,16.4,15.2,26.2,19.9,1.5.7,3.1,1.5,4.7,2.2-2.9,4.8-5.8,9.6-8.7,14.4-.3.5.5.7.8.6,4.7-1.7,9.5-3.4,14.2-5l22.6-8c1.7-.6,3.5-1.2,5.2-1.9.4-.1.8-.6.4-1ZM57.5,80.1l-22.6,8c-1.2.4-2.5.9-3.7,1.3,2.7-4.6,5.5-9.1,8.2-13.7.2-.2,0-.5-.3-.6C23.6,68.4,1.4,56.1,3.6,36c1.3-11.8,9.9-21.7,18.6-29.1.9-.8,1.9-1.6,2.8-2.3-8.2,10.3-15.1,23.6-9.8,36.6,3.6,8.7,11.4,14.8,19.6,19,1.9,1,3.9,1.9,6,2.6.3.3,1.1,0,1.3-.4,0,0,0-.2,0-.3-.6-4.9-1.2-9.8-1.8-14.7,3.1,2.9,6.3,5.8,9.4,8.7,5.9,5.4,11.7,10.8,17.6,16.2,1.1,1,2.3,2.1,3.4,3.1-4.4,1.6-8.8,3.1-13.2,4.7Z"></path></svg>			</div>
		</div>
						</div>
				</div>
					</div>
				</div>
				</div>
		<p>Cet article <a href="https://presentcomposedesign.fr/spirit-e-boost/">Spirit E-Boost</a> est apparu en premier sur <a href="https://presentcomposedesign.fr">Présent Composé design</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>[ia]RTWORKS</title>
		<link>https://presentcomposedesign.fr/iartworks/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Fri, 09 Dec 2022 11:27:00 +0000</pubDate>
				<category><![CDATA[[ia]]]></category>
		<guid isPermaLink="false">https://presentcomposedesign.fr/?p=29948</guid>

					<description><![CDATA[<p>iaRTWORKS  est la page sur laquelle j'ai choisi de regrouper différentes créations personnelles obtenues en utilisant des outils d'intelligence artificielle générative entre autres logiciels, retouches &#038; modifications dans leur processus de réalisation.<br />
PrésentComposédesign-2022 </p>
<p>Cet article <a href="https://presentcomposedesign.fr/iartworks/">[ia]RTWORKS</a> est apparu en premier sur <a href="https://presentcomposedesign.fr">Présent Composé design</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="29948" class="elementor elementor-29948">
						<section class="elementor-section elementor-top-section elementor-element elementor-element-0f5079d elementor-section-full_width elementor-section-height-min-height elementor-section-items-bottom elementor-section-content-middle elementor-section-stretched elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no" data-id="0f5079d" data-element_type="section" data-e-type="section" data-settings="{&quot;stretch_section&quot;:&quot;section-stretched&quot;,&quot;background_background&quot;:&quot;classic&quot;}">
						<div class="elementor-container elementor-column-gap-extended">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-53020c6" data-id="53020c6" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<section class="elementor-section elementor-inner-section elementor-element elementor-element-5247421 elementor-section-boxed elementor-section-height-default elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no" data-id="5247421" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-inner-column elementor-element elementor-element-df621bb" data-id="df621bb" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-62da91d elementor-widget elementor-widget-heading" data-id="62da91d" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h1 class="elementor-heading-title elementor-size-default">[ia]RTWORKS</h1>				</div>
				</div>
					</div>
		</div>
					</div>
		</section>
					</div>
		</div>
					</div>
		</section>
		<div class="elementor-element elementor-element-15577e8 e-flex e-con-boxed wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no elementor-invisible e-con e-parent" data-id="15577e8" data-element_type="container" data-e-type="container" data-settings="{&quot;background_background&quot;:&quot;classic&quot;,&quot;animation&quot;:&quot;fadeInUp&quot;}">
					<div class="e-con-inner">
		<div class="elementor-element elementor-element-dd28605 e-con-full e-flex wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no e-con e-child" data-id="dd28605" data-element_type="container" data-e-type="container">
				<div class="elementor-element elementor-element-2147181 elementor-widget__width-initial elementor-widget elementor-widget-text-editor" data-id="2147181" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<h1>Design Génératif [ia]</h1><div data-vce-boxed-width="true"><div data-vce-do-apply="all el-ba3f564d"><div data-vce-element-content="true"><div data-vce-do-apply="border margin background el-11f4390c"><div data-vce-element-content="true" data-vce-do-apply="padding el-11f4390c"><div><span style="color: #0010ef;"> </span></div><h2>iaRTWORKS est la page sur laquelle j&rsquo;ai choisi de regrouper différentes <strong><span style="color: #0010ef;">créations  artistiques</span></strong> personnelles <strong><span style="color: #0010ef;">obtenues en utilisant des outils d&rsquo;intelligence artificielle générative</span></strong> entre autres logiciels, retouches &amp; modifications <strong><span style="color: #0010ef;">dans leur processus de réalisation</span></strong>. <br />PrésentComposédesign-2022</h2><h2 style="text-align: center;"><span style="color: #0010ef;"><strong><i class="fa-solid fa-chevron-down"></i> </strong></span></h2><h2 style="text-align: center;"><span style="color: #0010ef;"><strong>Vous êtes intéressé par l&rsquo;acquisition d&rsquo;une de ces œuvres ? </strong></span></h2></div></div></div></div></div><div data-vce-boxed-width="true"><div data-vce-do-apply="all el-d9d9a9fd"><div data-vce-element-content="true"><div><div data-vce-do-apply="border margin background el-87440d41"><div data-vce-element-content="true" data-vce-do-apply="padding el-87440d41"><p><!-- /wp:vcwb/empty-comment-element-wrapper --></p></div></div></div><p><!-- /vcwb/dynamicElementComment:87440d41 --></p></div></div></div><p><!-- /vcwb/dynamicElementComment:d9d9a9fd --><!--vcv no format--></p>								</div>
				</div>
				<div class="elementor-element elementor-element-d4f50e5 elementor-align-center elementor-widget elementor-widget-button" data-id="d4f50e5" data-element_type="widget" data-e-type="widget" data-widget_type="button.default">
				<div class="elementor-widget-container">
									<div class="elementor-button-wrapper">
					<a class="elementor-button elementor-button-link elementor-size-sm" href="https://presentcomposedesign.fr/contact/">
						<span class="elementor-button-content-wrapper">
									<span class="elementor-button-text">Cliquez ici</span>
					</span>
					</a>
				</div>
								</div>
				</div>
				</div>
		<div class="elementor-element elementor-element-82f52ee e-con-full e-flex wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no e-con e-child" data-id="82f52ee" data-element_type="container" data-e-type="container">
		<div class="wpr-jarallax elementor-element elementor-element-a08143e e-con-full wpr-jarallax-yes e-flex wpr-particle-no wpr-parallax-no wpr-sticky-section-no elementor-invisible e-con e-child" speed-data="1.4" bg-image="https://presentcomposedesign.fr/wp-content/uploads/2022/12/iridescent_iaRTWORKS_PresentComposedesign_2022-scaled.jpg" scroll-effect="scroll" data-id="a08143e" data-element_type="container" data-e-type="container" data-settings="{&quot;background_background&quot;:&quot;classic&quot;,&quot;animation&quot;:&quot;fadeInUp&quot;}">
				</div>
				</div>
					</div>
				</div>
		<div class="elementor-element elementor-element-a74a101 e-con-full e-flex wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no elementor-invisible e-con e-parent" data-id="a74a101" data-element_type="container" data-e-type="container" data-settings="{&quot;background_background&quot;:&quot;classic&quot;,&quot;animation&quot;:&quot;slideInUp&quot;}">
				<div class="elementor-element elementor-element-20c7748 wpr-grid-columns-2 wpr-grid-columns--tablet3 wpr-grid-columns--mobile1 wpr-grid-pagination-center elementor-widget elementor-widget-wpr-media-grid" data-id="20c7748" data-element_type="widget" data-e-type="widget" data-widget_type="wpr-media-grid.default">
				<div class="elementor-widget-container">
					<section class="wpr-grid wpr-media-grid elementor-clearfix" data-settings="{&quot;layout&quot;:&quot;fitRows&quot;,&quot;columns_desktop&quot;:&quot;2&quot;,&quot;gutter_hr&quot;:10,&quot;gutter_hr_mobile&quot;:10,&quot;gutter_hr_mobile_extra&quot;:10,&quot;gutter_hr_tablet&quot;:10,&quot;gutter_hr_tablet_extra&quot;:10,&quot;gutter_hr_laptop&quot;:10,&quot;gutter_hr_widescreen&quot;:10,&quot;gutter_vr&quot;:10,&quot;gutter_vr_mobile&quot;:10,&quot;gutter_vr_mobile_extra&quot;:10,&quot;gutter_vr_tablet&quot;:10,&quot;gutter_vr_tablet_extra&quot;:10,&quot;gutter_vr_laptop&quot;:10,&quot;gutter_vr_widescreen&quot;:10,&quot;animation&quot;:&quot;default&quot;,&quot;animation_duration&quot;:0.3,&quot;animation_delay&quot;:0.1,&quot;deeplinking&quot;:&quot;&quot;,&quot;filters_default_filter&quot;:&quot;&quot;,&quot;filters_linkable&quot;:&quot;no&quot;,&quot;filters_count&quot;:&quot;&quot;,&quot;filters_hide_empty&quot;:&quot;no&quot;,&quot;filters_animation&quot;:&quot;default&quot;,&quot;filters_animation_duration&quot;:0.3,&quot;filters_animation_delay&quot;:0.1,&quot;pagination_type&quot;:&quot;load-more&quot;,&quot;pagination_max_pages&quot;:1,&quot;lightbox&quot;:{&quot;selector&quot;:&quot;.wpr-grid-image-wrap&quot;,&quot;iframeMaxWidth&quot;:&quot;60%&quot;,&quot;hash&quot;:false,&quot;autoplay&quot;:&quot;true&quot;,&quot;pause&quot;:5000,&quot;progressBar&quot;:&quot;true&quot;,&quot;counter&quot;:&quot;true&quot;,&quot;controls&quot;:&quot;true&quot;,&quot;getCaptionFromTitleOrAlt&quot;:&quot;true&quot;,&quot;thumbnail&quot;:&quot;&quot;,&quot;showThumbByDefault&quot;:&quot;&quot;,&quot;share&quot;:&quot;&quot;,&quot;zoom&quot;:&quot;true&quot;,&quot;fullScreen&quot;:&quot;true&quot;,&quot;download&quot;:&quot;true&quot;}}"><article class="wpr-grid-item elementor-clearfix post-29980 attachment type-attachment status-inherit hentry entry"><div class="wpr-grid-item-inner"><div class="wpr-grid-media-wrap wpr-effect-size-small "><div class="wpr-grid-image-wrap" data-src="https://presentcomposedesign.fr/wp-content/uploads/2022/12/SPACE-DOME_PresentComposedesign_2022_1920.jpg"><img decoding="async" src="https://presentcomposedesign.fr/wp-content/uploads/2022/12/SPACE-DOME_PresentComposedesign_2022_1920.jpg" alt="iaRTWORKS est la page sur laquelle j'ai choisi de regrouper différentes créations personnelles obtenues en utilisant des outils d'intelligence artificielle générative entre autres logiciels, retouches &amp; modifications dans leur processus de réalisation. PrésentComposédesign-2022" class="wpr-anim-timing-ease-default"></div><div class="wpr-grid-media-hover wpr-animation-wrap"><div class="wpr-grid-media-hover-bg  wpr-overlay-fade-in wpr-anim-size-large wpr-anim-timing-ease-default wpr-anim-transparency" data-url="https://presentcomposedesign.fr/iartworks/space-dome_presentcomposedesign_2022_1920/"></div><div class="wpr-cv-container"><div class="wpr-cv-outer"><div class="wpr-cv-inner"><div class="wpr-grid-media-hover-middle elementor-clearfix"><div class="wpr-grid-item-lightbox elementor-repeater-item-1433fcf wpr-grid-item-display-block wpr-grid-item-align-center wpr-element-fade-in wpr-anim-size-large wpr-anim-timing-ease-default wpr-anim-transparency"><div class="inner-block"><span data-src="https://presentcomposedesign.fr/wp-content/uploads/2022/12/SPACE-DOME_PresentComposedesign_2022_1920.jpg"><i class="fas fa-search"></i></span><div class="wpr-grid-lightbox-overlay"></div></div></div></div></div></div></div></div></div></div></article><article class="wpr-grid-item elementor-clearfix post-29981 attachment type-attachment status-inherit hentry entry"><div class="wpr-grid-item-inner"><div class="wpr-grid-media-wrap wpr-effect-size-small "><div class="wpr-grid-image-wrap" data-src="https://presentcomposedesign.fr/wp-content/uploads/2022/12/SPACE-FARM_PresentComposedesign_2022_1920.jpg"><img decoding="async" src="https://presentcomposedesign.fr/wp-content/uploads/2022/12/SPACE-FARM_PresentComposedesign_2022_1920.jpg" alt="iaRTWORKS est la page sur laquelle j'ai choisi de regrouper différentes créations personnelles obtenues en utilisant des outils d'intelligence artificielle générative entre autres logiciels, retouches &amp; modifications dans leur processus de réalisation. PrésentComposédesign-2022" class="wpr-anim-timing-ease-default"></div><div class="wpr-grid-media-hover wpr-animation-wrap"><div class="wpr-grid-media-hover-bg  wpr-overlay-fade-in wpr-anim-size-large wpr-anim-timing-ease-default wpr-anim-transparency" data-url="https://presentcomposedesign.fr/iartworks/space-farm_presentcomposedesign_2022_1920/"></div><div class="wpr-cv-container"><div class="wpr-cv-outer"><div class="wpr-cv-inner"><div class="wpr-grid-media-hover-middle elementor-clearfix"><div class="wpr-grid-item-lightbox elementor-repeater-item-1433fcf wpr-grid-item-display-block wpr-grid-item-align-center wpr-element-fade-in wpr-anim-size-large wpr-anim-timing-ease-default wpr-anim-transparency"><div class="inner-block"><span data-src="https://presentcomposedesign.fr/wp-content/uploads/2022/12/SPACE-FARM_PresentComposedesign_2022_1920.jpg"><i class="fas fa-search"></i></span><div class="wpr-grid-lightbox-overlay"></div></div></div></div></div></div></div></div></div></div></article><article class="wpr-grid-item elementor-clearfix post-29978 attachment type-attachment status-inherit hentry entry"><div class="wpr-grid-item-inner"><div class="wpr-grid-media-wrap wpr-effect-size-small "><div class="wpr-grid-image-wrap" data-src="https://presentcomposedesign.fr/wp-content/uploads/2022/12/FLUFFY-BRICK_PresentComposedesign_2022_1920.jpg"><img decoding="async" src="https://presentcomposedesign.fr/wp-content/uploads/2022/12/FLUFFY-BRICK_PresentComposedesign_2022_1920.jpg" alt="iaRTWORKS est la page sur laquelle j'ai choisi de regrouper différentes créations personnelles obtenues en utilisant des outils d'intelligence artificielle générative entre autres logiciels, retouches &amp; modifications dans leur processus de réalisation. PrésentComposédesign-2022" class="wpr-anim-timing-ease-default"></div><div class="wpr-grid-media-hover wpr-animation-wrap"><div class="wpr-grid-media-hover-bg  wpr-overlay-fade-in wpr-anim-size-large wpr-anim-timing-ease-default wpr-anim-transparency" data-url="https://presentcomposedesign.fr/iartworks/fluffy-brick_presentcomposedesign_2022_1920/"></div><div class="wpr-cv-container"><div class="wpr-cv-outer"><div class="wpr-cv-inner"><div class="wpr-grid-media-hover-middle elementor-clearfix"><div class="wpr-grid-item-lightbox elementor-repeater-item-1433fcf wpr-grid-item-display-block wpr-grid-item-align-center wpr-element-fade-in wpr-anim-size-large wpr-anim-timing-ease-default wpr-anim-transparency"><div class="inner-block"><span data-src="https://presentcomposedesign.fr/wp-content/uploads/2022/12/FLUFFY-BRICK_PresentComposedesign_2022_1920.jpg"><i class="fas fa-search"></i></span><div class="wpr-grid-lightbox-overlay"></div></div></div></div></div></div></div></div></div></div></article><article class="wpr-grid-item elementor-clearfix post-29979 attachment type-attachment status-inherit hentry entry"><div class="wpr-grid-item-inner"><div class="wpr-grid-media-wrap wpr-effect-size-small "><div class="wpr-grid-image-wrap" data-src="https://presentcomposedesign.fr/wp-content/uploads/2022/12/FLUFFY-HOME_PresentComposedesign_2022_1920.jpg"><img decoding="async" src="https://presentcomposedesign.fr/wp-content/uploads/2022/12/FLUFFY-HOME_PresentComposedesign_2022_1920.jpg" alt="iaRTWORKS est la page sur laquelle j'ai choisi de regrouper différentes créations personnelles obtenues en utilisant des outils d'intelligence artificielle générative entre autres logiciels, retouches &amp; modifications dans leur processus de réalisation. PrésentComposédesign-2022" class="wpr-anim-timing-ease-default"></div><div class="wpr-grid-media-hover wpr-animation-wrap"><div class="wpr-grid-media-hover-bg  wpr-overlay-fade-in wpr-anim-size-large wpr-anim-timing-ease-default wpr-anim-transparency" data-url="https://presentcomposedesign.fr/iartworks/fluffy-home_presentcomposedesign_2022_1920/"></div><div class="wpr-cv-container"><div class="wpr-cv-outer"><div class="wpr-cv-inner"><div class="wpr-grid-media-hover-middle elementor-clearfix"><div class="wpr-grid-item-lightbox elementor-repeater-item-1433fcf wpr-grid-item-display-block wpr-grid-item-align-center wpr-element-fade-in wpr-anim-size-large wpr-anim-timing-ease-default wpr-anim-transparency"><div class="inner-block"><span data-src="https://presentcomposedesign.fr/wp-content/uploads/2022/12/FLUFFY-HOME_PresentComposedesign_2022_1920.jpg"><i class="fas fa-search"></i></span><div class="wpr-grid-lightbox-overlay"></div></div></div></div></div></div></div></div></div></div></article></section>				</div>
				</div>
				</div>
		<div class="elementor-element elementor-element-ce40ac1 e-flex e-con-boxed wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no elementor-invisible e-con e-parent" data-id="ce40ac1" data-element_type="container" data-e-type="container" data-settings="{&quot;background_background&quot;:&quot;classic&quot;,&quot;animation&quot;:&quot;bounceInLeft&quot;}">
					<div class="e-con-inner">
				<div class="elementor-element elementor-element-288f536 elementor-view-default elementor-widget elementor-widget-icon" data-id="288f536" data-element_type="widget" data-e-type="widget" data-widget_type="icon.default">
				<div class="elementor-widget-container">
							<div class="elementor-icon-wrapper">
			<div class="elementor-icon">
			<svg xmlns="http://www.w3.org/2000/svg" id="Calque_1" data-name="Calque 1" viewBox="0 0 230 95"><defs><style>      .cls-1 {        fill: #fc6a00;      }      .cls-1, .cls-2, .cls-3 {        stroke-width: 0px;      }      .cls-2 {        fill: #0010ef;      }      .cls-3 {        fill: #fff;        opacity: .8;      }    </style></defs><rect class="cls-3" x="13.9" y="4" width="212.9" height="57.7" rx="4" ry="4"></rect><path class="cls-2" d="M222.8,62.2H17.9c-2.5,0-4.5-2-4.5-4.5V8c0-2.5,2-4.5,4.5-4.5h204.9c2.5,0,4.5,2,4.5,4.5v49.7c0,2.5-2,4.5-4.5,4.5ZM17.9,4.5c-1.9,0-3.5,1.6-3.5,3.5v49.7c0,1.9,1.6,3.5,3.5,3.5h204.9c1.9,0,3.5-1.6,3.5-3.5V8c0-1.9-1.6-3.5-3.5-3.5H17.9Z"></path><g><path class="cls-2" d="M43.8,17.6c-.6-.3-1.2-.5-2.1-.5h-4v10.6h1.9v-3.6h2c.8,0,1.5-.2,2.1-.5.6-.3,1-.7,1.3-1.2.3-.5.4-1.1.4-1.8s-.1-1.3-.4-1.8c-.3-.5-.7-1-1.3-1.3ZM43.3,21.7c-.1.3-.4.5-.7.7-.3.2-.7.2-1.2.2h-1.8v-3.8h1.8c.5,0,.9,0,1.2.2.3.2.5.4.7.7.1.3.2.6.2,1s0,.7-.2,1Z"></path><path class="cls-2" d="M51.9,20.2c-.6-.3-1.2-.5-2-.5s-1.5.2-2,.5c-.6.3-1,.8-1.3,1.4-.3.6-.5,1.3-.5,2.2s.2,1.5.5,2.2c.3.6.8,1.1,1.3,1.4.6.3,1.2.5,2,.5s1.5-.2,2-.5c.6-.3,1-.8,1.3-1.4.3-.6.5-1.3.5-2.2s-.2-1.5-.5-2.2c-.3-.6-.8-1.1-1.3-1.4ZM51.5,25.2c-.1.4-.4.7-.6.9s-.6.3-1.1.3-.8-.1-1.1-.3-.5-.5-.6-.9-.2-.8-.2-1.3,0-.9.2-1.3.4-.7.6-.9.6-.3,1.1-.3.8.1,1.1.3.5.5.6.9.2.8.2,1.3,0,.9-.2,1.3Z"></path><path class="cls-2" d="M57.3,27.9c.6,0,1.1-.1,1.5-.4.4-.3.7-.7.9-1.1h0v1.4h1.8v-8h-1.9v4.6c0,.4,0,.7-.2,1-.2.3-.4.5-.6.6-.3.1-.5.2-.8.2-.5,0-.8-.1-1.1-.4-.3-.3-.4-.7-.4-1.2v-4.8h-1.9v5.1c0,.6.1,1.2.3,1.6.2.4.5.8.9,1,.4.2.9.3,1.4.3Z"></path><path class="cls-2" d="M64.9,23.1c0-.3,0-.6.2-.9s.4-.5.6-.6c.3-.1.6-.2.9-.2s.3,0,.5,0c.2,0,.3,0,.4,0v-1.7c0,0-.2,0-.3,0-.1,0-.2,0-.3,0-.5,0-.9.1-1.2.4-.4.2-.6.6-.7,1.1h0v-1.3h-1.8v8h1.9v-4.7Z"></path><path class="cls-2" d="M72.5,27.3c.4.4,1,.6,1.7.6s.4,0,.6,0,.4,0,.6-.1l-.3-1.5c0,0-.2,0-.3,0,0,0-.2,0-.3,0-.3,0-.5,0-.7-.2-.1-.1-.2-.4-.2-.7v-4.1h1.6v-1.5h-1.6v-1.9h-1.9v1.9h-1.1v1.5h1.1v4.4c0,.7.2,1.2.6,1.6Z"></path><path class="cls-2" d="M77.7,27.4c.6.3,1.2.5,2,.5s1.5-.2,2-.5c.6-.3,1-.8,1.3-1.4.3-.6.5-1.3.5-2.2s-.2-1.5-.5-2.2c-.3-.6-.8-1.1-1.3-1.4-.6-.3-1.2-.5-2-.5s-1.5.2-2,.5c-.6.3-1,.8-1.3,1.4-.3.6-.5,1.3-.5,2.2s.2,1.5.5,2.2c.3.6.8,1.1,1.3,1.4ZM78,22.5c.1-.4.4-.7.6-.9s.6-.3,1.1-.3.8.1,1.1.3.5.5.6.9.2.8.2,1.3,0,.9-.2,1.3-.4.7-.6.9-.6.3-1.1.3-.8-.1-1.1-.3-.5-.5-.6-.9-.2-.8-.2-1.3,0-.9.2-1.3Z"></path><path class="cls-2" d="M91.6,27.8v-8h-1.9v4.6c0,.4,0,.7-.2,1-.2.3-.4.5-.6.6-.3.1-.5.2-.8.2-.5,0-.8-.1-1.1-.4-.3-.3-.4-.7-.4-1.2v-4.8h-1.9v5.1c0,.6.1,1.2.3,1.6.2.4.5.8.9,1,.4.2.9.3,1.4.3.6,0,1.1-.1,1.5-.4.4-.3.7-.7.9-1.1h0v1.4h1.8Z"></path><path class="cls-2" d="M93.5,25.7c0,.7.2,1.2.6,1.6.4.4,1,.6,1.7.6s.4,0,.6,0,.4,0,.6-.1l-.3-1.5c0,0-.2,0-.3,0,0,0-.2,0-.3,0-.3,0-.5,0-.7-.2-.1-.1-.2-.4-.2-.7v-4.1h1.6v-1.5h-1.6v-1.9h-1.9v1.9h-1.1v1.5h1.1v4.4Z"></path><path class="cls-2" d="M103,27.7c.5-.2.9-.5,1.2-.8s.5-.7.6-1.2l-1.8-.2c0,.2-.2.4-.4.6-.2.2-.3.3-.6.3-.2,0-.5.1-.7.1-.4,0-.8,0-1.1-.3-.3-.2-.5-.4-.7-.8-.2-.3-.2-.7-.2-1.1h5.5v-.6c0-.7,0-1.3-.3-1.8-.2-.5-.5-.9-.8-1.3-.3-.3-.7-.6-1.2-.7-.4-.2-.9-.2-1.4-.2-.8,0-1.4.2-2,.5-.6.3-1,.8-1.3,1.5-.3.6-.5,1.3-.5,2.2s.2,1.6.5,2.2c.3.6.8,1.1,1.3,1.4.6.3,1.3.5,2.1.5s1.2,0,1.6-.3ZM100.2,21.5c.3-.2.6-.3,1-.3s.7,0,1,.3c.3.2.5.5.6.8,0,.2.1.5.2.8h-3.7c0-.3,0-.6.2-.8.1-.3.4-.6.6-.8Z"></path><path class="cls-2" d="M112,26.7c.3-.4.4-.8.4-1.3s-.2-1-.6-1.4c-.4-.4-.9-.6-1.7-.8l-1.4-.3c-.4,0-.7-.2-.9-.4s-.3-.3-.3-.6.1-.5.4-.7c.3-.2.6-.3,1-.3s.8.1,1,.3.4.4.5.7l1.7-.2c-.1-.7-.5-1.2-1-1.6-.5-.4-1.3-.6-2.2-.6s-1.2,0-1.7.3c-.5.2-.9.5-1.1.8s-.4.8-.4,1.3.2,1.1.5,1.4c.4.4.9.6,1.7.8l1.4.3c.7.2,1.1.5,1.1.9s-.1.5-.4.7-.6.3-1.1.3-.8,0-1.1-.3c-.3-.2-.5-.5-.5-.8l-1.8.2c.1.7.5,1.3,1.1,1.7.6.4,1.4.6,2.3.6s1.3-.1,1.8-.3.9-.5,1.2-.9Z"></path><path class="cls-2" d="M117.7,27.5c.5.3,1.1.5,1.7.5s.8,0,1.1-.2c.3-.2.5-.3.7-.6.2-.2.3-.4.4-.6h.1v1.3h1.8v-10.6h-1.9v4h0c0-.2-.2-.4-.4-.6-.2-.2-.4-.4-.7-.6-.3-.2-.7-.2-1.2-.2s-1.2.2-1.7.5c-.5.3-.9.8-1.2,1.4-.3.6-.4,1.4-.4,2.2s.1,1.6.4,2.2.7,1.1,1.2,1.4ZM118.3,22.5c.1-.4.4-.7.6-.9s.6-.3,1-.3.7.1,1,.3.5.5.6.9c.1.4.2.8.2,1.4s0,1-.2,1.4c-.1.4-.4.7-.6.9-.3.2-.6.3-1,.3s-.8-.1-1-.3c-.3-.2-.5-.5-.6-.9s-.2-.8-.2-1.3,0-.9.2-1.3Z"></path><path class="cls-2" d="M130.2,27.7c.5-.2.9-.5,1.2-.8s.5-.7.6-1.2l-1.8-.2c0,.2-.2.4-.4.6-.2.2-.3.3-.6.3-.2,0-.5.1-.7.1-.4,0-.8,0-1.1-.3s-.5-.4-.7-.8c-.2-.3-.2-.7-.2-1.1h5.5v-.6c0-.7,0-1.3-.3-1.8-.2-.5-.5-.9-.8-1.3-.3-.3-.7-.6-1.2-.7-.4-.2-.9-.2-1.4-.2-.8,0-1.4.2-2,.5s-1,.8-1.3,1.5c-.3.6-.5,1.3-.5,2.2s.2,1.6.5,2.2.8,1.1,1.3,1.4c.6.3,1.3.5,2.1.5s1.2,0,1.6-.3ZM127.4,21.5c.3-.2.6-.3,1-.3s.7,0,1,.3c.3.2.5.5.6.8,0,.2.1.5.2.8h-3.7c0-.3,0-.6.2-.8.1-.3.4-.6.6-.8Z"></path><path class="cls-2" d="M142,21.7c.3.2.4.6.4,1.1v5.1h1.9v-5.3c0-.9-.2-1.6-.7-2-.5-.5-1.1-.7-1.8-.7s-1.1.1-1.5.4c-.4.3-.7.6-.9,1.1h0c-.1-.5-.4-.8-.8-1.1-.4-.3-.8-.4-1.4-.4s-1,.1-1.4.4-.7.6-.8,1.1h0v-1.4h-1.8v8h1.9v-4.8c0-.3,0-.6.2-.9.1-.2.3-.4.5-.6.2-.1.5-.2.7-.2.4,0,.7.1,1,.4.2.2.4.6.4,1v5.1h1.9v-5c0-.4.1-.8.4-1.1.3-.3.6-.4,1.1-.4s.7.1,1,.3Z"></path><path class="cls-2" d="M149.8,27.3c.2-.2.4-.4.5-.6h0v1.1h1.8v-5.3c0-.5,0-1-.3-1.3-.2-.4-.4-.6-.8-.8-.3-.2-.7-.4-1-.4-.4,0-.8-.1-1.1-.1-.6,0-1.1,0-1.5.2-.5.2-.8.4-1.2.7s-.5.7-.7,1.2l1.7.2c0-.3.3-.5.5-.7.3-.2.6-.3,1.1-.3s.8.1,1,.3c.2.2.3.5.3.9h0c0,.2,0,.3-.2.4-.1,0-.3.1-.6.2s-.7,0-1.1.1c-.4,0-.8.1-1.1.2s-.7.2-1,.4c-.3.2-.5.4-.7.7-.2.3-.2.7-.2,1.1s.1,1,.3,1.3c.2.4.6.6,1,.8.4.2.9.3,1.4.3s.8,0,1.1-.2c.3-.1.6-.3.8-.5ZM147.5,26.3c-.3-.2-.4-.4-.4-.8s0-.4.2-.6c.1-.2.3-.3.5-.4.2,0,.5-.2.8-.2.1,0,.3,0,.4,0,.2,0,.3,0,.5,0s.3,0,.5-.1c.1,0,.2,0,.3-.1v.9c0,.3,0,.6-.2.8-.2.2-.4.4-.6.6-.3.1-.6.2-1,.2s-.7,0-1-.3Z"></path><path class="cls-2" d="M159.3,20.1c-.4-.2-.9-.3-1.4-.3s-1.1.1-1.5.4c-.4.3-.7.6-.9,1.1h0v-1.4h-1.8v8h1.9v-4.7c0-.4,0-.7.2-1,.1-.3.3-.5.6-.6.3-.1.5-.2.9-.2.5,0,.9.2,1.1.5.3.3.4.7.4,1.3v4.8h1.9v-5.1c0-.6-.1-1.2-.3-1.6-.2-.4-.5-.8-1-1Z"></path><path class="cls-2" d="M166,27.7c.3-.2.5-.3.7-.6.2-.2.3-.4.4-.6h.1v1.3h1.8v-10.6h-1.9v4h0c0-.2-.2-.4-.4-.6-.2-.2-.4-.4-.7-.6-.3-.2-.7-.2-1.2-.2s-1.2.2-1.7.5c-.5.3-.9.8-1.2,1.4-.3.6-.4,1.4-.4,2.2s.1,1.6.4,2.2.7,1.1,1.2,1.4c.5.3,1.1.5,1.7.5s.8,0,1.1-.2ZM163.7,25.2c-.1-.4-.2-.8-.2-1.3s0-.9.2-1.3c.1-.4.4-.7.6-.9.3-.2.6-.3,1-.3s.7.1,1,.3c.3.2.5.5.6.9.1.4.2.8.2,1.4s0,1-.2,1.4c-.1.4-.4.7-.6.9-.3.2-.6.3-1,.3s-.8-.1-1-.3c-.3-.2-.5-.5-.6-.9Z"></path><path class="cls-2" d="M175.7,25.5c0,.2-.2.4-.4.6-.2.2-.3.3-.6.3-.2,0-.5.1-.7.1-.4,0-.8,0-1.1-.3s-.5-.4-.7-.8c-.2-.3-.2-.7-.2-1.1h5.5v-.6c0-.7,0-1.3-.3-1.8-.2-.5-.5-.9-.8-1.3-.3-.3-.7-.6-1.2-.7-.4-.2-.9-.2-1.4-.2-.8,0-1.4.2-2,.5s-1,.8-1.3,1.5c-.3.6-.5,1.3-.5,2.2s.2,1.6.5,2.2c.3.6.8,1.1,1.3,1.4.6.3,1.3.5,2.1.5s1.2,0,1.6-.3.9-.5,1.2-.8.5-.7.6-1.2l-1.8-.2ZM172.9,21.5c.3-.2.6-.3,1-.3s.7,0,1,.3c.3.2.5.5.6.8,0,.2.1.5.2.8h-3.7c0-.3,0-.6.2-.8.1-.3.4-.6.6-.8Z"></path><path class="cls-2" d="M182.8,23.3l-1.4-.3c-.4,0-.7-.2-.9-.4-.2-.1-.3-.3-.3-.6s.1-.5.4-.7c.3-.2.6-.3,1-.3s.8.1,1,.3.4.4.5.7l1.7-.2c-.1-.7-.5-1.2-1-1.6-.5-.4-1.3-.6-2.2-.6s-1.2,0-1.7.3c-.5.2-.9.5-1.1.8-.3.4-.4.8-.4,1.3s.2,1.1.5,1.4c.4.4.9.6,1.7.8l1.4.3c.7.2,1.1.5,1.1.9s-.1.5-.4.7c-.3.2-.6.3-1.1.3s-.8,0-1.1-.3-.5-.5-.5-.8l-1.8.2c.1.7.5,1.3,1.1,1.7s1.4.6,2.3.6,1.3-.1,1.8-.3.9-.5,1.2-.9c.3-.4.4-.8.4-1.3s-.2-1-.6-1.4c-.4-.4-.9-.6-1.7-.8Z"></path><path class="cls-2" d="M194.6,20.2c-.6-.3-1.2-.5-2-.5s-1.5.2-2,.5c-.6.3-1,.8-1.3,1.4-.3.6-.5,1.3-.5,2.2s.2,1.5.5,2.2c.3.6.8,1.1,1.3,1.4s1.2.5,2,.5,1.5-.2,2-.5,1-.8,1.3-1.4c.3-.6.5-1.3.5-2.2s-.2-1.5-.5-2.2c-.3-.6-.8-1.1-1.3-1.4ZM194.3,25.2c-.1.4-.4.7-.6.9-.3.2-.6.3-1.1.3s-.8-.1-1.1-.3-.5-.5-.6-.9c-.1-.4-.2-.8-.2-1.3s0-.9.2-1.3c.1-.4.4-.7.6-.9s.6-.3,1.1-.3.8.1,1.1.3c.3.2.5.5.6.9.1.4.2.8.2,1.3s0,.9-.2,1.3Z"></path><path class="cls-2" d="M198.7,27.6c.4.2.9.3,1.4.3.6,0,1.1-.1,1.5-.4.4-.3.7-.7.9-1.1h0v1.4h1.8v-8h-1.9v4.6c0,.4,0,.7-.2,1-.2.3-.4.5-.6.6-.3.1-.5.2-.8.2-.5,0-.8-.1-1.1-.4-.3-.3-.4-.7-.4-1.2v-4.8h-1.9v5.1c0,.6.1,1.2.3,1.6.2.4.5.8.9,1Z"></path><path class="cls-2" d="M61.4,37.7c-.5-.3-1-.5-1.7-.5s-.9,0-1.2.2c-.3.2-.5.3-.7.6-.2.2-.3.4-.4.6h-.1v-1.3h-1.8v10.9h1.9v-4.2h0c0,.2.2.4.4.6.2.2.4.4.7.6s.7.2,1.1.2,1.2-.2,1.7-.5c.5-.3.9-.8,1.2-1.4s.4-1.4.4-2.2-.1-1.6-.4-2.2c-.3-.6-.7-1.1-1.2-1.4ZM60.9,42.7c-.1.4-.4.7-.6.9-.3.2-.6.3-1,.3s-.7-.1-1-.3c-.3-.2-.5-.5-.6-.9-.1-.4-.2-.8-.2-1.4s0-1,.2-1.4c.1-.4.4-.7.6-.9s.6-.3,1-.3.8.1,1,.3c.3.2.5.5.6.9s.2.8.2,1.3,0,.9-.2,1.3Z"></path><path class="cls-2" d="M67.9,37.2c-.5,0-.9.1-1.2.4-.4.2-.6.6-.7,1.1h0v-1.3h-1.8v8h1.9v-4.7c0-.3,0-.6.2-.9s.4-.5.6-.6c.3-.1.6-.2.9-.2s.3,0,.5,0c.2,0,.3,0,.4,0v-1.7c0,0-.2,0-.3,0-.1,0-.2,0-.3,0Z"></path><path class="cls-2" d="M70.2,34.2c-.3,0-.6,0-.8.3-.2.2-.3.4-.3.7s.1.5.3.7.5.3.8.3.5,0,.8-.3.3-.4.3-.7-.1-.5-.3-.7c-.2-.2-.5-.3-.8-.3Z"></path><rect class="cls-2" x="69.3" y="37.4" width="1.9" height="8"></rect><path class="cls-2" d="M76.8,40.8l-1.4-.3c-.4,0-.7-.2-.9-.4s-.3-.3-.3-.6.1-.5.4-.7c.3-.2.6-.3,1-.3s.8.1,1,.3.4.4.5.7l1.7-.2c-.1-.7-.5-1.2-1-1.6-.5-.4-1.3-.6-2.2-.6s-1.2,0-1.7.3c-.5.2-.9.5-1.1.8s-.4.8-.4,1.3.2,1.1.5,1.4c.4.4.9.6,1.7.8l1.4.3c.7.2,1.1.5,1.1.9s-.1.5-.4.7-.6.3-1.1.3-.8,0-1.1-.3c-.3-.2-.5-.5-.5-.8l-1.8.2c.1.7.5,1.3,1.1,1.7.6.4,1.4.6,2.3.6s1.3-.1,1.8-.3.9-.5,1.2-.9c.3-.4.4-.8.4-1.3s-.2-1-.6-1.4c-.4-.4-.9-.6-1.7-.8Z"></path><path class="cls-2" d="M86,38.2c-.3-.3-.7-.6-1.2-.7-.4-.2-.9-.2-1.4-.2-.8,0-1.4.2-2,.5-.6.3-1,.8-1.3,1.5-.3.6-.5,1.3-.5,2.2s.2,1.6.5,2.2c.3.6.8,1.1,1.3,1.4.6.3,1.3.5,2.1.5s1.2,0,1.6-.3.9-.5,1.2-.8.5-.7.6-1.2l-1.8-.2c0,.2-.2.4-.4.6-.2.2-.3.3-.6.3-.2,0-.5.1-.7.1-.4,0-.8,0-1.1-.3-.3-.2-.5-.4-.7-.8-.2-.3-.2-.7-.2-1.1h5.5v-.6c0-.7,0-1.3-.3-1.8-.2-.5-.5-.9-.8-1.3ZM82.4,39c.3-.2.6-.3,1-.3s.7,0,1,.3c.3.2.5.5.6.8,0,.2.1.5.2.8h-3.7c0-.3,0-.6.2-.8.1-.3.4-.6.6-.8Z"></path><path class="cls-2" d="M96.5,38.7h0c0-.2-.2-.4-.4-.6-.2-.2-.4-.4-.7-.6-.3-.2-.7-.2-1.2-.2s-1.2.2-1.7.5-.9.8-1.2,1.4c-.3.6-.4,1.4-.4,2.2s.1,1.6.4,2.2.7,1.1,1.2,1.4c.5.3,1.1.5,1.7.5s.8,0,1.1-.2c.3-.2.5-.3.7-.6.2-.2.3-.4.4-.6h.1v1.3h1.8v-10.6h-1.9v4ZM96.3,42.7c-.1.4-.4.7-.6.9-.3.2-.6.3-1,.3s-.8-.1-1-.3c-.3-.2-.5-.5-.6-.9s-.2-.8-.2-1.3,0-.9.2-1.3.4-.7.6-.9.6-.3,1-.3.7.1,1,.3c.3.2.5.5.6.9s.2.8.2,1.4,0,1-.2,1.4Z"></path><path class="cls-2" d="M105.7,38.2c-.3-.3-.7-.6-1.2-.7-.4-.2-.9-.2-1.4-.2-.8,0-1.4.2-2,.5-.6.3-1,.8-1.3,1.5-.3.6-.5,1.3-.5,2.2s.2,1.6.5,2.2c.3.6.8,1.1,1.3,1.4.6.3,1.3.5,2.1.5s1.2,0,1.6-.3.9-.5,1.2-.8.5-.7.6-1.2l-1.8-.2c0,.2-.2.4-.4.6-.2.2-.3.3-.6.3-.2,0-.5.1-.7.1-.4,0-.8,0-1.1-.3-.3-.2-.5-.4-.7-.8-.2-.3-.2-.7-.2-1.1h5.5v-.6c0-.7,0-1.3-.3-1.8-.2-.5-.5-.9-.8-1.3ZM102.1,39c.3-.2.6-.3,1-.3s.7,0,1,.3c.3.2.5.5.6.8,0,.2.1.5.2.8h-3.7c0-.3,0-.6.2-.8.1-.3.4-.6.6-.8Z"></path><path class="cls-2" d="M113.4,39.1c.3-.2.6-.3,1-.3s.6,0,.8.2c.2.1.4.3.5.5.1.2.2.4.3.7h1.8c0-.6-.2-1.1-.5-1.5-.3-.4-.7-.8-1.2-1-.5-.2-1.1-.4-1.7-.4s-1.4.2-2,.5c-.6.3-1,.8-1.3,1.5-.3.6-.5,1.3-.5,2.1s.2,1.5.5,2.1c.3.6.7,1.1,1.3,1.5s1.3.5,2,.5,1.2-.1,1.7-.4c.5-.2.9-.6,1.2-1,.3-.4.5-.9.5-1.5h-1.8c0,.4-.3.8-.6,1s-.6.4-1.1.4-.7-.1-1-.3c-.3-.2-.5-.5-.7-.9-.2-.4-.2-.9-.2-1.4s0-1,.2-1.4.4-.7.7-.9Z"></path><path class="cls-2" d="M124.3,37.8c-.6-.3-1.2-.5-2-.5s-1.5.2-2,.5c-.6.3-1,.8-1.3,1.4-.3.6-.5,1.3-.5,2.2s.2,1.5.5,2.2c.3.6.8,1.1,1.3,1.4.6.3,1.2.5,2,.5s1.5-.2,2-.5c.6-.3,1-.8,1.3-1.4.3-.6.5-1.3.5-2.2s-.2-1.5-.5-2.2c-.3-.6-.8-1.1-1.3-1.4ZM124,42.7c-.1.4-.4.7-.6.9s-.6.3-1.1.3-.8-.1-1.1-.3-.5-.5-.6-.9c-.1-.4-.2-.8-.2-1.3s0-.9.2-1.3c.1-.4.4-.7.6-.9s.6-.3,1.1-.3.8.1,1.1.3.5.5.6.9c.1.4.2.8.2,1.3s0,.9-.2,1.3Z"></path><path class="cls-2" d="M132.8,37.6c-.4-.2-.9-.3-1.4-.3s-1.1.1-1.5.4c-.4.3-.7.6-.9,1.1h0v-1.4h-1.8v8h1.9v-4.7c0-.4,0-.7.2-1,.1-.3.3-.5.6-.6.3-.1.5-.2.9-.2.5,0,.9.2,1.1.5.3.3.4.7.4,1.3v4.8h1.9v-5.1c0-.6-.1-1.2-.3-1.6-.2-.4-.5-.8-1-1Z"></path><path class="cls-2" d="M139,43.8c0,0-.2,0-.3,0-.3,0-.5,0-.7-.2s-.2-.4-.2-.7v-4.1h1.6v-1.5h-1.6v-1.9h-1.9v1.9h-1.1v1.5h1.1v4.4c0,.7.2,1.2.6,1.6.4.4,1,.6,1.7.6s.4,0,.6,0c.2,0,.4,0,.6-.1l-.3-1.5c0,0-.2,0-.3,0Z"></path><path class="cls-2" d="M145.9,37.8c-.3-.2-.7-.4-1-.4-.4,0-.8-.1-1.1-.1-.6,0-1.1,0-1.5.2-.5.2-.8.4-1.2.7s-.5.7-.7,1.2l1.7.2c0-.3.3-.5.5-.7.3-.2.6-.3,1.1-.3s.8.1,1,.3c.2.2.3.5.3.9h0c0,.2,0,.3-.2.4-.1,0-.3.1-.6.2s-.7,0-1.1.1c-.4,0-.8.1-1.1.2s-.7.2-1,.4c-.3.2-.5.4-.7.7-.2.3-.2.7-.2,1.1s.1,1,.3,1.3c.2.4.6.6,1,.8.4.2.9.3,1.4.3s.8,0,1.1-.2c.3-.1.6-.3.8-.5s.4-.4.5-.6h0v1.1h1.8v-5.3c0-.5,0-1-.3-1.3-.2-.4-.4-.6-.8-.8ZM145.1,42.5c0,.3,0,.6-.2.8-.2.2-.4.4-.6.6-.3.1-.6.2-1,.2s-.7,0-1-.3-.4-.4-.4-.8,0-.4.2-.6c.1-.2.3-.3.5-.4.2,0,.5-.2.8-.2.1,0,.3,0,.4,0,.2,0,.3,0,.5,0s.3,0,.5-.1c.1,0,.2,0,.3-.1v.9Z"></path><path class="cls-2" d="M150.9,39.1c.3-.2.6-.3,1-.3s.6,0,.8.2c.2.1.4.3.5.5.1.2.2.4.3.7h1.8c0-.6-.2-1.1-.5-1.5-.3-.4-.7-.8-1.2-1-.5-.2-1.1-.4-1.7-.4s-1.4.2-2,.5c-.6.3-1,.8-1.3,1.5-.3.6-.5,1.3-.5,2.1s.2,1.5.5,2.1c.3.6.7,1.1,1.3,1.5s1.3.5,2,.5,1.2-.1,1.7-.4c.5-.2.9-.6,1.2-1,.3-.4.5-.9.5-1.5h-1.8c0,.4-.3.8-.6,1s-.6.4-1.1.4-.7-.1-1-.3c-.3-.2-.5-.5-.7-.9-.2-.4-.2-.9-.2-1.4s0-1,.2-1.4c.2-.4.4-.7.7-.9Z"></path><path class="cls-2" d="M159.8,43.8c0,0-.2,0-.3,0-.3,0-.5,0-.7-.2s-.2-.4-.2-.7v-4.1h1.6v-1.5h-1.6v-1.9h-1.9v1.9h-1.1v1.5h1.1v4.4c0,.7.2,1.2.6,1.6.4.4,1,.6,1.7.6s.4,0,.6,0c.2,0,.4,0,.6-.1l-.3-1.5c0,0-.2,0-.3,0Z"></path><path class="cls-2" d="M168.2,37.2c-.5,0-.9.1-1.2.4-.4.2-.6.6-.7,1.1h0v-1.3h-1.8v8h1.9v-4.7c0-.3,0-.6.2-.9s.4-.5.6-.6c.3-.1.6-.2.9-.2s.3,0,.5,0c.2,0,.3,0,.4,0v-1.7c0,0-.2,0-.3,0-.1,0-.2,0-.3,0Z"></path><path class="cls-2" d="M174.9,37.8c-.3-.2-.7-.4-1-.4-.4,0-.8-.1-1.1-.1-.6,0-1.1,0-1.5.2-.5.2-.8.4-1.2.7s-.5.7-.7,1.2l1.7.2c0-.3.3-.5.5-.7.3-.2.6-.3,1.1-.3s.8.1,1,.3c.2.2.3.5.3.9h0c0,.2,0,.3-.2.4-.1,0-.3.1-.6.2s-.7,0-1.1.1c-.4,0-.8.1-1.1.2s-.7.2-1,.4c-.3.2-.5.4-.7.7-.2.3-.2.7-.2,1.1s.1,1,.3,1.3c.2.4.6.6,1,.8.4.2.9.3,1.4.3s.8,0,1.1-.2c.3-.1.6-.3.8-.5s.4-.4.5-.6h0v1.1h1.8v-5.3c0-.5,0-1-.3-1.3-.2-.4-.4-.6-.8-.8ZM174.1,42.5c0,.3,0,.6-.2.8-.2.2-.4.4-.6.6-.3.1-.6.2-1,.2s-.7,0-1-.3-.4-.4-.4-.8,0-.4.2-.6c.1-.2.3-.3.5-.4.2,0,.5-.2.8-.2.1,0,.3,0,.4,0,.2,0,.3,0,.5,0s.3,0,.5-.1c.1,0,.2,0,.3-.1v.9Z"></path><path class="cls-2" d="M183.2,37.7c-.5-.3-1-.5-1.7-.5s-.9,0-1.2.2c-.3.2-.5.3-.7.6-.2.2-.3.4-.4.6h-.1v-1.3h-1.8v10.9h1.9v-4.2h0c0,.2.2.4.4.6.2.2.4.4.7.6.3.2.7.2,1.1.2s1.2-.2,1.7-.5c.5-.3.9-.8,1.2-1.4.3-.6.4-1.4.4-2.2s-.1-1.6-.4-2.2c-.3-.6-.7-1.1-1.2-1.4ZM182.7,42.7c-.1.4-.4.7-.6.9-.3.2-.6.3-1,.3s-.7-.1-1-.3c-.3-.2-.5-.5-.6-.9-.1-.4-.2-.8-.2-1.4s0-1,.2-1.4c.1-.4.4-.7.6-.9.3-.2.6-.3,1-.3s.8.1,1,.3c.3.2.5.5.6.9s.2.8.2,1.3,0,.9-.2,1.3Z"></path><path class="cls-2" d="M186.8,34.2c-.3,0-.6,0-.8.3-.2.2-.3.4-.3.7s.1.5.3.7.5.3.8.3.5,0,.8-.3.3-.4.3-.7-.1-.5-.3-.7c-.2-.2-.5-.3-.8-.3Z"></path><rect class="cls-2" x="185.9" y="37.4" width="1.9" height="8"></rect><path class="cls-2" d="M194.4,38.7h0c0-.2-.2-.4-.4-.6-.2-.2-.4-.4-.7-.6-.3-.2-.7-.2-1.2-.2s-1.2.2-1.7.5c-.5.3-.9.8-1.2,1.4-.3.6-.4,1.4-.4,2.2s.1,1.6.4,2.2.7,1.1,1.2,1.4c.5.3,1.1.5,1.7.5s.8,0,1.1-.2c.3-.2.5-.3.7-.6.2-.2.3-.4.4-.6h.1v1.3h1.8v-10.6h-1.9v4ZM194.3,42.7c-.1.4-.4.7-.6.9-.3.2-.6.3-1,.3s-.8-.1-1-.3c-.3-.2-.5-.5-.6-.9s-.2-.8-.2-1.3,0-.9.2-1.3c.1-.4.4-.7.6-.9.3-.2.6-.3,1-.3s.7.1,1,.3c.3.2.5.5.6.9.1.4.2.8.2,1.4s0,1-.2,1.4Z"></path><path class="cls-2" d="M204.8,41.3c0-.7,0-1.3-.3-1.8-.2-.5-.5-.9-.8-1.3-.3-.3-.7-.6-1.2-.7-.4-.2-.9-.2-1.4-.2-.8,0-1.4.2-2,.5s-1,.8-1.3,1.5c-.3.6-.5,1.3-.5,2.2s.2,1.6.5,2.2c.3.6.8,1.1,1.3,1.4.6.3,1.3.5,2.1.5s1.2,0,1.6-.3.9-.5,1.2-.8.5-.7.6-1.2l-1.8-.2c0,.2-.2.4-.4.6-.2.2-.3.3-.6.3-.2,0-.5.1-.7.1-.4,0-.8,0-1.1-.3s-.5-.4-.7-.8c-.2-.3-.2-.7-.2-1.1h5.5v-.6ZM200.1,39c.3-.2.6-.3,1-.3s.7,0,1,.3c.3.2.5.5.6.8,0,.2.1.5.2.8h-3.7c0-.3,0-.6.2-.8.1-.3.4-.6.6-.8Z"></path></g><path class="cls-1" d="M41.4,62.3S-10.4,45.2,28.6,1.1c0,0-64.5,42.1,10.1,74.6l-8.9,14.8,42.1-14.9-32.5-30.1,2,16.7Z"></path><path class="cls-2" d="M72.4,75.2c-3.6-3.4-7.3-6.7-10.9-10.1-5.9-5.4-11.7-10.8-17.6-16.2-1.3-1.2-2.7-2.5-4-3.7-.4-.4-1.3,0-1.3.6.6,5.2,1.3,10.4,1.9,15.6-4.9-1.8-9.6-4.5-13.6-7.7-3.8-3-7.1-6.6-9.3-10.9-2.6-5-3.3-10.7-2.3-16.3,1.7-9.5,7.7-17.9,14-25,.6-.7-.7-.9-1.1-.6-2.1,1.4-4.1,2.9-6,4.6-4.3,3.6-8.3,7.5-11.7,12-3.8,5-7,10.7-8.1,17-1.2,7,.6,13.9,4.6,19.6,6.3,9.1,16.4,15.2,26.2,19.9,1.5.7,3.1,1.5,4.7,2.2-2.9,4.8-5.8,9.6-8.7,14.4-.3.5.5.7.8.6,4.7-1.7,9.5-3.4,14.2-5l22.6-8c1.7-.6,3.5-1.2,5.2-1.9.4-.1.8-.6.4-1ZM57.5,80.1l-22.6,8c-1.2.4-2.5.9-3.7,1.3,2.7-4.6,5.5-9.1,8.2-13.7.2-.2,0-.5-.3-.6C23.6,68.4,1.4,56.1,3.6,36c1.3-11.8,9.9-21.7,18.6-29.1.9-.8,1.9-1.6,2.8-2.3-8.2,10.3-15.1,23.6-9.8,36.6,3.6,8.7,11.4,14.8,19.6,19,1.9,1,3.9,1.9,6,2.6.3.3,1.1,0,1.3-.4,0,0,0-.2,0-.3-.6-4.9-1.2-9.8-1.8-14.7,3.1,2.9,6.3,5.8,9.4,8.7,5.9,5.4,11.7,10.8,17.6,16.2,1.1,1,2.3,2.1,3.4,3.1-4.4,1.6-8.8,3.1-13.2,4.7Z"></path></svg>			</div>
		</div>
						</div>
				</div>
					</div>
				</div>
				</div>
		<p>Cet article <a href="https://presentcomposedesign.fr/iartworks/">[ia]RTWORKS</a> est apparu en premier sur <a href="https://presentcomposedesign.fr">Présent Composé design</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
