/* Regadget Draft 4 · GROUP D page styles: about, gaming, resources (index), live, privacy, accessibility (+ 404's .d-nf).
   Loaded after site.css. Uses the shared system (hero, zd-section, zd-head, zd-split, zd-cards, zd-dark, closing, panel);
   only page-specific pieces live here. Colours = Direction C tokens from site.css; structure = Zendesk inner pages. */

/* =========================================================================================
   1. Inner-page hero: site.css .hero.hero--inner (SYSTEM.md "INNER HERO READY") — white, ink H1, green accent.
      None of the six D pages has a hero photo (about's only photo belongs to the facility section; content order is
      frozen), so all use the no-photo variant. Only per-page layout lives here: no size/colour/background overrides.
   ========================================================================================= */

/* white hero on a white page: the next section's top space is trimmed so hero + section gap is 112px, not 160px */
@media (min-width: 64rem) {
  .hero.hero--inner.d-hero + .zd-section, .hero.hero--inner.d-hero + .d-legal__main { padding-top: var(--s16); }
}

/* about: H1 left, lead + mission + button right (Zendesk product-page hero split) */
.d-mission { margin-top: var(--s6); padding: var(--s5) var(--s6); background: var(--floor); border-radius: 24px; max-width: 36rem; }
.d-mission__label { font-size: var(--fs-eyebrow); font-weight: 700; letter-spacing: 0.054em; text-transform: uppercase; color: var(--ink); }
.d-mission blockquote { margin-top: var(--s2); color: var(--text-2); }
@media (min-width: 64rem) {
  .hero.hero--inner.d-hero--split .hero__text {
    display: grid; grid-template-columns: minmax(0, 6fr) minmax(0, 5fr); column-gap: var(--s16); align-items: end;
  }
  .hero.hero--inner.d-hero--split .hero__text > * { max-width: none; }
  .d-hero--split .d-hero__h1 { align-self: start; }
  .d-hero--split .hero__sub { margin-top: 0; }
  .d-hero--split .d-mission { max-width: none; }
}

/* gaming hero */
.d-game__tag { font-weight: 500; font-size: var(--fs-h3); line-height: 1.25; }
.d-game__partner { margin-top: var(--s4); }

/* live hero: the channel card sits in the hero; Gadget stands to the right of it at 64rem+ */
.d-channels { margin-top: var(--s8); width: 100%; max-width: 36rem; }
.d-channel {
  display: grid; gap: 2px var(--s6); align-items: center;
  background: var(--floor); border-radius: 24px; padding: var(--s5) var(--s6);
}
.d-channel__name { font-weight: 500; font-size: var(--fs-h3); line-height: 1.2; letter-spacing: -0.01em; }
.d-channel__handle { font-size: var(--fs-small); font-weight: 700; color: var(--text-2); }
.d-channel__line { color: var(--text-2); }
.d-channel .btn { margin-top: var(--s4); width: 100%; }
.d-asof { margin-top: var(--s3); font-size: var(--fs-small); color: var(--text-2); }
.d-shoprow { margin-top: var(--s5); display: flex; flex-wrap: wrap; align-items: center; gap: 0 var(--s3); }
.d-shoprow a { display: inline-flex; align-items: center; min-height: 44px; }
.d-live__gadget { margin-top: var(--s8); }
.d-live__gadget img { width: 88px; }
@media (min-width: 48rem) {
  .d-channel { grid-template-columns: minmax(0, 1fr) auto; }
  .d-channel .btn { grid-column: 2; grid-row: 1 / span 3; margin-top: 0; width: auto; }
}
@media (min-width: 64rem) {
  .hero.hero--inner.d-hero--live .hero__grid { grid-template-columns: minmax(0, 1fr) auto; column-gap: var(--s16); align-items: center; }
  .d-live__gadget {
    margin: 0; padding: var(--s8) var(--s10); background: var(--floor); border-radius: var(--r-card);
    flex-direction: column; align-items: center; gap: var(--s4); text-align: center;
  }
  .d-live__gadget img { width: 170px; }
  .d-live__gadget .gadget__line { color: var(--ink); font-weight: 500; font-size: var(--fs-h3); max-width: 12rem; }
}

/* legal heroes: the date line and the pending marker */
.d-legal__date { margin-top: var(--s4); display: flex; flex-wrap: wrap; align-items: center; gap: var(--s2); font-size: var(--fs-small); color: var(--text-2); }
.d-gate {
  display: inline-flex; align-items: center; min-height: 28px; padding: 2px 12px; border-radius: 999px;
  border: 1px dashed var(--ink); background: var(--paper); color: var(--ink);
  font-size: var(--fs-small); font-weight: 700;
}
p.d-gate { justify-self: start; }

