/* ==========================================================================
   Pulse Moments — Inquiry popup + inline form (dark luxury)
   ========================================================================== */
:root { --i-gold:#c9a24b; --i-gold2:#e2c074; --i-ink:#11161f; --i-card:#1c2333; --i-card2:#232c40; }

/* ---- Overlay + modal ---- */
.pm-inq-overlay {
  position: fixed; inset: 0; z-index: 100000; display: none;
  align-items: center; justify-content: center; padding: 20px;
  background: rgba(6,9,14,.72); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px);
}
.pm-inq-overlay.open { display: flex; animation: pm-inq-fade .25s ease; }
@keyframes pm-inq-fade { from { opacity: 0 } to { opacity: 1 } }
.pm-inq-modal {
  position: relative; width: 100%; max-width: 460px;
  background: linear-gradient(165deg, var(--i-card), var(--i-ink));
  border: 1px solid rgba(201,162,75,.3); border-radius: 22px; padding: 36px 32px 30px;
  box-shadow: 0 50px 100px -40px rgba(0,0,0,.9); animation: pm-inq-pop .3s cubic-bezier(.2,.8,.25,1);
  max-height: 92vh; overflow-y: auto;
}
@keyframes pm-inq-pop { from { transform: translateY(20px) scale(.96); opacity: 0 } to { transform: none; opacity: 1 } }
.pm-inq-close {
  position: absolute; top: 14px; right: 16px; width: 34px; height: 34px; border-radius: 50%;
  background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.12); color: #c8cdd8;
  font-size: 22px; line-height: 1; cursor: pointer; transition: all .2s;
}
.pm-inq-close:hover { background: var(--i-gold); color: var(--i-ink); border-color: var(--i-gold); }

/* ---- Form (shared by popup + inline) ---- */
.pm-inq-form__h { font-family:'Fraunces',Georgia,serif; font-size: 25px; font-weight: 700; color: #f5efe0; margin: 0 0 6px; }
.pm-inq-form__sub { font-size: 14px; color: #8a93a6; margin: 0 0 22px; }
.pm-inq-row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.pm-inq-form input, .pm-inq-form select, .pm-inq-form textarea {
  width: 100%; box-sizing: border-box; padding: 13px 15px; margin-bottom: 12px;
  background: #0f141d; border: 1.5px solid rgba(255,255,255,.12); border-radius: 11px;
  color: #f5efe0; font-family: 'Inter',sans-serif; font-size: 14.5px; outline: none;
  transition: border-color .2s, box-shadow .2s;
}
.pm-inq-form textarea { resize: vertical; min-height: 70px; }
.pm-inq-form ::placeholder { color: #6b7280; }
.pm-inq-form select { color: #f5efe0; }
.pm-inq-form option { background: #11161f; color: #f5efe0; }
.pm-inq-form input:focus, .pm-inq-form select:focus, .pm-inq-form textarea:focus {
  border-color: var(--i-gold); box-shadow: 0 0 0 3px rgba(201,162,75,.14);
}
.pm-inq-submit {
  width: 100%; display: inline-flex; align-items: center; justify-content: center; gap: 9px;
  padding: 14px; margin-top: 4px; border: none; border-radius: 12px; cursor: pointer;
  background: linear-gradient(135deg, var(--i-gold), var(--i-gold2)); color: var(--i-ink) !important;
  font-family: 'Inter',sans-serif; font-weight: 800; font-size: 15.5px;
  box-shadow: 0 16px 38px -14px rgba(201,162,75,.6); transition: transform .2s, box-shadow .2s, filter .2s;
}
.pm-inq-submit:hover { transform: translateY(-2px); filter: brightness(1.05); box-shadow: 0 22px 50px -16px rgba(201,162,75,.7); }
.pm-inq-submit svg { color: var(--i-ink); }
.pm-inq-submit:disabled { opacity: .6; cursor: wait; transform: none; }
.pm-inq-form__note { font-size: 12px; color: #6b7280; text-align: center; margin: 12px 0 0; }
.pm-inq-msg { font-size: 14px; text-align: center; margin-top: 10px; }
.pm-inq-msg.ok  { color: #5fcf8e; }
.pm-inq-msg.err { color: #ef6e6e; }

@media (max-width: 420px){ .pm-inq-row { grid-template-columns: 1fr; } .pm-inq-modal { padding: 30px 22px 24px; } }
