/* Keep every technical service row consistent in English and Arabic. */
.scope-row,
.division-block{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
}
.scope-row > div,
.division-block > div{
  min-width:0;
}
.scope-visual,
.scope-visual.division-pair{
  grid-template-columns:1fr;
  grid-template-rows:1fr 1fr;
  min-height:620px;
  align-self:stretch;
  gap:.55rem;
}
.scope-visual img,
.scope-visual img:first-child,
.scope-visual.division-pair img{
  grid-column:auto;
  width:100%;
  height:100%;
  min-height:0;
  aspect-ratio:auto;
  object-fit:cover;
}
[dir="rtl"] .scope-row,
[dir="rtl"] .division-block{
  direction:rtl;
}
[dir="rtl"] .scope-row > div,
[dir="rtl"] .division-block > div{
  direction:rtl;
  text-align:right;
}
@media (min-width:761px){
  .scope-row,
  .division-block{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  }
  .scope-row.reverse .scope-visual,
  .division-block.reverse .division-photo{
    order:2;
  }
}
@media (max-width:760px){
  .scope-row,
  .division-block{
    grid-template-columns:1fr;
  }
  .scope-row.reverse .scope-visual,
  .division-block.reverse .division-photo{
    order:0;
  }
  .scope-visual,
  .scope-visual.division-pair{
    min-height:0;
    grid-template-columns:1fr 1fr;
    grid-template-rows:1fr;
  }
  .scope-visual img,
  .scope-visual img:first-child,
  .scope-visual.division-pair img{
    height:auto;
    min-height:210px;
    aspect-ratio:4/3;
  }
}

/* Present the five divisions as one continuous, consistently labelled service system. */
.soft-body > span,
.scope-row > div:last-child > span{
  display:none;
}
.soft-services{
  padding-bottom:5rem;
}
#full-scope{
  padding-top:6rem;
  border-top:1px solid rgba(10,70,53,.14);
  background:#fff;
}
#full-scope > .scope-row{
  display:none;
}
#full-scope .landscape-combined{
  margin-top:3rem;
}
#division-details{
  padding-top:2rem;
}
#division-details > .section-head{
  margin-bottom:3rem;
}
.intro-copy p + p{
  margin-top:1rem;
}

/* Full-width client experience without the former photo mosaic. */
.projects{
  display:block;
  min-height:auto;
}
.projects .project-copy{
  max-width:1500px;
  margin:0 auto;
  padding:7rem 7vw;
}
.projects .project-copy h2{
  max-width:1000px;
}
.client-list{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0 2rem;
}
.client-list span{
  display:flex;
  align-items:center;
  gap:1rem;
  min-height:84px;
  padding:1.15rem 0;
  font-size:1rem;
}
.client-list span::before{
  content:attr(data-icon);
  flex:0 0 44px;
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.3);
  border-radius:50%;
  color:var(--sand);
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.08em;
}
@media(max-width:900px){
  .client-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .client-list{grid-template-columns:1fr}
}

/* Target sectors — one consistent operating model adapted to each environment. */
.target-sectors{
  background:var(--paper);
}
.sector-heading{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);
  gap:7vw;
  align-items:end;
  margin-bottom:3.5rem;
}
.sector-heading h2{
  max-width:850px;
  margin-top:1rem;
}
.sector-heading > p{
  max-width:650px;
  color:var(--muted);
  font-size:1.08rem;
  line-height:1.8;
}
.sector-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  border-top:1px solid rgba(10,70,53,.16);
  border-left:1px solid rgba(10,70,53,.16);
}
.sector-grid article{
  min-height:300px;
  padding:2.4rem;
  border-right:1px solid rgba(10,70,53,.16);
  border-bottom:1px solid rgba(10,70,53,.16);
  background:rgba(255,255,255,.34);
}
.sector-icon{
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
  margin-bottom:2rem;
  border-radius:50%;
  background:var(--green);
  color:#fff;
}
.sector-icon svg{
  width:25px;
  height:25px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.65;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.sector-grid h3{
  margin-bottom:.85rem;
  color:var(--green);
  font-size:1.25rem;
  line-height:1.25;
}
.sector-grid p{
  color:var(--muted);
  line-height:1.7;
}
html[dir="rtl"] .sector-grid{
  border-left:0;
  border-right:1px solid rgba(10,70,53,.16);
}
@media(max-width:900px){
  .sector-heading{grid-template-columns:1fr;gap:1.5rem}
  .sector-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .sector-grid{grid-template-columns:1fr}
  .sector-grid article{min-height:auto;padding:2rem}
}
