/* Orbital Constructor. Loaded last; intentionally scoped to the replacement theme. */
body.orbital-theme {
  --orbital-paper: #f5f3ee;
  --orbital-paper-deep: #e9e5dc;
  --orbital-ceramic: #fffefa;
  --orbital-ink: #131719;
  --orbital-ink-soft: #283033;
  --orbital-muted: #5c6665;
  --orbital-line: #c9c8c1;
  --orbital-titanium: #929998;
  --orbital-orange: #ff5b12;
  --orbital-orange-dark: #ac3505;
  --orbital-orange-pale: #ffe1d1;
  --orbital-dark-line: rgba(255,255,250,.2);
  --page-bg: var(--orbital-paper);
  color: var(--orbital-ink);
  background: var(--orbital-paper);
  font-family: Inter, Manrope, "Segoe UI", Arial, sans-serif;
  text-rendering: optimizeLegibility;
}

body.orbital-theme :is(h1, h2, h3, h4, .logo span, .price-value, .case-growth__metrics strong) {
  font-family: Inter, Manrope, "Segoe UI", Arial, sans-serif;
  font-stretch: normal;
}
body.orbital-theme :is(p, li) { color: var(--orbital-muted); }
body.orbital-theme a { color: inherit; text-decoration-color: color-mix(in srgb, var(--orbital-orange) 72%, transparent); text-underline-offset: .16em; }
body.orbital-theme a:hover { text-decoration-color: currentColor; }
body.orbital-theme :focus-visible { outline: 3px solid var(--orbital-orange); outline-offset: 4px; }
body.orbital-theme ::selection { color: var(--orbital-ink); background: #ffc19d; }

/* Global chrome */
body.orbital-theme .site-header {
  min-height: 76px;
  color: var(--orbital-ink);
  border-bottom: 1px solid var(--orbital-line);
  background: color-mix(in srgb, var(--orbital-paper) 92%, transparent);
  box-shadow: 0 1px 0 rgba(19,23,25,.03);
  backdrop-filter: blur(15px);
}
body.orbital-theme .logo span { color: var(--orbital-ink); font-size: 23px; font-weight: 850; letter-spacing: -.055em; }
body.orbital-theme .logo strong { color: var(--orbital-orange-dark); font: 750 9px/1.1 Inter, Manrope, sans-serif; letter-spacing: .15em; }
body.orbital-theme .main-nav a { color: var(--orbital-ink-soft); border-radius: 999px; font-weight: 650; }
body.orbital-theme .main-nav a:hover,
body.orbital-theme .main-nav a:focus-visible { color: var(--orbital-ink); background: var(--orbital-orange-pale); }
body.orbital-theme .main-nav a[rel="nofollow"] { color: var(--orbital-orange-dark); border-color: var(--orbital-orange); }
body.orbital-theme .nav-search { color: var(--orbital-ink); border-color: var(--orbital-line); background: var(--orbital-ceramic); }
body.orbital-theme .nav-search:hover { color: var(--orbital-orange-dark); border-color: var(--orbital-orange); }
body.orbital-theme .menu-button { min-width: 44px; min-height: 44px; border-color: var(--orbital-line); border-radius: 50%; background: var(--orbital-ceramic); }
body.orbital-theme .menu-button span { background: var(--orbital-ink); }

body.orbital-theme :is(.button, .nav-cta) {
  min-height: 46px;
  border: 1px solid var(--orbital-ink);
  border-radius: 999px;
  box-shadow: 2px 3px 0 rgba(19,23,25,.12);
  font-family: Inter, Manrope, "Segoe UI", Arial, sans-serif;
  font-weight: 760;
  letter-spacing: -.015em;
  transition: transform 180ms ease, box-shadow 180ms ease, color 180ms ease, background 180ms ease, border-color 180ms ease;
}
body.orbital-theme :is(.button, .nav-cta):hover { transform: translate(-1px, -2px); box-shadow: 4px 6px 0 rgba(19,23,25,.16); }
body.orbital-theme :is(.nav-cta, .button--primary) { color: #fffefa; border-color: var(--orbital-orange-dark); background: var(--orbital-orange); }
body.orbital-theme :is(.nav-cta, .button--primary):hover { color: #fffefa; border-color: var(--orbital-ink); background: var(--orbital-ink); }
body.orbital-theme .button--secondary { color: var(--orbital-ink); border-color: var(--orbital-ink); background: var(--orbital-ceramic); }
body.orbital-theme .button--secondary:hover { color: var(--orbital-ink); background: var(--orbital-orange-pale); }

/* Bands and common modules */
body.orbital-theme .band { position: relative; color: var(--orbital-ink); border-top: 1px solid var(--orbital-line); background: var(--orbital-paper); }
body.orbital-theme .band::before { display: none; }
body.orbital-theme .band--tint { background: var(--orbital-paper-deep); }
body.orbital-theme .band--dark { color: #fffefa; border-color: var(--orbital-ink); background: var(--orbital-ink); }
body.orbital-theme .band--dark :is(h2, h3, p, li, .eyebrow, .text-link) { color: inherit; }
body.orbital-theme .band--lead { color: #fffefa; background: var(--orbital-ink); }
body.orbital-theme .section-head { position: relative; z-index: 1; }
body.orbital-theme .section-head h2,
body.orbital-theme .band h2 { color: var(--orbital-ink); font-size: clamp(32px, 4vw, 65px); font-weight: 830; line-height: .96; letter-spacing: -.065em; }
body.orbital-theme .band--dark .section-head h2,
body.orbital-theme .band--lead .section-head h2 { color: #fffefa; }
body.orbital-theme .section-head > p { max-width: 64ch; font-size: 16px; line-height: 1.55; }
body.orbital-theme .eyebrow,
body.orbital-theme .hero .eyebrow { color: var(--orbital-orange-dark); font: 780 11px/1.2 Inter, Manrope, sans-serif; letter-spacing: .13em; text-transform: uppercase; }
body.orbital-theme .band--dark .eyebrow,
body.orbital-theme .band--lead .eyebrow { color: #ff9e70; }
body.orbital-theme :is(.text-link, .home-proof__rows a, .direction-grid a, .diagnostic-matrix a, .method-links a, .tool-console-grid a, .founder-trust a) { color: var(--orbital-orange-dark); font-weight: 760; }
body.orbital-theme .band--dark :is(.text-link, .home-proof__rows a, .direction-grid a, .diagnostic-matrix a, .method-links a, .tool-console-grid a, .founder-trust a) { color: #ff9e70; }

/* Existing inner-page hero, adapted while the templates are migrated. */
body.orbital-theme .hero:not(.orbital-hero),
body.orbital-theme .search-ops-hero {
  position: relative;
  overflow: hidden;
  color: #fffefa;
  border-bottom: 1px solid var(--orbital-ink);
  background: var(--orbital-ink);
}
body.orbital-theme .hero:not(.orbital-hero)::before,
body.orbital-theme .search-ops-hero::before { opacity: .46; background-image: radial-gradient(circle at 78% 28%, rgba(255,91,18,.32), transparent 30%), linear-gradient(130deg, transparent 53%, rgba(255,255,250,.08) 53.1%, transparent 53.3%); }
body.orbital-theme .hero:not(.orbital-hero) h1,
body.orbital-theme .search-ops-hero h1 { max-width: 12ch; color: #fffefa; font-size: clamp(45px, 6.5vw, 104px); font-weight: 850; line-height: .88; letter-spacing: -.075em; }
body.orbital-theme :is(.hero-lead, .search-ops-hero__lead) { color: #d7dcda; font-size: clamp(17px, 1.4vw, 21px); line-height: 1.5; }
body.orbital-theme .breadcrumbs { color: #c7cdca; }
body.orbital-theme .breadcrumbs a { color: #fffefa; }
body.orbital-theme .hero-badge,
body.orbital-theme .proofline--light span { color: #fffefa; border: 1px solid rgba(255,255,250,.38); border-radius: 999px; background: rgba(255,255,250,.05); }
body.orbital-theme .hero-badge :is(span, strong),
body.orbital-theme .proofline--light span { color: inherit; }
body.orbital-theme .hero-benefits li::before { background: var(--orbital-orange); }
body.orbital-theme .hero-panel,
body.orbital-theme .diagnostic-panel__top,
body.orbital-theme .diagnostic-panel__score,
body.orbital-theme .tools-panel div { color: #fffefa; border: 1px solid rgba(255,255,250,.23); border-radius: 18px; background: rgba(255,255,250,.07); }
body.orbital-theme :is(.hero-panel, .diagnostic-panel, .tools-panel) :is(p, span) { color: #d7dcda; }
body.orbital-theme .score-row i { background: linear-gradient(90deg, var(--orbital-orange) var(--score), rgba(255,255,250,.14) var(--score)); }
body.orbital-theme :is(.score-row em, .tools-panel span) { color: #ffac83; }

/* New orbital hero and scene primitives. HTML remains readable if JS is absent. */
body.orbital-theme .orbital-hero,
body.orbital-theme .optical-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, .94fr) minmax(420px, 1.06fr);
  gap: clamp(30px, 5vw, 96px);
  align-items: center;
  min-height: min(830px, calc(100vh - 76px));
  padding: clamp(46px, 7.5vw, 118px) var(--page-pad) clamp(48px, 6vw, 92px);
  overflow: clip;
  color: var(--orbital-ink);
  border-bottom: 1px solid var(--orbital-line);
  background: var(--orbital-paper);
}
body.orbital-theme .orbital-hero::before,
body.orbital-theme .optical-hero::before { content: ""; position: absolute; z-index: 0; width: min(50vw, 710px); aspect-ratio: 1; right: -14%; top: -39%; border: 1px solid var(--orbital-line); border-radius: 50%; box-shadow: inset 0 0 0 38px rgba(255,255,250,.32); pointer-events: none; }
body.orbital-theme .orbital-hero__copy,
body.orbital-theme .optical-hero__copy { position: relative; z-index: 2; max-width: 660px; }
body.orbital-theme :is(.orbital-hero, .optical-hero) h1 { max-width: 10.5ch; margin-bottom: 25px; color: var(--orbital-ink); font-size: clamp(56px, 7.1vw, 118px); font-weight: 860; line-height: .84; letter-spacing: -.087em; }
body.orbital-theme :is(.orbital-hero, .optical-hero) h1 span,
body.orbital-theme :is(.orbital-hero, .optical-hero) h1 em { color: var(--orbital-orange); font-style: normal; }
body.orbital-theme :is(.orbital-hero, .optical-hero) :is(.lead, .optical-hero__lead, .orbital-hero__lead, .orbital-hero__copy > p:not(.eyebrow)) { max-width: 47ch; color: var(--orbital-muted); font-size: clamp(17px, 1.45vw, 21px); line-height: 1.5; }
body.orbital-theme :is(.orbital-hero__actions, .optical-hero__actions) { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 29px; }
body.orbital-theme .optical-hero__intent,
body.orbital-theme .orbital-hero__intent { position: absolute; z-index: 3; left: var(--page-pad); bottom: 28px; display: flex; flex-wrap: wrap; gap: 8px; }
body.orbital-theme :is(.optical-hero__intent, .orbital-hero__intent) a { padding: 9px 12px; color: var(--orbital-ink); border: 1px solid var(--orbital-line); border-radius: 999px; background: rgba(255,254,250,.79); font-size: 12px; font-weight: 730; text-decoration: none; }
body.orbital-theme :is(.optical-hero__intent, .orbital-hero__intent) a:hover { color: #fffefa; border-color: var(--orbital-orange-dark); background: var(--orbital-orange); }
body.orbital-theme .optical-hero__scroll,
body.orbital-theme .orbital-hero__scroll { position: absolute; z-index: 3; right: var(--page-pad); bottom: 30px; color: var(--orbital-muted); font-size: 12px; font-weight: 730; text-decoration: none; }
body.orbital-theme .optical-hero__scroll span,
body.orbital-theme .orbital-hero__scroll span { display: inline-grid; width: 27px; aspect-ratio: 1; place-items: center; margin-right: 7px; color: #fffefa; border-radius: 50%; background: var(--orbital-ink); }

body.orbital-theme .orbital-scene,
body.orbital-theme .optical-scene { position: relative; z-index: 1; width: min(100%, 730px); justify-self: end; }
body.orbital-theme .orbital-scene__viewport,
body.orbital-theme .optical-scene__stage { position: relative; display: grid; min-height: 0; aspect-ratio: 1.15 / 1; overflow: hidden; isolation: isolate; border: 1px solid var(--orbital-titanium); border-radius: 24px; background: linear-gradient(145deg, #fffefa, #e4e1d8); box-shadow: 16px 20px 0 rgba(19,23,25,.12), inset 0 0 0 8px rgba(255,255,250,.34); }
body.orbital-theme .orbital-scene__viewport::before,
body.orbital-theme .optical-scene__stage::before { content: ""; position: absolute; z-index: -1; width: 76%; aspect-ratio: 1; left: 12%; top: 12%; border: 1px solid rgba(19,23,25,.26); border-radius: 50%; box-shadow: 0 0 0 34px rgba(255,254,250,.46), 0 0 0 35px rgba(19,23,25,.1); }
body.orbital-theme .orbital-scene__viewport::after,
body.orbital-theme .optical-scene__stage::after { content: ""; position: absolute; left: 4%; right: 4%; top: 53%; height: 2px; background: linear-gradient(90deg, transparent, var(--orbital-orange) 21%, var(--orbital-orange) 78%, transparent); box-shadow: 0 0 16px rgba(255,91,18,.52); transform: rotate(-17deg); pointer-events: none; }
body.orbital-theme .orbital-scene canvas { position: absolute; inset: 0; z-index: 2; width: 100%; height: 100%; touch-action: pan-y; }
body.orbital-theme .orbital-scene__fallback { position: absolute; inset: 0; z-index: 1; width: 100%; height: 100%; }
body.orbital-theme .orbital-scene[data-ready="true"] .orbital-scene__fallback { opacity: .28; transition: opacity 420ms ease; }
body.orbital-theme .optical-layer { border-radius: 15px; filter: saturate(.78) contrast(1.03); mix-blend-mode: multiply; }
body.orbital-theme .optical-layer--page { border: 1px solid rgba(19,23,25,.22); box-shadow: 8px 10px 15px rgba(19,23,25,.12); }
body.orbital-theme .optical-layer--aperture,
body.orbital-theme .optical-layer--lens,
body.orbital-theme .optical-layer--prism { filter: grayscale(.52) sepia(.12) saturate(.82) contrast(1.08); }
body.orbital-theme .optical-orbit { border-color: rgba(19,23,25,.3); }
body.orbital-theme .optical-orbit::after { background: var(--orbital-orange); box-shadow: 0 0 13px rgba(255,91,18,.7); }
body.orbital-theme .optical-beam { background: linear-gradient(90deg, transparent, var(--orbital-orange) 22%, #fffefa 52%, var(--orbital-orange) 76%, transparent); box-shadow: 0 0 18px rgba(255,91,18,.68); }
body.orbital-theme .optical-scene__labels { color: var(--orbital-ink); font-family: Inter, Manrope, sans-serif; font-weight: 760; }
body.orbital-theme .orbital-scene__controls,
body.orbital-theme .optical-scene__controls { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-top: 12px; padding: 12px; color: var(--orbital-ink); border: 1px solid var(--orbital-line); border-radius: 16px; background: var(--orbital-ceramic); }
body.orbital-theme :is(.orbital-scene__controls, .optical-scene__controls) label { display: grid; grid-template-columns: 1fr auto; gap: 7px; color: var(--orbital-muted); font-size: 11px; font-weight: 760; }
body.orbital-theme :is(.orbital-scene__controls, .optical-scene__controls) output { color: var(--orbital-orange-dark); font: 700 11px/1 Consolas, monospace; }
body.orbital-theme :is(.orbital-scene__controls, .optical-scene__controls) input[type="range"] { grid-column: 1 / -1; width: 100%; min-height: 35px; margin: 0; accent-color: var(--orbital-orange); cursor: ew-resize; }
body.orbital-theme :is(.orbital-scene__controls, .optical-scene__controls) button,
body.orbital-theme .orbital-scene__parts button { min-height: 38px; color: var(--orbital-ink); border: 1px solid var(--orbital-line); border-radius: 999px; background: var(--orbital-paper); font: 760 11px/1.1 Inter, Manrope, sans-serif; cursor: pointer; }
body.orbital-theme :is(.orbital-scene__controls, .optical-scene__controls) button:hover,
body.orbital-theme .orbital-scene__parts button:hover,
body.orbital-theme .orbital-scene__parts button[aria-pressed="true"] { color: #fffefa; border-color: var(--orbital-orange-dark); background: var(--orbital-orange); }
body.orbital-theme .orbital-scene__parts { display: flex; flex-wrap: wrap; gap: 7px; margin: 11px 0 0; }
body.orbital-theme .orbital-scene__detail,
body.orbital-theme .optical-scene__note { grid-column: 1 / -1; margin: 1px 0 0; color: var(--orbital-muted); font-size: 11px; line-height: 1.4; }
body.orbital-theme .optical-scene__controls .optical-scene__note { padding-top: 3px; }

/* Existing generated media gets a ceramic, titanium frame without replacing evidence. */
body.orbital-theme :is(.orbital-art, .optical-art, .optical-section-art, .orbital-card-art) { position: relative; overflow: hidden; margin: 0; border: 1px solid var(--orbital-titanium); border-radius: 18px; background: linear-gradient(145deg, #fffefa, #e2dfd6); box-shadow: 10px 13px 0 rgba(19,23,25,.1); }
body.orbital-theme :is(.orbital-art, .optical-art, .optical-section-art, .orbital-card-art)::after { content: ""; position: absolute; width: 19%; height: 2px; right: 6%; top: 9%; background: var(--orbital-orange); box-shadow: 0 0 11px rgba(255,91,18,.48); transform: rotate(-22deg); pointer-events: none; }
body.orbital-theme .optical-section-art { max-width: min(52vw, 710px); margin: -2px 0 36px auto; }
body.orbital-theme .optical-art--compact { width: min(100%, 430px); }
body.orbital-theme :is(.orbital-art, .optical-art, .optical-section-art, .orbital-card-art) img { display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: cover; filter: saturate(.7) contrast(1.03); transform: scale(1.002); transition: transform 300ms ease, filter 300ms ease; }
@media (hover: hover) { body.orbital-theme :is(.orbital-art, .optical-art, .optical-section-art, .orbital-card-art):hover img { filter: saturate(.88) contrast(1.05); transform: scale(1.025); } }
body.orbital-theme .optical-inner-shell { display: grid; grid-template-columns: minmax(0, 1fr) minmax(270px, .7fr); gap: clamp(24px, 4vw, 68px); align-items: center; }
body.orbital-theme .optical-inner-shell > .optical-art { order: 2; align-self: stretch; width: 100%; }
body.orbital-theme .optical-inner-shell > .hero-content { position: relative; z-index: 1; }
body.orbital-theme .hero--tool-detail .optical-art { margin: 0; }

/* Cards, catalogues and content surfaces */
body.orbital-theme :is(.card, .catalog-card, .feature-band article, .summary-card, .contact-card, .metric-grid strong) { color: var(--orbital-ink); border: 1px solid var(--orbital-line); border-radius: 16px; background: var(--orbital-ceramic); box-shadow: none; }
body.orbital-theme :is(.card, .catalog-card, .feature-band article) { position: relative; overflow: hidden; }
body.orbital-theme :is(.card, .catalog-card, .feature-band article)::before { content: ""; position: absolute; left: 0; top: 0; width: 34px; height: 3px; background: var(--orbital-orange); }
body.orbital-theme :is(.card, .catalog-card, .feature-band article):hover { border-color: var(--orbital-titanium); box-shadow: 6px 7px 0 rgba(19,23,25,.09); transform: translate(-1px, -1px); }
body.orbital-theme :is(.card h3, .catalog-card h3, .contact-card h2) { color: var(--orbital-ink); }
body.orbital-theme :is(.card-icon, .card-number) { color: var(--orbital-orange-dark); background: var(--orbital-orange-pale); }
body.orbital-theme :is(.tag, .tool-badges span, .proofline span) { color: var(--orbital-orange-dark); border-color: #f3b28e; border-radius: 999px; background: #fff4ee; }
body.orbital-theme .card-media,
body.orbital-theme .card img { border-radius: 0; }
body.orbital-theme .card-media { border-bottom: 1px solid var(--orbital-line); background: var(--orbital-paper-deep); }
body.orbital-theme .card-media img { filter: saturate(.78); }
body.orbital-theme .visual-mark { width: 52px; height: 38px; flex: 0 0 auto; margin: 0 0 14px; stroke: #656e69; }
body.orbital-theme .visual-mark .vm-bg { fill: #f5f3ee; stroke: #c9c8c1; }
body.orbital-theme .visual-mark .vm-accent { stroke: #ac3505; }
body.orbital-theme .cards-on-dark .card { color: #fffefa; border-color: var(--orbital-dark-line); background: var(--orbital-ink-soft); }
body.orbital-theme .cards-on-dark .card :is(h3, p) { color: inherit; }
body.orbital-theme .cards-on-dark .card-icon,
body.orbital-theme .cards-on-dark .card-number { color: #fffefa; background: var(--orbital-orange); }

body.orbital-theme .home-proof__rows { border-top-color: var(--orbital-line); }
body.orbital-theme .home-proof__rows article { border-color: var(--orbital-line); background: transparent; }
body.orbital-theme .home-proof__rows article::before { background: var(--orbital-orange-pale); }
body.orbital-theme .home-proof__rows article > span,
body.orbital-theme .direction-grid article > span { color: var(--orbital-orange-dark); }
body.orbital-theme .home-proof__rows article :is(h3, p) { color: var(--orbital-ink); }
body.orbital-theme .home-proof__rows article > div p { color: var(--orbital-muted); }
body.orbital-theme .home-proof__media { border-color: var(--orbital-titanium); border-radius: 16px; }
body.orbital-theme .direction-grid,
body.orbital-theme .method-steps,
body.orbital-theme .tool-console-grid { gap: 1px; border-color: var(--orbital-line); background: var(--orbital-line); }
body.orbital-theme :is(.direction-grid article, .method-steps li, .tool-console-grid article) { color: var(--orbital-ink); border: 0 !important; border-radius: 0; background: var(--orbital-ceramic); }
body.orbital-theme :is(.direction-grid article:nth-child(2n), .method-steps li:nth-child(2n), .tool-console-grid article:nth-child(3n + 1)) { background: #efede6; }
body.orbital-theme :is(.direction-grid article, .tool-console-grid article)::after { background: var(--orbital-orange); }
body.orbital-theme :is(.direction-grid h3, .tool-console-grid h3, .method-steps h3) { color: var(--orbital-ink); }
body.orbital-theme .method-steps span,
body.orbital-theme .tool-console-grid article > div span { color: var(--orbital-orange-dark); }
body.orbital-theme .tool-console-grid article > div { border-color: var(--orbital-line); }
body.orbital-theme .tool-console-grid em { color: var(--orbital-muted); }

body.orbital-theme .diagnostic-matrix-wrap { border-color: var(--orbital-titanium); border-radius: 16px; background: var(--orbital-ceramic); }
body.orbital-theme .diagnostic-matrix th,
body.orbital-theme .diagnostic-matrix td { color: var(--orbital-ink); border-color: var(--orbital-line); }
body.orbital-theme .diagnostic-matrix th { color: #fffefa; background: var(--orbital-ink); }
body.orbital-theme .diagnostic-matrix td:first-child { color: var(--orbital-ink); font-weight: 720; }
body.orbital-theme .method-links { border-color: var(--orbital-line); }
body.orbital-theme .method-links a { border-color: var(--orbital-line); }

body.orbital-theme .pricing-grid { gap: 1px; background: var(--orbital-line); }
body.orbital-theme .price-card { color: var(--orbital-ink); border: 0; border-radius: 0; background: var(--orbital-ceramic); }
body.orbital-theme .price-card:nth-child(2) { background: #ece9e1; }
body.orbital-theme .price-card--recommended { box-shadow: inset 0 4px var(--orbital-orange); }
body.orbital-theme .price-value { color: var(--orbital-orange-dark); font-size: 37px; }
body.orbital-theme .founder-trust { gap: 1px; background: var(--orbital-line); }
body.orbital-theme :is(.founder-trust__identity, .founder-trust__artifacts) { color: var(--orbital-ink); background: var(--orbital-ceramic); }
body.orbital-theme .founder-trust__artifacts { border-color: transparent; }
body.orbital-theme .founder-trust__artifacts li { border-color: var(--orbital-line); }

/* Forms, tools and tables */
body.orbital-theme :is(.lead-form, .tool-form) { color: var(--orbital-ink); border-color: var(--orbital-titanium); border-radius: 18px; background: var(--orbital-ceramic); box-shadow: 9px 10px 0 rgba(19,23,25,.08); }
body.orbital-theme :is(.lead-form, .tool-form) label { color: var(--orbital-ink); }
body.orbital-theme :is(.lead-form, .tool-form) :is(input, select, textarea) { color: var(--orbital-ink); border-color: var(--orbital-titanium); border-radius: 10px; background: #fffefa; }
body.orbital-theme :is(.lead-form, .tool-form) :is(input, select, textarea)::placeholder { color: #798180; }
body.orbital-theme :is(.lead-form, .tool-form) :is(input, select, textarea):focus { border-color: var(--orbital-orange); box-shadow: 0 0 0 3px rgba(255,91,18,.16); }
body.orbital-theme .form-status.is-success { color: #125c3a; border-color: #70b18d; background: #e1f4e7; }
body.orbital-theme .form-status.is-error { color: #8c2d18; border-color: #e49a82; background: #ffebe2; }
body.orbital-theme .tool-result,
body.orbital-theme .tool-empty-state { color: var(--orbital-ink); border-color: var(--orbital-titanium); background: #fffefa; }
body.orbital-theme .tool-result :is(h2, h3, strong),
body.orbital-theme .tool-empty-state :is(h2, h3, strong) { color: var(--orbital-ink); }
body.orbital-theme .tool-controls { color: var(--orbital-ink); border-color: var(--orbital-line); background: var(--orbital-paper-deep); }
body.orbital-theme .tool-controls :is(input, select) { color: var(--orbital-ink); border-color: var(--orbital-titanium); background: #fffefa; }
body.orbital-theme .tool-controls .button.is-active { color: #fffefa; border-color: var(--orbital-orange-dark); background: var(--orbital-orange); }
body.orbital-theme .table-wrap,
body.orbital-theme .live-table-wrap { border-color: var(--orbital-titanium); border-radius: 14px; background: #fffefa; }
body.orbital-theme :is(.table-wrap, .live-table-wrap) table { color: var(--orbital-ink); }
body.orbital-theme :is(.table-wrap, .live-table-wrap) th { color: #fffefa; background: var(--orbital-ink); }
body.orbital-theme :is(.table-wrap, .live-table-wrap) :is(th, td) { border-color: var(--orbital-line); }
body.orbital-theme :is(.table-wrap, .live-table-wrap) tr:nth-child(even) td { background: #f1efe9; }

/* Search, articles, FAQ and assistant surfaces */
body.orbital-theme :is(.article, .article-content) { color: var(--orbital-ink); }
body.orbital-theme :is(.article, .article-content) :is(h2, h3, h4) { color: var(--orbital-ink); }
body.orbital-theme :is(.article, .article-content) :is(p, li) { color: #485150; }
body.orbital-theme :is(.article, .article-content) blockquote { color: var(--orbital-ink); border-color: var(--orbital-orange); background: #fff1e9; }
body.orbital-theme .faq details { color: var(--orbital-ink); border-color: var(--orbital-line); background: var(--orbital-ceramic); }
body.orbital-theme .faq summary { color: var(--orbital-ink); }
body.orbital-theme .faq details[open] { border-left: 4px solid var(--orbital-orange); }
body.orbital-theme .search-dialog,
body.orbital-theme .palette-dialog { color: var(--orbital-ink); border-color: var(--orbital-titanium); background: var(--orbital-ceramic); }
body.orbital-theme :is(.search-dialog, .palette-dialog)::backdrop { background: rgba(19,23,25,.67); }
body.orbital-theme .rc-assistant__body,
body.orbital-theme .rc-assistant__panel { color: var(--orbital-ink); border-color: var(--orbital-titanium); background: var(--orbital-ceramic); }
body.orbital-theme .rc-assistant__trigger { color: #fffefa; border-color: var(--orbital-orange-dark); background: var(--orbital-orange); box-shadow: 4px 5px 0 rgba(19,23,25,.18); }

/* Case-study CSS is a standalone older layer: bring it into the material system. */
body.orbital-theme .case-story-nav { border-color: var(--orbital-line); background: rgba(245,243,238,.94); }
body.orbital-theme .case-story-nav a { color: var(--orbital-muted); }
body.orbital-theme .case-story-nav a:hover { color: var(--orbital-orange-dark); }
body.orbital-theme :is(.case-editorial, .case-portfolio) { color: var(--orbital-ink); background: var(--orbital-paper); }
body.orbital-theme .case-hero,
body.orbital-theme .case-index-hero { color: #fffefa; background: var(--orbital-ink); }
body.orbital-theme :is(.case-hero, .case-index-hero) :is(h1, h2, strong) { color: #fffefa; }
body.orbital-theme .case-hero h1 em,
body.orbital-theme .case-index-hero h1 em { color: #ff9e70; }
body.orbital-theme .case-card { background: var(--orbital-ceramic); }
body.orbital-theme .case-card > a { color: var(--orbital-ink); }
body.orbital-theme .case-card__body { border-color: var(--orbital-line); }
body.orbital-theme .case-card__body > p,
body.orbital-theme .case-card__body > p i,
body.orbital-theme .case-card__body b { color: var(--orbital-orange-dark); }
body.orbital-theme .case-budget-band { color: var(--orbital-ink); border-top-color: var(--orbital-orange); border-bottom-color: var(--orbital-line); background: #fff0e8; box-shadow: inset 0 0 0 1px #fff9f5; }
body.orbital-theme :is(.case-budget-band__label, .case-growth__period) { color: var(--orbital-orange-dark); }
body.orbital-theme .case-budget-band__prices { background: #e9a982; }
body.orbital-theme .case-budget-band__prices > div { background: #fff9f5; }
body.orbital-theme .case-budget-band__prices :is(span, small) { color: var(--orbital-muted); }
body.orbital-theme .case-budget-band__prices strong { color: var(--orbital-ink); }
body.orbital-theme .case-structure-table-wrap { border-color: var(--orbital-titanium); background: #fffefa; }
body.orbital-theme .case-structure-table { color: var(--orbital-ink); }
body.orbital-theme .case-structure-table :is(th, td) { border-color: var(--orbital-line); }
body.orbital-theme .case-structure-table thead { color: #fffefa; background: var(--orbital-ink); }
body.orbital-theme .case-structure-table tbody td:last-child,
body.orbital-theme .case-growth__metrics dd b,
body.orbital-theme .case-growth__change { color: var(--orbital-orange-dark); }
body.orbital-theme .case-growth__metrics { background: var(--orbital-line); }
body.orbital-theme .case-growth__metrics > div { background: #fffefa; }
body.orbital-theme .case-growth__metrics :is(dt, dd, dd strong) { color: var(--orbital-ink); }
body.orbital-theme .case-admin-features { background: var(--orbital-line); }
body.orbital-theme .case-admin-features li { background: var(--orbital-ceramic); }
body.orbital-theme .case-admin-features :is(li > span, h3) { color: var(--orbital-ink); }
body.orbital-theme .case-admin-features li > span { color: var(--orbital-orange-dark); }

/* Footer and close-out CTA. */
body.orbital-theme .site-footer { color: #fffefa; border-top: 1px solid #394244; background: var(--orbital-ink); }
body.orbital-theme .site-footer::before { background: linear-gradient(90deg, transparent, var(--orbital-orange), transparent); }
body.orbital-theme .site-footer :is(p, a, strong, span) { color: inherit; }
body.orbital-theme .footer-cta { border-color: rgba(255,255,250,.28); border-radius: 20px; background: var(--orbital-ink-soft); }
body.orbital-theme .footer-kicker,
body.orbital-theme .footer-heading { color: #ffac83 !important; }
body.orbital-theme .footer-cta__copy strong { color: #fffefa !important; font-weight: 820; }
body.orbital-theme .footer-text-link { color: #ffac83 !important; }
body.orbital-theme .footer-signals span { color: #fffefa !important; border-color: rgba(255,255,250,.32); background: rgba(255,255,250,.06); }
body.orbital-theme .footer-contact__brief { color: #fffefa !important; border-color: var(--orbital-orange); background: var(--orbital-orange); }
body.orbital-theme .footer-status { background: var(--orbital-orange); box-shadow: 0 0 0 4px rgba(255,91,18,.14); }
body.orbital-theme :is(.footer-main, .footer-bottom) { border-color: rgba(255,255,250,.18); }

/* Practical responsive rules: true one-column content and large touch areas. */
@media (max-width: 980px) {
  body.orbital-theme .main-nav { background: var(--orbital-ceramic); border-color: var(--orbital-line); box-shadow: 0 16px 30px rgba(19,23,25,.13); }
  body.orbital-theme .main-nav a { min-height: 44px; }
  body.orbital-theme :is(.orbital-hero, .optical-hero) { grid-template-columns: minmax(0, 1fr); min-height: 0; padding-top: 58px; }
  body.orbital-theme :is(.orbital-scene, .optical-scene) { width: min(100%, 690px); justify-self: start; }
  body.orbital-theme :is(.orbital-hero__intent, .optical-hero__intent, .orbital-hero__scroll, .optical-hero__scroll) { position: static; }
  body.orbital-theme :is(.orbital-hero__intent, .optical-hero__intent) { grid-column: 1; margin-top: -14px; }
  body.orbital-theme :is(.orbital-hero__scroll, .optical-hero__scroll) { display: none; }
  body.orbital-theme .optical-inner-shell { grid-template-columns: 1fr; }
  body.orbital-theme .optical-inner-shell > .optical-art { order: 0; max-width: 680px; }
  body.orbital-theme .optical-section-art { max-width: min(100%, 680px); margin-left: 0; }
}

@media (max-width: 820px) {
  body.orbital-theme .section-head h2,
  body.orbital-theme .band h2 { font-size: clamp(31px, 8vw, 51px); }
  body.orbital-theme :is(.orbital-scene__controls, .optical-scene__controls) { grid-template-columns: 1fr 1fr; }
  body.orbital-theme :is(.orbital-scene__controls, .optical-scene__controls) :is(label, button) { min-height: 44px; }
  body.orbital-theme .case-card__body { border-color: var(--orbital-line); }
}

@media (max-width: 480px) {
  body.orbital-theme .site-header { min-height: 66px; }
  body.orbital-theme :is(.orbital-hero, .optical-hero) { gap: 28px; padding-top: 38px; padding-bottom: 36px; }
  body.orbital-theme :is(.orbital-hero, .optical-hero) h1 { max-width: 11ch; font-size: clamp(47px, 14.5vw, 63px); line-height: .87; }
  body.orbital-theme :is(.orbital-hero__actions, .optical-hero__actions) { align-items: stretch; flex-direction: column; }
  body.orbital-theme :is(.orbital-hero__actions, .optical-hero__actions) .button { justify-content: center; width: 100%; }
  body.orbital-theme .orbital-scene__viewport,
  body.orbital-theme .optical-scene__stage { border-radius: 14px; box-shadow: 7px 9px 0 rgba(19,23,25,.12), inset 0 0 0 5px rgba(255,255,250,.34); }
  body.orbital-theme :is(.orbital-scene__controls, .optical-scene__controls) { grid-template-columns: 1fr; padding: 10px; border-radius: 13px; }
  body.orbital-theme :is(.orbital-hero__intent, .optical-hero__intent) { gap: 6px; }
  body.orbital-theme :is(.orbital-hero__intent, .optical-hero__intent) a { font-size: 11px; }
  body.orbital-theme .optical-section-art { margin-bottom: 24px; }
  body.orbital-theme .case-structure-table tbody tr { border-color: var(--orbital-titanium); background: #fffefa; }
  body.orbital-theme .case-structure-table :is(th, td)::before { color: var(--orbital-orange-dark); }
}

@media (prefers-reduced-motion: reduce) {
  body.orbital-theme *,
  body.orbital-theme *::before,
  body.orbital-theme *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

@media print {
  body.orbital-theme { color: #111; background: #fff; }
  body.orbital-theme :is(.site-header, .site-footer, .orbital-scene, .optical-scene, .optical-hero__intent, .orbital-hero__intent) { display: none; }
  body.orbital-theme :is(.band, .hero, .case-hero, .case-index-hero) { color: #111; background: #fff; border-color: #aaa; }
  body.orbital-theme :is(.hero, .case-hero, .case-index-hero) :is(h1, h2, p) { color: #111; }
}

/* Scene layout: fixed controls and readable copy around the independent 3D nodes. */
body.orbital-theme { --teal: #a93a08; --green: #a93a08; --amber: #df4b09; --coal: #131719; }
body.orbital-theme :is(.button--primary, .nav-cta) { color: #171715; background: #ff6b27; box-shadow: none; }
body.orbital-theme .button--secondary { background: transparent; box-shadow: none; }
body.orbital-theme .orbital-hero { grid-template-columns: minmax(0, .88fr) minmax(0, 1.12fr); gap: 16px; min-height: 750px; padding-top: 30px; padding-bottom: 88px; }
body.orbital-theme .orbital-hero h1 { font-size: clamp(65px, 7.1vw, 112px); letter-spacing: -.07em; line-height: .96; }
body.orbital-theme .orbital-hero__description { max-width: 39ch; margin: 20px 0; font-size: 16px !important; }
body.orbital-theme .orbital-hero__footnote { margin-top: 24px; font: 10px/1.5 Consolas, monospace !important; text-transform: uppercase; letter-spacing: .1em; }
body.orbital-theme .orbital-status-dot { display: inline-block; width: 6px; height: 6px; margin-right: 8px; border-radius: 50%; background: #cd420a; }
body.orbital-theme .orbital-scene { margin: 0; min-width: 0; }
body.orbital-theme [hidden]:not([hidden="until-found"]) { display: none !important; }
body.orbital-theme .orbital-scene__viewport { border: 0; border-radius: 0; box-shadow: none; aspect-ratio: 1.38; background: radial-gradient(ellipse at 50% 45%, #fffefa 0%, transparent 70%); }
body.orbital-theme .orbital-hero .orbital-scene__viewport { aspect-ratio: 1.6; }
body.orbital-theme .orbital-scene__viewport::before { top: 3%; left: 18%; width: 67%; opacity: .24; box-shadow: 0 0 0 40px #fffefa70, 0 0 0 41px #13171930; }
body.orbital-theme .orbital-scene__viewport::after { height: 1px; opacity: .25; box-shadow: none; }
body.orbital-theme .orbital-scene__fallback { object-fit: contain; }
body.orbital-theme .orbital-scene__index { position: absolute; z-index: 3; left: 14px; top: 16px; font: 9px/1.65 Consolas, monospace; letter-spacing: .1em; color: #5c6665; pointer-events: none; }
body.orbital-theme .orbital-scene__hint { position: absolute; z-index: 3; bottom: 14px; right: 14px; font-size: 10px; color: #5c6665; pointer-events: none; }
body.orbital-theme .orbital-scene__controls { grid-template-columns: 1.1fr 1fr .9fr; align-items: center; background: transparent; border: 0; border-top: 1px solid var(--orbital-line); border-bottom: 1px solid var(--orbital-line); border-radius: 0; padding: 12px 0; box-shadow: none; }
body.orbital-theme .orbital-scene__states,
body.orbital-theme .orbital-scene__utilities { display: flex; gap: 4px; }
body.orbital-theme .orbital-scene__controls button { padding: 0 10px; min-height: 44px; font-size: 11px; background: transparent; }
body.orbital-theme .orbital-scene__controls button[aria-pressed="true"] { color: #fffefa; background: var(--orbital-ink); }
body.orbital-theme .orbital-scene__parts { gap: 5px; }
body.orbital-theme .orbital-scene__parts button { min-height: 44px; padding: 8px 11px; font-size: 11px; border: 0; background: transparent; }
body.orbital-theme .orbital-scene__parts button span { margin-right: 5px; color: #a43b0e; font-family: Consolas, monospace; }
body.orbital-theme .orbital-scene__parts button[aria-pressed="true"] { background: #171c1c; color: #fffefa; }
body.orbital-theme .orbital-scene__parts button[aria-pressed="true"] span { color: #ffab7d; }
body.orbital-theme .orbital-scene__detail { min-height: 34px; margin-top: 10px; color: #5c6665; font-size: 11px; }
body.orbital-theme .orbital-scene button:disabled { cursor: default; opacity: .62; }
body.orbital-theme .orbital-scene[data-renderer="fallback"] .orbital-scene__hint { display: none; }
body.orbital-theme .orbital-lab { background: #eae7df; }
body.orbital-theme .orbital-lab__grid { display: grid; grid-template-columns: 1.1fr 1fr; gap: 70px; align-items: center; }
body.orbital-theme .orbital-lab__explanation article { display: grid; grid-template-columns: 34px 1fr; gap: 15px; border-top: 1px solid var(--orbital-line); padding: 21px 0; }
body.orbital-theme .orbital-lab__number { font: 11px/1.4 Consolas, monospace; color: #a43b0e; }
body.orbital-theme .orbital-lab__explanation h3 { font-size: 23px; letter-spacing: -.04em; margin: 0 0 9px; }
body.orbital-theme .orbital-lab__explanation .eyebrow { font-size: 9px; margin: 0 0 10px; }
body.orbital-theme .orbital-lab__explanation p { margin: 0 0 8px; font-size: 14px; }
body.orbital-theme .orbital-lab__explanation small { color: #a43b0e; font: 10px/1.6 Consolas, monospace; }
body.orbital-theme .orbital-lab__note { margin-top: 16px !important; font-size: 11px !important; }
body.orbital-theme .optical-overview { display: grid; grid-template-columns: 1fr 1fr; gap: 70px; align-items: center; }
body.orbital-theme .optical-overview__copy > p { max-width: 55ch; }
body.orbital-theme .optical-overview__copy .orbital-art { max-width: 400px; margin-top: 26px; box-shadow: none; border: 0; }
body.orbital-theme .optical-inner-shell > .orbital-inner-hero { order: 2; }
body.orbital-theme .hero .orbital-scene { color: var(--orbital-ink); padding: 18px; background: var(--orbital-paper); border-radius: 10px; }
body.orbital-theme .hero .orbital-scene :is(p, span, figcaption) { color: #5c6665; }
body.orbital-theme .hero .orbital-scene__parts button { color: #131719; }
body.orbital-theme .hero .orbital-scene__parts button[aria-pressed="true"] { color: #fffefa; }
body.orbital-theme .hero:not(.orbital-hero) h1 { max-width: 18ch; font-size: clamp(38px, 4.5vw, 76px); line-height: 1.02; letter-spacing: -.055em; overflow-wrap: anywhere; }
body.orbital-theme .hero-content { min-width: 0; }
body.orbital-theme .hero .hero-content > p { color: #d7dcda; }
body.orbital-theme .orbital-art { box-shadow: none; border-radius: 6px; border-color: #d1d0c9; }
body.orbital-theme .orbital-art img { object-fit: contain; filter: none; }
body.orbital-theme .orbital-art::after { display: none; }
body.orbital-theme .orbital-art:hover img { transform: none; filter: none; }
body.orbital-theme .band--lead :is(p, h2, h3, .eyebrow) { color: #fffefa; }
body.orbital-theme .band--dark .method-steps :is(h3, p) { color: #131719; }
body.orbital-theme .rc-assistant__toggle { color: #171715; background: #ff793e; border-color: #bc3c06; }
body.orbital-theme .rc-assistant:not(.is-open) .rc-assistant__toggle { width: 52px; height: 52px; min-width: 0; padding: 12px; border-radius: 50%; box-shadow: 0 5px 18px #13171920; }
body.orbital-theme .rc-assistant:not(.is-open) :is(.rc-assistant__toggle-text, .rc-assistant__pulse) { display: none; }
body.orbital-theme .rc-assistant__head strong { color: #131719; }
body.orbital-theme .rc-assistant__close { color: #131719; background: #eeeae1; border-color: #b8bdb6; }
body.orbital-theme .decision-surface { color: #131719; background: #fffefa; border: 1px solid #c9c8c1; box-shadow: 0 16px 50px #25251d09; border-radius: 10px; }
body.orbital-theme .decision-surface :is(strong, label, th, td) { color: #131719; }
body.orbital-theme .decision-surface :is(span, p) { color: #56605e; }
body.orbital-theme :is(.decision-surface__head, .decision-flow li, .decision-check, .decision-table td, .decision-table th) { border-color: #dcdad2; }
body.orbital-theme .decision-flow li { background: #f5f3ee; }
body.orbital-theme .decision-flow li span { color: #a93a08; }
body.orbital-theme .decision-check input { color: #131719; background: #f5f3ee; border-color: #b6bbb6; }
body.orbital-theme .decision-check button { color: #131719; background: #ff793e; }
body.orbital-theme .decision-surface .url-status { background: #ece9e0; color: #383e3b; border-color: #c9c8c1; }
body.orbital-theme .decision-table-wrap { background: transparent; }
body.orbital-theme .decision-surface .decision-table th { background: #efede6; }
body.orbital-theme .search-ops-deliverables span { color: #53615c; border-color: #b6bbb6; }
body.orbital-theme .decision-surface .system-live { color: #56605e !important; }
body.orbital-theme .home-tools .section-head p:not(.eyebrow) { color: #53615c; }
body.orbital-theme .site-footer :is(.button--primary, .footer-contact__brief) { color: #171715 !important; }
body.orbital-theme .orbital-hero h1 span { color: #d9430a; }
body.orbital-theme :is(.hero, .band--dark, .band--lead, .site-footer) .button--secondary { color: #fffefa; border-color: #d2d1c8; background: transparent; }
body.orbital-theme :is(.hero, .band--dark, .band--lead, .site-footer) .button--secondary:hover { background: #fffefa; color: #131719; }
body.orbital-theme :is(.case-hero, .case-index-hero) :is(p, li) { color: #c7cfcc; }
body.orbital-theme :is(.case-hero, .case-index-hero) .case-hero__eyebrow { color: #ffae84; }
body.orbital-theme .case-hero .case-hero__story-link { color: #131719; background: #ff793e; }
body.orbital-theme .case-structure-table th { color: #fffefa; background: #131719; }
body.orbital-theme .case-roadmap :is(h3, p) { color: #e4e8e2; }
body.orbital-theme .article.band > :is(p, h2, ul, ol) { max-width: 850px; margin-left: auto; margin-right: auto; }
body.orbital-theme .article.band > p { font-size: 18px; line-height: 1.75; }
body.orbital-theme .article.band > h2 { font-size: clamp(32px, 4vw, 52px); line-height: 1.06; margin-top: 48px; }
body.orbital-theme .catalog-controls { background: #f5f3ee; border-color: #c9c8c1; }
@media (min-width: 1700px) { body.orbital-theme .orbital-hero { min-height: 850px; } }
@media (max-width: 980px) {
  body.orbital-theme .orbital-hero { grid-template-columns: 1fr; min-height: 0; padding: 52px var(--page-pad) 35px; }
  body.orbital-theme .orbital-hero__copy { max-width: none; }
  body.orbital-theme .orbital-hero h1 { font-size: clamp(55px, 10vw, 85px); }
  body.orbital-theme .orbital-scene { justify-self: center; }
  body.orbital-theme :is(.orbital-lab__grid, .optical-overview) { grid-template-columns: 1fr; gap: 32px; }
  body.orbital-theme .optical-inner-shell > .orbital-inner-hero { order: 2; }
  body.orbital-theme .orbital-hero__intent { margin-top: 22px; }
}
@media (max-width: 480px) {
  body.orbital-theme .orbital-hero { padding-top: 35px; gap: 22px; }
  body.orbital-theme .orbital-hero h1 { font-size: clamp(48px, 14.6vw, 66px); }
  body.orbital-theme .orbital-scene__viewport { aspect-ratio: 1.15; }
  body.orbital-theme .orbital-hero .orbital-scene__viewport { aspect-ratio: 1.15; }
  body.orbital-theme .orbital-scene__controls { grid-template-columns: 1fr 1fr; padding: 10px 0; }
  body.orbital-theme .orbital-scene__controls label { grid-column: 1 / -1; grid-row: 2; }
  body.orbital-theme .orbital-scene__controls label span { align-self: end; }
  body.orbital-theme .orbital-scene__controls button { padding: 0 8px; flex: 1; }
  body.orbital-theme .orbital-scene__parts button { min-width: 42%; text-align: left; }
  body.orbital-theme .hero .orbital-scene { padding: 12px; }
  body.orbital-theme .orbital-scene__index { left: 5px; }
}
