/* /newhome booking modal: the dark gradient panel shared with the video
   modal, with crisp white square inputs. */
.newhome .nh-demo-modal [hidden] { display: none !important; }

.newhome .nh-demo-modal__backdrop {
  background: #041a3ac7;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
}

.newhome .nh-demo-modal__panel {
  border: 1px solid #b7edff9c;
  border-radius: 22px;
  background: linear-gradient(135deg, #08295e 0%, #075cb8 58%, #0cbde0 125%);
  box-shadow: 0 34px 90px #020c20b5;
  color: #fff;
}

.newhome .nh-demo-modal__close {
  width: 40px;
  height: 40px;
  border: 1px solid #ffffff66;
  background: #061d40bd;
  color: #fff;
}

.newhome .nh-demo-modal__close:hover { background: #0879e8; }
.newhome .nh-demo-modal__eyebrow { color: #a8f2ff; }
.newhome .nh-demo-modal h2 { color: #fff; }
.newhome .nh-demo-modal__intro { color: #d8f5ff; font-size: 17px; }
.newhome .nh-demo-modal__form { gap: 18px 22px; }

.newhome .nh-demo-modal__form label {
  gap: 8px;
  color: #fff;
  font: 700 14px 'Space Grotesk', Arial, sans-serif;
}

.newhome .nh-demo-modal__form input,
.newhome .nh-demo-modal__form textarea {
  border: 1px solid #fff;
  border-radius: 0;
  padding: 14px 16px;
  background: #fff;
  color: #09254a;
  font: 16px 'DM Sans', Arial, sans-serif;
  transition: border-color .2s ease, box-shadow .2s ease;
}

.newhome .nh-demo-modal__form input::placeholder,
.newhome .nh-demo-modal__form textarea::placeholder { color: #8ea6bf; }

.newhome .nh-demo-modal__form input:focus,
.newhome .nh-demo-modal__form textarea:focus {
  outline: none;
  border-color: #5fe3ff;
  box-shadow: 0 0 0 4px #5fe3ff66;
}

.newhome .nh-demo-modal__form textarea { min-height: 120px; }
.newhome .nh-demo-modal__captcha { margin-top: 4px; color: #e2f8ff; font-size: 14px; }

.newhome .nh-demo-modal__local-note {
  border: 1px solid #b7f2ff4d;
  background: #ffffff1c;
  color: #e5fbff;
}

.newhome .nh-demo-modal__submit {
  margin-top: 6px;
  border: 1px solid #ff9b32;
  padding: 15px 26px;
  background: linear-gradient(135deg, #ff920f, #ff7900 60%, #f56b00);
  color: #fff;
  font: 700 16px 'Space Grotesk', Arial, sans-serif;
  text-shadow: 0 1px 2px #98400040;
  box-shadow: 0 6px 0 #c65300, 0 14px 28px #9a440033, 0 0 30px #ff940045;
  transition: transform .25s ease, box-shadow .25s ease;
}

.newhome .nh-demo-modal__submit span { display: inline-block; margin-left: 6px; transition: transform .25s ease; }

.newhome .nh-demo-modal__submit:hover {
  border-color: #ffb65c;
  background: linear-gradient(135deg, #ffa124, #ff7900 65%, #f56b00);
  transform: translateY(-3px);
  box-shadow: 0 9px 0 #c65300, 0 20px 32px #9a440040, 0 0 38px #ff940060;
}

.newhome .nh-demo-modal__submit:hover span { transform: translate(3px, -3px); }
.newhome .nh-demo-modal__submit:active { transform: translateY(3px); box-shadow: 0 2px 0 #c65300; }
.newhome .nh-demo-modal__submit:focus-visible { outline: 3px solid #fff; outline-offset: 5px; }

@media (prefers-reduced-motion: reduce) {
  .newhome .nh-demo-modal__submit,
  .newhome .nh-demo-modal__submit span { transition: none; }
}

.newhome button.nh-button {
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}

/* Confirmation toast shown after a form submission redirects back. */
.nh-toast{position:fixed;z-index:1100;top:92px;right:24px;display:flex;align-items:flex-start;gap:12px;width:min(390px,calc(100vw - 32px));padding:16px 16px 16px 18px;border:1px solid #c9e8fa;border-left:4px solid #11c9e8;border-radius:10px;background:#fff;box-shadow:0 14px 34px #00244f2e;color:var(--nh-ink);animation:nh-toast-in .25s ease-out both}
.nh-toast--error{border-left-color:#e5484d}
.nh-toast div{display:grid;gap:3px;flex:1;font-size:14px}
.nh-toast strong{font-size:15px}
.nh-toast button{border:0;background:none;color:var(--nh-muted);font-size:22px;line-height:1;cursor:pointer}
@keyframes nh-toast-in{from{opacity:0;transform:translateY(-8px)}}
@media(prefers-reduced-motion:reduce){.nh-toast{animation:none}}
@media(max-width:600px){.nh-toast{top:78px;right:16px}}
