:root {
  --sm-sans: "Microsoft YaHei", "PingFang SC", Arial, sans-serif;
  --sm-display: var(--sm-sans);
  --sm-mono: var(--sm-sans);
  --paper: #fff;
  --blue: #265399;
}
body { font: 400 16px/1.65 var(--sm-sans); letter-spacing: normal; }
body #header, body:has(.v-hero) #header, body:has(.v-hero) .v-header .main-nav {
  color: #20252a; background: white; border-color: #e1e4e7; backdrop-filter: none;
}
.v-header { height: 76px; }
#header .v-brand .brand-ai, .v-footer-top .brand-ai { display: none; }
.v-brand .brand-symbol, .v-footer-top .v-brand .brand-symbol { width: 174px; height: 33px; }
body:has(.v-hero) #header .brand-symbol>img, .v-footer-top .brand-symbol>img { filter: none; }
.v-footer-top .brand-symbol { background: #fff; }
.v-header .main-nav a, .lang-btn, .v-header .v-contact-link { font-size: 15px; font-weight: 500; color: #222; }
body:has(.v-hero) #header .v-contact-link:hover { color: #265399; }
.v-hero { background: #111e30; }
.v-hero::before, .v-page-intro::after, .page-hero::after, .v-cta::before, .v-cta::after { display: none; }
.v-hero-top, .v-hero-bottom { display: none; }
.v-hero-grid { min-height: clamp(420px,35vw,600px); }
.v-page-intro h1, .v-article-hero h1, .page-hero h1 {
  font-size: clamp(34px,2.8vw,54px); line-height: 1.17; letter-spacing: -.012em; font-weight: 600;
}
.v-section h2, .section h2, .v-cta h2, .cta h2 {
  font-size: clamp(26px,1.875vw,36px); letter-spacing: normal; line-height: 1.32; font-weight: 600;
}
.v-hero-desc,.v-page-intro p,.v-article-hero p,.v-lead,.v-prose p {
  font-size: clamp(16px,1.04vw,20px); line-height: 1.75; letter-spacing: normal;
}
.v-hero-sub { font-size: clamp(18px,1.25vw,24px); line-height: 1.5; }
.v-section,.section { padding-block: clamp(44px,5vw,88px); }
.v-cta,.cta { background: #142338; }
.v-hero-copy { animation: corporate-enter .5s ease-out both; }
@keyframes corporate-enter { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
@media (max-width: 699px) {
  .v-header { height: 60px; }
  .v-brand .brand-symbol { width: 135px; height: 26px; }
  .v-hero-grid { min-height: 0; }
  .v-hero-copy { padding: 36px 0 16px; }
  .v-section h2,.section h2 { font-size: 24px; }
}
@media (prefers-reduced-motion: reduce) {
  .v-hero-copy { animation: none; }
  html { scroll-behavior: auto; }
}
.v-header .main-nav a { transition: color .3s ease; }
.v-header .main-nav a::after { transition: opacity .3s ease; }
@media (min-width: 901px) {
  .v-header .main-nav a { padding-block: 20px; }
}

.hebbian-stage .hebbian-top {
  font: 400 13px/1.45 "Helvetica Neue", Arial, sans-serif;
  letter-spacing: normal;
  text-transform: none;
  color: #b3bfce;
}
.v-hero-copy .v-button {
  font: 700 15px/1.5 "Hiragino Sans GB", "Microsoft YaHei", "PingFang SC", Arial, sans-serif;
  letter-spacing: normal;
}

/* Shared corner geometry for the public site and its Studio preview. */
:root {
  --sm-corner-small: 8px;
  --sm-corner-control: 14px;
  --sm-corner-panel: 22px;
}
button, input:not([type="checkbox"]):not([type="radio"]), select, textarea,
.v-hero .v-button, .v-button, .button, .v-filters button, .filters button,
.segmented, .segmented button, .hebbian-controls button, .v-search,
.field input, .field select, .field textarea, .skip-link, #toast {
  border-radius: var(--sm-corner-control);
}
.v-contact-link > span, .tag, .v-stage, .v-label > span, .v-art > span,
.cms-empty-image, .form-result pre {
  border-radius: var(--sm-corner-small);
}
.product-card, .team-card, .news-card, .v-blog-card, .chart-panel,
.tech-visual, .sim-frame, .people-feature, .people-quote, .people-colleague,
.v-equation, .v-map-core, .v-map-end, .v-data-chart, .v-targets,
.v-method-grid article, .v-proof-grid, .v-proof-grid > a, .v-solutions,
.v-solutions > a, .contact-info, .mini-result, .form-result, .detail-aside,
.feature-item, .process > div, .audience-item, .v-next-link {
  border-radius: var(--sm-corner-panel);
}
.news-graphic, .v-blog-art, .v-art, .v-article-visual, .team-initial,
.model-art, .chip-art, .hero-art, .cms-gallery-image,
.cms-custom-section img, .v-prose img, .article img, .sim-frame > canvas {
  border-radius: var(--sm-corner-panel);
  overflow: hidden;
}
.chip-core, .layer { border-radius: var(--sm-corner-small); }
.bar-track, .bar, .v-data-track, .v-data-track > span { border-radius: 999px; }
@media (max-width: 900px) {
  .v-header .main-nav { border-radius: 0 0 var(--sm-corner-panel) var(--sm-corner-panel); }
}
@media (max-width: 699px) {
  :root { --sm-corner-panel: 18px; --sm-corner-control: 12px; }
}

/* Homepage palette. The schematic and editorial illustrations share the accent. */
body:has(.v-hero) {
  --paper: #fafafa;
  --ink: #1a1d21;
  --muted: #575e64;
  --line: #d3d6d9;
  --light: #eff0f1;
  --blue: #98470f;
  --orange: var(--blue);
  --signal: #ec8830;
  --cyan: #f09055;
  --graphite: #15181c;
  --porcelain: #fafafa;
  color: var(--ink);
  background: var(--porcelain);
}
body:has(.v-hero) #header { background: #fff; border-color: var(--line); }
.v-hero, .v-density, .v-cta { background: var(--graphite); color: var(--porcelain); }
.v-hero h1, .v-hero h1 em { font-family: "SM Display", Arial, sans-serif; }
.v-hero h1 { color: var(--porcelain); }
.v-hero h1 em { color: var(--signal); }
.v-hero-sub, .v-density h2 { color: var(--porcelain); }
.v-hero-desc, .v-density p, .v-cta p { color: #c5c9cd; }
.hebbian-stage::before { background: radial-gradient(ellipse, #a9b5c012, transparent 67%); }
.hebbian-stage .hebbian-top, .hebbian-words, .hebbian-phase { color: #c1c6ca; }
.hebbian-controls button { background: #262a2f; color: #e9ebed; border-color: #5e656d; }
.hebbian-controls button:hover { background: #353a40; border-color: #a7adb3; }
.live-dot { box-shadow: 0 0 0 4px #ec88301a; }
body:has(.v-hero) #header .v-contact-link > span { background: var(--blue); border-color: var(--blue); }
body:has(.v-hero) #header .v-contact-link:hover { color: var(--blue); }
body:has(.v-hero) #header .v-contact-link:hover > span { background: #743409; }
.v-hero .v-button, .v-cta .v-button.light { background: #ec8830; color: #21160e; border-color: #ec8830; box-shadow: none; }
.v-hero .v-button:hover, .v-cta .v-button.light:hover { background: #faa45d; color: #21160e; border-color: #faa45d; }
body:has(.v-hero) .v-section { background: var(--porcelain); }
body:has(.v-hero) :is(.v-efficiency,.v-blog-section) { background: #eff0f1; }
body:has(.v-hero) .v-density { background: var(--graphite); }
.v-manifesto .v-lead, .v-solutions h3, .v-proof-grid strong,
body:has(.v-hero) .v-textlink { color: var(--blue); }
.v-map-core { background: var(--blue); border-color: var(--blue); box-shadow: none; }
.v-map-core > span,.v-map-core > div,.v-map-core b { color: #fff6ed; }
.v-map-end, .v-stage { background: #e8eaec; border-color: #b9bec4; }
.v-map-end::after,.v-map-core::after,.v-map-core::before { background: #aab0b6; }
.v-map-end > span,.v-proof-grid > a > span,.v-proof-grid em,.v-solutions > a > span:first-child,
.v-news .news-card .meta,.v-blog-meta,.v-stage { color: #505b63; }
.v-solutions > a,.v-solutions > a + a,.v-proof-grid,.v-proof-grid > a + a,
.v-news .news-card,.v-blog-bottom,body:has(.v-hero) .v-textlink { border-color: #b9bfc4; }
.v-solutions > a:hover { background: #e8eaec; border-color: var(--blue); }
.v-proof-grid > a:hover strong,.v-blog-card h3 a:hover { color: #75350c; }
.v-density .v-label,.v-cta .v-label,.v-equation span:first-child,body:has(.v-hero) .v-density .v-textlink { color: var(--signal); }
.v-density .v-label > span,.v-equation { background: #252a2f; border-color: #606971; }
.v-density::after { background-image: radial-gradient(#a9b2bd38 .7px,transparent .8px); }
.v-equation::before,.v-equation::after,.v-equation div { background: var(--signal); }
body .v-art { background: #25282c; color: #e8a373; }
body .v-art > span { background: #25282c; color: #e0e3e5; }
body .v-art::before { border-color: #b4bec455; }
body .v-art-model { background: #e0e3e5; }
body .v-art-model > span { background: #e0e3e5; color: #41484f; }
body :is(.chip-grid,.matrix) i { border-color: #959ca2; }
body .matrix i { background: #eff1f2; }
body :is(.chip-grid,.matrix) i.on { background: #cb732f; border-color: #e29c6a; box-shadow: none; }
body:has(.v-hero) #footer { background: #101214; border-color: #373c41; }
body:has(.v-hero) .v-footer-top .v-label { color: var(--signal); }
body:has(.v-hero) .v-footer-base,.v-cta-bottom { border-color: #42494f; }

/* Orange marks actions and active data; titanium carries the supporting diagrams. */
body:has(.v-hero) .v-map-core { background: #292e33; border-color: #4d555d; }
body:has(.v-hero) .v-solutions h3 { color: var(--ink); }
body:has(.v-hero) .v-solutions a:hover h3 { color: var(--blue); }
body:has(.v-hero) :focus-visible { outline-color: #bd5c19; }
body:has(.v-hero) ::selection { color: #18191b; background: #f1bb92; }

/* Feature stories use original SparseMind media and a persistent topic switch. */
.v-hero[data-feature] { position: relative; isolation: isolate; overflow: hidden; padding: 0; background: #101316; }
.v-hero[data-feature] > .v-wrap { position: relative; z-index: 2; }
.v-hero .feature-artwork { position: absolute; inset: 0 0 0 auto; width: 76%; height: 100%; object-fit: cover; object-position: 55% 48%; z-index: 0; }
.v-hero[data-feature="overview"] .feature-artwork { filter: grayscale(1) sepia(.72) saturate(2.1); }
.v-hero[data-feature="hardware"] .feature-artwork { object-position: center; }
.v-hero[data-feature]::after {
  content: ''; position: absolute; z-index: 1; inset: 0; width: auto; height: auto; pointer-events: none;
  background: linear-gradient(90deg,#101316 6%,rgba(16,19,22,.98) 26%,rgba(16,19,22,.73) 40%,transparent 68%),
              linear-gradient(0deg,rgba(10,12,14,.9),transparent 25%);
}
.v-hero[data-feature] .v-hero-grid {
  min-height: clamp(495px,39vw,680px); display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr);
  align-items: center;
}
.v-hero[data-feature] [hidden] { display: none; }
.v-hero[data-feature] .v-hero-copy,.v-hero .feature-copy { grid-column: 1; grid-row: 1; padding: 42px 0; }
.v-hero .feature-copy h2 { font-size: clamp(36px,3.7vw,66px); line-height: 1.18; letter-spacing: -.025em; color: #fff; margin: 0 0 22px; }
.feature-copy p { max-width: 32em; margin: 0 0 28px; color: #d3d5d6; line-height: 1.7; font-size: 17px; }
.v-hero[data-feature] .hebbian-stage { grid-column: 2; grid-row: 1; height: clamp(360px,34vw,490px); }
.v-hero:not([data-feature="learning"]) .hebbian-stage { display: none; }
.feature-switch { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
.feature-switch button {
  text-align: start; padding: 15px 0 20px; font: 500 15px/1.4 var(--sm-sans); color: #d5d7d9;
  border: 0; border-radius: 0; border-top: 2px solid #65686b; background: transparent; cursor: pointer;
}
.feature-switch button:hover,.feature-switch button[aria-pressed="true"] { color: #fff; border-color: #ec8830; }
.solution-index .v-solutions { gap: 18px; border: 0; }
body:has(.v-hero) .solution-index .v-solutions > a {
  background: #fff; border: 1px solid #d6dade; padding: clamp(22px,2.2vw,36px); box-shadow: 0 3px 12px #181c2008;
  transition: border-color .2s, box-shadow .2s;
}
body:has(.v-hero) .solution-index .v-solutions > a:hover { border-color: #b35b20; box-shadow: 0 4px 16px #181c2012; }
.solution-index .v-solutions h3 { font-size: clamp(22px,2.1vw,33px); }
.solution-index .v-solutions > a > span:first-child { color: #934510; }
.v-news .news-card,.v-blog-grid .v-blog-card { background: #fff; }
body:has(.v-hero) :is(.v-blog-card,.v-news .news-card) {
  border: 1px solid #d8dadd; border-radius: var(--sm-corner-panel); padding: 16px;
}
body:has(.v-hero) .v-section-heading .v-label { display: none; }
body:has(.v-hero) .v-manifesto .v-label span,body:has(.v-hero) .v-density .v-label span { display: none; }
body:has(.v-hero) .v-efficiency-map { margin-block: 28px; }
body:has(.v-hero) .v-proof-grid strong { color: #90440e; }
@media (max-width: 699px) {
  .v-hero[data-feature] .v-hero-grid { grid-template-columns: 1fr; min-height: 492px; align-content: start; }
  .v-hero[data-feature] .v-hero-copy,.v-hero .feature-copy { padding: 32px 0 0; align-self: start; }
  .v-hero[data-feature] .feature-artwork { width: 100%; height: 54%; top: auto; object-position: 57% 53%; }
  .v-hero[data-feature]::after { background: linear-gradient(180deg,#101316 40%,rgba(16,19,22,.86) 57%,transparent 77%,rgba(16,19,22,.82) 98%); }
  .v-hero[data-feature="learning"] .v-hero-grid { align-content: start; }
  .v-hero[data-feature] .hebbian-stage { grid-column: 1; grid-row: 2; height: 250px; margin: 6px 0 0; }
  .v-hero .feature-copy h2 { font-size: 34px; }
  .feature-copy p { font-size: 15px; }
  .feature-switch { gap: 12px; }
  .feature-switch button { padding: 10px 0 15px; font-size: 13px; }
  .solution-index .v-solutions { grid-template-columns: 1fr; gap: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  .solution-index .v-solutions > a { transition: none; }
}

/* Continue the homepage identity when a visitor opens a topic or a case study. */
body:not(:has(.v-hero)) { --blue: #974711; --orange: #974711; --ink: #191d20; --paper: #fafafa; --line: #d3d7da; --light: #eff0f1; --signal: #ec8830; --graphite: #15181c; --porcelain: #fafafa; }
.v-page-intro,.page-hero,.v-article-hero { background: #f1f2f3; border-color: #d4d7da; }
.page-hero.dark,.v-cta,#footer { background: #15181c; }
.v-page-intro .v-label,.v-article-hero .v-blog-meta,.v-textlink,.text-link,.people-source { color: #92430f; border-color: #c8b4a6; }
.v-page-intro p,.page-hero .lead,.v-article-hero p { color: #535b61; }
.v-textlink:hover,.text-link:hover,.people-source:hover { color: #72330b; }
.v-data-chart,.v-targets,.chart-panel,.v-research-row:hover,.research-row:hover,.v-filters button:hover:not(.active) { background: #f0f1f2; border-color: #cbd0d4; }
.v-data-track,.bar-track,.v-article-charts { background: #d6dade; }
.v-data-track > span { background: #b85d1d; }
.v-data-row b,.v-targets strong,.v-research-row:hover h3,.v-research-row > span:first-child { color: #853e10; }
.v-prose strong,.detail-body strong,.article strong { color: #784016; background: #faf0e5; }
.v-button:hover,.button:hover,.v-filters button.active { color: white; border-color: #75360c; background: #75360c; }
body:not(:has(.v-hero)) .field :is(input,select,textarea) { background: #f2f3f4; border-color: #aaaeb0; }
.v-blog-section .v-section-heading { flex-wrap: wrap; gap: 18px; }
.v-blog-section .v-filters { flex: 0 0 100%; }
.v-blog-section .v-filters button:hover:not(.active) { background: #eef0f1; }
.v-blog-grid .v-blog-card[hidden] { display: none; }
.v-hero[data-feature="overview"] .feature-artwork { filter: grayscale(1) sepia(.52) saturate(1.65) brightness(.86); }
body:not(:has(.v-hero)) .v-footer-top .v-label,.v-cta .v-label { color: #eda469; }
body:not(:has(.v-hero)) .v-footer-base,.v-cta-bottom { border-color: #42494f; }
body:not(:has(.v-hero)) .product-card.dark,.tech-visual,.detail-aside.dark { background-color: #24282d; }
body:not(:has(.v-hero)) .v-product-feature { border-color: #d7dadd; }
body:not(:has(.v-hero)) .v-page-intro .v-label,.people-biography .overline,.people-role { color: #89420e; }
body:not(:has(.v-hero)) .people-quote,.people-colleague .team-initial,.people-portrait .team-initial { background: #eef0f1; border-color: #ccd1d5; }
.people-quote blockquote,.people-biography .people-affiliation { color: #252b30; }
.people-quote-translation,.people-quote-credit { color: #505a61; }
body:not(:has(.v-hero)) a:focus-visible,body:not(:has(.v-hero)) button:focus-visible { outline-color: #af5316; }

/* Action controls share one compact shape across routes and screen sizes. */
.v-hero .v-button, .v-button, .button, .v-header .v-contact-link,
.v-filters button, .filters button, .segmented button, .hebbian-controls button,
.lang-btn, .v-textlink, .text-link {
  font-weight: 700;
}
.v-hero .v-button, .v-button, .button, .v-header .v-contact-link,
.v-filters button, .filters button, .segmented button, .hebbian-controls button {
  border-radius: var(--sm-corner-control);
  gap: 0;
}
.v-header .v-contact-link {
  padding: 10px 16px;
  border: 1px solid #ccd0d3;
  justify-content: center;
}
body:has(.v-hero) #header .v-contact-link { border-color: #ccd0d3; }
.v-header .v-contact-link:hover { background: #f1f2f3; }
.button.orange, .button.outline, .v-cta .v-button.light, .v-blog-bottom .v-textlink { font-weight: 700; }

/* Give the product image its own stage, with a quiet band behind the headline. */
body:has(.v-hero) #header,
body:has(.v-hero) .v-header .main-nav { background: #101113; color: #fafafa; border-color: #37393b; }
body:has(.v-hero) #header .brand-symbol > img { filter: invert(1); mix-blend-mode: screen; }
body:has(.v-hero) #header :is(.main-nav a,.lang-btn,.menu-btn,.v-contact-link) { color: #f6f6f3; }
body:has(.v-hero) #header .v-contact-link { border-color: #777a7c; }
body:has(.v-hero) #header .v-contact-link:hover { color: #17181a; background: #f5f5f3; }
.v-hero[data-feature] { background: #101113; }
.v-hero[data-feature] .feature-artwork {
  width: 62%; height: calc(100% - 74px); top: 0; object-position: 58% 50%; transform-origin: 65% 55%;
}
.v-hero[data-feature]::after {
  background: linear-gradient(90deg,#101113 0 30%,rgba(16,17,19,.93) 37%,transparent 65%),
              linear-gradient(0deg,#101113 7%,transparent 25%);
}
.v-hero[data-feature] .v-hero-grid { min-height: clamp(520px,calc(100svh - 210px),780px); }
.v-hero .feature-switch { padding-top: 4px; }
@media (prefers-reduced-motion: no-preference) {
  .v-hero[data-feature="overview"] .feature-artwork { animation: hardware-detail 4.8s ease-out both; }
  @keyframes hardware-detail { from { transform: scale(1.055); } to { transform: scale(1); } }
}
body:has(.v-hero) .v-news { background: #f4f3ef; }
.v-news .news-grid { display: block; }
body:has(.v-hero) .v-news .news-card {
  display: grid; grid-template-columns: minmax(0,1.12fr) minmax(0,1fr);
  grid-template-rows: 1fr auto auto auto 1fr; gap: 12px clamp(30px,4vw,76px);
  padding: 0 clamp(24px,4vw,64px) 0 0; overflow: hidden;
  min-height: clamp(335px,30vw,470px); background: #fff; border: 1px solid #dddeda;
}
body:has(.v-hero) .v-news .news-card[hidden] { display: none; }
.v-news .news-card .news-graphic { grid-column: 1; grid-row: 1/-1; height: 100%; width: 100%; margin: 0; border-radius: 0; }
.v-news .news-card .meta { grid-column: 2; grid-row: 1; align-self: end; margin-top: 24px; }
.v-news .news-card h3 { grid-column: 2; grid-row: 2; font-size: clamp(24px,2.4vw,42px); line-height: 1.22; margin: 0; }
.v-news .news-card p { grid-column: 2; grid-row: 3; margin: 0; line-height: 1.65; }
.v-news .news-card .text-link { grid-column: 2; grid-row: 4; justify-self: start; align-self: start; margin: 2px 0 20px; }
.spotlight-switch { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; }
.spotlight-switch button { padding: 9px 16px; border: 1px solid #c9cac8; color: #373839; font-weight: 700; background: transparent; }
.spotlight-switch button[aria-pressed="true"] { border-color: #333438; color: #fff; background: #26272a; }
.benchmark-details { margin-top: 32px; }
.benchmark-details details { border-bottom: 1px solid #bdc2c7; }
.benchmark-details summary { display: flex; align-items: center; justify-content: space-between; cursor: pointer; padding: 20px 4px; font-size: 18px; font-weight: 600; list-style: none; }
.benchmark-details summary::-webkit-details-marker { display: none; }
.benchmark-details summary::after { content: '+'; color: #98470f; }
.benchmark-details details[open] > summary::after { content: '−'; }
.benchmark-details summary:focus-visible { outline: 2px solid #ac561d; outline-offset: -2px; }
.benchmark-details .v-article-charts,.benchmark-details .v-targets { margin: 0 0 14px; }
.benchmark-details .v-textlink { margin-bottom: 20px; }
@media (max-width: 699px) {
  .v-hero[data-feature] .v-hero-grid { min-height: 510px; }
  .v-hero[data-feature] .feature-artwork { width: 100%; height: 48%; top: auto; bottom: 44px; object-position: center; }
  .v-hero[data-feature]::after { background: linear-gradient(180deg,#101113 39%,rgba(16,17,19,.88) 52%,transparent 70%,transparent 83%,#101113 94%); }
  body:has(.v-hero) .v-news .news-card { display: flex; padding: 0 20px 22px; gap: 10px; min-height: 0; }
  .v-news .news-card .news-graphic { order: -1; width: calc(100% + 40px); margin: 0 -20px; height: auto; aspect-ratio: 16/9; }
  .v-news .news-card .meta { align-self: stretch; margin: 8px 0 0; }
  .v-news .news-card .text-link { margin: 0; }
  .spotlight-switch button { padding: 8px 10px; font-size: 13px; }
}
@media (min-width: 700px) {
  .v-hero[data-feature] .feature-artwork {
    mask-image: linear-gradient(90deg,transparent,#000 26%);
  }
}


@font-face {
  font-family: Manrope;
  src: url("/assets/fonts/manrope-variable.ttf") format("truetype");
  font-weight: 200 800;
  font-display: swap;
}
body:has(.v-hero) .solution-index {
  font-family: Manrope, "PingFang SC", "Microsoft YaHei", sans-serif;
  background: #f6f5f2;
  padding-block: clamp(44px,5vw,80px);
}
.solution-index > .v-wrap {
  display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr);
  grid-template-areas: "visual intro" "visual entries";
  gap: 28px clamp(36px,6vw,96px); align-content: center;
}
.solution-index .v-section-heading { grid-area: intro; align-self: end; display: block; margin: 0; }
.solution-index .v-section-heading h2 {
  margin: 0 0 16px; font: 400 36px/1.1 Manrope,"PingFang SC","Microsoft YaHei",sans-serif;
  letter-spacing: -.02em;
}
.solution-index .v-section-heading p,.solution-index .v-solutions details > p {
  margin: 0; max-width: 38em; color: #50504d;
  font: 500 16px/1.5 Manrope,"PingFang SC","Microsoft YaHei",sans-serif;
}
.solution-index .v-solutions { grid-area: entries; align-self: start; display: block; border: 0; }
.solution-index details { border-bottom: 1px solid #cfceca; }
.solution-index summary { cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 19px 0; list-style: none; }
.solution-index summary::-webkit-details-marker { display: none; }
.solution-index .v-solutions summary h3 { margin: 0; font: 500 20px/1.3 Manrope,"PingFang SC","Microsoft YaHei",sans-serif; letter-spacing: -.02em; }
.solution-index summary::after { content: '+'; color: #4f4c48; font: 400 24px/1 Manrope,sans-serif; }
.solution-index details[open] summary::after { content: '−'; }
.solution-index details > a { display: inline-flex; margin: 14px 0 22px; color: #80400e; }
.solution-index details > a .v-textlink { padding: 0; border: 0; font-size: 15px; }
.solution-index summary:focus-visible { outline: 2px solid #bd6428; outline-offset: 3px; }
.product-figure { grid-area: visual; align-self: center; aspect-ratio: 1; overflow: hidden; border-radius: var(--sm-corner-panel); background: #eeebe5; }
.product-figure figure { position: relative; width: 100%; height: 100%; margin: 0; }
.product-figure svg,.product-figure img { display: block; height: 100%; width: 100%; object-fit: cover; }
.product-figure figcaption { position: absolute; left: 24px; bottom: 22px; font-size: 14px; color: #534e46; }
.product-figure figure[data-figure="1"] { background: #252523; }
.product-figure .product-connections { object-fit: contain; box-sizing: border-box; padding: 6% 10% 10%; }
.product-figure figure[data-figure="1"] figcaption { color: #fff; background: #17191a; padding: 4px 9px; border-radius: 5px; }
@media (max-width: 760px) {
  .solution-index > .v-wrap { grid-template-columns: 1fr; grid-template-areas: "intro" "visual" "entries"; gap: 20px; }
  .solution-index .v-section-heading h2 { font-size: 28px; }
  .product-figure { aspect-ratio: 16/9; }
  .product-figure figcaption { bottom: 10px; left: 12px; font-size: 12px; }
}

/* Homepage validation studies and research index share the product section's type scale. */
.evidence-section {
  --study-font: Manrope,"PingFang SC","Microsoft YaHei",sans-serif;
  font-family: var(--study-font); color: #242320; background: #fff;
  padding-block: clamp(44px,5vw,80px); scroll-margin-top: 76px;
}
.evidence-section h2 { margin: 0; font: 400 36px/1.1 var(--study-font); letter-spacing: -.02em; }
.evidence-section p { margin: 0; color: #50504d; font: 500 16px/1.5 var(--study-font); }
.evidence-layout { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.55fr); gap: clamp(40px,6vw,100px); align-items: start; }
.evidence-layout header p { max-width: 32ch; margin: 20px 0 0; }
.validation-results details { border-block-end: 1px solid #cfceca; }
.validation-results details:first-child { border-block-start: 1px solid #cfceca; }
.validation-results summary { position: relative; display: grid; grid-template-columns: minmax(0,auto) 1fr; align-items: baseline; gap: 6px 18px; padding: 21px 32px 21px 0; cursor: pointer; list-style: none; }
.validation-results summary::-webkit-details-marker { display: none; }
.validation-results summary::after { content: '+'; position: absolute; right: 1px; top: 50%; transform: translateY(-50%); font: 400 24px/1 var(--study-font); }
.validation-results details[open] summary::after { content: '−'; }
.result-meta { grid-column: 1/-1; color: #625b54; font: 500 14px/1.45 var(--study-font); }
.validation-results summary strong { font: 500 clamp(29px,3vw,44px)/1.2 var(--study-font); letter-spacing: -.035em; font-variant-numeric: tabular-nums; }
.result-metric { font: 500 16px/1.5 var(--study-font); }
.validation-results details > p { margin-bottom: 18px; }
.validation-results .v-article-charts,.validation-results .v-targets { background: #f6f5f2; border: 0; border-radius: 16px; padding: 20px; overflow: hidden; }
.validation-results .v-article-charts { gap: 24px; }
.validation-results .v-data-chart { background: transparent; padding: 0; border: 0; }
.validation-results .v-data-chart h3 { margin: 0 0 15px; font: 500 16px/1.4 var(--study-font); }
.validation-results .v-data-row { margin: 12px 0; }
.validation-results .v-data-row > div:first-child,.validation-results .v-data-row b { font: 500 14px/1.4 var(--study-font); color: #35312c; }
.validation-results .v-data-track { height: 6px; background: #e0ddd7; border-radius: 8px; overflow: hidden; }
.validation-results .v-data-track > span { background: #bf692e; border-radius: inherit; }
.validation-results .v-data-chart p,.validation-results .v-targets p { margin-top: 12px; font: 500 14px/1.5 var(--study-font); }
.validation-results .v-targets strong { font: 500 32px/1.2 var(--study-font); color: #794016; }
.study-link { display: inline-block; color: #80400e; font: 650 15px/1.5 var(--study-font); }
.validation-results .study-link { margin: 16px 0 22px; }
.evidence-section :is(a,button,summary):focus-visible { outline: 2px solid #aa571c; outline-offset: 3px; }
.evidence-section a:hover { text-decoration: underline; text-underline-offset: .2em; }
.research-index { background: #f6f5f2; }
.research-index header { display: flex; align-items: baseline; justify-content: space-between; gap: 20px; }
.research-index .v-filters { margin: 26px 0 22px; gap: 6px; }
.research-index .v-filters button { padding: 7px 14px; min-height: 36px; font: 500 14px/1.4 var(--study-font); color: #49443e; background: transparent; border: 1px solid transparent; border-radius: 12px; }
.research-index .v-filters button.active { background: #302c28; color: #fff; }
.research-index .v-filters button:not(.active):hover { background: #e8e5df; }
.study-list { border-top: 1px solid #cfceca; }
.study-list article { display: grid; grid-template-columns: minmax(110px,.6fr) minmax(0,2fr) minmax(115px,.6fr); gap: 24px; padding: 28px 0; border-bottom: 1px solid #cfceca; align-items: baseline; }
.study-list article[hidden] { display: none; }
.study-list h3 { margin: 0 0 8px; font: 500 20px/1.3 var(--study-font); letter-spacing: -.02em; }
.study-byline { display: grid; gap: 4px; }
.study-byline strong { font: 600 16px/1.5 var(--study-font); }
.study-stage,.study-byline span { color: #5e5953; font: 500 14px/1.45 var(--study-font); }
.study-stage { justify-self: end; }
@media (max-width: 760px) {
  .evidence-section h2 { font-size: 28px; }
  .evidence-layout { grid-template-columns: 1fr; gap: 24px; }
  .evidence-layout header p { max-width: none; }
  .result-metric { grid-column: 1/-1; }
  .validation-results .v-article-charts { grid-template-columns: 1fr; }
  .study-list article { grid-template-columns: 1fr; gap: 9px; padding: 20px 0; }
  .study-byline { display: flex; flex-wrap: wrap; align-items: baseline; gap: 12px; }
  .study-stage { justify-self: start; }
  .research-index header { flex-wrap: wrap; }
  .research-index .v-filters { gap: 2px; }
  .research-index .v-filters button { padding-inline: 10px; }
}

/* Shared public-site typography and surfaces, for both generations of page templates. */
:root {
  --sm-sans: Manrope,"PingFang SC","Microsoft YaHei",sans-serif;
  --sm-display: var(--sm-sans);
  --sm-mono: var(--sm-sans);
  --surface-warm: #f6f5f2;
  --rule-warm: #d2cfc9;
  --section-title: clamp(28px,3vw,36px);
  --page-title: clamp(38px,4.6vw,68px);
}
body { font-family: var(--sm-sans); }
#header :is(a,button), #footer, #main :is(input,textarea,select,button) { font-family: var(--sm-sans); }
body:not(:has(.v-hero)) #header,body:not(:has(.v-hero)) .v-header .main-nav { background: #101113; color: #f6f6f3; border-color: #37393b; }
body:not(:has(.v-hero)) #header :is(.main-nav a,.lang-btn,.menu-btn,.v-contact-link) { color: #f6f6f3; }
body:not(:has(.v-hero)) #header .brand-symbol img { filter: invert(1); mix-blend-mode: screen; }
body:not(:has(.v-hero)) #header .v-contact-link { border-color: #777a7c; }
body:not(:has(.v-hero)) #header .v-contact-link:hover { color: #242320; background: #fafafa; }
#main :is(.v-page-intro,.page-hero,.v-article-hero) { background: var(--surface-warm); color: #242320; border-color: var(--rule-warm); padding-block: clamp(44px,6vw,88px); }
#main :is(.v-page-intro,.page-hero,.v-article-hero) h1 {
  margin: 14px 0 20px; font: 400 var(--page-title)/1.1 var(--sm-sans); letter-spacing: -.035em; max-width: 23ch; overflow-wrap: break-word;
}
#main :is(.v-page-intro,.page-hero,.v-article-hero) :is(p,.lead) { max-width: 66ch; margin-block: 0 20px; font: 500 16px/1.55 var(--sm-sans); color: #514d48; }
#main .page-hero.dark :is(.breadcrumbs,.overline),#main .breadcrumbs { color: #59564f; }
#main :is(.page-hero .overline,.v-page-intro .v-label,.v-cta .v-label,.cta .overline,.v-method-grid article > span,.v-section .v-label > span) { display: none; }
#main :is(.v-section,.section,.cta,.v-cta) h2 {
  font: 400 var(--section-title)/1.14 var(--sm-sans); letter-spacing: -.02em;
}
#main :is(.v-method-grid,.v-blog-grid,.feature-list,.process,.news-grid,.team-grid,.detail-body,.v-research-list,.contact-grid) h3 {
  font: 500 20px/1.3 var(--sm-sans); letter-spacing: -.02em;
}
#main :is(.v-product-feature,.v-method-grid,.v-blog-card,.v-two,.news-card,.detail-body,.tech-text,.process,.feature-list,.section-head,.contact-grid,.privacy,.article,.v-prose) p {
  font: 500 16px/1.55 var(--sm-sans); letter-spacing: normal;
}
#main :is(.article,.v-prose,.detail-body) > p { line-height: 1.72; }
#main :is(.article,.v-prose,.detail-body) h2 { border: 0; padding-inline-start: 0; }
#main :is(.article,.v-prose,.detail-body) strong { color: inherit; background: transparent; }
#main .v-product-feature { gap: clamp(24px,5vw,80px); margin-bottom: clamp(44px,5vw,80px); }
#main .v-product-feature:last-child { margin-bottom: 0; }
#main .v-product-feature .v-label { display: none; }
#main .v-method-grid { gap: clamp(20px,3vw,44px); margin-top: 28px; }
#main .v-method-grid article,.people-colleague { border-color: var(--rule-warm); }
#main .v-method-grid article { border-top-width: 1px; }
#main .v-method-grid h3 { margin: 0 0 12px; }
#main .v-art { border-radius: var(--sm-corner-panel); }
#main .v-art-chip,#main .v-art-physics { background: #252523; color: #e8ad81; }
#main .v-art-model { background: #eeeae3; color: #945126; }
#main .v-art > span { color: inherit; background: transparent; letter-spacing: normal; font: 500 13px/1.4 var(--sm-sans); }
#main .v-art::before { border-color: #96918a40; }
#main .chip-grid i { border-color: #64594f; }
#main .chip-grid i.on { background: #d58145; border-color: #e89d65; box-shadow: none; }
#main .matrix i { background: #e2dcd3; border-color: #c8baac; }
#main .matrix i.on { background: #b86b37; border-color: #bb7445; box-shadow: none; }
#main :is(.v-stage,.tag) { background: #efede7; color: #544d46; border-color: var(--rule-warm); font-family: var(--sm-sans); }
#main :is(.v-blog-meta,.news-card .meta,.chart-value span,.people-quote-label) { color: #645a4e; }
#main .v-blog-card { border: 0; box-shadow: none; background: transparent; }
#main .v-blog-bottom { border-color: var(--rule-warm); }
#main .v-blog-card h3 a:hover,#main .contact-detail a { color: #80400e; }
#main :is(.v-cta,.cta) { background: #20211f; color: #faf9f7; border-color: #454641; padding-block: clamp(44px,5vw,80px); }
#main :is(.v-cta,.cta) h2 { margin: 0 0 18px; color: inherit; }
#main :is(.v-cta,.cta) p { color: #d4d2cc; }
#main .v-cta-bottom { padding-top: 14px; border-color: #555550; }
#main :is(.cta .button,.v-cta .v-button.light,.button.orange,.v-button:not(.light)) { background: #ec8830; color: #22160c; border-color: #ec8830; font-family: var(--sm-sans); box-shadow: none; }
#main :is(.cta .button,.v-cta .v-button.light,.button.orange,.v-button:not(.light)):hover { background: #f39c52; border-color: #f39c52; }
#main .v-manifesto .v-lead { border: 0; padding: 0; color: #514d48; }
#main .v-manifesto .v-label { color: #5b5751; }
#main .density-guide { background: var(--surface-warm); color: #242320; scroll-margin-top: 76px; }
.density-guide .v-wrap { display: grid; grid-template-columns: minmax(0,.85fr) minmax(0,1.1fr); gap: clamp(38px,8vw,120px); align-items: start; }
.density-guide h2 { margin: 0 0 16px; }
.density-guide header p { margin: 0 0 20px; max-width: 38ch; }
.density-guide :is(p,dd) { font: 500 16px/1.55 var(--sm-sans); color: #514d48; }
.density-guide .study-link { font: 650 15px/1.5 var(--sm-sans); }
.density-guide dl { margin: 0; border-top: 1px solid var(--rule-warm); }
.density-guide dl > div { display: grid; grid-template-columns: minmax(78px,.35fr) 1fr; gap: 20px; padding: 20px 0; border-bottom: 1px solid var(--rule-warm); }
.density-guide dt { font: 500 20px/1.3 var(--sm-sans); letter-spacing: -.02em; }
.density-guide dd { margin: 0; }
@media(max-width:760px) {
  .density-guide .v-wrap { grid-template-columns: 1fr; gap: 26px; }
  .density-guide dl > div { grid-template-columns: 1fr; gap: 8px; padding-block: 16px; }
  #main .v-product-feature { gap: 20px; }
}
.validation-results summary:has(> .result-metric:only-child) { display: block; }
.validation-results summary > .result-metric:only-child { font: 500 20px/1.3 var(--sm-sans); }
.case-event-photo { margin: 32px 0 0; }
.case-event-photo img { display: block; width: 100%; height: auto; border-radius: var(--sm-corner-panel); }
.case-event-photo figcaption { margin-top: 8px; color: #59564f; font: 500 14px/1.5 var(--sm-sans); }

/* Size button labels consistently across the homepage and interior templates. */
#main :is(.v-button,.button) {
  font-size: clamp(18px,1.5vw,20px);
  font-weight: 700;
  line-height: 1.35;
  max-width: 100%;
  justify-content: center;
  text-align: center;
}
#header .v-contact-link,
#main :is(.v-filters,.filters,.segmented,.spotlight-switch,.hebbian-controls) button {
  font-size: clamp(16px,1.25vw,18px);
  line-height: 1.35;
}

/* Neural signals echo the sparse topology, leaving all motion outside the copy. */
.signal-paths { position: absolute; right: 3%; top: 10%; width: 43%; height: auto; z-index: 1; pointer-events: none; color: #ed9e62; }
.signal-paths path { fill: none; stroke-linecap: round; stroke-linejoin: round; }
.signal-wires path { stroke: currentColor; stroke-width: 1; opacity: .32; }
.signal-paths circle { fill: #efaa74; opacity: .63; }
.signal-packets path { stroke: #ffd3a2; stroke-width: 2.8; stroke-dasharray: 6 104; stroke-dashoffset: 7; opacity: 0; }
.v-hero[data-feature="learning"] .signal-paths { display: none; }
@media (max-width: 699px) {
  .signal-paths { top: auto; bottom: 15%; right: 4%; width: 56%; }
}
@media (prefers-reduced-motion: no-preference) {
  .v-hero.motion-visible .signal-packets path { animation: neural-transit 2s var(--lag) ease-in-out 2; }
  .v-hero.motion-visible .signal-paths circle { animation: neural-node 1.7s var(--lag) ease-out 2; }
  .product-figure.motion-visible .weight-kept { animation: weight-retain 1.25s var(--lag) ease-out both; }
  .product-figure.motion-visible .weight-removed { animation: weight-prune 1.25s var(--lag) ease-out both; }
  .v-hero .feature-copy:not([hidden]),.v-news .news-card:not([hidden]),.product-figure figure:not([hidden]) { animation: subject-enter .34s ease-out; }
  :is(.v-section-heading,.evidence-section header,.density-guide header,.v-product-feature).motion-visible { animation: subject-enter .48s ease-out; }
  .v-article-charts.motion-visible .v-data-track > span { transform-origin: left; animation: measure-in .58s ease-out; }
  @keyframes neural-transit { 0% { stroke-dashoffset: 7; opacity: 0; } 14%,75% { opacity: .95; } 100% { stroke-dashoffset: -100; opacity: 0; } }
  @keyframes neural-node { 0%,100% { opacity: .63; } 50% { opacity: 1; } }
  @keyframes weight-retain { from { fill: #bdb2a4; } to { fill: #dc7636; } }
  @keyframes weight-prune { from { fill: #bdb2a4; } to { fill: #e5dfd7; } }
  @keyframes subject-enter { from { transform: translateY(6px); opacity: .55; } to { transform: none; opacity: 1; } }
  @keyframes measure-in { from { transform: scaleX(0); } to { transform: scaleX(1); } }
}
@media (max-width: 900px) and (prefers-reduced-motion: no-preference) {
  .v-header .main-nav.open { animation: subject-enter .22s ease-out; }
}

/* A single example connects model selection and chip execution. */
.sparse-demo {
  --demo-ink: #302d29; --demo-line: #b4a89a; --demo-selected: #9a501d;
  min-width: 0; margin: 0; padding: clamp(18px,2.4vw,36px);
  border-radius: var(--sm-corner-panel); background: #f1ede6; color: var(--demo-ink);
  align-self: center;
}
.sparse-demo.demo-execution {
  --demo-ink: #faf5ed; --demo-line: #82786b; --demo-selected: #ffab67;
  background: #262725;
}
.sparse-demo figcaption { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.sparse-demo figcaption strong { font: 550 20px/1.3 var(--sm-sans); letter-spacing: -.02em; color: inherit; }
.sparse-demo .demo-replay { color: inherit; border: 1px solid var(--demo-line); border-radius: 12px; background: transparent; padding: 5px 12px; font-size: 16px; cursor: pointer; }
.sparse-demo svg { display: block; width: 100%; max-width: 520px; height: auto; margin: 16px auto; overflow: visible; }
.sparse-demo text { fill: var(--demo-ink); font: 550 20px var(--sm-sans); font-variant-numeric: tabular-nums; }
.sparse-demo .demo-index { font-size: 15px; font-weight: 500; }
.demo-wire,.demo-pulse { fill: none; stroke: var(--demo-line); stroke-width: 1.5; }
.demo-pulse { stroke: var(--demo-selected); stroke-width: 3; stroke-dasharray: 12 108; opacity: 0; }
.demo-tile rect { fill: transparent; stroke: var(--demo-line); }
.demo-tile.retained rect,.demo-tile.result rect { stroke: var(--demo-selected); fill: #ba702614; }
.demo-tile.discarded { opacity: .45; }
.demo-tile.result text { fill: var(--demo-selected); }
#main .sparse-demo > p { color: inherit; font: 450 16px/1.55 var(--sm-sans); margin: 0; max-width: none; }
.demo-sequence { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: clamp(16px,3vw,40px); margin-top: 28px; }
.demo-sequence .sparse-demo { align-self: stretch; }
@media (min-width: 901px) {
  .with-demo .container { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); align-content: center; column-gap: clamp(32px,5vw,80px); }
  .with-demo .container > :not(.sparse-demo) { grid-column: 1; align-self: center; justify-self: start; }
  .with-demo .sparse-demo { grid-column: 2; grid-row: 1 / span 5; }
}
@media (max-width: 900px) { .with-demo .sparse-demo { margin-top: 26px; } }
@media (max-width: 760px) { .demo-sequence { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: no-preference) {
  .sparse-demo.motion-visible .demo-tile.discarded { animation: demo-prune 1s ease-out both; }
  .sparse-demo.motion-visible .demo-tile.retained rect { animation: demo-mark .8s ease-out both; }
  .sparse-demo.motion-visible .demo-pulse { animation: demo-transmit .95s .7s ease both; }
  .sparse-demo.motion-visible .demo-products { animation: demo-value .4s 1.3s both; }
  .sparse-demo.motion-visible .demo-sum .demo-pulse { animation-delay: 1.7s; }
  .sparse-demo.motion-visible .demo-answer { animation: demo-value .4s 1.5s both; }
  .demo-execution.motion-visible .demo-answer { animation-delay: 2.5s; }
  @keyframes demo-prune { from { opacity: 1; } to { opacity: .45; } }
  @keyframes demo-mark { from { stroke: var(--demo-line); fill: transparent; } }
  @keyframes demo-transmit { 0% { stroke-dashoffset: 13; opacity: 0; } 15%,82% { opacity: 1; } 100% { stroke-dashoffset: -100; opacity: 0; } }
  @keyframes demo-value { from { opacity: 0; } to { opacity: 1; } }
}
@media (prefers-reduced-motion: reduce) { .sparse-demo .demo-replay { display: none; } }

.people-biography { container-type: inline-size; min-width: 0; }
#carlo-name {
  font-size: min(3.25rem, 8.25cqw);
  line-height: 1.12;
  white-space: nowrap;
}
.v-research-row > span:first-child {
  font-family: var(--sm-display);
  font-size: clamp(1.125rem, 1.6vw, 1.375rem);
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: -.02em;
  white-space: nowrap;
}

.people-portrait { max-width: min(100%, 259px); }
.people-portrait .team-initial { aspect-ratio: 518 / 620; }
