.laliu-booking-form {
  --laliu-gold: #C7A45A !important;
  --laliu-ink: #151515 !important;
  --laliu-muted: #6f6a60 !important;
  --laliu-line: #e7e1d6 !important;
  --laliu-panel: #fbfaf7 !important;
  --laliu-soft: #f4efe5 !important;
  --laliu-danger: #b42318 !important;
  color: var(--laliu-ink) !important;
  display: grid !important;
  gap: 22px !important;
  max-width: 1040px !important;
  margin: 0 auto !important;
  font-family: inherit !important;
}

.laliu-booking-form {
  animation: laliuFormRise .55s cubic-bezier(.2, .85, .25, 1) both !important;
}

.laliu-booking-form *,
.laliu-booking-form *::before,
.laliu-booking-form *::after {
  transition-duration: .28s !important;
  transition-timing-function: cubic-bezier(.2, .85, .25, 1) !important;
}

.laliu-booking-form .laliu-is-hidden {
  display: none !important;
}

.laliu-progress {
  background: #fff !important;
  border: 1px solid var(--laliu-line) !important;
  border-radius: 14px !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 8px !important;
  padding: 10px !important;
  box-shadow: 0 14px 40px rgba(21, 21, 21, 0.06) !important;
  transition: box-shadow .32s cubic-bezier(.2, .85, .25, 1), transform .32s cubic-bezier(.2, .85, .25, 1) !important;
}

.laliu-progress button {
  align-items: center !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 10px !important;
  color: var(--laliu-muted) !important;
  display: flex !important;
  gap: 9px !important;
  justify-content: center !important;
  min-height: 42px !important;
  padding: 8px !important;
  font: inherit !important;
  font-weight: 750 !important;
  position: relative !important;
  transition: background .3s cubic-bezier(.2, .85, .25, 1), color .3s cubic-bezier(.2, .85, .25, 1), transform .3s cubic-bezier(.2, .85, .25, 1) !important;
}

.laliu-progress button:hover {
  transform: translateY(-1px) !important;
}

.laliu-progress span {
  align-items: center !important;
  background: var(--laliu-soft) !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  height: 26px !important;
  justify-content: center !important;
  width: 26px !important;
  transition: background .3s cubic-bezier(.2, .85, .25, 1), color .3s cubic-bezier(.2, .85, .25, 1), transform .3s cubic-bezier(.2, .85, .25, 1) !important;
}

.laliu-progress button.is-active,
.laliu-progress button.is-complete {
  color: var(--laliu-ink) !important;
}

.laliu-progress button.is-active {
  background: var(--laliu-soft) !important;
}

.laliu-progress button.is-active span,
.laliu-progress button.is-complete span {
  background: var(--laliu-gold) !important;
  color: #fff !important;
  transform: scale(1.05) !important;
}

.laliu-wizard-shell,
.laliu-price-panel {
  background: #fff !important;
  border: 1px solid var(--laliu-line) !important;
  border-radius: 16px !important;
  box-shadow: 0 18px 48px rgba(21, 21, 21, 0.07) !important;
  transition: box-shadow .36s cubic-bezier(.2, .85, .25, 1), transform .36s cubic-bezier(.2, .85, .25, 1) !important;
}

.laliu-step {
  display: none !important;
  opacity: 0 !important;
  padding: clamp(22px, 4vw, 38px) !important;
  transform: translateY(14px) scale(.985) !important;
}

.laliu-step.is-active {
  display: grid !important;
  gap: 22px !important;
  opacity: 1 !important;
  transform: translateY(0) scale(1) !important;
}

.laliu-step.is-active.is-entering {
  animation: laliuStepIn .48s cubic-bezier(.2, .85, .25, 1) both !important;
}

.laliu-step-heading span {
  color: var(--laliu-gold) !important;
  display: block !important;
  font-size: 12px !important;
  font-weight: 850 !important;
  letter-spacing: 0 !important;
  text-transform: uppercase !important;
}

.laliu-step-heading h3 {
  font-size: clamp(25px, 4vw, 38px) !important;
  line-height: 1.12 !important;
  margin: 4px 0 0 !important;
}

.laliu-form-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px !important;
}

.laliu-booking-form label {
  display: grid !important;
  gap: 7px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}

.laliu-booking-form input,
.laliu-booking-form select,
.laliu-booking-form textarea {
  width: 100% !important;
  min-height: 48px !important;
  border: 1px solid var(--laliu-line) !important;
  border-radius: 10px !important;
  color: var(--laliu-ink) !important;
  background: #fff !important;
  padding: 11px 13px !important;
  font: inherit !important;
  box-sizing: border-box !important;
  transition: border-color .24s cubic-bezier(.2, .85, .25, 1), box-shadow .24s cubic-bezier(.2, .85, .25, 1), transform .24s cubic-bezier(.2, .85, .25, 1), background .24s cubic-bezier(.2, .85, .25, 1) !important;
}

.laliu-booking-form input:hover,
.laliu-booking-form select:hover,
.laliu-booking-form textarea:hover {
  border-color: rgba(199, 164, 90, .62) !important;
  transform: translateY(-1px) !important;
}

