/* BIM-only content layouts. Shared Services typography and gutters stay intact. */
.bim-page{overflow-x:clip;--bim-header-height:var(--header-height);--bim-nav-height:64px;--container-gutter:.875rem}
.bim-page main{overflow:visible}
.bim-page{--bim-visible-header-height:var(--bim-header-height);--bim-nav-motion:180ms ease}
.bim-page:has(.vantage-header.site-header--hidden){--bim-visible-header-height:0px}
.bim-page .vantage-header{transform:translateY(0);transition:transform var(--bim-nav-motion)}
.bim-page .vantage-header.site-header--hidden{transform:translateY(-100%)}
@media(min-width:30rem){.bim-page{--container-gutter:1.25rem}}
@media(min-width:48rem){.bim-page{--container-gutter:2rem}}
@media(min-width:64rem){.bim-page{--container-gutter:4rem;--header-height:5rem}}
@media(min-width:90rem){.bim-page{--container-gutter:4rem}}
.bim-page .services-hero{
  min-height:clamp(34rem,48vw,40rem);
  padding:clamp(3rem,5.2vw,4.5rem) 0;
  background-color:#054b54;
  background-image:
    linear-gradient(90deg,rgba(2,42,48,.9),rgba(5,75,84,.72) 52%,rgba(2,42,48,.84)),
    url("/assets/images/services/bim/bim-hero.webp");
  background-position:center;
  background-size:cover;
}
.bim-page .services-hero__inner{display:grid;grid-template-columns:minmax(0,1fr);justify-content:normal;justify-items:center;gap:clamp(3rem,6vw,5.5rem);padding:0}
.bim-page .services-hero__title{max-width:16ch}
.bim-page .services-hero__description{text-align:center}
.bim-page .services-hero__actions{margin-top:0}
.bim-page .bim-hero-image{width:100%;max-width:70rem;justify-self:center;margin:0 auto}
.bim-page .bim-hero-image img{display:block;width:100%;height:clamp(17.5rem,48vw,33.9375rem);object-fit:contain;background:#fff;border-radius:24px}
.bim-page .bim-hero-image figcaption{margin-top:12px;color:rgba(255,255,255,.75);font-size:13px;text-align:center}
.bim-page .bim-service-nav{position:sticky;top:var(--bim-visible-header-height);z-index:calc(var(--z-header) - 1);background:transparent;transition:top var(--bim-nav-motion)}
.bim-page .bim-service-nav__scroll{display:grid;grid-template-columns:repeat(5,minmax(160px,1fr));overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#be6c39 #fff;background:#fff;border:1px solid rgba(5,75,84,.16);border-radius:20px;box-shadow:0 6px 22px rgba(5,75,84,.07);isolation:isolate}
.bim-page .bim-service-nav a{position:relative;display:flex;flex:1 0 0;min-width:max-content;flex-direction:column;gap:3px;min-height:56px;align-items:center;justify-content:center;padding:8px 20px;color:#054b54;white-space:nowrap;font-size:.8125rem;font-weight:800;text-decoration:none;border-left:1px solid rgba(5,75,84,.16)}
.bim-page .bim-service-nav__number{color:#be6c39;font-size:.75rem;letter-spacing:.12em}
.bim-page .bim-service-nav a:first-child{border-left:0}
.bim-page .bim-service-nav a:hover,.bim-page .bim-service-nav a:focus-visible,.bim-page .bim-service-nav a[aria-current="location"]{background:#f9a061;color:#054b54}
.bim-page .bim-service-nav a:is(:hover,:focus-visible,[aria-current="location"]) .bim-service-nav__number{color:#054b54}
.bim-page .bim-service-nav a::after{position:absolute;right:20px;bottom:0;left:20px;height:3px;background:transparent;content:""}
.bim-page .bim-service-nav a:focus-visible{outline:2px solid #054b54;outline-offset:-5px}
.bim-page :is(section,article)[id]{scroll-margin-top:calc(var(--bim-visible-header-height) + var(--bim-nav-height) + 24px)}
@media(prefers-reduced-motion:reduce){.bim-page{--bim-nav-motion:0ms linear}.bim-page *{scroll-behavior:auto!important}}
.bim-page .bim-specialism-intro{margin-bottom:28px}
.bim-page .bim-service-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:clamp(32px,6vw,80px);row-gap:20px;align-content:center;padding-block:40px;border-top:1px solid rgba(5,75,84,.16)}
.bim-page .bim-service-row header{grid-column:2;grid-row:1;align-self:end}
.bim-page .bim-service-row figure{grid-column:1;grid-row:1/3;align-self:center;margin:0}
.bim-page .bim-service-row>p{grid-column:2;grid-row:2;align-self:start;margin:0;color:#466970;font-size:var(--font-size-lg);line-height:1.65}
.bim-page .bim-service-row:nth-of-type(even) header,.bim-page .bim-service-row:nth-of-type(even)>p{grid-column:1}
.bim-page .bim-service-row:nth-of-type(even) figure{grid-column:2}
.bim-page .bim-service-row h3{margin:16px 0 0;font-family:var(--font-secondary);font-size:clamp(1.8rem,3vw,3rem);line-height:1.08;letter-spacing:-.04em}
.bim-page .bim-service-row img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;border:1px solid rgba(5,75,84,.12);border-radius:24px}
.bim-page .bim-service-row figcaption{margin-top:10px;color:#496a70;font-size:12px;line-height:1.5}
.bim-page .bim-software h3:not(:first-child){margin-top:24px}
@media(max-width:767px){
  .bim-page .services-hero{padding-block:4rem}
  .bim-page .bim-service-nav a{min-height:52px;padding-inline:16px}
  .bim-page .bim-service-row{grid-template-columns:minmax(0,1fr);padding-block:32px}
  .bim-page .bim-service-row header,.bim-page .bim-service-row:nth-of-type(even) header{grid-column:1;grid-row:1}
  .bim-page .bim-service-row figure,.bim-page .bim-service-row:nth-of-type(even) figure{grid-column:1;grid-row:2}
  .bim-page .bim-service-row>p,.bim-page .bim-service-row:nth-of-type(even)>p{grid-column:1;grid-row:3}
  .bim-page .bim-service-row img,.bim-page .bim-hero-image img{border-radius:16px}
}
.bim-page .bim-section-title{margin:0;font-family:var(--font-secondary);font-size:clamp(2.5rem,4.7vw,5rem);line-height:1;letter-spacing:-.05em}
.bim-page .bim-scope-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.bim-page .bim-lod-table{table-layout:fixed}
.bim-page .bim-lod-table :is(thead th:first-child,tbody th){width:12%;color:var(--color-primary-dark)}
.bim-page .bim-lod-table thead th:first-child{color:#fff}
.bim-page .bim-lod-table thead th:nth-child(2){width:48%}
.bim-page .bim-lod-table tbody th{color:#be6c39}
.bim-page .bim-specialisms article{display:grid;grid-template-columns:32px minmax(0,1fr);gap:24px;padding:28px 0;border-top:1px solid rgba(5,75,84,.2)}
.bim-page .bim-specialisms article:first-child{padding-top:0;border-top:0}
.bim-page .bim-specialisms h3{margin:0 0 16px;font-size:clamp(1.4rem,2vw,2rem);line-height:1.2;letter-spacing:-.03em}
.bim-page .bim-specialisms .sd-number{padding-top:5px}
.bim-page .bim-software{margin-top:40px}
.bim-page .bim-software h3{margin:0 0 12px;color:#f9a061;font-size:1rem}
.bim-page .bim-deliverables{margin:0;padding:0;list-style:none}
.bim-page .bim-deliverables li{position:relative;padding:22px 0 22px 24px;border-top:1px solid rgba(255,255,255,.22);font-size:var(--font-size-lg);line-height:1.5}
.bim-page .bim-deliverables li::before{position:absolute;left:0;top:32px;width:6px;height:6px;border-radius:50%;background:#f9a061;content:""}
@media(max-width:900px){.bim-page .bim-scope-grid{grid-template-columns:1fr}}
@media(max-width:600px){
  .bim-page .bim-specialisms article{grid-template-columns:24px minmax(0,1fr);gap:12px}
  .bim-page .bim-lod-table :is(th,td){padding:16px 8px;font-size:.8125rem;line-height:1.5}
  .bim-page .bim-lod-table :is(thead th:first-child,tbody th){width:16%}
.bim-page .bim-lod-table thead th:nth-child(2){width:44%}
}

/* Homepage typography authority: home.css and responsive.css. */
.bim-page{
  --home-heading-2-size:clamp(2.25rem,3.75vw,4.25rem);
  --home-item-heading-size:clamp(1.25rem,1.8vw,1.75rem);
  --home-body-size:clamp(1rem,1.2vw,1.125rem);
}
.bim-page .services-hero__content{width:100%;max-width:75rem;margin-inline:auto;align-items:center;text-align:center}
.bim-page .services-hero__title{margin:0 auto var(--space-lg);font-family:var(--font-secondary);font-size:clamp(3.25rem,7vw,6.5rem);font-weight:800;line-height:.92;letter-spacing:-.055em;text-align:center}
.bim-page .services-hero__description{max-width:62ch;margin:0 auto var(--space-xl);font-size:var(--font-size-lg);line-height:1.65;color:rgba(255,255,255,.78);text-align:center}
.bim-page .services-hero__actions{justify-content:center;gap:var(--space-md)}
.bim-page .services-hero__actions .button{min-height:3.25rem;padding-inline:1.5rem;border:3px solid #054b54;border-radius:12px;color:#054b54;background:#f9a061;box-shadow:0 0 0 4px #f9a061}
.bim-page main>section:not(.services-hero){padding-block:var(--site-section-edge-space)}
.bim-page main :is(.bim-section-title,.sd-intro h2,.services-next__intro h2,.services-final h2){font-family:var(--font-secondary);font-size:var(--home-heading-2-size);font-weight:700;line-height:1.03;letter-spacing:-.045em}
.bim-page :is(.sd-scope-card h3,.bim-service-row h3,.sd-faq summary){font-size:var(--home-item-heading-size);font-weight:700;line-height:1.2;letter-spacing:-.025em}
.bim-page :is(.sd-scope-card p,.bim-service-row>p,.sd-intro p:not(.services-eyebrow),.bim-deliverables li,.services-next__intro>p:last-child,.services-final p){font-size:var(--home-body-size);font-weight:400;line-height:1.7}
.bim-page .services-eyebrow{font-size:var(--font-size-xs);font-weight:700;letter-spacing:var(--letter-spacing-wide);line-height:1.4}
@media(min-width:48rem) and (max-width:63.9375rem){
  .bim-page .services-hero__inner{gap:var(--space-xl)}
  .bim-page .services-hero__title{font-size:clamp(3rem,5.4vw,4.25rem)}
}
@media(min-width:64rem) and (max-width:89.9375rem){.bim-page .services-hero__inner{gap:clamp(2rem,4vw,4.5rem)}}
@media(min-width:90rem){.bim-page .services-hero__inner{gap:clamp(3rem,5vw,5.5rem)}}

/* Single-page specialism cards: image left, summary and inclusions right. */
.bim-page .bim-service-row.bim-service-card{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:clamp(24px,3.5vw,48px);
  align-items:center;
  margin-block:28px;
  padding:clamp(20px,3vw,40px);
  border:1px solid rgba(5,75,84,.14);
  border-radius:28px;
  background:#fff;
  box-shadow:0 8px 28px rgba(5,75,84,.045);
}
.bim-page .bim-service-row.bim-service-card figure{grid-column:1;grid-row:1;min-width:0;align-self:center;overflow:hidden;border-radius:20px}
.bim-page .bim-service-row.bim-service-card img{width:100%;height:auto;aspect-ratio:16/10;object-fit:contain;background:#fff;border-radius:20px}
.bim-page .bim-service-card__content{grid-column:2;grid-row:1;min-width:0;color:#054b54}
.bim-page .bim-service-card__content h3{margin:0;color:#054b54}
.bim-page .bim-service-card__content>p{margin:18px 0 24px;color:#466970;font-size:var(--home-body-size);line-height:1.7}
.bim-page .bim-review-summary{display:flex;align-items:center;gap:12px;margin:0 0 18px;padding:0 0 16px;border-bottom:1px solid rgba(5,75,84,.14);color:#000;font-size:.9375rem;font-weight:700;line-height:1.3}
.bim-page .bim-review-summary__stars{color:#f2a000;font-size:1.25rem;letter-spacing:.08em;line-height:1;white-space:nowrap}
.bim-page .bim-review-summary__count{white-space:nowrap}
.bim-page .bim-review-summary__sample{margin-left:0;color:#000;font-size:.9375rem;font-weight:700;letter-spacing:0;text-transform:none;white-space:nowrap}
@media(max-width:480px){.bim-page .bim-review-summary{gap:8px;font-size:.8125rem}.bim-page .bim-review-summary__stars{font-size:1rem}.bim-page .bim-review-summary__sample{font-size:.8125rem}}
.bim-page .bim-service-card__quote{display:inline-flex;min-height:3.25rem;padding-inline:1.5rem;border:3px solid #054b54;border-radius:12px;color:#054b54;background:#f9a061;box-shadow:0 0 0 4px #f9a061;font-weight:700}
.bim-page .bim-service-card__quote:hover,.bim-page .bim-service-card__quote:focus-visible{background:#be6c39;color:#fff;border-color:#054b54}
.bim-page .bim-service-card__included{margin-top:28px;padding-top:22px;border-top:1px solid rgba(5,75,84,.14)}
.bim-page .bim-service-card__included h4{margin:0 0 12px;color:#054b54;font-size:1rem;line-height:1.4;font-weight:700}
.bim-page .bim-service-card__included ul{margin:0;padding-left:20px;display:grid;gap:8px;color:#466970;font-size:.9375rem;line-height:1.5}
.bim-page .bim-service-card__included li::marker{color:#be6c39}
@media(max-width:767px){
  .bim-page .bim-service-row.bim-service-card{grid-template-columns:minmax(0,1fr);gap:24px;margin-block:24px;border-radius:20px}
  .bim-page .bim-service-row.bim-service-card figure{grid-column:1;grid-row:1}
  .bim-page .bim-service-card__content{grid-column:1;grid-row:2}
  .bim-page .bim-service-row.bim-service-card img{border-radius:14px}
  .bim-page .bim-service-card__quote{width:100%;justify-content:center}
}

.bim-page .bim-overview{margin-block:0}
/* Branded quote treatment stays exclusive to the BIM page. */
.bim-page #bim-quote{background-color:#054b54;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:52px 52px}
.bim-page #bim-quote .bim-overview{background:#fff;border:1px solid #f9a061;box-shadow:0 16px 40px rgba(0,0,0,.16),inset 0 5px 0 #f9a061}
.bim-page #bim-quote .bim-quote__included-banner{background:#054b54;color:#fff;border-left:5px solid #f9a061}
.bim-page #bim-quote .bim-quote__testimonial{background:#fff;border-color:#e9b18d}
.bim-page #bim-quote .bim-quote__initials{background:#f9a061;color:#054b54}
.bim-page #bim-quote .bim-service-card__included{border-top-color:#e9b18d}
.bim-page #bim-quote .bim-overview{grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:clamp(28px,3vw,42px);padding:40px;border-radius:26px;align-items:center}
.bim-page #bim-quote .bim-quote__visual{display:flex;min-width:0;align-self:start;flex-direction:column;align-items:stretch;justify-content:flex-start}
.bim-page #bim-quote .bim-quote__visual>figure{width:100%;margin:0}
.bim-page #bim-quote .bim-quote__visual>figure :is(img,.bim-pricing-video){display:block;width:100%;height:auto;object-fit:contain;object-position:center;border-radius:18px;background:#fff}
.bim-page #bim-quote .bim-pricing-video{aspect-ratio:auto}
.bim-page #bim-quote .bim-pricing-image{aspect-ratio:auto}
.bim-page #bim-quote .bim-service-card__content{display:flex;align-self:start;flex-direction:column;gap:20px}
.bim-page #bim-quote .bim-service-card__content>p{margin:0}
.bim-page #bim-quote .bim-quote__prompt{color:#054b54;font-weight:600}
.bim-page #bim-quote .bim-service-card__quote{box-sizing:border-box;width:100%;min-height:62px;justify-content:center;text-align:center;box-shadow:none;outline:0;border:7px double #054b54}
.bim-page #bim-quote .bim-service-card__quote:focus-visible{outline:3px solid #be6c39;outline-offset:4px}
.bim-page #bim-quote .bim-quote__included-banner{display:flex;align-items:center;justify-content:center;min-height:52px;padding:12px 16px;border:1px solid rgba(5,75,84,.16);border-radius:10px;background:#fff;color:#054b54;text-align:center;font-weight:700}
.bim-page #bim-quote .bim-service-card__included{margin:0;padding-top:20px}
.bim-page #bim-quote .bim-quote__checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 20px;margin:16px 0 0;padding:0;list-style:none;color:#054b54;font-size:.9375rem;line-height:1.5}
.bim-page .bim-quote__checklist li{position:relative;padding-left:24px}
.bim-page .bim-quote__checklist li::before{position:absolute;left:2px;top:6px;width:7px;height:12px;border-right:2px solid #be6c39;border-bottom:2px solid #be6c39;transform:rotate(45deg);content:""}
.bim-page .bim-quote__clarification{margin:18px 0 0;color:#466970;font-size:.8125rem;line-height:1.6}
.bim-page #bim-quote .bim-quote__testimonial{display:grid;grid-template-columns:64px minmax(0,1fr);gap:16px;margin:20px 0 0;padding:16px;border:1px solid rgba(5,75,84,.14);border-radius:16px;background:#fff}
.bim-page #bim-quote .bim-quote__avatar{width:64px;height:64px;aspect-ratio:1;object-fit:cover;border-radius:50%}
.bim-page .bim-quote__testimonial blockquote{margin:0;color:#054b54;font-size:.9375rem;line-height:1.6}
.bim-page .bim-quote__testimonial figcaption span{display:block}
.bim-page #bim-quote .bim-quote__initials{display:grid;place-items:center;border:1px solid rgba(5,75,84,.16);background:#fff;color:#054b54;font-size:1.1rem;font-weight:700}
.bim-page .bim-quote__sample-label{margin:0 0 8px;color:#466970;font-size:.75rem;line-height:1.4}
@media(max-width:1023px){.bim-page #bim-quote .bim-overview{gap:28px;padding:28px}.bim-page #bim-quote .bim-quote__checklist{grid-template-columns:1fr}}
@media(max-width:767px){.bim-page #bim-quote .bim-overview{grid-template-columns:minmax(0,1fr);gap:28px;padding:24px}.bim-page #bim-quote .bim-service-card__content{grid-column:1;grid-row:2}}
.bim-page .bim-overview__scope{display:grid;gap:14px;margin:14px 0 0}
.bim-page .bim-overview__scope dt{font-weight:700;color:#054b54}
.bim-page .bim-overview__scope dd{margin:4px 0 0;font-size:.9375rem;line-height:1.55;color:#466970}
.bim-page .bim-overview .bim-service-card__included h3{margin:0;font-size:1rem;letter-spacing:normal}
.bim-page #specialisms{background:#fff}
.bim-page main #specialisms-title{font-size:var(--home-heading-2-size);font-weight:800;line-height:1.08}
.bim-page .bim-specialism{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);align-items:center;gap:clamp(24px,3.2vw,48px);padding:clamp(20px,2.5vw,36px);border:1px solid rgba(5,75,84,.14);border-radius:24px;background:#fff;box-shadow:0 8px 24px rgba(5,75,84,.035)}
.bim-page .bim-specialism + .bim-specialism{margin-top:24px}
@media(min-width:768px){
 .bim-page .bim-specialism:nth-of-type(even){grid-template-columns:minmax(0,3fr) minmax(0,2fr)}
 .bim-page .bim-specialism:nth-of-type(even) figure{grid-column:2;grid-row:1}
 .bim-page .bim-specialism:nth-of-type(even) .bim-specialism__content{grid-column:1;grid-row:1}
}
.bim-page .bim-specialism__content{display:grid;gap:20px;min-width:0}
.bim-page .bim-specialism__heading{min-width:0}
.bim-page .bim-specialism__number{display:block;margin-bottom:12px;color:#be6c39;font-size:.8125rem;font-weight:800;letter-spacing:.12em}
.bim-page .bim-specialism figure{justify-self:center;margin:0;min-width:0;width:clamp(15rem,23vw,19rem);max-width:100%;overflow:hidden;border-radius:28px}
.bim-page .bim-specialism img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:contain;background:#fff;border-radius:28px}
.bim-page .bim-specialism figcaption{margin-top:8px;color:#496a70;font-size:12px}
.bim-page .bim-specialism h3{margin:0;min-width:0;text-align:left;word-break:normal;overflow-wrap:normal;color:#054b54;font-size:var(--home-item-heading-size);font-weight:700;line-height:1.25}
.bim-page .bim-specialism p{margin:0;min-width:0;text-align:left;color:#466970;font-size:var(--home-body-size);line-height:1.6}
@media(max-width:767px){.bim-page .bim-specialism{grid-template-columns:minmax(0,1fr);gap:20px}.bim-page .bim-specialism__content{gap:16px}.bim-page .bim-specialism figure{width:min(15rem,100%)}.bim-page .bim-specialism figure,.bim-page .bim-specialism img{border-radius:20px}}
@media(max-width:767px){
  .bim-page .services-hero{
    min-height:clamp(36rem,84svh,42rem);
    background-image:
      linear-gradient(180deg,rgba(2,42,48,.84),rgba(5,75,84,.78) 48%,rgba(2,42,48,.92)),
      url("/assets/images/services/bim/bim-hero.webp");
    background-position:55% center;
  }
}
/* BIM process, independent FAQ columns and contained final banner. */
.bim-page :is(.bim-process,.bim-faq) .bim-section-title{max-width:none;text-align:center;margin:0 0 32px;color:#054b54}
.bim-page .bim-process__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.bim-page .bim-process__card{min-width:0;padding:20px 18px;text-align:center;border:1px solid rgba(5,75,84,.14);border-radius:14px;background:#fff;box-shadow:0 6px 20px rgba(5,75,84,.04)}
.bim-page .bim-process__icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin:0 auto 12px;border:1px solid rgba(5,75,84,.16);border-radius:12px;background:#fff;color:#054b54}
.bim-page .bim-process__card:nth-child(even) .bim-process__icon{background:#fff0e5;color:#be6c39}
.bim-page .bim-process__icon svg{width:24px;height:24px}
.bim-page .bim-process__number{display:none!important}
.bim-page .bim-process__card h3{display:inline;margin:0;color:#054b54;font-size:1rem;font-weight:700;line-height:1.35}
.bim-page .bim-process__card p{margin:10px 0 0;color:#466970;font-size:.875rem;line-height:1.5}
.bim-page .bim-process__card h3{font-size:var(--site-feature-title)!important;font-weight:600!important;line-height:1.3!important;letter-spacing:-.02em!important}
.bim-page .bim-faq__columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}
.bim-page .bim-faq__column{display:grid;gap:16px;min-width:0}
.bim-page .bim-faq__item{border:1px solid rgba(5,75,84,.14);border-radius:16px;background:#fff;box-shadow:0 5px 18px rgba(5,75,84,.035)}
.bim-page .bim-faq__item summary{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:68px;padding:18px 22px;list-style:none;cursor:pointer;color:#054b54;font-size:1rem!important;font-weight:700;line-height:1.35;text-align:left;border-radius:16px}
.bim-page .bim-faq__item summary::-webkit-details-marker{display:none}
.bim-page .bim-faq__item summary:focus-visible{outline:3px solid #be6c39;outline-offset:4px}
.bim-page .bim-faq__item p{margin:0;padding:0 22px 20px;color:#466970;font-size:.9375rem;line-height:1.6;text-align:left}
.bim-page .bim-faq__icon{position:relative;flex:0 0 18px;width:18px;height:18px;color:#be6c39}
.bim-page .bim-faq__icon::before,.bim-page .bim-faq__icon::after{position:absolute;top:8px;left:0;width:18px;height:2px;background:currentColor;content:""}
.bim-page .bim-faq__icon::after{transform:rotate(90deg)}
.bim-page .bim-faq__item[open] .bim-faq__icon::after{display:none}
.bim-page .bim-explore__banner{display:flex;justify-content:space-between;align-items:center;gap:36px;padding:clamp(28px,4vw,56px);border-radius:24px;color:#fff;background-color:#054b54;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:3.25rem 3.25rem}
.bim-page .bim-explore__banner h2{margin:0 0 16px;color:#fff;font-size:var(--home-heading-2-size);line-height:1.08}
.bim-page .bim-explore__banner p{margin:0;color:#fff;font-size:var(--home-body-size);line-height:1.7}
.bim-page .bim-explore__banner .button{flex-shrink:0;text-align:center}
@media(max-width:1023px){.bim-page .bim-process__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){
 .bim-page .bim-process__grid,.bim-page .bim-faq__columns{grid-template-columns:minmax(0,1fr)}
 .bim-page .bim-explore__banner{flex-direction:column;align-items:stretch}
 .bim-page .bim-faq__item summary{min-height:64px;padding:16px 18px}
 .bim-page .bim-faq__item p{padding:0 18px 18px}
}

/* Both faces occupy one grid cell so revealing copy never changes card size. */
.bim-page #scope{background:#fff}
.bim-page .bim-model-card{position:relative;display:flex;flex-direction:column;min-width:0;padding:24px;min-height:300px;border:1px solid rgba(5,75,84,.16);border-radius:28px;background:#054b54;box-shadow:0 8px 24px rgba(5,75,84,.045);transition:background-color 330ms ease}
.bim-page .bim-model-card__stage{display:grid;flex:1;align-items:center;min-height:220px}
.bim-page .bim-model-card__front,.bim-page .bim-model-card__description{grid-area:1/1;text-align:center;transition:opacity 330ms ease,transform 330ms ease,visibility 330ms}
.bim-page .bim-model-card__front{display:flex;flex-direction:column;align-items:center;gap:24px}
.bim-page .bim-model-card__icon{display:grid;place-items:center;width:88px;height:88px;border:1px solid rgba(5,75,84,.16);border-radius:22px;background:#fff;color:#054b54}
.bim-page .bim-model-card__icon svg{width:56px;height:56px}
.bim-page .bim-model-card h3{margin:0;color:#fff;font-size:var(--home-item-heading-size);line-height:1.25}
.bim-page .bim-model-card__description{margin:0 auto;max-width:34ch;align-self:center;color:#fff;font-size:clamp(1rem,1.2vw,1.125rem);font-weight:400;line-height:1.65;visibility:hidden;opacity:0;transform:translateY(12px)}
.bim-page .bim-model-card__toggle{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;border:0;border-radius:28px;background:transparent;cursor:pointer}
.bim-page .bim-model-card__toggle:focus-visible{outline:3px solid #fff;outline-offset:4px}
.bim-page .bim-model-card.is-revealed{background:#be6c39}
.bim-page .bim-model-card.is-revealed .bim-model-card__toggle:focus-visible{outline-color:#fff}
.bim-page .bim-model-card.is-revealed .bim-model-card__front{opacity:0;visibility:hidden;transform:translateY(-12px)}
.bim-page .bim-model-card.is-revealed .bim-model-card__description{opacity:1;visibility:visible;transform:translateY(0)}
@media(prefers-reduced-motion:reduce){.bim-page .bim-model-card,.bim-page .bim-model-card *{transition:none!important;transform:none!important}}
/* Compact LOD section, without changing other BIM sections. */
.bim-page main > #detail{padding-block:32px}
.bim-page #detail .sd-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:start}
.bim-page #detail .sd-intro > p{max-width:70ch;margin:0}
.bim-page #detail .sd-table thead{background:#054b54;color:#fff}
.bim-page #detail .sd-table tbody tr{background:#fff}
.bim-page #detail .sd-table tbody tr:nth-child(even){background:#fff}

/* White-surface typography. Branded panels retain their explicit contrast colors. */
.bim-page :is(.bim-specialism,.bim-process__card,.bim-quote__testimonial,.sd-table tbody) :is(h2,h3,h4,strong,dt,th){color:#000}
.bim-page :is(.bim-specialism,.bim-process__card,.bim-quote__testimonial,.sd-table tbody) :is(p,dd,td){color:var(--color-text-muted)}
.bim-page #detail .bim-lod-table th:first-child{width:12%}
.bim-page #detail .bim-lod-table th:nth-child(2){width:48%}
.bim-page #detail .bim-lod-table th:nth-child(3){width:40%}
.bim-page .bim-lod-badge{display:inline-block;padding:6px 10px;border-radius:8px;background:#fff0e3;color:#054b54;font-weight:700}
.bim-page .bim-lod-label{display:none}
.bim-page #detail,.bim-page #detail-title{scroll-margin-top:calc(var(--bim-header-height) + var(--bim-nav-height) + 24px)}
.bim-page .bim-quote__scope{display:flex;flex-wrap:wrap;gap:8px 24px;margin:14px 0 0;padding-left:20px;color:#466970}
.bim-page .bim-quote__scope li::marker{color:#be6c39}
.bim-page #deliverables{background:#054b54;color:#fff}
.bim-page #deliverables :is(h2,h3,p,li){color:#fff}
.bim-page #deliverables .services-eyebrow{color:#f9a061}
.bim-page #detail .services-eyebrow{margin-bottom:12px}
.bim-page #detail h2{max-width:24ch;font-size:clamp(1.75rem,2.6vw,2.75rem);line-height:1.08}
.bim-page #detail .sd-intro > p{font-size:1rem;line-height:1.55}
.bim-page #detail .sd-table-wrap{margin-top:24px;border-radius:14px}
.bim-page #detail .bim-lod-table :is(th,td){padding:12px 20px;font-size:.9375rem;line-height:1.4}
.bim-page #detail .bim-lod-table thead th{font-size:.8125rem}
@media(max-width:767px){
  .bim-page main > #detail{padding-block:28px}
  .bim-page #detail .sd-intro{grid-template-columns:1fr;gap:16px}
  .bim-page #detail .sd-table-wrap{overflow:hidden;border:1px solid rgba(5,75,84,.2);border-radius:14px;background:#fff}
  .bim-page #detail .bim-lod-table{display:table;width:100%;table-layout:fixed;border-collapse:collapse}
  .bim-page #detail .bim-lod-table thead{display:table-header-group;position:static;width:auto;height:auto;overflow:visible;clip-path:none}
  .bim-page #detail .bim-lod-table tbody{display:table-row-group}
  .bim-page #detail .bim-lod-table tr{display:table-row;border:0;border-radius:0;box-shadow:none}
  .bim-page #detail .bim-lod-table thead tr{background:#054b54}
  .bim-page #detail .bim-lod-table tbody tr{background:#fff}
  .bim-page #detail .bim-lod-table :is(th,td),
  .bim-page #detail .bim-lod-table tbody :is(th,td){display:table-cell;width:auto;padding:12px 7px;border-bottom:1px solid rgba(5,75,84,.16);text-align:left;vertical-align:top;font-size:clamp(.6875rem,2.8vw,.8125rem);line-height:1.4;overflow-wrap:normal}
  .bim-page #detail .bim-lod-table :is(thead th:first-child,tbody th){width:19%}
  .bim-page #detail .bim-lod-table thead th:nth-child(2){width:43%}
  .bim-page #detail .bim-lod-table thead th:nth-child(3){width:38%}
  .bim-page #detail .bim-lod-table thead th{padding-block:14px;color:#fff;font-size:clamp(.6875rem,2.8vw,.8125rem)}
  .bim-page #detail .bim-lod-table tbody tr:last-child :is(th,td){border-bottom:0}
  .bim-page #detail .bim-lod-badge{
    display:inline-flex;
    min-width:3.25rem;
    align-items:center;
    justify-content:center;
    padding:5px 7px;
    white-space:nowrap;
    word-break:keep-all;
    overflow-wrap:normal;
  }
  .bim-page .bim-lod-label{display:none}
}

/* Preserve heading contrast inside the BIM/service branded surfaces. */
.bim-page main .bim-explore__banner h2,
.bim-page main .services-final h2,
.bim-page #detail .bim-lod-table thead th {
  color:#fff!important;
}

/* BIM specialisms — equal two-column photographic card grid. */
.bim-page #specialisms{padding-block:clamp(3.5rem,6vw,5.5rem)}
.bim-page #specialisms{background:#fff}
.bim-page .bim-specialism-intro{margin-bottom:40px}
.bim-page .bim-specialism-intro .services-eyebrow{margin-bottom:.75rem}
.bim-page .bim-specialism-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(24px,2vw,32px);
}
.bim-page .bim-specialism-grid .bim-specialism{
  position:relative;
  isolation:isolate;
  display:block;
  min-width:0;
  height:clamp(400px,31vw,440px);
  overflow:hidden;
  margin:0;
  padding:clamp(28px,2.25vw,32px);
  border:0;
  border-radius:24px;
  color:#fff;
  background:#054b54;
  box-shadow:none;
}
.bim-page .bim-specialism-grid .bim-specialism:nth-child(5){
  grid-column:1/-1;
  justify-self:center;
  width:calc((100% - clamp(24px,2vw,32px))/2);
}
.bim-page .bim-specialism-grid .bim-specialism::after{
  position:absolute;
  z-index:1;
  inset:0;
  border-radius:inherit;
  background:linear-gradient(180deg,rgba(5,75,84,0) 0%,rgba(5,75,84,.18) 42%,rgba(5,75,84,.88) 100%);
  content:"";
  pointer-events:none;
  transition:background .35s ease;
}
.bim-page .bim-specialism-grid .bim-specialism figure{
  position:absolute;
  z-index:0;
  inset:0;
  width:100%;
  height:100%;
  margin:0;
  overflow:hidden;
  border-radius:inherit;
  background:#054b54;
}
.bim-page .bim-specialism-grid .bim-specialism img{
  display:block;
  width:100%;
  height:100%;
  aspect-ratio:auto;
  object-fit:cover;
  border:0;
  border-radius:0;
  background:transparent;
  transition:transform .45s cubic-bezier(.22,1,.36,1);
}
.bim-page .bim-specialism-grid .bim-specialism__content{
  position:absolute;
  z-index:2;
  right:clamp(28px,2.25vw,32px);
  bottom:clamp(28px,2.25vw,32px);
  left:clamp(28px,2.25vw,32px);
  display:grid;
  gap:8px;
  padding:0;
}
.bim-page .bim-specialism-grid .bim-specialism__number{margin:0;color:#f9a061;font-size:.8125rem;font-weight:800;letter-spacing:.12em}
.bim-page .bim-specialism-grid .bim-specialism h3{max-width:22ch;margin:0;color:#fff;font-size:clamp(1.5rem,2.1vw,2rem);font-weight:700;line-height:1.12;letter-spacing:-.03em}
.bim-page .bim-specialism-grid .bim-specialism p{
  max-width:54ch;
  margin:0;
  color:#fff;
  font-size:clamp(.9375rem,1vw,1.0625rem);
  line-height:1.45;
}
.bim-page .bim-specialism__arrow{
  position:absolute;
  right:0;
  bottom:.15rem;
  color:#fff;
  font-size:1.5rem;
  line-height:1;
  opacity:.8;
  transition:opacity .25s ease,transform .25s ease;
}
.bim-page .bim-specialism-grid .bim-specialism:is(:hover,:focus-visible)::after{background:linear-gradient(180deg,rgba(5,75,84,.04) 0%,rgba(5,75,84,.28) 42%,rgba(5,75,84,.94) 100%)}
.bim-page .bim-specialism-grid .bim-specialism:is(:hover,:focus-visible) img{transform:scale(1.04)}
.bim-page .bim-specialism-grid .bim-specialism:is(:hover,:focus-visible) .bim-specialism__arrow{opacity:1;transform:translateX(6px)}
.bim-page .bim-specialism-grid .bim-specialism:focus-visible{outline:3px solid #be6c39;outline-offset:4px}
.bim-page .bim-specialism-cta{display:flex;justify-content:center;margin-top:40px}
@media(max-width:720px){
  .bim-page .bim-specialism-grid{grid-template-columns:minmax(0,1fr)}
  .bim-page .bim-specialism-grid .bim-specialism,
  .bim-page .bim-specialism-grid .bim-specialism:nth-child(5){grid-column:auto;width:100%;height:clamp(300px,88vw,340px)}
  .bim-page .bim-specialism-grid .bim-specialism h3{font-size:clamp(1.35rem,6vw,1.75rem)}
  .bim-page .bim-specialism-cta .button{width:100%}
}
@media(prefers-reduced-motion:reduce){
  .bim-page .bim-specialism-grid .bim-specialism::after,
  .bim-page .bim-specialism-grid .bim-specialism img,
  .bim-page .bim-specialism__arrow{transition:none}
  .bim-page .bim-specialism-grid .bim-specialism:is(:hover,:focus-visible) img{transform:none}
}

/* Final specialism layout: compact reference grid, full uncropped images, no card interaction. */
.bim-page .bim-specialism-grid .bim-specialism,
.bim-page .bim-specialism-grid .bim-specialism:nth-child(5){
  grid-column:auto;
  justify-self:stretch;
  width:100%;
  height:clamp(250px,21vw,300px);
  aspect-ratio:1/1;
  cursor:default;
}
.bim-page .bim-specialism-grid .bim-specialism figure{background:#e8eff0}
.bim-page .bim-specialism-grid .bim-specialism img{
  object-fit:contain;
  object-position:center;
  transform:none!important;
  transition:none!important;
}
.bim-page .bim-specialism-grid .bim-specialism::after,
.bim-page .bim-specialism-grid .bim-specialism:is(:hover,:focus-visible)::after{
  background:linear-gradient(180deg,rgba(5,75,84,0) 12%,rgba(5,75,84,.16) 40%,rgba(5,75,84,.92) 100%);
  transition:none;
}
.bim-page .bim-specialism-grid .bim-specialism:is(:hover,:focus-visible) img{transform:none!important}
.bim-page .bim-specialism-grid .bim-specialism__arrow,
.bim-page .bim-specialism-grid .bim-specialism:is(:hover,:focus-visible) .bim-specialism__arrow{
  opacity:.9;
  transform:none;
  transition:none;
}
.bim-page .bim-specialism-contact{
  position:relative;
  isolation:isolate;
  display:grid;
  height:clamp(250px,21vw,300px);
  align-items:center;
  overflow:hidden;
  padding:clamp(28px,3vw,42px);
  border-radius:24px;
  color:#fff;
  background-color:#054b54;
  background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:3rem 3rem;
}
.bim-page .bim-specialism-contact::after{position:absolute;right:-8%;bottom:-45%;width:58%;aspect-ratio:1;border:1px solid rgba(249,160,97,.24);border-radius:50%;content:"";pointer-events:none}
.bim-page .bim-specialism-contact>div{position:relative;z-index:1}
.bim-page .bim-specialism-contact h3{max-width:22ch;margin:0;color:#fff;font-size:clamp(1.5rem,2.1vw,2rem);line-height:1.12}
.bim-page .bim-specialism-contact p{max-width:40ch;margin:.75rem 0 1.25rem;color:rgba(255,255,255,.82);line-height:1.5}
.bim-page .bim-specialism-contact .button{width:fit-content}
@media(max-width:720px){
  .bim-page .bim-specialism-grid .bim-specialism,
  .bim-page .bim-specialism-grid .bim-specialism:nth-child(5),
  .bim-page .bim-specialism-contact{height:clamp(280px,78vw,330px);aspect-ratio:auto}
  .bim-page .bim-specialism-contact .button{width:100%}
}

/* Editorial specialism cards: the square source images sit above, never behind, the copy. */
.bim-page .bim-specialism-grid .bim-specialism,
.bim-page .bim-specialism-grid .bim-specialism:nth-child(5){
  display:flex;
  flex-direction:column;
  align-items:stretch;
  width:100%;
  height:auto;
  min-height:0;
  aspect-ratio:auto;
  padding:0;
  border:1px solid #dce5e6;
  border-radius:24px;
  background:#fff;
  box-shadow:0 8px 26px rgba(5,75,84,.07);
  overflow:hidden;
  transition:border-color .3s ease,box-shadow .3s ease;
}
.bim-page .bim-specialism-grid .bim-specialism::after{content:none}
.bim-page .bim-specialism-grid .bim-specialism figure,
.bim-page .bim-specialism-grid .bim-specialism:nth-of-type(even) figure{
  position:static;
  flex:0 0 auto;
  grid-column:auto;
  grid-row:auto;
  width:100%;
  height:clamp(280px,29vw,460px);
  aspect-ratio:auto;
  margin:0;
  border-radius:0;
  background:#fff;
  overflow:hidden;
}
.bim-page .bim-specialism-grid .bim-specialism img{
  display:block;
  width:100%;
  height:100%;
  aspect-ratio:auto;
  object-fit:contain;
  object-position:center;
  border:0;
  border-radius:0;
  background:#fff;
  transform:none!important;
  transition:none;
}
.bim-page .bim-specialism-grid .bim-specialism__content,
.bim-page .bim-specialism-grid .bim-specialism:nth-of-type(even) .bim-specialism__content{
  position:static;
  display:flex;
  flex:1 0 auto;
  flex-direction:column;
  grid-column:auto;
  grid-row:auto;
  gap:10px;
  min-height:190px;
  padding:clamp(22px,2.4vw,32px);
  color:#054b54;
  background:#fff;
}
.bim-page .bim-specialism-grid .bim-specialism__number{color:#be6c39}
.bim-page .bim-specialism-grid .bim-specialism h3{
  max-width:none;
  margin:0;
  color:#054b54;
  font-size:clamp(1.35rem,1.8vw,1.75rem);
  line-height:1.18;
}
.bim-page .bim-specialism-grid .bim-specialism p{
  max-width:52ch;
  margin:0;
  color:#496a70;
  font-size:clamp(.95rem,1.1vw,1.0625rem);
  line-height:1.5;
}
.bim-page .bim-specialism-grid .bim-specialism:is(:hover,:focus-within){
  border-color:#b66d42;
  box-shadow:0 12px 30px rgba(5,75,84,.1);
}
.bim-page .bim-specialism-grid .bim-specialism__arrow{display:none}
.bim-page .bim-specialism-contact{
  height:auto;
  min-height:100%;
  align-self:stretch;
  border:1px solid rgba(5,75,84,.16);
  box-shadow:0 8px 26px rgba(5,75,84,.07);
}
@media(max-width:720px){
  .bim-page .bim-specialism-grid{grid-template-columns:minmax(0,1fr)}
  .bim-page .bim-specialism-grid .bim-specialism,
  .bim-page .bim-specialism-grid .bim-specialism:nth-child(5){height:auto;aspect-ratio:auto}
  .bim-page .bim-specialism-grid .bim-specialism__content{min-height:175px}
  .bim-page .bim-specialism-grid .bim-specialism figure,
  .bim-page .bim-specialism-grid .bim-specialism:nth-of-type(even) figure{height:clamp(240px,72vw,320px)}
  .bim-page .bim-specialism-contact{min-height:280px}
}
@media(prefers-reduced-motion:reduce){
  .bim-page .bim-specialism-grid .bim-specialism{transition:none}
}

/* Compact BIM overview: full square artwork beside concise editorial copy. */
@media(min-width:1024px){
  .bim-page .bim-specialism-grid .bim-specialism,
  .bim-page .bim-specialism-grid .bim-specialism:nth-child(5){
    display:grid;
    grid-template-columns:minmax(0,42%) minmax(0,58%);
    height:clamp(300px,22vw,340px);
    min-height:0;
  }
  .bim-page .bim-specialism-grid .bim-specialism figure,
  .bim-page .bim-specialism-grid .bim-specialism:nth-of-type(even) figure{
    grid-column:1;
    grid-row:1;
    width:100%;
    height:100%;
    aspect-ratio:auto;
    align-self:stretch;
    background:#f3f6f6;
  }
  .bim-page .bim-specialism-grid .bim-specialism img{
    width:100%;
    height:100%;
    object-fit:contain;
    object-position:center;
    background:#f3f6f6;
  }
  .bim-page .bim-specialism-grid .bim-specialism__content,
  .bim-page .bim-specialism-grid .bim-specialism:nth-of-type(even) .bim-specialism__content{
    grid-column:2;
    grid-row:1;
    justify-content:center;
    min-height:0;
    padding:clamp(28px,2.25vw,36px);
  }
  .bim-page .bim-specialism-contact{
    height:clamp(300px,22vw,340px);
    min-height:0;
    padding:clamp(28px,2.25vw,36px);
  }
}

@media(min-width:721px) and (max-width:1023px){
  .bim-page .bim-specialism-grid .bim-specialism figure,
  .bim-page .bim-specialism-grid .bim-specialism:nth-of-type(even) figure{
    height:auto;
    aspect-ratio:1/1;
    background:#f3f6f6;
  }
  .bim-page .bim-specialism-grid .bim-specialism img{background:#f3f6f6}
  .bim-page .bim-specialism-grid .bim-specialism__content{min-height:0;padding:24px}
}

@media(max-width:720px){
  .bim-page .bim-specialism-grid .bim-specialism__content{min-height:0;padding:22px}
  .bim-page .bim-specialism-grid .bim-specialism figure,
  .bim-page .bim-specialism-grid .bim-specialism:nth-of-type(even) figure{
    width:100%;
    height:auto;
    aspect-ratio:1/1;
    background:#f3f6f6;
  }
  .bim-page .bim-specialism-grid .bim-specialism img{background:#f3f6f6}
  .bim-page .bim-specialism-contact{height:auto;min-height:280px;padding:24px}
}

/* Final sizing: square artwork is flush to every 350px desktop card. */
@media(min-width:1200px){
  .bim-page .bim-specialism-grid .bim-specialism,
  .bim-page .bim-specialism-grid .bim-specialism:nth-child(5){
    grid-template-columns:350px minmax(0,1fr);
    width:100%;
    height:350px;
    min-height:0;
  }
  .bim-page .bim-specialism-grid .bim-specialism figure,
  .bim-page .bim-specialism-grid .bim-specialism:nth-of-type(even) figure{
    width:350px;
    height:350px;
    min-width:350px;
    margin:0;
    padding:0;
    aspect-ratio:1/1;
    background:transparent;
  }
  .bim-page .bim-specialism-grid .bim-specialism img{
    width:100%;
    height:100%;
    margin:0;
    padding:0;
    object-fit:contain;
    object-position:center;
    background:transparent;
  }
  .bim-page .bim-specialism-grid .bim-specialism__content,
  .bim-page .bim-specialism-grid .bim-specialism:nth-of-type(even) .bim-specialism__content{
    justify-content:center;
    min-width:0;
    min-height:0;
    padding:36px clamp(28px,2.5vw,48px);
  }
  .bim-page .bim-specialism-grid .bim-specialism h3{
    font-size:clamp(1.2rem,1.3vw,1.55rem);
    text-wrap:balance;
  }
  .bim-page .bim-specialism-contact{
    height:350px;
    min-height:0;
  }
}

@media(min-width:721px) and (max-width:1199px){
  .bim-page .bim-specialism-grid .bim-specialism,
  .bim-page .bim-specialism-grid .bim-specialism:nth-child(5){
    display:block;
    height:auto;
  }
  .bim-page .bim-specialism-grid .bim-specialism figure,
  .bim-page .bim-specialism-grid .bim-specialism:nth-of-type(even) figure{
    width:100%;
    height:auto;
    min-width:0;
    aspect-ratio:1/1;
    margin:0;
    padding:0;
    background:transparent;
  }
  .bim-page .bim-specialism-grid .bim-specialism img{background:transparent}
  .bim-page .bim-specialism-grid .bim-specialism__content,
  .bim-page .bim-specialism-grid .bim-specialism:nth-of-type(even) .bim-specialism__content{
    min-height:0;
    padding:24px;
  }
  .bim-page .bim-specialism-contact{height:auto;min-height:280px}
}

/* Editorial BIM cards: the copy always follows the complete square image. */
.bim-page .bim-specialism-grid .bim-specialism,
.bim-page .bim-specialism-grid .bim-specialism:nth-child(5){
  display:flex;
  height:auto;
  min-height:0;
  flex-direction:column;
}
.bim-page .bim-specialism-grid .bim-specialism figure,
.bim-page .bim-specialism-grid .bim-specialism:nth-of-type(even) figure{
  position:static;
  width:100%;
  height:auto;
  min-width:0;
  aspect-ratio:16/9;
  margin:0;
  padding:0;
  background:transparent;
}
.bim-page .bim-specialism-grid .bim-specialism img{
  width:100%;
  height:100%;
  margin:0;
  padding:0;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
  scale:1!important;
  object-position:center;
  background:transparent;
}
.bim-page .bim-specialism-grid .bim-specialism__content,
.bim-page .bim-specialism-grid .bim-specialism:nth-of-type(even) .bim-specialism__content{
  position:static;
  display:flex;
  flex:1 1 auto;
  justify-content:flex-start;
  min-width:0;
  min-height:0;
  padding:clamp(24px,2.5vw,36px);
}
.bim-page .bim-specialism-contact{height:auto;min-height:100%;align-self:stretch}
@media(max-width:720px){
  .bim-page .bim-specialism-grid .bim-specialism__content{padding:24px}
  .bim-page .bim-specialism-contact{min-height:280px}
}

/* Full-source BIM imagery: square media sets the desktop card height. */
@media(min-width:1024px){
  .bim-page .bim-specialism-grid .bim-specialism,
  .bim-page .bim-specialism-grid .bim-specialism:nth-child(5){
    display:flex;
    flex-direction:column;
    align-items:stretch;
    height:auto;
    min-height:0;
  }
  .bim-page .bim-specialism-grid .bim-specialism figure,
  .bim-page .bim-specialism-grid .bim-specialism:nth-of-type(even) figure{
    align-self:stretch;
    width:100%;
    height:auto;
    min-width:0;
    aspect-ratio:1/1;
    overflow:hidden;
    background:#f5f7f7;
  }
  .bim-page .bim-specialism-grid .bim-specialism img{
    width:100%;
    height:100%;
    display:block;
    object-fit:contain!important;
    object-position:center!important;
    transform:none!important;
    scale:1!important;
    background:#f5f7f7;
  }
  .bim-page .bim-specialism-grid .bim-specialism__content,
  .bim-page .bim-specialism-grid .bim-specialism:nth-of-type(even) .bim-specialism__content{
    justify-content:flex-start;
    min-width:0;
    min-height:0;
    padding:clamp(24px,2.2vw,36px);
  }
  .bim-page .bim-specialism-contact{height:auto;min-height:100%}
}

/* Fixed, complete square image presentation above the service copy. */
.bim-page .bim-specialism-grid .bim-specialism figure,
.bim-page .bim-specialism-grid .bim-specialism:nth-of-type(even) figure{
  width:min(300px,100%);
  height:auto;
  min-width:0;
  aspect-ratio:1/1;
  align-self:center;
  margin:0 auto;
}
.bim-page .bim-specialism-grid .bim-specialism img{
  width:100%;
  height:100%;
  object-fit:contain!important;
  object-position:center!important;
}

/* Homepage-sized overview: 3 cards, then 2 centred cards, then one CTA. */
@media(min-width:1200px){
  .bim-page .bim-specialism-grid{
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:clamp(16px,1.25vw,20px);
  }
  .bim-page .bim-specialism-grid .bim-specialism,
  .bim-page .bim-specialism-grid .bim-specialism:nth-child(5){
    grid-column:span 2;
    display:grid;
    grid-template-rows:auto auto;
    width:100%;
    height:auto;
    min-height:0;
    aspect-ratio:auto;
    align-self:start;
    border-radius:clamp(24px,2vw,32px);
  }
  .bim-page .bim-specialism-grid .bim-specialism:nth-child(4){grid-column:2/span 2}
  .bim-page .bim-specialism-grid .bim-specialism:nth-child(5){grid-column:4/span 2}
  .bim-page .bim-specialism-grid .bim-specialism figure,
  .bim-page .bim-specialism-grid .bim-specialism:nth-of-type(even) figure{
    grid-column:1;
    grid-row:1;
    width:100%;
    height:auto;
    min-width:0;
    aspect-ratio:11/6;
    margin:0;
    border-radius:0;
    background:#eef1ef;
  }
  .bim-page .bim-specialism-grid .bim-specialism img{
    width:100%;
    height:100%;
    object-fit:contain!important;
    object-position:center!important;
    background:#eef1ef;
  }
  .bim-page .bim-specialism-grid .bim-specialism__content,
  .bim-page .bim-specialism-grid .bim-specialism:nth-of-type(even) .bim-specialism__content{
    grid-column:1;
    grid-row:2;
    display:grid;
    align-content:start;
    justify-content:stretch;
    gap:clamp(8px,1vw,14px);
    min-height:0;
    flex:none;
    margin-bottom:-40px;
    padding:10px clamp(16px,1.8vw,24px) clamp(18px,1.8vw,24px);
    transform:translateY(-40px);
  }
  .bim-page .bim-specialism-grid .bim-specialism h3{
    font-size:clamp(1.05rem,1.4vw,1.45rem);
    line-height:1.16;
  }
  .bim-page .bim-specialism-grid .bim-specialism p{
    font-size:clamp(.8125rem,.9vw,.95rem);
    line-height:1.45;
  }
  .bim-page .bim-specialism-contact{
    grid-column:2/span 4;
    width:100%;
    height:auto;
    min-height:220px;
    aspect-ratio:auto;
    align-self:start;
    padding:clamp(24px,2.5vw,36px);
    border-radius:clamp(24px,2vw,32px);
  }
  .bim-page .bim-specialism-contact>div{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-areas:"heading button" "copy button";
    align-items:center;
    column-gap:clamp(28px,4vw,64px);
  }
  .bim-page .bim-specialism-contact h3{grid-area:heading;max-width:none}
  .bim-page .bim-specialism-contact p{grid-area:copy;margin:.75rem 0 0}
  .bim-page .bim-specialism-contact .button{grid-area:button;white-space:nowrap}
}

@media(min-width:721px) and (max-width:1199px){
  .bim-page .bim-specialism-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bim-page .bim-specialism-grid .bim-specialism,
  .bim-page .bim-specialism-grid .bim-specialism:nth-child(4),
  .bim-page .bim-specialism-grid .bim-specialism:nth-child(5),
  .bim-page .bim-specialism-contact{grid-column:auto}
  .bim-page .bim-specialism-contact{min-height:100%}
}

@media(max-width:720px){
  .bim-page .bim-specialism-grid .bim-specialism,
  .bim-page .bim-specialism-grid .bim-specialism:nth-child(4),
  .bim-page .bim-specialism-grid .bim-specialism:nth-child(5),
  .bim-page .bim-specialism-contact{grid-column:auto;width:100%}
}

/* Shared editorial overview used by the remaining service pages. */
.bim-page .service-specialism-grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:clamp(16px,1.25vw,20px);
}
.bim-page .service-specialism-grid .bim-specialism,
.bim-page .service-specialism-grid .bim-specialism:nth-of-type(even){
  grid-column:span 2;
  display:grid;
  grid-template-columns:1fr;
  grid-template-rows:auto 1fr;
  align-items:stretch;
  gap:0;
  min-width:0;
  min-height:0;
  margin:0;
  padding:0;
  overflow:hidden;
  border:1px solid rgba(5,75,84,.15);
  border-radius:clamp(24px,2vw,32px);
  background:#fff;
  box-shadow:0 10px 28px rgba(5,75,84,.06);
}
.bim-page .service-specialism-grid .bim-specialism figure,
.bim-page .service-specialism-grid .bim-specialism:nth-of-type(even) figure{
  grid-column:1;
  grid-row:1;
  width:100%;
  height:auto;
  min-width:0;
  aspect-ratio:11/6;
  margin:0;
  padding:0;
  overflow:hidden;
  background:#eef1ef;
}
.bim-page .service-specialism-grid .bim-specialism img{
  width:100%;
  height:100%;
  display:block;
  aspect-ratio:auto;
  border-radius:0;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
  scale:1!important;
  background:#eef1ef;
}
.bim-page .service-specialism-grid .bim-specialism figcaption{display:none}
.bim-page .service-specialism-grid .bim-specialism__content,
.bim-page .service-specialism-grid .bim-specialism:nth-of-type(even) .bim-specialism__content{
  grid-column:1;
  grid-row:2;
  display:grid;
  align-content:start;
  gap:clamp(8px,1vw,14px);
  min-width:0;
  min-height:0;
  padding:clamp(18px,1.8vw,24px);
}
.bim-page .service-specialism-grid .bim-specialism__heading{gap:8px}
.bim-page .service-specialism-grid .bim-specialism h3{
  font-size:clamp(1.05rem,1.4vw,1.45rem);
  line-height:1.16;
}
.bim-page .service-specialism-grid .bim-specialism p{
  font-size:clamp(.8125rem,.9vw,.95rem);
  line-height:1.45;
}
.bim-page .service-specialism-grid--4 .bim-specialism:nth-of-type(4){grid-column:3/span 2}
.bim-page .service-specialism-grid--2 .bim-specialism:nth-of-type(1){grid-column:2/span 2}
.bim-page .service-specialism-grid--2 .bim-specialism:nth-of-type(2){grid-column:4/span 2}
.bim-page .service-specialism-grid .service-specialism-contact{
  grid-column:2/span 4;
  position:relative;
  isolation:isolate;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:clamp(28px,4vw,64px);
  min-height:220px;
  padding:clamp(24px,2.5vw,36px);
  overflow:hidden;
  border-radius:clamp(24px,2vw,32px);
  color:#fff;
  background-color:#054b54;
  background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:3rem 3rem;
}
.bim-page .service-specialism-grid .service-specialism-contact::after{
  position:absolute;
  right:-8%;
  bottom:-75%;
  width:42%;
  aspect-ratio:1;
  border:1px solid rgba(249,160,97,.24);
  border-radius:50%;
  content:"";
  pointer-events:none;
}
.bim-page .service-specialism-contact>div,
.bim-page .service-specialism-contact>a{position:relative;z-index:1}
.bim-page .service-specialism-contact .services-eyebrow{margin:0 0 8px;color:#f9a061}
.bim-page .service-specialism-contact h3{margin:0;color:#fff;font-size:clamp(1.5rem,2.1vw,2rem);line-height:1.12}
.bim-page .service-specialism-contact p:not(.services-eyebrow){max-width:48ch;margin:.75rem 0 0;color:rgba(255,255,255,.82);line-height:1.5}
.bim-page .service-specialism-contact .button{width:max-content;white-space:nowrap}

@media(min-width:721px) and (max-width:1199px){
  .bim-page .service-specialism-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bim-page .service-specialism-grid .bim-specialism,
  .bim-page .service-specialism-grid .bim-specialism:nth-of-type(even),
  .bim-page .service-specialism-grid--4 .bim-specialism:nth-of-type(4),
  .bim-page .service-specialism-grid--2 .bim-specialism:nth-of-type(1),
  .bim-page .service-specialism-grid--2 .bim-specialism:nth-of-type(2){grid-column:auto}
  .bim-page .service-specialism-grid .service-specialism-contact{grid-column:1/-1}
}

@media(max-width:720px){
  .bim-page .service-specialism-grid{grid-template-columns:1fr}
  .bim-page .service-specialism-grid .bim-specialism,
  .bim-page .service-specialism-grid .bim-specialism:nth-of-type(even),
  .bim-page .service-specialism-grid--4 .bim-specialism:nth-of-type(4),
  .bim-page .service-specialism-grid--2 .bim-specialism:nth-of-type(1),
  .bim-page .service-specialism-grid--2 .bim-specialism:nth-of-type(2),
  .bim-page .service-specialism-grid .service-specialism-contact{grid-column:1}
  .bim-page .service-specialism-grid .bim-specialism__content,
  .bim-page .service-specialism-grid .bim-specialism:nth-of-type(even) .bim-specialism__content{padding:20px 22px 24px}
  .bim-page .service-specialism-grid .service-specialism-contact{
    grid-template-columns:1fr;
    min-height:0;
    padding:28px 24px;
  }
  .bim-page .service-specialism-contact .button{width:100%}
}
