@font-face{font-family:'Archivo';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/archivo-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Archivo';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/archivo-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Archivo';font-style:normal;font-weight:800;font-display:swap;src:url(fonts/archivo-latin-800-normal.woff2) format('woff2')}
@font-face{font-family:'Archivo';font-style:normal;font-weight:900;font-display:swap;src:url(fonts/archivo-latin-900-normal.woff2) format('woff2')}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/instrument-sans-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/instrument-sans-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/instrument-sans-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Instrument Serif';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/instrument-serif-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Instrument Serif';font-style:italic;font-weight:400;font-display:swap;src:url(fonts/instrument-serif-latin-400-italic.woff2) format('woff2')}

*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{--bg:#050505;--bg2:#0C0C0C;--bd:#1C1C1C;--bd2:#2A2A2A;--t:#FAFAFA;--tm:#8B8B8B;--ts:#4A4A4A;--fd:'Archivo',system-ui,sans-serif;--fs:'Instrument Sans',system-ui,sans-serif;--fi:'Instrument Serif',Georgia,serif;--eo:cubic-bezier(.16,1,.3,1);--eio:cubic-bezier(.87,0,.13,1);--gb:rgba(255,255,255,.06);--gbd:rgba(255,255,255,.14);color-scheme:dark}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--t);font-family:var(--fs);overflow-x:hidden;-webkit-font-smoothing:antialiased}
@media(pointer:coarse){body{cursor:auto}}
a{color:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent}
button{font:inherit;background:none;border:0;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}
img,video{display:block;max-width:100%}
.cur{position:fixed;top:0;left:0;width:8px;height:8px;background:var(--t);border-radius:50%;pointer-events:none;z-index:300;mix-blend-mode:difference;transform:translate(-50%,-50%);transition:width .3s var(--eo),height .3s var(--eo)}
.cur.h{width:56px;height:56px}.cur.p{width:46px;height:46px}
@media(pointer:coarse){.cur{display:none}}

.lm{position:fixed;inset:0;z-index:100;background:var(--bg);display:grid;place-items:center;transition:transform 1.1s var(--eio)}
.lm.done{transform:translateY(-100%)}
.lm__t{font-family:var(--fd);font-weight:900;font-size:clamp(2.5rem,7vw,5rem);letter-spacing:-.04em;text-transform:uppercase;overflow:hidden}
.lm__t span{display:inline-block;transform:translateY(100%);animation:mu .8s var(--eo) forwards}
.lm__t span:nth-child(1){animation-delay:.1s}.lm__t span:nth-child(2){animation-delay:.18s}.lm__t span:nth-child(3){animation-delay:.26s}.lm__t span:nth-child(4){animation-delay:.34s}.lm__t span:nth-child(5){animation-delay:.42s}.lm__t span:nth-child(6){animation-delay:.5s}.lm__t span:nth-child(7){animation-delay:.58s}.lm__t span:nth-child(8){animation-delay:.66s}
@keyframes mu{to{transform:translateY(0)}}

.nav{position:fixed;top:0;left:0;right:0;z-index:50;padding:22px 40px;display:flex;justify-content:space-between;align-items:center;background:rgba(5,5,5,0);border-bottom:1px solid rgba(255,255,255,0);backdrop-filter:blur(0);transition:all .4s var(--eo)}
.nav.sc{background:rgba(5,5,5,.82);border-bottom-color:rgba(255,255,255,.08);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);padding:16px 40px}
.nav__m{font-family:var(--fd);font-weight:900;font-size:.8125rem;letter-spacing:.03em;text-transform:uppercase}
.nav__m em{font-family:var(--fi);font-style:italic;font-weight:400;letter-spacing:0;text-transform:none;margin:0 .2em}
.nav__l{display:flex;gap:32px;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}
.nav__l a{opacity:0;transform:translateY(-8px);transition:opacity .6s var(--eo),transform .6s var(--eo),color .2s}
.nav__l a.in{opacity:1;transform:translateY(0)}.nav__l a:hover{color:var(--tm)}
.gb{padding:11px 20px;border-radius:999px;font-size:.75rem;letter-spacing:.05em;text-transform:uppercase;background:var(--gb);border:1px solid var(--gbd);backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);transition:transform .2s var(--eo),background .2s,border-color .2s;opacity:0;transform:translateY(-8px)}
.gb.in{opacity:1;transform:translateY(0);transition:opacity .6s var(--eo) .3s,transform .6s var(--eo) .3s}
.gb:hover{background:rgba(255,255,255,.11);border-color:rgba(255,255,255,.28);transform:scale(1.04)}
.gb:active{transform:scale(.96)}
@media(max-width:900px){.nav__l{display:none}.nav{padding:16px 20px}.nav.sc{padding:13px 20px}}

