/* Technical capabilities are distinct from the six commercial service cards. */
.services-technology .services-technology-heading { align-items: baseline; flex-wrap: wrap; gap: 12px 24px; }
.services-technology .services-technology-heading p { font-size: .85rem; text-transform: none; letter-spacing: .03em; }
.services-technology .capability-section-lead { max-width: 64em; margin: 18px 0 30px; color: #3d5874; line-height: 1.9; }
.services-technology .services-technology-links, .capability-index .capability-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.services-technology .capability-card, .capability-index .capability-card { display: flex; flex-direction: column; position: relative; min-width: 0; min-height: 290px; padding: 28px; border: 1px solid #d2e0ed; border-top: 3px solid #185b82; border-radius: 12px; background: #fff; color: #102e49; text-decoration: none; transition: border-color .2s, box-shadow .2s; }
.capability-card .solution-meta { margin: 0 0 24px; font-size: .83rem; line-height: 1.65; color: #3f627c; overflow-wrap: anywhere; }
.capability-card h2, .capability-card h3 { font-size: 1.25rem; line-height: 1.6; margin: 0 0 12px; overflow-wrap: anywhere; }
.capability-card p { margin: 0 0 28px; font-size: 1rem; line-height: 1.9; color: #435b72; }
.capability-card .round-arrow { position: static; align-self: flex-end; margin-top: auto; }
.services-technology .capability-card:hover, .capability-index .capability-card:hover { border-color: #2465a1; box-shadow: 0 8px 24px #13395712; }
.capability-card:focus-visible { outline: 3px solid #16738c; outline-offset: 4px; }
.capability-note { padding: 22px 26px; margin: 28px 0 0; border-left: 3px solid #25848d; background: #edf6f8; color: #274c5c; font-size: .9rem; line-height: 1.9; overflow-wrap: anywhere; }
.capability-detail .detail-section { padding: 36px; margin-bottom: 28px; }
.capability-detail .capability-intro { border-top: 4px solid #1a6781; background: linear-gradient(115deg,#f9fcff,#edf5fa); }
.capability-detail .capability-kicker { font-family: Manrope,sans-serif; font-size: .85rem; font-weight: 700; letter-spacing: .035em; color: #346f89; margin: 0 0 18px; }
.capability-detail h2 { font-size: 1.65rem; line-height: 1.6; margin: 0 0 24px; overflow-wrap: anywhere; }
.capability-detail .capability-intro > p:last-child { max-width: 65em; margin: 0; line-height: 2; }
.capability-detail .capability-scope-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 36px; }
.capability-detail .capability-scope-item { min-width: 0; border-top: 1px solid #d7e5ef; padding: 26px 0; }
.capability-detail .capability-number { display: inline-block; font-family: Manrope,sans-serif; color: #207c90; font-size: .85rem; letter-spacing: .08em; font-weight: 700; margin-bottom: 12px; }
.capability-detail h3 { font-size: 1.15rem; line-height: 1.65; margin: 0 0 10px; overflow-wrap: anywhere; }
.capability-detail .capability-scope-item p, .capability-detail .capability-steps p { margin: 0; color: #435b72; line-height: 1.9; }
.capability-detail .capability-steps { list-style: none; counter-reset: capability-step; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; padding: 0; margin: 0; }
.capability-detail .capability-steps li { counter-increment: capability-step; padding: 24px; border: 1px solid #d8e4ee; border-radius: 8px; margin: 0; min-width: 0; }
.capability-detail .capability-steps li::before { content: '0' counter(capability-step); display: block; font-family: Manrope,sans-serif; font-size: 1.4rem; color: #236187; margin-bottom: 14px; }
.capability-detail .capability-experience > p { color: #50657b; line-height: 1.9; font-size: .9rem; }
.capability-detail .capability-experience ul { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); list-style: none; gap: 0 36px; padding: 0; margin: 24px 0 0; }
.capability-detail .capability-experience li { position: relative; border-bottom: 1px solid #dfe8ef; margin: 0; padding: 18px 0 18px 18px; line-height: 1.8; overflow-wrap: anywhere; }
.capability-detail .capability-experience li::before { content: ''; width: 5px; height: 5px; border-radius: 50%; background: #247890; position: absolute; top: 31px; left: 0; }
@media (max-width: 1100px) {
  .services-technology .services-technology-links, .capability-index .capability-card-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .capability-detail .capability-steps { grid-template-columns: 1fr; gap: 14px; }
}
@media (max-width: 650px) {
  .services-technology .services-technology-links, .capability-index .capability-card-grid, .capability-detail .capability-scope-grid, .capability-detail .capability-experience ul { grid-template-columns: 1fr; }
  .services-technology .capability-card, .capability-index .capability-card { padding: 24px; min-height: 0; }
  .capability-detail .detail-section { padding: 24px 20px; }
  .capability-detail h2 { font-size: 1.45rem; }
  .capability-note { padding: 18px; }
}
@media (prefers-reduced-motion: reduce) { .capability-card { transition: none !important; } }
@media print {
  .capability-card, .capability-detail .detail-section { break-inside: avoid; box-shadow: none !important; }
  .capability-detail .capability-intro, .capability-note { background: #fff; color: #102e49; }
}
