/* Rikka public site · framework */
body { overflow-x: clip; background: var(--sf-page); }
.site-skip { position: fixed; top: var(--sf-space-3); left: var(--sf-space-3); z-index: 100; padding: var(--sf-space-2) var(--sf-space-3); border-radius: var(--sf-radius-sm); background: var(--sf-text); color: var(--sf-surface); font-size: var(--sf-body-sm); font-weight: 700; text-decoration: none; transform: translateY(-200%); }
.site-skip:focus { transform: translateY(0); }

.site-header { z-index: 40; }
.site-menu-button { font-size: var(--sf-body-sm); }
.site-menu-button > span:first-child { width: 1rem; height: 0.75rem; border-block: 1px solid currentColor; position: relative; }
.site-menu-button > span:first-child::after { position: absolute; top: 50%; right: 0; left: 0; height: 1px; background: currentColor; content: ""; }
.site-mobile-nav { display: none; }

.translation-notice { display: grid; width: min(100% - 2 * var(--sf-gutter), var(--sf-page-max)); grid-template-columns: auto minmax(0, 1fr); gap: var(--sf-space-4); margin: var(--sf-space-5) auto 0; padding: var(--sf-space-4) var(--sf-space-5); border-left: 2px solid var(--sf-brand); background: var(--sf-brand-soft); color: var(--sf-text-secondary); font-size: var(--sf-body-sm); }
.translation-notice strong { color: var(--sf-brand-hover); }

.site-kicker {
  margin: 0 0 var(--sf-space-4);
  color: var(--sf-brand-hover);
  font-family: var(--sf-font-mono);
  font-size: var(--sf-caption);
  font-weight: 700;
  letter-spacing: var(--sf-tracking-label);
  text-transform: uppercase;
}

