/* CGCR Vehicle Identification v0.4.2 — SEO resource pages, not a tool shell */
.cgcr-sn{
  --sn-blue:#173b63;
  --sn-blue-dark:#102d4d;
  --sn-gold:#c89a3d;
  --sn-ink:#1c2730;
  --sn-muted:#60707b;
  --sn-line:#dfe5e8;
  --sn-soft:#f5f7f8;
  --sn-white:#fff;
  width:min(1120px,calc(100% - 32px));
  margin:38px auto 70px;
  color:var(--sn-ink);
  font-family:inherit;
  isolation:isolate;
}
.cgcr-sn,.cgcr-sn *{box-sizing:border-box}
.cgcr-sn img{max-width:100%;height:auto}
.cgcr-sn a,.cgcr-sn a:visited{color:var(--sn-blue)!important;text-decoration:none!important}
.cgcr-sn a:hover,.cgcr-sn a:focus,.cgcr-sn a:active{color:var(--sn-blue-dark)!important;text-decoration:none!important}
.cgcr-sn button,.cgcr-sn input{font:inherit!important}
.cgcr-sn button{appearance:none!important;text-transform:none!important;letter-spacing:normal!important;box-shadow:none!important}
.cgcr-sn button:focus-visible,.cgcr-sn a:focus-visible,.cgcr-sn input:focus-visible{outline:3px solid rgba(200,154,61,.4)!important;outline-offset:3px!important}

