/* CITIC spatial edition: neutral surfaces, brand red, planar data.
   Layer order: cards 0–2, sticky classification 11, header 12, existing dialogs 1000. */
:root { --accent: #C8102E; --accent-dark: #a30d26; --accent-soft: #fbecef; --bg: #f5f5f7; --surface: #fff; --ink: #171719; --muted: #68686e; --line: #e2e2e6; --radius: 24px; font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", sans-serif; }
.spatial-site { background: var(--bg); --header-height: 76px; }
.spatial-site .investor-gate-brand img { height: auto; }
.spatial-site [hidden] { display: none !important; }
.spatial-site :focus-visible { outline: 3px solid var(--accent); outline-offset: 5px; }
.spatial-site .site-header { z-index: 12; height: 76px; background: rgba(255,255,255,.94); border-bottom-color: #ebebee; padding-inline: max(28px, calc((100vw - 1360px) / 2)); }
.spatial-site .brand img { width: 157px; }
.spatial-site .brand span { font-size: 13px; letter-spacing: .12em; }
.spatial-site .site-header nav { gap: 30px; }
.spatial-site .site-header nav a { font-size: 12px; }
.spatial-site .section-shell { width: min(1360px, calc(100% - 80px)); margin-inline: auto; padding: 86px 0; }
.spatial-site .spatial-hero { width: min(1360px, calc(100% - 80px)); min-height: 310px; margin: auto; padding: 48px 0 34px; display: flex; align-items: center; justify-content: space-between; gap: 32px; overflow: visible; }
.spatial-hero::before { display: none; }
.spatial-hero .kicker { margin-bottom: 19px; color: #616168; font-size: 11px; letter-spacing: .13em; }
.spatial-hero .kicker span { margin-inline: 10px; color: #c2c2c8; }
.spatial-hero h1 { margin: 0 0 18px; font-size: clamp(40px, 4.4vw, 64px); font-weight: 650; letter-spacing: -.045em; line-height: 1.2; color: #C8102E; white-space: nowrap; }
.spatial-hero h1 > span { color: var(--accent); }
.spatial-intro { margin: 0; color: var(--muted); font-size: 14px; }
.mobile-break { display: none; }
.asset-sculpture { position: relative; display: block; flex: 0 0 354px; height: auto; margin: -15px 15px -15px 20px; padding-bottom: 0; perspective: 1100px; white-space: normal; }
.asset-sculpture-grid { position: relative; display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; transform: rotateX(20deg) rotateY(-14deg) rotateZ(-8deg) scale(.88); transform-style: flat; }
.asset-sculpture-grid::before { pointer-events: none; content: ""; position: absolute; inset: 14px -9px -10px; background: #dcdce3; border: 1px solid #d3d3dc; border-radius: 20px; z-index: -1; box-shadow: 9px 21px 25px -9px #26263628; }
.asset-sculpture .asset-tile { position: relative; display: flex; flex-direction: column; min-width: 0; height: 102px; padding: 13px 16px 10px; color: #26262b; text-decoration: none; background: #fff; border: 1px solid #fff; border-radius: 12px; box-shadow: 0 4px 0 #d8d8e1, 0 5px 0 #c5c5d0, 3px 10px 15px #25253712; transform-style: flat; transition: transform .5s cubic-bezier(.22,1,.36,1), box-shadow .5s; }
.asset-tile-code { position: relative; z-index: 1; font-size: 7px; letter-spacing: .09em; font-weight: 550; line-height: 1.4; }
.asset-sculpture .asset-tile strong { position: relative; z-index: 1; margin-top: 6px; font-size: 23px; line-height: 1.2; font-weight: 600; letter-spacing: .04em; }
.asset-tile-count { position: relative; z-index: 1; margin-top: auto; display: flex; justify-content: space-between; font-size: 8px; }
.asset-tile-count b { font-weight: 400; font-size: 12px; line-height: 1; }
.asset-sculpture .asset-tile-fixed { background: #C8102E; border-color: #db5268; color: white; box-shadow: 0 4px 0 #a20d25, 0 5px 0 #8b1024, 3px 10px 16px #c8102e20; transform: translateY(-4px); }
.asset-sculpture .asset-tile-macro { background: #27272c; border-color: #44444b; color: #fff; box-shadow: 0 4px 0 #16161a, 0 5px 0 #101013, 3px 10px 16px #25253720; }
.asset-tile-mark { position: absolute; right: 14px; top: 35px; width: 39px; height: 32px; opacity: .17; pointer-events: none; }
.asset-tile-fixed .asset-tile-mark { background: repeating-linear-gradient(0deg, transparent 0 6px, #fff 6px 8px); transform: skewY(-15deg); }
.asset-tile-equity .asset-tile-mark { border: 1px solid #C8102E; border-radius: 50%; box-shadow: -8px 0 0 -1px #fff, -9px 0 0 0 #C8102E, -16px 0 0 -1px #fff, -17px 0 0 0 #C8102E; opacity: .3; }
.asset-tile-commodity .asset-tile-mark { background-image: radial-gradient(circle, #36363d 2px, transparent 2.5px); background-size: 10px 10px; }
.asset-tile-macro .asset-tile-mark { width: 30px; height: 30px; border: 1px solid white; transform: rotate(45deg); box-shadow: 5px 5px 0 -1px #27272c, 6px 6px 0 0 white, -5px -5px 0 -1px #27272c, -6px -6px 0 0 white; }
.asset-sculpture-caption { position: relative; display: flex; justify-content: space-between; margin: 42px 0 0; padding: 10px 3px 0; border-top: 1px solid #dddde5; color: #68686e; font-size: 9px; letter-spacing: .04em; }
.asset-sculpture-caption > span:last-child { color: var(--accent); }
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  .asset-sculpture .asset-tile:hover { translate: 0 -4px; }
}
.asset-sculpture .asset-tile:focus-visible { outline: 2px solid var(--accent); outline-offset: 6px; }
@media (min-width: 768px) and (max-width: 900px) {
  .spatial-site .spatial-hero-copy { min-width: 0; }
  .spatial-site .spatial-hero h1 { font-size: 32px; }
  .spatial-site .asset-sculpture { flex-basis: 240px; margin-right: 12px; }
  .spatial-site .asset-tile-code { font-size: 6px; letter-spacing: 0; }
}
.spatial-site .products { padding-top: 0; }
.spatial-toolbar { position: sticky; top: 75px; z-index: 11; margin: 0 -16px; padding: 14px 16px 16px; background: rgba(245,245,247,.96); border-bottom: 1px solid #dddde3; backdrop-filter: blur(18px); }
.spatial-toolbar-top { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.spatial-site .view-switch { position: relative; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); width: 500px; gap: 0; flex-shrink: 0; margin: 0; padding: 5px; overflow: visible; border: 1px solid #dddde2; border-radius: 16px; background: #e9e9ee; box-shadow: inset 0 2px 4px #17171906; }
.view-switch-thumb { position: absolute; inset: 5px auto 5px 5px; width: calc((100% - 10px) / 3); border: 1px solid #fff; border-radius: 11px; background: white; box-shadow: 0 3px 8px #17171912, 0 1px 2px #1717190a; transition: transform .5s cubic-bezier(.22,1,.36,1); }
.view-switch[data-view-mode="family"] .view-switch-thumb { transform: translateX(200%); }
.view-switch[data-view-mode="risk"] .view-switch-thumb { transform: translateX(100%); }
.spatial-site .view-switch button { position: relative; z-index: 1; min-height: 44px; padding: 8px 16px; border: 0; border-radius: 11px; background: transparent; color: #68686e; font-size: 14px; font-weight: 550; cursor: pointer; transition: color .25s; white-space: nowrap; }
.spatial-site .view-switch button.is-active { color: var(--accent); background: transparent; box-shadow: none; }
.spatial-total { margin: 0; font-size: 11px; color: var(--muted); }
.spatial-total strong { color: var(--ink); font-size: 17px; font-weight: 600; font-variant-numeric: tabular-nums; }
.spatial-total > span { margin: 0 10px; color: #b6b6be; }
.spatial-filters { display: flex; gap: 8px; margin-top: 18px; overflow-x: auto; scrollbar-width: none; }
.spatial-filters::-webkit-scrollbar { display: none; }
.spatial-filters button { display: inline-flex; align-items: center; gap: 12px; min-height: 42px; flex: 0 0 auto; padding: 8px 18px; border: 1px solid transparent; border-radius: 10px; color: #5e5e66; background: transparent; cursor: pointer; font-size: 12px; transition: background .2s, color .2s; }
.spatial-filters button span { font-size: 10px; opacity: 1; font-variant-numeric: tabular-nums; }
.spatial-filters .filter-name { font: inherit; }
.spatial-filters .filter-short { display: none; }
.spatial-filters button[aria-pressed="true"] { background: var(--accent); color: #fff; box-shadow: 0 4px 10px #c8102e15; }
.spatial-filters button:hover:not([aria-pressed="true"]) { background: #e8e8ed; color: var(--ink); }
.spatial-result-bar { display: flex; justify-content: space-between; align-items: center; margin: 27px 0 22px; }
.spatial-result-bar p { margin: 0; font-size: 13px; color: var(--ink); font-weight: 600; }
.spatial-result-bar > span { color: var(--muted); font-size: 11px; }
.spatial-risk-note { color: var(--muted); font-size: 12px; margin: -8px 0 24px; }
#matrix-panel { outline-offset: 8px; overflow-anchor: none; }
.spatial-site .product-category { padding: 0; margin: 0 0 46px; scroll-margin-top: 245px; }
.spatial-site .category-heading, .spatial-site .risk-view-group > header { display: flex; justify-content: space-between; align-items: center; gap: 24px; padding: 0 2px 20px; border: 0; }
.spatial-site .category-heading::after { display: none; }
.spatial-site .category-heading > div { display: flex; flex-direction: row-reverse; align-items: baseline; gap: 14px; flex-shrink: 0; }
.spatial-site .category-heading h2, .spatial-site .risk-view-group > header h3 { color: var(--ink); font-size: 23px; font-weight: 600; margin: 0; line-height: 1.2; }
.spatial-site .category-heading span { font-size: 10px; color: #68686e; letter-spacing: .04em; font-weight: 400; }
.spatial-site .category-heading p { font-size: 11px; margin: 0; max-width: 560px; text-align: right; }
.spatial-site .product-list, .spatial-site .risk-view-group > .product-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; border: 0; align-items: stretch; }
.spatial-site .product-record { position: relative; display: flex; flex-direction: column; gap: 0; align-items: stretch; min-width: 0; min-height: 0; padding: 26px 28px 22px; border: 1px solid #fff; border-radius: 24px; background: linear-gradient(160deg, #ffffff 62%, #fbfbfd); overflow: visible; isolation: isolate; box-shadow: 0 2px 2px #25253705, 0 10px 22px -12px #25253720, 0 25px 46px -28px #25253735, inset 0 -2px 0 #e4e4ec; transition: box-shadow .4s; scroll-margin-top: 255px; }
.spatial-site .product-record::before { display: none; }
.spatial-site .product-record::after { content: ""; position: absolute; inset: auto 10px -7px; height: 12px; border: 1px solid #e5e5ec; border-top: 0; border-radius: 0 0 24px 24px; background: #ececf1; z-index: -1; box-shadow: 0 2px 1px #fff inset; }
.spatial-site .product-record:hover, .spatial-site .product-record:focus-within { z-index: 2; box-shadow: 0 2px 3px #25253705, 0 17px 28px -16px #25253728, 0 32px 50px -24px #25253735, inset 0 -2px 0 #dddde7; }
.spatial-site .product-index { order: 0; flex-direction: row; align-items: center; justify-content: flex-start; gap: 9px; margin-bottom: 14px; }
.spatial-site .strategy-family-label { color: #777780; font-size: 10px; letter-spacing: .03em; }
.spatial-site .product-record[data-risk="R4"] .strategy-family-label { color: var(--accent); }
.spatial-site .product-index > span { font-size: 11px; line-height: 1; font-weight: 600; color: var(--muted); letter-spacing: .04em; }
.spatial-site .product-index em { margin-left: auto; writing-mode: horizontal-tb; font-size: 10px; text-align: right; }
.spatial-site .risk-badge { margin: 0; padding: 4px 7px; border: 0; border-radius: 5px; background: var(--accent-soft); color: var(--accent); font-size: 9px; }
.spatial-site [data-risk="pending"] .risk-badge { background: #eeeeF2; color: #64646c; }
.spatial-site .product-summary { display: contents; container-type: normal; }
.spatial-site .product-summary h3 { order: 1; font-size: clamp(21px, 2vw, 27px); line-height: 1.35; letter-spacing: -.02em; font-weight: 650; color: var(--ink); margin: 0 0 8px; }
.spatial-site .product-family { order: 2; margin: 0 0 21px; font-size: 12px; line-height: 1.6; font-weight: 550; color: var(--accent); }
.spatial-site .family-first .product-family { order: 1; font-size: clamp(21px, 2vw, 27px); line-height: 1.35; color: var(--ink); font-weight: 650; margin: 0 0 8px; }
.spatial-site .family-first .product-summary h3 { order: 2; font-size: 12px; line-height: 1.6; color: var(--accent); font-weight: 550; margin: 0 0 21px; }
.spatial-site .strategy-detail-link::after { font-size: 12px; vertical-align: baseline; opacity: 1; }
.spatial-site .product-summary > p:last-of-type:not(.product-family) { order: 4; max-width: none; color: #64646c; font-size: 12px; line-height: 1.9; margin: 22px 0 0; }
.spatial-site .product-evidence { order: 3; position: relative; grid-column: auto; display: block; min-height: 0; align-self: stretch; padding: 23px 10px 12px; border: 1px solid #e5e5ec; border-radius: 13px; background: linear-gradient(160deg, #fff 0%, #fafafd 60%, #f1f1f6 100%); box-shadow: 0 7px 0 -2px #e9e9f0, 0 8px 0 -2px #dadae3, 0 16px 18px -12px #23233835, inset 0 1px 0 white; will-change: auto; }
.spatial-site .product-evidence::before { content: ""; pointer-events: none; position: absolute; inset: 0; border-radius: inherit; border-top: 2px solid white; }
.spatial-site .product-evidence::after { content: "STRATEGY SIGNAL"; position: absolute; right: 12px; top: 8px; color: #a5a5ad; font-size: 7px; letter-spacing: .16em; }
.spatial-site .product-chart { transform: none; transition: none; will-change: auto; }
.spatial-site .product-chart .mini-line { stroke-width: 2.6; filter: drop-shadow(0 3px 1px #c8102e16); }
.spatial-site .product-chart .mini-line[data-series-index="0"] { stroke: var(--accent); opacity: 1; }
.spatial-site .product-chart .mini-line[data-series-index="1"] { stroke: #57575f; stroke-width: 1.7; opacity: .8; filter: none; }
.spatial-site .product-chart .mini-line[data-series-index="2"] { stroke: #92929b; stroke-width: 1.6; stroke-dasharray: 4 2; filter: none; }
.spatial-site .product-chart .mini-line[data-series-index="3"] { stroke: #484850; stroke-width: 1.5; stroke-dasharray: 2 3; filter: none; }
.spatial-site .product-chart .mini-line[data-series-index="4"] { stroke: #b9b9c1; stroke-width: 1.5; filter: none; }
.spatial-site .product-chart .mini-grid { stroke: #e2e2e9; stroke-dasharray: 2 4; }
.spatial-site .product-chart .mini-axis-line { stroke: #b4b4bf; stroke-width: .8; }
.spatial-site .product-legend { display: flex; flex-wrap: wrap; gap: 6px 15px; margin: 4px 0 0 8px; font-size: 9px; }
.spatial-site .product-legend span::before { background: var(--accent); }
.spatial-site .product-legend span:nth-child(2)::before { background: #57575f; }
.spatial-site .product-legend span:nth-child(3)::before { background: #92929b; }
.spatial-site .product-legend span:nth-child(4)::before { background: #484850; }
.spatial-site .product-metrics { order: 5; margin: auto 0 0; padding-top: 19px; border-top: 0; gap: 12px; }
.spatial-site .product-metrics > div { border-top: 1px solid var(--line); padding: 15px 0 0; }
.spatial-site .product-metrics span { font-size: 10px; }
.spatial-site .product-metrics strong { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; margin-top: 8px; font-size: clamp(17px, 1.65vw, 24px); letter-spacing: -.025em; font-weight: 600; }
.spatial-site .product-metrics > div:first-child strong { color: var(--accent); }
.spatial-site .product-metrics-five strong { font-size: clamp(16px, 1.5vw, 22px); }
.spatial-site .product-metrics-six { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.spatial-site .product-record[data-risk="R4"] .product-evidence { border-color: #ead0d5; }
.spatial-site .product-record[data-risk="R4"] .product-evidence::after { color: var(--accent); }
.spatial-site .gold-period-switch { margin-bottom: 10px; }
.spatial-site .gold-period-footnote { font-size: 9px; margin-top: 6px; }
.spatial-site .product-source-chart { height: auto; aspect-ratio: 520 / 180; object-fit: contain; }
.spatial-site .product-chart-tooltip { max-width: min(290px, 85vw); z-index: 4; }
.spatial-site .product-chart .mini-hover-dot[data-hover-index="1"] { stroke: #57575f; }
.spatial-site .product-chart .mini-hover-dot[data-hover-index="2"] { stroke: #92929b; }
.spatial-site .product-chart .mini-hover-dot[data-hover-index="3"] { stroke: #484850; }
.spatial-site .product-chart-tooltip span:nth-of-type(2) i { background: #57575f; }
.spatial-site .product-chart-tooltip span:nth-of-type(3) i { background: #92929b; }
.spatial-site .product-chart-tooltip span:nth-of-type(4) i { background: #484850; }
.spatial-site .risk-view { display: block; margin: 0; }
.spatial-site .risk-view-group, .spatial-site .risk-view-group:not(:has(.risk-view-item)) { display: block; border: 0; margin-bottom: 46px; }
.spatial-site .risk-view-group > header { justify-content: flex-start; gap: 12px; }
.spatial-site .risk-view-group > header > span { border: 1px solid #e6d0d6; border-radius: 6px; font-size: 10px; padding: 2px 7px; }
.spatial-empty { text-align: center; padding: 80px 24px; border-radius: 24px; background: white; }
.spatial-empty strong { font-size: 22px; }
.spatial-empty p { color: var(--muted); font-size: 14px; margin: 12px 0 24px; }
.spatial-empty button { padding: 12px 22px; border: 0; border-radius: 10px; color: white; background: var(--accent); cursor: pointer; }
.spatial-site .team { border-top: 1px solid var(--line); }
.spatial-site .team h2 { font-size: 34px; }
.spatial-site .person { border-radius: 15px; overflow: hidden; }
.spatial-site .method { border-top: 1px solid var(--line); border-radius: 24px; padding: 64px 40px; }
.spatial-site .source-line { font-size: 10px; color: #68686e; }
.spatial-site .longze-methodology { margin-top: 64px; }
.spatial-site .longze-methodology > .section-shell { width: 100%; scroll-margin-top: calc(var(--header-height) + 72px); }
.spatial-site .longze-methodology .method-copy h2 { font-size: clamp(28px, 3.4vw, 46px); line-height: 1.35; }
/* Existing reveal masks crop elevation; the spatial surfaces use opacity only. */
.spatial-site .product-record.reveal, .spatial-site .category-heading.reveal,
.spatial-site .product-record .product-index, .spatial-site .product-record .product-summary > *,
.spatial-site .product-record .product-evidence { opacity: 1; transform: none; clip-path: none; filter: none; animation: none; }
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .spatial-site .product-evidence { transition: translate .5s cubic-bezier(.22,1,.36,1); }
  .spatial-site .product-record:hover .product-evidence { translate: 0 -3px; }
}
.spatial-site .product-record { transition: box-shadow .4s, translate .45s cubic-bezier(.22,1,.36,1); }
.spatial-site .product-record:nth-child(2n) { translate: 0 10px; }
.spatial-site .product-record:hover { translate: 0 -3px; }
@media (max-width: 1024px) {
  .spatial-site .section-shell, .spatial-site .spatial-hero { width: calc(100% - 48px); }
  .asset-sculpture { flex-basis: 288px; height: auto; margin-right: 4px; margin-left: 0; }
  .asset-sculpture .asset-tile { padding-inline: 12px; }
  .spatial-site .product-record { padding: 22px 20px; }
  .spatial-site .product-list { gap: 22px; }
  .spatial-site .product-metrics { gap: 8px; }
  .spatial-site .product-metrics-five { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .spatial-site .category-heading p { max-width: 44ch; }
}
@media (max-width: 767px) {
  .spatial-site { --header-height: 65px; }
  .spatial-site .site-header { height: 65px; display: flex; padding: 0 20px; gap: 16px; }
  .spatial-site .brand { gap: 9px; }
  .spatial-site .brand img { width: 128px; }
  .spatial-site .brand span { padding-left: 9px; font-size: 10px; }
  .spatial-site .site-header nav { width: auto; gap: 0; padding: 0; }
  .spatial-site .site-header nav a { display: none; }
  .spatial-site .site-header nav a[href="#team"] { display: block; white-space: nowrap; font-size: 11px; }
  .spatial-site .section-shell, .spatial-site .spatial-hero { width: calc(100% - 36px); }
  .spatial-site .spatial-hero { min-height: 0 !important; padding: 33px 2px 27px; }
  .spatial-hero .kicker { font-size: 9px; margin-bottom: 14px; letter-spacing: .04em; }
  .spatial-hero .kicker span { margin-inline: 5px; }
  .spatial-hero h1 { font-size: clamp(27px, 8.2vw, 36px); margin-bottom: 12px; }
  .spatial-intro { font-size: 11px; max-width: 30em; }
  .asset-sculpture { display: none; }
  .spatial-toolbar { top: 64px; margin-inline: -10px; padding: 10px 10px 12px; }
  .spatial-toolbar-top { display: block; }
  .spatial-site .view-switch { width: 100%; border-radius: 14px; }
  .spatial-site .view-switch button { font-size: 12px; min-height: 43px; padding-inline: 5px; }
  .spatial-total { display: none; }
  .spatial-filters { margin-top: 12px; gap: 4px; }
  .spatial-filters button { min-height: 40px; gap: 6px; font-size: 11px; padding: 8px 12px; }
  .spatial-filters .filter-name.has-short { display: none; }
  .spatial-filters .filter-short { display: inline; font: inherit; }
  .spatial-site .investor-gate { grid-template-columns: minmax(0, 1fr); grid-template-rows: auto 1fr; align-content: start; }
  .spatial-site .investor-gate-brand { min-height: 96px; padding: 20px 24px; }
  .spatial-site .investor-gate-brand img { width: 155px; }
  .spatial-site .investor-gate-content { align-self: start; width: 100%; padding: 28px 24px max(28px, env(safe-area-inset-bottom)); }
  .spatial-site .investor-gate-content h2 { font-size: clamp(25px, 7vw, 30px); line-height: 1.3; margin: 12px 0 18px; }
  .spatial-site .investor-gate-content > p { font-size: 14px; line-height: 1.8; margin-bottom: 22px; }
  .spatial-site .investor-gate-content ul { margin-bottom: 24px; }
  .spatial-site .investor-gate-content li { font-size: 13px; padding-block: 12px; }
  .spatial-site .investor-gate-content button { width: 100%; min-height: 48px; border-radius: 10px; }
  .spatial-result-bar { margin: 23px 2px 21px; }
  .spatial-result-bar p { font-size: 12px; }
  .spatial-result-bar > span { font-size: 10px; }
  .spatial-site .category-heading, .spatial-site .risk-view-group > header { padding-bottom: 16px; }
  .spatial-site .category-heading h2, .spatial-site .risk-view-group > header h3 { font-size: 20px; }
  .spatial-site .category-heading p { display: none; }
  .spatial-site .category-heading span { font-size: 9px; }
  .spatial-site .product-list, .spatial-site .risk-view-group > .product-list { grid-template-columns: minmax(0, 1fr); gap: 25px; }
  .spatial-site .product-record { padding: 22px 20px; border-radius: 21px; scroll-margin-top: 215px; }
  .spatial-site .product-record:nth-child(2n) { translate: none; }
  .spatial-site .product-record::after { border-radius: 21px; }
  .spatial-site .product-summary h3 { font-size: 23px; }
  .spatial-site .product-family { font-size: 11px; margin-bottom: 19px; }
  .spatial-site .product-evidence { padding: 18px 4px 10px; }
  .spatial-site .product-chart .mini-axis-label { font-size: 12px; }
  .spatial-site .product-chart .mini-axis-y { font-size: 11px; }
  .spatial-site .product-summary > p:last-of-type:not(.product-family) { font-size: 12px; }
  .spatial-site .product-metrics, .spatial-site .product-metrics-five { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px 12px; }
  .spatial-site .product-metrics-four { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .spatial-site .product-metrics strong, .spatial-site .product-metrics-five strong { font-size: 23px; }
  .spatial-site .product-metrics span { font-size: 10px; }
  .spatial-site .product-category { margin-bottom: 35px; }
  .spatial-site .products { padding-bottom: 48px; }
  .spatial-site .team, .spatial-site .method { padding-block: 52px; }
  .spatial-site .method { padding-inline: 22px; }
  .spatial-risk-note { font-size: 11px; }
}
@media (max-width: 360px) {
  .spatial-hero h1 { font-size: 26px; }
  .spatial-filters button { padding-inline: 9px; }
  .spatial-site .product-record { padding-inline: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  .spatial-site *, .spatial-site *::before, .spatial-site *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
  html { scroll-behavior: auto; }
}
@media (prefers-reduced-transparency: reduce) {
  .spatial-site .site-header { background: #fff; backdrop-filter: none; }
  .spatial-toolbar { background: var(--bg); backdrop-filter: none; }
}