/* =========================================================================================
   2. About
   ========================================================================================= */
/* facility: centred head, then rows card + photo side by side (Zendesk split), then an address line */
.d-facility .zd-head .accent { color: var(--green-text); }
.d-facility__split { align-items: stretch; }
.d-rows { background: var(--floor); border-radius: var(--r-card); padding: var(--s2) var(--s6); }
.d-rows li { padding: var(--s5) 0; border-bottom: 1px solid var(--hairline); color: var(--text-2); }
.d-rows li:last-child { border-bottom: 0; }
.d-rows strong {
  display: flex; align-items: center; gap: var(--s3); margin-bottom: var(--s1);
  font-weight: 500; font-size: var(--fs-h3); line-height: 1.2; letter-spacing: -0.01em; color: var(--ink);
}
.d-rows strong::before { content: ""; flex: none; width: 12px; height: 12px; border-radius: 50%; background: var(--lime); }
.d-floor { position: relative; border-radius: var(--r-card); overflow: hidden; background: var(--floor); min-height: 18rem; }
.d-floor picture { display: block; height: 100%; }
.d-floor img { width: 100%; height: 100%; aspect-ratio: 5 / 4; object-fit: cover; }
.d-floor figcaption {
  position: absolute; left: var(--s4); right: var(--s4); bottom: var(--s4); z-index: 1;
  width: fit-content; max-width: calc(100% - 2 * var(--s4));
  padding: 10px 16px; border-radius: 16px; background: var(--paper); color: var(--ink);
  font-weight: 600; font-size: var(--fs-small); line-height: 1.35; box-shadow: 0 4px 16px rgb(18 19 17 / 0.18);
}
.d-facility__foot {
  margin-top: var(--s8); display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: var(--s3) var(--s6);
  text-align: center;
}
.d-facility__addr { color: var(--text-2); font-size: var(--fs-small); }
.d-facility__link .textlink { display: inline-flex; align-items: center; min-height: 44px; }
@media (min-width: 64rem) {
  .d-rows { padding: var(--s4) var(--s10); }
  .d-floor img { aspect-ratio: auto; min-height: 100%; }
  .d-floor figcaption { left: var(--s6); bottom: var(--s6); }
}

/* story: heading left (sticky), story right; awards as the home's award chips */
.d-story__grid { display: grid; gap: var(--s6); }
.d-story__body { display: grid; gap: var(--s4); max-width: 42rem; color: var(--text-2); }
.d-story__first { font-weight: 500; font-size: var(--fs-h3); line-height: 1.3; letter-spacing: -0.01em; color: var(--ink); }
.d-awards { margin-top: var(--s6); padding: var(--s6); background: var(--floor); border-radius: var(--r-card); }
.d-awards__list { display: grid; gap: var(--s3); margin-top: var(--s4); }
.d-awards__list li {
  display: flex; align-items: center; gap: 12px; min-height: 56px; padding: var(--s3) var(--s5);
  background: var(--paper); border-radius: 20px; font-weight: 600; font-size: var(--fs-small); color: var(--ink); line-height: 1.35;
}
.d-awards__list li::before { content: ""; flex: none; width: 10px; height: 10px; border-radius: 50%; background: var(--lime); }
@media (min-width: 64rem) {
  .d-story__grid { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); column-gap: var(--s16); align-items: start; }
  .d-story .h2 { position: sticky; top: calc(var(--header-h) + var(--s8)); }
  .d-story__body { font-size: 1.0625rem; gap: var(--s5); }
  .d-awards { padding: var(--s8) var(--s10); }
}