.cgcr-sn__eyebrow{font-size:13px;line-height:1.3;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--sn-gold)}
.cgcr-sn__hero--index{text-align:center;max-width:860px;margin:0 auto;padding:26px 0 26px}
.cgcr-sn__hero h1,.cgcr-sn__brand-hero h1{margin:10px 0 16px!important;font-size:clamp(38px,5vw,58px)!important;line-height:1.04!important;letter-spacing:-.035em!important;color:var(--sn-ink)!important}
.cgcr-sn__lead,.cgcr-sn__brand-hero p{margin:0 auto;color:var(--sn-muted);font-size:19px;line-height:1.65}
.cgcr-sn__intro{max-width:900px;margin:10px auto 46px;padding:25px 0;border-top:1px solid var(--sn-line);border-bottom:1px solid var(--sn-line);text-align:center}
.cgcr-sn__intro p{margin:0;font-size:17px;line-height:1.75;color:#45545e}
.cgcr-sn__section-heading{text-align:center;max-width:800px;margin:0 auto 28px}
.cgcr-sn__section-heading h2,.cgcr-sn__seo-copy h2,.cgcr-sn__info-band h2,.cgcr-sn__model-reference h2,.cgcr-sn__serial-example h2{margin:0 0 10px!important;font-size:clamp(27px,3.2vw,36px)!important;line-height:1.15!important;letter-spacing:-.025em!important;color:var(--sn-ink)!important}
.cgcr-sn__section-heading p{margin:0;color:var(--sn-muted);font-size:17px;line-height:1.65}

.cgcr-sn__make-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:30px}
.cgcr-sn__make-card{position:relative;display:block!important;min-height:290px;overflow:hidden;background:var(--sn-soft);border:1px solid var(--sn-line);border-radius:3px;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.cgcr-sn__make-card:hover,.cgcr-sn__make-card:focus{transform:translateY(-3px);border-color:#c7d1d7;box-shadow:0 16px 32px rgba(28,39,48,.12)}
.cgcr-sn__make-image{display:grid;place-items:center;height:290px;background:linear-gradient(180deg,#f8fafb 0%,#eef2f4 100%)}
.cgcr-sn__make-image img{width:100%;height:100%;object-fit:contain;padding:14px 18px 62px}
.cgcr-sn__make-overlay{position:absolute;left:0;right:0;bottom:0;padding:22px 24px;background:linear-gradient(180deg,rgba(16,45,77,0) 0%,rgba(16,45,77,.9) 42%,rgba(16,45,77,.98) 100%);color:#fff!important}
.cgcr-sn__make-overlay strong{display:block;font-size:26px;line-height:1.1;color:#fff!important}.cgcr-sn__make-overlay small{display:block;margin-top:4px;font-size:14px;color:rgba(255,255,255,.82)!important}
.cgcr-sn__make-card--soon{cursor:default}.cgcr-sn__make-card--soon:hover{transform:none;box-shadow:none;border-color:var(--sn-line)}
.cgcr-sn__make-image--soon span{display:grid;place-items:center;width:74px;height:74px;border:1px solid #bbc6cc;border-radius:50%;font-size:38px;font-weight:300;color:#75828b}
.cgcr-sn__seo-copy{max-width:900px;margin:60px auto 0;padding-top:42px;border-top:1px solid var(--sn-line)}
.cgcr-sn__seo-copy p{margin:0 0 16px;color:#46555f;font-size:16.5px;line-height:1.78}

/* Brand pages */
.cgcr-sn__back{margin-bottom:22px}.cgcr-sn__back a{font-size:14px;font-weight:750!important}
.cgcr-sn__brand-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);align-items:center;gap:48px;padding:32px 0 38px;border-bottom:1px solid var(--sn-line)}
.cgcr-sn__brand-hero-copy p{max-width:700px;margin-left:0}
.cgcr-sn__brand-art{height:250px;display:grid;place-items:center;background:var(--sn-soft);border:1px solid var(--sn-line)}
.cgcr-sn__brand-art img{width:100%;height:100%;object-fit:contain;padding:26px}

.cgcr-sn__lookup{margin:38px 0 62px;padding:34px 36px;background:var(--sn-blue-dark);color:#fff;border-radius:3px}
.cgcr-sn__lookup-copy{max-width:760px}.cgcr-sn__lookup-kicker{display:block;margin-bottom:7px;color:var(--sn-gold);font-size:12px;font-weight:850;letter-spacing:.11em;text-transform:uppercase}
.cgcr-sn__lookup h2{margin:0 0 8px!important;color:#fff!important;font-size:30px!important;line-height:1.16!important;letter-spacing:-.02em!important}.cgcr-sn__lookup-copy p{margin:0;color:rgba(255,255,255,.78);font-size:15.5px;line-height:1.65}
.cgcr-sn__lookup-form{display:grid;grid-template-columns:1fr 1fr auto;gap:14px;align-items:end;margin-top:25px}.cgcr-sn__lookup-form--single{grid-template-columns:1fr auto;max-width:760px}
.cgcr-sn__field label{display:block;margin:0 0 7px!important;color:#fff!important;font-size:13px!important;font-weight:750!important}.cgcr-sn__field input{width:100%!important;height:50px!important;margin:0!important;padding:0 14px!important;border:1px solid rgba(255,255,255,.24)!important;border-radius:2px!important;background:#fff!important;color:#17212a!important;font-size:16px!important;box-shadow:none!important}.cgcr-sn__field input:focus{border-color:var(--sn-gold)!important;box-shadow:none!important}
.cgcr-sn__lookup-form button{height:50px!important;padding:0 22px!important;border:1px solid var(--sn-gold)!important;border-radius:2px!important;background:var(--sn-gold)!important;color:#111!important;font-weight:850!important;cursor:pointer!important;white-space:nowrap}.cgcr-sn__lookup-form button:hover,.cgcr-sn__lookup-form button:focus,.cgcr-sn__lookup-form button:active{background:#d4a84b!important;border-color:#d4a84b!important;color:#111!important}
.cgcr-sn__lookup-result:empty{display:none}.cgcr-sn__lookup-result{margin-top:22px}.cgcr-sn__result-card{background:#fff;color:var(--sn-ink);padding:24px;border-radius:2px}.cgcr-sn__result-heading span{display:block;margin-bottom:5px;font-size:12px;font-weight:850;letter-spacing:.09em;text-transform:uppercase;color:#48715d}.cgcr-sn__result-heading h3{margin:0!important;color:var(--sn-ink)!important;font-size:27px!important;line-height:1.15!important}.cgcr-sn__result-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin-top:20px;border-top:1px solid var(--sn-line);border-left:1px solid var(--sn-line)}.cgcr-sn__result-grid>div{padding:14px 16px;border-right:1px solid var(--sn-line);border-bottom:1px solid var(--sn-line)}.cgcr-sn__result-grid span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#74818a}.cgcr-sn__result-grid strong{display:block;margin-top:5px;font-size:15px;color:var(--sn-ink)}.cgcr-sn__result-note{margin:16px 0 0!important;color:#52616b!important;font-size:14px!important;line-height:1.6!important}.cgcr-sn__form-error{padding:15px 18px;background:#fff5f3;border-left:4px solid #a74438;color:#5b2924}.cgcr-sn__form-error strong{display:block;margin-bottom:3px}.cgcr-sn__form-error span{font-size:14px;line-height:1.5}

.cgcr-sn__content-section{margin-top:10px}.cgcr-sn__location-list{border-top:1px solid var(--sn-line)}
.cgcr-sn__location-row{display:grid;grid-template-columns:340px minmax(0,1fr);gap:42px;padding:34px 0;border-bottom:1px solid var(--sn-line);align-items:center}.cgcr-sn__location-art{height:230px;display:grid;place-items:center;background:var(--sn-soft);border:1px solid var(--sn-line)}.cgcr-sn__location-art img{width:100%;height:100%;object-fit:contain;padding:20px}.cgcr-sn__location-title{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.cgcr-sn__location-title h3{margin:0!important;color:var(--sn-ink)!important;font-size:25px!important;line-height:1.15!important}.cgcr-sn__location-title span{display:inline-block;padding:5px 8px;background:#eef2f4;color:#4e5d67;font-size:12px;font-weight:750;white-space:nowrap}.cgcr-sn__location-copy>p{margin:14px 0 16px;font-size:16px;line-height:1.72;color:#43525c}.cgcr-sn__record-note{padding:12px 14px;background:#f7f8f9;border-left:3px solid var(--sn-gold);font-size:14px;line-height:1.55;color:#4a5963}.cgcr-sn__record-note strong{color:var(--sn-ink)}

.cgcr-sn__info-band{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:45px;margin:58px 0 0;padding:38px 0;border-top:1px solid var(--sn-line);border-bottom:1px solid var(--sn-line)}.cgcr-sn__info-band p{margin:0;color:#46555f;font-size:16px;line-height:1.72}.cgcr-sn__info-band aside{padding:21px 22px;background:var(--sn-soft);border-left:3px solid var(--sn-gold)}.cgcr-sn__info-band aside strong{display:block;margin-bottom:7px;font-size:16px;color:var(--sn-ink)}.cgcr-sn__info-band aside p{font-size:14px;line-height:1.6}
.cgcr-sn__model-reference{margin-top:54px}.cgcr-sn__reference-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--sn-line);border-left:1px solid var(--sn-line)}.cgcr-sn__reference-grid>div{padding:22px 24px;border-right:1px solid var(--sn-line);border-bottom:1px solid var(--sn-line)}.cgcr-sn__reference-grid strong{display:block;font-size:20px}.cgcr-sn__reference-grid span{display:block;margin-top:3px;font-size:12px;font-weight:750;color:var(--sn-blue)}.cgcr-sn__reference-grid p{margin:10px 0 0;color:#53616b;font-size:14px;line-height:1.6}

.cgcr-sn__serial-example{margin:58px 0 0;padding:34px;background:var(--sn-soft);border:1px solid var(--sn-line)}.cgcr-sn__serial-example-copy p{margin:0;color:#52616b}.cgcr-sn__serial-parts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:23px}.cgcr-sn__serial-parts>div{background:#fff;border:1px solid var(--sn-line);padding:18px;text-align:center}.cgcr-sn__serial-parts strong{display:block;color:var(--sn-blue);font-size:25px;letter-spacing:.03em}.cgcr-sn__serial-parts span{display:block;margin-top:6px;font-size:12px;color:#64727c}

@media(max-width:900px){
  .cgcr-sn__make-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cgcr-sn__make-card--soon{display:none}
  .cgcr-sn__brand-hero{grid-template-columns:1fr}.cgcr-sn__brand-art{height:220px}
  .cgcr-sn__lookup-form,.cgcr-sn__lookup-form--single{grid-template-columns:1fr}.cgcr-sn__lookup-form button{width:100%}
  .cgcr-sn__location-row{grid-template-columns:280px minmax(0,1fr);gap:28px}.cgcr-sn__result-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cgcr-sn__info-band{grid-template-columns:1fr}.cgcr-sn__serial-parts{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
  .cgcr-sn{width:min(100% - 22px,1120px);margin-top:24px}.cgcr-sn__hero--index{text-align:left}.cgcr-sn__hero h1,.cgcr-sn__brand-hero h1{font-size:36px!important}.cgcr-sn__lead,.cgcr-sn__brand-hero p{font-size:17px}.cgcr-sn__intro{text-align:left;margin-bottom:34px}.cgcr-sn__section-heading{text-align:left}.cgcr-sn__make-grid{grid-template-columns:1fr;gap:14px}.cgcr-sn__make-card{min-height:230px}.cgcr-sn__make-image{height:230px}
  .cgcr-sn__brand-hero{gap:24px;padding-top:16px}.cgcr-sn__brand-art{height:190px}.cgcr-sn__lookup{margin:28px -2px 46px;padding:24px 18px}.cgcr-sn__lookup h2{font-size:25px!important}
  .cgcr-sn__location-row{grid-template-columns:1fr;gap:18px;padding:26px 0}.cgcr-sn__location-art{height:210px}.cgcr-sn__location-title{display:block}.cgcr-sn__location-title span{margin-top:8px}.cgcr-sn__location-title h3{font-size:23px!important}
  .cgcr-sn__result-grid{grid-template-columns:1fr}.cgcr-sn__reference-grid{grid-template-columns:1fr}.cgcr-sn__serial-example{padding:24px 18px}.cgcr-sn__serial-parts{grid-template-columns:1fr 1fr}.cgcr-sn__info-band{gap:24px;margin-top:42px;padding:30px 0}
}

/* Align the taller Club Car photo with the E-Z-GO card. */
.cgcr-sn__make-card[href*="golf-cart-serial-number/club-car"] .cgcr-sn__make-image img{
  transform:translateY(-18px);
  padding-top:2px;
  padding-bottom:44px;
}

/* v0.4.6 — E-Z-GO supplied visuals use a fixed viewport. Image aspect ratio
   can never enlarge or shrink the containing location box. */
.cgcr-sn__location-art--fixed{
  height:260px!important;
  min-height:260px!important;
  max-height:260px!important;
  overflow:hidden!important;
  background:#fff!important;
}
.cgcr-sn__location-art--fixed img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  padding:16px!important;
}
@media(max-width:640px){
  .cgcr-sn__location-art--fixed{
    height:230px!important;
    min-height:230px!important;
    max-height:230px!important;
  }
  .cgcr-sn__location-art--fixed img{padding:12px!important}
}

/* v0.4.7 — master resource-page presentation */

/* Hide theme/Elementor page titles only on CGCR serial resource pages.
   The plugin renders its own SEO H1 inside the resource content. */
body.page-slug-golf-cart-serial-number .entry-title,
body.page-slug-golf-cart-serial-number .page-title,
body.parent-pageid-golf-cart-serial-number .entry-title,
body.parent-pageid-golf-cart-serial-number .page-title{
  display:none!important;
}

/* E-Z-GO hero image: photographic focal point without a boxed-plugin look. */
.cgcr-sn__brand-hero-art{
  position:relative!important;
  overflow:hidden!important;
  background:transparent!important;
}
.cgcr-sn__brand-hero-art .cgcr-sn__ezgo-hero-cart{
  width:112%!important;
  max-width:none!important;
  height:auto!important;
  display:block!important;
  object-fit:contain!important;
  transform:translate(2%,2%)!important;
  filter:drop-shadow(0 18px 24px rgba(11,25,39,.14))!important;
}
.cgcr-sn__brand-hero-art:after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.18) 20%,rgba(255,255,255,0) 48%,rgba(255,255,255,0) 76%,rgba(255,255,255,.9) 100%);
}

/* Master primary-action styling. Keep Elementor/theme hover rules out. */
.cgcr-sn button.cgcr-sn__button,
.cgcr-sn a.cgcr-sn__button,
.cgcr-sn .cgcr-sn__decoder button[type="submit"]{
  background:#173B63!important;
  color:#fff!important;
  border:1px solid #173B63!important;
  box-shadow:none!important;
  font-weight:500!important;
  letter-spacing:.01em!important;
  text-decoration:none!important;
  border-radius:6px!important;
  transition:background-color .18s ease,border-color .18s ease,transform .18s ease!important;
}
.cgcr-sn button.cgcr-sn__button:hover,
.cgcr-sn a.cgcr-sn__button:hover,
.cgcr-sn .cgcr-sn__decoder button[type="submit"]:hover{
  background:#102d4c!important;
  border-color:#102d4c!important;
  color:#fff!important;
  transform:translateY(-1px)!important;
}
.cgcr-sn button.cgcr-sn__button:focus-visible,
.cgcr-sn a.cgcr-sn__button:focus-visible,
.cgcr-sn .cgcr-sn__decoder button[type="submit"]:focus-visible{
  outline:3px solid rgba(23,59,99,.24)!important;
  outline-offset:3px!important;
}

/* E-Z-GO page polish */
.cgcr-sn__location-row{
  gap:clamp(24px,4vw,54px)!important;
}
.cgcr-sn__location-copy p{
  max-width:650px;
}
.cgcr-sn__location-title h3{
  line-height:1.18!important;
}
.cgcr-sn__section-head{
  max-width:780px;
}

/* Tablet */
@media (min-width:768px) and (max-width:1024px){
  .cgcr-sn__brand-hero{
    grid-template-columns:minmax(0,1.08fr) minmax(300px,.92fr)!important;
    gap:28px!important;
  }
  .cgcr-sn__brand-hero-art .cgcr-sn__ezgo-hero-cart{
    width:118%!important;
    transform:translate(-1%,4%)!important;
  }
  .cgcr-sn__location-row{
    grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr)!important;
    gap:30px!important;
  }
}

/* Mobile */
@media (max-width:767px){
  .cgcr-sn__brand-hero{
    display:flex!important;
    flex-direction:column!important;
    gap:12px!important;
  }
  .cgcr-sn__brand-hero-art{
    order:-1;
    min-height:230px!important;
  }
  .cgcr-sn__brand-hero-art .cgcr-sn__ezgo-hero-cart{
    width:108%!important;
    transform:translate(-4%,0)!important;
  }
  .cgcr-sn__brand-hero-art:after{
    background:linear-gradient(180deg,rgba(255,255,255,0) 55%,rgba(255,255,255,.96) 100%)!important;
  }
  .cgcr-sn__location-row{
    display:flex!important;
    flex-direction:column!important;
    gap:18px!important;
  }
  .cgcr-sn__location-art--fixed{
    width:100%!important;
  }
  .cgcr-sn__decoder button[type="submit"],
  .cgcr-sn button.cgcr-sn__button,
  .cgcr-sn a.cgcr-sn__button{
    width:100%!important;
    min-height:48px!important;
  }
}

body.cgcr-vi-resource-page .entry-title,
body.cgcr-vi-resource-page .page-title,
body.cgcr-vi-resource-page h1.elementor-heading-title:first-child{
  display:none!important;
}

/* v0.4.8 — target the actual E-Z-GO hero and lookup-form markup. */
.cgcr-sn__brand-art--ezgo{
  position:relative!important;
  overflow:hidden!important;
  background:linear-gradient(135deg,#f7f9fb 0%,#fff 72%)!important;
  border:0!important;
  isolation:isolate;
}
.cgcr-sn__brand-art--ezgo:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(255,255,255,.88) 0%,rgba(255,255,255,.12) 23%,rgba(255,255,255,0) 52%,rgba(255,255,255,.38) 100%);
}
.cgcr-sn__brand-art--ezgo .cgcr-sn__ezgo-hero-cart{
  position:relative!important;
  z-index:1!important;
  width:112%!important;
  height:112%!important;
  max-width:none!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  padding:0!important;
  filter:drop-shadow(0 18px 20px rgba(16,38,58,.16))!important;
}
.cgcr-sn .cgcr-sn__lookup-form .cgcr-sn__primary-action,
.cgcr-sn .cgcr-sn__lookup-form button[type="submit"]{
  appearance:none!important;
  -webkit-appearance:none!important;
  background:#173B63!important;
  color:#fff!important;
  border:1px solid #173B63!important;
  border-radius:5px!important;
  box-shadow:none!important;
  font-family:inherit!important;
  font-size:16px!important;
  font-weight:500!important;
  line-height:1.2!important;
  letter-spacing:0!important;
  min-height:48px!important;
  padding:13px 22px!important;
  text-transform:none!important;
  cursor:pointer!important;
}
.cgcr-sn .cgcr-sn__lookup-form .cgcr-sn__primary-action:hover,
.cgcr-sn .cgcr-sn__lookup-form button[type="submit"]:hover{
  background:#102d4c!important;
  border-color:#102d4c!important;
  color:#fff!important;
  box-shadow:none!important;
  text-decoration:none!important;
}
.cgcr-sn .cgcr-sn__lookup-form .cgcr-sn__primary-action:focus-visible,
.cgcr-sn .cgcr-sn__lookup-form button[type="submit"]:focus-visible{
  outline:3px solid rgba(23,59,99,.24)!important;
  outline-offset:3px!important;
}
@media(max-width:767px){
  .cgcr-sn__brand-art--ezgo:after{background:linear-gradient(180deg,rgba(255,255,255,0) 50%,rgba(255,255,255,.92) 100%)!important}
  .cgcr-sn__brand-art--ezgo .cgcr-sn__ezgo-hero-cart{width:108%!important;height:108%!important}
  .cgcr-sn .cgcr-sn__lookup-form .cgcr-sn__primary-action{width:100%!important}
}
/* v0.4.9 — approved E-Z-GO hero + master CTA */
.cgcr-sn__brand-hero{position:relative!important;overflow:hidden!important}
.cgcr-sn__brand-hero-art{position:absolute!important;top:0!important;right:0!important;bottom:0!important;width:48%!important;height:100%!important;min-height:0!important;z-index:0!important;pointer-events:none!important}
.cgcr-sn__brand-hero-art .cgcr-sn__ezgo-hero-cart{position:absolute!important;right:0!important;bottom:0!important;width:100%!important;height:96%!important;max-width:none!important;object-fit:contain!important;object-position:right bottom!important;transform:none!important;filter:drop-shadow(0 18px 25px rgba(8,20,32,.16))!important}
.cgcr-sn__brand-hero-art:after{content:""!important;position:absolute!important;inset:0!important;background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.76) 10%,rgba(255,255,255,.15) 31%,rgba(255,255,255,0) 58%)!important;pointer-events:none!important}
.cgcr-sn__brand-hero>:not(.cgcr-sn__brand-hero-art){position:relative!important;z-index:2!important}.cgcr-sn__brand-hero-copy,.cgcr-sn__lookup{max-width:54%!important}
.cgcr-sn .cgcr-sn__lookup-form button[type="submit"],.cgcr-sn .cgcr-sn__lookup-submit,.cgcr-sn button.cgcr-sn__button,.cgcr-sn a.cgcr-sn__button{background:#173B63!important;color:#fff!important;border:1px solid #C89A3D!important;border-radius:6px!important;font-weight:500!important;letter-spacing:.01em!important;box-shadow:0 4px 14px rgba(8,25,42,.14),0 0 0 1px rgba(200,154,61,.08)!important;transition:all .18s ease!important}
.cgcr-sn .cgcr-sn__lookup-form button[type="submit"]:hover,.cgcr-sn .cgcr-sn__lookup-submit:hover,.cgcr-sn button.cgcr-sn__button:hover,.cgcr-sn a.cgcr-sn__button:hover{background:#1D4A79!important;color:#fff!important;border-color:#D8AD59!important;box-shadow:0 6px 18px rgba(8,25,42,.18),0 0 0 2px rgba(200,154,61,.15)!important;transform:translateY(-1px)!important}
@media(min-width:768px) and (max-width:1024px){.cgcr-sn__brand-hero-art{width:45%!important}.cgcr-sn__brand-hero-copy,.cgcr-sn__lookup{max-width:59%!important}.cgcr-sn__brand-hero-art .cgcr-sn__ezgo-hero-cart{height:88%!important}}
@media(max-width:767px){.cgcr-sn__brand-hero{padding-top:215px!important}.cgcr-sn__brand-hero-art{display:block!important;position:absolute!important;top:0!important;right:0!important;left:0!important;bottom:auto!important;width:100%!important;height:215px!important;min-height:215px!important}.cgcr-sn__brand-hero-art .cgcr-sn__ezgo-hero-cart{width:100%!important;height:100%!important;object-position:center bottom!important}.cgcr-sn__brand-hero-art:after{background:linear-gradient(180deg,rgba(255,255,255,0) 50%,#fff 100%)!important}.cgcr-sn__brand-hero-copy,.cgcr-sn__lookup{max-width:100%!important}}


/* ==========================================================
   v0.4.10 — E-Z-GO HERO CORRECTION
   Keep the functional lookup at its original comfortable width.
   The RXV artwork adapts to the hero; it never constrains the form.
   ========================================================== */

.cgcr-sn__brand-hero{
  position:relative!important;
  overflow:visible!important;
}

/* Restore content/search sizing from before the v0.4.9 squeeze. */
.cgcr-sn__brand-hero-copy,
.cgcr-sn__lookup{
  max-width:none!important;
}

/* Reserve visual room through the hero grid only; do not shrink the lookup. */
.cgcr-sn__brand-hero{
  grid-template-columns:minmax(0, 1.35fr) minmax(320px, .65fr)!important;
  gap:clamp(28px,4vw,64px)!important;
}

/* Artwork stays in its own visual column and no longer behaves as a cropped
   background layer. */
.cgcr-sn__brand-hero-art{
  position:relative!important;
  inset:auto!important;
  width:100%!important;
  height:auto!important;
  min-height:360px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
  z-index:1!important;
  pointer-events:none!important;
  isolation:isolate!important;
  background:transparent!important;
}

/* Soft backdrop behind transparent product photography. */
.cgcr-sn__brand-hero-art:before{
  content:""!important;
  position:absolute!important;
  z-index:-2!important;
  width:118%!important;
  aspect-ratio:1.35/1!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-48%)!important;
  border-radius:50%!important;
  background:radial-gradient(
    ellipse at center,
    rgba(23,59,99,.095) 0%,
    rgba(23,59,99,.052) 38%,
    rgba(23,59,99,.018) 58%,
    rgba(23,59,99,0) 74%
  )!important;
}

/* Remove the white wash/fade from v0.4.9. */
.cgcr-sn__brand-hero-art:after{
  content:none!important;
  display:none!important;
}

/* Show the complete supplied transparent RXV image. */
.cgcr-sn__brand-hero-art .cgcr-sn__ezgo-hero-cart{
  position:relative!important;
  inset:auto!important;
  display:block!important;
  width:122%!important;
  height:auto!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:translateX(-5%)!important;
  filter:none!important;
  z-index:2!important;
}

/* Ground shadow, separate from the transparent image itself. */
.cgcr-sn__brand-hero-art .cgcr-sn__ezgo-hero-cart + *{
  position:relative;
}
.cgcr-sn__brand-hero-art{
  --cgcr-hero-shadow: rgba(11,29,46,.16);
}
.cgcr-sn__brand-hero-art::marker{display:none}

/* Tablet: retain two columns but scale the art instead of squeezing the form. */
@media (min-width:768px) and (max-width:1100px){
  .cgcr-sn__brand-hero{
    grid-template-columns:minmax(0, 1.45fr) minmax(280px, .55fr)!important;
    gap:26px!important;
  }
  .cgcr-sn__brand-hero-copy,
  .cgcr-sn__lookup{
    max-width:none!important;
  }
  .cgcr-sn__brand-hero-art{
    position:relative!important;
    width:100%!important;
    height:auto!important;
    min-height:300px!important;
    padding:0!important;
  }
  .cgcr-sn__brand-hero-art .cgcr-sn__ezgo-hero-cart{
    width:116%!important;
    height:auto!important;
    transform:translateX(-5%)!important;
  }
  .cgcr-sn__brand-hero-art:before{
    width:112%!important;
  }
}

/* Mobile: stop treating the vehicle as background art. It gets a predictable
   visual bay above the content and cannot overlap the lookup form. */
@media (max-width:767px){
  .cgcr-sn__brand-hero{
    display:flex!important;
    flex-direction:column!important;
    padding-top:0!important;
    gap:18px!important;
    overflow:hidden!important;
  }
  .cgcr-sn__brand-hero-copy,
  .cgcr-sn__lookup{
    max-width:none!important;
    width:100%!important;
  }
  .cgcr-sn__brand-hero-art{
    position:relative!important;
    inset:auto!important;
    order:-1!important;
    width:100%!important;
    height:220px!important;
    min-height:220px!important;
    max-height:220px!important;
    padding:0!important;
    overflow:visible!important;
  }
  .cgcr-sn__brand-hero-art .cgcr-sn__ezgo-hero-cart{
    width:100%!important;
    height:100%!important;
    max-width:100%!important;
    object-fit:contain!important;
    object-position:center!important;
    transform:none!important;
  }
  .cgcr-sn__brand-hero-art:before{
    width:94%!important;
    max-width:430px!important;
    aspect-ratio:1.5/1!important;
    transform:translate(-50%,-50%)!important;
  }
}

/* Master serial-resource CTA retained from v0.4.9. */
.cgcr-sn .cgcr-sn__lookup-form button[type="submit"],
.cgcr-sn .cgcr-sn__lookup-submit{
  background:#173B63!important;
  color:#fff!important;
  border:1px solid #C89A3D!important;
  border-radius:6px!important;
  font-weight:500!important;
  box-shadow:0 4px 14px rgba(8,25,42,.14),
             0 0 0 1px rgba(200,154,61,.08)!important;
}
.cgcr-sn .cgcr-sn__lookup-form button[type="submit"]:hover,
.cgcr-sn .cgcr-sn__lookup-submit:hover{
  background:#1D4A79!important;
  color:#fff!important;
  border-color:#D8AD59!important;
  box-shadow:0 6px 18px rgba(8,25,42,.18),
             0 0 0 2px rgba(200,154,61,.15)!important;
  transform:translateY(-1px)!important;
}

/* v0.4.11 — E-Z-GO hero image is a simple contained image.
   No fades, overflow, enlargement or decorative backdrop. */
.cgcr-sn__brand-hero-art{
  position:relative!important;
  inset:auto!important;
  width:100%!important;
  height:360px!important;
  min-height:360px!important;
  max-height:360px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  background:transparent!important;
}
.cgcr-sn__brand-hero-art:before,
.cgcr-sn__brand-hero-art:after{
  content:none!important;
  display:none!important;
  background:none!important;
}
.cgcr-sn__brand-hero-art .cgcr-sn__ezgo-hero-cart{
  position:static!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:none!important;
  filter:none!important;
  margin:0!important;
  padding:0!important;
}
@media(min-width:768px) and (max-width:1100px){
  .cgcr-sn__brand-hero-art{
    height:310px!important;
    min-height:310px!important;
    max-height:310px!important;
  }
}
@media(max-width:767px){
  .cgcr-sn__brand-hero{
    padding-top:0!important;
  }
  .cgcr-sn__brand-hero-art{
    position:relative!important;
    order:-1!important;
    width:100%!important;
    height:220px!important;
    min-height:220px!important;
    max-height:220px!important;
  }
}


/* ==========================================================
   v0.4.12 — EXACT E-Z-GO TEMPLATE OVERRIDES
   These selectors match the markup actually emitted by render_ezgo().
   ========================================================== */

/* Hero: fixed viewport, entire transparent image visible, no fade or crop. */
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__brand-art--ezgo{
  position:relative!important;
  width:100%!important;
  height:300px!important;
  min-height:300px!important;
  max-height:300px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__brand-art--ezgo:before,
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__brand-art--ezgo:after{
  content:none!important;
  display:none!important;
  background:none!important;
}
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__brand-art--ezgo .cgcr-sn__ezgo-hero-cart{
  position:static!important;
  inset:auto!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-width:100%!important;
  max-height:100%!important;
  padding:0!important;
  margin:0!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:none!important;
  filter:none!important;
  opacity:1!important;
}

/* Keep the hero/search at the original comfortable width. */
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__brand-hero{
  grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr)!important;
  gap:48px!important;
  overflow:visible!important;
}
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__brand-hero-copy,
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__lookup{
  width:auto!important;
  max-width:none!important;
}

/* Actual E-Z-GO submit button class. */
.cgcr-sn[data-cgcr-brand="ezgo"] button.cgcr-sn__primary-action{
  appearance:none!important;
  -webkit-appearance:none!important;
  background:#173B63!important;
  color:#fff!important;
  border:1px solid #C89A3D!important;
  border-radius:6px!important;
  min-height:48px!important;
  padding:12px 22px!important;
  font-family:inherit!important;
  font-size:16px!important;
  line-height:1.2!important;
  font-weight:500!important;
  letter-spacing:.01em!important;
  text-transform:none!important;
  text-decoration:none!important;
  box-shadow:0 4px 14px rgba(8,25,42,.14),0 0 0 1px rgba(200,154,61,.08)!important;
  cursor:pointer!important;
  transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease!important;
}
.cgcr-sn[data-cgcr-brand="ezgo"] button.cgcr-sn__primary-action:hover{
  background:#1D4A79!important;
  color:#fff!important;
  border-color:#D8AD59!important;
  box-shadow:0 6px 18px rgba(8,25,42,.18),0 0 0 2px rgba(200,154,61,.15)!important;
  transform:translateY(-1px)!important;
}
.cgcr-sn[data-cgcr-brand="ezgo"] button.cgcr-sn__primary-action:focus,
.cgcr-sn[data-cgcr-brand="ezgo"] button.cgcr-sn__primary-action:focus-visible{
  background:#1D4A79!important;
  color:#fff!important;
  border-color:#D8AD59!important;
  outline:3px solid rgba(200,154,61,.28)!important;
  outline-offset:3px!important;
}

/* Tablet */
@media (min-width:768px) and (max-width:1024px){
  .cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__brand-hero{
    grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr)!important;
    gap:30px!important;
  }
  .cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__brand-art--ezgo{
    height:270px!important;
    min-height:270px!important;
    max-height:270px!important;
  }
}

/* Mobile */
@media (max-width:767px){
  .cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__brand-hero{
    display:flex!important;
    flex-direction:column!important;
    gap:18px!important;
    padding-top:16px!important;
  }
  .cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__brand-art--ezgo{
    order:2!important;
    width:100%!important;
    height:220px!important;
    min-height:220px!important;
    max-height:220px!important;
  }
  .cgcr-sn[data-cgcr-brand="ezgo"] button.cgcr-sn__primary-action{
    width:100%!important;
  }
}

/* v0.5.0 E-Z-GO decoder field */
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__field select{width:100%!important;min-height:48px!important;padding:10px 38px 10px 13px!important;border:1px solid #cfd7df!important;border-radius:5px!important;background:#fff!important;color:#172536!important;font:inherit!important;font-size:16px!important;box-shadow:none!important}
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__field select:focus{border-color:#173B63!important;outline:3px solid rgba(23,59,99,.12)!important;outline-offset:1px!important}
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__field small{font-size:13px!important;font-weight:400!important;color:#6d7883!important}


/* ==========================================================
   v0.5.1 — MOBILE-ONLY SERIAL NUMBER INDEX REFINEMENT
   Desktop/tablet and manufacturer pages are intentionally unchanged.
   ========================================================== */
@media (max-width:767px){

  /* Consistent mobile page gutter. */
  .cgcr-sn--index{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
    box-sizing:border-box!important;
  }
  .cgcr-sn--index > section,
  .cgcr-sn--index .cgcr-sn__hero--index,
  .cgcr-sn--index .cgcr-sn__intro,
  .cgcr-sn--index .cgcr-sn__make-section,
  .cgcr-sn--index .cgcr-sn__seo-copy{
    width:calc(100% - 40px)!important;
    max-width:none!important;
    margin-left:20px!important;
    margin-right:20px!important;
    box-sizing:border-box!important;
  }

  /* Keep headings readable without desktop-scale wrapping. */
  .cgcr-sn--index .cgcr-sn__hero--index h1{
    font-size:clamp(30px,9vw,38px)!important;
    line-height:1.08!important;
    overflow-wrap:break-word!important;
  }
  .cgcr-sn--index .cgcr-sn__section-heading h2,
  .cgcr-sn--index .cgcr-sn__seo-copy h2{
    font-size:clamp(24px,7vw,30px)!important;
    line-height:1.16!important;
  }
  .cgcr-sn--index p,
  .cgcr-sn--index .cgcr-sn__lead{
    font-size:16px!important;
    line-height:1.65!important;
  }

  /* One full-width manufacturer choice per row. */
  .cgcr-sn--index .cgcr-sn__make-grid{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:22px!important;
    width:100%!important;
    max-width:100%!important;
  }

  /* True square manufacturer cards on mobile. */
  .cgcr-sn--index .cgcr-sn__make-card{
    position:relative!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:1 / 1!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
    border-radius:8px!important;
  }

  /* The image bay fills the square but never crops the cart. */
  .cgcr-sn--index .cgcr-sn__make-image{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:18px 18px 72px!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
  }
  .cgcr-sn--index .cgcr-sn__make-image img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    max-width:100%!important;
    max-height:100%!important;
    object-fit:contain!important;
    object-position:center center!important;
    transform:none!important;
    margin:0!important;
  }

  /* Compact label area so it doesn't hide the vehicle. */
  .cgcr-sn--index .cgcr-sn__make-overlay{
    position:absolute!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    min-height:62px!important;
    padding:11px 16px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    box-sizing:border-box!important;
  }
  .cgcr-sn--index .cgcr-sn__make-overlay strong{
    font-size:20px!important;
    line-height:1.1!important;
  }
  .cgcr-sn--index .cgcr-sn__make-overlay small{
    font-size:14px!important;
    line-height:1.25!important;
    margin-top:3px!important;
  }

  /* "More Brands" keeps the same square rhythm. */
  .cgcr-sn--index .cgcr-sn__make-card--soon,
  .cgcr-sn--index .cgcr-sn__make-image--soon{
    aspect-ratio:1 / 1!important;
  }

  /* More breathing room between editorial sections. */
  .cgcr-sn--index .cgcr-sn__intro,
  .cgcr-sn--index .cgcr-sn__make-section,
  .cgcr-sn--index .cgcr-sn__seo-copy{
    padding-left:0!important;
    padding-right:0!important;
  }
}

/* Very small phones retain a useful gutter without wasting width. */
@media (max-width:390px){
  .cgcr-sn--index > section,
  .cgcr-sn--index .cgcr-sn__hero--index,
  .cgcr-sn--index .cgcr-sn__intro,
  .cgcr-sn--index .cgcr-sn__make-section,
  .cgcr-sn--index .cgcr-sn__seo-copy{
    width:calc(100% - 36px)!important;
    margin-left:18px!important;
    margin-right:18px!important;
  }
}

/* ==========================================================
   v0.5.3 — E-Z-GO lookup form layout
   Desktop: three equal fields on row one; CTA spans the entire
   grid and centers beneath all three fields.
   ========================================================== */
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__lookup-form{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  column-gap:16px!important;
  row-gap:18px!important;
  align-items:end!important;
  width:100%!important;
  max-width:none!important;
}
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__lookup-form > .cgcr-sn__field{
  width:100%!important;
  min-width:0!important;
  margin:0!important;
}
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__lookup-form > button.cgcr-sn__primary-action{
  grid-column:1 / -1!important;
  grid-row:auto!important;
  justify-self:center!important;
  align-self:center!important;
  width:auto!important;
  min-width:220px!important;
  margin:0 auto!important;
}

/* Narrow tablets: preserve comfortable field widths rather than crushing them. */
@media (min-width:768px) and (max-width:900px){
  .cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__lookup-form{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__field--location{
    grid-column:1 / -1!important;
  }
  .cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__lookup-form > button.cgcr-sn__primary-action{
    grid-column:1 / -1!important;
  }
}

/* Mobile: fields stack; CTA remains centered relative to the complete form. */
@media (max-width:767px){
  .cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__lookup-form{
    grid-template-columns:minmax(0,1fr)!important;
    gap:15px!important;
  }
  .cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__field--location{
    grid-column:auto!important;
  }
  .cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__lookup-form > button.cgcr-sn__primary-action{
    grid-column:1!important;
    justify-self:center!important;
    width:auto!important;
    min-width:220px!important;
    max-width:100%!important;
    margin:4px auto 0!important;
  }
}


/* Gold is the normal interactive state; hover reverses to white. */
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__result-help-links a,
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__result-help-links a:link,
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__result-help-links a:visited{
  color:#E3B95F!important;
  font-weight:600!important;
  text-decoration:none!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__result-help-links a:hover,
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__result-help-links a:active{
  color:#FFFFFF!important;
  text-decoration:none!important;
  background:transparent!important;
  box-shadow:none!important;
}
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__contact-separator{
  color:#8FA4B8!important;
}


/* ==========================================================
   v0.5.8 — CANONICAL SERIAL-RESOURCE ASSISTANCE COMPONENT
   One source of truth across desktop, tablet and mobile.
   Do not add breakpoint-specific visual variants for this component.
   ========================================================== */
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__result-help,
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__result-help--simple{
  position:relative!important;
  display:block!important;
  width:100%!important;
  max-width:none!important;
  margin:18px 0 0!important;
  padding:18px 20px!important;
  box-sizing:border-box!important;
  background:#173B63!important;
  border:0!important;
  border-left:3px solid #C89A3D!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:#FFFFFF!important;
}
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__result-help:before,
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__result-help:after{
  content:none!important;
  display:none!important;
}
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__result-help-copy{
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
}
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__result-help-copy>strong{
  display:block!important;
  margin:0 0 5px!important;
  padding:0!important;
  color:#FFFFFF!important;
  font-size:16px!important;
  line-height:1.28!important;
  font-weight:700!important;
  letter-spacing:.025em!important;
  text-transform:uppercase!important;
}
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__result-help-copy>span{
  display:block!important;
  margin:0!important;
  padding:0!important;
  color:#E8EEF4!important;
  font-size:15px!important;
  line-height:1.5!important;
  font-weight:400!important;
}
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__result-help-links{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  width:100%!important;
  margin:11px 0 0!important;
  padding:0!important;
}
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__result-help-links a,
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__result-help-links a:link,
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__result-help-links a:visited{
  display:inline!important;
  width:auto!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:#E3B95F!important;
  font-size:15px!important;
  line-height:1.4!important;
  font-weight:600!important;
  text-decoration:none!important;
  text-transform:none!important;
}
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__result-help-links a:hover,
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__result-help-links a:focus,
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__result-help-links a:active{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  color:#FFFFFF!important;
  text-decoration:none!important;
  transform:none!important;
}
.cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__contact-separator{
  display:inline!important;
  color:#8FA4B8!important;
  font-size:16px!important;
  line-height:1!important;
}

/* Only layout changes on phones; visual treatment remains identical. */
@media(max-width:520px){
  .cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__result-help,
  .cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__result-help--simple{
    padding:16px!important;
  }
  .cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__result-help-links{
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:7px!important;
  }
  .cgcr-sn[data-cgcr-brand="ezgo"] .cgcr-sn__contact-separator{
    display:none!important;
  }
}


/* v0.5.10 — Keep emphasized words inline inside serial-resource notices. */
.cgcr-sn .cgcr-sn__important p strong,
.cgcr-sn .cgcr-sn__notice p strong,
.cgcr-sn .cgcr-sn__content-note p strong,
.cgcr-sn aside p strong{
  display:inline!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  line-height:inherit!important;
  vertical-align:baseline!important;
}
/* v0.6.0 global manufacturer shell + Club Car */
.cgcr-sn--manufacturer-template .cgcr-sn__primary-action{background:#173B63!important;color:#fff!important;border:1px solid #C89A3D!important;border-radius:6px!important;font-weight:500!important;min-height:48px!important;padding:12px 22px!important}
.cgcr-sn--manufacturer-template .cgcr-sn__primary-action:hover{background:#1D4A79!important;color:#fff!important;border-color:#D8AD59!important;box-shadow:0 0 0 2px rgba(200,154,61,.15)!important}
.cgcr-sn[data-cgcr-brand="club-car"] .cgcr-sn__lookup-form--club{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:18px!important;width:100%!important}
.cgcr-sn[data-cgcr-brand="club-car"] .cgcr-sn__lookup-form--club .cgcr-sn__primary-action{justify-self:center!important;width:auto!important;min-width:220px!important}
.cgcr-sn__club-decode-guide{margin-top:54px}.cgcr-sn__club-example-layout{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:34px;align-items:center;margin-top:24px}.cgcr-sn__club-example-image{min-height:220px;display:flex;align-items:center;justify-content:center;background:#fff}.cgcr-sn__club-example-image img{display:block;width:100%;height:100%;max-height:240px;object-fit:contain}.cgcr-sn__club-example-parts{border-top:1px solid #dfe5ea}.cgcr-sn__club-example-parts>div{display:grid;grid-template-columns:100px 1fr 1fr;gap:16px;align-items:center;padding:13px 0;border-bottom:1px solid #dfe5ea}.cgcr-sn__club-example-parts strong{font-size:19px;color:#173B63}.cgcr-sn__club-example-parts span{font-weight:600;color:#2d3d4c}.cgcr-sn__club-example-parts small{font-size:14px;color:#66737f}
.cgcr-sn__prefix-directory{margin-top:58px}.cgcr-sn__prefix-table{margin-top:24px;border-top:2px solid #173B63}.cgcr-sn__prefix-row{display:grid;grid-template-columns:150px minmax(0,1fr);align-items:center;min-height:48px;border-bottom:1px solid #e1e6ea}.cgcr-sn__prefix-row>*{padding:11px 14px}.cgcr-sn__prefix-row strong{color:#173B63;font-weight:700}.cgcr-sn__prefix-row--head{background:#173B63;color:#fff;font-weight:600}.cgcr-sn__prefix-row--head span{color:#fff}.cgcr-sn__prefix-row:not(.cgcr-sn__prefix-row--head):nth-child(odd){background:#f8fafb}.cgcr-sn__prefix-source{margin:14px 0 0!important;font-size:14px!important;color:#66737f!important}
@media(min-width:768px) and (max-width:1024px){.cgcr-sn__club-example-layout{grid-template-columns:minmax(240px,.75fr) minmax(0,1.25fr);gap:26px}.cgcr-sn__club-example-parts>div{grid-template-columns:82px 1fr 1fr;gap:12px}}
@media(max-width:767px){.cgcr-sn__club-example-layout{display:block}.cgcr-sn__club-example-image{min-height:180px;height:200px;margin-bottom:22px}.cgcr-sn__club-example-parts>div{grid-template-columns:76px minmax(0,1fr);gap:8px 12px}.cgcr-sn__club-example-parts small{grid-column:2}.cgcr-sn__prefix-row{grid-template-columns:92px minmax(0,1fr);min-height:52px}.cgcr-sn__prefix-row>*{padding:11px 10px}.cgcr-sn__prefix-directory,.cgcr-sn__club-decode-guide{margin-top:42px}}


/* v0.6.1 — Club Car supplied WebP imagery */
.cgcr-sn[data-cgcr-brand="club-car"] .cgcr-sn__brand-art--club-car{
  width:100%!important;
  height:300px!important;
  min-height:300px!important;
  max-height:300px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  padding:0!important;
  background:transparent!important;
}
.cgcr-sn[data-cgcr-brand="club-car"] .cgcr-sn__brand-art--club-car img.cgcr-sn__club-hero-cart{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
}
.cgcr-sn[data-cgcr-brand="club-car"] .cgcr-sn__location-art--fixed{
  height:260px!important;
  min-height:260px!important;
  max-height:260px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  background:#fff!important;
}
.cgcr-sn[data-cgcr-brand="club-car"] .cgcr-sn__location-art--fixed img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  padding:14px!important;
  box-sizing:border-box!important;
}
@media(min-width:768px) and (max-width:1024px){
  .cgcr-sn[data-cgcr-brand="club-car"] .cgcr-sn__brand-art--club-car{
    height:270px!important;min-height:270px!important;max-height:270px!important;
  }
}
@media(max-width:767px){
  .cgcr-sn[data-cgcr-brand="club-car"] .cgcr-sn__brand-art--club-car{
    height:220px!important;min-height:220px!important;max-height:220px!important;
  }
  .cgcr-sn[data-cgcr-brand="club-car"] .cgcr-sn__location-art--fixed{
    height:230px!important;min-height:230px!important;max-height:230px!important;
  }
}

/* v0.7.0 Yamaha manufacturer page */
.cgcr-sn[data-cgcr-brand="yamaha"] .cgcr-sn__lookup-form--yamaha{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:18px!important;width:100%!important}
.cgcr-sn[data-cgcr-brand="yamaha"] .cgcr-sn__lookup-form--yamaha .cgcr-sn__primary-action{justify-self:center!important;width:auto!important;min-width:220px!important}
.cgcr-sn[data-cgcr-brand="yamaha"] .cgcr-sn__brand-art--yamaha{height:300px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.cgcr-sn[data-cgcr-brand="yamaha"] .cgcr-sn__brand-art--yamaha img{width:100%;height:100%;object-fit:contain}
.cgcr-sn__prefix-table--yamaha .cgcr-sn__prefix-row{grid-template-columns:minmax(170px,.9fr) minmax(180px,1.2fr) 100px}
@media(max-width:767px){
 .cgcr-sn__prefix-table--yamaha{overflow-x:auto;-webkit-overflow-scrolling:touch}
 .cgcr-sn__prefix-table--yamaha .cgcr-sn__prefix-row{grid-template-columns:155px minmax(170px,1fr) 82px;min-width:470px}
 .cgcr-sn[data-cgcr-brand="yamaha"] .cgcr-sn__brand-art--yamaha{height:220px}
}

/* v0.7.1 — Yamaha index and completed location imagery */
.cgcr-sn--index .cgcr-sn__make-card[href*="/golf-cart-serial-number/yamaha/"] .cgcr-sn__make-image img{
  object-fit:contain!important;
  object-position:center center!important;
}

/* v0.7.2 — Yamaha supplied hero WebP */
.cgcr-sn[data-cgcr-brand="yamaha"] .cgcr-sn__brand-art--yamaha{
  width:100%!important;
  height:300px!important;
  min-height:300px!important;
  max-height:300px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  background:transparent!important;
  padding:0!important;
}
.cgcr-sn[data-cgcr-brand="yamaha"] .cgcr-sn__brand-art--yamaha img.cgcr-sn__yamaha-hero-cart{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
}
@media(min-width:768px) and (max-width:1024px){
  .cgcr-sn[data-cgcr-brand="yamaha"] .cgcr-sn__brand-art--yamaha{
    height:270px!important;min-height:270px!important;max-height:270px!important;
  }
}
@media(max-width:767px){
  .cgcr-sn[data-cgcr-brand="yamaha"] .cgcr-sn__brand-art--yamaha{
    height:220px!important;min-height:220px!important;max-height:220px!important;
  }
}


/* ==========================================================
   v0.7.3 — YAMAHA MOBILE-ONLY RESOURCE REFINEMENT
   No desktop/tablet or decoder/data changes.
   ========================================================== */
@media (max-width:767px){

  /* Consistent Yamaha page gutter. */
  .cgcr-sn[data-cgcr-brand="yamaha"]{
    width:100%!important;
    max-width:100%!important;
    padding-left:20px!important;
    padding-right:20px!important;
    box-sizing:border-box!important;
    overflow-x:hidden!important;
  }

  .cgcr-sn[data-cgcr-brand="yamaha"] > *,
  .cgcr-sn[data-cgcr-brand="yamaha"] section,
  .cgcr-sn[data-cgcr-brand="yamaha"] nav{
    max-width:100%!important;
    box-sizing:border-box!important;
  }

  /* Remove the previous horizontally scrolling mobile table. */
  .cgcr-sn[data-cgcr-brand="yamaha"] .cgcr-sn__prefix-table--yamaha{
    width:100%!important;
    max-width:100%!important;
    overflow:visible!important;
    min-width:0!important;
  }

  /* Three columns sized specifically for phone screens. */
  .cgcr-sn[data-cgcr-brand="yamaha"] .cgcr-sn__prefix-table--yamaha .cgcr-sn__prefix-row{
    display:grid!important;
    grid-template-columns:minmax(0,40fr) minmax(0,38fr) minmax(0,22fr)!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:48px!important;
    align-items:center!important;
  }

  .cgcr-sn[data-cgcr-brand="yamaha"] .cgcr-sn__prefix-table--yamaha .cgcr-sn__prefix-row > *{
    min-width:0!important;
    padding:9px 6px!important;
    box-sizing:border-box!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
    white-space:normal!important;
    font-size:13px!important;
    line-height:1.3!important;
  }

  .cgcr-sn[data-cgcr-brand="yamaha"] .cgcr-sn__prefix-table--yamaha .cgcr-sn__prefix-row > strong{
    font-size:12.5px!important;
    letter-spacing:-.01em!important;
  }

  .cgcr-sn[data-cgcr-brand="yamaha"] .cgcr-sn__prefix-table--yamaha .cgcr-sn__prefix-row--head > span{
    font-size:12px!important;
    line-height:1.2!important;
    font-weight:600!important;
  }

  /* Keep the year compact and readable. */
  .cgcr-sn[data-cgcr-brand="yamaha"] .cgcr-sn__prefix-table--yamaha .cgcr-sn__prefix-row > :last-child{
    text-align:center!important;
    overflow-wrap:normal!important;
  }

  /* General mobile breathing room between major Yamaha sections. */
  .cgcr-sn[data-cgcr-brand="yamaha"] .cgcr-sn__content-section,
  .cgcr-sn[data-cgcr-brand="yamaha"] .cgcr-sn__info-band,
  .cgcr-sn[data-cgcr-brand="yamaha"] .cgcr-sn__prefix-directory{
    width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
  }
}

/* Slightly tighter gutter on very small phones while preserving readability. */
@media (max-width:390px){
  .cgcr-sn[data-cgcr-brand="yamaha"]{
    padding-left:16px!important;
    padding-right:16px!important;
  }
  .cgcr-sn[data-cgcr-brand="yamaha"] .cgcr-sn__prefix-table--yamaha .cgcr-sn__prefix-row > *{
    padding-left:5px!important;
    padding-right:5px!important;
    font-size:12.5px!important;
  }
  .cgcr-sn[data-cgcr-brand="yamaha"] .cgcr-sn__prefix-table--yamaha .cgcr-sn__prefix-row--head > span{
    font-size:11.5px!important;
  }
}
/* v0.7.4 index hub; manufacturer cards untouched */
.cgcr-sn--index .cgcr-sn__index-hero{max-width:900px;margin:0 auto;padding:58px 24px 44px;text-align:center}.cgcr-sn--index .cgcr-sn__index-hero:after{content:"";display:block;width:72px;height:2px;margin:30px auto 0;background:#C89A3D}.cgcr-sn--index .cgcr-sn__index-hero h1{margin:0!important;color:#173B63!important;font-size:clamp(38px,5vw,58px)!important;line-height:1.05!important;letter-spacing:-.025em!important}.cgcr-sn--index .cgcr-sn__index-hook{margin:20px auto 0!important;max-width:720px;color:#263746!important;font-size:clamp(19px,2vw,23px)!important;line-height:1.45!important}.cgcr-sn--index .cgcr-sn__index-hook strong{color:#173B63!important;font-weight:600!important}.cgcr-sn--index .cgcr-sn__index-lead{max-width:720px;margin:10px auto 0!important;color:#596774!important;font-size:17px!important;line-height:1.65!important}.cgcr-sn--index .cgcr-sn__section-heading--index{max-width:760px;margin:0 auto 28px;text-align:center}.cgcr-sn--index .cgcr-sn__section-heading--index h2{color:#173B63!important}
.cgcr-sn--index .cgcr-sn__index-editorial{max-width:1040px;margin:70px auto 0;padding:0 24px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:56px}.cgcr-sn--index .cgcr-sn__index-editorial-block{padding-top:22px;border-top:2px solid #C89A3D}.cgcr-sn--index .cgcr-sn__index-editorial-block h2,.cgcr-sn--index .cgcr-sn__index-guides h2{margin:0 0 14px!important;color:#173B63!important;font-size:clamp(25px,2.4vw,32px)!important;line-height:1.18!important}.cgcr-sn--index .cgcr-sn__index-editorial-block p{margin:0 0 13px!important;color:#4D5B68!important;font-size:16.5px!important;line-height:1.72!important}
.cgcr-sn--index .cgcr-sn__index-guides{max-width:1040px;margin:64px auto 0;padding:34px 24px 20px;border-top:1px solid #DEE4E9}.cgcr-sn--index .cgcr-sn__index-guide-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.cgcr-sn--index .cgcr-sn__index-guide-links a{display:block!important;padding:0!important;background:transparent!important;border:0!important;color:#173B63!important;text-decoration:none!important;box-shadow:none!important}.cgcr-sn--index .cgcr-sn__index-guide-links a strong{display:inline!important;color:#173B63!important;font-size:16px!important;font-weight:600!important;border-bottom:1px solid #C89A3D}.cgcr-sn--index .cgcr-sn__index-guide-links a span{display:block!important;margin-top:8px!important;color:#66737F!important;font-size:14.5px!important;line-height:1.55!important}
@media(max-width:767px){.cgcr-sn--index .cgcr-sn__index-hero{width:calc(100% - 40px)!important;margin:0 20px!important;padding:38px 0 30px!important;box-sizing:border-box!important}.cgcr-sn--index .cgcr-sn__index-hero h1{font-size:clamp(32px,10vw,42px)!important}.cgcr-sn--index .cgcr-sn__index-hook{font-size:19px!important}.cgcr-sn--index .cgcr-sn__index-lead{font-size:16px!important}.cgcr-sn--index .cgcr-sn__index-editorial{width:calc(100% - 40px)!important;margin:52px 20px 0!important;padding:0!important;grid-template-columns:1fr!important;gap:38px!important}.cgcr-sn--index .cgcr-sn__index-guides{width:calc(100% - 40px)!important;margin:48px 20px 0!important;padding:28px 0 10px!important}.cgcr-sn--index .cgcr-sn__index-guide-links{grid-template-columns:1fr!important;gap:24px!important}}


/* ==========================================================
   v0.7.5 — INDEX DISPLAY TYPOGRAPHY
   Teko is deliberately limited to major index headings.
   Body copy, cards, tables, forms and manufacturer pages remain unchanged.
   ========================================================== */
@import url('https://fonts.googleapis.com/css2?family=Teko:wght@500;600&display=swap');

.cgcr-sn--index .cgcr-sn__index-hero h1,
.cgcr-sn--index .cgcr-sn__section-heading--index h2,
.cgcr-sn--index .cgcr-sn__index-editorial-block h2,
.cgcr-sn--index .cgcr-sn__index-guides > h2{
  font-family:"Teko",Arial,sans-serif!important;
  font-weight:500!important;
  letter-spacing:.005em!important;
}

/* Preserve title case; Teko supplies the display character without forced uppercase. */
.cgcr-sn--index .cgcr-sn__index-hero h1{
  text-transform:none!important;
  font-size:clamp(52px,6.2vw,72px)!important;
  line-height:.98!important;
}
.cgcr-sn--index .cgcr-sn__section-heading--index h2,
.cgcr-sn--index .cgcr-sn__index-editorial-block h2,
.cgcr-sn--index .cgcr-sn__index-guides > h2{
  text-transform:none!important;
  font-size:clamp(34px,3.4vw,44px)!important;
  line-height:1!important;
}

/* Requested hero copy: question and action occupy separate lines. */
.cgcr-sn--index .cgcr-sn__index-hook > span,
.cgcr-sn--index .cgcr-sn__index-hook > strong{
  display:block!important;
}
.cgcr-sn--index .cgcr-sn__index-hook > strong{
  margin-top:2px!important;
  color:#173B63!important;
  font-weight:600!important;
}

@media(max-width:767px){
  .cgcr-sn--index .cgcr-sn__index-hero h1{
    font-size:clamp(44px,13vw,56px)!important;
    line-height:.98!important;
  }
  .cgcr-sn--index .cgcr-sn__section-heading--index h2,
  .cgcr-sn--index .cgcr-sn__index-editorial-block h2,
  .cgcr-sn--index .cgcr-sn__index-guides > h2{
    font-size:36px!important;
    line-height:1!important;
  }
  .cgcr-sn--index .cgcr-sn__index-hook > strong{
    margin-top:3px!important;
  }
}
