@import url('https://fonts-api.wp.com/css2?family=Poppins:wght@400;500;600;700;800&display=swap');
/* ==== SAVISUALISE â€” feuille de style commune (Accueil, Services, Qui sommes-nous, Contact) ==== */
/* 1. On masque l'en-tete et le pied de page du theme sur ces 4 pages uniquement */
.page-id-10289 .site-footer,.page-id-10289 #colophon,.page-id-10289 .entry-header,.page-id-10289 .page-header,.page-id-10289 .wp-site-blocks>footer,.page-id-10304 .site-footer,.page-id-10304 #colophon,.page-id-10304 .entry-header,.page-id-10304 .page-header,.page-id-10304 .wp-site-blocks>footer,.page-id-10305 .site-footer,.page-id-10305 #colophon,.page-id-10305 .entry-header,.page-id-10305 .page-header,.page-id-10305 .wp-site-blocks>footer,.page-id-10306 .site-footer,.page-id-10306 #colophon,.page-id-10306 .entry-header,.page-id-10306 .page-header,.page-id-10306 .wp-site-blocks>footer{display:none!important}
.page-id-10289 .site-content,.page-id-10289 #content,.page-id-10289 #primary,.page-id-10289 .entry-content,.page-id-10289 .site-main,.page-id-10304 .site-content,.page-id-10304 #content,.page-id-10304 #primary,.page-id-10304 .entry-content,.page-id-10304 .site-main,.page-id-10305 .site-content,.page-id-10305 #content,.page-id-10305 #primary,.page-id-10305 .entry-content,.page-id-10305 .site-main,.page-id-10306 .site-content,.page-id-10306 #content,.page-id-10306 #primary,.page-id-10306 .entry-content,.page-id-10306 .site-main{margin:0!important;padding:0!important;max-width:none!important;width:100%!important}
.page-id-10289 .entry-content>*,.page-id-10304 .entry-content>*,.page-id-10305 .entry-content>*,.page-id-10306 .entry-content>*{max-width:none!important}
.page-id-10289 body,body.page-id-10289,.page-id-10304 body,body.page-id-10304,.page-id-10305 body,body.page-id-10305,.page-id-10306 body,body.page-id-10306{overflow-x:hidden!important}
/* 2. Pleine largeur */
.elementor-10289,body.page-id-10289 .elementor,.elementor-10304,body.page-id-10304 .elementor,.elementor-10305,body.page-id-10305 .elementor,.elementor-10306,body.page-id-10306 .elementor{width:100vw!important;max-width:100vw!important;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;padding-left:0!important;padding-right:0!important}
body.page-id-10289 #page,body.page-id-10289 #content,body.page-id-10289 #primary,body.page-id-10289 #main,body.page-id-10289 .site,body.page-id-10289 .site-content,body.page-id-10289 .site-main,body.page-id-10289 .content-area,body.page-id-10289 .entry-content,body.page-id-10289 .entry-content>*,body.page-id-10289 .container,body.page-id-10289 .container-fluid,body.page-id-10289 .wrapper,body.page-id-10289 article,body.page-id-10289 .page,body.page-id-10289 .type-page,body.page-id-10289 .hentry,body.page-id-10304 #page,body.page-id-10304 #content,body.page-id-10304 #primary,body.page-id-10304 #main,body.page-id-10304 .site,body.page-id-10304 .site-content,body.page-id-10304 .site-main,body.page-id-10304 .content-area,body.page-id-10304 .entry-content,body.page-id-10304 .entry-content>*,body.page-id-10304 .container,body.page-id-10304 .container-fluid,body.page-id-10304 .wrapper,body.page-id-10304 article,body.page-id-10304 .page,body.page-id-10304 .type-page,body.page-id-10304 .hentry,body.page-id-10305 #page,body.page-id-10305 #content,body.page-id-10305 #primary,body.page-id-10305 #main,body.page-id-10305 .site,body.page-id-10305 .site-content,body.page-id-10305 .site-main,body.page-id-10305 .content-area,body.page-id-10305 .entry-content,body.page-id-10305 .entry-content>*,body.page-id-10305 .container,body.page-id-10305 .container-fluid,body.page-id-10305 .wrapper,body.page-id-10305 article,body.page-id-10305 .page,body.page-id-10305 .type-page,body.page-id-10305 .hentry,body.page-id-10306 #page,body.page-id-10306 #content,body.page-id-10306 #primary,body.page-id-10306 #main,body.page-id-10306 .site,body.page-id-10306 .site-content,body.page-id-10306 .site-main,body.page-id-10306 .content-area,body.page-id-10306 .entry-content,body.page-id-10306 .entry-content>*,body.page-id-10306 .container,body.page-id-10306 .container-fluid,body.page-id-10306 .wrapper,body.page-id-10306 article,body.page-id-10306 .page,body.page-id-10306 .type-page,body.page-id-10306 .hentry{max-width:none!important;width:auto!important;margin-left:0!important;margin-right:0!important;padding-left:0!important;padding-right:0!important;float:none!important}
/* 3. Design system Savisualise */
.sv-panel[hidden],.sv-psub[hidden]{display:none!important}@media(min-width:1025px){.sv-panel{display:none!important}}.sv-grad{background:linear-gradient(100deg,#A036FF,#00ACFF);-webkit-background-clip:text;background-clip:text;color:transparent}.sv-v-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:2px}.sv-v-tools img{height:22px;width:auto;object-fit:contain;opacity:.92;filter:brightness(0) invert(1)}.sv-v-tools .tl{font-size:11.5px;font-weight:600;letter-spacing:.05em;color:rgba(255,255,255,.78);border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);padding:5px 10px;border-radius:8px}.sv-v:not(.sv-v-lead) .sv-v-tools .tl{color:#3D3660;border-color:var(--sv-line);background:var(--sv-mist)}.sv-hx{width:100%;max-width:540px;margin:0 auto}.sv-hx svg{width:100%;height:auto;overflow:visible;font-family:var(--sv-ff)}.sv-hx .pnl{fill:rgba(255,255,255,.045);stroke:rgba(255,255,255,.12);stroke-width:1}.sv-hx .lbl{fill:rgba(255,255,255,.52);font-size:10px;font-weight:600;letter-spacing:1.3px}.sv-hx .wire{fill:none;stroke:rgba(255,255,255,.16);stroke-width:1.2;stroke-dasharray:3 5}.sv-hx .ring{fill:none;stroke:url(#svG1);stroke-width:1.4;stroke-dasharray:42 16;transform-box:view-box;transform-origin:240px 215px;animation:svSpin 18s linear infinite}.sv-hx .bar{fill:url(#svG2);transform-box:fill-box;transform-origin:bottom;transform:scaleY(0);animation:sv2Up 1s cubic-bezier(.16,1,.3,1) forwards}.sv-hx .bar:nth-of-type(1){animation-delay:.25s}.sv-hx .bar:nth-of-type(2){animation-delay:.35s}.sv-hx .bar:nth-of-type(3){animation-delay:.45s}.sv-hx .bar:nth-of-type(4){animation-delay:.55s}.sv-hx .bar:nth-of-type(5){animation-delay:.65s}.sv-hx .bar:nth-of-type(6){animation-delay:.75s}@keyframes sv2Up{to{transform:scaleY(1)}}.sv-hx .syn{fill:none;stroke:#00ACFF;stroke-width:1.1;opacity:.55;stroke-dasharray:4 6;animation:sv2Flow 1.4s linear infinite}@keyframes sv2Flow{to{stroke-dashoffset:-20}}.sv-hx .nd{fill:url(#svG2)}.sv-hx .nd-o{fill:#00ACFF;animation:sv2Pulse 2.2s ease-in-out infinite}@keyframes sv2Pulse{0%,100%{opacity:.45}50%{opacity:1}}.sv-hx .frm{fill:rgba(255,255,255,.05);stroke:rgba(255,255,255,.16);stroke-width:1}.sv-hx .dt{fill:rgba(255,255,255,.28)}.sv-hx .blks rect{fill:url(#svG2);opacity:0;animation:sv2In .55s ease forwards}.sv-hx .blks rect:nth-of-type(1){animation-delay:.5s}.sv-hx .blks rect:nth-of-type(2){animation-delay:.7s}.sv-hx .blks rect:nth-of-type(3){animation-delay:.9s}.sv-hx .blks rect:nth-of-type(4){animation-delay:1.1s}@keyframes sv2In{to{opacity:1}}.sv-hx .blobs circle{mix-blend-mode:screen;transform-box:fill-box;transform-origin:center;animation:sv2Br 6s ease-in-out infinite}.sv-hx .blobs circle:nth-of-type(2){animation-delay:-2s}.sv-hx .blobs circle:nth-of-type(3){animation-delay:-4s}@keyframes sv2Br{0%,100%{transform:scale(1)}50%{transform:scale(1.1)}}.sv-hx .pen{fill:none;stroke:#fff;stroke-width:1.6;stroke-linecap:round;stroke-dasharray:120;stroke-dashoffset:120;animation:svDraw 2s ease 1s forwards}@media(prefers-reduced-motion:reduce){.sv-hx *{animation:none!important}.sv-hx .bar{transform:scaleY(1)!important}.sv-hx .blks rect{opacity:1!important}.sv-hx .pen{stroke-dashoffset:0!important}}@media(max-width:767px){.sv-hdr{padding:12px 0}.sv-hdr-in{gap:12px;padding:0 18px}.sv-logo img{height:30px}.sv-hx{max-width:100%}.sv-caps span{font-size:11.5px;padding:6px 11px}.sv-ft-bot{flex-direction:column;gap:8px}.sv-v-tools img{height:19px}}.sv-v.sv-v-lead h3{color:#fff}.sv-v.sv-v-lead p{color:rgba(255,255,255,.74)}.sv-v.sv-v-lead li{color:rgba(255,255,255,.86);background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.14)}.sv-v.sv-v-lead .sv-v-go{color:#fff}.sv-v.sv-v-lead .sv-v-tools .tl{color:rgba(255,255,255,.78);border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.06)}@media(max-width:1024px){.sv-vg{gap:16px}.sv-v{padding:26px}.sv-v h3{font-size:1.12rem}.sv-v p{font-size:.9rem}.sv-hx{max-width:460px}.sv-me ol{gap:16px}.sv-ft-in{gap:32px}}@media(max-width:600px){.sv-v-tools{gap:9px}.sv-v-tools .tl{font-size:10.5px;padding:4px 8px}.sv-v-tools img{height:18px}.sv-v li{font-size:11.5px;padding:5px 10px}.sv-t blockquote{font-size:1rem}.sv-tt-nav{margin-top:24px}}
:root{--sv-violet:#5631DE;--sv-violet-deep:#30139C;--sv-violet-night:#26126F;--sv-accent:#A036FF;--sv-blue:#00ACFF;--sv-night:#000039;--sv-black:#1C1C1C;--sv-white:#FFFFFF;--sv-mist:#F6F4FF;--sv-line:#E4DFF5;--sv-grey:#6C6491;--sv-ff:'Poppins',-apple-system,'Segoe UI',sans-serif}.sv-js .sv-rise{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}.sv-js .sv-rise.is-in{opacity:1;transform:none}body{overflow-x:hidden}@media(prefers-reduced-motion:reduce){.sv-js .sv-rise{opacity:1!important;transform:none!important;transition:none!important}}.sv-hdr{position:fixed;top:0;left:0;right:0;z-index:9000;font-family:var(--sv-ff);transition:background .35s ease,box-shadow .35s ease,padding .35s ease;padding:18px 0}.sv-hdr.is-stuck{background:rgba(0,0,57,.82);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 1px 0 rgba(255,255,255,.08),0 18px 40px -28px rgba(0,0,0,.9);padding:10px 0}.sv-hdr-in{max-width:1240px;margin:0 auto;padding:0 24px;display:flex;align-items:center;gap:28px}.sv-logo{flex:0 0 auto;line-height:0}.sv-logo img{height:40px;width:auto;transition:height .35s ease}.sv-hdr.is-stuck .sv-logo img{height:32px}.sv-nav{display:flex;align-items:center;gap:4px;margin-left:auto}.sv-nl{position:relative;display:inline-flex;align-items:center;gap:6px;padding:10px 14px;color:rgba(255,255,255,.86);text-decoration:none;font-size:15px;font-weight:500;border-radius:8px;transition:color .2s ease}.sv-nl:hover,.sv-nl:focus-visible{color:#fff}.sv-nl::after{content:'';position:absolute;left:14px;right:14px;bottom:4px;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--sv-violet),var(--sv-accent));transform:scaleX(0);transform-origin:left;transition:transform .28s cubic-bezier(.4,0,.2,1)}.sv-nl:hover::after,.sv-nl.is-active::after,.sv-mw:hover .sv-nl-mega::after{transform:scaleX(1)}.sv-nl svg{transition:transform .28s ease}.sv-mw:hover .sv-nl-mega svg{transform:rotate(180deg)}.sv-mw{position:relative}.sv-mega{position:absolute;top:calc(100% + 14px);left:50%;transform:translate(-50%,10px);width:min(760px,88vw);background:#0B0827;border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:10px;box-shadow:0 40px 80px -40px rgba(0,0,0,.9);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s ease,transform .25s cubic-bezier(.4,0,.2,1),visibility .25s}.sv-mw:hover .sv-mega,.sv-mw:focus-within .sv-mega{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}.sv-mega::before{content:'';position:absolute;top:-14px;left:0;right:0;height:14px}.sv-mega-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px}.sv-mi{display:flex;gap:14px;padding:14px;border-radius:13px;text-decoration:none;transition:background .2s ease,transform .2s ease}.sv-mi:hover{background:rgba(86,49,222,.22);transform:translateX(3px)}.sv-mi-ic{flex:0 0 38px;height:38px;border-radius:11px;background:linear-gradient(140deg,var(--sv-violet),var(--sv-accent));position:relative}.sv-mi-ic::after{content:'';position:absolute;inset:0;background-repeat:no-repeat;background-position:center;background-size:19px}.sv-mi-ic[data-t=data]::after{background-image:url('data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27white%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%3E%3Cpath%20d=%27M4%2020V10M10%2020V4M16%2020v-7M22%2020H2%27/%3E%3C/svg%3E')}.sv-mi-ic[data-t=web]::after{background-image:url('data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27white%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Cpath%20d=%27M8%2017l-5-5%205-5M16%207l5%205-5%205%27/%3E%3C/svg%3E')}.sv-mi-ic[data-t=ia]::after{background-image:url('data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27white%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%3E%3Ccircle%20cx=%2712%27%20cy=%2712%27%20r=%273%27/%3E%3Cpath%20d=%27M12%202v4M12%2018v4M2%2012h4M18%2012h4M5%205l3%203M16%2016l3%203M19%205l-3%203M8%2016l-3%203%27/%3E%3C/svg%3E')}.sv-mi-ic[data-t=design]::after{background-image:url('data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27white%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Cpath%20d=%27M12%203a9%209%200%20100%2018h2a3%203%200%20000-6%203%203%200%20010-6h1a5%205%200%2000-3-6z%27/%3E%3Ccircle%20cx=%278%27%20cy=%279%27%20r=%271%27/%3E%3Ccircle%20cx=%2713%27%20cy=%277%27%20r=%271%27/%3E%3C/svg%3E')}.sv-mi-tx{display:flex;flex-direction:column;gap:3px}.sv-mi-tx b{color:#fff;font-size:15px;font-weight:600;letter-spacing:-.01em}.sv-mi-tx i{color:rgba(255,255,255,.6);font-size:12.5px;font-style:normal;line-height:1.45}.sv-mi-tx em{align-self:flex-start;margin-top:4px;font-style:normal;font-size:10px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:#fff;background:var(--sv-accent);padding:2px 8px;border-radius:100px}.sv-mega-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:6px;padding:14px 18px;border-top:1px solid rgba(255,255,255,.08)}.sv-mega-foot span{color:rgba(255,255,255,.55);font-size:12.5px}.sv-mega-foot a{display:inline-flex;align-items:center;gap:7px;color:#fff;text-decoration:none;font-size:13px;font-weight:600}.sv-mega-foot a svg{transition:transform .25s ease}.sv-mega-foot a:hover svg{transform:translateX(4px)}.sv-cta{flex:0 0 auto;display:inline-flex;align-items:center;padding:12px 24px;border-radius:100px;background:linear-gradient(120deg,var(--sv-violet),var(--sv-accent));background-size:180% 100%;color:#fff;text-decoration:none;font-size:14px;font-weight:600;white-space:nowrap;box-shadow:0 10px 26px -12px rgba(160,54,255,.85);transition:background-position .45s ease,transform .25s ease}.sv-cta:hover{background-position:100% 0;transform:translateY(-2px)}.sv-burger{display:none;flex-direction:column;gap:5px;width:44px;height:44px;align-items:center;justify-content:center;background:transparent;border:0;cursor:pointer}.sv-burger span{display:block;width:22px;height:2px;border-radius:2px;background:#fff;transition:transform .3s ease,opacity .2s ease}.sv-burger[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.sv-burger[aria-expanded=true] span:nth-child(2){opacity:0}.sv-burger[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.sv-panel{position:fixed;inset:0;z-index:8990;background:#05031A;padding:104px 26px 40px;display:flex;flex-direction:column;gap:2px;font-family:var(--sv-ff);overflow-y:auto}.sv-pl{display:flex;align-items:center;justify-content:space-between;width:100%;padding:17px 4px;color:#fff;text-decoration:none;font-size:21px;font-weight:600;letter-spacing:-.015em;background:transparent;border:0;border-bottom:1px solid rgba(255,255,255,.09);cursor:pointer;text-align:left;opacity:0;transform:translateY(14px);animation:svIn .4s ease forwards}.sv-panel .sv-pl:nth-child(1){animation-delay:.05s}.sv-panel .sv-pl:nth-child(2){animation-delay:.1s}.sv-panel .sv-pl:nth-child(4){animation-delay:.15s}.sv-panel .sv-pl:nth-child(5){animation-delay:.2s}.sv-pl-tog[aria-expanded=true] svg{transform:rotate(180deg)}.sv-pl-tog svg{transition:transform .3s ease}.sv-psub{display:flex;flex-direction:column;padding:6px 0 10px 16px}.sv-psub a{padding:11px 0;color:rgba(255,255,255,.68);text-decoration:none;font-size:16px}.sv-cta-p{margin-top:26px;justify-content:center;padding:17px 24px;font-size:16px;opacity:0;transform:translateY(14px);animation:svIn .4s ease .28s forwards}@keyframes svIn{to{opacity:1;transform:none}}@media(max-width:1024px){.sv-nav,.sv-hdr-in>.sv-cta{display:none}.sv-burger{display:flex;margin-left:auto}}@media(prefers-reduced-motion:reduce){.sv-hdr,.sv-nl::after,.sv-mega,.sv-mi,.sv-cta,.sv-burger span,.sv-pl,.sv-cta-p{transition:none!important;animation:none!important;opacity:1!important;transform:none!important}}@keyframes svSpin{to{transform:rotate(360deg)}}@keyframes svDraw{to{stroke-dashoffset:0}}.sv-mq{position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.sv-mq-track{display:flex;width:max-content;animation:svMq 42s linear infinite}.sv-mq:hover .sv-mq-track{animation-play-state:paused}.sv-mq-set{display:flex;align-items:center;list-style:none;margin:0;padding:0}.sv-mq-set li{flex:0 0 20vw;display:flex;align-items:center;justify-content:center;padding:0 22px}.sv-mq-set img{height:38px;width:auto;max-width:100%;object-fit:contain;filter:brightness(0) invert(1);opacity:.55;transition:opacity .3s ease,transform .3s ease}.sv-mq-set img:hover{opacity:1;transform:scale(1.07)}@keyframes svMq{to{transform:translateX(-50%)}}@media(prefers-reduced-motion:reduce){.sv-mq-track{animation:none}}@media(max-width:1024px){.sv-mq-set li{flex:0 0 33.333vw;padding:0 18px}}@media(max-width:767px){.sv-mq-set li{flex:0 0 50vw;padding:0 16px}.sv-mq-set img{height:30px}}
.sv-vg{display:grid;grid-template-columns:1fr 1fr;gap:20px;font-family:var(--sv-ff)}.sv-v{position:relative;display:flex;flex-direction:column;gap:12px;padding:32px;overflow:hidden;background:#fff;border:1px solid var(--sv-line);border-radius:20px;text-decoration:none;transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s ease}.sv-v::before{content:'';position:absolute;inset:0;border-radius:20px;padding:1.5px;background:linear-gradient(135deg,var(--sv-violet),var(--sv-accent),var(--sv-blue));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .4s ease;pointer-events:none}.sv-v:hover{transform:translateY(-6px);box-shadow:0 30px 60px -34px rgba(38,18,111,.5)}.sv-v:hover::before{opacity:1}.sv-v-lead{background:linear-gradient(140deg,#26126F 0%,#000039 60%,#30139C 100%);border-color:transparent}.sv-v ul{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:7px}.sv-v li{color:#3D3660;font-size:12px;font-weight:500;background:var(--sv-mist);border:1px solid var(--sv-line);padding:6px 12px;border-radius:100px}.sv-v-tag{align-self:flex-start;font-size:10.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#fff;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.2);padding:5px 12px;border-radius:100px}.sv-v-tag-new{background:linear-gradient(120deg,var(--sv-violet),var(--sv-accent));border-color:transparent;position:absolute;top:26px;right:26px}.sv-v-ic{width:46px;height:46px;border-radius:14px;position:relative;background:linear-gradient(140deg,var(--sv-violet),var(--sv-accent));transition:transform .4s cubic-bezier(.16,1,.3,1)}.sv-v:hover .sv-v-ic{transform:rotate(-8deg) scale(1.06)}.sv-v-ic::after{content:'';position:absolute;inset:0;background-repeat:no-repeat;background-position:center;background-size:23px}.sv-v-ic[data-t=data]::after{background-image:url('data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27white%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%3E%3Cpath%20d=%27M4%2020V10M10%2020V4M16%2020v-7M22%2020H2%27/%3E%3C/svg%3E')}.sv-v-ic[data-t=web]::after{background-image:url('data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27white%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Cpath%20d=%27M8%2017l-5-5%205-5M16%207l5%205-5%205%27/%3E%3C/svg%3E')}.sv-v-ic[data-t=ia]::after{background-image:url('data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27white%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%3E%3Ccircle%20cx=%2712%27%20cy=%2712%27%20r=%273%27/%3E%3Cpath%20d=%27M12%202v4M12%2018v4M2%2012h4M18%2012h4M5%205l3%203M16%2016l3%203M19%205l-3%203M8%2016l-3%203%27/%3E%3C/svg%3E')}.sv-v-ic[data-t=design]::after{background-image:url('data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27white%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Cpath%20d=%27M12%203a9%209%200%20100%2018h2a3%203%200%20000-6%203%203%200%20010-6h1a5%205%200%2000-3-6z%27/%3E%3Ccircle%20cx=%278%27%20cy=%279%27%20r=%271%27/%3E%3Ccircle%20cx=%2713%27%20cy=%277%27%20r=%271%27/%3E%3C/svg%3E')}.sv-v h3{margin:2px 0 0;color:var(--sv-night);font-size:1.24rem;font-weight:600;letter-spacing:-.015em}.sv-v p{margin:0;color:var(--sv-grey);font-size:.95rem;line-height:1.6}.sv-v-go{margin-top:auto;padding-top:8px;display:inline-flex;align-items:center;gap:8px;color:var(--sv-violet);font-size:13.5px;font-weight:600}.sv-v-go svg{transition:transform .3s ease}.sv-v:hover .sv-v-go svg{transform:translateX(5px)}@media(max-width:767px){.sv-vg{grid-template-columns:1fr;gap:14px}.sv-v{padding:26px}.sv-v h3{font-size:1.15rem}}@media(prefers-reduced-motion:reduce){.sv-v,.sv-v-ic,.sv-v-go svg{transition:none!important}}.sv-st{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;font-family:var(--sv-ff)}.sv-s{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;padding:26px 12px}.sv-s-ring{position:absolute;top:8px;left:50%;transform:translateX(-50%) rotate(-90deg);width:126px;height:126px}.sv-s-bg{fill:none;stroke:rgba(255,255,255,.09);stroke-width:3}.sv-s-fg{fill:none;stroke:url(#svGst);stroke-width:3;stroke-linecap:round;stroke-dasharray:327;stroke-dashoffset:327;transition:stroke-dashoffset 1.6s cubic-bezier(.16,1,.3,1) .15s}.sv-s.is-in .sv-s-fg{stroke-dashoffset:calc(327 - 327 * var(--p))}.sv-s-n{position:relative;display:inline-flex;align-items:flex-start;color:#fff;font-size:clamp(2.1rem,4.4vw,3rem);font-weight:800;letter-spacing:-.03em;line-height:1.1;font-variant-numeric:tabular-nums}.sv-s-n i{font-style:normal;font-size:.5em;margin-top:.25em;background:linear-gradient(120deg,var(--sv-accent),var(--sv-blue));-webkit-background-clip:text;background-clip:text;color:transparent}.sv-s-l{position:relative;color:rgba(255,255,255,.62);font-size:13.5px;font-weight:500;text-align:center}@media(max-width:900px){.sv-st{grid-template-columns:1fr 1fr;gap:10px}.sv-s{padding:22px 8px}.sv-s-ring{width:112px;height:112px}}@media(prefers-reduced-motion:reduce){.sv-s-fg{transition:none}}.sv-me{position:relative;font-family:var(--sv-ff)}.sv-me ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.sv-me li{position:relative;padding:28px 22px;background:#fff;border:1px solid var(--sv-line);border-radius:18px;transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s ease}.sv-me li:hover{transform:translateY(-5px);box-shadow:0 26px 50px -32px rgba(38,18,111,.45)}.sv-me-n{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:12px;background:linear-gradient(140deg,var(--sv-violet),var(--sv-accent));color:#fff;font-size:15px;font-weight:700;margin-bottom:14px;font-variant-numeric:tabular-nums}.sv-me h3{margin:0 0 7px;color:var(--sv-night);font-size:1.06rem;font-weight:600;letter-spacing:-.015em}.sv-me p{margin:0;color:var(--sv-grey);font-size:.91rem;line-height:1.6}.sv-me-line{position:absolute;top:47px;left:11%;right:11%;height:2px;background:var(--sv-line);z-index:0}.sv-me-line span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--sv-violet),var(--sv-accent),var(--sv-blue));transition:width 1.5s cubic-bezier(.16,1,.3,1) .2s}.sv-me.is-drawn .sv-me-line span{width:100%}@media(max-width:1024px){.sv-me ol{grid-template-columns:1fr 1fr}.sv-me-line{display:none}}@media(max-width:600px){.sv-me ol{grid-template-columns:1fr;gap:12px}.sv-me li{padding:24px 20px}}@media(prefers-reduced-motion:reduce){.sv-me-line span{transition:none;width:100%}.sv-me li{transition:none}}.sv-tt{font-family:var(--sv-ff)}.sv-tt-vp{overflow:hidden}.sv-tt-tr{display:flex;transition:transform .6s cubic-bezier(.16,1,.3,1)}.sv-t{flex:0 0 100%;margin:0;padding:0 6px;display:flex;flex-direction:column;align-items:center;gap:24px;text-align:center}.sv-t blockquote{margin:0;max-width:62ch;color:var(--sv-night);font-size:clamp(1rem,1.8vw,1.3rem);font-weight:500;line-height:1.55;letter-spacing:-.015em;text-wrap:balance}.sv-t blockquote::before{content:'';display:block;width:34px;height:26px;margin:0 auto 18px;background:linear-gradient(120deg,var(--sv-violet),var(--sv-accent));-webkit-mask:url('data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2018%27%3E%3Cpath%20d=%27M0%2018V9C0%204%203%201%208%200l1%203C6%204%204%206%204%209h4v9H0zm14%200V9c0-5%203-8%208-9l1%203c-3%201-5%203-5%206h4v9h-8z%27/%3E%3C/svg%3E') center/contain no-repeat;mask:url('data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2018%27%3E%3Cpath%20d=%27M0%2018V9C0%204%203%201%208%200l1%203C6%204%204%206%204%209h4v9H0zm14%200V9c0-5%203-8%208-9l1%203c-3%201-5%203-5%206h4v9h-8z%27/%3E%3C/svg%3E') center/contain no-repeat}.sv-t figcaption{display:flex;flex-direction:column;gap:3px}.sv-t figcaption b{color:var(--sv-night);font-size:15px;font-weight:600}.sv-t figcaption span{color:var(--sv-grey);font-size:13px}.sv-tt-nav{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:34px}.sv-tt-b{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:#fff;border:1px solid var(--sv-line);color:var(--sv-violet);cursor:pointer;transition:background .25s ease,color .25s ease,transform .25s ease}.sv-tt-b:hover{background:var(--sv-violet);color:#fff;transform:scale(1.06);border-color:transparent}.sv-tt-dots{display:flex;gap:8px}.sv-tt-dots button{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:var(--sv-line);cursor:pointer;transition:width .3s ease,background .3s ease}.sv-tt-dots button.is-on{width:26px;border-radius:100px;background:linear-gradient(90deg,var(--sv-violet),var(--sv-accent))}@media(prefers-reduced-motion:reduce){.sv-tt-tr,.sv-tt-b,.sv-tt-dots button{transition:none}}.sv-caps{display:flex;flex-wrap:wrap;gap:9px;font-family:var(--sv-ff);margin-top:4px}.sv-caps span{color:rgba(255,255,255,.9);font-size:12.5px;font-weight:500;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);padding:7px 14px;border-radius:100px}.sv-ft{font-family:var(--sv-ff)}.sv-ft-in{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:46px;padding-bottom:44px}.sv-ft-brand img{height:42px;width:auto;margin-bottom:20px}.sv-ft-brand p{margin:0 0 22px;color:rgba(255,255,255,.58);font-size:14px;line-height:1.65;max-width:34ch}.sv-ft-soc{display:flex;gap:10px}.sv-ft-soc a{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:11px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.8);transition:background .25s ease,transform .25s ease,color .25s ease}.sv-ft-soc a:hover{background:linear-gradient(140deg,var(--sv-violet),var(--sv-accent));color:#fff;transform:translateY(-3px);border-color:transparent}.sv-ft-col{display:flex;flex-direction:column;gap:11px}.sv-ft-col h4{margin:0 0 6px;color:#fff;font-size:12px;font-weight:600;letter-spacing:.13em;text-transform:uppercase}.sv-ft-col a{color:rgba(255,255,255,.58);text-decoration:none;font-size:14px;width:fit-content;transition:color .2s ease,transform .2s ease}.sv-ft-col a:hover{color:#fff;transform:translateX(3px)}.sv-ft-note{color:rgba(255,255,255,.36);font-size:12.5px;margin-top:2px}.sv-ft-bot{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:26px;border-top:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.38);font-size:12.5px}@media(max-width:900px){.sv-ft-in{grid-template-columns:1fr 1fr;gap:34px}}@media(max-width:560px){.sv-ft-in{grid-template-columns:1fr;gap:30px}}


/* ============================================================
   CORRECTIF MENU MOBILE â€” ajoutÃ© le 2026-08-24
   Cause : les styles globaux de boutons/liens d'Elementor (kit 8173)
   et du thÃ¨me Inspiro Ã©crasaient .sv-burger et .sv-panel.
   Le padding hÃ©ritÃ© (20px 30px) sur .sv-burger (44px, border-box)
   rÃ©duisait la zone de contenu Ã  4px et flexbox Ã©crasait les
   3 barres blanches Ã  0px de haut => carrÃ© violet vide.
   ============================================================ */
.sv-hdr button.sv-burger{
  box-sizing:border-box;width:44px;height:44px;
  padding:0 !important;margin:0 0 0 auto !important;
  border:0 !important;border-radius:0 !important;
  background:transparent !important;background-image:none !important;
  background-color:transparent !important;box-shadow:none !important;
  flex:0 0 auto;flex-direction:column;align-items:center;justify-content:center;
  gap:5px;cursor:pointer;line-height:0 !important;
}
@media (max-width:1024px){.sv-hdr button.sv-burger{display:flex !important}}
@media (min-width:1025px){.sv-hdr button.sv-burger{display:none !important}}
.sv-hdr button.sv-burger span{
  display:block !important;width:22px !important;
  height:2px !important;min-height:2px !important;max-height:2px !important;
  flex:0 0 2px !important;
  padding:0 !important;margin:0 !important;border:0 !important;
  border-radius:2px !important;background:#fff !important;
}
#svPanel a.sv-pl,#svPanel button.sv-pl{
  box-sizing:border-box;display:flex !important;width:100% !important;
  align-items:center;justify-content:space-between;
  padding:17px 4px !important;margin:0 !important;
  color:#fff !important;font-size:21px !important;font-weight:600 !important;
  line-height:1.3 !important;letter-spacing:-.015em !important;
  text-transform:none !important;text-align:left !important;text-decoration:none !important;
  white-space:normal !important;
  background:transparent !important;background-image:none !important;
  border:0 !important;border-bottom:1px solid rgba(255,255,255,.09) !important;
  border-radius:0 !important;box-shadow:none !important;
}
#svPanel .sv-psub a{
  display:block !important;padding:11px 0 !important;margin:0 !important;
  color:rgba(255,255,255,.68) !important;font-size:16px !important;
  font-weight:400 !important;letter-spacing:0 !important;
  text-transform:none !important;text-decoration:none !important;
  background:none !important;border:0 !important;white-space:normal !important;
}
#svPanel a.sv-cta-p{
  display:flex !important;width:100% !important;
  align-items:center;justify-content:center !important;
  padding:17px 24px !important;margin-top:26px !important;
  border:0 !important;border-radius:100px !important;
  background-image:linear-gradient(280deg,#6136ff 0%,#a036ff 100%) !important;
  color:#fff !important;font-size:16px !important;font-weight:600 !important;
  letter-spacing:0 !important;text-transform:none !important;
  text-decoration:none !important;white-space:normal !important;
}
#svPanel .sv-pfoot{
  margin-top:auto;padding-top:28px;
  color:rgba(255,255,255,.55);font-size:14px;line-height:1.5;
}
#svPanel .sv-pfoot a{color:#fff !important;text-decoration:underline !important}


/* ============================================================
   CORRECTIF FORMULAIRE METFORM (page Contact) â€” ajoutÃ© le 2026-08-24
   Cause : la rÃ¨gle full-bleed ".elementor-10304, body.page-id-10304 .elementor"
   attrape aussi le wrapper Elementor interne du formulaire MetForm
   (.elementor-9932) et lui applique margin-left:calc(50% - 50vw) = -50px.
   Le contenu sort du conteneur, et MetForm applique overflow-x:clip
   sur .metform-form-content => formulaire tronquÃ©.
   ============================================================ */
body .mf-form-wrapper .elementor,
body .metform-form-content .elementor,
body .mf-form-shortcode .elementor{
  width:100% !important;
  max-width:100% !important;
  margin-left:0 !important;
  margin-right:0 !important;
  padding-left:0 !important;
  padding-right:0 !important;
}
/* reCAPTCHA : largeur fixe 304px non redimensionnable -> mise Ã  l'Ã©chelle */
.metform-form-content .g-recaptcha > div{ transform-origin:left top; }
@media (max-width:403px){ .metform-form-content .g-recaptcha > div{ transform:scale(.88); } }
@media (max-width:380px){ .metform-form-content .g-recaptcha > div{ transform:scale(.78); } }
@media (max-width:344px){ .metform-form-content .g-recaptcha > div{ transform:scale(.70); } }



/* ============================================================
   MASQUAGE BANNIERE THEME INSPIRO â€” ajoutÃ© le 2026-08-24
   Depuis que le template UAE est exclu des pages refondues,
   le thÃ¨me reprend la main et affiche sa banniÃ¨re de page
   d'accueil (custom header). On la masque partout : le header
   Savisualise la remplace sur 100% du site.
   ============================================================ */
#wp-custom-header,
.custom-header,
.custom-header-media{ display:none !important; }


/* ============================================================
   NEUTRALISATION HEADER ELEMENTOR PRO (location header, tmpl 6465)
   ajoutÃ© le 2026-08-24
   Ce template contient une section avec margin-bottom:-180px
   (pour glisser le contenu sous un header transparent).
   UAE le neutralisait ; depuis l'exclusion du template UAE sur
   les pages refondues, il rÃ©apparaissait et "mangeait" 180px
   en haut de page. Le header Savisualise le remplace partout.
   ============================================================ */
.elementor-location-header{ display:none !important; }


/* ============================================================
   CONTRASTE SECTIONS CLAIRES â€” ajoutÃ© le 2026-08-24
   Le kit Elementor (8173) dÃ©finit --e-global-color-primary = #FFFFFF
   et l'applique Ã  tous les h2. Correct sur .sv-dark, invisible sur
   .sv-light (titres blancs sur fond blanc : Web, Tech & IA, Design).
   ============================================================ */
.sv-sec.sv-light h1,
.sv-sec.sv-light h2,
.sv-sec.sv-light h3{ color:var(--sv-night,#000039) !important; }

/* Badge "Nouveau" : son fond est un linear-gradient, donc un
   background-image. L'optimisation lazy-load d'Elementor
   (.e-con.e-parent:not(.e-lazyloaded) * { background-image:none !important })
   l'annule tant que le conteneur n'est pas chargÃ© => badge blanc
   sur fond clair. On ajoute un background-color de repli. */
.sv-badge{
  background-color:var(--sv-violet,#5631DE) !important;
  color:#fff !important;
}


/* ============================================================
   FORMULAIRE DE CONTACT JETPACK â€” ajoutÃ© le 2026-08-24
   Le formulaire est stylÃ© pour un fond sombre (libellÃ©s blancs,
   bordures rgba(255,255,255,.19), texte #AAB1C2) mais il est posÃ©
   sur fond clair : libellÃ©s blancs sur blanc = invisibles,
   bordures de champs invisibles, champ e-mail Ã  192px au lieu de 335px.
   ============================================================ */
.jetpack-contact-form-container label,
.jetpack-contact-form-container .grunion-field-label{
  color:var(--sv-night,#000039) !important;
  font-weight:600 !important;
}
.jetpack-contact-form-container .grunion-label-required{
  color:var(--sv-grey,#6C6491) !important;
  font-weight:400 !important;
}
.jetpack-contact-form-container input:not([type=submit]):not([type=checkbox]):not([type=radio]):not([type=hidden]),
.jetpack-contact-form-container textarea,
.jetpack-contact-form-container select{
  width:100% !important;
  box-sizing:border-box !important;
  color:var(--sv-night,#000039) !important;
  background-color:#fff !important;
  border:1px solid var(--sv-line,#E4DFF5) !important;
  border-radius:10px !important;
}
.jetpack-contact-form-container input::placeholder,
.jetpack-contact-form-container textarea::placeholder{
  color:var(--sv-grey,#6C6491) !important; opacity:1 !important;
}
.jetpack-contact-form-container input:focus,
.jetpack-contact-form-container textarea:focus,
.jetpack-contact-form-container select:focus{
  border-color:var(--sv-violet,#5631DE) !important;
  outline:2px solid rgba(86,49,222,.25) !important;
  outline-offset:1px !important;
}

/* ===== Refonte 2026-10-15 : lisibilité et finitions (bloc autonome, à retirer d'un seul tenant) ===== */
/* 1. Contenu visible dès l'arrivée : plus de fondu au défilement */
html .sv-rise,html.sv-js .sv-rise{opacity:1!important;transform:none!important}
.elementor-invisible{visibility:visible!important}
/* 2. Titres en minuscules, graisse unique, comme sur les pages de service */
:is(h1,h2).elementor-heading-title{text-transform:none!important;font-weight:700!important;letter-spacing:-.022em!important}
h1.elementor-heading-title{line-height:1.06!important}
/* 3. Carrousel d'avis : le style de bouton du thème masquait les flèches */
body button.sv-tt-b{padding:0!important;width:44px!important;height:44px!important;min-width:0!important;border-radius:50%!important;background:#fff!important;background-image:none!important;border:1px solid #E4DFF5!important;color:#5631DE!important;box-shadow:none!important}
body button.sv-tt-b:hover{background:#5631DE!important;color:#fff!important;border-color:#5631DE!important}
body button.sv-tt-b svg{width:18px!important;height:18px!important;flex:none}
/* 4. Méthode : retirer la numérotation de liste en double */
.sv-me ol>li{list-style:none!important}
.sv-me ol>li::marker{content:none}
/* 5. Bandeau de logos sous le hero : plus grand, plus net */
.sv-mq img{opacity:.88!important;height:34px!important;width:auto!important;max-width:150px!important;object-fit:contain}
.sv-mq li{display:flex;align-items:center}
/* 6. Formulaire de contact : carte claire, champs compacts */
.elementor-element-r4000d .sv-fw{border-bottom:0!important;border-bottom-left-radius:0!important;border-bottom-right-radius:0!important;box-shadow:none!important}
.elementor-element-r4000e>.elementor-widget-container{background:#fff!important;border:1px solid #E4DFF5!important;border-top:0!important;border-radius:0 0 22px 22px!important;padding:4px 24px 26px!important;box-shadow:0 30px 60px -45px rgba(38,18,111,.45)}
.mf-form-wrapper .elementor-widget,.mf-form-wrapper .mf-input-wrapper,.mf-form-wrapper .mf-input{width:100%!important;max-width:100%!important}
.mf-form-wrapper .e-grid,.mf-form-wrapper .e-con{grid-auto-rows:auto!important;grid-template-rows:none!important;row-gap:16px!important;min-height:0!important;align-content:start!important}
.mf-form-wrapper .e-con>.elementor-widget{min-height:0!important}
.mf-form-wrapper label,.mf-form-wrapper .mf-input-label{color:#26126F!important;font-size:13px!important;letter-spacing:.02em!important;text-transform:none!important;font-weight:600!important;margin-bottom:6px!important}
.mf-form-wrapper .mf-input{background:#FBFAFF!important;border:1px solid #E4DFF5!important;border-radius:10px!important;padding:12px 14px!important;color:#1B1240!important;height:auto!important}
.mf-form-wrapper textarea.mf-input{min-height:140px}
.mf-form-wrapper .mf-input::placeholder{color:#8F88B5!important}
.mf-form-wrapper .mf-input:focus{border-color:#5631DE!important;outline:2px solid rgba(86,49,222,.18)!important;outline-offset:0}
.mf-form-wrapper .mf-btn-wraper button,.mf-form-wrapper button[type=submit]{border-radius:99px!important;letter-spacing:.04em}
/* 7. Pages de service : grilles de cartes sans ligne orpheline */
.spgr:has(>:nth-child(6):last-child){grid-template-columns:repeat(3,minmax(0,1fr))!important}
@media(max-width:900px){.spgr:has(>:nth-child(6):last-child){grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:600px){.spgr:has(>:nth-child(6):last-child){grid-template-columns:1fr!important}}
/* 8. Typographie unique : Poppins aussi pour les titres des pages canevas (le thème imposait Archivo) */
.sp h1,.sp h2,.sp h3,.sp h4,.sp summary{font-family:'Poppins',-apple-system,'Segoe UI',sans-serif!important}
/* ===== fin refonte 2026-10-15 ===== */
