.services-page { color: #172033; background: #f5f8fd; }
.services-shell { width: min(1120px, calc(100% - 36px)); margin-inline: auto; }
.services-hero { background: linear-gradient(125deg,#101c35,#173f77 65%,#146a71); color: #fff; padding: 84px 0; }
.services-eyebrow { color: #99f6e4; letter-spacing: .12em; font-weight: 800; text-transform: uppercase; font-size: .82rem; }
.services-hero h1 { color: #fff; max-width: 850px; font-size: clamp(2.2rem,5vw,3.7rem); line-height: 1.12; margin: 14px 0; }
.services-hero p:not(.services-eyebrow) { max-width: 760px; line-height: 1.7; color: #e2e8f0; }
.services-button { display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding: 11px 17px; border-radius: 9px; text-decoration: none; background: #1656bd; color: #fff; font-weight: 700; }
.services-button:hover, .services-button:focus-visible { background: #0c3c8b; color: #fff; }
.services-button-light { background: #fff; color: #173f77; margin-top: 15px; }
.services-button-light:hover, .services-button-light:focus-visible { color: #fff; }
.services-section { padding-block: 66px; }
.services-section h2 { font-size: clamp(1.7rem,3vw,2.2rem); margin-bottom: 14px; }
.services-intro { color: #52617a; max-width: 750px; line-height: 1.7; }
.services-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; margin-top: 28px; }
.services-card { display: flex; flex-direction: column; gap: 12px; padding: 30px; border: 1px solid #dae4f0; background: #fff; border-radius: 16px; box-shadow: 0 8px 23px #1e3a5f0a; scroll-margin-top: 85px; }
.services-card > span { text-transform: uppercase; letter-spacing: .09em; font-weight: 800; color: #1656bd; font-size: .76rem; }
.services-card h3 { margin: 0; font-size: 1.4rem; }
.services-card p { margin: 0; color: #475569; line-height: 1.7; }
.services-card .services-note { font-size: .86rem; }
.services-card .services-button { align-self: flex-start; margin-top: auto; }
.services-steps { background: #eaf1fb; }
.services-steps ol { padding-left: 22px; line-height: 1.9; max-width: 750px; }
.services-steps p { color: #52617a; font-size: .87rem; }
@media (max-width:700px) { .services-grid { grid-template-columns: 1fr; } .services-hero { padding: 55px 0; } .services-card { padding: 24px; } }
