/* GenQubit responsive layer. Page designs use inline styles, so this file adapts them for
   tablets and phones by matching their layout declarations. Desktop (≥1200px) is untouched. */

html, body { overflow-x: clip; }
img, svg, video { max-width: 100%; }
[data-gq="burger"], [data-gq="mob"] { display: none !important; }

@media (max-width: 1199px) {
  [data-gq="desk"] { display: none !important; }
  [data-gq="burger"] { display: flex !important; }
  [data-gq="mob"] { display: flex !important; }
  [style*="min-width: 1200px"] { min-width: 0 !important; }
  [style*="width: 1100px"], [style*="width: 1200px"], [style*="width: 1300px"], [style*="width: 1400px"], [style*="width: 1000px"] { max-width: 100% !important; }
}

@media (max-width: 900px) {
  nav[style*="position: sticky"] { position: static !important; }

  [style*="padding: 0px 64px"] { padding-left: 32px !important; padding-right: 32px !important; }
  [style*="padding: 40px 64px"], [style*="padding: 88px 64px"], [style*="padding: 64px"] { padding-left: 32px !important; padding-right: 32px !important; }
  [style*="padding: 88px 0px"], [style*="padding: 96px 0px"], [style*="padding: 120px 0px"], [style*="padding: 112px 0px"], [style*="padding: 104px 0px"] { padding-top: 64px !important; padding-bottom: 64px !important; }

  /* Asymmetric and two-up section splits stack. */
  [style*="grid-template-columns: minmax(0px, 7fr) minmax(0px, 5fr)"], [style*="grid-template-columns: minmax(0px, 5fr) minmax(0px, 7fr)"],
  [style*="grid-template-columns: minmax(0px, 4fr) minmax(0px, 8fr)"], [style*="grid-template-columns: minmax(0px, 8fr) minmax(0px, 4fr)"],
  [style*="grid-template-columns: minmax(0px, 6fr) minmax(0px, 6fr)"], [style*="grid-template-columns: minmax(0px, 5fr) minmax(0px, 6fr)"],
  [style*="grid-template-columns: minmax(0px, 1.15fr) minmax(0px, 1fr)"], [style*="grid-template-columns: minmax(0px, 3fr) minmax(0px, 5fr) minmax(0px, 4fr)"],
  [style*="grid-template-columns: minmax(0px, 3fr) minmax(0px, 1fr) minmax(0px, 8fr)"], [style*="grid-template-columns: minmax(0px, 7fr) 120px minmax(0px, 4fr)"],
  [style*="grid-template-columns: minmax(0px, 3fr) repeat("], [style*="grid-template-columns: repeat(12, minmax(0px, 1fr))"], [style*="grid-template-columns: repeat(12, 1fr)"] {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  :is([style*="grid-template-columns: repeat(12"], [style*="grid-template-columns: minmax(0px, 7fr)"], [style*="grid-template-columns: minmax(0px, 5fr)"], [style*="grid-template-columns: minmax(0px, 4fr)"], [style*="grid-template-columns: minmax(0px, 8fr)"], [style*="grid-template-columns: minmax(0px, 3fr)"]) > * { grid-column: auto !important; grid-row: auto !important; }

  /* Section card grids go to two columns. */
  :is([style*="grid-template-columns: repeat(3, minmax(0px, 1fr))"], [style*="grid-template-columns: repeat(4, minmax(0px, 1fr))"], [style*="grid-template-columns: repeat(5, minmax(0px, 1fr))"], [style*="grid-template-columns: repeat(4, 1fr)"]):is([style*="gap: 16px"], [style*="gap: 20px"], [style*="gap: 24px"], [style*="gap: 28px"], [style*="gap: 32px"], [style*="gap: 40px"], [style*="gap: 48px"], [style*="gap: 56px"], [style*="gap: 64px"]) {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  [style*="font: 400 96px"], [style*="font-size: 96px"], [style*="font: 500 96px"], [style*="font: 600 96px"], [style*="font: 700 96px"], [style*="font: 400 88px"], [style*="font-size: 88px"], [style*="font: 500 88px"], [style*="font: 600 88px"], [style*="font: 700 88px"], [style*="font: 400 84px"], [style*="font-size: 84px"], [style*="font: 500 84px"], [style*="font: 600 84px"], [style*="font: 700 84px"], [style*="font: 400 80px"], [style*="font-size: 80px"], [style*="font: 500 80px"], [style*="font: 600 80px"], [style*="font: 700 80px"] { font-size: 60px !important; }
  [style*="font: 400 72px"], [style*="font-size: 72px"], [style*="font: 500 72px"], [style*="font: 600 72px"], [style*="font: 700 72px"], [style*="font: 400 64px"], [style*="font-size: 64px"], [style*="font: 500 64px"], [style*="font: 600 64px"], [style*="font: 700 64px"], [style*="font: 400 60px"], [style*="font-size: 60px"], [style*="font: 500 60px"], [style*="font: 600 60px"], [style*="font: 700 60px"] { font-size: 48px !important; }
  [style*="font: 400 56px"], [style*="font-size: 56px"], [style*="font: 500 56px"], [style*="font: 600 56px"], [style*="font: 700 56px"], [style*="font: 400 52px"], [style*="font-size: 52px"], [style*="font: 500 52px"], [style*="font: 600 52px"], [style*="font: 700 52px"] { font-size: 42px !important; }
}

@media (max-width: 600px) {
  /* Page-level container grids always stack on phones. */
  [style*="padding: 0px 64px"][style*="grid-template-columns"] { grid-template-columns: minmax(0, 1fr) !important; row-gap: 32px; }
  [style*="padding: 0px 64px"][style*="grid-template-columns"] > * { grid-column: auto !important; }
  [style*="padding: 0px 64px"][style*="grid-template-columns"] > :is([style*="padding: 0px 40px"], [style*="padding: 0px 0px 0px 40px"], [style*="padding: 0px 40px 0px 0px"], [style*="padding: 0px 32px"]) { padding-left: 0 !important; padding-right: 0 !important; border-left: 0 !important; }
  [style*="padding: 0px 64px"], [style*="padding: 0px 32px"], [style*="padding: 0px 48px"] { padding-left: 20px !important; padding-right: 20px !important; }
  [style*="padding: 40px 64px"], [style*="padding: 88px 64px"], [style*="padding: 64px"] { padding-left: 20px !important; padding-right: 20px !important; }
  [style*="padding: 32px;"], [style*="padding: 28px;"] { padding: 20px !important; }
  [style*="padding: 88px 0px"], [style*="padding: 96px 0px"], [style*="padding: 120px 0px"], [style*="padding: 112px 0px"], [style*="padding: 104px 0px"] { padding-top: 56px !important; padding-bottom: 56px !important; }

  /* Any fr-based layout grid with section-level spacing becomes one column. */
  :is([style*="grid-template-columns: repeat("], [style*="grid-template-columns: minmax(0px"], [style*="grid-template-columns: 1fr 1fr"]):is([style*="gap: 16px"], [style*="gap: 20px"], [style*="gap: 24px"], [style*="gap: 28px"], [style*="gap: 32px"], [style*="gap: 40px"], [style*="gap: 48px"], [style*="gap: 56px"], [style*="gap: 64px"]) {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  :is([style*="grid-template-columns: repeat("], [style*="grid-template-columns: minmax(0px"]):is([style*="gap: 16px"], [style*="gap: 20px"], [style*="gap: 24px"], [style*="gap: 28px"], [style*="gap: 32px"], [style*="gap: 40px"], [style*="gap: 48px"], [style*="gap: 56px"], [style*="gap: 64px"]) > * { grid-column: auto !important; }
  /* Tighter inner grids (tiles inside illustrations) keep at most two columns. */
  :is([style*="grid-template-columns: repeat(4, minmax(0px, 1fr))"], [style*="grid-template-columns: repeat(5, minmax(0px, 1fr))"], [style*="grid-template-columns: repeat(6, minmax(0px, 1fr))"]):is([style*="gap: 6px"], [style*="gap: 8px"], [style*="gap: 10px"], [style*="gap: 12px"], [style*="gap: 4px"]) {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }


  /* Label + two-column comparison tables: label becomes a full-width row. */
  [style*="grid-template-columns: 220px minmax(0px, 1fr) minmax(0px, 1fr)"] { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important; }
  [style*="grid-template-columns: 220px minmax(0px, 1fr) minmax(0px, 1fr)"] > :first-child { grid-column: 1 / -1 !important; border-bottom: 1px solid var(--ln); }
  [style*="grid-template-columns: 220px minmax(0px, 1fr) minmax(0px, 1fr)"] > :nth-child(2) { border-left: 0 !important; }
  /* Step strips without gaps wrap to rows of three. */
  [style*="grid-template-columns: repeat(6, minmax(0px, 1fr))"]:not([style*="gap"]), [style*="grid-template-columns: repeat(5, minmax(0px, 1fr))"]:not([style*="gap"]) { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; row-gap: 6px; }
  [style*="grid-template-columns: repeat(2, minmax(0px, 1fr))"][style*="gap: 12px"] { grid-template-columns: minmax(0, 1fr) !important; }
  [style*="font: 400 96px"], [style*="font-size: 96px"], [style*="font: 500 96px"], [style*="font: 600 96px"], [style*="font: 700 96px"], [style*="font: 400 88px"], [style*="font-size: 88px"], [style*="font: 500 88px"], [style*="font: 600 88px"], [style*="font: 700 88px"], [style*="font: 400 84px"], [style*="font-size: 84px"], [style*="font: 500 84px"], [style*="font: 600 84px"], [style*="font: 700 84px"], [style*="font: 400 80px"], [style*="font-size: 80px"], [style*="font: 500 80px"], [style*="font: 600 80px"], [style*="font: 700 80px"] { font-size: 44px !important; }
  [style*="font: 400 72px"], [style*="font-size: 72px"], [style*="font: 500 72px"], [style*="font: 600 72px"], [style*="font: 700 72px"], [style*="font: 400 64px"], [style*="font-size: 64px"], [style*="font: 500 64px"], [style*="font: 600 64px"], [style*="font: 700 64px"], [style*="font: 400 60px"], [style*="font-size: 60px"], [style*="font: 500 60px"], [style*="font: 600 60px"], [style*="font: 700 60px"] { font-size: 38px !important; }
  [style*="font: 400 56px"], [style*="font-size: 56px"], [style*="font: 500 56px"], [style*="font: 600 56px"], [style*="font: 700 56px"], [style*="font: 400 52px"], [style*="font-size: 52px"], [style*="font: 500 52px"], [style*="font: 600 52px"], [style*="font: 700 52px"], [style*="font: 400 48px"], [style*="font-size: 48px"], [style*="font: 500 48px"], [style*="font: 600 48px"], [style*="font: 700 48px"] { font-size: 32px !important; }
  [style*="font: 400 44px"], [style*="font-size: 44px"], [style*="font: 500 44px"], [style*="font: 600 44px"], [style*="font: 700 44px"], [style*="font: 400 40px"], [style*="font-size: 40px"], [style*="font: 500 40px"], [style*="font: 600 40px"], [style*="font: 700 40px"] { font-size: 28px !important; }
  [style*="font: 400 36px"], [style*="font-size: 36px"], [style*="font: 500 36px"], [style*="font: 600 36px"], [style*="font: 700 36px"], [style*="font: 400 32px"], [style*="font-size: 32px"], [style*="font: 500 32px"], [style*="font: 600 32px"], [style*="font: 700 32px"] { font-size: 24px !important; }
  [style*="font-size: 18px"], [style*="font-size: 19px"], [style*="font-size: 20px"] { font-size: 16px !important; }

  [style*="display: flex"][style*="justify-content: space-between"] { flex-wrap: wrap; }
  [style*="width: 900px"], [style*="width: 800px"], [style*="width: 760px"], [style*="width: 700px"], [style*="width: 640px"], [style*="width: 600px"], [style*="width: 500px"], [style*="width: 480px"], [style*="width: 460px"], [style*="width: 440px"], [style*="width: 420px"] { max-width: 100% !important; }
  [style*="height: 48px"][style*="border-radius: 999px"] { white-space: normal; }
}
