.company-body { background: #171717; color: #f1eee8; }
.company-body .cart-drawer { color: #171717; }
.company-container { width: min(100%, 1200px); margin-inline: auto; padding-inline: 24px; }
.company-skip { position: fixed; left: 20px; top: -100px; z-index: 40; padding: 16px; background: #f1eee8; color: #171717; }
.company-skip:focus { top: 12px; }
.company-detail-section, .company-card[id] { scroll-margin-top: calc(var(--site-header-height, 82px) + 76px); }
.company-hero { padding-block: 30px 56px; background: #f1eee8; color: #171717; }
.company-breadcrumb { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-bottom: 38px; color: #686560; font-size: 12px; }
.company-breadcrumb a { display: inline-flex; align-items: center; min-height: 44px; }
.company-hero-grid { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); align-items: center; gap: 60px; }
.company-label { display: block; margin-bottom: 20px; color: #dc999c; font: 500 11px/1.5 var(--mono); letter-spacing: .08em; }
.company-hero .company-label, .company-legal .company-label { color: #8e1118; }
.company-hero h1 { margin-bottom: 24px; font-size: clamp(40px, 4.7vw, 64px); line-height: 1.08; font-weight: 400; text-wrap: balance; }
.company-lead { max-width: 52ch; margin-bottom: 28px; color: #686560; font-size: 16px; line-height: 1.8; }
.company-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px; }
.company-hero .company-button { min-height: 48px; gap: 26px; background: #171717; color: #f1eee8; font-size: 12px; font-weight: 500; letter-spacing: 0; text-transform: none; }
.company-text-link { display: inline-flex; align-items: center; gap: 20px; min-height: 44px; font-size: 13px; line-height: 1.5; }
.company-text-link:hover { text-decoration: underline; text-underline-offset: 5px; }
.company-record { padding: 28px; border: 1px solid #cdc7bf; background: #faf9f7; }
.company-record dl { margin: 0; }
.company-record dl > div { display: grid; grid-template-columns: minmax(0, .7fr) minmax(0, 1.3fr); gap: 18px; padding-block: 16px; border-top: 1px solid #ddd8d1; font-size: 14px; line-height: 1.6; }
.company-record dt { color: #686560; }
.company-record dd { margin: 0; text-align: right; overflow-wrap: anywhere; }
.company-record a:hover { text-decoration: underline; text-underline-offset: 4px; }
.company-section-nav { position: sticky; top: var(--site-header-height, 82px); z-index: 15; background: #171717; border-bottom: 1px solid #383735; }
.company-body .company-section-nav nav { position: static; inset: auto; display: flex; flex-direction: row; flex-wrap: nowrap; align-items: center; justify-content: flex-start; gap: 30px; overflow-x: auto; overscroll-behavior-x: contain; padding-block: 8px; border-bottom: 0; background: transparent; }
.company-section-nav a { display: inline-flex; align-items: center; flex: 0 0 auto; min-height: 44px; color: #c9c4bc; font-size: 12px; font-weight: 400; letter-spacing: 0; text-transform: none; white-space: nowrap; }
.company-section-nav a[aria-current="location"], .company-section-nav a:hover { color: #f1eee8; text-decoration: underline; text-decoration-color: #dc999c; text-underline-offset: 7px; }
.company-content { padding-block: 72px; }
.company-section-heading { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); align-items: end; gap: 60px; margin-bottom: 40px; }
.company-section-heading h2 { margin-bottom: 0; font-size: clamp(34px, 4vw, 52px); font-weight: 400; line-height: 1.1; letter-spacing: -.045em; text-wrap: balance; }
.company-section-heading > p { max-width: 54ch; margin-bottom: 0; color: #bdb7af; font-size: 15px; line-height: 1.8; }
.company-section-heading > p a { color: #f1eee8; text-decoration: underline; text-underline-offset: 4px; overflow-wrap: anywhere; }
.company-work-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
.company-work-grid article { display: flex; flex-direction: column; align-items: flex-start; padding-top: 24px; border-top: 1px solid #4b4743; }
.company-work-grid h3 { max-width: 20ch; font-size: 25px; line-height: 1.25; letter-spacing: -.03em; font-weight: 400; }
.company-work-grid p { color: #bdb7af; font-size: 14px; line-height: 1.8; }
.company-work-grid .company-text-link { margin-top: auto; color: #dc999c; }
.company-connect { padding-block: 72px; background: #20201f; border-top: 1px solid #383735; }
.company-body .company-card { background: transparent; border-color: #65544f; padding: 28px; }
.company-body .company-card-featured { background: #302526; border-color: #a36669; }
.company-body .company-card h3 { font-weight: 400; line-height: 1.2; }
.company-body .company-index { color: #dc999c; font-size: 11px; font-weight: 500; }
.company-body .company-card > p:not(.company-index) { color: #c9c4bc; font-size: 14px; line-height: 1.8; }
.company-body .company-tag { color: #c9c4bc; font-size: 10px; line-height: 1.6; }
.company-body .team-areas span { font-size: 11px; color: #c9c4bc; }
.company-legal { padding-block: 72px; background: #f1eee8; color: #171717; }
.company-legal .company-section-heading > p { color: #686560; }
.company-legal-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.company-legal-card { display: flex; flex-direction: column; align-items: flex-start; min-height: 250px; padding: 26px; border: 1px solid #cdc7bf; background: #faf9f7; transition: border-color .2s ease; }
.company-legal-card:hover { border-color: #8e1118; }
.company-legal-card h3 { margin-bottom: 14px; font-size: 24px; font-weight: 400; letter-spacing: -.03em; line-height: 1.2; }
.company-legal-card p { color: #686560; font-size: 14px; line-height: 1.8; }
.company-card-action { display: inline-flex; align-items: center; gap: 24px; min-height: 44px; margin-top: auto; color: #8e1118; font-size: 13px; }
@media (max-width: 850px) {
  .company-hero-grid, .company-section-heading, .company-work-grid { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .company-hero h1 { font-size: clamp(40px, 7vw, 60px); }
  .company-legal-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .company-body .company-paths { grid-template-columns: minmax(0, 1fr); }
  .company-work-grid article { padding-top: 24px; }
}
@media (max-width: 600px) {
  .company-container { padding-inline: 18px; }
  .company-hero { padding-block: 20px 40px; }
  .company-breadcrumb { margin-bottom: 24px; }
  .company-hero h1 { font-size: clamp(36px, 9vw, 48px); }
  .company-lead { font-size: 15px; }
  .company-record { padding: 22px; }
  .company-record dl > div { grid-template-columns: minmax(0, 1fr); gap: 4px; }
  .company-record dd { text-align: left; }
  .company-body .company-section-nav nav { gap: 24px; }
  .company-content, .company-connect, .company-legal { padding-block: 48px; }
  .company-section-heading { margin-bottom: 32px; gap: 24px; }
  .company-section-heading h2 { font-size: clamp(32px, 8vw, 42px); }
  .company-legal-grid { grid-template-columns: minmax(0, 1fr); }
  .company-legal-card, .company-body .company-card { padding: 22px; }
}
@media (prefers-reduced-motion: reduce) {
  .company-legal-card, .company-body .company-card { transition: none; }
}