.hero{position:relative;min-height:100svh;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end}
.hero__vid{position:absolute;inset:0;z-index:0;background:#0a0a0a}
.hero__vid video,.hero__vid img{width:100%;height:100%;object-fit:cover;object-position:center 40%;position:absolute;inset:0}

.hero__scrim{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(5,5,5,.55) 0%,rgba(5,5,5,.1) 22%,rgba(5,5,5,.15) 45%,rgba(5,5,5,.75) 78%,rgba(5,5,5,.97) 100%)}
.hero__badge{position:relative;z-index:3;margin:110px 40px 0;align-self:flex-start;display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:999px;background:var(--gb);border:1px solid var(--gbd);backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);font-size:.75rem;letter-spacing:.04em;color:rgba(255,255,255,.85);opacity:0;filter:blur(6px);transition:opacity .7s var(--eo) .7s,filter .7s var(--eo) .7s}
.hero__badge.in{opacity:1;filter:blur(0)}.hero__badge::before{content:'';width:6px;height:6px;border-radius:50%;background:#fff;flex-shrink:0}
.hero__c{position:relative;z-index:3;padding:40px 40px 56px;display:flex;flex-direction:column;align-items:flex-start;max-width:760px}
.hero__t{font-family:var(--fd);font-weight:900;font-size:clamp(2.6rem,7vw,5.6rem);line-height:1.08;letter-spacing:-.03em;text-transform:uppercase;text-shadow:0 4px 40px rgba(0,0,0,.6)}
.hero__t .ln{display:block;overflow:hidden;padding-bottom:.08em}
.hero__t .ln span{display:inline-block;transform:translateY(115%);filter:blur(10px);transition:transform .9s var(--eo),filter .9s var(--eo)}
.hero__t.in .ln span{transform:translateY(0);filter:blur(0)}
.hero__t em{font-family:var(--fi);font-style:italic;font-weight:400;letter-spacing:-.01em;text-transform:lowercase;color:rgba(255,255,255,.75)}
.hero__d{margin-top:20px;font-size:1rem;line-height:1.55;color:rgba(255,255,255,.68);max-width:46ch;opacity:0;transform:translateY(16px);filter:blur(6px);transition:opacity .8s var(--eo) 1.05s,transform .8s var(--eo) 1.05s,filter .8s var(--eo) 1.05s}
.hero__d.in{opacity:1;transform:translateY(0);filter:blur(0)}
.hero__cta{margin-top:30px;opacity:0;transform:translateY(16px);transition:opacity .8s var(--eo) 1.2s,transform .8s var(--eo) 1.2s;width:100%}
.hero__cta.in{opacity:1;transform:translateY(0)}
.btn-g{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:17px 32px;font-family:var(--fs);font-weight:500;font-size:.9375rem;letter-spacing:.02em;border-radius:999px;min-height:52px;backdrop-filter:blur(16px) saturate(150%);-webkit-backdrop-filter:blur(16px) saturate(150%);transition:transform .2s var(--eo),background .2s}
.btn-gp{background:rgba(255,255,255,.14);color:var(--t);border:1px solid rgba(255,255,255,.28)}
.btn-gp:hover{background:rgba(255,255,255,.22);transform:scale(1.04)}.btn-gp:active{transform:scale(.97)}
.btn-gw{background:rgba(255,255,255,.92);color:var(--bg);border:1px solid rgba(255,255,255,.92)}
.btn-gw:hover{background:#fff;transform:scale(1.04)}.btn-gw:active{transform:scale(.97)}
@media(max-width:640px){.hero__badge{margin:92px 20px 0;font-size:.6875rem;padding:8px 14px}.hero__c{padding:28px 20px 40px}.hero__d{font-size:.9375rem;margin-top:16px}.hero__cta .btn-g{width:100%}}

.rv{opacity:0;transform:translateY(22px);filter:blur(6px);transition:opacity .75s var(--eo),transform .75s var(--eo),filter .75s var(--eo)}.rv.in{opacity:1;transform:translateY(0);filter:blur(0)}

.fl{padding:100px 24px 80px;border-top:1px solid var(--bd)}
.fl__i{max-width:1400px;margin:0 auto}
.fl__ey{font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;color:var(--tm);margin-bottom:12px}
.fl__ti{font-family:var(--fd);font-weight:800;text-transform:uppercase;font-size:clamp(1.9rem,4vw,3.2rem);letter-spacing:-.02em;max-width:16ch;margin-bottom:40px}
.fl__g{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}@media(max-width:1180px){.fl__g{grid-template-columns:1fr 1fr}}
@media(max-width:860px){.fl__g{grid-template-columns:1fr;gap:18px}}
.vc{border:1px solid var(--bd);border-radius:6px;background:var(--bg2);overflow:hidden;display:flex;flex-direction:column;transition:border-color .4s var(--eo),transform .4s var(--eo);cursor:pointer}
.vc:hover{border-color:var(--bd2);transform:translateY(-3px)}
.vc:active{transform:translateY(0) scale(.995)}
.vc__m{position:relative;aspect-ratio:16/10;overflow:hidden;background:#0a0a0a}
.vc__m img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--eo)}
.vc:hover .vc__m img{transform:scale(1.04)}
.vc__b{position:absolute;top:16px;left:16px;padding:6px 12px;border-radius:999px;font-size:.6875rem;letter-spacing:.06em;text-transform:uppercase;background:var(--gb);border:1px solid var(--gbd);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.vc__bd{padding:26px 26px 28px;display:flex;flex-direction:column;gap:16px;flex:1}
.vc__n{font-family:var(--fd);font-weight:800;text-transform:uppercase;font-size:1.375rem;letter-spacing:-.01em}
.vc__s{font-size:.8125rem;color:var(--ts);margin-top:2px}
.vc__sp{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding-top:14px;border-top:1px solid var(--bd)}
.sp__l{font-size:.625rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ts)}
.sp__v{font-size:.8125rem;color:var(--tm);font-weight:500;margin-top:4px}
.vc__cta{margin-top:4px;padding:14px 22px;border-radius:999px;text-align:center;font-size:.875rem;background:var(--gb);border:1px solid var(--gbd);backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);transition:transform .2s var(--eo),background .2s;min-height:48px;display:flex;align-items:center;justify-content:center}
.vc__cta:hover{background:rgba(255,255,255,.12);transform:scale(1.02)}
.fl__n{margin-top:28px;font-size:.8125rem;color:var(--ts);display:flex;align-items:center;gap:8px}
.fl__n::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--ts);flex-shrink:0}
@media(max-width:640px){.fl{padding:72px 20px 60px}.fl__ti{margin-bottom:32px}.vc__bd{padding:22px 22px 24px}}

