*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --dark:#0D1924;--dark2:#101E2C;--dark3:#152435;
  --blue:#1199D6;--blue2:#28AADF;--blue3:#72CFF0;
  --orange:#F77A00;--teal:#0A6E93;
  --white:#ffffff;--offwhite:#F3F8FC;--offwhite2:#E5F0F8;
  --text:#0D1924;--muted:#4A5F72;--dim:#8A9BAC;
  --border:#D0E2EE;--border2:#B8D3E5;
}
html{scroll-behavior:smooth}
section[id]{scroll-margin-top:96px}
body{background:var(--white);color:var(--text);font-family:'Montserrat',sans-serif;font-size:16px;line-height:1.6;overflow-x:hidden}
::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--offwhite)}::-webkit-scrollbar-thumb{background:var(--blue2);border-radius:3px}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;justify-content:space-between;align-items:center;padding:0 2.5rem;height:80px;background:rgba(255,255,255,0.95);backdrop-filter:blur(20px);border-bottom:1px solid rgba(17,153,214,0.15);box-shadow:0 1px 20px rgba(13,25,36,0.06)}
.nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none}.nav-logo img{height:62px;width:auto;display:block}
.nav-links{display:flex;gap:2rem;align-items:center}
.nav-links a{font-size:12px;font-weight:600;letter-spacing:0.5px;text-transform:uppercase;color:#888;text-decoration:none;transition:color 0.2s}
.nav-links a:hover{color:var(--dark)}
.nav-cta{background:var(--blue)!important;color:#fff!important;padding:8px 20px;border-radius:6px;font-weight:700!important;transition:background 0.2s!important}
.nav-cta:hover{background:var(--blue2)!important}

/* HERO */
.hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden;padding-top:70px}
.hero-bg{position:absolute;inset:0;background-image:url('images/gallery-3.png');background-size:cover;background-position:center 50%;transform:scale(1.04);transition:transform 8s ease}
.hero:hover .hero-bg{transform:scale(1.0)}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(120deg,rgba(13,25,36,0.95) 0%,rgba(13,25,36,0.87) 50%,rgba(17,153,214,0.22) 100%)}
.hero-content{position:relative;z-index:2;max-width:1200px;margin:0 auto;padding:5rem 2.5rem 4rem;width:100%}
.hero-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(17,153,214,0.15);border:1px solid rgba(17,153,214,0.3);color:rgba(255,255,255,0.8);font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;padding:7px 14px;border-radius:20px;margin-bottom:2rem}
.hero-badge-dot{width:6px;height:6px;border-radius:50%;background:var(--orange);animation:pulse 2s infinite;flex-shrink:0}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:0.5;transform:scale(1.4)}}
.hero h1{font-weight:900;font-size:clamp(2.8rem,5.5vw,6rem);line-height:1.05;letter-spacing:-0.5px;color:#fff;margin-bottom:1.5rem;text-transform:uppercase}
.hero h1 .accent{color:var(--orange)}
.hero h1 .outline{-webkit-text-stroke:2px #fff;color:transparent}
.hero-tagline{font-size:0.75rem;font-weight:700;letter-spacing:4px;color:var(--blue3);text-transform:uppercase;margin-bottom:1.25rem}
.hero-desc{max-width:600px;color:rgba(255,255,255,0.72);font-size:0.975rem;line-height:1.78;margin-bottom:2.5rem;font-weight:400}
.hero-actions{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:2.5rem}
.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;border-radius:8px;font-size:12px;font-weight:700;letter-spacing:0.8px;text-decoration:none;transition:all 0.2s;cursor:pointer;border:none;text-transform:uppercase}
.btn-white{background:#fff;color:var(--dark)}.btn-white:hover{background:var(--offwhite);transform:translateY(-1px)}
.btn-ghost{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,0.35)}.btn-ghost:hover{border-color:#fff;background:rgba(255,255,255,0.07)}
.platform-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:3rem}
.pchip{background:rgba(17,153,214,0.15);border:1px solid rgba(17,153,214,0.3);color:rgba(255,255,255,0.75);font-size:10px;font-weight:700;letter-spacing:0.8px;padding:5px 12px;border-radius:4px;text-transform:uppercase}
.hero-stats{display:grid;grid-template-columns:repeat(4,auto);gap:0;border-top:1px solid rgba(255,255,255,0.12);padding-top:2rem;max-width:640px}
.hero-stats>div{padding:0 2rem 0 0}.hero-stats>div+div{padding-left:2rem;border-left:1px solid rgba(255,255,255,0.12)}
.hstat-num{font-weight:800;font-size:2.2rem;letter-spacing:-0.5px;color:#fff;line-height:1}.hstat-num em{font-style:normal;font-size:1rem;color:var(--blue3);font-weight:600}
.hstat-label{font-size:9px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,0.4);margin-top:5px}

/* MARQUEE */
.marquee-wrap{background:var(--dark);overflow:hidden;padding:13px 0;border-top:2px solid var(--blue2);border-bottom:2px solid rgba(255,255,255,0.05)}
.marquee-track{display:inline-flex;animation:scroll 40s linear infinite;white-space:nowrap}
@keyframes scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.marquee-item{font-weight:700;font-size:11px;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,0.42);padding:0 2rem;display:inline-flex;align-items:center;gap:1.5rem}
.marquee-sep{width:4px;height:4px;border-radius:50%;background:var(--blue2);opacity:0.6;flex-shrink:0}

