/* About section (bento layout) - all selectors scoped to .tm-about */
.tm-about{--tm-bg:#eef1f5;--tm-ink:#12294a;--tm-text:#4a5568;--tm-gold:#c58a2b;--tm-line:#dfe4ea;--tm-navy:#0e2240;--tm-sand:#f6ead6;
  background:var(--tm-bg);padding:64px 0;color:var(--tm-text);font-size:16px;line-height:1.75}
.tm-about *{box-sizing:border-box}
.tm-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}
.tm-tile{background:#fff;padding:34px;min-width:0}
.tm-about h2,.tm-about h3{margin:0;color:var(--tm-ink);font-weight:700}
.tm-about p{margin:0 0 14px}
.tm-about p:last-child{margin-bottom:0}
.tm-eyebrow{color:var(--tm-gold);font-weight:700;font-size:13px;letter-spacing:.12em;text-transform:uppercase;margin:0 0 8px}
.tm-head{grid-column:1/7;border-radius:6px 6px 6px 60px;padding:32px 36px}
.tm-head h2{font-size:clamp(30px,3.4vw,40px);line-height:1.15;margin-bottom:16px}
.tm-head .tm-lead{color:var(--tm-ink);font-weight:500;font-size:16px;line-height:1.7}
.tm-head p:not(.tm-lead):not(.tm-eyebrow){font-size:15px;line-height:1.7}
.tm-photo{grid-column:7/13;border-radius:60px 6px 6px 6px;padding:0;position:relative;overflow:hidden;min-height:300px;max-height:420px}
.tm-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% 55%;display:block}
.tm-photo span{position:absolute;left:0;right:0;bottom:0;padding:48px 24px 20px;background:linear-gradient(transparent,rgba(8,20,40,.85));color:#fff;font-weight:600;font-size:14px}
.tm-sp{grid-column:1/5;border-radius:6px}
.tm-ch{grid-column:5/9;border-radius:6px}
.tm-about h3{font-size:22px;margin-bottom:10px}
.tm-about ul{list-style:none;margin:16px 0 0;padding:0}
.tm-about li{padding:8px 0;border-top:1px solid var(--tm-line);color:var(--tm-ink);font-weight:500;font-size:14px}
.tm-offices{grid-column:9/13;background:var(--tm-navy);color:#b9c6d8;border-radius:6px}
.tm-offices h3{color:#fff}
.tm-city{display:flex;justify-content:space-between;align-items:baseline;padding:12px 0;border-top:1px solid rgba(255,255,255,.18)}
.tm-city b{color:#fff;font-size:18px;font-weight:600}
.tm-city small{color:var(--tm-gold);font-weight:600;font-size:13px}
.tm-cities{margin-top:18px}
.tm-appr{grid-column:1/13;background:var(--tm-sand);border-radius:6px 6px 60px 6px}
.tm-appr h3{margin-bottom:18px}
.tm-pts{display:grid;grid-template-columns:repeat(4,1fr);gap:18px 28px;margin-top:20px}
.tm-pts div{border-left:3px solid var(--tm-gold);padding-left:14px}
.tm-pts b{display:block;color:var(--tm-ink);font-size:15px}
.tm-pts span{font-size:14px;line-height:1.6;display:block}
.tm-cta{grid-column:1/13;background:var(--tm-gold);border-radius:6px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;padding:28px 34px}
.tm-cta p{color:var(--tm-ink);font-weight:600;font-size:18px;margin:0}
.tm-cta a{background:var(--tm-ink);color:#fff;text-decoration:none;font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase;padding:14px 24px;border-radius:4px}
.tm-cta a:hover{background:#0a1a33;color:#fff}
.tm-cta a:focus-visible{outline:2px solid #fff;outline-offset:3px}
@media(max-width:1000px){.tm-head,.tm-photo,.tm-appr,.tm-offices{grid-column:1/13}.tm-sp{grid-column:1/7}.tm-ch{grid-column:7/13}.tm-pts{grid-template-columns:1fr 1fr}.tm-photo{min-height:360px}}
@media(max-width:640px){.tm-about{padding:36px 0}.tm-sp,.tm-ch{grid-column:1/13}.tm-pts{grid-template-columns:1fr}.tm-head{padding:28px}.tm-photo{min-height:260px}}

/* ===== Fixes for existing site CSS ===== */
/* Global Coverage now has 2 columns (the 3rd, .coverage-list, is commented out) */
.coverage-grid{grid-template-columns:1fr 1.3fr}
.coverage-map{height:auto}
.coverage-map img{display:block;width:100%;height:auto}
@media(max-width:991.98px){.coverage-grid{grid-template-columns:1fr}}
/* Keep section titles clear of the sticky navbar when using anchor links */
section[id],header[id]{scroll-margin-top:80px}