.home-hero {
  display: flex;
  width: min(100%, var(--sf-page-max));
  margin: 0 auto;
  padding: var(--sf-space-20) var(--sf-gutter);
}
.home-hero__intro { display: flex; align-items: center; flex-wrap: wrap; gap: var(--sf-space-2); }
.home-hero__about-link { display: inline-flex; align-items: center; gap: var(--sf-space-1); margin-left: 0; padding: 2px 9px; border: 1px solid #475467; border-radius: 999px; background: #475467; color: #fff; font-size: 12px; font-weight: 400; line-height: 1.5; letter-spacing: normal; text-transform: none; text-decoration: none; white-space: nowrap; vertical-align: middle; }
.home-hero__about-link:hover { border-color: #344054; background: #344054; color: #fff; }
.home-hero__about-link:focus-visible { outline: 2px solid var(--sf-brand); outline-offset: 3px; }
.home-hero__copy { width: 100%; min-width: 0; position: relative; z-index: 1; }
.home-hero h1 { max-width: 100%; margin: 0; font-size: clamp(2.25rem, 4vw, 3rem); line-height: var(--sf-leading-display); letter-spacing: var(--sf-tracking-display); white-space: nowrap; }
html:lang(en) .home-hero h1 { white-space: normal; }
.home-hero__intelligence { max-width: 62rem; margin-top: var(--sf-space-6); }
.home-hero__intelligence p { margin: 0; color: var(--sf-text-secondary); font-size: var(--sf-body-md); }
.home-hero__intelligence .home-hero__intelligence-title { margin-bottom: var(--sf-space-3); color: var(--sf-text); font-size: 1.25rem; }
.home-hero__intelligence .sf-action-link { margin-top: var(--sf-space-3); font-size: var(--sf-body-md); }
.home-hero__heading { display: flex; align-items: flex-start; gap: var(--sf-space-5); }
.home-hero__heading h1 { flex: 1; min-width: 0; white-space: normal; }
.home-hero__reading-note { position: relative; flex: none; margin-top: .4rem; }
.home-hero__reading-note summary { padding: var(--sf-space-2) 0; color: var(--sf-brand); font-size: 12px; line-height: 1.5; cursor: pointer; list-style: none; white-space: nowrap; }
.home-hero__reading-note summary::-webkit-details-marker { display: none; }
.home-hero__reading-note summary:focus-visible { outline: 2px solid var(--sf-brand); outline-offset: 4px; }
.home-hero__reading-note-body { position: absolute; top: 100%; right: 0; z-index: 5; width: min(22rem, calc(100vw - 2 * var(--sf-gutter))); padding: var(--sf-space-4); border: 1px solid var(--sf-border); border-radius: var(--sf-radius-sm); background: var(--sf-surface); box-shadow: 0 8px 24px rgb(0 0 0 / .08); color: var(--sf-text-secondary); font-size: 14px; line-height: var(--sf-leading-compact); }
.home-hero__reading-note-body strong { display: block; color: var(--sf-text); }
.home-hero__reading-note-body p { margin: var(--sf-space-2) 0 0; }
@media (max-width: 52rem) {
  .home-hero__heading { flex-direction: column; gap: var(--sf-space-2); }
  .home-hero__reading-note { order: -1; align-self: flex-end; margin-top: 0; }
}
.home-hero__questions { display: grid; max-width: 62rem; gap: var(--sf-space-3); margin: var(--sf-space-5) 0 0; padding: 0; border: 0; }
.home-hero__questions p { margin: 0; color: var(--sf-text-secondary); font-size: var(--sf-body-md); }
.home-hero__theory { max-width: 62rem; margin: var(--sf-space-5) 0 0; color: var(--sf-text-secondary); font-size: var(--sf-body-md); }
.home-hero__focus { max-width: 62rem; margin: var(--sf-space-5) 0 0; color: var(--sf-text-secondary); font-size: var(--sf-body-md); }
.home-hero__actions { display: flex; flex-wrap: wrap; gap: var(--sf-space-3); margin-top: var(--sf-space-6); }
.home-foundation-cards { margin-top: var(--sf-space-8); }
.home-foundation-card__label { margin: 0; color: var(--sf-text-muted); font-family: var(--sf-font-mono); font-size: var(--sf-caption); font-weight: 700; letter-spacing: var(--sf-tracking-label); }
.home-foundation-card__description { margin: var(--sf-space-4) 0 0; color: var(--sf-text-secondary); font-size: var(--sf-body-sm); }
.home-foundation-theories { display: grid; margin-top: var(--sf-space-6); }
.home-foundation-theories a { display: grid; gap: var(--sf-space-2); padding: var(--sf-space-5) 0; color: var(--sf-text); text-decoration: none; }
.home-foundation-theories a:first-child { padding-top: 0; }
.home-foundation-theories a + a { border-top: 1px solid var(--sf-border); }
.home-foundation-theories a:hover strong { color: var(--sf-brand-hover); }
.home-foundation-theories strong { font-size: var(--sf-body-lg); line-height: var(--sf-leading-heading); }
.home-foundation-theories span { color: var(--sf-text-secondary); font-size: var(--sf-body-sm); }
.home-foundation-card--proposition h2 { margin: var(--sf-space-6) 0 0; font-size: var(--sf-body-lg); line-height: var(--sf-leading-heading); }
.home-foundation-card--proposition > p:not(.home-foundation-card__label) { margin: var(--sf-space-4) 0 0; color: var(--sf-text-secondary); font-size: var(--sf-body-sm); }
.home-foundation-card--proposition .home-foundation-card__thesis { color: var(--sf-text); }
.home-foundation-card .home-foundation-card__reading { margin-top: auto; padding-top: var(--sf-space-6); }
.home-foundation-applications { display: grid; gap: var(--sf-space-5); margin-top: var(--sf-space-6); }
.home-foundation-applications > div { display: flex; min-height: var(--sf-nav-item-height); flex-wrap: wrap; gap: var(--sf-space-2); align-items: flex-start; color: var(--sf-text-secondary); font-size: var(--sf-body-lg); }
.home-foundation-applications a { display: inline-flex; min-height: var(--sf-nav-item-height); align-items: flex-start; color: var(--sf-text); font-weight: 700; text-decoration-color: var(--sf-border-strong); text-underline-offset: .25em; }
.home-foundation-applications a:hover { color: var(--sf-brand-hover); text-decoration-color: currentColor; }
.home-foundation-applications__separator { color: var(--sf-text-muted); }
.home-hero__overview { display: grid; margin: var(--sf-space-8) 0 0; border-top: 1px solid var(--sf-border); }
.home-hero__overview > div { display: grid; min-height: 3.25rem; grid-template-columns: 10rem minmax(0, 1fr); align-items: center; border-bottom: 1px solid var(--sf-border); }
.home-hero__overview dt { color: var(--sf-text-muted); font-family: var(--sf-font-mono); font-size: var(--sf-caption); font-weight: 700; letter-spacing: var(--sf-tracking-label); }
.home-hero__overview dd { margin: 0; color: var(--sf-text-secondary); font-size: var(--sf-body-sm); }
.home-hero__overview a { display: inline-flex; min-height: var(--sf-nav-item-height); align-items: center; color: var(--sf-text); font-weight: 700; text-decoration-color: var(--sf-border-strong); text-underline-offset: .25em; }
.home-hero__overview a:hover { color: var(--sf-brand-hover); text-decoration-color: currentColor; }
.home-overview-link--disabled { display: inline-flex; min-height: var(--sf-nav-item-height); align-items: center; color: var(--sf-text-muted); font-weight: 700; }
.home-section {
  padding: var(--sf-space-20) var(--sf-gutter);
  border-top: 1px solid var(--sf-border);
}
.home-section > * { width: min(100%, var(--sf-page-max)); margin-inline: auto; }
.home-section__heading { display: grid; grid-template-columns: minmax(0, 1fr) minmax(18rem, .75fr); gap: var(--sf-space-12); align-items: end; margin-bottom: var(--sf-space-12); }
.home-section__heading h2 { margin: 0; font-size: var(--sf-heading-2); line-height: var(--sf-leading-heading); letter-spacing: var(--sf-tracking-display); }
.home-section__heading > p { margin: 0; color: var(--sf-text-secondary); font-size: var(--sf-body-md); }
.home-propositions { background: var(--sf-surface); }
html:lang(zh-CN) .home-propositions .home-section__heading { grid-template-columns: 1fr; }
html:lang(zh-CN) .home-propositions .home-section__heading h2 { max-width: none; font-size: var(--sf-heading-2); white-space: nowrap; }
.home-thinking { border-top: 1px solid var(--sf-border-strong); }
.home-thinking__header, .home-thinking__row { display: grid; grid-template-columns: minmax(0, .92fr) minmax(0, 1.48fr) minmax(0, .72fr); column-gap: var(--sf-space-10); }
.home-thinking__header { padding: var(--sf-space-4) 0; border-bottom: 1px solid var(--sf-border); color: var(--sf-text-muted); font-family: var(--sf-font-mono); font-size: var(--sf-caption); font-weight: 700; letter-spacing: var(--sf-tracking-label); }
.home-thinking__header span:last-child { color: var(--sf-brand-hover); }
.home-thinking__row { align-items: center; padding: var(--sf-space-10) 0; border-bottom: 1px solid var(--sf-border); }
.home-thinking__question h3 { margin: 0; color: var(--sf-text); font-size: var(--sf-body-md); line-height: var(--sf-leading-body); }
.home-thinking__question-link { color: var(--sf-brand-hover); text-decoration: none; }
.home-thinking__question-link:hover { color: var(--sf-brand); text-decoration: underline; text-underline-offset: .22em; }
.home-thinking__reflection p { margin: 0; color: var(--sf-text-secondary); font-size: var(--sf-body-sm); line-height: var(--sf-leading-body); }
.home-thinking__reading { display: grid; gap: var(--sf-space-1); }
.home-thinking__reading .sf-action-link { width: fit-content; max-width: 100%; min-height: 0; padding-block: 0; }
.home-thinking__cell-label { display: none; color: var(--sf-text-muted); font-family: var(--sf-font-mono); font-size: var(--sf-caption); font-weight: 700; letter-spacing: var(--sf-tracking-label); }
.home-digitalization { background: var(--sf-page); }
.home-digitalization .home-section__heading { grid-template-columns: 1fr; }
.home-digitalization__subtitle { margin: var(--sf-space-4) 0 0; color: var(--sf-text-secondary); font-size: var(--sf-body-lg); font-weight: 700; }
.home-digitalization__content { margin-inline: auto; }
.home-digitalization__content > p { max-width: 62rem; margin: var(--sf-space-4) 0 0; color: var(--sf-text-secondary); font-size: var(--sf-body-md); }
.home-digitalization__content > p:first-child { margin-top: 0; }
.home-digitalization__content strong { color: var(--sf-text); font-size: inherit; }
.home-digitalization__reading { max-width: 62rem; margin-top: var(--sf-space-5); }
.home-digitalization__framework { margin-top: var(--sf-space-16); }
.home-framework__heading { display: grid; grid-template-columns: minmax(0, 1fr) minmax(18rem, .75fr); gap: var(--sf-space-12); align-items: start; padding-top: var(--sf-space-8); border-top: 1px solid var(--sf-border-strong); }
.home-framework__heading h3 { margin: 0; font-size: var(--sf-heading-3); line-height: var(--sf-leading-heading); letter-spacing: var(--sf-tracking-display); }
.home-framework__context { display: grid; gap: var(--sf-space-2); align-items: start; }
.home-framework__context p { margin: 0; color: var(--sf-text-muted); font-size: var(--sf-body-sm); }
.home-framework__context .sf-action-link { width: fit-content; }
.home-framework__grid { margin-top: var(--sf-space-8); }
.home-framework-card__label { display: flex; gap: var(--sf-space-3); margin: 0; color: var(--sf-text-muted); font-family: var(--sf-font-mono); font-size: var(--sf-caption); font-weight: 700; letter-spacing: var(--sf-tracking-label); }
.home-framework-card__label span:first-child { color: var(--sf-brand-hover); }
.home-framework-card h4 { margin: var(--sf-space-8) 0 var(--sf-space-3); font-size: var(--sf-heading-5); line-height: var(--sf-leading-heading); }
.home-framework-card > p:not(.home-framework-card__label) { margin: 0; color: var(--sf-text-secondary); font-size: var(--sf-body-sm); }
.home-framework-card > .home-framework-card__paragraph + .home-framework-card__paragraph { margin-top: var(--sf-space-3); }
.home-framework-card__paragraph strong { color: var(--sf-text); font-size: inherit; }
.home-framework-card .home-framework-links { margin-top: var(--sf-space-5); padding-top: 0; }
.home-framework-conclusion { --sf-conclusion-label-min: 16rem; }
.home-framework-conclusion > div:last-child { display: flex; flex-direction: column; }
.home-framework-conclusion .home-framework-links { margin-top: var(--sf-space-5); }
/* These full-width outcomes integrate the four layers; they are not extra layers. */
.home-framework-conclusion--enterprise { grid-template-columns:minmax(0,1fr); gap:16px; }
.home-framework-conclusion--enterprise .sf-conclusion-block__title { font-size:20px; line-height:1.5; }
.home-framework-conclusion--enterprise .sf-conclusion-block__body { font-size:16px; }
.home-framework-conclusion--industry { border:0; background:var(--sf-surface); padding-block:24px; }
.home-framework-conclusion--industry .sf-conclusion-block__title { font-size:20px; line-height:1.5; font-weight:600; }
.home-framework-conclusion .sf-further-reading__items { padding-top:var(--sf-space-2); gap:var(--sf-space-1); }
.home-framework-conclusion .sf-action-link { min-height:0; padding-block:0; }
.home-digitalization__topics { margin-top: var(--sf-space-16); }
.home-digitalization__topics > .site-kicker { margin-bottom: 0; }
.home-digitalization__topics .home-hero__overview { margin-top: var(--sf-space-5); }
.home-casework { background: var(--sf-page); }
.home-casework .home-section__heading { grid-template-columns: 1fr; }
.home-casework .home-section__heading h2 { max-width: none; }
html:lang(zh-CN) .home-casework .home-section__heading h2 { font-size: clamp(1.75rem, 3.15vw, var(--sf-heading-2)); white-space: nowrap; }
.home-casework__list { display: grid; gap: var(--sf-space-8); }
.home-case-card { overflow: hidden; border: 1px solid var(--sf-border-strong); border-radius: var(--sf-radius-md); background: var(--sf-surface); }
.home-case-card > header { padding: var(--sf-space-8); border-bottom: 1px solid var(--sf-border); background: var(--sf-surface); }
.home-case-card > header h3 { margin: 0; font-size: var(--sf-body-lg); line-height: var(--sf-leading-body); letter-spacing: normal; }
.home-case-card__body { display: grid; gap: var(--sf-space-8); padding: var(--sf-space-8); background: var(--sf-surface); }
.home-case-card__body > p { max-width: 58rem; margin: 0; color: var(--sf-text-secondary); font-size: var(--sf-body-md); }
.home-case-card__action { justify-self: start; }

.section-shell {
  display: grid;
  width: min(100%, var(--sf-page-max));
  min-height: calc(100vh - var(--sf-header-height));
  grid-template-columns: var(--sf-sidebar-width) minmax(0, 1fr);
  margin: 0 auto;
}
.local-nav { position: sticky; top: var(--sf-header-height); align-self: start; min-height: calc(100vh - var(--sf-header-height)); }
.local-nav__body { padding: var(--sf-space-8) var(--sf-space-5); }
.local-nav__children { margin: 0 0 var(--sf-space-2) var(--sf-space-3); padding-left: var(--sf-space-2); border-left: 1px solid var(--sf-border-strong); }
.local-nav__children .sf-sidebar__item { font-size: 13px; font-weight: 400; line-height: var(--sf-leading-compact); }
.local-nav__children .sf-sidebar__item[aria-current="page"] { font-weight: 600; }
.section-main { min-width: 0; padding: var(--sf-space-10) var(--sf-gutter) var(--sf-space-20); }
.breadcrumb { display: flex; flex-wrap: wrap; gap: var(--sf-space-2); align-items: center; margin-bottom: var(--sf-space-12); color: var(--sf-text-muted); font-size: var(--sf-body-sm); }
.breadcrumb a { text-decoration: none; }
.breadcrumb a:hover { color: var(--sf-brand-hover); }
.section-heading, .item-heading { max-width: var(--sf-reading-max); }
.section-heading h1, .item-heading h1 { margin: 0; font-size: var(--sf-heading-1); line-height: var(--sf-leading-display); letter-spacing: var(--sf-tracking-display); }
.item-title__subtitle { display: block; margin-top: var(--sf-space-3); color: var(--sf-text-secondary); font-size: var(--sf-heading-3); line-height: var(--sf-leading-heading); letter-spacing: normal; }
.section-heading > p:last-child, .item-heading > p:last-child { margin: var(--sf-space-5) 0 0; color: var(--sf-text-secondary); font-size: var(--sf-body-lg); }
.section-notice { display: grid; max-width: var(--sf-reading-max); grid-template-columns: auto 1fr; gap: var(--sf-space-4); align-items: start; margin-top: var(--sf-space-8); padding: var(--sf-space-4) var(--sf-space-5); border-left: 2px solid var(--sf-brand); background: var(--sf-brand-soft); }
.section-notice span { color: var(--sf-brand-hover); font-family: var(--sf-font-mono); font-size: var(--sf-caption); font-weight: 700; letter-spacing: var(--sf-tracking-label); text-transform: uppercase; }
.section-notice p { margin: 0; color: var(--sf-text-secondary); font-size: var(--sf-body-sm); line-height: var(--sf-leading-compact); }
.section-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sf-space-5); margin-top: var(--sf-space-12); }
.section-card { position: relative; min-height: 15rem; padding: var(--sf-space-6); border: 1px solid var(--sf-border); border-radius: var(--sf-radius-md); background: var(--sf-surface); color: var(--sf-text); text-decoration: none; transition: border-color var(--sf-duration-fast), transform var(--sf-duration-fast); }
.section-card:hover { border-color: var(--sf-brand); transform: translateY(-2px); }
.section-card__index { color: var(--sf-text-muted); font-family: var(--sf-font-mono); font-size: var(--sf-caption); }
.section-card h2 { margin: var(--sf-space-8) 0 var(--sf-space-3); font-size: var(--sf-heading-4); line-height: var(--sf-leading-heading); }
.section-card p { max-width: 34rem; margin: 0; color: var(--sf-text-secondary); font-size: var(--sf-body-sm); }
.section-card__arrow { position: absolute; top: var(--sf-space-6); right: var(--sf-space-6); color: var(--sf-brand); font-family: var(--sf-font-mono); }
.section-card small { position: absolute; right: var(--sf-space-6); bottom: var(--sf-space-6); color: var(--sf-text-muted); font-family: var(--sf-font-mono); font-size: var(--sf-caption); }