.mrs{padding:90px 24px 80px;border-top:1px solid var(--bd)}
.mrs__i{max-width:1400px;margin:0 auto}
.mrs__ey{font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;color:var(--tm);margin-bottom:14px}
.mrs__ti{font-family:var(--fd);font-weight:800;text-transform:uppercase;font-size:clamp(1.9rem,4.5vw,3.4rem);letter-spacing:-.02em;max-width:18ch;margin-bottom:48px}
.col{position:relative;height:580px;border-radius:6px;overflow:hidden;background:var(--bg2);margin-bottom:64px}
.cp{position:absolute;overflow:hidden;border-radius:3px;box-shadow:0 30px 70px -20px rgba(0,0,0,.85);cursor:pointer;transition:transform .5s var(--eo)}
.cp img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--eo)}
.cp:hover img{transform:scale(1.05)}.cp:hover{transform:translateY(-6px)}.cp:active{transform:translateY(-2px) scale(.99)}
.cp--1{left:3%;top:5%;width:26%;height:44%;z-index:1}
.cp--2{left:30%;top:12%;width:36%;height:70%;z-index:3;box-shadow:-50px 0 70px -25px rgba(0,0,0,.7),0 30px 70px -20px rgba(0,0,0,.85)}
.cp--3{right:3%;top:4%;width:22%;height:32%;z-index:1}
.cp--4{left:4%;bottom:5%;width:20%;height:26%;z-index:2}
.cp--5{right:4%;bottom:4%;width:26%;height:38%;z-index:2}
@media(max-width:780px){.col{height:420px;margin-bottom:48px}.cp--1{left:3%;top:4%;width:44%;height:38%}.cp--2{left:38%;top:16%;width:58%;height:62%}.cp--3{display:none}.cp--4{left:4%;bottom:4%;width:40%;height:30%}.cp--5{right:4%;bottom:6%;width:30%;height:34%}}
@media(max-width:480px){.col{height:360px}.cp--5{display:none}.cp--1{width:46%;height:40%}.cp--2{left:40%;top:18%;width:56%;height:64%}.cp--4{width:44%;height:32%}}