/* SHARED */
.section-eyebrow{display:inline-block;font-size:10px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--blue);margin-bottom:0.9rem}
.section-desc{color:var(--muted);font-size:0.975rem;line-height:1.75;max-width:520px;font-weight:400}
h2{font-weight:800;font-size:clamp(1.75rem,3.2vw,2.75rem);letter-spacing:-0.3px;color:var(--dark);line-height:1.1;margin-bottom:1rem;text-transform:uppercase}
h3{font-weight:700;font-size:1.0rem;letter-spacing:0.4px;text-transform:uppercase;color:var(--dark);margin-bottom:0.5rem}

/* PORTRAIT IMAGE — simple crop for portrait photos in landscape containers */
.img-rot{width:100%;height:100%;object-fit:cover;object-position:center 30%}

/* INTRO */
.intro{background:var(--offwhite);overflow:hidden;position:relative}
.intro-inner{display:grid;grid-template-columns:1fr 1.15fr;max-width:1200px;margin:0 auto;align-items:stretch}
.intro-img-wrap{position:relative;min-height:540px;overflow:hidden}
.intro-img{width:100%;height:100%;object-fit:cover;object-position:center 8%;display:block}
.intro-text{padding:5rem 3.5rem 5rem 4rem}
.intro-text p{color:var(--muted);line-height:1.8;margin-bottom:1rem;font-size:0.95rem;font-weight:400}
.intro-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:1.75rem}
.ipill{background:var(--offwhite2);border:1px solid var(--border2);color:var(--dark);font-size:10px;font-weight:700;padding:5px 12px;border-radius:4px;letter-spacing:0.3px}

