/* Momentum editorial refinement. Shared tokens remain the source of truth. */
@font-face {font-family:"IBM Plex Sans";src:url("fonts/IBMPlexSans-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face {font-family:"IBM Plex Sans";src:url("fonts/IBMPlexSans-SemiBold.woff2") format("woff2");font-weight:600 900;font-style:normal;font-display:swap}
@font-face {font-family:"IBM Plex Serif";src:url("fonts/IBMPlexSerif-Regular.woff2") format("woff2");font-weight:400 900;font-style:normal;font-display:swap}
:root {
--font-display:"IBM Plex Serif",Georgia,serif;--font-body:"IBM Plex Sans","Segoe UI",sans-serif;
--bg:#f4f5f2;--fg-2:#4a5149;--muted:#555d52;--border:#d6dbd2;
--tracking-display:-.025em;--leading-body:1.65;--header-height:80px;
--heading-size:clamp(32px,3.2vw,48px);--display-size:clamp(40px,4.2vw,60px);
--brand-logo-width:176px;--brand-logo-footer-width:176px;
--section-y-desktop:88px;--editorial-wide-gap:64px;--editorial-rule:1px solid var(--border);
--editorial-hero-size:clamp(40px,4.6vw,64px);--editorial-feature-size:clamp(32px,3.2vw,44px);
--editorial-label-size:14px;--editorial-small-title:22px;--editorial-copy-size:18px;
--editorial-measure:65ch;--editorial-enter:240ms;--editorial-shift:4px;
}
h1,h2,h3 {font-weight:400;letter-spacing:var(--tracking-display)}
h3,.service-index,.filter,.panel-title,.case-meta {font-family:var(--font-body)}
h3 {font-weight:600;letter-spacing:-.015em}
.eyebrow,.case-meta,.panel-title {font-family:var(--font-body);font-size:var(--editorial-label-size);letter-spacing:.04em;text-transform:none}
.brand-sub {display:none}
.site-nav>a {font-size:16px;color:var(--brand-white)}
.site-nav .nav-cta {background:transparent;color:var(--brand-white);border-color:var(--inverse-line);font-weight:400}
.site-header .site-nav .nav-cta:focus-visible {outline-color:var(--brand-lime)}
.page-hero {--fg:var(--brand-black);--fg-2:#4a5149;--accent:#3d6416;--border:#d6dbd2;background:var(--surface);color:var(--brand-black);padding-block:var(--section-y-phone)}
.page-hero h1 {font-size:var(--display-size);max-width:24ch}
.page-hero .hero-lede {color:var(--fg-2);max-width:var(--editorial-measure)}
.page-hero .service-index a {color:var(--brand-black)}
.page-hero .eyebrow {color:#3d6416}
.section-head-wide h2 {max-width:22ch}
.person-card {padding:var(--space-6) 0;border-width:1px 0 0;background:transparent}
.person-facts li span {font-family:var(--font-body);font-size:14px;text-transform:none;letter-spacing:0}
.approach-list h3,.contact-copy .approach-list h3 {font-size:var(--editorial-small-title)}
.cta-band {background:var(--surface)}
.cta-band h2 {font-size:clamp(28px,3vw,40px);max-width:28ch}
.site-footer {padding-top:var(--space-12)}
/* High-level homepage and a single, consistent reading structure for experience. */
:root {
--overview-heading:clamp(40px,4.2vw,60px);--overview-section-heading:clamp(30px,3vw,40px);
--overview-section-space:64px;--overview-column-gap:64px;--experience-width:840px;
--experience-heading:clamp(28px,3vw,36px);--experience-copy:17px;
}
.overview-home main {background:var(--surface)}
.home-introduction {padding-block:var(--overview-section-space)}
.home-introduction .eyebrow {margin-bottom:var(--space-5)}
.home-introduction h1 {font-size:var(--overview-heading);line-height:1.12;max-width:24ch;text-wrap:pretty}
.home-lead {font-size:22px;line-height:1.5;max-width:62ch;margin-top:var(--space-6)}
.home-audience {font-size:17px;max-width:72ch;margin-top:var(--space-4)}
.home-introduction .btn {margin-top:var(--space-8)}
.home-expertise {padding-block:var(--overview-section-space);background:var(--bg)}
.home-section-heading {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--overview-column-gap);align-items:start;margin-bottom:var(--space-8)}
.home-section-heading h2 {font-size:var(--overview-section-heading);max-width:22ch}
.home-section-heading>p {font-size:18px;max-width:54ch}
.home-services {list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 var(--overview-column-gap)}
.home-services li {padding-block:var(--space-6);border-top:var(--editorial-rule);min-width:0}
.home-services h3 {font-family:var(--font-body);font-size:22px;line-height:1.35;font-weight:600;letter-spacing:-.015em;max-width:36ch}
.home-services h3 a {color:var(--fg);text-decoration:underline;text-decoration-color:var(--border);text-underline-offset:var(--space-1);text-decoration-thickness:1px}
.home-services p {font-size:16px;max-width:54ch;margin-top:var(--space-3)}
.home-expertise .text-link {margin-top:var(--space-5);font-size:16px}
.home-expertise .od-icon,.home-practice .od-icon,.home-contact .od-icon {--od-icon-size:20px;color:var(--accent)}
.home-practice {padding-block:var(--overview-section-space)}
.home-practice-grid {display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,.8fr);gap:var(--overview-column-gap);align-items:start}
.home-practice h2 {font-size:var(--overview-section-heading);max-width:26ch;margin-bottom:var(--space-6)}
.home-practice p {font-size:18px;max-width:65ch}
.home-practice-links {display:flex;flex-wrap:wrap;gap:var(--space-3) var(--space-8);margin-top:var(--space-6)}
.home-practice-links a {font-size:16px}
.home-practice-facts {border-top:var(--editorial-rule)}
.home-practice-facts dl {margin:0;padding:0}
.home-practice-facts dl>div {padding-block:var(--space-5);border-bottom:var(--editorial-rule)}
.home-practice-facts dt {font-size:17px;font-weight:600;color:var(--fg);line-height:1.5}
.home-practice-facts dd {margin:var(--space-2) 0 0;font-size:16px;color:var(--fg-2);line-height:1.6}
.home-contact {padding-block:var(--space-12);border-top:var(--editorial-rule)}
.home-contact-inner {display:flex;justify-content:space-between;align-items:center;gap:var(--space-8)}
.home-contact h2 {font-size:var(--overview-section-heading);max-width:28ch}
.home-contact p {margin-top:var(--space-4);max-width:62ch;font-size:17px}
.home-contact .text-link {flex:none;font-size:18px}
.experience-page .page-hero>.container,.experience-section>.container,.experience-page .cta-inner {max-width:var(--experience-width)}
.experience-page .page-hero {padding-bottom:var(--space-8)}
.experience-page .page-hero h1 {max-width:23ch}
.experience-page .page-hero .hero-lede {max-width:70ch;font-size:18px}
.experience-section {padding-top:var(--space-8);padding-bottom:var(--overview-section-space)}
.experience-page .case-toolbar {display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-6)}
.experience-page .case-filters {display:flex;flex-wrap:wrap;gap:var(--space-2)}
.experience-page .filter {font-family:var(--font-body);font-size:16px;line-height:1.5;min-height:44px;white-space:normal;padding:var(--space-2) var(--space-4)}
.experience-page .case-count {font-family:var(--font-body);font-size:16px;padding:0;color:var(--fg-2)}
.experience-page .case-grid {display:grid;grid-template-columns:minmax(0,1fr);gap:0}
.experience-page .case {padding-block:var(--space-12);border-top:var(--editorial-rule);min-width:0}
.experience-page .case:last-child {padding-bottom:0}
.experience-page .case-top {display:block;margin-bottom:var(--space-6)}
.experience-page .case-meta {font-family:var(--font-body);font-size:14px;line-height:1.6;letter-spacing:0;text-transform:none;color:var(--accent);padding:0;margin-bottom:var(--space-3)}
.experience-page .case-top h2 {font-size:var(--experience-heading);line-height:1.2;max-width:38ch;letter-spacing:-.02em}
.experience-page .case-body {display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-6);max-width:72ch}
.experience-page .case-block {min-width:0}
.experience-page .case-block h3 {font:600 17px/1.5 var(--font-body);letter-spacing:0;text-transform:none;color:var(--fg);margin-bottom:var(--space-2)}
.experience-page .case-block p {font-size:var(--experience-copy);line-height:var(--leading-body);max-width:72ch}
.experience-page .cta-inner {flex-direction:column;align-items:flex-start;gap:var(--space-6)}
.experience-page .cta-band h2 {max-width:28ch}
@media (hover:hover) {
.home-services h3 a:hover {color:var(--accent);text-decoration-color:var(--accent)}
.site-nav .nav-cta:hover {color:var(--brand-black);background:var(--brand-lime);border-color:var(--brand-lime)}
}
@media (max-width:1024px) {
:root {--overview-column-gap:40px}
.home-services h3 {font-size:20px}
}
@media (max-width:767px) {
:root {--overview-section-space:48px;--overview-column-gap:32px;--overview-heading:clamp(36px,7vw,48px)}
.home-section-heading,.home-practice-grid {grid-template-columns:1fr;gap:var(--space-6)}
.home-introduction h1 {max-width:23ch}
.home-lead {font-size:20px;max-width:58ch}
.home-section-heading h2 {max-width:26ch}
.home-contact-inner {flex-direction:column;align-items:flex-start;gap:var(--space-5)}
.experience-page .case {padding-block:var(--space-8)}
}
@media (max-width:480px) {
.home-services {grid-template-columns:1fr}
.home-introduction h1 {font-size:36px}
.home-practice p {font-size:17px}
.experience-page .case-top h2 {font-size:28px}
}