/* closing: floor panel (as the home's closing band) with the ink contact card */
.d-close { padding-bottom: var(--section-y); }
.d-close__grid { display: grid; gap: var(--s6); background: var(--floor); border-radius: var(--r-card); padding: var(--s8) var(--s5); }
.d-close__sub { margin-top: var(--s3); font-size: var(--fs-lead); }
.d-close__cta { margin-top: var(--s8); }
.d-close__more { margin-top: var(--s5); color: var(--text-2); }
.d-close__more .textlink { display: inline-flex; align-items: center; min-height: 44px; color: var(--ink); white-space: nowrap; }
.d-reach { align-self: end; display: grid; gap: var(--s1); background: var(--ink); color: var(--on-dark); border-radius: 32px; padding: var(--s6); }
.d-reach__phone a {
  display: inline-flex; align-items: center; min-height: 48px; font-weight: 500; letter-spacing: -0.01em;
  font-size: clamp(1.75rem, 1.4rem + 1.2vw, 2.25rem); line-height: 1.2; text-decoration: none; color: var(--lime);
}
.d-reach__phone a:hover { text-decoration: underline; text-decoration-thickness: 2px; }
.d-reach__email a { display: inline-flex; align-items: center; min-height: 44px; font-weight: 600; color: var(--on-dark); }
.d-reach :where(a):focus-visible { box-shadow: 0 0 0 3px var(--ink), 0 0 0 6px var(--lime); }
@media (min-width: 48rem) { .d-close__grid { padding: var(--s16); } }
@media (min-width: 64rem) {
  .d-close__grid { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); column-gap: var(--s12); align-items: end; }
  .d-reach { padding: var(--s10); }
}

/* =========================================================================================
   3. Gaming
   ========================================================================================= */
/* why: the bridge line left, the reality/solution card right */
.d-why { align-items: center; }
.d-why__h3 { font-size: clamp(1.5rem, 1.3rem + 0.8vw, 2rem); line-height: 1.2; max-width: 22ch; }
.d-pair { background: var(--floor); border-radius: var(--r-card); padding: var(--s2) var(--s6); }
.d-pair > div { display: grid; gap: 2px; padding: var(--s5) 0; border-bottom: 1px solid var(--hairline); }
.d-pair > div:last-child { border-bottom: 0; }
.d-pair dt { font-size: var(--fs-eyebrow); font-weight: 700; letter-spacing: 0.054em; color: var(--text-2); }
.d-pair dd { font-size: 1.125rem; line-height: 1.4; }
@media (min-width: 64rem) {
  .d-pair { padding: var(--s4) var(--s10); }
  .d-pair > div { grid-template-columns: 8rem minmax(0, 1fr); gap: var(--s4); }
}

/* tech: the inset dark band with two translucent cards and the CEO quote */
.d-tech { margin-top: var(--section-y); }
.d-tech__lead { color: var(--on-ink-2); }
.d-twin__card {
  display: grid; gap: var(--s2); align-content: start;
  background: rgb(255 255 255 / 0.06); border: 1px solid var(--hairline-dark); border-radius: var(--r-card); padding: var(--s6);
}
.d-twin__card p { color: var(--on-ink-2); }
.d-twin__card::before { content: ""; width: 40px; height: 6px; border-radius: 3px; background: var(--lime); margin-bottom: var(--s3); }
.d-quote--dark { margin-top: var(--s10); text-align: center; max-width: 52rem; margin-inline: auto; }
.d-quote--dark p { font-weight: 500; font-size: clamp(1.375rem, 1.1rem + 1.1vw, 2rem); line-height: 1.3; letter-spacing: -0.01em; }
.d-quote--dark figcaption { margin-top: var(--s5); font-weight: 700; color: var(--lime); }
@media (min-width: 48rem) { .d-twin__card { padding: var(--s10); } }

/* phoenix: product photo in a floor frame, copy beside it */
.d-phoenix { align-items: start; }
.d-phoenix__photo {
  display: grid; place-items: center; background: var(--floor); border-radius: var(--r-card); padding: var(--s8) var(--s6);
}
.d-phoenix__photo img { width: auto; max-width: 100%; max-height: 22rem; mix-blend-mode: multiply; }
.d-phoenix__text { display: grid; gap: var(--s5); }
.d-phoenix__lead { font-weight: 600; }
.d-phoenix__h3 { font-weight: 500; font-size: var(--fs-h3); line-height: 1.3; letter-spacing: -0.01em; }
.d-checks { display: grid; gap: var(--s3); }
.d-checks li { position: relative; padding-left: 36px; color: var(--text-2); }
.d-checks li::before {
  content: ""; position: absolute; left: 0; top: 0.1em; width: 24px; height: 24px; border-radius: 50%; background: var(--lime);
}
.d-checks li::after {
  content: ""; position: absolute; left: 8px; top: calc(0.1em + 6px); width: 6px; height: 10px;
  border: solid var(--ink); border-width: 0 2px 2px 0; transform: rotate(45deg);
}
.d-quote { background: var(--floor); border-radius: 24px; padding: var(--s6); }
.d-quote p { font-weight: 500; font-size: 1.125rem; line-height: 1.45; }
.d-quote figcaption { margin-top: var(--s3); font-size: var(--fs-small); font-weight: 700; }
.d-quote--dark { background: none; padding: 0; border-radius: 0; }
@media (min-width: 64rem) {
  .d-phoenix { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); }
  .d-phoenix__photo { position: sticky; top: calc(var(--header-h) + var(--s8)); padding: var(--s12); min-height: 34rem; }
  .d-phoenix__photo img { max-height: 30rem; }
  .d-quote { padding: var(--s8); }
}