/* DYNO */
.dyno{background:var(--dark2);padding:6rem 2.5rem;color:#fff;position:relative;overflow:hidden}
.dyno::before{content:'';position:absolute;inset:0;background:url('images/Dynojet.jpg') center 30%/cover;opacity:0.09;pointer-events:none}
.dyno-inner{display:grid;grid-template-columns:1fr 1fr;gap:5rem;max-width:1200px;margin:0 auto;align-items:center;position:relative;z-index:1}
.dyno .section-eyebrow{color:var(--blue3)}
.dyno h2{color:#fff}
.dyno .section-desc{color:rgba(255,255,255,0.58)}
.dyno-specs{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-top:2.5rem}
.dyno-spec{background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.08);border-radius:10px;padding:1.25rem}
.dyno-spec-val{font-weight:800;font-size:1.75rem;letter-spacing:-0.3px;color:var(--blue3);line-height:1}
.dyno-spec-key{font-size:9px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,0.38);margin-top:5px}
.dyno-img-wrap{position:relative}
.dyno-img{width:100%;height:460px;object-fit:cover;object-position:center 50%;border-radius:12px;filter:brightness(0.88)}
.dyno-img-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(13,25,36,0.65) 0%,transparent 50%);border-radius:12px}
.dyno-label{position:absolute;bottom:1.5rem;left:1.5rem;color:#fff}
.dyno-label-main{font-weight:800;font-size:1rem;letter-spacing:0.5px;text-transform:uppercase}
.dyno-label-sub{font-size:10px;font-weight:600;color:rgba(255,255,255,0.5);letter-spacing:1.5px;text-transform:uppercase;margin-top:3px}

/* PLATFORMS */
.platforms{padding:6rem 2.5rem;background:var(--white);position:relative;overflow:hidden}
.platforms::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(13,25,36,0.08),rgba(17,153,214,0.03)),url('images/Background Image.png') center/cover;opacity:0.16;mix-blend-mode:screen;pointer-events:none}
.platforms-header{max-width:1200px;margin:0 auto 3.5rem;display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:2rem}
.platforms-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;max-width:1200px;margin:0 auto}
.platform-card{position:relative;display:block;height:290px;overflow:hidden;cursor:pointer;text-decoration:none;color:inherit}
.platform-card:focus-visible{outline:3px solid var(--blue2);outline-offset:-3px}
.platform-cta{display:inline-flex;align-items:center;gap:7px;margin-top:11px;font-size:10px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:var(--blue3);opacity:0.72;transition:opacity 0.25s ease,gap 0.25s ease}
.platform-card:hover .platform-cta,.platform-card:focus-visible .platform-cta{opacity:1;gap:12px}
.platform-card-img{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform 0.5s ease}
.platform-card:hover .platform-card-img{transform:scale(1.07)}
.platform-card-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(13,25,36,0.93) 0%,rgba(13,25,36,0.42) 55%,rgba(13,25,36,0.1) 100%);transition:opacity 0.3s}
.platform-card:hover .platform-card-overlay{opacity:0.96}
.platform-card-content{position:absolute;bottom:0;left:0;right:0;padding:1.5rem 1.75rem}
.platform-tag{display:inline-block;font-size:9px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:var(--blue3);margin-bottom:6px}
.platform-name{font-weight:800;font-size:1.2rem;letter-spacing:0.3px;text-transform:uppercase;color:#fff;line-height:1.15;margin-bottom:6px}
.platform-desc{font-size:12.5px;color:rgba(255,255,255,0.6);line-height:1.55;font-weight:400}

/* PRICING */
.pricing{background:var(--dark);padding:6rem 2.5rem;position:relative;overflow:hidden}
.pricing::before{content:'';position:absolute;inset:0;background:linear-gradient(120deg,rgba(13,25,36,0.92),rgba(13,25,36,0.65)),url('images/Background Image.png') center 40%/cover;opacity:0.18;pointer-events:none}
.pricing::after{content:'';position:absolute;left:0;right:0;top:0;height:16px;background:linear-gradient(90deg,rgba(17,153,214,0.35),rgba(247,122,0,0.35),rgba(17,153,214,0.35));opacity:0.9}
.pricing-inner{position:relative;z-index:1}
.pricing-header{max-width:1200px;margin:0 auto 2.5rem;display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:2rem}
.pricing-header .section-eyebrow{color:var(--blue3)}
.pricing-header h2{color:#fff}
.pricing-header .section-desc{color:rgba(255,255,255,0.48);max-width:380px}
.ptabs{display:flex;gap:6px;flex-wrap:wrap;max-width:1200px;margin:0 auto 2.5rem}
.ptab{font-size:10px;font-weight:700;letter-spacing:0.8px;text-transform:uppercase;padding:8px 16px;border-radius:6px;border:1.5px solid rgba(255,255,255,0.1);background:rgba(255,255,255,0.04);color:rgba(255,255,255,0.42);cursor:pointer;transition:all 0.15s}
.ptab.on{background:var(--blue);border-color:var(--blue);color:#fff}
.ptab:hover:not(.on){border-color:var(--blue2);color:var(--blue2)}
.ppanel{display:none;max-width:1200px;margin:0 auto}.ppanel.on{display:block}
.price-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.25rem}
.pc{background:rgba(255,255,255,0.05);border:1.5px solid rgba(255,255,255,0.08);border-radius:12px;padding:1.5rem;position:relative;transition:all 0.2s}
.pc:hover{background:rgba(255,255,255,0.08);border-color:rgba(17,153,214,0.3)}
.pc-cat{font-size:9px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:var(--blue2);margin-bottom:4px;padding-right:100px}
.pc-name{font-weight:800;font-size:1rem;letter-spacing:0.3px;text-transform:uppercase;color:#fff;margin-bottom:8px}
.pc-price{font-weight:800;font-size:2.4rem;letter-spacing:-1px;color:#fff;line-height:1;margin-bottom:10px}
.pc-price small{font-size:1rem;color:rgba(255,255,255,0.38);font-weight:400;letter-spacing:0}
.pc-detail{font-size:12px;color:rgba(255,255,255,0.42);line-height:1.65;font-weight:400}
.pc-note{position:absolute;top:1.1rem;right:1rem;font-size:9px;font-weight:700;letter-spacing:1px;text-transform:uppercase;background:rgba(17,153,214,0.15);color:var(--blue3);padding:3px 8px;border-radius:4px;border:1px solid rgba(17,153,214,0.25)}

/* INQUIRY PRICING */
.inquiry-banner{background:rgba(17,153,214,0.07);border:1px solid rgba(17,153,214,0.18);border-radius:10px;padding:1.1rem 1.4rem;margin-bottom:1.75rem;display:flex;gap:1.25rem;align-items:center;flex-wrap:wrap}
.ib-chip{flex-shrink:0;background:var(--blue);color:#fff;font-size:9px;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:5px 12px;border-radius:20px}
.inquiry-banner p{font-size:12.5px;color:rgba(255,255,255,0.48);line-height:1.6;margin:0;font-weight:400}
.pc-price-from{font-size:9px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,0.32);margin-bottom:3px}
.pc-from{font-weight:800;font-size:2.4rem;letter-spacing:-1px;color:#fff;line-height:1;margin-bottom:10px;display:block}
.pc-from small{font-size:1rem;color:rgba(255,255,255,0.38);font-weight:400;letter-spacing:0}
.pc-cta{display:block;margin-top:1rem;padding:9px 0;background:rgba(17,153,214,0.12);border:1.5px solid rgba(17,153,214,0.3);color:var(--blue3);font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase;border-radius:6px;text-decoration:none;text-align:center;transition:background 0.2s,border-color 0.2s}
.pc-cta:hover{background:rgba(17,153,214,0.22);border-color:var(--blue2);color:var(--blue2)}
.hpt-bundle{margin-top:2.5rem;border-top:1px solid rgba(255,255,255,0.08);padding-top:2rem}
.hpt-bundle-hdr{margin-bottom:1.5rem}
.hpt-bundle-hdr h3{font-weight:700;font-size:0.95rem;letter-spacing:0.5px;text-transform:uppercase;color:#fff;margin-bottom:0.4rem}
.hpt-bundle-hdr p{font-size:12.5px;color:rgba(255,255,255,0.42);line-height:1.6;margin:0;font-weight:400}
.inquiry-btn{width:100%;padding:11px;background:var(--blue);color:#fff;border:none;border-radius:8px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.8px;cursor:pointer;transition:background 0.2s;text-decoration:none;display:block;text-align:center;margin-top:1.25rem}
.inquiry-btn:hover{background:var(--blue2)}

/* PLATFORM INQUIRY CARD — non-diesel panels */
.pic{display:grid;grid-template-columns:1fr 300px;gap:3rem;background:rgba(255,255,255,0.04);border:1.5px solid rgba(255,255,255,0.08);border-radius:14px;padding:2.5rem;max-width:1200px;margin:0 auto}
.pic-eyebrow{font-size:9px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:var(--blue3);margin-bottom:0.6rem}
.pic h3{font-weight:800;font-size:1.4rem;letter-spacing:0.2px;text-transform:uppercase;color:#fff;margin-bottom:0.75rem}
.pic-desc{font-size:13.5px;color:rgba(255,255,255,0.52);line-height:1.7;margin-bottom:1.5rem}
.pic-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,1fr);gap:0.4rem 1.5rem}
.pic-list li{font-size:12px;color:rgba(255,255,255,0.48);padding-left:1.1rem;position:relative;font-weight:500}
.pic-list li::before{content:'›';position:absolute;left:0;color:var(--blue2);font-weight:700}
.pic-right{display:flex;flex-direction:column;justify-content:center;align-items:stretch;gap:1.25rem;border-left:1px solid rgba(255,255,255,0.07);padding-left:3rem}
.pic-cta{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;background:var(--blue);color:#fff;border-radius:8px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.8px;text-decoration:none;transition:background 0.2s}
.pic-cta:hover{background:var(--blue2)}
.pic-note{font-size:12px;color:rgba(255,255,255,0.3);line-height:1.6;text-align:center}
@media(max-width:1024px){.pic{grid-template-columns:1fr}.pic-right{border-left:none;padding-left:0;border-top:1px solid rgba(255,255,255,0.07);padding-top:1.5rem}}

/* SERVICES */
.services{padding:6rem 2.5rem;background:var(--offwhite);position:relative;overflow:hidden}
.services::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(243,248,252,0.92),rgba(229,240,248,0.78)),url('images/Diesel Performance.webp') center 35%/cover;opacity:0.08;pointer-events:none}
.services::after{content:'';position:absolute;left:0;right:0;bottom:0;height:18px;background:linear-gradient(90deg,transparent,rgba(17,153,214,0.15),transparent);}
.services-header{max-width:1200px;margin:0 auto 3.5rem;display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:2rem;position:relative;z-index:1}
.services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;max-width:1200px;margin:0 auto;position:relative;z-index:1}
.svc{border:1.5px solid var(--border);border-radius:14px;overflow:hidden;background:var(--white);transition:box-shadow 0.2s}
.svc:hover{box-shadow:0 12px 40px rgba(13,25,36,0.1)}
.svc-visual{width:100%;height:155px;overflow:hidden;position:relative;background:var(--dark2)}
.svc-visual img{width:100%;height:100%;object-fit:cover;transition:transform 0.4s ease}
.svc:hover .svc-visual img{transform:scale(1.05)}
.svc-body{padding:1.5rem}
.svc-num{font-weight:800;font-size:2.3rem;letter-spacing:-1px;color:var(--border2);line-height:1;margin-bottom:0.5rem}
.svc h3{color:var(--dark);margin-bottom:0.5rem}
.svc p{font-size:13px;color:var(--muted);line-height:1.65;margin-bottom:1rem;font-weight:400}
.svc-tag{font-size:9px;font-weight:700;letter-spacing:2px;text-transform:uppercase;background:var(--offwhite2);color:var(--blue);padding:4px 10px;border-radius:4px;border:1px solid var(--border)}

/* DELIVERY */
.delivery{background:var(--dark3);padding:5rem 2.5rem;color:#fff;position:relative;overflow:hidden}
.delivery::before{content:'';position:absolute;inset:0;background:linear-gradient(120deg,rgba(13,25,36,0.88),rgba(13,25,36,0.45)),url('images/Custom ECU and TCU calibration.webp') center 15%/cover;opacity:0.12;pointer-events:none}
.delivery::after{content:'';position:absolute;left:0;right:0;top:0;height:18px;background:linear-gradient(90deg,rgba(17,153,214,0.25),rgba(247,122,0,0.25),rgba(17,153,214,0.25));}
.delivery-inner{max-width:900px;margin:0 auto;text-align:center;position:relative;z-index:1}
.delivery .section-eyebrow{color:var(--blue3)}
.delivery h2{color:#fff;margin-bottom:0.5rem}
.delivery .section-desc{color:rgba(255,255,255,0.52);margin:0 auto 3rem}
.delivery-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.dc{background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.1);border-radius:12px;padding:2rem;text-align:center;transition:border-color 0.2s}
.dc:hover{border-color:rgba(17,153,214,0.4)}
.dc-badge{display:inline-block;background:rgba(17,153,214,0.15);border:1px solid rgba(17,153,214,0.25);color:var(--blue3);font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;padding:6px 12px;border-radius:20px;margin-bottom:1.25rem}
.dc h4{font-weight:800;font-size:1rem;letter-spacing:0.5px;text-transform:uppercase;color:#fff;margin-bottom:0.5rem}
.dc p{font-size:13px;color:rgba(255,255,255,0.48);line-height:1.6;font-weight:400}

/* TUNE MAPS */
.maps-sec{background:var(--dark2);padding:6rem 2.5rem}
.maps-header{max-width:1200px;margin:0 auto 3rem;display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:2rem}
.maps-header .section-eyebrow{color:var(--blue3)}
.maps-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-template-rows:260px 260px;gap:8px;max-width:1200px;margin:0 auto}
.map-card{position:relative;overflow:hidden;border-radius:8px;background:var(--dark)}
.map-card img{width:100%;height:100%;object-fit:cover;opacity:0.85;transition:opacity 0.3s}
.map-card:hover img{opacity:1}
.map-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(13,25,36,0.72) 0%,transparent 60%)}
.map-label{position:absolute;bottom:1rem;left:1rem;right:1rem;font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,0.7)}
.maps-grid .map-card:nth-child(1){grid-column:span 7}
.maps-grid .map-card:nth-child(2){grid-column:span 5}
.maps-grid .map-card:nth-child(3){grid-column:span 6}
.maps-grid .map-card:nth-child(4){grid-column:span 6}

/* GALLERY */
.gallery-sec{background:var(--dark);padding:6rem 2.5rem}
.gallery-sec .section-eyebrow{display:block;text-align:center;color:var(--blue3)}
.gallery-sec h2{text-align:center;margin-bottom:3rem;color:#fff}
.gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-template-rows:280px 280px;gap:8px;max-width:1200px;margin:0 auto}
.gallery-item{position:relative;overflow:hidden;border-radius:8px}
.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform 0.5s ease}
.gallery-item:hover img{transform:scale(1.05)}
.gallery-item.wide{grid-column:span 7}
.gallery-item.tall{grid-column:span 5}
.gallery-item.half{grid-column:span 6}
.gallery-item.third{grid-column:span 4}

/* SHOP */
.shop{padding:6rem 2.5rem;background:var(--white)}
.shop-header{max-width:1200px;margin:0 auto 3.5rem;display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:2rem}
.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;max-width:1200px;margin:0 auto}
.product-card{border:1.5px solid var(--border);border-radius:14px;overflow:hidden;background:var(--offwhite);transition:box-shadow 0.2s;display:flex;flex-direction:column}
.product-card:hover{box-shadow:0 12px 40px rgba(13,25,36,0.1)}
.product-card-visual{height:200px;background:var(--dark2);overflow:hidden;position:relative;flex-shrink:0}
.product-card-visual img,.product-card-visual svg{width:100%;height:100%;object-fit:cover}
.product-card-body{padding:1.5rem;display:flex;flex-direction:column;flex:1}
.product-type{font-size:9px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:var(--blue);margin-bottom:4px}
.product-name{font-weight:800;font-size:1rem;letter-spacing:0.3px;text-transform:uppercase;color:var(--dark);margin-bottom:8px}
.product-p{font-size:12.5px;color:var(--muted);line-height:1.65;margin-bottom:0;font-weight:400;flex:1}
.shopify-btn{width:100%;padding:11px;background:var(--blue);color:#fff;border:none;border-radius:8px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.8px;cursor:pointer;transition:background 0.2s}
.shopify-btn:hover{background:var(--blue2)}

/* CONTACT */
.contact{background:linear-gradient(135deg,var(--offwhite) 0%,rgba(17,153,214,0.06) 100%);padding:8rem 2.5rem;position:relative;overflow:hidden;min-height:680px}
.contact::before{content:'';position:absolute;inset:0;background:linear-gradient(120deg,rgba(255,255,255,0.92),rgba(255,255,255,0.82)),url('images/Powersports.jpg') center 30%/cover;opacity:0.06;pointer-events:none}
.contact::after{content:'';position:absolute;top:0;right:0;bottom:0;width:48%;background:linear-gradient(180deg,rgba(13,25,36,0.05),rgba(13,25,36,0.1)),url('images/Bakground 2 Car.png') center 8%/cover;opacity:0.08;pointer-events:none}
.contact-inner{display:grid;grid-template-columns:1fr 1.25fr;gap:5rem;max-width:1050px;margin:0 auto;align-items:start;position:relative;z-index:1}
.contact-inner>div:first-child{padding:3rem;background:linear-gradient(135deg,rgba(17,153,214,0.08),rgba(17,153,214,0.04));border:1.5px solid rgba(17,153,214,0.2);border-radius:14px;padding-bottom:1rem}
.contact-inner>div:first-child .section-eyebrow{font-size:11px;color:var(--blue);text-transform:uppercase;letter-spacing:2px;font-weight:800}
.contact-inner>div:first-child h2{font-size:2.8rem;line-height:1.15;margin-bottom:1.5rem;color:var(--dark);font-weight:900;letter-spacing:-0.5px}
.contact-inner>div:first-child .section-desc{font-size:1.1rem;color:var(--muted);line-height:1.85;margin-bottom:2rem;font-weight:500}
.contact-info-items{display:flex;flex-direction:column;gap:1rem;margin-top:1.5rem}
.ci{background:var(--offwhite);border:1.5px solid var(--border);border-radius:10px;padding:1.1rem 1.25rem}
.ci-label{font-size:9px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:var(--blue);margin-bottom:4px}
.ci-val{font-size:14px;font-weight:600;color:var(--dark)}
.contact-form{display:flex;flex-direction:column;gap:1.25rem;background:rgba(255,255,255,0.95);border-radius:16px;padding:2.5rem;box-shadow:0 20px 60px rgba(13,25,36,0.08);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.6)}
.cf-row{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}
.contact-form>div:not(.cf-row){display:flex;flex-direction:column;gap:0.5rem}
.contact-form label{font-size:12px;font-weight:700;letter-spacing:0.5px;text-transform:uppercase;color:var(--dark);margin-bottom:2px}
.cf-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.cf label{display:block;font-size:10px;font-weight:700;letter-spacing:0.8px;text-transform:uppercase;color:var(--muted);margin-bottom:5px}
.cf input,.cf select,.cf textarea{width:100%;background:var(--offwhite);border:1.5px solid var(--border);border-radius:8px;padding:12px 14px;font-family:'Montserrat',sans-serif;font-size:14px;color:var(--text);outline:none;transition:all 0.25s;font-weight:400}
.cf input:focus,.cf select:focus,.cf textarea:focus{border-color:var(--blue);background:#fff;box-shadow:0 0 0 3px rgba(17,153,214,0.1)}
.cf textarea{resize:vertical;min-height:120px}
.cf-submit{padding:16px 28px;background:linear-gradient(135deg,var(--blue),var(--blue2));color:#fff;border:none;border-radius:8px;font-family:'Montserrat',sans-serif;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:0.8px;cursor:pointer;transition:all 0.3s;box-shadow:0 10px 30px rgba(17,153,214,0.25);position:relative;overflow:hidden}
.cf-submit::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,var(--blue2),var(--blue));opacity:0;transition:opacity 0.3s;pointer-events:none}
.cf-submit:hover{transform:translateY(-2px);box-shadow:0 15px 40px rgba(17,153,214,0.35)}
.cf-submit:hover::before{opacity:1}

