:root{--colonne:86rem;--deplacement:clamp(1.35rem,5.5vw,6.5rem)}
body{background:#141A17}.bandeau{padding-block:1.25rem}.bandeau nav{gap:1.6rem}.bandeau nav a{font-size:.88rem;text-decoration:none}.bandeau nav a:hover{color:var(--bronze)}.ouverture{position:relative;padding-block:2.6rem 5rem;overflow:hidden}.ouverture .enveloppe{grid-template-columns:1.12fr .88fr;gap:2rem;align-items:center}.ouverture h1{font-size:clamp(2.5rem,4.6vw,4.6rem);line-height:1.04;letter-spacing:-.045em;font-variation-settings:'wdth' 95;font-weight:600;max-width:13.5ch}.ouverture .surtitre{font:400 .9rem/1.6 Archivo,sans-serif;text-transform:none;letter-spacing:0;color:var(--jade);max-width:35ch;margin-bottom:1.4rem}.ouverture .these{font-size:1.1rem;line-height:1.6;max-width:46ch}.ouverture .note{font:400 .8rem/1.6 Archivo,sans-serif;color:#A7B2A8;margin-top:1.2rem}.bouton{border-radius:100px;padding:.85rem 1.2rem;min-height:48px;transition:background .18s,color .18s,transform .18s}.bouton:hover{background:var(--calcaire);border-color:var(--calcaire);transform:translateY(-2px)}.bouton.secondaire:hover{color:var(--chitine)}.direct{font:400 .84rem/1.6 Archivo,sans-serif;gap:.8rem 1.3rem}.hero-machine{position:relative;min-width:0;isolation:isolate}.hero-machine svg{width:100%;height:auto;display:block;overflow:visible}.hero-machine .machine-caption{font:400 .85rem/1.6 Archivo,sans-serif;max-width:29ch;margin:0 auto;text-align:center;color:#ABB6AB}.hero-machine .shell-left{transform-origin:250px 225px;animation:wing-left 1.2s cubic-bezier(.2,.8,.2,1) both}.hero-machine .shell-right{transform-origin:250px 225px;animation:wing-right 1.2s cubic-bezier(.2,.8,.2,1) both}.hero-machine:hover .flow-line{stroke-dasharray:10 8;stroke-dashoffset:-30;transition:stroke-dashoffset .7s ease}.machine-word{font:400 12px Archivo,sans-serif;fill:#B8C4BA}.machine-label{font:500 14px Archivo,sans-serif;fill:#EAE6DC}.machine-title{font:500 13px Archivo,sans-serif;letter-spacing:2px;fill:#C08A4A}.hero-machine .final-node{fill:#C08A4A}.hero-machine .flow-line{stroke:#648872;stroke-width:1.4;fill:none}@keyframes wing-left{from{transform:translateY(15px) rotate(7deg);opacity:0}to{transform:translateY(0) rotate(0);opacity:1}}@keyframes wing-right{from{transform:translateY(15px) rotate(-7deg);opacity:0}to{transform:translateY(0) rotate(0);opacity:1}}
.preuves{background:#EAE6DC;color:#1A211D;padding-block:clamp(3.5rem,7vw,6rem);position:relative;border-radius:3rem 3rem 0 0}.preuves h2{font-size:clamp(2.1rem,4vw,3.5rem);line-height:1.05;font-weight:500;font-variation-settings:'wdth' 95;letter-spacing:-.04em;max-width:17ch}.work-intro{display:flex;align-items:end;justify-content:space-between;gap:2rem}.work-intro>p{font-size:1rem;max-width:30ch}.project-tabs{display:flex;gap:.4rem;border-bottom:1px solid #AEB3A9;margin:2.5rem 0 0;padding-bottom:.8rem;flex-wrap:wrap}.project-tabs button{background:none;border:0;border-radius:100px;color:#445249;font:500 1rem/1.3 Archivo,sans-serif;padding:.8rem 1.1rem;min-height:46px;cursor:pointer;transition:background .18s,color .18s}.project-tabs button[aria-selected=true]{background:#1C2521;color:#EAE6DC}.project-tabs button:hover{background:#C6CEBF;color:#141A17}.project-tabs button[aria-selected=true]:hover{background:#253029;color:#EAE6DC}.project-tabs button:focus-visible{outline:3px solid #955F23;outline-offset:3px}.project-panel{display:grid;grid-template-columns:.75fr 1.25fr;gap:3rem;align-items:start;padding-top:2.7rem;min-height:460px}.project-panel[hidden]{display:none}.project-copy{max-width:35ch}.project-copy h3{font-size:clamp(1.7rem,2.5vw,2.4rem);line-height:1.12;font-weight:500;font-variation-settings:'wdth' 95;letter-spacing:-.035em}.project-copy>.surtitre{font:500 .75rem Archivo,sans-serif;text-transform:none;letter-spacing:0;color:#6D5537!important}.project-copy p{font-size:1rem;line-height:1.6}.project-copy .project-result{padding-left:1rem;border-left:3px solid #A16F35;font:500 1.05rem/1.55 Archivo,sans-serif;margin-top:1.5rem}.project-copy details{font-size:.9rem;margin-top:1.4rem}.project-copy summary{cursor:pointer;text-decoration:underline;text-underline-offset:.3em}.project-visual{min-width:0}.project-demo-fallback{padding:2rem;background:#D9DED2;border-radius:1rem;font-size:1rem}.project-visual:focus-visible{outline:2px solid #A16F35}.parcours{padding-block:4rem;background:#DCE0D5;color:#1A211D}.parcours .enveloppe{display:grid;grid-template-columns:.7fr 1.3fr;column-gap:4rem}.parcours h2{grid-row:1/3;font-size:2.1rem;line-height:1.15;max-width:15ch;font-weight:500}.parcours .qui{color:#344238;font-size:1.06rem;margin:0 0 1rem}.offres{padding-block:5rem}.offres h2{font-size:clamp(2rem,3.4vw,3.1rem);max-width:24ch;font-weight:500}.offres .surtitre{color:var(--jade);text-transform:none;letter-spacing:0;font-size:.85rem}.grille-offres{display:block;border-top:1px solid #465046;margin-top:2rem}.offre{display:grid;grid-template-columns:1.1fr 1.4fr 1fr;column-gap:2rem;padding:1.7rem 0!important;background:transparent!important;border:0!important;border-bottom:1px solid #465046!important;border-radius:0!important}.offre>.surtitre{grid-column:1;margin:0 0 .5rem}.offre h3{grid-column:1;grid-row:2;font-size:1.35rem;line-height:1.2}.offre>p:not(.prix):not(.surtitre){grid-column:2;grid-row:1/3;margin:0;font-size:.99rem}.offre .prix{grid-column:3;grid-row:1/3;margin:0;font-size:1.15rem;color:#DDB583}.offre .prix small{font:400 .82rem/1.5 Archivo,sans-serif;color:#B4BEB3;margin-top:.5rem}.offres .reglemente{background:transparent;border:0;padding:1rem 0;color:#B4BEB3;max-width:65ch}.offres .enveloppe>p:not(.surtitre):not(.intro-offres){font-size:.9rem;max-width:80ch;color:#B4BEB3}.contact{background:#263A30;border-radius:3rem 3rem 0 0;padding-block:4.5rem}.contact h2{font-size:clamp(2rem,4.1vw,3.8rem);font-weight:500;line-height:1.08;max-width:22ch}.contact .coordonnees{font-size:clamp(1rem,1.6vw,1.35rem)}.contact .note{color:#BBC7BC}.contact .champ label{font-family:Archivo,sans-serif;text-transform:none;letter-spacing:0;font-size:.85rem;color:#D8E1D5}.contact input,.contact select,.contact textarea{background:#1B2A22;color:#EAE6DC;border-radius:.35rem;border-color:#5A6C5B}.contact button{border-radius:100px;min-height:48px}footer{background:#263A30;border-top:1px solid #465747}
@media(max-width:62rem){.ouverture .enveloppe{grid-template-columns:1fr 1fr}.ouverture h1{font-size:3.2rem}.project-panel{grid-template-columns:1fr;gap:1.5rem}.project-copy{max-width:none}.project-copy>p:not(.surtitre){max-width:65ch}.project-copy details{margin-bottom:1rem}.parcours .enveloppe{grid-template-columns:1fr}.parcours h2{grid-row:auto;max-width:none;margin-bottom:1.5rem}.offre{grid-template-columns:1fr 1fr}.offre>p:not(.prix):not(.surtitre){grid-column:2;grid-row:1/4}.offre .prix{grid-column:1;grid-row:3;margin-top:1rem}}
@media(max-width:45rem){.bandeau nav{gap:.9rem}.bandeau nav a{font-size:.8rem}.ouverture{padding-block:1rem 2.6rem}.ouverture .enveloppe{grid-template-columns:1fr;gap:.5rem}.ouverture h1{font-size:clamp(2.65rem,10vw,3.65rem);max-width:14ch}.ouverture .surtitre{margin-bottom:1rem;font-size:.83rem}.ouverture .these{font-size:1.05rem}.hero-machine{max-width:380px;margin:0 auto;width:100%}.hero-machine svg{margin-top:0}.hero-machine .machine-caption{display:none}.work-intro{display:block}.work-intro>p{max-width:none}.preuves{border-radius:2rem 2rem 0 0}.project-tabs{margin-top:1.7rem;gap:.2rem}.project-tabs button{padding:.7rem .8rem;font-size:.88rem}.project-panel{padding-top:1.6rem}.offres{padding-block:3rem}.offre{display:block}.offre>p:not(.prix):not(.surtitre){margin-top:1rem}.offre h3{font-size:1.5rem}.offre .prix{margin-top:1.2rem}.contact{border-radius:2rem 2rem 0 0}.parcours{padding-block:2.5rem}.direct{flex-direction:column;align-items:flex-start;gap:.2rem}.actions{gap:.6rem}.actions .bouton{padding:.75rem .9rem;font-size:.85rem}.hero-machine:hover .flow-line{stroke-dasharray:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(max-width:45rem){.machine-word{font-size:17px}.machine-label{font-size:18px}}
/* Explicit surface themes: do not inherit the original light offer cards. */
.offres{background:#141A17;color:#EAE6DC}.offres h2,.offre h3{color:#EAE6DC}.offres .intro-offres,.offre>p:not(.prix):not(.surtitre){color:#C5CEC3}.grille-offres{background:transparent;border:0;border-top:1px solid #465046}.offre h3{margin:0}.offre .prix{color:#DDB583}.offre .surtitre{color:#A4C2AB}.offres .reglemente p{color:#B4BEB3}
