[hidden]{display:none!important}
:root{
  --rr:14px;      /* زوايا موحّدة بنفس روح أيقونة اللوغو */
  --rr-sm:8px;
  --bg:#F4F5FA;
  --surface:#FFFFFF;
  --ink:#0E1126;
  --ink-2:#2A2E48;
  --muted:#6B7088;
  --line:#E6E8F0;
  --primary:#2F35E0;
  --primary-2:#4C52FF;
  --primary-soft:#ECEDFF;
  --accent:#FF7A1A;
  --dark:#0D0F2B;
  --solid:var(--ink);
  --green:#12A150;
  --radius-xl:36px;
  --radius-lg:26px;
  --radius-md:18px;
  --radius-sm:12px;
  --shadow-sm:0 2px 8px rgba(14,17,38,.05);
  --shadow-md:0 12px 32px -12px rgba(14,17,38,.18);
  --shadow-lg:0 30px 60px -20px rgba(14,17,38,.30);
  --container:1280px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:"Readex Pro",system-ui,sans-serif;background:var(--bg);color:var(--ink);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
button,input,select{font:inherit;color:inherit}
button{cursor:pointer;border:0;background:none}
img{display:block;max-width:100%}
.container{max-width:var(--container);margin-inline:auto;padding-inline:24px}
.icon{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.icon-sm{width:16px;height:16px}

/* ===== Top strip ===== */
.topstrip{background:var(--dark);color:#C9CBEA;font-size:13px}
.topstrip .container{display:flex;justify-content:center;gap:36px;padding-block:9px;flex-wrap:wrap}
.topstrip span{display:inline-flex;align-items:center;gap:8px}
.topstrip .icon{width:16px;height:16px;color:#8E93FF}

/* ===== Header ===== */
.header{position:sticky;top:0;z-index:50;background:rgba(244,245,250,.82);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid transparent;transition:border-color .2s}
.header{overflow-x:clip}
.header.scrolled{border-bottom-color:var(--line)}
.header .container{display:flex;align-items:center;justify-content:space-between;height:78px;gap:24px}
.logo{display:flex;align-items:center;gap:12px}
.logo-mark{width:48px;height:48px;border-radius:16px;background:var(--solid);display:grid;place-items:center;color:#fff;box-shadow:0 10px 22px -8px rgba(14,17,38,.55);position:relative;overflow:hidden;transition:.4s}
.logo-mark::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 30%,rgba(255,255,255,.35) 50%,transparent 70%);transform:translateX(-120%);transition:.7s}
.logo:hover .logo-mark{background:var(--primary)}
.logo:hover .logo-mark::after{transform:translateX(120%)}
.logo-mark svg{width:30px;height:27px;fill:currentColor;transition:.6s}
.logo:hover .logo-mark svg{transform:rotate(-20deg)}
.logo-text{display:flex;flex-direction:column;line-height:1.15}
.logo-text b{font-size:20px;font-weight:700;letter-spacing:-.3px}
.logo-word{width:108px;height:9px;fill:var(--muted);margin-top:4px}

/* ===== Preloader: عدّاد السرعة (المؤشر يتحرك بفيزياء حقيقية) ===== */
.preloader{position:fixed;inset:0;z-index:999;background:radial-gradient(110% 90% at 50% 40%,#3C43D6 0%,#2A2F9E 45%,#1D2070 100%);display:grid;place-items:center;opacity:1;visibility:visible;transition:opacity .4s cubic-bezier(.4,0,.2,1),visibility .4s}
.preloader.out{opacity:0;visibility:hidden}
.pl-stage{display:flex;flex-direction:column;align-items:center;gap:16px;margin-top:-4vh;transition:transform .55s cubic-bezier(.2,.8,.2,1),filter .55s}
.preloader.out .pl-stage{transform:scale(1.04) translateY(-6px);filter:blur(1.5px)}
.pl-car{position:relative;width:min(150px,38vw);aspect-ratio:330/296}
.pl-car svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.pl-seg{fill:#fff;opacity:.16;transition:opacity .25s ease,filter .5s ease}
.pl-seg.lit{opacity:1;filter:drop-shadow(0 0 4px rgba(255,255,255,.35))}
.pl-seg.flash{filter:drop-shadow(0 0 12px rgba(255,255,255,.85))}
.pl-ndl{transform-origin:45.24% 49.05%;will-change:transform;backface-visibility:hidden}
.pl-needle{fill:#fff;opacity:.35;transition:opacity .25s ease,filter .25s ease}
.pl-needle.on{opacity:1;filter:drop-shadow(0 0 7px rgba(255,255,255,.6))}
.pl-final{fill:#fff;opacity:0;transition:opacity .35s ease}
.pl-live{transition:opacity .35s ease}
.pl-shine{pointer-events:none;opacity:0;transition:opacity .2s}
.preloader.settled .pl-shine{opacity:.9}
.pl-info{text-align:center;color:#fff;opacity:0;transform:translateY(8px);transition:opacity .35s ease,transform .4s cubic-bezier(.2,.8,.2,1)}
.preloader.info .pl-info{opacity:1;transform:none}
.pl-yrs{display:inline-flex;align-items:center;font-size:40px;font-weight:700;line-height:1;letter-spacing:-.5px}
.pl-yrs > b{color:#C9CBFF;margin-inline-end:2px;font-weight:600}
.pl-odo{display:inline-flex}
.pl-odo .c{display:inline-block;height:1.1em;line-height:1.1em;overflow:hidden;-webkit-mask:linear-gradient(transparent,#000 25%,#000 75%,transparent);mask:linear-gradient(transparent,#000 25%,#000 75%,transparent)}
.pl-odo .s{display:flex;flex-direction:column;transition:transform .7s cubic-bezier(.2,.75,.2,1)}
.pl-odo .s i{font-style:normal;height:1.1em;line-height:1.1em;text-align:center}
.pl-info small{display:block;margin-top:8px;font-size:13px;color:#DADCFF;letter-spacing:.2px}
.pl-word{width:min(170px,44vw);height:13px;fill:#B7BAFF;opacity:0;transform:translateY(6px);transition:opacity .35s .08s ease,transform .4s .08s cubic-bezier(.2,.8,.2,1)}
.preloader.info .pl-word{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.preloader{display:none}}

/* ===== Brand watermarks ===== */
.hero-mark{position:absolute;z-index:-1;width:620px;height:556px;inset-inline-start:-140px;top:50%;transform:translateY(-50%) rotate(-12deg);fill:#fff;opacity:.05;pointer-events:none;animation:slowSpin 60s linear infinite}
@keyframes slowSpin{to{transform:translateY(-50%) rotate(348deg)}}
.calc-mark{position:absolute;width:340px;height:305px;inset-inline-start:-110px;bottom:-90px;fill:#fff;opacity:.05;pointer-events:none}
.foot-giant{display:block;width:100%;height:auto;aspect-ratio:520/39;fill:var(--ink);opacity:.06;margin-top:50px;direction:ltr}
.footer-dark .logo-word{fill:#9EA1CF}
.nav{display:flex;gap:6px;background:var(--surface);padding:6px;border-radius:var(--rr);box-shadow:var(--shadow-sm)}
.nav a{padding:9px 18px;border-radius:var(--rr);font-size:15px;color:var(--ink-2);transition:.2s}
.nav a:hover{background:var(--bg)}
.nav a.active{background:var(--solid);color:#fff}
.header-actions{display:flex;align-items:center;gap:10px}
.icon-btn{width:46px;height:46px;border-radius:var(--rr);background:var(--surface);display:grid;place-items:center;box-shadow:var(--shadow-sm);position:relative;transition:.2s}
.icon-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}
.icon-btn .badge{position:absolute;top:-2px;inset-inline-end:-2px;min-width:20px;height:20px;padding-inline:5px;border-radius:var(--rr);background:var(--accent);color:#fff;font-size:11px;font-weight:600;display:grid;place-items:center;border:2px solid var(--bg)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:50px;padding-inline:24px;border-radius:var(--rr);font-weight:500;font-size:15px;transition:.25s;white-space:nowrap}
.btn-primary{background:var(--primary);color:#fff;box-shadow:0 10px 24px -10px rgba(47,53,224,.7)}
.btn-primary:hover{background:var(--primary-2);transform:translateY(-2px)}
.btn-dark{background:var(--solid);color:#fff}
.btn-dark:hover{background:#1f2343;transform:translateY(-2px)}
.btn-ghost{background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.35);backdrop-filter:blur(8px)}
.btn-ghost:hover{background:rgba(255,255,255,.24)}
.btn-white{background:#fff;color:var(--ink)}
.btn .arrow{width:34px;height:34px;border-radius:var(--rr);background:rgba(255,255,255,.18);display:grid;place-items:center;margin-inline-end:-14px}
.btn-white .arrow{background:var(--primary-soft);color:var(--primary)}
.menu-btn{display:none}

/* ===== Hero ===== */
.hero{padding-top:18px}
.hero-card{position:relative;border-radius:var(--radius-xl);overflow:hidden;min-height:730px;background:#1a1d3d;box-shadow:var(--shadow-lg);isolation:isolate}
.hero-card::before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(270deg,rgba(13,15,43,.92) 0%,rgba(13,15,43,.70) 38%,rgba(13,15,43,.15) 70%,rgba(13,15,43,.05) 100%),linear-gradient(0deg,rgba(13,15,43,.55) 0%,transparent 45%)}
.hero-search{position:absolute;top:22px;inset-inline:22px;display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.88);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);padding:8px;border-radius:var(--rr);box-shadow:var(--shadow-md)}
.seg{display:flex;background:var(--bg);border-radius:var(--rr);padding:4px}
.seg button{padding:10px 18px;border-radius:var(--rr);font-size:14px;color:var(--muted);transition:.2s}
.seg button.on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm);font-weight:500}
.field{flex:1;display:flex;align-items:center;gap:10px;padding:4px 16px;border-inline-start:1px solid var(--line);min-width:0}
.field .icon{color:var(--muted)}
.field label{display:block;font-size:11px;color:var(--muted);line-height:1.2}
.field select{border:0;background:transparent;font-weight:600;font-size:14px;outline:none;width:100%;cursor:pointer;padding:2px 0;appearance:none;-webkit-appearance:none}
.field-inner{flex:1;min-width:0}
.search-go{width:52px;height:52px;border-radius:var(--rr);background:var(--primary);color:#fff;display:grid;place-items:center;flex-shrink:0;transition:.2s}
.search-go:hover{background:var(--primary-2);transform:scale(1.05)}

.hero-content{position:relative;padding:120px 56px 230px;max-width:640px;color:#fff}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:13px;padding:7px 14px;border-radius:var(--rr);background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(8px)}
.eyebrow .dot{width:8px;height:8px;border-radius:var(--rr);background:#4BE38A;box-shadow:0 0 0 4px rgba(75,227,138,.25)}
.hero h1{font-size:clamp(38px,5.4vw,68px);line-height:1.12;font-weight:700;letter-spacing:-1px;margin:22px 0 18px}
.hero h1 .hl{background:linear-gradient(90deg,#A9ADFF,#fff);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero p.lead{font-size:17px;color:#D4D6EE;max-width:500px;font-weight:300}
.hero-ctas{display:flex;gap:12px;margin-top:32px;flex-wrap:wrap}

.hero-stats{position:absolute;bottom:22px;inset-inline-start:22px;background:var(--surface);color:var(--ink);border-radius:var(--radius-lg);padding:22px 24px;width:340px;box-shadow:var(--shadow-md)}
.hero-stats h4{font-size:16px;font-weight:600}
.hero-stats p{font-size:13px;color:var(--muted);margin-top:4px}
.hero-stats .row{display:flex;align-items:center;justify-content:space-between;margin-top:16px}
.hero-stats .big{font-size:42px;font-weight:700;line-height:1;letter-spacing:-1px}
.hero-stats .big small{display:block;font-size:12px;font-weight:400;color:var(--muted);letter-spacing:0;margin-top:6px}
.thumbs{display:flex}
.thumbs span{width:44px;height:44px;border-radius:var(--rr);border:3px solid #fff;margin-inline-start:-12px;background:var(--primary-soft) center/cover}
.thumbs span:first-child{margin-inline-start:0}
.thumbs .more{display:grid;place-items:center;background:var(--bg);font-size:12px;font-weight:600}

.hero-feature{position:absolute;bottom:22px;inset-inline-end:22px;width:330px;border-radius:var(--radius-lg);padding:20px;color:#fff;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.28);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
.hero-feature .top{display:flex;justify-content:space-between;align-items:flex-start}
.hero-feature .tag{font-size:11px;padding:4px 10px;border-radius:var(--rr);background:rgba(255,255,255,.2)}
.hero-feature h4{font-size:19px;font-weight:600;margin-top:10px}
.hero-feature .sub{font-size:13px;color:#DADCF2}
.hero-feature .go{width:46px;height:46px;border-radius:var(--rr);background:#fff;color:var(--ink);display:grid;place-items:center;transition:.2s}
.hero-feature .go:hover{transform:rotate(-12deg) scale(1.06)}
.hero-feature .specs{display:flex;gap:14px;margin-top:14px;font-size:12.5px;color:#E3E5F7;flex-wrap:wrap}
.hero-feature .specs span{display:inline-flex;align-items:center;gap:6px}
.hero-feature .price-row{display:flex;justify-content:space-between;align-items:end;margin-top:14px;padding-top:14px;border-top:1px solid rgba(255,255,255,.2)}
.hero-feature .price{font-size:22px;font-weight:700}
.hero-feature .monthly{font-size:12px;color:#DADCF2;text-align:end}
.hero-feature .monthly b{display:block;font-size:15px;color:#fff}

/* ===== Section heads ===== */
section{padding-block:84px 0}
.sec-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:34px;flex-wrap:wrap}
.sec-head .kicker{font-size:13px;color:var(--primary);font-weight:600;display:inline-flex;align-items:center;gap:8px}
.sec-head .kicker::before{content:"";width:22px;height:2px;background:var(--primary);border-radius:2px}
.sec-head h2{font-size:clamp(28px,3.4vw,40px);font-weight:700;letter-spacing:-.5px;line-height:1.25;margin-top:8px}
.sec-head p{color:var(--muted);margin-top:8px;max-width:520px}
.link-more{display:inline-flex;align-items:center;gap:8px;font-weight:500;color:var(--primary);padding:10px 18px;border-radius:var(--rr);background:var(--primary-soft);transition:.2s}
.link-more:hover{background:var(--primary);color:#fff}

/* ===== Brands ===== */
.brands{display:grid;grid-template-columns:repeat(8,1fr);gap:14px}
.brand{background:var(--surface);border-radius:var(--radius-md);padding:20px 10px;text-align:center;border:1px solid transparent;transition:.25s}
.brand:hover{border-color:var(--primary);transform:translateY(-4px);box-shadow:var(--shadow-md)}
.brand .mark{width:62px;height:62px;border-radius:var(--rr);margin:0 auto 12px;background:var(--bg);display:grid;place-items:center;font-weight:700;font-size:17px;color:var(--ink-2);letter-spacing:-.5px;font-family:system-ui,sans-serif}
.brand:hover .mark{background:var(--primary-soft);color:var(--primary)}
.brand b{display:block;font-weight:500;font-size:15px}
.brand small{color:var(--muted);font-size:12px}

/* ===== Deal ===== */
.deal{display:flex;align-items:center;gap:28px;padding:16px;padding-inline-end:28px;border-radius:var(--radius-lg);color:#fff;background:linear-gradient(100deg,#1C22B8 0%,var(--primary) 50%,#4C52FF 100%);box-shadow:0 20px 40px -20px rgba(47,53,224,.7);position:relative;overflow:hidden}
.deal-img{width:200px;aspect-ratio:4/3;border-radius:18px;overflow:hidden;background:#fff;flex-shrink:0}
.deal-img img{width:100%;height:100%;object-fit:cover}
.deal-info{flex:1;min-width:0;position:relative;z-index:1}
.deal-tag{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#FFD9BD;font-weight:500}
.deal-tag .icon{fill:#FFB27A;stroke:#FFB27A}
.deal-info h3{font-size:22px;font-weight:600;margin-top:4px}
.deal-price{font-size:26px;font-weight:700;margin-top:4px}
.deal-price small{font-size:14px;font-weight:400}
.deal-price s{font-size:15px;font-weight:400;color:#B9BCF5;margin-inline-start:8px}
.countdown{display:flex;gap:8px;position:relative;z-index:1}
.countdown div{width:72px;padding:10px 0;border-radius:14px;background:rgba(13,15,43,.35);text-align:center;border:1px solid rgba(255,255,255,.15)}
.countdown b{display:block;font-size:26px;font-weight:700;line-height:1.1;font-variant-numeric:tabular-nums}
.countdown span{font-size:11px;color:#C9CBF5}
.btn-accent{background:var(--accent);color:#fff;position:relative;z-index:1}
.btn-accent:hover{background:#ff8b36;transform:translateY(-2px)}
@media (max-width:960px){
  .deal{flex-wrap:wrap;padding:16px}
  .deal-img{width:140px}
  .countdown{width:100%;justify-content:center}
  .countdown div{flex:1}
  .deal .btn{width:100%}
}

/* ===== Categories ===== */
.cats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.cat{position:relative;border-radius:var(--radius-lg);padding:24px;min-height:250px;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;transition:.3s}
.cat:hover{transform:translateY(-6px);box-shadow:var(--shadow-md)}
.cat h3{font-size:21px;font-weight:600}
.cat p{font-size:13px;color:var(--ink-2);opacity:.75}
.cat .img{position:absolute;inset-inline-start:-30px;bottom:18px;width:78%;height:120px;border-radius:18px;background:center/cover no-repeat;transition:.4s;box-shadow:var(--shadow-md)}
.cat:hover .img{transform:translateX(-10px) scale(1.03)}
.cat .go{position:relative;align-self:flex-start;width:44px;height:44px;border-radius:var(--rr);display:grid;place-items:center;color:#fff;margin-top:auto;margin-inline-start:auto;z-index:2}
.cat-1{background:#E2F3E9}.cat-1 .go{background:#12A150}
.cat-2{background:#F6EEDC}.cat-2 .go{background:#E9A21B}
.cat-3{background:#E9E6FB}.cat-3 .go{background:#6E4FE0}
.cat-4{background:#E1EAFB}.cat-4 .go{background:#2F6BE0}
.cat .count{display:inline-block;font-size:12px;font-weight:600;background:rgba(255,255,255,.75);padding:4px 10px;border-radius:var(--rr);margin-top:10px}

/* ===== Cars ===== */
.tabs{display:flex;gap:8px;background:var(--surface);padding:6px;border-radius:var(--rr);box-shadow:var(--shadow-sm);flex-wrap:wrap}
.tabs button{padding:9px 18px;border-radius:var(--rr);font-size:14px;color:var(--muted);transition:.2s}
.tabs button.on{background:var(--solid);color:#fff}
.cars{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.car{background:var(--surface);border-radius:var(--radius-lg);padding:10px;transition:.3s;display:flex;flex-direction:column;animation:fadeUp .5s backwards;position:relative;transition:transform .2s ease-out,box-shadow .3s}
.car:hover{box-shadow:var(--shadow-lg);transform:translateY(-6px)}
.car-media{position:relative;border-radius:18px;overflow:hidden;aspect-ratio:4/3;background:linear-gradient(135deg,#E9EAF4,#D8DAEA)}
.car-media img{width:100%;height:100%;object-fit:cover;transition:.6s}
.car:hover .car-media img{transform:scale(1.07)}
.car-media .badges{position:absolute;top:12px;inset-inline-start:12px;display:flex;gap:6px}
.chip{font-size:11.5px;font-weight:600;padding:5px 10px;border-radius:var(--rr);background:rgba(255,255,255,.92);backdrop-filter:blur(6px)}
.chip.new{background:var(--green);color:#fff}
.chip.hot{background:var(--accent);color:#fff}
.chip.ev{background:var(--primary);color:#fff}
.fav{position:absolute;top:10px;inset-inline-end:10px;width:38px;height:38px;border-radius:var(--rr);background:rgba(255,255,255,.92);display:grid;place-items:center;transition:.2s}
.fav:hover{transform:scale(1.1)}
.fav.on{color:#E5243B}.fav.on .icon{fill:#E5243B}
.car-body{padding:16px 10px 8px;display:flex;flex-direction:column;flex:1}
.car-meta{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--muted)}
.car-meta .sep{width:4px;height:4px;border-radius:var(--rr);background:#C5C8D8}
.car h3{font-size:17px;font-weight:600;margin-top:6px;line-height:1.4}
.car-specs{display:flex;justify-content:space-between;margin-top:14px;padding:12px 0;border-block:1px dashed var(--line);font-size:12.5px;color:var(--ink-2)}
.car-specs span{display:inline-flex;align-items:center;gap:6px}
.car-specs .icon{width:16px;height:16px;color:var(--primary)}
.car-foot{display:flex;align-items:end;justify-content:space-between;margin-top:14px;gap:10px}
.car-price{font-size:20px;font-weight:700;letter-spacing:-.3px}
.car-price small{font-size:12px;font-weight:500;color:var(--muted)}
.car-monthly{font-size:12px;color:var(--muted)}
.car-monthly b{color:var(--primary);font-weight:600}
.car-go{width:44px;height:44px;border-radius:var(--rr);background:var(--solid);color:#fff;display:grid;place-items:center;flex-shrink:0;transition:.25s}
.car:hover .car-go{background:var(--primary);transform:rotate(-12deg)}
@keyframes fadeUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}

/* ===== Calculator ===== */
.calc-wrap{background:var(--surface);border-radius:var(--radius-xl);padding:18px;display:grid;grid-template-columns:1.25fr 1fr;gap:18px;box-shadow:var(--shadow-sm)}
.calc-form{padding:26px 26px 18px}
.calc-form h2{font-size:clamp(26px,3vw,34px);font-weight:700;letter-spacing:-.5px;line-height:1.3}
.calc-form > p{color:var(--muted);margin-top:8px}
.ctl{margin-top:26px}
.ctl-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.ctl-head label{font-weight:500;font-size:15px}
.ctl-val{display:flex;align-items:center;gap:6px;background:var(--bg);border-radius:12px;padding:6px 12px;font-weight:600}
.ctl-val input{width:110px;border:0;background:transparent;outline:none;font-weight:600;text-align:center;font-size:15px}
.ctl-val small{color:var(--muted);font-weight:400}
input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:8px;border-radius:var(--rr);background:linear-gradient(to left,var(--primary) var(--p,50%),var(--line) var(--p,50%));outline:none}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;border-radius:var(--rr);background:#fff;border:6px solid var(--primary);box-shadow:0 4px 10px rgba(47,53,224,.35);cursor:pointer}
input[type=range]::-moz-range-thumb{width:14px;height:14px;border-radius:var(--rr);background:#fff;border:6px solid var(--primary);cursor:pointer}
.range-scale{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin-top:8px}
.years{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}
.years button:disabled{opacity:.35;cursor:not-allowed;text-decoration:line-through}
.years button:disabled:hover{border-color:transparent}
.dp-vals{display:flex;gap:6px;align-items:center}
.dp-vals .js-down-amt{width:96px}
.dp-pct input{width:44px!important}
.dp-warn{background:#FFF6E6;color:#9A5B00;padding:8px 12px;border-radius:var(--rr-sm,8px)}
.dp-warn b{color:#9A5B00}
.ctl-hint{font-size:12.5px;color:var(--muted);margin-top:8px}
.ctl-hint b{color:var(--ink)}
.ctl-head .opt{font-size:12px;color:var(--muted);font-weight:400}
.elig{margin-top:12px;padding:12px 14px;border-radius:var(--rr);background:var(--bg);font-size:13px;--c:var(--primary)}
.elig.ok{--c:#12A150}.elig.mid{--c:#D98A0F}.elig.bad{--c:#E5243B}
.elig-top{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
.elig-top b{color:var(--c)}
.elig-bar{height:6px;border-radius:6px;background:var(--line);margin:8px 0 6px;overflow:hidden}
.elig-bar i{display:block;height:100%;background:var(--c);border-radius:6px;transition:width .4s}
.elig small{color:var(--c);font-weight:500}
.years button{height:46px;border-radius:14px;background:var(--bg);font-weight:600;transition:.2s;border:1.5px solid transparent}
.years button:hover{border-color:var(--primary)}
.years button.on{background:var(--primary);color:#fff;box-shadow:0 8px 18px -8px rgba(47,53,224,.7)}
.calc-result{background:radial-gradient(120% 90% at 100% 0%,#3238C9 0%,var(--dark) 55%);color:#fff;border-radius:var(--radius-lg);padding:32px;display:flex;flex-direction:column;position:relative;overflow:hidden}
.calc-result>*:not(.calc-mark){position:relative}
.calc-result .lbl{color:#B7BAE6;font-size:14px}
.calc-result .monthly{font-size:clamp(40px,4.6vw,56px);font-weight:700;letter-spacing:-1.5px;line-height:1.1;margin-top:8px}
.calc-result .monthly small{font-size:18px;font-weight:400;color:#B7BAE6;letter-spacing:0}
.split{height:12px;border-radius:var(--rr);background:rgba(255,255,255,.12);overflow:hidden;display:flex;margin-top:26px}
.split .a{background:linear-gradient(90deg,#8E93FF,#C6C8FF);transition:width .4s}
.split .b{background:var(--accent);transition:width .4s}
.legend{display:flex;gap:18px;font-size:12.5px;color:#C9CBEA;margin-top:10px}
.legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-inline-end:6px;vertical-align:middle}
.res-list{margin-top:24px;display:grid;gap:2px}
.res-list div{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.1);font-size:15px}
.res-list div span{color:#C9CBEA}
.res-list div b{font-weight:600}
.calc-result .btn{margin-top:auto;position:relative;z-index:1}
.calc-note{font-size:12px;color:#9EA1CF;margin-top:14px;position:relative;z-index:1}
.calc-cta{margin-top:26px}

/* ===== Why ===== */
.why{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.why-item{background:var(--surface);border-radius:var(--radius-lg);padding:28px 24px;transition:.25s}
.why-item:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}
.why-item .ic{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;background:var(--primary-soft);color:var(--primary);margin-bottom:20px}
.why-item .ic .icon{width:26px;height:26px}
.why-item h4{font-size:18px;font-weight:600}
.why-item p{color:var(--muted);font-size:14px;margin-top:6px}

/* ===== Steps + testimonial ===== */
.steps-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.steps{background:var(--surface);border-radius:var(--radius-xl);padding:34px}
.step{display:flex;gap:18px;padding:18px 0;border-bottom:1px solid var(--line)}
.step:last-child{border-bottom:0}
.step .n{width:46px;height:46px;border-radius:14px;background:var(--solid);color:#fff;display:grid;place-items:center;font-weight:700;flex-shrink:0}
.step h4{font-weight:600;font-size:17px}
.step p{color:var(--muted);font-size:14px;margin-top:2px}
.quote{border-radius:var(--radius-xl);padding:34px;color:#fff;background:linear-gradient(160deg,rgba(13,15,43,.2),rgba(13,15,43,.9)),url("https://images.unsplash.com/photo-1492144534655-ae79c964c9d7?auto=format&fit=crop&w=1200&q=80") center/cover,#1a1d3d;display:flex;flex-direction:column;justify-content:flex-end;min-height:440px}
.stars{display:flex;gap:3px;color:#FFC542}
.stars .icon{fill:#FFC542;width:18px;height:18px}
.quote blockquote{font-size:21px;font-weight:500;line-height:1.6;margin-top:14px}
.quote .who{display:flex;align-items:center;gap:12px;margin-top:22px}
.quote .av{width:48px;height:48px;border-radius:var(--rr);background:var(--primary-2);display:grid;place-items:center;font-weight:700}
.quote .who small{display:block;color:#C9CBEA;font-size:13px}

/* ===== CTA band ===== */
.cta-band{border-radius:var(--radius-xl);background:var(--dark);color:#fff;padding:44px 48px;display:grid;grid-template-columns:1.2fr 1fr;gap:30px;align-items:center;position:relative;overflow:hidden}
.cta-band h2{font-size:clamp(26px,3vw,36px);font-weight:700;letter-spacing:-.5px;position:relative}
.cta-band p{color:#B7BAE6;margin-top:8px;position:relative}
.sub-form{display:flex;gap:8px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);padding:7px;border-radius:var(--rr);position:relative}
.sub-form input{flex:1;background:transparent;border:0;outline:none;padding-inline:18px;color:#fff;min-width:0}
.sub-form input::placeholder{color:#9EA1CF}

/* ===== Footer ===== */
footer{margin-top:84px;background:var(--surface);border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding:60px 0 28px}
.foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr 1.3fr;gap:30px}
.foot-grid h5{font-size:15px;font-weight:600;margin-bottom:16px}
.foot-grid ul{list-style:none;display:grid;gap:10px}
.foot-grid ul a{color:var(--muted);font-size:14px;transition:.2s}
.foot-grid ul a:hover{color:var(--primary)}
.foot-about p{color:var(--muted);font-size:14px;margin-top:14px;max-width:300px}
.socials{display:flex;gap:8px;margin-top:20px}
.socials a{width:40px;height:40px;border-radius:var(--rr);background:var(--bg);display:grid;place-items:center;transition:.2s}
.socials a:hover{background:var(--primary);color:#fff}
.contact-item{display:flex;gap:10px;align-items:center;color:var(--muted);font-size:14px;margin-bottom:12px}
.contact-item .icon{color:var(--primary)}
.foot-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:44px;padding-top:24px;border-top:1px solid var(--line);font-size:13px;color:var(--muted);flex-wrap:wrap}

/* ===== Mobile bottom nav ===== */
.bottom-nav{display:none}


/* =====================================================
   حركات وتفاعلات
   ===================================================== */
.hero-bg{position:absolute;inset:-40px;z-index:-3;background:url("https://images.unsplash.com/photo-1503376780353-7e6692767b70?auto=format&fit=crop&w=2000&q=80") center/cover no-repeat;transform:scale(1.18);transition:transform 2.4s cubic-bezier(.2,.7,.2,1),translate .8s ease-out;translate:calc(var(--px,0)*-36px) calc(var(--py,0)*-24px)}
.ready .hero-bg{transform:scale(1.02)}
.hero-mark{translate:calc(var(--px,0)*60px) calc(var(--py,0)*40px);transition:translate .9s ease-out}
.hero-stats{translate:calc(var(--px,0)*14px) calc(var(--py,0)*10px);transition:translate .7s ease-out,opacity .9s,transform .9s cubic-bezier(.2,.8,.2,1),filter .9s}
.hero-feature{translate:calc(var(--px,0)*-20px) calc(var(--py,0)*-14px);transition:translate .7s ease-out,opacity .9s,transform .9s cubic-bezier(.2,.8,.2,1),filter .9s}
.hero-card::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(105deg,transparent 35%,rgba(170,175,255,.16) 47%,rgba(255,255,255,.22) 50%,transparent 62%);transform:translateX(110%)}
.ready .hero-card::after{animation:sweep 2.4s .5s cubic-bezier(.6,0,.2,1) forwards}
@keyframes sweep{to{transform:translateX(-110%)}}
.hero h1 .w{display:inline-block}
.hero h1 .hl{background:linear-gradient(90deg,#A9ADFF 0%,#fff 25%,#A9ADFF 50%,#fff 75%,#A9ADFF 100%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shine 6s linear infinite}
@keyframes shine{to{background-position:-200% 0}}
.js .hero-in{opacity:0;transform:translateY(34px);filter:blur(8px);transition:opacity .9s,transform .9s cubic-bezier(.2,.8,.2,1),filter .9s,translate .7s ease-out;transition-delay:var(--d,0s)}
.js .hero-search.hero-in{transform:translateY(-40px)}
.ready .hero-in{opacity:1!important;transform:none!important;filter:none!important}

/* scroll road */
.road{overflow:visible;position:absolute;bottom:-1px;inset-inline:0;height:3px;z-index:2;pointer-events:none;opacity:0;transition:opacity .3s}
.road.on{opacity:1}
.road i{position:absolute;top:0;inset-inline-start:0;height:100%;width:calc(var(--sp,0)*100%);background:linear-gradient(270deg,var(--primary),#8E93FF,var(--accent))}
.road-car{position:absolute;top:-8px;inset-inline-start:calc(var(--sp,0)*(100% - 26px));transform:scaleX(-1);width:26px;height:18px;border-radius:7px;background:var(--solid);color:#fff;display:grid;place-items:center;opacity:0;transition:opacity .3s;box-shadow:0 4px 10px rgba(14,17,38,.3)}
.road-car .icon{width:15px;height:15px}
.road.on .road-car{opacity:1}
.road-car::after{content:"";position:absolute;top:50%;right:100%;width:18px;height:2px;margin-top:-1px;background:linear-gradient(90deg,transparent,rgba(47,53,224,.6));border-radius:2px;opacity:var(--spd,0)}

/* cursor */
.cur-ring,.cur-dot{display:none}
@media (hover:hover) and (pointer:fine){
  .cur-dot,.cur-ring{display:block;position:fixed;top:0;left:0;z-index:998;pointer-events:none;border-radius:var(--rr)}
  .cur-dot{width:6px;height:6px;margin:-3px 0 0 -3px;background:var(--primary)}
  .cur-ring{width:38px;height:38px;margin:-19px 0 0 -19px;border:1.5px solid rgba(47,53,224,.45);display:grid;place-items:center;transition:width .3s,height .3s,margin .3s,background .3s,border-color .3s,opacity .3s}
  .cur-ring span{font-size:12px;font-weight:600;color:#fff;opacity:0;transition:.2s}
  .cur-ring.big{width:60px;height:60px;margin:-30px 0 0 -30px;border-color:rgba(47,53,224,.25);background:rgba(47,53,224,.06)}
  .cur-ring.view{width:84px;height:84px;margin:-42px 0 0 -42px;background:var(--primary);border-color:var(--primary)}
  .cur-ring.view span{opacity:1}
  .cur-ring.hide,.cur-dot.hide{opacity:0}
}

/* reveal on scroll */
.js .rv{opacity:0;transform:translateY(46px) scale(.98);filter:blur(6px);transition:opacity .9s cubic-bezier(.2,.8,.2,1),transform .9s cubic-bezier(.2,.8,.2,1),filter .9s;transition-delay:var(--rd,0ms)}
.js .rv.in{opacity:1;transform:none;filter:none}
.sec-head .kicker::before{transition:width .8s .35s cubic-bezier(.2,.8,.2,1)}
.js .sec-head.rv:not(.in) .kicker::before{width:0}

/* brands marquee */
.brands{display:block!important;overflow:hidden;padding-block:12px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent);mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent)}
.marq-track{display:flex;gap:14px;width:max-content;animation:marq 38s linear infinite}
.brands:hover .marq-track{animation-play-state:paused}
.marq-track .brand{width:160px;flex-shrink:0}
@keyframes marq{to{transform:translateX(calc(50% + 7px))}}
@media (max-width:640px){.marq-track .brand{width:112px}.marq-track{animation-duration:26s}}

/* spotlight */
.spot{position:relative;overflow:hidden}
.spot::before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(260px circle at var(--mx,50%) var(--my,50%),rgba(47,53,224,.13),transparent 60%);opacity:0;transition:opacity .35s;pointer-events:none}
.spot:hover::before{opacity:1}

/* car tilt glare */
.car::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(380px circle at var(--mx,50%) var(--my,50%),rgba(255,255,255,.55),transparent 45%);mix-blend-mode:soft-light;opacity:0;transition:opacity .3s}
.car:hover::after{opacity:1}
.car-media::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.4) 48%,transparent 60%);transform:translateX(120%);pointer-events:none}
.car:hover .car-media::after{transition:transform .9s cubic-bezier(.2,.8,.2,1);transform:translateX(-120%)}

/* magnetic */
.mag{transition:translate .35s cubic-bezier(.2,.8,.2,1),transform .25s,background .25s,box-shadow .25s}

/* heart burst */
.fav{overflow:visible}
.burst{position:absolute;inset:50% auto auto 50%;width:6px;height:6px;margin:-3px;border-radius:var(--rr);background:#E5243B;pointer-events:none;animation:burst .7s cubic-bezier(.2,.8,.2,1) forwards}
@keyframes burst{to{transform:translate(var(--bx),var(--by)) scale(0);opacity:0}}
.fav.on .icon{animation:pop .45s cubic-bezier(.3,1.8,.5,1)}
@keyframes pop{0%{transform:scale(.4)}100%{transform:scale(1)}}

/* countdown flip */
.countdown div{perspective:300px}
.countdown b.flip{animation:flip .55s cubic-bezier(.3,1.4,.5,1)}
@keyframes flip{0%{transform:rotateX(90deg);opacity:0}100%{transform:none;opacity:1}}

/* gauge */
.res-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;position:relative}
.gauge{width:170px;flex-shrink:0;margin-top:-6px}
.gauge svg{width:100%;height:auto;overflow:visible}
.g-track{fill:none;stroke:rgba(255,255,255,.1);stroke-width:10;stroke-linecap:round}
.g-fill{fill:none;stroke:url(#gGrad);stroke:#8E93FF;stroke-width:10;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100;transition:stroke-dashoffset .9s cubic-bezier(.34,1.4,.64,1);filter:drop-shadow(0 0 6px rgba(142,147,255,.7))}
#gTicks line{stroke:rgba(255,255,255,.22);stroke-width:1.2}
#gTicks line.big{stroke:rgba(255,255,255,.55);stroke-width:2}
.g-needle{fill:var(--accent);transform-origin:100px 104px;transform-box:view-box;transform:rotate(-90deg);transition:transform 1s cubic-bezier(.34,1.5,.64,1);filter:drop-shadow(0 2px 6px rgba(255,122,26,.6))}
.g-hub{fill:var(--dark)}
.g-cap{display:flex;justify-content:space-between;font-size:11px;color:#9EA1CF;margin-top:2px;direction:ltr;padding-inline:8px}
@media (max-width:640px){.res-top{flex-direction:column-reverse;align-items:stretch}.gauge{width:190px;margin-inline:auto}}

/* footer wordmark draw */
.foot-giant{opacity:1!important;fill:rgba(14,17,38,0);stroke:rgba(14,17,38,.3);stroke-width:.45;stroke-dasharray:320;stroke-dashoffset:320;transition:stroke-dashoffset 2.6s cubic-bezier(.5,0,.2,1),fill 1.2s 1.9s,stroke 1s 2s}
.foot-giant.draw{stroke-dashoffset:0;fill:rgba(14,17,38,.065);stroke:rgba(14,17,38,.08)}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0s!important}
  .cur-ring,.cur-dot{display:none!important}
}

/* ===== Responsive ===== */
@media (max-width:1180px){
  .cars{grid-template-columns:repeat(3,1fr)}
  .brands{grid-template-columns:repeat(4,1fr)}
  .hero-feature{display:none}
  .foot-grid{grid-template-columns:1fr 1fr 1fr}
  .foot-about{grid-column:1/-1}
}
@media (max-width:960px){
  .nav{display:none}
  .menu-btn{display:grid}
  .hide-md{display:none!important}
  .cats{grid-template-columns:repeat(2,1fr)}
  .cars{grid-template-columns:repeat(2,1fr)}
  .calc-wrap,.steps-grid,.cta-band{grid-template-columns:1fr}
  .why{grid-template-columns:repeat(2,1fr)}
  .hero-search{flex-wrap:wrap;border-radius:26px}
  .hero-search .seg{width:100%}
  .hero-search .seg button{flex:1}
  .field{flex:1 1 40%;border:0;background:var(--bg);border-radius:16px;padding:8px 14px}
  .search-go{width:100%;border-radius:16px;height:50px}
  .hero-content{padding:330px 28px 210px}
  .hero-stats{inset-inline:22px;width:auto}
}
@media (max-width:640px){
  .container{padding-inline:16px}
  .topstrip .container{gap:16px;font-size:12px}
  .topstrip span:nth-child(n+3){display:none}
  .header .container{height:66px}
  .logo-mark{width:42px;height:42px;border-radius:14px}
  .logo-mark svg{width:26px;height:23px}
  .logo-text b{font-size:17px}
  .logo-word{width:92px;height:8px}
  .hero-mark{width:380px;height:340px;top:62%}
  .hero-card{border-radius:28px}
  .hero-search{top:12px;inset-inline:12px}
  .field{flex:1 1 100%}
  .hero-content{padding:355px 20px 230px}
  .hero-stats{inset-inline:12px;bottom:12px;padding:18px}
  .hero-stats .big{font-size:34px}
  .brands{grid-template-columns:repeat(4,1fr);gap:8px}
  .brand{padding:14px 4px}
  .brand .mark{width:48px;height:48px;font-size:14px}
  .brand small{display:none}
  .brand b{font-size:13px}
  .cats{grid-template-columns:1fr 1fr;gap:12px}
  .cat{min-height:210px;padding:18px}
  .cat h3{font-size:17px}
  .cars{grid-template-columns:1fr}
  .why{grid-template-columns:1fr}
  .years{grid-template-columns:repeat(5,1fr)}
  .calc-form{padding:14px 8px}
  .calc-result{padding:24px}
  .cta-band{padding:30px 22px}
  .foot-grid{grid-template-columns:1fr 1fr}
  section{padding-top:60px}
  body{padding-bottom:84px}
  .bottom-nav{display:flex;position:fixed;bottom:12px;inset-inline:12px;z-index:60;background:rgba(255,255,255,.94);backdrop-filter:blur(16px);border-radius:24px;box-shadow:var(--shadow-lg);padding:8px;justify-content:space-around}
  .bottom-nav a{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:11px;color:var(--muted);padding:6px 10px;border-radius:14px}
  .bottom-nav a.on{color:var(--primary);background:var(--primary-soft)}
}

/* =========================================================
   مكوّنات مشتركة إضافية
   ========================================================= */
.kicker-line{font-size:13px;color:var(--primary);font-weight:600;display:inline-flex;align-items:center;gap:8px}
.kicker-line::before{content:"";width:22px;height:2px;background:var(--primary);border-radius:2px}
.calc-form h2{margin-top:6px}
.ctl-val b{font-size:18px}
.btn-outline{background:var(--surface);color:var(--ink);border:1.5px solid var(--line)}
.btn-outline:hover{border-color:var(--ink)}
.btn-wa{background:#1FA855;color:#fff;box-shadow:0 10px 24px -12px rgba(31,168,85,.8)}
.btn-wa:hover{background:#17964a;transform:translateY(-2px)}
.btn[disabled]{opacity:.55;pointer-events:none}
#favCount.bump{animation:pop .45s cubic-bezier(.3,1.8,.5,1)}
.chip.gcc{background:var(--primary-soft);color:var(--primary)}
.car-price s{font-size:13px;font-weight:400;color:var(--muted);margin-inline-start:4px}
.car-desc{display:none;font-size:13px;color:var(--muted);margin-top:4px}
.car-media.noimg,.g-slide.noimg{background:linear-gradient(135deg,#E9EAF4,#D8DAEA)}
.car-media.noimg::before,.g-slide.noimg::before{content:"";position:absolute;inset:0;margin:auto;width:34%;height:40%;opacity:.25;background:var(--solid);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 17H3v-5l2-5h14l2 5v5h-2'/%3E%3Cpath d='M3 12h18'/%3E%3Ccircle cx='7.5' cy='17' r='2'/%3E%3Ccircle cx='16.5' cy='17' r='2'/%3E%3Cpath d='M9.5 17h5'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 17H3v-5l2-5h14l2 5v5h-2'/%3E%3Cpath d='M3 12h18'/%3E%3Ccircle cx='7.5' cy='17' r='2'/%3E%3Ccircle cx='16.5' cy='17' r='2'/%3E%3Cpath d='M9.5 17h5'/%3E%3C/svg%3E") center/contain no-repeat}
.car-media > a{display:block;width:100%;height:100%}

.toast{position:fixed;bottom:28px;left:50%;z-index:1000;display:flex;align-items:center;gap:10px;background:var(--solid);color:#fff;padding:12px 20px;border-radius:var(--rr);font-size:14px;box-shadow:var(--shadow-lg);transform:translate(-50%,30px);opacity:0;pointer-events:none;transition:.35s cubic-bezier(.2,.8,.2,1)}
.toast .icon{color:#4BE38A}
.toast.show{transform:translate(-50%,0);opacity:1}

.crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;color:#B7BAE6}
.crumbs a:hover{color:#fff}
.crumbs b{color:#fff;font-weight:500}
.crumbs-dark{color:var(--muted);padding-block:18px 14px}
.crumbs-dark a:hover{color:var(--primary)}
.crumbs-dark b{color:var(--ink)}

/* modal */
.modal{position:fixed;inset:0;z-index:300;background:rgba(13,15,43,.55);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:grid;place-items:center;padding:16px;opacity:0;transition:opacity .3s}
.modal.open{opacity:1}
.modal-box{background:var(--surface);border-radius:var(--radius-lg);width:min(480px,100%);max-height:calc(100vh - 32px);overflow:auto;padding:24px;box-shadow:var(--shadow-lg);transform:translateY(30px) scale(.97);transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.modal.open .modal-box{transform:none}
.modal-wide{width:min(980px,100%)}
.modal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px}
.modal-head h3{font-size:21px;font-weight:700}
.modal-head small{color:var(--muted)}
.modal .icon-btn{box-shadow:none;background:var(--bg);font-size:16px;width:40px;height:40px}

/* =========================================================
   صفحة جميع السيارات
   ========================================================= */
.page-hero{padding-top:18px}
.ph-card{position:relative;overflow:hidden;isolation:isolate;border-radius:var(--radius-xl);padding:40px 48px 30px;color:#fff;background:radial-gradient(120% 140% at 0% 0%,#3238C9 0%,var(--dark) 55%);box-shadow:var(--shadow-lg)}
.ph-mark{position:absolute;z-index:-1;width:420px;height:377px;inset-inline-end:-80px;top:-60px;fill:#fff;opacity:.05;animation:slowSpin2 70s linear infinite}
@keyframes slowSpin2{to{transform:rotate(360deg)}}
.ph-card h1{font-size:clamp(30px,4vw,46px);font-weight:700;letter-spacing:-.5px;margin-top:12px}
.ph-card > p{color:#C9CBEA;margin-top:4px}
.ph-card > p b{color:#fff}
.ph-search{display:flex;align-items:center;gap:10px;margin-top:24px;background:#fff;color:var(--ink);border-radius:var(--rr);padding:7px;padding-inline-start:20px;max-width:640px;box-shadow:var(--shadow-md)}
.ph-search .icon{color:var(--muted)}
.ph-search input{flex:1;border:0;outline:none;background:transparent;font-size:15px;min-width:0}
.ph-search .btn{height:46px}
.type-chips{display:flex;gap:8px;margin-top:20px;flex-wrap:wrap}
.type-chips button{padding:9px 16px;border-radius:var(--rr);font-size:14px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);color:#E3E5F7;transition:.2s}
.type-chips button small{opacity:.6;margin-inline-start:4px}
.type-chips button:hover{background:rgba(255,255,255,.2)}
.type-chips button.on{background:#fff;color:var(--ink);border-color:#fff}

.listing{padding-top:32px}
.listing-grid{display:grid;grid-template-columns:300px 1fr;gap:24px;align-items:start}

/* filters */
.filters{position:sticky;top:96px;background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);max-height:calc(100vh - 112px);display:flex;flex-direction:column;overflow:hidden}
.f-head{display:flex;align-items:center;justify-content:space-between;padding:20px 22px 14px;border-bottom:1px solid var(--line)}
.f-head h3{font-size:17px;font-weight:600;display:flex;align-items:center;gap:8px}
.f-head h3 .icon{color:var(--primary)}
.f-reset{font-size:13px;color:var(--primary);font-weight:500}
.f-close{display:none}
.f-body{overflow:auto;padding:4px 22px 18px;scrollbar-width:thin}
.f-group{padding:18px 0;border-bottom:1px dashed var(--line)}
.f-group:last-child{border-bottom:0}
.f-group h4{font-size:14px;font-weight:600;margin-bottom:12px}
.f-title-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.f-title-row h4{margin:0}
.f-seg{display:flex}
.f-seg button{flex:1;padding:9px 6px;font-size:13px}
.mini-toggle{display:flex;background:var(--bg);border-radius:var(--rr);padding:3px}
.mini-toggle button{font-size:12px;padding:5px 10px;border-radius:var(--rr);color:var(--muted);transition:.2s}
.mini-toggle button.on{background:var(--solid);color:#fff}
.f-hint{font-size:12px;color:var(--muted);margin-top:10px}

.dual{position:relative;height:28px}
.dual-track{position:absolute;inset-inline:0;top:50%;height:6px;margin-top:-3px;border-radius:var(--rr);background:var(--line)}
.dual-track i{position:absolute;top:0;bottom:0;background:linear-gradient(90deg,var(--primary-2),var(--primary));border-radius:var(--rr)}
.dual input[type=range]{position:absolute;inset:0;width:100%;height:28px;background:none;pointer-events:none;margin:0}
.dual input[type=range]::-webkit-slider-thumb{pointer-events:auto;width:22px;height:22px;border-width:5px}
.dual input[type=range]::-moz-range-thumb{pointer-events:auto}
.dual input[type=range]::-moz-range-track{background:none}
.dual-vals{display:flex;gap:8px;margin-top:10px}
.dual-vals label{flex:1;background:var(--bg);border-radius:12px;padding:7px 12px;display:flex;flex-direction:column;font-size:13px;font-weight:600}
.dual-vals small{font-size:11px;color:var(--muted);font-weight:400}

.f-checks{display:grid;gap:4px}
.f-check{display:flex;align-items:center;gap:10px;padding:7px 8px;border-radius:10px;cursor:pointer;transition:.15s;font-size:14px}
.f-check:hover{background:var(--bg)}
.f-check input{position:absolute;opacity:0;pointer-events:none}
.f-check .box{width:20px;height:20px;border-radius:6px;border:1.8px solid #C5C8D8;display:grid;place-items:center;transition:.2s;flex-shrink:0}
.f-check input:checked + .box{background:var(--primary);border-color:var(--primary)}
.f-check input:checked + .box::after{content:"";width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg) translate(-1px,-1px)}
.f-check input:focus-visible + .box{outline:2px solid var(--primary);outline-offset:2px}
.f-check .lbl{flex:1}
.f-check small{color:var(--muted);font-size:12px;background:var(--bg);padding:1px 8px;border-radius:var(--rr)}
.f-pills{display:flex;flex-wrap:wrap;gap:6px}
.f-pills button{padding:8px 13px;border-radius:var(--rr);font-size:13px;background:var(--bg);border:1.5px solid transparent;transition:.2s}
.f-pills button:hover{border-color:var(--line)}
.f-pills button.on{background:var(--primary-soft);color:var(--primary);border-color:var(--primary);font-weight:500}
.f-row{display:flex;align-items:center;gap:8px}
.f-row select,.sort select{flex:1;height:42px;border-radius:12px;border:1.5px solid var(--line);background:var(--surface);padding-inline:12px;outline:none;cursor:pointer}
.f-row select:focus,.sort select:focus{border-color:var(--primary)}
.f-colors{display:flex;flex-wrap:wrap;gap:10px}
.f-colors button{width:32px;height:32px;border-radius:var(--rr);background:var(--c);box-shadow:inset 0 0 0 1px rgba(0,0,0,.12);position:relative;transition:.2s}
.f-colors button:hover{transform:scale(1.1)}
.f-colors button.on{box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--primary)}
.f-colors button.on::after{content:"";position:absolute;inset:0;margin:auto;width:6px;height:11px;border:solid #fff;border-width:0 2.5px 2.5px 0;transform:rotate(45deg) translate(-1px,-1px);filter:drop-shadow(0 0 2px rgba(0,0,0,.6))}
.f-foot{display:none}
.f-overlay{display:none}
.f-open{display:none}

/* toolbar */
.toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--surface);border-radius:var(--radius-md);padding:10px 10px 10px 10px;padding-inline-start:20px;box-shadow:var(--shadow-sm);flex-wrap:wrap}
.tb-start,.tb-end{display:flex;align-items:center;gap:12px}
.tb-count{color:var(--muted)}
.tb-count b{color:var(--ink);font-size:20px;display:inline-block;perspective:200px}
.tb-count b.flip{animation:flip .5s cubic-bezier(.3,1.4,.5,1)}
.sort{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted)}
.sort select{min-width:170px;color:var(--ink);font-size:14px}
.view-toggle{display:flex;background:var(--bg);border-radius:12px;padding:4px}
.view-toggle button{width:38px;height:34px;border-radius:9px;display:grid;place-items:center;color:var(--muted);transition:.2s}
.view-toggle button.on{background:var(--surface);color:var(--primary);box-shadow:var(--shadow-sm)}
.f-badge{min-width:20px;height:20px;border-radius:var(--rr);background:var(--accent);font-size:11px;display:inline-grid;place-items:center;padding-inline:5px}
.f-badge:empty{display:none}
.active-chips{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 4px}
.active-chips:empty{margin:10px 0 0}
.a-chip{display:inline-flex;align-items:center;gap:8px;padding:7px 12px 7px 10px;border-radius:var(--rr);background:var(--primary-soft);color:var(--primary);font-size:13px;font-weight:500;animation:fadeUp .3s backwards;transition:.2s}
.a-chip span{width:18px;height:18px;border-radius:var(--rr);background:rgba(47,53,224,.15);display:grid;place-items:center;font-size:10px}
.a-chip:hover{background:var(--primary);color:#fff}
.a-chip:hover span{background:rgba(255,255,255,.25)}
.a-chip.clear{background:transparent;color:var(--muted);text-decoration:underline}

.results .cars{margin-top:14px}
.cars-3{grid-template-columns:repeat(3,1fr)}
.cmp-toggle{position:absolute;bottom:10px;inset-inline-start:10px;cursor:pointer;z-index:2}
.cmp-toggle input{position:absolute;opacity:0}
.cmp-toggle span{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;padding:6px 11px;border-radius:var(--rr);background:rgba(255,255,255,.92);backdrop-filter:blur(6px);transition:.2s;opacity:0;transform:translateY(6px)}
.car:hover .cmp-toggle span,.cmp-toggle.on span,.cmp-toggle input:focus-visible + span{opacity:1;transform:none}
.cmp-toggle.on span{background:var(--primary);color:#fff}
@media (hover:none){.cmp-toggle span{opacity:1;transform:none}}

/* list view */
.cars.list{grid-template-columns:1fr}
.cars.list .car{flex-direction:row;gap:6px}
.cars.list .car-media{width:340px;flex-shrink:0;aspect-ratio:4/3}
.cars.list .car-body{padding:14px 18px 10px}
.cars.list .car h3{font-size:20px}
.cars.list .car-desc{display:block}
.cars.list .car-specs{justify-content:flex-start;gap:26px}
.cars.list .car-foot{margin-top:auto}

.empty{text-align:center;padding:60px 20px;background:var(--surface);border-radius:var(--radius-lg);margin-top:14px}
.empty-ic{width:84px;height:84px;margin:0 auto 18px;border-radius:var(--rr);background:var(--primary-soft);color:var(--primary);display:grid;place-items:center;animation:drive 2.4s ease-in-out infinite}
.empty-ic .icon{width:38px;height:38px}
@keyframes drive{0%,100%{transform:translateX(-10px)}50%{transform:translateX(10px)}}
.empty h3{font-size:20px}
.empty p{color:var(--muted);margin:6px 0 20px}
.more-wrap{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:34px}
.more-progress{font-size:13px;color:var(--muted)}
.more-bar{width:200px;height:4px;border-radius:4px;background:var(--line);overflow:hidden}
.more-bar i{display:block;height:100%;background:var(--primary);transition:width .5s;margin-inline-start:0}
.more-wrap .btn[hidden]{display:none}

/* compare */
.cmp-bar{position:fixed;bottom:18px;left:50%;z-index:90;display:flex;align-items:center;gap:14px;background:rgba(14,17,38,.94);backdrop-filter:blur(14px);color:#fff;padding:10px;padding-inline-start:12px;border-radius:24px;box-shadow:var(--shadow-lg);transform:translate(-50%,140%);transition:transform .5s cubic-bezier(.2,.8,.2,1);max-width:calc(100vw - 24px)}
.cmp-bar.show{transform:translate(-50%,0)}
.cmp-slots{display:flex;gap:8px}
.cmp-slot{display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.08);border-radius:14px;padding:5px;padding-inline-end:10px;font-size:12.5px;max-width:200px;animation:fadeUp .3s}
.cmp-slot img{width:46px;height:34px;object-fit:cover;border-radius:9px}
.cmp-slot span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:inline-flex;align-items:center;gap:6px}
.cmp-slot button{width:20px;height:20px;border-radius:var(--rr);background:rgba(255,255,255,.15);font-size:10px;color:#fff;flex-shrink:0}
.cmp-slot.empty{border:1.5px dashed rgba(255,255,255,.2);background:none;color:#9EA1CF;padding:12px 14px}
.cmp-actions{display:flex;align-items:center;gap:10px}
.cmp-clear{color:#9EA1CF;font-size:13px}
.cmp-table-wrap{overflow:auto;border-radius:var(--radius-md);border:1px solid var(--line)}
.cmp-table{width:100%;border-collapse:collapse;font-size:14px;min-width:560px}
.cmp-table th,.cmp-table td{padding:12px 14px;text-align:start;border-bottom:1px solid var(--line)}
.cmp-table tbody th{color:var(--muted);font-weight:500;background:#FAFAFD;width:150px;position:sticky;inset-inline-start:0}
.cmp-table thead th{vertical-align:bottom;background:var(--surface)}
.cmp-table td.best{color:var(--green);font-weight:600;background:#F0FAF4}
.cmp-car{display:flex;flex-direction:column;gap:2px}
.cmp-img{display:block;aspect-ratio:16/10;border-radius:12px;overflow:hidden;background:var(--bg);margin-bottom:8px}
.cmp-img img{width:100%;height:100%;object-fit:cover}
.cmp-car small{color:var(--muted)}
.cmp-note{font-size:12px;color:var(--muted);margin-top:12px;display:flex;align-items:center;gap:8px}
.best-dot{width:10px;height:10px;border-radius:3px;background:var(--green)}
.sw{display:inline-block;width:14px;height:14px;border-radius:var(--rr);background:var(--c);box-shadow:inset 0 0 0 1px rgba(0,0,0,.15);vertical-align:-2px;margin-inline-end:6px}

/* =========================================================
   صفحة السيارة
   ========================================================= */
.cp-grid{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:24px;align-items:start}
.cp-side{position:sticky;top:96px;display:grid;gap:14px}

/* gallery */
.gallery{background:var(--surface);border-radius:var(--radius-xl);padding:10px;box-shadow:var(--shadow-sm)}
.g-stage{position:relative;aspect-ratio:16/10;border-radius:26px;overflow:hidden;background:linear-gradient(135deg,#E9EAF4,#D8DAEA);cursor:zoom-in;touch-action:pan-y;user-select:none}
.g-slide{position:absolute;inset:0;opacity:0;transform:translateX(var(--from,0)) scale(1.06);transition:opacity .7s ease,transform 1s cubic-bezier(.2,.8,.2,1)}
.g-slide.on{opacity:1;transform:none;z-index:1}
.g-slide.out-next{opacity:0;transform:translateX(8%) scale(.98)}
.g-slide.out-prev{opacity:0;transform:translateX(-8%) scale(.98)}
.g-slide img{width:100%;height:100%;object-fit:cover;pointer-events:none}
.g-stage::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(0deg,rgba(13,15,43,.45),transparent 30%,transparent 75%,rgba(13,15,43,.25))}
.g-badges{position:absolute;top:16px;inset-inline-start:16px;z-index:3;display:flex;gap:6px}
.g-tools{position:absolute;top:14px;inset-inline-end:14px;z-index:3;display:flex;gap:8px}
.g-btn{width:42px;height:42px;border-radius:var(--rr);background:rgba(255,255,255,.9);backdrop-filter:blur(8px);display:grid;place-items:center;transition:.2s;position:relative}
.g-btn:hover{transform:scale(1.08);background:#fff}
.g-btn.fav.on{color:#E5243B}.g-btn.fav.on .icon{fill:#E5243B}
.g-nav{position:absolute;top:50%;z-index:3;width:50px;height:50px;margin-top:-25px;border-radius:var(--rr);background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.35);backdrop-filter:blur(10px);color:#fff;display:grid;place-items:center;transition:.25s;opacity:0}
.g-stage:hover .g-nav{opacity:1}
.g-nav:hover{background:#fff;color:var(--ink)}
.g-prev{inset-inline-start:16px}
.g-prev .icon{transform:scaleX(-1)}
.g-next{inset-inline-end:16px}
.g-count{position:absolute;bottom:18px;inset-inline-end:18px;z-index:3;color:#fff;font-size:14px;background:rgba(13,15,43,.45);backdrop-filter:blur(8px);padding:5px 12px;border-radius:var(--rr);perspective:200px}
.g-count b{display:inline-block}
.g-count b.flip{animation:flip .5s cubic-bezier(.3,1.4,.5,1)}
.g-progress{position:absolute;bottom:0;inset-inline:0;height:3px;z-index:3;background:rgba(255,255,255,.2)}
.g-progress i{display:block;height:100%;background:#fff;transition:width .6s cubic-bezier(.2,.8,.2,1)}
.g-thumbs{display:flex;gap:8px;margin-top:10px;overflow-x:auto;scrollbar-width:none;padding:2px}
.g-thumbs::-webkit-scrollbar{display:none}
.g-thumb{flex:1 0 96px;aspect-ratio:16/10;border-radius:14px;overflow:hidden;background:var(--bg);opacity:.55;transition:.3s;outline:2.5px solid transparent;outline-offset:-2.5px}
.g-thumb img{width:100%;height:100%;object-fit:cover}
.g-thumb:hover{opacity:.85}
.g-thumb.on{opacity:1;outline-color:var(--primary)}

/* panel */
.panel{background:var(--surface);border-radius:var(--radius-xl);padding:24px;box-shadow:var(--shadow-sm)}
.p-badges{display:flex;flex-wrap:wrap;gap:6px}
.p-badges .chip{background:var(--bg)}
.p-badges .chip.new{background:var(--green)}
.p-badges .chip.hot{background:var(--accent)}
.p-badges .chip.ev{background:var(--primary)}
.p-badges .chip.gcc{background:var(--primary-soft)}
.p-title{font-size:28px;font-weight:700;letter-spacing:-.5px;line-height:1.3;margin-top:12px}
.p-sub{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:14px;margin-top:4px;flex-wrap:wrap}
.p-sub .sep{width:4px;height:4px;border-radius:var(--rr);background:#C5C8D8}
.p-price{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}
.p-price > div,.p-monthly{border-radius:18px;padding:14px 16px}
.p-price > div{background:var(--bg)}
.p-price small{display:block;font-size:12px;color:var(--muted)}
.p-amount b{font-size:27px;font-weight:700;letter-spacing:-.5px}
.p-amount span{font-size:13px;color:var(--muted)}
.p-price s{font-size:13px;color:var(--muted)}
.p-price s em{font-style:normal;color:var(--green);font-weight:600;text-decoration:none;display:inline-block;margin-inline-start:6px}
.p-price s:empty{display:none}
.p-monthly{background:var(--primary);color:#fff;position:relative;overflow:hidden;transition:.25s}
.p-monthly:hover{background:var(--primary-2);transform:translateY(-2px)}
.p-monthly small{color:#C9CBFF}
.p-monthly b{font-size:22px;font-weight:700;display:block;margin-top:3px}
.p-monthly b span{font-size:12px;font-weight:400}
.p-monthly-go{font-size:12px;display:inline-flex;align-items:center;gap:4px;color:#DADCFF;margin-top:2px}
.p-quick{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}
.q-tile{border:1px solid var(--line);border-radius:14px;padding:10px;display:flex;flex-direction:column;gap:1px;transition:.2s}
.q-tile:hover{border-color:var(--primary);background:var(--primary-soft)}
.q-tile .icon{color:var(--primary);width:18px;height:18px;margin-bottom:4px}
.q-tile small{font-size:11px;color:var(--muted)}
.q-tile b{font-size:13.5px;font-weight:600}
.p-actions{display:grid;gap:8px;margin-top:18px}
.p-actions .btn{width:100%}
.p-actions-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.p-actions-row .btn{padding-inline:12px}
.p-trust{list-style:none;margin-top:18px;padding-top:16px;border-top:1px dashed var(--line);display:grid;gap:10px;font-size:13.5px;color:var(--ink-2)}
.p-trust li{display:flex;align-items:center;gap:10px}
.p-trust .icon{color:var(--green);width:18px;height:18px}
.dealer{background:var(--surface);border-radius:var(--radius-lg);padding:14px 16px;display:flex;align-items:center;gap:12px;box-shadow:var(--shadow-sm)}
.dealer-logo{width:46px;height:46px;border-radius:14px;background:var(--solid);color:#fff;display:grid;place-items:center;flex-shrink:0}
.dealer-logo svg{width:28px;height:25px;fill:currentColor}
.dealer div{flex:1;line-height:1.35}
.dealer b{font-size:14.5px;font-weight:600}
.dealer small{display:block;font-size:12px;color:var(--muted)}
.dealer-open{font-size:12px;color:var(--green);font-weight:600;display:flex;align-items:center;gap:6px}
.dealer-open i{width:8px;height:8px;border-radius:var(--rr);background:var(--green);animation:pulse 1.8s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(18,161,80,.5)}100%{box-shadow:0 0 0 10px rgba(18,161,80,0)}}

/* tabs */
.cp-tabs{position:sticky;top:78px;z-index:20;display:flex;gap:4px;margin-top:20px;background:rgba(255,255,255,.88);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-radius:18px;padding:6px;box-shadow:var(--shadow-sm);overflow-x:auto;scrollbar-width:none}
.cp-tabs::-webkit-scrollbar{display:none}
.cp-tabs a{position:relative;z-index:1;padding:10px 18px;border-radius:13px;font-size:14px;color:var(--muted);white-space:nowrap;transition:color .3s}
.cp-tabs a.on{color:#fff}
.cp-tabs-ink{position:absolute;top:6px;bottom:6px;left:0;border-radius:13px;background:var(--solid);transition:transform .45s cubic-bezier(.2,.8,.2,1),width .45s cubic-bezier(.2,.8,.2,1)}

.cp-sec{background:var(--surface);border-radius:var(--radius-xl);padding:30px;margin-top:18px;box-shadow:var(--shadow-sm);scroll-margin-top:150px}
.cp-h{font-size:22px;font-weight:700;letter-spacing:-.3px}
.cp-h-row{display:flex;justify-content:space-between;align-items:center}
.cp-pill{font-size:12px;font-weight:600;color:var(--primary);background:var(--primary-soft);padding:5px 12px;border-radius:var(--rr)}
.cp-desc{color:var(--ink-2);margin-top:12px;font-size:15.5px;line-height:1.9}
.perf{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:24px}
.perf-item{background:var(--bg);border-radius:18px;padding:16px 14px}
.perf-item small{font-size:12px;color:var(--muted)}
.perf-val{display:flex;align-items:baseline;gap:5px;margin-top:4px;flex-wrap:wrap}
.perf-val b{font-size:26px;font-weight:700;letter-spacing:-.5px;font-variant-numeric:tabular-nums}
.perf-val span{font-size:11.5px;color:var(--muted)}
.perf-bar{height:5px;border-radius:5px;background:var(--line);margin-top:12px;overflow:hidden}
.perf-bar i{display:block;height:100%;width:0;border-radius:5px;background:linear-gradient(90deg,var(--accent),var(--primary));transition:width 1.4s cubic-bezier(.2,.8,.2,1);margin-inline-start:0}
.seen .perf-bar i{width:var(--w)}

.spec-groups{display:grid;gap:12px;margin-top:18px}
.spec-group{border:1px solid var(--line);border-radius:18px;overflow:hidden}
.spec-group summary{display:flex;align-items:center;gap:12px;padding:14px 16px;font-weight:600;cursor:pointer;list-style:none;transition:.2s}
.spec-group summary::-webkit-details-marker{display:none}
.spec-group summary:hover{background:var(--bg)}
.sg-ic{width:36px;height:36px;border-radius:11px;background:var(--primary-soft);color:var(--primary);display:grid;place-items:center}
.sg-ic .icon{width:18px;height:18px}
.sg-chev{margin-inline-start:auto;transform:rotate(-90deg);transition:.3s;color:var(--muted)}
.spec-group[open] .sg-chev{transform:rotate(90deg)}
.spec-group dl{display:grid;grid-template-columns:1fr 1fr;padding:0 16px 10px}
.spec-group dl div{display:flex;justify-content:space-between;gap:12px;padding:11px 4px;border-top:1px dashed var(--line);font-size:14px}
.spec-group dl div:nth-child(odd){padding-inline-end:18px}
.spec-group dl div:nth-child(even){padding-inline-start:18px;border-inline-start:1px dashed var(--line)}
.spec-group dt{color:var(--muted)}
.spec-group dd{font-weight:600;text-align:end}

.feat-list{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:18px}
.feat-list li{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:14px;background:var(--bg);font-size:14px}
.feat-list li .icon{color:var(--green);width:19px;height:19px}
.feat-list li.extra{display:none}
.feat-list.all li.extra{display:flex;animation:fadeUp .4s backwards;animation-delay:calc(var(--i)*40ms)}
.feat-more{margin-top:16px}

.insp{display:grid;grid-template-columns:220px 1fr;gap:30px;align-items:center;margin-top:20px}
.insp-score{position:relative;text-align:center}
.ring{width:180px;height:180px;transform:rotate(-90deg);display:block;margin:auto}
.ring circle{fill:none;stroke-width:10}
.ring-bg{stroke:var(--line)}
.ring-fg{stroke:var(--green);stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100;transition:stroke-dashoffset 1.6s cubic-bezier(.2,.8,.2,1)}
.seen .ring-fg{stroke-dashoffset:calc(100 - var(--v))}
.ring-txt{position:absolute;top:0;inset-inline:0;height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center}
.ring-txt b{font-size:44px;font-weight:700;line-height:1}
.ring-txt small{color:var(--muted)}
.insp-score p{margin-top:8px;color:var(--muted)}
.insp-score p b{color:var(--green)}
.insp-bars{display:grid;gap:14px}
.ib-head{display:flex;justify-content:space-between;font-size:14px;margin-bottom:6px}
.ib-head b{font-weight:600}
.ib-bar{height:8px;border-radius:8px;background:var(--line);overflow:hidden}
.ib-bar i{display:block;height:100%;width:0;border-radius:8px;background:linear-gradient(90deg,#4BD08A,var(--green));transition:width 1.4s cubic-bezier(.2,.8,.2,1)}
.seen .ib-bar i{width:var(--w)}
.insp-bars .link-more{justify-self:start;margin-top:6px}
.warranty-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:18px}
.w-card{border:1px solid var(--line);border-radius:18px;padding:18px}
.w-ic{width:44px;height:44px;border-radius:14px;background:var(--primary-soft);color:var(--primary);display:grid;place-items:center;margin-bottom:12px}
.w-card b{font-weight:600}
.w-card p{font-size:13.5px;color:var(--muted);margin-top:4px}

.cp-finance{scroll-margin-top:100px;padding-top:60px}
.cp-finance .calc-cta .icon{margin-inline-end:4px}
.banks{background:var(--surface);border-radius:var(--radius-xl);padding:28px;margin-top:18px;box-shadow:var(--shadow-sm)}
.banks-head{display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap}
.banks-head h3{font-size:22px;font-weight:700;margin-top:6px}
.banks-head p{color:var(--muted);font-size:14px}
.banks-head p b{color:var(--ink)}
.bank-list{display:grid;gap:10px;margin-top:20px}
.bank{position:relative;display:grid;grid-template-columns:auto 1.3fr .6fr 1.4fr auto;align-items:center;gap:18px;padding:16px 18px;border:1.5px solid var(--line);border-radius:20px;transition:.3s;animation:fadeUp .4s backwards}
.bank:nth-child(2){animation-delay:.05s}.bank:nth-child(3){animation-delay:.1s}.bank:nth-child(4){animation-delay:.15s}
.bank:hover{border-color:var(--primary);box-shadow:var(--shadow-md)}
.bank.best{border-color:var(--primary);background:linear-gradient(90deg,var(--primary-soft),var(--surface) 60%)}
.bank-flag{position:absolute;top:-11px;inset-inline-start:18px;font-size:11px;font-weight:600;background:var(--primary);color:#fff;padding:3px 10px;border-radius:var(--rr)}
.bank-logo{width:46px;height:46px;border-radius:14px;background:var(--c);color:#fff;font-weight:700;font-size:18px;display:grid;place-items:center}
.bank-info b{display:block;font-weight:600}
.bank-info small,.bank-rate small,.bank-monthly small{font-size:12px;color:var(--muted)}
.bank-rate b{display:block;font-size:18px}
.bank-monthly b{display:block;font-size:20px;font-weight:700}
.bank-monthly b span{font-size:12px;font-weight:400;color:var(--muted)}
.bank-bar{height:4px;border-radius:4px;background:var(--line);margin-top:6px;overflow:hidden}
.bank-bar i{display:block;height:100%;background:var(--primary);border-radius:4px;transition:width .6s}
.bank-go{height:44px;padding-inline:18px}
.banks-note{font-size:12px;color:var(--muted);margin-top:14px}

/* mobile cta */
.m-cta{display:none}

/* lightbox */
.lightbox{position:fixed;inset:0;z-index:400;background:rgba(8,9,25,.95);display:grid;place-items:center;opacity:0;transition:opacity .3s}
.lightbox.open{opacity:1}
.lightbox img{max-width:92vw;max-height:84vh;border-radius:18px;object-fit:contain;animation:fadeUp .4s}
.lb-close{position:absolute;top:18px;inset-inline-end:18px;width:48px;height:48px;border-radius:var(--rr);background:rgba(255,255,255,.1);color:#fff;font-size:18px}
.lb-nav{position:absolute;top:50%;margin-top:-28px;width:56px;height:56px;border-radius:var(--rr);background:rgba(255,255,255,.1);color:#fff;display:grid;place-items:center;transition:.2s}
.lb-nav:hover,.lb-close:hover{background:rgba(255,255,255,.25)}
.lb-prev{inset-inline-start:20px}.lb-prev .icon{transform:scaleX(-1)}
.lb-next{inset-inline-end:20px}
.lb-count{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);color:#C9CBEA;font-size:14px}

/* test drive */
.td-form{display:grid;gap:16px}
.fld{display:grid;gap:8px}
.fld > span{font-size:14px;font-weight:500}
.fld input{height:50px;border-radius:14px;border:1.5px solid var(--line);padding-inline:16px;outline:none;transition:.2s;background:var(--surface)}
.fld input:focus{border-color:var(--primary);box-shadow:0 0 0 4px var(--primary-soft)}
.days{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}
.days button{border-radius:14px;padding:8px 2px;background:var(--bg);border:1.5px solid transparent;display:flex;flex-direction:column;align-items:center;transition:.2s}
.days small{font-size:10.5px;color:var(--muted)}
.days b{font-size:18px}
.days button.on{background:var(--primary);color:#fff;border-color:var(--primary)}
.days button.on small{color:#D6D8FF}
.slots{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.slots button{height:42px;border-radius:12px;background:var(--bg);font-size:13px;font-weight:500;border:1.5px solid transparent;transition:.2s}
.slots button.on{border-color:var(--primary);color:var(--primary);background:var(--primary-soft)}
.td-submit{width:100%;margin-top:4px}
.td-done{text-align:center;padding:10px 0 4px}
.td-done h3{font-size:22px;margin-top:10px}
.td-done p{color:var(--muted);margin:6px 0 20px}
.td-check{width:84px;height:84px;margin:auto;display:block}
.td-check circle{fill:none;stroke:var(--green);stroke-width:3;stroke-dasharray:160;stroke-dashoffset:160;animation:draw .7s forwards}
.td-check path{fill:none;stroke:var(--green);stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:40;stroke-dashoffset:40;animation:draw .4s .6s forwards}
@keyframes draw{to{stroke-dashoffset:0}}

/* ---------- Responsive for pages ---------- */
@media (max-width:1180px){
  .listing-grid{grid-template-columns:270px 1fr}
  .cars-3{grid-template-columns:repeat(2,1fr)}
  .cp-grid{grid-template-columns:minmax(0,1fr) 360px}
  .perf{grid-template-columns:repeat(3,1fr)}
  .bank{grid-template-columns:auto 1fr auto;row-gap:12px}
  .bank-monthly{grid-column:1/3}
}
@media (max-width:960px){
  .listing-grid{grid-template-columns:1fr}
  .filters{position:fixed;top:0;bottom:0;inset-inline-start:0;z-index:200;width:min(380px,92vw);max-height:none;border-radius:0 26px 26px 0;transform:translateX(105%);transition:transform .45s cubic-bezier(.2,.8,.2,1)}
  .f-close{display:grid}
  .f-foot{display:block;padding:14px 22px;border-top:1px solid var(--line)}
  .f-foot .btn{width:100%}
  .f-overlay{display:block;position:fixed;inset:0;z-index:150;background:rgba(13,15,43,.5);opacity:0;pointer-events:none;transition:.3s}
  .f-is-open .filters{transform:none}
  .f-is-open .f-overlay{opacity:1;pointer-events:auto}
  .f-is-open{overflow:hidden}
  .f-open{display:inline-flex;height:44px;padding-inline:16px}
  .cars-3{grid-template-columns:repeat(2,1fr)}
  .cp-grid{grid-template-columns:minmax(0,1fr)}
  .cp-side{position:static}
  #panelSlotMobile{display:grid;gap:12px;margin-top:14px}
  .cp-tabs{top:66px}
  .warranty-cards{grid-template-columns:1fr 1fr}
  .m-cta{display:flex;position:fixed;bottom:12px;inset-inline:12px;z-index:65;background:rgba(255,255,255,.96);backdrop-filter:blur(16px);border-radius:22px;box-shadow:var(--shadow-lg);padding:8px;padding-inline-start:16px;align-items:center;gap:8px;transform:translateY(150%);transition:transform .45s cubic-bezier(.2,.8,.2,1)}
  .m-cta.show{transform:none}
  .m-cta > div{flex:1;line-height:1.2}
  .m-cta small{font-size:11px;color:var(--muted);display:block}
  .m-cta b{font-size:18px}
  .m-cta b .cur{font-size:12px;font-weight:400}
  .m-cta .btn{height:46px;padding-inline:16px}
  .m-call{box-shadow:none;background:var(--bg)}
  .car-page ~ .bottom-nav{display:none}
}
@media (max-width:640px){
  .ph-card{padding:26px 20px 22px;border-radius:28px}
  .ph-search{padding-inline-start:14px}
  .ph-search .btn{padding-inline:16px}
  .type-chips{flex-wrap:nowrap;overflow-x:auto;margin-inline:-20px;padding-inline:20px;scrollbar-width:none}
  .type-chips button{white-space:nowrap}
  .toolbar{padding:8px;padding-inline-start:8px}
  .tb-start,.tb-end{width:100%;justify-content:space-between}
  .sort span{display:none}
  .sort{flex:1}
  .sort select{min-width:0;width:100%}
  .cars-3{grid-template-columns:1fr}
  .cars.list .car{flex-direction:column}
  .cars.list .car-media{width:100%}
  .cmp-bar{bottom:96px;flex-direction:column;align-items:stretch;border-radius:20px;width:calc(100vw - 24px)}
  .cmp-slot{max-width:none;flex:1;min-width:0}
  .cmp-slot img{display:none}
  .cmp-slot.empty{padding:10px}
  .cmp-actions .btn{flex:1}
  .p-title{font-size:24px}
  .panel{padding:18px}
  .g-stage{border-radius:20px}
  .g-nav{opacity:1;width:40px;height:40px;margin-top:-20px}
  .g-thumb{flex-basis:76px}
  .cp-sec{padding:20px;border-radius:24px}
  .perf{grid-template-columns:1fr 1fr}
  .spec-group dl{grid-template-columns:1fr}
  .spec-group dl div:nth-child(n){padding-inline:4px;border-inline-start:0}
  .feat-list{grid-template-columns:1fr 1fr}
  .feat-list li{font-size:13px;padding:10px}
  .insp{grid-template-columns:1fr}
  .warranty-cards{grid-template-columns:1fr}
  .banks{padding:18px}
  .bank{grid-template-columns:auto 1fr auto;gap:10px 12px;padding:14px}
  .bank-go{grid-column:1/-1;width:100%}
  .lb-nav{width:44px;height:44px;margin-top:-22px}
  .lb-prev{inset-inline-start:8px}.lb-next{inset-inline-end:8px}
  .days b{font-size:16px}
}
/* fixes */
.g-tools .g-btn.fav{position:relative;top:auto;inset-inline-end:auto;width:42px;height:42px;background:rgba(255,255,255,.9)}
.car-media .badges{max-width:calc(100% - 64px);flex-wrap:wrap}
.cmp-bar{visibility:hidden;transition:transform .5s cubic-bezier(.2,.8,.2,1),visibility .5s}
.cmp-bar.show{visibility:visible}
