.capability{height:100vh;height:100svh;min-height:700px;position:relative;overflow:hidden;background:var(--c-bg);scroll-margin-top:var(--header-h)}
.capability__inner{height:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:minmax(0,1fr);align-items:center;gap:clamp(1rem,3vw,3rem)}
.capability__copy{position:relative;z-index:1;padding-block:4rem;max-width:37rem}
.capability__copy h2{font-family:var(--font-heading);font-size:clamp(2.7rem,4.7vw,4.5rem);line-height:1.06;letter-spacing:-.045em;max-width:none;margin:0 0 1.75rem}
.capability__copy p{font-size:clamp(1rem,1.35vw,1.15rem);line-height:1.75;max-width:29rem;color:#30363c;margin:0}
.capability__portrait{height:100%;min-width:0;position:relative;margin:0;align-self:end;display:flex;align-items:flex-end;justify-content:center}
.capability__portrait img{display:block;position:absolute;inset:0 auto auto -20%;height:125%;width:150%;max-width:none;object-fit:contain;object-position:center top}
@media(max-width:800px){.capability{height:auto;min-height:100svh}.capability__inner{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto;gap:0;padding-top:3.5rem}.capability__copy{padding:1rem 0 2.5rem;max-width:36rem}.capability__copy h2{font-size:clamp(2.5rem,7vw,3.6rem);max-width:36rem}.capability__copy p{max-width:31rem}.capability__portrait{height:60svh;min-height:400px;width:100%}.capability__portrait img{left:-10%;max-width:none;height:120%;width:120%}}