.research-intro { max-width: 64rem; }
.research-intro__question { max-width: 55rem; margin: 0; color: var(--sf-text); font-size: var(--sf-body-md); line-height: var(--sf-leading-body); }
.research-intro > p:not(.research-intro__question) { max-width: 55rem; margin: var(--sf-space-4) 0 0; color: var(--sf-text-secondary); font-size: var(--sf-body-md); line-height: var(--sf-leading-body); }
.research-intro > p strong { color: var(--sf-text); font-size: inherit; }
.research-intro__links { display: flex; flex-wrap: wrap; gap: var(--sf-space-2) var(--sf-space-6); margin-top: var(--sf-space-4); }
.research-groups { margin-top: var(--sf-space-16); }
.research-group { min-width: 0; }
.research-group + .research-group { margin-top: var(--sf-space-20); padding-top: var(--sf-space-12); border-top: 1px solid var(--sf-border); }
.research-group__heading .site-kicker { margin-bottom: var(--sf-space-4); }
.research-group__heading > p:last-child:not(.site-kicker) { max-width: 44rem; margin: 0; color: var(--sf-text-secondary); font-size: var(--sf-body-md); line-height: var(--sf-leading-body); }
.research-frameworks { display: grid; max-width: 64rem; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--sf-space-8); margin-top: var(--sf-space-10); }
.research-framework-card { position: relative; min-height: 12rem; padding-right: var(--sf-space-10); color: var(--sf-text); text-decoration: none; transition: border-color var(--sf-duration-fast), transform var(--sf-duration-fast); }
.research-framework-card:hover { border-color: var(--sf-brand); transform: translateY(-2px); }
.research-framework-card:hover h3 { color: var(--sf-brand-hover); }
.research-framework-card__role { display: block; padding-right: var(--sf-space-8); color: var(--sf-text-muted); font-family: var(--sf-font-mono); font-size: var(--sf-caption); font-weight: 700; letter-spacing: var(--sf-tracking-label); }
.research-framework-card h3 { margin: var(--sf-space-6) 0 var(--sf-space-3); font-size: var(--sf-heading-4); line-height: var(--sf-leading-heading); white-space: pre-line; transition: color var(--sf-duration-fast); }
.research-framework-card p { margin: 0; color: var(--sf-text-secondary); font-size: var(--sf-body-sm); line-height: var(--sf-leading-body); }
.research-framework-card__arrow { position: absolute; top: var(--sf-space-6); right: var(--sf-space-6); color: var(--sf-brand); font-family: var(--sf-font-mono); }
.research-framework-explanation { max-width: 64rem; margin: var(--sf-space-10) 0 0; color: var(--sf-text-secondary); font-size: var(--sf-body-md); line-height: 1.8; }
.research-framework-explanation strong { color: var(--sf-text); font-size: inherit; }
.research-direction-table-wrap { max-width: 64rem; margin-top: var(--sf-space-6); overflow-x: auto; }
.research-direction-table { width: 100%; min-width: 42rem; border-collapse: collapse; text-align: left; }
.research-direction-table th, .research-direction-table td { padding: var(--sf-space-5) var(--sf-space-4); border-bottom: 1px solid var(--sf-border); vertical-align: top; }
.research-direction-table thead th { padding-top: 0; color: var(--sf-text-muted); font-family: var(--sf-font-mono); font-size: var(--sf-caption); font-weight: 700; letter-spacing: var(--sf-tracking-label); }
.research-direction-table thead th:first-child { width: 11rem; }
.research-direction-table tbody th { color: var(--sf-text); font-size: var(--sf-body-sm); line-height: var(--sf-leading-body); }
.research-direction-table tbody td { color: var(--sf-text-secondary); font-size: var(--sf-body-sm); line-height: var(--sf-leading-body); }

