/* TOOO Web Design System v1.0.6. Component contracts from rules.json.
   Values live in tokens.json → tokens.css. Scope the root with .tooo-site. */
.tooo-site,
.tooo-site *,
.tooo-site *::before,
.tooo-site *::after { box-sizing: border-box; }
.tooo-site {
  margin: 0;
  color: var(--tc-color-ink);
  background: var(--tc-color-page);
  font-family: var(--tc-font-family);
  font-size: var(--tc-type-body-size);
  line-height: var(--tc-type-body-line-height);
  font-weight: var(--tc-type-body-weight);
  letter-spacing: var(--tc-font-tracking-base);
  font-synthesis: none;
  text-rendering: optimizeLegibility;
  overflow-wrap: break-word;
}
.tooo-site [hidden] { display: none !important; }
.tooo-site :where(h1, h2, h3, h4, p, figure, dl, dd) { margin: 0; }
.tooo-site :where(h1, h2, h3, h4) { overflow-wrap: anywhere; text-wrap: balance; }
.tooo-site :where(h1, h2, h3, h4):lang(en) { letter-spacing: var(--tc-font-tracking-english-heading); }
/* 窄屏避免末行只剩一两个字（含句号）。带 <br> 的大标题 balance 不起作用，改用 pretty。 */
.tooo-site :where(p, dd), .tooo-site .tc-display { text-wrap: pretty; }
.tooo-site .tc-product-lead { text-wrap: balance; }
.tooo-site :where(img, video) { display: block; max-inline-size: 100%; }
.tooo-site :where(button, input, select, textarea) { font: inherit; }
.tooo-site :where(button, a, summary, input, select, textarea, video):focus-visible {
  outline: var(--tc-stroke-focus) solid var(--tc-color-focus);
  outline-offset: var(--tc-stroke-focus-offset);
}
.tooo-site :where(a) { color: var(--tc-color-brand-text); text-underline-offset: 0.2em; }
.tooo-site :where(a:hover) { color: var(--tc-color-brand-text-hover); }
.tooo-site :where(a, button, summary) { -webkit-tap-highlight-color: transparent; }
.tooo-site :where(section[id], article[id], h2[id], h3[id]) { scroll-margin-block-start: var(--tc-space-24); }
.tooo-site .tc-container {
  inline-size: min(calc(100% - (var(--tc-layout-gutter) * 2)), var(--tc-layout-container-max));
  margin-inline: auto;
}
.tooo-site .tc-section { padding-block: calc(var(--tc-layout-section-gap) / 2); }
.tooo-site .tc-section + .tc-section { border-block-start: var(--tc-stroke-divider) solid var(--tc-color-border); }
.tooo-site .tc-section-heading { margin-block-end: var(--tc-space-32); }
.tooo-site .tc-section-heading > p { margin-block-start: var(--tc-space-12); max-inline-size: var(--tc-layout-document-body-max); }
.tooo-site .tc-section-heading--note {
  display: flex; flex-direction: var(--tc-heading-note-direction); flex-wrap: wrap; justify-content: space-between; align-items: baseline;
  gap: var(--tc-space-8) var(--tc-layout-grid-gap);
}
.tooo-site .tc-section-heading--note > p { margin-block-start: 0; }
.tooo-site .tc-stack { display: flex; flex-direction: column; gap: var(--tc-space-16); }
.tooo-site .tc-muted { color: var(--tc-color-muted); }
.tooo-site .tc-display {
  font-size: var(--tc-type-display-size); line-height: var(--tc-type-display-line-height); font-weight: var(--tc-type-display-weight);
}
.tooo-site .tc-product-title {
  font-size: var(--tc-type-product-title-size); line-height: var(--tc-type-product-title-line-height); font-weight: var(--tc-type-product-title-weight);
}
.tooo-site .tc-product-lead {
  font-size: var(--tc-type-product-lead-size); line-height: var(--tc-type-product-lead-line-height); font-weight: var(--tc-type-product-lead-weight);
}
.tooo-site .tc-section-title {
  font-size: var(--tc-type-section-size); line-height: var(--tc-type-section-line-height); font-weight: var(--tc-type-section-weight);
}
.tooo-site .tc-document-title {
  font-size: var(--tc-type-document-title-size); line-height: var(--tc-type-document-title-line-height); font-weight: var(--tc-type-document-title-weight);
}
.tooo-site .tc-subheading {
  font-size: var(--tc-type-subheading-size); line-height: var(--tc-type-subheading-line-height); font-weight: var(--tc-type-subheading-weight);
}
.tooo-site .tc-compact { font-size: var(--tc-type-compact-size); line-height: var(--tc-type-compact-line-height); }
.tooo-site .tc-caption, .tooo-site figcaption {
  font-size: var(--tc-type-caption-size); line-height: var(--tc-type-caption-line-height); color: var(--tc-color-muted);
}
.tooo-site .tc-eyebrow {
  font-size: var(--tc-type-caption-size); line-height: var(--tc-type-caption-line-height); font-weight: var(--tc-font-weight-500); color: var(--tc-color-brand-text);
}
.tooo-site .tc-skip-link {
  position: absolute; inset-inline-start: var(--tc-space-20); inset-block-start: var(--tc-space-12);
  padding: var(--tc-space-12) var(--tc-space-16); background: var(--tc-color-surface);
  min-block-size: var(--tc-control-min-target); transform: translateY(-200%); z-index: 10;
}
.tooo-site .tc-skip-link:focus { transform: none; }
.tooo-site .tc-header {
  position: relative; min-block-size: var(--tc-layout-header-height); border-block-end: var(--tc-stroke-divider) solid var(--tc-color-border);
}
.tooo-site .tc-header__inner {
  min-block-size: var(--tc-layout-header-height); display: flex; align-items: center; justify-content: space-between; gap: var(--tc-space-12);
}
.tooo-site .tc-brand {
  display: inline-flex; align-items: center; min-block-size: var(--tc-control-min-target); min-inline-size: 0; flex: 0 1 auto;
}
.tooo-site .tc-brand img { inline-size: var(--tc-layout-logo-width); min-inline-size: 0; block-size: auto; }
.tooo-site .tc-header__end { display: flex; align-items: center; gap: var(--tc-space-8); flex-shrink: 0; }
.tooo-site .tc-nav { display: var(--tc-inline-nav-display); align-items: center; flex-wrap: wrap; gap: var(--tc-space-8); }
.tooo-site .tc-nav a, .tooo-site .tc-menu a, .tooo-site .tc-toc a {
  display: flex; align-items: center; min-block-size: var(--tc-control-min-target); padding: var(--tc-space-8) var(--tc-space-12);
  color: var(--tc-color-ink); font-size: var(--tc-type-control-size); line-height: var(--tc-type-control-line-height); text-decoration: none;
}
.tooo-site .tc-nav a:hover, .tooo-site .tc-menu a:hover, .tooo-site .tc-toc a:hover { color: var(--tc-color-brand-text); text-decoration: underline; }
.tooo-site .tc-nav a[aria-current], .tooo-site .tc-toc a[aria-current] { color: var(--tc-color-brand-text); text-decoration: underline; }
/* Rideo 字标（1.0.4）：导航、菜单、小字说明里的 Rideo 换成图片。字标高度按所在位置的字号走 token */
.tooo-site .tc-nav a img { inline-size: auto; block-size: var(--tc-layout-nav-wordmark-height); }
/* 图片链接画不出文字下划线：悬停时在字标下缘画一条品牌色细线，代替文字链接悬停的颜色和下划线。
   盒子改为 content-box，字标本身的高度不变；下外边距取负，把内边距和线占的空间抵掉，链接的版面尺寸和字标位置都不动 */
