 
.page-company main h2 { font-size: var(--heading-section); line-height: var(--leading-title); text-wrap: balance; }
.company-hero .hero-inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, 340px); column-gap: var(--space-7); align-items: center; }
.company-hero .hero-content { max-width: 900px; }
.company-facts { grid-column: 1 / -1; }
.company-hero-link { display: inline-flex; margin-top: var(--space-3); }
.company-leadership { scroll-margin-top: var(--header-height); }
.company-index ol { list-style: none; margin: 0; padding: 0; position: relative; }
.company-index ol::before { content: ''; position: absolute; left: 6px; top: 12px; bottom: 12px; width: 2px; background: linear-gradient(var(--brand-control-line), var(--brand-accent)); }
.company-index li a { position: relative; display: grid; grid-template-columns: 5.5rem minmax(0, 1fr); gap: var(--space-2); align-items: baseline; padding: 7px 0 7px var(--space-4); color: var(--color-ink); text-decoration: none; }
.company-index li a::before { content: ''; position: absolute; left: 1px; top: 50%; width: 12px; height: 12px; margin-top: -6px; border-radius: 50%; background: var(--brand-middle); border: 2px solid var(--brand-control-line); box-sizing: border-box; transition: border-color .2s, background .2s; }
.company-index li:nth-last-child(-n+4) a::before { border-color: var(--brand-accent); }
.company-index li:last-child a::before { background: var(--brand-accent); box-shadow: 0 0 0 4px var(--color-on-dark-fill); }
.company-index-when { font-family: var(--font-family-heading); font-weight: var(--font-weight-bold); font-size: var(--text-lg); color: var(--color-ink); white-space: nowrap; }
.company-index-title { font-size: var(--text-action); line-height: 1.4; color: var(--color-text-muted); }
.company-index li a:hover .company-index-title, .company-index li a:focus-visible .company-index-title { color: var(--color-ink); }
.company-index li a:hover::before { background: var(--brand-accent); border-color: var(--brand-accent); }
.milestone { scroll-margin-top: calc(var(--header-height) + var(--space-4)); }
.company-hero .hero-subtitle { max-width: 62ch; }
.company-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); margin-top: var(--space-6); padding-top: var(--space-4); border-top: var(--rule-width) solid var(--color-gray-200); }
.company-fact + .company-fact { padding-left: var(--space-5); border-left: var(--rule-width) solid var(--color-gray-200); }
.company-fact-kicker { font-size: var(--text-label); font-weight: var(--font-weight-semibold); letter-spacing: var(--tracking-label); text-transform: uppercase; color: var(--color-text-muted); margin: 0 0 var(--space-2); }
.company-fact-label a { color: inherit; text-decoration: underline; text-decoration-color: var(--color-gray-300); text-underline-offset: 3px; }
.company-fact-label a:hover { color: var(--color-blue); }
.company-fact-value { font-family: var(--font-family-heading); font-size: var(--heading-section); font-weight: var(--font-weight-heading); line-height: 1; color: var(--color-blue); margin: 0 0 var(--space-2); }
.company-fact-label { font-size: var(--text-lg); line-height: 1.45; color: var(--color-ink); margin: 0; max-width: 30ch; }
.company-fact-note { font-size: var(--text-xs); color: var(--color-text-muted); margin: var(--space-1) 0 0; }
.company-fact-note a { color: inherit; }
.company-fact-note a:hover { color: var(--color-blue); }