.section-heading--writing { max-width: 58rem; }
.writing-page { width: min(100%, var(--sf-page-max)); min-height: calc(100vh - var(--sf-header-height)); margin: 0 auto; padding: var(--sf-space-10) var(--sf-gutter) var(--sf-space-20); }
.writing-page__inner { width: min(100%, 58rem); margin: 0 auto; }
.article-list { display: grid; max-width: 58rem; gap: var(--sf-space-5); margin-top: var(--sf-space-12); }
.article-card { position: relative; padding: var(--sf-space-8); border: 1px solid var(--sf-border); border-radius: var(--sf-radius-md); background: var(--sf-surface); color: var(--sf-text); transition: border-color var(--sf-duration-fast), transform var(--sf-duration-fast); }
.article-card:hover { border-color: var(--sf-brand); transform: translateY(-2px); }
.article-card__tags { display: flex; flex-wrap: wrap; gap: var(--sf-space-2); }
.article-card h2 { max-width: 46rem; margin: var(--sf-space-8) 0 var(--sf-space-3); font-size: var(--sf-heading-4); line-height: var(--sf-leading-heading); }
.article-card__title-link { color: var(--sf-text); text-decoration: none; }
.article-card__title-link:hover { color: var(--sf-brand-hover); }
.article-card > p { max-width: 42rem; margin: 0; color: var(--sf-text-secondary); font-size: var(--sf-body-md); line-height: var(--sf-leading-body); }
.article-card__footer { display: flex; align-items: end; gap: var(--sf-space-5); margin-top: var(--sf-space-8); padding-top: var(--sf-space-5); border-top: 1px solid var(--sf-border); }
.article-timestamps { display: flex; flex: 1; flex-wrap: wrap; gap: var(--sf-space-3) var(--sf-space-6); margin: 0; }
.article-timestamps > div { display: flex; align-items: baseline; gap: var(--sf-space-2); }
.article-timestamps dt { color: var(--sf-text-muted); font-family: var(--sf-font-mono); font-size: var(--sf-caption); font-weight: 700; }
.article-timestamps dd { margin: 0; color: var(--sf-text-secondary); font-family: var(--sf-font-mono); font-size: var(--sf-caption); }
.article-timestamps a { color: var(--sf-brand-hover); text-decoration: none; }
.article-timestamps a:hover { text-decoration: underline; text-underline-offset: .22em; }
.article-card__arrow { display: inline-grid; min-width: var(--sf-nav-item-height); min-height: var(--sf-nav-item-height); flex: none; place-items: center; color: var(--sf-brand-hover); font-family: var(--sf-font-mono); font-size: var(--sf-body-lg); text-decoration: none; }
.article-heading { max-width: 58rem; padding-bottom: var(--sf-space-10); border-bottom: 1px solid var(--sf-border-strong); }
.article-heading__meta { display: grid; gap: var(--sf-space-5); margin-top: var(--sf-space-8); }
.article-heading__meta--status { display: flex; flex-wrap: wrap; gap: var(--sf-space-3) var(--sf-space-6); align-items: center; }
.article-body { width: min(100%, var(--sf-reading-max)); margin: 0 auto; padding-top: var(--sf-space-12); }
.article-body h2 { margin: var(--sf-space-16) 0 var(--sf-space-6); font-size: var(--sf-heading-3); line-height: var(--sf-leading-heading); letter-spacing: var(--sf-tracking-display); }
.article-body h2:first-child { margin-top: 0; }
.article-body p { margin: var(--sf-space-5) 0 0; color: var(--sf-text-secondary); font-size: var(--sf-body-md); line-height: 1.85; }
.article-body strong { color: var(--sf-text); font-size: inherit; }
.article-body hr { margin: var(--sf-space-10) 0; border: 0; border-top: 1px solid var(--sf-border); }
.article-body .sf-quote { margin-top: var(--sf-space-8); color: var(--sf-text); font-size: var(--sf-body-lg); font-weight: 700; }
.article-body ul { margin: var(--sf-space-6) 0 0; padding-left: 1.35rem; color: var(--sf-text-secondary); font-size: var(--sf-body-md); line-height: 1.85; }
.article-body li + li { margin-top: var(--sf-space-4); }
.article-body .article-figure { margin: var(--sf-space-10) 0; }
.article-body .article-image { display: block; width: 100%; height: auto; border: 1px solid var(--sf-border); border-radius: 12px; }
.article-table-wrap { margin-top: var(--sf-space-8); overflow-x: auto; }
.article-table { width: 100%; border-collapse: collapse; color: var(--sf-text-secondary); font-size: var(--sf-body-sm); line-height: var(--sf-leading-body); }
.article-table th, .article-table td { padding: var(--sf-space-4); border-bottom: 1px solid var(--sf-border); text-align: left; vertical-align: top; }
.article-table th { color: var(--sf-text); font-weight: 700; }
.article-table th:first-child, .article-table td:first-child { width: 28%; }
.article-appendix { margin-top: var(--sf-space-20); padding-top: var(--sf-space-10); border-top: 1px solid var(--sf-border-strong); }
.article-appendix > h2 { margin-top: 0; }
.article-body .article-appendix__label { color: var(--sf-brand-hover); font-family: var(--sf-font-mono); font-size: var(--sf-caption); font-weight: 700; letter-spacing: var(--sf-tracking-label); line-height: var(--sf-leading-compact); }
.article-appendix-list { display: grid; gap: var(--sf-space-6); margin: var(--sf-space-3) 0 0; padding: 0; list-style: none; }
.article-appendix-list__title { display: inline-block; font-size: var(--sf-body-md); line-height: var(--sf-leading-body); }
.article-appendix-list__title--disabled { color: var(--sf-text-muted); cursor: default; }
.article-related-content__groups { display: grid; gap: var(--sf-space-6); }
.article-related-content__group { display: grid; align-content: start; }
.article-version-list__title { display: inline-block; font-size: var(--sf-body-md); line-height: var(--sf-leading-body); }
.article-version-list__meta { margin-top: var(--sf-space-3); }

