/* Services ("What We Do") + Our Approach — all selectors scoped to .tm-services */
.tm-services{--tm-ink:#12294a;--tm-text:#4a5568;--tm-gold:#c58a2b;--tm-line:#dfe4ea;--tm-navy:#0e2240;
  background:#fbfaf7;padding:80px 0 0;color:var(--tm-text);font-size:16px;line-height:1.75}
.tm-services *{box-sizing:border-box}
.tm-services h2,.tm-services h3{color:var(--tm-ink);font-weight:700;margin:0}
.tm-services p{margin:0 0 14px}
.tm-services p:last-child{margin-bottom:0}
.tm-s-eyebrow{color:var(--tm-gold);font-weight:700;font-size:13px;letter-spacing:.12em;text-transform:uppercase;margin:0 0 8px}

/* intro */
.tm-s-intro{display:grid;grid-template-columns:1fr 1.1fr;gap:56px;align-items:end;margin-bottom:56px}
.tm-s-intro h2{font-size:clamp(40px,5vw,60px);line-height:1.08}
.tm-s-intro p{font-size:16px}
.tm-s-intro p:first-child{color:var(--tm-ink);font-weight:500;font-size:17px}

/* service rows */
.tm-s-list{display:grid;gap:28px}
.tm-s-row{display:grid;grid-template-columns:5fr 7fr;background:#fff;border:1px solid #e5e7e8;border-radius:6px;overflow:hidden;box-shadow:0 14px 36px rgba(22,44,62,.06)}
.tm-s-row.is-flip{grid-template-columns:7fr 5fr}
.tm-s-row.is-flip .tm-s-img{order:2}
.tm-s-img{position:relative;min-height:340px;overflow:hidden}
.tm-s-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.tm-s-num{position:absolute;left:0;top:0;background:var(--tm-navy);color:#fff;font-weight:700;font-size:15px;letter-spacing:.08em;padding:12px 20px;border-radius:0 0 6px 0}
.tm-s-row.is-flip .tm-s-num{left:auto;right:0;border-radius:0 0 0 6px}
.tm-s-body{padding:40px 44px}
.tm-s-kicker{color:var(--tm-gold);font-weight:700;font-size:12px;letter-spacing:.13em;text-transform:uppercase;margin:0 0 6px}
.tm-s-body h3{font-size:clamp(26px,3vw,34px);line-height:1.1;margin-bottom:18px}
.tm-s-body strong{color:var(--tm-ink);font-weight:600}
.tm-s-chips{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:22px 0 0;padding:0}
.tm-s-chips li{border:1px solid var(--tm-line);border-left:3px solid var(--tm-gold);padding:4px 12px;font-size:13px;font-weight:600;color:var(--tm-ink);background:#fbfaf7;line-height:1.6}

/* approach band */
.tm-s-approach{background:var(--tm-navy);color:#b9c6d8;margin-top:80px;padding:72px 0}
.tm-s-approach .tm-s-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:56px;align-items:start}
.tm-s-approach h2{color:#fff;font-size:clamp(28px,3.4vw,40px);line-height:1.2}
.tm-s-approach strong{color:#fff;font-weight:600}
.tm-s-pillars{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.tm-s-pillars span{border:1px solid rgba(255,255,255,.25);border-radius:30px;padding:6px 18px;font-weight:600;font-size:14px;color:#fff}
.tm-s-pillars span:first-child{background:var(--tm-gold);border-color:var(--tm-gold);color:#12294a}

@media(max-width:991.98px){
  .tm-s-intro,.tm-s-approach .tm-s-grid{grid-template-columns:1fr;gap:24px}
  .tm-s-row,.tm-s-row.is-flip{grid-template-columns:1fr}
  .tm-s-row.is-flip .tm-s-img{order:0}
  .tm-s-img{min-height:260px}
  .tm-s-body{padding:30px 26px}
}
@media(max-width:575.98px){
  .tm-services{padding-top:56px}
  .tm-s-approach{margin-top:56px;padding:52px 0}
}