/* bundles: Zendesk pricing-comparison card */
.d-specs__card { background: var(--paper); border: 1px solid var(--hairline); border-radius: var(--r-card); padding: var(--s5); }
.d-specs { width: 100%; border-collapse: collapse; font-size: var(--fs-body); line-height: 1.4; }
.d-specs th, .d-specs td { text-align: left; vertical-align: top; padding: var(--s4) var(--s4) var(--s4) 0; border-bottom: 1px solid var(--hairline); }
.d-specs thead th { font-weight: 600; font-size: var(--fs-h3); line-height: 1.2; letter-spacing: -0.01em; padding-bottom: var(--s5); border-bottom: 2px solid var(--ink); }
.d-specs thead th:first-child { font-size: var(--fs-eyebrow); font-weight: 700; letter-spacing: 0.054em; text-transform: uppercase; color: var(--text-2); vertical-align: bottom; }
.d-specs tbody th { font-weight: 600; width: 24%; }
.d-specs tbody tr:last-child > * { border-bottom: 0; }
.d-specs__lab { display: none; }
.d-foot { margin-top: var(--s3); font-size: var(--fs-small); color: var(--text-2); }
.d-specs__btns { margin-top: var(--s6); }
.d-custom { margin-top: var(--s6); display: grid; gap: var(--s5); background: var(--floor); border-radius: var(--r-card); padding: var(--s6); }
.d-custom__text { display: grid; gap: var(--s2); max-width: 40rem; color: var(--text-2); }
.d-custom__text .h3 { color: var(--ink); }
@media (min-width: 48rem) {
  .d-specs__card { padding: var(--s10); }
  .d-custom { padding: var(--s10); grid-template-columns: minmax(0, 1fr) auto; align-items: center; column-gap: var(--s10); }
}
@media (max-width: 47.99rem) {
  /* the bundle table on phones: each spec label full width, the two bundles side by side under it */
  .d-specs, .d-specs tbody { display: block; }
  .d-specs thead { display: block; position: sticky; top: calc(var(--header-h) + 1px); background: var(--paper); z-index: 1; }
  .d-specs thead tr { display: grid; grid-template-columns: 1fr 1fr; column-gap: var(--s4); }
  .d-specs thead th { font-size: 1.0625rem; padding: var(--s3) 0; }
  .d-specs thead th:first-child { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; padding: 0; }
  .d-specs tbody tr { display: grid; grid-template-columns: 1fr 1fr; column-gap: var(--s4); padding: var(--s3) 0; border-bottom: 1px solid var(--hairline); }
  .d-specs tbody tr:last-child { border-bottom: 0; }
  .d-specs tbody th { grid-column: 1 / -1; width: auto; border: 0; padding: 0 0 4px; font-size: var(--fs-eyebrow); letter-spacing: 0.054em; text-transform: uppercase; color: var(--text-2); font-weight: 700; }
  .d-specs td { border: 0; padding: 0; font-size: var(--fs-small); }
  .d-specs__lab { display: inline; position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
}
@media (max-height: 30rem) { .d-specs thead { position: static; } }

/* closing: the home's closing band (floor panel), the HubSpot slot as a white card, the ink contact card */
.d-embed { display: grid; gap: var(--s3); align-content: start; background: var(--paper); border-radius: 24px; padding: var(--s6); }
.d-embed .hs-form-frame { min-height: 8rem; display: grid; place-items: center; border: 1px dashed var(--steel); border-radius: var(--r-input); padding: var(--s5); }
.d-preview { font-size: var(--fs-small); color: var(--text-2); text-align: center; }
.d-game-close__side .d-reach { background: none; padding: 0; border-radius: 0; }
.d-game__mission { color: var(--on-ink-2); }
@media (min-width: 48rem) { .d-embed { padding: var(--s10); } }
@media (min-width: 64rem) {
  .d-game-close__grid .d-embed { grid-column: 1; grid-row: 2; }
}

/* =========================================================================================
   4. Resources hub
   ========================================================================================= */
.d-guide {
  position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: var(--s3);
  background: var(--floor); border-radius: var(--r-card); padding: var(--s6) var(--s6) var(--s16);
  transition: background-color var(--dur) var(--ease);
}
.d-guide:hover { background: var(--floor-2); }
.d-guide__h3 { max-width: 24ch; }
.d-guide__h3 a { text-decoration: none; }
.d-guide__h3 a::after { content: ""; position: absolute; inset: 0; border-radius: var(--r-card); }
.d-guide__h3 a:focus-visible { box-shadow: none; }
.d-guide:has(a:focus-visible) { box-shadow: 0 0 0 3px var(--paper), 0 0 0 6px var(--ink); }
.d-guide__line { color: var(--text-2); max-width: 32rem; }
/* round arrow button in the card's corner (drawn, not text) */
.d-guide::after {
  content: ""; position: absolute; left: var(--s6); bottom: var(--s6); width: 40px; height: 40px; border-radius: 50%;
  background: var(--ink) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 18 18'%3E%3Cpath d='M3 9h11M10 4.5 14.5 9 10 13.5' fill='none' stroke='%238ec63f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 18px no-repeat;
  transition: transform var(--dur) var(--ease);
}
.d-guide:hover::after { transform: translateX(4px); }
.d-talk { margin-top: var(--s12); text-align: center; color: var(--text-2); font-size: var(--fs-lead); }
.d-talk p { max-width: 40rem; margin-inline: auto; }
.d-talk a {
  display: inline-block; padding-block: 12px; margin-block: -12px; font-weight: 600; color: var(--ink); white-space: nowrap;
  text-decoration: underline; text-decoration-color: var(--lime); text-decoration-thickness: 2px; text-underline-offset: 0.25em;
}
.d-hub { padding-bottom: var(--section-y); }
@media (min-width: 48rem) { .d-guide { padding: var(--s10) var(--s10) 104px; } .d-guide::after { left: var(--s10); bottom: var(--s10); } }
@media (min-width: 64rem) { .d-guide { min-height: 20rem; } }

/* =========================================================================================
   5. Live: bridges
   ========================================================================================= */
.d-bridges { padding-bottom: var(--section-y); }
.d-bridge { display: flex; flex-direction: column; align-items: flex-start; gap: var(--s3); background: var(--floor); border-radius: var(--r-card); padding: var(--s6); }
.d-bridge__line { color: var(--text-2); max-width: 30rem; }
.d-bridge .textlink { display: inline-flex; align-items: center; min-height: 44px; margin-top: auto; padding-top: var(--s2); }
.d-bridge--ink { background: var(--ink); color: var(--on-dark); }
.d-bridge--ink .d-bridge__line { color: var(--on-ink-2); }
.d-bridge--ink :where(a):focus-visible { box-shadow: 0 0 0 3px var(--ink), 0 0 0 6px var(--lime); }
@media (min-width: 48rem) { .d-bridge { padding: var(--s10); min-height: 16rem; } }

/* =========================================================================================
   6. Privacy + accessibility: Zendesk help/legal article — summary card, then question-left / answer-right rows
   ========================================================================================= */
.d-legal__main { padding-bottom: var(--section-y); }
.d-legal__lede { display: grid; gap: var(--s5); margin-bottom: var(--s10); }
.d-short { background: var(--floor); border-radius: var(--r-card); padding: var(--s6); font-size: var(--fs-lead); line-height: 1.5; }
.d-legal__intro { color: var(--text-2); max-width: 46rem; }
.d-legal__body { border-top: 1px solid var(--hairline); }
.d-sec { display: grid; gap: var(--s3); padding: var(--s6) 0; border-bottom: 1px solid var(--hairline); }
.d-sec__h2 { font-weight: 500; font-size: clamp(1.25rem, 1.15rem + 0.4vw, 1.5rem); line-height: 1.25; letter-spacing: -0.01em; }
.d-sec__body { display: grid; gap: var(--s3); max-width: 44rem; color: var(--text-2); }
.d-sec__body ul { list-style: disc; padding-left: var(--s5); display: grid; gap: var(--s1); }
.d-sec__body a, .d-short a {
  display: inline-block; padding-block: 12px; margin-block: -12px;
  font-weight: 600; color: var(--ink); text-decoration: underline; text-decoration-color: var(--lime); text-decoration-thickness: 2px; text-underline-offset: 0.22em;
}
.d-legal__more { margin-top: var(--s8); }
.d-legal__more .textlink { display: inline-flex; align-items: center; min-height: 44px; }
@media (min-width: 48rem) { .d-short { padding: var(--s10); } }
@media (min-width: 64rem) {
  .d-legal__lede { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); column-gap: var(--s12); align-items: center; margin-bottom: var(--s16); }
  .d-sec { grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); column-gap: var(--s16); padding: var(--s8) 0; }
}