.item-article { max-width: 58rem; }
.item-outline { display: grid; gap: var(--sf-space-5); margin-top: var(--sf-space-12); }
.item-outline section { padding: var(--sf-space-6); border: 1px solid var(--sf-border); border-radius: var(--sf-radius-md); background: var(--sf-surface); }
.item-outline h2 { margin: 0 0 var(--sf-space-6); font-size: var(--sf-heading-5); }
.skeleton-line { width: 72%; height: 0.75rem; margin-top: var(--sf-space-3); border-radius: var(--sf-radius-pill); background: var(--sf-border); }
.skeleton-line--long { width: 94%; }
.skeleton-line--short { width: 46%; }
.resume-entry__panel { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: var(--sf-space-8); align-items: end; margin-top: var(--sf-space-12); padding: var(--sf-space-8); border-top: 3px solid var(--sf-brand); background: var(--sf-brand-soft); }
.resume-entry__panel span { color: var(--sf-brand-hover); font-family: var(--sf-font-mono); font-size: var(--sf-caption); font-weight: 700; letter-spacing: var(--sf-tracking-label); text-transform: uppercase; }
.resume-entry__panel h2 { margin: var(--sf-space-4) 0 var(--sf-space-3); font-size: var(--sf-heading-4); }
.resume-entry__panel p { max-width: 42rem; margin: 0; color: var(--sf-text-secondary); font-size: var(--sf-body-md); line-height: var(--sf-leading-body); }

.landing-hero {
  width: min(100%, var(--sf-page-max));
  margin: 0 auto;
  padding: var(--sf-space-24) var(--sf-gutter) var(--sf-space-16);
}
.landing-hero h1 { margin: 0; font-size: var(--sf-heading-1); line-height: var(--sf-leading-display); letter-spacing: var(--sf-tracking-display); }
.landing-hero > p:last-child { max-width: var(--sf-reading-max); margin: var(--sf-space-6) 0 0; color: var(--sf-text-secondary); font-size: var(--sf-body-lg); }
.landing-hero--digitalization > p:last-child { max-width: none; }
.about-page__inner { width: min(100%, var(--sf-page-max)); margin: 0 auto; padding-inline: var(--sf-gutter); }
.about-profile { padding-block: var(--sf-space-20); background: var(--sf-page); }
.about-profile__heading { max-width: 62rem; }
.about-profile__heading h1 { margin: 0; font-size: var(--sf-heading-1); line-height: var(--sf-leading-display); letter-spacing: var(--sf-tracking-display); }
.about-profile__copy { max-width: 62rem; margin-top: var(--sf-space-12); }
.about-profile__copy p { margin: 0; color: var(--sf-text-secondary); font-size: var(--sf-body-lg); line-height: 1.85; }
.about-profile__copy p + p { margin-top: var(--sf-space-6); }
.about-profile__copy strong { color: var(--sf-text); font-size: inherit; }
.about-contact { max-width: 62rem; margin-top: var(--sf-space-16); padding-top: var(--sf-space-10); border-top: 1px solid var(--sf-border-strong); scroll-margin-top: calc(var(--sf-header-height) + var(--sf-space-6)); }
.about-contact h2 { margin: 0; font-size: var(--sf-heading-3); line-height: var(--sf-leading-heading); }
.about-contact p { margin: var(--sf-space-4) 0 0; color: var(--sf-text-secondary); font-size: var(--sf-body-md); }
.about-contact__email strong { color: var(--sf-text); font-size: inherit; }
.about-contact__email a { color: var(--sf-brand-hover); text-underline-offset: .22em; }
.about-services { padding-block: var(--sf-space-20); border-top: 1px solid var(--sf-border-strong); background: var(--sf-surface); scroll-margin-top: var(--sf-header-height); }
.about-services__heading { max-width: 62rem; }
.about-services__heading h2 { margin: 0; font-size: var(--sf-heading-2); line-height: var(--sf-leading-heading); letter-spacing: var(--sf-tracking-display); }
.about-services__heading > p:last-child { margin: var(--sf-space-5) 0 0; color: var(--sf-text-secondary); font-size: var(--sf-body-lg); }
.about-services__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: var(--sf-space-12); border-top: 1px solid var(--sf-border); }
.about-services__grid article { display: flex; min-height: 14rem; flex-direction: column; padding: var(--sf-space-8); border-bottom: 1px solid var(--sf-border); }
.about-services__grid article:nth-child(odd) { border-right: 1px solid var(--sf-border); }
.about-services__grid article > span { color: var(--sf-text-muted); font-family: var(--sf-font-mono); font-size: var(--sf-caption); }
.about-services__grid h3 { margin: var(--sf-space-8) 0 var(--sf-space-3); font-size: var(--sf-heading-4); line-height: var(--sf-leading-heading); }
.about-services__grid p { max-width: 34rem; margin: 0; color: var(--sf-text-secondary); font-size: var(--sf-body-sm); }
.about-services__grid p strong { color: var(--sf-text); font-size: inherit; }
.about-services__article-link { width: fit-content; max-width: 34rem; align-items: flex-start; margin-top: auto; padding-top: var(--sf-space-6); }
.topic-sequence { width: min(100%, var(--sf-page-max)); margin: 0 auto; padding: 0 var(--sf-gutter) var(--sf-space-20); border-top: 1px solid var(--sf-border); }
.topic-sequence__entry { display: grid; grid-template-columns: 4rem minmax(0, 1fr) auto; gap: var(--sf-space-6); align-items: start; margin: 0; padding: var(--sf-space-8) 0; border-bottom: 1px solid var(--sf-border); color: var(--sf-text); text-decoration: none; }
.topic-sequence a:hover h2, .topic-sequence a:hover .topic-sequence__target { color: var(--sf-brand-hover); }
.topic-sequence__index, .topic-sequence small { color: var(--sf-text-muted); font-family: var(--sf-font-mono); font-size: var(--sf-caption); }
.topic-sequence h2 { margin: var(--sf-space-2) 0; font-size: var(--sf-heading-4); }
.topic-sequence p { max-width: var(--sf-reading-max); margin: 0; color: var(--sf-text-secondary); font-size: var(--sf-body-sm); }
.topic-sequence .topic-sequence__target { display: flex; gap: var(--sf-space-2); margin: var(--sf-space-2) 0; color: var(--sf-text); font-size: var(--sf-heading-4); font-weight: 700; }
.topic-sequence strong { color: var(--sf-brand); font-family: var(--sf-font-mono); }
.topic-more { display: flex; align-items: center; justify-content: space-between; gap: var(--sf-space-6); padding: var(--sf-space-10) max(var(--sf-gutter), calc((100vw - var(--sf-page-max)) / 2 + var(--sf-gutter))); background: var(--sf-surface); }
.topic-more p { margin: 0; color: var(--sf-text-secondary); }
.topic-context { width: min(100%, var(--sf-page-max)); margin: 0 auto; padding: var(--sf-space-8) var(--sf-gutter) 0; }
.topic-context a { display: inline-flex; align-items: center; gap: var(--sf-space-2); color: var(--sf-text-secondary); font-size: var(--sf-body-sm); font-weight: 700; text-decoration: none; }
.topic-context a:hover { color: var(--sf-brand-hover); }

