/* Atelier mobile : photographie animée commandée par le défilement natif. */
#atelier-mobile{position:relative;padding:0;background:var(--bg);isolation:isolate;scroll-margin-top:var(--nav-h,80px)}
#atelier-mobile::before{content:'';position:absolute;inset:0 0 auto;height:160px;background:linear-gradient(var(--bg-2),transparent);pointer-events:none}
.vehicle-stage{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:650px;padding:72px 24px 56px;overflow:clip}
.vehicle-heading{position:relative;z-index:1;text-align:center;max-width:760px}
.vehicle-heading h2{margin:0 0 12px;font-size:clamp(30px,3.6vw,50px);line-height:1.15;letter-spacing:-.025em;text-wrap:balance}
.vehicle-heading p{margin:0;color:#cbc6bd;font-size:16px;line-height:1.7}
.vehicle-media{position:relative;width:min(1120px,100%);aspect-ratio:7/4;margin:12px auto 0;background:var(--bg);isolation:isolate;mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent),linear-gradient(to bottom,transparent,#000 8%,#000 84%,transparent);mask-composite:intersect}
.vehicle-media img,.vehicle-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;mix-blend-mode:lighten;filter:brightness(.95) contrast(1.16)}
.vehicle-media video{visibility:hidden}
.vehicle-has-frame .vehicle-media video{visibility:visible}
.vehicle-has-frame .vehicle-media img{visibility:hidden}
.vehicle-caption{position:relative;text-align:center;max-width:680px;margin:8px 0 0;color:#cbc6bd;font-size:14px;line-height:1.7}
.vehicle-caption strong{display:block;font-size:18px;font-weight:500;color:#f2ede4;margin-bottom:4px}
.vehicle-cue{display:none;margin:16px 0 0;font-size:12px;color:#d4b778}
.vehicle-in-view .sticky-cta{opacity:0;visibility:hidden;pointer-events:none}
@media(prefers-reduced-motion:no-preference) and (min-height:600px){
 #atelier-mobile.vehicle-animated{height:calc(100svh + 165svh)}
 .vehicle-animated .vehicle-stage{position:sticky;top:0;min-height:0;height:100svh;padding-top:calc(var(--nav-h,80px) + 18px);padding-bottom:24px}
 .vehicle-animated .vehicle-media{flex:none;width:min(1120px,100%,calc((100svh - 320px)*1.75));margin-top:0}
 .vehicle-animated .vehicle-cue{display:block}
}
@media(max-width:680px){
 .vehicle-stage{padding:52px 12px 42px;min-height:0}
 .vehicle-heading{padding-inline:16px}
 .vehicle-heading h2{font-size:32px;max-width:330px;margin-inline:auto}
 .vehicle-heading p{font-size:14px;max-width:290px}
 .vehicle-media{width:calc(100% + 16px);margin-inline:-8px}
 .vehicle-caption{padding-inline:18px;font-size:13px;max-width:350px}
 .vehicle-caption strong{font-size:17px}
 .vehicle-animated .vehicle-stage{padding-bottom:38px}
 .vehicle-animated .vehicle-media{width:calc(100% + 16px);margin-block:22px 16px}
 .vehicle-animated .vehicle-cue{font-size:11px;margin-top:18px}
}
