  :root{
    --black:#050505;
    --black-soft:#111111;
    --black-card:#0d0d0d;
    --red:#FF0000;
    --red-deep:#B00000;
    --white:#FFFFFF;
    --grey:#8a8a8a;
    --grey-line:#2a2a2a;
    --display: 'Boldonse', sans-serif;
    --body: 'Poppins', sans-serif;
    --gap: clamp(1.25rem, 3vw, 2.5rem);
    --container: 1320px;
  }

  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    background:var(--black);
    color:var(--white);
    font-family:var(--body);
    line-height:1.6;
    overflow-x:hidden;
    -webkit-font-smoothing:antialiased;
  }
  img{max-width:100%;display:block;}
  a{color:inherit;text-decoration:none;}
  ul{list-style:none;}
  button{font-family:inherit;cursor:pointer;background:none;border:none;color:inherit;}
  .wrap{max-width:var(--container);margin:0 auto;padding:0 clamp(1.25rem,4vw,3rem);}
  .h-display{font-family:var(--display);letter-spacing:.02em;word-spacing:.14em;line-height:1.2;text-transform:none;}

  @media (prefers-reduced-motion: reduce){
    *{animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important; scroll-behavior:auto !important;}
  }

  /* ---------- Buttons ---------- */
  .btn{
    display:inline-flex;align-items:center;justify-content:center;gap:.6rem;
    padding:1.05rem 2.1rem;
    border:1.5px solid var(--white);
    font-weight:600;font-size:.95rem;letter-spacing:.03em;
    color:var(--white);
    position:relative;overflow:hidden;
    transition:color .35s ease, border-color .35s ease;
    white-space:nowrap;
  }
  .btn span{position:relative;z-index:2;}
  .btn::before{
    content:"";position:absolute;inset:0;background:var(--red);
    transform:scaleX(0);transform-origin:left;
    transition:transform .35s cubic-bezier(.65,0,.35,1);
    z-index:1;
  }
  .btn:hover::before{transform:scaleX(1);}
  .btn:hover{border-color:var(--red);}
  .btn-solid{background:var(--red);border-color:var(--red);}
  .btn-solid::before{background:var(--white);}
  .btn-solid:hover{color:var(--black);border-color:var(--white);}
  .btn-ghost-sm{
    border:1.5px solid var(--white);padding:1rem 1.9rem;font-size:.92rem;font-weight:700;
  }
  .btn-ghost-sm:hover{border-color:var(--red);}

  /* ---------- Header ---------- */
  header{
    position:fixed;top:0;left:0;right:0;z-index:1000;
    background:rgba(5,5,5,.88);backdrop-filter:blur(10px);
    border-bottom:1px solid var(--grey-line);
  }
  .nav{display:flex;align-items:center;justify-content:space-between;padding:1.3rem clamp(1.25rem,4vw,3rem);gap:1.5rem;}
  .logo{display:flex;align-items:center;}
  .logo img{height:76px;width:auto;}
  .nav-links{
    display:flex;align-items:center;flex-wrap:nowrap;gap:clamp(.9rem,1.6vw,2rem);
  }
  .nav-links a{
    font-size:clamp(.74rem,.82vw,.85rem);font-weight:600;letter-spacing:.03em;text-transform:uppercase;position:relative;
    padding:.4rem 0;color:var(--grey);white-space:nowrap;
    transition:color .25s ease;
  }
  .nav-links a:hover{color:var(--white);}
  .nav-links a.active{color:var(--white);}
  .nav-links a.active::after{
    content:"";position:absolute;left:0;right:0;bottom:-4px;height:2px;
    background:var(--red);
  }
  .nav-cta{display:flex;align-items:center;gap:1rem;flex-shrink:0;}
  .burger{display:none;flex-direction:column;gap:5px;width:30px;z-index:1001;}
  .burger span{height:2px;background:var(--white);width:100%;transition:.3s;}

  /* ---------- Mobile nav (slides in from the left) ---------- */
  .nav-scrim{
    position:fixed;inset:0;z-index:900;background:rgba(0,0,0,.55);backdrop-filter:blur(2px);
    opacity:0;pointer-events:none;transition:opacity .35s ease;
  }
  .nav-scrim.open{opacity:1;pointer-events:auto;}

  @media (max-width:980px){
    .nav-links{
      position:fixed;top:0;left:0;bottom:0;right:auto;width:min(78vw,340px);height:100vh;
      margin:0;background:var(--black-soft);z-index:1001;overflow-y:auto;
      flex-direction:column;justify-content:flex-start;align-items:stretch;
      padding:6rem 1.5rem 2rem;gap:0;
      transform:translateX(-100%);opacity:0;
      transition:transform .45s cubic-bezier(.16,1,.3,1), opacity .35s ease;
      border:none;border-right:1px solid var(--grey-line);
    }
    .nav-links.open{transform:translateX(0);opacity:1;}
    .nav-links a{
      font-size:1rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;
      padding:1rem 0;border-bottom:1px solid var(--grey-line);
      display:block;color:var(--grey);transition:color .25s ease;white-space:normal;
    }
    .nav-links a.active{color:var(--red);}
    .nav-links a.active::after{display:none;}
    .burger{display:flex;}
    .nav-cta .btn-ghost-sm{display:none;}
  }
  @media (max-width:480px){
    .nav-links{width:min(84vw,320px);}
  }

  /* ---------- Hero ---------- */
  .hero-scroll-track{position:relative;height:calc(100svh + 1440px);}
  .hero{
    position:sticky;top:0;height:100svh;min-height:100svh;display:flex;flex-direction:column;justify-content:center;
    overflow:hidden;background:var(--black);
    padding-top:6rem;
  }
  .hero-bg-video{
    position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;
    transform:scale(1);transition:transform 1.8s cubic-bezier(.16,1,.3,1);
  }
  .hero-bg-video.hero-zoomed{transform:scale(1.09);}
  @media (max-width:600px){
    .hero-bg-video{inset:auto;top:50%;left:0;width:100%;height:68vh;transform:translateY(-50%) scale(1);}
    .hero-bg-video.hero-zoomed{transform:translateY(-50%) scale(1.09);}
  }
  /* ---------- New Arrivals scroll-scrub banner ---------- */
  .arrivals-scroll-track{position:relative;height:calc(100svh + 900px);}
  .arrivals-hero{
    position:sticky;top:0;height:100svh;min-height:100svh;display:flex;align-items:center;
    overflow:hidden;background:var(--black);
  }
  .arrivals-bg-canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;opacity:.45;}
  .arrivals-hero-overlay{
    position:absolute;inset:0;z-index:1;
    background:linear-gradient(180deg, rgba(5,5,5,.55) 0%, rgba(5,5,5,.3) 40%, rgba(5,5,5,.9) 100%);
  }
  .arrivals-hero-copy{position:relative;z-index:5;padding:0 clamp(1.25rem,4vw,3rem);width:50%;max-width:640px;}
  @media (max-width:900px){.arrivals-hero-copy{width:100%;}}
  .arrivals-hero-copy .kicker{margin-bottom:1.8rem;}
  .arrivals-hero-copy .h-display{
    text-transform:uppercase;margin:0 0 2rem;
  }
  .arrivals-title{
    font-size:clamp(2.6rem,8vw,6.2rem);line-height:1.25;letter-spacing:.01em;
  }
  .arrivals-title-top,.arrivals-title span{display:block;}
  .arrivals-title-top{margin-bottom:.35em;}

  /* ---------- Shipping scroll-scrub banner ---------- */
  .shipping-scroll-track{position:relative;height:calc(100svh + 900px);}
  .shipping-hero{
    position:sticky;top:0;height:100svh;min-height:100svh;display:flex;align-items:flex-end;justify-content:flex-end;
    overflow:hidden;background:var(--black);padding-bottom:clamp(4rem,10vh,7rem);
  }
  .shipping-bg-canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;opacity:.98;}
  .shipping-hero-overlay{
    position:absolute;inset:0;z-index:1;
    background:linear-gradient(180deg, rgba(5,5,5,.4) 0%, rgba(5,5,5,.2) 40%, rgba(5,5,5,.92) 100%);
  }
  .shipping-hero-copy{position:relative;z-index:5;padding:0 clamp(1.25rem,4vw,3rem);width:auto;max-width:94%;text-align:left;margin-left:auto;}
  @media (max-width:900px){.shipping-hero-copy{width:100%;max-width:100%;text-align:left;margin-left:0;}}
  .shipping-hero-copy .kicker{margin-bottom:1.8rem;}
  .shipping-hero-copy .h-display{
    text-transform:uppercase;margin:0 0 2rem;white-space:nowrap;
  }
  .shipping-title{
    font-size:clamp(1.8rem,5.5vw,4.6rem);line-height:1;letter-spacing:.01em;
  }
  .shipping-title-top,.shipping-title span{display:inline;}
  .shipping-title-top{margin-right:.3em;}
  .shipping-hero-copy p{color:#ddd;font-size:1rem;max-width:46ch;}
  @media (max-width:900px){.shipping-hero-copy .h-display{white-space:normal;}}
  .shipping-scroll-cue{
    position:absolute;left:50%;bottom:2.2rem;transform:translateX(-50%);z-index:5;
    display:flex;flex-direction:column;align-items:center;gap:.5rem;
    color:var(--grey);font-size:.72rem;letter-spacing:.25em;text-transform:uppercase;
    opacity:.85;animation:arrivalsCueBounce 1.8s ease-in-out infinite;
  }
  .shipping-scroll-cue svg{width:16px;height:16px;}
  @media (max-width:600px){
    .shipping-scroll-track{height:calc(100svh + 500px);}
  }

  /* ---------- Import section scroll-linked sequence ---------- */
  .import-visual canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
  .arrivals-hero-copy p{color:#ddd;font-size:1rem;max-width:46ch;}
  .arrivals-scroll-cue{
    position:absolute;left:50%;bottom:2.2rem;transform:translateX(-50%);z-index:5;
    display:flex;flex-direction:column;align-items:center;gap:.5rem;
    color:var(--grey);font-size:.72rem;letter-spacing:.25em;text-transform:uppercase;
    opacity:.85;animation:arrivalsCueBounce 1.8s ease-in-out infinite;
  }
  .arrivals-scroll-cue svg{width:16px;height:16px;}
  @keyframes arrivalsCueBounce{0%,100%{transform:translate(-50%,0);}50%{transform:translate(-50%,8px);}}
  @media (max-width:600px){
    .arrivals-scroll-track{height:calc(100svh + 500px);}
  }

  header{transition:transform .35s ease, opacity .35s ease;}
  header.nav-hidden{transform:translateY(-110%);opacity:0;pointer-events:none;}
  .nav-links,.nav-cta{transition:opacity .3s ease;}
  header.nav-plain .nav-links,header.nav-plain .nav-cta,header.nav-plain .logo{opacity:0;pointer-events:none;}
  .logo{transition:opacity .3s ease;}
  .hero-stage:not(.hero-stage-bottom){transition:opacity .3s ease;}
  .hero-stage:not(.hero-stage-bottom).hero-hide{opacity:0;pointer-events:none;}
  .hero-overlay{
    position:absolute;inset:0;z-index:1;
    background:linear-gradient(180deg, rgba(5,5,5,.6) 0%, rgba(5,5,5,.45) 45%, rgba(5,5,5,.75) 80%, rgba(5,5,5,.95) 100%);
  }
  .hero-topline{
    position:relative;text-align:center;z-index:5;
    font-size:.8rem;letter-spacing:.35em;color:var(--grey);margin-bottom:2rem;
    max-width:100%;padding:0 1rem;
  }
  .hero-topline b{color:var(--red);font-style:normal;}
  .hero-stage{position:relative;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.1rem;}
  .hero-stage img.driven-logo{width:min(300px,48vw);filter:drop-shadow(0 20px 40px rgba(255,60,0,.25));}
  .hero-tagline{max-width:420px;text-align:left;font-size:.88rem;color:#ddd;margin-top:.9rem;}
  .hero-tagline b{color:var(--red);}
  .hero-actions{
    position:relative;z-index:5;display:flex;gap:1.1rem;justify-content:flex-start;
    margin-top:1.4rem;flex-wrap:wrap;
  }
  .hero-stage-bottom .btn{padding:.7rem 1.5rem;font-size:.8rem;}
  .btn-arrow span{display:inline-flex;align-items:center;gap:.6rem;}
  .btn-arrow svg{width:16px;height:16px;transition:transform .3s ease;}
  .btn-arrow:hover svg{transform:translateX(4px);}

  .hero-marquee{
    position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);z-index:2;overflow:hidden;
    padding:1.4rem 0;opacity:.45;
  }
  .hero-stage-bottom{
    position:absolute;left:0;right:0;bottom:5%;margin-top:0;
    padding-left:clamp(1.5rem,5vw,4rem);padding-right:calc(clamp(1.5rem,5vw,4rem) + 110px);
    flex-direction:row;align-items:flex-end;justify-content:space-between;gap:2rem;flex-wrap:wrap;
  }
  .hero-copy{display:flex;flex-direction:column;align-items:flex-start;text-align:left;}
  .hero-headline{
    font-family:var(--display);text-transform:uppercase;color:#fff;
    font-size:clamp(2.2rem,6vw,4.4rem);line-height:.95;letter-spacing:.01em;margin:0;
  }
  .hero-headline-top,.hero-headline .r{display:block;}
  .hero-headline-top{margin-bottom:.4em;}
  .hero-headline .r{color:var(--red);}
  .hero-info-cols{display:flex;gap:clamp(1.5rem,3vw,3rem);}
  .hero-info-col{max-width:220px;}
  .hero-info-col h4{
    display:flex;align-items:center;gap:.8rem;font-family:var(--display);text-transform:uppercase;
    font-size:.85rem;letter-spacing:.04em;color:#fff;margin:0 0 .5rem;white-space:nowrap;
  }
  .hero-info-col h4 .line{flex:1;height:1px;background:var(--red);box-shadow:0 0 6px 1px rgba(255,45,45,.6);}
  .hero-info-col p{font-size:.78rem;color:#bbb;line-height:1.5;}
  @media (max-width:900px){
    .hero-stage-bottom{flex-direction:column;align-items:flex-start;bottom:3%;padding-right:clamp(1.5rem,5vw,4rem);}
    .hero-info-cols{display:none;}
  }
  .marquee-track{display:flex;white-space:nowrap;animation:marquee 22s linear infinite;}
  .marquee-track span{
    font-family:var(--display);font-size:clamp(2.2rem,9vw,6.5rem);
    padding:0 2rem;background:linear-gradient(180deg,#fff,#8a8a8a);-webkit-background-clip:text;background-clip:text;color:transparent;
  }
  .marquee-track span.hl{background:linear-gradient(180deg,#ff5b5b,var(--red));-webkit-background-clip:text;background-clip:text;}
  @keyframes marquee{0%{transform:translateX(0);}100%{transform:translateX(-50%);}}
  .hero-talk-badge{
    position:fixed;bottom:1.5rem;right:1.5rem;width:min(96px,19vw);aspect-ratio:1;z-index:9999;
    display:block;cursor:pointer;
    opacity:0;transform:scale(.6);pointer-events:none;
    transition:opacity .3s ease, transform .3s ease;
    filter:drop-shadow(0 8px 20px rgba(0,0,0,.5));
  }
  .hero-talk-badge.show{opacity:1;transform:scale(1);pointer-events:auto;}
  .hero-talk-badge.chat-hidden{opacity:0;transform:scale(.6);pointer-events:none;}
  .talk-ring{position:absolute;inset:0;width:100%;height:100%;animation:spin 10s linear infinite;}
  .talk-avatar{
    position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(1);
    width:62%;aspect-ratio:1;border-radius:50%;object-fit:cover;
    background:var(--white);
    transition:transform .3s cubic-bezier(.34,1.56,.64,1);
  }
  .hero-talk-badge:hover .talk-ring{animation-play-state:paused;}
  .hero-talk-badge:hover .talk-avatar{transform:translate(-50%,-50%) scale(1.15);}
  @keyframes spin{from{transform:rotate(0deg);}to{transform:rotate(360deg);}}

  /* ---------- Section basics ---------- */
  section{position:relative;}
  .section-pad{padding:clamp(4rem,9vw,8rem) 0;}
  .kicker{font-size:1rem;font-weight:600;color:var(--white);margin-bottom:.8rem;}

  /* ---------- Showcase (alternating, real photography) ---------- */
  .showcase{overflow:hidden;}
  .showcase-row{padding:clamp(3.5rem,8vw,7rem) 0;position:relative;}
  .showcase-row .wrap{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(2rem,6vw,5rem);position:relative;z-index:1;}
  .showcase-row.reverse .wrap{direction:rtl;}
  .showcase-row.reverse .wrap>*{direction:ltr;}
  .showcase-row.dark{background:var(--black-soft);}
  .showcase-row.light{background:var(--white);color:var(--black);}
  .showcase-row.light .kicker{color:#555;}
  .showcase-row.light .showcase-copy p{color:#333;}
  .showcase-row .showcase-price{font-family:var(--body);font-weight:700;font-size:1.15rem;color:var(--red);margin-bottom:1.4rem;}
  .showcase-row.light .showcase-price{color:var(--red);}
  .showcase-visual{position:relative;display:flex;align-items:center;justify-content:center;min-height:340px;overflow:hidden;}
  .showcase-visual img{width:100%;max-width:620px;position:relative;z-index:2;filter:drop-shadow(0 30px 40px rgba(0,0,0,.35));}
  .showcase-copy .h-display{font-size:clamp(1.7rem,4.2vw,3.4rem);margin-bottom:1.1rem;text-transform:uppercase;}
  .showcase-row.dark .showcase-copy .h-display{color:var(--red);}
  .showcase-row.light .showcase-copy .h-display{color:var(--black);}
  .showcase-copy p{max-width:46ch;color:#c9c9c9;font-size:1.05rem;margin-bottom:1.6rem;}

  /* stacked variant: huge title overlapping the car below it */
  .showcase-row.stack .wrap{display:block;text-align:center;}
  .showcase-row.stack .showcase-copy{position:relative;z-index:2;margin-bottom:clamp(-3rem,-6vw,-1.5rem);}
  .showcase-row.stack .showcase-copy .h-display{
    font-size:clamp(2.6rem,8.5vw,6rem);line-height:1;margin-bottom:0;
  }
  .showcase-row.stack .showcase-copy p,
  .showcase-row.stack .showcase-copy .showcase-price,
  .showcase-row.stack .showcase-copy .btn{margin-left:auto;margin-right:auto;}
  .showcase-row.stack .showcase-copy p{margin-top:1.2rem;}
  .showcase-row.stack .showcase-visual{margin-top:0;}
  .showcase-row.stack .showcase-visual img{max-width:760px;}

  /* faint car line-art sketch behind the featured car photo */
  .showcase-line-art{
    position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
    width:min(94%,1500px);max-width:none;opacity:.1;z-index:0;
    pointer-events:none;
  }

  /* ---------- Section divider ---------- */
  .section-divider{height:1px;background:linear-gradient(90deg,transparent,var(--grey-line),transparent);}
  .thread-divider{
    display:block;width:100%;height:32px;background:var(--black);
    background-image:url('thread-divider.svg');
    background-repeat:repeat-x;background-size:145px 32px;background-position:center;
    opacity:.55;
  }

  /* ---------- Deal of the week ---------- */
  .deal{background:var(--black);position:relative;isolation:isolate;overflow:hidden;}
  .deal-lines{
    position:absolute;inset:0;z-index:0;
    width:100%;height:100%;object-fit:cover;object-position:center;
    opacity:.32;pointer-events:none;
    -webkit-mask-image:linear-gradient(90deg, transparent 0%, #000 12%, #000 88%, transparent 100%);
    mask-image:linear-gradient(90deg, transparent 0%, #000 12%, #000 88%, transparent 100%);
  }
  .deal-head{margin-bottom:2.5rem;position:relative;z-index:1;}
  .deal-head .h-display{font-size:clamp(1.7rem,4.5vw,3.2rem);}
  .deal-head .h-display .hl{color:var(--red);}
  .deal-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(2rem,5vw,4rem);align-items:center;}
  .deal-media{
    position:relative;border:1px solid var(--grey-line);aspect-ratio:16/9;overflow:hidden;
  }
  .deal-media img{width:100%;height:100%;object-fit:cover;}
  .deal-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:none;background:#000;}
  .deal-media.playing img{display:none;}
  .deal-media.playing video{display:block;}
  .deal-media.playing .car-tag{display:none;}
  .deal-media .car-tag{position:absolute;bottom:1rem;left:1rem;font-family:var(--display);font-size:.85rem;letter-spacing:.04em;word-spacing:.04em;text-transform:uppercase;color:var(--white);background:rgba(0,0,0,.55);padding:.4rem .9rem;}
  .deal-play{
    position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
    width:74px;height:74px;border-radius:50%;border:2px solid var(--white);
    display:flex;align-items:center;justify-content:center;cursor:pointer;
    transition:transform .3s ease, background .3s ease, opacity .25s ease;
    background:rgba(0,0,0,.25);
  }
  .deal-play:hover{transform:translate(-50%,-50%) scale(1.1);background:var(--red);border-color:var(--red);}
  .deal-play svg{width:22px;position:static;transform:translateX(2px);}
  .deal-media.playing .deal-play{opacity:0;pointer-events:none;}

  .deal-enlarge,.deal-shrink{
    position:absolute;top:1rem;right:1rem;z-index:3;width:42px;height:42px;border-radius:50%;
    border:1px solid var(--grey-line);background:rgba(0,0,0,.55);color:var(--white);
    display:flex;align-items:center;justify-content:center;cursor:pointer;
    opacity:0;pointer-events:none;transition:opacity .25s ease, background .25s ease, border-color .25s ease;
  }
  .deal-enlarge svg,.deal-shrink svg{width:18px;height:18px;}
  .deal-enlarge:hover,.deal-shrink:hover{background:var(--red);border-color:var(--red);}
  .deal-media.playing .deal-enlarge{opacity:1;pointer-events:auto;}
  .deal-media.theater{
    position:fixed;inset:0;z-index:10000;aspect-ratio:auto;border:none;
    display:flex;align-items:center;justify-content:center;background:rgba(5,5,5,.96);
  }
  .deal-media.theater video{position:static;width:auto;height:auto;max-width:92vw;max-height:88vh;object-fit:contain;}
  .deal-media.theater .deal-enlarge{display:none;}
  .deal-media.theater .deal-shrink{opacity:1;pointer-events:auto;top:1.4rem;right:1.6rem;}
  @media (max-width:700px){
    .deal-enlarge,.deal-shrink{width:36px;height:36px;top:.7rem;right:.7rem;}
  }
  .deal-copy p{color:#c9c9c9;font-size:1.05rem;margin-bottom:1.6rem;max-width:48ch;}
  .deal-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:.9rem;margin-top:3rem;}
  .deal-gallery .g-item{
    aspect-ratio:1;border:1px solid var(--grey-line);position:relative;overflow:hidden;
  }
  .deal-gallery .g-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;}
  .deal-gallery .g-item:hover img{transform:scale(1.08);}
  .deal-gallery .g-item::after{
    content:"";position:absolute;inset:0;background:var(--red);opacity:0;transition:opacity .3s;mix-blend-mode:multiply;
  }
  .deal-gallery .g-item:hover::after{opacity:.2;}

  /* ---------- Brand marquee ---------- */
  .brand-marquee{
    overflow:hidden;margin-top:1.8rem;padding:1.2rem 0;
    border-top:1px solid var(--grey-line);border-bottom:1px solid var(--grey-line);
  }
  .brand-track{display:flex;align-items:center;gap:clamp(2.2rem,5vw,3.2rem);width:max-content;animation:brandScroll 30s linear infinite;}
  .brand-track img{
    height:44px;width:auto;object-fit:contain;flex-shrink:0;
    filter:brightness(0) invert(74%);
    transition:filter .3s ease, transform .3s ease;
  }
  .brand-track img:hover{filter:brightness(0) invert(85%);transform:translateY(-2px);}
  @keyframes brandScroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}
  @media (max-width:600px){
    .brand-track{animation-duration:20s;gap:2.2rem;}
    .brand-track img{height:32px;}
  }

  /* ---------- Featured rides / filters ---------- */
  .filters{display:flex;flex-wrap:wrap;gap:1rem;margin:0 0 3.5rem;}
  .filter-btn{
    border:1px solid var(--white);padding:.9rem 1.8rem;font-size:.85rem;font-weight:600;letter-spacing:.05em;
    background:transparent;color:var(--white);cursor:pointer;
    transition:background .3s ease, color .3s ease, border-color .3s ease;
  }
  .filter-btn:hover, .filter-btn.active{background:var(--red);border-color:var(--red);color:var(--white);}

  /* ---------- Advanced search panel ---------- */
  .search-panel{
    background:var(--black-card);border:1px solid var(--grey-line);
    padding:clamp(1.4rem,3vw,2.2rem);margin:2.5rem 0 2rem;
  }
  .search-row{margin-bottom:1.2rem;}
  .search-input{
    width:100%;background:var(--black-soft);border:1px solid var(--grey-line);
    color:var(--white);padding:.95rem 1.2rem;font-size:.95rem;font-family:inherit;
  }
  .search-input::placeholder{color:var(--grey);}
  .search-input:focus{outline:none;border-color:var(--red);}
  .search-grid{
    display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1.1rem 1.2rem;
  }
  .search-field label{
    display:block;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--grey);margin-bottom:.5rem;
  }
  .search-field select,
  .search-field input[type="number"]{
    width:100%;background:var(--black-soft);border:1px solid var(--grey-line);
    color:var(--white);padding:.75rem .9rem;font-size:.88rem;font-family:inherit;
  }
  .search-field select:focus,
  .search-field input[type="number"]:focus{outline:none;border-color:var(--red);}
  .search-field select{cursor:pointer;}
  .range-row{display:flex;align-items:center;gap:.5rem;}
  .range-row input{min-width:0;flex:1;}
  .range-row span{color:var(--grey);}
  .search-field-check{display:flex;align-items:flex-end;}
  .checkbox-label{
    display:flex;align-items:center;gap:.6rem;cursor:pointer;
    font-size:.85rem;color:var(--white);white-space:nowrap;padding-bottom:.6rem;
  }
  .checkbox-label input[type="checkbox"]{
    width:18px;height:18px;accent-color:var(--red);cursor:pointer;flex-shrink:0;
  }
  .search-actions{
    display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;
    margin-top:1.6rem;padding-top:1.4rem;border-top:1px solid var(--grey-line);
  }
  .search-count{font-size:.85rem;color:var(--grey);}
  .search-count strong{color:var(--white);}
  #resetFilters{padding:.7rem 1.4rem;font-size:.78rem;}
  .no-results{
    text-align:center;color:var(--grey);padding:3rem 1rem;font-size:1rem;
    border:1px dashed var(--grey-line);margin-bottom:2rem;
  }
  @media (max-width:640px){
    .search-grid{grid-template-columns:1fr 1fr;}
    .search-field-check{grid-column:1 / -1;}
  }

  /* ---------- Trade-In page ---------- */
  .tradein-hero{padding-bottom:2rem;}
  .tradein-hero-copy{max-width:720px;margin:0 auto;text-align:center;}
  .tradein-hero-copy .h-display{
    font-size:clamp(2.2rem,6vw,4.2rem);text-transform:uppercase;margin:.6rem 0 1.2rem;line-height:1.25;
  }
  .tradein-hero-copy .h-display span{display:block;margin-top:.15em;}
  .tradein-hero-copy p:not(.kicker){color:#c9c9c9;font-size:1.05rem;max-width:56ch;margin:0 auto;}
  .tradein-hero .kicker{display:block;text-align:center;margin-bottom:1rem;}

  .tradein-panel{
    background:var(--black-card);border:1px solid var(--grey-line);
    padding:clamp(1.6rem,4vw,3rem);max-width:900px;margin:0 auto;
  }
  .tradein-panel .reveal h2{margin-bottom:1rem;}
  .tradein-intro{color:var(--grey);font-size:.95rem;max-width:60ch;margin:.8rem 0 0;}
  .tradein-form{margin-top:2rem;}
  .tradein-grid{
    display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.4rem 1.5rem;
  }
  .tradein-field-full{grid-column:1 / -1;}
  .tradein-grid input[type="text"],
  .tradein-grid input[type="tel"],
  .tradein-grid input[type="file"]{
    width:100%;background:var(--black-soft);border:1px solid var(--grey-line);
    color:var(--white);padding:.85rem 1rem;font-size:.92rem;font-family:inherit;
  }
  .tradein-grid input[type="file"]{padding:.7rem 1rem;color:var(--grey);cursor:pointer;}
  .tradein-grid input:focus{outline:none;border-color:var(--red);}
  .tradein-hint{color:var(--grey);font-size:.8rem;margin-top:.6rem;line-height:1.5;}
  .tradein-submit{width:100%;margin-top:2.2rem;padding:1.1rem 2rem;text-transform:uppercase;}
  @media (max-width:640px){
    .tradein-grid{grid-template-columns:1fr;}
  }

  /* ---------- Finance calculator ---------- */
  .finance-result{
    margin-top:2.2rem;padding:clamp(1.4rem,4vw,2.2rem);text-align:center;
    background:var(--black-soft);border:1px solid var(--grey-line);
  }
  .finance-result-label{
    display:block;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--grey);margin-bottom:.6rem;
  }
  .finance-result-value{
    display:block;font-family:var(--display);color:var(--red);
    font-size:clamp(2.2rem,6vw,3.2rem);letter-spacing:.01em;
  }
  .finance-disclaimer{color:var(--grey);font-size:.8rem;max-width:56ch;margin:1rem auto 0;line-height:1.6;}

  /* ---------- Service reminders / maintenance tracker ---------- */
  .tracker-head-row{
    display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:1.2rem;
  }
  .tracker-list{display:flex;flex-direction:column;gap:1rem;}
  .tracker-card{
    display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;
    background:var(--black-card);border:1px solid var(--grey-line);border-left:3px solid var(--grey-line);
    padding:1.3rem 1.6rem;
  }
  .tracker-card.status-overdue{border-left-color:var(--red);}
  .tracker-card.status-soon{border-left-color:#e0a500;}
  .tracker-card.status-upcoming{border-left-color:#2a9d5c;}
  .tracker-card-main h3{
    font-family:var(--display);font-size:.95rem;letter-spacing:.02em;text-transform:uppercase;
    margin-bottom:.35rem;color:var(--white);
  }
  .tracker-card-meta{color:var(--grey);font-size:.85rem;line-height:1.6;}
  .tracker-badge{
    display:inline-block;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
    padding:.3rem .7rem;margin-right:.6rem;border:1px solid var(--grey-line);color:var(--grey);
  }
  .status-overdue .tracker-badge{color:var(--red);border-color:var(--red);}
  .status-soon .tracker-badge{color:#e0a500;border-color:#e0a500;}
  .status-upcoming .tracker-badge{color:#2a9d5c;border-color:#2a9d5c;}
  .tracker-card-actions{display:flex;gap:.7rem;flex-shrink:0;}
  .tracker-card-actions button{
    border:1px solid var(--grey-line);background:transparent;color:var(--white);
    padding:.6rem 1.1rem;font-size:.78rem;font-weight:600;letter-spacing:.03em;cursor:pointer;
    transition:background .25s ease, border-color .25s ease;
  }
  .tracker-card-actions button:hover{border-color:var(--red);}
  .tracker-card-actions .done-btn:hover{background:var(--red);border-color:var(--red);}
  .tracker-card-actions .delete-btn:hover{background:var(--black-soft);}
  @media (max-width:600px){
    .tracker-card{flex-direction:column;align-items:flex-start;}
    .tracker-card-actions{width:100%;}
    .tracker-card-actions button{flex:1;}
  }

  /* ---------- Compare cars ---------- */
  .compare-table-wrap{
    overflow-x:auto;border:1px solid var(--grey-line);-webkit-overflow-scrolling:touch;
  }
  .compare-table{width:100%;border-collapse:collapse;min-width:640px;}
  .compare-table th, .compare-table td{
    padding:1rem 1.3rem;text-align:left;border-bottom:1px solid var(--grey-line);vertical-align:top;
  }
  .compare-table th{
    background:var(--black-card);font-family:var(--display);font-size:1.1rem;text-transform:uppercase;
    letter-spacing:.01em;color:var(--white);position:sticky;top:0;
  }
  .compare-table thead th:first-child{background:var(--black-soft);}
  .compare-table tbody th{
    font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--grey);
    font-family:inherit;font-weight:600;white-space:nowrap;background:var(--black-soft);
  }
  .compare-table td{color:#ddd;font-size:.92rem;line-height:1.6;}
  .compare-table td .cmp-price{color:var(--red);font-weight:700;font-size:1rem;}
  .compare-table tr:last-child th, .compare-table tr:last-child td{border-bottom:none;}
  .compare-table ul{margin:0;padding-left:1.1rem;}
  .compare-table ul li{margin-bottom:.25rem;}
  .compare-cta-row{text-align:center;margin-top:2.5rem;}

  /* ---------- Inventory banner ---------- */
  .inv-banner-wrap{
    position:relative;width:100%;margin-bottom:clamp(2rem,4vw,3.2rem);
  }
  .inv-banner-wrap img{width:100%;display:block;}
  .inv-banner-title{
    position:absolute;top:50%;transform:translateY(-50%);
    left:max(clamp(1.25rem,4vw,3rem), calc((100% - var(--container)) / 2 + clamp(1.25rem,4vw,3rem)));
    font-size:clamp(1.4rem,3.2vw,2.4rem);margin:0;
  }
  @media (max-width:900px){
    .inv-banner-wrap{
      display:flex;flex-direction:column;background:var(--black-soft);
      padding:clamp(1.5rem,4vw,2rem) clamp(1.25rem,4vw,3rem) 0;
    }
    .inv-banner-title{
      position:static;transform:none;order:-1;margin-bottom:1.2rem;
    }
    .inv-banner-wrap img{border:1px solid var(--grey-line);}
  }

  /* ---------- Inventory grid ---------- */
  .inv-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.6rem;}
  @media (max-width:1180px){.inv-grid{grid-template-columns:repeat(2,1fr);}}
  @media (max-width:640px){.inv-grid{grid-template-columns:1fr;}}
  .card{
    background:var(--black-card);border:1px solid var(--grey-line);
    display:flex;flex-direction:column;
    transition:border-color .35s ease, transform .35s ease;
  }
  .card:hover{border-color:var(--red);transform:translateY(-6px);}
  .card-media{
    position:relative;aspect-ratio:4/3;overflow:hidden;
  }
  .card-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.2,.8,.2,1);}
  .card:hover .card-media img{transform:scale(1.08);}
  .card-media .qv{
    position:absolute;inset:0;background:rgba(0,0,0,.72);
    display:flex;align-items:center;justify-content:center;cursor:pointer;
    opacity:0;transition:opacity .3s ease;
  }
  .card:hover .card-media .qv{opacity:1;}
  .qv-label{border:1px solid var(--white);padding:.7rem 1.6rem;font-size:.8rem;letter-spacing:.15em;font-weight:700;}

  /* ---------- Quick-view lightbox ---------- */
  .lightbox{
    position:fixed;inset:0;z-index:10000;background:rgba(5,5,5,.94);
    display:flex;align-items:center;justify-content:center;
    opacity:0;pointer-events:none;transition:opacity .3s ease;
  }
  .lightbox.open{opacity:1;pointer-events:auto;}
  .lightbox-stage{margin:0;display:flex;flex-direction:column;align-items:center;gap:1rem;max-width:min(90vw,900px);}
  .lightbox-img{
    max-width:min(88vw,900px);max-height:70vh;object-fit:contain;
    border:1px solid var(--grey-line);background:var(--black-soft);
    opacity:0;transform:scale(.97);transition:opacity .25s ease, transform .25s ease;
  }
  .lightbox-img.show{opacity:1;transform:scale(1);}
  .lightbox-stage figcaption{
    display:flex;align-items:center;gap:.9rem;color:var(--grey);font-size:.85rem;letter-spacing:.02em;
  }
  .lightbox-stage figcaption span:first-child{color:var(--white);font-weight:700;text-transform:uppercase;font-family:var(--display);font-size:.8rem;letter-spacing:.03em;}
  .lightbox-close{
    position:absolute;top:1.4rem;right:1.6rem;width:44px;height:44px;border-radius:50%;
    border:1px solid var(--grey-line);background:rgba(255,255,255,.04);color:var(--white);
    font-size:1.6rem;line-height:1;cursor:pointer;transition:.25s;
  }
  .lightbox-close:hover{border-color:var(--red);color:var(--red);}
  .lightbox-nav{
    position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:50%;
    border:1px solid var(--grey-line);background:rgba(255,255,255,.04);color:var(--white);
    font-size:1.1rem;cursor:pointer;transition:.25s;
  }
  .lightbox-nav:hover{border-color:var(--red);color:var(--red);background:rgba(255,45,45,.08);}
  .lightbox-prev{left:1.6rem;}
  .lightbox-next{right:1.6rem;}
  @media (max-width:700px){
    .lightbox-nav{width:42px;height:42px;font-size:.95rem;}
    .lightbox-prev{left:.6rem;}
    .lightbox-next{right:.6rem;}
    .lightbox-close{top:.8rem;right:.8rem;width:38px;height:38px;font-size:1.3rem;}
  }
  .card-body{padding:1.4rem 1.4rem 1.6rem;display:flex;flex-direction:column;gap:.7rem;flex:1;}
  .card-body h3{font-family:var(--display);font-size:.92rem;letter-spacing:.03em;word-spacing:.05em;line-height:1.5;text-transform:uppercase;}
  .card-price{color:var(--red);font-weight:700;font-size:1.05rem;}
  .card-specs{font-size:.83rem;color:var(--grey);line-height:1.7;flex:1;}
  .card-cta{
    display:block;margin-top:.4rem;border:1px solid var(--grey-line);padding:.85rem;text-align:center;
    font-size:.85rem;font-weight:700;letter-spacing:.05em;transition:.3s;
  }
  .card-cta:hover{background:var(--red);border-color:var(--red);}

  /* ---------- WhatsApp ---------- */
  /* Sticky-panel scroll transition: this section pins at the top and the
     next section (Import Your Own Car) slides up from below to cover it,
     while this panel stays fixed underneath — same layered-panel effect as
     the reference. The wrap div bounds the sticky element's containing
     block so it releases right after its own height instead of staying
     pinned for the rest of the page. */
  .whatsapp-pin-wrap{position:relative;height:calc(100svh + 130vh);}
  .whatsapp{
    background:var(--black-soft);position:sticky;top:0;z-index:30;overflow:hidden;
    min-height:100svh;display:flex;align-items:center;padding:clamp(1.8rem,3.6vw,3rem) 0;
    will-change:transform;
  }
  .wa-grid{display:grid;grid-template-columns:.9fr 1.4fr;gap:clamp(1.5rem,4vw,3rem);align-items:center;}
  .wa-grid .h-display{font-size:clamp(1.3rem,3vw,2.4rem);}
  .wa-grid .h-display .g{color:#25D366;}
  .wa-grid p{color:#c9c9c9;max-width:52ch;margin:1.2rem 0 1.6rem;font-size:1.05rem;}
  .nowrap{white-space:nowrap;}
  .wa-visual{position:relative;display:flex;align-items:center;justify-content:center;min-width:0;}
  .wa-parallax{will-change:transform;}
  .wa-badge{position:relative;width:min(1120px,68vw);max-width:100%;}
  .wa-float{animation:waFloat 4.5s ease-in-out infinite;}
  @keyframes waFloat{
    0%,100%{transform:translateY(0);}
    50%{transform:translateY(-18px);}
  }
  @media (prefers-reduced-motion: reduce){
    .wa-float{animation:none;}
  }
  .wa-badge .glow{
    position:absolute;inset:16%;border-radius:50%;background:radial-gradient(circle,#25D36630,transparent 70%);
    filter:blur(14px);opacity:.7;
    transition:opacity .35s ease, filter .35s ease;
  }
  .wa-icon-link{position:relative;z-index:2;display:block;cursor:pointer;}
  .wa-badge img.wa-icon{
    position:relative;width:100%;
    filter:drop-shadow(0 14px 26px rgba(37,211,102,.2));
    transition:transform .35s cubic-bezier(.34,1.56,.64,1), filter .35s ease;
  }
  .wa-icon-link:hover img.wa-icon{
    transform:scale(1.12);
    filter:drop-shadow(0 0 10px rgba(37,211,102,.5));
  }
  .wa-badge:hover .glow{
    filter:blur(18px);opacity:.85;
  }

  /* ---------- Import your own car ---------- */
  /* Positioned + higher z-index than .whatsapp so it slides up and covers
     that sticky panel, per the layered scroll-transition effect. */
  .import-sec{background:var(--black);position:relative;z-index:31;will-change:transform;}
  .import-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,5rem);align-items:center;}
  .import-grid .h-display{font-size:clamp(1.7rem,4.5vw,3.4rem);}
  .import-grid .h-display .r{color:var(--red);}
  .import-grid p{color:#c9c9c9;max-width:44ch;margin-bottom:1rem;font-size:1.05rem;}
  .import-grid .tag{font-weight:700;margin-bottom:1.8rem;display:block;color:#fff;}
  .import-visual{
    position:relative;aspect-ratio:4/3;
    border:1px solid var(--grey-line);overflow:hidden;
  }

  /* Homepage-only: let the shipping image spread full-bleed behind the whole section */
  .import-sec-bg{overflow:hidden;min-height:80vh;display:flex;align-items:center;}
  .import-sec-bg .import-visual{
    position:absolute;inset:0;aspect-ratio:auto;border:none;z-index:0;
  }
  .import-sec-bg .import-visual::after{
    content:"";position:absolute;inset:0;z-index:1;
    background:radial-gradient(ellipse at center, rgba(5,5,5,.82) 0%, rgba(5,5,5,.6) 45%, rgba(5,5,5,.35) 100%);
  }
  .import-sec-bg .wrap{display:flex;justify-content:center;}
  .import-sec-bg .import-grid{
    display:block;position:relative;z-index:5;max-width:640px;
    margin:0 auto;text-align:center;
  }
  .import-sec-bg .import-grid p{margin-left:auto;margin-right:auto;}
  .import-sec-bg .import-grid .hero-actions,
  .import-sec-bg .import-grid .btn{margin-left:auto;margin-right:auto;}
  @media (max-width:900px){
    .import-sec-bg .import-visual::after{
      background:radial-gradient(ellipse at center, rgba(5,5,5,.85) 0%, rgba(5,5,5,.65) 50%, rgba(5,5,5,.4) 100%);
    }
    .import-sec-bg{min-height:70vh;}
  }

  /* ---------- About ---------- */
  .about{position:relative;background:var(--black);overflow:hidden;min-height:80vh;display:flex;align-items:center;}
  .about-bg-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;}
  .about-overlay{
    content:"";position:absolute;inset:0;
    background:linear-gradient(90deg, rgba(5,5,5,.97) 0%, rgba(5,5,5,.85) 38%, rgba(5,5,5,.35) 70%, rgba(5,5,5,.1) 100%);
    z-index:1;
  }
  .about .wrap{max-width:100%;margin:0;padding-left:clamp(1.25rem,4vw,3rem);padding-right:clamp(1.25rem,4vw,3rem);}
  .about-content{position:relative;z-index:2;max-width:640px;text-align:left;}
  @media (max-width:900px){
    .about-overlay{
      background:linear-gradient(180deg, rgba(5,5,5,.5) 0%, rgba(5,5,5,.8) 55%, rgba(5,5,5,.97) 100%);
    }
    .about{min-height:70vh;}
  }
  .about .h-display{font-size:clamp(1.55rem,4.2vw,3.15rem);margin-bottom:1.8rem;}
  .about .h-display em{font-style:normal;color:var(--red);}
  .about p{color:#c9c9c9;margin-bottom:1.3rem;max-width:62ch;font-size:1.05rem;}
  .about strong{color:var(--white);}
  .about-addr{color:var(--white);font-weight:700;}

  /* ---------- Showroom (footer) ---------- */
  .showroom-video-wrap{position:relative;overflow:hidden;}
  .showroom-bg-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;}
  .showroom-video-overlay{
    position:absolute;inset:0;z-index:1;
    background:linear-gradient(180deg, rgba(5,5,5,.55) 0%, rgba(5,5,5,.82) 60%, rgba(5,5,5,.95) 100%);
  }
  .footer-showroom{position:relative;z-index:2;text-align:center;padding-top:3rem;padding-bottom:2.5rem;}
  .footer-showroom .kicker{display:block;}
  .footer-showroom .h-display{font-size:clamp(1.55rem,4.2vw,3.15rem);margin-bottom:1.2rem;}
  .footer-showroom .h-display .accent{color:var(--red);}
  .footer-showroom p{color:#c9c9c9;max-width:56ch;margin:0 auto 1.6rem;font-size:1.05rem;}
  .showroom-hours{margin:0 auto 1.8rem;max-width:340px;}
  .showroom-hours div{display:flex;justify-content:space-between;padding:.55rem 0;border-bottom:1px solid var(--grey-line);font-size:.92rem;color:#ccc;}
  .showroom-hours div span:last-child{color:var(--white);font-weight:600;}

  /* ---------- Merch ---------- */
  .merch-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(2rem,6vw,4rem);align-items:start;}
  .merch-visual{
    position:relative;aspect-ratio:1;border:1px solid var(--grey-line);
    background:linear-gradient(155deg,#181818,#050505 65%);
    display:flex;align-items:center;justify-content:center;overflow:hidden;
  }
  .merch-visual img{width:100%;height:100%;object-fit:cover;}
  .merch-thumbs{display:flex;gap:.8rem;margin-top:.8rem;}
  .merch-thumbs button{
    width:70px;height:70px;padding:0;border:1.5px solid var(--grey-line);overflow:hidden;
    background:linear-gradient(155deg,#181818,#050505 65%);transition:border-color .25s;
  }
  .merch-thumbs button.active, .merch-thumbs button:hover{border-color:var(--red);}
  .merch-thumbs img{width:100%;height:100%;object-fit:cover;display:block;}
  .merch-name{font-family:var(--display);font-size:clamp(1.4rem,3.2vw,2.1rem);margin-bottom:.6rem;letter-spacing:.01em;word-spacing:.05em;line-height:1.25;text-transform:uppercase;}
  .merch-sub{color:var(--grey);margin-bottom:.3rem;}
  .merch-price{font-family:var(--body);font-weight:700;font-size:1.15rem;color:var(--red);margin-bottom:1.6rem;}
  .merch-label{font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--grey);margin-bottom:.6rem;display:block;}
  .size-opts{display:flex;gap:.7rem;margin-bottom:1.8rem;}
  .size-opts button{
    width:52px;height:52px;border:1px solid var(--grey-line);font-weight:700;transition:.25s;
  }
  .size-opts button:hover, .size-opts button.active{background:var(--red);border-color:var(--red);}
  .qty-row{display:flex;align-items:center;gap:1.2rem;margin-bottom:2rem;flex-wrap:wrap;}
  .qty-box{display:flex;align-items:center;border:1px solid var(--grey-line);}
  .qty-box button{width:44px;height:44px;font-size:1.2rem;}
  .qty-box button:hover{background:var(--red);}
  .qty-box .qty-val{width:44px;text-align:center;font-weight:700;}
  .merch-desc{color:#c9c9c9;max-width:52ch;margin-top:1.6rem;font-size:.98rem;}

  /* ---------- Footer ---------- */
  footer{background:var(--black);border-top:2px solid var(--red);padding-top:clamp(3rem,7vw,5rem);overflow:hidden;position:relative;}
  .footer-watermark{display:block;pointer-events:none;margin-top:clamp(-10rem,-16vw,-6rem);padding-left:0!important;padding-right:0!important;position:relative;z-index:0;}
  .footer-watermark img{display:block;width:min(112%,1500px);max-width:none;opacity:.5;}
  .footer-newsletter{
    display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1.5rem;
    padding-bottom:2.5rem;margin-bottom:2.5rem;border-bottom:1px solid var(--grey-line);
    position:relative;z-index:1;
  }
  .footer-newsletter-copy h4{font-family:var(--display);font-size:1.1rem;letter-spacing:.03em;text-transform:uppercase;color:var(--white);margin-bottom:.4rem;}
  .footer-newsletter-copy p{color:var(--grey);font-size:.9rem;max-width:40ch;}
  .newsletter-form{display:flex;gap:.8rem;flex-wrap:wrap;flex:1;max-width:460px;}
  .newsletter-form input{
    flex:1;min-width:200px;background:var(--black-soft);border:1px solid var(--grey-line);
    color:var(--white);padding:.85rem 1.1rem;font-size:.88rem;font-family:inherit;
  }
  .newsletter-form input::placeholder{color:var(--grey);}
  .newsletter-form input:focus{outline:none;border-color:var(--red);}
  .newsletter-form button{
    background:var(--red);color:var(--white);border:none;padding:.85rem 1.6rem;
    font-weight:700;text-transform:uppercase;font-size:.8rem;letter-spacing:.03em;
    cursor:pointer;transition:background .25s ease;white-space:nowrap;
  }
  .newsletter-form button:hover{background:var(--red-deep);}
  .newsletter-form.sent input,.newsletter-form.sent button{opacity:.7;pointer-events:none;}
  @media (max-width:560px){
    .newsletter-form{max-width:100%;}
    .newsletter-form input{min-width:0;width:100%;}
    .newsletter-form button{width:100%;}
  }
  .footer-grid{
    display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:2.5rem;padding-bottom:3rem;
    position:relative;z-index:1;
  }
  .footer-brand .logo{margin-bottom:1rem;}
  .footer-brand .logo img{height:44px;}
  .footer-brand p{color:var(--grey);max-width:34ch;font-size:.92rem;margin-bottom:1.6rem;}
  .footer-socials{display:flex;gap:1rem;}
  .footer-socials a{
    width:40px;height:40px;border:1px solid var(--grey-line);border-radius:50%;
    display:flex;align-items:center;justify-content:center;transition:.3s;
  }
  .footer-socials a:hover{background:var(--red);border-color:var(--red);}
  .footer-socials svg{width:17px;}
  .footer-col h4{font-family:var(--display);font-size:.92rem;letter-spacing:.05em;margin-bottom:1.2rem;color:var(--red);text-transform:uppercase;}
  .footer-col ul{display:flex;flex-direction:column;gap:.7rem;}
  .footer-col a{color:#ccc;font-size:.92rem;transition:color .25s;}
  .footer-col a:hover{color:var(--red);}
  .footer-cta{grid-column:4;}
  .footer-bottom{
    border-top:1px solid var(--grey-line);padding:1.5rem clamp(1.25rem,4vw,3rem);
    display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem;
    font-size:.8rem;color:var(--grey);
  }
  @media (max-width:900px){
    .footer-grid{grid-template-columns:1fr 1fr;}
    .footer-cta{grid-column:span 2;}
  }
  @media (max-width:560px){
    .footer-grid{grid-template-columns:1fr;}
    .footer-cta{grid-column:1;}
  }

  /* ---------- Responsive overrides ---------- */
  @media (max-width:900px){
    .showcase-row .wrap, .import-grid, .wa-grid, .merch-grid, .deal-grid{grid-template-columns:1fr;}
    .showcase-row.reverse .wrap{direction:ltr;}
    .deal-gallery{grid-template-columns:repeat(2,1fr);}
    .wa-grid{gap:.6rem;}
    .wa-grid p{margin-bottom:1.1rem;}
    .wa-visual{margin-top:-2.4rem;margin-bottom:-3rem;}
    .wa-badge{width:min(560px,85vw);}
    .whatsapp{padding-top:1.6rem;padding-bottom:.8rem;}
  }

  @media (max-width:600px){
    .logo img{height:52px;}
    .nav{padding:1rem clamp(1.25rem,4vw,3rem);}
    .hero-topline{font-size:.65rem;letter-spacing:.18em;margin-bottom:1.4rem;}
    .hero-car-wrap{margin-top:0;}
    .hero-talk-badge{width:min(76px,18vw);bottom:1rem;right:1rem;}
    .filters{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;}
    .filter-btn{padding:.85rem 1rem;text-align:center;}
    .deal-gallery{grid-template-columns:repeat(2,1fr);gap:.6rem;}
    .deal-lines{opacity:.2;}
    .footer-bottom{flex-direction:column;text-align:left;gap:.6rem;}
    .qty-row{gap:.9rem;}
    .about::before{
      background:
        linear-gradient(180deg, rgba(5,5,5,.55) 0%, rgba(5,5,5,.88) 55%, rgba(5,5,5,.97) 100%),
        url('showroom-lot.jpg');
      background-size:cover;background-position:center 30%;
    }
  }

  /* Reveal utility (JS toggled) */
  .reveal{opacity:0;transform:translateY(28px);}
  .reveal.in{opacity:1;transform:translateY(0);transition:opacity .7s cubic-bezier(.2,.8,.2,1), transform .7s cubic-bezier(.2,.8,.2,1);}
  .reveal-rise{opacity:0;transform:translateY(90px);}
  .reveal-rise.in{opacity:1;transform:translateY(0);transition:opacity .9s cubic-bezier(.16,1,.3,1), transform .9s cubic-bezier(.16,1,.3,1);}

  ::selection{background:var(--red);color:var(--white);}

  /* ---------- Multi-page nav state ---------- */
  .page-offset{height:6rem;}
  @media (max-width:600px){ .page-offset{height:4.5rem;} }

  /* ---------- Chat widget ---------- */
  .chat-widget{
    position:fixed;bottom:1.5rem;right:1.5rem;width:min(360px,90vw);
    max-height:min(560px,75vh);display:flex;flex-direction:column;
    background:var(--black-soft);border:1px solid var(--grey-line);border-radius:16px;
    overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.6);
    transform:translateY(24px) scale(.95);opacity:0;pointer-events:none;
    transition:transform .3s cubic-bezier(.34,1.56,.64,1), opacity .25s ease;
    z-index:3000;
  }
  .chat-widget.open{transform:translateY(0) scale(1);opacity:1;pointer-events:auto;}
  .chat-header{display:flex;align-items:center;gap:.8rem;padding:1rem 1.2rem;background:var(--black);border-bottom:1px solid var(--grey-line);}
  .chat-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;flex-shrink:0;}
  .chat-title{font-weight:700;font-size:.92rem;}
  .chat-status{font-size:.74rem;color:#25D366;display:flex;align-items:center;gap:.35rem;margin-top:.15rem;}
  .chat-status .dot{width:7px;height:7px;border-radius:50%;background:#25D366;display:inline-block;}
  .chat-close{margin-left:auto;font-size:1.5rem;line-height:1;color:var(--grey);cursor:pointer;background:none;border:none;padding:0;}
  .chat-close:hover{color:var(--white);}
  .chat-body{flex:1;overflow-y:auto;padding:1.1rem 1.2rem;display:flex;flex-direction:column;gap:.7rem;min-height:200px;max-height:320px;}
  .chat-msg{max-width:85%;padding:.65rem .9rem;border-radius:12px;font-size:.86rem;line-height:1.5;}
  .chat-msg.bot{background:var(--black-card);border:1px solid var(--grey-line);align-self:flex-start;border-bottom-left-radius:2px;}
  .chat-msg.user{background:var(--red);color:var(--white);align-self:flex-end;border-bottom-right-radius:2px;}
  .chat-quick{display:flex;flex-wrap:wrap;gap:.5rem;padding:0 1.2rem 1rem;}
  .chat-quick button{border:1px solid var(--grey-line);background:none;color:var(--white);padding:.5rem .8rem;border-radius:20px;font-size:.76rem;cursor:pointer;transition:.25s;}
  .chat-quick button:hover{border-color:var(--red);background:var(--red);}
  .chat-input-row{display:flex;border-top:1px solid var(--grey-line);}
  .chat-input-row input{flex:1;background:none;border:none;padding:1rem 1.2rem;color:var(--white);font-family:inherit;font-size:.88rem;min-width:0;}
  .chat-input-row input:focus{outline:none;}
  .chat-input-row input::placeholder{color:var(--grey);}
  .chat-input-row button{width:52px;flex-shrink:0;border:none;background:var(--red);color:var(--white);font-size:1.05rem;cursor:pointer;transition:.25s;}
  .chat-input-row button:hover{background:var(--red-deep);}
  @media (max-width:480px){
    .chat-widget{right:.75rem;left:.75rem;width:auto;bottom:.75rem;}
  }

  /* ---------- Scroll to top ---------- */
  .scroll-top-btn{
    position:fixed;left:1.5rem;bottom:1.5rem;z-index:2400;
    width:48px;height:48px;border-radius:50%;
    background:var(--black-soft);border:1px solid var(--grey-line);color:var(--white);
    display:flex;align-items:center;justify-content:center;cursor:pointer;
    opacity:0;transform:translateY(12px) scale(.9);pointer-events:none;
    transition:opacity .3s ease, transform .3s ease, background .3s ease, border-color .3s ease;
    box-shadow:0 10px 24px rgba(0,0,0,.4);
  }
  .scroll-top-btn.show{opacity:1;transform:translateY(0) scale(1);pointer-events:auto;}
  .scroll-top-btn:hover{background:var(--red);border-color:var(--red);}
  .scroll-top-btn svg{width:20px;height:20px;}
  @media (max-width:480px){
    .scroll-top-btn{left:.9rem;bottom:.9rem;width:44px;height:44px;}
  }