.proposition-hero { width: min(100%, var(--sf-page-max)); margin: 0 auto; padding: var(--sf-space-20) var(--sf-gutter) var(--sf-space-16); }
.proposition-hero h1 { margin: 0; font-size: var(--sf-heading-1); line-height: var(--sf-leading-display); letter-spacing: var(--sf-tracking-display); }
.proposition-hero > p:last-child { max-width: var(--sf-reading-max); margin: var(--sf-space-6) 0 0; color: var(--sf-text-secondary); font-size: var(--sf-body-lg); }
.proposition-explanation { display: grid; grid-template-columns: minmax(12rem, .55fr) minmax(0, 1.45fr); gap: var(--sf-space-12); padding: var(--sf-space-16) max(var(--sf-gutter), calc((100vw - var(--sf-page-max)) / 2 + var(--sf-gutter))); border-block: 1px solid var(--sf-border); background: var(--sf-surface); scroll-margin-top: calc(var(--sf-header-height) + var(--sf-space-6)); }
.proposition-explanation h2 { margin: 0; font-size: var(--sf-heading-4); line-height: var(--sf-leading-heading); }
.proposition-explanation p { max-width: 50rem; margin: 0; color: var(--sf-text-secondary); font-size: var(--sf-body-lg); }
.reading-paths { width: min(100%, var(--sf-page-max)); margin: 0 auto; padding: var(--sf-space-20) var(--sf-gutter); }
.reading-paths > header { display: grid; grid-template-columns: minmax(0, 1fr) minmax(20rem, .8fr); column-gap: var(--sf-space-12); margin-bottom: var(--sf-space-12); }
.reading-paths > header .site-kicker { grid-column: 1 / -1; }
.reading-paths > header h2 { margin: 0; font-size: var(--sf-heading-2); line-height: var(--sf-leading-heading); letter-spacing: var(--sf-tracking-display); }
.reading-paths > header > p:last-child { align-self: end; margin: 0; color: var(--sf-text-secondary); font-size: var(--sf-body-md); }
.reading-paths__list { border-top: 1px solid var(--sf-border-strong); }
.reading-paths__list > section { display: grid; grid-template-columns: minmax(15rem, .7fr) minmax(0, 1.3fr); gap: var(--sf-space-10); padding: var(--sf-space-8) 0; border-bottom: 1px solid var(--sf-border); }
.reading-paths__intro h3 { margin: 0; font-size: var(--sf-heading-5); }
.reading-paths__intro p { max-width: 28rem; margin: var(--sf-space-3) 0 0; color: var(--sf-text-secondary); font-size: var(--sf-body-sm); }
.reading-paths__links { display: grid; align-content: start; }
.reading-paths__links a { display: grid; min-height: 3.25rem; grid-template-columns: minmax(0, 1fr) auto auto; gap: var(--sf-space-4); align-items: center; border-bottom: 1px solid var(--sf-border); color: var(--sf-text); font-size: var(--sf-body-sm); font-weight: 700; text-decoration: none; }
.reading-paths__links a:first-child { border-top: 1px solid var(--sf-border); }
.reading-paths__links a:hover { color: var(--sf-brand-hover); }
.reading-paths__links small { color: var(--sf-text-muted); font-family: var(--sf-font-mono); font-size: var(--sf-caption); font-weight: 600; }
.reading-paths__links strong { color: var(--sf-brand); font-family: var(--sf-font-mono); }

.site-footer { display: flex; width: min(100%, var(--sf-page-max)); align-items: flex-start; justify-content: space-between; gap: var(--sf-space-8); margin: 0 auto; padding: var(--sf-space-12) var(--sf-gutter); border-top: 1px solid var(--sf-border); }
.site-footer strong { font-size: var(--sf-body-sm); }
.site-footer__copyright { max-width: 42rem; }
.site-footer__copyright p { margin: var(--sf-space-2) 0 0; color: var(--sf-text-secondary); font-size: 12px; line-height: 1.7; }
.site-footer__copyright p a { color: inherit; text-underline-offset: 3px; }
.site-footer__links { display: flex; align-items: center; gap: var(--sf-space-2); }
.site-footer__links > a { display: inline-grid; min-height: var(--sf-nav-item-height); place-items: center; padding-inline: var(--sf-space-2); color: var(--sf-text-secondary); font-size: var(--sf-body-sm); font-weight: 600; text-decoration: none; }
.site-footer__links > a:hover { color: var(--sf-brand-hover); }
.site-footer__links > .sf-language-trigger { min-width: var(--sf-nav-item-height); padding-inline: 0; font-size: var(--sf-caption); }

