.static-contact{padding-block:56px 88px}
.static-contact h2{font-size:clamp(34px,4vw,54px);line-height:1.12;max-width:23ch;margin:24px 0}
.static-contact>p:not(.page-label){font-size:18px;line-height:1.8;max-width:62ch;color:var(--muted)}
.static-contact>a{margin-top:28px;overflow-wrap:anywhere}
.static-contact>a:not(.button){display:inline-block;font-size:14px;margin-left:24px}
[data-static-site] .search-results{padding-bottom:64px}
[data-static-site] .search-result-count{margin-block:24px;font-size:14px}
[data-static-site] .search-results .related-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
[data-static-site] .search-results .related-grid>a{display:block;padding:24px;border:1px solid #c8dddc;border-radius:4px;text-decoration:none}
[data-static-site] .search-results .related-grid h2{font-size:26px;line-height:1.2;margin-bottom:16px}
[data-static-site] .search-results .related-grid p{font-size:15px;line-height:1.8;color:var(--muted)}
@media(max-width:767px){.static-contact>a:not(.button){display:block;margin-left:0}.static-contact>p:not(.page-label){font-size:17px}[data-static-site] .search-results .related-grid{grid-template-columns:1fr}}

* { box-sizing: border-box; }
html { scroll-padding-top: 24px; }
body { margin: 0; color: var(--ink); background: var(--paper); font: 400 18px/1.6 var(--font-body); -webkit-font-smoothing: antialiased; }
body, input, textarea, button { font-synthesis: none; }
::selection { color: #000; background: var(--accent); }
img { display: block; max-width: 100%; }
a { color: inherit; text-underline-offset: .25em; text-decoration-thickness: 1px; }
a:hover { text-decoration-thickness: 2px; }
button, input, textarea { font: inherit; }
button, a, input, textarea { -webkit-tap-highlight-color: transparent; }
:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; box-shadow: 0 0 0 6px var(--accent); }
[hidden] { display: none !important; }
h1, h2, h3, p { margin: 0; }
h1, h2, h3 { font-family: var(--font-display); font-weight: 500; }
h1 { line-height: 1.02; letter-spacing: -.035em; text-wrap: balance; }
h2 { font-size: clamp(32px, 3.6vw, 52px); line-height: 1.13; letter-spacing: -.03em; }
h3 { font-size: 22px; line-height: 1.3; }
.shell { width: min(calc(100% - 112px), 1440px); margin-inline: auto; }
.skip-link { position: absolute; left: 16px; top: 8px; z-index: 10; padding: 12px 20px; background: var(--accent); color: #000; transform: translateY(-200%); }
.skip-link:focus { transform: translateY(0); }
.site-header { display: flex; align-items: center; justify-content: space-between; min-height: 104px; padding: 24px 56px; gap: 24px; background: var(--night); color: #fff; }
.brand { display: block; flex-shrink: 0; }
.brand img { object-fit: contain; object-position: left center; width: 218px; height: 51px; }
.site-header nav { display: flex; align-items: center; gap: 48px; }
.header-context { font-size: 14px; text-decoration: none; }
.button { min-height: 52px; display: inline-flex; align-items: center; justify-content: center; padding: 13px 24px; background: var(--accent); color: #000; border: 1px solid transparent; border-radius: var(--radius); font-size: 15px; font-weight: 600; line-height: 1.4; text-decoration: none; cursor: pointer; transition: background-color 120ms cubic-bezier(.2,0,0,1), color 120ms cubic-bezier(.2,0,0,1); }
.button:hover { background: var(--paper); color: #000; border-color: currentColor; }
.button-small { min-height: 44px; padding: 10px 20px; }
.button:disabled { opacity: .6; cursor: wait; }
.text-link { display: inline-block; padding-block: 12px; font-size: 15px; }
.hero { position: relative; background: var(--night); color: #fff; isolation: isolate; }
.hero-media { position: absolute; inset: 0 0 54px; z-index: -1; }
.hero-media picture, .hero-poster { width: 100%; height: 100%; }
.hero-poster { object-fit: cover; }
.hero-copy { display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-end; min-height: 680px; padding-top: 96px; padding-bottom: 80px; }
.hero-context { font-size: 14px; margin-bottom: 24px; }
.hero h1 { max-width: 720px; font-size: clamp(56px, 6.8vw, 104px); }
.hero-summary { font-size: 17px; line-height: 1.65; max-width: 440px; margin-top: 24px; }
.hero-actions { display: flex; align-items: center; gap: 32px; margin-top: 32px; }
.hero-caption { display: flex; justify-content: space-between; gap: 24px; padding-block: 18px; font-size: 12px; line-height: 1.5; color: var(--silver); }
.approach { padding-block: 96px; display: grid; grid-template-columns: 1fr 1fr; gap: 48px 96px; }
.section-label { margin-bottom: 24px; font-size: 14px; }
.approach-copy { padding-top: 47px; }
.prose { max-width: 70ch; }
.prose p + p { margin-top: 24px; }
.prose a { overflow-wrap: anywhere; }
.facts { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1fr 1fr; margin: 16px 0 0; padding-top: 32px; border-top: 1px solid var(--silver); }
.facts > div { border-right: 1px solid var(--silver); padding-left: 40px; display: flex; flex-direction: column-reverse; gap: 6px; }
.facts > div:first-child { padding-left: 0; }
.facts > div:last-child { border-right: 0; }
.facts dt { color: var(--muted); font-size: 14px; }
.facts dd { margin: 0; font-size: 56px; line-height: 1.2; letter-spacing: -.04em; font-variant-numeric: tabular-nums; }
.facts .location { font-size: 38px; }
.contact-section { background: var(--night); color: #fff; padding-block: 96px; }
.contact-layout { display: grid; grid-template-columns: 4fr 6fr; gap: 120px; }
.contact-intro > p:not(.section-label) { max-width: 34ch; color: var(--silver); margin-top: 24px; font-size: 17px; }
.contact-intro h2 { max-width: 10ch; font-size: clamp(40px, 4.5vw, 64px); }
.contact-principle { display: flex; gap: 16px; margin-top: 48px; max-width: 32ch; font-size: 15px; }
.rule-mark { color: var(--accent); white-space: nowrap; }
.deck-note { border-top: 1px solid var(--muted); margin-top: 64px; padding-top: 24px; }
.deck-note p { font-size: 14px; color: var(--silver); margin-top: 12px; }
.deck-note h3 { font-family: var(--font-body); font-size: 17px; }
.connection-notice { border-left: 2px solid var(--accent); padding: 0 0 0 20px; margin-bottom: 32px; font-size: 14px; }
.connection-notice p { color: var(--silver); margin-top: 4px; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.field { margin-bottom: 24px; }
.field label { display: block; margin-bottom: 10px; font-size: 14px; }
.required-note { color: var(--silver); font-size: 12px; }
input:not([type=checkbox]):not([type=hidden]), textarea { width: 100%; border: 1px solid var(--muted); border-radius: var(--radius); background: transparent; color: inherit; min-height: 48px; padding: 12px; line-height: 1.4; font-size: 16px; }
input::placeholder, textarea::placeholder { color: var(--silver); opacity: 1; }
textarea { resize: vertical; min-height: 124px; }
input[aria-invalid=true], textarea[aria-invalid=true] { border: 2px solid var(--accent); }
fieldset { padding: 0; margin: 8px 0 32px; border: 0; min-width: 0; }
legend { margin-bottom: 16px; font-size: 14px; }
.field-hint { color: var(--silver); font-size: 12px; }
.needs-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px 16px; }
.check-option { display: flex; align-items: center; gap: 12px; min-height: 40px; font-size: 14px; cursor: pointer; }
input[type=checkbox] { flex-shrink: 0; width: 18px; height: 18px; margin: 0; accent-color: var(--accent); }
.field-error { color: var(--accent); font-size: 13px; margin-top: 8px; }
.field-error:empty { display: none; }
.error-message, .success-message { padding: 16px; margin-bottom: 24px; border: 1px solid var(--accent); font-size: 15px; }
#form-status { scroll-margin-top: 24px; }
#form-status ul { margin-bottom: 32px; padding-left: 20px; font-size: 14px; }
.form-bottom { display: flex; flex-direction: column; align-items: flex-start; gap: 24px; }
.form-bottom p { max-width: 56ch; color: var(--silver); font-size: 12px; }
.honeypot, .visually-hidden { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.site-footer { display: grid; grid-template-columns: 1fr 1fr auto; gap: 32px; padding-block: 48px; font-size: 14px; }
.site-footer .text-link { padding: 0; font-size: 14px; }
.muted, .preview-note, .copyright { color: var(--muted); }
.preview-note { font-size: 12px !important; margin-top: 8px; }
.legal { padding-block: 64px 96px; min-height: 65vh; }
.legal h1 { font-size: clamp(40px, 5vw, 72px); margin-block: 32px; }
.legal .prose { margin-top: 40px; }
.legal .button { margin-right: 24px; }
@media (min-width: 1800px) { .hero-copy { min-height: 760px; } }
@media (max-width: 1023px) {
  .shell { width: calc(100% - 64px); }
  .site-header { padding-inline: 32px; }
  .site-header nav { gap: 24px; }
  .header-context { display: none; }
  .hero-copy { min-height: 620px; }
  .hero h1 { font-size: 80px; max-width: 610px; }
  .approach { column-gap: 40px; }
  .contact-layout { gap: 48px; grid-template-columns: 4fr 6fr; }
}
@media (max-width: 767px) {
  .shell { width: calc(100% - 48px); }
  .site-header { min-height: 88px; padding: 18px 24px; gap: 12px; }
  .brand img { width: 158px; height: 37px; }
  .button-small { padding: 10px 14px; font-size: 13px; }
  .hero-media { inset: 0 0 72px; }
  .hero-copy { min-height: 710px; padding-top: 240px; padding-bottom: 40px; }
  .hero h1 { max-width: 550px; font-size: clamp(46px, 10vw, 72px); }
  .hero-context { font-size: 12px; margin-bottom: 20px; }
  .hero-summary { max-width: 32ch; font-size: 16px; margin-top: 20px; }
  .hero-actions { gap: 24px; margin-top: 24px; }
  .hero-caption { min-height: 72px; font-size: 10px; gap: 24px; align-items: center; }
  .hero-caption span { max-width: 50%; }
  .approach { grid-template-columns: 1fr; gap: 32px; padding-block: 56px; }
  .section-label { margin-bottom: 16px; }
  .approach-copy { padding-top: 0; }
  .facts { margin-top: 8px; padding-top: 24px; }
  .facts > div { padding-left: 16px; }
  .facts dd { font-size: 38px; }
  .facts .location { font-size: 24px; }
  .facts dt { font-size: 12px; }
  .contact-section { padding-block: 56px; }
  .contact-layout { grid-template-columns: 1fr; gap: 40px; }
  .contact-intro h2 { max-width: 15ch; font-size: 44px; }
  .contact-principle { margin-top: 24px; }
  .deck-note { margin-top: 32px; }
  .site-footer { grid-template-columns: 1fr 1fr; gap: 24px; padding-block: 32px; }
  .copyright { grid-column: 1/-1; font-size: 12px; }
}
@media (max-width: 380px) {
  .shell { width: calc(100% - 32px); }
  .site-header { padding-inline: 16px; }
  .brand img { width: 140px; }
  .hero-copy { min-height: 740px; }
  .hero h1 { font-size: 46px; }
  .form-grid, .needs-grid { grid-template-columns: 1fr; }
  .form-grid { gap: 0; }
  .hero-actions { gap: 18px; }
  .button { padding-inline: 18px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}

@font-face{font-family:Outfit;src:url('/assets/fonts/outfit-display.woff2') format('woff2');font-weight:500 800;font-display:swap}
.proof-links{display:flex;flex-wrap:wrap;justify-content:center;gap:16px 28px;margin-top:28px;font-size:13px;line-height:1.7}
.choice-brand{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.choice-brand img{width:auto;height:64px}.choice-brand span{font:600 22px/1.2 var(--font-display);letter-spacing:0}
@font-face{font-family:Inter;src:url('/assets/fonts/inter-body.woff2') format('woff2');font-weight:400 700;font-display:swap}
:root{--hdr:.42s cubic-bezier(.4,0,.2,1);--header-space:114px;--header-h:84px;--paper:#fff;--night:#fff;--ink:#182c30;--muted:#526568;--silver:#526568;--accent:#087581;--radius:10px;--font-body:Inter,Arial,sans-serif;--font-display:Outfit,Arial,sans-serif}
body{background:#fff;color:#182c30;font-size:17px}h1,h2,h3{font-weight:600;letter-spacing:-.035em}a{text-underline-offset:5px}.wrap{width:min(calc(100% - 128px),1280px);margin-inline:auto}.button{background:#087581;color:#fff;border:1px solid #087581;border-radius:10px;padding:15px 24px;min-height:50px;font-size:14px}.button:hover{background:#fff;color:#087581;border-color:#087581}.plain-link{font-size:15px;padding-block:14px}.page-label{font-size:13px;color:#526568;letter-spacing:0;font-family:Inter,Arial,sans-serif}
/* The menu stays with the reader. The bar spans the window so nothing scrolls
   past in the gutters beside the page's measure, and the header inside it keeps
   that measure. Every other pinned thing on the site offsets by --header-h. */
/* Fixed rather than sticky, and the page reserves --header-space for it once.
   Sticky keeps the bar in flow, so condensing it shortened the document and
   reflowed everything below - every frame of the transition, for 300ms. Out of
   flow, the only thing the size change touches is the bar's own contents, and
   the page never jumps under the reader either. */
.header-bar{position:fixed;top:0;left:0;right:0;margin-inline:auto;width:100%;z-index:40;background:transparent;border:1px solid transparent;transition:width var(--hdr),top var(--hdr),border-radius var(--hdr),border-color var(--hdr),background-color var(--hdr),box-shadow var(--hdr),transform var(--hdr)}
/* Going down, the bar leaves rather than following you; turn around and it
   is there again. It is the one thing here that moves on transform alone, so
   the leaving and the returning cost nothing to composite. */
.header-away .header-bar{transform:translateY(calc(-100% - 16px))}
body{padding-top:var(--header-space)}
/* Condensed once the page has moved under it: the bar gives back 44px of screen
   and stops being the largest thing on it, without ever leaving. The sentinel
   is as tall as the scroll it takes to get there. */
.header-sentinel{position:absolute;top:0;left:0;width:1px;height:20px;pointer-events:none}
/* Condensed, the bar pulls in from the edges and rounds off, so it reads as
   something sitting on the page rather than a band welded across it. The page
   running past either side is what says so. --header-h covers the gap it now
   leaves above itself as well as its own height. */
.header-stuck .header-bar{
  width:min(calc(100% - 96px),1040px);top:10px;
  border-color:#a9c3c1;border-radius:14px;
  background:#fbfdfd;
  /* A tight shadow, not a soft one. The bar is fixed, so a wide blur is
     re-blurred against freshly scrolled content every frame: a 30px radius here
     halved the frame rate on the homepage, 33ms a frame against 16.7. The
     border and the off-white fill do the separating; this only lifts it. */
  box-shadow:0 2px 6px rgb(24 44 48 / .12)}
/* The nav needs about 1019px laid out as it is, which is most of the page's own
   measure - so the bar cannot pull in without the nav pulling in too. Closing
   the gaps and the brand down buys the room the inset costs. */
.header-stuck .spectrum-nav{gap:20px}
.spectrum-nav{transition:gap var(--hdr)}
/* Same shape as .wrap's own width, differing only in the inset: blending
   min(calc(100% - 128px), 1280px) into a bare calc() while the bar shrinks
   under it overshot the resting width by 6px and threw the nav outward
   before it came in. Matching forms interpolates straight down. */
.header-stuck .spectrum-header{min-height:68px;padding-block:8px;width:min(calc(100% - 48px),1280px);gap:24px}
.header-stuck .spectrum-brand img{height:40px}
.spectrum-header{transition:min-height var(--hdr),padding-block var(--hdr),width var(--hdr),gap var(--hdr)}
.spectrum-brand img{transition:height var(--hdr)}
@media(prefers-reduced-motion:reduce){.header-bar,.spectrum-header,.spectrum-nav,.spectrum-brand img{transition:none}}
.spectrum-header{display:flex;align-items:center;gap:32px;padding-block:28px;min-height:112px}.spectrum-brand{flex-shrink:0}.spectrum-brand img{width:auto;height:56px}.spectrum-nav{display:flex;gap:28px;margin-left:auto;align-items:center}.spectrum-nav a{font-size:14px;text-decoration:none}.spectrum-nav a:hover{text-decoration:underline}.spectrum-header .mobile-nav{display:none}
.spectrum-opening{padding-top:48px}.opening-copy{text-align:center}.opening-copy .page-label{margin-bottom:28px}.opening-copy h1{font-size:clamp(64px,7.3vw,112px);line-height:1.01;letter-spacing:-.045em}.opening-copy h1 span{display:block}.opening-copy h1 span:first-child{color:#087581}.opening-copy h1 span:last-child{color:#cd4938}.opening-copy>p:not(.page-label){max-width:54ch;font-size:19px;line-height:1.7;margin:32px auto 0}.opening-actions{display:flex;justify-content:center;align-items:center;gap:32px;margin-top:36px}.paint-canvas{position:relative;max-width:1360px;margin:24px auto 0;aspect-ratio:16/7;background:#fff}.paint-canvas picture{display:block;height:100%}.hero-poster{width:100%;height:100%;object-fit:contain}.hero-film{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity 900ms cubic-bezier(.3,0,0,1)}.hero-film.is-playing{opacity:1}.hero-logo{position:absolute;inset:0;width:100%;height:100%;display:block;opacity:0;pointer-events:none;touch-action:auto;cursor:grab;filter:drop-shadow(14px 34px 30px rgba(18,38,42,.34))}.hero-logo:active{cursor:grabbing}.hero-logo.is-playing{opacity:1;pointer-events:auto;touch-action:pan-y}.paint-canvas:has(.hero-logo.is-playing) .hero-poster{opacity:0}.paint-canvas .hero-poster{filter:drop-shadow(14px 34px 30px rgba(18,38,42,.34))}.paint-caption{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#526568;padding-top:12px}#film-toggle{font:inherit;color:inherit;background:none;border:0;text-decoration:underline;cursor:pointer;min-height:32px}
.spectrum-choices{display:grid;grid-template-columns:1fr 1fr;gap:64px;padding-block:104px 128px}.choice{display:block;border-top:1px solid #e95b47;padding:36px 0 0;text-decoration:none}.choice.research-choice{border-color:#1597a3}.choice>p:first-child{font-size:13px;color:#526568}.choice h2{font-size:40px;line-height:1.1;margin-block:18px 22px}.choice>p:not(:first-child){font-size:18px;line-height:1.7;max-width:45ch}.choice>span{display:inline-block;font-size:15px;text-decoration:underline;margin-top:28px}.neural-story{display:grid;grid-template-columns:4fr 6fr;gap:48px 80px;align-items:center;padding:64px;background:#edf8f7;border-radius:4px 72px 4px 4px}.story-copy h2{font-size:clamp(38px,4vw,58px);line-height:1.08;margin:24px 0}.story-copy>p:not(.page-label){font-size:18px;line-height:1.7;max-width:42ch}.story-copy>.button{margin-top:28px}.media-block{margin:0}.media-block img{display:block;width:100%;height:auto}.media-block figcaption{font-size:11px;color:#526568;line-height:1.6;margin-top:12px}.topic-links{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:24px 36px;padding-top:24px;border-top:1px solid #b5d8d4;font-size:14px}.spectrum-work,.spectrum-notes{padding-block:128px}.section-title{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:56px}.section-title h2{font-size:clamp(40px,4.4vw,64px);line-height:1.08;max-width:19ch}.section-title>a{font-size:14px;flex-shrink:0}.work-gallery{display:grid;grid-template-columns:1fr 1fr;gap:80px 48px;align-items:start}.work-card:nth-child(3n+1){grid-column:1/-1;display:grid;grid-template-columns:7fr 3fr;gap:64px;align-items:center}.work-card>div{padding-top:24px}.work-card h3{font-size:34px;line-height:1.1;margin:14px 0 20px}.work-card h3 a{text-decoration:none}.work-card>div>p:not(.page-label){font-size:16px;line-height:1.7;max-width:48ch;color:#526568}.working-story{background:#fff1ec;padding-block:104px}.working-story>.wrap{max-width:860px;text-align:center}.working-story h2{font-size:clamp(40px,4.6vw,68px);line-height:1.06}.working-story p{max-width:51ch;margin:28px auto;font-size:19px;line-height:1.7}.note-row{display:grid;grid-template-columns:140px 1fr 120px;gap:40px;border-top:1px solid #cfdcdb;padding:36px 0}.note-row time,.note-row>span{font-size:12px;color:#526568}.note-row h3{font-size:29px;line-height:1.1}.note-row h3 a{text-decoration:none}.note-row p{font-size:16px;line-height:1.6;color:#526568;margin-top:18px;max-width:60ch}.spectrum-callout{padding-block:112px;background:#edf8f7;text-align:center}.spectrum-callout p{font-size:13px;color:#526568}.spectrum-callout h2{font-size:clamp(44px,5vw,72px);line-height:1.06;max-width:20ch;margin:28px auto 36px}.spectrum-footer{padding-block:64px 28px;border-top:4px solid #27a7b3}.footer-intro{display:flex;align-items:center;gap:48px;padding-bottom:56px}.footer-intro img{width:auto;height:54px}.footer-intro p{max-width:36ch;font-size:15px;line-height:1.7;flex:1}.footer-intro>a{margin-left:auto;font-size:14px}.footer-links{display:grid;grid-template-columns:1fr 1fr 1fr;gap:64px}.footer-links h2{font-size:22px;margin-bottom:24px}.footer-links a{display:block;font-size:13px;margin-top:14px;color:#526568;text-decoration:none}.footer-links a:hover{text-decoration:underline}.footer-legal{display:flex;flex-wrap:wrap;gap:24px 36px;padding-top:28px;border-top:1px solid #d9e2e0;margin-top:56px;font-size:11px;color:#526568}.footer-legal>p:last-child{margin-left:auto}
.page-intro{padding-block:72px 80px}.page-intro h1{font-size:clamp(48px,6vw,88px);line-height:1.04;max-width:20ch;margin-top:28px}.intro-summary{max-width:66ch;font-size:20px;line-height:1.7;margin-top:32px}.capability-gallery{padding-bottom:104px}.capability-gallery>article{display:grid;grid-template-columns:5fr 5fr;gap:80px;align-items:center;padding-block:48px;border-top:1px solid #cfdcdb}.capability-gallery h2{font-size:38px;line-height:1.1}.capability-gallery h2 a{text-decoration:none}.capability-gallery p{font-size:17px;line-height:1.7;color:#526568;margin-top:22px;max-width:46ch}.capability-gallery .plain-link{display:inline-block;margin-top:16px}.feature-image{padding-bottom:32px}.detail-columns{display:grid;grid-template-columns:7fr 3fr;gap:96px;align-items:start;padding-block:56px}.reading{max-width:70ch;margin:0 auto;padding-block:56px;font-size:18px;line-height:1.8}.reading h2{font-size:34px;line-height:1.15;margin:42px 0 24px}.reading h2:first-child{margin-top:0}.reading p+p{margin-top:24px}.reading pre{overflow-x:auto;padding:24px;background:#edf8f7;font-size:14px}.detail-columns .reading{padding:0}.scope-notes{border-top:1px solid var(--accent);padding-top:24px;position:sticky;top:calc(var(--header-h) + 32px)}.scope-notes h2{font-size:26px}.scope-notes dt{font-size:12px;font-weight:600;margin-top:24px}.scope-notes dd{margin:8px 0 0;font-size:15px;line-height:1.65;color:#526568}.spectrum-faq{padding-block:64px 88px}.spectrum-faq h2{font-size:44px;margin-bottom:36px}.spectrum-faq details{padding:24px 0;border-top:1px solid #cfdcdb}.spectrum-faq summary{font-size:20px;cursor:pointer}.spectrum-faq p{max-width:68ch;margin-top:20px;font-size:17px;line-height:1.7}.spectrum-related{padding-block:72px;border-top:1px solid #cfdcdb}.spectrum-related>h2{font-size:44px;margin-bottom:40px}.spectrum-related>div{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.spectrum-related a{text-decoration:none}.spectrum-related span{font-size:12px;color:#526568}.spectrum-related h3{font-size:28px;line-height:1.15;margin:16px 0}.spectrum-related p{font-size:15px;color:#526568;line-height:1.7}.spectrum-archive{padding-bottom:112px}.spectrum-filters{display:flex;align-items:end;gap:24px;flex-wrap:wrap;padding:28px 0;border-block:1px solid #cfdcdb}.spectrum-filters label{flex:1;min-width:150px;font-size:13px}select{display:block;width:100%;padding:13px;background:#fff;color:#182c30;border:1px solid #8b9f9f;border-radius:8px;font:inherit;margin-top:8px;min-height:48px}.result-count,.empty-results{margin:24px 0 40px;font-size:13px;color:#526568}.project-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;border-block:1px solid #cfdcdb;padding-block:28px}.project-meta dt{font-size:12px;color:#526568}.project-meta dd{font-size:18px;margin:10px 0 0}.project-results{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;padding-block:48px}.project-results strong{display:block;font-family:Outfit,sans-serif;font-size:46px}.source-note{padding-top:0}.project-gallery .media-block{margin-bottom:48px}.article-meta{display:flex;flex-wrap:wrap;gap:24px;border-bottom:1px solid #cfdcdb;padding-bottom:24px;font-size:13px;color:#526568}.draft-note{padding-block:20px 0;font-size:12px}.newsletter-note{padding-block:64px;border-top:1px solid #cfdcdb}.newsletter-note h2{font-size:38px}.newsletter-note p{font-size:16px;margin-top:24px;color:#526568}.spectrum-team-intro{display:grid;grid-template-columns:1fr 1fr;gap:64px;padding-block:40px 72px;border-block:1px solid #cfdcdb}.spectrum-team-intro>div{display:flex;align-items:center;gap:40px}.spectrum-team-intro strong{font-family:Outfit,sans-serif;font-size:128px;line-height:1;color:#087581}.spectrum-team-intro span{font-size:18px;max-width:24ch;line-height:1.6}.team-directory{padding-block:64px}.team-directory h2{font-size:44px;margin-bottom:32px}.team-directory details{border-top:1px solid #cfdcdb;padding:24px 0}.team-directory summary{display:flex;justify-content:space-between;gap:24px;cursor:pointer}.team-directory strong{font-size:24px}.team-directory p{font-size:16px;line-height:1.7;margin-block:24px;max-width:66ch}.process-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;padding-block:32px 88px}.process-grid article{border-top:1px solid var(--accent);padding-top:28px}.process-grid h2{font-size:30px}.process-grid p{font-size:17px;line-height:1.7;color:#526568;margin-top:20px}.contact-choices{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding-bottom:48px}.contact-choices a{border-top:1px solid #e95b47;padding-top:24px;text-decoration:none}.contact-choices a+a{border-color:#1597a3}.contact-choices h2{font-size:34px}.contact-choices p{font-size:16px;line-height:1.7;margin-top:18px;color:#526568}.contact-section{background:#fff;color:#182c30}.contact-layout{width:min(calc(100% - 128px),1280px);gap:88px}.contact-intro h2{font-size:50px;max-width:14ch}.contact-intro>p:not(.section-label),.deck-note p,.connection-notice p,.required-note,.field-hint,.form-bottom p{color:#526568}.field-error{color:#a72e23}.recovery{padding-block:24px 80px}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.spectrum-header{gap:22px}.spectrum-brand img{height:45px}.spectrum-nav{gap:18px}.spectrum-nav a{font-size:12px}.neural-story{padding:40px;gap:40px}.work-card:nth-child(3n+1){grid-template-columns:1fr 1fr;gap:40px}.detail-columns{gap:48px}.reading{width:calc(100% - 64px)}.detail-columns .reading{width:100%}.spectrum-team-intro strong{font-size:100px}.spectrum-team-intro>div{gap:28px}}
@media(max-width:900px){.spectrum-nav{display:none}.spectrum-header>.button{margin-left:auto}.spectrum-header .mobile-nav{display:block}.mobile-nav summary{cursor:pointer;padding:12px}.mobile-nav nav{position:absolute;left:24px;right:24px;top:92px;display:flex;flex-direction:column;gap:20px;background:#fff;border:1px solid #8b9f9f;border-radius:12px;padding:24px;z-index:9}}
@media(max-width:767px){:root{--header-space:90px;--header-h:74px}.header-stuck .header-bar{width:calc(100% - 20px);top:8px;border-radius:12px}.header-stuck .spectrum-header{min-height:60px;padding-block:6px}.header-stuck .spectrum-brand img{height:27px}.wrap{width:calc(100% - 40px)}.spectrum-header{min-height:88px;padding-block:18px;gap:14px}.spectrum-brand img{height:33px}.spectrum-header>.button{font-size:12px;padding:11px 14px;min-height:44px}.spectrum-header .mobile-nav{font-size:13px}.spectrum-opening{padding-top:40px}.opening-copy h1{font-size:54px;line-height:1.05}.opening-copy>p:not(.page-label){font-size:17px;line-height:1.7;margin-top:28px}.opening-actions{gap:24px;margin-top:28px}.paint-canvas{aspect-ratio:4/3;margin-top:32px}.paint-canvas .hero-poster,.paint-canvas .hero-film{object-fit:cover}.paint-caption{font-size:10px;gap:24px}.spectrum-choices{grid-template-columns:1fr;gap:44px;padding-block:64px 88px}.choice{padding-top:28px}.choice h2{font-size:34px}.choice>p:not(:first-child){font-size:17px}.neural-story{grid-template-columns:1fr;padding:32px 24px;gap:32px;border-radius:4px 40px 4px 4px}.story-copy h2{font-size:40px}.story-copy>p:not(.page-label){font-size:17px}.topic-links{gap:20px;font-size:13px}.spectrum-work,.spectrum-notes{padding-block:80px}.section-title{display:block;margin-bottom:40px}.section-title h2{font-size:42px}.section-title>a{display:inline-block;margin-top:24px}.work-gallery{grid-template-columns:1fr;gap:48px}.work-card:nth-child(3n+1){display:block;grid-column:auto}.work-card h3{font-size:30px}.working-story{padding-block:72px}.working-story h2{font-size:42px}.working-story p{font-size:17px}.note-row{grid-template-columns:1fr;gap:16px;padding-block:28px}.note-row h3{font-size:28px}.spectrum-callout{padding-block:80px}.spectrum-callout h2{font-size:44px}.footer-intro{flex-wrap:wrap;gap:24px}.footer-intro img{height:48px}.footer-intro p{flex-basis:100%;order:2}.footer-intro>a{margin-left:0}.footer-links{grid-template-columns:1fr 1fr;gap:36px 24px}.footer-links h2{font-size:20px}.footer-legal{gap:20px}.footer-legal>p:last-child{margin-left:0;flex-basis:100%}.page-intro{padding-block:48px 56px}.page-intro h1{font-size:46px}.intro-summary{font-size:18px;line-height:1.7}.capability-gallery>article{display:flex;flex-direction:column;gap:32px;align-items:start;padding-block:36px}.capability-gallery h2{font-size:34px}.capability-gallery p{font-size:16px}.capability-gallery{padding-bottom:72px}.detail-columns{grid-template-columns:1fr;gap:40px;padding-block:40px}.scope-notes{position:static}.reading{width:calc(100% - 40px);padding-block:40px;font-size:17px}.reading h2{font-size:30px}.spectrum-faq{padding-block:40px 64px}.spectrum-faq h2{font-size:36px}.spectrum-faq summary{font-size:18px}.spectrum-related{padding-block:48px}.spectrum-related>h2{font-size:36px}.spectrum-related>div{grid-template-columns:1fr;gap:32px}.spectrum-filters{gap:16px}.spectrum-filters label{min-width:130px}.project-meta{grid-template-columns:1fr;gap:24px}.project-results{grid-template-columns:1fr 1fr}.article-meta{font-size:12px;gap:16px 24px}.spectrum-team-intro{grid-template-columns:1fr;gap:36px}.spectrum-team-intro strong{font-size:96px}.spectrum-team-intro span{font-size:16px}.team-directory h2{font-size:36px}.team-directory summary{flex-direction:column;gap:12px}.process-grid{grid-template-columns:1fr;gap:32px}.contact-choices{grid-template-columns:1fr;gap:32px}.contact-choices h2{font-size:30px}.contact-layout{width:calc(100% - 40px);gap:40px}.contact-intro h2{font-size:42px}}
@media(max-width:380px){.spectrum-header{gap:10px}.spectrum-brand img{height:28px}.spectrum-header>.button{font-size:11px;padding-inline:11px}.opening-copy h1{font-size:46px}.opening-actions{gap:18px}.opening-actions .button{padding-inline:18px}.page-intro h1{font-size:42px}}
.spectrum-label-lockups{display:flex;justify-content:center;gap:64px;margin-bottom:40px}.spectrum-label-lockups a{display:flex;flex-direction:column;align-items:center;text-decoration:none}.spectrum-label-lockups img{width:184px;height:49px;object-fit:contain}.spectrum-label-lockups span{font-family:Outfit,sans-serif;font-size:20px;font-weight:600;line-height:1.2;margin-top:4px}.games-label{color:#cd4938}.research-label{color:#087581}.header-label{display:block;font-family:Outfit,sans-serif;font-size:14px;margin-left:51px;line-height:1}.opening-copy h1{font-size:clamp(62px,6.8vw,104px)}
@media(max-width:767px){.spectrum-label-lockups{gap:28px;margin-bottom:32px}.spectrum-label-lockups img{width:144px;height:38px}.spectrum-label-lockups span{font-size:17px}.opening-copy h1{font-size:50px}.header-label{font-size:12px;margin-left:30px}}
@media(max-width:380px){.spectrum-label-lockups{gap:20px}.spectrum-label-lockups img{width:126px;height:34px}.opening-copy h1{font-size:44px}}
.spectrum-trust{padding-block:64px 32px;text-align:center}
.spectrum-trust h2{font:500 18px/1.6 var(--font-body);letter-spacing:0;margin-bottom:36px}
.spectrum-partner-logos{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:28px 40px}
.spectrum-partner-logos img{width:128px;height:52px;object-fit:contain}
.spectrum-partner-logos>span{font:600 18px var(--font-display);padding:12px 8px}
.spectrum-trust-note{margin:28px auto 0;font-size:12px;color:#526568;max-width:70ch;line-height:1.7}
.spectrum-trust-note summary{cursor:pointer;text-decoration:underline;padding:10px}.spectrum-trust-note p{margin-top:12px}
.platform-showcase{width:min(calc(100% - 128px),1280px);margin:104px auto 0;padding:56px;background:#fff2ec;border-radius:4px 64px 4px 4px}
.platform-heading{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:end;margin-bottom:44px}
.platform-eyebrow{font-size:13px;color:#a4372a;margin-bottom:20px}
.platform-heading h2{font-size:clamp(36px,4vw,56px);line-height:1.08;max-width:18ch}
.platform-heading>p{font-size:18px;line-height:1.75;color:#526568;max-width:48ch}
.platform-groups{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.platform-group{border-top:1px solid #cd4938;padding-top:24px}.platform-group:nth-child(even){border-color:#087581}
.platform-number{display:block;font:600 48px/1 var(--font-display);color:#b83e2f;margin-bottom:24px}.platform-group:nth-child(even) .platform-number{color:#087581}
.platform-group h3{font-size:21px;line-height:1.2;margin-bottom:20px}
.platform-group ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:10px}
.platform-group li{font-size:14px;font-weight:500;background:#fff;padding:10px 12px;border-radius:4px}
.platform-link{display:inline-block;margin-top:32px;padding-block:12px;font-size:15px}
@media(max-width:1100px){.platform-showcase{width:calc(100% - 64px);padding:40px}.platform-heading{gap:40px}.platform-groups{grid-template-columns:1fr 1fr;gap:32px}}
@media(max-width:767px){.spectrum-trust{padding-top:48px}.spectrum-trust h2{font-size:16px}.spectrum-partner-logos{gap:24px}.spectrum-partner-logos img{width:112px;height:44px}.spectrum-partner-logos>span{font-size:16px}.platform-showcase{width:calc(100% - 40px);margin-top:64px;padding:32px 24px}.platform-heading{grid-template-columns:1fr;gap:24px}.platform-heading>p{font-size:17px}.platform-groups{gap:28px 20px}.platform-group h3{font-size:19px}.platform-group li{font-size:13px;padding:8px}.platform-number{font-size:40px}}
@media(max-width:380px){.platform-groups{grid-template-columns:1fr}}
@media(min-width:901px){
 .spectrum-opening{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:32px;width:min(calc(100% - 128px),1280px);margin:32px auto 0;padding-top:0}
 .spectrum-opening .opening-copy{width:auto;text-align:left}.spectrum-label-lockups{justify-content:flex-start;gap:40px;margin-bottom:32px}.spectrum-label-lockups img{width:156px;height:42px}
 .spectrum-opening .opening-copy h1{font-size:clamp(52px,5.2vw,76px)}.spectrum-opening .opening-copy>p:not(.page-label){margin:28px 0 0;font-size:18px;max-width:44ch}.spectrum-opening .opening-actions{justify-content:flex-start;gap:24px}
 .spectrum-opening .paint-canvas{width:100%;height:560px;aspect-ratio:auto;margin:0}.spectrum-opening .paint-canvas .hero-poster,.spectrum-opening .paint-canvas .hero-film{object-fit:contain}
 .spectrum-opening .paint-caption{grid-column:1/-1;width:100%;padding-top:0}
}
@media(min-width:901px) and (max-width:1100px){.spectrum-opening{width:calc(100% - 64px);gap:24px}.spectrum-label-lockups{gap:28px}.spectrum-label-lockups img{width:140px;height:38px}.spectrum-opening .paint-canvas{height:500px}}

.evolve-mark{display:inline-flex;align-items:center;gap:.32em;color:inherit;font:600 38px/1 var(--font-display);letter-spacing:-.03em}
.evolve-glyph{width:.884em;height:1em;flex:none;color:#fd663a}
.evolve-wordmark{font:inherit;letter-spacing:inherit}
.evolve-mark.compact{font-size:14px;letter-spacing:-.01em}


.footer-links a.footer-evolve{margin-top:16px}
.footer-evolve .evolve-mark{font-size:15px}
.evolve-backdrop{position:absolute;inset:auto auto -12% -9%;width:min(52vw,760px);height:auto;z-index:-1;color:#2f7d7a;opacity:.16;transform:rotate(-14deg);pointer-events:none}
.evolve-band{display:grid;grid-template-columns:6fr 5fr;gap:48px 72px;align-items:center;padding-block:8px}
.evolve-band .page-label{color:#8fd6cf}
.evolve-copy .evolve-mark{margin:16px 0 4px}
.evolve-band h2{font-size:clamp(34px,3.6vw,52px);line-height:1.08;margin:16px 0 20px;max-width:18ch}
.evolve-lead{font-size:17px;line-height:1.7;max-width:48ch;color:#cfe6e3}
.evolve-facts{list-style:none;margin:30px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.evolve-facts li{border-top:1px solid #3d7a80;padding-top:14px}
.evolve-facts strong{display:block;font:600 20px/1.2 var(--font-display)}
.evolve-facts span{display:block;font-size:13px;line-height:1.6;margin-top:8px;color:#a9cdc9}
.evolve-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 28px;margin-top:34px}
.evolve-actions .button{background:#5fd3c4;color:#0c3238;border-color:#5fd3c4}
.evolve-actions .button:hover{background:transparent;color:#5fd3c4;border-color:#5fd3c4}
.evolve-actions .plain-link{color:#bfe8e2}
.evolve-art .media-block figcaption{color:#a9cdc9}
.mega-contact.mega-evolve{font-weight:600}
@media(max-width:900px){.evolve-band{grid-template-columns:1fr;gap:36px}.evolve-facts{grid-template-columns:1fr}.evolve-mark{font-size:32px}.evolve-backdrop{width:min(90vw,620px)}}
.page-intro-mark h1 .evolve-mark{font:inherit;gap:.3em}



.evolve-trailer{margin:0;position:relative}
.evolve-trailer-open{display:block;position:relative;text-decoration:none;color:inherit;border-radius:4px}
.evolve-trailer-open .media-block img{display:block}
.evolve-play{position:absolute;inset:0;display:grid;place-items:center;color:#5fd3c4;transition:transform .2s ease}
.evolve-play svg{width:72px;height:72px;filter:drop-shadow(0 6px 18px #00000059)}
.evolve-trailer-open:is(:hover,:focus-visible) .evolve-play{transform:scale(1.07)}
.evolve-trailer-label{display:block;font-size:13px;line-height:1.6;margin-top:12px;color:#a9cdc9}
.evolve-trailer>figcaption{font-size:11px;line-height:1.6;margin-top:6px;color:#8fb6b2}
.evolve-trailer-dialog{width:min(1100px,92vw);padding:0;border:0;border-radius:6px;background:#04191d;color:#eaf6f4}
.evolve-trailer-dialog::backdrop{background:#04191de6}
.evolve-trailer-frame{position:relative;padding-top:56.25%}
.evolve-trailer-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.evolve-trailer-close{position:absolute;z-index:1;top:12px;right:12px;width:40px;height:40px;border-radius:50%;border:0;background:#04191dcc;color:#eaf6f4;font-size:22px;line-height:1;cursor:pointer}
.evolve-trailer-close:is(:hover,:focus-visible){background:#5fd3c4;color:#04191d}
@media(max-width:767px){.evolve-play svg{width:56px;height:56px}}
.feature-image .evolve-trailer-label,.feature-image .evolve-trailer>figcaption{color:#526568}

.trademark-note{font-size:11px;line-height:1.6;color:var(--muted);margin-top:24px}

@view-transition{navigation:auto}::view-transition-old(root),::view-transition-new(root){animation-duration:240ms;animation-timing-function:cubic-bezier(.2,0,0,1)}
.spectrum-studio .button {
  --button-shadow: color-mix(in srgb, var(--accent) 32%, transparent);
  position: relative;
  overflow: hidden;
  isolation: isolate;
  box-shadow: 0 0 0 var(--button-shadow);
  transition: transform 220ms cubic-bezier(.2,.8,.2,1), box-shadow 220ms cubic-bezier(.2,.8,.2,1), background-color 180ms ease, color 180ms ease, border-color 180ms ease;
}
.spectrum-studio .button::before {
  content: '';
  position: absolute;
  z-index: -1;
  inset: -1px -25%;
  background: currentColor;
  opacity: .09;
  transform: translateX(-105%) skewX(-18deg);
  transition: transform 360ms cubic-bezier(.2,.8,.2,1);
  pointer-events: none;
}
.spectrum-studio.identity-spectrum .button:is(:hover, :focus-visible):not(:disabled, [aria-disabled=true]) { background: #086773; border-color: #086773; color: #fff; }
@media (hover: hover) and (pointer: fine) {
  .spectrum-studio .button:hover:not(:disabled, [aria-disabled=true]) { transform: translate(-2px, -3px); box-shadow: 4px 5px 0 var(--button-shadow); }
  .spectrum-studio .button:hover:not(:disabled, [aria-disabled=true])::before { transform: translateX(0) skewX(-18deg); }
}
.spectrum-studio .button:focus-visible:not(:disabled, [aria-disabled=true]) {
  outline: 2px solid currentColor;
  outline-offset: 4px;
  box-shadow: 0 0 0 2px var(--paper), 0 0 0 4px var(--accent);
}
.spectrum-studio .button:focus-visible:not(:disabled, [aria-disabled=true])::before { transform: translateX(0) skewX(-18deg); }
.spectrum-studio .button:active:not(:disabled, [aria-disabled=true]) { transform: translate(1px, 1px); box-shadow: 1px 1px 0 var(--button-shadow); transition-duration: 70ms; }
.spectrum-studio .button:is(:disabled, [aria-disabled=true]) { transform: none; box-shadow: none; }
@media (prefers-reduced-motion: reduce) {
  .spectrum-studio .button, .spectrum-studio .button::before { transition: none; }
  .spectrum-studio .button:is(:hover, :active, :focus-visible):not(:disabled, [aria-disabled=true]) { transform: none; }
  .spectrum-studio .button::before { display: none; }
}
.has-polish a:not(.button){transition:color 120ms cubic-bezier(.2,0,0,1),text-decoration-color 120ms cubic-bezier(.2,0,0,1)}.fx-art{transition:transform 240ms cubic-bezier(.2,0,0,1)}
.fx-reveal{opacity:0;transform:translate3d(0,24px,0);transition:opacity 480ms cubic-bezier(.2,0,0,1) var(--fx-delay,0ms),transform 480ms cubic-bezier(.2,0,0,1) var(--fx-delay,0ms)}.fx-reveal.fx-revealed{opacity:1;transform:none}
.fx-reveal:focus-within{opacity:1}
.fx-reading-progress{display:none;position:fixed;top:0;left:0;width:100%;height:3px;background:#22a5b2;z-index:100;transform-origin:left center;pointer-events:none}
@supports(animation-timeline:scroll()){.fx-reading-progress{display:block;animation:fx-progress linear both;animation-timeline:scroll(root block)}@keyframes fx-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}}
.has-polish .field label{transition:color 120ms cubic-bezier(.2,0,0,1),transform 120ms cubic-bezier(.2,0,0,1)}.has-polish .field:focus-within>label{color:var(--accent);transform:translateY(-1px)}
.has-polish form[aria-busy=true] button[type=submit]{animation:fx-working 900ms cubic-bezier(.2,0,0,1) infinite alternate}@keyframes fx-working{from{opacity:1}to{opacity:.6}}
@media(prefers-reduced-motion:reduce){@view-transition{navigation:none}.fx-reading-progress{display:none}.fx-art{transform:none!important}.fx-reveal{opacity:1!important;transform:none!important}.has-polish *{animation:none!important;transition:none!important}}

/* A run is a block that holds its place while the page scrolls past it and a
   track that says for how long. Script writes --run across the run, 0 to 1, and
   the children of a .run-steps list come up one at a time against it. Without
   the script, below the breakpoint, or with reduced motion, --run is unset and
   everything reading it falls back to finished. */
/* Every screen holds; only how long differs, which the run's own stylesheet
   sets. A track with no height, which is what a browser without the viewer
   leaves the hero, holds nothing. */
.scroll-run { position: sticky; }
/* The steps come up on every screen. Wide ones hold the block still while they
   do it; narrow ones, where holding would cost more screen than it is worth,
   run them as the block crosses the viewport. */
.run-steps > * {
  --on: clamp(0, calc(var(--run, 1) * var(--steps, 5) - var(--i, 0)), 1);
  /* A wipe rather than a fade: the step is drawn in from its own edge, rule
     first, at full weight the whole way. Nothing sits half-transparent.
     The clip sits 12px outside the box on every side it is not wiping, and
     the wiping edge ends there too, so a focus ring on a finished step is
     never cut off by it. */
  clip-path: inset(-12px calc((1 - var(--on)) * 100% - var(--on) * 12px) -12px -12px);
}
.run-steps > :nth-child(2) { --i: 1 }
.run-steps > :nth-child(3) { --i: 2 }
.run-steps > :nth-child(4) { --i: 3 }
.run-steps > :nth-child(5) { --i: 4 }
@media (prefers-reduced-motion: reduce) {
  .run-steps > * { clip-path: none; }
}

.full-header,.spectrum-header{position:relative;z-index:40}
.mega-menu{--menu-accent:#b83e2f;--menu-tint:#fff1eb;--menu-ink:#182c30;--menu-border:#f0d5c9}
.mega-menu:has(.mega-research){--menu-accent:#087581;--menu-tint:#edf8f7;--menu-border:#c9e5df}
.mega-menu:has(.mega-studio){--menu-accent:#b83e2f;--menu-tint:#fff2ec;--menu-border:#efd7cc}
.mega-menu:has(.mega-resources){--menu-accent:#087581;--menu-tint:#edf8f7;--menu-border:#c9e5df}
.mega-resources .mega-art{--art-angle:-2deg}
.mobile-resources{display:grid;gap:8px;border-block:1px solid #8b9f9f;padding-block:16px;margin-block:4px}
.mobile-resources>p{font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.mega-studio .mega-art{--art-angle:2deg}
.mega-contact+.mega-contact{margin-top:16px}
.spectrum-nav>a[aria-current=page]{text-decoration:underline;text-decoration-thickness:2px}
.mega-menu>summary{display:flex;align-items:center;gap:7px;cursor:pointer;list-style:none;padding:14px 0;font-size:14px;white-space:nowrap}
.mega-menu>summary::-webkit-details-marker{display:none}.mega-chevron{display:inline-block;transition:transform 220ms;color:var(--menu-accent)}
.mega-menu[open]>summary{color:var(--menu-accent)}.mega-menu[open] .mega-chevron{transform:rotate(180deg)}
.mega-panel{position:absolute;top:calc(100% - 8px);left:0;right:0;display:grid;grid-template-columns:minmax(0,2fr) minmax(250px,1fr);gap:32px;background:#fff;color:var(--menu-ink);padding:32px;border:1px solid var(--menu-border);border-radius:12px 48px 12px 12px;box-shadow:0 24px 64px #17264524;max-height:calc(100dvh - 140px);overflow:auto;transform-origin:top center;overscroll-behavior:contain}
.mega-intro{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-bottom:24px;border-bottom:1px solid var(--menu-border)}
.mega-intro h2{font-size:26px;line-height:1.15;margin:0;letter-spacing:-.025em}.mega-intro p{font-size:12px;line-height:1.5;margin-top:8px;color:#526171}
.mega-panel a{text-decoration:none}.mega-intro>a{font-size:12px;color:var(--menu-accent);white-space:nowrap}
.mega-links{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;list-style:none;padding:20px 0;margin:0}
.mega-links a{display:flex;align-items:start;gap:14px;padding:14px 12px;border-radius:12px;transition:background 160ms}
.mega-links a:hover,.mega-links a:focus-visible{background:var(--menu-tint)}
.mega-link-featured{background:var(--menu-tint);transition:background 160ms,box-shadow 160ms}.mega-link-featured .mega-link-icon{background:var(--menu-accent);color:#fff}.mega-link-featured:is(:hover,:focus-visible){box-shadow:inset 0 0 0 1px var(--menu-accent)}
.mega-link-icon{display:grid;place-items:center;flex:0 0 38px;height:38px;background:var(--menu-tint);color:var(--menu-accent);border-radius:12px;font:600 13px var(--font-display)}
.mega-links .mega-link-title{display:flex;align-items:center;gap:8px}
.mega-link-title img{display:block;width:18px;height:18px;flex:0 0 18px;object-fit:contain}
.spectrum-header .mobile-nav .mobile-services>summary{padding:8px 0;line-height:1.5;min-height:44px}
.mobile-service-links{display:grid;gap:4px;margin:8px 0 12px 6px;padding-left:16px;border-left:2px solid #c8dddc}
.mobile-service-links a{display:block;font-size:13px;min-height:44px}
.mobile-service-links a.mobile-unreal{display:flex;align-items:center;gap:8px}
.mobile-unreal img{width:18px;height:18px;flex-shrink:0}
.identity-cyan .mobile-unreal img{filter:brightness(0) invert(1)}
.mobile-service-links a[aria-current="page"]{font-weight:600;color:var(--accent);text-decoration:underline;text-underline-offset:4px}
@media(max-width:360px){
 .spectrum-header{gap:10px}
 .spectrum-header .spectrum-brand img{height:28px}
 .spectrum-header>.button{font-size:11px;padding-inline:10px;white-space:nowrap}
 .spectrum-header .mobile-nav>summary{padding-inline:0;white-space:nowrap}
}
.mega-links strong{display:block;font-size:15px;line-height:1.35;font-weight:600}.mega-links a>div>span{display:block;font-size:12px;line-height:1.6;color:#526171;margin-top:6px}
.mega-contact{display:block;border-top:1px solid var(--menu-border);padding-top:20px;font-size:13px;color:var(--menu-accent)}
.mega-grouped{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding-block:24px}.mega-grouped h3{font-size:12px;line-height:1.5;color:var(--menu-accent);margin-bottom:14px}.mega-grouped ul{list-style:none;padding:0;margin:0}.mega-grouped a{display:block;padding:9px 8px;margin-left:-8px;border-radius:8px;font-size:13px;line-height:1.4}.mega-grouped a:hover{background:var(--menu-tint)}
.mega-feature{display:flex;flex-direction:column;background:var(--menu-tint);border-radius:8px 36px 8px 8px;overflow:hidden;align-self:stretch;color:var(--menu-ink)}
.mega-art{--art-angle:-3deg;--art-scale:1;position:relative;isolation:isolate;overflow:hidden;min-height:180px;padding:24px 24px 0}
.mega-art img{position:relative;display:block;width:100%;height:190px;object-fit:cover;border-radius:14px;transform:rotate(var(--art-angle)) scale(var(--art-scale));transition:transform 500ms cubic-bezier(.16,1,.3,1)}
.mega-orbit{position:absolute;width:210px;height:110px;background:var(--menu-border);border-radius:90% 20% 80% 30%;right:-30px;top:8px;transform:rotate(-20deg);z-index:-1}
.mega-feature:is(:hover,:focus-visible) .mega-art{--art-angle:0deg;--art-scale:1.025}
.mega-art img[src$="menu-mark.avif"]{object-fit:contain;transform:scale(var(--art-scale))}
.spectrum-nav .mega-feature:hover{text-decoration:none}.mega-feature:hover .mega-feature-copy>strong{text-decoration:underline}
.mega-feature-copy{padding:28px}.mega-feature-copy>span{font-size:11px;color:#526171}.mega-feature-copy h3{font-size:28px;line-height:1.12;margin:16px 0;letter-spacing:-.03em}.mega-feature-copy p{font-size:14px;line-height:1.7;color:#526171}.mega-feature-copy>strong{display:block;font-size:13px;margin-top:24px;color:var(--menu-accent)}
.mega-panel a:focus-visible,.mega-menu>summary:focus-visible{outline:3px solid var(--menu-accent);outline-offset:3px}
@media(prefers-reduced-motion:no-preference){
 .mega-menu[open] .mega-links li{animation:mega-link-in 420ms cubic-bezier(.16,1,.3,1) both;animation-delay:80ms}.mega-menu[open] .mega-links li:nth-child(n+3){animation-delay:120ms}.mega-menu[open] .mega-links li:nth-child(n+5){animation-delay:160ms}
 .mega-menu[open] .mega-art img{animation:mega-art-in 650ms cubic-bezier(.16,1,.3,1) backwards}.mega-menu[open] .mega-orbit{animation:mega-orbit-in 800ms cubic-bezier(.16,1,.3,1) backwards}
 @keyframes mega-link-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
 @keyframes mega-art-in{from{opacity:0;transform:translateY(14px) rotate(calc(var(--art-angle) + 4deg)) scale(.96)}to{opacity:1;transform:translateY(0) rotate(var(--art-angle)) scale(var(--art-scale))}}
 @keyframes mega-orbit-in{from{transform:translateX(50px) rotate(-35deg) scale(.7)}to{transform:rotate(-20deg)}}
}
.mega-editorial{left:auto;width:min(1040px,100%);grid-template-columns:minmax(0,1.45fr) minmax(300px,1fr);padding:28px;gap:28px;border-radius:10px}
.mega-editorial .mega-directory{display:flex;flex-direction:column;min-width:0}
.mega-editorial .mega-intro{padding-bottom:20px}
.mega-editorial .mega-intro h2{font-size:25px;max-width:25ch}
.mega-editorial .mega-links{flex:1;align-content:start;gap:12px;padding:20px 0}
.mega-editorial .mega-links a{height:100%;padding:18px 14px;gap:12px;border:1px solid var(--menu-border);border-radius:6px;background:#fff;transition:transform 180ms ease,box-shadow 180ms ease,background-color 180ms ease}
.mega-editorial .mega-links a:is(:hover,:focus-visible){background:var(--menu-tint);transform:translateY(-2px) rotate(-.4deg);box-shadow:3px 4px 0 var(--menu-border)}
.mega-editorial .mega-links li:nth-child(even) a:is(:hover,:focus-visible){transform:translateY(-2px) rotate(.4deg)}
.mega-editorial-icon{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;color:var(--menu-accent);background:var(--menu-tint);border-radius:5px}
.mega-editorial-icon svg{width:20px;height:20px}
.mega-editorial .mega-links strong{font-size:14px}
.mega-editorial .mega-links a>div{min-width:0}
.mega-editorial .mega-links a>div>span{font-size:11px;line-height:1.7}
.mega-editorial .mega-feature{border-radius:6px;border:1px solid var(--menu-border)}
.mega-editorial .mega-art{padding:32px 24px 24px;min-height:0}
.mega-editorial .mega-art::before{content:'';position:absolute;top:8px;right:8px;width:92px;height:76px;background:radial-gradient(circle,var(--menu-accent) 1px,transparent 1.5px) 0 0/10px 10px;opacity:.22;pointer-events:none}
.mega-editorial .mega-art img{z-index:1;height:174px;border:5px solid #fff;border-radius:4px;box-shadow:5px 7px 0 var(--menu-border)}
.mega-art-tag{position:absolute;right:20px;bottom:10px;z-index:2;padding:5px 9px;background:#fff;border:1px solid var(--menu-border);border-radius:3px;font-size:9px;line-height:1.5;letter-spacing:.02em;color:var(--menu-ink);pointer-events:none}
.mega-motif{display:block;width:120px;height:90px;color:var(--menu-accent);pointer-events:none}
.mega-art>.mega-motif{position:absolute;top:2px;left:-10px;width:140px;height:105px;z-index:0;opacity:.38}
.mega-editorial .mega-feature-copy{padding:20px 24px 24px;display:flex;flex:1;flex-direction:column}
.mega-editorial .mega-feature-copy h3{font-size:27px;margin:14px 0}
.mega-editorial .mega-feature-copy p{font-size:13px;line-height:1.7}
.mega-editorial .mega-feature-copy>strong{margin-top:auto;padding-top:20px;font-size:12px}
.mega-editorial-footer{margin-top:auto;min-height:104px;padding:18px 20px;border:1px solid var(--menu-border);border-radius:6px;background:linear-gradient(120deg,var(--menu-tint),#fff)}
.mega-resource-stats{display:grid;grid-template-columns:1fr 1fr 90px;gap:18px;align-items:center}
.mega-resource-stats>a{display:grid;gap:6px}
.mega-resource-stats strong{font:600 30px/1 var(--font-display);color:var(--menu-accent)}
.mega-resource-stats span{font-size:10px;line-height:1.6;color:#526171}
.mega-resource-stats>a:hover span{text-decoration:underline}
.mega-editorial-footer>.mega-motif{width:90px;height:68px;opacity:.45}
.mega-studio-careers{display:flex;align-items:center;justify-content:space-between;gap:24px}
.mega-studio-careers>div>span{display:block;font-size:10px;line-height:1.6;color:#526171}
.mega-studio-careers strong{display:block;font:600 25px/1.2 var(--font-display);margin-top:8px;color:var(--menu-ink)}
.mega-studio-careers p{font-size:11px;line-height:1.6;margin-top:10px;color:var(--menu-accent)}
.mega-studio-careers:hover p{text-decoration:underline}
@media(max-width:1200px){.mega-panel{gap:24px;padding:24px}.mega-links a{gap:10px;padding:10px 6px}.mega-link-icon{flex-basis:30px;height:30px}.mega-feature-copy{padding:24px}.mega-intro{align-items:start;flex-direction:column;gap:12px}}
@media(max-width:1100px){.mega-menu>summary{font-size:12px}.spectrum-nav{gap:14px}}
@media(min-width:1241px) and (max-width:1400px){.spectrum-header{gap:24px}.spectrum-nav{gap:18px}.spectrum-nav a,.mega-menu>summary{font-size:13px}.spectrum-brand img{height:48px}}
@media(max-width:1240px){
 .spectrum-nav{display:none}
 .spectrum-header>.button{margin-left:auto}
 .spectrum-header .mobile-nav{display:block}
 .spectrum-header .mobile-nav summary{cursor:pointer;padding:12px}
 .spectrum-header .mobile-nav nav{position:absolute;left:0;right:0;top:calc(100% - 4px);display:flex;flex-direction:column;gap:8px;background:var(--paper);color:var(--ink);border:1px solid #8b9f9f;border-radius:8px;padding:16px 24px;z-index:9;max-height:calc(100dvh - 130px);overflow-y:auto;overscroll-behavior:contain}
 .spectrum-header .mobile-nav nav a{padding-block:8px;line-height:1.5;text-decoration:none}
 .spectrum-header .mobile-nav nav a:hover{text-decoration:underline}
}
@media(max-height:700px){.mega-art img{height:130px}.mega-art{min-height:130px}.mega-feature-copy h3{font-size:24px}.mega-links a>div>span{font-size:11px}.mega-editorial .mega-art img{height:140px}}
@media(prefers-reduced-motion:reduce){.mega-menu *{animation:none!important;transition:none!important}.mega-editorial .mega-links a:is(:hover,:focus-visible){transform:none!important}}

.proof-showcase{--proof-surface:#edf2fb;--proof-secondary:#f5f7fa;--proof-ink:#19304c;--proof-muted:#4a5e74;width:min(calc(100% - 128px),1280px);margin:0 auto;padding-block:64px 96px}
.samsung-proof{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:40px;align-items:center;margin-block:64px;padding:36px;background:#19343d;color:#fff;border:1px solid #355b66;border-radius:6px}
.samsung-proof-copy>.page-label{color:#b9dedf;font-size:11px;line-height:1.7}
.samsung-proof h2{font-size:clamp(30px,3vw,44px);line-height:1.12;margin:20px 0}
.samsung-proof-copy>p:not(.page-label){font-size:15px;line-height:1.8;color:#d0e4e5}
.samsung-proof .plain-link{display:inline-block;margin-top:18px;font-size:13px;color:#fff}
.samsung-film{margin:0;min-width:0}
.samsung-film-player{position:relative;width:100%;min-width:0;aspect-ratio:16/9;min-height:200px;background:#0e1f24;border-radius:4px;overflow:hidden}
.samsung-film iframe{position:absolute;inset:0;display:block;width:100%;height:100%;border:0}
.samsung-film figcaption{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 20px;font-size:11px;line-height:1.7;margin-top:12px;color:inherit}
.samsung-film figcaption>span{opacity:.85}
.samsung-film figcaption>a{display:inline-block;padding-block:5px;font-size:12px;flex-shrink:0}
.samsung-case-film{max-width:1100px}
@media(max-width:1100px){.samsung-proof{gap:28px;padding:28px}}
@media(max-width:767px){.samsung-proof{grid-template-columns:1fr;gap:28px;padding:28px 20px;margin-block:48px}.samsung-proof h2{font-size:34px}.samsung-film figcaption{gap:6px}}
.proof-showcase>h2{font-size:clamp(34px,3.8vw,54px);max-width:23ch;line-height:1.1;margin-bottom:40px}
.proof-feature-grid,.proof-quote-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.proof-feature{display:block;text-decoration:none;padding:36px;background:var(--proof-surface);color:var(--proof-ink);border-radius:16px}
.proof-feature>span{font-size:12px}.proof-feature h3{font-size:32px;line-height:1.15;margin-block:20px}.proof-feature p{font-size:17px;line-height:1.75;color:var(--proof-muted)}.proof-feature strong{display:block;font-size:14px;margin-top:28px;text-decoration:underline}
.proof-feature-image,.proof-firefox-art{width:100%;height:auto;aspect-ratio:16/9;border-radius:12px;margin-bottom:28px;object-fit:cover}.proof-firefox-art{display:grid;place-items:center;background:radial-gradient(circle at 50% 50%,#dce7ff,#f6f8ff)}.proof-firefox-art img{width:44%;height:80%;object-fit:contain}
.proof-showcase .proof-quotes-title{margin-top:72px}
.proof-quote-grid blockquote{margin:0;padding:32px;background:var(--proof-secondary);color:var(--proof-ink);border-top:1px solid var(--accent);border-radius:0 0 12px 12px}
.proof-quote-grid blockquote>p{font:500 22px/1.55 var(--font-display)}.proof-quote-grid footer{margin-top:28px;display:flex;flex-direction:column;gap:10px;font-size:13px}.proof-quote-grid footer span{color:var(--proof-muted);font-size:12px}.proof-quote-grid footer a{font-size:13px}
.proof-quote-grid .testimonial-draft{grid-column:1/-1}.quote-status{display:block;font-size:11px;font-weight:600;letter-spacing:.04em;margin-bottom:20px;color:var(--proof-muted)}
.proof-quote-grid blockquote:last-child:nth-child(odd){grid-column:1/-1}
.proof-explore{display:flex;flex-wrap:wrap;gap:20px 28px;margin-top:36px;font-size:14px}
.proof-project-list{display:grid;grid-template-columns:1fr 1fr;gap:28px}.proof-project{border-top:1px solid currentColor;padding-block:24px}.proof-project h3 a{text-decoration:none;color:inherit}.proof-project h3 a:is(:hover,:focus-visible){text-decoration:underline}.proof-project-icon{display:flex;align-items:center;justify-content:center;width:180px;height:72px;background:#fff;border:1px solid #d9e6e5;border-radius:8px;margin-bottom:20px;color:#087581}.proof-project-icon svg{width:44px;height:44px}.proof-project-source{display:inline-block;margin-top:16px;font-size:13px}.proof-project-list span{display:block;font-size:12px}.proof-project-list h3{font-size:26px;line-height:1.2;margin-block:14px}.proof-project-list p{font-size:16px;line-height:1.75}
.proof-project-logo{display:block;width:180px;height:72px;object-fit:contain;padding:12px;background:#fff;border-radius:8px;margin-bottom:20px}
.cyan-studio .studio-footer nav{display:flex;flex-wrap:wrap;gap:16px 24px}
.cyan-studio .cyan-capability figcaption{color:#345058;padding:12px 24px}
.spectrum-studio .proof-showcase{--proof-surface:#edf8f7;--proof-secondary:#fff2ec;--proof-ink:#182c30;--proof-muted:#526568}.spectrum-studio .proof-feature{border-radius:4px 48px 4px 4px}
.cyan-studio .proof-showcase{width:100%;--proof-surface:#d3eded;--proof-secondary:#1b3037;--proof-ink:#173239;--proof-muted:#345058}.cyan-studio .proof-quote-grid blockquote{color:#edf7f8}.cyan-studio .proof-quote-grid footer span{color:#b9cbd1}
.article-prose table,.reading table,.studio-prose table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse;font-size:14px}.article-prose th,.article-prose td,.reading th,.reading td,.studio-prose th,.studio-prose td{padding:12px;border-bottom:1px solid #87949f;text-align:left;min-width:130px;vertical-align:top}
.entry-text-only:not([hidden]),.work-card.text-only:not([hidden]),.project-tile.text-only:not([hidden]){display:block!important;grid-column:auto;border-top:1px solid var(--accent);padding-top:20px}.entry-text-only .entry-copy,.work-card.text-only>div,.project-tile.text-only>div{padding-top:12px}
.studio-card-image:not(:has(img)){min-height:72px}.studio-card-image:not(:has(img)) .studio-card-number{top:16px}
.partner-dark{background:#19343d;border-radius:6px;padding:8px}
.brand-panel{margin:0;min-width:0}
.brand-lockup{display:grid;grid-template-columns:1fr;align-items:center;justify-items:center;gap:40px;padding:64px 40px;min-height:250px;background:linear-gradient(135deg,#fff,#fff3f3);border:1px solid #efd3d5;border-radius:6px}
.brand-lockup img{display:block;max-width:100%;height:auto;object-fit:contain}

.brand-panel figcaption{font-size:11px;line-height:1.7;color:var(--muted);margin-top:12px}
@media(max-width:767px){.brand-lockup{gap:36px;padding:40px 24px;min-height:0}}
.console-license{display:flex;align-items:center;gap:8px;width:fit-content;max-width:100%;margin:0 0 24px;padding:8px 12px;background:#edf3ff;border:1px solid #cad8f5;border-radius:8px;color:#2442a6;font:600 13px/1.6 var(--font-body)}
.console-license>span{font-size:16px}.direction-1 .hero-copy:has(.console-license){padding-block:64px}.direction-1 .hero-copy>.hero-context{margin-bottom:12px}.direction-1 .hero-copy:has(.console-license) .hero-actions{margin-top:28px}
.spectrum-studio .console-license{background:#edf8f7;color:#08636b;border-color:#b6d8d4}
.hero-copy:has(.console-license) .hero-actions,.opening-copy:has(.console-license) .opening-actions{flex-wrap:wrap}
.spectrum-opening .opening-copy .console-license{font-size:13px;line-height:1.6;margin:0 0 20px;max-width:100%;text-align:left}.cyan-studio .console-license{background:#173d48;color:#c7f1f3;border-color:#4d707a}.signal-copy .signal-label{margin-bottom:12px}.studio-heading .console-license{font-size:13px;line-height:1.6;margin:16px 0 24px;color:#c7f1f3}
.page-heading:has(.console-license){padding-bottom:32px}.page-intro:has(.console-license){padding-bottom:36px}.studio-games .studio-hero h1{font-size:clamp(44px,4.6vw,66px);max-width:17ch}
.home-games-proof{width:min(calc(100% - 128px),1280px);margin-inline:auto;padding:64px 0 24px}.cyan-studio .home-games-proof{width:100%}
.engagement-proof{display:grid;grid-template-columns:6fr 4fr;gap:56px;align-items:center;padding:44px;background:#eef3fb;color:#17304b;border-radius:20px}.engagement-proof .games-proof-label{font-size:12px}.engagement-proof h2{font-size:clamp(34px,3.4vw,48px);line-height:1.12;margin-block:20px;max-width:22ch}.engagement-proof p{font-size:17px;line-height:1.75}
.games-proof-actions,.games-landing-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px;margin-top:28px}.games-proof-actions>a:not(.button),.games-landing-actions>a:not(.button){font-size:14px}.games-landing-actions{margin-top:0;margin-bottom:36px}.cyan-directory-hero .games-landing-actions{margin-top:28px;margin-bottom:0}
.engagement-covers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;width:100%;max-width:540px;margin-inline:auto;align-items:start}.engagement-covers figure{margin:0;min-width:0}.engagement-covers img{display:block;width:100%;height:auto;aspect-ratio:2/3;max-height:400px;object-fit:contain;border-radius:10px;background:#152432}.engagement-covers figcaption{font-size:13px;font-weight:600;line-height:1.5;margin-top:12px}
.games-hero-art{padding:28px;border-radius:20px;background:#edf3f7}.cyan-studio .games-hero-art{background:#19343e}.spectrum-studio .games-hero-art,.spectrum-studio .engagement-proof{background:#fff1eb;color:#182c30}.cyan-studio .engagement-proof{background:#d3eded;color:#173239}
.work-row:nth-child(odd)>.engagement-covers{order:1}.studio-projects .project-tile+article>.engagement-covers{order:2}
.game-credit-wall-compact{padding-block:48px 16px}.game-credit-wall-compact>h2{font-size:clamp(28px,3vw,40px);max-width:none}
@media(max-width:1100px){.home-games-proof{width:calc(100% - 64px)}.engagement-proof{gap:32px;padding:32px}}
@media(max-width:767px){.home-games-proof{width:calc(100% - 40px);padding-top:40px}.engagement-proof{grid-template-columns:1fr;gap:28px;padding:28px 24px}.engagement-proof h2{font-size:34px}.engagement-proof p{font-size:16px}.engagement-covers{max-width:420px;gap:16px}.games-hero-art{padding:20px}.direction-1 .hero-copy:has(.console-license){padding-block:32px}.console-license{font-size:12px}.spectrum-opening .opening-copy .console-license{font-size:12px;margin-bottom:20px}.games-proof-actions{gap:16px}.studio-projects .project-tile+article>.engagement-covers,.work-row:nth-child(odd)>.engagement-covers{order:0}}
.team-portraits{padding-block:32px 64px}.team-portraits>h2{font-size:clamp(34px,3.8vw,52px);margin-bottom:24px}.team-portraits>p{max-width:65ch;font-size:18px;line-height:1.75}.team-portrait-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:36px}.team-portrait-grid figure{margin:0}.team-portrait-grid img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center 25%;border-radius:12px}.team-portrait-grid h3{font-size:22px;margin-top:18px}.team-portrait-grid figcaption p{font-size:14px;margin-top:8px}
@media(max-width:767px){.team-portrait-grid{grid-template-columns:1fr 1fr;gap:24px 16px}.team-portrait-grid h3{font-size:19px}.team-portraits>p{font-size:17px}}
.proof-visual{margin:0 0 28px;min-width:0}.proof-visual>img{display:block;width:100%;height:auto;max-height:620px;aspect-ratio:2/1;object-fit:contain;background:#eef3f6;border-radius:16px}.proof-visual>figcaption{font-size:11px;line-height:1.7;margin-top:12px}.proof-visual>img[src$="firefox-color.svg"]{padding:40px;background:radial-gradient(circle,#e1eaff,#f7faff)}
.brand-wall{padding-block:40px;text-align:left}.brand-wall>h2{font-size:clamp(34px,3.8vw,52px);line-height:1.1;max-width:22ch;margin-bottom:40px}.brand-group+ .brand-group{margin-top:36px}.brand-group>h3{font-size:21px;margin-bottom:20px}
.brand-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.brand-tile{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:12px;padding:24px 18px;background:#fff;color:#19343d;border:1px solid #d6e1e4;border-radius:10px;text-align:center;text-decoration:none}.brand-tile img{width:160px;height:54px;object-fit:contain;margin-bottom:8px;align-self:center}.brand-tile strong{font-size:14px;line-height:1.5}.brand-tile span{font-size:12px;line-height:1.65;color:#49636b}.brand-tile-dark{background:#19343d;color:#fff;border-color:#355b66}.brand-tile-dark span{color:#c5dadd}
.brand-grid.brand-grid-community{grid-template-columns:repeat(3,minmax(0,1fr))}
.brand-grid-community .brand-tile{align-items:flex-start;padding:28px;text-align:left;border-radius:4px;gap:14px}
.community-logo{display:flex;align-items:center;justify-content:center;width:100%;height:104px;overflow:hidden;margin-bottom:12px}
.brand-grid-community .community-logo img{width:min(220px,100%);height:96px;max-height:none;object-fit:contain;object-position:center;margin:0}
.brand-grid-community .community-logo img[src$="khronos.svg"]{height:220px;flex-shrink:0}
.brand-grid-community .brand-tile strong{font-size:18px;line-height:1.4}
.brand-grid-community .brand-tile span{font-size:14px}
.brand-grid-community .brand-link-label{margin-top:auto;padding-top:14px;text-decoration:underline;text-underline-offset:5px;color:inherit;font-weight:500}
.brand-grid-community .brand-tile:hover .brand-link-label{text-decoration-thickness:2px}
.open-source-adoption{display:flex;align-items:center;gap:28px;max-width:760px;margin:0 auto;padding:24px 28px;background:#f4f7fb;color:#19343d;border:1px solid #d6e1e4;border-radius:4px}
.open-source-adoption>img{flex:0 0 96px;width:96px;height:96px;object-fit:contain}
.open-source-adoption figcaption{min-width:0;font-size:14px;line-height:1.65}
.open-source-adoption strong{font:600 21px/1.3 var(--font-display)}
.open-source-adoption p{margin-top:8px;color:#49636b}
.open-source-adoption a{display:inline-block;margin-top:12px}
#standards,#firefox{scroll-margin-top:32px}
@media(max-width:767px){.open-source-adoption{align-items:flex-start;gap:18px;padding:20px}.open-source-adoption>img{flex-basis:56px;width:56px;height:56px}.open-source-adoption strong{font-size:19px}.open-source-adoption figcaption{font-size:13px}}
@media(max-width:767px){.brand-grid.brand-grid-community{grid-template-columns:1fr}}
.game-credit-wall{padding-block:64px}.game-credit-wall>h2{font-size:clamp(34px,3.8vw,52px);max-width:23ch;line-height:1.1;margin-bottom:24px}
.career-credits{display:grid;gap:32px;margin-top:36px;max-width:100%;min-width:0}.career-person{min-width:0}.career-person h3{font-size:24px;line-height:1.5;margin-bottom:12px}.career-person h3 span{font:400 17px/1.7 var(--font-body)}.career-person p{font:400 18px/1.85 var(--font-body);max-width:90ch;margin:0}.career-person em{font-style:italic;font-synthesis:style}.career-person .career-additional{margin-top:12px}
@media(max-width:1100px){.brand-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:767px){.brand-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.brand-tile{padding:20px 12px}.brand-tile img{width:120px;height:44px}.brand-tile strong{font-size:13px}.brand-tile span{font-size:11px}.game-credit-wall{padding-block:48px}.career-person h3{font-size:22px}.career-person h3 span{font-size:16px}.career-person p{font-size:16px;line-height:1.85}}
@media(max-width:1100px){.proof-showcase{width:calc(100% - 64px)}}
@media(max-width:767px){.proof-project-list{grid-template-columns:1fr}}
@media(max-width:767px){.proof-showcase{width:calc(100% - 40px);padding-block:48px 64px}.proof-feature-grid,.proof-quote-grid{grid-template-columns:1fr;gap:24px}.proof-feature{padding:28px}.proof-feature h3{font-size:28px}.proof-feature p{font-size:16px}.proof-quote-grid blockquote{padding:28px}.proof-quote-grid blockquote>p{font-size:21px}.proof-explore{font-size:13px}.proof-showcase .proof-quotes-title{margin-top:48px}}
.hero-numbers{grid-column:1/-1;display:grid;gap:40px;padding-top:40px}
@media(min-width:901px){.spectrum-opening>.hero-numbers{width:100%}}
.hero-numbers>div>.page-label{margin-bottom:20px}
.number-strip{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:28px}
.number-strip li{border-top:1px solid var(--accent);padding-top:18px}
.number-strip a{display:block;color:inherit;text-decoration:none}
.number-strip strong{display:block;font:600 clamp(36px,3.6vw,56px)/1 var(--font-display);letter-spacing:-.035em}
.number-strip span{display:block;font-size:13px;line-height:1.6;margin-top:14px;color:var(--muted)}
.number-strip a:hover span{text-decoration:underline}
.hero-numbers-note{display:flex;justify-content:flex-end;font-size:11px}
@media(max-width:900px){.number-strip{grid-template-columns:1fr 1fr;gap:24px}.number-strip strong{font-size:34px}}
@media(max-width:480px){.number-strip{grid-template-columns:1fr}}
.proof-visual>img[src$="unreal-engine.svg"]{aspect-ratio:auto;height:280px;padding:48px;background:#eef3f6}
.proof-visual>img[src$="fresnel-coated-materials.webp"]{aspect-ratio:5/2}
.proof-visual>img[src$="mobile-nrc.webp"]{aspect-ratio:120/29}
.proof-visual>img[src$="moving-mobile-preparation.webp"]{aspect-ratio:1600/1078;max-height:none}
.proof-visual>img[src$="applied-intuition-raytracing.webp"]{aspect-ratio:1600/988;max-height:none}
.proof-visual>img[src$="as-playground.webp"],.proof-visual>img[src$="breda-as-playground.webp"]{aspect-ratio:2562/1322;max-height:none}
.proof-visual>img[src$="gpc-conference.webp"]{aspect-ratio:16/9;max-height:none}
.proof-visual>img[src$="galaxy-s24-showcase.webp"]{aspect-ratio:16/9;max-height:none}
.mobile-talk-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-block:32px}
.mobile-talk-gallery figure{margin:0;min-width:0}
.mobile-talk-gallery img{width:100%;height:auto;border-radius:4px}
.mobile-talk-gallery figcaption{font-size:12px;line-height:1.7;margin-top:12px}
@media(max-width:600px){.mobile-talk-gallery{grid-template-columns:1fr}}
.studio-card-image .proof-visual>img[src$="unreal-engine.svg"]{aspect-ratio:auto;object-fit:contain;height:200px;padding:32px}
.portrait-pending{display:grid;place-items:center;aspect-ratio:4/5;border-radius:12px;background:var(--proof-surface,#edf2fb);color:var(--proof-muted,#4a5e74);font:600 44px/1 var(--font-display);letter-spacing:.02em}