.laliu-booking-form input::placeholder,
.laliu-booking-form textarea::placeholder {
  font-weight: 400 !important;
  color: var(--laliu-muted) !important;
  opacity: 0.75 !important;
}

.laliu-booking-form textarea {
  resize: vertical !important;
}

.laliu-booking-form input:focus,
.laliu-booking-form textarea:focus {
  border-color: var(--laliu-gold) !important;
  box-shadow: 0 0 0 4px rgba(199, 164, 90, 0.18) !important;
  outline: none !important;
  transform: translateY(-1px) !important;
}

.laliu-wide {
  grid-column: 1 / -1 !important;
}

.laliu-card-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 14px !important;
}

.laliu-choice-card {
  background: var(--laliu-panel) !important;
  border: 1px solid var(--laliu-line) !important;
  border-radius: 14px !important;
  color: var(--laliu-ink) !important;
  cursor: pointer !important;
  display: grid !important;
  gap: 8px !important;
  padding: 18px !important;
  text-align: left !important;
  overflow: hidden !important;
  position: relative !important;
  transition: border-color .3s cubic-bezier(.2, .85, .25, 1), box-shadow .3s cubic-bezier(.2, .85, .25, 1), transform .3s cubic-bezier(.2, .85, .25, 1), background .3s cubic-bezier(.2, .85, .25, 1) !important;
}

.laliu-choice-card::after {
  background: linear-gradient(135deg, rgba(199, 164, 90, .16), rgba(199, 164, 90, 0)) !important;
  content: "" !important;
  inset: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
  position: absolute !important;
  transition: opacity .3s cubic-bezier(.2, .85, .25, 1) !important;
}

button.laliu-choice-card {
  font: inherit !important;
}

.laliu-choice-card strong {
  font-size: 18px !important;
}

.laliu-choice-card span {
  color: var(--laliu-muted) !important;
  font-size: 14px !important;
}

.laliu-choice-card input {
  min-height: auto !important;
  width: auto !important;
}

.laliu-choice-card:hover,
.laliu-choice-card.is-selected,
.laliu-choice-card:has(input:checked) {
  border-color: var(--laliu-gold) !important;
  box-shadow: 0 18px 42px rgba(199, 164, 90, 0.2) !important;
  transform: translateY(-3px) !important;
}

.laliu-choice-card:hover::after,
.laliu-choice-card.is-selected::after,
.laliu-choice-card:has(input:checked)::after {
  opacity: 1 !important;
}

.laliu-vehicle-message {
  color: #93640d !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  min-height: 22px !important;
}

.laliu-vehicle-message.is-warning {
  background: #fff7e6 !important;
  border: 1px solid #efd393 !important;
  border-radius: 10px !important;
  padding: 12px 14px !important;
  animation: laliuSoftPulse .42s cubic-bezier(.2, .85, .25, 1) both !important;
}

.laliu-tip-row {
  align-items: center !important;
  background: var(--laliu-panel) !important;
  border: 1px solid var(--laliu-line) !important;
  border-radius: 14px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 14px 18px !important;
  padding: 16px !important;
  transition: border-color .3s cubic-bezier(.2, .85, .25, 1), box-shadow .3s cubic-bezier(.2, .85, .25, 1), background .3s cubic-bezier(.2, .85, .25, 1) !important;
}

.laliu-tip-row:hover {
  border-color: rgba(199, 164, 90, .55) !important;
  box-shadow: 0 14px 34px rgba(21, 21, 21, .05) !important;
}

.laliu-tip-row > span {
  color: var(--laliu-muted) !important;
  font-size: 13px !important;
  font-weight: 850 !important;
  text-transform: uppercase !important;
}

.laliu-tip-row label {
  align-items: center !important;
  display: flex !important;
  gap: 8px !important;
}

.laliu-tip-row input[type="radio"] {
  min-height: auto !important;
  width: auto !important;
}

.laliu-tip-row input[name="custom_tip"] {
  max-width: 132px !important;
}

.laliu-tip-row input[name="custom_tip"][hidden] {
  display: none !important;
}

.laliu-review-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 360px !important;
  gap: 18px !important;
}

.laliu-review-summary {
  background: var(--laliu-panel) !important;
  border: 1px solid var(--laliu-line) !important;
  border-radius: 14px !important;
  display: grid !important;
  overflow: hidden !important;
}

.laliu-review-summary div,
.laliu-price-breakdown li {
  border-bottom: 1px solid var(--laliu-line) !important;
  display: flex !important;
  gap: 14px !important;
  justify-content: space-between !important;
  padding: 13px 15px !important;
  animation: laliuRowIn .32s cubic-bezier(.2, .85, .25, 1) both !important;
}

.laliu-review-summary div:last-child,
.laliu-price-breakdown li:last-child {
  border-bottom: 0 !important;
}

.laliu-review-summary span,
.laliu-price-breakdown span {
  color: var(--laliu-muted) !important;
}

.laliu-price-panel {
  align-self: start !important;
  padding: 20px !important;
}

.laliu-price-panel > div {
  align-items: baseline !important;
  display: flex !important;
  justify-content: space-between !important;
  gap: 16px !important;
}