/* =========================================================================================
   7. 404 (HOME's page loads this file for .d-nf; unchanged from Draft 3)
   ========================================================================================= */
.d-page { padding-top: var(--s8); }
.d-h1 {
  font-family: var(--font-display); font-weight: 500; font-size: var(--fs-display);
  line-height: var(--lh-tight); letter-spacing: -0.02em; text-wrap: balance; max-width: 16ch;
}
.d-sub { margin-top: var(--s3); font-size: var(--fs-lead); line-height: 1.45; max-width: 36rem; }
@media (min-width: 48rem) { .d-page { padding-top: var(--s12); } }
@media (min-width: 64rem) { .d-page { padding-top: var(--s16); } }
.d-nf__router { padding-top: var(--s8); }
.d-nf__grid { display: grid; gap: var(--s4); grid-template-areas: "h2" "doors" "gadget" "contact"; }
.d-nf__h2 { grid-area: h2; }
.d-nf__doors { grid-area: doors; }
.d-nf .gadget { grid-area: gadget; }
.d-nf__contact { grid-area: contact; padding-top: var(--s4); border-top: 1px solid var(--hairline); display: grid; gap: var(--s1); }
.d-nf__contact p { display: flex; flex-wrap: wrap; align-items: center; gap: 0 var(--s4); }
.d-nf__contact a { display: inline-flex; align-items: center; min-height: 44px; font-weight: 700; }
.d-nf__addr { color: var(--ink-muted); font-size: var(--fs-small); }
@media (max-width: 47.99rem) {
  .d-nf .gadget { grid-template-columns: 100px auto; align-items: center; gap: var(--s4); max-width: none; }
  .d-nf .gadget img { width: 100px; }
}
@media (min-width: 64rem) {
  .d-nf__router { padding-top: var(--s12); }
  .d-nf__grid {
    grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); column-gap: var(--s16); row-gap: var(--s8); align-items: start;
    grid-template-areas: "h2 doors" "gadget doors" ". contact";
  }
  .d-nf .gadget { align-self: start; }
}

