.map {
  display: block !important;
  position: relative;
  height: 230px;
  margin-top: 28px;
  overflow: hidden;
  border: 1px solid #3c443b;
  background: #222;
}
.map iframe { width: 100%; height: 100%; border: 0; pointer-events: none; filter: grayscale(1) contrast(1.05); }
.map span { position: absolute; right: 10px; bottom: 10px; padding: 8px 12px; background: #090b0a; color: #ff6500; font-size: .7rem; letter-spacing: .06em; text-transform: uppercase; }
.location .loc-actions { margin-top: 18px; }
.location .loc-actions .review { width: 100%; border-color: #5a6258; color: #fff; }
.location .loc-actions .review:hover { border-color: #ff6500; color: #ff6500; }
.google-app-icon { display: inline-grid; place-items: center; width: 34px; height: 34px; flex: 0 0 34px; border-radius: 9px; background: #fff; box-shadow: 0 2px 8px rgba(0,0,0,.28); font-size: 0; }
.google-app-icon::before { content: "G"; font-family: Arial, sans-serif; font-size: 1.35rem; font-weight: 900; line-height: 1; letter-spacing: -.08em; background: conic-gradient(from -35deg,#4285f4 0 28%,#34a853 28% 43%,#fbbc05 43% 63%,#ea4335 63% 80%,#4285f4 80%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.brand-image { display: block; width: 250px; height: 64px; overflow: visible; background: transparent; }
.brand-image img { display: block; width: 100%; height: 100%; object-fit: contain; }
.hero-legacy { margin: 22px 0 0; color: #ff6500; font-family: "Space Grotesk", sans-serif; font-size: clamp(1.25rem, 2vw, 1.75rem); font-weight: 600; letter-spacing: -.02em; }
.passport-deal .no-appointment { margin: 0 0 24px; font-size: 1.08rem; font-weight: 700; line-height: 1.4; }
.facebook-float { position: fixed; right: 22px; bottom: 22px; z-index: 30; display: flex; align-items: center; gap: 10px; padding: 7px 14px 7px 7px; border-radius: 14px; background: #1877f2; color: #fff; box-shadow: 0 10px 30px rgba(0,0,0,.34); font-size: .78rem; font-weight: 800; letter-spacing: .03em; }
.facebook-float span { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 10px; background: #fff; color: #1877f2; font-family: Arial, sans-serif; font-size: 2rem; font-weight: 900; line-height: 1; padding-top: 7px; }
.facebook-float:hover { transform: translateY(-2px); box-shadow: 0 14px 36px rgba(24,119,242,.34); }
.passport .photo-frame { padding: 14px 14px 52px; }
.passport .photo-frame::before { display: none; }
.passport .photo-frame img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 35%; }
.passport .photo-frame span { bottom: 15px; line-height: 1; color: #090b0a; }
.photo-showcase { align-self: start; }
.photo-caption { margin: 34px 0 0; color: #090b0a; font-family: "Space Grotesk", sans-serif; font-size: clamp(1.25rem, 2vw, 1.65rem); font-weight: 700; line-height: 1.28; letter-spacing: -.025em; }
.deal-image { width: 100%; height: 125px; margin: 20px 0 16px; overflow: hidden; border: 1px solid rgba(255,255,255,.15); background: #fff; }
.deal-image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.deal-image.logo-image { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 8px 12px; }
.deal-image.logo-image img { width: 100%; height: 78px; object-fit: contain; padding: 0; }
.dealer-label { color: #5e2e97; font-size: .72rem; font-weight: 900; letter-spacing: .11em; line-height: 1; text-transform: uppercase; }
.deal.featured .deal-image { border-color: rgba(0,0,0,.15); }
.deal.featured { background: #121512; color: #f7f9f5; }
.deal.featured .deal-image { border-color: rgba(255,255,255,.15); }
.deal-image.phone-image img { object-fit: contain; padding: 4px; }
.deal-image.passport-fast-image img { object-fit: cover; object-position: center 34%; }
.passport-deal .deal-image + h3 { margin-top: 0; }
@media (max-width: 600px) {
  .brand-image { width: 192px; height: 49px; }
  .facebook-float { right: 14px; bottom: 14px; padding-right: 7px; }
  .facebook-float b { display: none; }
  .hero { display: block; min-height: 0; padding-top: 255px; background: #090b0a; }
  .hero > img { top: 0; bottom: auto; height: 255px; object-fit: cover; object-position: 76% 52%; border-bottom: 1px solid #343a34; }
  .hero-shade { top: 0; bottom: auto; height: 255px; background: linear-gradient(180deg,rgba(9,11,10,.02),rgba(9,11,10,.3)); }
  .hero-inner { padding-top: 52px; padding-bottom: 72px; background: #090b0a; }
}
