:root{--c-s:#00e5ff;--c-i:#09f;--c-b:#06f;--c-a:#54f;--c-l:#93f;--c-i2:#0cc;--c-o:#fff;--nuit:#06152e;--fond:#06152e;--fond-relief:#0a1f3f;--encre:#eaf0fa;--encre-douce:#93a6c4;--trait:#eaf0fa1a;--trait-fort:#eaf0fa33;--champ:#ffffff0d;--ombre:0 24px 60px -20px #000000b3;--vive:#00e5ff;--sur-vive:#06152e;--pulse:#00e5ff;--pas:clamp(1rem,.7rem + 1.2vw,1.4rem);--mesure:64ch}[data-theme=light]{--fond:#f2f5fb;--fond-relief:#fff;--encre:#0d1b30;--encre-douce:#4d5f7a;--trait:#0d1b301f;--trait-fort:#0d1b303d;--champ:#0d1b300a;--ombre:0 20px 50px -22px #0d1b3047;--vive:#06f;--sur-vive:#fff}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;overflow-x:hidden}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--fond);color:var(--encre);-webkit-font-smoothing:antialiased;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:clamp(1rem,.95rem + .2vw,1.0625rem);line-height:1.65;transition:background .4s,color .4s;overflow-x:hidden}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--vive);outline-offset:3px;border-radius:2px}.enveloppe{width:min(100% - 2.5rem,68rem);margin-inline:auto}.bandeau-preouverture{text-align:center;color:var(--encre-douce);background:color-mix(in srgb,var(--vive) 10%,var(--fond));border-bottom:1px solid var(--trait);padding:.55rem 1.25rem;font-size:.82rem}.entete{z-index:50;background:color-mix(in srgb,var(--fond) 88%,transparent);backdrop-filter:blur(14px);border-bottom:1px solid var(--trait);justify-content:space-between;align-items:center;gap:1rem;padding:.7rem 0;display:flex;position:sticky;top:0}.marque{letter-spacing:-.015em;align-items:center;gap:.65rem;font-size:1.05rem;font-weight:650;display:flex}.marque .sib{flex:none;width:34px;height:34px}.menu{align-items:center;gap:1.6rem;display:flex}.menu a{color:var(--encre-douce);border-bottom:1px solid #0000;padding:.3rem 0;font-size:.92rem;transition:color .25s,border-color .25s}.menu a:hover{color:var(--encre);border-bottom-color:var(--vive)}.bascule{border:1px solid var(--trait);width:36px;height:36px;color:var(--encre-douce);cursor:pointer;background:0 0;border-radius:50%;place-items:center;transition:border-color .25s,color .25s;display:grid}.bascule:hover{border-color:var(--trait-fort);color:var(--encre)}.bascule svg{width:17px;height:17px}.hamburger{border:1px solid var(--trait);cursor:pointer;width:36px;height:36px;color:var(--encre);background:0 0;border-radius:8px;display:none}.hamburger svg{width:18px;height:18px}.hero{text-align:center;place-items:center;padding:clamp(3rem,10vh,6rem) 0 clamp(3.5rem,9vh,5.5rem);display:grid;position:relative;overflow-x:clip}.halo{aspect-ratio:1;background:radial-gradient(circle, color-mix(in srgb,var(--pulse) 16%,transparent) 0%, transparent 62%);filter:blur(20px);z-index:0;pointer-events:none;width:min(46rem,100vw);position:absolute;top:-6rem;left:50%;translate:-50%}[data-theme=light] .halo{background:radial-gradient(circle,color-mix(in srgb,var(--pulse) 11%,transparent) 0%,transparent 62%)}.hero>:not(.halo){z-index:1;position:relative}.sceau{width:clamp(9rem,26vw,13.5rem);margin-bottom:2rem}.surtitre{letter-spacing:.16em;color:var(--vive);margin-bottom:.9rem;font-size:.78rem;font-weight:700;display:block}.hero h1{letter-spacing:-.035em;text-wrap:balance;max-width:19ch;font-size:clamp(2rem,1.35rem + 3.1vw,3.5rem);font-weight:700;line-height:1.06}.hero p{max-width:48ch;color:var(--encre-douce);font-size:var(--pas);margin:1.15rem auto 0}.actions{flex-wrap:wrap;justify-content:center;gap:.8rem;margin-top:2.1rem;display:flex}.bouton{cursor:pointer;border:1px solid var(--vive);border-radius:999px;padding:.78rem 1.6rem;font-size:.95rem;font-weight:600;transition:background .25s,color .25s,transform .1s,opacity .2s;display:inline-block}.bouton--plein{background:var(--vive);color:var(--sur-vive);border-color:var(--vive)}.bouton--plein:hover{color:var(--vive);background:0 0}.bouton--vide{color:var(--encre);border-color:var(--trait-fort);background:0 0}.bouton--vide:hover{border-color:var(--vive);color:var(--vive)}.bouton:active{transform:translateY(1px)}.bouton:disabled{opacity:.6;cursor:default}.bloc{border-top:1px solid var(--trait);padding:clamp(3.5rem,8vh,5.5rem) 0}.bloc h2{letter-spacing:-.028em;max-width:22ch;font-size:clamp(1.5rem,1.2rem + 1.4vw,2.1rem);font-weight:700;line-height:1.15}.bloc>.enveloppe>p.chapo{max-width:var(--mesure);color:var(--encre-douce);margin-top:.7rem}.piliers{border-left:1px solid var(--trait);grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:0;margin-top:2.6rem;display:grid}.pilier{border-right:1px solid var(--trait);border-top:3px solid var(--teinte);background:linear-gradient(180deg,color-mix(in srgb,var(--teinte) 7%,transparent),transparent 42%);padding:1.6rem 1.5rem 1.9rem;transition:background .3s,transform .3s}.pilier:hover{background:linear-gradient(180deg,color-mix(in srgb,var(--teinte) 13%,transparent),transparent 55%);transform:translateY(-2px)}.pilier h3{letter-spacing:-.01em;margin-bottom:.5rem;font-size:1.08rem;font-weight:650}.pilier p{color:var(--encre-douce);font-size:.95rem;line-height:1.6}.methode{counter-reset:etape;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:1.4rem;margin-top:2.6rem;display:grid}.etape{padding-top:2.4rem;position:relative}.etape:before{counter-increment:etape;content:counter(etape,decimal-leading-zero);color:var(--vive);font-variant-numeric:tabular-nums;font-size:.82rem;font-weight:650;transition:letter-spacing .25s;position:absolute;top:0;left:0}.etape:after{content:"";background:var(--trait);height:1px;position:absolute;top:.55rem;left:2.1rem;right:0}.etape:last-child:after{display:none}.etape:hover:before{letter-spacing:.04em}.etape h3{margin-bottom:.4rem;font-size:1rem;font-weight:650}.etape p{color:var(--encre-douce);font-size:.93rem;line-height:1.6}.contact{grid-template-columns:1fr;gap:2.6rem;margin-top:2.4rem;display:grid}@media (width>=56rem){.contact{grid-template-columns:1fr 1.15fr;gap:3.4rem}}.reperes{align-content:start;gap:.85rem;margin-top:1.6rem;display:grid}.repere{color:var(--encre-douce);align-items:flex-start;gap:.7rem;font-size:.95rem;display:flex}.repere svg{width:18px;height:18px;fill:var(--vive);flex:none;margin-top:.25rem}.formulaire{background:var(--fond-relief);border:1px solid var(--trait);box-shadow:var(--ombre);border-radius:14px;padding:1.6rem}.champ{margin-bottom:1.05rem}.champ label{color:var(--encre-douce);margin-bottom:.35rem;font-size:.85rem;font-weight:550;display:block}.champ input,.champ textarea{background:var(--champ);border:1px solid var(--trait);width:100%;color:var(--encre);font:inherit;border-radius:9px;padding:.7rem .85rem;font-size:.95rem;transition:border-color .2s,background .2s}.champ input:focus,.champ textarea:focus{border-color:var(--vive);background:0 0;outline:none}.champ textarea{resize:vertical;min-height:7rem}.formulaire .bouton{text-align:center;width:100%}.mention{color:var(--encre-douce);margin-top:.9rem;font-size:.8rem;line-height:1.5}.leurre{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.formulaire-statut{margin-top:.9rem;font-size:.88rem;line-height:1.5}.formulaire-statut--succes{color:#2fbf71}.formulaire-statut--erreur{color:#ff6b6b}.pied{border-top:1px solid var(--trait);padding:2.4rem 0 2rem;font-size:.9rem}.pied-grille{flex-wrap:wrap;justify-content:space-between;gap:2.4rem;display:flex}.pied h4{margin-bottom:.7rem;font-size:.85rem;font-weight:650}.pied ul{gap:.4rem;list-style:none;display:grid}.pied a{color:var(--encre-douce);transition:color .2s}.pied a:hover{color:var(--vive)}.pied-bas{border-top:1px solid var(--trait);color:var(--encre-douce);flex-wrap:wrap;justify-content:space-between;gap:.6rem;margin-top:2rem;padding-top:1.2rem;font-size:.82rem;display:flex}.ruban{border-radius:2px;height:3px;margin-top:1.4rem;display:flex;overflow:hidden}.ruban span{flex:1}.info{background:var(--fond-relief);border:1px solid var(--trait-fort);border-left:3px solid var(--vive);box-shadow:var(--ombre);opacity:0;pointer-events:none;z-index:100;border-radius:10px;max-width:calc(100vw - 2rem);padding:.85rem 1.3rem;font-size:.92rem;transition:opacity .3s,translate .3s;position:fixed;bottom:1.4rem;left:50%;translate:-50%}.info[data-vu="1"]{opacity:1;translate:-50% -.35rem}.info[data-type=erreur]{border-left-color:#ff6b6b}@media (width<=47rem){.hamburger{place-items:center;display:grid}.menu{background:var(--fond);border-bottom:1px solid var(--trait);flex-direction:column;align-items:stretch;gap:0;padding:.4rem 1.25rem 1rem;display:none;position:absolute;top:100%;left:0;right:0}.menu[data-ouvert="1"]{display:flex}.menu a{border-bottom:1px solid var(--trait);padding:.7rem 0}.piliers{border-left:none}.pilier{border-right:none;border-bottom:1px solid var(--trait)}.etape:after{display:none}}.sib{max-width:100%;height:auto;display:block}.sib .pale{transform-box:view-box;transform-origin:500px 500px;transform:rotate(var(--r,0deg))}.sib--anime .pale{opacity:0;animation:.32s cubic-bezier(.22,.9,.28,1) forwards ouverture}.sib--anime .pale:first-of-type{animation-delay:50ms}.sib--anime .pale:nth-of-type(2){animation-delay:.1s}.sib--anime .pale:nth-of-type(3){animation-delay:.15s}.sib--anime .pale:nth-of-type(4){animation-delay:.2s}.sib--anime .pale:nth-of-type(5){animation-delay:.25s}.sib--anime .pale:nth-of-type(6){animation-delay:.3s}.sib--anime .pale:nth-of-type(7){animation-delay:.35s}@keyframes ouverture{0%{opacity:0;transform:rotate(calc(var(--r,0deg) - 34deg)) scale(.82)}to{opacity:1;transform:rotate(var(--r,0deg)) scale(1)}}.sib .pale-vive{transform-box:view-box;transform-origin:500px 500px;transform:rotate(var(--angle,0deg));transition:filter .3s}.sib--anime .pale-vive{opacity:0;animation:.3s cubic-bezier(.22,.9,.28,1) .42s forwards ouverture}.sib:hover .pale-vive{filter:drop-shadow(0 0 16px color-mix(in srgb,var(--pulse) 70%,transparent))}@media (prefers-reduced-motion:reduce){.sib--anime .pale{opacity:1!important;transform:rotate(var(--r,0deg))!important;animation:none!important}.sib--anime .pale-vive{opacity:1!important;animation:none!important}.sib .pale-vive{transform:rotate(var(--angle,0deg))!important;transition:none!important}}.page-entete{padding:clamp(3rem,8vh,4.5rem) 0 1rem}.page-entete h1{letter-spacing:-.03em;font-size:clamp(1.8rem,1.4rem + 2vw,2.6rem);font-weight:700;line-height:1.12}.page-entete p.chapo{max-width:var(--mesure);color:var(--encre-douce);margin-top:.7rem}.page-corps{padding:1rem 0 clamp(3.5rem,8vh,5.5rem)}.page-corps h2{letter-spacing:-.015em;margin-top:2.2rem;margin-bottom:.6rem;font-size:1.2rem;font-weight:650}.page-corps h2:first-child{margin-top:0}.page-corps p{color:var(--encre-douce);max-width:var(--mesure)}.espace-reserve{color:var(--encre-douce);border-left:2px solid var(--trait-fort);padding-left:.9rem;font-style:italic}.grille-tarifs{grid-template-columns:repeat(auto-fit,minmax(15.5rem,1fr));align-items:stretch;gap:1.4rem;margin-top:2rem;display:grid}.carte-tarif{background:var(--fond-relief);border:1px solid var(--trait);border-radius:14px;flex-direction:column;gap:1rem;padding:1.8rem 1.6rem;display:flex}.carte-tarif--recommande{border-color:var(--vive);box-shadow:var(--ombre)}.carte-tarif .badge{letter-spacing:.05em;background:var(--vive);color:var(--sur-vive);border-radius:999px;align-self:flex-start;padding:.28rem .7rem;font-size:.72rem;font-weight:700}.carte-tarif h2{letter-spacing:-.01em;font-size:1.05rem;font-weight:650}.carte-tarif .prix{letter-spacing:-.02em;font-size:1.9rem;font-weight:700}.carte-tarif .prix span{color:var(--encre-douce);font-size:.85rem;font-weight:500}.carte-tarif ul{color:var(--encre-douce);flex:1;gap:.5rem;font-size:.92rem;list-style:none;display:grid}.carte-tarif ul li{padding-left:1.1rem;position:relative}.carte-tarif ul li:before{content:"—";color:var(--vive);position:absolute;left:0}.carte-tarif .bouton{text-align:center;margin-top:.2rem}.note-tarifs{max-width:var(--mesure);color:var(--encre-douce);margin-top:2.2rem;font-size:.95rem;line-height:1.6}.contact-cta{align-content:center;gap:1.1rem;display:grid}.contact-cta p{color:var(--encre-douce)}.services-eclair{flex-wrap:wrap;justify-content:center;gap:.55rem;margin-top:1.3rem;list-style:none;display:flex}.services-eclair li{color:var(--encre-douce);border:1px solid var(--trait);background:var(--champ);border-radius:999px;padding:.4rem .9rem;font-size:.82rem;font-weight:600}.types-projets{grid-template-columns:repeat(auto-fit,minmax(15.5rem,1fr));gap:1.1rem;margin-top:2.6rem;display:grid}.type-projet{background:var(--fond-relief);border:1px solid var(--trait);border-radius:14px;padding:1.5rem 1.4rem;transition:transform .3s,border-color .3s,box-shadow .3s}.type-projet:hover{border-color:var(--trait-fort);box-shadow:var(--ombre);transform:translateY(-3px)}.type-projet__tag{letter-spacing:.04em;color:var(--vive);text-transform:uppercase;margin-bottom:.6rem;font-size:.72rem;font-weight:700;display:inline-block}.type-projet h3{letter-spacing:-.01em;margin-bottom:.5rem;font-size:1.02rem;font-weight:650}.type-projet p{color:var(--encre-douce);font-size:.93rem;line-height:1.6}.cas{border:1px solid var(--trait);background:var(--fond-relief);border-radius:14px;padding:1.5rem 1.4rem;transition:transform .3s,border-color .3s}.cas:hover{border-color:var(--trait-fort);transform:translateY(-3px)}.cas h3{letter-spacing:-.01em;margin-bottom:1.1rem;font-size:.98rem;font-weight:650}.flux{flex-wrap:wrap;align-items:center;gap:0;list-style:none;display:flex}.etape-flux{color:var(--encre);border:1px solid var(--trait);background:var(--champ);white-space:nowrap;border-radius:999px;padding:.45rem .8rem;font-size:.82rem;font-weight:600}.flux li{align-items:center;display:flex}.flux li:not(:last-child):after{content:"";background:linear-gradient(90deg,var(--vive) 0%,var(--vive) 50%,transparent 50%,transparent 100%);background-size:200% 100%;border-radius:2px;flex:none;width:1.5rem;height:2px;margin:0 .4rem;animation:2.2s linear infinite glisser}@keyframes glisser{0%{background-position:0 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.flux li:not(:last-child):after{background:var(--trait-fort);animation:none}}.bloc.bloc--discret{padding:clamp(2rem,5vh,3rem) 0}.encart{background:var(--fond-relief);border:1px solid var(--trait);border-radius:14px;max-width:34rem;padding:1.6rem 1.7rem}.encart h3{letter-spacing:-.01em;margin:.5rem 0 .6rem;font-size:1.05rem;font-weight:650}.encart>p{color:var(--encre-douce);font-size:.93rem;line-height:1.6}.encart .flux{margin-top:.2rem}.encart__note{color:var(--encre-douce);margin-top:1.1rem;font-size:.85rem;line-height:1.5}.liste-guides{color:var(--encre-douce);gap:.5rem;margin-top:1.1rem;font-size:.92rem;list-style:none;display:grid}.liste-guides li{padding-left:1.1rem;position:relative}.liste-guides li:before{content:"—";color:var(--vive);position:absolute;left:0}.js-anime .reveal{opacity:0;transition:opacity .6s,transform .6s;transition-delay:calc(var(--d,0) * 80ms);transform:translateY(18px)}.js-anime .reveal.visible{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal{opacity:1!important;transition:none!important;transform:none!important}}
