/* Stable image frames: crop without distorting, independent of intrinsic dimensions. */
.case-layout>*,.industry-layout>*,.industry-panel,.insight-card{min-width:0}
.image-surface{width:100%;position:relative;isolation:isolate}
.case-image-surface{aspect-ratio:4/3}
.industry-image-surface{aspect-ratio:16/10}
.editorial-image-surface{aspect-ratio:16/10}
.image-surface>img{position:absolute;inset:0;display:block;width:100%;height:100%;min-height:0;max-width:none;object-fit:cover;object-position:center;z-index:0}
.case-image-surface:after,.industry-image-surface:after{content:"";position:absolute;inset:0;height:auto;z-index:1;pointer-events:none;background:linear-gradient(135deg,rgba(33,72,251,.22),rgba(3,12,68,.08) 45%,rgba(3,12,68,.42));mix-blend-mode:multiply}
.photo-context,.industry-decal,.editorial-overlay{z-index:2}
.editorial-image-surface:after{z-index:1}
/* Reduce decorative vertical space; let copy determine the minimum card height. */
@media(min-width:1024px){
.capability-grid{grid-template-columns:2fr 1fr 1fr;gap:12px}
.capability{padding:22px 24px 25px}
.capability-0{padding:22px 30px 28px}
.reference-art{height:clamp(98px,8.5vw,136px);margin:4px 0 12px}
.capability-0 .reference-art{min-height:260px;margin:10px 0 18px}
.orbit-art{width:min(100%,380px)}
.cap-copy h3{font-size:clamp(25px,2.05vw,33px);margin-bottom:12px}
.cap-copy>p{font-size:12px;line-height:1.7}
.capability-0 .cap-copy h3{font-size:clamp(35px,3vw,48px);max-width:24ch}
.capability-0 .cap-copy>p{font-size:13px;line-height:1.75}
}
.expanded-footer{background:var(--pearl);padding:64px 0 24px}
.footer-intro{display:flex;gap:36px;align-items:center;padding-bottom:36px;border-bottom:1px solid var(--line)}
.footer-intro>p{font:400 20px/1.35 Outfit,sans-serif;max-width:22ch}
.footer-intro>.text-link{margin-left:auto;align-self:center}
.footer-grid{display:grid;grid-template-columns:1.15fr .85fr 1.2fr .9fr;gap:40px;padding-block:40px}
.footer-grid>nav{display:flex;flex-direction:column;align-items:flex-start;gap:0;margin:0;width:auto}
.footer-grid h2{font:600 11px/1.5 Inter,sans-serif;letter-spacing:.1em;text-transform:uppercase;margin:0 0 20px}
.footer-grid h3{font:500 13px/1.5 Inter,sans-serif;margin:20px 0 6px;letter-spacing:0}
.footer-grid nav>a,.footer-grid nav>button,.footer-contact>a{font-size:12px;text-align:left;line-height:1.55;padding:9px 0;min-height:40px}
.footer-contact>a{display:inline-flex;align-items:center;padding-top:0}
.footer-contact address{font-style:normal;font-size:12px;line-height:1.8;color:var(--muted)}
.footer-connect>p{font-size:12px;line-height:1.8;color:var(--muted);max-width:24ch}
.social-link{display:flex;align-items:center;gap:12px;font-size:12px;min-height:48px;margin:16px 0}
.social-icon{display:grid;place-items:center;width:30px;height:30px;background:var(--navy);color:white;font:700 18px Arial,sans-serif;border-radius:3px}
.footer-connect>.text-link{font-size:11px}
@media(max-width:1023px){.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.footer-intro{flex-wrap:wrap}.footer-intro>.text-link{margin-left:0}.footer-bottom>div{width:auto;order:0}}
@media(max-width:559px){.expanded-footer{padding-top:38px}.footer-intro{align-items:flex-start;flex-direction:column;gap:18px}.footer-intro>.text-link{align-self:flex-start}.footer-grid{gap:30px 20px}.footer-grid>nav:first-child{grid-column:1/-1}.footer-contact{grid-column:1/-1;grid-row:3}.footer-connect{grid-column:2;grid-row:2}.footer-bottom{align-items:flex-start}.footer-bottom>div{width:100%}}
