/* quote-modal.css — enquiry modal. */
.quote-modal { position: fixed; inset: 0; z-index: 200; display: grid; place-items: center; padding: 1rem; }
.quote-modal[hidden] { display: none !important; }
.quote-modal__backdrop { position: absolute; inset: 0; background: rgba(3,5,9,.78); backdrop-filter: blur(6px); animation: qm-fade .4s var(--ease) both; }
.quote-modal__dialog {
  position: relative; width: min(500px, 100%); max-height: 90vh; overflow-y: auto;
  background: var(--bg-lift); border: 1px solid var(--rule); border-radius: var(--r-lg);
  padding: clamp(24px, 4vw, 40px);
  animation: qm-rise .5s var(--ease) both;
}
@keyframes qm-fade { from { opacity: 0 } to { opacity: 1 } }
@keyframes qm-rise { from { opacity: 0; transform: translateY(14px) } to { opacity: 1; transform: none } }
.quote-modal__close {
  position: absolute; top: .9rem; right: 1rem; background: none; border: 0;
  color: var(--faint); font-size: 1.5rem; line-height: 1; cursor: pointer; padding: .2rem .4rem;
  transition: color .25s;
}
.quote-modal__close:hover { color: var(--text); }
.quote-modal__title { font-size: 1.4rem; margin-bottom: .25rem; }
.quote-modal__item { font-family: var(--font-mono); font-size: .78rem; color: var(--accent); letter-spacing: .04em; margin-bottom: 1.6rem; }
.quote-modal__alt { margin-top: 1rem; text-align: center; }
.quote-modal__alt a { color: var(--dim); }
.quote-modal__alt a:hover { color: var(--accent); }
@media (prefers-reduced-motion: reduce) {
  .quote-modal__backdrop, .quote-modal__dialog { animation: none !important; }
}
