:root{--page-title-display:none;}/* Start custom CSS */@font-face{font-family:"Devosium Display";src:url("https://devosium.fr/wp-content/plugins/devosium-integration/assets/display.ttf") format("truetype");font-weight:900;font-style:normal;font-display:swap}
@font-face{font-family:"Devosium Text";src:url("https://devosium.fr/wp-content/plugins/devosium-integration/assets/text.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Devosium Text";src:url("https://devosium.fr/wp-content/plugins/devosium-integration/assets/text-semibold.ttf") format("truetype");font-weight:500 800;font-style:normal;font-display:swap}
body.elementor-page-131{--dv2-heading-font:"Devosium Display";--dv2-body-font:"Devosium Text";margin:0;background:#f5f3eb;color:#20221f;font-family:"Devosium Text",Arial,sans-serif;-webkit-font-smoothing:antialiased}
body.elementor-page-131 *{box-sizing:border-box}
body.elementor-page-131 a{text-decoration:none}
body.elementor-page-131 .elementor{--widgets-spacing:0px}
body.elementor-page-131{font-family:"Devosium Text",Arial,sans-serif;color:#20221f}
body.elementor-page-131 .dv2-hero-title{white-space:nowrap}
body.elementor-page-131 .dv2-hero-title >span:not(.dv2-hero-first),body.elementor-page-131 .dv2-hero-title .dv2-hero-accent{color:#2445e8;display:inline-block;white-space:nowrap;letter-spacing:inherit;font-size:.9em}
body.elementor-page-131 .dv2-heading,body.elementor-page-131 .dv2-hero-title{max-width:100%}
body.elementor-page-131 .dv2-text-link >span{display:inline-block;font-size:1.7em;line-height:.8;margin-left:.625rem;vertical-align:middle}
body.elementor-page-131 .dv2-project-visual:hover .dv2-browser-frame{transform:rotate(0deg) translateY(-.25rem)}
body.elementor-page-131 .dv2-browser-frame img{width:100%;height:auto;display:block}
body.elementor-page-131 .dv2-project-quote{min-height:8.5rem}
body.elementor-page-131 .dv2-text ul{list-style:none;padding:0;margin:0}
body.elementor-page-131 .dv2-text ul li{margin:0}
body.elementor-page-131 .dv2-eyebrow{max-width:none}
body.elementor-page-131 .dv2-hero >div:first-child p:last-child >span{color:#2445e8;font-size:.65em;margin-right:.375rem}
body.elementor-page-131 .dv2-hero-aside p:last-child >span{font-size:2.5em;color:#2445e8;margin-inline:.5rem;vertical-align:middle}
body.elementor-page-131 .dv2-services summary::after,body.elementor-page-131 .e-accordion-base:not(.dv2-native-menu) summary::after{content:"+";font-family:"Devosium Text",Arial,sans-serif;font-size:1.5rem;font-weight:400;line-height:1;flex-shrink:0}
body.elementor-page-131 .e-accordion-base:not(.dv2-native-menu) details[open]>summary::after{content:"−"}
body.elementor-page-131 details>summary{list-style:none}
body.elementor-page-131 details>summary::-webkit-details-marker{display:none}
body.elementor-page-131 details>summary h3{max-width:32rem}
body.elementor-page-131 .dv2-native-menu summary::after{content:none!important}
body.elementor-page-131 .dv2-native-menu summary p{display:flex;align-items:center;justify-content:space-between;gap:1rem}
body.elementor-page-131 .dv2-native-menu details[open]>summary p>span{transform:rotate(45deg)}
body.elementor-page-131 .dv2-native-menu summary p>span{font-size:1.375rem;line-height:1;transition:transform .2s}
body.elementor-page-131 .dv2-native-menu details>div:last-child{position:fixed;left:0;right:0;top:var(--dv2-menu-top,8.5rem);z-index:50;border-bottom:1px solid #d3d3c9}
body.elementor-page-131 .dv2-duration>span{font-size:.5em}
body.elementor-page-131 .dv2-header{z-index:60}
body.elementor-page-131 .dv2-logo-strip .dv2-marquee-track{animation:dv2-logos 42s linear infinite}
body.elementor-page-131 .dv2-logo-strip:hover .dv2-marquee-track,body.elementor-page-131 .dv2-logo-strip:focus-within .dv2-marquee-track,body.elementor-page-131 .dv2-logo-strip.is-paused .dv2-marquee-track{animation-play-state:paused}
body.elementor-page-131 .dv2-logos-pause:focus-visible{outline:3px solid #fa633b;outline-offset:3px}
body.elementor-page-131 .dv2-mascot .elementor-empty-view{display:none!important}
body.elementor-page-131.elementor-editor-active .dv2-mascot [data-e-type]{min-height:0!important}
body.elementor-page-131.elementor-editor-active .dv2-mascot *{animation:none!important}
body.elementor-page-131 p>span{font-family:inherit}
/* Same SplitText masks and accent-safe descendants as the approved HTML. */
body.elementor-page-131 .dv2-split-line-mask{padding-block:.14em .16em;margin-block:-.14em -.16em}
body.elementor-page-131 .dv2-split-line{transform-origin:left center}
body.elementor-page-131 .dv2-hero-title .dv2-hero-phrase{display:block;white-space:nowrap}
body.elementor-page-131 .dv2-heading .dv2-heading-accent{color:#2445e8}
body.elementor-page-131 .dv2-services .dv2-heading .dv2-heading-accent{color:#dce5b6}
body.elementor-page-131 .dv2-cta .dv2-heading .dv2-heading-accent{color:#f5f3eb}
/* The short-lived head guard precedes paint, and expires if scripts fail. */
@media(prefers-reduced-motion:no-preference){
  html.dv2-motion-pending body.elementor-page-131:not(.elementor-editor-active):not(.e-preview--show-hidden-elements) :is(.dv2-header>*,.dv2-hero-meta,.dv2-hero-title,.dv2-mascot-hero,.dv2-hero-intro,.dv2-hero-aside,.dv2-hero-foot,h2.dv2-heading,.dv2-about-copy>p:not(.dv2-eyebrow),.dv2-card,.dv2-steps>div){opacity:0}
}
@keyframes dv2-logos{to{transform:translateX(calc(-50% - 2rem))}}
@keyframes dv2-blink{0%,41%,45%,100%{transform:scaleY(1)}43%{transform:scaleY(.06)}}
/* Exact approved typography, scoped to this editable native document. */
body.elementor-page-131 .dv2-heading>span{color:#2445e8}
body.elementor-page-131 .dv2-services{--dv2-ink:#f5f3eb;--dv2-muted:#e5e9ff;--dv2-line:#ffffff3d}
body.elementor-page-131 .dv2-services .dv2-heading>span{color:#dce5b6}
body.elementor-page-131 .dv2-cta .dv2-heading>span{color:#f5f3eb}
/* Native button text is enhanced on the frontend, keeping one editable label. */
body.elementor-page-131 .dv2-button{isolation:isolate;position:relative;overflow:hidden}
body.elementor-page-131 .dv2-button::before{content:"";position:absolute;z-index:-1;inset:-12px -8px;background:#2445e8;border-radius:50%;transform:translateY(105%);transition:transform .55s cubic-bezier(.22,1,.36,1),border-radius .55s}
body.elementor-page-131 .dv2-button:is(:hover,:focus-visible)::before{transform:translateY(0);border-radius:0}
body.elementor-page-131 .dv2-button:is(:hover,:focus-visible){color:#f5f3eb}
body.elementor-page-131 .dv2-button>.cta-label{display:block;position:relative;width:auto;height:1.35em;overflow:hidden;font-size:inherit;line-height:1.35;text-align:left}
body.elementor-page-131 .cta-label-track{display:block;transition:transform .5s cubic-bezier(.22,1,.36,1)}
body.elementor-page-131 .cta-label-track>span{display:block;white-space:nowrap}
body.elementor-page-131 .cta-label-track>span:last-child{position:absolute;inset:100% 0 auto}
body.elementor-page-131 .dv2-button:is(:hover,:focus-visible) .cta-label-track{transform:translateY(-100%)}
body.elementor-page-131 .dv2-button>.cta-icon,body.elementor-page-131 .dv2-button:not(.dv2-cta-enhanced)>span{position:relative;display:block;flex-shrink:0;width:30px;height:30px;overflow:hidden;border-radius:50%;background:#fa633b;color:#20221f;font-size:21px;line-height:30px;text-align:center}
body.elementor-page-131 .cta-icon>span{display:block;width:100%;text-align:center;transition:transform .5s cubic-bezier(.22,1,.36,1)}
body.elementor-page-131 .cta-icon>span:last-child{position:absolute;inset:0;transform:translate(-100%,100%)}
body.elementor-page-131 .dv2-button:is(:hover,:focus-visible) .cta-icon>span:first-child{transform:translate(100%,-100%)}
body.elementor-page-131 .dv2-button:is(:hover,:focus-visible) .cta-icon>span:last-child{transform:translate(0,0)}
body.elementor-page-131 .dv2-button-outline{background:transparent;color:#20221f;border-color:#20221f}
body.elementor-page-131 .dv2-button-outline:is(:hover,:focus-visible){border-color:#2445e8}
body.elementor-page-131 .dv2-button-outline>.cta-icon{background:#20221f;color:#f5f3eb}
body.elementor-page-131 .dv2-button-cream{background:#f5f3eb;color:#2445e8}
body.elementor-page-131 .dv2-button-cream::before{background:#20221f}
body.elementor-page-131 .dv2-button-cream>.cta-icon{background:#2445e8;color:#f5f3eb}
body.elementor-page-131 .dv2-button-cream:is(:hover,:focus-visible)>.cta-icon{background:#fa633b;color:#20221f}
/* Vector masks preserve the approved rounded contour and curved smile. */
body.elementor-page-131 .dv2-mascot-shape,body.elementor-page-131 .dv2-mascot-smile{-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%}
body.elementor-page-131 .dv2-mascot-eye-left,body.elementor-page-131 .dv2-mascot-eye-right{animation:dv2-blink 5.8s infinite;transform-origin:center}
body.elementor-page-131 .dv2-brand-star,body.elementor-page-131 .dv2-footer-star{display:block;flex-shrink:0;color:transparent;font-size:0;aspect-ratio:1;-webkit-mask-size:100% 100%;mask-size:100% 100%}
body.elementor-page-131 .dv2-brand-star{width:26px;height:26px;background:#2445e8}
body.elementor-page-131 .dv2-footer-star{width:14vw;height:14vw;background:#fa633b}
@media(max-width:900px){body.elementor-page-131 .dv2-hero .dv2-button{padding:9px 10px 9px 17px;gap:12px;font-size:11px}}
@media(max-width:600px){body.elementor-page-131 .dv2-hero .dv2-button{min-height:51px;padding:10px 11px 10px 17px;gap:16px;font-size:11px}body.elementor-page-131 .dv2-brand-star{width:23px;height:23px}}
@media(max-width:360px){body.elementor-page-131 .dv2-hero .dv2-button{font-size:10px;gap:10px;padding-left:14px}}
@media(max-width:767px){
  body.elementor-page-131 .dv2-hero-title>span:not(.dv2-hero-first),body.elementor-page-131 .dv2-hero-title .dv2-hero-accent{font-size:.88em}
  body.elementor-page-131 .dv2-project-quote{min-height:0}
  body.elementor-page-131 .dv2-logo-strip .dv2-marquee-track{animation-duration:35s}
  @keyframes dv2-logos{to{transform:translateX(calc(-50% - 1.25rem))}}
  body.elementor-page-131 .dv2-native-menu details>div:last-child{max-height:calc(100dvh - 8rem);overflow-y:auto}
}
@media(prefers-reduced-motion:reduce){
  body.elementor-page-131 .dv2-button:is(:hover,:focus-visible) .cta-label-track,body.elementor-page-131 .dv2-button:is(:hover,:focus-visible) .cta-icon>span:first-child{transform:none}
  body.elementor-page-131 .cta-label-track>span:last-child,body.elementor-page-131 .cta-icon>span:last-child{display:none}
  body.elementor-page-131 *,body.elementor-page-131 *::before,body.elementor-page-131 *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  body.elementor-page-131 .dv2-logo-strip .dv2-marquee{overflow:visible}
  body.elementor-page-131 .dv2-logo-strip .dv2-marquee-track{width:100%;display:block}
  body.elementor-page-131 .dv2-logo-strip .dv2-marquee-track>div:first-child{width:100%;display:flex;flex-wrap:wrap;justify-content:center;gap:2rem}
  body.elementor-page-131 .dv2-logo-strip .dv2-marquee-track>div:last-child{display:none}
  body.elementor-page-131 .dv2-logos-pause{display:none}
}
body.elementor-page-131 .dv2-mascot-shape{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20200%20200%22%3E%3Cpath%20d%3D%22M86%209H114L118%2061%20154%2025%20175%2046%20139%2082%20191%2086V114L139%20118%20175%20154%20154%20175%20118%20139%20114%20191H86L82%20139%2046%20175%2025%20154%2061%20118%209%20114V86L61%2082%2025%2046%2046%2025%2082%2061Z%22%20fill%3D%22white%22%20stroke%3D%22white%22%20stroke-width%3D%225%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20200%20200%22%3E%3Cpath%20d%3D%22M86%209H114L118%2061%20154%2025%20175%2046%20139%2082%20191%2086V114L139%20118%20175%20154%20154%20175%20118%20139%20114%20191H86L82%20139%2046%20175%2025%20154%2061%20118%209%20114V86L61%2082%2025%2046%2046%2025%2082%2061Z%22%20fill%3D%22white%22%20stroke%3D%22white%22%20stroke-width%3D%225%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E")}
body.elementor-page-131 .dv2-mascot-smile{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20200%20200%22%3E%3Cpath%20d%3D%22M77%20112C87%20129%20113%20132%20128%20108%22%20fill%3D%22none%22%20stroke%3D%22white%22%20stroke-width%3D%224%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20200%20200%22%3E%3Cpath%20d%3D%22M77%20112C87%20129%20113%20132%20128%20108%22%20fill%3D%22none%22%20stroke%3D%22white%22%20stroke-width%3D%224%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E")}
body.elementor-page-131 .dv2-brand-star,body.elementor-page-131 .dv2-footer-star{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20100%20100%22%3E%3Cpath%20d%3D%22M50%202v96M2%2050h96M16%2016l68%2068M16%2084l68-68%22%20stroke%3D%22white%22%20stroke-width%3D%2217%22%2F%3E%3C%2Fsvg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20100%20100%22%3E%3Cpath%20d%3D%22M50%202v96M2%2050h96M16%2016l68%2068M16%2084l68-68%22%20stroke%3D%22white%22%20stroke-width%3D%2217%22%2F%3E%3C%2Fsvg%3E")}/* End custom CSS */