/* Services concept: scoped styles keep the rest of the website unchanged. */
.services-draft { color: #273b4a; font-family: 'Open Sans', sans-serif; }
.services-draft * { box-sizing: border-box; }
.services-wrap { width: min(1200px, calc(100% - 64px)); margin-inline: auto; }
.services-intro { padding: 150px 0 64px; background: #203f60; color: #fff; }
.services-draft .services-eyebrow { font: 600 12px/1.6 'Open Sans', sans-serif; letter-spacing: .14em; margin: 0 0 18px; }
.services-intro .services-eyebrow { color: #bdd5ee; }
.services-draft h1 { font: 600 clamp(34px, 4.3vw, 60px)/1.12 'Poppins', sans-serif; margin: 0 0 24px; padding: 0; letter-spacing: -.035em; color: inherit; }
.services-lead { max-width: 760px; font-size: 18px; line-height: 1.7; margin: 0; color: #e1e9f1; }
.services-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 28px; margin-top: 30px; }
.services-draft a { text-decoration: none; }
.services-cta { display: inline-flex; align-items: center; justify-content: space-between; gap: 24px; background: #fff; color: #203f60; padding: 15px 22px; font-weight: 600; line-height: 1.4; }
.services-cta:hover { background: #e8f0f7; }
.services-secondary { color: #fff; border-bottom: 1px solid #96b5d4; padding-block: 8px; }
.services-capabilities { padding-block: 64px; }
.services-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 40px; margin-bottom: 32px; }
.services-section-heading > p { max-width: 370px; margin: 0; line-height: 1.7; font-size: 15px; }
.services-draft h2 { color: #203f60; font: 600 clamp(25px, 2.5vw, 34px)/1.25 'Poppins', sans-serif; padding: 0; margin: 0; letter-spacing: -.025em; }
.services-section-heading .services-eyebrow { color: #466a90; margin-bottom: 10px; }
.services-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.capability-card { position: relative; display: flex; flex-direction: column; padding: 32px; background: #f3f5f6; border-top: 12px solid #315e91; }
.capability-number { color: #547495; font: 500 14px 'Poppins', sans-serif; margin-bottom: 22px; }
.services-draft .capability-card h3 { font: 600 27px/1.25 'Poppins', sans-serif; letter-spacing: -.025em; margin: 0 0 18px; padding: 0; color: #203f60; }
.capability-card > p { font-size: 16px; line-height: 1.7; margin: 0 0 22px; }
.capability-card .capability-scope { font-size: 12px; line-height: 1.8; color: #536676; margin-top: auto; }
.capability-card > a { display: flex; justify-content: space-between; gap: 16px; border-top: 1px solid #d6dee4; padding-top: 18px; color: #264f7b; font-weight: 600; font-size: 14px; }
.capability-card > a:hover { text-decoration: underline; }
.services-enquiry { display: flex; align-items: center; justify-content: space-between; gap: 40px; padding: 36px; margin-bottom: 64px; background: #e8eff5; }
.services-enquiry p:last-child { max-width: 660px; line-height: 1.7; margin: 16px 0 0; }
.services-enquiry .services-cta { flex-shrink: 0; background: #2d5992; color: #fff; }
.services-enquiry .services-cta:hover { background: #203f60; }
@media (max-width: 700px) {
  .services-wrap { width: calc(100% - 32px); }
  .services-intro { padding: 110px 0 40px; }
  .services-lead { font-size: 16px; }
  .services-section-heading, .services-enquiry { flex-direction: column; align-items: stretch; gap: 20px; }
  .services-grid { grid-template-columns: 1fr; gap: 20px; }
  .services-capabilities { padding-block: 40px; }
  .capability-card { padding: 24px; }
  .services-enquiry { padding: 24px; margin-bottom: 40px; }
  .services-draft .capability-card h3 { font-size: 25px; }
}

/* Delivery stages use a compact editorial row beneath the service cards. */
.services-delivery { padding:12px 0 64px; scroll-margin-top:110px; }
.services-delivery-intro { display:grid; grid-template-columns:1fr auto; column-gap:48px; align-items:end; margin-bottom:32px; }
.services-delivery-intro .services-eyebrow { grid-column:1 / -1; color:#466a90; }
.services-delivery-intro h2 { grid-column:1; }
.services-delivery-intro > p:not(.services-eyebrow) { grid-column:1; font-size:16px; line-height:1.8; margin:18px 0 0; max-width:730px; }
.services-delivery-intro > a { grid-column:2; grid-row:2 / 4; align-self:end; }
.services-delivery-list { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:2px solid #203f60; padding-top:28px; }
.services-delivery-list article { padding:0 24px; border-left:1px solid #d5dee3; }
.services-delivery-list article:first-child { padding-left:0; border-left:0; }
.services-delivery-list article:last-child { padding-right:0; }
.services-delivery-step { display:block; color:#58738b; font-size:11px; letter-spacing:.12em; margin-bottom:18px; }
.services-delivery-list h3 { font:600 20px/1.35 'Poppins',sans-serif; color:#203f60; letter-spacing:-.025em; padding:0; margin:0 0 14px; }
.services-delivery-list p { font-size:14px; line-height:1.8; margin:0; }
@media(max-width:1000px) { .services-delivery-list { grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px 0; } .services-delivery-list article:nth-child(3) { border-left:0; padding-left:0; } }
@media(max-width:700px) { .services-delivery { padding:8px 0 40px; }.services-delivery-intro { display:block; }.services-delivery-intro > a { margin-top:22px; }.services-delivery-list { grid-template-columns:1fr; gap:24px; padding-top:24px; }.services-delivery-list article { padding:0 0 24px; border-left:0; border-bottom:1px solid #d5dee3; }.services-delivery-list article:last-child { padding-bottom:0; border-bottom:0; }.services-delivery-step { margin-bottom:10px; } }

@media(min-width:1001px) { .services-delivery-list h3 { min-height:2.7em; } }

.services-delivery-intro { position:relative; isolation:isolate; }
.services-delivery-accent { position:absolute; z-index:-1; pointer-events:none; left:-5px; top:-18px; height:calc(100% + 24px); width:auto; max-width:80%; opacity:.045; }
.services-delivery-list h3 { display:flex; align-items:flex-start; gap:10px; }
.services-delivery-icon { display:block; flex:0 0 24px; color:#203f60; margin-top:1px; }
@media(max-width:700px) { .services-delivery-accent { top:0; height:calc(100% - 36px); } }

.services-capabilities .services-section-heading { display:block; }
.services-capabilities .services-section-heading > p { max-width:740px; margin:18px 0 0; }
