.lux-hero > .container { position: relative; display: flex; flex-direction: column; align-items: stretch; }
.lux-hero .hero-content { order: 2; padding: 64px 0 120px; }
.hero-booking-panel { position: relative; z-index: 4; order: 1; width: 100%; margin-top: 82px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; align-items: end; padding: 20px 22px; color: #122a43; background: rgb(255 255 255 / 96%); border: 1px solid rgb(197 157 79 / 58%); border-radius: 4px; box-shadow: 0 24px 60px rgb(2 13 26 / 35%); backdrop-filter: blur(14px); }
.hero-form-title { align-self: center; padding-right: 6px; border-right: 1px solid rgb(18 42 67 / 14%); }
.hero-form-title small, .hero-form-title strong { display: block; }
.hero-form-title small { margin-bottom: 3px; color: #9b6e22; font-size: .68rem; font-weight: 700; letter-spacing: .15em; text-transform: uppercase; }
.hero-form-title strong { font-family: Georgia, "Times New Roman", serif; font-size: 1.2rem; font-weight: 500; }
.hero-booking-panel label { display: grid; gap: 7px; color: #3d4d5d; font-size: .7rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.hero-booking-panel input, .hero-booking-panel select { width: 100%; min-width: 0; height: 48px; padding: 0 13px; color: #122a43; background: #f8f5ee; border: 1px solid #d8d1c4; border-radius: 2px; font-family: inherit; font-size: .86rem; font-weight: 500; line-height: 1.2; letter-spacing: normal; text-transform: none; }
.hero-booking-panel input:focus, .hero-booking-panel select:focus { outline: 2px solid #bd8d35; outline-offset: 2px; border-color: #bd8d35; }
.hero-booking-panel .btn { min-height: 48px; white-space: nowrap; }
.hero-form-status { grid-column: 1 / -1; min-height: 0; margin: -4px 0 0; color: #5c6670; font-size: .78rem; }
.home-page .whatsapp-float { display: none; }
@media (width <= 1080px) {
  .hero-booking-panel { grid-template-columns: 1fr 1fr 1fr; }
  .hero-form-title { grid-column: 1 / -1; padding-right: 0; border-right: 0; }
  .lux-hero .hero-content { padding-bottom: 100px; }
}
@media (width <= 800px) {
  .lux-hero > .container { padding-bottom: 0; }
  .lux-hero .hero-content { padding: 45px 0 78px; }
  .hero-booking-panel { width: 100%; margin-top: 42px; grid-template-columns: 1fr 1fr; padding: 20px; }
  .hero-booking-panel .btn { align-self: end; }
}
@media (width <= 560px) {
  .hero-booking-panel { grid-template-columns: 1fr; gap: 13px; }
  .hero-form-title, .hero-form-status { grid-column: auto; }
  .hero-booking-panel .btn { width: 100%; }
}
@media (prefers-reduced-motion: reduce) { .hero-booking-panel { backdrop-filter: none; } }
