/* Gartner® Magic Quadrant™ for IDV — analyst-report download page,
   restyled 2026-08-05 to the x3 home language: ink hero (copy left, the
   MQ chart on a white rounded plate right — the home's Certification &
   Recognition plate idiom), rounded curtain seam into the bright
   download gate (hairline-ledger quadrant definitions + the HubSpot
   form card), small-print Gartner disclaimer. The form is INJECTED into
   #gmq-hs-form after load — keep the container. */

/* ---------- hero (bright — Sofia, 2026-08-05: no dark here) ---------- */

.p-gartner-magic-quadrant .gmq-hero {
  background: var(--color-background);
  color: var(--color-foreground);
}
.p-gartner-magic-quadrant .gmq-hero__inner {
  position: relative;
  z-index: 1;
  margin-inline: auto;
  max-width: var(--container-large);
  padding: 128px 20px 84px;
  display: grid;
  gap: 48px;
  align-items: center;
}
@media (min-width: 640px) { .p-gartner-magic-quadrant .gmq-hero__inner { padding: 144px 20px 96px; } }
@media (min-width: 900px) {
  .p-gartner-magic-quadrant .gmq-hero__inner {
    padding-top: 176px;
    padding-bottom: 116px;
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
    gap: 72px;
  }
}
@media (min-width: 1024px) { .p-gartner-magic-quadrant .gmq-hero__inner { padding-inline: 32px; } }

.p-gartner-magic-quadrant .gmq-hero__title {
  max-width: 680px;
  margin: 20px 0 0;
  font-family: var(--font-display);
  font-weight: 500;
  font-size: clamp(34px, 4.6vw, 56px);
  line-height: 1.05;
  letter-spacing: var(--track-tighter);
}
/* Rethink Sans ships a MIRRORED ® glyph — the mark renders in the body
   sans (correct glyph) inside the display-font title */
.p-gartner-magic-quadrant .gmq-reg {
  font-family: var(--font-sans);
}

/* hairline-ruled sub row — the home hero's row-rule idiom */
.p-gartner-magic-quadrant .gmq-hero__row {
  margin-top: 32px;
  border-top: 1px solid var(--color-border-light);
  padding-top: 24px;
}
.p-gartner-magic-quadrant .gmq-hero__sub {
  max-width: 560px;
  margin: 0;
  font-size: var(--fs-body);
  line-height: var(--leading-body);
  color: var(--color-grey-on-white);
}
.p-gartner-magic-quadrant .gmq-hero__actions { margin-top: 28px; }

/* the MQ chart ships on a white ground — seat it on the white plate
   (radius-20, generous inner air, same as the home certs plate); a
   hairline frames it against the bright ground */
.p-gartner-magic-quadrant .gmq-hero__media {
  margin: 0;
  justify-self: center;
  width: min(460px, 100%);
  background: var(--color-white);
  border: 1px solid var(--color-border-light);
  border-radius: 20px;
  padding: 24px;
}
@media (min-width: 900px) { .p-gartner-magic-quadrant .gmq-hero__media { justify-self: end; } }
.p-gartner-magic-quadrant .gmq-hero__media img {
  display: block;
  width: 100%;
  height: auto;
}

/* ---------- download gate (bright — tone-adjacent to the hero, so the
   curtain seam is retired; a container hairline divides the chapters,
   the statement-section idiom) ---------- */

.p-gartner-magic-quadrant .gmq-gate {
  background: var(--color-background);
  color: var(--color-foreground);
}
.p-gartner-magic-quadrant .gmq-gate__inner {
  margin-inline: auto;
  max-width: var(--container-large);
  padding: 56px 20px 64px;
}
.p-gartner-magic-quadrant .gmq-gate__inner::before {
  content: "";
  display: block;
  border-top: 1px solid var(--color-border-light);
  margin-bottom: 56px;
}
@media (min-width: 768px) { .p-gartner-magic-quadrant .gmq-gate__inner { padding-block: 24px 96px; } }
@media (min-width: 1024px) { .p-gartner-magic-quadrant .gmq-gate__inner { padding-inline: 32px; } }

.p-gartner-magic-quadrant .gmq-gate__grid {
  display: grid;
  gap: 48px;
  align-items: start;
}
@media (min-width: 900px) {
  .p-gartner-magic-quadrant .gmq-gate__grid {
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
    gap: 72px;
  }
}
.p-gartner-magic-quadrant .gmq-gate__title {
  margin: 0;
  font-family: var(--font-display);
  font-weight: 500;
  font-size: clamp(28px, 3.4vw, 44px);
  line-height: 1.08;
  letter-spacing: var(--track-tighter);
  color: var(--color-black);
}
.p-gartner-magic-quadrant .gmq-gate__lead {
  margin: 16px 0 0;
  font-size: var(--fs-body);
  line-height: var(--leading-body);
  color: var(--color-grey-on-white);
}
.p-gartner-magic-quadrant .gmq-gate__q {
  margin: 36px 0 0;
  font-size: var(--fs-body);
  line-height: var(--leading-body);
  color: var(--color-black);
}
/* the three quadrant definitions as a hairline ledger (the home's
   proof-row idiom): the quadrant name leads each row in display ink,
   its definition sits beneath in grey */
