{"id":15372,"date":"2026-09-15T13:47:03","date_gmt":"2026-09-15T11:47:03","guid":{"rendered":"https:\/\/www.ok3d.fr\/?page_id=15372"},"modified":"2026-09-25T20:45:02","modified_gmt":"2026-09-25T18:45:02","slug":"rives","status":"publish","type":"page","link":"https:\/\/www.ok3d.fr\/en\/projets\/rives\/","title":{"rendered":"Shores"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"15372\" class=\"elementor elementor-15372\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e62dd1c e-con-full e-flex e-con e-parent\" data-id=\"e62dd1c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-0039ac6 elementor-widget__width-inherit elementor-widget elementor-widget-html\" data-id=\"0039ac6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- OK3D \u00b7 MOD\u00c8LE 3D \u00b7 RIVES \u00b7 SANS HEADER \u00b7 SANS FOOTER \u00b7 SANS PROJET SUIVANT -->\r\n<div id=\"ok3d-project-rives\"><span id=\"ok3d-project-rives-top\"><\/span><a class=\"skip\" href=\"#ok3d-project-rives-main\">Aller au contenu<\/a>\r\n<main id=\"ok3d-project-rives-main\">\r\n<!-- 01 \u00b7 EN-T\u00caTE PROJET : titre, accroche et informations -->\r\n<section class=\"case-hero\"><div class=\"wrap\">\r\n<a class=\"case-back\" href=\"\/projets\/\">\u2190 Retour aux projets<\/a>\r\n<div class=\"case-heading\"><div><p class=\"kicker\">Projet \/ 3D &amp; motion<\/p><h1 class=\"case-title\">RIVES<span>.<\/span><\/h1><\/div><div class=\"case-summary\"><p class=\"case-lead\">Du produit \u00e0 l\u2019exp\u00e9rience.<br>Un film 3D pour donner envie de prendre le large.<\/p><a class=\"text-link\" href=\"#ok3d-project-rives-film\">D\u00e9couvrir le film <span aria-hidden=\"true\">\u2193<\/span><\/a><\/div><\/div>\r\n<dl class=\"case-meta\"><div><dt>Client<\/dt><dd>RIVES<\/dd><\/div><div><dt>Intervention<\/dt><dd>Mod\u00e9lisation \u00b7 Textures \u00b7 Animation 3D<\/dd><\/div><div><dt>Projet<\/dt><dd>Station paddle autonome<\/dd><\/div><div><dt>Livraison<\/dt><dd>Paysage \u00b7 Portrait<\/dd><\/div><\/dl>\r\n<!-- 02 \u00b7 FILM : vid\u00e9o principale YouTube -->\r\n<figure class=\"case-film\" id=\"ok3d-project-rives-film\"><iframe allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" allowfullscreen=\"\" loading=\"lazy\" referrerpolicy=\"strict-origin-when-cross-origin\" src=\"https:\/\/www.youtube-nocookie.com\/embed\/_TGaLLXHfUI?rel=0&amp;modestbranding=1\" title=\"RIVES \u2014 film\"><\/iframe><figcaption><span>RIVES \u2014 FILM 3D<\/span><a href=\"https:\/\/youtu.be\/_TGaLLXHfUI\" target=\"_blank\" rel=\"noopener noreferrer\">Ouvrir le film \u2197<\/a><\/figcaption><\/figure>\r\n<\/div><\/section>\r\n<!-- 03 \u00b7 CONTEXTE & ENJEU -->\r\n<section class=\"section wrap\" id=\"ok3d-project-rives-projet\"><div class=\"case-overview\"><div class=\"reveal\"><p class=\"kicker\">01 \/ Le projet<\/p><h2 class=\"case-h2\">Expliquer un service<br\/><span>par l\u2019image.<\/span><\/h2><\/div><div class=\"case-copy reveal\"><p>RIVES d\u00e9veloppe des stations autonomes de location de paddle en libre-service. Le film devait expliquer \u00e0 la fois le concept, les usages, la technologie de la station et l\u2019offre destin\u00e9e au d\u00e9veloppement du r\u00e9seau.<\/p><p>Les fichiers 3D industriels de la station, le storyboard, la narration, les \u00e9l\u00e9ments de marque et les propositions visuelles ont servi de base \u00e0 une production m\u00ealant animation 3D et motion design.<\/p><p>J\u2019ai r\u00e9alis\u00e9 la mod\u00e9lisation et les textures du paddle et de la pagaie, puis la mise en sc\u00e8ne, l\u2019\u00e9clairage et les rendus. Le travail se poursuit avec les transitions, le montage, l\u2019int\u00e9gration des s\u00e9quences film\u00e9es en studio et les d\u00e9clinaisons paysage et portrait.<\/p><div class=\"case-challenge\"><strong>L\u2019enjeu<\/strong><p>Rendre un produit technique imm\u00e9diatement compr\u00e9hensible sans perdre la dimension lifestyle et accessible de l\u2019exp\u00e9rience paddle.<\/p><\/div><\/div><\/div><\/section>\r\n<!-- MOD\u00c9LISATION & TEXTURES \u2014 ajouter ici vos rendus rapproch\u00e9s d\u00e8s qu\u2019ils sont disponibles. -->\r\n<section class=\"section rives-assets\"><div class=\"wrap\"><div class=\"section-head reveal\"><div><p class=\"kicker\">02 \/ La cr\u00e9ation des \u00e9quipements<\/p><h2>Donner forme.<br><span>Travailler la mati\u00e8re.<\/span><\/h2><\/div><p>Au-del\u00e0 de la station, le paddle et la pagaie font partie du travail de cr\u00e9ation 3D : des objets \u00e0 construire, \u00e0 texturer et \u00e0 int\u00e9grer au film.<\/p><\/div><div class=\"rives-assets-grid\"><article class=\"rives-asset reveal\"><div class=\"rives-material-visual\"><button type=\"button\" class=\"rives-material-zoom\" data-zoom data-rives-visual=\"paddle\" aria-label=\"Agrandir : Le paddle \u2014 vue d\u2019ensemble\"><img alt=\"RIVES \u2014 mod\u00e9lisation et textures du paddle\" loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.ok3d.fr\/wp-content\/uploads\/2026\/09\/visuel_paddle-1.webp\"><span class=\"rives-material-empty\" hidden><svg width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1\" aria-hidden=\"true\"><rect x=\"5\" y=\"5\" width=\"30\" height=\"30\" rx=\"3\"\/><path d=\"m5 28 9-9 7 7 5-5 9 10\"\/><circle cx=\"26\" cy=\"14\" r=\"3\"\/><\/svg><strong>Le paddle \u2014 vue d\u2019ensemble<\/strong><small>EMPLACEMENT DU VISUEL<\/small><\/span><span class=\"rives-material-expand\" aria-hidden=\"true\">\u2197<\/span><\/button><\/div><div class=\"rives-asset-heading\"><span>01 \/<\/span><span>MOD\u00c9LISATION & TEXTURES<\/span><\/div><h3>Le paddle.<\/h3><p>Un travail sur les volumes, les proportions et les surfaces pour donner au paddle sa pr\u00e9sence dans les sc\u00e8nes.<\/p><ul><li>Construction du mod\u00e8le 3D<\/li><li>Cr\u00e9ation et application des textures<\/li><li>R\u00e9glage des mat\u00e9riaux et de leur r\u00e9action \u00e0 la lumi\u00e8re<\/li><\/ul><\/article><article class=\"rives-asset reveal\"><div class=\"rives-material-visual\"><button type=\"button\" class=\"rives-material-zoom\" data-zoom data-rives-visual=\"pagaie\" aria-label=\"Agrandir : La pagaie \u2014 vue d\u2019ensemble\"><img alt=\"RIVES \u2014 mod\u00e9lisation et textures de la pagaie en carbone\" loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.ok3d.fr\/wp-content\/uploads\/2026\/09\/visuel_paddle_rames.webp\"><span class=\"rives-material-empty\" hidden><svg width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1\" aria-hidden=\"true\"><rect x=\"5\" y=\"5\" width=\"30\" height=\"30\" rx=\"3\"\/><path d=\"m5 28 9-9 7 7 5-5 9 10\"\/><circle cx=\"26\" cy=\"14\" r=\"3\"\/><\/svg><strong>La pagaie \u2014 vue d\u2019ensemble<\/strong><small>EMPLACEMENT DU VISUEL<\/small><\/span><span class=\"rives-material-expand\" aria-hidden=\"true\">\u2197<\/span><\/button><\/div><div class=\"rives-asset-heading\"><span>02 \/<\/span><span>MOD\u00c9LISATION & TEXTURES<\/span><\/div><h3>La pagaie carbone.<\/h3><p>La g\u00e9om\u00e9trie et les mati\u00e8res sont travaill\u00e9es ensemble pour restituer une pagaie en carbone, l\u00e9g\u00e8re et technique, coh\u00e9rente avec l\u2019univers visuel du produit.<\/p><ul><li>Mod\u00e9lisation des formes et des d\u00e9tails<\/li><li>Travail du mat\u00e9riau carbone et de ses finitions<\/li><li>Int\u00e9gration aux cadrages et \u00e0 l\u2019\u00e9clairage du film<\/li><\/ul><\/article><\/div><div class=\"rives-material-details\"><figure class=\"reveal\"><div class=\"rives-material-visual rives-material-detail\"><button type=\"button\" class=\"rives-material-zoom\" data-zoom data-rives-visual=\"texturePaddle\" aria-label=\"Agrandir : Texture du paddle\"><img alt=\"RIVES \u2014 d\u00e9tail des textures et de la surface du paddle\" loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.ok3d.fr\/wp-content\/uploads\/2026\/09\/visuel_paddle_textures.webp\"><span class=\"rives-material-empty\" hidden><svg width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1\" aria-hidden=\"true\"><rect x=\"5\" y=\"5\" width=\"30\" height=\"30\" rx=\"3\"\/><path d=\"m5 28 9-9 7 7 5-5 9 10\"\/><circle cx=\"26\" cy=\"14\" r=\"3\"\/><\/svg><strong>Texture du paddle<\/strong><small>EMPLACEMENT DU VISUEL<\/small><\/span><span class=\"rives-material-expand\" aria-hidden=\"true\">\u2197<\/span><\/button><\/div><figcaption><span>03 \/ TEXTURES<\/span><strong>La mati\u00e8re, de pr\u00e8s.<\/strong><p>Un cadrage rapproch\u00e9 pour montrer le travail des surfaces du paddle.<\/p><\/figcaption><\/figure><figure class=\"reveal\"><div class=\"rives-material-visual rives-material-detail\"><button type=\"button\" class=\"rives-material-zoom\" data-zoom data-rives-visual=\"detailPagaie\" aria-label=\"Agrandir : D\u00e9tail de la pagaie\"><img alt=\"RIVES \u2014 d\u00e9tail de la mod\u00e9lisation et des finitions de la pagaie en carbone\" loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.ok3d.fr\/wp-content\/uploads\/2026\/09\/visuel_paddle_rames_textures.webp\"><span class=\"rives-material-empty\" hidden><svg width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1\" aria-hidden=\"true\"><rect x=\"5\" y=\"5\" width=\"30\" height=\"30\" rx=\"3\"\/><path d=\"m5 28 9-9 7 7 5-5 9 10\"\/><circle cx=\"26\" cy=\"14\" r=\"3\"\/><\/svg><strong>D\u00e9tail de la pagaie carbone<\/strong><small>EMPLACEMENT DU VISUEL<\/small><\/span><span class=\"rives-material-expand\" aria-hidden=\"true\">\u2197<\/span><\/button><\/div><figcaption><span>04 \/ FINITIONS<\/span><strong>Le soin du d\u00e9tail.<\/strong><p>Une vue d\u00e9di\u00e9e aux formes, aux finitions et au rendu du carbone de la pagaie.<\/p><\/figcaption><\/figure><\/div><p class=\"rives-asset-note reveal\">Les fichiers industriels de la station ont \u00e9t\u00e9 fournis comme base de travail. La mod\u00e9lisation et les textures du paddle et de la pagaie compl\u00e8tent cette production.<\/p><\/div><\/section>\r\n<!-- FORMATS \u2014 vid\u00e9o portrait YouTube int\u00e9gr\u00e9e dans le t\u00e9l\u00e9phone. -->\r\n<section class=\"section wrap\" id=\"ok3d-project-rives-formats\"><div class=\"rives-formats-grid\"><div class=\"reveal\"><p class=\"kicker\">03 \/ Les d\u00e9clinaisons<\/p><h2 class=\"case-h2\">Un m\u00eame r\u00e9cit.<br><span>Un autre cadre.<\/span><\/h2><p class=\"rives-formats-lead\">Le film a \u00e9t\u00e9 d\u00e9clin\u00e9 en paysage et en portrait pour accompagner diff\u00e9rents modes de diffusion.<\/p><div class=\"rives-format-row\"><span class=\"rives-ratio rives-ratio-wide\" aria-hidden=\"true\"><\/span><div><h3>Paysage<\/h3><p>Un cadre large pour d\u00e9couvrir la station, son environnement et le fonctionnement du service.<\/p><a class=\"text-link\" href=\"#ok3d-project-rives-film\">Voir le film paysage \u2191<\/a><\/div><\/div><div class=\"rives-format-row\"><span class=\"rives-ratio rives-ratio-tall\" aria-hidden=\"true\"><\/span><div><h3>Portrait<\/h3><p>Une version verticale pour prolonger la pr\u00e9sentation du projet sur les \u00e9crans mobiles.<\/p><\/div><\/div><p class=\"rives-format-note\">Deux formats de livraison, une m\u00eame continuit\u00e9 visuelle entre la 3D, le motion design et le montage.<\/p><\/div><figure class=\"rives-phone-figure reveal\"><div class=\"rives-phone\"><div class=\"rives-portrait-player\" data-rives-portrait><div class=\"rives-portrait-placeholder\"><span>RIVES \/ FILM PRODUIT<\/span><strong>Le mouvement.<br>En vertical.<\/strong><span class=\"rives-format-symbol\" aria-hidden=\"true\">\u2195<\/span><p>Version portrait<br><small>Vid\u00e9o \u00e0 int\u00e9grer<\/small><\/p><\/div><\/div><\/div><figcaption>RIVES \u2014 D\u00c9CLINAISON PORTRAIT<\/figcaption><a class=\"text-link\" data-rives-portrait-link hidden target=\"_blank\" rel=\"noopener noreferrer\">Ouvrir le film portrait \u2197<\/a><\/figure><\/div><\/section>\r\n\r\n\r\n<!-- 05 \u00b7 R\u00c9ALISATION : expliquer votre r\u00f4le avec des \u00e9l\u00e9ments v\u00e9rifi\u00e9s -->\r\n<section class=\"section wrap\"><div class=\"case-craft\"><div class=\"reveal\"><p class=\"kicker\">04 \/ La r\u00e9alisation<\/p><h2 class=\"case-h2\">De l\u2019intention<br\/><span>\u00e0 la livraison.<\/span><\/h2><p class=\"subtext\">Une production qui relie la cr\u00e9ation des \u00e9quipements, la mise en sc\u00e8ne du service et les finitions du film.<\/p><\/div><ol class=\"case-process\"><li class=\"reveal\"><span>01<\/span><div><h3>Cr\u00e9er les \u00e9quipements.<\/h3><p>Mod\u00e9liser le paddle et la pagaie, travailler leurs textures et leurs mat\u00e9riaux pour les int\u00e9grer \u00e0 l\u2019univers du film.<\/p><\/div><\/li><li class=\"reveal\"><span>02<\/span><div><h3>Mettre la station en sc\u00e8ne.<\/h3><p>Exploiter les fichiers 3D fournis et construire des cadrages qui rendent le produit et ses fonctions lisibles.<\/p><\/div><\/li><li class=\"reveal\"><span>03<\/span><div><h3>Relier usage et technologie.<\/h3><p>Associer animation 3D, motion design et s\u00e9quences studio pour raconter le fonctionnement sans surcharger le film.<\/p><\/div><\/li><li class=\"reveal\"><span>04<\/span><div><h3>D\u00e9cliner la campagne.<\/h3><p>Finaliser le montage puis produire des versions adapt\u00e9es aux formats paysage et portrait.<\/p><\/div><\/li><\/ol><\/div><div class=\"case-delivery reveal\"><div><h3>Un film produit pens\u00e9 pour plusieurs usages.<\/h3><p class=\"subtext\">Des \u00e9quipements mod\u00e9lis\u00e9s aux films finalis\u00e9s, une production adapt\u00e9e aux diff\u00e9rents supports.<\/p><\/div><div><ul aria-label=\"Livrables\"><li>Mod\u00e9lisation paddle &amp; pagaie<\/li><li>Textures &amp; mat\u00e9riaux<\/li><li>Animation 3D<\/li><li>Motion design<\/li><li>Montage complet<\/li><li>Exports portrait &amp; paysage<\/li><\/ul><\/div><\/div><\/section>\r\n<section class=\"portfolio-cta\"><div class=\"wrap\"><div><p class=\"kicker\">Votre prochain projet<\/p><h2>Un projet \u00e0 r\u00e9v\u00e9ler ?<br\/><span class=\"accent-line\">Donnons-lui vie.<\/span><\/h2><p>Parlons de votre univers, de vos objectifs et de la meilleure fa\u00e7on de les transformer en images, en mouvement ou en exp\u00e9rience.<\/p><\/div><a class=\"btn btn-primary\" href=\"\/3d-animation\/#ok3d-3d-contact\">Parlons de votre projet <span aria-hidden=\"true\" class=\"arrow\">\u2197<\/span><\/a><\/div><\/section>\r\n<\/main>\r\n<dialog aria-labelledby=\"ok3d-project-rives-image-title\" class=\"case-lightbox\"><div class=\"lightbox-top\"><p data-image-title=\"\" id=\"ok3d-project-rives-image-title\"><\/p><button aria-label=\"Fermer l\u2019image\" data-close=\"\" type=\"button\">\u00d7<\/button><\/div><img alt=\"\" data-full-image=\"\"\/><\/dialog><\/div>\r\n<style>\r\n@import url('https:\/\/fonts.googleapis.com\/css2?family=Manrope:wght@400;500;600;700;800&family=Space+Grotesk:wght@400;500;600;700&display=swap');\r\n\r\n#ok3d-project-rives{--bg:#080a10;--surface:#0e111a;--text:#f1f3fa;--muted:#a1a8ba;--line:#ffffff20;--blue:#648cff;--font:'Manrope',Arial,sans-serif;--display:'Space Grotesk',Arial,sans-serif;--gutter:clamp(22px,5vw,88px);position:relative;width:100%;max-width:none!important;margin:0!important;background:var(--bg);color:var(--text);font-family:var(--font);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;overflow:clip}\r\n#ok3d-project-rives,#ok3d-project-rives *{box-sizing:border-box}\r\n#ok3d-project-rives img{max-width:none}\r\n#ok3d-project-rives button,#ok3d-project-rives input,#ok3d-project-rives select,#ok3d-project-rives textarea{font-family:inherit}\r\n\/* Force the Elementor HTML widget\/container to span full width when possible. *\/\r\n.elementor-widget-html:has(#ok3d-project-rives),.elementor-widget-html:has(#ok3d-project-rives) .elementor-widget-container{width:100%;max-width:none!important}\r\n\r\n\r\n#ok3d-project-rives{--bg:#080a10;--surface:#0e111a;--text:#f1f3fa;--muted:#a1a8ba;--line:#ffffff20;--blue:#648cff;--font:\"Manrope\",Arial,sans-serif;--display:\"Space Grotesk\",Arial,sans-serif;--gutter:clamp(22px,5vw,88px)}\r\n#ok3d-project-rives *{box-sizing:border-box}#ok3d-project-rives{scroll-behavior:smooth;scroll-padding-top:100px}#ok3d-project-rives{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}#ok3d-project-rives.locked{overflow:hidden}#ok3d-project-rives button,#ok3d-project-rives input,#ok3d-project-rives select,#ok3d-project-rives textarea{font:inherit}#ok3d-project-rives button,#ok3d-project-rives a{-webkit-tap-highlight-color:transparent}#ok3d-project-rives button{cursor:pointer}#ok3d-project-rives a{color:inherit;text-decoration:none}#ok3d-project-rives button{color:inherit}#ok3d-project-rives img{display:block;width:100%;height:auto}#ok3d-project-rives ::selection{background:#648cff;color:#080a10}#ok3d-project-rives :focus-visible{outline:2px solid #90adff;outline-offset:6px}#ok3d-project-rives h1,#ok3d-project-rives h2,#ok3d-project-rives h3,#ok3d-project-rives p{margin:0}#ok3d-project-rives h1,#ok3d-project-rives h2,#ok3d-project-rives h3{font-family:var(--display);font-weight:500}#ok3d-project-rives button:disabled{cursor:wait;opacity:.65}#ok3d-project-rives .wrap{width:min(100%,1600px);margin:auto;padding-inline:var(--gutter)}#ok3d-project-rives .section{padding-block:112px}#ok3d-project-rives .kicker{font-size:13px;text-transform:uppercase;letter-spacing:.14em;display:flex;align-items:center;gap:14px;color:var(--muted)}#ok3d-project-rives .kicker::before{content:\"\";width:22px;height:1px;background:var(--blue)}#ok3d-project-rives .blue{color:var(--blue)}#ok3d-project-rives .arrow{font-size:24px;line-height:1;display:inline-block;transition:transform .25s}#ok3d-project-rives .btn{display:inline-flex;justify-content:center;align-items:center;gap:30px;min-height:54px;padding:14px 24px;border:1px solid var(--line);border-radius:4px;background:transparent;color:var(--text);font-size:14px;font-weight:700;transition:background .25s,border-color .25s,transform .25s}#ok3d-project-rives .btn:hover{border-color:var(--blue);background:#648cff10}#ok3d-project-rives .btn:hover .arrow{transform:translate(3px,-3px)}#ok3d-project-rives .btn-primary{background:#537fff;border-color:#537fff;color:#fff}#ok3d-project-rives .btn-primary:hover{background:#6d92ff;border-color:#6d92ff}#ok3d-project-rives .text-link{display:inline-flex;align-items:center;gap:20px;font-size:14px;border-bottom:1px solid var(--line);padding-bottom:8px}#ok3d-project-rives .text-link:hover{color:var(--blue)}#ok3d-project-rives .skip{position:fixed;left:20px;top:-100px;z-index:100;background:var(--text);color:var(--bg);padding:10px}#ok3d-project-rives .skip:focus{top:15px}\r\n#ok3d-project-rives .header{position:absolute;top:0;left:0;width:100%;z-index:20;border-bottom:1px solid var(--line)}#ok3d-project-rives .header-inner{display:flex;align-items:center;justify-content:space-between;height:94px;gap:24px}#ok3d-project-rives .logo{font-family:var(--display);font-size:34px;font-weight:700;letter-spacing:-3px;line-height:1}#ok3d-project-rives .logo span{color:var(--blue)}#ok3d-project-rives .logo b{display:inline-block;width:7px;height:7px;background:var(--blue);margin-left:5px}#ok3d-project-rives .nav{display:flex;gap:34px;align-items:center}#ok3d-project-rives .nav a{font-size:14px;color:#c4cad8;transition:color .2s}#ok3d-project-rives .nav a:hover{color:#fff}#ok3d-project-rives .header-contact{font-size:14px;border:1px solid #ffffff40;padding:10px 18px;border-radius:3px}#ok3d-project-rives .menu-toggle{display:none;background:transparent;border:1px solid var(--line);padding:8px 13px;font-size:14px}\r\n#ok3d-project-rives .hero{position:relative;min-height:850px;min-height:min(940px,100svh);overflow:hidden;isolation:isolate;border-bottom:1px solid var(--line);background:#0a0d18}#ok3d-project-rives .hero-media{position:absolute;inset:0;z-index:-3}#ok3d-project-rives .hero-media video{width:100%;height:100%;object-fit:cover;object-position:center}#ok3d-project-rives .hero::before{content:\"\";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(5,8,17,.94),rgba(5,8,17,.76) 40%,rgba(5,8,17,.13) 78%),linear-gradient(0deg,#080a10 0%,transparent 36%,#080a1055)}#ok3d-project-rives .hero::after{content:\"\";position:absolute;inset:94px 0 0;z-index:-1;background:linear-gradient(90deg,transparent calc(75% - 1px),#ffffff0b 75%,transparent calc(75% + 1px));pointer-events:none}#ok3d-project-rives .hero-body{padding-top:clamp(165px,19vh,230px);padding-bottom:165px}#ok3d-project-rives .hero .kicker{color:#c5cfe6;margin-bottom:28px}#ok3d-project-rives .hero h1{font-size:clamp(60px,7.5vw,116px);letter-spacing:-.065em;line-height:1.02;max-width:1000px}#ok3d-project-rives .hero h1 em{font-style:normal;color:#92acff}#ok3d-project-rives .hero-copy{max-width:470px;color:#bdc5d6;margin-top:30px;font-size:17px;line-height:1.8}#ok3d-project-rives .hero-actions{display:flex;gap:28px;align-items:center;margin-top:34px}#ok3d-project-rives .reel-trigger{display:inline-flex;gap:13px;align-items:center;background:transparent;border:0;font-size:14px;padding:10px 0}#ok3d-project-rives .play{display:grid;place-items:center;width:40px;height:40px;border:1px solid #ffffff55;border-radius:50%;font-size:12px;padding-left:2px}#ok3d-project-rives .reel-trigger:hover .play{background:var(--blue);border-color:var(--blue)}#ok3d-project-rives .hero-bottom{position:absolute;bottom:0;width:100%;padding-block:24px;display:flex;justify-content:space-between;align-items:end}#ok3d-project-rives .hero-signature{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#b4bed0;display:flex;gap:20px}#ok3d-project-rives .hero-signature span+span{border-left:1px solid #ffffff40;padding-left:20px}#ok3d-project-rives .hero-controls{display:flex;align-items:center;gap:22px;font-size:12px;color:#b4bed0}#ok3d-project-rives .pause{border:1px solid #ffffff35;background:#080a1055;border-radius:50%;height:36px;width:36px;font-size:13px}#ok3d-project-rives .scroll-link{font-size:13px;display:flex;gap:14px;align-items:center}#ok3d-project-rives .hero-index{position:absolute;right:var(--gutter);top:47%;writing-mode:vertical-rl;color:#d4ddf0;letter-spacing:.13em;font-size:12px}\r\n#ok3d-project-rives .clients{padding-block:34px;border-bottom:1px solid var(--line)}#ok3d-project-rives .clients-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}#ok3d-project-rives .clients-label{font-size:12px;color:var(--muted);max-width:115px;line-height:1.7}#ok3d-project-rives .client-list{display:flex;align-items:center;justify-content:space-between;flex:1;gap:30px}#ok3d-project-rives .client-list span{font-family:var(--display);font-size:23px;font-weight:600;letter-spacing:-.04em;color:#bec3cf}#ok3d-project-rives .client-list .kiprun{font-style:italic;letter-spacing:-.08em}#ok3d-project-rives .client-list .obvious{font-size:19px;letter-spacing:-.04em}#ok3d-project-rives .client-list .laposte{font-size:20px;font-style:italic}\r\n#ok3d-project-rives .section-head{display:flex;justify-content:space-between;align-items:end;gap:36px;margin-bottom:46px}#ok3d-project-rives .section-head h2,#ok3d-project-rives .about h2,#ok3d-project-rives .contact h2{font-size:clamp(40px,4.5vw,66px);letter-spacing:-.055em;line-height:1.08;margin-top:20px}#ok3d-project-rives .section-head h2 span{color:var(--muted)}#ok3d-project-rives .works{padding-bottom:106px}#ok3d-project-rives .project-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:46px 28px}#ok3d-project-rives .project:first-child{grid-column:1\/-1}#ok3d-project-rives .project-media{position:relative;overflow:hidden;aspect-ratio:16\/10;background:var(--surface);border:1px solid var(--line);border-radius:6px;display:block;width:100%;padding:0;text-align:left}#ok3d-project-rives .project:first-child .project-media{aspect-ratio:2.2}#ok3d-project-rives .project-media img{height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1),filter .5s;filter:saturate(.92)}#ok3d-project-rives .project-media:hover img{transform:scale(1.035);filter:saturate(1.1)}#ok3d-project-rives .project:first-child .project-media img{object-position:50% 48%}#ok3d-project-rives .project:nth-child(2) .project-media img{object-position:50% 40%}#ok3d-project-rives .project-label{position:absolute;left:22px;top:22px;padding:7px 12px;font-size:12px;background:#080a10b8;border:1px solid #ffffff30;border-radius:3px;backdrop-filter:blur(12px)}#ok3d-project-rives .project-play{position:absolute;right:22px;bottom:22px;width:54px;height:54px;display:grid;place-items:center;border:1px solid #ffffff70;border-radius:50%;background:#080a1055;backdrop-filter:blur(10px);font-size:14px;transition:background .2s}#ok3d-project-rives .project-media:hover .project-play{background:#537fff}#ok3d-project-rives .project-info{padding-top:18px;display:flex;justify-content:space-between;align-items:start;gap:15px}#ok3d-project-rives .project-info h3{font-size:25px;letter-spacing:-.045em}#ok3d-project-rives .project-info p{font-size:14px;color:var(--muted);margin-top:4px}#ok3d-project-rives .project-number{font-family:var(--display);font-size:13px;color:var(--muted);padding-top:7px}#ok3d-project-rives .work-footer{display:flex;justify-content:center;margin-top:48px}\r\n#ok3d-project-rives .expertise{border-block:1px solid var(--line);background:var(--surface)}#ok3d-project-rives .expertise .section-head>p{max-width:350px;color:var(--muted)}#ok3d-project-rives .service{border-top:1px solid var(--line);display:grid;grid-template-columns:70px 1fr 1fr;gap:35px;padding:38px 0;transition:background .25s}#ok3d-project-rives .service:last-child{border-bottom:1px solid var(--line)}#ok3d-project-rives .service-num{color:var(--blue);font-family:var(--display);font-size:14px;padding-top:6px}#ok3d-project-rives .service h3{font-size:clamp(28px,3vw,40px);line-height:1.2;letter-spacing:-.045em}#ok3d-project-rives .service p{color:var(--muted);max-width:480px;font-size:16px}#ok3d-project-rives .tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}#ok3d-project-rives .tags span{border:1px solid var(--line);padding:4px 10px;border-radius:3px;font-size:12px;color:#c0c7d7}#ok3d-project-rives .service-title small{display:block;margin-top:12px;color:#8292ba;font-size:13px;font-weight:400}\r\n#ok3d-project-rives .about-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:100px;align-items:start}#ok3d-project-rives .about h2{margin-bottom:28px}#ok3d-project-rives .about-copy>p{color:#b6bed0;font-size:18px;line-height:1.9;max-width:640px}#ok3d-project-rives .about-copy>p+p{margin-top:18px;font-size:16px;color:var(--muted)}#ok3d-project-rives .signature{display:flex;align-items:center;gap:17px;margin-top:30px}#ok3d-project-rives .initials{width:51px;height:51px;display:grid;place-items:center;background:#152244;border:1px solid #648cff55;border-radius:50%;font-family:var(--display);color:#b2c6ff}#ok3d-project-rives .signature strong{display:block;font-size:16px;font-weight:600}#ok3d-project-rives .signature small{font-size:13px;color:var(--muted)}#ok3d-project-rives .stats{display:grid;grid-template-columns:repeat(3,1fr);margin-top:68px;border-block:1px solid var(--line);padding-block:28px}#ok3d-project-rives .stat{padding-inline:30px;border-right:1px solid var(--line)}#ok3d-project-rives .stat:first-child{padding-left:0}#ok3d-project-rives .stat:last-child{border:0}#ok3d-project-rives .stat strong{font-family:var(--display);font-weight:500;font-size:48px;letter-spacing:-.06em;display:block;line-height:1.2}#ok3d-project-rives .stat strong span{color:var(--blue)}#ok3d-project-rives .stat p{font-size:13px;color:var(--muted);margin-top:8px}#ok3d-project-rives .tool-list{display:flex;gap:12px 25px;flex-wrap:wrap;align-items:center;margin-top:30px;font-size:13px;color:#c0c7d7}#ok3d-project-rives .tool-list>span:first-child{color:var(--muted);margin-right:auto}\r\n#ok3d-project-rives .method{padding-top:0}#ok3d-project-rives .method-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}#ok3d-project-rives .step{border-top:1px solid var(--line);padding-top:22px}#ok3d-project-rives .step>span{font-family:var(--display);color:var(--blue);font-size:13px}#ok3d-project-rives .step h3{font-size:23px;letter-spacing:-.03em;margin-top:22px}#ok3d-project-rives .step p{font-size:14px;color:var(--muted);margin-top:12px;line-height:1.8}\r\n#ok3d-project-rives .contact{border-top:1px solid #ffffff25;background:radial-gradient(ellipse at 0% 100%,#14234d 0,transparent 65%),#0e131f}#ok3d-project-rives .contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}#ok3d-project-rives .contact h2{font-size:clamp(44px,5vw,76px);margin-bottom:28px}#ok3d-project-rives .contact-intro>p{color:var(--muted);max-width:400px}#ok3d-project-rives .email-link{display:inline-flex;align-items:center;gap:24px;margin-top:34px;font-family:var(--display);font-size:clamp(21px,2.2vw,30px);border-bottom:1px solid #648cff70;padding-bottom:8px}#ok3d-project-rives .contact-note{display:block;margin-top:35px;font-size:13px;color:#aeb9d0}#ok3d-project-rives .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px 22px}#ok3d-project-rives .field{display:flex;flex-direction:column;gap:8px}#ok3d-project-rives .field.full{grid-column:1\/-1}#ok3d-project-rives .field label{font-size:13px;color:#c7cfdf}#ok3d-project-rives .field input,#ok3d-project-rives .field select,#ok3d-project-rives .field textarea{width:100%;border:0;border-bottom:1px solid #ffffff35;border-radius:0;background:transparent;color:var(--text);padding:10px 0 14px;outline-offset:5px;min-width:0;font-size:16px}#ok3d-project-rives .field input::placeholder,#ok3d-project-rives .field textarea::placeholder{color:#838fa7}#ok3d-project-rives .field select{color:#c7cfdf}#ok3d-project-rives .field select option{background:#101622;color:var(--text)}#ok3d-project-rives .field textarea{resize:vertical;min-height:105px}#ok3d-project-rives .form-submit{margin-top:28px;display:flex;align-items:center;gap:24px}#ok3d-project-rives .form-submit small{color:#aeb9d0;font-size:12px}#ok3d-project-rives .form-status{margin-top:14px;font-size:14px;color:#c0cfff}#ok3d-project-rives .form-status.error{color:#ffc1bf}#ok3d-project-rives .honeypot{position:absolute;left:-9999px;opacity:0}#ok3d-project-rives .form-privacy{font-size:12px;color:#9ba8c1;margin-top:18px}\r\n#ok3d-project-rives .video-dialog{background:#080a10;color:var(--text);border:1px solid #ffffff40;width:min(1120px,94vw);max-width:none;padding:0;border-radius:7px;overflow:visible}#ok3d-project-rives .video-dialog::backdrop{background:#02040bec;backdrop-filter:blur(14px)}#ok3d-project-rives .dialog-head{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;gap:20px}#ok3d-project-rives .dialog-head p{font-size:14px}#ok3d-project-rives .dialog-close{border:1px solid var(--line);background:transparent;min-width:40px;min-height:40px;font-size:22px}#ok3d-project-rives .dialog-player{aspect-ratio:16\/9;background:black}#ok3d-project-rives .dialog-player iframe,#ok3d-project-rives .dialog-player video{width:100%;height:100%;border:0;display:block}#ok3d-project-rives .dialog-fallback{font-size:13px;color:var(--muted);padding:13px 20px}#ok3d-project-rives .dialog-fallback a{text-decoration:underline}#ok3d-project-rives .reveal{transition:opacity .65s,transform .65s}#ok3d-project-rives .reveal.pending{opacity:0;transform:translateY(22px)}\r\n@media(min-width:1700px){#ok3d-project-rives .hero-bottom{max-width:1600px;left:50%;transform:translateX(-50%)}}\r\n@media(max-width:1000px){#ok3d-project-rives .hero h1{font-size:clamp(60px,9vw,100px)}#ok3d-project-rives .hero{min-height:820px}#ok3d-project-rives .hero-index{display:none}#ok3d-project-rives .nav{gap:20px}#ok3d-project-rives .about-grid,#ok3d-project-rives .contact-grid{gap:45px}#ok3d-project-rives .service{grid-template-columns:45px 1fr 1.1fr;gap:20px}#ok3d-project-rives .client-list{flex-wrap:wrap;justify-content:center;gap:20px 35px}#ok3d-project-rives .method-grid{grid-template-columns:1fr 1fr}#ok3d-project-rives .clients-inner{gap:25px}#ok3d-project-rives .section{padding-block:85px}#ok3d-project-rives .method{padding-top:0}#ok3d-project-rives .client-list span{font-size:20px}}\r\n@media(max-width:700px){#ok3d-project-rives .header-inner{height:78px}#ok3d-project-rives .logo{font-size:31px}#ok3d-project-rives .header-contact{display:none}#ok3d-project-rives .menu-toggle{display:block}#ok3d-project-rives .nav{display:none;position:absolute;top:78px;left:0;right:0;background:#0b101ded;border-bottom:1px solid var(--line);padding:25px var(--gutter);backdrop-filter:blur(18px);flex-direction:column;align-items:stretch;gap:0}#ok3d-project-rives .nav.open{display:flex}#ok3d-project-rives .nav a{font-size:17px;padding:12px 0}#ok3d-project-rives .hero{min-height:810px;min-height:max(810px,100svh)}#ok3d-project-rives .hero-body{padding-top:156px;padding-bottom:180px}#ok3d-project-rives .hero h1{font-size:clamp(52px,11.4vw,79px);letter-spacing:-.065em}#ok3d-project-rives .hero-copy{font-size:16px;max-width:350px}#ok3d-project-rives .hero .kicker{font-size:11px;letter-spacing:.1em}#ok3d-project-rives .hero-actions{gap:20px;flex-wrap:wrap}#ok3d-project-rives .hero-actions .btn{gap:20px;padding-inline:19px}#ok3d-project-rives .hero::before{background:linear-gradient(90deg,#050811d9,#05081170),linear-gradient(0deg,#080a10,transparent 60%)}#ok3d-project-rives .hero-media video{object-position:60% center;opacity:.75}#ok3d-project-rives .hero-bottom{align-items:center;padding-block:22px;gap:20px}#ok3d-project-rives .hero-signature{display:block;font-size:11px;line-height:1.9}#ok3d-project-rives .hero-signature span{display:block}#ok3d-project-rives .hero-signature span+span{border:0;padding:0}#ok3d-project-rives .hero-controls{gap:16px}#ok3d-project-rives .scroll-link{display:none}#ok3d-project-rives .clients{padding-block:25px}#ok3d-project-rives .clients-inner{display:block}#ok3d-project-rives .clients-label{max-width:none;text-align:center;margin-bottom:20px}#ok3d-project-rives .client-list{gap:18px 25px}#ok3d-project-rives .client-list span{font-size:20px}#ok3d-project-rives .client-list .obvious{font-size:17px}#ok3d-project-rives .section{padding-block:65px}#ok3d-project-rives .section-head{display:block;margin-bottom:30px}#ok3d-project-rives .section-head .text-link{margin-top:25px}#ok3d-project-rives .section-head h2,#ok3d-project-rives .about h2{font-size:43px}#ok3d-project-rives .section-head>p{margin-top:22px}#ok3d-project-rives .project-grid{grid-template-columns:1fr;gap:30px}#ok3d-project-rives .project:first-child{grid-column:auto}#ok3d-project-rives .project:first-child .project-media,#ok3d-project-rives .project-media{aspect-ratio:4\/3}#ok3d-project-rives .project:first-child .project-media img{object-position:center}#ok3d-project-rives .project-info h3{font-size:24px}#ok3d-project-rives .project-label{left:15px;top:15px;font-size:11px}#ok3d-project-rives .project-play{right:15px;bottom:15px;width:44px;height:44px}#ok3d-project-rives .service{grid-template-columns:25px 1fr;gap:14px;padding-block:30px}#ok3d-project-rives .service-description{grid-column:2}#ok3d-project-rives .service h3{font-size:31px}#ok3d-project-rives .service-title small{margin-top:8px}#ok3d-project-rives .service p{font-size:15px}#ok3d-project-rives .about-grid,#ok3d-project-rives .contact-grid{grid-template-columns:1fr;gap:32px}#ok3d-project-rives .about-copy>p{font-size:17px}#ok3d-project-rives .stats{margin-top:35px}#ok3d-project-rives .stat{padding-inline:15px}#ok3d-project-rives .stat strong{font-size:37px}#ok3d-project-rives .stat p{font-size:12px}#ok3d-project-rives .tool-list{gap:12px 20px}#ok3d-project-rives .tool-list>span:first-child{width:100%}#ok3d-project-rives .method{padding-top:0}#ok3d-project-rives .method-grid{gap:28px 22px}#ok3d-project-rives .step h3{font-size:22px}#ok3d-project-rives .step p{font-size:14px}#ok3d-project-rives .contact h2{font-size:53px}#ok3d-project-rives .contact-note{margin-top:23px}#ok3d-project-rives .contact-grid{gap:45px}#ok3d-project-rives .form-grid{gap:24px 18px}#ok3d-project-rives .form-submit{align-items:start;flex-direction:column;gap:12px}#ok3d-project-rives .form-submit .btn{width:100%;justify-content:space-between}#ok3d-project-rives .video-dialog{width:96vw}#ok3d-project-rives .dialog-head{padding:10px 12px}#ok3d-project-rives .dialog-player{aspect-ratio:4\/3}#ok3d-project-rives .dialog-fallback{padding:10px 12px}}\r\n@media(prefers-reduced-motion:reduce){#ok3d-project-rives{scroll-behavior:auto}#ok3d-project-rives *,#ok3d-project-rives *::before,#ok3d-project-rives *::after{animation:none!important;transition:none!important}#ok3d-project-rives .reveal.pending{opacity:1;transform:none}}\r\n\r\n\/* V2 \u2014 trois exp\u00e9riences, une m\u00eame direction artistique. *\/\r\n@keyframes gem-levitate{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}\r\n@keyframes wire-reveal{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}\r\n#ok3d-project-rives .gem-stage.in-view .gem-object{animation:gem-levitate 6s ease-in-out infinite}\r\n#ok3d-project-rives .gem-stage.draw-in .gem-wire .gw{stroke-dasharray:1;animation:wire-reveal 1.8s ease both}\r\n\r\n#ok3d-project-rives .expertise{background:#0b0e16;position:relative;overflow:hidden}#ok3d-project-rives .interactive-services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}#ok3d-project-rives .experience-card{min-width:0;position:relative;border:1px solid #ffffff20;border-radius:9px;background:linear-gradient(160deg,#141b2b,#0c111d 65%);overflow:hidden;transition:border-color .4s,box-shadow .4s}#ok3d-project-rives .experience-card:hover,#ok3d-project-rives .experience-card:focus-within{border-color:#648cff75;box-shadow:0 20px 55px #0004}#ok3d-project-rives .experience-top{padding:20px 23px;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:12px;letter-spacing:.08em;color:#b1bed6}#ok3d-project-rives .experience-symbol{font-size:24px;color:#8daaff;line-height:1}#ok3d-project-rives .service-stage{height:315px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 50%,#23346755,transparent 70%);border-block:1px solid #ffffff0b}#ok3d-project-rives .stage-corner{position:absolute;top:14px;left:18px;font-size:10px;letter-spacing:.14em;color:#9caac7;z-index:3}#ok3d-project-rives .gem-stage{background:linear-gradient(#648cff09 1px,transparent 1px),linear-gradient(90deg,#648cff09 1px,transparent 1px),radial-gradient(ellipse at 50% 60%,#263b7255,transparent 70%);background-size:28px 28px,28px 28px,100% 100%}#ok3d-project-rives .gem-object{position:absolute;left:calc(50% - 122px);top:35px;width:244px;height:244px;transform:translateY(0)}#ok3d-project-rives .gem-object svg{display:block;width:244px;height:244px}#ok3d-project-rives .gem-wire{position:absolute;inset:0}#ok3d-project-rives .gem-wire .gw{fill:none;stroke:#8eaafa;stroke-width:.55}#ok3d-project-rives .gem-wire .gv{fill:#b5caff;stroke:#0b101c;stroke-width:.45;r:1.15}#ok3d-project-rives .gem-wire .gs{display:none}#ok3d-project-rives .gem-render{position:absolute;inset:0;clip-path:inset(0 0 0 var(--split));filter:drop-shadow(0 8px 16px #4674ff30)}#ok3d-project-rives .gem-solid .gf-hi{fill:url(#chrome-high)}#ok3d-project-rives .gem-solid .gf-lo{fill:url(#chrome-low)}#ok3d-project-rives .gem-solid .gw{fill:none;stroke:#c0d4ff;stroke-width:.35;opacity:.7}#ok3d-project-rives .gem-solid .gv{display:none}#ok3d-project-rives .compare-line{position:absolute;top:38px;bottom:36px;left:calc(50% - 122px + 244px * var(--split-number,.52));width:1px;background:linear-gradient(transparent,#d5e2ff 20%,#d5e2ff 80%,transparent);pointer-events:none}#ok3d-project-rives .compare-line span{position:absolute;top:50%;left:0;transform:translate(-50%,-50%);width:28px;height:28px;display:grid;place-items:center;border:1px solid #d5e2ff;background:#19284b;border-radius:50%;color:#e4eeff;font-size:14px}#ok3d-project-rives .compare-labels{position:absolute;bottom:15px;left:20px;right:20px;display:flex;justify-content:space-between;color:#8ea1c8;font-size:10px;letter-spacing:.12em}#ok3d-project-rives .experience-control{padding:13px 22px;min-height:65px;border-bottom:1px solid #ffffff14;display:flex;align-items:center;gap:16px}#ok3d-project-rives .experience-control label{font-size:12px;color:#adbad3;white-space:nowrap}#ok3d-project-rives .experience-control input{width:100%;min-width:40px;accent-color:#8aa8ff;cursor:ew-resize;height:24px}#ok3d-project-rives .segmented{justify-content:center;gap:5px}#ok3d-project-rives .segmented button{border:1px solid transparent;background:transparent;padding:6px 16px;border-radius:4px;color:#a7b5cf;font-size:13px;min-height:36px;transition:background .25s,color .25s,border-color .25s}#ok3d-project-rives .segmented button[aria-pressed=\"true\"]{background:#7296ff18;color:#dce7ff;border-color:#89a7ff45}#ok3d-project-rives .segmented button:hover{color:white;background:#7296ff12}#ok3d-project-rives .experience-copy{padding:27px 24px 0}#ok3d-project-rives .experience-copy h3{font-size:clamp(26px,2.55vw,39px);line-height:1.13;letter-spacing:-.055em}#ok3d-project-rives .experience-copy p{font-size:15px;line-height:1.85;color:#a8b5cd;margin-top:20px;min-height:84px}#ok3d-project-rives .experience-copy .tags{gap:6px;min-height:62px;margin-top:18px;align-content:start}#ok3d-project-rives .experience-copy .tags span{font-size:11px;padding:3px 7px;height:max-content}#ok3d-project-rives .experience-link{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #ffffff1c;padding:20px 0;font-size:14px;margin-top:20px}#ok3d-project-rives .experience-link span{font-size:22px;color:#8aa8ff;transition:transform .25s}#ok3d-project-rives .experience-link:hover{color:#9eb8ff}#ok3d-project-rives .experience-link:hover span{transform:translate(3px,-3px)}\r\n#ok3d-project-rives .brand-stage{background:radial-gradient(ellipse at 50% 50%,#3a448333,transparent 65%)}#ok3d-project-rives .brand-symbol{position:absolute;inset:36px 0 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:25px;transition:opacity .45s,transform .65s}#ok3d-project-rives .brand-symbol img{width:162px;filter:invert(1) drop-shadow(0 0 28px #739bff40)}#ok3d-project-rives .brand-symbol>span{font-family:var(--display);font-size:18px;letter-spacing:.27em;color:#a8bbdf}#ok3d-project-rives .brand-universe{position:absolute;inset:50px 21px 24px;display:grid;grid-template-columns:1.15fr 1fr;grid-template-rows:1fr 38px .7fr;gap:8px;opacity:0;transform:translateY(20px) scale(.94);transition:opacity .45s,transform .6s;pointer-events:none}#ok3d-project-rives .brand-tile{border-radius:3px;overflow:hidden}#ok3d-project-rives .brand-primary{grid-row:span 3;background:#6389ff;padding:18px;display:flex;flex-direction:column;justify-content:space-between}#ok3d-project-rives .brand-primary img{width:70px}#ok3d-project-rives .brand-primary>span{font-family:var(--display);font-weight:600;font-size:clamp(16px,1.5vw,22px);line-height:1.16;letter-spacing:-.055em;color:#0b1434}#ok3d-project-rives .brand-type{background:#eef1ff;color:#172444;padding:8px 13px;display:flex;align-items:center;justify-content:space-between;gap:7px}#ok3d-project-rives .brand-type strong{font-family:var(--display);font-size:51px;font-weight:500;letter-spacing:-.07em}#ok3d-project-rives .brand-type span{font-size:7px;letter-spacing:.07em;max-width:48px}#ok3d-project-rives .brand-swatches{display:flex;gap:0}#ok3d-project-rives .brand-swatches i{flex:1;background:#648cff}#ok3d-project-rives .brand-swatches i:nth-child(2){background:#b6c8ff}#ok3d-project-rives .brand-swatches i:nth-child(3){background:#e9efff}#ok3d-project-rives .brand-swatches i:nth-child(4){background:#273c6c}#ok3d-project-rives .brand-note{background:#1b2743;padding:11px 14px;font-size:15px;font-family:var(--display);line-height:1.2;letter-spacing:-.025em}#ok3d-project-rives .brand-note span{display:block;font-family:var(--font);font-size:7px;margin-top:10px;letter-spacing:.07em;color:#9baed5}#ok3d-project-rives .brand-stage[data-brand=\"universe\"] .brand-symbol{opacity:0;transform:scale(.78) rotate(-8deg);pointer-events:none}#ok3d-project-rives .brand-stage[data-brand=\"universe\"] .brand-universe{opacity:1;transform:none}#ok3d-project-rives .brand-stage[data-brand=\"universe\"] .brand-tile{animation:brand-arrive .6s both}#ok3d-project-rives .brand-stage[data-brand=\"universe\"] .brand-type{animation-delay:.08s}#ok3d-project-rives .brand-stage[data-brand=\"universe\"] .brand-swatches{animation-delay:.16s}#ok3d-project-rives .brand-stage[data-brand=\"universe\"] .brand-note{animation-delay:.24s}@keyframes brand-arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}\r\n#ok3d-project-rives .web-stage{display:flex;justify-content:center;align-items:center;padding:45px 20px 20px;background:radial-gradient(ellipse at 50% 80%,#25305c70,transparent 75%)}#ok3d-project-rives .demo-browser{width:100%;max-width:355px;border:1px solid #8ca3d655;border-radius:7px;background:#080d17;box-shadow:0 16px 40px #0008;overflow:hidden;transition:width .7s cubic-bezier(.2,.8,.2,1),border-radius .7s}#ok3d-project-rives .demo-chrome{height:23px;display:flex;justify-content:space-between;align-items:center;padding-inline:10px;background:#1b253b;color:#99a8c7;font-size:8px}#ok3d-project-rives .demo-chrome>span:first-child{font-size:6px;letter-spacing:1px;color:#758aaf}#ok3d-project-rives .demo-page{height:202px;overflow:hidden}#ok3d-project-rives .demo-nav{height:33px;padding:0 14px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ffffff18}#ok3d-project-rives .demo-nav>strong{font-family:var(--display);font-size:14px;letter-spacing:-1px}#ok3d-project-rives .demo-nav>strong span{color:#8aa8ff}#ok3d-project-rives .demo-nav-links{font-size:7px;color:#aab5ca}#ok3d-project-rives .demo-hamburger{display:none;font-size:11px}#ok3d-project-rives .demo-hero{height:143px;position:relative;isolation:isolate;padding:13px 15px}#ok3d-project-rives .demo-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}#ok3d-project-rives .demo-hero::before{content:\"\";position:absolute;inset:0;background:linear-gradient(90deg,#060b16ed,#060b1688);z-index:-1}#ok3d-project-rives .demo-hero>div{display:flex;flex-direction:column;align-items:start}#ok3d-project-rives .demo-hero small{font-size:6px;letter-spacing:.12em;color:#b9c9e9;margin-bottom:7px}#ok3d-project-rives .demo-hero strong{font-family:var(--display);font-size:25px;line-height:.98;letter-spacing:-.07em;font-weight:500}#ok3d-project-rives .demo-hero em{color:#a0b7ff;font-style:normal}#ok3d-project-rives .demo-cta{font-size:6px;background:#527df4;color:#fff;padding:4px 7px;margin-top:9px;border-radius:2px}#ok3d-project-rives .demo-bottom{display:flex;justify-content:space-between;gap:3px;font-size:5px;letter-spacing:.04em;padding:8px 13px;color:#b4c1dc}#ok3d-project-rives .web-stage[data-device=\"mobile\"] .demo-browser{width:142px;border-radius:16px}#ok3d-project-rives .web-stage[data-device=\"mobile\"] .demo-chrome{height:21px;font-size:6px}#ok3d-project-rives .web-stage[data-device=\"mobile\"] .demo-nav-links{display:none}#ok3d-project-rives .web-stage[data-device=\"mobile\"] .demo-hamburger{display:block}#ok3d-project-rives .web-stage[data-device=\"mobile\"] .demo-page{height:220px}#ok3d-project-rives .web-stage[data-device=\"mobile\"] .demo-nav{padding-inline:12px}#ok3d-project-rives .web-stage[data-device=\"mobile\"] .demo-hero{height:161px;padding:17px 12px}#ok3d-project-rives .web-stage[data-device=\"mobile\"] .demo-hero strong{font-size:26px}#ok3d-project-rives .web-stage[data-device=\"mobile\"] .demo-hero small{font-size:5px}#ok3d-project-rives .web-stage[data-device=\"mobile\"] .demo-cta{margin-top:13px}#ok3d-project-rives .web-stage[data-device=\"mobile\"] .demo-bottom{font-size:4px;padding-inline:10px}\r\n#ok3d-project-rives .project-preview{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .55s;background:#0c101a}#ok3d-project-rives .project-preview.visible{opacity:1}#ok3d-project-rives .project-preview iframe{position:absolute;inset:0;width:100%;height:100%;border:0;pointer-events:none}#ok3d-project-rives .project-play,#ok3d-project-rives .project-label{z-index:2}#ok3d-project-rives .project-media .project-label{transition:background .3s}#ok3d-project-rives .project-media.preview-playing .project-label{background:#172b57dc}#ok3d-project-rives .project-media.preview-playing .project-play{background:#537fffaa}#ok3d-project-rives .method-grid{position:relative;--method-progress:0}#ok3d-project-rives .method-grid::before{content:\"\";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,#4264c2,#a6bfff);transform:scaleX(var(--method-progress));transform-origin:left;box-shadow:0 0 12px #729cff77;transition:transform .18s linear}#ok3d-project-rives .step{position:relative}#ok3d-project-rives .step::before{content:\"\";position:absolute;top:-4px;left:0;width:7px;height:7px;border-radius:50%;background:#283858;border:1px solid #8095c150;transition:background .35s,box-shadow .35s}#ok3d-project-rives .step.current::before,#ok3d-project-rives .step.passed::before{background:#9dbbff;box-shadow:0 0 14px #739fffaa}#ok3d-project-rives .step h3{transition:color .35s}#ok3d-project-rives .step.current h3{color:#9ab6ff}#ok3d-project-rives .step>span{transition:color .35s}#ok3d-project-rives .step.current>span{color:#c0d1ff}#ok3d-project-rives .hero h1{animation:hero-enter 1.1s cubic-bezier(.2,.8,.2,1) both}#ok3d-project-rives .hero .hero-copy{animation:hero-enter 1.1s .12s both}#ok3d-project-rives .hero .hero-actions{animation:hero-enter 1.1s .24s both}@keyframes hero-enter{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}\r\n@media(min-width:1100px){#ok3d-project-rives .experience-card:hover .brand-symbol{transform:translateY(-5px)}#ok3d-project-rives .experience-card:hover .brand-stage[data-brand=\"universe\"] .brand-symbol{transform:scale(.78) rotate(-8deg)}}\r\n@media(max-width:1100px) and (min-width:701px){#ok3d-project-rives .interactive-services{gap:12px}#ok3d-project-rives .experience-top{padding:17px 15px;font-size:10px;letter-spacing:.035em}#ok3d-project-rives .experience-copy{padding-inline:17px}#ok3d-project-rives .service-stage{height:285px}#ok3d-project-rives .gem-object{top:25px}#ok3d-project-rives .experience-control{padding-inline:12px;gap:8px;flex-wrap:wrap}#ok3d-project-rives .experience-control label{font-size:11px}#ok3d-project-rives .experience-control input{flex:1;min-width:50px}#ok3d-project-rives .segmented button{font-size:11px;padding-inline:10px}#ok3d-project-rives .experience-copy p{font-size:14px;min-height:124px}#ok3d-project-rives .experience-copy .tags{min-height:85px}#ok3d-project-rives .brand-universe{inset:50px 12px 22px;gap:6px;grid-template-columns:1fr 1fr}#ok3d-project-rives .brand-primary{padding:12px}#ok3d-project-rives .brand-primary img{width:50px}#ok3d-project-rives .brand-primary>span{font-size:16px}#ok3d-project-rives .brand-type{padding:9px}#ok3d-project-rives .brand-type strong{font-size:38px}#ok3d-project-rives .brand-type span{display:none}#ok3d-project-rives .brand-note{font-size:12px;padding:10px}#ok3d-project-rives .web-stage{padding-inline:12px}}\r\n@media(max-width:700px){#ok3d-project-rives .interactive-services{grid-template-columns:1fr;gap:24px}#ok3d-project-rives .experience-top{font-size:12px;padding:20px 22px}#ok3d-project-rives .service-stage{height:300px}#ok3d-project-rives .gem-object{top:26px}#ok3d-project-rives .experience-copy{padding:25px 24px 0}#ok3d-project-rives .experience-copy h3{font-size:36px}#ok3d-project-rives .experience-copy p{min-height:0;font-size:16px}#ok3d-project-rives .experience-copy .tags{min-height:0;margin-bottom:24px}#ok3d-project-rives .experience-link{margin-top:20px}#ok3d-project-rives .brand-universe{inset:47px 30px 23px}#ok3d-project-rives .brand-primary>span{font-size:23px}#ok3d-project-rives .brand-type strong{font-size:60px}#ok3d-project-rives .brand-note{font-size:17px}#ok3d-project-rives .web-stage{padding-inline:28px}#ok3d-project-rives .method-grid::before{display:none}#ok3d-project-rives .step.current{border-top-color:#88a8ff}#ok3d-project-rives .experience-control label{font-size:13px}#ok3d-project-rives .segmented button{font-size:14px;min-height:40px}}\r\n@media(prefers-reduced-motion:reduce){#ok3d-project-rives .hero h1,#ok3d-project-rives .hero .hero-copy,#ok3d-project-rives .hero .hero-actions{animation:none}#ok3d-project-rives .experience-card:hover .brand-symbol{transform:none}#ok3d-project-rives .gem-object{transform:none!important}#ok3d-project-rives .method-grid::before{transform:scaleX(1)}}\r\n\r\n\r\n\r\n\r\n\/* =========================================================\r\n   ELEMENTOR \/ HELLO HARDENING \u2014 V2\r\n   Force la typographie, les tailles et les couleurs du design\r\n   m\u00eame si Elementor ou le th\u00e8me applique ses propres styles.\r\n   ========================================================= *\/\r\n#ok3d-project-rives,\r\n#ok3d-project-rives input,\r\n#ok3d-project-rives textarea,\r\n#ok3d-project-rives select,\r\n#ok3d-project-rives button,\r\n#ok3d-project-rives a,\r\n#ok3d-project-rives p,\r\n#ok3d-project-rives span,\r\n#ok3d-project-rives small,\r\n#ok3d-project-rives label,\r\n#ok3d-project-rives strong,\r\n#ok3d-project-rives em {\r\n  font-family: var(--font) !important;\r\n}\r\n\r\n#ok3d-project-rives h1,\r\n#ok3d-project-rives h2,\r\n#ok3d-project-rives h3,\r\n#ok3d-project-rives .logo,\r\n#ok3d-project-rives .client-list span,\r\n#ok3d-project-rives .project-number,\r\n#ok3d-project-rives .service-num,\r\n#ok3d-project-rives .stat strong,\r\n#ok3d-project-rives .step > span,\r\n#ok3d-project-rives .brand-symbol > span,\r\n#ok3d-project-rives .brand-primary > span,\r\n#ok3d-project-rives .brand-type strong,\r\n#ok3d-project-rives .brand-note,\r\n#ok3d-project-rives .demo-nav > strong,\r\n#ok3d-project-rives .demo-hero strong {\r\n  font-family: var(--display) !important;\r\n}\r\n\r\n#ok3d-project-rives { color: var(--text) !important; font-size:16px !important; line-height:1.65 !important; }\r\n#ok3d-project-rives h1,#ok3d-project-rives h2,#ok3d-project-rives h3,#ok3d-project-rives p { margin:0 !important; padding:0; }\r\n#ok3d-project-rives h1,#ok3d-project-rives h2,#ok3d-project-rives h3 { color:var(--text) !important; font-weight:500 !important; text-transform:none !important; }\r\n#ok3d-project-rives p { color:inherit; }\r\n#ok3d-project-rives a { color:inherit !important; text-decoration:none !important; }\r\n#ok3d-project-rives button { color:inherit !important; }\r\n\r\n\/* Header *\/\r\n#ok3d-project-rives .logo { font-size:34px !important; line-height:1 !important; font-weight:700 !important; letter-spacing:-3px !important; color:var(--text) !important; }\r\n#ok3d-project-rives .logo span { color:var(--blue) !important; }\r\n#ok3d-project-rives .nav a { font-size:14px !important; line-height:1.4 !important; color:#c4cad8 !important; font-weight:400 !important; }\r\n#ok3d-project-rives .nav a:hover { color:#fff !important; }\r\n#ok3d-project-rives .header-contact { font-size:14px !important; color:var(--text) !important; }\r\n\r\n\/* Hero *\/\r\n#ok3d-project-rives .hero .kicker { font-size:13px !important; line-height:1.4 !important; letter-spacing:.14em !important; color:#c5cfe6 !important; font-weight:400 !important; }\r\n#ok3d-project-rives .hero h1 { font-size:clamp(60px,7.5vw,116px) !important; line-height:1.02 !important; letter-spacing:-.065em !important; color:var(--text) !important; font-weight:500 !important; }\r\n#ok3d-project-rives .hero h1 em { color:#92acff !important; font-style:normal !important; font-family:var(--display) !important; }\r\n#ok3d-project-rives .hero-copy { font-size:17px !important; line-height:1.8 !important; color:#bdc5d6 !important; font-weight:400 !important; }\r\n#ok3d-project-rives .btn { font-size:14px !important; line-height:1.4 !important; font-weight:700 !important; color:var(--text) !important; }\r\n#ok3d-project-rives .btn-primary { color:#fff !important; }\r\n#ok3d-project-rives .reel-trigger { font-size:14px !important; color:var(--text) !important; }\r\n#ok3d-project-rives .hero-signature { font-size:12px !important; line-height:1.65 !important; color:#b4bed0 !important; }\r\n#ok3d-project-rives .hero-controls,#ok3d-project-rives .scroll-link,#ok3d-project-rives .hero-index { color:#b4bed0 !important; }\r\n#ok3d-project-rives .hero-index { color:#d4ddf0 !important; font-size:12px !important; }\r\n\r\n\/* Clients \/ titres de sections *\/\r\n#ok3d-project-rives .clients-label { font-size:12px !important; line-height:1.7 !important; color:var(--muted) !important; }\r\n#ok3d-project-rives .client-list span { font-size:23px !important; line-height:1.2 !important; font-weight:600 !important; color:#bec3cf !important; }\r\n#ok3d-project-rives .client-list .obvious { font-size:19px !important; }\r\n#ok3d-project-rives .client-list .laposte { font-size:20px !important; }\r\n#ok3d-project-rives .section-head h2,#ok3d-project-rives .about h2,#ok3d-project-rives .contact h2 { font-size:clamp(40px,4.5vw,66px) !important; line-height:1.08 !important; letter-spacing:-.055em !important; color:var(--text) !important; }\r\n#ok3d-project-rives .section-head h2 span { color:var(--muted) !important; font-family:var(--display) !important; }\r\n#ok3d-project-rives .kicker { font-size:13px !important; color:var(--muted) !important; }\r\n\r\n\/* Projets *\/\r\n#ok3d-project-rives .project-label { font-size:12px !important; line-height:1.4 !important; color:var(--text) !important; }\r\n#ok3d-project-rives .project-info h3 { font-size:25px !important; line-height:1.2 !important; letter-spacing:-.045em !important; color:var(--text) !important; }\r\n#ok3d-project-rives .project-info p { font-size:14px !important; line-height:1.65 !important; color:var(--muted) !important; }\r\n#ok3d-project-rives .project-number { font-size:13px !important; color:var(--muted) !important; }\r\n\r\n\/* Expertises *\/\r\n#ok3d-project-rives .experience-top { color:#b1bed6 !important; }\r\n#ok3d-project-rives .experience-copy h3 { color:var(--text) !important; font-size:clamp(26px,2.55vw,39px) !important; line-height:1.13 !important; letter-spacing:-.055em !important; }\r\n#ok3d-project-rives .experience-copy p { font-size:15px !important; line-height:1.85 !important; color:#a8b5cd !important; }\r\n#ok3d-project-rives .tags span { font-size:12px !important; line-height:1.4 !important; color:#c0c7d7 !important; }\r\n#ok3d-project-rives .experience-copy .tags span { font-size:11px !important; }\r\n#ok3d-project-rives .experience-link { font-size:14px !important; color:var(--text) !important; }\r\n#ok3d-project-rives .experience-link:hover { color:#9eb8ff !important; }\r\n#ok3d-project-rives .experience-control label { color:#adbad3 !important; }\r\n#ok3d-project-rives .segmented button { color:#a7b5cf !important; }\r\n#ok3d-project-rives .segmented button[aria-pressed=\"true\"] { color:#dce7ff !important; }\r\n\r\n\/* Studio *\/\r\n#ok3d-project-rives .about-copy > p { font-size:18px !important; line-height:1.9 !important; color:#b6bed0 !important; }\r\n#ok3d-project-rives .about-copy > p + p { font-size:16px !important; color:var(--muted) !important; }\r\n#ok3d-project-rives .signature strong { font-size:16px !important; color:var(--text) !important; }\r\n#ok3d-project-rives .signature small { font-size:13px !important; color:var(--muted) !important; }\r\n#ok3d-project-rives .stat strong { font-size:48px !important; line-height:1.2 !important; font-weight:500 !important; color:var(--text) !important; }\r\n#ok3d-project-rives .stat strong span { color:var(--blue) !important; font-family:var(--display) !important; }\r\n#ok3d-project-rives .stat p { font-size:13px !important; color:var(--muted) !important; }\r\n#ok3d-project-rives .tool-list { font-size:13px !important; color:#c0c7d7 !important; }\r\n#ok3d-project-rives .tool-list > span:first-child { color:var(--muted) !important; }\r\n\r\n\/* M\u00e9thode *\/\r\n#ok3d-project-rives .step > span { font-size:13px !important; color:var(--blue) !important; }\r\n#ok3d-project-rives .step h3 { font-size:23px !important; line-height:1.2 !important; color:var(--text) !important; }\r\n#ok3d-project-rives .step p { font-size:14px !important; line-height:1.8 !important; color:var(--muted) !important; }\r\n\r\n\/* Contact \/ formulaire *\/\r\n#ok3d-project-rives .contact h2 { font-size:clamp(44px,5vw,76px) !important; }\r\n#ok3d-project-rives .contact-intro > p { color:var(--muted) !important; }\r\n#ok3d-project-rives .email-link { font-family:var(--display) !important; font-size:clamp(21px,2.2vw,30px) !important; color:var(--text) !important; }\r\n#ok3d-project-rives .contact-note { font-size:13px !important; color:#aeb9d0 !important; }\r\n#ok3d-project-rives .field label { font-size:13px !important; color:#c7cfdf !important; }\r\n#ok3d-project-rives .field input,#ok3d-project-rives .field select,#ok3d-project-rives .field textarea { font-size:16px !important; line-height:1.4 !important; color:var(--text) !important; background:transparent !important; }\r\n#ok3d-project-rives .field input::placeholder,#ok3d-project-rives .field textarea::placeholder { color:#838fa7 !important; opacity:1 !important; }\r\n#ok3d-project-rives .form-submit small,#ok3d-project-rives .form-privacy { color:#aeb9d0 !important; }\r\n\r\n\/* Footer *\/\r\n#ok3d-project-rives .footer-tagline { font-size:14px !important; color:var(--muted) !important; }\r\n#ok3d-project-rives .footer-bottom { font-size:12px !important; color:var(--muted) !important; }\r\n\r\n\/* Mobile : r\u00e9applique les valeurs originales avec !important *\/\r\n@media(max-width:700px){\r\n  #ok3d-project-rives .logo{font-size:31px !important}\r\n  #ok3d-project-rives .nav a{font-size:17px !important}\r\n  #ok3d-project-rives .hero h1{font-size:clamp(52px,11.4vw,79px) !important}\r\n  #ok3d-project-rives .hero-copy{font-size:16px !important}\r\n  #ok3d-project-rives .hero .kicker{font-size:11px !important}\r\n  #ok3d-project-rives .client-list span{font-size:20px !important}\r\n  #ok3d-project-rives .client-list .obvious{font-size:17px !important}\r\n  #ok3d-project-rives .section-head h2,#ok3d-project-rives .about h2{font-size:43px !important}\r\n  #ok3d-project-rives .project-info h3{font-size:24px !important}\r\n  #ok3d-project-rives .project-label{font-size:11px !important}\r\n  #ok3d-project-rives .experience-copy h3{font-size:36px !important}\r\n  #ok3d-project-rives .experience-copy p{font-size:16px !important}\r\n  #ok3d-project-rives .about-copy>p{font-size:17px !important}\r\n  #ok3d-project-rives .stat strong{font-size:37px !important}\r\n  #ok3d-project-rives .stat p{font-size:12px !important}\r\n  #ok3d-project-rives .step h3{font-size:22px !important}\r\n  #ok3d-project-rives .contact h2{font-size:53px !important}\r\n  \r\n}\r\n\r\n\r\n\r\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\n   HEADER + BOUTONS \u2014 finition premium \/ plus vivante\r\n   \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\r\n#ok3d-project-rives .header{\r\n  position:fixed!important;\r\n  top:0;left:0;width:100%;\r\n  z-index:80;\r\n  background:linear-gradient(180deg,rgba(8,10,16,.18),rgba(8,10,16,0));\r\n  border-bottom:1px solid rgba(255,255,255,.12);\r\n  transition:background .35s ease,border-color .35s ease,box-shadow .35s ease,backdrop-filter .35s ease;\r\n}\r\n#ok3d-project-rives .header.is-scrolled{\r\n  background:rgba(8,10,16,.72);\r\n  -webkit-backdrop-filter:blur(18px) saturate(145%);\r\n  backdrop-filter:blur(18px) saturate(145%);\r\n  border-bottom-color:rgba(100,140,255,.22);\r\n  box-shadow:0 10px 34px rgba(0,0,0,.18),0 1px 0 rgba(100,140,255,.06) inset;\r\n}\r\n#ok3d-project-rives .header-inner{transition:height .3s ease}\r\n#ok3d-project-rives .header.is-scrolled .header-inner{height:82px}\r\n\r\n\/* vrai logo : m\u00eame pr\u00e9sence que l'ancien mot-symbole *\/\r\n#ok3d-project-rives .logo{display:flex;align-items:center;flex-shrink:0;line-height:1}\r\n#ok3d-project-rives .logo img{display:block;width:auto;height:34px;max-width:none;object-fit:contain;transition:transform .3s ease,filter .3s ease}\r\n#ok3d-project-rives .logo:hover img{transform:translateY(-1px);filter:drop-shadow(0 0 12px rgba(100,140,255,.16))}\r\n\r\n\/* navigation : soulignement bleu anim\u00e9, tr\u00e8s discret *\/\r\n#ok3d-project-rives .nav a{position:relative;padding:10px 0;transition:color .25s ease}\r\n#ok3d-project-rives .nav a::after{\r\n  content:\"\";position:absolute;left:0;right:0;bottom:3px;height:1px;\r\n  background:linear-gradient(90deg,transparent,var(--blue),transparent);\r\n  transform:scaleX(0);transform-origin:center;opacity:.85;\r\n  transition:transform .28s cubic-bezier(.2,.8,.2,1);\r\n}\r\n#ok3d-project-rives .nav a:hover::after,#ok3d-project-rives .nav a:focus-visible::after{transform:scaleX(1)}\r\n\r\n\/* CTA du header : plus premium sans devenir flashy *\/\r\n#ok3d-project-rives .header-contact{\r\n  position:relative;overflow:hidden;\r\n  border-color:rgba(130,164,255,.38);\r\n  background:linear-gradient(135deg,rgba(100,140,255,.10),rgba(100,140,255,.025));\r\n  box-shadow:inset 0 0 0 1px rgba(255,255,255,.025);\r\n  transition:transform .28s ease,border-color .28s ease,background .28s ease,box-shadow .28s ease;\r\n}\r\n#ok3d-project-rives .header-contact::before{\r\n  content:\"\";position:absolute;inset:-60% auto -60% -35%;width:28%;\r\n  background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent);\r\n  transform:skewX(-18deg) translateX(-220%);transition:transform .65s ease;pointer-events:none;\r\n}\r\n#ok3d-project-rives .header-contact:hover{\r\n  transform:translateY(-1px);\r\n  border-color:rgba(132,166,255,.72);\r\n  background:linear-gradient(135deg,rgba(100,140,255,.17),rgba(100,140,255,.045));\r\n  box-shadow:0 8px 28px rgba(48,78,166,.12),inset 0 0 0 1px rgba(255,255,255,.035);\r\n}\r\n#ok3d-project-rives .header-contact:hover::before{transform:skewX(-18deg) translateX(620%)}\r\n\r\n\/* boutons : plus de mati\u00e8re et micro-mouvement *\/\r\n#ok3d-project-rives .btn{position:relative;overflow:hidden;isolation:isolate;transition:transform .28s ease,border-color .28s ease,background .28s ease,box-shadow .28s ease}\r\n#ok3d-project-rives .btn::before{\r\n  content:\"\";position:absolute;inset:0;z-index:-1;\r\n  background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,.10) 48%,transparent 75%);\r\n  transform:translateX(-130%);transition:transform .55s ease;\r\n}\r\n#ok3d-project-rives .btn:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(0,0,0,.16)}\r\n#ok3d-project-rives .btn:hover::before{transform:translateX(130%)}\r\n#ok3d-project-rives .btn-primary{box-shadow:0 8px 24px rgba(83,127,255,.14)}\r\n#ok3d-project-rives .btn-primary:hover{box-shadow:0 12px 34px rgba(83,127,255,.25)}\r\n#ok3d-project-rives .btn .arrow{transition:transform .3s cubic-bezier(.2,.8,.2,1)}\r\n#ok3d-project-rives .btn:hover .arrow{transform:translate(4px,-4px)}\r\n\r\n\/* lien texte : accent anim\u00e9 au lieu d'un simple changement de couleur *\/\r\n#ok3d-project-rives .text-link{position:relative;border-bottom-color:rgba(255,255,255,.18)}\r\n#ok3d-project-rives .text-link::after{content:\"\";position:absolute;left:0;bottom:-1px;width:100%;height:1px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .3s ease}\r\n#ok3d-project-rives .text-link:hover::after{transform:scaleX(1)}\r\n\r\n@media(max-width:1000px){\r\n  #ok3d-project-rives .logo img{height:33px}\r\n}\r\n@media(max-width:700px){\r\n  #ok3d-project-rives .logo img{height:31px}\r\n  #ok3d-project-rives .header.is-scrolled .header-inner{height:72px}\r\n  #ok3d-project-rives .header .nav{top:78px}\r\n  #ok3d-project-rives .header.is-scrolled .nav{top:72px}\r\n  #ok3d-project-rives .nav a::after{display:none}\r\n}\r\n@media(prefers-reduced-motion:reduce){\r\n  #ok3d-project-rives .header,#ok3d-project-rives .header-inner,#ok3d-project-rives .logo img,#ok3d-project-rives .nav a::after,#ok3d-project-rives .header-contact,#ok3d-project-rives .header-contact::before,#ok3d-project-rives .btn,#ok3d-project-rives .btn::before{transition:none!important}\r\n}\r\n\r\n#ok3d-project-rives [hidden]{display:none!important}\r\n#ok3d-project-rives [id]{scroll-margin-top:112px}\r\n#ok3d-project-rives{overflow:clip;isolation:isolate}\r\n#ok3d-project-rives .header{background:#080a10b8!important;backdrop-filter:blur(12px)}\r\n#ok3d-project-rives .header .logo img{width:auto!important;height:34px!important;max-width:145px!important}\r\n#ok3d-project-rives .nav{gap:25px}\r\n#ok3d-project-rives .nav a[aria-current=\"page\"]{color:#a8bfff!important}\r\n#ok3d-project-rives .nav a[aria-current=\"page\"]::after{transform:scaleX(1)}\r\n#ok3d-project-rives .header-inner{min-height:82px}\r\n#ok3d-project-rives .menu-toggle{min-height:42px;padding-inline:15px}\r\n#ok3d-project-rives .accent-line{color:#92acff!important;font-family:var(--display)!important}\r\n#ok3d-project-rives .subtext{color:#aebbd2!important;font-size:17px!important;line-height:1.85!important;margin-top:24px!important;max-width:600px}\r\n#ok3d-project-rives .expert-hero{padding:170px 0 70px;position:relative;overflow:hidden;border-bottom:1px solid var(--line);background:radial-gradient(ellipse at 83% 25%,#23376355,transparent 65%)}\r\n#ok3d-project-rives .expert-hero-inner{display:grid;grid-template-columns:1.05fr 1fr;gap:65px;align-items:center}\r\n#ok3d-project-rives .expert-title{font-size:clamp(52px,5.65vw,84px)!important;line-height:1.04!important;letter-spacing:-.065em!important;margin-top:24px!important;overflow-wrap:normal}\r\n#ok3d-project-rives .expert-actions{display:flex;flex-wrap:wrap;gap:15px;align-items:center;margin-top:32px}\r\n#ok3d-project-rives .expert-visual{min-width:0;position:relative;border:1px solid #ffffff25;border-radius:7px;background:#0d1423;overflow:hidden;box-shadow:0 25px 75px #0004}\r\n#ok3d-project-rives .visual-header{display:flex;justify-content:space-between;gap:15px;padding:14px 19px;border-bottom:1px solid #ffffff16;font-size:12px;color:#9eafd0}\r\n#ok3d-project-rives .visual-header span{font-size:12px!important;letter-spacing:.07em}\r\n#ok3d-project-rives .expert-picture{height:405px;position:relative;background:#111828;overflow:hidden;display:flex;align-items:center;justify-content:center}\r\n#ok3d-project-rives .expert-picture img{width:100%;height:100%;object-fit:cover;transition:opacity .3s,transform .7s}\r\n#ok3d-project-rives .expert-picture img.contain{object-fit:contain;padding:25px}\r\n#ok3d-project-rives .visual-tabs{display:flex;flex-wrap:wrap;gap:5px;justify-content:center;border-top:1px solid #ffffff17;padding:12px}\r\n#ok3d-project-rives .visual-tabs button{background:transparent;border:1px solid transparent;border-radius:3px;padding:8px 13px;font-size:13px;min-height:39px;color:#aebeda!important}\r\n#ok3d-project-rives .visual-tabs button[aria-pressed=\"true\"]{background:#6e93ff18;border-color:#91acff42;color:#e2ebff!important}\r\n#ok3d-project-rives .visual-caption{padding:16px 19px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:13px;color:#c5d3ed}\r\n#ok3d-project-rives .visual-caption button{background:none;border:0;padding:4px;color:#aac1ff!important;font-size:13px}\r\n#ok3d-project-rives .expert-strip{display:flex;gap:25px;flex-wrap:wrap;padding-top:38px;color:#9aacce;font-size:12px;letter-spacing:.08em}\r\n#ok3d-project-rives .expert-strip span+span{border-left:1px solid #ffffff25;padding-left:25px}\r\n#ok3d-project-rives .section-head h2{margin-top:18px!important}\r\n#ok3d-project-rives .section-head>p{max-width:370px;color:#aebbd2!important;font-size:16px;line-height:1.85}\r\n#ok3d-project-rives .offer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;border-top:1px solid var(--line)}\r\n#ok3d-project-rives .offer{padding:32px 25px 10px 0;min-width:0}\r\n#ok3d-project-rives .offer .offer-number{font-family:var(--display)!important;color:#90aeff;font-size:13px}\r\n#ok3d-project-rives .offer h3{font-size:29px!important;line-height:1.18!important;letter-spacing:-.045em!important;margin-top:27px!important}\r\n#ok3d-project-rives .offer p{font-size:16px!important;line-height:1.8!important;color:#a7b5ce!important;margin-top:17px!important}\r\n#ok3d-project-rives .offer ul{list-style:none;margin:22px 0 0;padding:0}\r\n#ok3d-project-rives .offer li{border-top:1px solid #ffffff14;padding:9px 0;color:#becbe0;font-size:14px;line-height:1.6}\r\n#ok3d-project-rives .selected-section{background:#0d121d;border-block:1px solid #ffffff18}\r\n#ok3d-project-rives .selected-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}\r\n#ok3d-project-rives .selected-card{min-width:0;border:1px solid #ffffff1a;border-radius:5px;background:#0a0f19;overflow:hidden;transition:border-color .3s,transform .3s}\r\n#ok3d-project-rives .selected-card:hover{border-color:#8faeff88;transform:translateY(-4px)}\r\n#ok3d-project-rives .selected-card a{display:block;height:100%}\r\n#ok3d-project-rives .selected-media{height:275px;position:relative;background:#151e2e;overflow:hidden}\r\n#ok3d-project-rives .selected-media img{width:100%;height:100%;object-fit:cover;transition:transform .7s}\r\n#ok3d-project-rives .selected-media.contain img{object-fit:contain;padding:24px}\r\n#ok3d-project-rives .selected-card:hover img{transform:scale(1.035)}\r\n#ok3d-project-rives .selected-media span{position:absolute;bottom:15px;right:15px;background:#080e1bc9;border:1px solid #ffffff65;border-radius:50%;width:40px;height:40px;display:grid;place-items:center;color:white}\r\n#ok3d-project-rives .selected-copy{padding:22px}\r\n#ok3d-project-rives .selected-copy small{color:#9bb1d9;font-size:12px;line-height:1.65;display:block}\r\n#ok3d-project-rives .selected-copy h3{font-size:25px!important;line-height:1.2!important;letter-spacing:-.04em!important;margin-top:10px!important}\r\n#ok3d-project-rives .selected-copy p{color:#9eadc6!important;font-size:14px!important;line-height:1.75!important;margin-top:12px!important}\r\n#ok3d-project-rives .approach-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:85px;align-items:start}\r\n#ok3d-project-rives .approach-heading{position:sticky;top:125px}\r\n#ok3d-project-rives .approach-heading h2{font-size:clamp(36px,4vw,56px)!important;line-height:1.09!important;letter-spacing:-.055em!important;margin-top:22px!important}\r\n#ok3d-project-rives .approach-step{display:grid;grid-template-columns:40px 1fr;gap:23px;border-top:1px solid #ffffff24;padding:26px 0}\r\n#ok3d-project-rives .approach-step>span{font-size:13px;color:#8faeff;font-family:var(--display)!important;padding-top:4px}\r\n#ok3d-project-rives .approach-step h3{font-size:25px!important;line-height:1.25!important;letter-spacing:-.035em!important}\r\n#ok3d-project-rives .approach-step p{font-size:15px!important;line-height:1.85!important;color:#a5b5ce!important;margin-top:10px!important}\r\n#ok3d-project-rives .contact h2{margin-top:22px!important;margin-bottom:25px!important}\r\n#ok3d-project-rives .contact-intro>p:not(.kicker){font-size:16px!important;line-height:1.85!important;color:#a9b9d3!important}\r\n#ok3d-project-rives .form-grid{gap:26px 22px}\r\n#ok3d-project-rives .field input,#ok3d-project-rives .field select,#ok3d-project-rives .field textarea{box-shadow:none!important;border:0!important;border-bottom:1px solid #ffffff40!important;border-radius:0!important;padding:12px 0 15px!important;min-height:49px}\r\n#ok3d-project-rives .field textarea{min-height:115px}\r\n#ok3d-project-rives .form-status{margin-top:16px!important;line-height:1.8!important}\r\n#ok3d-project-rives .form-status.error{color:#ffc4c4!important}\r\n#ok3d-project-rives .form-status.success{color:#b6d3ff!important}\r\n#ok3d-project-rives .form-privacy{margin-top:18px!important;font-size:12px!important}\r\n#ok3d-project-rives .form-status a{text-decoration:underline!important}\r\n#ok3d-project-rives .field input::placeholder,#ok3d-project-rives .field textarea::placeholder{color:#96a7c4!important}\r\n#ok3d-project-rives .page-dialog{width:min(1100px,94vw);max-width:none;max-height:91svh;margin:auto;padding:0;border:1px solid #819acc6b;border-radius:7px;overflow:auto;background:#0b111e;color:#edf2ff;box-shadow:0 30px 100px #0009}\r\n#ok3d-project-rives .page-dialog::backdrop{background:#020510ed;backdrop-filter:blur(12px)}\r\n#ok3d-project-rives .dialog-top{position:sticky;top:0;z-index:4;display:flex;justify-content:space-between;align-items:center;gap:20px;background:#0c1220ed;backdrop-filter:blur(18px);border-bottom:1px solid #ffffff20;padding:13px 20px}\r\n#ok3d-project-rives .dialog-top>span{font-size:12px;color:#abbeda;letter-spacing:.1em}\r\n#ok3d-project-rives .close-dialog{border:1px solid #ffffff40;border-radius:3px;background:transparent;width:42px;height:42px;flex-shrink:0;font-size:25px}\r\n#ok3d-project-rives .modal-media{height:min(53svh,540px);background:#080b12;display:flex;align-items:center;justify-content:center}\r\n#ok3d-project-rives .modal-media iframe,#ok3d-project-rives .modal-media img{width:100%;height:100%;object-fit:contain;border:0;display:block}\r\n#ok3d-project-rives .modal-copy{padding:30px 35px}\r\n#ok3d-project-rives .modal-tag{font-size:12px!important;letter-spacing:.08em!important;color:#97b0db!important;text-transform:uppercase}\r\n#ok3d-project-rives .modal-title{font-size:clamp(30px,3.1vw,44px)!important;line-height:1.15!important;letter-spacing:-.045em!important;margin-top:12px!important}\r\n#ok3d-project-rives .modal-desc{font-size:17px!important;line-height:1.85!important;color:#aebed6!important;margin-top:20px!important}\r\n#ok3d-project-rives .modal-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}\r\n#ok3d-project-rives .modal-nav{padding:18px 30px;border-top:1px solid #ffffff20;display:flex;justify-content:space-between;align-items:center;gap:18px}\r\n#ok3d-project-rives .modal-nav button{background:none;border:0;padding:6px 0;color:#b6cbed!important;font-size:14px}\r\n#ok3d-project-rives .modal-nav span{font-size:12px;color:#a4b9da}\r\n#ok3d-project-rives .other-expertises{border-top:1px solid #ffffff1a;padding:28px 0}\r\n#ok3d-project-rives .other-expertises .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}\r\n#ok3d-project-rives .other-expertises a{font-size:14px;color:#b6c9ed!important;border-bottom:1px solid #7298ff55;padding-bottom:5px}\r\n#ok3d-project-rives .reveal{transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.2,1);transition-delay:var(--delay,0ms)}\r\n#ok3d-project-rives .reveal.pending{opacity:0;transform:translateY(20px)}\r\n#ok3d-project-rives .site-demo{padding:20px;width:100%;display:flex;justify-content:center;align-items:center;height:405px;background:radial-gradient(ellipse at 60% 75%,#2b427c66,transparent 75%)}\r\n#ok3d-project-rives .site-window{width:100%;border:1px solid #adc3ee66;border-radius:8px;overflow:hidden;background:#080d18;transition:width .6s cubic-bezier(.2,.8,.2,1),border-radius .6s;box-shadow:0 20px 45px #0007}\r\n#ok3d-project-rives .site-window-bar{height:28px;padding:0 12px;background:#1d2941;display:flex;justify-content:space-between;align-items:center;color:#a7b8d4;font-size:10px}\r\n#ok3d-project-rives .site-window-nav{height:44px;display:flex;align-items:center;justify-content:space-between;padding:0 20px}\r\n#ok3d-project-rives .site-window-nav img{width:65px;height:auto}\r\n#ok3d-project-rives .site-window-nav>span{font-size:9px;color:#b4c2d8}\r\n#ok3d-project-rives .site-window-content{position:relative;isolation:isolate;height:235px;padding:22px;overflow:hidden}\r\n#ok3d-project-rives .site-window-content>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}\r\n#ok3d-project-rives .site-window-content::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#050b17e8,#050b1770);z-index:-1}\r\n#ok3d-project-rives .site-window-content small{font-size:8px;color:#c0cee9;letter-spacing:.08em}\r\n#ok3d-project-rives .site-window-content strong{display:block;font-family:var(--display)!important;font-size:43px;line-height:1.02;letter-spacing:-.065em;margin-top:15px}\r\n#ok3d-project-rives .site-window-content strong em{color:#99b4ff;font-family:var(--display)!important;font-style:normal}\r\n#ok3d-project-rives .site-window-content .mini-cta{display:inline-block;font-size:9px;padding:7px 10px;background:#537fff;border-radius:3px;margin-top:20px}\r\n#ok3d-project-rives .site-demo[data-format=\"mobile\"] .site-window{width:200px;border-radius:18px}\r\n#ok3d-project-rives .site-demo[data-format=\"mobile\"] .site-window-nav{padding-inline:15px}\r\n#ok3d-project-rives .site-demo[data-format=\"mobile\"] .site-window-nav>span{display:none}\r\n#ok3d-project-rives .site-demo[data-format=\"mobile\"] .site-window-content{padding:22px 15px}\r\n#ok3d-project-rives .site-demo[data-format=\"mobile\"] .site-window-content strong{font-size:36px}\r\n#ok3d-project-rives .site-demo[data-format=\"mobile\"] .site-window-nav::after{content:'\u2630';font-size:15px}\r\n#ok3d-project-rives .portfolio-intro{padding:165px 0 65px;border-bottom:1px solid #ffffff20;background:radial-gradient(ellipse at 85% 15%,#23396655,transparent 65%)}\r\n#ok3d-project-rives .portfolio-intro .wrap{display:grid;grid-template-columns:1.35fr 1fr;gap:60px;align-items:end}\r\n#ok3d-project-rives .portfolio-intro h1{font-size:clamp(56px,6.7vw,96px)!important;line-height:1.04!important;letter-spacing:-.065em!important;margin-top:22px!important}\r\n#ok3d-project-rives .portfolio-meta{display:flex;gap:25px;flex-wrap:wrap;border-top:1px solid #ffffff22;padding-top:22px;margin-top:25px;font-size:13px;color:#9fb1d1}\r\n#ok3d-project-rives .portfolio-meta strong{font-family:var(--display)!important;color:#e1ebff;font-size:27px;margin-right:8px}\r\n#ok3d-project-rives .filter-bar{position:sticky;top:82px;z-index:15;border-bottom:1px solid #ffffff1b;background:#080a10ed;backdrop-filter:blur(20px)}\r\n#ok3d-project-rives .filter-inner{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:16px;padding-bottom:16px}\r\n#ok3d-project-rives .filters{display:flex;flex-wrap:wrap;gap:5px}\r\n#ok3d-project-rives .filters button{padding:10px 14px;min-height:42px;background:none;border:1px solid transparent;border-radius:4px;color:#a9bad5!important;font-size:14px}\r\n#ok3d-project-rives .filters button span{font-size:11px;opacity:.65;margin-left:8px}\r\n#ok3d-project-rives .filters button[aria-pressed=\"true\"]{background:#7498ff1b;border-color:#759bff66;color:#e0eaff!important}\r\n#ok3d-project-rives .result-count{font-size:12px!important;color:#9eb1d2!important;white-space:nowrap}\r\n#ok3d-project-rives .portfolio-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:30px 24px;padding-top:38px;padding-bottom:75px;align-items:stretch}\r\n#ok3d-project-rives .portfolio-card{grid-column:span 4;min-width:0;border:1px solid #ffffff18;border-radius:6px;background:#0d1320;overflow:hidden;transition:border-color .35s,box-shadow .35s}\r\n#ok3d-project-rives .portfolio-card[data-shape=\"feature\"]{grid-column:span 7}\r\n#ok3d-project-rives .portfolio-card[data-shape=\"portrait\"]{grid-column:span 5}\r\n#ok3d-project-rives .portfolio-card[data-shape=\"full\"]{grid-column:span 12}\r\n#ok3d-project-rives .portfolio-card[data-shape=\"half\"]{grid-column:span 6}\r\n#ok3d-project-rives .portfolio-card:hover{border-color:#81a3ff88;box-shadow:0 15px 50px #0004}\r\n#ok3d-project-rives .portfolio-card>a{display:flex;flex-direction:column;height:100%}\r\n#ok3d-project-rives .p-media{height:280px;position:relative;overflow:hidden;background:#141d2e}\r\n#ok3d-project-rives .portfolio-card[data-shape=\"feature\"] .p-media,#ok3d-project-rives .portfolio-card[data-shape=\"portrait\"] .p-media{height:390px}\r\n#ok3d-project-rives .portfolio-card[data-shape=\"full\"] .p-media{height:430px}\r\n#ok3d-project-rives .p-media img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1)}\r\n#ok3d-project-rives .portfolio-card:hover .p-media img{transform:scale(1.035)}\r\n#ok3d-project-rives .p-kind{position:absolute;top:16px;left:16px;max-width:calc(100% - 32px);font-size:11px;padding:6px 10px;background:#080f20d9;border:1px solid #ffffff30;border-radius:3px;backdrop-filter:blur(12px);color:#d5e2fa;z-index:2}\r\n#ok3d-project-rives .p-open{position:absolute;bottom:16px;right:16px;width:42px;height:42px;border:1px solid #ffffff70;border-radius:50%;display:grid;place-items:center;background:#0b1325ab;backdrop-filter:blur(10px);font-size:24px;transition:transform .3s,background .3s;z-index:2}\r\n#ok3d-project-rives .portfolio-card:hover .p-open{transform:rotate(45deg);background:#547eff}\r\n#ok3d-project-rives .p-film{position:absolute;bottom:22px;left:17px;padding:5px 9px;border-radius:3px;background:#080e1ac9;font-size:11px;color:white}\r\n#ok3d-project-rives .p-copy{padding:23px;flex:1}\r\n#ok3d-project-rives .p-tag{font-size:11px!important;letter-spacing:.07em!important;line-height:1.6!important;text-transform:uppercase;color:#95abd2!important}\r\n#ok3d-project-rives .p-copy h2{font-size:24px!important;line-height:1.22!important;letter-spacing:-.045em!important;margin-top:10px!important}\r\n#ok3d-project-rives .p-copy .p-desc{font-size:14px!important;line-height:1.8!important;color:#a6b6ce!important;margin-top:13px!important}\r\n#ok3d-project-rives .text-card .p-media{display:flex;flex-direction:column;justify-content:center;padding:50px 30px 35px;background:linear-gradient(130deg,#203250,#0c1422);border-bottom:1px solid #ffffff15}\r\n#ok3d-project-rives .type-project{font-family:var(--display)!important;font-size:clamp(34px,3.5vw,54px);line-height:1;letter-spacing:-.065em;color:#baccf0;overflow-wrap:anywhere}\r\n#ok3d-project-rives .type-sub{font-size:12px;letter-spacing:.14em;color:#7f9cc9;margin-top:24px}\r\n#ok3d-project-rives .portfolio-cta{padding:75px 0;background:radial-gradient(ellipse at 90% 100%,#22396166,transparent 65%),#0d1420;border-block:1px solid #ffffff1c}\r\n#ok3d-project-rives .portfolio-cta .wrap{display:flex;justify-content:space-between;gap:40px;align-items:center}\r\n#ok3d-project-rives .portfolio-cta h2{font-size:clamp(36px,4.1vw,60px)!important;line-height:1.12!important;letter-spacing:-.055em!important;margin-top:20px!important}\r\n#ok3d-project-rives .portfolio-cta p:not(.kicker){margin-top:20px!important;color:#b1c1d8!important;line-height:1.8!important;font-size:16px!important}\r\n#ok3d-project-rives .header .nav a{white-space:nowrap}\r\n@media(min-width:1001px){#ok3d-project-rives .header .menu-toggle{display:none}}\r\n@media(max-width:1100px){#ok3d-project-rives .expert-hero-inner{gap:38px}#ok3d-project-rives .expert-title{font-size:clamp(46px,5.5vw,66px)!important}#ok3d-project-rives .expert-picture,#ok3d-project-rives .site-demo{height:350px}#ok3d-project-rives .selected-media{height:230px}#ok3d-project-rives .p-media{height:240px}#ok3d-project-rives .portfolio-card[data-shape=\"feature\"] .p-media,#ok3d-project-rives .portfolio-card[data-shape=\"portrait\"] .p-media{height:330px}#ok3d-project-rives .p-copy{padding:19px}#ok3d-project-rives .p-copy h2{font-size:22px!important}}\r\n@media(max-width:1000px){#ok3d-project-rives .header .nav{display:none;position:absolute;top:94px;left:0;right:0;padding:18px var(--gutter);background:#0c1322f5;border-bottom:1px solid #ffffff25;backdrop-filter:blur(18px);flex-direction:column;align-items:stretch;gap:0}#ok3d-project-rives .header .nav.open{display:flex}#ok3d-project-rives .header .nav a{font-size:17px!important;padding-block:12px}#ok3d-project-rives .header.is-scrolled .nav{top:82px}#ok3d-project-rives .header .menu-toggle{display:block}#ok3d-project-rives .header-contact{display:none}#ok3d-project-rives .expert-hero-inner{grid-template-columns:1fr;gap:42px}#ok3d-project-rives .expert-title{font-size:clamp(52px,8.5vw,80px)!important}#ok3d-project-rives .expert-visual{max-width:690px;width:100%}#ok3d-project-rives .expert-picture,#ok3d-project-rives .site-demo{height:430px}#ok3d-project-rives .offer-grid{gap:20px}#ok3d-project-rives .offer{padding-right:5px}#ok3d-project-rives .offer h3{font-size:25px!important}#ok3d-project-rives .approach-grid{gap:50px}#ok3d-project-rives .portfolio-intro .wrap{gap:35px}#ok3d-project-rives .portfolio-intro h1{font-size:clamp(50px,7vw,72px)!important}}\r\n@media(max-width:800px){#ok3d-project-rives .portfolio-intro .wrap{grid-template-columns:1fr;gap:28px}#ok3d-project-rives .portfolio-intro{padding-top:150px}#ok3d-project-rives .portfolio-intro .subtext{max-width:590px}#ok3d-project-rives .filter-inner{display:block}#ok3d-project-rives .result-count{margin-top:10px!important}#ok3d-project-rives .portfolio-card,#ok3d-project-rives .portfolio-card[data-shape=\"feature\"],#ok3d-project-rives .portfolio-card[data-shape=\"portrait\"],#ok3d-project-rives .portfolio-card[data-shape=\"half\"]{grid-column:span 6}#ok3d-project-rives .portfolio-card[data-shape=\"full\"]{grid-column:span 12}#ok3d-project-rives .portfolio-card .p-media,#ok3d-project-rives .portfolio-card[data-shape] .p-media{height:280px}#ok3d-project-rives .portfolio-card[data-shape=\"full\"] .p-media{height:350px}#ok3d-project-rives .selected-grid{grid-template-columns:1fr 1fr}#ok3d-project-rives .selected-card:last-child{grid-column:span 2}#ok3d-project-rives .selected-card:last-child .selected-media{height:320px}}\r\n@media(max-width:700px){#ok3d-project-rives .header-inner{min-height:72px;height:78px}#ok3d-project-rives .header .logo img{height:31px!important;max-width:132px!important}#ok3d-project-rives .header .nav{top:78px}#ok3d-project-rives .header.is-scrolled .nav{top:72px}#ok3d-project-rives .header .nav a::after{display:none}#ok3d-project-rives .expert-hero{padding-top:130px;padding-bottom:45px}#ok3d-project-rives .expert-title{font-size:clamp(42px,10.6vw,67px)!important}#ok3d-project-rives .subtext{font-size:16px!important;margin-top:22px!important}#ok3d-project-rives .expert-actions{gap:12px}#ok3d-project-rives .expert-actions .btn{padding-inline:19px;gap:20px}#ok3d-project-rives .expert-picture,#ok3d-project-rives .site-demo{height:340px}#ok3d-project-rives .expert-strip{font-size:11px;gap:15px;padding-top:25px}#ok3d-project-rives .expert-strip span+span{padding-left:15px}#ok3d-project-rives .section-head h2{font-size:clamp(34px,10vw,43px)!important}#ok3d-project-rives .section-head>p{margin-top:20px!important}#ok3d-project-rives .offer-grid{grid-template-columns:1fr;gap:0}#ok3d-project-rives .offer{padding:30px 0;border-bottom:1px solid #ffffff18}#ok3d-project-rives .offer h3{font-size:29px!important;margin-top:17px!important}#ok3d-project-rives .selected-grid{display:block}#ok3d-project-rives .selected-card{margin-bottom:22px}#ok3d-project-rives .selected-card .selected-media,#ok3d-project-rives .selected-card:last-child .selected-media{height:280px}#ok3d-project-rives .approach-grid{grid-template-columns:1fr;gap:30px}#ok3d-project-rives .approach-heading{position:static}#ok3d-project-rives .approach-heading h2{font-size:43px!important}#ok3d-project-rives .approach-step{gap:16px}#ok3d-project-rives .form-grid{grid-template-columns:1fr}#ok3d-project-rives .field.full{grid-column:auto}#ok3d-project-rives .contact h2{font-size:clamp(38px,11vw,53px)!important}#ok3d-project-rives .contact-grid{gap:40px}#ok3d-project-rives .page-dialog{width:96vw;max-height:94svh}#ok3d-project-rives .modal-media{height:34svh;min-height:175px}#ok3d-project-rives .modal-copy{padding:25px 22px}#ok3d-project-rives .modal-title{font-size:30px!important}#ok3d-project-rives .modal-desc{font-size:16px!important}#ok3d-project-rives .modal-actions{flex-direction:column}#ok3d-project-rives .modal-nav{padding:14px 18px;gap:12px}#ok3d-project-rives .modal-nav button{font-size:12px}#ok3d-project-rives .dialog-top{padding:10px 15px}#ok3d-project-rives .dialog-top>span{font-size:10px}#ok3d-project-rives .portfolio-intro{padding-top:128px;padding-bottom:40px}#ok3d-project-rives .portfolio-intro h1{font-size:clamp(45px,12vw,68px)!important}#ok3d-project-rives .filter-bar{top:72px}#ok3d-project-rives .filters button{font-size:12px;padding:8px 10px;min-height:38px}#ok3d-project-rives .filter-inner{padding-block:12px}#ok3d-project-rives .portfolio-cta .wrap{align-items:start;flex-direction:column}#ok3d-project-rives .portfolio-cta{padding-block:55px}#ok3d-project-rives .site-window-content strong{font-size:39px}}\r\n@media(max-width:540px){#ok3d-project-rives .portfolio-grid{display:block;padding-top:25px;padding-bottom:40px}#ok3d-project-rives .portfolio-card{margin-bottom:24px}#ok3d-project-rives .portfolio-card .p-media,#ok3d-project-rives .portfolio-card[data-shape] .p-media{height:auto;aspect-ratio:1.22}#ok3d-project-rives .p-copy{padding:23px}#ok3d-project-rives .p-copy h2{font-size:24px!important}#ok3d-project-rives .p-copy .p-desc{font-size:15px!important}#ok3d-project-rives .type-project{font-size:45px}#ok3d-project-rives .portfolio-meta{gap:20px}#ok3d-project-rives .visual-tabs button{font-size:12px;padding-inline:11px}#ok3d-project-rives .visual-caption{padding-inline:15px;gap:10px}#ok3d-project-rives .visual-caption>span{font-size:12px}#ok3d-project-rives .visual-caption button{font-size:12px}#ok3d-project-rives .expert-picture{height:300px}}\r\n@media(max-width:359px){#ok3d-project-rives .expert-title{font-size:40px!important}#ok3d-project-rives .expert-picture,#ok3d-project-rives .site-demo{height:290px}#ok3d-project-rives .visual-header{padding-inline:14px}#ok3d-project-rives .visual-header span{font-size:10px!important}#ok3d-project-rives .site-window-content{padding:18px 14px}#ok3d-project-rives .site-window-content strong{font-size:32px}#ok3d-project-rives .expert-strip{gap:9px}#ok3d-project-rives .expert-strip span+span{padding-left:9px}#ok3d-project-rives .other-expertises .wrap{flex-direction:column}}\r\n@media(prefers-reduced-motion:reduce){#ok3d-project-rives *,#ok3d-project-rives *::before,#ok3d-project-rives *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}#ok3d-project-rives .reveal.pending{opacity:1;transform:none}}\r\n#ok3d-project-rives .case-hero{\r\n  padding:152px 0 0;\r\n  position:relative;\r\n  overflow:hidden;\r\n  isolation:isolate;\r\n  background:#080a10;\r\n}\r\n#ok3d-project-rives .case-hero::before,\r\n#ok3d-project-rives .case-hero::after{\r\n  content:\"\";\r\n  position:absolute;\r\n  z-index:0;\r\n  pointer-events:none;\r\n  border-radius:50%;\r\n}\r\n#ok3d-project-rives .case-hero::before{\r\n  width:94%;\r\n  height:112%;\r\n  right:-25%;\r\n  top:-37%;\r\n  background:radial-gradient(\r\n    ellipse at center,\r\n    rgba(94,127,211,.22) 0%,\r\n    rgba(64,94,169,.13) 30%,\r\n    rgba(33,54,103,.055) 51%,\r\n    transparent 71%\r\n  );\r\n  opacity:.9;\r\n  animation:ok3d-project-halo-primary 28s cubic-bezier(.45,0,.55,1) infinite alternate;\r\n}\r\n#ok3d-project-rives .case-hero::after{\r\n  width:72%;\r\n  height:78%;\r\n  left:-18%;\r\n  bottom:-30%;\r\n  background:radial-gradient(\r\n    ellipse at center,\r\n    rgba(66,100,173,.11) 0%,\r\n    rgba(47,67,131,.055) 34%,\r\n    transparent 70%\r\n  );\r\n  opacity:.66;\r\n  animation:ok3d-project-halo-secondary 36s cubic-bezier(.45,0,.55,1) infinite alternate;\r\n}\r\n#ok3d-project-rives .case-hero>.wrap{\r\n  position:relative;\r\n  z-index:1;\r\n}\r\n@keyframes ok3d-project-halo-primary{\r\n  0%{transform:translate3d(0,0,0) scale(1)}\r\n  50%{transform:translate3d(-6%,7%,0) scale(1.07)}\r\n  100%{transform:translate3d(-12%,2%,0) scale(1.02)}\r\n}\r\n@keyframes ok3d-project-halo-secondary{\r\n  0%{transform:translate3d(0,0,0) scale(.97)}\r\n  50%{transform:translate3d(9%,-8%,0) scale(1.08)}\r\n  100%{transform:translate3d(15%,-3%,0) scale(1.015)}\r\n}\r\n#ok3d-project-rives .case-back{font-size:14px!important;color:#a7b6d1!important;display:inline-flex;gap:14px;margin-bottom:44px}\r\n#ok3d-project-rives .case-heading{display:grid;grid-template-columns:1.3fr 1fr;gap:65px;align-items:end}\r\n#ok3d-project-rives .case-title{font-size:clamp(66px,8.5vw,128px)!important;line-height:.98!important;letter-spacing:-.065em!important;margin-top:22px!important}\r\n#ok3d-project-rives .case-title span{font-family:var(--display)!important;color:#92acff!important}\r\n#ok3d-project-rives .case-lead{font-size:clamp(20px,2.1vw,29px)!important;line-height:1.5!important;letter-spacing:-.02em!important;color:#d5def0!important;max-width:510px;margin-bottom:22px!important}\r\n#ok3d-project-rives .case-summary .text-link{margin-top:12px}\r\n#ok3d-project-rives .case-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;border-top:1px solid #ffffff25;margin-top:50px;padding:26px 0 30px}\r\n#ok3d-project-rives .case-meta dt{font-size:12px;letter-spacing:.11em;text-transform:uppercase;color:#95a5c0;margin-bottom:8px}\r\n#ok3d-project-rives .case-meta dd{margin:0;font-size:14px;line-height:1.7;color:#e0e7f5}\r\n#ok3d-project-rives .case-film{position:relative;margin:0;border:1px solid #ffffff25;border-radius:5px;overflow:hidden;background:#070910}\r\n#ok3d-project-rives .case-film video{display:block;width:100%;height:auto;aspect-ratio:16\/9;object-fit:contain;background:#070910}\r\n#ok3d-project-rives .film-cover{position:absolute;inset:0 0 43px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:18px;width:100%;border:0;background:linear-gradient(0deg,#0407124d,transparent 60%);color:white!important;font-family:var(--font);font-size:15px!important}\r\n#ok3d-project-rives .film-cover .play-ring{width:92px;height:92px;border-radius:50%;display:grid;place-items:center;background:#0b14205c;border:1px solid #ffffffa0;backdrop-filter:blur(13px);font-size:25px;padding-left:4px;transition:transform .35s,background .35s}\r\n#ok3d-project-rives .film-cover:hover .play-ring{transform:scale(1.08);background:#537fffc9}\r\n#ok3d-project-rives .case-film figcaption{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:12px 20px;font-size:12px;line-height:1.5;color:#acb9d0;background:#0e1421}\r\n#ok3d-project-rives .case-film figcaption a{color:#c3d2f2!important;text-decoration:underline}\r\n#ok3d-project-rives .case-video-error{padding:15px 20px;color:#ffc7c7!important;font-size:14px}\r\n#ok3d-project-rives .case-overview{display:grid;grid-template-columns:.9fr 1.25fr;gap:100px;align-items:start}\r\n#ok3d-project-rives .case-h2{font-size:clamp(36px,4.3vw,64px)!important;line-height:1.08!important;letter-spacing:-.055em!important;margin-top:20px!important}\r\n#ok3d-project-rives .case-h2 span{color:#92acff!important;font-family:var(--display)!important}\r\n#ok3d-project-rives .case-copy p{font-size:17px!important;line-height:1.95!important;color:#b0bdd3!important;margin-bottom:22px!important}\r\n#ok3d-project-rives .case-copy p:first-child{font-size:21px!important;line-height:1.7!important;color:#e0e7f6!important}\r\n#ok3d-project-rives .case-challenge{border-left:2px solid #648cff;padding:5px 0 5px 24px;margin-top:35px}\r\n#ok3d-project-rives .case-challenge strong{font-size:12px!important;text-transform:uppercase;letter-spacing:.13em;color:#95b0f1;display:block;margin-bottom:12px}\r\n#ok3d-project-rives .case-challenge p{font-size:17px!important;color:#d4e0f6!important;margin:0!important}\r\n#ok3d-project-rives .case-gallery-section{background:#0d121d;border-block:1px solid #ffffff18}\r\n#ok3d-project-rives .case-gallery{display:grid;grid-template-columns:1.15fr 1fr;gap:24px;align-items:start}\r\n#ok3d-project-rives .case-gallery figure{margin:0;min-width:0}\r\n#ok3d-project-rives .case-gallery figure:nth-child(2){padding-top:100px}\r\n#ok3d-project-rives .case-zoom{position:relative;width:100%;display:block;padding:0;border:1px solid #ffffff25;border-radius:5px;overflow:hidden;background:#11192a;text-align:left}\r\n#ok3d-project-rives .case-zoom img{display:block;width:100%;height:470px;object-fit:cover;transition:transform .7s}\r\n#ok3d-project-rives .case-zoom:hover img{transform:scale(1.035)}\r\n#ok3d-project-rives .case-zoom span{position:absolute;right:18px;bottom:18px;width:44px;height:44px;border-radius:50%;border:1px solid #ffffff88;background:#0a101bb0;backdrop-filter:blur(8px);display:grid;place-items:center;font-size:25px}\r\n#ok3d-project-rives .case-gallery figcaption{display:flex;gap:20px;align-items:baseline;padding:20px 0;font-size:14px;line-height:1.7;color:#b8c7df}\r\n#ok3d-project-rives .case-gallery figcaption small{color:#88a3d5;font-size:12px;font-family:var(--display)!important}\r\n#ok3d-project-rives .case-craft{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}\r\n#ok3d-project-rives .case-process{list-style:none;padding:0;margin:0}\r\n#ok3d-project-rives .case-process li{padding:24px 0;border-top:1px solid #ffffff25;display:grid;grid-template-columns:35px 1fr;gap:20px}\r\n#ok3d-project-rives .case-process li>span{font-size:13px;color:#9db8fb;padding-top:5px}\r\n#ok3d-project-rives .case-process h3{font-size:26px!important;letter-spacing:-.035em!important;line-height:1.3!important}\r\n#ok3d-project-rives .case-process p{font-size:16px!important;color:#a9b9d3!important;line-height:1.8!important;margin-top:10px!important}\r\n#ok3d-project-rives .case-delivery{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:35px 0;border-top:1px solid #ffffff25;margin-top:58px}\r\n#ok3d-project-rives .case-delivery h3{font-size:24px!important;letter-spacing:-.035em!important}\r\n#ok3d-project-rives .case-delivery ul{list-style:none;padding:0;margin:16px 0 0;display:flex;gap:10px;flex-wrap:wrap}\r\n#ok3d-project-rives .case-delivery li{font-size:14px;border:1px solid #ffffff22;background:#648cff08;padding:8px 13px;border-radius:3px;color:#becde5}\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n#ok3d-project-rives .case-lightbox{margin:auto;padding:0;border:1px solid #869bc55c;background:#080c16;width:min(1280px,94vw);max-width:none;max-height:94svh;color:#edf2ff;border-radius:5px}\r\n#ok3d-project-rives .case-lightbox::backdrop{background:#020510ed;backdrop-filter:blur(12px)}\r\n#ok3d-project-rives .case-lightbox .lightbox-top{display:flex;justify-content:space-between;align-items:center;padding:12px 18px;gap:20px;border-bottom:1px solid #ffffff22}\r\n#ok3d-project-rives .case-lightbox p{font-size:14px!important;color:#c6d5ee!important}\r\n#ok3d-project-rives .case-lightbox button{min-width:44px;min-height:44px;background:none;border:1px solid #ffffff40;border-radius:3px;color:white;font-size:24px}\r\n#ok3d-project-rives .case-lightbox img{width:100%;height:auto;max-height:78svh;object-fit:contain}\r\n#ok3d-project-rives .case-hero .kicker{color:#a8b8d6!important}\r\n@media(max-width:1000px){#ok3d-project-rives .case-heading{gap:40px;grid-template-columns:1.2fr 1fr}#ok3d-project-rives .case-title{font-size:clamp(65px,9vw,98px)!important}#ok3d-project-rives .case-overview,#ok3d-project-rives .case-craft{gap:45px}#ok3d-project-rives .case-gallery{gap:20px}#ok3d-project-rives .case-zoom img{height:360px}}\r\n@media(max-width:700px){#ok3d-project-rives .case-hero{padding-top:115px}#ok3d-project-rives .case-back{margin-bottom:32px}#ok3d-project-rives .case-heading{grid-template-columns:1fr;gap:25px}#ok3d-project-rives .case-title{font-size:clamp(61px,15vw,95px)!important}#ok3d-project-rives .case-lead{font-size:21px!important;margin-bottom:8px!important}#ok3d-project-rives .case-meta{grid-template-columns:1fr 1fr;margin-top:32px;gap:22px 15px;padding-block:24px}#ok3d-project-rives .case-meta dd{font-size:13px}#ok3d-project-rives .film-cover{inset:0 0 0;bottom:56px;font-size:13px!important;gap:8px}#ok3d-project-rives .film-cover .play-ring{width:55px;height:55px;font-size:19px}#ok3d-project-rives .case-film figcaption{padding:10px 12px;gap:15px;font-size:11px;min-height:56px}#ok3d-project-rives .case-overview,#ok3d-project-rives .case-craft{grid-template-columns:1fr;gap:30px}#ok3d-project-rives .case-h2{font-size:42px!important}#ok3d-project-rives .case-copy p{font-size:16px!important}#ok3d-project-rives .case-copy p:first-child{font-size:19px!important}#ok3d-project-rives .case-gallery{grid-template-columns:1fr;gap:25px}#ok3d-project-rives .case-gallery figure:nth-child(2){padding-top:0}#ok3d-project-rives .case-zoom img{height:auto;aspect-ratio:1.12;object-fit:cover}#ok3d-project-rives .case-delivery{grid-template-columns:1fr;gap:30px;margin-top:30px}#ok3d-project-rives .case-lightbox p{font-size:12px!important}#ok3d-project-rives .case-process li{gap:13px;grid-template-columns:27px 1fr}}\r\n@media(prefers-reduced-motion:reduce){#ok3d-project-rives *,#ok3d-project-rives *::before,#ok3d-project-rives *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}\r\n\r\n\/* MASTER PROJET \u2014 coh\u00e9rence visuelle globale *\/\r\n@media(max-width:700px){\r\n  #ok3d-project-rives .case-hero::before{\r\n    width:145%;\r\n    height:72%;\r\n    right:-62%;\r\n    top:-8%;\r\n    animation-duration:34s;\r\n  }\r\n  #ok3d-project-rives .case-hero::after{\r\n    width:138%;\r\n    height:58%;\r\n    left:-66%;\r\n    bottom:-12%;\r\n    animation-duration:42s;\r\n  }\r\n}\r\n@media(prefers-reduced-motion:reduce){\r\n  #ok3d-project-rives .case-hero::before,\r\n  #ok3d-project-rives .case-hero::after{\r\n    animation:none!important;\r\n    transform:none!important;\r\n  }\r\n}\r\n\r\n\r\n\r\n#ok3d-project-rives .case-film>iframe{display:block;width:100%;aspect-ratio:16\/9;border:0;background:#070910}\r\n#ok3d-project-rives .case-film .case-zoom{position:relative;width:100%;display:block;padding:0;border:0;border-radius:0;overflow:hidden;background:#070910}\r\n#ok3d-project-rives .case-film .project-overview-image{display:block;width:100%;height:clamp(320px,52vw,760px);object-fit:contain;padding:clamp(12px,2vw,30px);background:radial-gradient(ellipse at center,#1b2946,#070910 72%);transition:transform .7s}\r\n#ok3d-project-rives .case-film .case-zoom:hover .project-overview-image{transform:scale(1.018)}\r\n#ok3d-project-rives .case-film .case-zoom>span{position:absolute;right:20px;bottom:20px;width:46px;height:46px;border-radius:50%;border:1px solid #ffffff80;background:#09101dcc;display:grid;place-items:center;font-size:25px}\r\n#ok3d-project-rives .project-empty-visual{min-height:clamp(320px,52vw,760px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;text-align:center;padding:30px;background:linear-gradient(#648cff09 1px,transparent 1px),linear-gradient(90deg,#648cff09 1px,transparent 1px),radial-gradient(ellipse at 65% 32%,#2f467d66,transparent 60%),#090d16;background-size:38px 38px,38px 38px,100% 100%,100% 100%}\r\n#ok3d-project-rives .project-empty-visual small{font-size:10px;letter-spacing:.16em;color:#8ea5cf}\r\n#ok3d-project-rives .project-empty-visual strong{font-family:var(--display)!important;font-size:clamp(46px,7vw,104px);line-height:.95;letter-spacing:-.06em;color:#edf3ff}\r\n#ok3d-project-rives .project-empty-visual span{font-size:13px;color:#98a8c2}\r\n\r\n\r\n#ok3d-project-rives .case-film>iframe{display:block;width:100%;height:auto;aspect-ratio:16\/9;border:0}\r\n#ok3d-project-rives .rives-assets{background:radial-gradient(ellipse at 90% 40%,#263b6338,transparent 65%),#0d131f;border-block:1px solid #ffffff20}\r\n#ok3d-project-rives .rives-assets-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}\r\n#ok3d-project-rives .rives-asset{padding:34px;border:1px solid #95b2e43b;border-radius:6px;background:linear-gradient(145deg,#172237,#0b111c);transition:border-color .3s,transform .3s}\r\n#ok3d-project-rives .rives-asset-heading{display:flex;justify-content:space-between;gap:15px;color:#9cb5e6;font-size:10px;letter-spacing:.09em}\r\n#ok3d-project-rives .rives-asset h3{font-size:clamp(35px,4vw,52px)!important;letter-spacing:-.045em!important;margin-top:32px!important;line-height:1.1!important}\r\n#ok3d-project-rives .rives-asset p{font-size:16px!important;line-height:1.85!important;color:#b4c3da!important;margin-top:22px!important}\r\n#ok3d-project-rives .rives-asset ul{list-style:none;padding:20px 0 0;margin:25px 0 0;border-top:1px solid #ffffff20}\r\n#ok3d-project-rives .rives-asset li{display:flex;align-items:baseline;gap:12px;padding:7px 0;font-size:13px;color:#bfcee7}\r\n#ok3d-project-rives .rives-asset li::before{content:'+';color:#92acff}\r\n#ok3d-project-rives .rives-asset-note{border-left:2px solid #648cff;padding-left:20px;margin-top:30px!important;max-width:890px;color:#aebfda!important;font-size:14px!important;line-height:1.85!important}\r\n#ok3d-project-rives .rives-formats-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:90px;align-items:center}\r\n#ok3d-project-rives .rives-formats-lead{max-width:570px;margin-top:26px!important;color:#bac9e1!important;font-size:18px!important;line-height:1.85!important}\r\n#ok3d-project-rives .rives-format-row{display:grid;grid-template-columns:66px 1fr;gap:24px;padding:25px 0;border-top:1px solid #ffffff25;margin-top:28px;align-items:start}\r\n#ok3d-project-rives .rives-format-row+.rives-format-row{margin-top:0}\r\n#ok3d-project-rives .rives-format-row h3{font-size:25px!important;letter-spacing:-.03em!important;line-height:1.2!important}\r\n#ok3d-project-rives .rives-format-row p{margin-top:10px!important;color:#a8bcd7!important;font-size:15px!important;line-height:1.8!important}\r\n#ok3d-project-rives .rives-format-row .text-link{margin-top:17px;font-size:12px}\r\n#ok3d-project-rives .rives-ratio{display:block;border:1px solid #92acff80;border-radius:4px;background:linear-gradient(135deg,#648cff2b,#648cff05);margin-top:4px}\r\n#ok3d-project-rives .rives-ratio-wide{width:60px;aspect-ratio:16\/9}\r\n#ok3d-project-rives .rives-ratio-tall{width:30px;aspect-ratio:9\/16;margin-left:15px}\r\n#ok3d-project-rives .rives-format-note{font-size:13px!important;line-height:1.8!important;color:#95a9c8!important}\r\n#ok3d-project-rives .rives-phone-figure{width:min(100%,355px);margin:0 auto;text-align:center;min-width:0}\r\n#ok3d-project-rives .rives-phone{padding:9px;border:1px solid #91aadd70;border-radius:27px;background:#101827;box-shadow:0 25px 70px #0006,0 0 70px #4269b518}\r\n#ok3d-project-rives .rives-portrait-player{position:relative;aspect-ratio:9\/16;overflow:hidden;border-radius:19px;background:#080d16}\r\n#ok3d-project-rives .rives-portrait-player :is(video,iframe){width:100%;height:100%;position:absolute;inset:0;display:block;border:0;object-fit:contain;background:#080d16}\r\n#ok3d-project-rives .rives-portrait-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:30px;padding:25px;background:radial-gradient(ellipse at 60% 30%,#36548377,transparent 75%)}\r\n#ok3d-project-rives .rives-portrait-placeholder>span:first-child{color:#a9bfe4;font-size:10px;letter-spacing:.12em}\r\n#ok3d-project-rives .rives-portrait-placeholder strong{font-family:var(--display)!important;font-size:37px;font-weight:500;line-height:1.1;letter-spacing:-.05em;color:#e9f0fc}\r\n#ok3d-project-rives .rives-format-symbol{font-size:48px;color:#92acff}\r\n#ok3d-project-rives .rives-portrait-placeholder p{font-size:13px!important;line-height:1.8!important;color:#c2d0e7!important}\r\n#ok3d-project-rives .rives-portrait-placeholder small{font-size:11px;color:#91a6c6}\r\n#ok3d-project-rives .rives-phone-figure figcaption{padding:20px 0;font-size:10px;letter-spacing:.12em;color:#9fb4d6}\r\n#ok3d-project-rives [data-rives-portrait-link][hidden]{display:none!important}\r\n@media(hover:hover) and (pointer:fine){#ok3d-project-rives .rives-asset:hover{border-color:#92acff77;transform:translateY(-3px)}}\r\n@media(max-width:900px){#ok3d-project-rives .rives-formats-grid{gap:40px}#ok3d-project-rives .rives-asset{padding:26px}}\r\n@media(max-width:700px){#ok3d-project-rives .rives-assets-grid,#ok3d-project-rives .rives-formats-grid{grid-template-columns:1fr;gap:25px}#ok3d-project-rives .rives-phone-figure{margin-top:15px;max-width:330px}#ok3d-project-rives .rives-format-row{gap:18px}#ok3d-project-rives .rives-asset-heading{font-size:9px}}\r\n@media(prefers-reduced-motion:reduce){#ok3d-project-rives .rives-asset{transition:none!important;transform:none!important}}\r\n\r\n\/* Galerie mat\u00e9riel : deux vues d'ensemble + deux d\u00e9tails.\r\nLes vues d'ensemble sont int\u00e9grales (contain) pour ne pas couper les objets. *\/\r\n#ok3d-project-rives .rives-asset{overflow:hidden}\r\n#ok3d-project-rives .rives-material-visual{margin:-34px -34px 30px;border-bottom:1px solid #91acdd33}\r\n#ok3d-project-rives .rives-material-zoom{position:relative;display:block;width:100%;aspect-ratio:1.22;padding:0;border:0;border-radius:0;background:radial-gradient(ellipse at 50% 40%,#2b4164,#0b1320 74%);overflow:hidden;color:#a8bee4;text-align:center;isolation:isolate}\r\n#ok3d-project-rives .rives-material-zoom:disabled{cursor:default;opacity:1}\r\n#ok3d-project-rives .rives-material-zoom img{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:contain;padding:24px;transition:transform .6s cubic-bezier(.2,.8,.2,1)}\r\n#ok3d-project-rives .rives-material-zoom img[hidden]{display:none!important}\r\n#ok3d-project-rives .rives-material-empty{position:absolute;inset:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;border:1px dashed #98b5e53b;border-radius:4px;background:linear-gradient(135deg,#648cff05,transparent)}\r\n#ok3d-project-rives .rives-material-empty[hidden]{display:none!important}\r\n#ok3d-project-rives .rives-material-empty svg{opacity:.7}\r\n#ok3d-project-rives .rives-material-empty strong{font-family:var(--display)!important;font-size:22px;font-weight:500;letter-spacing:-.03em;color:#c9d7f0;padding:0 15px;line-height:1.3}\r\n#ok3d-project-rives .rives-material-empty small{font-size:9px;letter-spacing:.13em;color:#8da6cb}\r\n#ok3d-project-rives .rives-material-expand{position:absolute;right:17px;bottom:17px;display:grid;place-items:center;width:42px;height:42px;border:1px solid #aac3ed66;border-radius:50%;background:#0b1424c9;color:#d6e5ff;font-size:22px;transition:transform .25s,background .25s}\r\n#ok3d-project-rives .rives-material-zoom:disabled .rives-material-expand{display:none}\r\n#ok3d-project-rives .rives-material-details{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:30px}\r\n#ok3d-project-rives .rives-material-details figure{margin:0;min-width:0}\r\n#ok3d-project-rives .rives-material-detail{margin:0;border:1px solid #91acdd33;border-radius:6px;overflow:hidden}\r\n#ok3d-project-rives .rives-material-detail .rives-material-zoom{aspect-ratio:1.6}\r\n#ok3d-project-rives .rives-material-detail img{object-fit:cover;padding:0}\r\n\/* Paddle + pagaie : remplissent toute la surface comme les textures *\/\r\n#ok3d-project-rives .rives-material-zoom[data-rives-visual=\"paddle\"] img,\r\n#ok3d-project-rives .rives-material-zoom[data-rives-visual=\"pagaie\"] img{object-fit:cover;object-position:center center;padding:0}\r\n\r\n#ok3d-project-rives .rives-material-details figcaption{padding:20px 0 8px}\r\n#ok3d-project-rives .rives-material-details figcaption>span{display:block;font-size:10px;color:#9bb5e0;letter-spacing:.1em}\r\n#ok3d-project-rives .rives-material-details figcaption>strong{display:block;margin-top:10px;font-family:var(--display)!important;font-size:24px;font-weight:500;letter-spacing:-.035em;color:#e5edfa;line-height:1.3}\r\n#ok3d-project-rives .rives-material-details figcaption p{margin-top:9px!important;font-size:14px!important;line-height:1.8!important;color:#a9bdd8!important}\r\n@media(hover:hover) and (pointer:fine){#ok3d-project-rives .rives-material-zoom:not(:disabled):hover img{transform:scale(1.035)}#ok3d-project-rives .rives-material-zoom:not(:disabled):hover .rives-material-expand{transform:translate(2px,-2px);background:#294470}}\r\n@media(max-width:900px){#ok3d-project-rives .rives-asset .rives-material-visual{margin:-26px -26px 26px}}\r\n@media(max-width:700px){#ok3d-project-rives .rives-material-details{grid-template-columns:1fr;gap:25px}#ok3d-project-rives .rives-material-zoom{aspect-ratio:1.15}#ok3d-project-rives .rives-material-empty strong{font-size:20px}}\r\n@media(prefers-reduced-motion:reduce){#ok3d-project-rives .rives-material-zoom img,#ok3d-project-rives .rives-material-expand{transition:none!important;transform:none!important}}\r\n<\/style>\r\n<script>(()=>{'use strict';const root=document.getElementById('ok3d-project-rives');if(!root||root.dataset.ready)return;root.dataset.ready='true';const $=s=>root.querySelector(s),$$=s=>[...root.querySelectorAll(s)];\r\n$$('[data-year]').forEach(el=>el.textContent=new Date().getFullYear());\r\nconst reduced=matchMedia('(prefers-reduced-motion:reduce)');if('IntersectionObserver'in window&&!reduced.matches){const observer=new IntersectionObserver(entries=>entries.forEach(e=>{if(e.isIntersecting){e.target.classList.remove('pending');observer.unobserve(e.target);}}),{threshold:.06});$$('.reveal').forEach(el=>{el.classList.add('pending');observer.observe(el);});}\r\nconst video=$('video'),cover=$('.film-cover'),error=$('.case-video-error');if(video&&cover){video.controls=true;cover.hidden=false;cover.addEventListener('click',async()=>{cover.hidden=true;try{await video.play();}catch{error.hidden=false;}});video.addEventListener('error',()=>{error.hidden=false;cover.hidden=true;});}\r\nconst dialog=$('dialog'),full=$('[data-full-image]');let opener,previousOverflow='';$$('[data-zoom]').forEach(button=>button.addEventListener('click',()=>{const img=button.querySelector('img');full.src=img.src;full.alt=img.alt;$('[data-image-title]').textContent=img.alt;opener=button;previousOverflow=document.body.style.overflow;document.body.style.overflow='hidden';dialog.showModal();}));$('[data-close]').addEventListener('click',()=>dialog.close());dialog.addEventListener('close',()=>{document.body.style.overflow=previousOverflow;full.removeAttribute('src');opener?.focus({preventScroll:true});});dialog.addEventListener('click',e=>{if(e.target===dialog){const b=dialog.getBoundingClientRect();if(e.clientX<b.left||e.clientX>b.right||e.clientY<b.top||e.clientY>b.bottom)dialog.close();}});\r\n})();\r\n<\/script>\r\n<script>\r\n(()=>{'use strict';const root=document.getElementById('ok3d-project-rives');if(!root||root.dataset.portraitReady)return;root.dataset.portraitReady='true';\r\n\/\/ LIEN DU FILM PORTRAIT : YouTube, Vimeo ou URL directe .mp4\r\nconst PORTRAIT_VIDEO_URL='https:\/\/youtube.com\/shorts\/gqQUSNUQXIc';\r\nif(!PORTRAIT_VIDEO_URL.trim())return;\r\nlet url;try{url=new URL(PORTRAIT_VIDEO_URL.trim());if(url.protocol!=='https:')return;}catch{return;}\r\nconst box=root.querySelector('[data-rives-portrait]'),link=root.querySelector('[data-rives-portrait-link]');let player;\r\nif(\/(^|\\.)vimeo\\.com$\/.test(url.hostname)){const id=url.pathname.match(\/(?:video\\\/)?(\\d+)\/)?.[1];if(!id)return;player=document.createElement('iframe');const embed=new URL('https:\/\/player.vimeo.com\/video\/'+id);embed.searchParams.set('title','0');embed.searchParams.set('byline','0');embed.searchParams.set('portrait','0');const hash=url.searchParams.get('h')||url.pathname.match(\/\\\/\\d+\\\/([a-zA-Z0-9]+)\/)?.[1];if(hash)embed.searchParams.set('h',hash);player.src=embed.href;player.title='RIVES \u2014 film portrait';player.allow='fullscreen; picture-in-picture';player.allowFullscreen=true;player.loading='lazy';}\r\nelse if(\/(^|\\.)youtube\\.com$\/.test(url.hostname)||\/(^|\\.)youtu\\.be$\/.test(url.hostname)){\r\nlet id='';\r\nif(url.hostname.includes('youtu.be')){id=url.pathname.split('\/').filter(Boolean)[0]||'';}\r\nelse{id=url.searchParams.get('v')||'';if(!id){const match=url.pathname.match(\/\\\/(?:embed|shorts)\\\/([^\/?]+)\/);if(match)id=match[1];}}\r\nif(!id)return;\r\nplayer=document.createElement('iframe');\r\nplayer.src='https:\/\/www.youtube-nocookie.com\/embed\/'+encodeURIComponent(id)+'?rel=0&playsinline=1';\r\nplayer.title='RIVES \u2014 film portrait';\r\nplayer.allow='accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share';\r\nplayer.referrerPolicy='strict-origin-when-cross-origin';player.allowFullscreen=true;player.loading='lazy';\r\n}\r\nelse if(\/\\.mp4$\/i.test(url.pathname)){player=document.createElement('video');player.src=url.href;player.controls=true;player.playsInline=true;player.preload='none';player.setAttribute('aria-label','RIVES \u2014 film portrait');}else{return;}\r\nbox.replaceChildren(player);link.href=url.href;link.hidden=false;\r\n})();\r\n<\/script>\r\n<script>\r\n(()=>{'use strict';const root=document.getElementById('ok3d-project-rives');if(!root||root.dataset.materialReady)return;root.dataset.materialReady='true';\r\n\/* VOS QUATRE VISUELS : coller les URL de la m\u00e9diath\u00e8que WordPress entre les guillemets.\r\n   Les deux premiers gardent l'objet entier ; les deux derniers sont des gros plans.\r\n   Le clic ouvre automatiquement l'image dans la galerie agrandie. *\/\r\nconst RIVES_VISUALS={\r\n paddle:'https:\/\/www.ok3d.fr\/wp-content\/uploads\/2026\/09\/visuel_paddle-1.webp',\r\n pagaie:'https:\/\/www.ok3d.fr\/wp-content\/uploads\/2026\/09\/visuel_paddle_rames.webp',\r\n texturePaddle:'https:\/\/www.ok3d.fr\/wp-content\/uploads\/2026\/09\/visuel_paddle_textures.webp',\r\n detailPagaie:'https:\/\/www.ok3d.fr\/wp-content\/uploads\/2026\/09\/visuel_paddle_rames_textures.webp'\r\n}\r\nObject.entries(RIVES_VISUALS).forEach(([key,value])=>{if(!value.trim())return;let url;try{url=new URL(value.trim(),location.href);if(!['https:','http:'].includes(url.protocol))return;}catch{return;}const button=root.querySelector('[data-rives-visual=\"'+key+'\"]');if(!button)return;const img=button.querySelector('img'),placeholder=button.querySelector('.rives-material-empty');img.addEventListener('load',()=>{img.hidden=false;placeholder.hidden=true;button.disabled=false;});img.addEventListener('error',()=>{img.hidden=true;placeholder.hidden=false;button.disabled=true;placeholder.querySelector('small').textContent='VISUEL INDISPONIBLE';});img.src=url.href;});\r\n})();\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Aller au contenu \u2190 Retour aux projets Projet \/ 3D &amp; motion RIVES. Du produit \u00e0 l\u2019exp\u00e9rience.Un film 3D pour donner envie de prendre le large. D\u00e9couvrir le film \u2193 Client RIVES Intervention Mod\u00e9lisation \u00b7 Textures \u00b7 Animation 3D Projet Station paddle autonome Livraison Paysage \u00b7 Portrait RIVES \u2014 FILM 3DOuvrir le film \u2197 01 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":14833,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"footnotes":""},"class_list":["post-15372","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.ok3d.fr\/en\/wp-json\/wp\/v2\/pages\/15372","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ok3d.fr\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.ok3d.fr\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.ok3d.fr\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ok3d.fr\/en\/wp-json\/wp\/v2\/comments?post=15372"}],"version-history":[{"count":13,"href":"https:\/\/www.ok3d.fr\/en\/wp-json\/wp\/v2\/pages\/15372\/revisions"}],"predecessor-version":[{"id":15635,"href":"https:\/\/www.ok3d.fr\/en\/wp-json\/wp\/v2\/pages\/15372\/revisions\/15635"}],"up":[{"embeddable":true,"href":"https:\/\/www.ok3d.fr\/en\/wp-json\/wp\/v2\/pages\/14833"}],"wp:attachment":[{"href":"https:\/\/www.ok3d.fr\/en\/wp-json\/wp\/v2\/media?parent=15372"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}