/* FOOTER */
footer{background:rgba(255,255,255,0.95);backdrop-filter:blur(10px);border-top:3px solid var(--blue2);padding:3rem 2.5rem}
.footer-top{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:2rem;padding-bottom:2rem;border-bottom:1px solid rgba(13,25,36,0.08);margin-bottom:2rem}
.footer-logo-wrap{display:flex;align-items:center;gap:12px}
.footer-logo-wrap img{height:64px;width:auto;display:block}
.footer-logo-text{font-weight:800;font-size:15px;letter-spacing:1px;text-transform:uppercase;color:var(--dark)}
.footer-logo-text span{color:var(--blue3)}
.footer-tagline{font-size:10px;font-weight:600;color:rgba(13,25,36,0.42);letter-spacing:1.5px;text-transform:uppercase;margin-top:4px}
.footer-links{display:flex;gap:2rem;flex-wrap:wrap}
.footer-links a{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:0.8px;color:rgba(13,25,36,0.52);text-decoration:none;transition:color 0.2s}
.footer-links a:hover{color:var(--dark)}
.footer-phone{font-weight:800;font-size:1.35rem;letter-spacing:0;color:var(--blue3)}
.footer-address{font-style:normal;font-size:11px;font-weight:600;line-height:1.7;letter-spacing:1.2px;text-transform:uppercase;color:rgba(13,25,36,0.52);margin-top:6px}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}
.footer-copy{font-size:11px;font-weight:500;color:rgba(13,25,36,0.42)}
.footer-badge{font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;background:rgba(17,153,214,0.08);border:1px solid rgba(17,153,214,0.2);color:rgba(13,25,36,0.52);padding:5px 12px;border-radius:20px}