.sl{display:flex;flex-direction:column;border-top:1px solid var(--bd)}
.si{border-bottom:1px solid var(--bd);cursor:pointer}
.si__h{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px 4px}
.si__n{font-family:var(--fi);font-style:italic;color:var(--tm);font-size:1.0625rem;margin-right:20px}
.si__t{font-family:var(--fd);font-weight:700;text-transform:uppercase;font-size:clamp(1.1rem,2.2vw,1.5rem);letter-spacing:-.01em;flex:1}
.si__ic{width:34px;height:34px;border-radius:50%;flex-shrink:0;border:1px solid var(--gbd);background:var(--gb);display:flex;align-items:center;justify-content:center;transition:transform .4s var(--eo),background .3s;position:relative}
.si__ic::before,.si__ic::after{content:'';position:absolute;background:var(--t);transition:transform .4s var(--eo)}
.si__ic::before{width:12px;height:1.5px}.si__ic::after{width:1.5px;height:12px}
.si.open .si__ic::after{transform:rotate(90deg) scaleY(0)}.si.open .si__ic{background:rgba(255,255,255,.14)}
.si__b{max-height:0;overflow:hidden;transition:max-height .5s var(--eo)}
.si.open .si__b{max-height:220px}
.si__bi{padding:0 4px 28px 54px;color:var(--tm);font-size:.9375rem;line-height:1.6;max-width:62ch}
@media(max-width:640px){.mrs{padding:72px 20px 60px}.mrs__ti{margin-bottom:36px}.si__h{padding:22px 2px}.si__n{margin-right:14px}.si__bi{padding:0 2px 24px 40px}}

.cta{position:relative;padding:100px 24px 110px;border-top:1px solid var(--bd);text-align:center;background-image:url("mercedes-classe-v-calandre.webp");background-size:cover;background-position:center 30%}
.cta::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,5,5,.88),rgba(5,5,5,.94) 60%,rgba(5,5,5,.98))}
.cta__i{position:relative;z-index:1;max-width:700px;margin:0 auto}
.cta__ey{font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;color:var(--tm);margin-bottom:16px}
.cta__ti{font-family:var(--fd);font-weight:800;text-transform:uppercase;font-size:clamp(1.8rem,4.5vw,3.2rem);letter-spacing:-.02em;margin-bottom:36px}
.cta__btns{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;margin-bottom:32px}
.tr{display:flex;gap:24px;flex-wrap:wrap;justify-content:center}
.tri{font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ts);display:flex;align-items:center;gap:8px}
.tri::before{content:'';width:4px;height:4px;border-radius:50%;background:var(--ts)}
@media(max-width:640px){.cta{padding:72px 20px 84px}.cta__btns .btn-g{width:100%}.tr{gap:14px 20px}}