.laliu-price-total {
  color: var(--laliu-gold) !important;
  font-size: clamp(30px, 4vw, 46px) !important;
  font-weight: 850 !important;
  transition: color .3s cubic-bezier(.2, .85, .25, 1), transform .3s cubic-bezier(.2, .85, .25, 1) !important;
}

.laliu-price-message {
  color: var(--laliu-muted) !important;
  margin: 8px 0 0 !important;
}

.laliu-price-message.is-warning,
.laliu-price-breakdown .is-warning {
  color: #93640d !important;
}

.laliu-price-breakdown {
  display: grid !important;
  list-style: none !important;
  margin: 15px 0 0 !important;
  padding: 0 !important;
}

.laliu-wizard-actions {
  display: flex !important;
  gap: 12px !important;
  justify-content: flex-end !important;
}

.laliu-next-button,
.laliu-submit-button,
.laliu-secondary-button {
  align-items: center !important;
  border-radius: 999px !important;
  cursor: pointer !important;
  display: inline-flex !important;
  font: inherit !important;
  font-weight: 800 !important;
  justify-content: center !important;
  min-height: 50px !important;
  padding: 0 24px !important;
  position: relative !important;
  transition: background .28s cubic-bezier(.2, .85, .25, 1), border-color .28s cubic-bezier(.2, .85, .25, 1), box-shadow .28s cubic-bezier(.2, .85, .25, 1), color .28s cubic-bezier(.2, .85, .25, 1), opacity .28s cubic-bezier(.2, .85, .25, 1), transform .28s cubic-bezier(.2, .85, .25, 1) !important;
}

.laliu-next-button:hover,
.laliu-submit-button:hover,
.laliu-secondary-button:hover {
  box-shadow: 0 14px 30px rgba(199, 164, 90, .22) !important;
  transform: translateY(-2px) !important;
}

.laliu-next-button:active,
.laliu-submit-button:active,
.laliu-secondary-button:active {
  box-shadow: 0 8px 18px rgba(199, 164, 90, .18) !important;
  transform: translateY(0) scale(.98) !important;
}

.laliu-next-button,
.laliu-submit-button {
  background: var(--laliu-gold) !important;
  border: 1px solid var(--laliu-gold) !important;
  color: #fff !important;
}

.laliu-secondary-button {
  background: #fff !important;
  border: 1px solid var(--laliu-line) !important;
  color: var(--laliu-ink) !important;
}

.laliu-submit-button:disabled {
  cursor: wait !important;
  opacity: 0.65 !important;
}

.laliu-form-status {
  font-weight: 750 !important;
  min-height: 24px !important;
}

.laliu-form-status.is-error {
  color: var(--laliu-danger) !important;
}

.laliu-form-status.is-success {
  color: #267055 !important;
}

.laliu-booking-form.is-calculating .laliu-price-panel {
  opacity: 0.68 !important;
  transform: translateY(1px) !important;
}

.laliu-booking-form.is-submitting .laliu-submit-button {
  animation: laliuButtonWait 1s ease-in-out infinite !important;
}

@keyframes laliuFormRise {
  from {
    opacity: 0 !important;
    transform: translateY(18px) !important;
  }
  to {
    opacity: 1 !important;
    transform: translateY(0) !important;
  }
}

@keyframes laliuStepIn {
  from {
    opacity: 0 !important;
    transform: translateY(16px) scale(.985) !important;
  }
  to {
    opacity: 1 !important;
    transform: translateY(0) scale(1) !important;
  }
}

@keyframes laliuRowIn {
  from {
    opacity: 0 !important;
    transform: translateY(8px) !important;
  }
  to {
    opacity: 1 !important;
    transform: translateY(0) !important;
  }
}

@keyframes laliuSoftPulse {
  0% {
    opacity: 0 !important;
    transform: translateY(-4px) !important;
  }
  100% {
    opacity: 1 !important;
    transform: translateY(0) !important;
  }
}

@keyframes laliuButtonWait {
  0%, 100% {
    filter: brightness(1) !important;
  }
  50% {
    filter: brightness(1.08) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .laliu-booking-form,
  .laliu-booking-form *,
  .laliu-booking-form *::before,
  .laliu-booking-form *::after {
    animation: none !important;
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }
}

@media (max-width: 820px) {
  .laliu-booking-form {
    box-sizing: border-box !important;
    margin: 0 auto !important;
    width: calc(100% - 28px) !important;
  }

  .laliu-progress {
    gap: 6px !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    padding: 8px !important;
  }

  .laliu-progress button {
    font-size: 0 !important;
    min-width: 0 !important;
    padding: 8px 4px !important;
  }

  .laliu-progress span {
    font-size: 13px !important;
    height: 28px !important;
    margin: 0 auto !important;
    width: 28px !important;
  }

  .laliu-form-grid,
  .laliu-card-grid,
  .laliu-review-grid {
    grid-template-columns: 1fr !important;
  }

  .laliu-wizard-actions {
    flex-direction: column-reverse !important;
  }

  .laliu-next-button,
  .laliu-submit-button,
  .laliu-secondary-button {
    width: 100% !important;
  }
}
