/* Request a quote — layout polish (theme already provides .step / .bed-option) */

/* Space above footer */
.page-request-quote .tg-contact-area {
  padding-bottom: clamp(3.75rem, 6vw, 6.25rem);
}

.page-request-quote .tg-contact-area .tg-contact-title {
  font-size: clamp(1.35rem, 2.5vw, 2rem);
  line-height: 1.25;
  text-transform: capitalize;
}

.page-request-quote #inline-calendar .flatpickr-calendar {
  margin-left: 0;
  box-shadow: none;
  border: 1px solid #e8e8e8;
  border-radius: 12px;
}

.page-request-quote .rq-form-card {
  border-radius: 12px;
  border: 1px solid #e8e8e8;
  box-shadow: 0 12px 40px rgba(21, 25, 35, 0.06);
}

.page-request-quote #rq-step-msg {
  min-height: 1.25rem;
}

.page-request-quote .rq-thank-panel {
  border-radius: 12px;
}

.page-request-quote .rq-thank-icon {
  color: #560ce3;
}

/* Step 1: date + duration + destination expert CTA */
.page-request-quote .rq-step1-title {
  letter-spacing: 0.02em;
}

@media (min-width: 992px) {
  .page-request-quote .rq-step1-grid > .rq-step1-col:nth-child(1),
  .page-request-quote .rq-step1-grid > .rq-step1-col:nth-child(2) {
    border-right: 1px solid rgba(21, 25, 35, 0.08);
    padding-right: 1.25rem;
  }
}

@media (max-width: 991.98px) {
  .page-request-quote .rq-step1-grid > .rq-step1-col:nth-child(1),
  .page-request-quote .rq-step1-grid > .rq-step1-col:nth-child(2) {
    border-right: none;
    padding-right: calc(var(--bs-gutter-x, 0.75rem) * 0.5);
  }
  .page-request-quote .rq-expert-call {
    padding-top: 1rem;
    border-top: 1px solid rgba(21, 25, 35, 0.08);
  }
}

.page-request-quote .rq-expert-call {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  font-family: var(--tg-ff-body);
}

.page-request-quote .rq-expert-call__label {
  display: block;
  margin-bottom: 0.65rem;
}

.page-request-quote .rq-expert-call__link {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-family: inherit;
  font-size: 1rem;
  font-weight: 500;
  color: #b08d57;
  text-decoration: none;
  transition: color 0.15s ease, opacity 0.15s ease;
}

.page-request-quote .rq-expert-call__link:hover {
  color: #95743f;
}

.page-request-quote .rq-expert-call__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.page-request-quote .rq-expert-call__icon svg {
  display: block;
}

/* Room 1 — bedding preference */
.page-request-quote .rq-room-title {
  margin: 0;
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--tg-common-black, #020615);
  padding-bottom: 0.75rem;
  border-bottom: 1px solid #e8e8e8;
}

.page-request-quote .rq-bedding-block .form-label {
  margin-bottom: 0.65rem;
}

.page-request-quote .rq-bed-options {
  display: flex;
  gap: 0.75rem;
  flex-wrap: wrap;
}

.page-request-quote .rq-bed-options .bed-option {
  flex: 1 1 calc(50% - 0.4rem);
  width: auto;
  min-width: 0;
  max-width: none;
  margin-right: 0;
  justify-content: center;
  border-radius: 10px;
  border-color: #d1d5db;
  background: #fff;
}

.page-request-quote .rq-bed-options .bed-option.active {
  border-color: #0d6efd;
  background-color: #eaf1ff;
}

.page-request-quote .rq-bed-options .bed-option span {
  font-family: inherit;
  font-weight: 600;
}

.page-request-quote .rq-tickets-block {
  padding-top: 0.25rem;
}
