/* World-class search bar polish */

/* Hero / card search shell */
form.glass-strong.rounded-\[1\.35rem\],
form.card.rounded-3xl,
form.relative.glass-strong,
.glass-strong {
  backdrop-filter: blur(18px) saturate(1.2);
}

/* Tighten the search grid rhythm */
form.relative .grid.gap-3 {
  gap: 0.65rem !important;
  align-items: end;
}

@media (min-width: 1024px) {
  form.relative .grid.lg\:grid-cols-4 {
    grid-template-columns: 1.1fr 1.2fr 1.6fr !important;
  }
  /* Trip dates spans remaining space after destination + branch */
  form.relative .rdp-field.rdp-span-2 {
    grid-column: span 1 / span 1 !important;
  }
}

/* Field labels */
form.relative .text-\[11px\].font-semibold.uppercase {
  letter-spacing: 0.07em !important;
  font-size: 0.62rem !important;
  font-weight: 700 !important;
  color: #6b7280 !important;
  margin-bottom: 0.15rem;
}

/* Destination / branch triggers — equal height, quieter chrome */
form.relative button[type="button"].w-full,
form.relative .rounded-2xl.border.border-line {
  min-height: 3rem !important;
  border-radius: 0.95rem !important;
  border-color: #e8eaee !important;
  box-shadow: none !important;
  background: #fff !important;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

form.relative button[type="button"].w-full:hover,
form.relative .rounded-2xl.border.border-line:focus-within {
  border-color: #c7d2fe !important;
  box-shadow: 0 0 0 3px rgba(19, 42, 142, 0.08) !important;
}

/* Compact trip dates control */
.rdp-field__btn {
  min-height: 3rem !important;
  padding: 0.45rem 0.75rem !important;
  border-radius: 0.95rem !important;
  border-color: #e8eaee !important;
  background: #fff !important;
  gap: 0.55rem !important;
}

.rdp-field__icon {
  width: 1.85rem !important;
  height: 1.85rem !important;
  border-radius: 0.65rem !important;
  box-shadow: 0 4px 10px rgba(19, 42, 142, 0.18) !important;
}

.rdp-field__primary {
  font-size: 0.84rem !important;
  font-weight: 700 !important;
  letter-spacing: -0.015em !important;
}

.rdp-field__secondary {
  font-size: 0.68rem !important;
  font-weight: 500 !important;
  color: #9ca3af !important;
}

.rdp-field__chip {
  font-size: 0.62rem !important;
  padding: 0.22rem 0.45rem !important;
  background: #fff7ed !important;
}

.rdp-field__label {
  font-size: 0.62rem !important;
}

/* Promo + locate row */
form.relative .mt-3.flex {
  margin-top: 0.75rem !important;
  gap: 0.55rem !important;
}

form.relative button[title="Find the nearest branch"] {
  min-width: 2.85rem;
  justify-content: center;
  border-radius: 0.95rem !important;
  background: #fff !important;
}

form.relative button[title="Find the nearest branch"] span {
  display: inline !important;
}

@media (max-width: 640px) {
  form.relative button[title="Find the nearest branch"] span {
    display: none !important;
  }

  .rdp-field__primary {
    font-size: 0.8rem !important;
  }

  form.glass-strong,
  form.card {
    padding: 0.85rem !important;
    border-radius: 1.15rem !important;
  }
}

/* Sticky compact search summary on mobile home */
.rdp-field.rdp-span-2 {
  min-width: 0;
}

/* Search submit — keep accent but calmer height */
form.relative button[type="submit"] {
  border-radius: 0.95rem !important;
  min-height: 3rem;
  font-weight: 800 !important;
  letter-spacing: -0.01em;
}
