.software-services { background: linear-gradient(135deg, #edf2ee, #e7eef0); }

.software-services-heading { text-align: center; margin-bottom: 46px; }
.software-services-heading .eyebrow { margin-bottom: 14px; }
.software-services-heading h2 { margin: 0; font: 600 clamp(35px, 4vw, 54px)/1.1 var(--display); letter-spacing: -.065em; }
.software-services-heading h2 em { font-style: normal; color: #7f807a; }
.software-services-heading > p:last-child { max-width: 500px; margin: 18px auto 0; color: #70736c; font-size: 13px; line-height: 1.75; }

.software-services-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.software-services-grid article { min-height: 260px; padding: 28px; border: 1px solid #fff; border-radius: 22px; background: rgba(255,255,255,.82); box-shadow: 0 15px 35px rgba(64, 83, 76, .08); transition: transform .25s, box-shadow .25s; }
.software-services-grid article:hover { transform: translateY(-5px); box-shadow: 0 22px 42px rgba(64, 83, 76, .13); }
.service-icon { display: grid; width: 32px; height: 32px; place-items: center; color: #a88400; font-size: 25px; }
.software-services-grid h3 { margin: 38px 0 14px; font: 700 17px/1.28 var(--display); letter-spacing: -.035em; }
.software-services-grid p { margin: 0; color: #60645d; font-size: 12px; line-height: 1.85; }

@media (max-width: 900px) { .software-services-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .software-services-grid { grid-template-columns: 1fr; } .software-services-grid article { min-height: 0; } }