.tooo-site :is(.tc-nav, .tc-menu__links) a:hover img {
  box-sizing: content-box; padding-block-end: var(--tc-space-4); border-block-end: var(--tc-stroke-divider) solid var(--tc-color-brand-text);
  margin-block-end: calc(-1 * (var(--tc-space-4) + var(--tc-stroke-divider)));
}
.tooo-site .tc-caption img { display: inline-block; inline-size: auto; block-size: var(--tc-layout-caption-wordmark-height); }
.tooo-site .tc-menu { display: var(--tc-compact-nav-display); }
.tooo-site .tc-menu summary {
  display: flex; align-items: center; justify-content: flex-end; cursor: pointer; list-style: none;
  min-block-size: var(--tc-control-min-target); min-inline-size: calc(var(--tc-space-48) + var(--tc-space-12));
  padding-block: var(--tc-space-8); padding-inline: var(--tc-space-8) 0;
  color: var(--tc-color-ink); font-size: var(--tc-type-control-size); line-height: var(--tc-type-control-line-height); font-weight: var(--tc-type-control-weight);
}
.tooo-site .tc-menu summary::-webkit-details-marker { display: none; }
.tooo-site .tc-menu:not([open]) .tc-menu__close, .tooo-site .tc-menu[open] .tc-menu__open { display: none; }
.tooo-site .tc-menu__links {
  position: absolute; inset-block-start: 100%; inset-inline: 0; z-index: 5; padding-inline: var(--tc-layout-gutter);
  background: var(--tc-color-page); border-block: var(--tc-stroke-divider) solid var(--tc-color-border);
  /* 面板向下至少铺满一屏，盖住后面的页面内容，不会露出下面的按钮；先写 vh 兜底，再用 dvh */
  min-block-size: 100vh; min-block-size: 100dvh;
}
/* 菜单打开时由 site.js 加上，锁住页面滚动，免得往下滑把面板滑走、露出后面的页面；无脚本时不锁 */
.tooo-site.tc-menu-lock { overflow: hidden; }
.tooo-site .tc-menu__links a {
  padding: var(--tc-space-16) 0; font-size: var(--tc-type-subheading-size); line-height: var(--tc-type-subheading-line-height); font-weight: var(--tc-font-weight-500);
  /* 字标那一行和文字行一样高：字号乘行高，加上下内边距 */
  min-block-size: calc(var(--tc-type-subheading-size) * var(--tc-type-subheading-line-height) + var(--tc-space-16) * 2);
}
.tooo-site .tc-menu__links a img { inline-size: auto; block-size: var(--tc-layout-menu-wordmark-height); }
.tooo-site .tc-menu__links a + a { border-block-start: var(--tc-stroke-divider) solid var(--tc-color-border); }
.tooo-site .tc-menu a[aria-current] { color: var(--tc-color-brand-text); }
.tooo-site .tc-lang { display: flex; align-items: center; }
.tooo-site .tc-lang > a, .tooo-site .tc-lang > [aria-current] {
  display: inline-flex; align-items: center; justify-content: center; white-space: nowrap;
  min-block-size: var(--tc-control-min-target); min-inline-size: var(--tc-control-min-target); padding-inline: var(--tc-space-8);
  font-size: var(--tc-type-control-size); line-height: var(--tc-type-control-line-height); font-weight: var(--tc-type-control-weight); text-decoration: none;
}
.tooo-site .tc-lang > [aria-current] { color: var(--tc-color-ink); font-weight: var(--tc-font-weight-600); }
.tooo-site .tc-lang > a:hover { text-decoration: underline; }
.tooo-site .tc-lang__sep { color: var(--tc-color-border-strong); pointer-events: none; }
.tooo-site .tc-split { display: grid; grid-template-columns: var(--tc-hero-columns); gap: var(--tc-layout-hero-gap); align-items: start; }
.tooo-site .tc-split > * { min-inline-size: 0; }
.tooo-site .tc-split__aside { padding-inline-start: var(--tc-split-inset); border-inline-start: var(--tc-split-rule); }
.tooo-site .tc-home-hero { max-inline-size: var(--tc-layout-document-body-max); }
.tooo-site .tc-home-hero .tc-display { margin-block: var(--tc-space-16) var(--tc-space-24); }
.tooo-site .tc-home-hero .tc-button { margin-block-start: var(--tc-space-24); }
.tooo-site .tc-button {
  display: inline-flex; align-items: center; justify-content: center; gap: var(--tc-space-8);
  inline-size: fit-content; max-inline-size: 100%; min-block-size: var(--tc-control-button-height);
  padding: var(--tc-space-12) var(--tc-control-button-padding-inline);
  color: var(--tc-color-inverse); background: var(--tc-color-ink);
  border: var(--tc-stroke-control) solid var(--tc-color-ink); border-radius: var(--tc-radius-button);
  font-size: var(--tc-type-control-size); line-height: var(--tc-type-control-line-height); font-weight: var(--tc-type-control-weight); text-align: center; text-decoration: none;
  transition: background-color var(--tc-motion-fast) var(--tc-motion-easing), border-color var(--tc-motion-fast) var(--tc-motion-easing);
}
.tooo-site .tc-button:hover { color: var(--tc-color-inverse); background: var(--tc-color-button-hover); border-color: var(--tc-color-button-hover); }
.tooo-site .tc-button:active:not(:disabled):not([aria-disabled="true"]) { transform: translateY(var(--tc-stroke-divider)); }
.tooo-site .tc-button--secondary { color: var(--tc-color-ink); background: transparent; border-color: var(--tc-color-border-strong); }
.tooo-site .tc-button--secondary:hover { color: var(--tc-color-ink); background: var(--tc-color-subtle); border-color: var(--tc-color-ink); }
.tooo-site .tc-button:disabled, .tooo-site .tc-button[aria-disabled="true"] { color: var(--tc-color-disabled-text); background: var(--tc-color-disabled-bg); border-color: var(--tc-color-disabled-bg); cursor: not-allowed; }
.tooo-site .tc-text-link { display: inline-flex; align-items: center; min-block-size: var(--tc-control-min-target); font-weight: var(--tc-font-weight-500); }
.tooo-site .tc-state { color: var(--tc-color-muted); font-size: var(--tc-type-caption-size); font-weight: var(--tc-font-weight-500); }
.tooo-site .tc-state--development { color: var(--tc-color-brand-text); }
.tooo-site .tc-works { display: grid; grid-template-columns: var(--tc-works-columns); gap: var(--tc-layout-grid-gap); align-items: start; }
.tooo-site .tc-work { min-inline-size: 0; }
.tooo-site .tc-work--portrait { inline-size: var(--tc-portrait-width); margin-inline: auto; }
.tooo-site .tc-work--full { grid-column: 1 / -1; }
.tooo-site .tc-media {
  position: relative; overflow: hidden; border-radius: var(--tc-radius-media); background: var(--tc-color-media); min-inline-size: 0;
}
.tooo-site .tc-media:focus-within { outline: var(--tc-stroke-focus) solid var(--tc-color-focus); outline-offset: var(--tc-stroke-focus-offset); }
.tooo-site .tc-media--landscape { aspect-ratio: var(--tc-media-landscape-ratio); }
.tooo-site .tc-media--card { aspect-ratio: var(--tc-media-card-ratio); }
.tooo-site .tc-media--eis { aspect-ratio: var(--tc-media-eis-display-ratio); }
.tooo-site .tc-media--eis-stacked { aspect-ratio: var(--tc-media-eis-stacked-ratio); }
.tooo-site .tc-eis--wide { display: var(--tc-eis-wide-display); }
.tooo-site .tc-eis--stacked { display: var(--tc-eis-stacked-display); }
.tooo-site .tc-media__tag {
  position: absolute; inset-block-start: var(--tc-space-12); inset-inline-start: var(--tc-space-12); pointer-events: none;
  padding: var(--tc-space-4) var(--tc-space-8); border-radius: var(--tc-radius-button);
  color: var(--tc-color-inverse); background: var(--tc-color-media); font-size: var(--tc-type-caption-size); line-height: var(--tc-type-caption-line-height);
}
/* 第二个标签的位置是视频内容里两个画面的接缝（并排 43.2%，竖叠 56.6%），不是版式数值。 */
.tooo-site .tc-eis--wide .tc-media__tag + .tc-media__tag { inset-inline-start: calc(43.2% + var(--tc-space-12)); }
.tooo-site .tc-eis--stacked .tc-media__tag + .tc-media__tag { inset-block-start: calc(56.6% + var(--tc-space-12)); }
.tooo-site .tc-media video, .tooo-site .tc-media > img {
  inline-size: 100%; block-size: 100%; object-fit: var(--tc-media-default-object-fit); background: var(--tc-color-media);
}
.tooo-site .tc-work figcaption, .tooo-site .tc-demo figcaption { margin-block-start: var(--tc-space-12); }
.tooo-site .tc-work__label {
  margin-block-end: var(--tc-space-12); color: var(--tc-color-ink);
  font-size: var(--tc-type-compact-size); line-height: var(--tc-type-compact-line-height); font-weight: var(--tc-font-weight-600);
}
.tooo-site .tc-caption-title { display: block; color: var(--tc-color-ink); font-weight: var(--tc-font-weight-500); margin-block-end: var(--tc-space-4); }
.tooo-site .tc-media-notice { margin-block-start: var(--tc-space-12); padding-inline-start: var(--tc-space-12); border-inline-start: var(--tc-stroke-focus) solid var(--tc-color-brand-text); font-size: var(--tc-type-caption-size); }
.tooo-site .tc-catalogue { display: grid; grid-template-columns: repeat(var(--tc-layout-columns), minmax(0, 1fr)); gap: var(--tc-layout-grid-gap); }
.tooo-site .tc-product-card { min-inline-size: 0; display: grid; grid-template-rows: subgrid; grid-row: span 2; row-gap: 0; }
.tooo-site .tc-product-card__visual { inline-size: 100%; }
.tooo-site .tc-product-card__frame { aspect-ratio: var(--tc-media-catalogue-frame-ratio); overflow: hidden; border-radius: var(--tc-radius-media); background: var(--tc-color-media); }
.tooo-site .tc-product-card__frame img { inline-size: 100%; block-size: 100%; object-fit: var(--tc-media-default-object-fit); }
.tooo-site .tc-product-card figcaption { margin-block-start: var(--tc-space-8); }
.tooo-site .tc-product-card__copy { display: flex; flex-direction: column; align-items: flex-start; flex: 1; inline-size: 100%; padding-block-start: var(--tc-space-20); }
.tooo-site .tc-product-card__copy h3 { margin-block-end: var(--tc-space-8); }
.tooo-site .tc-product-card__copy .tc-state { margin-block-end: var(--tc-space-12); }
.tooo-site .tc-product-card__copy > p { margin-block-end: var(--tc-space-16); }
.tooo-site .tc-product-card__copy > a { margin-block-start: auto; }
.tooo-site .tc-product-hero { display: grid; grid-template-columns: var(--tc-hero-columns); gap: var(--tc-layout-hero-gap); align-items: center; }
.tooo-site .tc-product-hero__copy { order: var(--tc-hero-copy-order); min-inline-size: 0; display: flex; flex-direction: column; align-items: flex-start; gap: var(--tc-space-16); }
.tooo-site .tc-product-hero__visual { order: var(--tc-hero-media-order); min-inline-size: 0; inline-size: 100%; }
.tooo-site .tc-product-hero__frame {
  inline-size: 100%; max-inline-size: var(--tc-layout-product-image-max-width); max-block-size: var(--tc-layout-product-image-max-height);
  margin-inline: auto; aspect-ratio: var(--tc-media-product-frame-ratio); overflow: hidden;
  background: var(--tc-color-media); border-radius: var(--tc-radius-media);
}
.tooo-site .tc-product-hero__frame img { inline-size: 100%; block-size: 100%; object-fit: var(--tc-media-default-object-fit); }
.tooo-site .tc-product-hero__visual figcaption { margin-block-start: var(--tc-space-12); }
.tooo-site .tc-product-hero .tc-button { margin-block-start: var(--tc-space-8); }
.tooo-site .tc-demo { margin-block-start: var(--tc-layout-section-gap); }
.tooo-site .tc-demo .tc-subheading { margin-block-end: var(--tc-space-20); }
.tooo-site .tc-feature-groups { display: grid; grid-template-columns: repeat(var(--tc-layout-columns), minmax(0, 1fr)); gap: var(--tc-layout-grid-gap); margin-block-start: var(--tc-space-32); }
.tooo-site .tc-feature-group { min-inline-size: 0; border-block-start: var(--tc-stroke-divider) solid var(--tc-color-border); padding-block-start: var(--tc-space-16); }
.tooo-site .tc-feature-group > p + p { margin-block-start: var(--tc-space-8); }
.tooo-site .tc-feature-group h3 { margin-block-end: var(--tc-space-8); font-size: var(--tc-type-compact-size); font-weight: var(--tc-font-weight-600); }
.tooo-site .tc-spec-section { margin-block-start: var(--tc-space-40); }
.tooo-site .tc-spec-section > p { margin-block: var(--tc-space-12) var(--tc-space-20); }
.tooo-site .tc-specs { border-block-start: var(--tc-stroke-divider) solid var(--tc-color-border); }
.tooo-site .tc-specs__row { display: grid; grid-template-columns: var(--tc-specs-columns); gap: var(--tc-space-4) var(--tc-space-16); padding-block: var(--tc-space-12); border-block-end: var(--tc-stroke-divider) solid var(--tc-color-border); }
.tooo-site .tc-specs dt { color: var(--tc-color-muted); }
.tooo-site .tc-specs dd { overflow-wrap: anywhere; }
.tooo-site .tc-specs dd > .tc-caption { display: block; margin-block-start: var(--tc-space-4); }
.tooo-site .tc-specs--stacked .tc-specs__row { grid-template-columns: minmax(0, 1fr); }
.tooo-site .tc-specs--stacked dt { color: var(--tc-color-ink); font-weight: var(--tc-font-weight-500); }
.tooo-site .tc-specs + .tc-text-link { margin-block-start: var(--tc-space-16); }
.tooo-site .tc-specs--record + .tc-specs--record { margin-block-start: var(--tc-space-24); }
.tooo-site .tc-specs--record > .tc-specs__row:first-child dd { font-weight: var(--tc-font-weight-600); }
.tooo-site .tc-details { border-block-start: var(--tc-stroke-divider) solid var(--tc-color-border); }
.tooo-site .tc-details:last-child { border-block-end: var(--tc-stroke-divider) solid var(--tc-color-border); }
.tooo-site .tc-details summary { cursor: pointer; min-block-size: var(--tc-control-min-target); padding-block: var(--tc-space-16); font-weight: var(--tc-font-weight-500); }
.tooo-site .tc-details__content { padding-block: var(--tc-space-8) var(--tc-space-24); }
.tooo-site .tc-details__content > * + * { margin-block-start: var(--tc-space-16); }
.tooo-site .tc-table-wrap { overflow-x: auto; max-inline-size: 100%; }
.tooo-site .tc-table { inline-size: 100%; border-collapse: collapse; text-align: start; font-size: var(--tc-type-compact-size); }
.tooo-site .tc-table th, .tooo-site .tc-table td { text-align: start; vertical-align: top; min-inline-size: var(--tc-layout-table-cell-min-width); padding: var(--tc-space-12); border-block-end: var(--tc-stroke-divider) solid var(--tc-color-border); }
.tooo-site .tc-table th { font-weight: var(--tc-font-weight-600); }
.tooo-site .tc-table thead { background: var(--tc-color-subtle); }
.tooo-site .tc-document-wrap { max-inline-size: var(--tc-layout-document-max); margin-inline: auto; }
.tooo-site .tc-document-header { margin-block-end: var(--tc-space-32); }
.tooo-site .tc-document-header > p { margin-block-start: var(--tc-space-12); }
.tooo-site .tc-document-shell { display: grid; grid-template-columns: var(--tc-document-columns); gap: var(--tc-layout-toc-gap); align-items: start; }
.tooo-site .tc-toc { min-inline-size: 0; position: var(--tc-toc-position); inset-block-start: var(--tc-space-24); }
.tooo-site .tc-toc :is(h2, h3) { margin-block-end: var(--tc-space-8); font-size: var(--tc-type-compact-size); font-weight: var(--tc-font-weight-600); }
.tooo-site .tc-toc ol { list-style: none; margin: 0; padding: 0; border-inline-start: var(--tc-stroke-divider) solid var(--tc-color-border); }
.tooo-site .tc-prose { min-inline-size: 0; max-inline-size: var(--tc-layout-document-body-max); overflow-wrap: anywhere; }
.tooo-site .tc-prose > * + * { margin-block-start: var(--tc-space-16); }
.tooo-site .tc-prose > :is(h2, h3) { margin-block-start: var(--tc-space-32); }
.tooo-site .tc-prose > :is(h2, h3):first-child { margin-block-start: 0; }
.tooo-site .tc-prose :where(ul, ol) { padding-inline-start: var(--tc-space-24); }
.tooo-site .tc-prose li + li { margin-block-start: var(--tc-space-8); }
.tooo-site .tc-prose code { white-space: normal; overflow-wrap: anywhere; font-size: 1em; }
.tooo-site .tc-footer { padding-block: var(--tc-layout-footer-padding); border-block-start: var(--tc-stroke-divider) solid var(--tc-color-border); }
.tooo-site .tc-footer__inner { display: flex; justify-content: space-between; align-items: flex-start; flex-wrap: wrap; gap: var(--tc-space-24); }
.tooo-site .tc-footer__brand { max-inline-size: var(--tc-layout-document-body-max); }
.tooo-site .tc-footer__links { display: flex; flex-wrap: wrap; gap: var(--tc-space-8) 0; margin-inline: calc(var(--tc-space-8) * -1); }
.tooo-site .tc-footer__links a { display: inline-flex; align-items: center; min-block-size: var(--tc-control-min-target); min-inline-size: var(--tc-control-min-target); padding-inline: var(--tc-space-8); font-size: var(--tc-type-caption-size); }
.tooo-site .tc-footer__legal { margin-block-start: var(--tc-space-16); }
.tooo-site .tc-breadcrumb ol { display: flex; flex-wrap: wrap; align-items: center; margin: 0 0 0 calc(var(--tc-space-8) * -1); padding: 0; list-style: none; }
.tooo-site .tc-breadcrumb li {
  display: flex; align-items: center; min-block-size: var(--tc-control-min-target);
  color: var(--tc-color-ink); font-size: var(--tc-type-caption-size); line-height: var(--tc-type-caption-line-height);
}
.tooo-site .tc-breadcrumb li + li::before { content: "/"; margin-inline-end: var(--tc-space-8); color: var(--tc-color-muted); }
.tooo-site .tc-breadcrumb a { display: inline-flex; align-items: center; min-block-size: var(--tc-control-min-target); min-inline-size: var(--tc-control-min-target); padding-inline: var(--tc-space-8); }
.tooo-site .tc-nb { white-space: nowrap; }
@media (prefers-reduced-motion: reduce) {
  .tooo-site *, .tooo-site *::before, .tooo-site *::after { scroll-behavior: auto !important; animation: none !important; transition-duration: var(--tc-motion-reduced-motion-duration) !important; }
}
