/* ==========================================================
   CAR EXPRESS theme v2: black, red and silver, built for motion
   Loaded last on every page. Edit colours in :root only.
   ========================================================== */
:root{
  --cx-red:#e10600; --cx-red-hot:#ff2a1c; --cx-red-deep:#a80400;
  --cx-black:#000; --cx-ink:#0b0b0d; --cx-card:#121316; --cx-card-2:#1a1b1f; --cx-line:#2b2d31;
  --cx-silver:#c8ccd2; --cx-silver-light:#eceef1; --cx-silver-dark:#868c95;
  --cx-display:"Barlow Condensed","Arial Narrow",Impact,sans-serif;
  --cx-body:"Barlow",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  --cx-ease:cubic-bezier(.2,.7,.1,1);
  --ce-red:#e10600; --ce-navy:#1b1c20; --ce-navy-dark:#000;
}
.cx-wrap{ width:min(1240px,100% - 40px); margin-inline:auto; }
.cx-js [data-reveal]{ opacity:0; transform:translateY(34px); transition:opacity .8s var(--cx-ease),transform .9s var(--cx-ease); transition-delay:var(--d,0s); }
.cx-js [data-reveal].in{ opacity:1; transform:none; }

/* ---------- header (every page) ---------- */
.cx-header{ position:sticky; top:0; z-index:100; background:rgba(0,0,0,.92); backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid var(--cx-line); transition:background .3s,box-shadow .3s; }
.cx-header.scrolled{ background:rgba(0,0,0,.97); box-shadow:0 10px 30px rgba(0,0,0,.45); }
.cx-hbar{ display:flex; align-items:center; gap:34px; height:84px; transition:height .3s var(--cx-ease); }
.cx-header.scrolled .cx-hbar{ height:70px; }
.cx-logo{ display:block; line-height:0; flex:none; }
.cx-logo img{ height:60px; width:auto; transition:height .3s var(--cx-ease),transform .35s var(--cx-ease); }
.cx-header.scrolled .cx-logo img{ height:50px; }
.cx-logo:hover img{ transform:scale(1.04); }
.cx-nav{ margin-left:auto; }
.cx-nav .menu-links{ display:flex; gap:6px; list-style:none; margin:0; padding:0; }
.cx-nav .menu-links li{ display:block!important; margin:0!important; float:none!important; }
.cx-nav .menu-links a{ position:relative; display:block!important; padding:12px 14px!important; font-family:var(--cx-body); font-weight:600;
  font-size:16px; color:var(--cx-silver)!important; text-decoration:none; transition:color .2s; white-space:nowrap; }
.cx-nav .menu-links a:after{ content:""; position:absolute; left:14px; right:14px; bottom:6px; height:2px; background:var(--cx-red);
  transform:scaleX(0); transform-origin:left; transition:transform .3s var(--cx-ease); }
