/* Scoped to the services subpage; approved homepage styles stay untouched. */
.page-services .services-intro { padding:26px 0 42px; background:linear-gradient(120deg,#f3fbfd,#e4f6fa); }
.page-services .services-crumb { display:flex; gap:12px; font-size:12px; color:#688395; margin-bottom:28px; }
.page-services .services-intro-grid { display:grid; grid-template-columns:1fr 1fr; gap:65px; align-items:center; }
.page-services .services-kicker { color:#18869e; font-size:10px; font-weight:700; letter-spacing:.17em; margin-bottom:12px; }
.page-services h1 { font-size:46px; line-height:1.3; color:#0d3149; }
.page-services .services-tagline { font-size:23px; color:#275b71; margin:16px 0; font-weight:600; }
.page-services .services-lead { color:#54758a; font-size:15px; line-height:1.9; max-width:500px; }
.page-services .services-intro-actions { display:flex; flex-wrap:wrap; gap:24px; align-items:center; margin-top:26px; }
.page-services .services-text-link { display:inline-flex; align-items:center; gap:8px; font-size:13px; color:#187d94; }
.page-services .services-intro-image { position:relative; margin:0; border-radius:14px; overflow:hidden; }
.page-services .services-intro-image img { width:100%; aspect-ratio:1.9; object-fit:cover; display:block; }
.page-services .services-intro-image figcaption { position:absolute; left:0; right:0; bottom:0; padding:30px 22px 16px; color:#fff; background:linear-gradient(transparent,#0b314bbf); font-size:13px; }
.page-services .services-section { padding:48px 0; }
.page-services .services-section-head { display:flex; align-items:flex-end; justify-content:space-between; gap:36px; margin-bottom:28px; }
.page-services .services-section-head h2 { font-size:29px; line-height:1.4; color:#0d3149; }
.page-services .services-section-head > p { font-size:13px; color:#5a798c; line-height:1.9; max-width:410px; }
.page-services .services-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.page-services .service-card { border:1px solid #dbeaf0; border-radius:12px; overflow:hidden; background:#fff; transition:transform .2s,box-shadow .2s; }
.page-services .service-card:hover { transform:translateY(-4px); box-shadow:0 12px 28px #103b5110; }
.page-services .service-image { position:relative; }
.page-services .service-image img { display:block; width:100%; aspect-ratio:1.8; object-fit:cover; }
.page-services .service-image > span { position:absolute; left:16px; top:16px; background:#fffefa; padding:5px 10px; border-radius:4px; font-size:12px; color:#13738b; }
.page-services .service-copy { position:relative; padding:24px; }
.page-services .service-copy h3 { font-size:19px; padding-right:25px; color:#0d3149; line-height:1.6; }
.page-services .service-icon { position:absolute; top:27px; right:20px; color:#20a9be; }
.page-services .service-copy > p { font-size:13px; line-height:1.9; color:#55778b; margin-top:12px; }
.page-services .service-copy > a { display:inline-flex; align-items:center; gap:10px; color:#177a92; font-size:12px; margin-top:20px; }
.page-services .services-process { background:#eef9fc; border-top:1px solid #e1f0f5; border-bottom:1px solid #e1f0f5; }
.page-services .services-step-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.page-services .services-step-grid li { padding:24px; background:#ffffffc9; border:1px solid #dcecf2; border-radius:9px; }
.page-services .step-number { font-size:28px; color:#36afc2; font-weight:700; }
.page-services .services-step-grid h3 { font-size:17px; color:#0d3149; margin:10px 0 8px; }
.page-services .services-step-grid p { font-size:13px; line-height:1.85; color:#55758a; }
.page-services .services-assurance-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.page-services .services-assurance-card { background:linear-gradient(140deg,#f4fbfd,#fff); border:1px solid #d8eaf0; border-radius:12px; padding:30px; }
.page-services .assurance-icon { display:inline-flex; padding:12px; color:#199db5; background:#e1f5fa; border-radius:9px; margin-bottom:16px; }
.page-services .services-assurance-card h3 { font-size:23px; color:#0d3149; }
.page-services .assurance-lead { margin-top:13px; font-size:14px; line-height:1.9; color:#43687d; }
.page-services .services-assurance-card ul { margin:20px 0; display:grid; gap:13px; }
.page-services .services-assurance-card li { padding-left:15px; position:relative; font-size:13px; color:#54758a; line-height:1.9; }
.page-services .services-assurance-card li::before { content:''; position:absolute; left:0; top:10px; width:5px; height:5px; border-radius:50%; background:#36b7c9; }
.page-services .assurance-note { color:#6a8494; font-size:11px; line-height:1.8; border-top:1px solid #deedf3; padding-top:15px; }
.page-services #service-capabilities { scroll-margin-top:90px; }
@media(max-width:1000px) { .page-services .services-intro-grid { gap:30px; } .page-services .services-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:640px) {
 .page-services .services-intro-grid { grid-template-columns:1fr; gap:26px; }
 .page-services h1 { font-size:34px; }
 .page-services .services-tagline { font-size:20px; }
 .page-services .services-section { padding:34px 0; }
 .page-services .services-section-head { display:block; }
 .page-services .services-section-head h2 { font-size:25px; }
 .page-services .services-section-head > p { margin-top:14px; }
 .page-services .services-card-grid,.page-services .services-assurance-grid { grid-template-columns:1fr; gap:18px; }
 .page-services .services-step-grid { grid-template-columns:1fr; gap:12px; }
 .page-services .services-step-grid li { padding:20px; }
 .page-services .services-assurance-card { padding:24px; }
}
