/* ALBASSAMI_CAR_VIEWER_V2 */
.cv{--cv-red:#d0191f;--cv-ink:#141b26;--cv-muted:#5c6575;--cv-line:#e3e6eb;padding:6px 0 34px}
.cv-stage{position:relative;aspect-ratio:16/8.4;min-height:320px;border-radius:28px;overflow:hidden;background:radial-gradient(120% 95% at 50% 18%,#ffffff 0%,#f1f3f6 42%,#dde2e8 100%);box-shadow:inset 0 0 0 1px rgba(20,27,38,.06),0 26px 60px rgba(15,26,43,.10);cursor:grab;touch-action:pan-y;user-select:none;-webkit-user-select:none;outline:none}
.cv-stage:focus-visible{box-shadow:0 0 0 3px rgba(208,25,31,.45)}
.cv-stage.is-drag{cursor:grabbing}
.cv-stage.is-zoomed{cursor:move;touch-action:none}
.cv-floor{position:absolute;left:12%;right:12%;bottom:6%;height:13%;background:radial-gradient(ellipse at center,rgba(15,26,43,.30) 0%,rgba(15,26,43,.12) 45%,transparent 72%);pointer-events:none}
.cv-zoom{position:absolute;inset:0;transform-origin:50% 55%;transition:transform .25s ease}
.cv-stage.is-drag .cv-zoom{transition:none}
.cv-angle{position:absolute;inset:7% 6% 9%;margin:0;container-type:size;display:flex;align-items:flex-end;justify-content:center;opacity:0;transform:translateX(var(--cv-dx,0)) scale(.985);transition:opacity .45s ease,transform .45s ease;pointer-events:none}
.cv-angle.is-on{opacity:1;transform:none;pointer-events:auto}
.cv-pic{position:relative;width:100%;width:min(100cqw,calc(100cqh * var(--arn)));aspect-ratio:var(--arn)}
.cv-pic img{display:block;width:100%;height:100%;object-fit:contain;-webkit-user-drag:none}
.cv-pic .cv-car{filter:drop-shadow(0 10px 12px rgba(15,26,43,.18))}
.cv-dot{position:absolute;transform:translate(-50%,-50%);width:34px;height:34px;border-radius:50%;border:0;padding:0;background:var(--cv-red);color:#fff;font:700 22px/34px system-ui,Arial,sans-serif;cursor:pointer;box-shadow:0 6px 16px rgba(208,25,31,.45);transition:transform .15s ease,background .15s ease}
.cv-dot span{display:block;line-height:32px}
.cv-dot::after{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid rgba(208,25,31,.55);animation:cvPulse 2.2s ease-out infinite}
.cv-dot:hover,.cv-dot.is-on{transform:translate(-50%,-50%) scale(1.15);background:var(--cv-ink)}
.cv-dot:focus-visible{outline:3px solid #fff;outline-offset:2px}
@keyframes cvPulse{0%{transform:scale(.8);opacity:.9}100%{transform:scale(1.7);opacity:0}}
.cv-stage.no-points .cv-dot{display:none}
.cv-card{position:absolute;z-index:5;bottom:18px;inset-inline-start:18px;width:min(330px,calc(100% - 36px));background:#fff;color:var(--cv-ink);border-radius:18px;padding:16px 18px 16px;box-shadow:0 18px 44px rgba(15,26,43,.22);border-top:4px solid var(--cv-red)}
.cv-card[hidden]{display:none}
.cv-card h3{margin:0 0 6px;font-size:17px;font-weight:900;padding-inline-end:26px}
.cv-card p{margin:0;font-size:14px;line-height:1.75;color:var(--cv-muted)}
.cv-card-x{position:absolute;top:8px;inset-inline-end:8px;width:30px;height:30px;border:0;border-radius:50%;background:#f1f3f6;color:var(--cv-ink);font-size:20px;line-height:30px;cursor:pointer}
.cv-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:4;width:48px;height:48px;border-radius:50%;border:0;background:rgba(255,255,255,.92);box-shadow:0 8px 20px rgba(15,26,43,.16);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .15s ease,background .15s ease}
.cv-arrow:hover{background:#fff;transform:translateY(-50%) scale(1.06)}
.cv-arrow svg{width:22px;height:22px;fill:none;stroke:var(--cv-ink);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.cv-prev{inset-inline-start:14px}
.cv-next{inset-inline-end:14px}
[dir="rtl"] .cv-arrow svg{transform:scaleX(-1)}
.cv-tools{position:absolute;z-index:4;top:14px;inset-inline-end:14px;display:flex;gap:6px;background:rgba(255,255,255,.75);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:5px;border-radius:14px;box-shadow:0 6px 16px rgba(15,26,43,.10)}
.cv-tools button{width:38px;height:38px;border:0;border-radius:10px;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center}
.cv-tools button:hover{background:#fff}
.cv-tools button[aria-pressed="true"]{background:var(--cv-ink)}
.cv-tools button[aria-pressed="true"] svg{stroke:#fff}
.cv-tools svg{width:20px;height:20px;fill:none;stroke:var(--cv-ink);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.cv-hint{position:absolute;z-index:3;bottom:12px;left:50%;transform:translateX(-50%);margin:0;font-size:13px;font-weight:700;color:var(--cv-ink);background:rgba(255,255,255,.85);border-radius:999px;padding:6px 14px;white-space:nowrap;transition:opacity .4s ease;pointer-events:none}
.cv-stage.is-used .cv-hint{opacity:0}
.cv-views{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:14px}
.cv-view{font:inherit;font-size:14px;font-weight:800;color:var(--cv-ink);background:#fff;border:1.5px solid var(--cv-line);border-radius:999px;padding:8px 18px;cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.cv-view:hover{border-color:var(--cv-red)}
.cv-view.is-on{background:var(--cv-ink);border-color:var(--cv-ink);color:#fff}
.cv-credit{margin:12px 0 0;text-align:center;font-size:12px;color:var(--cv-muted)}
.cv-credit a{color:inherit;text-decoration:underline}
.cv-stage:fullscreen{aspect-ratio:auto;width:100vw;height:100vh;border-radius:0}
.cv-stage.is-full{position:fixed;inset:0;z-index:9999;aspect-ratio:auto;border-radius:0}
html[data-theme="dark"] .cv-stage{background:radial-gradient(120% 95% at 50% 18%,#2b3443 0%,#1b222d 55%,#11161e 100%)}
html[data-theme="dark"] .cv-view{background:#1b2230;color:#eef1f5;border-color:#2b3443}
html[data-theme="dark"] .cv-credit{color:#a5aebc}
@media (max-width:760px){
  .cv-stage{aspect-ratio:4/3.3;min-height:260px;border-radius:20px}
  .cv-angle{inset:14% 3% 12%}
  .cv-arrow{width:40px;height:40px}
  .cv-tools button{width:34px;height:34px}
  .cv-dot{width:28px;height:28px;font-size:18px}
  .cv-dot span{line-height:26px}
  .cv-card{inset-inline-start:10px;bottom:10px;width:calc(100% - 20px)}
  .cv-hint{font-size:12px}
}
@media (prefers-reduced-motion:reduce){
  .cv-angle,.cv-zoom{transition:none}
  .cv-dot::after{animation:none}
}
.car-hero-grid.car-hero-solo{grid-template-columns:1fr}
.car-hero-grid.car-hero-solo .car-hero-text{max-width:820px}

/* background photo (viewer.json "background") - car stands centred on the floor */
.cv-stage.has-bg{background:#1b1f26 var(--cv-bg) center/cover no-repeat}
.cv-stage.has-bg .cv-angle{inset:var(--cv-top,14%) var(--cv-side,15%) var(--cv-bottom,8%)}
.cv-stage.has-bg .cv-floor{left:18%;right:18%;bottom:calc(var(--cv-bottom,8%) - 4%);height:14%;background:radial-gradient(ellipse at center,rgba(0,0,0,.55) 0%,rgba(0,0,0,.25) 42%,transparent 70%)}

.cv-stage.has-bg .cv-arrow{background:rgba(255,255,255,.88)}
@media (max-width:760px){
  .cv-stage.has-bg .cv-angle{inset:calc(var(--cv-top,14%) + 6%) 4% var(--cv-bottom,8%)}
  .cv-stage.has-bg .cv-floor{left:6%;right:6%}
}

/* wide showroom: the photo is shown in full, the car stands on the centre platform */
.cv.is-wide > .abv-container{max-width:1680px;width:100%;padding-left:16px;padding-right:16px;box-sizing:border-box}
.cv.is-wide .cv-stage.has-bg{aspect-ratio:16/9;max-height:calc(100vh - 110px);min-height:340px}
@media (max-width:760px){
  .cv.is-wide > .abv-container{padding-left:10px;padding-right:10px}
  .cv.is-wide .cv-stage.has-bg{aspect-ratio:4/3.4;max-height:none}
  .cv.is-wide .cv-stage.has-bg .cv-angle{inset:calc(var(--cv-top,14%) - 4%) 6% calc(var(--cv-bottom,8%) + 2%)}
}

/* CV_REAL_V1 - grounded car: contact shadow, floor reflection, turntable-style change of view */
.cv-pic .cv-car{position:relative;z-index:1}
.cv-dot{z-index:3}
.cv-shadow{position:absolute;z-index:0;left:6%;right:6%;bottom:-2.5%;height:9%;border-radius:50%;background:radial-gradient(ellipse at center,rgba(0,0,0,.55) 0%,rgba(0,0,0,.32) 38%,rgba(0,0,0,0) 72%);filter:blur(4px);pointer-events:none}
.cv-shadow::after{content:"";position:absolute;left:10%;right:10%;top:30%;height:40%;border-radius:50%;background:rgba(0,0,0,.45);filter:blur(5px)}
.cv-refl{position:absolute;z-index:0;left:0;top:100%;width:100%;height:100%;object-fit:contain;transform:scaleY(-1);transform-origin:top;opacity:.16;filter:blur(1.5px);pointer-events:none;-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.9) 0%,transparent 28%);mask-image:linear-gradient(to bottom,rgba(0,0,0,.9) 0%,transparent 28%)}
.cv-stage:not(.has-bg) .cv-refl{opacity:.08}
.cv-stage.has-bg .cv-pic .cv-car{filter:drop-shadow(0 3px 4px rgba(0,0,0,.35)) brightness(.98) contrast(1.03)}
.cv-stage.has-bg .cv-floor{opacity:.55}
.cv-angle{transition:opacity .55s ease,transform .6s cubic-bezier(.22,.7,.2,1),filter .55s ease}
.cv-angle:not(.is-on){transform:translateX(var(--cv-dx,0)) scale(.94);filter:blur(3px)}
.cv-angle.is-enter{transition:none;opacity:0;transform:translateX(var(--cv-dx,0)) scale(.94);filter:blur(3px)}
.cv-angle.is-on{filter:none}
.cv-stage.has-bg::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:radial-gradient(ellipse 75% 70% at 50% 55%,transparent 55%,rgba(0,0,0,.28) 100%),linear-gradient(to top,rgba(0,0,0,.35),transparent 22%)}
.cv-stage.has-bg .cv-tools,.cv-stage.has-bg .cv-card,.cv-stage.has-bg .cv-arrow,.cv-top,.cv-dial,.cv-title{z-index:5}
@media (prefers-reduced-motion:reduce){.cv-angle,.cv-angle:not(.is-on){transition:none;filter:none}}

/* CV_NATURAL_V1 - blend the studio cut-out into the showroom light */
.cv-stage.has-bg .cv-pic .cv-car{filter:brightness(.93) contrast(.95) saturate(.9) sepia(.06) drop-shadow(0 0 1px rgba(40,30,20,.35)) drop-shadow(0 4px 5px rgba(0,0,0,.3))}
.cv-stage.has-bg .cv-pic::before,.cv-stage.has-bg .cv-pic::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;-webkit-mask:var(--cv-src) center/contain no-repeat;mask:var(--cv-src) center/contain no-repeat}
.cv-stage.has-bg .cv-pic::after{background:linear-gradient(to bottom,rgba(255,230,200,.12) 0%,rgba(255,255,255,0) 30%,rgba(255,255,255,0) 52%,rgba(30,20,12,.42) 100%);mix-blend-mode:multiply}
.cv-stage.has-bg .cv-pic::before{background:linear-gradient(to top,rgba(255,176,96,.30) 0%,rgba(255,176,96,0) 26%),linear-gradient(to bottom,rgba(255,244,225,.18) 0%,rgba(255,244,225,0) 25%);mix-blend-mode:soft-light}
.cv-stage.has-bg .cv-refl{opacity:.24;filter:blur(2px) brightness(.85) sepia(.15)}
.cv-stage.has-bg .cv-shadow{left:3%;right:3%;height:11%;bottom:-3.5%;background:radial-gradient(ellipse at center,rgba(0,0,0,.6) 0%,rgba(0,0,0,.34) 40%,rgba(0,0,0,0) 74%)}

/* CV_GROUND_V1 */
.cv-ground{position:absolute;inset:0;width:100%;height:100%;overflow:visible;z-index:0;pointer-events:none}
.cv-g-body{fill:rgba(0,0,0,.42)}
.cv-g-tyre{fill:rgba(0,0,0,.78)}
.cv-stage:not(.has-bg) .cv-g-body{fill:rgba(15,26,43,.22)}
.cv-stage:not(.has-bg) .cv-g-tyre{fill:rgba(15,26,43,.45)}
.cv-pic:has(.cv-ground) .cv-shadow{opacity:.35}
.cv-angle.no-refl .cv-refl{display:none}
.cv-pic{transform:translateY(calc(-1 * var(--cv-lift,0%)))}
/* CV_EXPLODE_V1 - exploded view: leader lines + parts panel on the right */
.cv-xl{position:absolute;inset:0;width:100%;height:100%;z-index:5;pointer-events:none;overflow:visible}
.cv-xl-line{fill:none;stroke:#ff3b42;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;transition:stroke-dashoffset .4s ease-out;filter:drop-shadow(0 0 3px rgba(255,59,66,.55))}
.cv-xl-end{fill:#ff3b42;transform-box:fill-box;transform-origin:center;transform:scale(0);transition:transform .25s cubic-bezier(.3,1.6,.5,1)}
.cv-xl-end.is-on{transform:scale(1)}
.cv-xl-halo{fill:none;stroke:#ff3b42;stroke-width:1.5;transform-box:fill-box;transform-origin:center;animation:cvXHalo .8s ease-out forwards}
@keyframes cvXHalo{from{transform:scale(.6);opacity:.95}to{transform:scale(1.6);opacity:0}}
.cv-x{position:absolute;z-index:6;right:clamp(14px,2.2vw,36px);top:0;bottom:0;margin:auto 0;height:max-content;max-height:calc(100% - 150px);overflow-y:auto;scrollbar-width:none;width:clamp(290px,27vw,420px);box-sizing:border-box;padding:16px 16px 6px;border-radius:18px;background:rgba(10,12,16,.68);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.14);color:#fff;opacity:0;transform:translateX(30px);transition:opacity .35s ease,transform .45s cubic-bezier(.2,.8,.2,1);cursor:default}
.cv-x::-webkit-scrollbar{display:none}
.cv-x[hidden]{display:none}
.cv-x.is-open{opacity:1;transform:none}
.cv-x-close{position:absolute;top:8px;inset-inline-end:8px;width:28px;height:28px;border:0;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:18px;line-height:28px;cursor:pointer;padding:0}
.cv-x-close:hover{background:var(--cv-red)}
.cv-x-head{padding-inline-end:34px;margin-bottom:8px;opacity:0;transition:opacity .3s .15s}
.cv-x.is-open .cv-x-head{opacity:1}
.cv-x-head b{display:block;font-size:16px;font-weight:900;color:#fff}
.cv-x-head small{display:block;font-size:12.5px;line-height:1.6;color:#cfd4dc;margin-top:2px}
.cv-x-row{display:flex;direction:ltr;align-items:center;gap:12px;padding:9px 0;border-top:1px solid rgba(255,255,255,.08);opacity:0;transform:translateX(26px);transition:opacity .35s,transform .35s;transition-delay:calc(var(--k,0) * 130ms + 440ms)}
.cv-x.is-open .cv-x-row{opacity:1;transform:none}
.cv-x-ring{position:relative;flex:0 0 48px;width:48px;height:48px}
.cv-x-ring svg{width:48px;height:48px;display:block}
.cv-x-trk{fill:none;stroke:rgba(255,255,255,.14);stroke-width:3}
.cv-x-arc{fill:none;stroke:#ff3b42;stroke-width:3;stroke-linecap:round;stroke-dasharray:125.7;stroke-dashoffset:125.7;transition:stroke-dashoffset .8s ease-out;transition-delay:calc(var(--k,0) * 130ms + 520ms)}
.cv-x.is-open .cv-x-arc{stroke-dashoffset:0}
.cv-x-ring em{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-style:normal;font-size:10.5px;font-weight:900;color:#fff;direction:ltr}
.cv-x-txt{flex:1;min-width:0;text-align:left}
[dir="rtl"] .cv-x-txt{direction:rtl;text-align:right}
.cv-x-txt b{display:block;font-size:14px;font-weight:900;color:#ff6a70}
.cv-x-txt small{display:block;font-size:12px;line-height:1.55;color:#d6dae1}
.cv-x-ico{flex:0 0 44px;width:44px;height:44px;border-radius:12px;background:rgba(255,59,66,.14);border:1px solid rgba(255,59,66,.35);display:flex;align-items:center;justify-content:center;transform:scale(.4) rotate(-20deg);transition:transform .45s cubic-bezier(.3,1.6,.5,1);transition-delay:calc(var(--k,0) * 130ms + 560ms)}
.cv-x.is-open .cv-x-ico{transform:none}
.cv-x-ico svg{width:24px;height:24px;fill:none;stroke:#fff;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.cv-stage.is-x .cv-dot:not(.is-on){opacity:.4}
.cv-stage.is-x .cv-dot.is-on{background:var(--cv-red);transform:translate(-50%,-50%) rotate(45deg) scale(1.1)}
.cv-title{transition:opacity .3s}
.cv-stage.is-x .cv-title{opacity:0}
@media (max-width:760px){
  .cv-xl{display:none}
  .cv-x{left:10px;right:10px;top:auto;bottom:10px;margin:0;width:auto;max-height:62%;transform:translateY(30px)}
  .cv-x.is-open{transform:none}
}
@media (prefers-reduced-motion:reduce){.cv-x,.cv-x-row,.cv-x-arc,.cv-x-ico,.cv-xl-line,.cv-xl-end{transition:none}.cv-xl-halo{animation:none;opacity:0}}
/* CV_EXPLODE_IMG_V1 - image exploded view overlay */
.cv-xv{position:absolute;z-index:8;inset:clamp(10px,1.6vw,22px);display:flex;flex-direction:column;box-sizing:border-box;padding:16px clamp(14px,2vw,28px) 10px;border-radius:20px;background:rgba(10,12,16,.78);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.14);color:#fff;opacity:0;transition:opacity .35s ease;cursor:default;overflow:hidden}
.cv-xv[hidden]{display:none}
.cv-xv.is-open{opacity:1}
.cv-xv-head{padding-inline-end:40px;margin-bottom:8px}
.cv-xv-head b{display:block;font-size:clamp(16px,1.5vw,22px);font-weight:900}
.cv-xv-head small{display:block;font-size:13px;color:#cfd4dc;margin-top:2px}
.cv-xv-body{flex:1;min-height:0;display:flex;flex-direction:column;gap:6px}
.cv-xv-row{direction:ltr;display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr));gap:clamp(8px,1.4vw,22px)}
.cv-xv-lb{display:flex;align-items:flex-start;gap:8px;opacity:0;transform:translateY(8px);transition:opacity .35s,transform .35s;transition-delay:calc(var(--k,0) * 90ms + 760ms)}
.cv-xv.is-open .cv-xv-lb{opacity:1;transform:none}
.cv-xv-n,.cv-xv-m{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:7px;background:var(--cv-red);color:#fff;font-size:13px;font-weight:900;box-shadow:0 0 0 2px rgba(255,255,255,.85)}
.cv-xv-n{flex:0 0 24px}
.cv-xv-lt b{display:block;font-size:13.5px;font-weight:900;line-height:1.3}
.cv-xv-lt small{display:block;font-size:12px;line-height:1.5;color:#c9ced6}
.cv-xv-fig{flex:1;min-height:0;display:flex;align-items:center;justify-content:center}
.cv-xv-pic{position:relative;height:100%;max-width:100%;aspect-ratio:var(--ar);transform:scale(.15);opacity:0;transition:transform .7s cubic-bezier(.2,.8,.2,1),opacity .4s ease}
.cv-xv.is-open .cv-xv-pic{transform:none;opacity:1}
.cv-xv-pic img{display:block;width:100%;height:100%;border-radius:14px;-webkit-mask-image:radial-gradient(ellipse 72% 70% at 50% 50%,#000 60%,transparent 100%);mask-image:radial-gradient(ellipse 72% 70% at 50% 50%,#000 60%,transparent 100%);-webkit-user-drag:none}
.cv-xv-m{position:absolute;transform:translate(-50%,-50%) scale(0);transition:transform .3s cubic-bezier(.3,1.6,.5,1);transition-delay:calc(var(--k,0) * 90ms + 560ms)}
.cv-xv.is-open .cv-xv-m{transform:translate(-50%,-50%) scale(1)}
.cv-xv-lines{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.cv-xv-note{margin:4px 0 0;font-size:11px;color:#9aa2ae;text-align:end}
.cv-stage.is-xv .cv-top,.cv-stage.is-xv .cv-dial,.cv-stage.is-xv .cv-title{opacity:0;pointer-events:none}
[dir="rtl"] .cv-xv-lt{direction:rtl;text-align:right}
@media (max-width:760px){
  .cv-xv{inset:8px;overflow-y:auto;padding:14px 12px 8px}
  .cv-xv-body{flex:none;display:block}
  .cv-xv-row{grid-template-columns:1fr;gap:8px;margin:10px 0}
  .cv-xv-fig{display:block}
  .cv-xv-pic{height:auto;width:100%}
  .cv-xv-lines{display:none}
}
@media (prefers-reduced-motion:reduce){.cv-xv,.cv-xv-pic,.cv-xv-m,.cv-xv-lb{transition:none}}

/* CV_LINEUP_V1 - versions standing beside the platform; click to swap */
.cv-side{position:absolute;z-index:3;bottom:calc(var(--cv-bottom,8%) + 6%);width:clamp(150px,20%,360px);display:flex;flex-direction:column;align-items:center;text-decoration:none;cursor:pointer;filter:brightness(.86) saturate(.85);transition:transform .6s cubic-bezier(.2,.8,.2,1),opacity .5s ease,filter .3s ease}
.cv-side-left{left:2.5%}
.cv-side-right{right:2.5%}
.cv-side img{width:100%;height:auto;display:block;-webkit-user-drag:none;filter:drop-shadow(0 8px 6px rgba(0,0,0,.4))}
.cv-side::before{content:"";position:absolute;left:8%;right:8%;bottom:30px;height:16px;border-radius:50%;background:radial-gradient(ellipse at center,rgba(0,0,0,.5),rgba(0,0,0,0) 70%);filter:blur(3px);z-index:-1}
.cv-side span{margin-top:8px;font-size:13px;font-weight:800;color:#fff;background:rgba(10,12,16,.62);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:5px 14px;white-space:nowrap;transition:background .2s}
.cv-side:hover{filter:none;transform:translateY(-6px)}
.cv-side:hover span{background:var(--cv-red)}
.cv-side:focus-visible{outline:3px solid #fff;outline-offset:4px;border-radius:12px}
.cv-stage .cv-zoom{transition:transform .25s ease,opacity .45s ease}
.cv-stage.is-swapping .cv-zoom{transition:transform .6s cubic-bezier(.2,.8,.2,1),opacity .45s ease;opacity:0}
.cv-stage.swap-l .cv-zoom{transform:translateX(-38%) scale(.5)}
.cv-stage.swap-r .cv-zoom{transform:translateX(38%) scale(.5)}
.cv-stage.swap-l .cv-side-left.is-picked{transform:translateX(150%) translateY(-8%) scale(1.9);opacity:0}
.cv-stage.swap-r .cv-side-right.is-picked{transform:translateX(-150%) translateY(-8%) scale(1.9);opacity:0}
.cv-stage.is-swapping .cv-dot,.cv-stage.is-swapping .cv-title{opacity:0;transition:opacity .3s}
.cv-stage.is-entering .cv-zoom{transition:none;opacity:0;transform:scale(.6)}
.cv-stage.enter-l .cv-zoom{transform:translateX(-30%) scale(.6)}
.cv-stage.enter-r .cv-zoom{transform:translateX(30%) scale(.6)}
.cv-stage.is-entering .cv-side{transition:none;opacity:0}
@media (max-width:760px){.cv-side{width:23%;bottom:2%}.cv-side span{display:none}.cv-side::before{bottom:2px}}
@media (prefers-reduced-motion:reduce){.cv-side,.cv-stage.is-swapping .cv-zoom{transition:none}}

/* CV_LINEUP_V2 - faster swap (about 0.25 s) */
.cv-side{transition:transform .25s cubic-bezier(.2,.8,.2,1),opacity .2s ease,filter .2s ease}
.cv-stage .cv-zoom{transition:transform .25s cubic-bezier(.2,.8,.2,1),opacity .22s ease}
.cv-stage.is-swapping .cv-zoom{transition:transform .25s cubic-bezier(.2,.8,.2,1),opacity .2s ease}
.cv-stage.is-entering .cv-zoom{transition:none}
.cv-stage.is-swapping .cv-dot,.cv-stage.is-swapping .cv-title{transition:opacity .15s}

/* CV_SIDE_V3 - cars beside the platform: per-page size (stage.sidew / stage.sideb), showroom light, floor reflection, contact shadow */
.cv-side{width:clamp(150px,var(--cv-sidew,20%),460px);bottom:var(--cv-sideb,calc(var(--cv-bottom,8%) + 6%));filter:none}
.cv-side img{filter:brightness(.93) contrast(.96) saturate(.9) sepia(.06) drop-shadow(0 3px 3px rgba(0,0,0,.45));-webkit-box-reflect:below -2px linear-gradient(to bottom,transparent 72%,rgba(255,255,255,.22))}
.cv-side::before{left:4%;right:4%;bottom:34px;height:22px;background:radial-gradient(ellipse at center,rgba(0,0,0,.62) 0%,rgba(0,0,0,.3) 45%,rgba(0,0,0,0) 75%);filter:blur(4px)}
.cv-side:hover img{filter:brightness(1) contrast(1) saturate(1) drop-shadow(0 3px 3px rgba(0,0,0,.45))}
@media (max-width:760px){.cv-side{width:24%;bottom:2%}.cv-side img{-webkit-box-reflect:unset}}

/* CV_SIDE_NPR85H - NPR85H22L photo is taller: smaller width so its cab matches the truck on the right */
.cv-side[href*="model=npr85h22l"]{width:clamp(130px,21%,380px)}
@media (max-width:760px){.cv-side[href*="model=npr85h22l"]{width:20%}}
