/* Page 23 only. Keep chrome, Figtree and the shared site tokens unchanged. */
.eng-page { background: #fff; }

.eng-services ul { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); margin: 0; padding: 0; list-style: none; }
.eng-services li { padding: 8px 36px; border-inline-start: 1px solid var(--mm-line); }
.eng-services li:first-child { padding-inline-start: 0; border: 0; }
.eng-services li:last-child { padding-inline-end: 0; }
.eng-services h2 { margin-bottom: 15px; font-size: 25px; line-height: 1.2; font-weight: 600; text-wrap: balance; }
.eng-services p { max-width: 33ch; margin: 0; color: var(--mm-muted); font-size: 16px; line-height: 1.6; }
.eng-approach { display: grid; grid-template-columns: minmax(0, 400px) minmax(0, 1fr); align-items: center; gap: 48px; padding-top: 12px; padding-bottom: 62px; }
.eng-approach figure { margin: 0; }
.eng-approach img { width: 100%; height: auto; display: block; aspect-ratio: 4/3; object-fit: cover; }
.eng-approach figcaption { padding-top: 10px; color: var(--mm-muted); font-size: var(--mm-fs-small); }
.eng-approach .mm-eyebrow { margin-bottom: 22px; }
.eng-approach h2 { margin-bottom: 25px; font-size: 40px; line-height: 1.1; font-weight: 600; letter-spacing: -.6px; }
.eng-approach__copy > p:not(.mm-eyebrow) { max-width: 47ch; font-size: 18px; line-height: 1.6; }
.eng-approach__copy .eng-approach__closing { margin-bottom: 0; color: var(--mm-muted); font-size: 16px; }
.eng-cta { padding: 30px 0; border-top: 1px solid var(--mm-line); background: var(--mm-bg-soft); }
.eng-cta__inner { display: flex; justify-content: space-between; align-items: center; gap: 30px; }
.eng-cta h2 { margin: 0; font-size: 26px; line-height: 1.25; font-weight: 500; }
@media (max-width: 991.98px) {

    .eng-services li { padding-inline-end: 20px; padding-inline-start: 20px; }
    .eng-services h2 { font-size: 21px; }
    .eng-approach { grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 35px; }
    .eng-approach h2 { font-size: 32px; }
    .eng-approach__copy > p:not(.mm-eyebrow) { font-size: 16px; }
}
@media (max-width: 575.98px) {

    .eng-services ul { display: block; }
    .eng-services li, .eng-services li:first-child { border: 0; padding: 22px 0; }
    .eng-services li + li { border-top: 1px solid var(--mm-line); }
    .eng-services h2 { margin-bottom: 10px; font-size: 24px; }
    .eng-services p { max-width: 34ch; }
    .eng-approach { grid-template-columns: minmax(0,1fr); gap: 30px; padding-top: 0; padding-bottom: 38px; }
    .eng-approach img { aspect-ratio: 3/2; }
    .eng-approach h2 { margin-bottom: 18px; }
    .eng-approach .mm-eyebrow { margin-bottom: 16px; }
    .eng-approach__copy > p:not(.mm-eyebrow) { max-width: 36ch; }
    .eng-cta { padding: 26px 0; }
    .eng-cta__inner { display: block; }
    .eng-cta h2 { margin-bottom: 22px; font-size: 24px; }
}