/* SCROLL ANIMATIONS */
.anim-ready,.anim-left,.anim-right{will-change:transform,opacity}
.anim-ready{opacity:0;transform:translateY(30px);transition:opacity 0.6s cubic-bezier(0.22,1,0.36,1),transform 0.6s cubic-bezier(0.22,1,0.36,1)}
.anim-left{opacity:0;transform:translateX(-36px);transition:opacity 0.65s cubic-bezier(0.22,1,0.36,1),transform 0.65s cubic-bezier(0.22,1,0.36,1)}
.anim-right{opacity:0;transform:translateX(36px);transition:opacity 0.65s cubic-bezier(0.22,1,0.36,1),transform 0.65s cubic-bezier(0.22,1,0.36,1)}
.anim-ready.visible,.anim-left.visible,.anim-right.visible{opacity:1;transform:none}

/* HERO ENTRANCE */
@keyframes heroIn{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
.hero-badge{animation:heroIn 0.7s cubic-bezier(0.22,1,0.36,1) 0.15s both}
.hero-tagline{animation:heroIn 0.7s cubic-bezier(0.22,1,0.36,1) 0.28s both}
.hero h1{animation:heroIn 0.75s cubic-bezier(0.22,1,0.36,1) 0.4s both}
.hero-desc{animation:heroIn 0.7s cubic-bezier(0.22,1,0.36,1) 0.56s both}
.hero-actions{animation:heroIn 0.7s cubic-bezier(0.22,1,0.36,1) 0.70s both}
.platform-row{animation:heroIn 0.7s cubic-bezier(0.22,1,0.36,1) 0.83s both}
.hero-stats{animation:heroIn 0.7s cubic-bezier(0.22,1,0.36,1) 0.95s both}

/* NAV SCROLLED */
nav.scrolled{box-shadow:0 4px 32px rgba(13,25,36,0.15),0 1px 0 rgba(17,153,214,0.28)}

@media(prefers-reduced-motion:reduce){
  .anim-ready,.anim-left,.anim-right,.hero-badge,.hero-tagline,.hero h1,.hero-desc,.hero-actions,.platform-row,.hero-stats{animation:none!important;transition:none!important;opacity:1!important;transform:none!important}
}

/* RESPONSIVE */
@media(max-width:1024px){
  .intro-inner{grid-template-columns:1fr;gap:0}
  .intro-img-wrap{min-height:380px}
  .intro-text{padding:3rem 2rem}
  .dyno-inner,.contact-inner{grid-template-columns:1fr;gap:3rem}
  .hero-stats{grid-template-columns:repeat(2,1fr);row-gap:1.5rem}
  .hero-stats>div+div{border-left:none;padding-left:0}
  .hero-stats>div:nth-child(3){border-left:1px solid rgba(255,255,255,0.12);padding-left:2rem}
  .platforms-grid{grid-template-columns:repeat(2,1fr)}
  .maps-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto}
  .maps-grid .map-card{grid-column:span 1!important;height:220px}
  .gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto}
  .gallery-item,.gallery-item.wide,.gallery-item.tall,.gallery-item.half,.gallery-item.third{grid-column:span 1!important;height:240px}
  .delivery-cards{grid-template-columns:1fr}
  .footer-top{flex-direction:column}
  .contact::after{display:none}
}
@media(max-width:768px){
  nav{padding:0 1.25rem}
  .nav-links{display:none}
  .hero-content,.dyno,.platforms,.pricing,.services,.delivery,.maps-sec,.gallery-sec,.shop,.contact{padding-left:1.25rem;padding-right:1.25rem}
  .intro-text{padding:2.5rem 1.25rem}
  .platforms-grid{grid-template-columns:1fr}
  .cf-row{grid-template-columns:1fr}
  footer{padding:2.5rem 1.25rem}
}

