@font-face{font-family:'Archivo';font-style:normal;font-display:optional;font-weight:600 800;font-stretch:100% 118%;src:url(fonts/archivo.woff2) format('woff2-variations')}
@font-face{font-family:'Manrope';font-style:normal;font-display:swap;font-weight:200 800;src:url(fonts/manrope.woff2) format('woff2-variations')}
@font-face{font-family:'Michroma';font-style:normal;font-display:swap;font-weight:400;src:url(fonts/michroma.woff2) format('woff2')}

body{margin:0;background:#0B0B0C}
a{color:#F5CE3E}a:hover{color:#FFE27A}
.ld-hero{position:relative;overflow:hidden}

.ld-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,11,12,.95) 0%,rgba(11,11,12,.82) 48%,rgba(11,11,12,.3) 100%)}
.ld-up{opacity:0;animation:ldUp .9s cubic-bezier(.2,.7,.2,1) forwards}
.ld-d1{animation-delay:.15s}.ld-d2{animation-delay:.3s}.ld-d3{animation-delay:.45s}
.ld-line{display:block;height:2px;width:0;background:#F5CE3E;animation:ldLine 1.2s .5s cubic-bezier(.2,.7,.2,1) forwards}
.ld-reveal{animation:ldUp linear both;animation-timeline:view();animation-range:entry 0% cover 28%}
.ld-card{transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .35s,box-shadow .35s}
.ld-card:hover{transform:translateY(-6px);border-color:#F5CE3E;box-shadow:0 18px 40px rgba(0,0,0,.45)}
.ld-btn{position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s}
.ld-btn:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(245,206,62,.28)}
.ld-btn::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);animation:ldShine 3.6s 1.4s ease-in-out infinite}
.ld-step{position:relative}
.ld-step::before{content:"";position:absolute;left:19px;top:44px;bottom:-28px;width:2px;background:linear-gradient(#F5CE3E,transparent);transform-origin:top;animation:ldGrow linear both;animation-timeline:view();animation-range:entry 10% cover 45%}
.ld-step:last-child::before{display:none}
details summary{list-style:none;cursor:pointer}
details summary::-webkit-details-marker{display:none}
details[open] .ld-plus{transform:rotate(45deg)}
.ld-plus{transition:transform .3s}
@keyframes ldKen{from{transform:scale(1.02)}to{transform:scale(1.12) translateX(-1.5%)}}
@keyframes ldUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
@keyframes ldLine{to{width:96px}}
@keyframes ldShine{0%{left:-60%}35%,100%{left:130%}}
@keyframes ldGrow{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.ld-up{opacity:1}}
.ld-nav{display:flex}.ld-burger{display:none}
.g4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.g2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:56px;align-items:start}
.g2c{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
@media (max-width:1000px){.ld-nav{display:none}.ld-burger{display:flex}.g4{grid-template-columns:repeat(2,minmax(0,1fr))}.g2{grid-template-columns:repeat(1,minmax(0,1fr));gap:36px}}
@media (max-width:620px){.ld-logo{height:34px!important}.ld-call-txt{display:none}.g4{grid-template-columns:repeat(1,minmax(0,1fr))}.g2c{grid-template-columns:repeat(1,minmax(0,1fr))}}


body{margin:0;background:#0B0B0C}
a{color:#F5CE3E}a:hover{color:#FFE27A}
.ld-hero{position:relative;overflow:hidden}

.ld-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,11,12,.95) 0%,rgba(11,11,12,.8) 45%,rgba(11,11,12,.25) 100%)}

.ld-up{opacity:0;animation:ldUp .9s cubic-bezier(.2,.7,.2,1) forwards}
.ld-d1{animation-delay:.15s}.ld-d2{animation-delay:.3s}.ld-d3{animation-delay:.45s}.ld-d4{animation-delay:.6s}
.ld-line{display:block;height:2px;width:0;background:#F5CE3E;animation:ldLine 1.2s .5s cubic-bezier(.2,.7,.2,1) forwards}
.ld-reveal{animation:ldUp linear both;animation-timeline:view();animation-range:entry 0% cover 28%}
.ld-card{transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .35s,box-shadow .35s}
.ld-card:hover{transform:translateY(-6px);border-color:#F5CE3E;box-shadow:0 18px 40px rgba(0,0,0,.45)}
.ld-card img{transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.ld-card:hover img{transform:scale(1.06)}
.ld-zoom{overflow:hidden;border-radius:8px}
.ld-zoom img{transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.ld-zoom:hover img{transform:scale(1.07)}
.ld-btn{position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s}
.ld-btn:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(245,206,62,.28)}
.ld-btn::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);animation:ldShine 3.6s 1.4s ease-in-out infinite}
.ld-marquee{display:flex;width:max-content;animation:ldMarq 38s linear infinite}
.ld-marquee:hover{animation-play-state:paused}
.ld-scroll{animation:ldBob 1.8s ease-in-out infinite}
.ld-rev-a{animation:ldMarq 70s linear infinite}.ld-rev-b{animation:ldMarqR 70s linear infinite}.ld-rev:hover{animation-play-state:paused}
.ld-fade{-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
@keyframes ldMarqR{from{transform:translateX(-50%)}to{transform:translateX(0)}}
.ld-scrub-bg{will-change:transform;transform-origin:62% 55%;animation:none!important;transition:transform .08s linear}
.ld-phase{transition:opacity .6s ease,transform .6s cubic-bezier(.2,.7,.2,1)}
.ld-phase-2{text-align:right}.ld-phase-2,.ld-phase-3{opacity:0;transform:translateY(30px);pointer-events:none}
.ld-phase-2.on,.ld-phase-3.on{opacity:1;transform:none;pointer-events:auto}
.ld-phase-1.off{opacity:0;transform:translateY(-30px);pointer-events:none}
.ld-hint.off{opacity:0}
@media (max-width:620px){.ld-phase-2,.ld-phase-3{left:20px;right:20px;bottom:10vh;text-align:left}}

@keyframes ldKen{from{transform:scale(1.02)}to{transform:scale(1.12) translateX(-1.5%)}}
@keyframes ldUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
@keyframes ldLine{to{width:96px}}
@keyframes ldShine{0%{left:-60%}35%,100%{left:130%}}
@keyframes ldMarq{to{transform:translateX(-50%)}}
@keyframes ldBob{0%,100%{transform:translateY(0)}50%{transform:translateY(8px)}}
@media (prefers-reduced-motion:reduce){*,*::after{animation:none!important;transition:none!important}.ld-up{opacity:1}}
.ld-nav{display:flex}.ld-burger{display:none}
.g4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.g3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.g2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:56px;align-items:center}
.g6{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.ld-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
@media (max-width:1000px){.ld-nav{display:none}.ld-burger{display:flex}.g4{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(1,minmax(0,1fr))}.g2{grid-template-columns:repeat(1,minmax(0,1fr));gap:36px}.g6{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:620px){.ld-logo{height:34px!important}.ld-call-txt{display:none}.g4{grid-template-columns:repeat(1,minmax(0,1fr))}.ld-form{grid-template-columns:repeat(1,minmax(0,1fr))}.ld-hide-sm{display:none}.g6{grid-template-columns:repeat(2,minmax(0,1fr))}}


body{margin:0;background:#0B0B0C}
a{color:#F5CE3E}a:hover{color:#FFE27A}
.ld-hero{position:relative;overflow:hidden}

.ld-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,11,12,.95) 0%,rgba(11,11,12,.82) 48%,rgba(11,11,12,.3) 100%)}
.ld-up{opacity:0;animation:ldUp .9s cubic-bezier(.2,.7,.2,1) forwards}
.ld-d1{animation-delay:.15s}.ld-d2{animation-delay:.3s}.ld-d3{animation-delay:.45s}
.ld-line{display:block;height:2px;width:0;background:#F5CE3E;animation:ldLine 1.2s .5s cubic-bezier(.2,.7,.2,1) forwards}
.ld-reveal{animation:ldUp linear both;animation-timeline:view();animation-range:entry 0% cover 28%}
.ld-card{transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .35s,box-shadow .35s}
.ld-card:hover{transform:translateY(-6px);border-color:#F5CE3E;box-shadow:0 18px 40px rgba(0,0,0,.45)}
.ld-btn{position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s}
.ld-btn:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(245,206,62,.28)}
.ld-btn::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);animation:ldShine 3.6s 1.4s ease-in-out infinite}
.ld-step{position:relative}
.ld-step::before{content:"";position:absolute;left:19px;top:44px;bottom:-28px;width:2px;background:linear-gradient(#F5CE3E,transparent);transform-origin:top;animation:ldGrow linear both;animation-timeline:view();animation-range:entry 10% cover 45%}
.ld-step:last-child::before{display:none}
details summary{list-style:none;cursor:pointer}
details summary::-webkit-details-marker{display:none}
details[open] .ld-plus{transform:rotate(45deg)}
.ld-plus{transition:transform .3s}
@keyframes ldKen{from{transform:scale(1.02)}to{transform:scale(1.12) translateX(-1.5%)}}
@keyframes ldUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
@keyframes ldLine{to{width:96px}}
@keyframes ldShine{0%{left:-60%}35%,100%{left:130%}}
@keyframes ldGrow{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.ld-up{opacity:1}}
.ld-nav{display:flex}.ld-burger{display:none}
.g4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.g2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:56px;align-items:start}
.g2c{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
@media (max-width:1000px){.ld-nav{display:none}.ld-burger{display:flex}.g4{grid-template-columns:repeat(2,minmax(0,1fr))}.g2{grid-template-columns:repeat(1,minmax(0,1fr));gap:36px}}
@media (max-width:620px){.ld-logo{height:34px!important}.ld-call-txt{display:none}.g4{grid-template-columns:repeat(1,minmax(0,1fr))}.g2c{grid-template-columns:repeat(1,minmax(0,1fr))}}
</style>
<style>.g3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.g6{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.ld-zoom{overflow:hidden;border-radius:10px}.ld-zoom img{transition:transform .8s cubic-bezier(.2,.7,.2,1)}.ld-zoom:hover img{transform:scale(1.06)}@media (max-width:1000px){.g3{grid-template-columns:repeat(1,minmax(0,1fr))}.g6{grid-template-columns:repeat(2,minmax(0,1fr))}}html{scroll-behavior:smooth}body{overflow-x:hidden}@media (max-width:620px){.ld-hide-sm{display:none}}.ld-scrub-bg{transition:opacity .3s}.ld-scrub-shade{transition:opacity .6s ease}.ld-scrub.lite .ld-scrub-shade{opacity:.5}
.ld-nav a{white-space:nowrap}
@media (max-width:1240px){.ld-nav{display:none}.ld-burger{display:flex}.ld-nav.open{display:flex!important;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch!important;gap:0!important;background:#0B0B0C;border-bottom:1px solid #222226;padding:8px 20px 16px}.ld-nav.open a{padding:14px 0;border-bottom:1px solid #1E1E22;font-size:17px}}

.ld-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center 50%;animation:ldKen 22s ease-in-out infinite alternate}
.ld-scrub-bg{animation:none!important;background-image:url(/wp-content/themes/labo-detailing/assets/hero/d/000.webp);background-position:center}
@media (max-width:759px){.ld-scrub-bg{background-image:none}}
.ld-cta{background:linear-gradient(0deg,rgba(11,11,12,.88),rgba(11,11,12,.88)),url(/wp-content/themes/labo-detailing/assets/img/opt/porsche-911-996-cabriolet-960.webp) center/cover}
.g4g{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
@media (max-width:1000px){.g4g{grid-template-columns:repeat(2,minmax(0,1fr))}}
body{margin:0;background:#0B0B0C;color:#F4F3EF;font-family:'Manrope',system-ui,sans-serif;font-size:16px;line-height:1.65}
img{max-width:100%;height:auto}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid #F5CE3E;outline-offset:3px}
.ld-skip{position:absolute;left:-9999px;top:0;background:#F5CE3E;color:#0B0B0C;padding:10px 16px;z-index:100;font-weight:700}
.ld-skip:focus{left:12px;top:12px}
header.ld-header{position:sticky;top:0;z-index:50}
@media (max-width:1000px){.ld-nav.open{display:flex!important;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch!important;gap:0!important;background:#0B0B0C;border-bottom:1px solid #222226;padding:8px 20px 16px}.ld-nav.open a{padding:14px 0;border-bottom:1px solid #1E1E22;font-size:17px}}
.ld-form-wrap{padding:96px 20px;background:#111113;border-top:1px solid #1E1E22}
.ld-form-in{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:56px;align-items:start}
@media (max-width:1000px){.ld-form-in{grid-template-columns:repeat(1,minmax(0,1fr));gap:32px}}
.ld-f{background:rgba(19,19,21,.92);border:1px solid #2A2A2E;border-radius:12px;padding:32px;display:flex;flex-direction:column;gap:16px}
.ld-f label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:#C9C8C3}
.ld-f input,.ld-f select,.ld-f textarea{background:#0B0B0C;border:1px solid #34343A;border-radius:6px;color:#F4F3EF;padding:13px 14px;font:inherit;font-size:15px}
.ld-f button{background:#F5CE3E;color:#0B0B0C;border:0;border-radius:6px;font:inherit;font-weight:800;font-size:16px;padding:16px;min-height:52px;cursor:pointer}
.ld-f .ld-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.ld-f small{color:#8E8D89;font-size:12px}
.ld-notice{border-radius:8px;padding:14px 16px;font-weight:600}
.ld-ok{background:#1d2a14;border:1px solid #4f7a2c;color:#d9f2c4}
.ld-err{background:#2a1414;border:1px solid #7a2c2c;color:#f2c4c4}
.ld-prose{max-width:820px;margin:0 auto;padding:72px 20px}
.ld-prose h1{font-family:'Archivo',sans-serif;font-stretch:115%;font-weight:800;font-size:clamp(30px,4vw,48px);line-height:1.1;margin:0 0 24px}
.ld-prose h2{font-family:'Archivo',sans-serif;font-stretch:112%;font-weight:800;font-size:26px;margin:40px 0 12px}
.ld-prose p,.ld-prose li{color:#C9C8C3}
html{overflow-anchor:none}
/* ===== Titres : plus fins, moins larges ===== */
h1{font-stretch:100%!important;font-weight:700!important;letter-spacing:-.02em!important}
h2{font-stretch:100%!important;font-weight:700!important;letter-spacing:-.015em!important}
.ld-hero h1{font-size:clamp(30px,3.6vw,50px)!important;line-height:1.1!important;max-width:720px!important}
.ld-acc{color:#F5CE3E}

/* ===== Texte qui monte mot par mot (titres) ===== */
.ld-split .w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.08em;margin-bottom:-.08em}
.ld-split .w>span{display:inline-block;transform:translateY(105%);transition:transform .9s cubic-bezier(.2,.75,.15,1);transition-delay:calc(var(--i)*55ms)}
.ld-split.in .w>span{transform:none}
h1.ld-split,h2.ld-split{opacity:1!important;animation:none!important}

/* ===== Photos qui se devoilent ===== */
.ld-wipe{clip-path:inset(0 0 100% 0);transition:clip-path 1.2s cubic-bezier(.65,0,.15,1)}
.ld-wipe.in{clip-path:inset(0 0 0 0)}
.ld-wipe img{transform:scale(1.15);transition:transform 1.6s cubic-bezier(.2,.7,.2,1)}
.ld-wipe.in img{transform:scale(1)}
.ld-wipe.in:hover img{transform:scale(1.06);transition-duration:.8s}

/* ===== Cartes : halo qui suit la souris ===== */
.ld-card{--mx:50%;--my:50%;isolation:isolate}
.ld-card::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:-1;opacity:0;transition:opacity .4s;
  background:radial-gradient(420px circle at var(--mx) var(--my),rgba(245,206,62,.13),transparent 60%)}
.ld-card:hover::before{opacity:1}
article.ld-card,a.ld-card,figure.ld-card,div.ld-card{position:relative}

/* ===== Boutons magnetiques ===== */
.ld-mag{transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .25s}

/* ===== En-tete qui se resserre au scroll ===== */
header{transition:background-color .4s,box-shadow .4s}
header>div{transition:padding .4s}
.ld-scrolled header{background:rgba(8,8,9,.94)!important;box-shadow:0 10px 30px rgba(0,0,0,.35)}
.ld-scrolled header>div{padding-top:9px!important;padding-bottom:9px!important}
.ld-scrolled .ld-logo{height:38px!important;transition:height .4s}

/* ===== Barre de progression de lecture ===== */
.ld-readbar{position:fixed;top:0;left:0;right:0;height:2px;background:#F5CE3E;transform-origin:0 50%;transform:scaleX(0);z-index:60;pointer-events:none}

/* ===== Grain photo tres leger (rendu cinema) ===== */
.ld-grain{position:fixed;inset:-50%;z-index:70;pointer-events:none;opacity:.045;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  animation:ldGrain 1s steps(4) infinite}
@keyframes ldGrain{0%{transform:translate(0,0)}25%{transform:translate(-4%,3%)}50%{transform:translate(3%,-4%)}75%{transform:translate(-3%,-2%)}100%{transform:translate(0,0)}}

/* ===== Chiffres ===== */
.ld-num{font-variant-numeric:tabular-nums}

@media (hover:none){.ld-card::before{display:none}}
@media (prefers-reduced-motion:reduce){
  .ld-split .w>span{transform:none!important;transition:none!important}
  .ld-wipe,.ld-wipe img{clip-path:none!important;transform:none!important;transition:none!important}
  .ld-grain,.ld-readbar{display:none}
}

/* ===== Encart PPF sur la video ===== */
.ld-glass{background:rgba(11,11,12,.5);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.09);border-radius:14px;padding:24px 28px;box-sizing:border-box;text-align:left!important}
.ld-feat li{display:flex;align-items:center;gap:16px;padding:13px 0;border-top:1px solid rgba(255,255,255,.1);font-family:'Archivo',sans-serif;font-weight:600;font-size:clamp(18px,1.6vw,22px);line-height:1.25;color:#F4F3EF;
  opacity:0;transform:translateX(18px);transition:opacity .6s ease,transform .6s cubic-bezier(.2,.7,.2,1)}
.ld-feat li:first-child{border-top:0;padding-top:0}
.ld-feat li:last-child{padding-bottom:0}
.ld-fi{font-family:'Michroma',sans-serif;font-size:11px;color:#F5CE3E;letter-spacing:1px;min-width:22px}
.ld-phase-2.on .ld-feat li{opacity:1;transform:none}
.ld-phase-2.on .ld-feat li:nth-child(2){transition-delay:.12s}
.ld-phase-2.on .ld-feat li:nth-child(3){transition-delay:.24s}
@media (max-width:620px){.ld-glass{padding:18px 20px}}
@media (prefers-reduced-motion:reduce){.ld-feat li{opacity:1;transform:none}}

/* ===== Menu mobile ouvert ===== */
.ld-nav.open{display:flex!important;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch!important;gap:0!important;background:#0B0B0C;border-bottom:1px solid #222226;padding:8px 20px 16px;box-shadow:0 20px 40px rgba(0,0,0,.5)}
.ld-nav.open a{padding:14px 0;border-bottom:1px solid #1E1E22;font-size:17px}
.ld-nav.open a:last-child{border-bottom:0}

/* ===== Avant / apres a glisser ===== */
.ld-ba{--p:50%;position:relative;aspect-ratio:3/4;width:100%;max-width:560px;margin:0 auto;overflow:hidden;border-radius:12px;background:#111;border:1px solid #26262A;touch-action:pan-y;user-select:none}
.ld-ba img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}
.ld-ba-before{position:absolute;inset:0;overflow:hidden;clip-path:inset(0 calc(100% - var(--p)) 0 0)}
.ld-ba-line{position:absolute;top:0;bottom:0;left:var(--p);width:2px;margin-left:-1px;background:#F5CE3E;box-shadow:0 0 18px rgba(245,206,62,.6);pointer-events:none}
.ld-ba-knob{position:absolute;top:50%;left:50%;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;background:#F5CE3E;color:#0B0B0C;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 20px rgba(0,0,0,.45)}
.ld-ba-tag{position:absolute;top:14px;font-family:'Michroma',sans-serif;font-size:11px;letter-spacing:2px;padding:7px 11px;border-radius:4px;pointer-events:none}
.ld-ba-tag.l{left:14px;background:rgba(11,11,12,.85);color:#F4F3EF}.ld-ba-tag.r{right:14px;background:#F5CE3E;color:#0B0B0C}
.ld-ba input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;-webkit-appearance:none;appearance:none}
.ld-ba input:focus-visible+.ld-ba-line .ld-ba-knob{outline:2px solid #fff;outline-offset:3px}
.ld-ba-hint{margin:14px 0 0;text-align:center;font-size:14px;color:#A9A9A6}

/* ===== Photos harmonisees (meme etalonnage, vignette) ===== */
.ld-zoom,.ld-card{position:relative}
.ld-zoom img,.ld-card img,.ld-ba img{filter:brightness(.93) contrast(1.08) saturate(.9) sepia(.06)}
.ld-zoom::after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:radial-gradient(ellipse at 50% 45%,transparent 55%,rgba(0,0,0,.38) 100%)}

/* ===== Barre d'appel fixe (mobile) ===== */
.ld-callbar{display:none}
@media (max-width:760px){
  .ld-callbar{display:grid;grid-template-columns:1fr 1fr;gap:8px;position:fixed;left:0;right:0;bottom:0;z-index:65;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(8,8,9,.94);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid #222226;transform:translateY(110%);transition:transform .45s cubic-bezier(.2,.7,.2,1)}
  .ld-callbar.show{transform:none}
  .ld-callbar a{font-family:'Manrope',system-ui,sans-serif;display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;border-radius:8px;font-weight:700;font-size:16px;text-decoration:none}
  .ld-callbar .c1{background:#F5CE3E;color:#0B0B0C}.ld-callbar .c2{border:1px solid #3A3A40;color:#F4F3EF}
  body{padding-bottom:76px}
}

/* ===== Lignes LED entre les sections ===== */
.ld-led-wrap{height:1px;position:relative;z-index:1;pointer-events:none}
.ld-led{height:1px;width:min(1240px,calc(100% - 48px));margin:0 auto;background:linear-gradient(90deg,transparent,rgba(245,206,62,.9),transparent);box-shadow:0 0 14px rgba(245,206,62,.55);transform:scaleX(0);opacity:0;transition:transform 1.4s cubic-bezier(.2,.7,.2,1),opacity 1.4s}
.ld-led.in{transform:scaleX(1);opacity:.6}

/* ===== Parallaxe des en-tetes ===== */
.ld-para{animation:none!important;will-change:transform}

/* ===== Pied de page ===== */
.ld-foot{background:#080809;border-top:1px solid #1E1E22;padding:64px 24px 28px;color:#A9A9A6;font-size:15px}
.ld-foot-in{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:1.3fr 1fr 1fr 1.2fr;gap:40px}
.ld-foot h3{margin:0 0 16px;font-family:'Michroma',sans-serif;font-size:11px;letter-spacing:2.5px;text-transform:uppercase;color:#F5CE3E;font-weight:400}
.ld-foot ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}
.ld-foot a{color:#C9C8C3;text-decoration:none;transition:color .2s}.ld-foot a:hover{color:#F5CE3E}
.ld-foot-soc{display:flex;gap:10px;margin-top:18px}
.ld-foot-soc a{width:42px;height:42px;border:1px solid #2A2A2E;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#E4E3DE}
.ld-foot-soc a:hover{border-color:#F5CE3E}
.ld-foot-bot{max-width:1240px;margin:44px auto 0;padding-top:22px;border-top:1px solid #1A1A1D;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:13px;color:#A3A3A6}
.ld-foot-bot a{color:#9a9a97}
@media (max-width:1000px){.ld-foot-in{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.ld-foot-in{grid-template-columns:1fr;gap:32px}}

/* ===== Nom des voitures sur les photos ===== */
.ld-cap{position:absolute;left:0;right:0;bottom:0;z-index:2;margin:0;padding:34px 14px 12px;background:linear-gradient(180deg,transparent,rgba(5,5,6,.88));color:#F4F3EF;font-family:'Archivo',sans-serif;font-weight:700;font-size:14px;line-height:1.25;letter-spacing:.01em;pointer-events:none;transition:transform .4s cubic-bezier(.2,.7,.2,1)}
.ld-cap::before{content:"";display:block;width:22px;height:2px;background:#F5CE3E;margin-bottom:7px;transition:width .4s cubic-bezier(.2,.7,.2,1)}
.ld-zoom:hover .ld-cap::before{width:44px}

/* ===== Halo jaune au survol (photos + cartes) ===== */
.ld-zoom{transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s ease;overflow:hidden}
@media (hover:hover){
  .ld-zoom:hover{transform:translateY(-5px);box-shadow:0 0 0 1px rgba(245,206,62,.75),0 18px 56px rgba(245,206,62,.36),0 0 90px rgba(245,206,62,.22)}
  .ld-card:hover{border-color:#F5CE3E!important;box-shadow:0 0 0 1px rgba(245,206,62,.55),0 22px 64px rgba(245,206,62,.32),0 0 110px rgba(245,206,62,.18)!important}
}
.ld-ba:hover{transform:none;box-shadow:none}

/* ===== Grille realisations (accueil) : grandes vignettes portrait ===== */
.ld-gal3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.ld-gal3 .ld-zoom{border-radius:12px}
.ld-gal3 img{height:auto!important;aspect-ratio:4/5;width:100%;object-fit:cover}
.ld-gal3 .ld-cap{font-size:16px;padding:44px 18px 16px}
@media (max-width:760px){.ld-gal3{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ld-gal3 .ld-cap{font-size:13px;padding:30px 12px 12px}}

/* ===== Visionneuse plein ecran ===== */
.ld-zoom img.ld-lbx{cursor:zoom-in}
.ld-zoom .ld-eye{position:absolute;top:12px;right:12px;z-index:3;width:38px;height:38px;border-radius:50%;background:rgba(11,11,12,.7);color:#F5CE3E;display:flex;align-items:center;justify-content:center;opacity:0;transform:scale(.8);transition:opacity .3s,transform .3s;pointer-events:none}
.ld-zoom:hover .ld-eye{opacity:1;transform:none}
.ld-lb{position:fixed;inset:0;z-index:100;background:rgba(5,5,6,.94);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .35s ease}
.ld-lb.open{opacity:1;pointer-events:auto}
.ld-lb figure{margin:0;display:flex;flex-direction:column;align-items:center;gap:14px;max-width:92vw}
.ld-lb img{max-width:92vw;max-height:82vh;width:auto;height:auto;border-radius:10px;box-shadow:0 30px 80px rgba(0,0,0,.6),0 0 0 1px rgba(245,206,62,.25);transform:scale(.96);transition:transform .35s cubic-bezier(.2,.7,.2,1),opacity .25s}
.ld-lb.open img{transform:none}
.ld-lb figcaption{color:#E4E3DE;font-family:'Archivo',sans-serif;font-weight:600;font-size:16px;text-align:center}
.ld-lb figcaption span{color:#77777a;font-weight:400;margin-left:10px;font-size:14px}
.ld-lb button{position:absolute;border:1px solid rgba(255,255,255,.14);background:rgba(17,17,19,.8);color:#F4F3EF;width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .2s,color .2s}
.ld-lb button:hover{border-color:#F5CE3E;color:#F5CE3E}
.ld-lb .x{top:18px;right:18px}.ld-lb .pv{left:18px;top:50%;margin-top:-26px}.ld-lb .nx{right:18px;top:50%;margin-top:-26px}
@media (max-width:760px){.ld-lb .pv,.ld-lb .nx{top:auto;bottom:22px;margin-top:0}.ld-lb .pv{left:calc(50% - 66px)}.ld-lb .nx{right:calc(50% - 66px)}.ld-lb img{max-height:72vh}}

/* ===== Formulaire de devis ===== */
.ld-form-wrap{padding:96px 20px;background:#111113;border-top:1px solid #1E1E22}
.ld-form-in{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:56px;align-items:start}
@media (max-width:1000px){.ld-form-in{grid-template-columns:repeat(1,minmax(0,1fr));gap:32px}}
.ld-f{background:rgba(19,19,21,.92);border:1px solid #2A2A2E;border-radius:12px;padding:32px;display:flex;flex-direction:column;gap:16px}
.ld-f label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:#C9C8C3}
.ld-f input,.ld-f select,.ld-f textarea{background:#0B0B0C;border:1px solid #34343A;border-radius:6px;color:#F4F3EF;padding:13px 14px;font:inherit;font-size:15px}
.ld-f button{background:#F5CE3E;color:#0B0B0C;border:0;border-radius:6px;font:inherit;font-weight:800;font-size:16px;padding:16px;min-height:52px;cursor:pointer}
.ld-f .ld-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.ld-f small{color:#8E8D89;font-size:12px}
.ld-notice{border-radius:8px;padding:14px 16px;font-weight:600}
.ld-ok{background:#1d2a14;border:1px solid #4f7a2c;color:#d9f2c4}
.ld-err{background:#2a1414;border:1px solid #7a2c2c;color:#f2c4c4}
.ld-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
@media (max-width:620px){.ld-form{grid-template-columns:1fr}}
.ld-f input:focus,.ld-f select:focus,.ld-f textarea:focus{outline:none;border-color:#F5CE3E;box-shadow:0 0 0 3px rgba(245,206,62,.18)}

/* ===== Cartes prestations avec photo (pages villes) ===== */
.ld-lead{max-width:760px;margin:-18px 0 34px;font-size:17px;color:#C9C8C3}
.ld-svc-g{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.ld-svc{display:flex;flex-direction:column;background:#17171A;border:1px solid #26262A;border-radius:14px;overflow:hidden;color:#F4F3EF!important;text-decoration:none}
.ld-svc-img{height:190px;overflow:hidden;background:radial-gradient(circle at 50% 40%,#2a2410,#111113 70%)}
.ld-svc-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.ld-svc:hover .ld-svc-img img{transform:scale(1.06)}
.ld-svc-ico{display:flex;align-items:center;justify-content:center}
.ld-svc-b{padding:22px 24px 24px;display:flex;flex-direction:column;gap:8px;flex-grow:1}
.ld-svc-b h3{margin:0;font-family:'Archivo',sans-serif;font-weight:700;font-size:20px}
.ld-svc-b p{margin:0;color:#A9A9A6;font-size:15px;flex-grow:1}
.ld-svc-f{display:flex;justify-content:space-between;align-items:center;margin-top:10px;padding-top:14px;border-top:1px solid #26262A}
.ld-svc-p{color:#F5CE3E;font-weight:800;font-size:17px;white-space:nowrap}
.ld-svc-go{width:34px;height:34px;border-radius:50%;border:1px solid #3A3A40;display:flex;align-items:center;justify-content:center;transition:all .3s}
.ld-svc:hover .ld-svc-go{background:#F5CE3E;border-color:#F5CE3E;color:#0B0B0C;transform:translateX(3px)}
@media (max-width:1000px){.ld-svc-g{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.ld-svc-g{grid-template-columns:1fr}.ld-svc-img{height:170px}}

/* ===== Galerie nettoyage ===== */
.ld-gal4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.ld-gal4 .ld-zoom{border-radius:12px}
.ld-gal4 img{aspect-ratio:4/5;object-fit:cover;height:auto!important}
@media (max-width:900px){.ld-gal4{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}