/* ---------- phone tightening ---------- */
@media (max-width: 47.99rem) {
  .d-close__grid { border-radius: 32px; }
  .d-reach { padding: var(--s5); border-radius: 24px; }
  .d-sec { padding: var(--s5) 0; }
}

@media (forced-colors: active) {
  .d-rows, .d-floor figcaption, .d-awards, .d-close__grid, .d-reach, .d-pair, .d-twin__card, .d-phoenix__photo, .d-quote,
  .d-specs__card, .d-custom, .d-embed, .d-guide, .d-bridge, .d-short, .d-channel, .d-mission { border: 1px solid CanvasText; }
  .d-rows strong::before, .d-awards__list li::before, .d-checks li::before, .d-twin__card::before { background: CanvasText; forced-color-adjust: none; }
}
@media print {
  .d-reach, .d-bridge--ink, .d-tech { background: none; color: var(--ink); }
}

/* ---------- laptop QA batch 2c (handoffs/draft4/logs/QA-LOG.md) ---------- */
/* /gaming/ tech band: the two short cards share ONE panel split by a hairline (same pattern as the /itad/ steps), so
   they no longer read as 40%-empty boxes; the CEO quote gets its statement size back (.d-quote p was overriding it
   to 18px) and sits closer. */
@media (min-width: 48rem) {
  .d-tech .d-twin {
    gap: 0; background: rgb(255 255 255 / 0.05); border: 1px solid var(--hairline-dark); border-radius: var(--r-card);
    padding: var(--s8) 0;
  }
  .d-tech .d-twin__card { background: none; border: 0; border-radius: 0; padding: 0 var(--s10); }
  .d-tech .d-twin__card + .d-twin__card { border-left: 1px solid var(--hairline-dark); }
}
.d-tech .d-quote--dark { padding: 0; }
.d-tech .d-quote--dark p { font-size: clamp(1.375rem, 1.1rem + 1.1vw, 2rem); line-height: 1.3; }
@media (min-width: 64rem) { .d-tech .d-quote--dark { margin-top: var(--s12); } }