/* ── SECTION BACKGROUNDS ── */
.intro::before{content:'';position:absolute;inset:0;background:url('images/Gas Engines.jpg') center 40%/cover;opacity:0.04;pointer-events:none}
.maps-sec{position:relative;overflow:hidden}
.maps-sec::before{content:'';position:absolute;inset:0;background:url('images/Motorsports and Race.jpg') center 50%/cover;opacity:0.06;pointer-events:none}
.shop{position:relative;overflow:hidden}
.shop::before{content:'';position:absolute;inset:0;background:url('images/Gas Engines.jpg') center 60%/cover;opacity:0.04;pointer-events:none}

/* ── SECTION DIVIDERS ── */
.sdiv{display:block;line-height:0;overflow:hidden;flex-shrink:0}

/* Style A — diagonal slash top-left-down (dark section ends) */
.sdiv-dark-slash{height:52px;background:var(--dark);clip-path:polygon(0 0,100% 0,100% 30%,0 100%)}
.sdiv-dark2-slash{height:52px;background:var(--dark2);clip-path:polygon(0 0,100% 0,100% 30%,0 100%)}
.sdiv-dark3-slash{height:52px;background:var(--dark3);clip-path:polygon(0 0,100% 0,100% 30%,0 100%)}

/* Style B — diagonal slash top-right-down (light section ends) */
.sdiv-light-slash{height:52px;background:var(--offwhite);clip-path:polygon(0 0,100% 0,100% 100%,0 30%)}
.sdiv-white-slash{height:52px;background:var(--white);clip-path:polygon(0 0,100% 0,100% 100%,0 30%)}