.mo{position:fixed;inset:0;z-index:250;display:flex;align-items:center;justify-content:center;padding:24px;opacity:0;pointer-events:none;transition:opacity .4s var(--eo)}
.mo.open{opacity:1;pointer-events:auto}
.mo__bk{position:absolute;inset:0;background:rgba(5,5,5,.85);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%)}
.mo__p{position:relative;z-index:1;width:100%;max-width:860px;max-height:88vh;overflow-y:auto;-webkit-overflow-scrolling:touch;background:var(--bg2);border:1px solid var(--bd2);border-radius:8px;transform:scale(.94) translateY(16px);transition:transform .45s cubic-bezier(.22,1.12,.36,1)}
.mo.open .mo__p{transform:scale(1) translateY(0)}
.mo__cl{position:absolute;top:16px;right:16px;z-index:2;width:44px;height:44px;border-radius:50%;background:rgba(5,5,5,.6);border:1px solid var(--gbd);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;font-size:1.1rem;transition:transform .2s var(--eo),background .2s}
.mo__cl:hover{background:rgba(255,255,255,.12);transform:rotate(90deg)}
.mo__hr{aspect-ratio:16/9;overflow:hidden;background:#0a0a0a}.mo__hr img{width:100%;height:100%;object-fit:cover}
.mo__th{display:flex;gap:2px;background:var(--bd)}.mo__t{flex:1;aspect-ratio:1;cursor:pointer;overflow:hidden;position:relative}.mo__t img{width:100%;height:100%;object-fit:cover;filter:brightness(.55);transition:filter .25s var(--eo)}.mo__t.ac img,.mo__t:hover img{filter:brightness(1)}
.mo__b{padding:30px 32px}
.mo__ey{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--tm);margin-bottom:10px}
.mo__ti{font-family:var(--fd);font-weight:800;text-transform:uppercase;font-size:clamp(1.6rem,4vw,2.2rem);letter-spacing:-.02em;margin-bottom:16px}
.mo__d{color:var(--tm);font-size:.9375rem;line-height:1.6;max-width:56ch;margin-bottom:24px}
.mo__cta{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:16px 30px;border-radius:999px;background:rgba(255,255,255,.92);color:var(--bg);font-weight:500;font-size:.9375rem;transition:transform .2s var(--eo),background .2s;min-height:52px}
.mo__cta:hover{background:#fff;transform:scale(1.03)}.mo__cta:active{transform:scale(.97)}
body.ml{overflow:hidden}
@media(max-width:640px){.mo{padding:14px}.mo__b{padding:24px 22px}.mo__cta{width:100%}}

.lb{position:fixed;inset:0;z-index:260;display:flex;align-items:center;justify-content:center;padding:32px;opacity:0;pointer-events:none;transition:opacity .4s var(--eo)}
.lb.open{opacity:1;pointer-events:auto}
.lb__bk{position:absolute;inset:0;background:rgba(5,5,5,.88);backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%)}
.lb__fr{position:relative;z-index:1;max-width:900px;max-height:82vh;width:100%;border-radius:6px;overflow:hidden;transform:scale(.85);opacity:0;transition:transform .52s cubic-bezier(.22,1.12,.36,1),opacity .4s var(--eo);box-shadow:0 40px 100px -20px rgba(0,0,0,.9)}
.lb.open .lb__fr{transform:scale(1);opacity:1}
.lb__fr img{width:100%;height:100%;object-fit:cover;max-height:82vh}
.lb__cl{position:absolute;top:16px;right:16px;z-index:3;width:44px;height:44px;border-radius:50%;background:rgba(5,5,5,.6);border:1px solid var(--gbd);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;font-size:1.1rem;transition:transform .2s var(--eo),background .2s}
.lb__cl:hover{background:rgba(255,255,255,.12);transform:rotate(90deg)}
@media(max-width:640px){.lb{padding:16px}}



@media(max-width:640px){
.hero{min-height:auto;justify-content:flex-start;display:flex;flex-direction:column}
.hero__vid{position:relative;width:100%;aspect-ratio:16/9;height:auto;min-height:0;flex-shrink:0;margin-top:64px}
.hero__vid video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center}
.hero__scrim{background:linear-gradient(180deg,rgba(5,5,5,.25) 0%,rgba(5,5,5,0) 40%,rgba(5,5,5,0) 65%,rgba(5,5,5,.9) 95%,rgba(5,5,5,1) 100%)}
.hero__badge{position:absolute;top:76px;left:0;margin:0 16px;z-index:5;background:rgba(5,5,5,.55)}
.hero__c{padding:32px 20px 48px;position:relative;z-index:3;background:var(--bg);max-width:none}
.hero__t{font-size:clamp(2.8rem,15vw,3.8rem)}
.hero__d{font-size:.9375rem;margin-top:16px;max-width:none}
.hero__cta{margin-top:28px}
.hero__cta .btn-g{width:100%}
}

@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.2s!important}.lm.done{transform:none;opacity:0}.hero__t .ln span{transform:none;filter:none}.cur{display:none}}

/* sans JS (aperçu fichier iOS, etc.) : tout visible, pas de loader */
html:not(.js) .lm{display:none}
html:not(.js) .rv,html:not(.js) .nav__l a,html:not(.js) .gb,html:not(.js) .hero__badge,html:not(.js) .hero__d,html:not(.js) .hero__cta{opacity:1!important;transform:none!important;filter:none!important}
html:not(.js) .hero__t .ln span{transform:none!important;filter:none!important}
html:not(.js) .cur{display:none}


.hv__f--on{opacity:0;animation:hvOn 1.2s ease 2.6s forwards}
@keyframes hvOn{to{opacity:1}}
@media(prefers-reduced-motion:reduce){.hv__f--on{opacity:1;animation:none}}

