:root{--c-paper:#f1eee6;--c-ink:#141411;--c-line:rgb(20 20 17/.22);--c-serif:Georgia,"Times New Roman",serif;--section-display-min:1.82rem;--section-display-fluid:7.7vw;--section-display-max:7.7rem}.capabilities-page{background:var(--c-paper);color:var(--c-ink);overflow:hidden}.capabilities-page h1,.capabilities-page h2,.capabilities-page h3,.capabilities-page p{margin:0}.page-pad{padding-inline:clamp(1.4rem,6vw,7rem)}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.kicker,.folio,.number{font-size:clamp(.65rem,.8vw,.78rem);line-height:1;letter-spacing:.16em;text-transform:uppercase}
.capabilities-hero{position:relative;min-height:100svh;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(18rem,.7fr);gap:clamp(3rem,8vw,9rem);align-content:center;padding-top:calc(var(--nav-height) + 5rem);padding-bottom:5rem;border-bottom:1px solid var(--c-line)}.capabilities-hero>*{min-width:0}.capabilities-hero>.kicker{grid-column:1/-1}.capabilities-hero h1{font-family:var(--c-serif);font-weight:400;line-height:.78;letter-spacing:-.07em;text-transform:uppercase}.hero-copy{align-self:end;display:grid;gap:1.5rem;max-width:36rem;font-family:var(--c-serif);font-size:clamp(1.1rem,1.5vw,1.45rem);line-height:1.45}.hero-statement{font-family:Arial,Helvetica,sans-serif;font-size:clamp(2.6rem,5vw,5.5rem);font-weight:700;line-height:.86!important;letter-spacing:-.05em;text-transform:uppercase}.objective{grid-column:1/-1;max-width:20ch;margin:clamp(4rem,9vh,8rem) 0 0 auto!important;font-family:var(--c-serif);font-size:clamp(2.2rem,4.5vw,4.8rem);line-height:1.02;letter-spacing:-.04em;text-align:right}.folio{position:absolute;right:clamp(1.4rem,6vw,7rem);bottom:2rem}
.principle{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(4rem,10vw,12rem);align-items:center;padding-top:clamp(7rem,16vh,13rem);padding-bottom:clamp(7rem,16vh,13rem);border-bottom:1px solid var(--c-line)}.principle-rail{margin:0;padding:0;list-style:none;border-top:1px solid var(--c-ink)}.principle-rail li{padding-block:1rem;border-bottom:1px solid var(--c-line);font-size:clamp(2rem,4.5vw,5rem);line-height:1;text-transform:uppercase}.principle-rail li:not(:last-child)::after{content:" →"}.principle-copy{display:grid;gap:1.5rem;font-family:var(--c-serif);font-size:clamp(1.2rem,1.8vw,1.65rem);line-height:1.45}
.capability{padding-top:clamp(8rem,18vh,15rem);padding-bottom:clamp(8rem,18vh,15rem);border-bottom:1px solid var(--c-line)}.capability-heading{display:grid;grid-template-columns:5rem 1fr;gap:clamp(2rem,5vw,6rem);align-items:start}.capability-heading h2{max-width:11ch;font-family:var(--c-serif);font-size:clamp(4rem,9vw,10rem);font-weight:400;line-height:.82;letter-spacing:-.065em;text-transform:uppercase}.direction{margin-top:2rem!important;font-size:clamp(.75rem,1vw,.9rem);letter-spacing:.14em;text-transform:uppercase}.capability-intro{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,8vw,9rem);margin:clamp(6rem,14vh,11rem) 0}.capability-intro>p{max-width:37rem;font-family:var(--c-serif);font-size:clamp(1.3rem,2.2vw,2.1rem);line-height:1.35}.capability-intro blockquote{max-width:28ch;margin:0;font-family:var(--c-serif);font-size:clamp(2rem,4vw,4.4rem);line-height:1.02;letter-spacing:-.04em}.capability-detail{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--c-ink)}.detail-block,.truth-note{padding:2rem clamp(1rem,2.5vw,3rem) 2rem 0;border-right:1px solid var(--c-line)}.detail-block:not(:first-child),.truth-note{padding-left:clamp(1rem,2.5vw,3rem)}.detail-block h3{margin-bottom:2rem;font-size:.72rem;letter-spacing:.15em;text-transform:uppercase}.detail-block p,.detail-block li,.truth-note p{font-family:var(--c-serif);font-size:clamp(1rem,1.3vw,1.2rem);line-height:1.45}.detail-block ul{margin:0;padding-left:1.1rem}.detail-block li+li{margin-top:.55rem}.truth-note{grid-column:1/-1;margin-top:3rem;padding-block:2rem;border:1px solid var(--c-ink);font-style:italic}.capability--spatial{background:#d8d1c3}.capability--systems{background:var(--c-ink);color:var(--c-paper)}.capability--systems .capability-detail,.capability--systems .truth-note{border-color:rgb(241 238 230/.35)}
.cross-capability{padding-top:clamp(8rem,18vh,15rem);padding-bottom:clamp(8rem,18vh,15rem);border-bottom:1px solid var(--c-line)}.cross-capability h2,.section-heading h2{max-width:14ch;margin-top:3rem!important;font-family:var(--c-serif);font-size:clamp(4rem,9vw,10rem);font-weight:400;line-height:.84;letter-spacing:-.065em;text-transform:uppercase}.cross-rail{margin:clamp(6rem,14vh,11rem) 0;padding:0;list-style:none;border-top:1px solid var(--c-ink)}.cross-rail li{padding-block:1.2rem;border-bottom:1px solid var(--c-line);font-size:clamp(1.7rem,4vw,4.5rem);text-transform:uppercase}.cross-rail li:not(:last-child)::after{content:" →"}.cross-copy{max-width:34ch;margin-left:auto!important;font-family:var(--c-serif);font-size:clamp(1.5rem,3vw,3rem);line-height:1.18}.text-link,.discovery-link{display:block;width:fit-content;min-height:44px;margin-top:3rem;padding-block:.9rem;border-bottom:1px solid currentColor;color:inherit;font-size:.75rem;letter-spacing:.15em;text-decoration:none;text-transform:uppercase}
.engagement{padding-top:clamp(8rem,18vh,15rem);padding-bottom:clamp(8rem,18vh,15rem);border-bottom:1px solid var(--c-line)}.section-heading{margin-bottom:clamp(6rem,14vh,11rem)}.engagement-steps{margin:0;padding:0;list-style:none;border-top:1px solid var(--c-ink)}.engagement-steps li{display:grid;grid-template-columns:5rem minmax(0,1fr);gap:clamp(2rem,5vw,6rem);padding-block:clamp(2rem,4vw,4rem);border-bottom:1px solid var(--c-line)}.engagement-steps h3{font-size:clamp(2rem,4vw,4.5rem);font-weight:400;line-height:.95;text-transform:uppercase}.engagement-steps .question{margin:1.4rem 0!important;font-family:var(--c-serif);font-size:clamp(1.35rem,2.5vw,2.5rem)}.engagement-steps div>p:last-child{max-width:50rem;font-family:var(--c-serif);font-size:clamp(1.05rem,1.4vw,1.3rem);line-height:1.45}
.not-cetc{min-height:150svh;display:grid;align-content:space-around;padding-block:clamp(8rem,18vh,15rem);background:#d8d1c3}.not-copy{display:grid;gap:3rem;max-width:48rem}.not-copy h2{font-family:var(--c-serif);font-size:clamp(4rem,9vw,9rem);font-weight:400;line-height:.85;letter-spacing:-.06em;text-transform:uppercase}.not-copy>p:last-child{font-family:var(--c-serif);font-size:clamp(1.1rem,1.7vw,1.55rem);line-height:1.5}.not-statement{max-width:16ch;margin-left:auto!important;font-size:clamp(3.5rem,9vw,10rem);font-weight:700;line-height:.84;letter-spacing:-.065em;text-align:right;text-transform:uppercase}
.discovery-bridge{min-height:100svh;display:grid;align-content:center;gap:3rem;background:var(--c-ink);color:var(--c-paper)}.discovery-bridge h2{max-width:14ch;font-family:var(--c-serif);font-size:clamp(4rem,9vw,10rem);font-weight:400;line-height:.84;letter-spacing:-.06em;text-transform:uppercase}.relationship{font-family:var(--c-serif);font-size:clamp(1.8rem,4vw,4rem)}.discovery-bridge>p:not(.kicker):not(.relationship){font-family:var(--c-serif);font-size:clamp(1.2rem,2vw,2rem)}
.reveal{opacity:0;transform:translateY(15px);transition:opacity .8s ease,transform 1s cubic-bezier(.22,1,.36,1)}.reveal.is-visible{opacity:1;transform:none}
@media(max-width:860px){.capabilities-hero{grid-template-columns:minmax(0,1fr)}.capabilities-hero>.kicker,.objective{grid-column:auto}.principle,.capability-intro{grid-template-columns:1fr}.capability-detail{grid-template-columns:1fr}.detail-block,.detail-block:not(:first-child),.truth-note{padding:2rem 0;border-right:0;border-bottom:1px solid var(--c-line)}.truth-note{grid-column:auto;padding-inline:1.5rem}.folio{display:none}}
@media(max-width:520px){.capabilities-hero{min-height:auto;padding-top:calc(var(--nav-height) + 7rem);padding-bottom:7rem}.capabilities-hero h1{white-space:nowrap}.objective{text-align:left}.capability-heading{grid-template-columns:2rem minmax(0,1fr);gap:1.2rem}.capability-heading h2{font-size:clamp(3.2rem,15vw,5rem);overflow-wrap:anywhere}.capability-intro blockquote{font-size:clamp(2rem,10vw,3rem)}.cross-capability h2,.section-heading h2,.not-copy h2,.discovery-bridge h2{font-size:clamp(3.2rem,15vw,5rem)}.engagement-steps li{grid-template-columns:2rem minmax(0,1fr);gap:1.2rem}.not-statement{font-size:clamp(3rem,14vw,4.7rem)}}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}