/* Style C — double accent bar */
.sdiv-accent{height:10px;background:linear-gradient(90deg,var(--blue) 0%,var(--orange) 50%,var(--blue) 100%);opacity:0.75}

/* Style D — color band fade */
.sdiv-fade-dark{height:60px;background:linear-gradient(180deg,var(--dark) 0%,transparent 100%)}
.sdiv-fade-light{height:60px;background:linear-gradient(180deg,var(--offwhite) 0%,transparent 100%)}

/* Style E — reverse diagonal (opposite direction) */
.sdiv-dark-rslash{height:52px;background:var(--dark);clip-path:polygon(0 30%,100% 0,100% 100%,0 100%)}
.sdiv-light-rslash{height:52px;background:var(--offwhite);clip-path:polygon(0 0,100% 30%,100% 100%,0 100%)}
.sdiv-dark2-rslash{height:52px;background:var(--dark2);clip-path:polygon(0 30%,100% 0,100% 100%,0 100%)}

/* quote form: flash the service field when a platform card preselects it */
@keyframes cfFlash{0%,100%{box-shadow:0 0 0 0 rgba(17,153,214,0)}25%,60%{box-shadow:0 0 0 4px rgba(17,153,214,0.28)}}
.cf-flash{animation:cfFlash 1.6s ease-out 1}
@media(prefers-reduced-motion:reduce){.cf-flash{animation:none}}
