.chapter-eyebrow{margin:0;font-size:11px;line-height:1.5;letter-spacing:.2em;font-weight:700}
.technology-intro{padding:64px clamp(24px,4.7vw,86px) 70px;background:#eef0f2;color:#FFFFFF}
.technology-intro-layout{display:grid;grid-template-columns:1.2fr .8fr;align-items:end;gap:clamp(36px,7vw,120px);margin-top:28px}
.technology-intro h2{font-size:clamp(32px,3.2vw,52px);font-weight:400;line-height:1.12;letter-spacing:-.045em;max-width:750px;margin:0}
.technology-intro-copy p{font-size:17px;line-height:1.6;max-width:490px;margin:0 0 25px}
.technology-intro-link{display:inline-block;color:inherit;font-size:14px;font-weight:700;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:8px;transition:opacity .2s}
.technology-intro-link:hover{opacity:.7}
.technology-intro-link:focus-visible{outline:2px solid currentColor;outline-offset:6px}
.partners{background:#eef0f2;color:#FFFFFF;padding:45px clamp(24px,4.7vw,86px) 52px;overflow:hidden}
.partners-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}
.partners-heading h2{color:var(--brand-primary)}
.partners-arrow:focus-visible,.partners-viewport:focus-visible{outline:2px solid var(--brand-primary);outline-offset:5px}
.partners-viewport{overflow:hidden;touch-action:pan-y;cursor:grab}
.partners-viewport::-webkit-scrollbar{display:none}
.partners-viewport.is-dragging{cursor:grabbing}
.partners-track{display:flex;list-style:none;margin:0;padding:0;align-items:center;user-select:none}
.partner-logo{flex:0 0 20%;height:112px;display:flex;justify-content:center;align-items:center;padding:12px clamp(14px,2vw,35px)}
.partner-logo img{display:block;width:150px;max-width:100%;height:auto;object-fit:contain;pointer-events:none}
.build-space{position:relative;isolation:isolate;min-height:520px;height:clamp(520px,43vw,760px);background:#0c1115;overflow:hidden;display:flex;align-items:center;padding:60px var(--site-gutter);color:#FFFFFF}
.build-space-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;pointer-events:none}
.build-space-shade{position:absolute;inset:0;background:rgba(0,0,0,.24);z-index:-1}
.build-space-copy{max-width:760px}
.build-space h2{font-size:clamp(56px,6vw,98px);letter-spacing:-.055em;line-height:1.03;font-weight:400;margin:35px 0 40px}
.build-space-watch{display:inline-flex;align-items:center;gap:32px;min-height:56px;padding:17px 23px;background:var(--brand-primary);border:1px solid var(--brand-primary);color:#0c1115;font:700 14px Arial,Helvetica,sans-serif;cursor:pointer;transition:background .2s}
.build-space-watch span{font-size:13px}
.build-space-watch:hover{background:color-mix(in srgb,var(--brand-primary) 85%,white)}
.build-space-watch:focus-visible{outline:2px solid var(--brand-primary);outline-offset:5px}
.aura-film-dialog{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:clamp(20px,4vw,60px);border:0;background:#080d10;color:#FFFFFF;overflow:hidden}
.aura-film-dialog[open]{display:flex;align-items:center;justify-content:center}
.aura-film-dialog::backdrop{background:rgba(0,0,0,.92)}
.aura-film-close{position:absolute;top:18px;right:22px;z-index:2;width:44px;height:44px;background:#10191e;border:1px solid rgba(255,255,255,0.12);color:#FFFFFF;font-size:32px;line-height:1;cursor:pointer}
.aura-film-close:focus-visible{outline:2px solid var(--brand-primary);outline-offset:4px}
.aura-film-player{width:100%;height:100%;object-fit:contain;background:#080d10;border:0}
.aura-film-message{font-size:17px;line-height:1.6;max-width:450px;text-align:center;color:rgba(255,255,255,0.72)}
.aura-film-player[hidden],.aura-film-message[hidden]{display:none}
@media(max-width:900px){.technology-intro-layout{grid-template-columns:1fr 1fr;gap:35px}.partner-logo{flex-basis:33.333%}.build-space{height:580px}}
@media(max-width:600px){.technology-intro{padding:46px 21px 50px}.chapter-eyebrow{font-size:10px;letter-spacing:.16em}.technology-intro-layout{grid-template-columns:1fr;gap:27px;margin-top:23px}.technology-intro h2{font-size:36px}.technology-intro-copy p{font-size:16px;margin-bottom:22px}.partners{padding:32px 21px 38px}.partners-heading{margin-bottom:18px}.partner-logo{flex-basis:50%;padding:12px 20px;height:100px}.build-space{min-height:460px;height:65svh;max-height:650px;padding:50px 25px}.build-space h2{font-size:clamp(52px,12vw,72px);margin:27px 0 34px}.build-space-watch{gap:22px;padding:15px 18px;font-size:13px}.aura-film-dialog{padding:65px 12px 20px}}
@media(prefers-reduced-motion:reduce){.technology-intro-link,.build-space-watch{transition:none}}
.hero .scene-label-top{justify-content:flex-end}

.partners-carousel{position:relative;padding:0 38px}
.partners-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:32px;height:44px;display:grid;place-items:center;border:0;background:transparent;color:var(--brand-primary);font:300 32px Arial,Helvetica,sans-serif;cursor:pointer;padding:0}
.partners-arrow--prev{left:0}.partners-arrow--next{right:0}
.partners-arrow:hover{color:#FFFFFF}
@media(max-width:600px){.partners-carousel{padding:0 28px}.partners-arrow{width:24px}}

/* Official dark palette: color roles only. */
.technology-intro{color:#FFFFFF}.technology-intro-eyebrow,.technology-intro-link{color:var(--brand-primary)}.partners-arrow:hover{color:var(--brand-primary)}

/* Home Partners is the sole light-surface exception to the dark palette. */
.partners[aria-labelledby="partners-title"]{background:#F3F4F2;color:#212632}
.partners[aria-labelledby="partners-title"] .partners-heading h2,
.partners[aria-labelledby="partners-title"] .partners-arrow{color:#212632}
.partners[aria-labelledby="partners-title"] .partners-arrow:hover{color:var(--brand-primary)}

/* Contextual light surfaces: colour roles only; dark-primary regions remain unchanged. */
:is(.technology-intro){color:#182132;color-scheme:light}
:is(.technology-intro) .product-eyebrow{color:#65737f}
:is(.technology-intro):is(.technology-intro),:is(.technology-intro) :is(.technology-intro){color:#182132}
:is(.technology-intro):is(.partners),:is(.technology-intro) :is(.partners){color:#182132}
:is(.technology-intro):is(.partners-heading h2),:is(.technology-intro) :is(.partners-heading h2){color:#65737f}
:is(.technology-intro):is(.partners-arrow:focus-visible),:is(.technology-intro) :is(.partners-arrow:focus-visible),:is(.technology-intro):is(.partners-viewport:focus-visible),:is(.technology-intro) :is(.partners-viewport:focus-visible){outline-color:#65737f}
:is(.technology-intro):is(.build-space),:is(.technology-intro) :is(.build-space){color:#182132}
:is(.technology-intro):is(.build-space-watch:focus-visible),:is(.technology-intro) :is(.build-space-watch:focus-visible){outline-color:#65737f}
:is(.technology-intro):is(.aura-film-dialog),:is(.technology-intro) :is(.aura-film-dialog){color:#182132}
:is(.technology-intro):is(.aura-film-close),:is(.technology-intro) :is(.aura-film-close){border-color:rgba(24,33,50,0.12);color:#182132}
:is(.technology-intro):is(.aura-film-close:focus-visible),:is(.technology-intro) :is(.aura-film-close:focus-visible){outline-color:#65737f}
:is(.technology-intro):is(.aura-film-message),:is(.technology-intro) :is(.aura-film-message){color:rgba(24,33,50,0.72)}
:is(.technology-intro):is(.partners-arrow),:is(.technology-intro) :is(.partners-arrow){color:#65737f}
:is(.technology-intro):is(.partners-arrow:hover),:is(.technology-intro) :is(.partners-arrow:hover){color:#182132}
:is(.technology-intro):is(.technology-intro),:is(.technology-intro) :is(.technology-intro){color:#182132}
:is(.technology-intro):is(.technology-intro-eyebrow),:is(.technology-intro) :is(.technology-intro-eyebrow),:is(.technology-intro):is(.technology-intro-link),:is(.technology-intro) :is(.technology-intro-link){color:#65737f}
:is(.technology-intro):is(.partners-arrow:hover),:is(.technology-intro) :is(.partners-arrow:hover){color:#65737f}
:is(.technology-intro):is(.partners[aria-labelledby="partners-title"] .partners-arrow:hover),:is(.technology-intro) :is(.partners[aria-labelledby="partners-title"] .partners-arrow:hover){color:#65737f}

/* Local secondary hover retains all spacing, fonts and border geometry. */
.technology-intro .technology-intro-link:hover{background:#CCF47B;color:#0c1115}

.technology-intro .technology-intro-link:hover{border-bottom-color:#65737f}

/* =========================================================
   HOME HERO — ROBOT RESPONSE READOUT
========================================================= */

.hero .readout {
  --readout-color: #CCF47B;

  display: flex;
  flex-direction: column;
  align-items: flex-start;

  width: 250px;
  max-width: 250px;

  padding: 20px 22px 22px;

  box-sizing: border-box;

  color: #fff;
}


/* =========================================================
   STATUS
========================================================= */

.hero .readout-heading {
  display: flex;
  align-items: center;
  gap: 10px;

  width: 100%;

  color: var(--readout-color);

  font-size: 11px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: .13em;
  text-transform: uppercase;

  white-space: nowrap;

  transition: color .25s ease;
}


/* =========================================================
   STATUS DOT
========================================================= */

.hero .status-light {
  width: 8px;
  height: 8px;
  flex: 0 0 8px;

  border-radius: 50%;

  background: var(--readout-color);

  box-shadow:
    0 0 8px var(--readout-color),
    0 0 18px color-mix(
      in srgb,
      var(--readout-color) 55%,
      transparent
    );

  transition:
    background-color .25s ease,
    box-shadow .25s ease;
}


/* =========================================================
   MAIN RESPONSE
========================================================= */

.hero .readout-response {
  display: block;

  width: 100%;

  margin-top: 28px;

  color: #fff;

  font-size: clamp(26px, 2vw, 36px);
  font-weight: 400;
  line-height: .96;
  letter-spacing: -.04em;
  text-transform: uppercase;

  overflow-wrap: normal;
  word-break: normal;
}


/* =========================================================
   CAPTION
========================================================= */

.hero .readout-caption {
  display: block;

  width: 100%;

  margin-top: 28px;

  color: rgba(255,255,255,.68);

  font-size: 10px;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: .18em;
  text-transform: uppercase;
}


/* =========================================================
   BOTTOM LINE
========================================================= */

.hero .readout-line {
  display: block;

  width: 100%;
  height: 3px;

  margin-top: 15px;

  background: var(--readout-color);

  transition: background-color .25s ease;
}


/* =========================================================
   STATES
========================================================= */

.hero .readout[data-state="clear"],
.hero .readout[data-state="far"] {
  --readout-color: #CCF47B;
}

.hero .readout[data-state="approaching"] {
  --readout-color: #F0A33A;
}

.hero .readout[data-state="close"] {
  --readout-color: #E6534B;
}


/* =========================================================
   TRANSITIONS
========================================================= */

.hero .readout-heading,
.hero .status-light,
.hero .readout-line {
  transition:
    color .25s ease,
    background-color .25s ease,
    box-shadow .25s ease;
}