html { scroll-padding-top: 96px; }
header nav { will-change: max-width, background-color, box-shadow, padding; }
header.static-scrolled nav {
  max-width: 1180px !important;
  border-radius: 9999px !important;
  border-color: rgba(255,255,255,.65) !important;
  background: rgba(247,245,240,.76) !important;
  padding: .625rem 1rem !important;
  box-shadow: 0 16px 50px rgba(30,50,90,.13) !important;
  -webkit-backdrop-filter: blur(24px) saturate(1.08);
  backdrop-filter: blur(24px) saturate(1.08);
}
.gradient-blinds-container {
  --pointer-x: 50%;
  --pointer-y: 35%;
  background:
    radial-gradient(circle at var(--pointer-x) var(--pointer-y), rgba(255,255,255,.9) 0, rgba(219,228,238,.48) 22%, transparent 48%),
    repeating-linear-gradient(100deg, rgba(240,240,240,.8) 0 8%, rgba(174,190,210,.58) 10% 15%, rgba(247,245,240,.72) 17% 25%);
  background-size: 100% 100%, 190% 100%;
  animation: static-glass-drift 18s ease-in-out infinite alternate;
}
@keyframes static-glass-drift {
  from { background-position: center, 0% 50%; }
  to { background-position: center, 100% 50%; }
}
.static-booking-modal[hidden] { display: none; }
.static-booking-modal {
  position: fixed;
  inset: 0;
  z-index: 100;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding: .75rem;
  background: rgba(21,35,66,.38);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
}
.static-booking-panel {
  width: min(100%,28rem);
  border: 1px solid rgba(255,255,255,.58);
  border-radius: 2rem;
  background: rgba(247,245,240,.96);
  padding: 1.5rem;
  color: #1e325a;
  box-shadow: 0 24px 80px rgba(21,35,66,.24);
}
.static-booking-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1.5rem;
}
.static-booking-title {
  margin: 0;
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: -.025em;
}
.static-booking-copy {
  margin: .35rem 0 0;
  color: #5e6470;
  font-size: .875rem;
  line-height: 1.6;
}
.static-booking-close {
  display: grid;
  width: 2.5rem;
  height: 2.5rem;
  flex: 0 0 auto;
  place-items: center;
  border: 0;
  border-radius: 9999px;
  background: rgba(30,50,90,.07);
  color: #1e325a;
  font-size: 1.25rem;
}
.static-booking-form { display: grid; gap: 1rem; }
.static-booking-form label {
  display: grid;
  gap: .4rem;
  color: #5e6470;
  font-size: .75rem;
  letter-spacing: .06em;
}
.static-booking-form input,
.static-booking-form select {
  width: 100%;
  border: 1px solid rgba(30,50,90,.12);
  border-radius: 1rem;
  background: rgba(255,255,255,.82);
  padding: .8rem 1rem;
  color: #1e325a;
  font-size: .875rem;
  outline: none;
}
.static-booking-form input:focus,
.static-booking-form select:focus {
  border-color: rgba(30,50,90,.38);
  box-shadow: 0 0 0 4px rgba(30,50,90,.06);
}
.static-booking-submit {
  border: 0;
  border-radius: 9999px;
  background: #1e325a;
  padding: .9rem 1rem;
  color: #fff;
  font-size: .875rem;
}
.static-booking-success {
  border-radius: 1.4rem;
  background: rgba(255,255,255,.72);
  padding: 2rem 1.5rem;
  text-align: center;
}
body.static-modal-open { overflow: hidden; }
@media (min-width:768px) {
  header.static-scrolled nav { padding: .75rem 1.5rem !important; }
  .static-booking-modal { align-items: center; }
  .static-booking-panel { padding: 2rem; }
}
@media (prefers-reduced-motion:reduce) {
  .gradient-blinds-container { animation: none; }
}