* { box-sizing: border-box; }
html, body { margin: 0; background: #fff; color: #171717; }
.capabilities-showcase { padding: 40px 0 48px; }
.capability-container { width: min(1240px, calc(100% - 144px)); margin: 0 auto; }
.capability-heading { text-align: center; }
.capability-eyebrow { display: flex; align-items: center; justify-content: center; gap: 10px; margin: 0 0 16px; color: #777; font-size: 13px; line-height: 1.5; }
.capability-eyebrow span { font-variant-numeric: tabular-nums; }
.capability-heading h2 { margin: 0; font-size: clamp(26px, 2.2vw, 30px); font-weight: 600; line-height: 1.4; letter-spacing: -.025em; text-wrap: balance; }
.capability-subtitle { margin: 14px 0 0; font-size: 15px; color: #60646d; line-height: 1.7; }
.capability-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 48px 48px; margin-top: 48px; }
.capability-item { grid-column: span 2; min-width: 0; text-align: center; }
.capability-item:nth-child(1) { grid-column: 1 / span 2; }
.capability-item:nth-child(2) { grid-column: 3 / span 2; }
.capability-item:nth-child(3) { grid-column: 5 / span 2; }
.capability-item:nth-child(4) { grid-column: 2 / span 2; }
.capability-item:nth-child(5) { grid-column: 4 / span 2; }
.capability-line-icon { display: block; width: 40px; height: 40px; margin: 0 auto 20px; fill: none; stroke: #171717; stroke-width: 1.15; stroke-linecap: round; stroke-linejoin: round; }
.capability-item h3 { margin: 0 0 14px; font-size: 18px; line-height: 1.5; font-weight: 500; letter-spacing: -.015em; }
.capability-description { margin: 0; font-size: 14px; line-height: 1.9; color: #303238; }
.capability-tagline { margin: 14px 0 0; font-size: 13px; line-height: 1.7; color: #747984; }
.capability-consult { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 44px; margin-top: 20px; padding: 10px 20px; border: 1px solid #1d1d1f; border-radius: 999px; background: #1d1d1f; color: #fff; font-size: 14px; cursor: pointer; transition: background .2s; }
.capability-consult:hover { background: #353537; }
.capability-consult:active { background: #111; }
.capability-consult:focus-visible { outline: 2px solid #171717; outline-offset: 4px; }
@media (max-width: 1000px) {
  .capability-container { width: calc(100% - 64px); }
  .capability-grid { gap: 48px 28px; }
  .capability-item h3 { font-size: 18px; }
}
@media (max-width: 760px) {
  .capabilities-showcase { padding: 40px 0 48px; }
  .capability-container { width: calc(100% - 40px); }
  .capability-heading h2 { font-size: 26px; }
  .capability-subtitle { font-size: 15px; }
  .capability-grid { grid-template-columns: minmax(0, 1fr); margin-top: 40px; gap: 40px; }
  .capability-grid .capability-item { grid-column: auto; width: 100%; max-width: 440px; margin: 0 auto; }
  .capability-line-icon { width: 36px; height: 36px; margin-bottom: 18px; }
  .capability-description { font-size: 14px; }
}
@media (prefers-reduced-motion: reduce) { .capability-consult { transition: none; } }