.company-story { background: var(--surface-page); }
.company-story-intro { margin-bottom: var(--space-5); }
.company-story-intro h2 { max-width: 24ch; text-wrap: balance; }
.chapter { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: var(--space-6); align-items: start; }
.chapter + .chapter { margin-top: var(--space-6); }
.chapter-heading { position: sticky; top: calc(var(--header-height) + var(--space-4)); }
.chapter-label { font-size: var(--text-label); font-weight: var(--font-weight-semibold); letter-spacing: var(--tracking-label); text-transform: uppercase; color: var(--color-blue); margin: 0 0 var(--space-1); }
.chapter-heading h3 { font-size: var(--heading-section); line-height: var(--leading-title); margin: 0; }
.milestones { position: relative; list-style: none; margin: 0; padding: 0 0 0 var(--space-5); border-left: 2px solid var(--figure-rule); }
.chapter-2 .milestones { border-left-color: var(--palette-brand); }
.milestone { position: relative; display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-1); padding-block: var(--space-4); }
.milestone + .milestone { border-top: var(--rule-width) solid var(--color-gray-200); }
.milestone::before { content: ''; position: absolute; left: calc(-1 * var(--space-5) - 8px); top: calc(var(--space-4) + 0.55rem); width: 14px; height: 14px; border-radius: 50%; background: var(--surface-page); border: 2px solid var(--figure-quiet); box-sizing: border-box; }
.chapter-2 .milestone::before { background: var(--palette-brand); border-color: var(--palette-brand); box-shadow: 0 0 0 4px var(--palette-edge); }
.milestone-when { font-family: var(--font-family-heading); font-size: var(--heading-feature); font-weight: var(--font-weight-heading); line-height: 1.15; color: var(--figure-muted); margin: 0; }
.chapter-2 .milestone-when { color: var(--color-ink); }
.milestone-same-year::before { width: 10px; height: 10px; left: calc(-1 * var(--space-5) - 6px); top: calc(var(--space-4) + 0.4rem); }
.milestone-when-period { font-size: var(--text-xl); line-height: 1.35; padding-top: 0.2rem; }
.milestone-body h4 { font-size: var(--text-xl); line-height: 1.35; margin: 0 0 var(--space-2); }
.milestone-body p { color: var(--color-text-muted); font-size: var(--text-base); line-height: var(--leading-support); margin: 0; max-width: 62ch; text-wrap: pretty; }
 
.milestone-body-art { display: grid; grid-template-columns: minmax(0, 1fr) min(44%, 360px); gap: var(--space-3); align-items: start; }
.milestone-art { width: 100%; max-width: 360px; container-type: inline-size; }
.milestone-art svg { display: block; width: 100%; height: auto; }
.milestone-art-analysis { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-2); }
.milestone-links { display: flex; flex-wrap: wrap; gap: var(--space-1) var(--space-4); margin-top: var(--space-2); }


.company-direction { background: var(--surface-page); }
.pillars { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); }
.pillar { padding-top: var(--space-3); border-top: var(--rule-width) solid var(--color-gray-300); }
.pillar-number { font-size: var(--text-xs); font-weight: var(--font-weight-semibold); color: var(--color-blue); letter-spacing: var(--tracking-label); margin: 0 0 var(--space-2); }
.pillar h3 { font-size: var(--heading-feature); margin-bottom: var(--space-2); }
.pillar p:not(.pillar-number) { color: var(--color-text-muted); font-size: var(--text-base); line-height: var(--leading-support); margin: 0; text-wrap: pretty; }

.company-leadership { background: var(--surface-page); }
.company-leadership .team-card h3 { font-size: var(--text-lg); margin-bottom: var(--space-half); }

 
@supports (animation-timeline: view()) {
  .chapter-2 .milestones { border-left-color: var(--figure-rule); }
  .chapter-2 .milestones::before { content: ''; position: absolute; left: -2px; top: 0; bottom: 0; width: 2px; background: var(--palette-brand); transform-origin: top; animation: company-rail linear both; animation-timeline: view(); animation-range: entry 30% cover 65%; }
  .milestone-body { animation: company-rise linear both; animation-timeline: view(); animation-range: entry 0% entry 60%; }
}
@keyframes company-rail { from { transform: scaleY(0); } to { transform: scaleY(1); } }
 
@keyframes company-rise { from { transform: translateY(16px); } to { transform: none; } }

@media (max-width: 1199px) {
  .chapter { grid-template-columns: 1fr; gap: var(--space-3); }
  .chapter-heading { position: static; }
}
@media (max-width: 991px) {
  .pillars { grid-template-columns: 1fr; gap: var(--space-4); }
  .company-hero .hero-inner { grid-template-columns: 1fr; }
  .company-index { margin-top: var(--space-5); max-width: 520px; }
  .company-fact + .company-fact { padding-left: var(--space-3); }
  .company-facts { gap: var(--space-3); }
}
@media (max-width: 767px) {
  .milestone-body-art { grid-template-columns: minmax(0, 1fr); }
  .company-facts { grid-template-columns: 1fr; }
  .company-fact + .company-fact { padding: var(--space-3) 0 0; border-left: 0; border-top: var(--rule-width) solid var(--color-gray-200); }
  .company-fact-label { font-size: var(--text-base); }
  .milestones { padding-left: var(--space-3); }
  .milestone::before { left: calc(-1 * var(--space-3) - 8px); top: calc(var(--space-4) + 0.4rem); }
  .milestone-when-period { font-size: var(--text-lg); padding-top: 0; }
  .milestone-same-year::before { left: calc(-1 * var(--space-3) - 6px); }
  .company-index { display: none; }
}
