/* De tekstkolommen delen dezelfde startlijnen en leesbreedte. */
:root{--text-column-gap:80px;--intro-offset:44px;--reading-width:55ch}
.section-heading,.services-layout,.fit-layout,.about-layout,.faq-layout,.contact-layout{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:var(--text-column-gap);
  align-items:start;
}
:is(.section-heading,.services-layout,.fit-layout,.about-layout,.faq-layout,.contact-layout)>*{min-width:0}
.section-heading>.section-intro,.section-heading>.intro-copy{
  width:100%;
  max-width:none;
  max-inline-size:var(--reading-width);
  margin:0;
  padding:var(--intro-offset) 0 0;
}
.hero h1{margin-left:0}
.hero-description,.intro-copy p,.section-intro,.fit-description,.about-copy>p:not(.eyebrow),.faq-intro,.contact-copy>p:not(.eyebrow){
  text-align:left;
  text-wrap:pretty;
  line-height:1.85;
}
.fit-description,.about-copy>p:not(.eyebrow),.contact-copy>p:not(.eyebrow){max-inline-size:var(--reading-width)}
.about-copy>p+p:not(.eyebrow){margin-top:18px}
.value-row article{min-width:0}
.value-row,.steps{column-gap:var(--text-column-gap)}
.value-row p{max-width:none;text-wrap:pretty}
.service-description{max-width:none;text-wrap:pretty}
.service-detail li,.approach-footer>span{display:grid;grid-template-columns:16px minmax(0,1fr);align-items:start}
.service-detail li svg,.approach-footer>span svg{margin-top:.2em}
.faq-item summary{display:grid;grid-template-columns:minmax(0,1fr) 16px;align-items:start}
.faq-item .expand-icon{margin-top:.3em}
.faq-item p,.step p{ text-wrap:pretty }
.faq-list{margin-top:20px}
.approach-footer{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.step h3{min-block-size:3em}
@supports(grid-template-rows:subgrid){
  .steps{grid-template-rows:repeat(3,auto);row-gap:0}
  .step{display:grid;grid-row:span 3;grid-template-rows:subgrid;row-gap:0;min-width:0}
  .step h3{min-block-size:0}
}
@media(max-width:1150px){:root{--text-column-gap:60px}}
@media(max-width:900px){
  :root{--text-column-gap:40px;--intro-offset:38px}
  @supports(grid-template-rows:subgrid){.step:nth-child(n+3){padding-top:34px}}
}
@media(max-width:640px){
  .section-heading,.services-layout,.fit-layout,.about-layout,.faq-layout,.contact-layout{grid-template-columns:minmax(0,1fr)}
  .section-heading{row-gap:24px}
  .section-heading>.section-intro,.section-heading>.intro-copy{padding:0}
  .services-layout,.fit-layout,.about-layout,.faq-layout,.contact-layout{row-gap:35px}
  .faq-list{margin-top:0}
  .approach-footer{grid-template-columns:minmax(0,1fr);gap:17px}
  .service-detail li{line-height:1.8}
  .text-link{max-width:100%;align-items:flex-start;text-wrap:pretty}
  .text-link svg{margin-top:.1em}
}
