:root{
      --void:#050609;
      --asphalt:#0b0e13;
      --panel:#111720;
      --panel2:#171f2b;
      --white:#fff;
      --fog:#c9d0d8;
      --muted:#7e8996;
      --line:rgba(255,255,255,.13);
      --acid:#d7ff39;
      --blue:#4fc3ff;
      --orange:#ff5a1f;
      --paper:#f4f1ea;
      --shadow:0 40px 120px rgba(0,0,0,.55);
      --max:1380px;
      --ease:cubic-bezier(.19,1,.22,1);
      --rail:108px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth;background:var(--void)}
    body{margin:0;background:var(--void);color:#fff;font-family:"Space Grotesk",system-ui,sans-serif;line-height:1.45;overflow-x:hidden}
    img{display:block;max-width:100%}
    a{color:inherit;text-decoration:none}
    button,input,select,textarea{font:inherit}
    button{cursor:pointer}
    ::selection{background:var(--acid);color:#050609}
    .container{max-width:var(--max);margin:auto;padding:0 34px}
    .page{display:none;animation:pageIn .55s var(--ease) both}
    .page.active{display:block}
    @keyframes pageIn{from{opacity:0;transform:translateY(18px);filter:blur(8px)}to{opacity:1;transform:none;filter:none}}
    .reveal{opacity:0;transform:translateY(28px);filter:blur(7px);transition:opacity .9s var(--ease),transform .9s var(--ease),filter .9s var(--ease)}
    .reveal.in{opacity:1;transform:none;filter:none}
    .mono{font-family:"Bebas Neue",Impact,sans-serif;letter-spacing:.02em}
    h1,h2,h3,p{margin:0}
    h1,h2{font-family:"Bebas Neue",Impact,sans-serif;font-weight:400;letter-spacing:.01em;line-height:.88}
    h1{font-size:clamp(78px,13vw,212px)}
    h2{font-size:clamp(54px,8vw,128px)}
    h3{font-size:25px;line-height:1.04}
    .eyebrow{display:inline-flex;align-items:center;gap:12px;font-size:12px;text-transform:uppercase;letter-spacing:.22em;font-weight:700;color:var(--acid);margin-bottom:18px}
    .eyebrow:before{content:"";width:52px;height:1px;background:var(--acid)}
    .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--acid);color:#050609;border:1px solid var(--acid);padding:15px 22px;text-transform:uppercase;font-weight:800;letter-spacing:.08em;font-size:12px;transition:transform .35s var(--ease),background .35s var(--ease),color .35s var(--ease),box-shadow .35s var(--ease)}
    .btn:hover{transform:translateY(-2px);background:#fff;border-color:#fff;box-shadow:0 22px 60px rgba(215,255,57,.14)}
    .btn.dark{background:#050609;color:#fff;border-color:#050609}
    .btn.dark:hover{background:var(--acid);color:#050609;border-color:var(--acid)}
    .btn.ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.28)}
    .btn.ghost:hover{background:#fff;color:#050609;border-color:#fff}
    .chip{display:inline-flex;padding:7px 10px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.05);font-size:11px;text-transform:uppercase;letter-spacing:.1em;font-weight:800;color:#fff}
    .light .chip{color:#111;border-color:rgba(0,0,0,.16);background:rgba(0,0,0,.05)}

    .rail{position:fixed;z-index:120;inset:0 auto 0 0;width:var(--rail);background:#050609;border-right:1px solid var(--line);display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:18px 0}
    .brand-mark{width:64px;height:64px;display:grid;place-items:center;background:#fff;color:#050609;font-family:"Bebas Neue";font-size:34px;line-height:1;clip-path:polygon(0 0,100% 0,82% 100%,18% 100%)}
    .rail-nav{display:flex;flex-direction:column;align-items:center;gap:12px}
    .rail-nav a{width:74px;min-height:36px;display:grid;place-items:center;color:#a9b2bd;text-transform:uppercase;font-size:10px;letter-spacing:.12em;font-weight:800;writing-mode:vertical-rl;transform:rotate(180deg);position:relative}
    .rail-nav a.active,.rail-nav a:hover{color:#fff}
    .rail-nav a.active:before,.rail-nav a:hover:before{content:"";position:absolute;right:3px;top:6px;bottom:6px;width:2px;background:var(--acid)}
    .rail-foot{writing-mode:vertical-rl;transform:rotate(180deg);font-size:10px;text-transform:uppercase;letter-spacing:.18em;color:#7f8997;font-weight:800}
    .mobile-head{display:none;position:sticky;top:0;z-index:130;background:rgba(5,6,9,.93);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);padding:14px 18px;align-items:center;justify-content:space-between;gap:16px}
    .mobile-brand{display:flex;align-items:center;gap:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
    .mobile-brand .brand-mark{width:48px;height:48px;font-size:25px}
    .menu-toggle{background:#fff;color:#050609;border:0;padding:12px 15px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}
    .mobile-menu{display:none;position:fixed;z-index:140;left:18px;right:18px;top:82px;background:#050609;border:1px solid var(--line);box-shadow:var(--shadow);padding:16px}
    .mobile-menu.open{display:grid}
    .mobile-menu a{padding:13px 10px;border-bottom:1px solid var(--line);text-transform:uppercase;font-weight:800;letter-spacing:.08em}
    .mobile-menu a:last-child{border-bottom:0}

    .site{margin-left:var(--rail)}
    .hero{position:relative;min-height:100vh;overflow:hidden;background:#06080b;display:grid;align-items:end}
    .hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,6,9,.98),rgba(5,6,9,.8) 35%,rgba(5,6,9,.14));z-index:2}
    .hero:after{content:"";position:absolute;inset:0;background:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:72px 72px;z-index:3;pointer-events:none;mask-image:linear-gradient(90deg,#000,transparent 80%)}
    .hero-bg{position:absolute;inset:0}
    .hero-bg img{width:100%;height:100%;object-fit:cover;object-position:center right;filter:saturate(1.05) contrast(1.07)}
    .hero-inner{position:relative;z-index:4;width:100%;padding:110px 34px 58px}
    .hero-title{max-width:1080px}
    .hero h1 span{color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.72)}
    .hero-copy{max-width:720px;color:#d7dbe1;font-size:18px;margin:22px 0 34px}
    .hero-actions{display:flex;gap:14px;flex-wrap:wrap}
    .hud{position:absolute;z-index:5;right:34px;bottom:34px;width:min(520px,42vw);display:grid;grid-template-columns:repeat(3,1fr);background:rgba(5,6,9,.78);border:1px solid var(--line);backdrop-filter:blur(18px)}
    .hud div{padding:20px;border-right:1px solid var(--line)}
    .hud div:last-child{border-right:0}
    .hud strong{display:block;font-family:"Bebas Neue";font-size:37px;line-height:.9;color:#fff}
    .hud span{display:block;margin-top:7px;color:#aeb7c3;text-transform:uppercase;font-size:10px;letter-spacing:.12em;font-weight:800}

    .strip{background:var(--acid);color:#050609;overflow:hidden}
    .strip-track{display:flex;gap:38px;white-space:nowrap;animation:marquee 28s linear infinite;padding:14px 0;text-transform:uppercase;font-size:12px;letter-spacing:.14em;font-weight:900}
    .strip-track span{display:inline-flex;align-items:center;gap:38px}
    .strip-track span:after{content:"";width:8px;height:8px;background:#050609;border-radius:999px}
    @keyframes marquee{to{transform:translateX(-50%)}}

    .section{padding:96px 0;position:relative}
    .dark{background:var(--void);color:#fff}
    .panel{background:var(--asphalt);color:#fff}
    .light{background:var(--paper);color:#111}
    .section-head{display:flex;align-items:end;justify-content:space-between;gap:34px;margin-bottom:44px}
    .section-head p{max-width:600px;color:#aeb6c1}
    .light .section-head p{color:#555}
    .light .eyebrow{color:#111}.light .eyebrow:before{background:#111}

    .bay-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}
    .vehicle{background:#101620;border:1px solid var(--line);overflow:hidden;box-shadow:var(--shadow);position:relative;transition:.45s var(--ease)}
    .vehicle:hover{transform:translateY(-7px);border-color:rgba(215,255,57,.45)}
    .vehicle-img{height:330px;overflow:hidden;background:#0a0d12}
    .vehicle.feature .vehicle-img{height:520px}
    .vehicle-img img{width:100%;height:100%;object-fit:cover;transition:transform .85s var(--ease),filter .85s var(--ease);filter:saturate(.96) contrast(1.08)}
    .vehicle:hover .vehicle-img img{transform:scale(1.045);filter:saturate(1.08) contrast(1.1)}
    .vehicle-body{padding:24px}
    .vehicle-body p{color:#c4cbd4;margin:12px 0 18px}
    .price{font-weight:900;font-size:23px;color:#fff}
    .price small{font-size:12px;color:#8d98a6}
    .vehicle-row{display:grid;gap:18px}
    .stock-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
    .filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:28px}
    .filter-btn{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.22);padding:11px 15px;text-transform:uppercase;font-size:12px;letter-spacing:.08em;font-weight:900}
    .filter-btn:hover,.filter-btn.active{background:#fff;color:#050609}
    .vehicle.hidden{display:none}

    .split-angle{display:grid;grid-template-columns:.95fr 1.05fr;min-height:720px;background:#fff;color:#111}
    .angle-copy{padding:88px 34px 88px max(34px,calc((100vw - var(--max))/2 + 34px));display:flex;flex-direction:column;justify-content:center}
    .angle-copy p{max-width:680px;color:#555;font-size:17px;margin:20px 0}
    .angle-img{position:relative;overflow:hidden;clip-path:polygon(8% 0,100% 0,100% 100%,0 100%)}
    .angle-img img{width:100%;height:100%;object-fit:cover;filter:contrast(1.08) saturate(.95)}
    .angle-copy .eyebrow{color:#111}.angle-copy .eyebrow:before{background:#111}

    .service-matrix{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line)}
    .service{min-height:330px;padding:32px;border-right:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between;background:#0e131b}
    .service:last-child{border-right:0}
    .service i{font-size:32px;color:var(--acid)}
    .service h3{margin:28px 0 12px}
    .service p{color:#bfc7d2}

    .page-hero{min-height:480px;background:linear-gradient(90deg,rgba(5,6,9,.96),rgba(5,6,9,.72),rgba(5,6,9,.18)),var(--hero-img) center/cover no-repeat}
    .page-hero .container{min-height:480px;display:flex;flex-direction:column;justify-content:center;padding-top:70px;padding-bottom:70px}
    .page-hero p{max-width:780px;color:#d8dde5;font-size:18px;margin-top:18px}
    .crumbs{font-size:12px;text-transform:uppercase;letter-spacing:.14em;color:#cdd4de;font-weight:800;margin-bottom:16px}
    .crumbs a{color:#fff}

    .brief{display:grid;grid-template-columns:.8fr 1.2fr;gap:28px;align-items:start}
    .brief-panel{position:sticky;top:28px;background:#050609;color:#fff;padding:30px;border:1px solid var(--line);box-shadow:var(--shadow)}
    .brief-panel h3{font-family:"Bebas Neue";font-size:56px;font-weight:400;line-height:.92}
    .summary{display:grid;gap:11px;margin-top:22px}
    .summary div{display:flex;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line);padding-bottom:10px}
    .summary span:first-child{color:#98a3b1;text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:900}
    .form-card{background:#121822;color:#fff;padding:30px;border:1px solid var(--line);box-shadow:var(--shadow)}
    .form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
    .field{display:grid;gap:7px}.field.full{grid-column:1/-1}
    label{font-size:11px;text-transform:uppercase;letter-spacing:.1em;font-weight:900;color:#e8ecf2}
    input,select,textarea{width:100%;border:1px solid rgba(255,255,255,.18);background:#07090d;color:#fff;padding:14px;outline:none}
    select option{color:#111}textarea{min-height:130px;resize:vertical}
    input:focus,select:focus,textarea:focus{border-color:var(--acid);box-shadow:0 0 0 3px rgba(215,255,57,.09)}
    .form-note{margin-top:18px;background:#fff;color:#111;padding:20px}
    .form-note p{color:#555;margin-bottom:16px}

    .steps{display:grid;grid-template-columns:repeat(2,1fr);background:#161d27;border:1px solid var(--line)}
    .step{display:grid;grid-template-columns:76px 1fr;gap:18px;min-height:215px;padding:30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
    .step:nth-child(2n){border-right:0}.step:nth-last-child(-n+2){border-bottom:0}
    .step-num{font-family:"Bebas Neue";font-size:52px;line-height:.9;color:var(--acid)}
    .step p{color:#c3cbd5;margin-top:8px}
    .light .steps{background:#111820}.light .step{color:#fff}

    .reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
    .review{background:#111720;border:1px solid var(--line);padding:26px;box-shadow:var(--shadow)}
    .review:nth-child(3n+2){transform:translateY(14px)}
    .stars{letter-spacing:2px;color:var(--acid);margin-bottom:12px}
    .review p{color:#d4dbe4;margin:12px 0 18px}
    .review-meta{display:flex;justify-content:space-between;gap:14px;border-top:1px solid var(--line);padding-top:14px;color:#aeb7c3;text-transform:uppercase;font-size:12px;letter-spacing:.08em;font-weight:900}

    .journal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
    .article{background:#111720;border:1px solid var(--line);box-shadow:var(--shadow);overflow:hidden}
    .article img{height:280px;width:100%;object-fit:cover}
    .article-body{padding:24px}
    .article-body p{color:#c6ced9;margin:10px 0 18px}
    .legal{max-width:920px}.legal h2{font-family:"Space Grotesk";font-size:28px;letter-spacing:-.03em;margin:34px 0 12px;color:#111}.legal p,.legal li{color:#444;font-size:16px}

    .faq{display:grid;gap:12px}.faq-item{background:#fff;color:#111;box-shadow:0 20px 70px rgba(0,0,0,.16)}.faq-q{width:100%;display:flex;justify-content:space-between;gap:18px;align-items:center;text-align:left;background:#fff;color:#111;border:0;padding:19px 21px;font-weight:900}.faq-a{max-height:0;overflow:hidden;color:#555;padding:0 21px;opacity:0;transition:.5s var(--ease)}.faq-item.open .faq-a{max-height:260px;padding:0 21px 20px;opacity:1}.faq-item.open .faq-q span{transform:rotate(45deg)}

    footer{background:#050609;border-top:1px solid var(--line);color:#cad2dd}
    .footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:28px;padding:58px 34px}
    footer h3{font-size:12px;text-transform:uppercase;letter-spacing:.14em;color:#fff;margin:0 0 15px}
    footer p,footer a{display:block;color:#cad2dd;margin:0 0 9px}
    .footer-brand{display:flex;align-items:center;gap:14px;margin-bottom:14px}
    .footer-bottom{max-width:var(--max);margin:auto;border-top:1px solid var(--line);padding:18px 34px;color:#8793a2;font-size:13px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
    .sticky{position:fixed;right:18px;bottom:18px;z-index:95;background:var(--acid);color:#050609;padding:13px 16px;text-transform:uppercase;letter-spacing:.1em;font-weight:900;font-size:12px;box-shadow:0 24px 80px rgba(0,0,0,.34)}
    .cookie{display:none;position:fixed;left:18px;right:18px;bottom:18px;z-index:250;background:#fff;color:#111;box-shadow:var(--shadow);max-width:980px;margin:auto}
    .cookie.show{display:block}.cookie-inner{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;padding:20px}.cookie p{color:#444;font-size:14px}

    @media(max-width:1180px){
      .rail{display:none}.site{margin-left:0}.mobile-head{display:flex}.bay-grid,.split-angle,.brief{grid-template-columns:1fr}.angle-copy{padding:70px 28px}.angle-img{clip-path:none;min-height:440px}.service-matrix,.stock-grid,.reviews,.journal-grid,.footer-grid{grid-template-columns:repeat(2,1fr)}.brief-panel{position:relative;top:auto}.hud{position:relative;right:auto;bottom:auto;width:auto;margin:0 28px 34px}
    }
    @media(max-width:760px){
      .container{padding:0 18px}h1{font-size:64px}h2{font-size:46px}.hero{min-height:720px}.hero-inner{padding:72px 18px 42px}.hero-copy,.page-hero p{font-size:16px}.hero-actions .btn{width:100%}.hud{grid-template-columns:1fr;margin:0 18px 28px}.hud div{border-right:0;border-bottom:1px solid var(--line)}.section{padding:62px 0}.section-head{display:block}.section-head p{margin-top:14px}.bay-grid,.stock-grid,.service-matrix,.reviews,.journal-grid,.footer-grid,.form-grid,.steps{grid-template-columns:1fr}.vehicle-img,.vehicle.feature .vehicle-img{height:280px}.service{border-right:0;border-bottom:1px solid var(--line)}.step{grid-template-columns:58px 1fr;border-right:0!important;border-bottom:1px solid var(--line)!important}.review:nth-child(n){transform:none}.cookie-inner{grid-template-columns:1fr}.sticky{left:14px;right:14px;text-align:center;opacity:0;transform:translateY(16px);pointer-events:none;transition:.35s var(--ease)}.sticky.show{opacity:1;transform:none;pointer-events:auto}
    }
  
    /* v2 expansion: bigger website, more pages, more depth */
    .nav-spacer{height:0}
    .mega-band{
      display:grid;
      grid-template-columns:1.05fr .95fr;
      min-height:720px;
      background:#050609;
      border-top:1px solid var(--line);
      border-bottom:1px solid var(--line);
    }
    .mega-copy{
      padding:96px 34px 96px max(34px,calc((100vw - var(--max))/2 + 34px));
      display:flex;
      flex-direction:column;
      justify-content:center;
      position:relative;
      overflow:hidden;
    }
    .mega-copy:before{
      content:"";
      position:absolute;
      width:420px;
      height:420px;
      border-radius:50%;
      background:rgba(215,255,57,.08);
      filter:blur(18px);
      left:-180px;
      top:-120px;
      pointer-events:none;
    }
    .mega-copy > *{position:relative;z-index:1}
    .mega-copy p{
      max-width:720px;
      color:#c9d1dc;
      font-size:17px;
      margin:18px 0;
    }
    .mega-media{
      min-height:720px;
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:1px;
      background:var(--line);
      overflow:hidden;
    }
    .mega-media div{
      position:relative;
      overflow:hidden;
      background:#111720;
    }
    .mega-media div:first-child{grid-row:span 2}
    .mega-media img{
      width:100%;
      height:100%;
      object-fit:cover;
      filter:saturate(.92) contrast(1.08);
      transition:transform .9s var(--ease),filter .9s var(--ease);
    }
    .mega-media div:hover img{
      transform:scale(1.055);
      filter:saturate(1.06) contrast(1.1);
    }
    .spec-board{
      display:grid;
      grid-template-columns:repeat(4,1fr);
      border:1px solid var(--line);
      background:#0e131b;
      margin-top:34px;
    }
    .spec-board div{
      padding:22px;
      border-right:1px solid var(--line);
    }
    .spec-board div:last-child{border-right:0}
    .spec-board strong{
      display:block;
      font-family:"Bebas Neue";
      font-size:38px;
      line-height:.9;
      color:var(--acid);
      font-weight:400;
    }
    .spec-board span{
      display:block;
      margin-top:9px;
      color:#b7c0cc;
      text-transform:uppercase;
      font-size:10px;
      letter-spacing:.12em;
      font-weight:900;
    }

    .timeline{
      display:grid;
      grid-template-columns:repeat(5,1fr);
      border:1px solid var(--line);
      background:#121923;
    }
    .timeline-item{
      min-height:300px;
      padding:28px;
      border-right:1px solid var(--line);
      display:flex;
      flex-direction:column;
      justify-content:space-between;
      position:relative;
      overflow:hidden;
    }
    .timeline-item:last-child{border-right:0}
    .timeline-item:before{
      content:"";
      position:absolute;
      left:0;
      top:0;
      height:3px;
      width:0;
      background:var(--acid);
      transition:width .55s var(--ease);
    }
    .timeline-item:hover:before{width:100%}
    .timeline-item b{
      font-family:"Bebas Neue";
      font-size:56px;
      line-height:.9;
      color:transparent;
      -webkit-text-stroke:1px rgba(255,255,255,.6);
      font-weight:400;
    }
    .timeline-item p{color:#c3ccd8;margin-top:12px}

    .detail-grid{
      display:grid;
      grid-template-columns:1.1fr .9fr;
      gap:28px;
      align-items:start;
    }
    .detail-panel{
      background:#111720;
      border:1px solid var(--line);
      padding:30px;
      box-shadow:var(--shadow);
    }
    .detail-panel p{
      color:#c7d0dc;
      margin:14px 0;
      font-size:17px;
    }
    .detail-list{
      display:grid;
      gap:10px;
      margin-top:20px;
    }
    .detail-list li{
      list-style:none;
      padding:14px 0;
      border-bottom:1px solid var(--line);
      color:#d7dee8;
    }
    .detail-list li:before{
      content:"//";
      color:var(--acid);
      font-weight:900;
      margin-right:10px;
    }
    .light .detail-panel{
      background:#fff;
      color:#111;
      border-color:rgba(0,0,0,.12);
      box-shadow:0 22px 70px rgba(0,0,0,.14);
    }
    .light .detail-panel p,.light .detail-list li{color:#444}
    .light .detail-list li{border-bottom:1px solid rgba(0,0,0,.12)}

    .case-grid{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:22px;
    }
    .case-card{
      min-height:520px;
      position:relative;
      overflow:hidden;
      background:#111720;
      border:1px solid var(--line);
      box-shadow:var(--shadow);
    }
    .case-card img{
      position:absolute;
      inset:0;
      width:100%;
      height:100%;
      object-fit:cover;
      opacity:.64;
      filter:saturate(.92) contrast(1.1);
      transition:transform .8s var(--ease),opacity .8s var(--ease);
    }
    .case-card:hover img{transform:scale(1.055);opacity:.82}
    .case-card:after{
      content:"";
      position:absolute;
      inset:0;
      background:linear-gradient(180deg,rgba(5,6,9,.05),rgba(5,6,9,.92));
    }
    .case-body{
      position:absolute;
      left:0;
      right:0;
      bottom:0;
      padding:28px;
      z-index:2;
    }
    .case-body p{color:#d0d7e1;margin:12px 0 18px}

    .compare{
      background:#0e131b;
      border:1px solid var(--line);
      display:grid;
      grid-template-columns:1fr 1fr;
      box-shadow:var(--shadow);
    }
    .compare-col{
      padding:34px;
      min-height:430px;
    }
    .compare-col:first-child{border-right:1px solid var(--line)}
    .compare-col h3{
      font-family:"Bebas Neue";
      font-size:54px;
      font-weight:400;
    }
    .compare-col ul{
      padding:0;
      margin:24px 0 0;
      display:grid;
      gap:14px;
    }
    .compare-col li{
      list-style:none;
      color:#cbd3df;
      padding-bottom:14px;
      border-bottom:1px solid var(--line);
    }
    .compare-col li:before{
      content:"▸";
      color:var(--acid);
      margin-right:10px;
    }

    .quote-grid{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:22px;
    }
    .quote-card{
      background:#111720;
      border:1px solid var(--line);
      padding:30px;
      box-shadow:var(--shadow);
    }
    .quote-card.large{grid-column:span 2}
    .quote-card p{
      color:#d5dce6;
      font-size:18px;
      margin:14px 0 20px;
    }
    .quote-card .review-meta{margin-top:18px}

    .inventory-stat{
      display:grid;
      grid-template-columns:repeat(4,1fr);
      gap:1px;
      background:rgba(255,255,255,.14);
      border:1px solid var(--line);
      margin-bottom:34px;
    }
    .inventory-stat div{
      background:#101620;
      padding:24px;
    }
    .inventory-stat strong{
      display:block;
      font-family:"Bebas Neue";
      font-size:48px;
      line-height:.9;
      color:#fff;
      font-weight:400;
    }
    .inventory-stat span{
      display:block;
      color:#b7c0cd;
      text-transform:uppercase;
      letter-spacing:.1em;
      font-weight:900;
      font-size:11px;
      margin-top:8px;
    }

    .wide-article{
      display:grid;
      grid-template-columns:.8fr 1.2fr;
      min-height:560px;
      background:#fff;
      color:#111;
    }
    .wide-article img{
      width:100%;
      height:100%;
      object-fit:cover;
      filter:saturate(.92) contrast(1.08);
    }
    .wide-copy{
      padding:74px max(34px,calc((100vw - var(--max))/2 + 34px)) 74px 54px;
      display:flex;
      flex-direction:column;
      justify-content:center;
    }
    .wide-copy p{
      max-width:720px;
      color:#444;
      font-size:17px;
      margin:16px 0;
    }
    .wide-copy .eyebrow{color:#111}
    .wide-copy .eyebrow:before{background:#111}

    .article-long{
      max-width:920px;
      margin:auto;
    }
    .article-long p,.article-long li{
      color:#444;
      font-size:17px;
      margin:0 0 16px;
    }
    .article-long h2{
      font-family:"Space Grotesk";
      font-size:34px;
      line-height:1.05;
      letter-spacing:-.04em;
      margin:34px 0 14px;
      color:#111;
    }

    @media(max-width:1180px){
      .mega-band,.detail-grid,.wide-article{grid-template-columns:1fr}
      .mega-copy{padding:70px 28px}
      .mega-media{min-height:560px}
      .timeline{grid-template-columns:1fr 1fr}
      .timeline-item:nth-child(2n){border-right:0}
      .spec-board,.inventory-stat{grid-template-columns:repeat(2,1fr)}
      .case-grid,.quote-grid{grid-template-columns:1fr 1fr}
      .quote-card.large{grid-column:span 2}
      .wide-copy{padding:62px 28px}
    }
    @media(max-width:760px){
      .mega-copy{padding:62px 18px}
      .mega-media{grid-template-columns:1fr;min-height:auto}
      .mega-media div:first-child{grid-row:auto}
      .mega-media div{min-height:280px}
      .timeline,.spec-board,.inventory-stat,.case-grid,.quote-grid,.compare{grid-template-columns:1fr}
      .quote-card.large{grid-column:span 1}
      .compare-col:first-child{border-right:0;border-bottom:1px solid var(--line)}
      .timeline-item{border-right:0!important;border-bottom:1px solid var(--line)}
      .timeline-item:last-child{border-bottom:0}
      .case-card{min-height:440px}
      .wide-copy{padding:58px 18px}
    }

  
    /* v3 expansion: contrast audit, stock growth, news, gallery, review slider */
    .light h1,.light h2,.light h3,.light h4,
    .light .eyebrow,.light .section-head h2,
    .light .article-long h2,.light .wide-copy h2,
    .light .vehicle h3,.light .detail-panel h3,
    .light .faq-q{color:#111 !important}
    .light p,.light li,.light .section-head p,
    .light .article-long p,.light .article-long li,
    .light .wide-copy p,.light .detail-panel p,
    .light .vehicle-body p,.light .faq-a{color:#454545 !important}
    .light .eyebrow:before{background:#111 !important}
    .dark h1,.dark h2,.dark h3,.panel h1,.panel h2,.panel h3,
    .dark .eyebrow,.panel .eyebrow{color:#fff !important}
    .dark p,.panel p{color:#cbd4df}
    .vehicle h3,.article h3,.review h3,.case-card h3,.service h3{color:#fff !important}
    .vehicle-body p,.article-body p,.review p,.case-body p,.service p{color:#d2dae5 !important}
    .vehicle .btn.ghost,.article .btn.ghost,.case-card .btn.ghost{color:#fff !important;border-color:rgba(255,255,255,.34) !important}
    .vehicle .btn.ghost:hover,.article .btn.ghost:hover,.case-card .btn.ghost:hover{color:#050609 !important;background:#fff !important;border-color:#fff !important}
    .footer-brand strong{display:block;color:#fff;text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px}

    .rail-nav a[data-route="news"],
    .rail-nav a[data-route="gallery"]{font-size:9px}

    .home-expansion-grid{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:1px;
      background:var(--line);
      border:1px solid var(--line);
    }
    .home-expansion-card{
      min-height:380px;
      padding:34px;
      background:#111720;
      display:flex;
      flex-direction:column;
      justify-content:space-between;
      overflow:hidden;
      position:relative;
    }
    .home-expansion-card:after{
      content:"";
      position:absolute;
      right:-80px;
      bottom:-80px;
      width:220px;
      height:220px;
      border:1px solid rgba(215,255,57,.22);
      border-radius:50%;
      pointer-events:none;
    }
    .home-expansion-card p{color:#cbd4df;margin:12px 0 18px}
    .home-expansion-card b{
      font-family:"Bebas Neue";
      font-size:78px;
      line-height:.8;
      font-weight:400;
      color:transparent;
      -webkit-text-stroke:1px rgba(215,255,57,.65);
    }

    .slider-wrap{
      position:relative;
      overflow:hidden;
      border:1px solid var(--line);
      background:#0e131b;
      box-shadow:var(--shadow);
    }
    .review-slider{
      display:flex;
      transition:transform .7s var(--ease);
      will-change:transform;
    }
    .slide-review{
      min-width:33.333%;
      padding:30px;
      border-right:1px solid var(--line);
      min-height:360px;
      display:flex;
      flex-direction:column;
      justify-content:space-between;
      background:#111720;
    }
    .slide-review h3{color:#fff;font-size:27px}
    .slide-review p{color:#d6dde7;margin:14px 0 20px;font-size:16px}
    .slide-review .source{
      display:inline-flex;
      align-items:center;
      gap:9px;
      color:#fff;
      font-size:12px;
      text-transform:uppercase;
      letter-spacing:.1em;
      font-weight:900;
    }
    .slide-review .source:before{
      content:"G";
      width:26px;
      height:26px;
      border-radius:50%;
      display:grid;
      place-items:center;
      color:#050609;
      background:#fff;
      font-weight:900;
      letter-spacing:0;
    }
    .slider-controls{
      display:flex;
      justify-content:space-between;
      align-items:center;
      gap:18px;
      padding:18px 20px;
      border-top:1px solid var(--line);
      background:#050609;
    }
    .slider-controls button{
      background:#fff;
      color:#050609;
      border:0;
      padding:12px 16px;
      font-weight:900;
      text-transform:uppercase;
      letter-spacing:.08em;
      font-size:12px;
    }
    .slider-dots{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
    .slider-dots button{
      width:9px;
      height:9px;
      border-radius:50%;
      padding:0;
      background:rgba(255,255,255,.25);
      border:0;
    }
    .slider-dots button.active{background:var(--acid)}

    .gallery-mosaic{
      display:grid;
      grid-template-columns:1.2fr .8fr .8fr;
      grid-auto-rows:230px;
      gap:14px;
    }
    .gallery-item{
      position:relative;
      overflow:hidden;
      background:#111720;
      border:1px solid var(--line);
      box-shadow:var(--shadow);
    }
    .gallery-item:nth-child(1){grid-row:span 2}
    .gallery-item:nth-child(4){grid-column:span 2}
    .gallery-item:nth-child(7){grid-row:span 2}
    .gallery-item img{
      width:100%;
      height:100%;
      object-fit:cover;
      transition:transform .75s var(--ease),filter .75s var(--ease);
      filter:saturate(.92) contrast(1.08);
    }
    .gallery-item:hover img{transform:scale(1.055);filter:saturate(1.08) contrast(1.12)}
    .gallery-item span{
      position:absolute;
      left:16px;
      bottom:16px;
      z-index:2;
      background:rgba(5,6,9,.78);
      border:1px solid rgba(255,255,255,.18);
      color:#fff;
      padding:8px 10px;
      text-transform:uppercase;
      letter-spacing:.08em;
      font-size:11px;
      font-weight:900;
      backdrop-filter:blur(12px);
    }

    .news-layout{
      display:grid;
      grid-template-columns:1.15fr .85fr;
      gap:24px;
      align-items:start;
    }
    .news-feature{
      min-height:640px;
      position:relative;
      overflow:hidden;
      background:#111720;
      border:1px solid var(--line);
      box-shadow:var(--shadow);
    }
    .news-feature img{
      position:absolute;
      inset:0;
      width:100%;
      height:100%;
      object-fit:cover;
      opacity:.66;
      filter:saturate(.95) contrast(1.08);
    }
    .news-feature:after{
      content:"";
      position:absolute;
      inset:0;
      background:linear-gradient(180deg,rgba(5,6,9,.08),rgba(5,6,9,.94));
    }
    .news-feature-body{
      position:absolute;
      z-index:2;
      left:0;
      right:0;
      bottom:0;
      padding:34px;
    }
    .news-feature-body p{color:#d4dce6;margin:14px 0 22px;max-width:720px}
    .news-list{
      display:grid;
      gap:14px;
    }
    .news-mini{
      display:grid;
      grid-template-columns:150px 1fr;
      gap:16px;
      background:#111720;
      border:1px solid var(--line);
      min-height:150px;
      overflow:hidden;
      transition:.35s var(--ease);
    }
    .news-mini:hover{transform:translateY(-4px);border-color:rgba(215,255,57,.42)}
    .news-mini img{width:150px;height:100%;object-fit:cover}
    .news-mini-body{padding:16px 16px 16px 0}
    .news-mini h3{font-size:22px;color:#fff !important}
    .news-mini p{color:#cbd4df !important;font-size:14px;margin:7px 0 10px}
    .news-date{
      display:block;
      color:var(--acid);
      text-transform:uppercase;
      letter-spacing:.1em;
      font-size:10px;
      font-weight:900;
      margin-bottom:8px;
    }

    .about-story{
      display:grid;
      grid-template-columns:.82fr 1.18fr;
      gap:44px;
      align-items:start;
    }
    .about-pin{
      position:sticky;
      top:32px;
      background:#050609;
      border:1px solid var(--line);
      padding:34px;
      box-shadow:var(--shadow);
      color:#fff;
    }
    .about-pin h3{
      font-family:"Bebas Neue";
      font-size:70px;
      font-weight:400;
      line-height:.9;
      margin-bottom:18px;
    }
    .about-pin p{color:#cbd4df;margin-bottom:22px}
    .about-chapter{
      padding-bottom:34px;
      margin-bottom:34px;
      border-bottom:1px solid rgba(0,0,0,.12);
    }
    .about-chapter:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
    .about-chapter h2{
      font-size:clamp(46px,6vw,92px);
      color:#111;
      margin-bottom:14px;
    }
    .about-chapter p{
      color:#444 !important;
      font-size:17px;
      margin:0 0 16px;
      max-width:880px;
    }
    .about-values{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:1px;
      background:rgba(0,0,0,.14);
      margin-top:28px;
    }
    .about-values div{
      background:#fff;
      padding:24px;
      min-height:220px;
    }
    .about-values b{
      display:block;
      font-family:"Bebas Neue";
      font-size:54px;
      line-height:.9;
      color:#111;
      font-weight:400;
      margin-bottom:16px;
    }

    @media(max-width:1180px){
      .slide-review{min-width:50%}
      .gallery-mosaic{grid-template-columns:1fr 1fr}
      .news-layout,.about-story{grid-template-columns:1fr}
      .about-pin{position:relative;top:auto}
      .about-values{grid-template-columns:1fr 1fr}
    }
    @media(max-width:760px){
      .home-expansion-grid,.gallery-mosaic,.about-values{grid-template-columns:1fr}
      .home-expansion-card{min-height:300px}
      .slide-review{min-width:100%}
      .gallery-item:nth-child(n){grid-column:auto;grid-row:auto}
      .gallery-mosaic{grid-auto-rows:260px}
      .news-mini{grid-template-columns:1fr}
      .news-mini img{width:100%;height:220px}
      .news-mini-body{padding:18px}
      .news-feature{min-height:540px}
    }

  
    /* v4 fixes: dark-box readability, news layout, garage highlights proportions */

    /* Dark card readability pass */
    .dark .vehicle,
    .panel .vehicle,
    .vehicle,
    .detail-panel,
    .home-expansion-card,
    .quote-card,
    .review,
    .slide-review,
    .news-mini,
    .news-feature,
    .article,
    .case-card,
    .service,
    .form-card,
    .brief-panel,
    .request-form,
    .about-pin,
    .timeline-item,
    .compare-col,
    .step,
    .light .step,
    .light .vehicle,
    .light .detail-panel,
    .light .home-expansion-card {
      color:#ffffff !important;
    }

    .vehicle h1,.vehicle h2,.vehicle h3,.vehicle h4,
    .detail-panel h1,.detail-panel h2,.detail-panel h3,.detail-panel h4,
    .home-expansion-card h1,.home-expansion-card h2,.home-expansion-card h3,.home-expansion-card h4,
    .quote-card h1,.quote-card h2,.quote-card h3,.quote-card h4,
    .review h1,.review h2,.review h3,.review h4,
    .slide-review h1,.slide-review h2,.slide-review h3,.slide-review h4,
    .news-mini h1,.news-mini h2,.news-mini h3,.news-mini h4,
    .news-feature h1,.news-feature h2,.news-feature h3,.news-feature h4,
    .article h1,.article h2,.article h3,.article h4,
    .case-card h1,.case-card h2,.case-card h3,.case-card h4,
    .service h1,.service h2,.service h3,.service h4,
    .form-card h1,.form-card h2,.form-card h3,.form-card h4,
    .brief-panel h1,.brief-panel h2,.brief-panel h3,.brief-panel h4,
    .request-form h1,.request-form h2,.request-form h3,.request-form h4,
    .about-pin h1,.about-pin h2,.about-pin h3,.about-pin h4,
    .timeline-item h1,.timeline-item h2,.timeline-item h3,.timeline-item h4,
    .compare-col h1,.compare-col h2,.compare-col h3,.compare-col h4,
    .step h1,.step h2,.step h3,.step h4 {
      color:#ffffff !important;
      opacity:1 !important;
      text-shadow:none !important;
    }

    .vehicle p,.vehicle li,
    .detail-panel p,.detail-panel li,
    .home-expansion-card p,.home-expansion-card li,
    .quote-card p,.quote-card li,
    .review p,.review li,
    .slide-review p,.slide-review li,
    .news-mini p,.news-mini li,
    .news-feature p,.news-feature li,
    .article p,.article li,
    .case-card p,.case-card li,
    .service p,.service li,
    .form-card p,.form-card li,
    .brief-panel p,.brief-panel li,
    .request-form p,.request-form li,
    .about-pin p,.about-pin li,
    .timeline-item p,.timeline-item li,
    .compare-col p,.compare-col li,
    .step p,.step li {
      color:#d4dde8 !important;
      opacity:1 !important;
    }

    .vehicle .price,
    .vehicle .price small,
    .vehicle .chip,
    .detail-panel .chip,
    .home-expansion-card .chip,
    .review-meta,
    .slide-review .review-meta,
    .news-date,
    .stars {
      opacity:1 !important;
    }

    /* Some light-section modules intentionally contain dark panels. Keep their dark-panel text white. */
    .light .vehicle h3,
    .light .detail-panel h3,
    .light .home-expansion-card h3,
    .light .step h3,
    .light .compare-col h3 {
      color:#ffffff !important;
    }
    .light .vehicle p,
    .light .detail-panel p,
    .light .home-expansion-card p,
    .light .step p,
    .light .compare-col p,
    .light .vehicle-body p {
      color:#d4dde8 !important;
    }

    /* But genuine white paper/FAQ/legal panels must stay dark on white. */
    .faq-item,
    .faq-item *,
    .article-long,
    .article-long *,
    .legal,
    .legal *,
    .about-chapter,
    .about-chapter *,
    .about-values div,
    .about-values div *,
    .wide-copy,
    .wide-copy * {
      text-shadow:none !important;
    }
    .faq-item h1,.faq-item h2,.faq-item h3,.faq-item h4,.faq-q,
    .article-long h1,.article-long h2,.article-long h3,.article-long h4,
    .legal h1,.legal h2,.legal h3,.legal h4,
    .about-chapter h1,.about-chapter h2,.about-chapter h3,.about-chapter h4,
    .about-values div h1,.about-values div h2,.about-values div h3,.about-values div h4,
    .wide-copy h1,.wide-copy h2,.wide-copy h3,.wide-copy h4 {
      color:#111 !important;
    }
    .faq-a,
    .article-long p,.article-long li,
    .legal p,.legal li,
    .about-chapter p,.about-chapter li,
    .about-values div p,.about-values div li,
    .wide-copy p,.wide-copy li {
      color:#444 !important;
    }

    /* Garage Highlights: even cards, no huge matched-height feature. */
    .bay-grid{
      display:grid !important;
      grid-template-columns:repeat(3,minmax(0,1fr)) !important;
      gap:22px !important;
      align-items:stretch !important;
    }
    .bay-grid > .vehicle-row{
      display:contents !important;
    }
    .bay-grid .vehicle,
    .bay-grid .vehicle.feature{
      min-height:0 !important;
      height:100% !important;
    }
    .bay-grid .vehicle-img,
    .bay-grid .vehicle.feature .vehicle-img{
      height:275px !important;
    }
    .bay-grid .vehicle-body{
      min-height:250px;
      display:flex;
      flex-direction:column;
      align-items:flex-start;
    }
    .bay-grid .vehicle-body p{
      flex:1;
    }
    .bay-grid .vehicle-body .btn{
      margin-top:16px !important;
    }

    /* News page: feature on top, all articles beneath. */
    .news-layout{
      display:grid !important;
      grid-template-columns:1fr !important;
      gap:28px !important;
      align-items:start !important;
    }
    .news-feature{
      min-height:560px !important;
      width:100% !important;
    }
    .news-list{
      display:grid !important;
      grid-template-columns:repeat(3,minmax(0,1fr)) !important;
      gap:22px !important;
    }
    .news-mini{
      grid-template-columns:1fr !important;
      min-height:0 !important;
      display:flex !important;
      flex-direction:column !important;
    }
    .news-mini img{
      width:100% !important;
      height:230px !important;
      object-fit:cover !important;
    }
    .news-mini-body{
      padding:20px !important;
      display:flex;
      flex-direction:column;
      flex:1;
    }
    .news-mini-body p{
      flex:1;
    }

    @media(max-width:1180px){
      .bay-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
      .news-list{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
    }
    @media(max-width:760px){
      .bay-grid{grid-template-columns:1fr !important}
      .bay-grid .vehicle-img,
      .bay-grid .vehicle.feature .vehicle-img{height:270px !important}
      .bay-grid .vehicle-body{min-height:0}
      .news-list{grid-template-columns:1fr !important}
      .news-feature{min-height:520px !important}
    }

  
    /* v5: richer subpages + smaller homepage hero headline */
    .hero h1{
      font-size:clamp(64px,10.4vw,176px) !important;
      line-height:.9 !important;
      max-width:1120px;
    }
    .hero-title{
      max-width:1180px;
    }

    .content-layers{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:1px;
      background:rgba(255,255,255,.14);
      border:1px solid var(--line);
      box-shadow:var(--shadow);
    }
    .content-layer{
      background:#111720;
      padding:32px;
      min-height:310px;
      display:flex;
      flex-direction:column;
      justify-content:space-between;
    }
    .content-layer h3{
      color:#fff !important;
      margin-bottom:14px;
    }
    .content-layer p{
      color:#d4dde8 !important;
      font-size:16px;
    }
    .content-layer ul{
      padding:0;
      margin:18px 0 0;
      display:grid;
      gap:10px;
    }
    .content-layer li{
      list-style:none;
      color:#d4dde8 !important;
      padding-bottom:10px;
      border-bottom:1px solid var(--line);
    }
    .content-layer li:before{
      content:"//";
      color:var(--acid);
      font-weight:900;
      margin-right:10px;
    }

    .subpage-band{
      display:grid;
      grid-template-columns:.92fr 1.08fr;
      gap:34px;
      align-items:center;
    }
    .subpage-copy p{
      color:#444 !important;
      font-size:17px;
      margin:0 0 16px;
      max-width:760px;
    }
    .subpage-image{
      overflow:hidden;
      border:1px solid rgba(0,0,0,.12);
      box-shadow:0 28px 90px rgba(0,0,0,.18);
      background:#111720;
    }
    .subpage-image img{
      width:100%;
      height:620px;
      object-fit:cover;
      filter:saturate(.94) contrast(1.08);
    }

    .spec-table{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:1px;
      background:rgba(0,0,0,.14);
      border:1px solid rgba(0,0,0,.12);
      margin-top:28px;
    }
    .spec-cell{
      background:#fff;
      padding:24px;
      min-height:180px;
    }
    .spec-cell strong{
      display:block;
      font-family:"Bebas Neue";
      font-size:48px;
      line-height:.9;
      color:#111;
      font-weight:400;
      margin-bottom:12px;
    }
    .spec-cell span{
      color:#444;
      font-size:15px;
    }

    .faq.dark-faq .faq-item{
      background:#111720;
      color:#fff;
      border:1px solid var(--line);
      box-shadow:var(--shadow);
    }
    .faq.dark-faq .faq-q{
      background:#111720;
      color:#fff !important;
    }
    .faq.dark-faq .faq-a{
      color:#d4dde8 !important;
    }

    .about-deep-grid{
      display:grid;
      grid-template-columns:repeat(2,1fr);
      gap:24px;
      margin-top:28px;
    }
    .about-deep-card{
      background:#fff;
      border:1px solid rgba(0,0,0,.12);
      padding:28px;
      min-height:300px;
      box-shadow:0 20px 70px rgba(0,0,0,.12);
    }
    .about-deep-card h3{
      color:#111 !important;
      font-size:30px;
      margin-bottom:12px;
    }
    .about-deep-card p{
      color:#444 !important;
      font-size:16px;
      margin-bottom:14px;
    }

    .long-copy{
      max-width:980px;
    }
    .long-copy p{
      color:#444 !important;
      font-size:17px;
      margin:0 0 16px;
    }
    .long-copy h3{
      color:#111 !important;
      margin:28px 0 12px;
      font-size:32px;
    }

    @media(max-width:1180px){
      .content-layers,.subpage-band,.about-deep-grid{grid-template-columns:1fr}
      .subpage-image img{height:460px}
      .spec-table{grid-template-columns:1fr 1fr}
    }
    @media(max-width:760px){
      .hero h1{
        font-size:58px !important;
        line-height:.92 !important;
      }
      .content-layer{min-height:0;padding:24px}
      .subpage-image img{height:320px}
      .spec-table{grid-template-columns:1fr}
      .spec-cell{min-height:0}
    }

  
    /* v6: nitro cursor, original signal slider, richer motion, expanded Google reviews */

    /* Ambient motion objects */
    .motion-field{
      position:fixed;
      inset:0;
      pointer-events:none;
      z-index:0;
      overflow:hidden;
    }
    .motion-field span{
      position:absolute;
      width:220px;
      height:220px;
      border-radius:50%;
      border:1px solid rgba(215,255,57,.10);
      box-shadow:0 0 80px rgba(215,255,57,.05);
      animation:orbDrift 18s var(--ease) infinite alternate;
      opacity:.65;
    }
    .motion-field span:nth-child(1){left:18%;top:16%;animation-duration:20s}
    .motion-field span:nth-child(2){right:9%;top:42%;width:340px;height:340px;animation-duration:24s;animation-delay:-7s;border-color:rgba(79,195,255,.09)}
    .motion-field span:nth-child(3){left:42%;bottom:-120px;width:280px;height:280px;animation-duration:22s;animation-delay:-12s}
    @keyframes orbDrift{
      0%{transform:translate3d(0,0,0) scale(1)}
      100%{transform:translate3d(48px,-42px,0) scale(1.18)}
    }
    .site, .rail, .mobile-head, .mobile-menu, .sticky, .cookie{position:relative}
    .site{z-index:1}

    /* Nitro cursor */
    @media(pointer:fine){
      body.nitro-cursor,
      body.nitro-cursor a,
      body.nitro-cursor button,
      body.nitro-cursor input,
      body.nitro-cursor select,
      body.nitro-cursor textarea{
        cursor:none !important;
      }
      .cursor-core{
        position:fixed;
        left:0;
        top:0;
        width:18px;
        height:18px;
        pointer-events:none;
        z-index:9999;
        transform:translate(-50%,-50%);
        border:2px solid var(--acid);
        border-radius:50%;
        mix-blend-mode:screen;
        box-shadow:0 0 22px rgba(215,255,57,.82), inset 0 0 10px rgba(215,255,57,.35);
        transition:width .18s var(--ease),height .18s var(--ease),border-color .18s var(--ease),box-shadow .18s var(--ease);
      }
      .cursor-core.hot{
        width:34px;
        height:34px;
        border-color:#fff;
        box-shadow:0 0 34px rgba(215,255,57,.95), 0 0 70px rgba(79,195,255,.32);
      }
      .nitro-dot{
        position:fixed;
        left:0;
        top:0;
        width:9px;
        height:9px;
        pointer-events:none;
        z-index:9998;
        transform:translate(-50%,-50%);
        border-radius:999px;
        background:var(--acid);
        box-shadow:0 0 18px rgba(215,255,57,.85),0 0 34px rgba(79,195,255,.22);
        opacity:.65;
        mix-blend-mode:screen;
      }
      .click-pulse{
        position:fixed;
        width:18px;
        height:18px;
        border:2px solid var(--acid);
        border-radius:50%;
        pointer-events:none;
        z-index:9997;
        transform:translate(-50%,-50%);
        animation:nitroPulse .78s var(--ease) forwards;
        box-shadow:0 0 30px rgba(215,255,57,.55);
        mix-blend-mode:screen;
      }
      @keyframes nitroPulse{
        0%{opacity:.95;width:18px;height:18px}
        100%{opacity:0;width:150px;height:150px}
      }
    }

    /* Original acid-green signal slider */
    .signal{
      background:#d7ff39;
      color:#050609;
      position:relative;
      overflow:hidden;
      border-top:1px solid rgba(5,6,9,.25);
      border-bottom:1px solid rgba(5,6,9,.25);
    }
    .signal:before{
      content:"";
      position:absolute;
      inset:0;
      background:
        linear-gradient(90deg,rgba(5,6,9,.13) 1px,transparent 1px),
        linear-gradient(rgba(5,6,9,.10) 1px,transparent 1px);
      background-size:44px 44px;
      opacity:.35;
      pointer-events:none;
    }
    .signal-inner{
      position:relative;
      max-width:var(--max);
      margin:auto;
      min-height:220px;
      padding:34px;
      display:grid;
      grid-template-columns:240px 1fr 230px;
      gap:24px;
      align-items:center;
    }
    .signal-label{
      display:grid;
      gap:10px;
      text-transform:uppercase;
      font-size:12px;
      letter-spacing:.16em;
      font-weight:900;
    }
    .signal-label b{
      display:block;
      font-family:"Bebas Neue";
      font-size:72px;
      line-height:.8;
      font-weight:400;
      letter-spacing:.01em;
    }
    .signal-window{
      overflow:hidden;
      position:relative;
      min-height:132px;
    }
    .signal-track{
      display:flex;
      transition:transform .85s var(--ease);
      will-change:transform;
    }
    .signal-slide{
      min-width:100%;
      padding-right:28px;
    }
    .signal-slide h3{
      color:#050609 !important;
      font-family:"Bebas Neue";
      font-size:clamp(42px,5vw,82px);
      line-height:.86;
      font-weight:400;
      max-width:760px;
    }
    .signal-slide p{
      color:#111 !important;
      max-width:780px;
      margin-top:12px;
      font-weight:700;
      font-size:16px;
    }
    .signal-panel{
      border-left:1px solid rgba(5,6,9,.28);
      padding-left:24px;
      align-self:stretch;
      display:flex;
      flex-direction:column;
      justify-content:space-between;
      gap:18px;
    }
    .signal-panel strong{
      display:block;
      font-family:"Bebas Neue";
      font-size:48px;
      line-height:.8;
      font-weight:400;
    }
    .signal-dots{
      display:flex;
      gap:9px;
      flex-wrap:wrap;
    }
    .signal-dots button{
      width:12px;
      height:12px;
      border-radius:50%;
      border:1px solid #050609;
      background:transparent;
      padding:0;
      transition:.35s var(--ease);
    }
    .signal-dots button.active{
      background:#050609;
      transform:scale(1.35);
    }
    .signal-progress{
      height:4px;
      width:100%;
      background:rgba(5,6,9,.18);
      overflow:hidden;
    }
    .signal-progress i{
      display:block;
      height:100%;
      width:0;
      background:#050609;
      animation:signalProgress 5.2s linear infinite;
    }
    @keyframes signalProgress{from{width:0}to{width:100%}}

    /* Home automatic feature slider */
    .garage-carousel{
      border:1px solid var(--line);
      background:#0e131b;
      box-shadow:var(--shadow);
      overflow:hidden;
    }
    .garage-carousel-stage{
      display:flex;
      transition:transform .85s var(--ease);
      will-change:transform;
    }
    .garage-carousel-slide{
      min-width:100%;
      display:grid;
      grid-template-columns:1fr 1fr;
      min-height:560px;
    }
    .garage-carousel-image{
      position:relative;
      overflow:hidden;
      background:#050609;
    }
    .garage-carousel-image img{
      width:100%;
      height:100%;
      object-fit:cover;
      filter:saturate(.95) contrast(1.1);
    }
    .garage-carousel-copy{
      padding:46px;
      display:flex;
      flex-direction:column;
      justify-content:center;
      background:radial-gradient(circle at 90% 10%,rgba(215,255,57,.11),transparent 32%),#111720;
    }
    .garage-carousel-copy h3{
      font-family:"Bebas Neue";
      font-size:72px;
      line-height:.86;
      font-weight:400;
      color:#fff !important;
    }
    .garage-carousel-copy p{
      color:#d4dde8 !important;
      font-size:17px;
      margin:18px 0 24px;
      max-width:620px;
    }
    .garage-carousel-controls{
      display:flex;
      justify-content:space-between;
      align-items:center;
      gap:16px;
      padding:18px 20px;
      border-top:1px solid var(--line);
      background:#050609;
    }
    .garage-carousel-controls button{
      border:0;
      background:#fff;
      color:#050609;
      padding:12px 16px;
      text-transform:uppercase;
      letter-spacing:.08em;
      font-size:12px;
      font-weight:900;
    }

    .review-grid-expanded{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:22px;
    }
    .google-review-card{
      background:#111720;
      border:1px solid var(--line);
      padding:26px;
      min-height:300px;
      box-shadow:var(--shadow);
      display:flex;
      flex-direction:column;
      justify-content:space-between;
      transition:transform .4s var(--ease),border-color .4s var(--ease);
    }
    .google-review-card:hover{
      transform:translateY(-6px);
      border-color:rgba(215,255,57,.42);
    }
    .google-review-card h3{
      color:#fff !important;
      font-size:25px;
      margin-bottom:12px;
    }
    .google-review-card p{
      color:#d4dde8 !important;
      margin:12px 0 18px;
    }
    .google-badge{
      display:inline-flex;
      align-items:center;
      gap:9px;
      color:#fff;
      text-transform:uppercase;
      letter-spacing:.1em;
      font-weight:900;
      font-size:11px;
    }
    .google-badge:before{
      content:"G";
      width:26px;
      height:26px;
      border-radius:50%;
      display:grid;
      place-items:center;
      background:#fff;
      color:#050609;
      letter-spacing:0;
      font-weight:900;
    }

    .spark-line{
      position:absolute;
      width:180px;
      height:1px;
      background:linear-gradient(90deg,transparent,var(--acid),transparent);
      opacity:.42;
      animation:sparkMove 7s linear infinite;
      pointer-events:none;
    }
    @keyframes sparkMove{
      from{transform:translateX(-220px)}
      to{transform:translateX(calc(100vw + 220px))}
    }

    @media(max-width:1180px){
      .signal-inner{grid-template-columns:1fr;min-height:auto}
      .signal-panel{border-left:0;border-top:1px solid rgba(5,6,9,.28);padding-left:0;padding-top:20px}
      .garage-carousel-slide{grid-template-columns:1fr}
      .garage-carousel-image{min-height:420px}
      .review-grid-expanded{grid-template-columns:repeat(2,1fr)}
    }
    @media(max-width:760px){
      .signal-inner{padding:28px 18px}
      .signal-label b{font-size:54px}
      .signal-slide h3{font-size:44px}
      .garage-carousel-copy{padding:28px}
      .garage-carousel-copy h3{font-size:50px}
      .garage-carousel-image{min-height:300px}
      .review-grid-expanded{grid-template-columns:1fr}
    }

  
    /* v7 polish: cursor stacking, hero sparks, subpage spacing, slider controls */
    .cursor-core,
    .nitro-dot,
    .click-pulse{
      z-index:2147483647 !important;
      isolation:isolate;
    }

    .spark-line{
      z-index:80 !important;
      opacity:.68 !important;
      height:2px !important;
      background:linear-gradient(90deg,transparent,rgba(215,255,57,.18),var(--acid),rgba(79,195,255,.45),transparent) !important;
      box-shadow:0 0 16px rgba(215,255,57,.65),0 0 32px rgba(79,195,255,.22);
      mix-blend-mode:screen;
    }

    /* Make the green streaks feel attached to hero areas instead of random empty top space */
    .page-hero,
    .hero{
      overflow:hidden;
      position:relative;
    }
    .page-hero::after,
    .hero .hero-inner::after{
      content:"";
      position:absolute;
      left:-30%;
      right:auto;
      top:78px;
      width:42%;
      height:2px;
      background:linear-gradient(90deg,transparent,var(--acid),rgba(79,195,255,.55),transparent);
      box-shadow:0 0 22px rgba(215,255,57,.62),0 0 48px rgba(79,195,255,.24);
      z-index:7;
      animation:heroScan 5.8s linear infinite;
      pointer-events:none;
      opacity:.9;
    }
    .page-hero::before{
      content:"";
      position:absolute;
      left:-45%;
      top:128px;
      width:34%;
      height:1px;
      background:linear-gradient(90deg,transparent,rgba(215,255,57,.85),transparent);
      box-shadow:0 0 20px rgba(215,255,57,.55);
      z-index:7;
      animation:heroScan 7.6s linear infinite 1.2s;
      pointer-events:none;
    }
    @keyframes heroScan{
      from{transform:translateX(0)}
      to{transform:translateX(390%)}
    }

    /* Remove oversized blank-feeling hero tops while preserving presence */
    .page-hero{
      min-height:390px !important;
    }
    .page-hero .container{
      min-height:390px !important;
      padding-top:46px !important;
      padding-bottom:54px !important;
    }
    .page-hero h1{
      max-width:1120px;
    }
    .page-hero p{
      margin-top:14px !important;
    }

    /* Keep homepage strong but not bloated */
    .hero{
      min-height:calc(100vh - 34px) !important;
    }
    .hero-inner{
      padding-top:82px !important;
      padding-bottom:54px !important;
    }

    /* General slider control system */
    .signal-dots,
    .slider-dots,
    #garageDots{
      display:flex !important;
      align-items:center !important;
      justify-content:center !important;
      gap:10px !important;
      flex-wrap:wrap !important;
      min-height:18px;
    }
    .signal-dots button,
    .slider-dots button,
    #garageDots button{
      width:11px !important;
      height:11px !important;
      min-width:11px !important;
      min-height:11px !important;
      padding:0 !important;
      border-radius:999px !important;
      display:block !important;
      line-height:0 !important;
      font-size:0 !important;
      transition:transform .32s var(--ease),background .32s var(--ease),border-color .32s var(--ease),opacity .32s var(--ease) !important;
    }
    .signal-dots button.active,
    .slider-dots button.active,
    #garageDots button.active{
      transform:scale(1.35) !important;
      opacity:1 !important;
    }

    .slider-controls,
    .garage-carousel-controls{
      min-height:76px !important;
      padding:18px 22px !important;
      display:grid !important;
      grid-template-columns:auto 1fr auto !important;
      align-items:center !important;
      gap:18px !important;
    }
    .slider-controls button,
    .garage-carousel-controls button{
      min-width:84px !important;
      height:42px !important;
      display:inline-flex !important;
      align-items:center !important;
      justify-content:center !important;
      white-space:nowrap !important;
    }

    .signal-inner{
      align-items:center !important;
    }
    .signal-window{
      min-width:0 !important;
    }
    .signal-panel{
      min-width:0 !important;
    }
    .signal-panel .signal-dots{
      justify-content:flex-start !important;
    }

    /* Review slider: prevent awkward dot/control offset and keep cards equal */
    .slider-wrap{
      overflow:hidden !important;
    }
    .review-slider{
      align-items:stretch !important;
    }
    .slide-review{
      min-height:330px !important;
    }
    .slide-review .review-meta{
      align-items:center;
    }

    /* Garage carousel controls align with strong technical style */
    .garage-carousel-controls{
      border-top:1px solid var(--line);
      background:linear-gradient(90deg,#050609,#0e131b) !important;
    }
    .garage-carousel-controls .signal-dots button{
      border-color:rgba(255,255,255,.55) !important;
      background:transparent !important;
    }
    .garage-carousel-controls .signal-dots button.active{
      background:var(--acid) !important;
      border-color:var(--acid) !important;
      box-shadow:0 0 20px rgba(215,255,57,.44);
    }

    /* Signal slider bottom panel alignment */
    .signal-panel{
      justify-content:center !important;
    }
    .signal-panel strong{
      margin-bottom:4px;
    }
    .signal-progress{
      margin-top:4px;
    }

    /* Prevent controls sitting too close to content on small screens */
    @media(max-width:1180px){
      .page-hero{
        min-height:360px !important;
      }
      .page-hero .container{
        min-height:360px !important;
      }
      .signal-panel .signal-dots{
        justify-content:center !important;
      }
      .signal-panel{
        text-align:center;
      }
    }

    @media(max-width:760px){
      .page-hero{
        min-height:330px !important;
      }
      .page-hero .container{
        min-height:330px !important;
        padding-top:42px !important;
        padding-bottom:46px !important;
      }
      .hero{
        min-height:660px !important;
      }
      .hero-inner{
        padding-top:68px !important;
        padding-bottom:38px !important;
      }
      .page-hero::after,
      .hero .hero-inner::after{
        top:54px;
        width:70%;
        animation-duration:4.8s;
      }
      .page-hero::before{
        top:94px;
        width:56%;
      }
      .slider-controls,
      .garage-carousel-controls{
        grid-template-columns:1fr !important;
        justify-items:center !important;
        min-height:0 !important;
      }
      .slider-controls button,
      .garage-carousel-controls button{
        width:100% !important;
      }
      .signal-inner{
        gap:20px !important;
      }
      .signal-panel{
        gap:14px !important;
      }
    }

  
    /* v8 layout repair: hero height, fixed rail footer behaviour, logo spacing, sliders, sticky CTA */
    :root{ --rail:96px; }

    /* Left rail no longer creates a full-height empty column near footer */
    .rail{
      position:fixed !important;
      top:0 !important;
      bottom:auto !important;
      height:100vh !important;
      transform:translateX(0);
      transition:transform .55s var(--ease), opacity .35s var(--ease);
    }
    body.footer-zone .rail{
      transform:translateX(-110%);
      opacity:0;
      pointer-events:none;
    }
    .site{
      margin-left:var(--rail) !important;
      transition:margin-left .55s var(--ease);
    }
    body.footer-zone .site{
      margin-left:0 !important;
    }

    /* Fix rail logo/caption collision */
    .rail{
      padding:16px 0 20px !important;
      justify-content:flex-start !important;
      gap:18px !important;
    }
    .rail .brand-mark{
      flex:0 0 auto;
      width:58px !important;
      height:58px !important;
      margin-bottom:18px !important;
      position:relative;
      z-index:3;
    }
    .rail-nav{
      flex:1 1 auto;
      justify-content:center;
      gap:9px !important;
      min-height:0;
      padding:8px 0;
    }
    .rail-nav a{
      min-height:32px !important;
      width:64px !important;
      font-size:9px !important;
      letter-spacing:.1em !important;
    }
    .rail-foot{
      flex:0 0 auto;
      max-height:230px;
      overflow:hidden;
      font-size:9px !important;
      letter-spacing:.14em !important;
      margin-top:14px;
      opacity:.82;
    }

    /* Footer logo uses the same mark proportions as header */
    .footer-brand .brand-mark{
      width:58px !important;
      height:58px !important;
      min-width:58px !important;
      font-size:30px !important;
      flex:0 0 auto;
      clip-path:polygon(0 0,100% 0,82% 100%,18% 100%) !important;
      background:#fff !important;
      color:#050609 !important;
      display:grid !important;
      place-items:center !important;
    }
    .footer-brand{
      align-items:center !important;
    }

    /* Fix homepage/subpage hero heights and remove oversized blank top blocks */
    .hero{
      min-height:620px !important;
      align-items:center !important;
    }
    .hero-inner{
      padding-top:54px !important;
      padding-bottom:44px !important;
      align-self:center !important;
    }
    .hero h1{
      font-size:clamp(58px,8.8vw,142px) !important;
      line-height:.92 !important;
      max-width:1040px !important;
    }
    .hero-copy{
      margin:18px 0 28px !important;
    }
    .hud{
      bottom:24px !important;
      right:24px !important;
    }
    .page-hero{
      min-height:330px !important;
    }
    .page-hero .container{
      min-height:330px !important;
      padding-top:38px !important;
      padding-bottom:44px !important;
    }
    .page-hero h1{
      font-size:clamp(54px,8vw,116px) !important;
      line-height:.9 !important;
    }

    /* Keep green scans inside hero layer, not across random empty sections */
    .spark-line{
      position:fixed !important;
      top:auto !important;
      left:var(--rail) !important;
      width:180px !important;
      opacity:.45 !important;
      pointer-events:none !important;
    }
    body.footer-zone .spark-line{left:0 !important}
    .spark-line:nth-of-type(1){top:10vh !important}
    .spark-line:nth-of-type(2){top:16vh !important}
    .spark-line:nth-of-type(3){top:23vh !important}
    .spark-line:nth-of-type(4){top:31vh !important}
    .spark-line:nth-of-type(5){top:40vh !important}

    /* Make tall feature/slider sections less huge */
    .signal-inner{
      min-height:150px !important;
      padding-top:24px !important;
      padding-bottom:24px !important;
      grid-template-columns:200px 1fr 190px !important;
    }
    .signal-label b{font-size:52px !important}
    .signal-slide h3{
      font-size:clamp(34px,4vw,58px) !important;
      line-height:.9 !important;
    }
    .signal-slide p{font-size:15px !important}
    .signal-window{min-height:102px !important}
    .signal-panel strong{font-size:38px !important}

    .garage-carousel-slide{
      min-height:460px !important;
    }
    .garage-carousel-image{
      min-height:460px !important;
    }
    .garage-carousel-copy{
      padding:38px !important;
    }
    .garage-carousel-copy h3{
      font-size:clamp(42px,5vw,62px) !important;
    }

    /* Source a car sticky button placement */
    .sticky{
      right:22px !important;
      left:auto !important;
      bottom:22px !important;
      width:auto !important;
      min-width:150px;
      max-width:calc(100vw - 44px);
      z-index:9996 !important;
      transform:none !important;
      transition:opacity .35s var(--ease),transform .35s var(--ease),bottom .35s var(--ease);
    }
    body.footer-zone .sticky{
      bottom:96px !important;
      opacity:.92;
    }

    /* Google review slider: replace huge pill dots with compact track */
    .slider-controls{
      grid-template-columns:auto minmax(160px,1fr) auto !important;
      align-items:center !important;
      gap:16px !important;
      min-height:64px !important;
      padding:14px 18px !important;
    }
    .slider-dots{
      justify-content:center !important;
      max-width:560px;
      margin:0 auto;
      gap:7px !important;
      overflow:hidden;
    }
    .slider-dots button{
      width:8px !important;
      height:8px !important;
      min-width:8px !important;
      min-height:8px !important;
      border-radius:50% !important;
      background:rgba(255,255,255,.28) !important;
      border:0 !important;
      opacity:.75 !important;
      box-shadow:none !important;
    }
    .slider-dots button.active{
      width:26px !important;
      min-width:26px !important;
      border-radius:999px !important;
      transform:none !important;
      background:var(--acid) !important;
      box-shadow:0 0 18px rgba(215,255,57,.35) !important;
      opacity:1 !important;
    }
    .slider-controls button,
    .garage-carousel-controls button{
      height:40px !important;
      min-width:76px !important;
      padding:10px 14px !important;
    }
    .slide-review{
      min-height:300px !important;
      padding:26px !important;
    }
    .slide-review h3{
      font-size:24px !important;
    }

    /* Garage carousel dots */
    #garageDots button,
    .garage-carousel-controls .signal-dots button{
      width:9px !important;
      height:9px !important;
      min-width:9px !important;
      min-height:9px !important;
      border-radius:50% !important;
    }
    #garageDots button.active,
    .garage-carousel-controls .signal-dots button.active{
      width:26px !important;
      min-width:26px !important;
      border-radius:999px !important;
      transform:none !important;
    }

    /* Avoid text/image clipping in footer */
    footer{
      position:relative;
      z-index:5;
    }

    @media(max-width:1180px){
      .site,
      body.footer-zone .site{margin-left:0 !important}
      .signal-inner{
        grid-template-columns:1fr !important;
        min-height:0 !important;
      }
      .rail{display:none !important}
      .spark-line{left:0 !important}
      .page-hero,.page-hero .container{min-height:310px !important}
    }
    @media(max-width:760px){
      .hero{
        min-height:590px !important;
      }
      .hero h1{
        font-size:52px !important;
        line-height:.94 !important;
      }
      .hero-inner{
        padding-top:42px !important;
        padding-bottom:34px !important;
      }
      .hud{
        margin:0 18px 22px !important;
        bottom:auto !important;
      }
      .page-hero,.page-hero .container{
        min-height:290px !important;
      }
      .page-hero h1{
        font-size:48px !important;
      }
      .signal-slide h3{font-size:38px !important}
      .garage-carousel-slide{min-height:0 !important}
      .garage-carousel-image{min-height:280px !important}
      .garage-carousel-copy{padding:26px !important}
      .slider-controls,
      .garage-carousel-controls{
        grid-template-columns:auto 1fr auto !important;
      }
      .slider-controls button,
      .garage-carousel-controls button{
        width:auto !important;
        min-width:62px !important;
        font-size:11px !important;
      }
      .slider-dots{
        max-width:190px;
      }
      .sticky{
        left:14px !important;
        right:14px !important;
        bottom:16px !important;
        width:auto !important;
        min-width:0 !important;
      }
      body.footer-zone .sticky{
        bottom:16px !important;
        opacity:0;
        pointer-events:none;
      }
    }

  
    /* v9: final hero sparks, sticky CTA and carousel height repair */

    /* The moving scan lines must belong to hero sections only, not the entire scrolling viewport. */
    .spark-line{
      display:none !important;
    }
    .hero::before,
    .page-hero::before{
      pointer-events:none;
    }
    .hero-scanline,
    .hero::after,
    .page-hero::after{
      pointer-events:none;
    }
    .hero .hero-inner::before,
    .page-hero .container::before{
      content:"";
      position:absolute;
      left:-28%;
      top:34px;
      width:38%;
      height:2px;
      background:linear-gradient(90deg,transparent,rgba(215,255,57,.15),var(--acid),rgba(79,195,255,.5),transparent);
      box-shadow:0 0 18px rgba(215,255,57,.58),0 0 38px rgba(79,195,255,.22);
      z-index:9;
      animation:heroLocalScan 5.6s linear infinite;
      opacity:.82;
    }
    .hero .hero-inner::after,
    .page-hero .container::after{
      content:"";
      position:absolute;
      left:-42%;
      top:82px;
      width:28%;
      height:1px;
      background:linear-gradient(90deg,transparent,rgba(215,255,57,.75),transparent);
      box-shadow:0 0 16px rgba(215,255,57,.46);
      z-index:9;
      animation:heroLocalScan 7.4s linear infinite 1.1s;
      opacity:.72;
    }
    @keyframes heroLocalScan{
      from{transform:translateX(0)}
      to{transform:translateX(430%)}
    }
    .hero-inner,
    .page-hero .container{
      position:relative;
      overflow:hidden;
    }

    /* The sticky source CTA was being pulled towards the page edge by older responsive rules. */
    a.sticky,
    .sticky{
      position:fixed !important;
      left:auto !important;
      right:24px !important;
      bottom:24px !important;
      width:auto !important;
      min-width:154px !important;
      max-width:calc(100vw - 48px) !important;
      z-index:2147483000 !important;
      display:inline-flex !important;
      align-items:center !important;
      justify-content:center !important;
      white-space:nowrap !important;
      transform:none !important;
      opacity:1 !important;
      pointer-events:auto !important;
      padding:13px 18px !important;
      overflow:visible !important;
    }
    body.footer-zone a.sticky,
    body.footer-zone .sticky{
      right:24px !important;
      bottom:24px !important;
      opacity:.92 !important;
      pointer-events:auto !important;
    }

    /* The spotlight slider was too tall. Keep it cinematic, but controlled. */
    .garage-carousel{
      max-width:1160px !important;
      margin:0 auto !important;
    }
    .garage-carousel-slide{
      min-height:360px !important;
      grid-template-columns:1fr 1fr !important;
    }
    .garage-carousel-image{
      min-height:360px !important;
      height:360px !important;
    }
    .garage-carousel-image img{
      height:100% !important;
      object-fit:cover !important;
      object-position:center center !important;
    }
    .garage-carousel-copy{
      min-height:360px !important;
      padding:34px 38px !important;
    }
    .garage-carousel-copy h3{
      font-size:clamp(38px,4.2vw,56px) !important;
      line-height:.9 !important;
      max-width:520px !important;
    }
    .garage-carousel-copy p{
      font-size:15px !important;
      max-width:560px !important;
      margin:14px 0 20px !important;
    }
    .garage-carousel-controls{
      min-height:58px !important;
      padding:10px 16px !important;
    }
    .garage-carousel-controls button{
      height:38px !important;
      min-width:72px !important;
    }
    #garageDots{
      max-width:220px !important;
      margin:0 auto !important;
      overflow:hidden !important;
    }
    #garageDots button{
      width:8px !important;
      min-width:8px !important;
      height:8px !important;
      min-height:8px !important;
    }
    #garageDots button.active{
      width:24px !important;
      min-width:24px !important;
    }

    /* Reduce section vertical bulk around this slider. */
    .garage-carousel.closest,
    .section:has(.garage-carousel){
      padding-top:64px !important;
      padding-bottom:64px !important;
    }

    /* Keep review slider controls compact as well. */
    .slider-controls{
      min-height:58px !important;
      padding:10px 16px !important;
    }
    .slider-dots{
      max-width:360px !important;
      overflow:hidden !important;
    }
    .slider-dots button{
      width:7px !important;
      min-width:7px !important;
      height:7px !important;
      min-height:7px !important;
    }
    .slider-dots button.active{
      width:24px !important;
      min-width:24px !important;
    }

    @media(max-width:1180px){
      .garage-carousel-slide{
        grid-template-columns:1fr !important;
        min-height:0 !important;
      }
      .garage-carousel-image{
        min-height:300px !important;
        height:300px !important;
      }
      .garage-carousel-copy{
        min-height:0 !important;
      }
    }

    @media(max-width:760px){
      a.sticky,
      .sticky{
        left:auto !important;
        right:14px !important;
        bottom:14px !important;
        width:auto !important;
        min-width:138px !important;
        max-width:calc(100vw - 28px) !important;
        opacity:1 !important;
        pointer-events:auto !important;
      }
      body.footer-zone a.sticky,
      body.footer-zone .sticky{
        opacity:0 !important;
        pointer-events:none !important;
      }
      .garage-carousel-image{
        min-height:240px !important;
        height:240px !important;
      }
      .garage-carousel-copy{
        padding:24px !important;
      }
      .garage-carousel-copy h3{
        font-size:40px !important;
      }
      .section:has(.garage-carousel){
        padding-top:48px !important;
        padding-bottom:48px !important;
      }
      .hero .hero-inner::before,
      .page-hero .container::before{
        top:22px;
        width:60%;
      }
      .hero .hero-inner::after,
      .page-hero .container::after{
        top:58px;
        width:45%;
      }
    }


    /* v10 final website fixes: readable form menus, compact review dots, equal homepage section rhythm */
    select,
    select:focus{
      background-color:#07090d !important;
      color:#ffffff !important;
      border-color:rgba(255,255,255,.28) !important;
    }
    select option,
    select optgroup{
      background:#ffffff !important;
      color:#050609 !important;
    }
    select option:checked{
      background:#d7ff39 !important;
      color:#050609 !important;
    }
    input::placeholder,
    textarea::placeholder{
      color:#9fa9b5 !important;
      opacity:1 !important;
    }

    /* Keep ordinary homepage sections visually consistent without stretching hero/full-width feature bands. */
    .page[data-page="home"] > .section{
      min-height:640px;
      display:grid;
      align-items:center;
    }
    .page[data-page="home"] > .section .container{
      width:100%;
    }

    /* Homepage review slider: dots must stay small, not oversized active pills. */
    .slider-dots{
      gap:6px !important;
      max-width:260px !important;
    }
    .slider-dots button,
    .slider-dots button.active{
      width:7px !important;
      min-width:7px !important;
      height:7px !important;
      min-height:7px !important;
      border-radius:999px !important;
      padding:0 !important;
      transform:none !important;
      box-shadow:none !important;
    }
    .slider-dots button{
      background:rgba(255,255,255,.34) !important;
      opacity:.75 !important;
    }
    .slider-dots button.active{
      background:var(--acid) !important;
      opacity:1 !important;
    }
    .slider-controls{
      min-height:54px !important;
      padding:10px 16px !important;
    }

    /* Review slider height aligned to the rest of the homepage sections. */
    .slider-wrap{
      min-height:420px !important;
      display:flex !important;
      flex-direction:column !important;
    }
    .review-slider{
      flex:1 1 auto !important;
    }
    .slide-review{
      min-height:360px !important;
    }

    @media(max-width:760px){
      .page[data-page="home"] > .section{
        min-height:0;
      }
      .slider-wrap{
        min-height:0 !important;
      }
      .slide-review{
        min-height:320px !important;
      }
    }

  

    /* v10: available-car tag spacing and pointer stack repair */
    .vehicle-body .tag-row{
      display:flex !important;
      flex-wrap:wrap !important;
      align-items:center !important;
      gap:10px !important;
      margin-bottom:18px !important;
    }
    .vehicle-body .tag-row + h3{
      margin-top:0 !important;
      clear:both !important;
    }
    .stock-grid .vehicle-body .tag-row,
    .bay-grid .vehicle-body .tag-row{
      margin-bottom:20px !important;
    }
    .stock-grid .vehicle-body h3,
    .bay-grid .vehicle-body h3{
      line-height:1.08 !important;
    }

    /* Keep the custom pointer above all sections without freezing its movement.
       Movement is controlled by left/top in JS, not by a forced transform. */
    @media(pointer:fine){
      .cursor-core,
      .nitro-dot,
      .click-pulse{
        position:fixed !important;
        pointer-events:none !important;
        isolation:isolate !important;
        mix-blend-mode:normal !important;
        will-change:left,top,transform !important;
      }
      .cursor-core{
        z-index:2147483647 !important;
        background:rgba(5,6,9,.18) !important;
        outline:1px solid rgba(255,255,255,.42) !important;
        transform:translate(-50%,-50%) translateZ(0);
      }
      .nitro-dot{
        z-index:2147483646 !important;
        transform:translate(-50%,-50%) translateZ(0);
      }
      .click-pulse{
        z-index:2147483645 !important;
      }
    }



    /* v12 mobile containment repair: prevent horizontal desktop canvas on phones */
    html, body{
      width:100% !important;
      max-width:100% !important;
      overflow-x:hidden !important;
      overscroll-behavior-x:none;
    }
    body{
      min-width:0 !important;
    }
    *, *::before, *::after{
      min-width:0;
    }
    .site, main, section, footer, header, .page, .container{
      max-width:100% !important;
    }
    img, video, canvas, svg{
      max-width:100% !important;
    }

    @media(max-width:1180px){
      :root{--rail:0px !important;}
      .rail{display:none !important;}
      .site, body.footer-zone .site{
        margin-left:0 !important;
        width:100% !important;
        max-width:100% !important;
      }
      .mobile-head{display:flex !important;}
      .container{
        width:100% !important;
        max-width:100% !important;
      }
      .spark-line{display:none !important;}
    }

    @media(max-width:760px){
      html, body{
        position:relative;
        overflow-x:hidden !important;
      }
      .container{
        padding-left:18px !important;
        padding-right:18px !important;
      }
      .site, main, .page, .section, footer{
        width:100% !important;
        overflow-x:hidden !important;
      }
      .mobile-head{
        left:0 !important;
        right:0 !important;
        width:100% !important;
      }
      .mobile-menu{
        left:12px !important;
        right:12px !important;
        width:auto !important;
        max-width:calc(100vw - 24px) !important;
      }
      h1{
        font-size:clamp(44px,15vw,58px) !important;
        line-height:.94 !important;
        overflow-wrap:anywhere;
      }
      h2{
        font-size:clamp(38px,12vw,50px) !important;
        line-height:.94 !important;
        overflow-wrap:anywhere;
      }
      h3, p, li, a, span, strong, button, input, select, textarea{
        overflow-wrap:break-word;
      }
      .section{
        padding-top:58px !important;
        padding-bottom:58px !important;
      }
      .section-head{
        display:block !important;
        margin-bottom:28px !important;
      }
      .section-head p{
        margin-top:14px !important;
      }
      .hero{
        min-height:auto !important;
        display:block !important;
      }
      .hero-inner{
        padding:64px 18px 34px !important;
      }
      .hero-bg img{
        object-position:center center !important;
      }
      .hud{
        position:relative !important;
        left:auto !important;
        right:auto !important;
        bottom:auto !important;
        width:auto !important;
        margin:0 18px 24px !important;
        grid-template-columns:1fr !important;
      }
      .hud div{
        border-right:0 !important;
        border-bottom:1px solid var(--line) !important;
      }
      .hud div:last-child{border-bottom:0 !important;}
      .page-hero, .page-hero .container{
        min-height:0 !important;
      }
      .page-hero .container{
        padding-top:54px !important;
        padding-bottom:48px !important;
      }
      .bay-grid,
      .stock-grid,
      .service-matrix,
      .reviews,
      .review-grid-expanded,
      .journal-grid,
      .footer-grid,
      .form-grid,
      .steps,
      .mega-band,
      .mega-media,
      .timeline,
      .detail-grid,
      .case-grid,
      .compare,
      .quote-grid,
      .inventory-stat,
      .wide-article,
      .content-layers,
      .subpage-band,
      .spec-table,
      .about-story,
      .about-values,
      .about-deep-grid,
      .home-expansion-grid,
      .gallery-mosaic,
      .news-layout,
      .news-list,
      .brief,
      .split-angle{
        display:grid !important;
        grid-template-columns:minmax(0,1fr) !important;
      }
      .bay-grid > .vehicle-row{
        display:grid !important;
        grid-template-columns:minmax(0,1fr) !important;
      }
      .vehicle, .article, .review, .google-review-card, .home-expansion-card, .service, .content-layer, .about-deep-card{
        width:100% !important;
        max-width:100% !important;
      }
      .vehicle-img,
      .vehicle.feature .vehicle-img,
      .bay-grid .vehicle-img,
      .bay-grid .vehicle.feature .vehicle-img{
        height:250px !important;
      }
      .garage-carousel{
        max-width:100% !important;
      }
      .garage-carousel-slide{
        display:grid !important;
        grid-template-columns:minmax(0,1fr) !important;
        min-height:0 !important;
      }
      .garage-carousel-image{
        height:230px !important;
        min-height:230px !important;
      }
      .garage-carousel-copy{
        min-height:0 !important;
        padding:24px !important;
      }
      .garage-carousel-controls, .slider-controls{
        grid-template-columns:auto 1fr auto !important;
        gap:8px !important;
      }
      .slider-dots, #garageDots{
        max-width:150px !important;
      }
      .slide-review{
        min-width:100% !important;
      }
      .signal-inner{
        display:grid !important;
        grid-template-columns:minmax(0,1fr) !important;
        padding:24px 18px !important;
      }
      .signal-window{
        width:100% !important;
      }
      .signal-slide{
        min-width:100% !important;
        padding-right:0 !important;
      }
      .gallery-item:nth-child(n){
        grid-column:auto !important;
        grid-row:auto !important;
      }
      .gallery-mosaic{
        grid-auto-rows:240px !important;
      }
      .news-mini{
        display:grid !important;
        grid-template-columns:minmax(0,1fr) !important;
      }
      .news-mini img{
        width:100% !important;
        height:210px !important;
      }
      .wide-copy, .angle-copy, .mega-copy{
        padding-left:18px !important;
        padding-right:18px !important;
      }
      .subpage-image img, .wide-article img, .angle-img img{
        height:300px !important;
      }
      .about-pin, .brief-panel{
        position:relative !important;
        top:auto !important;
      }
      .footer-grid{
        padding-left:18px !important;
        padding-right:18px !important;
      }
      .footer-bottom{
        padding-left:18px !important;
        padding-right:18px !important;
      }
      .sticky{
        right:14px !important;
        bottom:14px !important;
        max-width:calc(100vw - 28px) !important;
      }
      .cursor-core, .nitro-dot, .click-pulse{
        display:none !important;
      }
      body.nitro-cursor,
      body.nitro-cursor a,
      body.nitro-cursor button,
      body.nitro-cursor input,
      body.nitro-cursor select,
      body.nitro-cursor textarea{
        cursor:auto !important;
      }
    }


/* Clean external build safety patch */
@media (max-width: 900px){
  html, body { width: 100%; max-width: 100%; overflow-x: hidden !important; }
  .site, main, section, .page, .container { max-width: 100vw !important; overflow-x: hidden !important; }
}

/* v13: mobile review slider overflow repair
   The review carousel uses a wide flex track. On some mobile browsers that can
   create a horizontal layout canvas even when the visible wrapper clips it.
   This patch locks the carousel and its controls to the viewport width. */
@media (max-width: 760px){
  html,
  body{
    width:100% !important;
    max-width:100% !important;
    overflow-x:hidden !important;
  }

  .slider-wrap,
  .page[data-page="home"] .slider-wrap{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow:hidden !important;
    contain:layout paint !important;
  }

  .review-slider,
  #googleSlider{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    display:flex !important;
    flex-wrap:nowrap !important;
    align-items:stretch !important;
    overflow:visible !important;
    will-change:transform !important;
  }

  .review-slider > .slide-review,
  #googleSlider > .slide-review{
    flex:0 0 100% !important;
    width:100% !important;
    max-width:100% !important;
    min-width:100% !important;
    box-sizing:border-box !important;
  }

  .slider-controls{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow:hidden !important;
    display:grid !important;
    grid-template-columns:minmax(52px,auto) minmax(0,1fr) minmax(52px,auto) !important;
    gap:6px !important;
    padding:10px 10px !important;
  }

  .slider-controls button{
    min-width:52px !important;
    max-width:72px !important;
    padding:9px 10px !important;
    font-size:10px !important;
  }

  .slider-dots{
    width:100% !important;
    max-width:118px !important;
    min-width:0 !important;
    margin:0 auto !important;
    overflow:hidden !important;
    display:flex !important;
    flex-wrap:nowrap !important;
    justify-content:center !important;
    gap:5px !important;
  }

  .slider-dots button,
  .slider-dots button.active{
    flex:0 0 6px !important;
    width:6px !important;
    min-width:6px !important;
    height:6px !important;
    min-height:6px !important;
  }
}

/* v14: hard mobile fix for Google review carousel
   On touch screens this section is no longer a horizontal carousel. Horizontal
   transform-based sliders can enlarge the mobile layout canvas on iOS/Android.
   This converts it into a contained vertical card list, which removes the
   sideways zoom-out/scroll issue completely. */
@media (max-width: 760px){
  html,
  body{
    width:100% !important;
    max-width:100vw !important;
    overflow-x:hidden !important;
    overscroll-behavior-x:none;
  }

  body,
  .site,
  main,
  .page,
  .section,
  .container{
    max-width:100vw !important;
    overflow-x:clip !important;
  }

  .page[data-page="home"] .slider-wrap,
  .slider-wrap:has(#googleSlider){
    width:100% !important;
    max-width:100% !important;
    overflow:hidden !important;
    contain:layout paint style !important;
  }

  #googleSlider,
  .slider-wrap:has(#googleSlider) .review-slider{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:14px !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    transform:none !important;
    translate:none !important;
    transition:none !important;
    overflow:hidden !important;
    will-change:auto !important;
  }

  #googleSlider .slide-review,
  .slider-wrap:has(#googleSlider) .slide-review{
    min-width:0 !important;
    width:100% !important;
    max-width:100% !important;
    flex:0 1 auto !important;
    border-right:0 !important;
    min-height:0 !important;
    padding:22px !important;
  }

  /* Keep homepage concise on mobile. Full review page still contains more. */
  #googleSlider .slide-review:nth-child(n+5){
    display:none !important;
  }

  .slider-wrap:has(#googleSlider) .slider-controls{
    display:none !important;
  }
}


/* v15: definitive mobile overflow lock + review stack
   This version does not rely on :has(). The review wrapper has its own class and
   the JS also disables transforms on touch/mobile so Chrome cannot create a wide
   horizontal canvas. */
@media (max-width: 820px){
  html{
    width:100% !important;
    max-width:100% !important;
    overflow-x:hidden !important;
    touch-action:pan-y !important;
  }
  body{
    width:100% !important;
    max-width:100vw !important;
    min-width:0 !important;
    overflow-x:hidden !important;
    position:relative !important;
    touch-action:pan-y !important;
  }
  body.mobile-overflow-locked{
    overflow-x:hidden !important;
  }
  .site, main, .page, .section, .container, .hero, .page-hero,
  .gallery-mosaic, .garage-carousel, .garage-carousel-stage, .signal,
  .signal-inner, .signal-window, .slider-wrap, .review-slider, .vgl-footer{
    width:100% !important;
    max-width:100vw !important;
    min-width:0 !important;
    overflow-x:hidden !important;
    box-sizing:border-box !important;
  }
  .container{
    padding-left:18px !important;
    padding-right:18px !important;
  }
  img, video, canvas, iframe, svg{
    max-width:100% !important;
  }
  .motion-field{
    display:none !important;
  }

  /* Homepage Google reviews: mobile card stack, no transform slider. */
  .review-mobile-stack{
    width:100% !important;
    max-width:100% !important;
    overflow:hidden !important;
    contain:layout paint !important;
  }
  .review-mobile-stack #googleSlider{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    gap:14px !important;
    transform:none !important;
    translate:none !important;
    transition:none !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow:hidden !important;
  }
  .review-mobile-stack #googleSlider .slide-review{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    flex:none !important;
    border-right:0 !important;
    box-sizing:border-box !important;
  }
  .review-mobile-stack #googleSlider .slide-review:nth-child(n+5){
    display:none !important;
  }
  .review-mobile-stack .slider-controls{
    display:none !important;
  }
}

/* v16: mobile clipping repair
   The previous overflow fix stopped sideways zoom, but some large display text
   and slider controls were still wider than the visual viewport and became
   clipped. This patch keeps the canvas locked while making mobile content wrap
   inside it. */
@media (max-width: 820px){
  *, *::before, *::after{
    box-sizing:border-box !important;
  }

  html,
  body{
    width:100% !important;
    max-width:100vw !important;
    overflow-x:hidden !important;
  }

  body{
    min-width:0 !important;
  }

  .site,
  main,
  .page,
  .section,
  .container,
  .section-head,
  .slider-wrap,
  .review-slider,
  .garage-carousel,
  .garage-carousel-stage,
  .garage-carousel-slide,
  .garage-carousel-copy,
  .gallery-mosaic,
  .content-layers,
  .stock-grid,
  .bay-grid,
  .service-matrix,
  .form-card,
  .form-grid,
  .vgl-footer{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow-x:clip !important;
  }

  .container{
    padding-left:16px !important;
    padding-right:16px !important;
  }

  .section{
    padding-left:0 !important;
    padding-right:0 !important;
  }

  .section-head{
    display:block !important;
    margin-bottom:28px !important;
  }

  .section-head > *,
  .section-head p,
  .section-head h1,
  .section-head h2,
  .section-head h3{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
  }

  h1,
  h2,
  h3,
  p,
  li,
  a,
  button,
  span,
  strong{
    max-width:100% !important;
  }

  h1,
  h2,
  h3,
  .garage-carousel-copy h3,
  .slide-review h3,
  .section-head h2,
  .page-hero h1,
  .hero h1{
    overflow-wrap:break-word !important;
    word-break:normal !important;
    hyphens:auto !important;
  }

  .section-head h2,
  h2{
    font-size:clamp(34px, 12vw, 46px) !important;
    line-height:.95 !important;
    letter-spacing:.01em !important;
  }

  h3,
  .slide-review h3{
    font-size:clamp(22px, 7vw, 30px) !important;
    line-height:1.05 !important;
  }

  p,
  .section-head p,
  .slide-review p,
  .garage-carousel-copy p{
    font-size:15px !important;
    line-height:1.55 !important;
    overflow-wrap:anywhere !important;
  }

  .eyebrow{
    display:flex !important;
    width:100% !important;
    max-width:100% !important;
    gap:10px !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
  }

  .eyebrow:before{
    flex:0 0 42px !important;
  }

  /* Review cards must be readable, not clipped. */
  .review-mobile-stack,
  .review-mobile-stack #googleSlider,
  .review-mobile-stack #googleSlider .slide-review{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow:hidden !important;
  }

  .review-mobile-stack #googleSlider .slide-review{
    padding:22px 18px !important;
  }

  .slide-review .review-meta{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
    align-items:start !important;
  }

  .slide-review .source{
    width:max-content !important;
    max-width:100% !important;
  }

  /* Garage spotlight is still a carousel, but each slide must fit the viewport. */
  .garage-carousel{
    margin-left:0 !important;
    margin-right:0 !important;
    max-width:100% !important;
    overflow:hidden !important;
  }

  .garage-carousel-stage{
    overflow:visible !important;
  }

  .garage-carousel-slide{
    grid-template-columns:1fr !important;
    min-width:100% !important;
    width:100% !important;
    max-width:100% !important;
    overflow:hidden !important;
  }

  .garage-carousel-image,
  .garage-carousel-copy{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
  }

  .garage-carousel-copy{
    padding:22px 18px !important;
  }

  .garage-carousel-copy h3{
    font-size:clamp(32px, 10.8vw, 42px) !important;
    line-height:.98 !important;
  }

  .garage-carousel-copy .btn,
  .garage-carousel-copy a.btn{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    white-space:normal !important;
    text-align:center !important;
    padding-left:12px !important;
    padding-right:12px !important;
  }

  .garage-carousel-controls,
  .slider-controls{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    grid-template-columns:auto minmax(0,1fr) auto !important;
    gap:8px !important;
    overflow:hidden !important;
  }

  .garage-carousel-controls button,
  .slider-controls button{
    min-width:56px !important;
    width:auto !important;
    max-width:72px !important;
    padding:9px 10px !important;
    white-space:nowrap !important;
  }

  #garageDots,
  .slider-dots{
    min-width:0 !important;
    max-width:100% !important;
    overflow:hidden !important;
  }

  /* Gallery images should stack cleanly without a narrow desktop column feel. */
  .gallery-mosaic{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
    grid-auto-rows:auto !important;
  }

  .gallery-item,
  .gallery-item:nth-child(n){
    grid-column:auto !important;
    grid-row:auto !important;
    width:100% !important;
    min-height:0 !important;
  }

  .gallery-item img{
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    aspect-ratio:16 / 10 !important;
    object-fit:cover !important;
  }

  .sticky{
    max-width:calc(100vw - 28px) !important;
    white-space:nowrap !important;
  }
}

@media (max-width: 420px){
  .section-head h2,
  h2{
    font-size:38px !important;
  }
  .garage-carousel-copy h3{
    font-size:34px !important;
  }
  .container{
    padding-left:14px !important;
    padding-right:14px !important;
  }
}

/* v17: mobile hard layout reset
   The earlier patches removed horizontal zoom, but some carousel tracks were still
   clipped because they remained transform-based components on mobile. This patch
   changes mobile sliders into static contained cards, uses the actual parent
   content width instead of 100vw, and prevents long display headings/buttons from
   escaping their card. */
@media (max-width: 820px){
  html,
  body{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow-x:hidden !important;
  }

  body{
    position:relative !important;
  }

  .site,
  main,
  .page,
  .section,
  .hero,
  .page-hero,
  footer{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow-x:hidden !important;
  }

  .container{
    width:auto !important;
    max-width:none !important;
    min-width:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:16px !important;
    padding-right:16px !important;
    overflow-x:visible !important;
  }

  .container > *{
    max-width:100% !important;
    min-width:0 !important;
  }

  .section-head,
  .section-head > div,
  .section-head p,
  .section-head h1,
  .section-head h2,
  .section-head h3{
    width:auto !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow:visible !important;
  }

  h1,
  h2,
  h3,
  h4,
  p,
  li,
  a,
  button,
  span,
  strong{
    max-width:100% !important;
    min-width:0 !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
    word-break:normal !important;
  }

  .section-head h2,
  h2{
    font-size:clamp(34px, 10.8vw, 44px) !important;
    line-height:.98 !important;
  }

  .hero h1,
  .page-hero h1{
    font-size:clamp(42px, 12vw, 52px) !important;
    line-height:.96 !important;
  }

  .btn,
  a.btn,
  button.btn{
    max-width:100% !important;
    min-width:0 !important;
    white-space:normal !important;
    text-align:center !important;
  }

  /* Disable horizontal review carousel on mobile. */
  .slider-wrap,
  .review-mobile-stack{
    width:auto !important;
    max-width:100% !important;
    min-width:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
    overflow:hidden !important;
  }

  .review-slider,
  #googleSlider,
  .review-mobile-stack #googleSlider{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    gap:14px !important;
    width:auto !important;
    max-width:100% !important;
    min-width:0 !important;
    transform:none !important;
    translate:none !important;
    transition:none !important;
    overflow:visible !important;
  }

  .slide-review,
  #googleSlider > .slide-review,
  .review-mobile-stack #googleSlider .slide-review{
    width:auto !important;
    max-width:100% !important;
    min-width:0 !important;
    flex:none !important;
    padding:20px 16px !important;
    overflow:hidden !important;
    border-right:0 !important;
  }

  #googleSlider > .slide-review:nth-child(n+5),
  .review-mobile-stack #googleSlider .slide-review:nth-child(n+5){
    display:none !important;
  }

  .slider-wrap .slider-controls,
  .review-mobile-stack .slider-controls{
    display:none !important;
  }

  .slide-review h3{
    font-size:clamp(22px, 7vw, 28px) !important;
    line-height:1.08 !important;
  }

  .slide-review p{
    font-size:15px !important;
    line-height:1.55 !important;
  }

  .slide-review .review-meta{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:8px !important;
  }

  /* Disable horizontal garage carousel on mobile. Show the first feature card as a static card. */
  .garage-carousel{
    width:auto !important;
    max-width:100% !important;
    min-width:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
    overflow:hidden !important;
  }

  .garage-carousel-stage{
    display:block !important;
    width:auto !important;
    max-width:100% !important;
    min-width:0 !important;
    transform:none !important;
    translate:none !important;
    transition:none !important;
    overflow:visible !important;
  }

  .garage-carousel-slide{
    display:block !important;
    width:auto !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow:hidden !important;
  }

  .garage-carousel-slide:nth-child(n+2){
    display:none !important;
  }

  .garage-carousel-image,
  .garage-carousel-copy{
    width:auto !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow:hidden !important;
  }

  .garage-carousel-image{
    height:auto !important;
    min-height:0 !important;
  }

  .garage-carousel-image img{
    width:100% !important;
    height:auto !important;
    aspect-ratio:16 / 9 !important;
    object-fit:cover !important;
  }

  .garage-carousel-copy{
    padding:22px 16px !important;
  }

  .garage-carousel-copy h3{
    font-size:clamp(30px, 9vw, 38px) !important;
    line-height:1 !important;
  }

  .garage-carousel-copy p{
    font-size:15px !important;
    line-height:1.55 !important;
  }

  .garage-carousel-copy .btn,
  .garage-carousel-copy a.btn{
    width:100% !important;
    display:flex !important;
  }

  .garage-carousel-controls{
    display:none !important;
  }

  /* Disable signal text track sliding on mobile to avoid transform clipping. */
  .signal{
    width:100% !important;
    max-width:100% !important;
    overflow:hidden !important;
  }

  .signal-inner{
    width:auto !important;
    max-width:100% !important;
    min-width:0 !important;
    padding-left:16px !important;
    padding-right:16px !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
  }

  .signal-window,
  .signal-track{
    width:auto !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow:hidden !important;
    transform:none !important;
    translate:none !important;
    transition:none !important;
  }

  .signal-track{
    display:block !important;
  }

  .signal-slide{
    width:auto !important;
    max-width:100% !important;
    min-width:0 !important;
    padding-right:0 !important;
  }

  .signal-slide:nth-child(n+2){
    display:none !important;
  }

  .signal-slide h3{
    font-size:clamp(34px, 10vw, 42px) !important;
    line-height:1 !important;
  }

  .signal-panel .signal-dots,
  .signal-progress{
    display:none !important;
  }

  /* Mobile galleries and cards use the parent width, not viewport width. */
  .gallery-mosaic,
  .bay-grid,
  .stock-grid,
  .home-expansion-grid,
  .service-matrix,
  .content-layers,
  .form-grid,
  .brief,
  .split-angle,
  .news-list,
  .review-grid-expanded{
    width:auto !important;
    max-width:100% !important;
    min-width:0 !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    overflow:visible !important;
  }

  .gallery-item,
  .vehicle,
  .home-expansion-card,
  .service,
  .content-layer,
  .form-card,
  .brief-panel,
  .news-mini,
  .google-review-card{
    width:auto !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow:hidden !important;
  }

  .sticky{
    right:14px !important;
    bottom:14px !important;
    left:auto !important;
    width:auto !important;
    max-width:calc(100vw - 28px) !important;
    min-width:0 !important;
    padding:12px 16px !important;
    white-space:nowrap !important;
  }
}

/* v20: final mobile-safe homepage content and signal/header repair.
   Keep reviews and spotlight static on mobile to prevent horizontal canvas issues,
   but make the top green signal area readable instead of stacked letter columns. */
@media (max-width: 820px){
  html,
  body{
    width:100% !important;
    max-width:100% !important;
    overflow-x:hidden !important;
    touch-action:pan-y !important;
  }

  .site,
  main,
  .page,
  .section,
  .container{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow-x:hidden !important;
  }

  h1,
  h2,
  h3,
  h4,
  p,
  li,
  a,
  button,
  span,
  strong{
    min-width:0 !important;
    max-width:100% !important;
    word-break:normal !important;
    overflow-wrap:break-word !important;
  }

  .hero{
    min-height:560px !important;
    overflow:hidden !important;
  }

  .hero-inner{
    padding-top:58px !important;
    padding-bottom:34px !important;
    overflow:hidden !important;
  }

  .hero h1{
    font-size:clamp(42px, 13vw, 56px) !important;
    line-height:.94 !important;
    letter-spacing:.01em !important;
  }

  .hero-copy{
    font-size:15px !important;
    line-height:1.55 !important;
    max-width:100% !important;
  }

  .signal{
    overflow:hidden !important;
  }

  .signal-inner{
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) !important;
    gap:16px !important;
    min-height:0 !important;
    padding:22px 18px !important;
    overflow:hidden !important;
  }

  .signal-label{
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:10px !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    text-align:left !important;
    white-space:normal !important;
    writing-mode:horizontal-tb !important;
    transform:none !important;
    overflow:hidden !important;
  }

  .signal-label span,
  .signal-label b{
    display:inline-block !important;
    width:auto !important;
    max-width:100% !important;
    min-width:0 !important;
    writing-mode:horizontal-tb !important;
    transform:none !important;
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
    text-align:left !important;
  }

  .signal-label span{
    font-size:10px !important;
    line-height:1.2 !important;
    letter-spacing:.11em !important;
  }

  .signal-label b{
    flex:0 0 auto !important;
    font-size:38px !important;
    line-height:.9 !important;
    letter-spacing:.02em !important;
  }

  .signal-window,
  .signal-track,
  .signal-slide{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow:hidden !important;
    transform:none !important;
    translate:none !important;
  }

  .signal-track{
    display:block !important;
  }

  .signal-slide:nth-child(n+2){
    display:none !important;
  }

  .signal-slide h3{
    font-size:clamp(30px, 9vw, 40px) !important;
    line-height:.96 !important;
    letter-spacing:.01em !important;
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:break-word !important;
    max-width:100% !important;
  }

  .signal-slide p{
    font-size:14px !important;
    line-height:1.45 !important;
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:break-word !important;
    max-width:100% !important;
  }

  .signal-panel{
    display:none !important;
  }

  .review-mobile-stack,
  .review-mobile-stack #googleSlider,
  .review-mobile-stack #googleSlider .slide-review,
  .garage-carousel,
  .garage-carousel-stage,
  .garage-carousel-slide,
  .garage-carousel-image,
  .garage-carousel-copy{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow:hidden !important;
  }

  .review-mobile-stack #googleSlider{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    gap:14px !important;
    transform:none !important;
  }

  .review-mobile-stack .slider-controls{
    display:none !important;
  }

  .review-mobile-stack #googleSlider .slide-review:nth-child(n+5){
    display:none !important;
  }

  .garage-carousel-stage{
    display:block !important;
    transform:none !important;
  }

  .garage-carousel-slide{
    display:block !important;
  }

  .garage-carousel-slide:nth-child(n+2){
    display:none !important;
  }

  .garage-carousel-controls{
    display:none !important;
  }

  .garage-carousel-copy h3,
  .slide-review h3,
  .section-head h2{
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:break-word !important;
  }
}

/* v22: mobile hero, strip/signal and cookie hard repair */
#cookie.cookie{
  position:fixed !important;
  left:18px !important;
  right:18px !important;
  bottom:18px !important;
  top:auto !important;
  width:auto !important;
  max-width:980px !important;
  margin:0 auto !important;
  z-index:2147483001 !important;
  transform:none !important;
}
#cookie.cookie.show{display:block !important;}
#cookie .cookie-inner{position:relative !important;}

.strip,
.signal{
  width:100% !important;
  max-width:100% !important;
  overflow:hidden !important;
}
.strip-track{
  width:max-content !important;
  min-width:max-content !important;
  max-width:none !important;
  display:inline-flex !important;
  align-items:center !important;
  flex-wrap:nowrap !important;
  white-space:nowrap !important;
}
.strip-track span,
.strip-track span:after{
  flex:0 0 auto !important;
  width:auto !important;
  max-width:none !important;
  white-space:nowrap !important;
  word-break:keep-all !important;
  overflow-wrap:normal !important;
}

@media(max-width:820px){
  .hero{
    min-height:auto !important;
    display:block !important;
  }
  .hero-inner{
    padding:72px 18px 24px !important;
  }
  .hero h1{
    font-size:clamp(44px, 14vw, 58px) !important;
    line-height:.92 !important;
    max-width:100% !important;
  }
  .hero-copy{
    font-size:16px !important;
    line-height:1.48 !important;
    margin:18px 0 24px !important;
  }
  .hero-actions{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
  }
  .hero-actions .btn{
    width:100% !important;
    min-height:58px !important;
  }
  .hud{
    position:relative !important;
    right:auto !important;
    bottom:auto !important;
    width:auto !important;
    max-width:calc(100% - 36px) !important;
    margin:16px 18px 28px !important;
    grid-template-columns:1fr !important;
  }
  .hud div{
    padding:22px 26px !important;
    border-right:0 !important;
    border-bottom:1px solid var(--line) !important;
  }
  .hud div:last-child{border-bottom:0 !important;}
  .hud strong{font-size:52px !important;}
  .hud span{font-size:11px !important;letter-spacing:.16em !important;}

  .strip-track{
    gap:24px !important;
    padding:12px 0 !important;
    font-size:11px !important;
    letter-spacing:.1em !important;
    line-height:1 !important;
  }
  .strip-track span{
    gap:24px !important;
    line-height:1 !important;
  }
  .strip-track span:after{
    width:6px !important;
    height:6px !important;
  }

  .signal-inner{
    padding:24px 18px 26px !important;
    gap:14px !important;
  }
  .signal-label{
    display:grid !important;
    grid-template-columns:auto auto 1fr !important;
    align-items:center !important;
    column-gap:12px !important;
    row-gap:6px !important;
    overflow:visible !important;
  }
  .signal-label span,
  .signal-label b{
    white-space:nowrap !important;
    max-width:none !important;
    overflow:visible !important;
  }
  .signal-label span:last-child{
    white-space:normal !important;
    max-width:100% !important;
  }
  .signal-label b{font-size:42px !important;}
  .signal-window,
  .signal-track,
  .signal-slide{
    overflow:hidden !important;
  }
  .signal-slide h3{
    display:block !important;
    font-size:clamp(27px, 8vw, 36px) !important;
    line-height:1 !important;
    letter-spacing:.005em !important;
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:anywhere !important;
    hyphens:none !important;
  }
  .signal-slide p{
    font-size:14px !important;
    line-height:1.45 !important;
  }

  #cookie.cookie{
    left:12px !important;
    right:12px !important;
    bottom:12px !important;
    max-width:none !important;
  }
  #cookie .cookie-inner{
    grid-template-columns:1fr !important;
    gap:14px !important;
    padding:16px !important;
  }
  #cookie .btn{
    width:100% !important;
  }
}
