:root{--navy:#102e62;--green:#006b56;--ivory:#f4f1e9;--accent:#f4f1e9;--muted:#52605f;--header:122px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--header)}body{margin:0;background:var(--ivory);color:var(--navy);font:400 16px/1.6 Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}button{cursor:pointer}header{height:var(--header);padding:8px 5%;display:flex;align-items:center;justify-content:space-between;gap:28px;position:sticky;top:0;z-index:30;background:var(--ivory);border-bottom:1px solid #102e621a}.brand{display:flex;width:195px;height:106px;flex-shrink:0;align-items:center;justify-content:center}.brand img{display:block;width:100%;height:100%;object-fit:contain;transform:none;mix-blend-mode:multiply}nav{display:flex;align-items:center;gap:25px;font-size:12px}nav a:hover{color:var(--green)}.navcta{background:var(--accent);padding:15px 22px;font-size:12px;font-weight:700;border-radius:10px;white-space:nowrap}.navcta span{margin-left:18px}.hero{position:relative;min-height:680px;height:calc(100svh - var(--header));max-height:1100px;color:var(--ivory);isolation:isolate;display:flex;align-items:center;overflow:hidden}.heroimage,.shade{position:absolute;width:100%;height:100%;inset:0;object-fit:cover;z-index:-1}.heroimage{object-position:center 40%}.shade{background:linear-gradient(90deg,#071d39e0,#0a305a87 60%,#0a305a35)}.herotext{padding:65px 6% 100px;width:100%}.eyebrow{font:500 10px/1.5 monospace;letter-spacing:2px;text-transform:uppercase;margin:0 0 27px}.green{color:var(--green)}h1,h2,h3{font-family:'Arial Black',Arial,sans-serif;font-weight:900;line-height:.95;letter-spacing:-.065em;margin:0;text-transform:uppercase}h1{font-size:clamp(54px,7.7vw,118px);line-height:.93}em{font-style:normal;color:var(--green)}h1 em{color:var(--accent)}.herotext>p:not(.eyebrow){font-size:16px;margin:30px 0;line-height:1.7;max-width:540px}.actions{display:flex;gap:15px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:17px 25px;border:1px solid transparent;border-radius:10px;font-size:13px;font-weight:800;text-transform:uppercase;cursor:pointer;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.light{background:var(--accent);color:var(--navy)}.outline{border-color:var(--ivory);color:var(--ivory);background:#102e6230}.herofoot{position:absolute;bottom:27px;left:6%;right:6%;display:flex;justify-content:space-between;gap:20px;font:9px monospace;letter-spacing:1px}.ribbon{display:flex;align-items:center;justify-content:space-around;gap:30px;background:var(--navy);color:var(--ivory);padding:27px 5%;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.ribbon b{color:var(--accent);font-size:28px;font-weight:400}.section{padding:100px 6%}.intro{display:grid;grid-template-columns:1.4fr 1fr;align-items:end;gap:7%;padding-top:95px;padding-bottom:90px}h2{font-size:clamp(40px,5.5vw,78px)}.introcopy{max-width:450px;color:var(--muted);margin:0 0 5px}.chapter{position:relative;display:grid;grid-template-columns:1fr 1fr;min-height:calc(100svh - var(--header));align-items:center;gap:6%;padding:70px 6%;overflow:hidden}.chapter .photo{grid-column:2;grid-row:1;height:66svh;max-height:760px;min-height:400px;position:relative}.photo img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.8)}.photo span{position:absolute;bottom:20px;left:20px;padding:10px 15px;background:var(--ivory);color:var(--navy);font:10px monospace;letter-spacing:1.5px}.servicebody{grid-column:1;grid-row:1;min-width:0}.chapter:first-child{background:var(--green);color:var(--ivory)}.chapter:first-child em{color:var(--accent)}.chapter:first-child .eyebrow{color:var(--ivory)}.chapter h3{font-size:clamp(40px,4.8vw,72px)}.servicebody>p:not(.eyebrow){max-width:470px;margin:28px 0;opacity:.85}.servicebody ul{list-style:none;padding:0;margin:25px 0;font-size:13px}.servicebody li{padding:11px 0;border-bottom:1px solid #ffffff35}.servicebody li:before{content:'↗';margin-right:14px;color:var(--accent)}.textlink{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid currentColor;padding:16px 0;font-size:13px;font-weight:700;max-width:470px}.jurychapter{background:var(--navy);color:var(--ivory)}.jurychapter em,.jurychapter .eyebrow{color:var(--accent)}.jurychapter .photo{grid-column:1}.jurychapter .servicebody{grid-column:2}.jurychapter .photo img{object-position:45% center}.journey{height:330svh;background:var(--ivory);position:relative}.journeypin{position:sticky;top:var(--header);height:calc(100svh - var(--header));min-height:550px;overflow:hidden;display:flex;flex-direction:column}.journeytop{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:25px 6%;color:var(--green)}.journeytop .eyebrow{margin:0}.journeytop>span{font:9px monospace;letter-spacing:1px}.journeytrack{display:flex;width:300%;flex:1;min-height:0;will-change:transform;transform:translate3d(calc(var(--journey-progress,0)* -66.666667%),0,0)}.journeystep{width:33.333333%;flex-shrink:0;display:grid;grid-template-columns:1.2fr 1fr;gap:6%;padding:20px 6vw;align-items:center}.journeycopy{min-width:0}.journeycopy h2{font-size:clamp(35px,4.8vw,74px)}.journeycopy>p:not(.eyebrow){max-width:470px;font-size:15px;color:var(--muted);margin:30px 0 10px}.journeyvisual{height:100%;max-height:550px;min-height:250px;position:relative}.journeyvisual img{width:100%;height:100%;object-fit:cover;filter:saturate(.75)}.bigstep{position:absolute;right:15px;bottom:0;font:900 clamp(80px,11vw,170px)/.85 'Arial Black',Arial,sans-serif;letter-spacing:-.08em;color:var(--ivory)}.journeybottom{display:flex;align-items:center;gap:25px;padding:25px 6%;font:11px monospace}.journeyprogress{height:2px;background:#102e6220;flex:1}.journeyprogress i{display:block;height:100%;background:var(--green);width:calc(33.333% + var(--journey-progress,0)*66.667%)}.journeycontrols{display:flex;gap:10px}.journeycontrols button{border:1px solid #102e6245;border-radius:50%;background:none;color:var(--navy);width:36px;height:36px}.journeycontrols button:hover{background:var(--navy);color:var(--ivory)}.questions{display:grid;grid-template-columns:1fr 1fr;gap:7%;border-top:1px solid #102e6220}.questions h2{font-size:clamp(36px,4.4vw,64px)}.faqs details{border-bottom:1px solid #102e6230;padding:22px 0}.faqs details:first-child{padding-top:0}.faqs summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;font-weight:700;font-size:15px}.faqs summary:after{content:'+';font-size:22px;color:var(--green);line-height:1}.faqs details[open] summary:after{content:'−'}.faqs p{color:var(--muted);font-size:14px}.contact{background:var(--green);color:var(--ivory);display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}.contact .eyebrow,.contact h2 em{color:var(--accent)}.contact h2{font-size:clamp(42px,5.2vw,80px)}.contactintro>p:not(.eyebrow){margin:28px 0}.email{display:inline-block;border-bottom:1px solid var(--accent);padding-bottom:5px;font-size:17px}.small{font-size:11px;line-height:1.6;opacity:.75}fieldset{margin:0 0 25px;padding:0;border:0}legend{font-size:12px;margin-bottom:12px}.choices{display:grid;grid-template-columns:1fr 1fr;gap:12px}.choices label{position:relative;cursor:pointer}.choices input{position:absolute;opacity:0}.choices span{display:block;text-align:center;padding:13px 18px;border:1px solid #f4f1e975;border-radius:8px;font-size:13px;font-weight:700}.choices input:checked+span{background:var(--accent);border-color:var(--accent);color:var(--navy)}.choices input:focus-visible+span{outline:3px solid var(--ivory);outline-offset:3px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px}form label{display:block;font-size:12px;font-weight:700}input:not([type=radio]),textarea{display:block;width:100%;min-width:0;padding:13px 14px;margin-top:7px;border:2px solid transparent;border-radius:7px;background:var(--ivory);color:var(--navy);font-size:13px;outline-offset:3px}textarea{resize:vertical}form>label{margin-top:22px}.dark{background:var(--accent);color:var(--navy);width:100%;margin-top:10px}#formstatus{font-size:12px}.scrollnav{position:fixed;right:17px;top:50%;transform:translateY(-50%);z-index:40;display:flex;flex-direction:column;gap:15px;padding:14px 8px;background:#f4f1e9de;border:1px solid #102e621a;border-radius:30px}.scrollnav a{width:8px;height:8px;border:1px solid var(--navy);border-radius:50%;position:relative}.scrollnav a.active{background:var(--navy)}.scrollnav span{display:none;position:absolute;right:18px;top:-9px;background:var(--ivory);color:var(--navy);padding:4px 8px;font-size:10px;white-space:nowrap}.scrollnav a:hover span,.scrollnav a:focus-visible span{display:block}footer{display:flex;justify-content:space-between;align-items:center;gap:30px;background:var(--navy);color:var(--ivory);padding:40px 6%}.footerbrand{font:900 24px 'Arial Black',Arial,sans-serif;letter-spacing:-1px}footer p{font-size:11px}footer div p{font-size:8px;letter-spacing:3px;margin:0}footer>div:last-child{display:flex;flex-direction:column;align-items:flex-end;gap:12px;font-size:11px}footer button{border:0;background:none;color:inherit;font-size:10px;padding:0}dialog{max-width:550px;width:90%;background:var(--ivory);color:var(--navy);border:0;padding:35px}dialog h2{font-size:30px;letter-spacing:-1px}dialog p{font-size:14px}dialog a{text-decoration:underline}dialog::backdrop{background:#102e62b0}#closecredits{float:right;border:0;background:none;color:var(--navy);font-size:20px}@media(min-width:1700px){.herotext{padding-left:9%}.section,.chapter{padding-left:9%;padding-right:9%}}@media(max-width:1100px){nav{gap:15px;font-size:11px}header{padding-inline:4%;gap:15px}.brand{width:160px}.navcta{padding:14px 16px}.chapter{gap:5%;padding:60px 6%}.chapter h3{font-size:4.7vw}.journeycopy h2{font-size:4.8vw}}@media(max-width:850px){:root{--header:110px}nav{display:none}.brand{width:180px;height:96px}.hero{min-height:680px}h1{font-size:9vw}.intro{grid-template-columns:1fr;gap:30px}.introcopy{max-width:580px}.ribbon{gap:15px;font-size:11px}.ribbon span:last-child,.ribbon b:last-of-type{display:none}.chapter{grid-template-columns:1fr;gap:30px;min-height:0;padding:65px 6%}.chapter .photo,.jurychapter .photo{grid-column:1;grid-row:2;min-height:0;height:52svh;max-height:550px}.chapter .servicebody,.jurychapter .servicebody{grid-column:1;grid-row:1}.chapter h3{font-size:clamp(44px,8vw,68px)}.servicebody>p:not(.eyebrow){max-width:600px}.servicebody ul,.servicebody .textlink{max-width:600px}.journeycopy h2{font-size:4.8vw}.journeystep{gap:4%;grid-template-columns:1.2fr 1fr}.journeycopy>p:not(.eyebrow){font-size:13px}.journeytop>span{font-size:8px}.questions,.contact{grid-template-columns:1fr;gap:45px}.section{padding:70px 6%}.contactintro h2{font-size:9vw}.contactintro .small{display:none}.scrollnav{right:8px}}
@media(max-width:600px){:root{--header:103px}header{padding:3px 5%;gap:10px}.brand{width:147px;height:97px}.navcta{font-size:10px;padding:12px}.navcta span{margin-left:8px}.hero{min-height:650px;height:calc(100svh - var(--header));max-height:850px}.herotext{padding:55px 6% 90px}.heroimage{object-position:60% center}.shade{background:linear-gradient(90deg,#071d39e8,#0a305a85)}h1{font-size:10.6vw;letter-spacing:-.065em;line-height:.98}.herotext .eyebrow{font-size:9px;letter-spacing:1px;max-width:250px}.herotext>p:not(.eyebrow){font-size:14px;margin:26px 0}.actions{flex-direction:column;max-width:320px;gap:12px}.button{font-size:12px;padding:16px 20px}.herofoot{font-size:7px;bottom:25px}.herofoot span{max-width:130px}.herofoot a{max-width:130px;text-align:right}.ribbon{font-size:9px;gap:12px;justify-content:center;padding:20px 5%}.ribbon b{font-size:23px}h2{font-size:10.4vw}.eyebrow{font-size:8px;letter-spacing:1.5px;margin-bottom:22px}.section{padding:60px 6%}.introcopy{font-size:14px}.chapter{padding:55px 6%;gap:30px}.chapter h3{font-size:10.2vw}.chapter .photo{height:45svh;min-height:260px}.chapter .photo img{object-position:center}.servicebody>p:not(.eyebrow){font-size:14px;margin:25px 0}.servicebody ul{font-size:12px}.journey{height:auto}.journeypin{height:auto;min-height:0;position:relative;top:auto;overflow:visible}.journeytop{padding:28px 6%;border-bottom:1px solid #102e6220}.journeytop>span{display:none}.journeytrack{display:block;width:100%;transform:none!important;will-change:auto}.journeystep{display:flex;flex-direction:column;width:100%;padding:50px 6%;gap:30px;border-bottom:1px solid #102e6220;align-items:stretch}.journeycopy h2{font-size:10.5vw}.journeycopy>p:not(.eyebrow){font-size:14px}.journeyvisual{height:330px;min-height:0;max-height:none}.bigstep{font-size:100px}.journeybottom{display:none}.questions h2{font-size:10.2vw}.faqs summary{font-size:14px}.contactintro h2{font-size:11vw}.email{font-size:16px}.formgrid{grid-template-columns:1fr;gap:17px}.scrollnav{display:none}footer{flex-wrap:wrap;gap:25px}footer>p{width:100%;order:3;margin:0}footer>div:last-child{margin-left:auto}.footerbrand{font-size:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}.journey{height:auto}.journeypin{position:relative;top:auto;height:auto;overflow:visible}.journeytrack{display:block;width:100%;transform:none!important;will-change:auto}.journeystep{width:100%;padding-top:50px;padding-bottom:50px;min-height:600px}.journeyvisual{height:450px}.journeybottom{display:none}}

/* Charte bleu, vert et ivoire ; contact une question à la fois. */
.navcta{background:var(--green);color:var(--ivory)}.light{background:var(--ivory);color:var(--navy)}.jurychapter em,.jurychapter .eyebrow{color:var(--ivory)}a:focus-visible,button:focus-visible,summary:focus-visible{outline-color:#5baaa0}
[hidden]{display:none!important}.wizardtop{display:flex;justify-content:space-between;gap:16px;font-size:11px;opacity:.8}.wizardprogress{height:2px;background:#ffffff35;margin:15px 0 40px}.wizardprogress i{display:block;width:20%;height:100%;background:var(--ivory);transition:width .2s}.contactstep{min-height:210px}.contactstep label,.contactstep legend{font:700 clamp(24px,2.4vw,36px)/1.15 Arial,sans-serif;letter-spacing:-1px;margin:0 0 18px}.stephelp{font-size:13px;opacity:.8;margin:0 0 22px}.contactstep .choices label{font-size:15px;letter-spacing:0;margin:0}.contactstep .choices span{padding:22px 15px}.contactstep input:not([type=radio]),.contactstep textarea{font-size:17px;padding:17px 18px;line-height:1.5}.wizardactions{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:28px;min-height:56px}.wizardactions .button{width:auto;min-width:185px;margin:0 0 0 auto}.wizardactions #contactback{background:none;border:0;color:var(--ivory);padding:12px 0;font-size:13px}.contactnotice{margin-top:25px}.choices input:checked+span{background:var(--ivory);border-color:var(--ivory);color:var(--navy)}
@media(max-width:600px){.wizardprogress{margin-bottom:32px}.contactstep{min-height:220px}.contactstep label,.contactstep legend{font-size:27px}.contactstep .choices{grid-template-columns:1fr}.contactstep .choices span{padding:17px}.wizardactions{gap:15px}.wizardactions .button{min-width:0;font-size:11px}.wizardtop{font-size:10px}}

.contactintro>p.contactpromise{display:flex;align-items:center;gap:12px;font-size:16px;font-weight:700;line-height:1.5;margin:25px 0;padding:17px 0;border-top:1px solid #f4f1e950;border-bottom:1px solid #f4f1e950;color:var(--ivory)}.contactpromise span{font-size:23px;flex-shrink:0}

/* Une séquence de contact occupant tout l’écran disponible. */
.brand img{mix-blend-mode:normal}.contact.section{min-height:calc(100svh - var(--header));display:flex;flex-direction:column;justify-content:center;align-items:center;gap:25px;padding:35px 6% 30px}.contactintro{text-align:center;width:100%;max-width:1000px}.contactintro .eyebrow{margin:0 0 13px}.contactintro h2{font-size:clamp(35px,4.6vw,66px);line-height:.95}.contactintro>p.contactpromise{display:block;border:0;padding:0;margin:16px 0 0;font-size:15px}.contact #contactform{width:100%;max-width:900px}.contact .wizardtop{font-size:10px}.contact .wizardprogress{margin:12px 0 25px}.contact .contactstep{min-height:155px}.contact .contactstep>label,.contact .contactstep legend{font-size:24px;letter-spacing:-.5px}.contact .contactstep fieldset{margin:0}.contact .stephelp{margin:0 0 15px;font-size:12px}.contact .choices{gap:20px}.contact .choices span{min-height:125px;display:flex;align-items:center;justify-content:space-between;text-align:left;padding:25px 32px;font-size:clamp(24px,3vw,40px);background:transparent;border:1px solid #f4f1e980;transition:background .2s,color .2s}.contact .choices label:hover span,.contact .choices input:checked+span{background:var(--ivory);color:var(--navy)}.contact .wizardactions{margin-top:12px;min-height:45px}.contact .contactnotice{margin:15px 0 0;font-size:10px;text-align:center}.contact #formstatus:empty{display:none}.directcontact{display:block;text-align:center;font-size:11px;opacity:.85;margin-top:12px;text-decoration:underline;text-underline-offset:3px}.contact:has(.contactstep[data-step="0"]:not([hidden])) .wizardactions{display:none}

/* Page des mentions légales. */
.legal{max-width:900px;margin:0 auto}.legal h1{font-size:clamp(40px,6vw,76px);margin-bottom:50px}.legal section{padding:30px 0;border-top:1px solid #102e6230}.legal h2{font-size:24px;letter-spacing:-.04em;line-height:1.1;margin-bottom:18px}.legal p,.legal dd{font-size:15px;color:var(--muted)}.legal p{margin:0 0 14px}.legal section a{text-decoration:underline;text-underline-offset:3px}.legal dl{display:grid;grid-template-columns:220px 1fr;gap:10px 25px;margin:0}.legal dt{font-size:13px;font-weight:700}.legal dd{margin:0;overflow-wrap:anywhere}.legal mark{background:#ffe08a;color:var(--navy);padding:2px 5px}.legal>.textlink{margin-top:20px}
@media(max-width:600px){.legal dl{grid-template-columns:1fr;gap:2px}.legal dd{margin-bottom:12px}}
@media(max-width:600px){.contact.section{padding:30px 6%;gap:23px}.contactintro h2{font-size:9.8vw}.contactintro>p.contactpromise{font-size:13px;margin-top:14px}.contact .choices{grid-template-columns:1fr;gap:12px}.contact .choices span{min-height:85px;font-size:27px;padding:18px 25px}.contact .contactstep{min-height:200px}.contact .contactstep>label,.contact .contactstep legend{font-size:23px}.contact .wizardprogress{margin-bottom:22px}.contact .directcontact{font-size:10px}}
