#homes-map-heading {
  @apply -mb-[25px];
}

.overview-map .tabs-container {
  @apply bg-gradient-green-alt;
}

.homes-map .heading-transition {
  @apply !pt-14 !bg-gradient-green-alt;
}

.gm-style-iw button[aria-label="Close"] > span:nth-of-type(1) {
  background: white;
  position: relative;
  top: -8px;
  left: -8px;
}

.gm-style-iw button[aria-label="Close"] > span:nth-of-type(2) {
  display: none !important;
}

.gm-style .gm-style-iw-tc::after {
  @apply !bg-brand-coral;
}

.gm-style-iw.gm-style-iw-c,
.gm-style .gm-style-iw-c {
  max-width: 288px !important;
  padding: 0 !important;
  box-shadow: 0 2px 7px 1px rgba(0, 0, 0, 0.3) !important;
  border-radius: 0 !important;
  margin: 0 !important;
}

#homes-map .gm-style-iw.gm-style-iw-c,
#homes-map .gm-style .gm-style-iw-c {
  max-width: 288px !important;
  padding: 0 !important;
  border-radius: 0 !important;
}

.gm-style-iw.gm-style-iw-c + div {
  display: none !important;
}

.gm-style-iw.gm-style-iw-c > div {
  padding: 0 !important;
  margin: 0 !important;
}

.gm-style-iw.gm-style-iw-c > div > div {
  padding: 0 !important;
  margin: 0 !important;
}

#homes-map .gm-style-iw .gm-style-iw-d[style],
#homes-map .gm-style-iw[style] .gm-style-iw-d[style],
.homes-map .gm-style-iw .gm-style-iw-d[style],
.homes-map .gm-style-iw[style] .gm-style-iw-d[style],
.infowindow-content.infowindow-qmi-homes ~ .gm-style-iw-d[style] {
  overflow: hidden !important;
  max-height: none !important;
  scrollbar-width: none !important; /* Firefox */
}

.infowindow-content.infowindow-qmi-homes {
  @apply w-[288px] text-gray-800;
  max-width: 288px !important;
  margin: 0 !important;
  padding: 0 !important;
  position: relative !important;
}

.infowindow-content img {
  @apply w-full h-[184px] object-cover;
  margin: 0 !important;
  padding: 0 !important;
  display: block;
}

.infowindow-content .title {
  @apply font-figtree text-2xl font-bold text-center mb-3 px-3;
  padding-top: 16px !important;
}

.infowindow-content.infowindow-qmi-homes .title {
  @apply mb-0;
}

.infowindow-content .subtitle {
  @apply text-base text-gray-500 font-figtree text-center mb-4 px-3;
}

.infowindow-content .plan {
  @apply font-figtree text-sm font-medium text-[#333] text-center uppercase px-3 mb-3;
}

.infowindow-content .details {
  @apply flex justify-evenly mb-3 px-3;
}

.infowindow-content .details div span {
  @apply block first:text-[22px] last:text-xs last:font-bold text-center font-figtree;
}

.infowindow-content .directions-link {
  @apply block text-bc-dark-blue font-figtree text-base underline text-center flex justify-center gap-1 items-center font-medium mb-4 px-3;
}

.infowindow-content .directions-link::before {
  @apply content-[''] bg-bc-dark-blue bg-no-repeat bg-center bg-[length:8px_8px] w-4 h-4 block rounded;
  background-image: var(--arrow-up-right);
  clip-path: polygon(
    45% 2%,
    50% 1%,
    55% 2%,
    98% 45%,
    99% 50%,
    98% 55%,
    55% 98%,
    50% 99%,
    45% 98%,
    2% 55%,
    1% 50%,
    2% 45%
  );
}

.infowindow-content .explore-button {
  @apply bg-brand-coral block text-center text-white font-figtree font-medium text-lg py-[11px] after:content-['\00bb'] after:ml-1;
  padding-left: 12px !important;
  padding-right: 12px !important;
}

.selected-item {
  @apply outline outline-4 outline-fr-brown-med;
}

.tab-item p {
  @apply !mb-0;
}

.tab-item a,
.tab-content footer a {
  @apply !no-underline;
}

.headlessui-listbox-options {
  display: none;
}

.headlessui-listbox-options[data-headlessui-state="open"] {
  display: block;
  z-index: 1000;
}

/* Map Loading Overlay Styles */
#map-loading-overlay {
  backdrop-filter: blur(2px);
  transition: opacity 0.3s ease-in-out;
}

#map-loading-overlay .animate-spin {
  border-color: #25568e transparent #19243b transparent;
  animation: spinner 1.5s linear infinite;
}

@keyframes spinner {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
