/* =============== Booking CTA section start =============== */
.booking-cta-section {
  padding: 48px 0 64px;
  margin-bottom: 100px;
  color: var(--Neutral-350);
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1440' height='512' viewBox='0 0 1440 512' fill='none'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M-161.807 824.334C-67.5235 487.711 393.831 487.643 889.278 805.536C1579.43 1248.36 1204.16 133.838 1860.27 685.078L2046.64 544.947C861.632 -777.201 1485.69 788.666 688.61 277.238C91.5718 -105.84 -455.96 -27.1916 -371.301 545.714L-161.807 824.334Z' fill='%235F9392' fill-opacity='0.09'/%3E%3C/svg%3E") center center / cover no-repeat, var(--Primary-teal);
}

.booking-cta-label {
  margin: 0 0 16px;
  font-family: Montserrat, sans-serif;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%; /* 21px */
  text-align: center;
}

.booking-cta-section .section-title {
  margin: 0 0 16px;
  font-size: 42px;
  line-height: 1.4;
  color: var(--Neutral-350);
}

.booking-cta-description {
  max-width: 570px;
  margin: 0 auto;
  font-family: Montserrat, sans-serif;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 162%; /* 22.68px */
  text-align: center;
}

.booking-cta-content {
  display: grid;
  grid-template-columns: 0.47fr 1fr;
  gap: 32px;
  width: 100%;
  max-width: 1056px;
  margin: 40px auto;
}

.booking-cta-price-wrapper,
.boooking-cta-package {
  padding: 16px;
  background-color: #458684;
  border: 1px solid #668583;
  border-radius: 16px;
}

.booking-cta-price-title,
.booking-cta-package-title {
  margin: 0;
  font-family: Montserrat, sans-serif;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%; /* 21px */
  color: #5BD1C3;
  text-transform: uppercase;
  letter-spacing: 0.28px;
}

.booking-cta-price-content {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: stretch;
  margin: 4px 0 0;
}

.booking-cta-price {
  margin: 0;
  font-family: Montserrat, sans-serif;
  font-size: 28px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%; /* 42px */
  letter-spacing: 0.56px;
}

.booking-cta-duration {
  margin: 0 0 16px;
  font-family: Montserrat, sans-serif;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 162%; /* 22.68px */
}

.booking-cta-package-include-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 8px 42px;
  padding: 0 0 0 24px;
  margin: 16px 0 0;
}

.booking-cta-package-include-item-text {
  margin: 0;
  font-family: Montserrat, sans-serif;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%; /* 21px */
}

.booking-cta-button-wrapper {
  display: flex;
  justify-content: center;
}

.booking-cta-button {
  min-width: 200px;
  color: var(--Primary-teal) !important;
  background: var(--Neutral-350) !important;
  border-radius: 34px;
}

@media screen and (max-width: 1360px) {
  .booking-cta-section .section-title {
    font-size: clamp(28px, 18.2px + 1.75vw, 42px);
    line-height: 1.4;
  }
}

@media screen and (max-width: 768px) {
  .booking-cta-section {
    margin-bottom: 50px;
  }

  .booking-cta-content {
    grid-template-rows: auto auto;
    grid-template-columns: 1fr;
    gap: 12px;
    margin: 32px auto;
  }

  .booking-cta-duration {
    margin: 0;
  }

  .booking-cta-price-content {
    gap: 16px;
  }
}

@media screen and (max-width: 560px) {
  .booking-cta-section .section-title {
    max-width: 330px;
    margin: 0 auto 8px;
    font-size: 28px;
    line-height: 1.4;
    text-align: center;
  }

  .booking-cta-description {
    font-size: 16px;
    line-height: 1.5;
  }

  .booking-cta-package-include-list {
    grid-template-columns: 1fr;
    grid-auto-flow: row;
    gap: 8px;
  }
}

/* =============== Booking CTA section end =============== */
