:root {
  --tp-ink: #1E2A3A;
  --tp-ink-2: #2F4A6D;
  --tp-paper: #FAF8F4;
  --tp-white: #ffffff;
  --tp-text: #4B5563;
  --tp-muted: #7A8699;
  --tp-line: rgba(71,105,164, 0.16);
  --tp-mint: #2F4A6D;
  --tp-mint-bright: #6D8DB5;
  --tp-violet: #6D8DB5;
  --tp-blue: #8bb6e8;
}

.tp-page { margin: 0; background: var(--tp-paper); color: var(--tp-text); overflow-x: hidden; }
.tp-page *, .tp-page *::before, .tp-page *::after { box-sizing: border-box; }
.tp-page main { display: block; }
.tp-shell { width: min(100% - 6rem, 88rem); margin-inline: auto; }
.tp-page h1, .tp-page h2, .tp-page h3, .tp-page p { margin-top: 0; }
.tp-page h1, .tp-page h2, .tp-page h3 { font-family: inherit; letter-spacing: -.045em; }
.tp-page h1 { max-width: 20ch; margin-bottom: 1.45rem; color: #fff; font-size: clamp(2.8rem, 4.5vw, 4.8rem); font-weight: 600; line-height: 1.02; text-wrap: balance; }
.tp-page h2 { max-width: 18ch; margin-bottom: 1.25rem; font-size: clamp(2.25rem, 3.65vw, 3.8rem); font-weight: 600; line-height: 1.05; }
.tp-page h3 { font-weight: 620; }
.tp-reveal { opacity: 0; transform: translateY(24px); transition: opacity .75s ease, transform .75s cubic-bezier(.2,.65,.25,1); }
.tp-reveal.is-visible { opacity: 1; transform: translateY(0); }

.tp-masthead { position: relative; min-height: 44rem; padding: 6.5rem 0 0; overflow: hidden; color: #eef3ff; background: radial-gradient(circle at 72% 40%, #3D5C83 0, #2F4A6D 28%, #1E2A3A 62%); }
.tp-masthead::after { position: absolute; inset: auto 0 0; height: 10rem; content: ""; background: linear-gradient(transparent, rgba(2, 7, 6, .5)); pointer-events: none; }
.tp-masthead-grid { position: absolute; inset: 0; opacity: .16; background-image: linear-gradient(rgba(109,141,181, .16) 1px, transparent 1px), linear-gradient(90deg, rgba(109,141,181, .16) 1px, transparent 1px); background-size: 68px 68px; mask-image: radial-gradient(circle at 70% 45%, #000 0, transparent 65%); }
.tp-masthead-layout { position: relative; z-index: 2; display: grid; min-height: 29rem; align-items: center; grid-template-columns: minmax(0, 1.08fr) minmax(24rem, .92fr); gap: clamp(2.5rem, 4vw, 4.5rem); }
.tp-masthead-copy { min-width: 0; }
.tp-eyebrow, .tp-kicker { margin-bottom: 1.25rem; color: var(--tp-mint); font-size: clamp(.74rem, .8vw, .82rem); font-weight: 700; letter-spacing: .16em; line-height: 1.4; text-transform: uppercase; }
.tp-eyebrow::before, .tp-kicker::before { display: inline-block; width: 2.5rem; height: 1px; margin-right: .8rem; vertical-align: middle; content: ""; background: currentColor; }
.tp-lead { max-width: 39rem; margin-bottom: 1.85rem; color: rgba(235, 245, 240, .75); font-size: clamp(1.02rem, 1.25vw, 1.2rem); font-weight: 400; line-height: 1.7; }
.tp-actions { display: flex; align-items: center; gap: 1.6rem; }
.tp-button { display: inline-flex; min-height: 3.5rem; align-items: center; justify-content: center; gap: 2.4rem; padding: .85rem 1.35rem; border: 1px solid transparent; border-radius: 2px; font-size: .91rem; font-weight: 650; text-decoration: none; transition: transform .25s ease, background .25s ease, color .25s ease; }
.tp-button:hover { transform: translateY(-2px); }
.tp-button--primary { color: #1E2A3A; background: var(--tp-mint); }
.tp-button--primary:hover { color: #1E2A3A; background: var(--tp-mint-bright); }
.tp-text-link { color: rgba(255,255,255,.78); font-size: .9rem; text-decoration: none; }
.tp-text-link span { margin-left: .65rem; color: var(--tp-mint); }
.tp-metric-strip { position: relative; z-index: 3; display: grid; margin-top: 2.5rem; border-top: 1px solid rgba(255,255,255,.14); grid-template-columns: repeat(3, 1fr); }
.tp-metric-strip > div { display: flex; min-height: 7.25rem; flex-direction: column; justify-content: center; padding: 1.25rem 2.5rem; border-right: 1px solid rgba(255,255,255,.14); }
.tp-metric-strip > div:first-child { padding-left: 0; }
.tp-metric-strip > div:last-child { border-right: 0; }
.tp-metric-strip strong { margin-bottom: .45rem; color: #fff; font-size: 1.65rem; font-weight: 540; }
.tp-metric-strip span { color: rgba(255,255,255,.5); font-size: .75rem; letter-spacing: .06em; text-transform: uppercase; }

.tp-section { position: relative; padding: 5.25rem 0; }
.tp-section--light { background: #F7F5F1; }
.tp-section--paper { background: #f6f8fc; }
.tp-section--ink { color: #eef3ff; background: var(--tp-ink); }
.tp-section--ink h2 { color: #fff; }
.tp-section-heading { display: grid; align-items: end; margin-bottom: 2.75rem; grid-template-columns: 1.15fr .85fr; column-gap: 4rem; }
.tp-section-heading .tp-kicker { grid-column: 1 / -1; }
.tp-section-heading h2 { margin-bottom: 0; }
.tp-section-heading > p:last-child { max-width: 32rem; margin-bottom: .3rem; color: var(--tp-muted); font-size: 1rem; font-weight: 400; line-height: 1.7; }

/* Art-directed product photography */
.tp-product-photo {
  position: relative;
  width: min(100%, 42rem);
  margin-left: auto;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 3px;
  background: #F7F5F1;
  box-shadow: 0 38px 80px rgba(0,0,0,.34);
}
.tp-product-photo::after { position: absolute; inset: 0; content: ""; box-shadow: inset 0 0 0 1px rgba(255,255,255,.2); pointer-events: none; }
.tp-product-photo--masthead {
  aspect-ratio: 1.55;
  overflow: visible;
  border: 0;
  background: transparent;
  box-shadow: none;
}
.tp-product-photo--masthead::after { display: none; }
.tp-product-photo--scene {
  aspect-ratio: 1.8;
  overflow: visible;
  border: 0;
  background: transparent;
  box-shadow: none;
  -webkit-mask-image: radial-gradient(ellipse 72% 68% at center, #000 58%, transparent 100%);
  mask-image: radial-gradient(ellipse 72% 68% at center, #000 58%, transparent 100%);
}
.tp-product-photo img { display: block; width: 100%; height: 100%; object-fit: cover; }
.processor-masthead-carousel { position: relative; width: 100%; height: 100%; }
.processor-masthead-slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  transform: scale(.96);
  animation: processorMastheadFade 15s infinite;
}
.tp--processor .tp-product-photo--masthead { width: 100%; aspect-ratio: 1.15; }
.processor-masthead-slide img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  max-width: none;
  height: 100%;
  object-fit: contain;
  object-position: center;
  filter: drop-shadow(0 28px 34px rgba(0,0,0,.42));
}
.processor-masthead-slide:nth-child(2) { animation-delay: 5s; }
.processor-masthead-slide:nth-child(3) { animation-delay: 10s; }
@keyframes processorMastheadFade {
  0%, 29% { opacity: 1; transform: scale(1); }
  33%, 100% { opacity: 0; transform: scale(.97); }
}
.processor-image-placeholder { display: flex; align-items: center; justify-content: center; flex-direction: column; color: rgba(229,242,236,.76); }
.processor-image-placeholder small { color: rgba(164,205,193,.7); font-size: .62rem; font-weight: 650; letter-spacing: .14em; }
.processor-image-placeholder--card { width: 100%; height: 100%; color: #4B5563; }
.processor-placeholder-mark { margin-bottom: .8rem; color: rgba(47,74,109,.52); font-size: 2.1rem; font-weight: 560; letter-spacing: .12em; }
.processor-image-placeholder--card small { color: #7A8699; font-size: .58rem; }
.tp-product-photo--digital { border-color: rgba(139,182,232,.28); }

/* Electronics control system */
.tp-masthead--electronics {
  background:
    radial-gradient(circle at 76% 42%, rgba(32, 79, 67, .72), transparent 31rem),
    linear-gradient(118deg, #1E2A3A 0%, #2F4A6D 56%, #3D5C83 100%);
}
.tp--electronics .tp-masthead-copy h1 { max-width: 20ch; font-size: clamp(2.75rem, 4.2vw, 4.65rem); }
.electronics-masthead-visual { position: relative; display: grid; min-height: 25rem; align-items: center; }
.electronics-masthead-visual::before {
  position: absolute; inset: 18% 5%; content: ""; border-radius: 50%;
  background: rgba(47,74,109, .18); filter: blur(70px);
}
.electronics-masthead-visual img {
  position: relative; z-index: 1; display: block; width: 118%; max-width: none; margin-left: -9%;
  filter: drop-shadow(0 32px 35px rgba(0, 0, 0, .48));
}
.electronics-capability-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--tp-line); }
.electronics-capability-card { min-height: 18rem; padding: 2.15rem; background: #ffffff; }
.electronics-capability-card > span { color: #3D5C83; font-size: .68rem; font-weight: 700; letter-spacing: .16em; }
.electronics-capability-card h3 { margin: 3.6rem 0 .85rem; font-size: 1.42rem; line-height: 1.22; }
.electronics-capability-card p { margin: 0; color: var(--tp-muted); font-size: .95rem; line-height: 1.72; }
.electronics-platform, .electronics-loop { display: grid; align-items: center; grid-template-columns: .82fr 1.18fr; gap: clamp(3rem, 7vw, 7.5rem); }
.electronics-platform-copy > p:last-child, .electronics-loop-copy > p { color: rgba(235,245,240,.62); line-height: 1.75; }
.electronics-platform-photo, .electronics-loop-photo {
  margin: 0; overflow: visible; background: transparent;
}
.electronics-platform-photo img, .electronics-loop-photo img { display: block; width: 100%; height: auto; filter: drop-shadow(0 26px 30px rgba(0,0,0,.2)); }
.electronics-loop { grid-template-columns: 1.05fr .95fr; }
.electronics-loop-photo { background: transparent; }
.electronics-workflow { margin-top: 2.3rem; border-top: 1px solid var(--tp-line); }
.electronics-workflow > div { display: grid; padding: 1rem 0; border-bottom: 1px solid var(--tp-line); grid-template-columns: 3.25rem 1fr; }
.electronics-workflow > div > span { padding-top: .2rem; color: #3D5C83; font-size: .67rem; font-weight: 700; letter-spacing: .12em; }
.electronics-workflow section { margin: 0; padding: 0; }
.electronics-workflow h3 { margin: 0 0 .3rem; font-size: 1.08rem; letter-spacing: -.02em; }
.electronics-workflow p { margin: 0; color: var(--tp-muted); font-size: .9rem; line-height: 1.5; }

/* Complete systems */
.tp--whole-system { background: #F7F5F1; }
.ws-masthead { position: relative; overflow: hidden; padding: 5rem 0 2rem; color: #eef3ff; background: radial-gradient(circle at 74% 44%, #3D5C83 0, #2F4A6D 34%, #1E2A3A 72%); }
.ws-masthead-grid { position: absolute; inset: 0; opacity: .14; background-image: linear-gradient(rgba(109,141,181,.15) 1px, transparent 1px), linear-gradient(90deg, rgba(109,141,181,.15) 1px, transparent 1px); background-size: 72px 72px; -webkit-mask-image: radial-gradient(circle at 30% 50%, #000, transparent 68%); mask-image: radial-gradient(circle at 30% 50%, #000, transparent 68%); }
.ws-masthead-layout { position: relative; z-index: 1; display: grid; min-height: 35rem; align-items: center; grid-template-columns: minmax(0, 1.02fr) minmax(0, .98fr); gap: clamp(3rem, 6vw, 6.5rem); }
.ws-masthead-visual { position: relative; margin: 0; isolation: isolate; }
.ws-masthead-visual::before { position: absolute; inset: 16%; content: ""; border-radius: 50%; background: rgba(47,74,109, .15); filter: blur(65px); }
.ws-masthead-visual::after { display: none; }
.ws-masthead-visual img {
  position: relative;
  z-index: 1;
  display: block;
  width: 118%;
  max-width: none;
  margin-left: -9%;
  filter: saturate(.86) drop-shadow(0 30px 38px rgba(0,0,0,.28));
}
.ws-masthead-copy h1 { max-width: 21ch; margin-bottom: 1.5rem; color: #fff; font-size: clamp(2.75rem, 4.15vw, 4.6rem); font-weight: 600; line-height: 1.03; text-wrap: balance; }
.ws-masthead-lead { max-width: 42rem; margin-bottom: 1.1rem; color: rgba(235,245,240,.72); font-size: 1rem; line-height: 1.75; }
.ws-supporting { margin-bottom: 1.8rem; color: var(--tp-mint-bright); font-size: .92rem; font-weight: 520; }
.ws-product-list { display: grid; gap: 1.25rem; }
.ws-product { overflow: hidden; border: 1px solid rgba(29,29,31,.09); border-radius: 1.1rem; background: rgba(255,255,255,.78); box-shadow: 0 18px 45px rgba(5,7,13,.045); }
.ws-product-header { display: grid; align-items: start; padding: 2.15rem 2.35rem 1.5rem; grid-template-columns: 3.25rem 1fr; gap: 1.15rem; }
.ws-product-index { color: #3D5C83; font-size: .7rem; font-weight: 700; letter-spacing: .14em; }
.ws-product-heading { display: flex; flex-direction: column; gap: .55rem; }
.ws-product-heading strong { font-size: clamp(1.65rem, 2.6vw, 2.6rem); font-weight: 600; letter-spacing: -.04em; }
.ws-product-heading small { max-width: 56rem; color: var(--tp-muted); font-size: .95rem; font-weight: 400; line-height: 1.55; }
.ws-product-body { padding: 0 2.35rem 2.35rem 6.75rem; }
.ws-product-summary { max-width: 65rem; margin-bottom: 2rem; color: #52627d; font-size: 1rem; line-height: 1.8; }
.ws-diagram-icon { position: relative; display: block; width: 2.65rem; height: 2.65rem; margin-bottom: 1.25rem; border: 1px solid rgba(47,74,109,.35); border-radius: .75rem; background: rgba(47,74,109,.08); }
.ws-diagram-icon::before, .ws-diagram-icon::after { position: absolute; content: ""; }
.ws-diagram-icon svg { display: block; width: 100%; height: 100%; padding: .55rem; overflow: visible; fill: none; stroke: #3D5C83; stroke-width: 1.45; stroke-linecap: round; stroke-linejoin: round; }
.ws-icon-users::before { top: .7rem; left: 1rem; width: .55rem; height: .55rem; border: 1.5px solid #3D5C83; border-radius: 50%; }
.ws-icon-users::after { right: .57rem; bottom: .58rem; left: .57rem; height: .62rem; border: 1.5px solid #3D5C83; border-radius: 1rem 1rem .4rem .4rem; border-top-color: transparent; }
.ws-icon-hardware::before { inset: .72rem; border: 1.5px solid #3D5C83; border-radius: .2rem; box-shadow: .31rem .31rem 0 rgba(47,74,109,.18); }
.ws-icon-hardware::after { top: .5rem; bottom: .5rem; left: 50%; width: 1px; background: linear-gradient(#3D5C83 12%, transparent 12% 28%, #3D5C83 28% 40%, transparent 40% 60%, #3D5C83 60% 72%, transparent 72% 88%, #3D5C83 88%); }
.ws-cloud-map { display: grid; align-items: stretch; margin-bottom: 1.7rem; padding: clamp(1.25rem, 3vw, 2.4rem); border: 1px solid rgba(109,141,181,.18); border-radius: 1rem; color: #e8f4ff; background: radial-gradient(circle at 50% 45%, rgba(47,74,109,.24), transparent 38%), linear-gradient(135deg, #1E2A3A, #2F4A6D); grid-template-columns: minmax(10rem,.8fr) minmax(3rem,.35fr) minmax(15rem,1.25fr) minmax(3rem,.35fr) minmax(10rem,.8fr); }
.ws-cloud-node, .ws-cloud-core { display: flex; min-width: 0; min-height: 12rem; justify-content: center; flex-direction: column; padding: 1.5rem; border: 1px solid rgba(109,141,181,.17); border-radius: .85rem; background: rgba(255,255,255,.025); }
.ws-cloud-node b, .ws-cloud-core b { margin-bottom: .45rem; color: #FFFFFF; font-size: 1.05rem; font-weight: 580; }
.ws-cloud-node small { color: rgba(221,236,231,.56); font-size: .76rem; line-height: 1.55; }
.ws-cloud-core { align-items: center; text-align: center; border-color: rgba(109,141,181,.38); background: linear-gradient(145deg, rgba(47,74,109,.22), rgba(25,52,99,.2)); box-shadow: 0 18px 45px rgba(0,0,0,.18); }
.ws-cloud-label { margin-bottom: 1.1rem; color: #6D8DB5; font-size: .65rem; font-weight: 750; letter-spacing: .2em; }
.ws-cloud-core b { font-size: 1.35rem; }
.ws-cloud-capabilities { display: flex; flex-wrap: wrap; justify-content: center; gap: .4rem; margin-top: .85rem; }
.ws-cloud-capabilities span { padding: .35rem .55rem; border-radius: 2rem; color: rgba(231,244,239,.72); background: rgba(255,255,255,.07); font-size: .66rem; }
.ws-cloud-link { position: relative; display: grid; place-items: center; }
.ws-cloud-link::before { width: 100%; height: 1px; content: ""; background: linear-gradient(90deg, rgba(109,141,181,.12), #6D8DB5, rgba(109,141,181,.12)); }
.ws-cloud-link i { position: absolute; width: .42rem; height: .42rem; border-top: 1px solid #6D8DB5; border-right: 1px solid #6D8DB5; transform: rotate(45deg); }
.ws-mborn-flow { display: grid; align-items: stretch; margin-bottom: 1.7rem; padding: clamp(1.25rem,3vw,2rem); border: 1px solid rgba(29,29,31,.09); border-radius: 1rem; background: linear-gradient(135deg, #eceef2, #f7f7f9); grid-template-columns: minmax(10rem,1fr) minmax(1rem,.18fr) minmax(10rem,1fr) minmax(1rem,.18fr) minmax(10rem,1fr) minmax(1rem,.18fr) minmax(10rem,1fr); }
.ws-flow-step { position: relative; min-height: 13rem; padding: 1.45rem; border: 1px solid rgba(29,29,31,.09); border-radius: .8rem; background: rgba(255,255,255,.86); }
.ws-flow-step em { position: absolute; top: 1rem; right: 1rem; color: rgba(47,74,109,.56); font-size: .65rem; font-style: normal; font-weight: 700; letter-spacing: .12em; }
.ws-flow-step b, .ws-flow-step small { display: block; }
.ws-flow-step b { margin-bottom: .45rem; color: #1E2A3A; font-size: 1rem; font-weight: 600; }
.ws-flow-step small { color: #7A8699; font-size: .75rem; line-height: 1.5; }
.ws-flow-step--final { border-color: rgba(47,74,109,.28); background: #edf5ff; }
.ws-flow-arrow { position: relative; display: block; height: 1px; align-self: center; background: rgba(47,74,109,.28); }
.ws-flow-arrow::after { position: absolute; top: -.22rem; right: 0; width: .42rem; height: .42rem; border-top: 1px solid #3D5C83; border-right: 1px solid #3D5C83; content: ""; transform: rotate(45deg); }
.ws-model-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--tp-line); }
.ws-model-card { min-width: 0; padding: 2rem; background: #FFFFFF; }
.ws-model-code { margin-bottom: 1.1rem; color: #2F4A6D; font-size: 1.8rem; font-weight: 620; letter-spacing: -.035em; }
.ws-model-label { min-height: 2.8rem; margin-bottom: 1.6rem; color: #6b7873; font-size: .76rem; font-weight: 700; letter-spacing: .07em; }
.ws-model-card h3 { min-height: 6.5rem; margin-bottom: 1.5rem; font-size: 1.25rem; line-height: 1.45; letter-spacing: -.025em; }
.ws-model-card ul { margin: 0 0 1.8rem; padding: 0; border-top: 1px solid var(--tp-line); list-style: none; }
.ws-model-card li { position: relative; padding: .65rem 0 .65rem 1rem; border-bottom: 1px solid var(--tp-line); color: #43514c; font-size: .86rem; }
.ws-model-card li::before { position: absolute; top: 1.05rem; left: 0; width: 4px; height: 4px; border-radius: 50%; content: ""; background: #2F4A6D; }
.ws-model-description { margin: 0; color: var(--tp-muted); font-size: .9rem; line-height: 1.72; }
.ws-product-note { max-width: 55rem; margin: 0; padding: 1.2rem 1.4rem; border-left: 2px solid #2F4A6D; color: #7A8699; background: rgba(47,74,109,.06); line-height: 1.65; }

/* Complete systems — neutral graphite and cool-blue theme. */
.tp--whole-system .tp-section-heading h2,
.tp--whole-system .ws-product-heading strong,
.tp--whole-system .ws-model-card h3 { color: #1E2A3A; }
.tp--whole-system .tp-kicker,
.tp--whole-system .ws-product-index,
.tp--whole-system .ws-model-code { color: #2F4A6D; }
.tp--whole-system .ws-product {
  border-color: rgba(29,29,31,.09);
  background: rgba(255,255,255,.78);
}
.tp--whole-system .ws-model-grid { background: rgba(29,29,31,.09); }
.tp--whole-system .ws-model-card { background: #fff; }
.tp--whole-system .ws-model-label,
.tp--whole-system .ws-model-card li,
.tp--whole-system .ws-product-note { color: #7A8699; }
.tp--whole-system .ws-model-card li::before { background: #2F4A6D; }
.tp--whole-system .ws-cloud-map {
  border-color: rgba(109,141,181,.18);
  color: #eef6ff;
  background:
    radial-gradient(circle at 50% 45%, rgba(47,74,109,.24), transparent 38%),
    linear-gradient(135deg, #1E2A3A, #2F4A6D);
}
.tp--whole-system .ws-cloud-node,
.tp--whole-system .ws-cloud-core { border-color: rgba(109,141,181,.17); }
.tp--whole-system .ws-cloud-core {
  border-color: rgba(109,141,181,.38);
  background: linear-gradient(145deg, rgba(47,74,109,.22), rgba(25,52,99,.2));
}
.tp--whole-system .ws-cloud-label { color: #6D8DB5; }
.tp--whole-system .ws-cloud-link::before {
  background: linear-gradient(90deg, rgba(109,141,181,.12), #6D8DB5, rgba(109,141,181,.12));
}
.tp--whole-system .ws-cloud-link i { border-color: #6D8DB5; }
.tp--whole-system .ws-mborn-flow {
  border-color: rgba(29,29,31,.09);
  background: linear-gradient(135deg, #eceef2, #f7f7f9);
}
.tp--whole-system .ws-flow-step { border-color: rgba(29,29,31,.09); background: rgba(255,255,255,.86); }
.tp--whole-system .ws-flow-step em { color: rgba(47,74,109,.56); }
.tp--whole-system .ws-flow-step b { color: #1E2A3A; }
.tp--whole-system .ws-flow-step small { color: #7A8699; }
.tp--whole-system .ws-flow-step--final { border-color: rgba(47,74,109,.28); background: #edf5ff; }
.tp--whole-system .ws-flow-arrow { background: rgba(47,74,109,.28); }
.tp--whole-system .ws-product-note {
  border-left-color: #2F4A6D;
  background: rgba(47,74,109,.06);
}

/* Legacy processor illustration styles retained for older content */
.qpu-stage { position: relative; width: min(100%, 37rem); aspect-ratio: 1.1; margin-left: auto; transform: perspective(900px) rotateX(58deg) rotateZ(-28deg); transform-style: preserve-3d; }
.qpu-stage::before { position: absolute; inset: 12% 8%; border: 1px solid rgba(109,141,181,.2); content: ""; box-shadow: 0 0 80px rgba(47,74,109,.12); }
.qpu-package { position: absolute; inset: 14%; border: 4px solid #b17a43; background: linear-gradient(135deg, #8e5b31, #d4a36a 36%, #7a4927 72%); box-shadow: inset 0 0 0 7px #3b2a1c, 0 40px 55px rgba(0,0,0,.45); transform: translateZ(35px); }
.qpu-cavity { position: absolute; inset: 12%; display: grid; place-items: center; border: 8px solid #282a27; background: #171c1a; box-shadow: inset 0 0 35px #000; }
.qpu-die { display: grid; width: 58%; aspect-ratio: 1; padding: 9%; border: 2px solid #6D8DB5; background: linear-gradient(145deg, #2F4A6D, #3D5C83); box-shadow: 0 0 25px rgba(109,141,181,.2); grid-template-columns: repeat(3, 1fr); gap: 10%; }
.qpu-die i { display: block; border: 1px solid rgba(183,197,214,.65); border-radius: 50%; box-shadow: inset 0 0 0 3px rgba(109,141,181,.12); }
.qpu-screw { position: absolute; width: 12px; aspect-ratio: 1; border-radius: 50%; background: #261c15; box-shadow: inset 2px 1px #c99b6f; }
.qpu-screw--1 { top: 4%; left: 4%; }.qpu-screw--2 { top: 4%; right: 4%; }.qpu-screw--3 { right: 4%; bottom: 4%; }.qpu-screw--4 { bottom: 4%; left: 4%; }
.qpu-port { position: absolute; z-index: 5; width: 13%; height: 6%; border: 2px solid #d5a46c; background: #5b3a20; box-shadow: 0 8px 15px rgba(0,0,0,.3); }
.qpu-port--1 { top: 19%; left: 1%; }.qpu-port--2 { top: 38%; left: -2%; }.qpu-port--3 { right: -2%; bottom: 38%; }.qpu-port--4 { right: 1%; bottom: 19%; }
.qpu-caption, .wafer-label, .sfq-label { position: absolute; right: -3rem; bottom: 0; display: flex; flex-direction: column; transform: translateZ(2px) rotateZ(28deg) rotateX(-58deg); }
.qpu-caption span, .wafer-label span, .sfq-label span { color: var(--tp-mint); font-size: .6rem; letter-spacing: .16em; }
.qpu-caption strong, .wafer-label strong, .sfq-label strong { color: rgba(255,255,255,.7); font-size: .75rem; letter-spacing: .08em; }

.processor-selector { display: none; margin-bottom: 1.5rem; gap: .4rem; }
.processor-tab { flex: 1; padding: 1rem; border: 1px solid var(--tp-line); color: var(--tp-muted); background: transparent; cursor: pointer; }
.processor-tab span { display: block; color: var(--tp-text); font-size: 1.15rem; }
.processor-tab.is-active { color: var(--tp-text); border-color: var(--tp-text); background: #fff; }
.processor-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--tp-line); }
.processor-card { position: relative; min-width: 0; padding: 2.1rem; overflow: hidden; background: #FFFFFF; }
.processor-card-top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 3rem; }
.processor-code { font-size: 1.35rem; font-weight: 620; letter-spacing: -.04em; }
.processor-status { padding: .28rem .45rem; border: 1px solid rgba(47,74,109,.2); color: #2F4A6D; font-size: .65rem; font-weight: 600; letter-spacing: .1em; }
.processor-card h3 { margin-bottom: .45rem; font-size: 1.8rem; }
.processor-tagline { min-height: 3rem; color: var(--tp-muted); line-height: 1.5; }
.processor-miniature { position: relative; height: 13rem; margin: 2.2rem 0; padding: 1.5rem; border: 0; background: radial-gradient(circle, rgba(109,141,181,.13), transparent 68%); }
.processor-miniature img { display: block; width: 100%; height: 100%; object-fit: contain; object-position: center; filter: drop-shadow(0 18px 22px rgba(30,42,58,.16)); transition: transform .45s ease; }
.processor-card:hover .processor-miniature img { transform: scale(1.025); }
.processor-miniature span, .processor-miniature i, .processor-miniature b { position: absolute; inset: 50% auto auto 50%; display: block; aspect-ratio: 1; transform: translate(-50%,-50%) rotate(45deg); }
.processor-miniature span { width: 38%; border: 1px solid #6D8DB5; background: repeating-linear-gradient(0deg, transparent 0 6px, rgba(109,141,181,.2) 7px); box-shadow: 0 10px 25px rgba(30,42,58,.14); }
.processor-miniature i { width: 54%; border: 1px solid rgba(47,74,109,.3); }
.processor-miniature b { width: 70%; border: 1px dashed rgba(47,74,109,.18); }
.processor-miniature--2 span { box-shadow: 8px 8px 0 #B7C5D6, 0 16px 28px rgba(30,42,58,.14); }
.processor-miniature--3 span { box-shadow: 6px 6px 0 #7A8699, 12px 12px 0 #E6E1D9, 0 20px 30px rgba(0,0,0,.2); }
.processor-specs { margin: 0; }
.processor-specs div { display: flex; align-items: baseline; justify-content: space-between; padding: .75rem 0; border-bottom: 1px solid var(--tp-line); gap: .6rem; }
.processor-specs dt { color: #7A8699; font-size: .68rem; font-weight: 600; letter-spacing: .08em; }
.processor-specs dd { margin: 0; text-align: right; font-size: .9rem; font-weight: 600; }
.processor-card ul { margin: 1.8rem 0 0; padding: 0; list-style: none; }
.processor-card li { position: relative; padding: .32rem 0 .32rem 1rem; color: #4B5563; font-size: .92rem; }
.processor-card li::before { position: absolute; top: .8rem; left: 0; width: 4px; height: 4px; border-radius: 50%; content: ""; background: #2F4A6D; }
.processor-development-note { display: grid; align-items: baseline; margin-top: 1.15rem; padding: .9rem 2.1rem 0; color: #7A8699; grid-template-columns: auto 1fr; gap: 1rem; }
.processor-development-note strong { color: #2F4A6D; font-size: .76rem; font-weight: 700; letter-spacing: .07em; white-space: nowrap; }
.processor-development-note span { font-size: .84rem; line-height: 1.6; }
.tp-foundation { display: grid; grid-template-columns: .8fr 1.2fr; gap: 8rem; }
.tp-foundation .tp-section-heading { display: block; margin: 0; }
.foundation-list article { display: grid; padding: 1.75rem 0; border-top: 1px solid rgba(255,255,255,.14); grid-template-columns: 4rem 1fr; }
.foundation-list article:last-child { border-bottom: 1px solid rgba(255,255,255,.14); }
.foundation-list article > span { color: var(--tp-mint); font-size: .68rem; letter-spacing: .15em; }
.foundation-list h3 { margin-bottom: .65rem; color: #fff; font-size: 1.35rem; }
.foundation-list p { max-width: 35rem; margin-bottom: 0; color: rgba(255,255,255,.54); line-height: 1.65; }

/* Foundry */
.tp-masthead--foundry { background: radial-gradient(circle at 74% 42%, #3D5C83 0, #1E2A3A 38%, #1E2A3A 70%); }
.tp--foundry .foundry-masthead-photo {
  width: 100%;
  margin-inline: auto;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  -webkit-mask-image: none;
  mask-image: none;
}
.tp--foundry .foundry-masthead-photo::after {
  display: none;
}
.tp--foundry .foundry-masthead-photo img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 48%; }
.wafer-scene { position: relative; width: min(100%, 35rem); aspect-ratio: 1; margin-left: auto; }
.wafer { position: absolute; inset: 8%; overflow: hidden; border: 2px solid #6D8DB5; border-radius: 50%; background: radial-gradient(circle at 35% 28%, #B7C5D6, #3D5C83 45%, #1E2A3A 72%); box-shadow: inset -35px -30px 60px rgba(0,0,0,.45), 0 45px 70px rgba(0,0,0,.34); transform: perspective(850px) rotateX(64deg) rotateZ(-22deg); }
.wafer::after { position: absolute; right: 42%; bottom: -2%; width: 16%; height: 6%; content: ""; background: #1E2A3A; }
.wafer-pattern { display: grid; width: 75%; margin: 16% auto; transform: rotate(45deg); grid-template-columns: repeat(5, 1fr); gap: 5px; }
.wafer-pattern i { display: block; aspect-ratio: 1; border: 1px solid rgba(202,244,233,.55); background: rgba(109,206,180,.09); }
.wafer-orbit { position: absolute; border: 1px solid rgba(121,223,196,.2); border-radius: 50%; }
.wafer-orbit--1 { inset: 0; }.wafer-orbit--2 { inset: 14%; border-style: dashed; }
.wafer-label { right: 0; bottom: 4%; transform: none; }
.engagement-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.25rem; }
.engagement-card { position: relative; padding: 3.2rem; border: 1px solid var(--tp-line); background: #FFFFFF; }
.engagement-card:last-child { color: #FFFFFF; border-color: transparent; background: #1E2A3A; }
.engagement-index { position: absolute; top: 2rem; right: 2rem; color: var(--tp-mint); font-size: .7rem; letter-spacing: .14em; }
.engagement-overline { margin-bottom: 2.1rem; color: #7A8699; font-size: .72rem; letter-spacing: .15em; text-transform: uppercase; }
.engagement-card:last-child .engagement-overline { color: rgba(255,255,255,.5); }
.engagement-card h3 { margin-bottom: 1rem; font-size: clamp(2rem, 3vw, 3.25rem); }
.engagement-card:last-child h3 { color: #FFFFFF; }
.engagement-summary { max-width: 35rem; min-height: 4rem; margin-bottom: 2.4rem; color: #7A8699; line-height: 1.65; }
.engagement-card:last-child .engagement-summary { color: rgba(255,255,255,.58); }
.engagement-card dl { margin: 0; }
.engagement-card dl div { display: grid; padding: 1rem 0; border-top: 1px solid var(--tp-line); grid-template-columns: 9rem 1fr; }
.engagement-card:last-child dl div { border-color: rgba(255,255,255,.14); }
.engagement-card dt { color: #7A8699; font-size: .68rem; font-weight: 600; letter-spacing: .08em; }
.engagement-card dd { margin: 0; font-size: .94rem; font-weight: 500; }
.capability-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; background: var(--tp-line); }
.tp-scene-carousel { position: relative; height: clamp(17rem, 34vw, 30rem); margin-bottom: 1px; overflow: hidden; background: #E6E1D9; }
.tp-scene-carousel figure { position: absolute; inset: 0; margin: 0; opacity: 0; animation: foundrySceneFade 10s infinite; }
.tp-scene-carousel figure:nth-child(2) { animation-delay: 5s; }
.tp-scene-carousel img { display: block; width: 100%; height: 100%; object-fit: cover; }
.foundry-process-visual { height: clamp(16rem, 27vw, 23rem); margin-bottom: 1rem; }
.foundry-process-visual::after { position: absolute; inset: 35% 0 0; z-index: 1; content: ""; background: linear-gradient(transparent, rgba(5, 15, 12, .78)); pointer-events: none; }
.foundry-process-caption { position: absolute; right: clamp(1.4rem, 3vw, 2.5rem); bottom: clamp(1.3rem, 2.5vw, 2.1rem); left: clamp(1.4rem, 3vw, 2.5rem); z-index: 2; display: flex; align-items: flex-end; justify-content: space-between; color: #fff; gap: 3rem; }
.foundry-process-caption span { flex: 0 0 auto; color: var(--tp-mint-bright); font-size: .7rem; font-weight: 700; letter-spacing: .15em; }
.foundry-process-caption p { max-width: 34rem; margin: 0; color: rgba(255,255,255,.78); font-size: .9rem; line-height: 1.55; text-align: right; }
@keyframes foundrySceneFade {
  0%, 44% { opacity: 1; transform: scale(1); }
  50%, 94% { opacity: 0; transform: scale(1.025); }
  100% { opacity: 1; transform: scale(1); }
}
.capability-card { min-height: 27rem; padding: 2.5rem; background: #FFFFFF; }
.capability-head { display: flex; align-items: flex-start; margin-bottom: 4rem; gap: 1.2rem; }
.capability-head > span { display: grid; width: 2.4rem; aspect-ratio: 1; place-items: center; border: 1px solid #6D8DB5; border-radius: 50%; color: #2F4A6D; font-size: .62rem; }
.capability-head p { margin-bottom: .2rem; color: #77847f; font-size: .7rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; }
.capability-head h3 { margin: 0; font-size: 1.8rem; }
.capability-card ul { margin: 0; padding: 0; list-style: none; }
.capability-card li { padding: .72rem 0; border-bottom: 1px solid var(--tp-line); color: #4B5563; font-size: .94rem; }
.baseline-process-table { overflow: hidden; border: 1px solid var(--tp-line); background: #FFFFFF; }
.baseline-process-title { display: grid; min-height: 5rem; place-items: center; border-bottom: 1px solid var(--tp-line); background: rgba(112, 220, 194, .12); }
.baseline-process-title strong { font-size: 1.4rem; font-weight: 650; letter-spacing: -.025em; }
.baseline-process-columns { display: grid; grid-template-columns: repeat(4, 1fr); }
.baseline-process-column { min-width: 0; border-right: 1px solid var(--tp-line); background: #ffffff; }
.baseline-process-column:last-child { border-right: 0; }
.baseline-process-head { min-height: 7.2rem; padding: 1.4rem 1.3rem; border-bottom: 1px solid var(--tp-line); background: rgba(112, 220, 194, .055); }
.baseline-process-head > span { display: none; }
.baseline-process-head p { margin: 0 0 .35rem; color: #6D8DB5; font-size: .62rem; font-weight: 700; letter-spacing: .1em; }
.baseline-process-head h3 { margin: 0; font-size: clamp(1.18rem, 1.55vw, 1.5rem); line-height: 1.25; letter-spacing: -.025em; }
.baseline-process-column ul { margin: 0; padding: 1rem 1.3rem 1.3rem; list-style: none; }
.baseline-process-column li { position: relative; padding: .65rem 0 .65rem 1.2rem; color: #4B5563; font-size: .93rem; line-height: 1.5; }
.baseline-process-column li::before { position: absolute; top: 1.17rem; left: 0; width: 5px; height: 5px; border-radius: 50%; content: ""; background: #2F4A6D; }
.process-track { position: relative; display: grid; grid-template-columns: repeat(4, 1fr); }
.process-track::before { position: absolute; top: 1.25rem; right: 10%; left: 10%; height: 1px; content: ""; background: linear-gradient(90deg, var(--tp-mint), rgba(112,220,194,.1)); }
.process-track > div { position: relative; display: flex; align-items: center; flex-direction: column; text-align: center; gap: 1.2rem; }
.process-track span { z-index: 1; display: grid; width: 2.5rem; aspect-ratio: 1; place-items: center; border: 1px solid rgba(112,220,194,.55); border-radius: 50%; color: var(--tp-mint); background: var(--tp-ink); font-size: .63rem; }
.process-track strong { max-width: 11rem; color: rgba(255,255,255,.8); font-size: .9rem; font-weight: 520; }

/* SFQ */
.tp--sfq { --tp-mint: #8bb6e8; --tp-mint-bright: #bdd8f6; }
.tp-masthead--sfq { background: radial-gradient(circle at 75% 42%, #182a3b 0, #0a151d 38%, #050b10 72%); }
.tp-masthead--sfq .tp-product-photo--digital {
  overflow: hidden;
  -webkit-mask-image: none;
  mask-image: none;
}
.tp-masthead--sfq .tp-product-photo--digital::after {
  display: none;
}
.sfq-scene { position: relative; width: min(100%, 36rem); aspect-ratio: 1.1; margin-left: auto; transform: perspective(900px) rotateX(54deg) rotateZ(-28deg); transform-style: preserve-3d; }
.sfq-chip { position: absolute; inset: 14%; z-index: 4; padding: 9%; border: 2px solid #6D8DB5; background: linear-gradient(145deg, #2F4A6D, #1E2A3A); box-shadow: 0 30px 55px rgba(0,0,0,.48); transform: translateZ(75px); }
.sfq-grid { display: grid; height: 100%; grid-template-columns: repeat(6,1fr); gap: 5%; }
.sfq-grid i { display: block; border: 1px solid rgba(159,204,237,.6); background: repeating-linear-gradient(90deg, transparent 0 3px, rgba(132,185,222,.28) 4px); }
.sfq-layer { position: absolute; right: 18%; left: 18%; display: flex; height: 56%; align-items: flex-end; justify-content: flex-end; padding: .65rem; border: 1px solid rgba(141,186,217,.32); color: rgba(255,255,255,.42); background: rgba(31,57,73,.35); font-size: .55rem; letter-spacing: .1em; }
.sfq-layer--1 { top: 23%; transform: translateZ(50px); }.sfq-layer--2 { top: 28%; transform: translateZ(28px); }.sfq-layer--3 { top: 33%; transform: translateZ(6px); }
.sfq-pulse { position: absolute; width: 18%; height: 2px; background: #badaf0; box-shadow: 0 0 12px #81b7dc; }
.sfq-pulse::before { position: absolute; top: -10px; left: 48%; width: 2px; height: 10px; content: ""; background: inherit; }
.sfq-pulse--1 { top: 17%; left: -14%; }.sfq-pulse--2 { top: 48%; right: -14%; }.sfq-pulse--3 { bottom: 14%; left: -14%; }
.sfq-label { right: -2rem; bottom: -1rem; }
.sfq-service-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--tp-line); }
.sfq-service-card { min-height: 30rem; padding: 2.1rem; background: #FFFFFF; }
.sfq-service-card > span { display: grid; width: 2.3rem; aspect-ratio: 1; margin-bottom: 4.6rem; place-items: center; border: 1px solid #92b9d4; border-radius: 50%; color: #477691; font-size: .62rem; }
.sfq-service-card > p:nth-of-type(1) { color: #72808a; font-size: .7rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; }
.sfq-service-card h3 { min-height: 4.5rem; margin-bottom: 1.2rem; font-size: 1.55rem; line-height: 1.25; }
.sfq-service-line { width: 100%; height: 1px; margin: .5rem 0 1.5rem; background: linear-gradient(90deg, #7da6c0, transparent); }
.sfq-service-copy { color: #4B5563; font-size: .94rem; line-height: 1.7; }
.tp-section--signal { color: #e9f2f6; background: #1E2A3A; }
.integration-layout { display: grid; align-items: center; grid-template-columns: 1.05fr .95fr; gap: 7rem; }
.integration-copy h2 { color: #fff; }
.integration-copy > p:not(.tp-kicker) { max-width: 34rem; color: rgba(255,255,255,.56); font-size: 1.03rem; line-height: 1.75; }
.integration-tags { display: flex; flex-wrap: wrap; margin-top: 2rem; gap: .6rem; }
.integration-tags span { padding: .55rem .7rem; border: 1px solid rgba(139,182,232,.25); color: #a9c9ed; font-size: .6rem; letter-spacing: .1em; }
.integration-visual { position: relative; height: 31rem; }
.integration-visual--photo {
  overflow: hidden;
  border: 0;
  background: transparent;
  box-shadow: none;
  -webkit-mask-image:
    linear-gradient(90deg, transparent 0%, #000 24%, #000 76%, transparent 100%),
    linear-gradient(180deg, transparent 0%, #000 20%, #000 76%, transparent 100%);
  -webkit-mask-composite: source-in;
  mask-image:
    linear-gradient(90deg, transparent 0%, #000 24%, #000 76%, transparent 100%),
    linear-gradient(180deg, transparent 0%, #000 20%, #000 76%, transparent 100%);
  mask-composite: intersect;
}
.integration-visual--photo img { display: block; width: 100%; height: 100%; object-fit: cover; }
.integration-visual--sfq-control {
  width: min(100%, 35rem);
  height: auto;
  aspect-ratio: 4 / 3;
  -webkit-mask-image: none;
  mask-image: none;
}
.integration-visual--sfq-control img { object-position: 50% 50%; }
.integration-visual--sfq-control picture { display: block; width: 100%; height: 100%; }
.cold-stage { position: absolute; left: 50%; width: 82%; height: 6rem; border: 2px solid #89735f; border-radius: 50%; background: linear-gradient(#bf946c, #4a3525); transform: translateX(-50%); }
.cold-stage--top { top: 1rem; }.cold-stage--bottom { bottom: 1rem; }
.mcm-board { position: absolute; top: 50%; left: 50%; display: flex; width: 72%; height: 11rem; align-items: center; padding: 1.5rem; border: 2px solid #8a7765; background: #2c2721; transform: translate(-50%,-50%); gap: 1.5rem; }
.mcm-chip { display: grid; height: 7rem; place-items: center; border: 1px solid #6D8DB5; color: #D8E2EF; background: #2F4A6D; font-size: .72rem; letter-spacing: .12em; }
.mcm-chip--sfq { width: 44%; background-image: repeating-linear-gradient(90deg, transparent 0 8px, rgba(132,185,222,.12) 9px); }.mcm-chip--qpu { width: 32%; border-radius: 50%; }
.mcm-bus { display: flex; flex: 1; flex-direction: column; gap: .55rem; }
.mcm-bus i { height: 1px; background: #8ebee0; box-shadow: 0 0 5px #6fa5c9; }
.application-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1rem; }
.sfq-process-banner { height: clamp(16rem, 34vw, 29rem); margin: 0 0 1rem; overflow: hidden; background: #dce7ef; }
.sfq-process-banner img { display: block; width: 100%; height: 100%; object-fit: cover; }
.sfq-application-intro {
  position: relative;
  display: flex;
  min-height: clamp(25rem, 35vw, 32rem);
  align-items: center;
  margin-bottom: clamp(2.5rem, 5vw, 5rem);
  overflow: hidden;
}
.sfq-application-intro .tp-section-heading { position: relative; z-index: 2; display: block; width: 48%; margin: 0; }
.sfq-application-intro .tp-section-heading h2 { max-width: 12ch; }
.sfq-process-banner--wafer {
  position: absolute;
  inset: 0 0 0 auto;
  width: 62%;
  height: 100%;
  margin: 0;
  background: transparent;
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,.45) 18%, #000 38%);
  mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,.45) 18%, #000 38%);
}
.sfq-process-banner--wafer img { object-fit: cover; object-position: 50% 50%; }
.application-card { min-height: 26rem; padding: 2.3rem; border: 1px solid var(--tp-line); background: #fff; }
.application-card > span { color: #5d89a6; font-size: .65rem; letter-spacing: .15em; }
.application-card > p:nth-of-type(1) { margin: 3.7rem 0 .6rem; color: #72828d; font-size: .7rem; font-weight: 600; letter-spacing: .1em; }
.application-card h3 { min-height: 4.5rem; font-size: 1.55rem; line-height: 1.25; }
.application-wave { display: flex; width: min(100%, 18rem); height: 4.5rem; align-items: center; justify-content: center; margin: 1.5rem auto; gap: .35rem; }
.application-wave i { width: 14%; height: 1px; background: #8db8d3; }
.application-wave i:nth-child(2), .application-wave i:nth-child(4) { height: 1.6rem; border: 1px solid #8db8d3; border-width: 1px 0; background: transparent; }
.application-wave i:nth-child(3) { height: 3rem; border: 1px solid #8db8d3; border-width: 1px 0; background: transparent; }
.application-copy { color: #4B5563; font-size: .94rem; line-height: 1.7; }

.tp-cta { padding: 4.5rem 0; color: #1E2A3A; background: var(--tp-mint); }
.tp-cta .tp-kicker { color: #1E2A3A; }
.tp--sfq .tp-cta .tp-kicker { color: #24485e; }
.tp-cta-inner { display: flex; align-items: flex-end; justify-content: space-between; gap: 4rem; }
.tp-cta h2 { max-width: 21ch; margin-bottom: 0; }
.tp-button--dark { flex-shrink: 0; color: #fff; background: #1E2A3A; }
.tp-button--dark:hover { color: #fff; background: #2F4A6D; }

@media (max-width: 991px) {
  .tp-shell { width: min(100% - 3rem, 88rem); }
  .tp-masthead { min-height: auto; padding-top: 5.25rem; }
  .tp-masthead-layout { grid-template-columns: 1fr; gap: 3.5rem; }
  .tp-masthead-copy { max-width: 46rem; }
  .tp-masthead-visual { width: min(100%, 38rem); margin: 0 auto; }
  .tp-metric-strip { margin-top: 1rem; }
  .tp-section { padding: 4.25rem 0; }
  .tp-section-heading { display: block; }
  .tp-section-heading h2 { margin-bottom: 1.5rem; }
  .processor-selector { display: flex; }
  .processor-grid { display: block; background: none; }
  .processor-card { display: none; }
  .processor-card.is-active { display: block; }
  .tp-foundation, .integration-layout { grid-template-columns: 1fr; gap: 4rem; }
  .sfq-application-intro .tp-section-heading { width: 52%; }
  .electronics-capability-grid { grid-template-columns: repeat(2, 1fr); }
  .baseline-process-columns { grid-template-columns: repeat(2, 1fr); }
  .baseline-process-column:nth-child(2) { border-right: 0; }
  .baseline-process-column:nth-child(-n+2) { border-bottom: 1px solid var(--tp-line); }
  .electronics-platform, .electronics-loop { grid-template-columns: 1fr; gap: 3rem; }
  .ws-masthead { padding-top: 6.5rem; }
  .ws-masthead-layout { grid-template-columns: 1fr; gap: 2rem; }
  .ws-masthead-visual { width: min(100%, 43rem); margin-inline: auto; }
  .ws-masthead-copy { max-width: 46rem; }
  .ws-model-grid { grid-template-columns: 1fr; background: transparent; gap: 1px; }
  .ws-model-card h3 { min-height: auto; }
  .ws-cloud-map { grid-template-columns: minmax(8rem,.75fr) minmax(2rem,.2fr) minmax(13rem,1.1fr) minmax(2rem,.2fr) minmax(8rem,.75fr); }
  .ws-mborn-flow { grid-template-columns: minmax(8rem,1fr) minmax(.75rem,.12fr) minmax(8rem,1fr) minmax(.75rem,.12fr) minmax(8rem,1fr) minmax(.75rem,.12fr) minmax(8rem,1fr); }
  .electronics-loop-photo { order: 2; }
  .engagement-card { padding: 2.4rem; }
  .sfq-service-grid { grid-template-columns: repeat(2,1fr); }
}

@media (max-width: 767px) {
  .tp-shell { width: min(100% - 2rem, 88rem); }
  .tp-page h1 { max-width: 100%; font-size: clamp(2.5rem, 11vw, 3.45rem); }
  .tp-page h2 { font-size: clamp(1.95rem, 8.2vw, 2.55rem); }
  .tp-masthead { padding-top: 4.5rem; }
  .tp-masthead-layout { gap: 2.2rem; }
  .tp--processor .tp-masthead-visual { width: 100%; max-width: none; }
  .tp--processor .tp-product-photo--masthead { width: 100%; aspect-ratio: 1; }
  .tp--processor .processor-masthead-slide img { width: 100%; height: 100%; object-position: center; }
  .tp--foundry .tp-masthead-visual { margin-bottom: 1.75rem; }
  .tp-masthead--sfq .tp-masthead-visual { margin-bottom: 1.75rem; }
  .tp-masthead--sfq .tp-product-photo--digital {
    -webkit-mask-image: none;
    mask-image: none;
  }
  .tp-actions { align-items: flex-start; flex-direction: column; gap: 1.15rem; }
  .tp-button { width: 100%; justify-content: space-between; }
  .tp-metric-strip { grid-template-columns: 1fr; }
  .tp-metric-strip > div, .tp-metric-strip > div:first-child { min-height: 5.7rem; padding: 1.15rem 0; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.13); }
  .tp-section { padding: 3rem 0; }
  .tp-section-heading { margin-bottom: 1.9rem; }
  .qpu-caption, .sfq-label { display: none; }
  .processor-selector { overflow-x: auto; }
  .processor-tab { min-width: 8rem; }
  .processor-card { padding: 1.5rem; }
  .processor-development-note { margin-top: .9rem; padding: .75rem 0 0; gap: .75rem; }
  .electronics-masthead-visual { min-height: 14rem; margin-bottom: 1rem; }
  .electronics-masthead-visual img { width: 112%; margin-left: -6%; }
  .electronics-capability-grid { grid-template-columns: 1fr; background: transparent; gap: 1px; }
  .electronics-capability-card { min-height: auto; padding: 1.65rem 1.5rem; }
  .electronics-capability-card h3 { margin-top: 2rem; }
  .electronics-platform-photo, .electronics-loop-photo { width: calc(100% + 1rem); margin-left: -.5rem; }
  .ws-masthead { padding: 5rem 0 3rem; }
  .ws-masthead-layout { min-height: auto; }
  .ws-masthead-visual { order: 2; }
  .ws-masthead-visual img { width: 112%; margin-left: -6%; }
  .ws-masthead-copy h1 { max-width: 100%; font-size: clamp(2.45rem, 10.5vw, 3.4rem); }
  .ws-product-list { gap: 1rem; }
  .ws-product { border-radius: .85rem; }
  .ws-product-header { padding: 1.5rem 1.35rem 1rem; grid-template-columns: 2rem 1fr; gap: .55rem; }
  .ws-product-heading strong { font-size: 1.55rem; }
  .ws-product-heading small { font-size: .86rem; }
  .ws-product-body { padding: 0 1.35rem 1.4rem; }
  .ws-product-summary { margin-bottom: 1.7rem; font-size: .92rem; }
  .ws-cloud-map { padding: 1rem; grid-template-columns: 1fr; gap: .65rem; }
  .ws-cloud-node, .ws-cloud-core { min-height: 0; padding: 1.2rem; }
  .ws-cloud-node { display: grid; align-items: center; grid-template-columns: 2.65rem 1fr; column-gap: .9rem; }
  .ws-cloud-node .ws-diagram-icon { margin: 0; grid-row: 1 / 3; }
  .ws-cloud-node b { margin: 0; }
  .ws-cloud-link { min-height: 1.5rem; }
  .ws-cloud-link::before { width: 1px; height: 100%; background: linear-gradient(rgba(109,141,181,.12), #6D8DB5, rgba(109,141,181,.12)); }
  .ws-cloud-link i { transform: rotate(135deg); }
  .ws-cloud-core { min-height: 10.5rem; }
  .ws-mborn-flow { padding: 1rem; grid-template-columns: 1fr; gap: 0; }
  .ws-flow-step { min-height: 0; padding: 1.15rem 1.15rem 1.15rem 4.65rem; }
  .ws-flow-step .ws-diagram-icon { position: absolute; top: 1.15rem; left: 1.15rem; margin: 0; }
  .ws-flow-arrow { width: 1px; height: 1.5rem; align-self: auto; margin-left: 2.45rem; }
  .ws-flow-arrow::after { top: auto; right: -.2rem; bottom: 0; transform: rotate(135deg); }
  .ws-model-card { padding: 1.5rem; }
  .processor-miniature { height: 12rem; margin-inline: 0; padding: 1.25rem; }
  .engagement-grid, .capability-grid, .application-grid { grid-template-columns: 1fr; }
  .baseline-process-title { min-height: 4.25rem; }
  .foundry-process-visual { height: 16rem; }
  .foundry-process-caption { align-items: flex-start; flex-direction: column; gap: .55rem; }
  .foundry-process-caption p { max-width: 27rem; font-size: .82rem; text-align: left; }
  .baseline-process-columns { grid-template-columns: 1fr; }
  .baseline-process-column, .baseline-process-column:nth-child(2) { border-right: 0; border-bottom: 1px solid var(--tp-line); }
  .baseline-process-column:last-child { border-bottom: 0; }
  .baseline-process-head { min-height: auto; padding: 1.25rem 1.2rem; }
  .baseline-process-column ul { padding: .75rem 1.2rem 1.1rem; }
  .tp-scene-carousel { height: 15rem; }
  .engagement-card { padding: 2rem 1.5rem; }
  .engagement-card dl div { grid-template-columns: 7rem 1fr; }
  .capability-card { min-height: auto; padding: 2rem 1.5rem; }
  .capability-head { margin-bottom: 2rem; }
  .process-track { padding-left: 1rem; grid-template-columns: 1fr; gap: 1.5rem; }
  .process-track::before { top: 0; bottom: 0; left: 2.25rem; width: 1px; height: auto; }
  .process-track > div { align-items: center; flex-direction: row; text-align: left; gap: 1.2rem; }
  .process-track strong { max-width: none; }
  .sfq-service-grid { grid-template-columns: 1fr; background: transparent; gap: 1px; }
  .sfq-service-card { min-height: auto; padding: 2rem 1.5rem; }
  .sfq-service-card > span { margin-bottom: 2.5rem; }
  .sfq-service-card h3 { min-height: auto; }
  .integration-visual { height: 24rem; }
  .integration-visual--sfq-control { width: min(100%, 30rem); height: auto; }
  .sfq-application-intro { display: flex; min-height: 0; align-items: stretch; flex-direction: column; gap: 2rem; overflow: visible; }
  .sfq-application-intro .tp-section-heading { width: 100%; }
  .sfq-application-intro .tp-section-heading h2 { max-width: 16ch; }
  .sfq-process-banner--wafer {
    position: relative;
    inset: auto;
    width: 100%;
    height: auto;
    aspect-ratio: 4 / 3;
    -webkit-mask-image: none;
    mask-image: none;
  }
  .mcm-board { width: 90%; }
  .tp-cta { padding: 3rem 0; }
  .tp-cta-inner { align-items: stretch; flex-direction: column; }
}

@media (prefers-reduced-motion: reduce) {
  .tp-reveal { opacity: 1; transform: none; transition: none; }
  .tp-button { transition: none; }
  .processor-masthead-slide,
  .tp-scene-carousel figure { animation: none; }
  .processor-masthead-slide:first-child,
  .tp-scene-carousel figure:first-child { opacity: 1; }
}
