/* Product enquiry dialog. Components are scoped to avoid changing the contact page. */
.vg-enquiry {
  position: fixed;
  inset: 0;
  margin: auto;
  width: min(600px, calc(100% - 2rem));
  max-width: 600px;
  max-height: calc(100vh - 2rem);
  max-height: calc(100dvh - 2rem);
  padding: 0;
  border: 1px solid #e1e6ec;
  border-radius: 24px;
  color: #424b5a;
  background: #fff;
  box-shadow: 0 30px 100px rgb(16 30 52 / 24%);
  overflow: hidden;
  font-family: var(--font-body, "Inter", sans-serif);
  font-size: 1rem;
  line-height: 1.55;
  text-align: left;
  color-scheme: light;
}
.vg-enquiry[open] { display: flex; flex-direction: column; }
.vg-enquiry:not([open]), .vg-enquiry [hidden] { display: none !important; }
.vg-enquiry::backdrop { background: rgb(20 32 49 / 48%); backdrop-filter: blur(5px); }
.vg-enquiry .vg-enquiry__head {
  position: relative;
  flex: none;
  padding: 1.8rem 2rem 1.3rem;
  border-bottom: 1px solid #e8ecf1;
  background: linear-gradient(135deg, #f2f7fd, #fff 80%);
}
.vg-enquiry .vg-enquiry__close {
  position: absolute;
  inset: 1rem 1rem auto auto;
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  padding: 0;
  border: 1px solid #dce3eb;
  border-radius: 50%;
  background: #fff;
  color: #27364a;
  cursor: pointer;
}
.vg-enquiry .vg-enquiry__close:hover { background: #edf3fa; border-color: #9cacbe; }
.vg-enquiry .vg-enquiry__eyebrow {
  margin: 0 2.5rem .65rem 0;
  color: #315e9d;
  font-size: .7rem;
  font-weight: 650;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.vg-enquiry .vg-enquiry__title {
  margin: 0 1.5rem .8rem 0;
  font-size: clamp(1.6rem, 4vw, 2rem);
  line-height: 1.1;
  letter-spacing: -.025em;
}
.vg-enquiry .vg-enquiry__product {
  display: inline-block;
  margin: 0 0 .65rem;
  padding: .25rem .6rem;
  border: 1px solid #dae5f3;
  border-radius: 6px;
  color: #1b4a84;
  background: #edf4fc;
  font-size: .85rem;
  font-weight: 600;
  overflow-wrap: anywhere;
}
.vg-enquiry .vg-enquiry__intro { margin: 0; max-width: 46ch; color: #586372; font-size: .9rem; }
.vg-enquiry .vg-enquiry__format { margin: -.15rem 0 .65rem; color: #315e9d; font-size: .83rem; font-weight: 500; }
.vg-enquiry .vg-enquiry__body { min-height: 0; padding: 1.4rem 2rem 1.6rem; overflow-y: auto; overscroll-behavior: contain; }
.vg-enquiry .vg-enquiry__fields { min-width: 0; margin: 0; padding: 0; border: 0; }
.vg-enquiry .vg-enquiry__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.vg-enquiry .vg-enquiry__grid > div { min-width: 0; }
.vg-enquiry .vg-form .form__row { margin-bottom: .9rem; }
.vg-enquiry .vg-form label { font-size: .88rem; }
.vg-enquiry .vg-form input, .vg-enquiry .vg-form textarea { font-size: 1rem; border-color: #ccd5df; min-height: 46px; }
.vg-enquiry .vg-form textarea { min-height: 90px; resize: vertical; }
.vg-enquiry .vg-form input:focus, .vg-enquiry .vg-form textarea:focus { border-color: #2563c9; box-shadow: 0 0 0 3px rgb(37 99 201 / 13%); }
.vg-enquiry .vg-form .form__trap { position: absolute; width: 1px; min-height: 1px; height: 1px; padding: 0; border: 0; opacity: 0; }
.vg-enquiry .vg-enquiry__optional { color: #6b7480; font-weight: 400; }
.vg-enquiry .vg-enquiry__privacy { margin: 0 0 1rem; color: #636e7c; font-size: .77rem; line-height: 1.6; }
.vg-enquiry .vg-enquiry__privacy a, .vg-enquiry .vg-enquiry__direct a { color: #245597; text-underline-offset: 3px; text-decoration: underline; }
.vg-enquiry .vg-enquiry__submit { width: 100%; gap: .8rem; }
.vg-enquiry .vg-enquiry__submit:disabled { cursor: wait; opacity: .7; transform: none; }
.vg-enquiry .vg-enquiry__status:empty { display: none; }
.vg-enquiry .vg-enquiry__status { margin: 0 0 .8rem; color: #315e9d; font-size: .88rem; }
.vg-enquiry .vg-enquiry__error { margin: 0 0 1rem; padding: .8rem 1rem; border: 1px solid #efcdca; border-radius: 10px; background: #fff4f3; color: #922b25; font-size: .88rem; }
.vg-enquiry .vg-enquiry__direct { margin: 1.15rem 0 0; color: #606b78; font-size: .8rem; line-height: 1.9; text-align: center; }
.vg-enquiry .vg-enquiry__success { padding: .8rem 0; text-align: center; }
.vg-enquiry .vg-enquiry__success h3 { margin: 1rem 0 .6rem; font-size: 1.5rem; line-height: 1.2; }
.vg-enquiry .vg-enquiry__success p { margin: 0 auto 1.5rem; max-width: 40ch; }
.vg-enquiry .vg-enquiry__check { display: inline-grid; place-items: center; width: 58px; height: 58px; border-radius: 50%; background: #edf4fc; color: #245597; }
.vg-enquiry .vg-enquiry__sr-only { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; border: 0; clip: rect(0, 0, 0, 0); overflow: hidden; white-space: nowrap; }
.vg-enquiry button:focus-visible, .vg-enquiry a:focus-visible { outline: 3px solid #245597; outline-offset: 3px; }
@media (max-width: 480px) {
  .vg-enquiry { width: calc(100% - 1.25rem); max-height: calc(100vh - 1.25rem); max-height: calc(100dvh - 1.25rem); border-radius: 19px; }
  .vg-enquiry .vg-enquiry__head { padding: 1.5rem 1.25rem 1.05rem; }
  .vg-enquiry .vg-enquiry__body { padding: 1.15rem 1.25rem 1.3rem; }
  .vg-enquiry .vg-enquiry__close { inset: .7rem .7rem auto auto; }
  .vg-enquiry .vg-enquiry__grid { grid-template-columns: 1fr; gap: 0; }
  .vg-enquiry .vg-enquiry__title { margin-right: 1.2rem; }
}
@media (max-height: 540px) {
  .vg-enquiry .vg-enquiry__head { padding-block: 1rem; }
  .vg-enquiry .vg-enquiry__intro { display: none; }
  .vg-enquiry .vg-enquiry__product { margin-bottom: 0; }
}