.cx-nav .menu-links a:hover{ color:#fff!important; } .cx-nav .menu-links a:hover:after{ transform:scaleX(1); }
.cx-nav .menu-links a.is-current{ color:#fff!important; } .cx-nav .menu-links a.is-current:after{ transform:scaleX(1); }
.cx-call{ display:inline-flex; align-items:center; gap:10px; padding:11px 20px; background:var(--cx-red); color:#fff!important; font-weight:700;
  text-decoration:none; clip-path:polygon(10px 0,100% 0,calc(100% - 10px) 100%,0 100%); transition:background .25s,transform .25s var(--cx-ease); flex:none; }
.cx-call:hover{ background:var(--cx-red-hot); transform:translateY(-2px); }
.cx-call svg{ width:18px; height:18px; fill:#fff; }
.cx-burger{ display:none; width:46px; height:46px; position:relative; background:none; border:0; cursor:pointer; margin-left:auto; }
.cx-burger i{ position:absolute; left:10px; right:10px; height:2px; background:#fff; transition:transform .3s var(--cx-ease),opacity .2s; }
.cx-burger i:nth-child(1){ top:16px; } .cx-burger i:nth-child(2){ top:22px; } .cx-burger i:nth-child(3){ top:28px; }
.menu-open .cx-burger i:nth-child(1){ transform:translateY(6px) rotate(45deg); }
.menu-open .cx-burger i:nth-child(2){ opacity:0; }
.menu-open .cx-burger i:nth-child(3){ transform:translateY(-6px) rotate(-45deg); }

/* ---------- buttons ---------- */
.button,.cx-btn,.btn-primary,input[type=submit],button.button{
  display:inline-block; background:var(--cx-red)!important; border:0!important; color:#fff!important; border-radius:0!important; cursor:pointer;
  padding:15px 32px; line-height:1.15; text-decoration:none!important;
  clip-path:polygon(12px 0,100% 0,calc(100% - 12px) 100%,0 100%);
  font-family:var(--cx-display); font-weight:700; font-size:20px; font-style:italic; letter-spacing:.05em;
  transition:background .25s,transform .25s var(--cx-ease); }
.button:hover,.cx-btn:hover,.btn-primary:hover{ background:var(--cx-red-hot)!important; transform:translateY(-3px); }
.cx-btn.ghost{ background:transparent!important; box-shadow:none; position:relative; }
.cx-btn.ghost:before{ content:""; position:absolute; inset:0; border:2px solid var(--cx-silver); clip-path:inherit; }
.cx-btn.ghost:hover{ background:var(--cx-silver-light)!important; color:#000!important; }
.cx-btn.sm{ padding:11px 22px; font-size:17px; }

/* ---------- floating WhatsApp ---------- */
.cx-wa{ position:fixed; right:22px; bottom:22px; z-index:90; width:60px; height:60px; border-radius:50%; background:var(--cx-red);
  display:grid; place-items:center; box-shadow:0 10px 30px rgba(225,6,0,.5); transition:transform .3s var(--cx-ease); }
.cx-wa:hover{ transform:scale(1.1) rotate(-6deg); }
.cx-wa svg{ width:30px; height:30px; fill:#fff; }
.cx-wa:before{ content:""; position:absolute; inset:0; border-radius:50%; border:2px solid var(--cx-red); animation:cxPulse 2.4s ease-out infinite; }
@keyframes cxPulse{ 0%{transform:scale(1);opacity:.9} 100%{transform:scale(1.7);opacity:0} }

/* ==========================================================
   HOMEPAGE
   ========================================================== */
body.cx-home{ margin:0; background:#000; color:var(--cx-silver); font-family:var(--cx-body); font-size:17px; line-height:1.55; overflow-x:hidden; }
.cx-home h1,.cx-home h2,.cx-home h3{ font-family:var(--cx-display); font-style:italic; font-weight:800; color:var(--cx-silver-light); line-height:.98; margin:0; }
.cx-home a{ color:inherit; }
.cx-home img,.cx-home svg{ max-width:100%; }

/* hero */
.hx{ position:relative; overflow:hidden; isolation:isolate; min-height:calc(100vh - 84px); display:flex; align-items:center; padding:48px 0 80px; }
.hx-bg{ position:absolute; inset:-30%; z-index:-3; background:
  conic-gradient(from 0deg at 70% 60%,rgba(225,6,0,.34),transparent 25%,rgba(200,204,210,.10) 45%,transparent 65%,rgba(225,6,0,.28));
  filter:blur(60px); animation:hxSpin 28s linear infinite; }
@keyframes hxSpin{ to{ transform:rotate(360deg); } }
.hx:before{ content:""; position:absolute; inset:0; z-index:-2; background:radial-gradient(80% 70% at 20% 30%,transparent,#000 85%); }
.hx-road{ position:absolute; left:0; right:0; bottom:0; height:22%; z-index:-1; overflow:hidden;
  background:linear-gradient(180deg,transparent,rgba(255,255,255,.035)); border-top:1px solid rgba(200,204,210,.14); }
.hx-road:before{ content:""; position:absolute; left:0; right:0; top:46%; height:3px;
  background:repeating-linear-gradient(90deg,var(--cx-silver) 0 60px,transparent 60px 150px); opacity:.5; animation:hxRoad 1.1s linear infinite; }
@keyframes hxRoad{ to{ transform:translateX(-150px); } }
.hx-grid{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.08fr); gap:clamp(24px,4vw,60px); align-items:center; }
.hx-copy h1{ font-size:clamp(44px,5.4vw,80px); margin-bottom:20px; }
.hx-copy h1 .w{ display:inline-block; opacity:0; transform:translateY(60%) rotate(4deg); animation:hxWord .9s var(--cx-ease) forwards; animation-delay:calc(.15s + var(--i)*.07s); }
@keyframes hxWord{ to{ opacity:1; transform:none; } }
.hx-sub{ max-width:30em; font:400 clamp(17px,1.4vw,20px)/1.55 var(--cx-body); color:var(--cx-silver); margin:0 0 28px; opacity:0; animation:hxFade .9s var(--cx-ease) .75s forwards; }
@keyframes hxFade{ from{ opacity:0; transform:translateY(20px);} to{ opacity:1; transform:none; } }
.hx-finder{ background:rgba(18,19,22,.78); border:1px solid var(--cx-line); border-top:3px solid var(--cx-red); padding:22px 22px 24px; max-width:520px;
  backdrop-filter:blur(10px); opacity:0; animation:hxFade .9s var(--cx-ease) .95s forwards; }
.hx-finder h3{ font-size:26px; margin-bottom:14px; }
.hx-chips{ display:flex; flex-wrap:wrap; gap:8px; margin-bottom:18px; }
.hx-chip{ background:transparent; border:1px solid var(--cx-line); color:var(--cx-silver); padding:9px 16px; font:600 15px var(--cx-body); cursor:pointer;
  transition:background .2s,color .2s,border-color .2s,transform .2s var(--cx-ease); }
.hx-chip:hover{ border-color:var(--cx-silver); transform:translateY(-2px); }
.hx-chip[aria-pressed="true"]{ background:var(--cx-silver-light); color:#000; border-color:var(--cx-silver-light); }
.hx-range{ display:flex; align-items:center; gap:14px; margin-bottom:20px; font-weight:600; }
.hx-range output{ min-width:92px; text-align:right; color:#fff; font-family:var(--cx-display); font-style:italic; font-size:24px; }
.hx-range input{ flex:1; accent-color:var(--cx-red); height:28px; }
.hx-finder .cx-btn b{ font-weight:800; }

/* hero visual */
.hx-visual{ position:relative; aspect-ratio:4/3; perspective:1200px; }
.hx-frame{ position:absolute; inset:0; transform-style:preserve-3d; transition:transform .25s ease-out; will-change:transform; }
.hx-fallback{ position:absolute; inset:0; display:flex; align-items:center; justify-content:center; }
.hx-logo{ width:96%; height:auto; filter:drop-shadow(0 24px 50px rgba(225,6,0,.5)); animation:hxDrive 1.4s var(--cx-ease) both, hxBob 3.4s ease-in-out 1.4s infinite; }
@keyframes hxDrive{ from{ transform:translateX(-22%); opacity:0; filter:blur(12px) drop-shadow(0 30px 40px rgba(0,0,0,.7)); } to{ transform:none; opacity:1; } }
@keyframes hxBob{ 0%,100%{ transform:translateY(0);} 50%{ transform:translateY(-6px);} }
.wheel{ transform-box:fill-box; transform-origin:center; animation:hxSpinW .9s linear infinite; }
@keyframes hxSpinW{ to{ transform:rotate(360deg); } }
.hx-streak{ position:absolute; height:2px; background:linear-gradient(90deg,transparent,var(--cx-silver)); transform-origin:right; animation:hxStreak 1.6s var(--cx-ease) infinite; }
.hx-streak:nth-child(1){ top:40%; left:-6%; width:46%; } .hx-streak:nth-child(2){ top:52%; left:0; width:36%; animation-delay:.4s; } .hx-streak:nth-child(3){ top:63%; left:-10%; width:52%; animation-delay:.8s; }
@keyframes hxStreak{ 0%{ transform:scaleX(0); opacity:0;} 30%{ opacity:.8;} 100%{ transform:scaleX(1); opacity:0;} }
.hx-slide{ position:absolute; inset:0; opacity:0; visibility:hidden; transition:opacity .8s ease,visibility 0s .8s; overflow:hidden; background:#000;
  clip-path:polygon(0 0,100% 0,calc(100% - 6%) 100%,0 100%); }
.hx-slide.is-active{ opacity:1; visibility:visible; transition:opacity .8s ease; }
.hx-img{ position:absolute; inset:0; background-size:cover; background-position:center; transform:scale(1.02); }
.hx-slide.is-active .hx-img{ animation:hxKen 9s ease-out forwards; }
@keyframes hxKen{ to{ transform:scale(1.14) translate(-1.5%,-1%); } }
.hx-slide:after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.88)); }
.hx-info{ position:absolute; left:6%; right:12%; bottom:7%; z-index:2; }
.hx-price{ display:inline-block; background:var(--cx-red); color:#fff; font-family:var(--cx-display); font-style:italic; font-weight:800; font-size:clamp(26px,3vw,38px);
  padding:4px 18px 4px 14px; clip-path:polygon(0 0,100% 0,calc(100% - 10px) 100%,0 100%); margin-bottom:10px; }
.hx-info h3{ font-size:clamp(28px,3.2vw,46px); margin-bottom:6px; }
.hx-spec{ color:var(--cx-silver); margin:0 0 14px; font-size:15.5px; }
.hx-slide .hx-info > *{ opacity:0; transform:translateY(18px); }
.hx-slide.is-active .hx-info > *{ opacity:1; transform:none; transition:opacity .7s var(--cx-ease),transform .8s var(--cx-ease); }
.hx-slide.is-active .hx-info > *:nth-child(1){ transition-delay:.3s; } .hx-slide.is-active .hx-info > *:nth-child(2){ transition-delay:.42s; }
.hx-slide.is-active .hx-info > *:nth-child(3){ transition-delay:.54s; } .hx-slide.is-active .hx-info > *:nth-child(4){ transition-delay:.66s; }
.hx-ctrl{ position:absolute; left:0; right:0; bottom:-30px; display:flex; align-items:center; gap:10px; z-index:5; }
.hx-bars{ display:flex; gap:8px; flex:1; }
.hx-bar{ flex:1; height:22px; background:none; border:0; cursor:pointer; position:relative; padding:0; }
.hx-bar:before,.hx-bar:after{ content:""; position:absolute; left:0; top:9px; height:3px; }
.hx-bar:before{ right:0; background:rgba(200,204,210,.25); } .hx-bar:after{ width:0; background:var(--cx-red); }
.hx-bar[aria-selected="true"]:after{ animation:hxFill 6500ms linear forwards; }
.hx-paused .hx-bar[aria-selected="true"]:after{ animation-play-state:paused; }
@keyframes hxFill{ to{ width:100%; } }
.hx-arrow{ width:44px; height:44px; background:transparent; border:1px solid var(--cx-line); cursor:pointer; display:grid; place-items:center; transition:background .2s,border-color .2s; padding:0; }
.hx-arrow:hover{ background:var(--cx-red); border-color:var(--cx-red); }
.hx-arrow svg{ width:18px; height:18px; stroke:#fff; fill:none; stroke-width:2.4; }
.hx-scroll{ position:absolute; left:50%; bottom:22px; width:26px; height:42px; border:2px solid var(--cx-silver-dark); border-radius:14px; transform:translateX(-50%); opacity:.7; }
.hx-scroll:after{ content:""; position:absolute; left:50%; top:8px; width:4px; height:8px; margin-left:-2px; background:var(--cx-red); border-radius:2px; animation:hxWheel 1.6s ease-in-out infinite; }
@keyframes hxWheel{ 0%{ transform:translateY(0); opacity:1;} 100%{ transform:translateY(14px); opacity:0;} }

/* marquee */
.mq{ background:var(--cx-red); color:#fff; overflow:hidden; white-space:nowrap; transform:skewY(-1.2deg); margin:-14px 0 0; position:relative; z-index:3; border-block:2px solid #000; }
.mq-track{ display:inline-flex; animation:mq 32s linear infinite; }
.mq:hover .mq-track{ animation-play-state:paused; }
.mq span{ font-family:var(--cx-display); font-style:italic; font-weight:800; font-size:clamp(22px,2.6vw,34px); padding:14px 34px; display:inline-flex; align-items:center; gap:34px; }
.mq span:after{ content:""; width:12px; height:12px; background:#000; transform:skewX(-24deg); }
@keyframes mq{ to{ transform:translateX(-50%); } }

/* sections */
.sx{ padding:clamp(70px,9vw,120px) 0; position:relative; }
.sx-head{ display:flex; flex-wrap:wrap; align-items:end; justify-content:space-between; gap:18px; margin-bottom:38px; }
.sx-head h2{ font-size:clamp(40px,5.4vw,74px); }
.sx-head p{ max-width:28em; color:var(--cx-silver-dark); margin:12px 0 0; }
.cars-meta{ display:block; color:var(--cx-silver-dark); margin-bottom:22px; min-height:30px; }
.cars-meta b{ color:#fff; }

/* car cards */
.cars-grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px; }
.cx-card{ position:relative; background:var(--cx-card); border:1px solid var(--cx-line); overflow:hidden; display:flex; flex-direction:column;
  animation:cardIn .7s var(--cx-ease) both; animation-delay:calc(var(--i,0)*.08s); transition:transform .4s var(--cx-ease),border-color .3s,box-shadow .4s; }
@keyframes cardIn{ from{ opacity:0; transform:translateY(40px) scale(.97);} to{ opacity:1; transform:none;} }
.cx-card:before{ content:""; position:absolute; inset:0; z-index:2; pointer-events:none; opacity:0; transition:opacity .3s;
  background:radial-gradient(360px circle at var(--mx,50%) var(--my,50%),rgba(225,6,0,.16),transparent 60%); }
.cx-card:hover{ transform:translateY(-6px); border-color:#4a4d54; box-shadow:0 24px 50px rgba(0,0,0,.6),0 0 0 1px rgba(225,6,0,.25); }
.cx-card:hover:before{ opacity:1; }
.cx-card .pic{ position:relative; aspect-ratio:4/3; overflow:hidden; background:#0d0d0f; display:block; }
.cx-card .pic img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .8s var(--cx-ease); }
.cx-card:hover .pic img{ transform:scale(1.08); }
.cx-card .pic:after{ content:""; position:absolute; left:0; right:0; bottom:0; height:40%; background:linear-gradient(180deg,transparent,rgba(0,0,0,.65)); }
.cx-card .tag{ position:absolute; left:0; top:16px; z-index:3; background:var(--cx-red); color:#fff; font-family:var(--cx-display); font-style:italic; font-weight:800; font-size:28px;
  padding:3px 20px 3px 14px; clip-path:polygon(0 0,100% 0,calc(100% - 10px) 100%,0 100%); }
.cx-card .sold{ position:absolute; right:14px; top:14px; z-index:3; background:#000; color:#fff; padding:4px 12px; font-weight:700; border:1px solid var(--cx-silver); }
.cx-card .body{ padding:20px 22px 22px; display:flex; flex-direction:column; gap:6px; flex:1; position:relative; z-index:3; }
.cx-card .kind{ color:var(--cx-red); font-weight:700; font-size:14px; }
.cx-card h3{ font-size:32px; }
.cx-card .var{ color:var(--cx-silver-dark); font-size:15px; }
.cx-card .specs{ display:flex; flex-wrap:wrap; gap:6px; margin:8px 0 4px; padding:0; list-style:none; }
.cx-card .specs li{ background:var(--cx-card-2); border:1px solid var(--cx-line); padding:4px 10px; font-size:13.5px; color:var(--cx-silver); }
.cx-card .acts{ display:flex; gap:10px; margin-top:auto; padding-top:14px; }
.cx-card .acts .cx-btn{ flex:1; text-align:center; }
.cars-empty{ grid-column:1/-1; border:1px dashed var(--cx-line); padding:56px 24px; text-align:center; }
.cars-empty h3{ font-size:36px; margin-bottom:10px; }
.cars-empty p{ max-width:34em; margin:0 auto 22px; }

/* why panels */
.why2{ background:#0a0a0c; border-block:1px solid var(--cx-line); }
.panels{ display:flex; gap:14px; height:420px; }
.panel{ flex:1; position:relative; overflow:hidden; background:var(--cx-card); border:1px solid var(--cx-line); padding:34px 30px; cursor:pointer;
  transition:flex .7s var(--cx-ease),border-color .3s,background .3s; display:flex; flex-direction:column; justify-content:flex-end; }
.panel.is-open{ flex:2.6; border-color:var(--cx-red); background:linear-gradient(160deg,#1b0807,#121316 60%); }
.panel .ico{ position:absolute; top:28px; left:30px; width:54px; height:54px; stroke:var(--cx-silver); fill:none; stroke-width:1.6; transition:stroke .3s,transform .6s var(--cx-ease); }
.panel.is-open .ico{ stroke:var(--cx-red); transform:scale(1.15) rotate(-6deg); }
.panel h3{ font-size:clamp(28px,2.8vw,40px); margin-bottom:10px; }
.panel p{ margin:0; max-width:24em; max-height:0; opacity:0; overflow:hidden; transition:max-height .6s var(--cx-ease),opacity .5s .1s; }
.panel.is-open p{ max-height:200px; opacity:1; }
.panel:before{ content:""; position:absolute; inset:0; pointer-events:none; opacity:0; transition:opacity .3s;
  background:radial-gradient(420px circle at var(--mx,50%) var(--my,50%),rgba(225,6,0,.15),transparent 60%); }
.panel:hover:before{ opacity:1; }

/* stats */
.stats{ display:grid; grid-template-columns:repeat(3,1fr); gap:26px; }
.stat{ border-left:3px solid var(--cx-red); padding:6px 0 6px 22px; }
.stat b{ display:block; font-family:var(--cx-display); font-style:italic; font-weight:800; color:#fff; font-size:clamp(46px,6vw,84px); line-height:1; }
.stat span{ color:var(--cx-silver-dark); }

/* cta */
.cta2{ position:relative; overflow:hidden; background:linear-gradient(100deg,var(--cx-red-deep),var(--cx-red) 55%,var(--cx-red-hot)); padding:clamp(60px,8vw,100px) 0; text-align:center; }
.cta2:before{ content:""; position:absolute; inset:0; background:repeating-linear-gradient(115deg,transparent 0 46px,rgba(0,0,0,.12) 46px 92px); animation:ctaMove 6s linear infinite; }
@keyframes ctaMove{ to{ background-position:92px 0; } }
.cta2 .cx-wrap{ position:relative; }
.cta2 h2{ color:#fff; font-size:clamp(38px,5.4vw,76px); margin-bottom:14px; }
.cta2 p{ color:#fff; max-width:30em; margin:0 auto 28px; font-size:19px; }
.cta2 .cx-btn{ background:#000!important; }
.cta2 .cx-btn:hover{ background:#fff!important; color:#000!important; }

/* ==========================================================
   INNER PAGES (template pages): overrides
   ========================================================== */
.main-title,.section-title h2,.inner-intro h1,.cx-h{ font-family:var(--cx-display); font-style:italic; font-weight:800; letter-spacing:.005em; }
.main-title:after,.section-title:after{ background:var(--cx-red)!important; }
.bg-light{ background:var(--cx-silver-light)!important; }
.inner-intro{ background-color:#000; border-bottom:3px solid var(--cx-red); }
.inner-intro h1{ font-size:clamp(34px,5vw,56px); }
.page-breadcrumb a:hover{ color:var(--cx-red)!important; }
.car-item{ position:relative; overflow:hidden; border:1px solid #e3e5e8; transition:transform .35s var(--cx-ease),box-shadow .35s,border-color .35s; }
.car-item:before{ content:""; position:absolute; left:0; top:0; height:3px; width:0; background:var(--cx-red); z-index:3; transition:width .45s var(--cx-ease); }
.car-item:hover{ transform:translateY(-4px); box-shadow:0 18px 40px rgba(0,0,0,.16); border-color:var(--cx-silver); }
.car-item:hover:before{ width:100%; }
.car-image{ overflow:hidden; } .car-image img{ transition:transform .6s var(--cx-ease); } .car-item:hover .car-image img{ transform:scale(1.05); }
.price.car-price{ background:var(--cx-red)!important; border-radius:0!important; }
.ce-chat{ background:var(--cx-red)!important; color:#fff!important; border-radius:0!important; } .ce-more{ background:#111214!important; color:#fff!important; border-radius:0!important; }
.ce-chat:hover{ background:var(--cx-red-hot)!important; } .ce-more:hover{ background:#000!important; }
.main-title,.section-title h2,.cx-feature h3,.cx-box h5,.item-title a{ color:#111214; } .item-title a:hover{ color:var(--cx-red); }
.section-title-new p{ color:#4b4f56; }
.cx-feature{ border-top:3px solid var(--cx-line); padding:22px 0 8px; height:100%; transition:border-color .3s; } .cx-feature:hover{ border-top-color:var(--cx-red); }
.cx-feature h3{ font-family:var(--cx-display); font-style:italic; font-weight:800; font-size:28px; margin:0 0 8px; }
.cx-box{ border:1px solid #e3e5e8; border-top:3px solid var(--cx-red); padding:26px 24px; height:100%; background:#fff; transition:transform .35s var(--cx-ease),box-shadow .35s; }
.cx-box:hover{ transform:translateY(-4px); box-shadow:0 16px 36px rgba(0,0,0,.12); }
.cx-box i{ color:var(--cx-red); font-size:24px; margin-bottom:10px; display:block; }
.cx-box h5{ font-family:var(--cx-display); font-style:italic; font-weight:800; font-size:26px; margin-bottom:8px; }
.cx-box p,.cx-box a{ margin:0; word-break:break-word; }
.cx-hours{ background:#000; color:var(--cx-silver); padding:30px; }
.cx-hours h5{ color:#fff; font-family:var(--cx-display); font-style:italic; font-weight:800; font-size:28px; }
.cx-map iframe{ width:100%; height:420px; border:0; display:block; filter:grayscale(.2) contrast(1.05); }
.cx-band{ background:#000; color:var(--cx-silver); padding:clamp(56px,7vw,90px) 0; border-top:3px solid var(--cx-red); }
.cx-band h2{ color:var(--cx-silver-light); font-size:clamp(36px,4.6vw,60px); margin:0 0 34px; line-height:1; }
.cx-actions{ display:flex; flex-wrap:wrap; gap:16px; }

/* extra sections published from the app */
.space-ptb{ padding:clamp(56px,7vw,90px) 0; }
.cx-home .main-title{ color:var(--cx-silver-light); }
.cx-home .feature-info{ border:1px solid var(--cx-line); padding:22px; background:var(--cx-card); height:100%; }
.cx-home .bg-light{ background:#0a0a0c!important; }
.cx-home .container{ width:min(1240px,100% - 40px); margin-inline:auto; }

/* ---------- footer ---------- */
.cx-footer{ background:#000; color:var(--cx-silver); border-top:3px solid var(--cx-red); padding:60px 0 22px; font-family:var(--cx-body); font-size:16px; line-height:1.55; }
.cx-footer h6{ color:#fff; font-family:var(--cx-display); font-style:italic; font-weight:800; font-size:24px; margin:0 0 16px; text-transform:none; }
.cx-footer a{ color:var(--cx-silver); text-decoration:none; transition:color .2s; } .cx-footer a:hover{ color:var(--cx-red); }
.cx-footer ul{ list-style:none; padding:0; margin:0; } .cx-footer li{ margin-bottom:10px; }
.cx-foot-logo{ max-width:220px; height:auto; margin-bottom:16px; display:block; }
.cx-fgrid{ display:grid; grid-template-columns:1.3fr 1.2fr .8fr 1fr; gap:34px; }
.cx-contact li{ display:flex; gap:12px; align-items:flex-start; }
.cx-contact svg{ width:18px; height:18px; fill:var(--cx-red); flex:none; margin-top:4px; }
.cx-legal{ border-top:1px solid var(--cx-line); margin-top:30px; padding-top:18px; color:var(--cx-silver-dark); font-size:14px; }

/* ---------- responsive ---------- */
@media (max-width:1020px){
  .cars-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .cx-fgrid{ grid-template-columns:1fr 1fr; }
}
@media (max-width:900px){
  .cx-hbar{ height:72px; } .cx-logo img{ height:48px; }
  .cx-burger{ display:block; } .cx-call{ display:none; }
  .cx-nav{ position:fixed; left:0; right:0; top:72px; margin:0; background:#000; border-bottom:1px solid var(--cx-line); padding:8px 20px 24px;
    transform:translateY(-12px); opacity:0; visibility:hidden; transition:opacity .25s,transform .35s var(--cx-ease),visibility 0s .35s; }
  .menu-open .cx-nav{ transform:none; opacity:1; visibility:visible; transition:opacity .25s,transform .35s var(--cx-ease); }
  .cx-nav .menu-links{ flex-direction:column; gap:0; }
  .cx-nav .menu-links a{ padding:16px 4px!important; font-size:19px; border-bottom:1px solid var(--cx-line); }
  .cx-nav .menu-links a:after{ display:none; }
  .hx{ min-height:0; padding:34px 0 90px; }
  .hx-grid{ grid-template-columns:1fr; }
  .hx-visual{ order:-1; margin-bottom:42px; aspect-ratio:1.1/1; }
  .hx-scroll{ display:none; }
  .panels{ flex-direction:column; height:auto; }
  .panel{ flex:none!important; min-height:130px; padding-top:100px; }
  .panel .ico{ top:22px; }
  .panel p{ max-height:200px; opacity:1; }
  .stats{ grid-template-columns:1fr; gap:18px; }
}
@media (max-width:620px){
  .cars-grid{ grid-template-columns:1fr; }
  .cx-fgrid{ grid-template-columns:1fr; }
  .cx-wa{ width:54px; height:54px; right:16px; bottom:16px; }
  .cx-map iframe{ height:320px; }
}
@media (prefers-reduced-motion:reduce){
  *,*:before,*:after{ animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; transition-delay:0s!important; }
  .hx-bg,.mq-track,.hx-road:before{ animation:none!important; }
  .cx-js [data-reveal]{ opacity:1; transform:none; }
  .hx-copy h1 .w,.hx-sub,.hx-finder{ opacity:1!important; transform:none!important; }
}


/* ---------- black and red everywhere: no blue ---------- */
/* photos behind banners become black and white with a red glow */
.inner-intro,.bg-1,.bg-2,.bg-3,.bg-holder{ background-color:#050505!important; background-blend-mode:luminosity; }
.inner-intro{ position:relative; }
.inner-intro:after{ content:""; position:absolute; inset:0; z-index:0; pointer-events:none;
  background:linear-gradient(100deg,rgba(0,0,0,.35) 30%,rgba(225,6,0,.38)); }
.inner-intro .container{ position:relative; z-index:2; }
/* flags, labels, badges and links that the template made blue */
.label,.label.car-condition,.car-condition,.badge,.ribbon,.new-price-tag,.car-overlay-banner li{ background:#000!important; color:#fff!important; border-color:#000!important; }
.label.car-condition:before,.label.car-condition:after,.car-condition:before,.car-condition:after{ border-color:#000!important; background:#000!important; }
.bg-blue,.bg-primary,.bg-info,.theme-bg,.btn-blue,.btn-info{ background:#000!important; border-color:#000!important; color:#fff!important; }
.text-blue,.text-primary,.theme-color,.text-info{ color:var(--cx-red)!important; }
a{ color:#111214; } a:hover{ color:var(--cx-red); }
.inner-intro a,.page-breadcrumb a{ color:#fff; }
.page-breadcrumb li span{ color:var(--cx-silver); }
.cx-home a,.cx-footer a,.cx-nav a{ color:inherit; }
.car-attribute-subtitle,.item-title a:hover,.details-price,.price .new-price{ color:var(--cx-red)!important; }
::selection{ background:var(--cx-red); color:#fff; }
input:focus,select:focus,textarea:focus,.form-control:focus{ border-color:var(--cx-red)!important; box-shadow:0 0 0 3px rgba(225,6,0,.18)!important; outline:0; }


/* ---------- hero photos: always black, white and red ----------
   To show your photos in their natural colours, change --hx-filter to: none  */
:root{ --hx-filter:saturate(1.08) contrast(1.05); }
.hx-photo{ position:absolute; inset:0; z-index:-4; width:100%; height:100%; object-fit:cover; background-size:cover; background-position:center; filter:var(--hx-filter) brightness(.85); }
.hx-photo-tint{ position:absolute; inset:0; z-index:-3; pointer-events:none; background:linear-gradient(100deg,rgba(0,0,0,.74) 25%,rgba(225,6,0,.36)); }
.hx-img{ filter:var(--hx-filter); }
.hx-slide:before{ content:""; position:absolute; inset:0; z-index:1; pointer-events:none; mix-blend-mode:normal;
  background:linear-gradient(105deg,rgba(225,6,0,.38) 0%,rgba(225,6,0,.10) 38%,transparent 65%); }
.hx-info{ z-index:3; }

/* ==========================================================
   PORTAL-DRIVEN SECTIONS
   ========================================================== */
.hx{ min-height:min(calc(100vh - 84px),780px); }
.hx-layers{ position:absolute; inset:0; z-index:-4; }
.hx-layer{ position:absolute; inset:0; opacity:0; transition:opacity 1.1s ease; }
.hx-layer.is-active{ opacity:1; }
.hx-layer .hx-photo,.hx-layer .hx-photo-tint{ z-index:0; }
.hx-layer .hx-photo-tint{ z-index:1; }
.hx-s{ display:none; } .hx-s.is-active{ display:block; }
.hx-s .cx-actions{ opacity:0; animation:hxFade .9s var(--cx-ease) .95s forwards; }
.hx-ticks{ position:absolute; left:50%; transform:translateX(-50%); width:min(1240px,100% - 40px); bottom:46px; display:flex; align-items:center; gap:8px; z-index:5; }
.hx-tick{ width:64px; height:22px; background:none; border:0; cursor:pointer; position:relative; padding:0; }
.hx-tick:before,.hx-tick:after{ content:""; position:absolute; left:0; top:9px; height:3px; }
.hx-tick:before{ right:0; background:rgba(200,204,210,.28); } .hx-tick:after{ width:0; background:var(--cx-red); }
.hx-tick[aria-selected="true"]:after{ animation:hxFill 7000ms linear forwards; }
.hx-ticks .hx-arrow{ margin-left:6px; }
.hx-ticks .hx-arrow:nth-of-type(1){ margin-left:auto; }

.finder-bar{ display:flex; flex-wrap:wrap; align-items:center; gap:14px 30px; padding:18px 22px; margin-bottom:22px; background:var(--cx-card); border:1px solid var(--cx-line); border-left:3px solid var(--cx-red); }
.finder-bar .hx-chips{ margin:0; flex:1 1 280px; }
.finder-bar .hx-range{ margin:0; flex:1 1 300px; max-width:460px; }
.sx-head p b{ color:#fff; font-family:var(--cx-display); font-style:italic; font-size:1.25em; }

.txt2{ max-width:820px; }
.txt2 h2{ font-size:clamp(38px,5vw,64px); margin-bottom:22px; }
.txt2 p{ font-size:18px; margin:0 0 18px; color:var(--cx-silver); }
.txt2 a{ color:#fff; border-bottom:2px solid var(--cx-red); }

.steps2{ display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:30px; counter-reset:s; }
.step2{ position:relative; padding-top:70px; }
.step2:before{ content:""; position:absolute; left:0; right:-30px; top:34px; height:2px; background:linear-gradient(90deg,var(--cx-red),var(--cx-line)); }
.step2:last-child:before{ right:0; background:var(--cx-red); }
.step2 .n{ position:absolute; left:0; top:0; font-family:var(--cx-display); font-style:italic; font-weight:800; font-size:64px; line-height:1; color:#fff; background:#000; padding-right:14px; }
.step2 h3{ font-size:30px; margin-bottom:8px; } .step2 p{ margin:0; color:var(--cx-silver); }

.gal2{ columns:3 260px; column-gap:16px; }
.gal2 .g{ display:block; width:100%; margin:0 0 16px; padding:0; border:0; background:#000; cursor:zoom-in; overflow:hidden; break-inside:avoid; position:relative; }
.gal2 .g img{ width:100%; display:block; transition:transform .7s var(--cx-ease),filter .4s; }
.gal2 .g:hover img{ transform:scale(1.06); }
.gal2 .g:after{ content:""; position:absolute; inset:0; border:0 solid var(--cx-red); transition:border-width .25s; pointer-events:none; }
.gal2 .g:hover:after{ border-width:4px; }
.lb{ position:fixed; inset:0; z-index:300; background:rgba(0,0,0,.94); display:none; align-items:center; justify-content:center; }
.lb.on{ display:flex; }
.lb img{ max-width:90vw; max-height:86vh; box-shadow:0 20px 80px #000; animation:cardIn .4s var(--cx-ease); }
.lb button{ position:absolute; background:none; border:0; color:#fff; font-size:44px; cursor:pointer; padding:16px 22px; line-height:1; }
.lb .x{ top:10px; right:10px; font-size:30px; } .lb .p{ left:6px; } .lb .n{ right:6px; }
.lb button:hover{ color:var(--cx-red); }

.vid2{ position:relative; padding-top:56.25%; background:#000; border:1px solid var(--cx-line); }
.vid2 iframe,.vid2 video{ position:absolute; inset:0; width:100%; height:100%; border:0; }

.rev2{ display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:22px; }
.rev2 figure{ margin:0; padding:28px; background:var(--cx-card); border:1px solid var(--cx-line); border-top:3px solid var(--cx-red); }
.rev2 .stars{ color:var(--cx-red); letter-spacing:4px; font-size:20px; }
.rev2 blockquote{ margin:14px 0; font-size:18px; color:var(--cx-silver-light); border:0; padding:0; }
.rev2 figcaption{ color:var(--cx-silver-dark); font-weight:600; }

.ct-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:20px; margin-bottom:26px; }
.ct-box{ background:var(--cx-card); border:1px solid var(--cx-line); border-top:3px solid var(--cx-red); padding:26px 24px; transition:transform .35s var(--cx-ease),border-color .3s; }
.ct-box:hover{ transform:translateY(-5px); border-color:#4a4d54; }
.ct-box svg{ width:30px; height:30px; fill:var(--cx-red); margin-bottom:12px; }
.ct-box h3{ font-size:28px; margin-bottom:8px; } .ct-box p{ margin:0; color:var(--cx-silver); word-break:break-word; }
.ct-box a:not(.cx-btn){ color:#fff; border-bottom:2px solid var(--cx-red); }
.map2 iframe{ width:100%; height:420px; border:0; display:block; filter:grayscale(.9) invert(.92) contrast(.9) hue-rotate(180deg); }

.pg-title{ padding:70px 0 20px; border-bottom:3px solid var(--cx-red); background:radial-gradient(60% 120% at 80% 0,rgba(225,6,0,.3),transparent 70%),#000; }
.pg-title h1{ font-size:clamp(44px,7vw,92px); padding-bottom:28px; }
.cta2 p{ color:#fff; }

@media (max-width:900px){
  .hx-ticks{ bottom:30px; } .hx-tick{ width:44px; }
  .step2:before{ right:0!important; }
}

/* ==========================================================
   360 VIEWER
   ========================================================== */
.cxs{ position:relative; aspect-ratio:4/3; background:#000; overflow:hidden; user-select:none; -webkit-user-select:none; touch-action:pan-y; cursor:grab; border:1px solid var(--cx-line); outline-offset:2px; }
.cxs.grabbing{ cursor:grabbing; }
.cxs-stage,.cxs-stage img{ position:absolute; inset:0; width:100%; height:100%; }
.cxs-stage img{ object-fit:contain; pointer-events:none; } .cxs-stage img.b{ opacity:0; }
.cxs-badge{ position:absolute; left:0; top:16px; z-index:2; background:var(--cx-red); color:#fff; font-family:var(--cx-display); font-style:italic; font-weight:800; font-size:26px; padding:2px 20px 2px 14px; clip-path:polygon(0 0,100% 0,calc(100% - 10px) 100%,0 100%); }
.cxs-load{ position:absolute; inset:0; z-index:4; display:grid; place-items:center; background:#000; color:var(--cx-silver); text-align:center; transition:opacity .4s; }
.cxs-load b{ font-family:var(--cx-display); font-style:italic; font-size:24px; color:#fff; }
.cxs-load .bar{ width:220px; height:4px; background:#2b2d31; margin:12px auto 0; } .cxs-load .bar i{ display:block; height:100%; width:0; background:var(--cx-red); transition:width .15s; }
.cxs-hint{ position:absolute; left:14px; bottom:14px; z-index:2; background:rgba(0,0,0,.75); color:#fff; padding:7px 14px; font-size:13.5px; border-left:3px solid var(--cx-red); transition:opacity .5s; pointer-events:none; }
.cxs-ctl{ position:absolute; right:12px; bottom:12px; z-index:3; display:flex; gap:6px; }
.cxs-ctl button{ width:42px; height:42px; background:rgba(0,0,0,.75); border:1px solid #3a3d43; color:#fff; font-size:20px; cursor:pointer; display:grid; place-items:center; padding:0; transition:background .2s; } .cxs-ctl button:hover{ background:var(--cx-red); border-color:var(--cx-red); }

/* ==========================================================
   CAR PAGE
   ========================================================== */
.cp{ padding:34px 0 80px; }
.cp-crumb{ font-size:14px; color:var(--cx-silver-dark); margin-bottom:18px; } .cp-crumb a{ color:var(--cx-silver); border-bottom:1px solid var(--cx-line); }
.cp-grid{ display:grid; grid-template-columns:minmax(0,1.35fr) minmax(0,1fr); gap:clamp(24px,4vw,56px); align-items:start; }
.cp-tabs{ display:flex; gap:8px; margin-bottom:12px; flex-wrap:wrap; }
.cp-tab{ background:var(--cx-card); border:1px solid var(--cx-line); color:var(--cx-silver); padding:10px 18px; font:600 15px var(--cx-body); cursor:pointer; transition:all .2s; }
.cp-tab:hover{ border-color:var(--cx-silver); } .cp-tab.on{ background:var(--cx-red); border-color:var(--cx-red); color:#fff; }
.cp-panel{ display:none; } .cp-panel.on{ display:block; animation:cardIn .5s var(--cx-ease); }
.cp-main{ position:relative; aspect-ratio:4/3; background:#0d0d0f; overflow:hidden; border:1px solid var(--cx-line); cursor:zoom-in; touch-action:pan-y; }
.cp-main img{ width:100%; height:100%; object-fit:cover; display:block; transition:opacity .35s; }
.cp-main .nv{ position:absolute; top:50%; transform:translateY(-50%); width:46px; height:60px; background:rgba(0,0,0,.65); border:0; color:#fff; font-size:28px; cursor:pointer; opacity:0; transition:opacity .25s,background .2s; } .cp-main:hover .nv{ opacity:1; } .cp-main .nv:hover{ background:var(--cx-red); }
.cp-main .nv.p{ left:0; } .cp-main .nv.n{ right:0; }
.cp-main .cnt{ position:absolute; right:12px; bottom:12px; background:rgba(0,0,0,.7); color:#fff; padding:4px 12px; font-size:13px; }
.cp-thumbs{ display:flex; gap:8px; margin-top:10px; overflow-x:auto; padding-bottom:6px; scrollbar-width:thin; }
.cp-thumbs button{ flex:0 0 96px; height:68px; padding:0; border:2px solid transparent; background:#000; cursor:pointer; opacity:.6; transition:all .2s; } .cp-thumbs button.on{ border-color:var(--cx-red); opacity:1; } .cp-thumbs button:hover{ opacity:1; }
.cp-thumbs img{ width:100%; height:100%; object-fit:cover; display:block; }
.cp-video{ position:relative; padding-top:56.25%; background:#000; border:1px solid var(--cx-line); } .cp-video iframe,.cp-video video{ position:absolute; inset:0; width:100%; height:100%; border:0; }
.cp-embed{ position:relative; padding-top:75%; background:#000; border:1px solid var(--cx-line); } .cp-embed iframe{ position:absolute; inset:0; width:100%; height:100%; border:0; }
.cp-empty{ aspect-ratio:4/3; display:grid; place-items:center; background:#0d0d0f; border:1px solid var(--cx-line); text-align:center; padding:30px; } .cp-empty img{ width:min(320px,70%); opacity:.9; margin:0 auto 10px; } .cp-empty p{ color:var(--cx-silver-dark); margin:0; }
.cp-info h1{ font-size:clamp(36px,4.4vw,60px); margin-bottom:6px; }
.cp-var{ color:var(--cx-silver-dark); margin:0 0 16px; font-size:17px; }
.cp-price{ display:inline-block; background:var(--cx-red); color:#fff; font-family:var(--cx-display); font-style:italic; font-weight:800; font-size:clamp(40px,5vw,60px); line-height:1; padding:6px 28px 6px 18px; clip-path:polygon(0 0,100% 0,calc(100% - 14px) 100%,0 100%); margin-bottom:20px; }
.cp-sold{ display:inline-block; margin-left:10px; background:#000; border:1px solid var(--cx-silver); padding:4px 14px; font-weight:700; vertical-align:middle; color:#fff; }
.cp-specs{ display:grid; grid-template-columns:1fr 1fr; gap:1px; background:var(--cx-line); border:1px solid var(--cx-line); margin-bottom:22px; }
.cp-specs div{ background:var(--cx-card); padding:12px 16px; } .cp-specs small{ display:block; color:var(--cx-silver-dark); font-size:12.5px; } .cp-specs b{ color:#fff; font-size:17px; }
.cp-desc{ margin:0 0 22px; color:var(--cx-silver); } .cp-desc p{ margin:0 0 12px; }
.cp-acts{ display:flex; flex-wrap:wrap; gap:12px; margin-bottom:22px; }
.cp-trust{ list-style:none; padding:0; margin:0; border-top:1px solid var(--cx-line); } .cp-trust li{ padding:12px 0 12px 30px; border-bottom:1px solid var(--cx-line); position:relative; } .cp-trust li:before{ content:""; position:absolute; left:4px; top:18px; width:12px; height:12px; background:var(--cx-red); transform:skewX(-24deg); }
.cp-more{ margin-top:70px; } .cp-more h2{ font-size:clamp(34px,4vw,52px); margin-bottom:24px; }
.has360{ display:inline-block; position:absolute; left:0; top:14px; z-index:3; background:#000; border-left:3px solid var(--cx-red); color:#fff; font:700 13px var(--cx-body); padding:3px 10px; }
@media (max-width:900px){ .cp-grid{ grid-template-columns:1fr; } .cp-main .nv{ opacity:1; width:38px; height:50px; } }

/* safety: no photo can ever be wider than its box */
img{ max-width:100%; height:auto; }
.car-image img,.cx-card .pic img,.cp-main img,.cp-thumbs img{ max-width:100%; }
html,body{ overflow-x:hidden; }

/* ---- v3: richer motion ---- */
.cx-card .pic img.noimg{ box-sizing:border-box; object-fit:contain; padding:14% 18%; background:radial-gradient(circle at 50% 40%,#1c1c20,#050506 70%); opacity:.85; }
.cx-card .pic{ overflow:hidden; } .cx-card .pic:after{ content:""; position:absolute; inset:0; background:linear-gradient(115deg,transparent 40%,rgba(255,255,255,.18) 50%,transparent 60%); transform:translateX(-120%); transition:transform .9s var(--cx-ease); pointer-events:none; }
.cx-card:hover .pic:after{ transform:translateX(120%); }
.cx-card:after{ content:""; position:absolute; left:0; bottom:0; height:3px; width:0; background:var(--cx-red); transition:width .5s var(--cx-ease); }
.cx-card:hover:after{ width:100%; }
.cx-card .tag{ animation:tagPulse 3.2s ease-in-out infinite; }
@keyframes tagPulse{ 0%,100%{ filter:none; } 50%{ filter:drop-shadow(0 0 10px rgba(225,6,0,.65)); } }
.ce-progress{ position:fixed; left:0; top:0; height:3px; width:0; background:linear-gradient(90deg,#E10600,#ff5a4f); z-index:9999; transition:width .1s linear; }
.cx-btn{ position:relative; overflow:hidden; } .cx-btn:after{ content:""; position:absolute; top:0; left:-80%; width:50%; height:100%; background:linear-gradient(100deg,transparent,rgba(255,255,255,.35),transparent); transform:skewX(-20deg); transition:left .6s var(--cx-ease); }
.cx-btn:hover:after{ left:130%; }
.hx-count{ position:absolute; right:0; top:-34px; font-family:var(--cx-display); font-style:italic; font-weight:800; font-size:20px; color:var(--cx-silver); z-index:5; letter-spacing:2px; } .hx-count b{ color:var(--cx-red); font-size:30px; }
.hx-visual,#hxVisual{ will-change:transform; transition:transform .25s ease-out; }
.sx-head h2.split span{ display:inline-block; opacity:0; transform:translateY(.6em) rotate(3deg); transition:opacity .6s var(--cx-ease),transform .7s var(--cx-ease); transition-delay:calc(var(--w)*.06s); }
.sx-head h2.split.in span{ opacity:1; transform:none; }
.gal2 .g{ overflow:hidden; } .gal2 .g img{ transition:transform .9s var(--cx-ease),filter .4s; filter:saturate(.9) contrast(1.05); } .gal2 .g:hover img{ filter:saturate(1.1); }
@media (prefers-reduced-motion:reduce){ .cx-card .tag,.cx-card:after,.cx-btn:after{ animation:none; transition:none; } }

/* ---- Zack ---- */
.zk{ position:fixed; left:16px; bottom:12px; z-index:95; display:flex; flex-direction:column; align-items:flex-start; gap:4px; pointer-events:none; }
.zk > *{ pointer-events:auto; }
.zk-car{ position:relative; width:min(230px,44vw); aspect-ratio:760/695; background:none; border:0; padding:0; cursor:pointer; -webkit-tap-highlight-color:transparent;
  animation:zkIn 1.1s cubic-bezier(.2,.9,.25,1.15) .6s both; }
@keyframes zkIn{ 0%{ transform:translateX(-140%) skewX(-14deg); opacity:0; } 60%{ opacity:1; } 80%{ transform:translateX(6%) skewX(3deg); } 100%{ transform:none; } }
.zk-img{ position:absolute; inset:0; display:block; animation:zkBob 3.4s ease-in-out 1.7s infinite; transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)); transition:transform .25s ease-out; filter:drop-shadow(0 14px 14px rgba(0,0,0,.65)); }
.zk-img img{ width:100%; height:100%; display:block; pointer-events:none; }
@keyframes zkBob{ 0%,100%{ translate:0 0; } 50%{ translate:0 -7px; } }
.zk-shadow{ position:absolute; left:10%; right:6%; bottom:-2%; height:14px; border-radius:50%; background:radial-gradient(ellipse,rgba(225,6,0,.65),transparent 70%); filter:blur(5px); animation:zkSh 3.4s ease-in-out 1.7s infinite; }
@keyframes zkSh{ 0%,100%{ transform:scaleX(1); opacity:.9; } 50%{ transform:scaleX(.86); opacity:.5; } }
.zk-hl{ position:absolute; width:16%; height:7%; border-radius:50%; background:radial-gradient(ellipse,#fff,rgba(160,230,255,.75) 40%,transparent 70%); mix-blend-mode:screen; animation:zkHl 2.6s ease-in-out infinite; pointer-events:none; }
.zk-hl.a{ left:42%; top:54%; transform:rotate(12deg); } .zk-hl.b{ left:92%; top:52%; width:9%; transform:rotate(12deg); animation-delay:.6s; }
@keyframes zkHl{ 0%,100%{ opacity:.15; } 50%{ opacity:.85; } }
.zk-shine{ position:absolute; inset:0; background:linear-gradient(105deg,transparent 42%,rgba(255,255,255,.35) 50%,transparent 58%); background-size:260% 100%; background-position:160% 0; mix-blend-mode:soft-light;
  -webkit-mask-image:url(zack.webp); mask-image:url(zack.webp); -webkit-mask-size:100% 100%; mask-size:100% 100%; animation:zkShine 5.5s ease-in-out 2.2s infinite; pointer-events:none; }
@keyframes zkShine{ 0%{ background-position:160% 0; } 45%,100%{ background-position:-60% 0; } }
.zk-car.rev .zk-img{ animation:zkRev .9s ease-in-out; }
@keyframes zkRev{ 0%,100%{ translate:0 0; } 15%{ translate:-3px -2px; } 30%{ translate:3px 0; } 45%{ translate:-3px -2px; } 60%{ translate:3px 0; } 80%{ translate:0 -6px; } }
.zk-badge{ position:absolute; right:2%; top:2%; z-index:2; background:var(--cx-red); color:#fff; font:700 12px/22px var(--cx-body,Arial); width:22px; height:22px; border-radius:50%; text-align:center; box-shadow:0 0 14px var(--cx-red); animation:zkPulse 1.6s ease-in-out infinite; }
@keyframes zkPulse{ 50%{ transform:scale(1.18); } }
.zk-bub{ position:relative; width:min(320px,calc(100vw - 32px)); background:rgba(14,15,18,.94); backdrop-filter:blur(8px); border:1px solid #2c2e34; padding:16px 16px 14px; color:var(--cx-silver,#C8CCD2);
  box-shadow:0 20px 60px rgba(0,0,0,.7),0 0 0 1px rgba(225,6,0,.22); clip-path:polygon(0 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%);
  opacity:0; visibility:hidden; transform:translateY(18px) scale(.94); transform-origin:bottom left; transition:opacity .35s,transform .45s cubic-bezier(.2,.9,.3,1.2),visibility 0s .45s; }
.zk-bub.on{ opacity:1; visibility:visible; transform:none; transition:opacity .35s,transform .45s cubic-bezier(.2,.9,.3,1.2); }
.zk-bub:before{ content:""; position:absolute; left:0; top:0; bottom:0; width:4px; background:linear-gradient(var(--cx-red),#ff6a5f); }
.zk-logo{ height:24px; display:block; margin-bottom:8px; }
.zk-bub b{ display:flex; align-items:center; gap:8px; color:#fff; font-size:18px; margin-bottom:6px; }
.zk-bub b i{ width:8px; height:8px; border-radius:50%; background:#2fe37a; box-shadow:0 0 8px #2fe37a; animation:zkPulse 1.6s infinite; }
.zk-bub p{ margin:0 0 12px; font-size:14.5px; line-height:1.45; color:#b9bdc4; }
.zk-q{ display:flex; flex-wrap:wrap; gap:6px; }
.zk-q a,.zk-q button{ background:rgba(255,255,255,.04); border:1px solid #3a3c42; color:#fff; padding:8px 12px; font:600 13px var(--cx-body,Arial); cursor:pointer; text-decoration:none; transition:.25s; }
.zk-q a:hover,.zk-q button:hover{ background:var(--cx-red); border-color:var(--cx-red); transform:translateY(-2px); }
.zk-x{ position:absolute; right:8px; top:6px; background:none; border:0; color:#8e939b; font-size:16px; cursor:pointer; }
@media (max-width:640px){ .zk{ left:8px; bottom:8px; } .zk-car{ width:min(150px,38vw); } }
@media (prefers-reduced-motion:reduce){ .zk-car,.zk-img,.zk-shadow,.zk-hl,.zk-shine,.zk-badge{ animation:none !important; } }

.zk-hi{ background:#fff; color:#111; font:700 14px var(--cx-body,Arial); padding:9px 14px; border-radius:14px 14px 14px 2px; margin-left:6px; box-shadow:0 10px 30px rgba(0,0,0,.5); opacity:0; visibility:hidden; transform:translateY(10px) scale(.9); transform-origin:bottom left; transition:opacity .35s,transform .45s cubic-bezier(.2,.9,.3,1.3),visibility 0s .45s; }
.zk-hi.on{ opacity:1; visibility:visible; transform:none; transition:opacity .35s,transform .45s cubic-bezier(.2,.9,.3,1.3); }
.zk{ display:block; width:min(230px,44vw); } .zk-car{ display:block; }
.zk-bub,.zk-hi{ position:absolute; left:0; bottom:calc(100% + 4px); }
.zk-hi{ white-space:nowrap; left:6px; bottom:calc(100% - 4px); }
@media (max-width:640px){ .zk{ width:min(150px,38vw); } .zk-car{ width:100%; } }

/* Zack stage: lights behind the black car so it stands out on dark pages */
.zk-car:before{ content:""; position:absolute; left:-14%; right:-10%; top:-18%; bottom:-6%; z-index:-1; border-radius:50%; pointer-events:none;
  background:radial-gradient(ellipse at 50% 55%,rgba(235,240,247,.95) 0%,rgba(200,206,215,.7) 28%,rgba(225,6,0,.28) 55%,transparent 72%); filter:blur(2px); animation:zkStage 4s ease-in-out infinite; }
@keyframes zkStage{ 0%,100%{ opacity:.95; transform:scale(1); } 50%{ opacity:.75; transform:scale(1.04); } }
.zk-car:after{ content:""; position:absolute; left:-6%; right:-2%; bottom:-6%; height:22%; z-index:-1; border-radius:50%; pointer-events:none;
  border:2px solid rgba(225,6,0,.9); box-shadow:0 0 18px rgba(225,6,0,.8),inset 0 0 18px rgba(225,6,0,.5); transform:perspective(300px) rotateX(62deg); }
.zk-car .zk-img{ filter:drop-shadow(0 10px 10px rgba(0,0,0,.55)); }
.zk-shadow{ display:none; }

/* Zack v2: animated video car */
.zk{ width:min(270px,50vw); } .zk-car{ width:100%; aspect-ratio:560/385; }
.zk-img video,.zk-img img{ width:100%; height:100%; display:block; object-fit:contain; pointer-events:none; }
.zk-img{ animation:none; filter:drop-shadow(0 10px 12px rgba(0,0,0,.55)); }
.zk-hl,.zk-shine,.zk-shadow{ display:none !important; }
.zk-car:before{ background:radial-gradient(ellipse at 50% 58%,rgba(225,6,0,.38) 0%,rgba(225,6,0,.16) 40%,transparent 70%); filter:blur(4px); }
@media (max-width:640px){ .zk{ width:min(180px,46vw); } }

/* Zack: no ring */
.zk-car:after{ content:none !important; display:none !important; }

/* WhatsApp button with label */
.cx-wa{ width:auto!important; padding:0 22px 0 18px; gap:10px; border-radius:40px!important; display:flex; align-items:center; justify-content:center; }
.cx-wa:before{ border-radius:40px!important; }
.cx-wa-t{ color:#fff; font-weight:700; font-size:15px; letter-spacing:.2px; white-space:nowrap; }
@media(max-width:600px){ .cx-wa{ padding:0 16px 0 13px; } .cx-wa-t{ font-size:14px; } }
.cx-wa,.cx-wa:hover,.cx-wa-t{ text-decoration:none!important; background-image:none!important; }

/* =====================================================================
   v5: tighter spacing, natural hero photo, richer car cards
   ===================================================================== */
/* ---- less empty space ---- */
.sx{ padding:clamp(34px,4.6vw,64px) 0; }
.sx-head{ margin-bottom:22px; gap:12px; }
.sx-head h2{ font-size:clamp(34px,4.2vw,56px); }
.cars-meta{ margin-bottom:12px; min-height:0; }
.finder-bar{ margin-bottom:14px; padding:14px 20px; }
.hx{ min-height:0; padding:34px 0 64px; }
.hx-copy h1{ margin-bottom:14px; }
.hx-sub{ margin-bottom:20px; }
.pg-title{ padding:38px 0 6px; }
.pg-title h1{ padding-bottom:16px; font-size:clamp(38px,5.5vw,70px); }
.cta2{ padding:clamp(34px,4.6vw,60px) 0; }
.cx-footer{ padding-top:40px; }
.cars-grid{ gap:22px; }
.ct-grid{ gap:16px; }
.cars-sec{ padding-top:clamp(28px,3.4vw,48px); }
[data-page="stock"] .cars-sec .sx-head{ margin-bottom:16px; }

/* ---- hero photo: natural colour, light tint ---- */
:root{ --hx-filter:none; }
.hx-photo{ filter:saturate(1.05) contrast(1.03)!important; }
.hx-photo-tint{ background:linear-gradient(100deg,rgba(0,0,0,.52) 0%,rgba(0,0,0,.2) 48%,rgba(0,0,0,.04) 100%)!important; }
.hx:before{ background:radial-gradient(90% 80% at 25% 35%,transparent 40%,rgba(0,0,0,.5) 100%)!important; }
.hx-bg{ opacity:.55; }
.hx-copy h1,.hx-sub{ text-shadow:0 2px 18px rgba(0,0,0,.65); }

/* ---- car cards ---- */
.cx-card{ background:linear-gradient(180deg,#14151a,#0d0e11); }
.cx-card .pic{ aspect-ratio:4/3; }
.cx-card .pic .pl{ position:absolute; inset:0; z-index:4; }
.cx-card .pic:after{ z-index:1; pointer-events:none; }
.cx-card .sold{ z-index:6; }
.cx-card.is-sold .pic img{ filter:grayscale(.7) brightness(.8); }
.cx-card .body{ padding:16px 20px 20px; gap:0; }
.cx-card .mk{ display:flex; align-items:center; gap:12px; padding-bottom:12px; border-bottom:1px solid var(--cx-line); }
.mk-logo{ flex:0 0 auto; width:46px; height:46px; border-radius:50%; background:#f3f4f6; color:#0b0b0d; display:grid; place-items:center; box-shadow:0 0 0 3px rgba(255,255,255,.06); }
.mk-logo svg{ width:26px; height:26px; display:block; }
.mk-logo.mk-txt{ font:800 15px var(--cx-display); font-style:italic; letter-spacing:.5px; background:#1d1e23; color:#fff; border:1px solid var(--cx-line); }
.cx-card .mk-n{ min-width:0; flex:1; }
.cx-card .mk-n small{ display:block; color:var(--cx-silver-dark); font-size:13px; letter-spacing:.3px; text-transform:uppercase; }
.cx-card .mk-n h3{ font-size:26px; line-height:1.05; margin:2px 0 0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.cx-card .mk-p{ font-family:var(--cx-display); font-style:italic; font-weight:800; font-size:27px; color:#fff; white-space:nowrap; }
.cx-card .mk-p:first-letter{ color:var(--cx-red); }
.cx-card .blurb{ margin:12px 0 10px; color:var(--cx-silver); font-size:14.5px; line-height:1.45; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; min-height:2.9em; }
.cx-card .spec6{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:1fr 1fr; gap:9px 14px; }
.cx-card .spec6 li{ display:flex; align-items:center; gap:9px; color:#e5e7eb; font-size:14px; min-width:0; }
.cx-card .spec6 li span{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.cx-card .spec6 svg{ flex:0 0 auto; width:20px; height:20px; color:var(--cx-red); }
.cx-card .acts{ padding-top:16px; }

/* hover panel: see-through, like a showroom screen */
.cx-card .hov{ position:absolute; inset:0; z-index:5; pointer-events:none; display:flex; flex-direction:column; justify-content:flex-end; gap:6px; padding:20px 20px 18px;
  background:linear-gradient(180deg,rgba(0,0,0,.18) 0%,rgba(8,8,10,.72) 42%,rgba(8,8,10,.9) 100%); backdrop-filter:blur(3px) saturate(1.1); -webkit-backdrop-filter:blur(3px) saturate(1.1);
  border-top:2px solid var(--cx-red); opacity:0; transform:translateY(14px); transition:opacity .35s ease,transform .45s var(--cx-ease); }
.cx-card .hov-k{ align-self:flex-start; background:var(--cx-red); color:#fff; font:700 12px var(--cx-body); letter-spacing:.8px; text-transform:uppercase; padding:3px 9px; }
.cx-card .hov-t{ font-family:var(--cx-display); font-style:italic; font-weight:800; font-size:28px; line-height:1; color:#fff; }
.cx-card .hov-v{ color:var(--cx-silver); font-size:14px; }
.cx-card .hov p{ margin:2px 0 2px; color:#e5e7eb; font-size:14px; line-height:1.4; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.cx-card .hov-c{ list-style:none; margin:2px 0 0; padding:0; display:flex; flex-wrap:wrap; gap:6px; }
.cx-card .hov-c li{ display:flex; align-items:center; gap:6px; border:1px solid rgba(255,255,255,.35); background:rgba(0,0,0,.35); padding:4px 9px; font-size:12.5px; color:#fff; }
.cx-card .hov-c svg{ width:15px; height:15px; color:#fff; }
.cx-card .hov-p{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:8px; }
.cx-card .hov-p span{ font-family:var(--cx-display); font-style:italic; font-weight:800; font-size:30px; color:#fff; }
.cx-card .hov-b{ pointer-events:auto; position:relative; z-index:7; background:var(--cx-red); color:#fff!important; font:700 15px var(--cx-body); padding:9px 18px; clip-path:polygon(10px 0,100% 0,calc(100% - 10px) 100%,0 100%); transition:background .2s; }
.cx-card .hov-b:hover{ background:#fff; color:#000!important; }
@media (hover:hover){
  .cx-card:hover .hov, .cx-card:focus-within .hov{ opacity:1; transform:none; }
  .cx-card:hover .pic img{ transform:scale(1.06); }
}
@media (hover:none){ .cx-card .hov{ display:none; } }
@media (max-width:620px){
  .cx-card .mk-n h3{ font-size:23px; } .cx-card .mk-p{ font-size:24px; }
  .cx-card .spec6{ gap:8px 10px; }
}

.cx-card .mk-v{ display:block; color:var(--cx-silver-dark); font-size:13.5px; margin-top:2px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.hx-range output{ white-space:nowrap; }
[data-page="stock"] .cars-sec{ padding-top:clamp(28px,3.4vw,44px); }
@media(max-width:620px){ .hx-range{ flex-wrap:wrap; gap:6px 12px; } .hx-range input{ flex:1 1 140px; } .hx-range output{ font-size:20px; min-width:0; } }

/* Zack shrinks when you scroll down so he never covers the stock */
.zk{ transition:width .45s var(--cx-ease); }
.zk.zk-sm{ width:112px; }
.zk.zk-sm .zk-badge{ display:none!important; }
@media (max-width:640px){ .zk.zk-sm{ width:84px; } }

/* nicer spec icons on the car cards */
.cx-card .spec6{ gap:11px 14px; }
.cx-card .spec6 li{ gap:10px; font-size:14.5px; font-weight:500; }
.cx-card .spec6 svg{ box-sizing:content-box; width:17px; height:17px; padding:7px; border-radius:10px; color:#ff3b30;
  background:linear-gradient(145deg,rgba(225,6,0,.22),rgba(225,6,0,.06)); border:1px solid rgba(225,6,0,.38); box-shadow:inset 0 0 10px rgba(225,6,0,.12); transition:transform .3s var(--cx-ease),background .3s; }
.cx-card:hover .spec6 svg{ transform:translateY(-2px); background:linear-gradient(145deg,rgba(225,6,0,.38),rgba(225,6,0,.12)); }
.cx-card .hov-c svg{ padding:0; border:0; background:none; box-shadow:none; }

/* "photos coming soon" cover for cars without pictures */
.cover{ position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px; text-align:center; overflow:hidden; color:#c8ccd2;
  background:
    repeating-linear-gradient(115deg,rgba(255,255,255,.028) 0 1px,transparent 1px 14px),
    radial-gradient(70% 60% at 85% 0%,rgba(225,6,0,.34),transparent 70%),
    radial-gradient(60% 50% at 10% 100%,rgba(200,204,210,.12),transparent 70%),
    linear-gradient(160deg,#17181c,#060607); }
.cover:before{ content:""; position:absolute; inset:10px; border:1px solid rgba(200,204,210,.16); pointer-events:none; }
.cover:after{ content:""; position:absolute; left:50%; bottom:0; width:46%; height:2px; transform:translateX(-50%); background:linear-gradient(90deg,transparent,var(--cx-red),transparent); }
.cv-glow{ position:absolute; width:60%; aspect-ratio:1; left:20%; top:12%; border-radius:50%; background:radial-gradient(circle,rgba(225,6,0,.16),transparent 65%); animation:cvPulse 4s ease-in-out infinite; }
@keyframes cvPulse{ 50%{ opacity:.45; transform:scale(1.15); } }
.cx-card .pic img.cv-logo,.cv-logo{ position:relative; width:34%!important; height:auto!important; max-width:120px; object-fit:contain!important; opacity:.85; margin-bottom:2px; transform:none!important; }
.cv-car{ position:relative; width:52%; max-width:190px; height:auto; color:rgba(200,204,210,.55); }
.cv-t{ position:relative; font:700 12.5px var(--cx-body); letter-spacing:3px; text-transform:uppercase; color:#fff; padding:5px 12px; border-top:1px solid rgba(225,6,0,.7); border-bottom:1px solid rgba(225,6,0,.7); }
.cv-s{ position:relative; font:500 12.5px var(--cx-body); letter-spacing:.5px; color:var(--cx-silver-dark); }
.cx-card:hover .cover .cv-car{ color:rgba(255,255,255,.8); transition:color .4s; }
@media(max-width:620px){ .cv-t{ font-size:11.5px; letter-spacing:2.4px; } }

/* right-hand quick links */
.cx-side{ position:fixed; right:0; top:50%; transform:translateY(-50%); z-index:88; display:flex; flex-direction:column; background:rgba(8,8,10,.62); backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); border:1px solid rgba(200,204,210,.16); border-right:0; border-radius:12px 0 0 12px; overflow:visible; }
.cx-side a{ position:relative; width:46px; height:46px; display:grid; place-items:center; color:#e5e7eb!important; text-decoration:none; transition:background .25s,color .25s; }
.cx-side a+a{ border-top:1px solid rgba(200,204,210,.12); }
.cx-side a:first-child{ border-radius:12px 0 0 0; } .cx-side a:last-child{ border-radius:0 0 0 12px; }
.cx-side svg{ width:21px; height:21px; }
.cx-side a:hover{ background:var(--cx-red); color:#fff!important; }
.cx-side a span{ position:absolute; right:52px; top:50%; transform:translate(10px,-50%); opacity:0; pointer-events:none; white-space:nowrap; background:#000; border:1px solid var(--cx-red); color:#fff; font:600 13px var(--cx-body); padding:6px 12px; transition:opacity .2s,transform .25s var(--cx-ease); }
.cx-side a:hover span{ opacity:1; transform:translate(0,-50%); }
@media (max-width:900px){ .cx-side{ display:none; } }

/* v6: side links in our own slanted style (not a plain bar) */
.cx-side{ background:none!important; border:0!important; backdrop-filter:none!important; -webkit-backdrop-filter:none!important; border-radius:0!important; gap:10px; right:14px; align-items:flex-end; }
.cx-side:before{ content:""; position:absolute; right:-14px; top:-26px; bottom:-26px; width:3px; background:linear-gradient(180deg,transparent,var(--cx-red) 20%,var(--cx-red) 80%,transparent); opacity:.9; }
.cx-side a{ width:44px; height:44px; border:0!important; border-radius:0!important; background:rgba(10,10,12,.82); color:#fff!important; clip-path:polygon(9px 0,100% 0,calc(100% - 9px) 100%,0 100%);
  box-shadow:inset 3px 0 0 var(--cx-red); transition:width .35s var(--cx-ease),background .25s; justify-items:center; }
.cx-side a+a{ border:0!important; }
.cx-side a svg{ width:20px; height:20px; position:relative; z-index:1; color:#fff; }
.cx-side a span{ position:absolute!important; right:auto!important; left:14px; top:50%!important; transform:translate(-4px,-50%)!important; opacity:0!important; background:none!important; border:0!important; padding:0!important; font:700 14px var(--cx-display); font-style:italic; letter-spacing:.3px; text-transform:uppercase; color:#fff; white-space:nowrap; }
.cx-side a:hover{ width:150px; background:var(--cx-red); }
.cx-side a:hover svg{ position:absolute; right:12px; }
.cx-side a:hover span{ opacity:1!important; transform:translate(0,-50%)!important; transition:opacity .25s .1s,transform .3s .1s; }
.cx-side a:hover{ box-shadow:inset 3px 0 0 #fff; }

/* questions page */
.faq2 .sx-head p{ max-width:40em; }
.faq-g{ margin-bottom:26px; }
.faq-g h3{ font-size:26px; color:var(--cx-red); margin:0 0 10px; }
.faq2 details{ background:var(--cx-card); border:1px solid var(--cx-line); border-left:3px solid transparent; margin-bottom:8px; transition:border-color .25s,background .25s; }
.faq2 details[open]{ border-left-color:var(--cx-red); background:var(--cx-card-2); }
.faq2 summary{ list-style:none; cursor:pointer; padding:16px 54px 16px 20px; font:600 17px var(--cx-body); color:#fff; position:relative; }
.faq2 summary::-webkit-details-marker{ display:none; }
.faq2 summary i{ position:absolute; right:20px; top:50%; width:14px; height:14px; transform:translateY(-50%); }
.faq2 summary i:before,.faq2 summary i:after{ content:""; position:absolute; left:0; right:0; top:50%; height:2px; background:var(--cx-red); transition:transform .3s var(--cx-ease); }
.faq2 summary i:after{ transform:rotate(90deg); }
.faq2 details[open] summary i:after{ transform:rotate(0); }
.faq2 details p{ margin:0; padding:0 22px 18px 20px; color:var(--cx-silver); line-height:1.6; max-width:52em; }

/* wider layout on big screens, so there is less empty black on the sides */
@media (min-width:1400px){ .cx-wrap{ width:min(1640px,100% - 120px); } }
@media (min-width:1700px){ .cars-grid{ grid-template-columns:repeat(4,minmax(0,1fr)); } }
@media (min-width:1400px){ .sx{ padding:clamp(30px,3.4vw,52px) 0; } }
.cx-card .blurb{ min-height:0; }

/* Zack: a bit bigger when scrolled down */
.zk.zk-sm{ width:175px; }
@media (max-width:640px){ .zk.zk-sm{ width:120px; } }

/* covered-car cover: silver cloth */
.cover{ gap:6px; }
.cover .cv-mk{ position:relative; margin-top:-4px; }
.cover .cv-mk .mk-logo{ width:42px; height:42px; background:linear-gradient(145deg,#fff,#c9ced5); box-shadow:0 0 0 3px rgba(200,204,210,.25),0 6px 18px rgba(0,0,0,.5); }
.cover .cv-mk .mk-logo svg{ width:24px; height:24px; }
.cx-card .pic .cv-car,.cv-car{ width:68%; max-width:250px; color:inherit; filter:drop-shadow(0 8px 16px rgba(0,0,0,.45)); }
.cv-s{ max-width:80%; line-height:1.3; font-size:12.5px!important; color:#aeb3ba!important; }
.cv-t{ font-size:12px!important; }
@media(max-width:620px){ .cv-s{ font-size:12px!important; } }
.cx-card .pic .cv-car,.cv-car{ width:84%; max-width:300px; }
.cover{ justify-content:center; gap:4px; }
.cx-card .spec6 li span{ white-space:normal; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; line-height:1.25; }

/* silver studio cover (image cars without photos) */
.cover{ background:radial-gradient(90% 80% at 50% 38%,#f4f5f7 0%,#e3e6ea 55%,#c9cdd3 100%)!important; color:#3d4348; justify-content:flex-start; gap:2px; padding-top:14px; }
.cover:before{ border-color:rgba(60,66,72,.14)!important; }
.cover:after{ background:linear-gradient(90deg,transparent,rgba(60,66,72,.35),transparent)!important; }
.cover .cv-mk .mk-logo{ background:#fff; color:#1b1e22; box-shadow:0 0 0 2px rgba(60,66,72,.18),0 6px 14px rgba(0,0,0,.18); width:40px; height:40px; }
.cx-card .pic img.cv-car,.cover img.cv-car{ position:relative; width:94%!important; max-width:none; height:auto!important; object-fit:contain!important; mix-blend-mode:multiply; filter:none!important; margin:-2px 0 -6px; transform:none!important; opacity:1!important; padding:0!important; }
.cover .cv-t{ color:#3d4348!important; border-color:rgba(225,6,0,.75)!important; letter-spacing:3px; }
.cover .cv-s{ color:#5b6269!important; }
.cover{ justify-content:center!important; padding-top:0!important; gap:6px!important; }
.cover img.cv-car{ width:104%!important; -webkit-mask-image:radial-gradient(ellipse 50% 50% at 50% 52%,#000 62%,transparent 100%); mask-image:radial-gradient(ellipse 50% 50% at 50% 52%,#000 62%,transparent 100%); margin:0 -2%!important; }