.p-gartner-magic-quadrant .gmq-gate__list {
  margin: 16px 0 0;
  padding: 0;
  list-style: none;
}
.p-gartner-magic-quadrant .gmq-gate__list li {
  border-top: 1px solid var(--color-border-light);
  padding: 20px 0;
}
.p-gartner-magic-quadrant .gmq-gate__list li:last-child {
  border-bottom: 1px solid var(--color-border-light);
}
.p-gartner-magic-quadrant .gmq-gate__term {
  display: block;
  font-family: var(--font-display);
  font-weight: 500;
  font-size: 18px;
  letter-spacing: var(--track-tight);
  color: var(--color-black);
}
.p-gartner-magic-quadrant .gmq-gate__def {
  display: block;
  margin-top: 6px;
  max-width: 52ch;
  font-size: var(--fs-sm);
  line-height: var(--leading-snug);
  color: var(--color-grey-on-white);
}

/* form card (the form is injected into the container after load) */
.p-gartner-magic-quadrant .gmq-gate__form {
  border: 1px solid var(--color-border-light);
  border-radius: 16px;
  background: var(--color-white);
  padding: 32px 28px;
}
.p-gartner-magic-quadrant .gmq-gate__form-title {
  margin: 0 0 20px;
  font-family: var(--font-display);
  font-weight: 500;
  font-size: 24px;
  letter-spacing: var(--track-tighter);
  color: var(--color-black);
}
.p-gartner-magic-quadrant .gmq-gate__embed { min-height: 320px; }

/* ---------- injected HubSpot v2 form: restyled to the site's form
   language (the embed ships unstyled native fields) ---------- */
.p-gartner-magic-quadrant .gmq-gate__embed fieldset {
  max-width: none !important;
  margin: 0;
  padding: 0;
  border: 0;
}
/* two-up rows (First/Last name) become a flex pair instead of floats */
.p-gartner-magic-quadrant .gmq-gate__embed .form-columns-2 {
  display: flex;
  gap: 12px;
}
.p-gartner-magic-quadrant .gmq-gate__embed .form-columns-2 .hs-form-field {
  float: none !important;
  width: 100% !important;
}
.p-gartner-magic-quadrant .gmq-gate__embed .hs-form-field {
  margin-bottom: 16px;
}
.p-gartner-magic-quadrant .gmq-gate__embed .hs-form-field > label {
  display: block;
  margin-bottom: 6px;
  font-size: var(--fs-sm);
  color: var(--color-grey-600);
}
.p-gartner-magic-quadrant .gmq-gate__embed .hs-form-field .input {
  margin-right: 0 !important;
}
.p-gartner-magic-quadrant .gmq-gate__embed .hs-input {
  width: 100% !important;
  height: 44px;
  padding: 0 14px;
  border: 1px solid var(--color-border-light);
  border-radius: 8px;
  background: var(--color-white);
  font: inherit;
  font-size: var(--fs-sm);
  color: var(--color-black);
  transition: border-color 0.2s ease;
}
.p-gartner-magic-quadrant .gmq-gate__embed .hs-input:focus {
  outline: none;
  border-color: var(--color-blue);
}
.p-gartner-magic-quadrant .gmq-gate__embed .hs-error-msgs {
  margin: 6px 0 0;
  padding: 0;
  list-style: none;
}
.p-gartner-magic-quadrant .gmq-gate__embed .hs-error-msgs label {
  font-size: var(--fs-xs);
  color: var(--color-red-500);
}
/* the consent text renders as a .hs-richtext div (no inner <p>) */
.p-gartner-magic-quadrant .gmq-gate__embed .legal-consent-container .hs-richtext,
.p-gartner-magic-quadrant .gmq-gate__embed .legal-consent-container p {
  margin: 16px 0 0;
  font-size: var(--fs-xs);
  line-height: var(--leading-body);
  color: var(--color-grey-on-white);
}
.p-gartner-magic-quadrant .gmq-gate__embed .hs-submit {
  margin-top: 24px;
}
/* the submit rides the .btn--primary recipe (base.css): solid blue with
   the blue → ink gradient sliding through on hover */
.p-gartner-magic-quadrant .gmq-gate__embed .hs-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  padding: 10px 20px;
  border: 0;
  border-radius: var(--radius-md);
  font: inherit;
  font-weight: 500;
  font-size: var(--fs-body);
  cursor: pointer;
  background-color: var(--color-blue);
  background-image: linear-gradient(115deg, var(--color-blue) 0%, var(--color-blue) 48%, var(--color-black) 100%);
  background-size: 230% 100%;
  background-position: 0% 0;
  color: var(--color-white);
  transition: background-position 0.5s var(--ease-out-expo);
}
.p-gartner-magic-quadrant .gmq-gate__embed .hs-button:hover {
  background-position: 100% 0;
}

/* ---------- Gartner disclaimer (small print) ---------- */

.p-gartner-magic-quadrant .gmq-legal {
  background: var(--color-background);
}
.p-gartner-magic-quadrant .gmq-legal__inner {
  margin-inline: auto;
  max-width: var(--container-large);
  padding: 0 20px 72px;
}
@media (min-width: 1024px) { .p-gartner-magic-quadrant .gmq-legal__inner { padding-inline: 32px; } }
.p-gartner-magic-quadrant .gmq-legal__col {
  border-top: 1px solid var(--color-border-light);
  padding-top: 32px;
}
/* full container width, smallest print (Sofia, 2026-08-05) */
.p-gartner-magic-quadrant .gmq-legal__col p {
  font-size: var(--fs-xs);
  line-height: var(--leading-body);
  color: var(--color-grey-on-white);
  margin: 0 0 10px;
}
.p-gartner-magic-quadrant .gmq-legal__col p:last-child { margin-bottom: 0; }
