.shop-head{position:relative;z-index:20;background:#121417;border:0;border-top:3px solid #0499f7;color:#f5f6f7;font-family:Arial,sans-serif}
.shop-bar,.front .inside{width:min(1280px,90%);margin:auto}
.shop-bar{display:flex;align-items:center;gap:28px;min-height:80px}
.shop-brand{display:flex;align-items:center;gap:13px;margin-right:auto}
.shop-brand img{width:83px;mix-blend-mode:screen}
.shop-brand span{border-left:1px solid #3d434a;padding-left:13px;font:900 22px/.92 Arial,sans-serif;letter-spacing:.075em}
.shop-brand small{display:block;font:700 9px/1.3 Arial,sans-serif;letter-spacing:.13em;margin-top:5px}
.shop-nav{display:flex;align-items:center;gap:26px}
.shop-head a,.front a{text-decoration:none;color:inherit}
.shop-nav a,.shop-menu a{font-size:13px;font-weight:650}
.shop-head a:hover,.front .plain-link:hover,.engine-links a:hover{color:#5cc0ff}
.shop-phone{border:1px solid #7a828c;padding:11px 15px;font:700 14px Arial,sans-serif;white-space:nowrap}
.shop-phone span{color:#5cc0ff;margin-right:4px}
.shop-menu{display:none}
.front{background:#121417;color:#f5f6f7;font:16px/1.5 Inter,Arial,sans-serif}
.front h1,.front h2,.front h3,.engine-links a{font-family:'Barlow Condensed','Arial Narrow',Impact,sans-serif}
.desert{background:#050506 url(gar-hero-clean-no-text.jpg) center center/cover no-repeat;display:flex;align-items:center;min-height:clamp(520px,45vw,695px);padding:52px 0}
.location,.engine-links>span,.engine-links small{font:700 11px/1.3 Arial,sans-serif;letter-spacing:.16em}
.location{display:flex;align-items:center;gap:12px;color:#5cc0ff}
.location i{display:inline-block;width:28px;height:3px;background:#0499f7}
.desert h1{font-size:clamp(64px,6.8vw,106px);font-weight:900;line-height:.88;text-transform:uppercase;letter-spacing:-.025em;margin:25px 0 20px}
.desert h1 em{font-style:normal;color:#0499f7}
.desert p{max-width:370px;color:#dde1e5;font-size:15px}
.hero-links{display:flex;align-items:center;gap:25px;margin-top:27px}
.front .action{display:inline-flex;align-items:center;gap:20px;background:#0499f7;color:#121417;padding:14px 20px;font-weight:800;font-size:14px}
.front .action:hover{background:#5cc0ff}
.plain-link{font-size:14px;font-weight:650;border-bottom:1px solid #7a828c;padding-bottom:3px}
.engine-strip{background:#1b1e23;border-block:1px solid #3d434a}
.engine-links{display:grid;grid-template-columns:1.1fr repeat(4,1fr);align-items:center;padding:20px 0}
.engine-links>span{color:#b4bac1}
.engine-links a{border-left:1px solid #3d434a;padding-left:20%;font-weight:750;font-size:24px;line-height:1.1}
.engine-links small{display:block;color:#b4bac1;font-size:9px;margin-bottom:6px}
.catalog{padding:70px 0}
.catalog-head,.service-area .inside,.problem-link{display:flex;align-items:center;justify-content:space-between;gap:22px}
.front h2{font-size:clamp(40px,4.5vw,68px);letter-spacing:-.025em;line-height:1;margin:13px 0 27px;text-transform:uppercase}
.catalog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.job{background:#1b1e23;border:1px solid #3d434a;padding:27px;transition:background .2s}
.job:hover{background:#23272d}
.job svg{width:30px;height:30px;stroke:#0499f7;fill:none;stroke-linejoin:round;stroke-linecap:round;stroke-width:1.6}
.job-arrow{float:right;color:#b4bac1}
.job h3{font-size:29px;line-height:1.1;margin:23px 0 8px}
.job p,.service-area p{margin:0;color:#b4bac1;font-size:14px;line-height:1.65}
.problem-link{justify-content:flex-start;flex-wrap:wrap;margin-top:24px;font-size:14px}
.problem-link a{color:#5cc0ff}
.service-area{padding:52px 0;background:#23272d;border-top:1px solid #3d434a}
.service-area .action{flex-shrink:0}
.service-area h2{margin-bottom:14px}
:focus-visible{outline:3px solid #5cc0ff;outline-offset:4px}
@media(max-width:920px){.shop-nav{display:none}.shop-menu{display:block}.shop-menu summary{cursor:pointer;font-weight:bold}.shop-menu nav{display:grid;position:absolute;top:100%;right:0;background:#1b1e23;width:240px;padding:12px 24px}.shop-menu a{padding:12px 0}.catalog-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.shop-bar{min-height:65px;gap:16px}.shop-brand img{width:54px}.shop-brand span{font-size:16px;padding-left:8px}.shop-brand{gap:8px}.shop-brand small{font-size:7px}.shop-phone{display:none}.desert{min-height:0;padding:30px 0 0;display:block;background:#050506}.desert:after{content:'';display:block;aspect-ratio:2.8;background:url(gar-hero-clean-no-text.jpg) right 68%/147% auto no-repeat;margin-top:22px}.desert h1{font-size:clamp(55px,13vw,78px);margin:18px 0}.hero-links{gap:18px}.engine-links{grid-template-columns:repeat(2,1fr);gap:18px}.engine-links>span{grid-column:1/-1}.engine-links a{padding-left:12px}.catalog{padding:44px 0}.catalog-grid{grid-template-columns:1fr}.catalog-head{align-items:baseline}.catalog-head .plain-link{white-space:nowrap}.job{padding:22px}.job h3{margin-top:12px}.service-area .inside{align-items:flex-start;flex-direction:column}.problem-link{gap:4px;flex-direction:column;align-items:flex-start}}

.engine-links a:has(.truck-logo){display:flex;align-items:center;gap:12px;padding-left:clamp(10px,1.7vw,27px)}
.truck-logo{width:48px;height:48px;object-fit:contain;flex:none;filter:brightness(0) invert(1)}
.truck-logo.cummins{width:36px;height:36px;filter:invert(1) grayscale(1) brightness(1.5)}
.truck-logo.chevrolet{filter:none}
@media(max-width:1100px){.engine-links a:has(.truck-logo){align-items:flex-start;flex-direction:column;gap:6px}.truck-logo,.truck-logo.cummins{height:26px}.truck-logo.ford,.truck-logo.chevrolet{object-fit:cover}.truck-logo.cummins{width:26px}}
.engine-sizes{display:block;margin-top:5px;color:#b4bac1;font:500 12px/1.5 Arial,sans-serif;letter-spacing:0}

.desert .hero-links{flex-wrap:wrap}.desert .hero-links .action{white-space:normal}

.hero.photo-hero.kc-repair-hero{background:#121417 url(kc-jetfire-turbo.webp) right 3% center/48% auto no-repeat}
.kc-repair-hero:after{display:none}
.kc-repair-hero .hero-inner{min-height:580px}
.kc-repair-hero .hero-content{max-width:57%}
.kc-repair-hero h1{font-size:clamp(46px,5.5vw,76px);line-height:.98}
.kc-repair-hero .hero-content p{font-size:15px}
@media(max-width:780px){.hero.photo-hero.kc-repair-hero{background-position:center bottom 12px;background-size:270px auto}.kc-repair-hero .hero-content{max-width:100%}.kc-repair-hero .hero-inner{padding-bottom:305px;min-height:0}.kc-repair-hero h1{font-size:clamp(44px,9vw,66px)}}
.service-menu{position:relative}
.service-menu summary{font-size:13px;font-weight:650;cursor:pointer;list-style:none}
.service-menu summary::after{content:' ▾';color:#5cc0ff}
.service-menu>nav{position:absolute;top:calc(100% + 16px);left:-16px;width:230px;background:#23272d;border:1px solid #3d434a;padding:8px 16px;display:grid;z-index:50;box-shadow:0 12px 30px #00000099}
.service-menu>nav a{padding:10px 0}
.shop-nav .service-menu[open] summary{color:#5cc0ff}/* Homepage truck imagery stays fully in frame at every viewport size. */
.desert {
  background: #050506;
  min-height: 0;
  padding: 48px 0;
}
.desert .inside {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
  align-items: center;
  gap: 32px;
}
.desert .hero-copy {
  min-width: 0;
}
.desert h1 {
  font-family: Inter, 'Segoe UI', Arial, sans-serif;
  font-size: clamp(40px, 4.4vw, 68px);
  font-weight: 750;
  line-height: 1.03;
  letter-spacing: -.045em;
  text-transform: none;
  margin: 23px 0;
}
.desert p {
  max-width: 420px;
}
.hero-visual img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}
.desert .hero-links {
  gap: 16px 22px;
}
.desert:after {
  display: none;
}
.engine-links {
  grid-template-columns: minmax(130px, .75fr) repeat(4, minmax(0, 1fr));
}
.engine-links > span a {
  display: block;
  border: 0;
  padding: 0;
  font: inherit;
}
.engine-links a:has(.truck-logo) {
  flex-direction: row;
  align-items: center;
  gap: 10px;
  padding-left: 16px;
}
.engine-links a > span {
  min-width: 0;
}
.engine-links .engine-sizes {
  font-size: 11px;
}
.gm-marks {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  flex: none;
  width: 48px;
}
.gm-marks .truck-logo.chevrolet {
  height: 21px;
  object-fit: contain;
}
.gm-marks .truck-logo.gmc {
  width: 46px;
  height: 13px;
  object-fit: contain;
  filter: none;
}
.fleet-trucks {
  padding: 34px 0 30px;
  border-bottom: 1px solid #3d434a;
}
.fleet-heading,
.fleet-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
}
.fleet-trucks h2 {
  margin: 0 0 8px;
  font: 700 26px/1.2 Inter, 'Segoe UI', Arial, sans-serif;
  letter-spacing: -.025em;
  text-transform: none;
}
.fleet-trucks p {
  margin: 0;
  font-size: 13px;
  line-height: 1.7;
  color: #b4bac1;
}
.fleet-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin: 22px 0 18px;
}
.fleet-grid article {
  padding: 22px;
  background: #1b1e23;
  border: 1px solid #3d434a;
}
.fleet-logo {
  display: block;
  height: 40px;
  width: 140px;
  object-fit: contain;
  object-position: left center;
}
.fleet-logo.international {
  width: 46px;
  filter: brightness(0) invert(1);
}
.fleet-logo.isuzu {
  width: 112px;
}
.fleet-trucks h3 {
  margin: 16px 0 10px;
  font: 650 21px/1.2 Inter, 'Segoe UI', Arial, sans-serif;
}
.fleet-trucks details {
  margin-top: 16px;
  color: #5cc0ff;
  font-size: 12px;
}
.fleet-trucks summary {
  cursor: pointer;
}
.fleet-trucks details a {
  display: block;
  text-decoration: underline;
  margin-top: 8px;
}
@media (max-width: 1100px) {
  .engine-links {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
  }
  .engine-links > span {
    grid-column: 1 / -1;
  }
}
@media (max-width: 850px) {
  .desert .inside {
    grid-template-columns: 1fr;
    gap: 28px;
  }
  .desert .hero-copy {
    max-width: 650px;
  }
  .desert h1 {
    font-size: clamp(40px, 7vw, 62px);
  }
  .fleet-grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 650px) {
  .desert {
    padding: 30px 0;
  }
  .desert .inside {
    display: grid;
  }
  .engine-links a:has(.truck-logo) {
    flex-direction: column;
    align-items: flex-start;
    padding-left: 12px;
  }
  .truck-logo.ford {
    object-fit: contain;
  }
}
.desert {
  position: relative;
  overflow: hidden;
}
.desert .inside {
  display: block;
}
.desert .hero-copy {
  position: relative;
  z-index: 1;
  max-width: 430px;
}
.desert p {
  max-width: 350px;
}
.hero-visual {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: flex-end;
  pointer-events: none;
}
.hero-visual img {
  width: 100%;
  height: auto;
}
@media (max-width: 850px) {
  .desert .hero-copy {
    max-width: 410px;
  }
  .desert {
    padding-bottom: 150px;
  }
}
@media (max-width: 650px) {
  .desert {
    padding-bottom: 0;
  }
  .desert .inside {
    width: 100%;
    display: block;
  }
  .desert .hero-copy {
    width: 90%;
    margin: auto;
  }
  .hero-visual {
    position: relative;
    margin-top: 22px;
  }
}

.truck-logo.ram{width:44px;height:48px;object-fit:contain;filter:none}
@media(max-width:650px){.truck-logo.ram{width:32px;height:35px}}

.truck-logo.ford{filter:none}
.ram-marks{display:flex;flex-direction:column;align-items:center;gap:5px;width:48px;flex:none}
.ram-marks .truck-logo.ram{width:32px;height:35px}
.ram-marks .truck-logo.cummins{width:26px;height:27px;object-fit:contain;filter:none}
.engine-strip {
  padding: 34px 0 30px;
  background: #121417;
}
.truck-strip-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
}
.truck-strip-heading h2 {
  margin: 0;
  font: 700 26px/1.2 Inter, 'Segoe UI', Arial, sans-serif;
  letter-spacing: -.025em;
  text-transform: none;
}
.engine-links {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: stretch;
  gap: 16px;
  padding: 22px 0 0;
}
.engine-links a,
.engine-links a:has(.truck-logo) {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  min-height: 238px;
  padding: 22px;
  background: #1b1e23;
  border: 1px solid #3d434a;
  font: 650 clamp(18px, 1.8vw, 23px)/1.2 Inter, 'Segoe UI', Arial, sans-serif;
}
.engine-links a:hover {
  border-color: #5cc0ff;
}
.engine-links .truck-logo.ford {
  width: 70px;
  height: 76px;
  object-fit: contain;
}
.engine-links .ram-marks,
.engine-links .gm-marks {
  min-height: 76px;
  width: 70px;
  justify-content: center;
}
.engine-links .ram-marks .truck-logo.ram {
  width: 38px;
  height: 42px;
}
.engine-links .ram-marks .truck-logo.cummins {
  width: 27px;
  height: 28px;
}
.engine-links a:last-child {
  justify-content: flex-start;
}
.engine-links .engine-sizes {
  margin-top: 7px;
  line-height: 1.6;
}
@media (max-width: 980px) {
  .engine-links {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 520px) {
  .engine-links a,
  .engine-links a:has(.truck-logo) {
    padding: 16px;
    min-height: 225px;
  }
}

/* The gas card introduces the directory without crowding the engine list. */
.engine-links > a,
.engine-links > a:has(.truck-logo) {
  min-height: 294px;
}
.engine-links > .gas-platform-tile {
  gap: 13px;
  padding: 20px;
  background: linear-gradient(145deg, #23272d, #1b1e23 70%);
  border-top: 2px solid #0499f7;
}
.gas-tile-head {
  display: flex;
  align-items: center;
  gap: 11px;
}
.gas-tile-head svg {
  width: 28px;
  height: 30px;
  fill: none;
  stroke: #5cc0ff;
  stroke-width: 1.5;
  stroke-linecap: round;
  stroke-linejoin: round;
  flex: none;
}
.gas-tile-head strong {
  display: block;
  font-size: 22px;
  line-height: 1.15;
  letter-spacing: -.025em;
}
.gas-tile-years {
  display: block;
  margin-top: 5px;
  font: 650 9px/1.2 Inter, Arial, sans-serif;
  letter-spacing: .13em;
  color: #5cc0ff;
}
.gas-family-list {
  display: grid;
  gap: 10px;
  width: 100%;
}
.gas-family-list > span {
  display: block;
}
.gas-family-list b {
  display: block;
  color: #b4bac1;
  font: 700 8px/1.3 Inter, Arial, sans-serif;
  letter-spacing: .12em;
  margin-bottom: 3px;
}
.gas-family-list > span > span {
  display: block;
  font: 500 12px/1.45 Inter, Arial, sans-serif;
  color: #dde1e5;
}
.gas-tile-link {
  display: flex;
  justify-content: space-between;
  gap: 6px;
  width: 100%;
  margin-top: auto;
  padding-top: 10px;
  border-top: 1px solid #3d434a;
  font: 650 11px/1.3 Inter, Arial, sans-serif;
  color: #5cc0ff;
}
@media (max-width: 520px) {
  .engine-links > a,
  .engine-links > a:has(.truck-logo) {
    min-height: 294px;
  }
  .engine-links > .gas-platform-tile { padding: 15px; gap: 12px; }
  .gas-tile-head { gap: 7px; }
  .gas-tile-head svg { width: 21px; }
  .gas-tile-head strong { font-size: 18px; }
  .gas-tile-years { font-size: 8px; letter-spacing: .04em; }
  .gas-family-list > span > span { font-size: 11px; }
  .gas-tile-link { font-size: 10px; }
}
/* GAR palette: raised gunmetal tiles on older pages */
.service-card,.platform-card,.engine-entry aside{border:1px solid #2c3136!important;border-top-color:#454b53!important;border-radius:16px!important;background:linear-gradient(160deg,#2a2e35 0%,#1b1e23 45%,#0d0f12 100%)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 14px 30px rgba(0,0,0,.45)}
a.service-card:hover,.service-card:hover{border-color:#0499f7!important}
.btn{border-radius:12px}
/* GAR type: match the redesigned pages (sentence case, Inter) */
main h1,main h2,main h3{font-family:Inter,'Segoe UI',Arial,sans-serif!important;text-transform:none!important}
main .hero h1{font-size:clamp(40px,5.4vw,68px)!important;line-height:1.02!important;letter-spacing:-.03em!important;font-weight:800!important}
main .hero h1 span{display:block;background:linear-gradient(90deg,#0499f7,#5cc0ff);-webkit-background-clip:text;background-clip:text;color:transparent}
main h2{letter-spacing:-.025em!important;font-weight:800!important}
main .btn{text-transform:none;letter-spacing:0}
.btn,.card-link,main .actions a{text-transform:none!important;letter-spacing:0!important}

.service-menu>nav{width:250px}.service-menu>nav .sm-g{display:block;margin:10px 0 2px;padding-top:8px;border-top:1px solid #3d434a;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#5cc0ff}.service-menu>nav a{padding:7px 0}