img{height:auto}
html.cur-on body{cursor:none}
@media(pointer:coarse){html.cur-on body{cursor:auto}}
.nav__m a{display:inline-flex;align-items:baseline}
.skip{position:absolute;left:-999px;top:8px;z-index:400;background:#fff;color:#050505;padding:10px 16px;border-radius:999px;font-size:.875rem}
.skip:focus{left:12px}
:focus-visible{outline:2px solid #fff;outline-offset:3px}

/* H1 éditorial au-dessus du monogramme */
.hero__k{font-family:var(--fs);font-weight:500;font-size:.8125rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.72);margin-bottom:14px;max-width:44ch;line-height:1.5;opacity:0;transform:translateY(10px);transition:opacity .8s var(--eo) .2s,transform .8s var(--eo) .2s}
.hero__k.in{opacity:1;transform:translateY(0)}
.hero__cta{display:flex;gap:12px;flex-wrap:wrap}
html:not(.js) .hero__k{opacity:1!important;transform:none!important}
@media(max-width:640px){.hero__k{font-size:.72rem;letter-spacing:.1em}.hero__cta .btn-g{width:100%}}

/* Titres de section génériques */
.sx{padding:100px 24px 90px;border-top:1px solid var(--bd)}
.sx__i{max-width:1400px;margin:0 auto}
.sx__ey{font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;color:var(--tm);margin-bottom:12px}
.sx__ti{font-family:var(--fd);font-weight:800;text-transform:uppercase;font-size:clamp(1.9rem,4vw,3.2rem);letter-spacing:-.02em;max-width:20ch;margin-bottom:20px;line-height:1.05}
.sx__lead{color:rgba(255,255,255,.66);max-width:62ch;line-height:1.65;margin-bottom:44px}
@media(max-width:640px){.sx{padding:72px 20px 60px}}

/* Prestations */
.svg-g{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
@media(max-width:860px){.svg-g{grid-template-columns:1fr}}
.sv{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:250px;padding:30px 30px 26px;border:1px solid var(--bd);border-radius:6px;background:var(--bg2);overflow:hidden;transition:border-color .4s var(--eo),transform .4s var(--eo)}
.sv:hover{border-color:var(--bd2);transform:translateY(-3px)}
.sv__n{font-family:var(--fi);font-style:italic;color:var(--tm);font-size:1.1rem}
.sv__t{font-family:var(--fd);font-weight:800;text-transform:uppercase;font-size:clamp(1.25rem,2.2vw,1.6rem);letter-spacing:-.01em;margin:14px 0 12px;line-height:1.15}
.sv__d{color:rgba(255,255,255,.62);line-height:1.6;font-size:.95rem;max-width:48ch}
.sv__a{margin-top:22px;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;display:flex;align-items:center;gap:10px}
.sv__a::after{content:'→';transition:transform .3s var(--eo)}
.sv:hover .sv__a::after{transform:translateX(5px)}

/* Zone */
.zn-g{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media(max-width:860px){.zn-g{grid-template-columns:1fr}}
.zn{padding:28px;border:1px solid var(--bd);border-radius:6px;background:var(--bg2)}
.zn h3{font-family:var(--fd);font-weight:800;text-transform:uppercase;font-size:1.15rem;margin-bottom:12px}
.zn p{color:rgba(255,255,255,.62);line-height:1.6;font-size:.95rem}
.zn-more{margin-top:26px;color:var(--tm);font-size:.9rem;line-height:1.7;max-width:80ch}

/* FAQ (details natifs : lisible sans JS, accessible) */
.fq{max-width:900px;border-top:1px solid var(--bd)}
.fq details{border-bottom:1px solid var(--bd)}
.fq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 4px;font-family:var(--fd);font-weight:600;font-size:clamp(1rem,1.6vw,1.15rem)}
.fq summary::-webkit-details-marker{display:none}
.fq summary::after{content:'+';font-family:var(--fs);font-weight:400;font-size:1.4rem;color:var(--tm);transition:transform .3s var(--eo)}
.fq details[open] summary::after{transform:rotate(45deg)}
.fq .fq__a{padding:0 4px 24px;color:rgba(255,255,255,.66);line-height:1.7;max-width:70ch}
.fq .fq__a a{text-decoration:underline;text-underline-offset:3px}

/* Pied de page */
.ft{border-top:1px solid var(--bd);padding:72px 24px 36px;background:#030303}
.ft__i{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px}
@media(max-width:900px){.ft__i{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.ft__i{grid-template-columns:1fr}}
.ft__m{font-family:var(--fd);font-weight:900;text-transform:uppercase;font-size:1rem;letter-spacing:.03em}
.ft__m em{font-family:var(--fi);font-style:italic;font-weight:400;text-transform:none;letter-spacing:0;margin:0 3px}
.ft__b p{color:var(--tm);line-height:1.65;font-size:.9rem;margin-top:14px;max-width:38ch}
.ft__c a{color:var(--t)}
.ft__col{display:flex;flex-direction:column;gap:10px;font-size:.9rem;color:var(--tm)}
.ft__col a:hover{color:var(--t)}
.ft__h{font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;color:#8B8B8B;margin-bottom:6px}
.ft__bot{max-width:1400px;margin:48px auto 0;padding-top:24px;border-top:1px solid var(--bd);font-size:.78rem;color:#7A7A7A;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}

/* Pages de prestation */
.ph{padding:150px 24px 40px}
.ph__i{max-width:1100px;margin:0 auto}
.bc{font-size:.75rem;letter-spacing:.06em;color:var(--tm);margin-bottom:28px}
.bc ol{list-style:none;display:flex;flex-wrap:wrap;gap:8px}
.bc li+li::before{content:'/';margin-right:8px;color:var(--ts)}
.bc a:hover{color:var(--t)}
.ph__ey{font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;color:var(--tm);margin-bottom:14px}
.ph__t{font-family:var(--fd);font-weight:800;text-transform:uppercase;font-size:clamp(2.1rem,5.4vw,4.2rem);line-height:1.02;letter-spacing:-.025em;max-width:18ch}
.ph__l{margin-top:24px;font-size:1.08rem;line-height:1.65;color:rgba(255,255,255,.72);max-width:60ch}
.ph__cta{margin-top:32px;display:flex;gap:12px;flex-wrap:wrap}
.ph__img{margin:56px auto 0;max-width:1100px;border-radius:6px;overflow:hidden;border:1px solid var(--bd);aspect-ratio:16/8;background:#0a0a0a}
.ph__img img{width:100%;height:100%;object-fit:cover}
@media(max-width:640px){.ph{padding:120px 20px 28px}.ph__cta .btn-g{width:100%}.ph__img{aspect-ratio:4/3;margin-top:36px}}
.pc{padding:40px 24px 40px}
.pc__i{max-width:780px;margin:0 auto}
.pc h2{font-family:var(--fd);font-weight:800;text-transform:uppercase;font-size:clamp(1.4rem,2.8vw,2rem);letter-spacing:-.015em;line-height:1.12;margin:64px 0 18px}
.pc h3{font-family:var(--fd);font-weight:600;font-size:1.1rem;margin:28px 0 10px}
.pc p,.pc li{color:rgba(255,255,255,.72);line-height:1.75;font-size:1rem}
.pc p+p{margin-top:14px}
.pc ul,.pc ol{margin:14px 0 0 20px;display:grid;gap:8px}
.pc strong{color:var(--t);font-weight:600}
.pc a{text-decoration:underline;text-underline-offset:3px}
.tb{width:100%;border-collapse:collapse;margin-top:18px;font-size:.95rem}
.tb th,.tb td{text-align:left;padding:14px 12px;border-bottom:1px solid var(--bd);vertical-align:top}
.tb th{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--tm);font-weight:500}
.tb td{color:rgba(255,255,255,.78)}
.tb-note{font-size:.82rem!important;color:var(--tm)!important;margin-top:10px}
.stp{counter-reset:s;list-style:none;margin:18px 0 0!important;display:grid;gap:14px}
.stp li{counter-increment:s;position:relative;padding:18px 18px 18px 62px;border:1px solid var(--bd);border-radius:6px;background:var(--bg2)}
.stp li::before{content:counter(s,decimal-leading-zero);position:absolute;left:18px;top:17px;font-family:var(--fi);font-style:italic;color:var(--tm);font-size:1.15rem}
.pv{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:20px}
@media(max-width:760px){.pv{grid-template-columns:1fr}}
.pv__c{border:1px solid var(--bd);border-radius:6px;overflow:hidden;background:var(--bg2)}
.pv__c img{width:100%;aspect-ratio:16/10;object-fit:cover}
.pv__b{padding:16px 16px 18px}
.pv__n{font-family:var(--fd);font-weight:800;text-transform:uppercase;font-size:.95rem}
.pv__s{color:var(--tm);font-size:.85rem;margin-top:6px;line-height:1.5}
.rel{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:20px}
@media(max-width:760px){.rel{grid-template-columns:1fr}}
.rel a{display:block;padding:20px;border:1px solid var(--bd);border-radius:6px;background:var(--bg2);text-decoration:none!important;transition:border-color .3s}
.rel a:hover{border-color:var(--bd2)}
.rel b{display:block;font-family:var(--fd);font-weight:800;text-transform:uppercase;font-size:.9rem;margin-bottom:6px}
.rel span{color:var(--tm);font-size:.85rem;line-height:1.5}
.lg .pc__i{max-width:760px}
.lg h1{font-family:var(--fd);font-weight:800;text-transform:uppercase;font-size:clamp(2rem,4.5vw,3rem);margin-bottom:12px}
.todo{background:rgba(255,196,0,.14);color:#ffd166;padding:1px 6px;border-radius:3px;font-style:normal}

.zn p a{display:inline-block;margin-top:10px;color:#fff;font-weight:600;text-decoration:underline;text-underline-offset:3px}
.zn p a::after{content:" →"}

/* Logo MK (2026-10-11) */
.nav__m a{align-items:center}
.nav__logo{width:28px;height:28px;border-radius:6px;margin-right:.65em;flex:none;box-shadow:0 0 0 1px rgba(255,255,255,.35)}
.ft__m{display:inline-flex;align-items:center}
.ft__logo{width:36px;height:36px;border-radius:8px;margin-right:.6em;flex:none;box-shadow:0 0 0 1px rgba(255,255,255,.35)}
@media (max-width:768px){.nav__logo{width:24px;height:24px;margin-right:.5em}}
@media (min-width:861px){.zn-g--2{grid-template-columns:repeat(2,1fr)}}

/* Bannière cookies (tarteaucitron) aux couleurs du site — 2026-10-16. Accepter et Refuser ont le même poids (CNIL). */
html body #tarteaucitronRoot #tarteaucitronAlertBig{box-sizing:border-box!important;left:12px!important;right:12px!important;bottom:12px!important;width:auto!important;max-width:560px!important;margin:0 auto!important;padding:20px 20px 14px!important;background:rgba(12,12,12,.94)!important;-webkit-backdrop-filter:blur(16px) saturate(150%);backdrop-filter:blur(16px) saturate(150%);border:1px solid var(--bd2)!important;border-radius:20px!important;box-shadow:0 18px 50px rgba(0,0,0,.55)!important;color:var(--t)!important;font-family:var(--fs)!important;text-align:left!important;display:grid!important;grid-template-columns:1fr 1fr;gap:10px}
html body #tarteaucitronRoot #tarteaucitronAlertBig[style*="display: none"]{display:none!important}
html body #tarteaucitronRoot #tarteaucitronAlertBig::before{content:"Mesure des annonces";grid-column:1/-1;font-family:var(--fd);font-weight:900;font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--t)}
html body #tarteaucitronRoot #tarteaucitronDisclaimerAlert{grid-column:1/-1;display:block!important;margin:0 0 6px!important;padding:0!important;font:400 .875rem/1.5 var(--fs)!important;color:var(--tm)!important;text-align:left!important}
html body #tarteaucitronRoot #tarteaucitronAlertBig .tarteaucitronCTAButton{box-sizing:border-box!important;margin:0!important;padding:0 10px!important;min-height:48px;width:100%;white-space:nowrap!important;border-radius:999px!important;font:500 .9375rem/1 var(--fs)!important;font-weight:500!important;letter-spacing:.02em;cursor:pointer;transition:background .2s,color .2s}
html body #tarteaucitronRoot #tarteaucitronPersonalize2{background:#F2F2F2!important;color:#050505!important;border:1px solid #F2F2F2!important}
html body #tarteaucitronRoot #tarteaucitronAllDenied2{background:transparent!important;color:var(--t)!important;border:1px solid rgba(255,255,255,.55)!important}
html body #tarteaucitronRoot #tarteaucitronPersonalize2:hover{background:#fff!important}
html body #tarteaucitronRoot #tarteaucitronAllDenied2:hover{background:rgba(255,255,255,.08)!important}
html body #tarteaucitronRoot #tarteaucitronAlertBig .tarteaucitronCheck,html body #tarteaucitronRoot #tarteaucitronAlertBig .tarteaucitronCross{display:none!important}
html body #tarteaucitronRoot #tarteaucitronCloseAlert,html body #tarteaucitronRoot #tarteaucitronPrivacyUrl{background:none!important;border:0!important;margin:2px 0 0!important;padding:8px 0!important;font:400 .8125rem/1.2 var(--fs)!important;font-size:.8125rem!important;white-space:nowrap!important;color:var(--tm)!important;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
html body #tarteaucitronRoot #tarteaucitronCloseAlert{justify-self:start}
html body #tarteaucitronRoot #tarteaucitronPrivacyUrl{justify-self:end}
html body #tarteaucitronRoot #tarteaucitronCloseAlert:hover,html body #tarteaucitronRoot #tarteaucitronPrivacyUrl:hover{color:var(--t)!important}
html body #tarteaucitronRoot #tarteaucitronAlertBig :focus-visible{outline:2px solid var(--t)!important;outline-offset:2px}