/* Four-image capability showcase based on the user-provided reference. */
.capabilities-showcase{background:linear-gradient(135deg,#fff 0%,#f7faff 68%,#edf5ff 100%);padding-top:54px;padding-bottom:62px}
.capabilities-showcase .capability-heading{max-width:none;text-align:center;margin:0 auto 28px}
.capabilities-showcase .capability-heading h2{font-size:clamp(28px,2.35vw,42px);font-weight:750;letter-spacing:.5px;margin:0 0 8px;color:#0c2b52}
.capabilities-showcase .capability-heading h2 em{color:#086ce8;font:inherit}
.capabilities-showcase .capability-heading p{font-size:15px;color:#64758b;margin:0;line-height:1.7}
.capabilities-showcase .capability-heading>span{display:block;width:42px;height:3px;border-radius:3px;background:#177bf3;margin:15px auto 0}
.capability-showcase-grid{display:grid;grid-template-columns:minmax(0,1.38fr) minmax(390px,1fr);grid-template-rows:repeat(3,1fr);gap:14px;min-height:510px}
.capability-feature{position:relative;overflow:hidden;border:1px solid #d9e4f0;border-radius:11px;background:#dbe7f3;box-shadow:0 8px 22px #17365312;isolation:isolate}
.capability-feature>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;aspect-ratio:auto;background:#e8eff6;transition:transform .45s ease}
.capability-feature:hover>img{transform:scale(1.025)}
.capability-feature-main{grid-row:1/4;min-height:510px}
.capability-feature-main>img{object-position:50% 50%}
.capability-feature-main:after{content:"";position:absolute;z-index:0;inset:0;background:linear-gradient(90deg,rgba(4,25,49,.78) 0%,rgba(4,25,49,.38) 39%,transparent 66%),linear-gradient(0deg,rgba(4,22,41,.18),transparent 40%)}
.capability-feature-copy{position:relative;z-index:1}
.capability-feature-main .capability-feature-copy{padding:28px 24px;color:#fff;max-width:280px}
.capability-feature h3{font-size:30px;line-height:1.25;margin:0;color:#082c58;font-weight:850;letter-spacing:.5px}
.capability-feature-main h3{font-size:38px;color:#fff;text-shadow:0 2px 12px rgba(0,20,48,.45)}
.capability-feature-copy i{display:block;width:34px;height:3px;border-radius:3px;background:#177bf3;margin:10px 0 12px}
.capability-feature p{font-size:13px;line-height:1.65;margin:0;color:#546981}
.capability-feature-main p{font-size:15px;color:#e1ecf8}
.capability-main-badges{position:absolute;z-index:2;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(3,1fr);padding:42px 25px 20px;background:linear-gradient(180deg,transparent 0%,rgba(4,28,56,.48) 28%,rgba(4,28,56,.9) 100%)}
.capability-main-badges>span{position:relative;display:grid;grid-template-columns:43px 1fr;grid-template-rows:auto auto;align-items:center;min-width:0;padding:0 14px;color:#fff}
.capability-main-badges>span+span:before{content:"";position:absolute;left:0;top:7px;bottom:7px;width:1px;background:linear-gradient(180deg,transparent,rgba(188,218,249,.36),transparent)}
.capability-main-badges b{grid-row:1/3;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;border:1px solid rgba(193,224,255,.58);background:rgba(230,243,255,.1);color:#eaf5ff}
.capability-main-badges svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.capability-main-badges strong{font-size:17px;line-height:1.15;font-weight:850;letter-spacing:.2px;white-space:nowrap}
.capability-main-badges small{margin-top:4px;color:#a9c2df;font-size:8px;line-height:1.15;letter-spacing:.2px;white-space:nowrap}
.capability-feature-side{min-height:160px}
.capability-feature-side>img{object-position:68% center}
.capability-feature-side:after{content:"";position:absolute;z-index:0;inset:0;background:linear-gradient(90deg,#f9fbfe 0%,#f9fbfef2 31%,#f9fbfe9e 46%,transparent 68%)}
.capability-feature-side .capability-feature-copy{display:flex;flex-direction:column;justify-content:center;width:49%;height:100%;padding:16px 18px}
.capability-feature-side h3{font-size:26px;white-space:nowrap}
.capability-feature-side .capability-feature-copy i{width:27px;height:2px;margin:7px 0 8px}
.capability-feature-side p{font-size:12px}
.capability-disclaimer{font-size:10px;color:#8695a7;text-align:right;margin:10px 2px 0;line-height:1.6}
@media(max-width:1050px){
 .capability-showcase-grid{grid-template-columns:1.12fr 1fr;min-height:470px}
 .capability-feature-main{min-height:470px}
 .capability-feature-side .capability-feature-copy{width:57%;padding:13px 15px}
 .capability-feature-side h3{font-size:23px}
 .capability-feature-side p{font-size:11px}
}
@media(max-width:760px){
 .capabilities-showcase{padding-top:42px;padding-bottom:45px}
 .capabilities-showcase .capability-heading{margin-bottom:24px}
 .capabilities-showcase .capability-heading h2{font-size:27px;line-height:1.4}
 .capabilities-showcase .capability-heading p{font-size:12px;line-height:1.7}
 .capability-showcase-grid{grid-template-columns:1fr;grid-template-rows:auto;gap:12px;min-height:0}
 .capability-feature-main{grid-row:auto;min-height:420px}
 .capability-feature-main .capability-feature-copy{padding:24px 20px}
 .capability-main-badges{left:0;right:0;bottom:0;padding:38px 17px 17px}
 .capability-feature-side{min-height:180px}
 .capability-feature-side .capability-feature-copy{width:56%}
 .capability-disclaimer{text-align:left;margin-top:12px}
}
@media(max-width:480px){
 .capability-feature-main{min-height:360px}
 .capability-feature-main h3{font-size:31px}
 .capability-feature-main p{font-size:13px}
 .capability-main-badges{padding:32px 7px 14px}
 .capability-main-badges>span{grid-template-columns:30px 1fr;padding:0 5px}
 .capability-main-badges b{width:25px;height:25px}
 .capability-main-badges svg{width:17px;height:17px}
 .capability-main-badges strong{font-size:11px}
 .capability-main-badges small{font-size:5px}
 .capability-feature-side{min-height:160px}
 .capability-feature-side h3{font-size:20px}
 .capability-feature-side p{font-size:10px}
}
