/* Services page */
.services-page{background:#fff}
.services-hero-page{position:relative;min-height:calc(92svh - var(--header-h));display:flex;align-items:flex-end;overflow:hidden;background:var(--dark);color:#fff}
.services-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 58%}
.services-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,39,44,.94) 0%,rgba(0,39,44,.78) 39%,rgba(0,39,44,.2) 74%,rgba(0,39,44,.28) 100%)}
.services-hero-content{position:relative;z-index:2;width:min(1500px,100%);margin:0 auto;padding:clamp(96px,10vw,160px) 7vw clamp(76px,8vw,118px)}
.services-hero-content h1{max-width:1100px;margin:18px 0 28px;font:600 clamp(62px,7.3vw,112px)/.89 var(--serif);letter-spacing:-.058em;color:#fff}
.services-hero-content h1 em{font-style:italic;color:#69e5eb}
.services-hero-content>p:not(.kicker){max-width:760px;margin:0 0 34px;font-size:15px;line-height:1.86;color:#e2f3f4}
.services-hero-content .btn{display:inline-flex}

.services-manifesto-page{padding:11vw 7vw 12vw;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(320px,.72fr);gap:9vw;align-items:start;background:#fff}
.services-manifesto-page h2{margin:16px 0 0;font:600 clamp(56px,6vw,96px)/.92 var(--serif);letter-spacing:-.05em;color:var(--ink)}
.services-manifesto-page h2 em{font-style:italic;color:var(--cyan)}
.services-manifesto-copy{padding-top:18px;border-top:1px solid #bdd8da}
.services-manifesto-copy p{margin:0 0 24px;font-size:15px;line-height:1.9;color:#547277}

.services-journey{padding:12vw 7vw;background:var(--dark);color:#fff}
.services-journey-intro{display:grid;grid-template-columns:.72fr 1.28fr;gap:8vw;align-items:end;margin-bottom:72px}
.services-journey-intro h2{margin:14px 0 22px;font:600 clamp(56px,6.4vw,104px)/.91 var(--serif);letter-spacing:-.052em}
.services-journey-intro h2 em{font-style:italic;color:#70e8ed}
.services-journey-intro>p:last-child{max-width:620px;margin:0;font-size:14px;line-height:1.82;color:#d8ebed}
.services-journey-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.2);border-left:1px solid rgba(255,255,255,.2)}
.services-journey-grid article{min-height:340px;padding:30px 28px 32px;border-right:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2);display:flex;flex-direction:column}
.services-journey-grid span{font-size:9px;letter-spacing:.2em;color:#77dfe4}
.services-journey-grid h3{margin:62px 0 18px;font:600 clamp(28px,2.4vw,40px)/1.04 var(--serif)}
.services-journey-grid p{margin:0;font-size:13px;line-height:1.78;color:#d4e8e9}

.services-process-feature{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(430px,.94fr);min-height:88vh;background:#f4fafa}
.services-process-photo{min-height:720px;overflow:hidden}
.services-process-photo img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}
.services-process-copy{display:flex;flex-direction:column;justify-content:center;padding:9vw 8vw}
.services-process-copy h2{margin:16px 0 30px;font:600 clamp(50px,5vw,82px)/.93 var(--serif);letter-spacing:-.047em;color:var(--ink)}
.services-process-copy h2 em{font-style:italic;color:var(--cyan)}
.services-process-copy>p:not(.kicker){max-width:620px;margin:0 0 20px;font-size:14px;line-height:1.86;color:#55757a}

.services-included{padding:12vw 7vw;background:#fff}
.services-included-head{display:grid;grid-template-columns:.7fr 1.3fr;gap:7vw;align-items:end;margin-bottom:68px}
.services-included-head h2{margin:14px 0 0;font:600 clamp(58px,6.2vw,100px)/.91 var(--serif);letter-spacing:-.05em}
.services-included-head h2 em{font-style:italic;color:var(--cyan)}
.services-included-list{border-top:1px solid #b9d5d8}
.services-included-list>div{display:grid;grid-template-columns:70px 1fr;gap:24px;align-items:center;padding:22px 0;border-bottom:1px solid #b9d5d8}
.services-included-list span{font-size:9px;letter-spacing:.18em;color:#6b9699}
.services-included-list strong{font:500 clamp(23px,2.5vw,38px)/1.12 var(--serif);color:var(--ink)}

.services-focus{padding:11vw 7vw;background:var(--teal);color:#fff;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:9vw;align-items:end}
.services-focus-main h2{margin:14px 0 28px;font:600 clamp(62px,7vw,112px)/.9 var(--serif);letter-spacing:-.055em}
.services-focus-main h2 em{font-style:italic;color:#7cebf0}
.services-focus-main>p:not(.kicker){max-width:720px;margin:0;font-size:15px;line-height:1.84;color:#e3f5f6}
.services-focus aside{padding:26px 0 0;border-top:1px solid rgba(255,255,255,.4)}
.services-focus aside small{font-size:9px;letter-spacing:.2em;color:#8ee9ed}
.services-focus aside p{margin:18px 0 0;font-size:13px;line-height:1.78;color:#e3f4f5}

.services-final-cta{position:relative;min-height:78vh;display:flex;align-items:flex-end;overflow:hidden;background:var(--dark);color:#fff}
.services-final-cta>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 54%}
.services-final-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,40,44,.93),rgba(0,40,44,.64) 45%,rgba(0,40,44,.16) 77%)}
.services-final-copy{position:relative;z-index:2;width:min(1500px,100%);margin:0 auto;padding:10vw 7vw 8vw}
.services-final-copy h2{max-width:980px;margin:16px 0 28px;font:600 clamp(58px,6.6vw,106px)/.9 var(--serif);letter-spacing:-.053em}
.services-final-copy h2 em{font-style:italic;color:#72e7ec}
.services-final-copy>p:not(.kicker){max-width:650px;margin:0 0 30px;font-size:14px;line-height:1.82;color:#e1f2f3}
.services-final-actions{display:flex;align-items:center;gap:28px}

@media(max-width:1100px){
  .services-journey-grid{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:900px){
  .services-hero-page{min-height:80svh}
  .services-hero-image{object-position:60% center}
  .services-hero-overlay{background:linear-gradient(180deg,rgba(0,39,44,.12),rgba(0,39,44,.36) 36%,rgba(0,39,44,.94) 100%)}
  .services-hero-content{padding:18vw 6vw 12vw;align-self:flex-end}
  .services-hero-content h1{max-width:96%;font-size:clamp(49px,12.7vw,76px);line-height:.92;margin:14px 0 20px}
  .services-hero-content>p:not(.kicker){max-width:96%;font-size:13px;line-height:1.72;margin-bottom:26px}

  .services-manifesto-page{padding:20vw 6vw;grid-template-columns:1fr;gap:34px}
  .services-manifesto-page h2{font-size:clamp(48px,13vw,72px)}
  .services-manifesto-copy{padding-top:24px}
  .services-manifesto-copy p{font-size:14px;line-height:1.78}

  .services-journey{padding:20vw 6vw}
  .services-journey-intro{grid-template-columns:1fr;gap:18px;margin-bottom:44px}
  .services-journey-intro h2{font-size:clamp(50px,13vw,74px)}
  .services-journey-grid{grid-template-columns:1fr;border-left:0}
  .services-journey-grid article{min-height:0;padding:28px 0 30px;border-right:0}
  .services-journey-grid h3{margin:34px 0 14px;font-size:30px}

  .services-process-feature{grid-template-columns:1fr;min-height:0}
  .services-process-photo{min-height:72vw;max-height:620px}
  .services-process-copy{padding:17vw 6vw 18vw}
  .services-process-copy h2{font-size:clamp(47px,12.2vw,68px);margin:14px 0 24px}
  .services-process-copy>p:not(.kicker){font-size:13px;line-height:1.78}

  .services-included{padding:20vw 6vw}
  .services-included-head{grid-template-columns:1fr;gap:18px;margin-bottom:42px}
  .services-included-head h2{font-size:clamp(50px,13vw,72px)}
  .services-included-list>div{grid-template-columns:44px 1fr;gap:14px;padding:18px 0}
  .services-included-list strong{font-size:clamp(21px,6.5vw,30px)}

  .services-focus{padding:20vw 6vw;grid-template-columns:1fr;gap:50px}
  .services-focus-main h2{font-size:clamp(52px,13.5vw,78px)}
  .services-focus-main>p:not(.kicker){font-size:13px;line-height:1.78}
  .services-focus aside p{font-size:13px}

  .services-final-cta{min-height:72svh}
  .services-final-cta>img{object-position:62% center}
  .services-final-overlay{background:linear-gradient(180deg,rgba(0,40,44,.12),rgba(0,40,44,.4) 34%,rgba(0,40,44,.94) 100%)}
  .services-final-copy{padding:20vw 6vw 14vw}
  .services-final-copy h2{font-size:clamp(50px,13vw,74px)}
  .services-final-actions{align-items:flex-start;flex-direction:column;gap:22px}
}


@supports (content-visibility:auto) {
  .services-manifesto-page,.services-journey,.services-process-feature,.services-included,.services-focus,.services-final-cta {
    content-visibility:auto;
    contain-intrinsic-size:850px;
  }
}