@media (max-width: 68rem) {
  .research-frameworks { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .site-mobile-nav.is-open { display: grid; max-height: calc(100vh - var(--sf-header-height)); overflow-y: auto; padding: var(--sf-space-4) var(--sf-gutter) var(--sf-space-6); border-top: 1px solid var(--sf-border); background: var(--sf-surface); }
  .site-mobile-nav > a, .site-mobile-nav summary { min-height: var(--sf-nav-item-height); padding: var(--sf-space-2) 0; color: var(--sf-text); font-size: var(--sf-body-md); font-weight: 700; cursor: pointer; list-style: none; text-decoration: none; }
  .site-mobile-nav summary::-webkit-details-marker { display: none; }
  .site-mobile-nav summary::after { float: right; color: var(--sf-text-muted); content: "+"; }
  .site-mobile-nav details[open] summary::after { content: "−"; }
  .site-mobile-nav details div { display: grid; padding: 0 0 var(--sf-space-4) var(--sf-space-4); }
  .site-mobile-nav details a { padding: var(--sf-space-2) 0; color: var(--sf-text-muted); font-size: var(--sf-body-sm); text-decoration: none; }
  .site-mobile-nav a[aria-current="page"] { color: var(--sf-brand-hover); }
}

@media (max-width: 52rem) {
  .home-hero h1, html:lang(en) .home-hero h1 { white-space: normal; }
  html:lang(zh-CN) .home-propositions .home-section__heading h2 { font-size: clamp(1.5rem, 4.6vw, var(--sf-heading-2)); }
  html:lang(zh-CN) .home-casework .home-section__heading h2 { font-size: clamp(1.5rem, 3.3vw, 1.75rem); white-space: normal; }
  .home-section__heading, .home-framework__heading, .proposition-explanation, .reading-paths > header, .reading-paths__list > section { grid-template-columns: 1fr; }
  .reading-paths > header { row-gap: var(--sf-space-6); }
  .home-thinking__header { display: none; }
  .home-thinking__row { grid-template-columns: 1fr; align-items: start; gap: var(--sf-space-5); padding-block: var(--sf-space-8); }
  .home-thinking__question, .home-thinking__reflection, .home-thinking__reading { display: grid; gap: var(--sf-space-1); }
  .home-thinking__cell-label { display: block; }
  .section-shell { grid-template-columns: 1fr; }
  .local-nav { position: static; width: 100%; min-height: auto; border-right: 0; border-bottom: 1px solid var(--sf-border); overflow: hidden; }
  .local-nav__body { display: flex; align-items: flex-start; padding: var(--sf-space-4) var(--sf-gutter); overflow-x: auto; white-space: nowrap; }
  .local-nav__branch { flex: 0 0 auto; width: min(16rem, 75vw); white-space: normal; }
  .local-nav .sf-sidebar__label { display: none; }
  .local-nav .sf-sidebar__item { flex: 0 0 auto; margin-right: var(--sf-space-1); }
  .local-nav .sf-sidebar__item[aria-current="page"]::before { inset: auto var(--sf-space-3) 0; width: auto; height: 2px; }
  .section-main { padding-top: var(--sf-space-8); }
  .breadcrumb { margin-bottom: var(--sf-space-8); }
}

@media (max-width: 38rem) {
  .site-menu-button__label { display: none; }
  .home-hero__overview > div { grid-template-columns: 1fr; gap: var(--sf-space-1); padding-block: var(--sf-space-3); }
  .section-cards { grid-template-columns: 1fr; }
  .research-frameworks { grid-template-columns: 1fr; }
  .about-services__grid { grid-template-columns: 1fr; }
  .about-services__grid article:nth-child(odd) { border-right: 0; }
  .home-case-card > header, .home-case-card__body { padding: var(--sf-space-6); }
  .article-card { padding: var(--sf-space-6); }
  .article-card h2 { margin: var(--sf-space-6) 0 var(--sf-space-3); font-size: var(--sf-heading-5); }
  .article-card__footer { align-items: flex-start; flex-direction: column; gap: var(--sf-space-3); margin-top: var(--sf-space-6); }
  .article-card__arrow { align-self: flex-end; }
  .article-timestamps { flex-direction: column; gap: var(--sf-space-2); }
  .article-body { padding-top: var(--sf-space-10); }
  .article-body h2 { margin-top: var(--sf-space-12); font-size: var(--sf-heading-4); }
  .article-appendix { margin-top: var(--sf-space-16); padding-top: var(--sf-space-8); }
  .topic-sequence__entry { grid-template-columns: 2.5rem minmax(0, 1fr) auto; gap: var(--sf-space-3); }
  .topic-more { align-items: flex-start; flex-direction: column; }
  .section-notice { grid-template-columns: 1fr; }
  .resume-entry__panel { grid-template-columns: 1fr; align-items: start; }
  .site-footer { flex-direction: column; }
}

/* IG sits beside the introduction as a parallel entry, not a narrative step. */
.research-main { container: research / inline-size; }
.research-opening { display: grid; grid-template-columns: minmax(0, 1fr) clamp(15rem, 28%, 19rem); gap: var(--sf-space-8); align-items: start; }
.research-opening > .research-intro { min-width: 0; }
.research-ig-entry { min-width: 0; display: grid; gap: var(--sf-space-3); padding-left: var(--sf-space-6); border-left: 1px solid var(--sf-border-strong); }
.research-ig-entry__label { margin: 0 0 var(--sf-space-2); color: var(--sf-text-muted); font-size: 12px; }
.research-ig-entry h2 { margin: 0 0 var(--sf-space-2); font-size: 18px; line-height: 1.5; overflow-wrap: anywhere; }
.research-ig-entry div > p:last-child { margin: 0; color: var(--sf-text-secondary); font-size: 14px; line-height: var(--sf-leading-body); }
.research-ig-entry > .sf-action-link { justify-self: start; min-height: 44px; display: inline-flex; align-items: center; font-size: 14px; }
@container research (max-width: 44rem) {
  .research-opening { grid-template-columns: minmax(0, 1fr); gap: var(--sf-space-6); }
  .research-ig-entry { width: 100%; max-width: 28rem; justify-self: end; padding-left: var(--sf-space-4); }
}

.article-ig-path { margin-top: var(--sf-space-6); padding-top: var(--sf-space-4); border-top: 1px solid var(--sf-border); }
.article-ig-path .sf-action-link { font-size: 16px; font-weight: 600; }
.article-body .article-ig-path p { margin: 6px 0 0; font-size: 14px; line-height: 1.6; color: var(--sf-text-muted); }

/* Keep article typography from overriding the shared reading component. */
.article-body .sf-article-reading__label { margin: 0 0 var(--sf-space-3); color: var(--sf-brand-hover); font-family: var(--sf-font-mono); font-size: var(--sf-caption); font-weight: 700; line-height: var(--sf-leading-compact); }
.article-body .sf-article-reading__list { margin: 0; padding: 0; list-style: none; gap: var(--sf-space-3); }
.article-body .sf-article-reading__list li + li { margin-top: 0; }

/* Digitalization overview: topic anchors lead into curated entry points and the full directory. */
.digitalization-opening { width:min(100%,var(--sf-page-max)); margin:0 auto; padding:56px var(--sf-gutter) 36px; }
.digitalization-opening h1 { max-width:1120px; margin:0; font-size:clamp(30px,3.2vw,44px); line-height:1.35; letter-spacing:var(--sf-tracking-display); }
.digitalization-thesis { max-width:1080px; margin:24px 0 0; color:var(--sf-text-secondary); font-size:20px; line-height:1.85; }
.digitalization-topics { margin-top:32px; padding:20px 0 22px; border-top:1px solid var(--sf-border); border-bottom:1px solid var(--sf-border); }
.digitalization-topics__heading { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.digitalization-topics__heading h2,.digitalization-start > h2,.digitalization-directory__heading h2 { margin:0; font-size:18px; line-height:1.5; font-weight:600; color:var(--sf-text); }
.digitalization-topics__heading > a { color:var(--sf-text-muted); font-size:14px; line-height:1.6; text-decoration:none; }
.digitalization-topics__heading > a:hover { color:var(--sf-brand-hover); }
.digitalization-topics__links { display:flex; flex-wrap:wrap; align-items:center; gap:8px 28px; margin-top:14px; }
.digitalization-topics__link { display:inline-flex; align-items:center; min-height:36px; padding:4px 0; border-bottom:2px solid transparent; color:var(--sf-text-secondary); font-size:14px; line-height:1.6; text-decoration:none; }
.digitalization-topics__link:hover,.digitalization-topics__link[aria-current="location"] { color:var(--sf-brand-hover); }
.digitalization-topics__link[aria-current="location"] { border-color:var(--sf-brand); font-weight:600; }
.digitalization-start { margin-top:28px; }
.digitalization-start > h2 { margin-bottom:14px; }
.digitalization-paths { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.digitalization-path { display:flex; flex-direction:column; align-items:flex-start; min-width:0; min-height:156px; padding:16px 18px; border:1px solid var(--sf-border); border-radius:8px; background:var(--sf-surface); color:var(--sf-text); text-decoration:none; }
.digitalization-path__label { font-size:12px; line-height:1.6; font-weight:600; color:var(--sf-text-muted); }
.digitalization-path h3 { margin:8px 0 0; font-size:18px; line-height:1.45; font-weight:600; }
.digitalization-path p { margin:6px 0 0; color:var(--sf-text-secondary); font-size:12px; line-height:1.55; }
.digitalization-path__arrow,.digitalization-path > .digitalization-pending { margin-top:auto; padding-top:8px; }
.digitalization-path__arrow { color:var(--sf-brand-hover); font-size:18px; line-height:1; }
a.digitalization-path h3 { color:var(--sf-brand-hover); }
a.digitalization-path:hover { border-color:var(--sf-brand); }
a.digitalization-path:hover h3 { color:var(--sf-brand-hover); }
.digitalization-path--pending { background:transparent; }
.digitalization-path--pending h3 { color:var(--sf-text-muted); }
.digitalization-pending { display:inline-block; color:var(--sf-text-muted); font-size:12px; line-height:1.6; font-weight:400; }
.digitalization-directory { max-width:var(--sf-page-max); margin:0 auto; padding:0 var(--sf-gutter) 80px; }
.digitalization-directory__heading { display:flex; align-items:baseline; justify-content:space-between; gap:20px; padding:22px 0 18px; border-top:1px solid var(--sf-border); }
.digitalization-directory__heading p { margin:0; color:var(--sf-text-muted); font-size:14px; line-height:1.6; }
.digitalization-overview [data-group-link][aria-current="location"] { color:var(--sf-brand-hover); font-weight:600; }
.digitalization-group { scroll-margin-top:calc(var(--sf-header-height) + 28px); padding:28px 0 32px; border-top:1px solid var(--sf-border); }
.digitalization-group__heading { display:flex; align-items:baseline; gap:16px; }
.digitalization-group__number { flex:none; color:var(--sf-text-muted); font-family:var(--sf-font-mono); font-size:14px; line-height:1.6; }
.digitalization-group__heading h3 { margin:0; font-size:22px; line-height:1.5; font-weight:600; }
.digitalization-group__heading p { margin:6px 0 0; color:var(--sf-text-muted); font-size:14px; line-height:1.7; }
.digitalization-group__articles { margin:20px 0 0 34px; }
.digitalization-lead h4 { display:flex; align-items:baseline; flex-wrap:wrap; gap:8px; margin:0; font-size:18px; line-height:1.65; font-weight:600; }
.digitalization-lead h4 a { color:var(--sf-brand-hover); text-decoration:none; }
.digitalization-lead h4 a:hover { text-decoration:underline; text-underline-offset:.2em; }
.digitalization-lead > p { max-width:800px; margin:8px 0 12px; font-size:14px; line-height:1.8; color:var(--sf-text-secondary); }
.digitalization-lead--pending h4 { color:var(--sf-text-muted); }
.digitalization-articles { display:grid; gap:0; margin:0; padding:0; list-style:none; }
.digitalization-articles li { margin:0; padding:0; }
.digitalization-articles a { display:flex; align-items:baseline; gap:12px; width:fit-content; max-width:100%; padding:6px 0; color:var(--sf-brand-hover); font-size:16px; line-height:1.65; text-decoration:none; }
.digitalization-articles a > span:last-child { flex:none; color:inherit; font-size:14px; }
.digitalization-articles a:hover { color:var(--sf-brand-hover); text-decoration:underline; text-underline-offset:.2em; }
.digitalization-article--pending { display:block; padding:6px 0; color:var(--sf-text-muted); font-size:16px; line-height:1.65; }
.digitalization-article--pending .digitalization-pending { margin-left:8px; }
.digitalization-overview a:focus-visible { outline:2px solid var(--sf-brand); outline-offset:4px; border-radius:4px; }
@media (max-width:800px) {
 .digitalization-opening { padding-top:40px; padding-bottom:32px; }
 .digitalization-thesis { font-size:18px; }
 .digitalization-topics { margin-top:24px; padding:16px 0 18px; }
 .digitalization-topics__links { gap:4px 20px; }
 .digitalization-start { margin-top:24px; }
 .digitalization-paths { grid-template-columns:1fr; gap:12px; }
 .digitalization-path { min-height:136px; padding:16px 18px; }
 .digitalization-path h3 { font-size:18px; }
 .digitalization-directory { padding-bottom:40px; }
 .digitalization-directory__heading { align-items:flex-start; flex-direction:column; gap:6px; }
 .digitalization-group__heading h3 { font-size:20px; }
 .digitalization-group__articles { margin-left:0; }
 .digitalization-lead h4 { font-size:17px; }
}

.home-foundation-card__reading .sf-action-link + .sf-action-link,
.home-framework-card .home-framework-links .sf-action-link + .sf-action-link { border-top: 0; }

.home-foundation-card__reading .sf-further-reading__items,
.home-framework-card .home-framework-links .sf-further-reading__items { padding-top:8px; gap:4px; }
.home-foundation-card__reading .sf-action-link,
.home-framework-card .home-framework-links .sf-action-link { min-height:0; padding-block:0; }

/* Shared knowledge becomes task-specific views, preserving one source. */
.article-body .knowledge-views { margin:32px 0; padding:24px; border:1px solid #dfe2e7; border-radius:24px; background:#fff; }
.article-body .knowledge-views__stages { display:flex; flex-direction:column; gap:52px; margin:0; padding:0; list-style:none; }
.article-body .knowledge-views__stage { position:relative; margin:0; padding:30px 24px; border:1px solid #e5e7eb; border-radius:16px; text-align:center; }
.article-body .knowledge-views__stage:first-child { border-color:transparent; padding-top:16px; }
.article-body .knowledge-views__stage + .knowledge-views__stage::before { content:"↓"; position:absolute; left:50%; top:-43px; transform:translateX(-50%); color:#737983; font-size:26px; line-height:32px; }
.article-body .knowledge-views__title { color:#20242d; font-size:21px; line-height:1.6; text-wrap:balance; }
.article-body .knowledge-views__detail { margin:14px 0 0; color:#6b7280; font-size:16px; line-height:1.95; text-wrap:pretty; }
@media (max-width:600px) {
 .article-body .knowledge-views { padding:16px; border-radius:20px; }
 .article-body .knowledge-views__stage { padding:24px 16px; border-radius:14px; }
 .article-body .knowledge-views__title { font-size:18px; }
 .article-body .knowledge-views__detail { font-size:14px; }
}

/* Task-led methods directory; articles retain their canonical homes. */
.home-methods-action { background:var(--sf-brand-soft); color:var(--sf-brand-hover); border-color:var(--sf-brand-soft); }
.home-methods-action:hover { background:var(--sf-brand-soft); color:var(--sf-brand-hover); border-color:var(--sf-brand); }
.methods-page { max-width:var(--sf-page-max); margin:0 auto; padding:56px var(--sf-gutter) 88px; }
.methods-heading { max-width:780px; }
.methods-heading h1 { margin:16px 0 20px; font-size:clamp(30px,4vw,44px); line-height:1.35; }
.methods-heading > p:last-child { color:var(--sf-text-secondary); font-size:18px; line-height:1.85; }
.methods-topics { display:flex; flex-wrap:wrap; gap:16px 32px; margin:32px 0 40px; padding:20px 0; border-top:1px solid var(--sf-border); border-bottom:1px solid var(--sf-border); }
.methods-topics a { color:var(--sf-brand-hover); font-size:16px; text-decoration:none; }
.methods-group { display:grid; grid-template-columns:minmax(220px,1fr) minmax(0,2fr); gap:56px; padding:32px 0 40px; border-bottom:1px solid var(--sf-border); scroll-margin-top:96px; }
.methods-reading + .methods-reading { margin-top:32px; }
.methods-group h2 { margin:0 0 12px; font-size:24px; line-height:1.5; }
.methods-group header p,.methods-reading > p { margin:0; color:var(--sf-text-secondary); font-size:16px; line-height:1.85; }
.methods-reading h3 { margin:0 0 12px; font-size:21px; line-height:1.6; }
.methods-reading a { color:var(--sf-brand-hover); text-decoration:none; }
.methods-reading a:hover { text-decoration:underline; text-underline-offset:.2em; }
.methods-pending { color:var(--sf-text-muted); }
.methods-status { display:inline-block; margin-left:12px; color:var(--sf-text-muted); font-size:12px; font-weight:400; vertical-align:middle; }
.methods-cases { margin-top:24px; padding-top:16px; border-top:1px solid var(--sf-border); }
.methods-cases p { margin:0 0 8px; color:var(--sf-text-muted); font-size:14px; }
.methods-cases a { display:block; font-size:16px; line-height:1.85; }
.methods-page a:focus-visible { outline:2px solid var(--sf-brand); outline-offset:5px; }
@media (max-width:800px) { .methods-page { padding-top:36px; } .methods-group { grid-template-columns:1fr; gap:24px; } }
@media (max-width:80rem) {
 html[lang="en"] .sf-topbar__nav { display:none; }
 html[lang="en"] .sf-topbar__menu { display:inline-flex; }
}
