/* SoftwarePro service portfolio, scoped to preserve the existing theme. */
.spv{--spv-ink:#102f51;--spv-blue:#0759b8;--spv-muted:#43566a;max-width:1180px;margin:auto;padding:24px 24px 64px;color:var(--spv-ink);font-size:16px;line-height:1.7}
.spv *{box-sizing:border-box}.spv p{color:var(--spv-muted)}.spv a{color:var(--spv-blue)}.spv a:focus-visible,.spv summary:focus-visible{outline:3px solid #0654aa;outline-offset:5px}.spv-breadcrumb{display:flex;gap:10px;flex-wrap:wrap;font-size:13px;margin-bottom:24px}.spv-breadcrumb a{text-decoration:none}.spv-hero{display:grid;grid-template-columns:1.12fr 1fr;gap:36px;align-items:center;padding:40px;background:#f0f5fa;border:1px solid #dce6f0;border-radius:24px}.spv h1{font-size:clamp(30px,3.4vw,46px);font-weight:750;line-height:1.13;letter-spacing:-1px;margin:14px 0 22px;color:var(--spv-ink)}.spv h2{font-size:clamp(24px,2.4vw,32px);line-height:1.22;font-weight:700;color:var(--spv-ink);margin:0 0 20px}.spv h3{font-size:21px;margin:28px 0 12px;color:var(--spv-ink)}.spv .spv-tag{color:#0759b8;font-size:11px;font-weight:750;letter-spacing:1.4px;line-height:1.6;margin:0 0 14px}.spv .spv-lead{font-size:18px;line-height:1.7}.spv-hero>img{width:100%;height:350px;object-fit:cover;border-radius:16px;display:block}.spv-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.spv a.spv-btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 20px;background:#0759b8;color:white;font-weight:650;border:1px solid #0759b8;border-radius:8px;text-decoration:none;font-size:14px}.spv a.spv-btn:hover{background:#064587}.spv a.spv-outline{background:white;color:#0759b8}.spv a.spv-outline:hover{background:#e7f0fa}.spv-section{margin-top:60px}.spv-intro{max-width:780px;margin-bottom:28px}.spv-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.spv-card{border:1px solid #dce6f0;border-radius:16px;overflow:hidden;display:flex;flex-direction:column;background:#fff}.spv-card-image{display:block}.spv-card img{width:100%;height:185px;object-fit:cover;display:block}.spv-card-body{padding:24px;display:flex;flex:1;flex-direction:column}.spv-card h2{font-size:22px;margin-bottom:14px}.spv-card h2 a{text-decoration:none;color:var(--spv-ink)}.spv-card p{font-size:15px}.spv .spv-more{margin-top:auto;padding-top:12px;text-decoration:none;font-weight:650;font-size:14px}.spv-two{display:grid;grid-template-columns:1fr 1fr;gap:40px}.spv-scope{background:#f3f7fb;padding:30px;border-radius:16px}.spv-scope ul{padding-left:22px;margin:0;color:var(--spv-muted)}.spv-scope li+li{margin-top:14px}.spv-delivery{margin-top:40px;border-left:4px solid #0759b8;padding:24px 30px;background:#f3f7fb;border-radius:0 12px 12px 0}.spv-delivery p:last-child{margin:0}.spv-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;padding-left:22px}.spv-steps li{padding-left:5px}.spv-steps li::marker{color:#0759b8;font-weight:750}.spv-steps strong{display:block;line-height:1.4;margin-bottom:12px}.spv-steps p{font-size:14px}.spv-faq details{padding:20px 0;border-bottom:1px solid #dce6f0}.spv-faq summary{cursor:pointer;font-weight:650}.spv-faq details p{margin:16px 0 0}.spv-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}.spv-grid-two .spv-card img{height:210px}.spv-cta{margin-top:60px;padding:36px;border-radius:20px;background:#102f51;color:white}.spv .spv-cta h2,.spv .spv-cta p{color:white}.spv .spv-cta .spv-tag{color:#a8d4ff}.spv-cta p{max-width:780px}.sp-services-menu{max-height:70vh;overflow-y:auto;min-width:290px}.sp-services-menu .dropdown-item{white-space:normal;padding:9px 16px;font-size:14px}
@media(max-width:991px){.spv-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.spv-hero{grid-template-columns:1fr;padding:28px}.spv-hero>img{height:300px}.spv-two{gap:24px}.spv-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.spv{padding:18px 16px 40px}.spv-grid,.spv-two,.spv-grid-two{grid-template-columns:1fr}.spv-hero{padding:24px;gap:24px}.spv-hero>img{height:220px}.spv-section{margin-top:40px}.spv-cta{padding:26px;margin-top:40px}.spv-actions{flex-direction:column}.spv-steps{gap:18px}.spv-card img{height:200px}.spv h1{letter-spacing:-.5px}.spv-scope{padding:24px}}
