.parking-nav-cta {
  position: relative;
  isolation: isolate;
  justify-content: center;
  border: 1px solid #25689c;
  border-radius: 0;
  background: #25689c;
  color: #fff;
  box-shadow: none;
  transition: background 240ms ease, border-color 240ms ease, box-shadow 240ms ease,
    color 240ms ease, transform 240ms ease;
}

.parking-nav-cta:hover,
.parking-nav-cta:focus-visible {
  border-color: #1e5a84;
  background: #1e5a84;
  color: #fff;
  box-shadow: 0 6px 16px rgba(37, 104, 156, 0.24);
  animation: parking-heartbeat 850ms ease-in-out infinite;
}

.parking-label-short { display: none; }
.parking-label-long { display: inline; }

@keyframes parking-heartbeat {
  0%, 100% { transform: scale(1); }
  18% { transform: scale(1.035); }
  36% { transform: scale(1); }
  52% { transform: scale(1.02); }
}

@media (min-width: 1024px) {
  .parking-nav-cta { padding-inline: 1rem; }
}

@media (max-width: 639px) {
  .parking-nav-cta {
    min-height: 2.5rem;
    padding-inline: 0.65rem;
    font-size: 0.65rem;
    letter-spacing: 0.08em;
  }

  .parking-label-short { display: inline; }
  .parking-label-long { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .parking-nav-cta { transition: none; }
  .parking-nav-cta:hover,
  .parking-nav-cta:focus-visible { animation: none; }
}
