/* Services page. White, black and grey, with teal only as the accent. */
.services-page .page-hero{min-height:0}
.services-page .page-hero-grid{min-height:0;padding-top:clamp(2.5rem,7vh,4.5rem);padding-bottom:clamp(3rem,8vh,5rem)}
.services-page .page-hero h1{max-width:18em;font-size:clamp(1.7rem,3.05vw,2.85rem);line-height:1.08;text-wrap:balance}
.services-page .services-jumps{flex-wrap:wrap;margin-top:clamp(2rem,5vh,3rem)}
.services-page .services-jumps .button{margin-top:0}
.services-page .services-hero .button-light{color:#04221f;background:#fff}
.services-page .services-hero .button-light:hover{background:#e8f7f5}
.services-page .services-hero .button-light:focus-visible{outline:3px solid #1cbdad;outline-offset:4px}
.services-page .services-hero{isolation:isolate;overflow:hidden;background:#061c1e}
.services-hero-media{position:absolute;inset:0;z-index:0;display:block;margin:0}
.services-hero-media img{width:100%;height:100%;object-fit:cover;object-position:62% center}
.services-page .services-hero::after{background:linear-gradient(90deg,rgba(6,28,30,.82) 0%,rgba(6,28,30,.78) 20%,rgba(6,28,30,.74) 40%,rgba(6,28,30,.64) 55%,rgba(6,28,30,.48) 70%,rgba(6,28,30,.30) 82%,rgba(6,28,30,.14) 91%,rgba(6,28,30,.05) 97%,rgba(6,28,30,0) 100%)}
@media(max-width:1200px){
  .services-page .services-hero::after{background:linear-gradient(90deg,rgba(6,28,30,.84) 0%,rgba(6,28,30,.80) 24%,rgba(6,28,30,.76) 46%,rgba(6,28,30,.72) 68%,rgba(6,28,30,.60) 80%,rgba(6,28,30,.40) 88%,rgba(6,28,30,.20) 94%,rgba(6,28,30,.06) 98%,rgba(6,28,30,0) 100%)}
}
@media(max-width:700px){
  .services-hero-media img{object-position:center}
  .services-page .services-hero::after{background:linear-gradient(180deg,rgba(6,28,30,.86),rgba(6,28,30,.74))}
}
.services-page #offshore,.services-page #onshore,.services-page #how-we-work{scroll-margin-top:112px}
.service-offer .section-label{color:#08756d}
.service-offer h2,.service-how h2{max-width:14em;margin:.55rem 0 0;font-size:var(--h2);font-weight:400;letter-spacing:-.045em;line-height:1.02;text-wrap:balance}
.service-intro{max-width:44rem}
.service-lead{max-width:40rem;margin:1.35rem 0 0;color:#0f1419;font-size:clamp(1.2rem,1.8vw,1.5rem);font-weight:500;letter-spacing:-.02em;line-height:1.4}
.service-support{max-width:42rem;margin:.85rem 0 0;color:#5a6472;font-size:1.05rem;line-height:1.55}
.service-support+.service-support{margin-top:.45rem}
.service-offer-alt{background:#f2f3f4}
.service-flow{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(1.15rem,2.2vw,2.25rem);margin:clamp(2.75rem,5.5vw,4.25rem) 0 0;padding:0;list-style:none}
.service-flow::before{position:absolute;top:1.15rem;left:1.15rem;right:14%;height:1px;background:#d3d7db;content:""}
.service-flow li{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;gap:.95rem;min-width:0}
.service-flow-num{display:grid;place-items:center;width:2.3rem;height:2.3rem;border:1px solid #c9ced3;border-radius:50%;background:#fff;color:#08756d;font-size:.78rem;font-weight:600;letter-spacing:.04em}
.service-offer-alt .service-flow-num{background:#f2f3f4}
.service-flow h3{margin:0 0 .4rem;font-size:1.08rem;font-weight:600;letter-spacing:-.02em;line-height:1.25}
.service-flow p{margin:0;color:#5a6472;font-size:.98rem;line-height:1.45}
.service-note{max-width:44rem;margin:1.5rem 0 0;color:#5a6472;font-size:1.05rem;line-height:1.55}
.service-method{display:grid;grid-template-columns:6.5rem minmax(0,1fr);gap:.35rem 1.75rem;align-items:start;margin-top:clamp(2.25rem,4.5vw,3.5rem);padding-top:clamp(1.75rem,3.5vw,2.5rem);border-top:1px solid rgba(15,20,25,.12)}
.service-method-label{margin:.4rem 0 0;color:#08756d;font-size:.78rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}
.service-method-lead{max-width:40rem;margin:0;font-size:clamp(1.25rem,1.9vw,1.6rem);font-weight:500;letter-spacing:-.02em;line-height:1.35}
.service-method-line{max-width:38rem;margin:.9rem 0 0;color:#0f1419;font-family:var(--font-serif);font-size:clamp(1.15rem,1.6vw,1.4rem);font-style:italic;font-weight:500;line-height:1.35}
.service-how h2{max-width:none}
.how-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:clamp(1.75rem,4vw,2.75rem) 0 0;padding:0;list-style:none;border-top:1px solid rgba(15,20,25,.12)}
.how-steps li{min-width:0;padding:1.5rem 1.75rem 0 0}
.how-steps li+li{padding-left:1.75rem;border-left:1px solid rgba(15,20,25,.12)}
.how-steps span{color:#08756d;font-size:.82rem;font-weight:600;letter-spacing:.08em}
.how-steps h3{margin:1.1rem 0 .65rem;font-size:clamp(1.3rem,1.8vw,1.65rem);font-weight:500;letter-spacing:-.02em;line-height:1.2}
.how-steps p{margin:0;color:#5a6472;font-size:1.02rem;line-height:1.55}
.service-quiet{max-width:46rem;margin:2rem 0 0;color:#5a6472;font-size:1rem;line-height:1.5}
@media(max-width:850px){
  .services-page #offshore,.services-page #onshore,.services-page #how-we-work{scroll-margin-top:96px}
}
@media(max-width:800px){
  .how-steps,.service-method{grid-template-columns:1fr}
  .how-steps li+li{margin-top:1.35rem;padding:1.35rem 0 0;border-top:1px solid rgba(15,20,25,.12);border-left:0}
  .service-offer h2{max-width:none}
  .service-flow{display:flex;flex-direction:column;gap:0;margin-top:2.25rem}
  .service-flow::before{top:.15rem;bottom:.15rem;left:1.15rem;right:auto;width:1px;height:auto}
  .service-flow li{flex-direction:row;align-items:flex-start;gap:1rem;padding:0 0 1.5rem}
  .service-flow li:last-child{padding-bottom:0}
  .service-flow-num{flex:none}
  .service-flow-copy{padding-top:.3rem}
  .service-method{gap:.65rem}
  .service-method-label{margin:0}
}
@media(max-width:640px){
  .services-page .services-jumps{flex-direction:column;align-items:stretch}
  .services-page .services-jumps .button{justify-content:center}
}
