/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties {
    @supports (((-webkit-hyphens: none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))) {
        *,:before,:after,::backdrop {
            --tw-rotate-x:initial;
            --tw-rotate-y: initial;
            --tw-rotate-z: initial;
            --tw-skew-x: initial;
            --tw-skew-y: initial;
            --tw-blur: initial;
            --tw-brightness: initial;
            --tw-contrast: initial;
            --tw-grayscale: initial;
            --tw-hue-rotate: initial;
            --tw-invert: initial;
            --tw-opacity: initial;
            --tw-saturate: initial;
            --tw-sepia: initial;
            --tw-drop-shadow: initial;
            --tw-drop-shadow-color: initial;
            --tw-drop-shadow-alpha: 100%;
            --tw-drop-shadow-size: initial
        }
    }
}

@layer theme {
    :root,:host {
        --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
        --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
        --spacing: .25rem;
        --default-transition-duration: .15s;
        --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
        --default-font-family: var(--font-sans);
        --default-mono-font-family: var(--font-mono)
    }
}

@layer base {
    *,:after,:before,::backdrop {
        box-sizing: border-box;
        border: 0 solid;
        margin: 0;
        padding: 0
    }

    ::file-selector-button {
        box-sizing: border-box;
        border: 0 solid;
        margin: 0;
        padding: 0
    }

    html,: host {
        -webkit-text-size-adjust:100%;
        tab-size: 4;
        line-height: 1.5;
        font-family: var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
        font-feature-settings: var(--default-font-feature-settings,normal);
        font-variation-settings: var(--default-font-variation-settings,normal);
        -webkit-tap-highlight-color: transparent
    }

    hr {
        height: 0;
        color: inherit;
        border-top-width: 1px
    }

    abbr: where([title]) {
        -webkit-text-decoration:underline dotted;
        text-decoration: underline dotted
    }

    h1,h2,h3,h4,h5,h6 {
        font-size: inherit;
        font-weight: inherit
    }

    a {
        color: inherit;
        -webkit-text-decoration: inherit;
        -webkit-text-decoration: inherit;
        -webkit-text-decoration: inherit;
        -webkit-text-decoration: inherit;
        text-decoration: inherit
    }

    b,strong {
        font-weight: bolder
    }

    code,kbd,samp,pre {
        font-family: var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
        font-feature-settings: var(--default-mono-font-feature-settings,normal);
        font-variation-settings: var(--default-mono-font-variation-settings,normal);
        font-size: 1em
    }

    small {
        font-size: 80%
    }

    sub,sup {
        vertical-align: baseline;
        font-size: 75%;
        line-height: 0;
        position: relative
    }

    sub {
        bottom: -.25em
    }

    sup {
        top: -.5em
    }

    table {
        text-indent: 0;
        border-color: inherit;
        border-collapse: collapse
    }

    :-moz-focusring {
        outline: auto
    }

    progress {
        vertical-align: baseline
    }

    summary {
        display: list-item
    }

    ol,ul,menu {
        list-style: none
    }

    img,svg,video,canvas,audio,iframe,embed,object {
        vertical-align: middle;
        display: block
    }

    img,video {
        max-width: 100%;
        height: auto
    }

    button,input,select,optgroup,textarea {
        font: inherit;
        font-feature-settings: inherit;
        font-variation-settings: inherit;
        letter-spacing: inherit;
        color: inherit;
        opacity: 1;
        background-color: #0000;
        border-radius: 0
    }

    ::file-selector-button {
        font: inherit;
        font-feature-settings: inherit;
        font-variation-settings: inherit;
        letter-spacing: inherit;
        color: inherit;
        opacity: 1;
        background-color: #0000;
        border-radius: 0
    }

    :where(select: is([multiple],[size])) optgroup {
        font-weight:bolder
    }

    :where(select: is([multiple],[size])) optgroup option {
        padding-inline-start:20px
    }

    ::file-selector-button {
        margin-inline-end:4px}

    ::placeholder {
        opacity: 1
    }

    @supports (not ((-webkit-appearance: -apple-pay-button))) or (contain-intrinsic-size:1px) {
        ::placeholder {
            color:currentColor
        }

        @supports (color: color-mix(in lab, red, red)) {
            ::placeholder {
                color:color-mix(in oklab, currentcolor 50%, transparent)
            }
        }
    }

    textarea {
        resize: vertical
    }

    ::-webkit-search-decoration {
        -webkit-appearance: none
    }

    ::-webkit-date-and-time-value {
        min-height: 1lh;
        text-align: inherit
    }

    ::-webkit-datetime-edit {
        display: inline-flex
    }

    ::-webkit-datetime-edit-fields-wrapper {
        padding: 0
    }

    ::-webkit-datetime-edit {
        padding-block:0}

    ::-webkit-datetime-edit-year-field {
        padding-block:0}

    ::-webkit-datetime-edit-month-field {
        padding-block:0}

    ::-webkit-datetime-edit-day-field {
        padding-block:0}

    ::-webkit-datetime-edit-hour-field {
        padding-block:0}

    ::-webkit-datetime-edit-minute-field {
        padding-block:0}

    ::-webkit-datetime-edit-second-field {
        padding-block:0}

    ::-webkit-datetime-edit-millisecond-field {
        padding-block:0}

    ::-webkit-datetime-edit-meridiem-field {
        padding-block:0}

    ::-webkit-calendar-picker-indicator {
        line-height: 1
    }

    :-moz-ui-invalid {
        box-shadow: none
    }

    button,input: where([type=button],[type=reset],[type=submit]) {
        appearance:button
    }

    ::file-selector-button {
        appearance: button
    }

    ::-webkit-inner-spin-button {
        height: auto
    }

    ::-webkit-outer-spin-button {
        height: auto
    }

    [hidden]: where(:not([hidden=until-found])) {
        display:none!important
    }
}

@layer components;@layer utilities {
    .visible {
        visibility: visible
    }

    .relative {
        position: relative
    }

    .static {
        position: static
    }

    .start {
        inset-inline-start: var(--spacing)
    }

    .end {
        inset-inline-end: var(--spacing)
    }

    .block {
        display: block
    }

    .table {
        display: table
    }

    .grow {
        flex-grow: 1
    }

    .transform {
        transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)
    }

    .blur {
        --tw-blur: blur(8px);
        filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)
    }

    .filter {
        filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)
    }

    .transition {
        transition-property: color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;
        transition-timing-function: var(--tw-ease,var(--default-transition-timing-function));
        transition-duration: var(--tw-duration,var(--default-transition-duration))
    }
}

:root {
    --ink: #151515;
    --warm: #f5f2ec;
    --paper: #fff;
    --red: #e3322a;
    --muted: #74716d;
    --line: #d9d5cf
}

* {
    box-sizing: border-box
}

html {
    scroll-behavior: smooth
}

body {
    background: var(--warm);
    color: var(--ink);
    font-family: var(--font-manrope),Arial,sans-serif;
    margin: 0
}

a {
    color: inherit;
    text-decoration: none
}

button {
    font: inherit
}

.site-header {
    z-index: 50;
    background: #fffffff5;
    border-bottom: 1px solid #e8e4df;
    align-items: center;
    gap: 4vw;
    height: 82px;
    padding: 0 4.5vw;
    display: flex;
    position: sticky;
    top: 0
}

.logo {
    letter-spacing: -2px;
    font-size: 30px;
    font-weight: 800
}

.logo span {
    color: var(--red)
}

.desktop-nav {
    align-items: center;
    gap: 2.2vw;
    margin: auto;
    font-size: 13px;
    font-weight: 700;
    display: flex
}

.desktop-nav>a,.mega-trigger>button {
    cursor: pointer;
    background: 0 0;
    border: 0;
    padding: 31px 0
}

.mega-trigger>button span {
    color: var(--red);
    margin-left: 5px
}

.nav-actions {
    align-items: center;
    gap: 24px;
    font-size: 12px;
    font-weight: 800;
    display: flex
}

.button {
    background: var(--red);
    color: #fff;
    letter-spacing: .03em;
    border: 1px solid var(--red);
    justify-content: center;
    align-items: center;
    padding: 17px 23px;
    font-size: 12px;
    font-weight: 800;
    transition: all .2s;
    display: inline-flex
}

.button:hover {
    background: #bd211b;
    border-color: #bd211b
}

.button.small {
    padding: 13px 18px
}

.mega-menu {
    border-top: 3px solid var(--red);
    background: #fff;
    grid-template-columns: repeat(3,1fr);
    gap: 45px;
    padding: 35px 5vw;
    display: none;
    position: absolute;
    top: 81px;
    left: 4vw;
    right: 4vw;
    box-shadow: 0 20px 50px #0002
}

.mega-trigger:hover .mega-menu,.mega-trigger:focus-within .mega-menu {
    display: grid
}

.mega-menu div {
    flex-direction: column;
    gap: 12px;
    display: flex
}

.mega-menu strong {
    margin-bottom: 8px;
    font-size: 15px
}

.mega-menu a {
    color: #666;
    font-size: 12px
}

.mega-menu a:hover {
    color: var(--red)
}

.mobile-menu {
    display: none
}

.hero {
    color: #fff;
    background: #191919;
    align-items: center;
    min-height: calc(84vh - 82px);
    padding: 8vw;
    display: flex;
    position: relative;
    overflow: hidden
}

.grid-lines {
    background-image: linear-gradient(#fff0 49%,#fff09 50%,#fff0 51%),linear-gradient(90deg,#fff0 49%,#fff08 50%,#fff0 51%);
    opacity: .08;
    transform-origin: bottom;
    background-size: 120px 120px;
    position: absolute;
    inset: 0;
    transform: perspective(500px)rotateX(58deg)scale(1.5)
}

.hero:after {
    content: "";
    background: radial-gradient(circle at 80% 52%,#0000 0 7%,#19191900 24%,#191919 76%);
    position: absolute;
    inset: 0
}

.hero-orbit {
    border: 1px solid #fff2;
    border-radius: 50%;
    width: 52vw;
    height: 52vw;
    position: absolute;
    top: 2vh;
    right: -10vw
}

.orbit-two {
    border-color: #e3322a88;
    width: 29vw;
    height: 29vw;
    top: 17vh;
    right: 5vw
}

.hero-copy {
    z-index: 2;
    max-width: 880px;
    position: relative
}

.eyebrow {
    letter-spacing: .22em;
    color: var(--red);
    margin: 0 0 28px;
    font-size: 11px;
    font-weight: 800
}

.eyebrow.light {
    color: #fff
}

.eyebrow.light:before {
    content: "";
    background: var(--red);
    vertical-align: middle;
    width: 26px;
    height: 2px;
    margin-right: 12px;
    display: inline-block
}

.hero h1,.section h2,.government h2,.case-study h2,.careers h2,.final-cta h2 {
    letter-spacing: -.055em;
    margin: 0;
    font-size: clamp(42px,5.5vw,78px);
    font-weight: 750;
    line-height: 1.01
}

.hero h1 em,h2 em {
    color: #aaa;
    font-style: normal
}

.hero h1 em {
    color: #fff
}

.hero-text {
    color: #d0d0d0;
    max-width: 690px;
    margin: 30px 0;
    font-size: 17px;
    line-height: 1.75
}

.hero-buttons {
    align-items: center;
    gap: 34px;
    display: flex
}

.text-link {
    border-bottom: 1px solid;
    padding-bottom: 7px;
    font-size: 12px;
    font-weight: 800
}

.text-link span {
    color: var(--red);
    margin-left: 10px
}

.cred-line {
    color: #aaa;
    align-items: center;
    gap: 12px;
    margin-top: 45px;
    font-size: 11px;
    display: flex
}

.cred-line span {
    background: var(--red);
    width: 34px;
    height: 1px
}

.hero-index {
    z-index: 3;
    color: #777;
    gap: 12px;
    font-size: 10px;
    display: flex;
    position: absolute;
    bottom: 3vw;
    right: 5vw
}

.hero-index span:first-child {
    color: #fff
}

.metrics {
    background: #fff;
    grid-template-columns: repeat(4,1fr);
    padding: 0 6vw;
    display: grid
}

.metrics div {
    border-right: 1px solid var(--line);
    flex-direction: column;
    padding: 35px 2.5vw;
    display: flex
}

.metrics div:last-child {
    border: 0
}

.metrics strong {
    letter-spacing: -.04em;
    font-size: 34px
}

.metrics span {
    color: var(--muted);
    margin-top: 7px;
    font-size: 11px
}

.metrics .accent-metric strong {
    color: var(--red)
}

.section {
    padding: 9vw 7vw
}

.section-heading {
    grid-template-columns: 1.4fr .6fr;
    align-items: end;
    gap: 9vw;
    margin-bottom: 65px;
    display: grid
}

.section-heading h2,.government h2,.case-study h2,.careers h2,.final-cta h2 {
    font-size: clamp(34px,4.4vw,60px)
}

.section-heading>p {
    color: var(--muted);
    font-size: 15px;
    line-height: 1.8
}

.pillar-grid {
    border-top: 1px solid var(--ink);
    border-bottom: 1px solid var(--ink);
    grid-template-columns: repeat(3,1fr);
    display: grid
}

.pillar {
    border-right: 1px solid #aaa;
    flex-direction: column;
    justify-content: space-between;
    min-height: 570px;
    padding: 35px 32px;
    transition: all .3s;
    display: flex;
    position: relative;
    overflow: hidden
}

.pillar:last-child {
    border: 0
}

.pillar:before {
    content: "";
    border: 1px solid #bbb;
    border-radius: 50%;
    height: 60%;
    transition: all .3s;
    position: absolute;
    inset: auto -20% -40% 20%
}

.pillar:hover {
    background: var(--ink);
    color: #fff
}

.pillar:hover:before {
    border-color: var(--red);
    transform: scale(1.3)
}

.pillar-number {
    color: var(--red);
    font-size: 11px
}

.pillar h3 {
    letter-spacing: -.03em;
    max-width: 250px;
    font-size: 27px
}

.pillar p {
    color: var(--muted);
    font-size: 14px;
    line-height: 1.7
}

.pillar ul {
    opacity: 0;
    max-height: 0;
    padding: 0;
    font-size: 12px;
    line-height: 2;
    list-style: none;
    transition: all .3s
}

.pillar:hover ul {
    opacity: 1;
    max-height: 140px
}

.government {
    color: #fff;
    background: #171717;
    grid-template-columns: 1.1fr .9fr;
    gap: 4vw;
    padding: 9vw 7vw;
    display: grid
}

.gov-intro>p:not(.eyebrow) {
    color: #aaa;
    max-width: 600px;
    margin: 30px 0;
    line-height: 1.8
}

.gov-visual {
    background: radial-gradient(circle,#e3322a22,#0000 55%);
    border: 1px solid #ffffff18;
    min-height: 400px;
    position: relative;
    overflow: hidden
}

.rings {
    border: 1px solid #fff3;
    border-radius: 50%;
    width: 310px;
    height: 310px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    box-shadow: 0 0 0 60px #ffffff0a,0 0 0 120px #ffffff08
}

.map-label {
    text-align: center;
    letter-spacing: .2em;
    z-index: 2;
    font-size: 10px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%)
}

.map-label strong {
    letter-spacing: -.03em;
    font-size: 26px
}

.dot {
    background: var(--red);
    border-radius: 50%;
    width: 7px;
    height: 7px;
    position: absolute;
    box-shadow: 0 0 0 7px #e3322a22
}

.d1 {
    top: 28%;
    left: 20%
}

.d2 {
    top: 65%;
    left: 34%
}

.d3 {
    top: 22%;
    left: 61%
}

.d4 {
    top: 43%;
    left: 75%
}

.d5 {
    top: 72%;
    left: 58%
}

.d6 {
    top: 48%;
    left: 27%
}

.d7 {
    top: 68%;
    left: 81%
}

.d8 {
    top: 38%;
    left: 47%
}

.capability-grid {
    border-top: 1px solid #fff3;
    grid-column: 1/-1;
    grid-template-columns: repeat(4,1fr);
    margin-top: 35px;
    display: grid
}

.capability-grid div {
    border-bottom: 1px solid #fff2;
    border-right: 1px solid #fff2;
    padding: 25px 15px;
    font-size: 12px
}

.capability-grid span {
    color: var(--red);
    margin-bottom: 12px;
    font-size: 9px;
    display: block
}

.compact {
    align-items: center
}

.industry-list {
    border-top: 1px solid var(--ink)
}

.industry-list>a {
    border-bottom: 1px solid #aaa;
    grid-template-columns: 60px 1fr 1fr 30px;
    align-items: center;
    gap: 30px;
    padding: 28px 10px;
    transition: all .2s;
    display: grid
}

.industry-list>a:hover {
    background: #fff;
    padding-left: 24px
}

.industry-list span {
    color: var(--red);
    font-size: 10px
}

.industry-list h3 {
    margin: 0;
    font-size: 24px
}

.industry-list p {
    color: var(--muted);
    font-size: 13px
}

.case-study {
    color: #fff;
    background: #263238;
    grid-template-columns: .5fr 1.5fr;
    gap: 7vw;
    padding: 8vw 7vw;
    display: grid
}

.case-label span {
    color: #9ca8ac;
    font-size: 10px
}

.case-main p {
    color: #bdc5c8;
    max-width: 750px;
    font-size: 16px;
    line-height: 1.8
}

.outcomes {
    border-top: 1px solid #fff3;
    grid-column: 2;
    grid-template-columns: repeat(3,1fr);
    margin-top: 20px;
    display: grid
}

.outcomes div {
    flex-direction: column;
    gap: 12px;
    padding: 25px 25px 0 0;
    display: flex
}

.outcomes span {
    color: var(--red);
    font-size: 10px
}

.outcomes strong {
    font-size: 13px
}

.why-grid {
    border-top: 1px solid var(--ink);
    grid-template-columns: repeat(4,1fr);
    display: grid
}

.why-grid article {
    border-right: 1px solid #aaa;
    padding: 28px 24px
}

.why-grid article:last-child {
    border: 0
}

.why-grid span {
    color: var(--red);
    font-size: 10px
}

.why-grid h3 {
    margin-top: 55px;
    font-size: 21px
}

.why-grid p {
    color: var(--muted);
    font-size: 13px;
    line-height: 1.7
}

.insights {
    background: #fff
}

.insight-grid {
    grid-template-columns: repeat(3,1fr);
    gap: 25px;
    display: grid
}

.insight-art {
    color: #fff;
    letter-spacing: .15em;
    background: #252525;
    height: 230px;
    padding: 20px;
    font-size: 9px;
    position: relative;
    overflow: hidden
}

.insight-art:before,.insight-art:after {
    content: "";
    border: 1px solid #fff4;
    border-radius: 50%;
    position: absolute
}

.insight-art:before {
    width: 260px;
    height: 260px;
    bottom: -100px;
    right: -80px
}

.insight-art:after {
    border-color: var(--red);
    width: 130px;
    height: 130px;
    bottom: -30px;
    right: 30px
}

.art-2 {
    background: #8b221f
}

.art-3 {
    background: #25383f
}

.meta {
    letter-spacing: .12em;
    color: var(--red)!important;
    font-size: 9px!important
}

.insight-grid h3 {
    font-size: 20px;
    line-height: 1.35
}

.insight-grid article>p {
    color: var(--muted);
    font-size: 13px;
    line-height: 1.7
}

.insight-grid article>a {
    float: right;
    font-size: 20px
}

.careers {
    color: #fff;
    background: #191919;
    grid-template-columns: 1fr 1fr;
    display: grid
}

.career-visual {
    background: linear-gradient(135deg,#19292e,#4f686c);
    min-height: 590px;
    position: relative;
    overflow: hidden
}

.career-visual:before {
    content: "";
    border: 1px solid #fff6;
    width: 70%;
    height: 120%;
    position: absolute;
    top: -10%;
    left: 10%;
    transform: rotate(28deg)
}

.career-shape {
    background: var(--red);
    mix-blend-mode: multiply;
    border-radius: 50%;
    width: 280px;
    height: 280px;
    position: absolute;
    bottom: 50px;
    right: -70px
}

.career-copy {
    flex-direction: column;
    justify-content: center;
    padding: 8vw;
    display: flex
}

.career-copy>p:not(.eyebrow) {
    color: #aaa;
    line-height: 1.8
}

.career-copy>div {
    align-items: center;
    gap: 28px;
    margin-top: 25px;
    display: flex
}

.final-cta {
    background: var(--red);
    color: #fff;
    grid-template-columns: 1fr .65fr;
    align-items: end;
    gap: 7vw;
    padding: 7vw;
    display: grid
}

.final-cta .eyebrow {
    grid-column: 1/-1;
    margin: 0
}

.final-cta h2 em {
    color: #50100d
}

.final-cta>p {
    line-height: 1.8
}

.final-cta>div {
    grid-column: 1/-1;
    align-items: center;
    gap: 30px;
    font-size: 12px;
    font-weight: 800;
    display: flex
}

.dark-button {
    background: #171717;
    border-color: #171717
}

.final-cta>div>a:not(.button) {
    border-bottom: 1px solid #fff;
    padding-bottom: 6px
}

footer {
    color: #fff;
    background: #111;
    padding: 6vw 7vw 2vw
}

.footer-top {
    border-bottom: 1px solid #fff2;
    justify-content: space-between;
    padding-bottom: 50px;
    display: flex
}

.footer-top p {
    text-align: right;
    color: #888;
    font-size: 13px;
    line-height: 1.7
}

.footer-logo {
    font-size: 40px
}

.footer-links {
    grid-template-columns: repeat(4,1fr);
    padding: 50px 0;
    display: grid
}

.footer-links>div {
    flex-direction: column;
    gap: 13px;
    display: flex
}

.footer-links strong {
    color: #777;
    margin-bottom: 8px;
    font-size: 11px
}

.footer-links a {
    font-size: 12px
}

.footer-bottom {
    color: #666;
    border-top: 1px solid #fff2;
    justify-content: space-between;
    padding-top: 22px;
    font-size: 10px;
    display: flex
}

.footer-bottom div {
    gap: 20px;
    display: flex
}

@media (width<=900px) {
    .desktop-nav,.nav-actions {
        display: none
    }

    .site-header {
        justify-content: space-between
    }

    .mobile-menu {
        display: block;
        position: relative
    }

    .mobile-menu summary {
        font-size: 12px;
        font-weight: 800;
        list-style: none
    }

    .mobile-menu div {
        background: #fff;
        flex-direction: column;
        gap: 16px;
        width: 230px;
        padding: 20px;
        display: flex;
        position: absolute;
        top: 45px;
        right: 0;
        box-shadow: 0 15px 40px #0002
    }

    .hero {
        min-height: 740px;
        padding: 12vw 7vw
    }

    .hero h1 {
        font-size: 12vw
    }

    .metrics {
        grid-template-columns: 1fr 1fr
    }

    .metrics div:nth-child(2) {
        border-right: 0
    }

    .section-heading,.government,.case-study,.pillar-grid {
        grid-template-columns: 1fr
    }

    .pillar {
        border-bottom: 1px solid #aaa;
        border-right: 0;
        min-height: 420px
    }

    .pillar ul {
        opacity: 1;
        max-height: 150px
    }

    .capability-grid {
        grid-template-columns: 1fr 1fr
    }

    .industry-list>a {
        grid-template-columns: 35px 1fr 20px
    }

    .industry-list p {
        display: none
    }

    .outcomes {
        grid-column: 1
    }

    .why-grid,.insight-grid {
        grid-template-columns: 1fr 1fr
    }

    .why-grid article {
        border-bottom: 1px solid #aaa
    }

    .careers {
        grid-template-columns: 1fr
    }

    .career-visual {
        min-height: 360px
    }

    .final-cta {
        grid-template-columns: 1fr
    }

    .footer-links {
        grid-template-columns: 1fr 1fr;
        gap: 40px
    }
}

@media (width<=600px) {
    .hero {
        min-height: 700px
    }

    .hero-text {
        font-size: 15px
    }

    .hero-buttons,.career-copy>div,.final-cta>div {
        flex-direction: column;
        align-items: flex-start
    }

    .cred-line {
        line-height: 1.5
    }

    .metrics strong {
        font-size: 27px
    }

    .section {
        padding: 80px 6vw
    }

    .section-heading {
        grid-template-columns: 1fr;
        gap: 20px
    }

    .pillar {
        padding: 28px 18px
    }

    .government {
        padding: 80px 6vw
    }

    .gov-visual {
        min-height: 300px
    }

    .capability-grid {
        grid-template-columns: 1fr
    }

    .industry-list h3 {
        font-size: 18px
    }

    .case-study {
        padding: 70px 6vw
    }

    .outcomes,.why-grid,.insight-grid {
        grid-template-columns: 1fr
    }

    .why-grid article {
        border-right: 0
    }

    .career-copy,.final-cta {
        padding: 70px 7vw
    }

    .footer-bottom {
        flex-direction: column;
        gap: 20px
    }

    .footer-links {
        grid-template-columns: 1fr 1fr
    }

    .footer-bottom div {
        flex-wrap: wrap
    }
}

@media (prefers-reduced-motion:reduce) {
    html {
        scroll-behavior: auto
    }

    * {
        transition: none!important
    }
}

.leader-location {
    letter-spacing: .08em;
    text-transform: uppercase;
    margin-top: -12px;
    color: #777!important;
    font-size: 11px!important
}

.leader-copy>p:last-child {
    margin-top: 12px
}

.leader-card:nth-child(2n) .leader-image {
    order: 3
}

.leader-card:nth-child(2n) {
    grid-template-columns: 1fr 70px 340px
}

.leader-card:nth-child(2n) .leader-copy {
    order: 1
}

.leader-card:nth-child(2n) .leader-number {
    order: 2
}

@media (width<=900px) {
    .leader-card: nth-child(2n) {
        grid-template-columns:1fr 45px 220px
    }
}

@media (width<=650px) {
    .leader-card: nth-child(2n) {
        grid-template-columns:55px 1fr
    }

    .leader-card:nth-child(2n) .leader-image {
        order: 0;
        grid-column: 1/-1
    }

    .leader-card:nth-child(2n) .leader-number {
        order: 0;
        grid-column: 1
    }

    .leader-card:nth-child(2n) .leader-copy {
        order: 0;
        grid-column: 2
    }
}

.hero h1 em {
    white-space: nowrap;
    display: inline-block
}

.hero h1 .tagline-one {
    color: var(--red)
}

.profile-hero {
    color: #fff;
    background: #191919;
    flex-direction: column;
    justify-content: center;
    min-height: 650px;
    padding: 9vw 8vw;
    display: flex;
    position: relative;
    overflow: hidden
}

.profile-globe {
    border: 1px solid #fff2;
    border-radius: 50%;
    width: 650px;
    height: 650px;
    position: absolute;
    top: -100px;
    right: -120px;
    box-shadow: inset 0 0 0 110px #ffffff05,0 0 0 90px #ffffff05
}

.profile-hero h1 {
    letter-spacing: -.065em;
    margin: 0;
    font-size: clamp(52px,6.2vw,90px);
    line-height: .98;
    position: relative
}

.profile-hero h1 em {
    color: #aaa;
    font-style: normal
}

.profile-hero>p:last-child {
    color: #bbb;
    max-width: 730px;
    line-height: 1.8;
    position: relative
}

.profile-intro {
    grid-template-columns: .4fr 1.6fr;
    gap: 7vw;
    padding: 9vw 8vw;
    display: grid
}

.profile-intro h2,.profile-disciplines h2,.profile-partners h2,.cert-profile h2 {
    letter-spacing: -.055em;
    margin: 0 0 28px;
    font-size: clamp(40px,4.8vw,68px);
    line-height: 1.03
}

.profile-intro h2 em,.profile-disciplines h2 em,.cert-profile h2 em {
    color: #999;
    font-style: normal
}

.profile-intro div>p,.cert-profile div>p {
    color: var(--muted);
    max-width: 800px;
    line-height: 1.85
}

.profile-numbers {
    background: var(--red);
    color: #fff;
    grid-template-columns: repeat(5,1fr);
    padding: 0 5vw;
    display: grid
}

.profile-numbers div {
    border-right: 1px solid #fff4;
    flex-direction: column;
    padding: 36px 2vw;
    display: flex
}

.profile-numbers strong {
    font-size: 38px
}

.profile-numbers span {
    margin-top: 8px;
    font-size: 10px
}

.business-units {
    padding: 8vw
}

.unit-grid {
    border-top: 1px solid #aaa;
    grid-template-columns: repeat(4,1fr);
    display: grid
}

.unit-grid article {
    border-right: 1px solid #aaa;
    padding: 30px 24px
}

.unit-grid span,.discipline-grid span,.program-list span {
    color: var(--red);
    font-size: 10px
}

.unit-grid h3 {
    margin-top: 55px;
    font-size: 27px
}

.unit-grid p {
    color: var(--muted);
    font-size: 13px;
    line-height: 1.8
}

.public-profile {
    color: #fff;
    background: #263238;
    grid-template-columns: 1fr 1fr;
    gap: 8vw;
    padding: 8vw;
    display: grid
}

.public-copy>p:not(.eyebrow) {
    color: #b7c1c4;
    line-height: 1.8
}

.profile-stats {
    border-top: 1px solid #fff3;
    grid-template-columns: 1fr 1fr;
    margin-top: 45px;
    display: grid
}

.profile-stats div {
    flex-direction: column;
    padding: 25px 15px;
    display: flex
}

.profile-stats strong {
    color: var(--red);
    font-size: 42px
}

.profile-stats span {
    font-size: 10px
}

.program-list {
    border-top: 1px solid #fff3
}

.program-list div {
    border-bottom: 1px solid #fff3;
    grid-template-columns: 40px 1fr;
    padding: 20px 8px;
    font-size: 13px;
    display: grid
}

.profile-disciplines {
    grid-template-columns: .8fr 1.2fr;
    gap: 8vw;
    padding: 8vw;
    display: grid
}

.discipline-grid {
    border-top: 1px solid #aaa;
    grid-template-columns: 1fr 1fr;
    display: grid
}

.discipline-grid article {
    border-bottom: 1px solid #aaa;
    border-right: 1px solid #aaa;
    padding: 23px
}

.discipline-grid h3 {
    margin-top: 28px;
    font-size: 17px
}

.profile-partners {
    color: #fff;
    background: #1a1a1a;
    grid-template-columns: 1fr 1fr;
    gap: 8vw;
    padding: 8vw;
    display: grid
}

.profile-partners h2 em {
    color: #999
}

.profile-partners div>p {
    color: #aaa;
    line-height: 1.85
}

.profile-partners .button {
    margin-top: 25px
}

.cert-profile {
    grid-template-columns: .4fr 1.6fr;
    gap: 7vw;
    padding: 8vw;
    display: grid
}

.cert-profile ul {
    border-top: 1px solid #aaa;
    grid-template-columns: 1fr 1fr;
    gap: 0;
    margin-top: 35px;
    padding: 0;
    list-style: none;
    display: grid
}

.cert-profile li {
    border-bottom: 1px solid #aaa;
    padding: 18px;
    font-size: 12px
}

@media (width<=900px) {
    .profile-intro,.public-profile,.profile-disciplines,.profile-partners,.cert-profile {
        grid-template-columns: 1fr
    }

    .profile-numbers,.unit-grid {
        grid-template-columns: 1fr 1fr
    }
}

@media (width<=600px) {
    .profile-hero {
        min-height: 560px;
        padding: 100px 7vw
    }

    .profile-intro,.business-units,.public-profile,.profile-disciplines,.profile-partners,.cert-profile {
        padding: 70px 7vw
    }

    .unit-grid,.discipline-grid,.cert-profile ul {
        grid-template-columns: 1fr
    }

    .profile-numbers {
        grid-template-columns: 1fr 1fr;
        padding: 0
    }

    .profile-stats {
        grid-template-columns: 1fr
    }
}

.category-hero {
    color: #fff;
    background: #191919;
    flex-direction: column;
    justify-content: center;
    min-height: 650px;
    padding: 9vw 8vw 6vw;
    display: flex
}

.category-hero h1 {
    letter-spacing: -.06em;
    margin: 0;
    font-size: clamp(50px,6vw,86px);
    line-height: 1
}

.category-hero>p:not(.eyebrow) {
    color: #bbb;
    max-width: 720px;
    line-height: 1.8
}

.category-jump {
    border-top: 1px solid #fff3;
    grid-template-columns: repeat(5,1fr);
    margin-top: 50px;
    display: grid
}

.category-jump a {
    border-right: 1px solid #fff2;
    padding: 21px 14px;
    font-size: 11px;
    font-weight: 700
}

.category-jump span {
    color: var(--red);
    margin-bottom: 9px;
    font-size: 9px;
    display: block
}

.category-items {
    padding: 3vw 8vw 9vw
}

.category-items article {
    border-bottom: 1px solid #aaa;
    grid-template-columns: 80px 1.1fr .9fr;
    gap: 5vw;
    padding: 65px 0;
    scroll-margin-top: 82px;
    display: grid
}

.category-count {
    color: var(--red);
    font-size: 11px
}

.category-items h2 {
    letter-spacing: -.05em;
    margin: 0 0 20px;
    font-size: clamp(34px,4vw,58px)
}

.category-items article>div>p {
    color: var(--muted);
    max-width: 700px;
    line-height: 1.8
}

.category-items ul {
    border-top: 1px solid #aaa;
    margin: 0;
    padding: 0;
    list-style: none
}

.category-items li {
    border-bottom: 1px solid #aaa;
    padding: 16px 5px;
    font-size: 12px
}

@media (width<=900px) {
    .category-jump {
        grid-template-columns: 1fr 1fr
    }

    .category-items article {
        grid-template-columns: 50px 1fr
    }

    .category-items ul {
        grid-column: 2
    }
}

@media (width<=600px) {
    .category-hero {
        min-height: 720px;
        padding: 100px 7vw 60px
    }

    .category-jump {
        grid-template-columns: 1fr
    }

    .category-items {
        padding: 20px 7vw 70px
    }

    .category-items article {
        grid-template-columns: 1fr;
        gap: 15px
    }

    .category-items ul {
        grid-column: 1
    }
}

.about-hero {
    color: #fff;
    background: #191919;
    flex-direction: column;
    justify-content: center;
    min-height: 650px;
    padding: 9vw 8vw;
    display: flex;
    position: relative;
    overflow: hidden
}

.about-year {
    letter-spacing: -.1em;
    color: #ffffff05;
    font-size: 30vw;
    font-weight: 800;
    line-height: .8;
    position: absolute;
    bottom: -6vw;
    right: -2vw
}

.about-hero h1 {
    letter-spacing: -.065em;
    margin: 0;
    font-size: clamp(52px,6.4vw,90px);
    line-height: .98;
    position: relative
}

.about-hero h1 em {
    color: #aaa;
    font-style: normal
}

.about-hero>p:last-child {
    color: #bbb;
    max-width: 680px;
    line-height: 1.8;
    position: relative
}

.about-story {
    grid-template-columns: .4fr 1.6fr;
    gap: 7vw;
    padding: 9vw 8vw;
    display: grid
}

.story-date {
    letter-spacing: .16em;
    font-size: 10px
}

.about-story h2,.about-culture h2,.values-heading h2,.community-intro h2 {
    letter-spacing: -.055em;
    margin: 0 0 30px;
    font-size: clamp(40px,4.8vw,68px);
    line-height: 1.03
}

.about-story h2 em,.about-culture h2 em {
    color: #999;
    font-style: normal
}

.about-story div>p,.about-culture div>p {
    color: var(--muted);
    max-width: 780px;
    line-height: 1.85
}

.about-story .text-link {
    margin-top: 22px;
    display: inline-block
}

.values-section {
    color: #fff;
    background: #1a1a1a;
    padding: 8vw
}

.values-heading {
    grid-template-columns: .4fr 1.6fr;
    gap: 7vw;
    display: grid
}

.values-heading h2 em {
    color: #999
}

.value-grid {
    border-top: 1px solid #fff3;
    grid-template-columns: repeat(3,1fr);
    margin-top: 65px;
    display: grid
}

.value-grid article {
    border-right: 1px solid #fff2;
    padding: 32px 30px
}

.value-grid span,.center-grid span,.community-list>article>span {
    color: var(--red);
    font-size: 10px
}

.value-grid h3 {
    margin-top: 65px;
    font-size: 28px
}

.value-grid p {
    color: #aaa;
    font-size: 13px;
    line-height: 1.8
}

.about-culture {
    grid-template-columns: 1.1fr .9fr;
    gap: 8vw;
    padding: 9vw 8vw;
    display: grid
}

.delivery-centers {
    background: #fff;
    padding: 8vw
}

.center-grid {
    border-top: 1px solid #aaa;
    grid-template-columns: repeat(3,1fr);
    display: grid
}

.center-grid article {
    border-right: 1px solid #aaa;
    padding: 32px 28px
}

.center-grid h3 {
    margin-top: 55px;
    font-size: 24px;
    line-height: 1.3
}

.center-grid p {
    color: var(--muted);
    font-size: 13px;
    line-height: 1.8
}

.community-section {
    color: #fff;
    background: #263238;
    grid-template-columns: .8fr 1.2fr;
    gap: 8vw;
    padding: 8vw;
    display: grid
}

.community-intro>p:last-child {
    color: #b5c0c3;
    line-height: 1.8
}

.community-intro h2 em {
    color: #a3afb2
}

.community-list {
    border-top: 1px solid #fff3
}

.community-list article {
    border-bottom: 1px solid #fff3;
    grid-template-columns: 50px 1fr;
    padding: 27px 0;
    display: grid
}

.community-list h3 {
    margin: 0 0 10px
}

.community-list p {
    color: #aeb9bd;
    font-size: 13px;
    line-height: 1.7
}

.about-metrics {
    background: var(--red);
    color: #fff;
    grid-template-columns: repeat(4,1fr);
    padding: 0 6vw;
    display: grid
}

.about-metrics div {
    border-right: 1px solid #fff4;
    flex-direction: column;
    padding: 38px 2vw;
    display: flex
}

.about-metrics strong {
    font-size: 38px
}

.about-metrics span {
    margin-top: 8px;
    font-size: 11px
}

@media (width<=900px) {
    .about-story,.values-heading,.about-culture,.community-section,.value-grid,.center-grid {
        grid-template-columns: 1fr
    }

    .value-grid article,.center-grid article {
        border-bottom: 1px solid #fff2;
        border-right: 0
    }

    .about-metrics {
        grid-template-columns: 1fr 1fr
    }
}

@media (width<=600px) {
    .about-hero {
        min-height: 560px;
        padding: 100px 7vw
    }

    .about-story,.values-section,.about-culture,.delivery-centers,.community-section {
        padding: 70px 7vw
    }

    .about-metrics {
        grid-template-columns: 1fr 1fr;
        padding: 0
    }

    .about-metrics strong {
        font-size: 30px
    }
}

.services-hero {
    color: #fff;
    background: #191919;
    flex-direction: column;
    justify-content: center;
    min-height: 720px;
    padding: 9vw 8vw 6vw;
    display: flex;
    position: relative;
    overflow: hidden
}

.services-grid {
    transform-origin: bottom;
    background-image: linear-gradient(#ffffff0a 1px,#0000 1px),linear-gradient(90deg,#ffffff0a 1px,#0000 1px);
    background-size: 90px 90px;
    position: absolute;
    inset: 0;
    transform: perspective(600px)rotateX(55deg)scale(1.4)
}

.services-hero h1 {
    letter-spacing: -.065em;
    margin: 0;
    font-size: clamp(50px,6.5vw,92px);
    line-height: .98;
    position: relative
}

.services-hero h1 em {
    color: #aaa;
    font-style: normal
}

.services-hero>p:not(.eyebrow) {
    color: #bbb;
    max-width: 720px;
    font-size: 16px;
    line-height: 1.8;
    position: relative
}

.services-jump {
    border-top: 1px solid #fff3;
    grid-template-columns: repeat(6,1fr);
    margin-top: 50px;
    display: grid;
    position: relative
}

.services-jump a {
    border-right: 1px solid #fff2;
    padding: 20px 12px;
    font-size: 11px;
    font-weight: 700
}

.services-jump span {
    color: var(--red);
    margin-bottom: 9px;
    font-size: 9px;
    display: block
}

.services-overview {
    grid-template-columns: .4fr 1.6fr;
    gap: 7vw;
    padding: 8vw;
    display: grid
}

.services-overview h2 {
    letter-spacing: -.055em;
    margin: 0 0 28px;
    font-size: clamp(38px,4.6vw,66px);
    line-height: 1.04
}

.services-overview h2 em {
    color: #999;
    font-style: normal
}

.services-overview div>p {
    max-width: 740px;
    color: var(--muted);
    line-height: 1.85
}

.service-detail {
    background: #fff;
    grid-template-columns: .35fr 1.05fr .6fr;
    gap: 5vw;
    padding: 7vw 8vw;
    scroll-margin-top: 82px;
    display: grid
}

.service-dark {
    color: #fff;
    background: #1a1a1a
}

.service-index span {
    color: var(--red);
    font-size: 11px
}

.service-index p {
    letter-spacing: .18em;
    margin-top: 20px;
    font-size: 9px
}

.service-body h2 {
    letter-spacing: -.055em;
    margin: 0 0 28px;
    font-size: clamp(42px,4.5vw,68px)
}

.service-body h3 {
    max-width: 620px;
    font-size: 20px;
    line-height: 1.45
}

.service-body>p {
    color: var(--muted);
    max-width: 700px;
    font-size: 14px;
    line-height: 1.85
}

.service-dark .service-body>p {
    color: #aaa
}

.service-body>a {
    border-bottom: 1px solid;
    margin-top: 22px;
    padding-bottom: 7px;
    font-size: 11px;
    font-weight: 800;
    display: inline-block
}

.service-body>a span {
    color: var(--red);
    margin-left: 8px
}

.service-detail ul {
    border-top: 1px solid #aaa;
    margin: 0;
    padding: 10px 0;
    list-style: none
}

.service-detail li {
    border-bottom: 1px solid #aaa;
    padding: 17px 5px;
    font-size: 12px
}

.service-model {
    color: #fff;
    background: #263238;
    padding: 8vw
}

.service-model>div:first-child {
    grid-template-columns: .4fr 1.6fr;
    gap: 7vw;
    display: grid
}

.service-model h2 {
    letter-spacing: -.055em;
    margin: 0;
    font-size: clamp(38px,4.5vw,64px);
    line-height: 1.05
}

.service-model h2 em {
    color: #9ba7ab
}

.model-steps {
    border-top: 1px solid #fff3;
    grid-template-columns: repeat(4,1fr);
    margin-top: 70px;
    display: grid
}

.model-steps article {
    border-right: 1px solid #fff2;
    padding: 28px 24px
}

.model-steps span {
    color: var(--red);
    font-size: 10px
}

.model-steps h3 {
    margin-top: 45px
}

.model-steps p {
    color: #aeb9bd;
    font-size: 12px;
    line-height: 1.75
}

@media (width<=900px) {
    .services-jump {
        grid-template-columns: repeat(3,1fr)
    }

    .services-overview,.service-detail {
        grid-template-columns: 1fr
    }

    .service-index {
        gap: 20px;
        display: flex
    }

    .model-steps {
        grid-template-columns: 1fr 1fr
    }
}

@media (width<=600px) {
    .services-hero {
        min-height: 760px;
        padding: 100px 7vw 60px
    }

    .services-jump {
        grid-template-columns: 1fr 1fr
    }

    .services-overview,.service-detail,.service-model {
        padding: 70px 7vw
    }

    .service-model>div:first-child,.model-steps {
        grid-template-columns: 1fr
    }

    .model-steps article {
        border-bottom: 1px solid #fff2;
        border-right: 0
    }
}

.dr-hero {
    color: #fff;
    background: #171717;
    flex-direction: column;
    justify-content: center;
    min-height: 720px;
    padding: 9vw 8vw 6vw;
    display: flex;
    position: relative;
    overflow: hidden
}

.dr-grid {
    transform-origin: bottom;
    background-image: linear-gradient(#ffffff0b 1px,#0000 1px),linear-gradient(90deg,#ffffff0b 1px,#0000 1px),radial-gradient(circle at 78% 45%,#e3322a35,#0000 28%);
    background-size: 90px 90px,90px 90px,100% 100%;
    position: absolute;
    inset: 0;
    transform: perspective(700px)rotateX(56deg)scale(1.45)
}

.dr-hero>:not(.dr-grid) {
    position: relative
}

.dr-hero h1 {
    letter-spacing: -.065em;
    max-width: 1050px;
    margin: 0;
    font-size: clamp(50px,6.5vw,94px);
    line-height: .98
}

.dr-hero h1 em {
    color: #aaa;
    font-style: normal
}

.dr-hero>p:not(.eyebrow) {
    color: #c1c1c1;
    max-width: 720px;
    font-size: 17px;
    line-height: 1.8
}

.dr-lifecycle {
    border-top: 1px solid #ffffff38;
    grid-template-columns: repeat(4,1fr);
    margin-top: 50px;
    display: grid
}

.dr-lifecycle span {
    color: #fff;
    letter-spacing: .16em;
    border-right: 1px solid #ffffff24;
    padding: 22px 12px;
    font-size: 10px;
    font-weight: 800
}

.dr-lifecycle span:before {
    content: "";
    background: var(--red);
    border-radius: 50%;
    width: 7px;
    height: 7px;
    margin-right: 12px;
    display: inline-block
}

.dr-intro {
    grid-template-columns: .42fr 1.58fr;
    gap: 7vw;
    padding: 8vw;
    display: grid
}

.dr-intro h2,.dr-section-head h2,.dr-delivery h2,.dr-talent h2,.dr-cta h2 {
    letter-spacing: -.055em;
    margin: 0 0 30px;
    font-size: clamp(38px,4.7vw,68px);
    line-height: 1.03
}

.dr-intro h2 em,.dr-delivery h2 em {
    color: #999;
    font-style: normal
}

.dr-intro div>p,.dr-delivery>div>p {
    color: var(--muted);
    max-width: 760px;
    line-height: 1.9
}

.dr-capabilities {
    color: #fff;
    background: #1a1a1a;
    padding: 8vw
}

.dr-section-head {
    grid-template-columns: .42fr 1.58fr;
    gap: 7vw;
    margin-bottom: 60px;
    display: grid
}

.dr-section-head h2 em,.dr-talent h2 em {
    color: #9ba2a4;
    font-style: normal
}

.dr-capability-grid {
    border-top: 1px solid #ffffff2f;
    grid-template-columns: repeat(2,1fr);
    display: grid
}

.dr-capability-grid article {
    border-bottom: 1px solid #ffffff2f;
    padding: 38px 4vw 44px 0
}

.dr-capability-grid article:nth-child(odd) {
    border-right: 1px solid #ffffff2f
}

.dr-capability-grid article:nth-child(2n) {
    padding-left: 4vw
}

.dr-capability-grid article>span {
    color: var(--red);
    font-size: 10px
}

.dr-capability-grid h3 {
    letter-spacing: -.035em;
    margin: 26px 0 14px;
    font-size: 28px
}

.dr-capability-grid p {
    color: #aaa;
    max-width: 560px;
    line-height: 1.75
}

.dr-capability-grid ul {
    border-top: 1px solid #ffffff20;
    margin: 28px 0 0;
    padding: 0;
    list-style: none
}

.dr-capability-grid li {
    color: #d2d2d2;
    border-bottom: 1px solid #ffffff18;
    padding: 12px 0;
    font-size: 12px
}

.dr-capability-grid li:before {
    content: "+";
    color: var(--red);
    margin-right: 12px
}

.dr-delivery {
    grid-template-columns: .82fr 1.18fr;
    align-items: start;
    gap: 8vw;
    padding: 8vw;
    display: grid
}

.dr-models {
    border-top: 1px solid var(--ink)
}

.dr-models div {
    border-bottom: 1px solid #aaa;
    grid-template-columns: 50px 1fr;
    gap: 20px;
    padding: 19px 8px;
    display: grid
}

.dr-models span {
    color: var(--red);
    font-size: 9px
}

.dr-models strong {
    font-size: 13px
}

.dr-talent {
    color: #fff;
    background: #263238;
    grid-template-columns: .8fr 1.2fr;
    gap: 8vw;
    padding: 8vw;
    display: grid
}

.dr-role-grid {
    border-top: 1px solid #ffffff35;
    grid-template-columns: 1fr 1fr;
    display: grid
}

.dr-role-grid div {
    border-bottom: 1px solid #ffffff25;
    border-right: 1px solid #ffffff25;
    padding: 18px 15px;
    font-size: 12px;
    line-height: 1.5
}

.dr-role-grid div:before {
    content: "+";
    color: var(--red);
    margin-right: 10px
}

.dr-cta {
    background: var(--red);
    color: #fff;
    grid-template-columns: 1fr .7fr;
    align-items: end;
    gap: 3vw 8vw;
    padding: 8vw;
    display: grid
}

.dr-cta .eyebrow {
    grid-column: 1/-1;
    margin-bottom: 0
}

.dr-cta h2 em {
    color: #63130f;
    font-style: normal
}

.dr-cta>p {
    line-height: 1.8
}

.dr-cta>a {
    grid-column: 1/-1;
    justify-self: start;
    margin-top: 10px
}

@media (width<=900px) {
    .dr-intro,.dr-section-head,.dr-delivery,.dr-talent,.dr-cta,.dr-capability-grid {
        grid-template-columns: 1fr
    }

    .dr-capability-grid article:nth-child(odd) {
        border-right: 0
    }

    .dr-capability-grid article:nth-child(2n) {
        padding-left: 0
    }

    .dr-cta .eyebrow,.dr-cta>a {
        grid-column: 1
    }

    .dr-role-grid {
        grid-template-columns: 1fr 1fr
    }
}

@media (width<=600px) {
    .dr-hero {
        min-height: 760px;
        padding: 110px 7vw 60px
    }

    .dr-lifecycle {
        grid-template-columns: 1fr 1fr
    }

    .dr-intro,.dr-capabilities,.dr-delivery,.dr-talent,.dr-cta {
        padding: 70px 7vw
    }

    .dr-role-grid {
        grid-template-columns: 1fr
    }

    .dr-cta>a {
        text-align: center;
        width: 100%
    }

    .dr-capability-grid article {
        padding-right: 0
    }
}

.wf-hero {
    color: #fff;
    background: #18272c;
    flex-direction: column;
    justify-content: center;
    min-height: 720px;
    padding: 9vw 8vw 7vw;
    display: flex;
    position: relative;
    overflow: hidden
}

.wf-lines {
    background-image: linear-gradient(115deg,#0000 52%,#ffffff0d 52% 52.2%,#0000 52.2%),linear-gradient(25deg,#0000 62%,#e3322a55 62% 62.2%,#0000 62.2%);
    background-size: 120px 120px;
    position: absolute;
    inset: 0
}

.wf-hero>:not(.wf-lines) {
    position: relative
}

.wf-hero h1 {
    letter-spacing: -.065em;
    margin: 0;
    font-size: clamp(50px,6.4vw,92px);
    line-height: .98
}

.wf-hero h1 em {
    color: #a8b5b9;
    font-style: normal
}

.wf-hero>p:not(.eyebrow) {
    color: #c2cccf;
    max-width: 780px;
    font-size: 17px;
    line-height: 1.8
}

.wf-actions {
    align-items: center;
    gap: 34px;
    margin-top: 28px;
    display: flex
}

.wf-intro {
    grid-template-columns: .4fr 1.6fr;
    gap: 7vw;
    padding: 8vw;
    display: grid
}

.wf-intro h2,.wf-section-title h2,.wf-expertise-head h2,.wf-process h2,.wf-cta h2 {
    letter-spacing: -.055em;
    margin: 0 0 28px;
    font-size: clamp(38px,4.7vw,68px);
    line-height: 1.03
}

.wf-intro h2 em,.wf-expertise-head h2 em {
    color: #999;
    font-style: normal
}

.wf-intro div>p {
    color: var(--muted);
    max-width: 780px;
    line-height: 1.9
}

.wf-programs {
    flex-wrap: wrap;
    gap: 9px;
    margin-top: 32px;
    display: flex
}

.wf-programs span {
    border: 1px solid var(--line);
    background: #fff;
    padding: 10px 13px;
    font-size: 10px;
    font-weight: 700
}

.wf-model-section {
    color: #fff;
    background: #191919;
    padding-top: 8vw
}

.wf-section-title {
    grid-template-columns: .4fr 1.6fr;
    gap: 7vw;
    padding: 0 8vw;
    display: grid
}

.wf-section-title h2 em,.wf-process h2 em {
    color: #9ba8ac;
    font-style: normal
}

.wf-jump {
    border-top: 1px solid #ffffff32;
    grid-template-columns: repeat(4,1fr);
    margin: 55px 8vw 0;
    display: grid
}

.wf-jump a {
    border-right: 1px solid #fff2;
    padding: 18px 12px;
    font-size: 10px;
    line-height: 1.4
}

.wf-jump span {
    color: var(--red);
    margin-bottom: 8px;
    font-size: 9px;
    display: block
}

.wf-model {
    border-top: 1px solid #fff2;
    grid-template-columns: .32fr 1.08fr .6fr;
    gap: 5vw;
    padding: 6vw 8vw;
    scroll-margin-top: 82px;
    display: grid
}

.wf-model-alt {
    background: #263238
}

.wf-model>div:first-child>span {
    color: var(--red);
    font-size: 10px
}

.wf-model>div:first-child>p {
    letter-spacing: .14em;
    margin-top: 18px;
    font-size: 9px
}

.wf-model h2 {
    letter-spacing: -.05em;
    margin: 0 0 20px;
    font-size: clamp(38px,4.2vw,62px)
}

.wf-model h3 {
    font-size: 18px;
    line-height: 1.45
}

.wf-model>div:nth-child(2)>p {
    color: #aeb6b8;
    font-size: 13px;
    line-height: 1.8
}

.wf-model ul {
    border-top: 1px solid #ffffff45;
    margin: 0;
    padding: 0;
    list-style: none
}

.wf-model li {
    border-bottom: 1px solid #ffffff25;
    padding: 15px 5px;
    font-size: 11px
}

.wf-model li:before {
    content: "+";
    color: var(--red);
    margin-right: 10px
}

.wf-expertise {
    padding: 8vw
}

.wf-expertise-head {
    grid-template-columns: .4fr 1.6fr;
    gap: 7vw;
    margin-bottom: 55px;
    display: grid
}

.wf-expertise-grid {
    border-top: 1px solid var(--ink);
    grid-template-columns: repeat(3,1fr);
    display: grid
}

.wf-expertise-grid article {
    border-bottom: 1px solid #aaa;
    border-right: 1px solid #aaa;
    padding: 28px
}

.wf-expertise-grid article:nth-child(3n) {
    border-right: 0
}

.wf-expertise-grid span,.wf-why span {
    color: var(--red);
    font-size: 9px
}

.wf-expertise-grid h3 {
    margin: 35px 0 14px;
    font-size: 20px
}

.wf-expertise-grid p {
    color: var(--muted);
    font-size: 12px;
    line-height: 1.75
}

.wf-process {
    color: #fff;
    background: #263238;
    padding: 8vw
}

.wf-process>div:first-child {
    grid-template-columns: .4fr 1.6fr;
    gap: 7vw;
    display: grid
}

.wf-process-grid {
    border-top: 1px solid #ffffff35;
    grid-template-columns: repeat(5,1fr);
    margin-top: 55px;
    display: grid
}

.wf-process-grid article {
    border-right: 1px solid #ffffff25;
    padding: 25px 22px
}

.wf-process-grid span {
    color: var(--red);
    font-size: 9px
}

.wf-process-grid h3 {
    margin-top: 38px
}

.wf-process-grid p {
    color: #aeb8bb;
    font-size: 11px;
    line-height: 1.7
}

.wf-why {
    background: #fff;
    padding: 8vw
}

.wf-why>div {
    border-top: 1px solid var(--ink);
    grid-template-columns: repeat(3,1fr);
    display: grid
}

.wf-why article {
    border-bottom: 1px solid #aaa;
    border-right: 1px solid #aaa;
    padding: 28px
}

.wf-why article:nth-child(3n) {
    border-right: 0
}

.wf-why h3 {
    margin-top: 35px
}

.wf-why p {
    color: var(--muted);
    font-size: 12px;
    line-height: 1.7
}

.wf-cta {
    background: var(--red);
    color: #fff;
    grid-template-columns: 1fr .7fr;
    gap: 3vw 8vw;
    padding: 8vw;
    display: grid
}

.wf-cta .eyebrow {
    grid-column: 1/-1;
    margin: 0
}

.wf-cta h2 em {
    color: #64130f;
    font-style: normal
}

.wf-cta>p {
    line-height: 1.8
}

.wf-cta>div {
    grid-column: 1/-1;
    align-items: center;
    gap: 28px;
    font-size: 12px;
    font-weight: 800;
    display: flex
}

.wf-cta>div>a:not(.button) {
    border-bottom: 1px solid;
    padding-bottom: 7px
}

@media (width<=900px) {
    .wf-intro,.wf-section-title,.wf-model,.wf-expertise-head,.wf-process>div: first-child,.wf-cta {
        grid-template-columns:1fr
    }

    .wf-jump,.wf-expertise-grid {
        grid-template-columns: repeat(2,1fr)
    }

    .wf-process-grid {
        grid-template-columns: 1fr 1fr
    }

    .wf-cta .eyebrow,.wf-cta>div {
        grid-column: 1
    }

    .wf-model>div:first-child {
        gap: 20px;
        display: flex
    }

    .wf-why>div {
        grid-template-columns: 1fr 1fr
    }
}

@media (width<=600px) {
    .wf-hero {
        min-height: 720px;
        padding: 110px 7vw 60px
    }

    .wf-actions {
        flex-direction: column;
        align-items: flex-start
    }

    .wf-intro,.wf-expertise,.wf-process,.wf-why,.wf-cta {
        padding: 70px 7vw
    }

    .wf-section-title {
        padding: 0 7vw
    }

    .wf-jump {
        margin: 40px 7vw 0
    }

    .wf-model {
        padding: 60px 7vw
    }

    .wf-expertise-grid,.wf-process-grid,.wf-why>div {
        grid-template-columns: 1fr
    }

    .wf-expertise-grid article:nth-child(n),.wf-why article:nth-child(n) {
        border-right: 0
    }

    .wf-cta>div {
        flex-direction: column;
        align-items: flex-start
    }

    .wf-cta .button {
        width: 100%
    }
}

.industry-sector-actions {
    flex-wrap: wrap;
    gap: 22px;
    margin-top: 24px;
    display: flex
}

.industry-sector-actions .text-link {
    margin-top: 0
}

.industries-jump-eight {
    grid-template-columns: repeat(4,1fr)
}

.industries-jump-eight a {
    min-height: 74px
}

@media (width<=1100px) {
    .industries-jump-eight {
        grid-template-columns: repeat(2,1fr)
    }
}

@media (width<=600px) {
    .industries-jump-eight {
        grid-template-columns: 1fr
    }
}

.ghs-hero {
    color: #fff;
    background: #171717;
    flex-direction: column;
    justify-content: center;
    min-height: 720px;
    padding: 9vw 8vw 7vw;
    display: flex;
    position: relative;
    overflow: hidden
}

.ghs-grid {
    background-image: linear-gradient(#ffffff0b 1px,#0000 1px),linear-gradient(90deg,#ffffff0b 1px,#0000 1px),radial-gradient(circle at 76% 48%,#e3322a33,#0000 30%);
    background-size: 80px 80px,80px 80px,100% 100%;
    position: absolute;
    inset: 0;
    transform: skewY(-4deg)scale(1.1)
}

.ghs-hero>:not(.ghs-grid) {
    position: relative
}

.ghs-hero h1 {
    letter-spacing: -.065em;
    margin: 0;
    font-size: clamp(50px,6.4vw,92px);
    line-height: .98
}

.ghs-hero h1 em {
    color: #aaa;
    font-style: normal
}

.ghs-hero>p:not(.eyebrow) {
    color: #c2c2c2;
    max-width: 800px;
    font-size: 17px;
    line-height: 1.8
}

.ghs-hero>div:last-child {
    align-items: center;
    gap: 34px;
    margin-top: 28px;
    display: flex
}

.ghs-intro {
    grid-template-columns: .4fr 1.6fr;
    gap: 7vw;
    padding: 8vw;
    display: grid
}

.ghs-intro h2,.ghs-section-head h2,.ghs-capabilities h2,.ghs-delivery h2,.ghs-process h2,.ghs-partner h2,.ghs-cta h2 {
    letter-spacing: -.055em;
    margin: 0 0 28px;
    font-size: clamp(38px,4.7vw,68px);
    line-height: 1.03
}

.ghs-intro h2 em,.ghs-capabilities h2 em,.ghs-process h2 em {
    color: #999;
    font-style: normal
}

.ghs-intro div>p {
    max-width: 800px;
    color: var(--muted);
    line-height: 1.9
}

.ghs-program-list {
    flex-wrap: wrap;
    gap: 9px;
    margin-top: 32px;
    display: flex
}

.ghs-program-list span {
    border: 1px solid var(--line);
    background: #fff;
    padding: 10px 13px;
    font-size: 10px;
    font-weight: 700
}

.ghs-hhs {
    color: #fff;
    background: #1a1a1a;
    padding: 8vw
}

.ghs-section-head {
    grid-template-columns: .4fr 1.6fr;
    gap: 7vw;
    margin-bottom: 55px;
    display: grid
}

.ghs-section-head h2 em,.ghs-delivery h2 em,.ghs-partner h2 em {
    color: #9da8ab;
    font-style: normal
}

.ghs-hhs-grid {
    border-top: 1px solid #ffffff30;
    grid-template-columns: 1fr 1fr;
    display: grid
}

.ghs-hhs-grid article {
    border-bottom: 1px solid #ffffff2b;
    padding: 38px 4vw 42px 0
}

.ghs-hhs-grid article:nth-child(odd) {
    border-right: 1px solid #ffffff2b
}

.ghs-hhs-grid article:nth-child(2n) {
    padding-left: 4vw
}

.ghs-hhs-grid article>span,.ghs-cap-grid span,.ghs-process-grid span {
    color: var(--red);
    font-size: 9px
}

.ghs-hhs-grid h3 {
    margin: 28px 0 12px;
    font-size: 27px
}

.ghs-hhs-grid p {
    color: #aaa;
    line-height: 1.75
}

.ghs-hhs-grid ul {
    border-top: 1px solid #ffffff20;
    margin: 25px 0 0;
    padding: 0;
    list-style: none
}

.ghs-hhs-grid li {
    border-bottom: 1px solid #ffffff18;
    padding: 11px 0;
    font-size: 11px
}

.ghs-hhs-grid li:before {
    content: "+";
    color: var(--red);
    margin-right: 10px
}

.ghs-capabilities {
    grid-template-columns: .65fr 1.35fr;
    gap: 7vw;
    padding: 8vw;
    display: grid
}

.ghs-cap-grid {
    border-top: 1px solid var(--ink);
    grid-template-columns: 1fr 1fr;
    display: grid
}

.ghs-cap-grid article {
    border-bottom: 1px solid #aaa;
    border-right: 1px solid #aaa;
    padding: 26px
}

.ghs-cap-grid article:nth-child(2n) {
    border-right: 0
}

.ghs-cap-grid h3 {
    margin: 32px 0 12px;
    font-size: 20px
}

.ghs-cap-grid p {
    color: var(--muted);
    font-size: 12px;
    line-height: 1.7
}

.ghs-delivery {
    color: #fff;
    background: #263238;
    grid-template-columns: .75fr 1.25fr;
    gap: 8vw;
    padding: 8vw;
    display: grid
}

.ghs-delivery>div:first-child>p:not(.eyebrow) {
    color: #aeb8bb;
    line-height: 1.8
}

.ghs-delivery>div:last-child {
    border-top: 1px solid #ffffff35
}

.ghs-delivery>div:last-child>div {
    border-bottom: 1px solid #ffffff25;
    grid-template-columns: 50px 1fr;
    padding: 20px 8px;
    display: grid
}

.ghs-delivery span {
    color: var(--red);
    font-size: 9px
}

.ghs-delivery strong {
    font-size: 13px
}

.ghs-process {
    padding: 8vw
}

.ghs-process>div:first-child {
    grid-template-columns: .4fr 1.6fr;
    gap: 7vw;
    display: grid
}

.ghs-process-grid {
    border-top: 1px solid var(--ink);
    grid-template-columns: repeat(5,1fr);
    margin-top: 50px;
    display: grid
}

.ghs-process-grid article {
    border-right: 1px solid #aaa;
    padding: 25px 22px
}

.ghs-process-grid h3 {
    margin-top: 38px
}

.ghs-process-grid p {
    color: var(--muted);
    font-size: 11px;
    line-height: 1.7
}

.ghs-partner {
    color: #fff;
    background: #171717;
    grid-template-columns: .4fr 1.6fr;
    gap: 7vw;
    padding: 8vw;
    display: grid
}

.ghs-partner div>p {
    color: #aaa;
    max-width: 800px;
    line-height: 1.85
}

.ghs-cta {
    background: var(--red);
    color: #fff;
    grid-template-columns: 1fr .7fr;
    gap: 3vw 8vw;
    padding: 8vw;
    display: grid
}

.ghs-cta .eyebrow {
    grid-column: 1/-1;
    margin: 0
}

.ghs-cta h2 em {
    color: #63130f;
    font-style: normal
}

.ghs-cta>p {
    line-height: 1.8
}

.ghs-cta>div {
    grid-column: 1/-1;
    align-items: center;
    gap: 28px;
    font-size: 12px;
    font-weight: 800;
    display: flex
}

.ghs-cta>div>a:not(.button) {
    border-bottom: 1px solid;
    padding-bottom: 7px
}

@media (width<=900px) {
    .ghs-intro,.ghs-section-head,.ghs-capabilities,.ghs-delivery,.ghs-process>div: first-child,.ghs-partner,.ghs-cta,.ghs-hhs-grid {
        grid-template-columns:1fr
    }

    .ghs-hhs-grid article:nth-child(odd) {
        border-right: 0
    }

    .ghs-hhs-grid article:nth-child(2n) {
        padding-left: 0
    }

    .ghs-process-grid {
        grid-template-columns: 1fr 1fr
    }

    .ghs-cta .eyebrow,.ghs-cta>div {
        grid-column: 1
    }
}

@media (width<=600px) {
    .ghs-hero {
        min-height: 740px;
        padding: 110px 7vw 60px
    }

    .ghs-hero>div:last-child {
        flex-direction: column;
        align-items: flex-start
    }

    .ghs-intro,.ghs-hhs,.ghs-capabilities,.ghs-delivery,.ghs-process,.ghs-partner,.ghs-cta {
        padding: 70px 7vw
    }

    .ghs-cap-grid,.ghs-process-grid {
        grid-template-columns: 1fr
    }

    .ghs-cap-grid article {
        border-right: 0
    }

    .ghs-cta>div {
        flex-direction: column;
        align-items: flex-start
    }

    .ghs-cta .button {
        width: 100%
    }
}

.active-nav {
    color: var(--red)
}

.leadership-hero {
    color: #fff;
    background: #191919;
    flex-direction: column;
    justify-content: center;
    min-height: 560px;
    padding: 9vw 8vw;
    display: flex;
    position: relative;
    overflow: hidden
}

.leadership-hero h1 {
    letter-spacing: -.06em;
    z-index: 1;
    margin: 0;
    font-size: clamp(48px,6vw,86px);
    line-height: 1;
    position: relative
}

.leadership-hero h1 em {
    color: #a8a8a8;
    font-style: normal
}

.leadership-hero>p:last-child {
    color: #b9b9b9;
    z-index: 1;
    max-width: 720px;
    font-size: 16px;
    line-height: 1.8;
    position: relative
}

.leadership-orbit {
    border: 1px solid #fff2;
    border-radius: 50%;
    width: 560px;
    height: 560px;
    position: absolute;
    top: -80px;
    right: -100px;
    box-shadow: 0 0 0 100px #ffffff08,0 0 0 200px #ffffff05
}

.leadership-intro {
    grid-template-columns: .45fr 1.55fr;
    gap: 7vw;
    padding: 8vw 8vw 6vw;
    display: grid
}

.leadership-intro h2 {
    letter-spacing: -.05em;
    margin: 0 0 24px;
    font-size: clamp(36px,4.5vw,64px);
    line-height: 1.05
}

.leadership-intro h2 em {
    color: #999;
    font-style: normal
}

.leadership-intro div>p {
    max-width: 740px;
    color: var(--muted);
    line-height: 1.85
}

.leader-list {
    padding: 0 8vw 9vw
}

.leader-card {
    border-top: 1px solid #aaa;
    grid-template-columns: 340px 70px 1fr;
    align-items: center;
    gap: 4vw;
    padding: 54px 0;
    display: grid
}

.leader-card:last-child {
    border-bottom: 1px solid #aaa
}

.leader-image {
    background: #ddd;
    height: 310px;
    overflow: hidden
}

.leader-image img {
    object-fit: cover;
    object-position: center top;
    filter: saturate(.88);
    width: 100%;
    height: 100%;
    transition: transform .4s;
    display: block
}

.leader-card:hover .leader-image img {
    transform: scale(1.025)
}

.leader-number {
    color: var(--red);
    align-self: start;
    padding-top: 8px;
    font-size: 11px
}

.leader-role {
    letter-spacing: .17em;
    text-transform: uppercase;
    font-weight: 800;
    color: var(--red)!important;
    font-size: 10px!important
}

.leader-copy h2 {
    letter-spacing: -.05em;
    margin: 10px 0 22px;
    font-size: clamp(30px,3.4vw,52px)
}

.leader-copy>p:last-child {
    color: var(--muted);
    max-width: 720px;
    font-size: 14px;
    line-height: 1.8
}

.leadership-cta {
    background: var(--red);
    color: #fff;
    grid-template-columns: 1fr auto;
    align-items: end;
    gap: 25px;
    padding: 7vw 8vw;
    display: grid
}

.leadership-cta .eyebrow {
    grid-column: 1/-1;
    margin: 0
}

.leadership-cta h2 {
    letter-spacing: -.055em;
    margin: 0;
    font-size: clamp(42px,5vw,70px);
    line-height: 1
}

.leadership-cta h2 em {
    color: #61130f
}

@media (width<=900px) {
    .leadership-intro {
        grid-template-columns: 1fr
    }

    .leader-card {
        grid-template-columns: 220px 45px 1fr
    }

    .leader-image {
        height: 250px
    }
}

@media (width<=650px) {
    .leadership-hero {
        min-height: 520px;
        padding: 90px 7vw
    }

    .leadership-intro {
        padding: 75px 7vw 45px
    }

    .leader-list {
        padding: 0 7vw 70px
    }

    .leader-card {
        grid-template-columns: 55px 1fr;
        gap: 18px;
        padding: 38px 0
    }

    .leader-image {
        grid-column: 1/-1;
        width: 100%;
        height: 330px
    }

    .leader-number {
        grid-column: 1
    }

    .leader-copy {
        grid-column: 2
    }

    .leadership-cta {
        grid-template-columns: 1fr;
        align-items: start;
        padding: 70px 7vw
    }
}

.leadership-v2-hero {
    color: #fff;
    background: #141414;
    flex-direction: column;
    justify-content: flex-end;
    min-height: 720px;
    padding: 9vw 8vw 5vw;
    display: flex;
    position: relative;
    overflow: hidden
}

.leadership-v2-lines {
    opacity: .55;
    background-color: #0000;
    background-image: linear-gradient(90deg,#0000 49.8%,#ffffff13 50%,#0000 50.2%),linear-gradient(#0000 49.8%,#ffffff0d 50%,#0000 50.2%);
    background-position: 0 0,0 0;
    background-repeat: repeat,repeat;
    background-size: 150px 150px;
    background-attachment: scroll,scroll;
    background-origin: padding-box,padding-box;
    background-clip: border-box,border-box;
    position: absolute;
    inset: 0
}

.leadership-v2-hero:after {
    content: "";
    border: 1px solid #e3322a66;
    border-radius: 50%;
    width: 620px;
    height: 620px;
    position: absolute;
    top: -90px;
    right: -110px;
    box-shadow: 0 0 0 110px #ffffff08,0 0 0 220px #ffffff04
}

.leadership-v2-hero-copy {
    z-index: 2;
    max-width: 1050px;
    position: relative
}

.leadership-v2-hero h1 {
    letter-spacing: -.065em;
    margin: 0;
    font-size: clamp(52px,6.3vw,94px);
    line-height: .98
}

.leadership-v2-hero h1 em {
    color: var(--red);
    font-style: normal
}

.leadership-v2-hero-copy>p:last-child {
    color: #b8b8b8;
    max-width: 760px;
    margin-top: 30px;
    font-size: 16px;
    line-height: 1.8
}

.leadership-v2-principles {
    z-index: 2;
    border-top: 1px solid #fff3;
    grid-template-columns: repeat(3,1fr);
    margin-top: 60px;
    display: grid;
    position: relative
}

.leadership-v2-principles span {
    color: var(--red);
    letter-spacing: .1em;
    padding: 20px 25px 0 0;
    font-size: 9px
}

.leadership-v2-principles strong {
    color: #fff;
    letter-spacing: .08em;
    text-transform: uppercase;
    margin-top: 7px;
    font-size: 11px;
    display: block
}

.leadership-v2-statement {
    grid-template-columns: .42fr 1.58fr;
    gap: 7vw;
    padding: 9vw 8vw;
    display: grid
}

.leadership-v2-statement h2,.leadership-v2-team-head h2 {
    letter-spacing: -.055em;
    margin: 0;
    font-size: clamp(40px,4.8vw,70px);
    line-height: 1.03
}

.leadership-v2-statement h2 em,.leadership-v2-team-head h2 em {
    color: #999;
    font-style: normal
}

.leadership-v2-statement div>p {
    max-width: 800px;
    color: var(--muted);
    margin-top: 30px;
    line-height: 1.9
}

.leadership-v2-feature {
    color: #fff;
    background: #202c31;
    grid-template-columns: 1.03fr .97fr;
    min-height: 720px;
    display: grid
}

.leadership-v2-feature-image {
    min-height: 720px;
    position: relative;
    overflow: hidden
}

.leadership-v2-feature-image:after {
    content: "";
    background: linear-gradient(#0000 55%,#202c3144);
    position: absolute;
    inset: 0
}

.leadership-v2-feature-image img {
    object-fit: cover;
    object-position: center top;
    filter: saturate(.88)contrast(1.03);
    width: 100%;
    height: 100%;
    display: block
}

.leadership-v2-feature-copy {
    flex-direction: column;
    justify-content: center;
    padding: 7vw;
    display: flex
}

.leadership-v2-kicker {
    color: var(--red);
    letter-spacing: .14em;
    border-bottom: 1px solid #fff3;
    justify-content: space-between;
    padding-bottom: 18px;
    font-size: 9px;
    display: flex
}

.leadership-v2-focus {
    text-transform: uppercase;
    letter-spacing: .16em;
    font-weight: 800;
    color: var(--red)!important;
    margin: 35px 0 10px!important;
    font-size: 10px!important
}

.leadership-v2-feature-copy h2 {
    letter-spacing: -.06em;
    margin: 0;
    font-size: clamp(45px,5vw,72px);
    line-height: 1
}

.leadership-v2-feature-copy h3 {
    color: #c2c9cb;
    margin: 12px 0 30px;
    font-size: 14px;
    font-weight: 600
}

.leadership-v2-feature-copy>p:not(.leadership-v2-focus) {
    color: #b6c0c3;
    max-width: 650px;
    font-size: 13px;
    line-height: 1.85
}

.leadership-v2-location {
    text-transform: uppercase;
    letter-spacing: .1em;
    border-top: 1px solid #fff3;
    align-items: center;
    gap: 18px;
    margin-top: 25px;
    padding-top: 20px;
    font-size: 10px;
    display: flex
}

.leadership-v2-location span {
    color: #899598
}

.leadership-v2-team {
    background: #f5f2ec;
    padding: 9vw 8vw
}

.leadership-v2-team-head {
    grid-template-columns: .42fr 1.58fr;
    gap: 7vw;
    margin-bottom: 75px;
    display: grid
}

.leadership-v2-grid {
    background: #bbb;
    border: 1px solid #bbb;
    grid-template-columns: 1fr 1fr;
    gap: 1px;
    display: grid
}

.leadership-v2-card {
    background: #f5f2ec;
    grid-template-columns: 44% 56%;
    min-height: 520px;
    transition: background .25s;
    display: grid
}

.leadership-v2-card:hover {
    background: #fff
}

.leadership-v2-card-image {
    background: #ddd;
    min-height: 520px;
    position: relative;
    overflow: hidden
}

.leadership-v2-card-image img {
    object-fit: cover;
    object-position: center top;
    filter: saturate(.8);
    width: 100%;
    height: 100%;
    transition: transform .5s,filter .5s;
    display: block
}

.leadership-v2-card-image span {
    background: var(--red);
    color: #fff;
    place-items: center;
    width: 34px;
    height: 34px;
    font-size: 9px;
    font-weight: 800;
    display: grid;
    position: absolute;
    top: 18px;
    left: 18px
}

.leadership-v2-card-copy {
    flex-direction: column;
    padding: 38px 34px;
    display: flex
}

.leadership-v2-card-copy .leadership-v2-focus {
    margin: 0 0 12px!important
}

.leadership-v2-card-copy h3 {
    letter-spacing: -.05em;
    margin: 0;
    font-size: clamp(27px,2.6vw,40px);
    line-height: 1.05
}

.leadership-v2-card-copy h4 {
    color: #666;
    margin: 10px 0 25px;
    font-size: 11px;
    line-height: 1.5
}

.leadership-v2-card-copy>p:not(.leadership-v2-focus) {
    color: var(--muted);
    margin: 0;
    font-size: 12px;
    line-height: 1.8
}

.leadership-v2-card-copy .leadership-v2-location {
    border-color: #bbb;
    margin-top: auto
}

.leadership-v2-card-copy .leadership-v2-location span {
    color: #888
}

.leadership-v2-capabilities {
    color: #fff;
    background: #171717;
    grid-template-columns: .45fr 1.55fr;
    align-items: start;
    gap: 7vw;
    padding: 5vw 8vw;
    display: grid
}

.leadership-v2-capabilities>p {
    color: #777;
    text-transform: uppercase;
    letter-spacing: .14em;
    margin: 0;
    font-size: 10px
}

.leadership-v2-capabilities>div {
    border-top: 1px solid #fff3;
    grid-template-columns: 1fr 1fr;
    display: grid
}

.leadership-v2-capabilities span {
    border-bottom: 1px solid #fff2;
    padding: 23px 0;
    font-size: 13px
}

.leadership-v2-capabilities span:before {
    content: "+";
    color: var(--red);
    margin-right: 18px
}

@media (width<=1050px) {
    .leadership-v2-card {
        grid-template-columns: 1fr
    }

    .leadership-v2-card-image {
        min-height: 380px
    }

    .leadership-v2-card-copy {
        min-height: 390px
    }
}

@media (width<=800px) {
    .leadership-v2-hero {
        min-height: 650px;
        padding: 110px 7vw 50px
    }

    .leadership-v2-statement,.leadership-v2-team-head,.leadership-v2-capabilities,.leadership-v2-feature {
        grid-template-columns: 1fr
    }

    .leadership-v2-feature-image {
        min-height: 600px
    }

    .leadership-v2-feature-copy {
        padding: 70px 7vw
    }

    .leadership-v2-team {
        padding: 80px 7vw
    }

    .leadership-v2-grid {
        grid-template-columns: 1fr
    }

    .leadership-v2-card {
        grid-template-columns: 42% 58%
    }

    .leadership-v2-card-image,.leadership-v2-card-copy {
        min-height: 500px
    }
}

@media (width<=560px) {
    .leadership-v2-hero {
        min-height: 690px
    }

    .leadership-v2-principles {
        grid-template-columns: 1fr
    }

    .leadership-v2-principles span {
        padding-top: 14px
    }

    .leadership-v2-statement {
        padding: 75px 7vw
    }

    .leadership-v2-feature-image {
        min-height: 430px
    }

    .leadership-v2-team-head {
        margin-bottom: 45px
    }

    .leadership-v2-card {
        grid-template-columns: 1fr
    }

    .leadership-v2-card-image {
        min-height: 420px
    }

    .leadership-v2-card-copy {
        min-height: 390px;
        padding: 32px 26px
    }

    .leadership-v2-capabilities {
        padding: 65px 7vw
    }

    .leadership-v2-capabilities>div {
        grid-template-columns: 1fr
    }
}

.leadership-v2-hero {
    min-height: 610px;
    padding-top: 8vw
}

.leadership-v2-hero h1 {
    max-width: 1000px
}

.leadership-v2-statement {
    padding-top: 7vw;
    padding-bottom: 7vw
}

.leadership-v2-feature {
    background: #202c31;
    grid-template-columns: minmax(300px,420px) 1fr;
    align-items: center;
    gap: 7vw;
    min-height: 0;
    padding: 6vw 8vw
}

.leadership-v2-feature-image {
    height: 390px;
    min-height: 0;
    box-shadow: 0 25px 60px #0004
}

.leadership-v2-feature-copy {
    max-width: 760px;
    padding: 0
}

.leadership-v2-feature-copy h2 {
    font-size: clamp(42px,4.5vw,66px)
}

.leadership-v2-feature-copy>p:not(.leadership-v2-focus) {
    font-size: 13px
}

.leadership-v2-team {
    padding-top: 7vw
}

.leadership-v2-team-head {
    margin-bottom: 55px
}

.leadership-v2-grid {
    background: 0 0;
    border: 0;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 24px
}

.leadership-v2-card {
    background: #fff;
    border: 1px solid #d4d0ca;
    flex-direction: column;
    min-height: 0;
    display: flex;
    box-shadow: 0 12px 35px #231f1a0a
}

.leadership-v2-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 20px 45px #231f1a14
}

.leadership-v2-card-image {
    height: 245px;
    min-height: 0
}

.leadership-v2-card-copy h4 {
    min-height: 34px;
    margin-bottom: 18px
}

.leadership-v2-card-copy .leadership-v2-location {
    margin-top: auto
}

.leadership-v2-card-image span {
    width: 30px;
    height: 30px;
    top: 15px;
    left: 15px
}

@media (width<=1050px) {
    .leadership-v2-grid {
        grid-template-columns: repeat(2,minmax(0,1fr))
    }

    .leadership-v2-card {
        display: flex
    }

    .leadership-v2-card-image {
        height: 260px;
        min-height: 0
    }

    .leadership-v2-card-copy {
        min-height: 330px
    }
}

@media (width<=800px) {
    .leadership-v2-feature {
        grid-template-columns: 280px 1fr;
        gap: 7vw;
        padding: 70px 7vw
    }

    .leadership-v2-feature-image {
        height: 330px;
        min-height: 0
    }

    .leadership-v2-feature-copy {
        padding: 0
    }

    .leadership-v2-card {
        display: flex
    }

    .leadership-v2-card-image {
        height: 250px;
        min-height: 0
    }

    .leadership-v2-card-copy {
        min-height: 340px
    }
}

@media (width<=650px) {
    .leadership-v2-feature {
        grid-template-columns: 1fr
    }

    .leadership-v2-feature-image {
        width: min(100%,360px);
        height: 330px
    }

    .leadership-v2-grid {
        grid-template-columns: 1fr
    }

    .leadership-v2-card-image {
        height: 270px
    }

    .leadership-v2-card-copy,.leadership-v2-card-copy h4 {
        min-height: 0
    }
}

.industries-hero {
    color: #fff;
    background: #171717;
    flex-direction: column;
    justify-content: flex-end;
    min-height: 700px;
    padding: 9vw 8vw 5vw;
    display: flex;
    position: relative;
    overflow: hidden
}

.industries-grid {
    background-image: linear-gradient(#ffffff0a 1px,#0000 1px),linear-gradient(90deg,#ffffff0a 1px,#0000 1px);
    background-size: 110px 110px;
    position: absolute;
    inset: 0
}

.industries-hero:after {
    content: "";
    border: 1px solid #e3322a66;
    border-radius: 50%;
    width: 600px;
    height: 600px;
    position: absolute;
    top: -100px;
    right: -120px;
    box-shadow: 0 0 0 100px #ffffff07,0 0 0 200px #ffffff04
}

.industries-hero>div:not(.industries-grid) {
    z-index: 2;
    position: relative
}

.industries-hero h1 {
    letter-spacing: -.065em;
    margin: 0;
    font-size: clamp(52px,6.3vw,92px);
    line-height: .98
}

.industries-hero h1 em {
    color: #aaa;
    font-style: normal
}

.industries-hero>div>p:last-child {
    color: #bbb;
    max-width: 750px;
    line-height: 1.8
}

.industries-jump {
    z-index: 2;
    border-top: 1px solid #fff3;
    grid-template-columns: repeat(4,1fr);
    margin-top: 55px;
    display: grid;
    position: relative
}

.industries-jump a {
    border-right: 1px solid #fff2;
    padding: 20px 15px 0 0;
    font-size: 11px;
    font-weight: 700
}

.industries-jump span {
    color: var(--red);
    margin-bottom: 8px;
    font-size: 9px;
    display: block
}

.industries-intro {
    grid-template-columns: .42fr 1.58fr;
    gap: 7vw;
    padding: 8vw;
    display: grid
}

.industries-intro h2,.industry-model h2 {
    letter-spacing: -.055em;
    margin: 0;
    font-size: clamp(40px,4.8vw,68px);
    line-height: 1.03
}

.industries-intro h2 em,.industry-model h2 em {
    color: #999;
    font-style: normal
}

.industries-intro div>p {
    max-width: 760px;
    color: var(--muted);
    line-height: 1.85
}

.industry-sector {
    background: #fff;
    grid-template-columns: .25fr 1fr .75fr;
    gap: 5vw;
    padding: 7vw 8vw;
    scroll-margin-top: 82px;
    display: grid
}

.industry-sector-dark {
    color: #fff;
    background: #202c31
}

.industry-sector-index span {
    color: var(--red);
    font-size: 11px
}

.industry-sector-index p,.industry-sector-side>p {
    letter-spacing: .16em;
    margin-top: 20px;
    font-size: 9px
}

.industry-sector-main h2 {
    letter-spacing: -.055em;
    margin: 0;
    font-size: clamp(40px,4.5vw,66px);
    line-height: 1
}

.industry-sector-main h3 {
    max-width: 680px;
    margin: 28px 0 18px;
    font-size: 19px;
    line-height: 1.5
}

.industry-sector-main>p {
    color: var(--muted);
    max-width: 720px;
    font-size: 14px;
    line-height: 1.85
}

.industry-sector-dark .industry-sector-main>p {
    color: #afbabd
}

.industry-sector-main .text-link {
    margin-top: 22px;
    display: inline-block
}

.industry-sector-side ul {
    border-top: 1px solid #aaa;
    margin: 18px 0 30px;
    padding: 0;
    list-style: none
}

.industry-sector-side li {
    border-bottom: 1px solid #aaa;
    padding: 15px 3px;
    font-size: 11px
}

.industry-sector-side>div {
    border-left: 3px solid var(--red);
    flex-direction: column;
    gap: 10px;
    padding-left: 18px;
    display: flex
}

.industry-sector-side>div span {
    color: var(--red);
    letter-spacing: .14em;
    font-size: 9px
}

.industry-sector-side>div strong {
    font-size: 12px;
    line-height: 1.7
}

.industry-model {
    color: #fff;
    background: #171717;
    grid-template-columns: .42fr 1.58fr;
    gap: 7vw;
    padding: 8vw;
    display: grid
}

.industry-model div>p {
    color: #aaa;
    max-width: 750px;
    line-height: 1.85
}

.industry-model h2 em {
    color: #888
}

@media (width<=900px) {
    .industries-jump {
        grid-template-columns: 1fr 1fr
    }

    .industries-intro,.industry-model {
        grid-template-columns: 1fr
    }

    .industry-sector {
        grid-template-columns: 80px 1fr
    }

    .industry-sector-side {
        grid-column: 2
    }
}

@media (width<=600px) {
    .industries-hero {
        min-height: 800px;
        padding: 110px 7vw 55px
    }

    .industries-jump {
        grid-template-columns: 1fr 1fr;
        gap: 15px
    }

    .industries-intro,.industry-sector,.industry-model {
        padding: 70px 7vw
    }

    .industry-sector {
        grid-template-columns: 1fr;
        gap: 22px
    }

    .industry-sector-side {
        grid-column: 1
    }

    .industry-sector-index {
        align-items: center;
        gap: 20px;
        display: flex
    }

    .industry-sector-index p {
        margin: 0
    }
}

.industries-hero>div>p:last-child {
    margin-top: 38px
}

.industries-jump-six a {
    padding-left: 24px
}

.credentials-band {
    color: #fff;
    background: #263238;
    grid-template-columns: .7fr 1.3fr;
    align-items: end;
    gap: 7vw;
    padding: 6vw 7vw;
    display: grid
}

.credentials-band h2,.credentials-section h2,.ghs-credentials h2 {
    letter-spacing: -.055em;
    margin: 0;
    font-size: clamp(38px,4.5vw,64px);
    line-height: 1.03
}

.credentials-band h2 em,.credentials-section h2 em,.ghs-credentials h2 em {
    color: #aab4b7;
    font-style: normal
}

.credential-stats {
    border-top: 1px solid #fff3;
    grid-template-columns: repeat(2,1fr);
    display: grid
}

.credential-stats article {
    border-bottom: 1px solid #fff2;
    border-right: 1px solid #fff2;
    flex-direction: column;
    gap: 8px;
    padding: 26px 22px;
    display: flex
}

.credential-stats strong {
    color: #fff;
    font-size: 34px
}

.credential-stats span {
    color: #b9c2c5;
    font-size: 11px
}

.credentials-section {
    background: #fff;
    grid-template-columns: .75fr 1.25fr;
    gap: 8vw;
    padding: 8vw;
    display: grid
}

.credentials-section>div>p:not(.eyebrow) {
    color: var(--muted);
    max-width: 620px;
    line-height: 1.8
}

.certification-grid {
    border-top: 1px solid #aaa;
    grid-template-columns: repeat(2,1fr);
    display: grid
}

.certification-grid article {
    border-bottom: 1px solid #aaa;
    border-right: 1px solid #aaa;
    padding: 28px 24px
}

.certification-grid span {
    color: var(--red);
    font-size: 9px
}

.certification-grid h3 {
    margin: 42px 0 12px;
    font-size: 24px
}

.certification-grid p {
    color: var(--muted);
    font-size: 12px;
    line-height: 1.7
}

.ghs-credentials {
    color: #fff;
    background: #171717;
    padding: 8vw
}

.ghs-credentials-head {
    grid-template-columns: .7fr 1.3fr;
    gap: 7vw;
    margin-bottom: 55px;
    display: grid
}

.ghs-credentials-head>p {
    color: #aaa;
    line-height: 1.8
}

.ghs-experience-grid {
    border-top: 1px solid #fff3;
    grid-template-columns: repeat(4,1fr);
    display: grid
}

.ghs-experience-grid article {
    border-bottom: 1px solid #fff2;
    border-right: 1px solid #fff2;
    padding: 28px 22px
}

.ghs-experience-grid strong {
    margin-bottom: 10px;
    font-size: 34px;
    display: block
}

.ghs-experience-grid span {
    color: #b5b5b5;
    font-size: 11px;
    line-height: 1.5
}

@media (width<=900px) {
    .credentials-band,.credentials-section,.ghs-credentials-head {
        grid-template-columns: 1fr
    }

    .ghs-experience-grid {
        grid-template-columns: repeat(2,1fr)
    }
}

@media (width<=600px) {
    .credentials-band,.credentials-section,.ghs-credentials {
        padding: 70px 7vw
    }

    .credential-stats,.certification-grid,.ghs-experience-grid {
        grid-template-columns: 1fr
    }
}

.logo {
    letter-spacing: 0;
    background: url(/4ci-logo.jpg) 50%/cover no-repeat;
    flex: none;
    width: 76px;
    height: 43px;
    display: block;
    font-size: 0!important
}

.logo span {
    display: none
}

.footer-logo {
    width: 112px;
    height: 63px
}

.footer-top>p {
    font-size: 0
}

.footer-top>p:after {
    content: "Trust. Integrity. Knowledge.\a The principles behind every relationship.";
    white-space: pre;
    font-size: 13px;
    line-height: 1.7;
    display: block
}

.contracts-hero {
    color: #fff;
    background: #171717;
    flex-direction: column;
    justify-content: center;
    min-height: 650px;
    padding: 9vw 8vw;
    display: flex;
    position: relative;
    overflow: hidden
}

.contracts-mark {
    color: #ffffff05;
    letter-spacing: -.1em;
    font-size: 27vw;
    font-weight: 800;
    line-height: .8;
    position: absolute;
    bottom: -7vw;
    right: -2vw
}

.contracts-hero h1 {
    letter-spacing: -.065em;
    margin: 0;
    font-size: clamp(52px,6.3vw,92px);
    line-height: .98;
    position: relative
}

.contracts-hero h1 em {
    color: #aaa;
    font-style: normal
}

.contracts-hero>p:last-child {
    color: #bbb;
    max-width: 710px;
    line-height: 1.8;
    position: relative
}

.contracts-intro {
    grid-template-columns: .42fr 1.58fr;
    gap: 7vw;
    padding: 8vw;
    display: grid
}

.contracts-intro h2,.contract-order h2,.contract-pathways h2 {
    letter-spacing: -.055em;
    margin: 0;
    font-size: clamp(40px,4.8vw,68px);
    line-height: 1.03
}

.contracts-intro h2 em,.contract-order h2 em,.contract-pathways h2 em {
    color: #999;
    font-style: normal
}

.contracts-intro div>p {
    max-width: 760px;
    color: var(--muted);
    line-height: 1.85
}

.contract-feature {
    background: #fff;
    grid-template-columns: .25fr 1fr .65fr;
    gap: 5vw;
    padding: 7vw 8vw;
    display: grid
}

.contract-feature-head span {
    color: var(--red);
    font-size: 11px
}

.contract-feature-head p {
    letter-spacing: .16em;
    margin-top: 20px;
    font-size: 9px
}

.contract-type {
    letter-spacing: .16em;
    font-weight: 800;
    color: var(--red)!important;
    font-size: 10px!important
}

.contract-feature-main h2 {
    letter-spacing: -.06em;
    margin: 12px 0 25px;
    font-size: clamp(48px,5.5vw,78px)
}

.contract-feature-main>p {
    color: var(--muted);
    max-width: 700px;
    font-size: 14px;
    line-height: 1.85
}

.contract-actions {
    align-items: center;
    gap: 25px;
    margin-top: 32px;
    display: flex
}

.contract-details {
    border-top: 1px solid #aaa
}

.contract-details>div {
    border-bottom: 1px solid #aaa;
    flex-direction: column;
    gap: 7px;
    padding: 16px 4px;
    display: flex
}

.contract-details span {
    color: #888;
    letter-spacing: .13em;
    font-size: 8px
}

.contract-details strong,.contract-details a {
    font-size: 12px
}

.contract-order {
    color: #fff;
    background: #202c31;
    grid-template-columns: .8fr 1.2fr;
    gap: 8vw;
    padding: 8vw;
    display: grid
}

.contract-order ol {
    border-top: 1px solid #fff3;
    margin: 0;
    padding: 0;
    list-style: none
}

.contract-order li {
    border-bottom: 1px solid #fff3;
    grid-template-columns: 50px 1fr;
    padding: 24px 0;
    display: grid
}

.contract-order li>span {
    color: var(--red);
    font-size: 10px
}

.contract-order strong {
    font-size: 15px
}

.contract-order li p {
    color: #abb6b9;
    margin-bottom: 0;
    font-size: 12px;
    line-height: 1.7
}

.contract-pathways {
    padding: 8vw
}

.contract-pathways>div:first-child {
    grid-template-columns: .42fr 1.58fr;
    gap: 7vw;
    display: grid
}

.contract-path-grid {
    border-top: 1px solid #aaa;
    grid-template-columns: repeat(3,1fr);
    margin-top: 65px;
    display: grid
}

.contract-path-grid article {
    border-right: 1px solid #aaa;
    padding: 30px
}

.contract-path-grid article:last-child {
    border: 0
}

.contract-path-grid span {
    color: var(--red);
    letter-spacing: .14em;
    font-size: 9px
}

.contract-path-grid h3 {
    margin-top: 50px;
    font-size: 24px
}

.contract-path-grid p {
    color: var(--muted);
    font-size: 13px;
    line-height: 1.8
}

@media (width<=900px) {
    .contract-feature {
        grid-template-columns: 80px 1fr
    }

    .contract-details {
        grid-column: 2
    }

    .contract-order,.contract-pathways>div:first-child {
        grid-template-columns: 1fr
    }
}

@media (width<=600px) {
    .contracts-hero {
        min-height: 570px;
        padding: 100px 7vw
    }

    .contracts-intro,.contract-feature,.contract-order,.contract-pathways {
        padding: 70px 7vw
    }

    .contracts-intro,.contract-feature {
        grid-template-columns: 1fr
    }

    .contract-details {
        grid-column: 1
    }

    .contract-actions {
        flex-direction: column;
        align-items: flex-start
    }

    .contract-path-grid {
        grid-template-columns: 1fr
    }

    .contract-path-grid article {
        border-bottom: 1px solid #aaa;
        border-right: 0
    }
}

.prime-contracts {
    padding: 0 8vw 8vw
}

.prime-contract-grid {
    background: #aaa;
    border: 1px solid #aaa;
    grid-template-columns: repeat(3,1fr);
    gap: 1px;
    display: grid
}

.prime-contract-card {
    background: #f5f2ec;
    flex-direction: column;
    min-height: 390px;
    padding: 32px;
    display: flex
}

.prime-contract-featured {
    color: #fff;
    background: #202c31
}

.prime-card-top {
    border-bottom: 1px solid #aaa;
    justify-content: space-between;
    padding-bottom: 18px;
    display: flex
}

.prime-card-top span {
    color: var(--red);
    font-size: 10px
}

.prime-card-top small {
    letter-spacing: .14em;
    font-size: 8px
}

.prime-contract-card>p {
    letter-spacing: .15em;
    text-transform: uppercase;
    color: var(--red);
    margin: 35px 0 12px;
    font-size: 9px
}

.prime-contract-card h2 {
    letter-spacing: -.04em;
    margin: 0;
    font-size: clamp(24px,2.2vw,34px);
    line-height: 1.08
}

.prime-contract-card h3 {
    color: #777;
    margin: 14px 0;
    font-size: 12px;
    line-height: 1.6
}

.prime-contract-featured h3 {
    color: #aaa
}

.prime-contract-card>a {
    border-top: 1px solid #aaa;
    margin-top: auto;
    padding-top: 18px;
    font-size: 10px;
    font-weight: 800
}

.prime-contract-card>a span {
    color: var(--red);
    float: right
}

.prime-contract-tone-1 {
    color: #fff;
    background: #202c31
}

.prime-contract-tone-2 {
    background: #f2ede5
}

.prime-contract-tone-3 {
    color: #fff;
    background: #8f2b27
}

.prime-contract-tone-4 {
    background: #dfe5e4
}

.prime-contract-tone-1 h3,.prime-contract-tone-3 h3 {
    color: #d3d9da
}

.prime-contract-tone-1 .prime-card-top,.prime-contract-tone-1>a,.prime-contract-tone-3 .prime-card-top,.prime-contract-tone-3>a {
    border-color: #fff5
}

.prime-contract-tone-3>p,.prime-contract-tone-3 .prime-card-top span,.prime-contract-tone-3>a span {
    color: #fff
}

.prime-contract-grid {
    background: 0 0;
    border: 0;
    gap: 8px
}

.prime-contract-card,.prime-contract-tone-1,.prime-contract-tone-2,.prime-contract-tone-3,.prime-contract-tone-4 {
    color: #fff;
    background: #202c31;
    min-height: 285px;
    padding: 24px
}

.prime-contract-card .prime-card-top,.prime-contract-card>a {
    border-color: #ffffff45
}

.prime-contract-card .prime-card-top span,.prime-contract-card>p,.prime-contract-card>a span {
    color: #ef453f
}

.prime-contract-card>p {
    margin: 22px 0 9px
}

.prime-contract-card h2 {
    font-size: clamp(22px,1.8vw,29px)
}

.prime-contract-card h3,.prime-contract-tone-1 h3,.prime-contract-tone-2 h3,.prime-contract-tone-3 h3,.prime-contract-tone-4 h3 {
    color: #c4cdcf;
    margin: 9px 0;
    line-height: 1.45
}

.prime-contract-card>strong {
    margin-top: 7px;
    font-size: 15px
}

.prime-contract-card>a {
    padding-top: 13px
}

@media (width<=900px) {
    .prime-contract-grid {
        grid-template-columns: 1fr 1fr
    }
}

@media (width<=600px) {
    .prime-contracts {
        padding: 0 7vw 70px
    }

    .prime-contract-grid {
        grid-template-columns: 1fr
    }

    .prime-contract-card {
        min-height: 270px
    }
}

.teaming-contracts {
    color: #fff;
    background: #171717;
    padding: 8vw
}

.teaming-heading {
    grid-template-columns: .42fr 1.58fr;
    gap: 7vw;
    margin-bottom: 65px;
    display: grid
}

.teaming-heading h2 {
    letter-spacing: -.055em;
    margin: 0;
    font-size: clamp(40px,4.8vw,68px);
    line-height: 1.03
}

.teaming-heading h2 em {
    color: #888;
    font-style: normal
}

.teaming-heading div>p {
    color: #aaa;
    max-width: 760px;
    line-height: 1.85
}

.teaming-list {
    border-top: 1px solid #fff3;
    border-left: 1px solid #fff2;
    grid-template-columns: repeat(4,1fr);
    display: grid
}

.teaming-list article {
    border-bottom: 1px solid #fff2;
    border-right: 1px solid #fff2;
    flex-direction: column;
    min-height: 255px;
    padding: 28px 24px;
    display: flex
}

.teaming-list article>span {
    color: var(--red);
    font-size: 9px
}

.teaming-list article>p {
    letter-spacing: .14em;
    color: #888;
    margin: 28px 0 8px;
    font-size: 8px
}

.teaming-list h3 {
    letter-spacing: -.04em;
    margin: 0 0 12px;
    font-size: 30px
}

.teaming-list strong {
    color: #bbb;
    margin-top: auto;
    font-size: 11px;
    line-height: 1.6
}

@media (width<=900px) {
    .teaming-heading {
        grid-template-columns: 1fr
    }

    .teaming-list {
        grid-template-columns: 1fr 1fr
    }
}

@media (width<=600px) {
    .teaming-contracts {
        padding: 70px 7vw
    }

    .teaming-list {
        grid-template-columns: 1fr
    }

    .teaming-list article {
        min-height: 220px
    }
}

.teaming-list .teaming-card {
    border-bottom: 1px solid #fff2;
    border-right: 1px solid #fff2;
    flex-direction: column;
    min-height: 255px;
    padding: 28px 24px;
    display: flex
}

.teaming-card>span {
    color: var(--red);
    font-size: 9px
}

.teaming-card>p {
    letter-spacing: .14em;
    color: #888;
    margin: 28px 0 8px;
    font-size: 8px
}

.teaming-card h3 {
    letter-spacing: -.04em;
    margin: 0 0 12px;
    font-size: 30px
}

.teaming-card strong {
    color: #bbb;
    font-size: 11px;
    line-height: 1.6
}

.teaming-card i {
    color: var(--red);
    margin-top: auto;
    padding-top: 20px;
    font-size: 9px;
    font-style: normal
}

.contract-detail-hero {
    color: #fff;
    background: #171717;
    flex-direction: column;
    justify-content: center;
    min-height: 540px;
    padding: 9vw 8vw;
    display: flex
}

.contract-detail-hero h1 {
    letter-spacing: -.065em;
    margin: 0;
    font-size: clamp(58px,7vw,100px);
    line-height: .95
}

.contract-detail-hero>p:last-child {
    color: #aaa;
    font-size: 18px
}

.contract-detail-intro {
    background: var(--red);
    color: #fff;
    grid-template-columns: repeat(3,1fr);
    padding: 0 8vw;
    display: grid
}

.contract-detail-intro>div {
    border-right: 1px solid #fff4;
    flex-direction: column;
    gap: 8px;
    padding: 28px 22px;
    display: flex
}

.contract-detail-intro span {
    letter-spacing: .14em;
    font-size: 8px
}

.contract-detail-intro strong {
    font-size: 13px
}

.contract-detail-body {
    grid-template-columns: 1.2fr .8fr;
    gap: 8vw;
    padding: 8vw;
    display: grid
}

.contract-detail-body h2,.contract-detail-contact h2 {
    letter-spacing: -.055em;
    margin: 0;
    font-size: clamp(40px,4.8vw,68px);
    line-height: 1.03
}

.contract-detail-body h2 em,.contract-detail-contact h2 em {
    color: #999;
    font-style: normal
}

.contract-detail-body>div>p:not(.eyebrow) {
    color: var(--muted);
    max-width: 760px;
    line-height: 1.85
}

.contract-detail-body .button {
    margin-top: 24px
}

.contract-detail-body aside>p {
    letter-spacing: .14em;
    font-size: 9px
}

.contract-detail-body ul {
    border-top: 1px solid #aaa;
    padding: 0;
    list-style: none
}

.contract-detail-body li {
    border-bottom: 1px solid #aaa;
    padding: 17px 4px;
    font-size: 12px
}

.contract-detail-contact {
    color: #fff;
    background: #202c31;
    grid-template-columns: 1fr auto;
    align-items: end;
    gap: 30px;
    padding: 8vw;
    display: grid
}

.contract-detail-contact .eyebrow {
    grid-column: 1/-1
}

.contract-detail-contact>p:not(.eyebrow) {
    color: #aaa;
    line-height: 1.8
}

.contract-not-found {
    place-content: center;
    min-height: 100vh;
    padding: 10vw;
    display: grid
}

@media (width<=800px) {
    .contract-detail-body,.contract-detail-contact {
        grid-template-columns: 1fr
    }
}

@media (width<=600px) {
    .teaming-list .teaming-card {
        min-height: 220px
    }

    .contract-detail-hero {
        min-height: 480px;
        padding: 100px 7vw
    }

    .contract-detail-intro {
        grid-template-columns: 1fr;
        padding: 0
    }

    .contract-detail-body,.contract-detail-contact {
        padding: 70px 7vw
    }
}

.dir-resources {
    background: #fff;
    grid-template-columns: .8fr 1.2fr;
    gap: 8vw;
    padding: 8vw;
    display: grid
}

.dir-resources h2,.dir-ordering h2 {
    letter-spacing: -.055em;
    margin: 0;
    font-size: clamp(40px,4.8vw,68px);
    line-height: 1.03
}

.dir-resources h2 em,.dir-ordering h2 em {
    color: #999;
    font-style: normal
}

.dir-resources>div>p:not(.eyebrow) {
    color: var(--muted);
    line-height: 1.85
}

.dir-resource-list {
    border-top: 1px solid #aaa
}

.dir-resource-list a {
    border-bottom: 1px solid #aaa;
    grid-template-columns: 45px 1fr auto;
    align-items: center;
    gap: 8px 18px;
    padding: 20px 4px;
    display: grid
}

.dir-resource-list a>span {
    color: var(--red);
    grid-row: 1/3;
    font-size: 9px
}

.dir-resource-list strong {
    font-size: 13px
}

.dir-resource-list small {
    color: #777;
    font-size: 10px
}

.dir-resource-list i {
    color: var(--red);
    grid-area: 1/3/3;
    font-size: 9px;
    font-style: normal
}

.dir-ordering {
    color: #fff;
    background: #202c31;
    grid-template-columns: 1fr .65fr;
    gap: 8vw;
    padding: 8vw;
    display: grid
}

.dir-order-copy>p:last-child {
    color: #b2bdc0;
    line-height: 1.85
}

.dir-contact-card {
    border-top: 3px solid var(--red);
    color: #171717;
    background: #fff;
    flex-direction: column;
    padding: 34px;
    display: flex
}

.dir-contact-card>p {
    color: var(--red);
    letter-spacing: .14em;
    font-size: 8px
}

.dir-contact-card h3 {
    margin: 15px 0;
    font-size: 30px
}

.dir-contact-card address {
    color: #666;
    margin-bottom: 25px;
    font-size: 12px;
    font-style: normal;
    line-height: 1.8
}

.dir-contact-card a {
    border-top: 1px solid #bbb;
    padding: 12px 0;
    font-size: 12px;
    font-weight: 700
}

.dir-services {
    padding: 8vw
}

.dir-services>div {
    border-top: 1px solid #aaa;
    grid-template-columns: repeat(4,1fr);
    display: grid
}

.dir-services article {
    border-right: 1px solid #aaa;
    padding: 28px 24px
}

.dir-services article>span {
    color: var(--red);
    font-size: 9px
}

.dir-services h3 {
    margin-top: 45px;
    font-size: 22px
}

.dir-services article>p {
    color: var(--muted);
    font-size: 12px;
    line-height: 1.75
}

.dir-policy {
    background: #f5f2ec;
    grid-template-columns: .35fr 1fr auto;
    align-items: center;
    gap: 5vw;
    padding: 4vw 8vw;
    display: grid
}

.dir-policy>p {
    color: var(--red);
    letter-spacing: .14em;
    font-size: 9px
}

.dir-policy h3 {
    margin: 0 0 8px
}

.dir-policy div>p {
    color: var(--muted);
    margin: 0;
    font-size: 12px
}

.dir-policy>a {
    font-size: 10px;
    font-weight: 800
}

.dir-policy>a span {
    color: var(--red)
}

.pillar:after {
    content: "";
    filter: grayscale();
    opacity: .78;
    background-position: 50%;
    background-size: cover;
    height: 155px;
    transition: all .3s;
    position: absolute;
    top: 78px;
    left: 28px;
    right: 28px
}

.pillar:first-child:after {
    background-image: linear-gradient(#15151518,#15151518),url(https://images.unsplash.com/photo-1552664730-d307ca884978?auto=format&fit=crop&w=900&q=80)
}

.pillar:nth-child(2):after {
    background-image: linear-gradient(#15151518,#15151518),url(https://images.unsplash.com/photo-1521737711867-e3b97375f902?auto=format&fit=crop&w=900&q=80)
}

.pillar:nth-child(3):after {
    background-image: linear-gradient(#15151518,#15151518),url(https://images.unsplash.com/photo-1556761175-b413da4baf72?auto=format&fit=crop&w=900&q=80)
}

.pillar>div {
    z-index: 2;
    padding-top: 175px;
    position: relative
}

.pillar:hover:after {
    opacity: .18;
    filter: grayscale()contrast(1.2)
}

@media (width<=900px) {
    .dir-resources,.dir-ordering {
        grid-template-columns: 1fr
    }

    .dir-services>div {
        grid-template-columns: 1fr 1fr
    }

    .dir-policy {
        grid-template-columns: 1fr
    }
}

@media (width<=600px) {
    .dir-resources,.dir-ordering,.dir-services {
        padding: 70px 7vw
    }

    .dir-resource-list a {
        grid-template-columns: 35px 1fr
    }

    .dir-resource-list i {
        grid-area: 3/2
    }

    .dir-services>div {
        grid-template-columns: 1fr
    }

    .dir-policy {
        padding: 50px 7vw
    }

    .pillar {
        min-height: 520px
    }

    .pillar:after {
        height: 120px
    }

    .pillar>div {
        padding-top: 135px
    }
}

body:has(.dir-resources) .contract-detail-hero:before {
    content: "PLEASE NOTE: NAVIGATION FROM THIS PAGE DOES NOT REPRESENT TEXAS DIR CONTRACT OFFERINGS.";
    border-left: 3px solid var(--red);
    color: #fff;
    letter-spacing: .1em;
    background: #ffffff0b;
    width: fit-content;
    max-width: 820px;
    margin: 0 0 42px;
    padding: 14px 18px;
    font-size: 10px;
    font-weight: 800;
    line-height: 1.6;
    display: block
}

.leadership-v2-bio {
    border-top: 1px solid #d4d0ca;
    border-bottom: 1px solid #d4d0ca;
    margin: 2px 0 22px
}

.leadership-v2-bio summary {
    cursor: pointer;
    letter-spacing: .12em;
    text-transform: uppercase;
    justify-content: space-between;
    align-items: center;
    padding: 15px 0;
    font-size: 10px;
    font-weight: 800;
    list-style: none;
    display: flex
}

.leadership-v2-bio summary::-webkit-details-marker {
    display: none
}

.leadership-v2-bio summary i {
    color: var(--red);
    font-size: 22px;
    font-style: normal;
    font-weight: 400;
    line-height: 1
}

.leadership-v2-bio[open] summary i {
    font-size: 0
}

.leadership-v2-bio[open] summary i:after {
    content: "−";
    font-size: 22px
}

.leadership-v2-bio>p {
    color: var(--muted);
    margin: 0;
    padding: 0 0 18px;
    font-size: 12px;
    line-height: 1.8
}

.leadership-v2-bio summary:hover {
    color: var(--red)
}

.cs-hero {
    color: #fff;
    background: #171717;
    flex-direction: column;
    justify-content: flex-end;
    min-height: 690px;
    padding: 10vw 8vw 7vw;
    display: flex;
    position: relative;
    overflow: hidden
}

.cs-hero:after {
    content: "";
    border: 1px solid #e3322a66;
    border-radius: 50%;
    width: 650px;
    height: 650px;
    position: absolute;
    top: -160px;
    right: -140px;
    box-shadow: 0 0 0 110px #ffffff05,0 0 0 220px #ffffff03
}

.cs-hero-mark {
    letter-spacing: -.1em;
    color: #ffffff04;
    font-size: 28vw;
    font-weight: 800;
    line-height: .8;
    position: absolute;
    bottom: -7vw;
    right: 2vw
}

.cs-hero h1 {
    letter-spacing: -.065em;
    z-index: 1;
    margin: 0;
    font-size: clamp(52px,6.3vw,92px);
    line-height: .98;
    position: relative
}

.cs-hero h1 em {
    color: #aaa;
    font-style: normal
}

.cs-hero>p {
    z-index: 1;
    position: relative
}

.cs-hero>p:last-child {
    color: #bbb;
    max-width: 760px;
    line-height: 1.8
}

.cs-intro {
    grid-template-columns: .42fr 1.58fr;
    gap: 7vw;
    padding: 8vw;
    display: grid
}

.cs-intro h2 {
    letter-spacing: -.055em;
    margin: 0;
    font-size: clamp(40px,4.8vw,68px);
    line-height: 1.03
}

.cs-intro h2 em {
    color: #999;
    font-style: normal
}

.cs-intro div>p {
    max-width: 760px;
    color: var(--muted);
    line-height: 1.85
}

.cs-index {
    grid-template-columns: repeat(5,1fr);
    padding: 0 8vw 7vw;
    display: grid
}

.cs-index a {
    border-top: 1px solid #aaa;
    border-right: 1px solid #aaa;
    flex-direction: column;
    min-height: 190px;
    padding: 24px;
    display: flex
}

.cs-index span,.cs-story-index span,.cs-narrative span {
    color: var(--red);
    letter-spacing: .14em;
    font-size: 9px
}

.cs-index strong {
    margin-top: 42px;
    font-size: 18px;
    line-height: 1.25
}

.cs-index small {
    color: #777;
    margin-top: auto;
    font-size: 9px
}

.cs-story {
    grid-template-columns: .2fr 1.15fr .65fr;
    gap: 5vw;
    padding: 7vw 8vw;
    scroll-margin-top: 82px;
    display: grid
}

.cs-story-dark {
    color: #fff;
    background: #202c31
}

.cs-story-index p,.cs-client,.cs-story aside>p {
    letter-spacing: .14em;
    text-transform: uppercase;
    font-size: 9px
}

.cs-story-index p {
    margin-top: 20px
}

.cs-client {
    color: var(--red);
    font-weight: 800
}

.cs-story-main h2 {
    letter-spacing: -.055em;
    margin: 15px 0 42px;
    font-size: clamp(40px,4.6vw,66px);
    line-height: 1
}

.cs-narrative {
    grid-template-columns: 1fr 1fr;
    gap: 4vw;
    display: grid
}

.cs-narrative p {
    color: var(--muted);
    font-size: 13px;
    line-height: 1.85
}

.cs-story-dark .cs-narrative p {
    color: #b5c0c3
}

.cs-story aside {
    border-top: 3px solid var(--red)
}

.cs-story aside>p {
    margin: 20px 0 26px
}

.cs-story aside>div {
    border-top: 1px solid #aaa;
    grid-template-columns: 35px 1fr;
    gap: 12px;
    padding: 18px 3px;
    display: grid
}

.cs-story aside strong {
    font-size: 12px;
    line-height: 1.55
}

.cs-story-dark aside>div {
    border-color: #fff3
}

@media (width<=1000px) {
    .cs-index {
        grid-template-columns: repeat(2,1fr)
    }

    .cs-story {
        grid-template-columns: 70px 1fr
    }

    .cs-story aside {
        grid-column: 2
    }
}

@media (width<=600px) {
    .cs-hero {
        min-height: 620px;
        padding: 110px 7vw 65px
    }

    .cs-intro,.cs-story {
        grid-template-columns: 1fr;
        padding: 70px 7vw
    }

    .cs-index {
        grid-template-columns: 1fr;
        padding: 0 7vw 70px
    }

    .cs-index a {
        border-right: 0;
        min-height: 150px
    }

    .cs-index strong {
        margin-top: 28px
    }

    .cs-story aside {
        grid-column: 1
    }

    .cs-story-index {
        align-items: center;
        gap: 20px;
        display: flex
    }

    .cs-story-index p {
        margin: 0
    }

    .cs-narrative {
        grid-template-columns: 1fr
    }
}

.cs-index {
    grid-template-columns: repeat(4,1fr)
}

.cs-index a {
    border-bottom: 1px solid #aaa
}

.cs-index a:last-child {
    border-right: 1px solid #aaa
}

.cs-index a:nth-child(4n) {
    border-right: 0
}

@media (width<=1000px) {
    .cs-index {
        grid-template-columns: repeat(2,1fr)
    }

    .cs-index a:nth-child(4n) {
        border-right: 1px solid #aaa
    }

    .cs-index a:nth-child(2n) {
        border-right: 0
    }
}

@media (width<=600px) {
    .cs-index {
        grid-template-columns: 1fr
    }

    .cs-index a,.cs-index a:nth-child(4n),.cs-index a:nth-child(2n) {
        border-right: 0
    }
}

.cookie-consent {
    z-index: 1000;
    color: #fff;
    border-top: 4px solid var(--red);
    background: #171717;
    grid-template-columns: 1fr auto;
    align-items: end;
    gap: 36px;
    padding: 28px 32px;
    display: grid;
    position: fixed;
    bottom: 24px;
    left: 24px;
    right: 24px;
    box-shadow: 0 22px 70px #0006
}

.cookie-consent>div:first-child {
    max-width: 850px
}

.cookie-kicker {
    letter-spacing: .18em;
    color: var(--red);
    margin: 0 0 9px;
    font-size: 9px;
    font-weight: 800
}

.cookie-consent h2 {
    letter-spacing: -.04em;
    margin: 0 0 10px;
    font-size: 26px
}

.cookie-consent p:not(.cookie-kicker) {
    color: #bdbdbd;
    margin: 0 0 10px;
    font-size: 12px;
    line-height: 1.7
}

.cookie-consent a {
    text-underline-offset: 4px;
    font-size: 10px;
    font-weight: 800;
    text-decoration: underline
}

.cookie-actions {
    align-items: center;
    gap: 10px;
    display: flex
}

.cookie-actions button,.cookie-settings {
    font: inherit;
    letter-spacing: .04em;
    cursor: pointer;
    border: 0;
    font-size: 10px;
    font-weight: 800
}

.cookie-accept {
    background: var(--red);
    color: #fff;
    padding: 14px 19px
}

.cookie-decline {
    color: #fff;
    background: 0 0;
    padding: 13px 18px;
    border: 1px solid #777!important
}

.cookie-settings {
    z-index: 900;
    color: #fff;
    background: #171717;
    padding: 10px 13px;
    position: fixed;
    bottom: 18px;
    left: 18px;
    box-shadow: 0 4px 20px #0004
}

.privacy-hero {
    color: #fff;
    background: #171717;
    flex-direction: column;
    justify-content: flex-end;
    min-height: 540px;
    padding: 10vw 8vw 7vw;
    display: flex
}

.privacy-hero h1 {
    letter-spacing: -.065em;
    margin: 0;
    font-size: clamp(52px,6.3vw,92px);
    line-height: .98
}

.privacy-hero h1 em {
    color: #999;
    font-style: normal
}

.privacy-hero>p:last-child {
    color: #bbb;
    max-width: 820px;
    line-height: 1.8
}

.privacy-content {
    background: var(--warm);
    grid-template-columns: minmax(240px,360px) minmax(0,1fr);
    align-items: start;
    gap: 6vw;
    padding: 7vw 8vw;
    display: grid
}

.privacy-content aside {
    border-top: 2px solid var(--red);
    padding-top: 22px;
    position: sticky;
    top: 115px
}

.privacy-content aside p {
    color: var(--red);
    letter-spacing: .14em;
    text-transform: uppercase;
    margin: 0 0 18px;
    font-size: 10px;
    font-weight: 900
}

.privacy-content aside strong {
    letter-spacing: -.045em;
    font-size: clamp(28px,3.5vw,46px);
    line-height: 1.05;
    display: block
}

.privacy-content article {
    background: #fff;
    border: 1px solid #d8d2c9;
    max-width: 980px;
    padding: 42px 44px;
    box-shadow: 0 18px 40px #00000008
}

.privacy-content h2 {
    letter-spacing: -.05em;
    margin: 0 0 30px;
    font-size: clamp(30px,3.4vw,48px);
    line-height: 1.08
}

.privacy-content h3 {
    letter-spacing: -.025em;
    color: #161616;
    border-top: 1px solid #e4ded6;
    margin: 36px 0 16px;
    padding-top: 30px;
    font-size: clamp(20px,1.7vw,28px);
    line-height: 1.16
}

.privacy-content h2+h3 {
    margin-top: 22px
}

.privacy-content h4 {
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--red);
    margin: 28px 0 12px;
    font-size: 12px;
    line-height: 1.25
}

.privacy-content article p {
    color: #5f5b55;
    max-width: 900px;
    margin: 0 0 16px;
    font-size: 14px;
    line-height: 1.85
}

.privacy-content article p:last-child {
    margin-bottom: 0
}

.privacy-content article a {
    color: var(--red);
    border-bottom: 1px solid;
    font-weight: 800
}

.privacy-content .footer-legal-list {
    margin: 18px 0 4px
}

@media (width<=760px) {
    .cookie-consent {
        grid-template-columns: 1fr;
        gap: 20px;
        padding: 24px;
        bottom: 12px;
        left: 12px;
        right: 12px
    }

    .cookie-actions {
        flex-direction: column-reverse;
        align-items: stretch
    }

    .cookie-actions button {
        width: 100%
    }

    .privacy-hero {
        padding: 110px 7vw 65px
    }

    .privacy-content {
        grid-template-columns: 1fr;
        gap: 35px;
        padding: 70px 7vw
    }

    .privacy-content aside {
        position: static
    }

    .privacy-content article {
        padding: 28px 24px
    }
}

.leadership-v2-feature {
    grid-template-columns: 300px 1fr;
    gap: 6vw;
    padding-top: 5vw;
    padding-bottom: 5vw
}

.leadership-v2-feature-image {
    background: #f1eee8;
    width: 300px;
    height: 225px;
    min-height: 0;
    box-shadow: 0 20px 45px #0003
}

.leadership-v2-feature-image img {
    object-fit: cover;
    object-position: center 18%;
    filter: brightness(1.07)saturate(.95)contrast(1.08);
    image-rendering: auto
}

.leadership-v2-card-image {
    background: #ebe7df;
    justify-content: center;
    align-items: center;
    height: 230px;
    min-height: 0;
    padding: 22px 0;
    display: flex
}

.leadership-v2-card-image img {
    object-fit: cover;
    object-position: center 18%;
    filter: brightness(1.07)saturate(.95)contrast(1.08);
    image-rendering: auto;
    width: 78%;
    height: 186px;
    box-shadow: 0 10px 24px #241f191f
}

.leadership-v2-card:hover img {
    filter: brightness(1.08)saturate()contrast(1.09);
    transform: scale(1.012)
}

@media (width<=1050px) {
    .leadership-v2-card-image {
        height: 225px
    }

    .leadership-v2-card-image img {
        width: min(78%,300px);
        height: 181px
    }
}

@media (width<=800px) {
    .leadership-v2-feature {
        grid-template-columns: 250px 1fr
    }

    .leadership-v2-feature-image {
        width: 250px;
        height: 188px
    }

    .leadership-v2-card-image {
        height: 220px
    }

    .leadership-v2-card-image img {
        width: min(76%,290px);
        height: 176px
    }
}

@media (width<=650px) {
    .leadership-v2-feature {
        grid-template-columns: 1fr
    }

    .leadership-v2-feature-image {
        width: min(78vw,300px);
        height: 225px
    }

    .leadership-v2-card-image {
        height: 235px
    }

    .leadership-v2-card-image img {
        width: min(76%,300px);
        height: 191px
    }
}

.leader-bio-open {
    color: #171717;
    width: 100%;
    font: inherit;
    letter-spacing: .12em;
    text-transform: uppercase;
    cursor: pointer;
    background: 0 0;
    border: 1px solid #c9c4bc;
    border-left: 0;
    border-right: 0;
    justify-content: space-between;
    align-items: center;
    margin: 18px 0 20px;
    padding: 13px 0;
    font-size: 10px;
    font-weight: 800;
    display: flex
}

.leader-bio-open span {
    color: var(--red);
    font-size: 21px;
    font-weight: 400
}

.leadership-v2-feature-copy .leader-bio-open {
    color: #fff;
    border-color: #ffffff38;
    max-width: 320px
}

.leader-bio-modal {
    color: #171717;
    background: 0 0;
    border: 0;
    width: min(760px,100vw - 32px);
    max-height: 88vh;
    padding: 0
}

.leader-bio-modal::backdrop {
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    background: #101010d9
}

.leader-bio-modal>div {
    border-top: 5px solid var(--red);
    background: #f5f2ec;
    max-height: 88vh;
    padding: 48px 54px;
    position: relative;
    overflow: auto
}

.leader-bio-close {
    cursor: pointer;
    color: #171717;
    background: 0 0;
    border: 0;
    font-size: 32px;
    line-height: 1;
    position: absolute;
    top: 20px;
    right: 24px
}

.leader-bio-modal h2 {
    letter-spacing: -.055em;
    margin: 12px 0 8px;
    font-size: clamp(38px,5vw,64px);
    line-height: 1
}

.leader-bio-modal h3 {
    color: #666;
    margin: 0 0 30px;
    font-size: 14px
}

.leader-bio-copy {
    color: var(--muted);
    font-size: 14px;
    line-height: 1.85
}

.leader-bio-credentials {
    margin-top: 32px
}

.leader-bio-credentials>p {
    color: var(--red);
    letter-spacing: .14em;
    font-size: 9px;
    font-weight: 800
}

.leader-bio-credentials ul {
    border-top: 1px solid #bbb;
    margin: 16px 0 28px;
    padding: 0;
    list-style: none
}

.leader-bio-credentials li {
    border-bottom: 1px solid #bbb;
    padding: 13px 2px;
    font-size: 12px;
    line-height: 1.5
}

.leader-bio-credentials li:before {
    content: "+";
    color: var(--red);
    margin-right: 14px
}

.leader-bio-email {
    border-top: 2px solid #171717;
    justify-content: space-between;
    align-items: center;
    padding: 16px 0;
    font-size: 13px;
    font-weight: 800;
    display: flex
}

.leader-bio-email span {
    color: var(--red)
}

@media (width<=600px) {
    .leader-bio-modal>div {
        padding: 42px 25px 30px
    }

    .leader-bio-close {
        top: 16px;
        right: 18px
    }
}

.leader-bio-modal[open] {
    margin: auto;
    position: fixed;
    inset: 0
}

.footer-links.footer-links-compact {
    grid-template-columns: repeat(3,1fr)
}

@media (width<=600px) {
    .footer-links.footer-links-compact {
        grid-template-columns: 1fr 1fr
    }
}

.ethics-section {
    background: #ece8e1;
    grid-template-columns: .7fr 1.3fr;
    gap: 8vw;
    padding: 9vw 8vw;
    display: grid
}

.ethics-heading>span {
    color: var(--red);
    margin: 45px 0 18px;
    font-size: 12px;
    font-weight: 800;
    display: block
}

.ethics-heading h2 {
    letter-spacing: -.055em;
    margin: 0;
    font-size: clamp(40px,4.8vw,68px);
    line-height: 1.03
}

.ethics-heading h2 em {
    color: #999;
    font-style: normal
}

.ethics-content>p {
    color: var(--muted);
    margin: 0;
    font-size: 15px;
    line-height: 1.85
}

.ethics-list {
    border-top: 1px solid #aaa;
    grid-template-columns: 1fr 1fr;
    margin: 42px 0 0;
    padding: 0;
    list-style: none;
    display: grid
}

.ethics-list li {
    border-bottom: 1px solid #aaa;
    grid-template-columns: 38px 1fr;
    align-items: start;
    gap: 12px;
    padding: 20px 18px 20px 0;
    display: grid
}

.ethics-list li:nth-child(odd) {
    border-right: 1px solid #aaa
}

.ethics-list li:nth-child(2n) {
    padding-left: 18px
}

.ethics-list span {
    color: var(--red);
    padding-top: 4px;
    font-size: 9px;
    font-weight: 800
}

.ethics-list p {
    margin: 0;
    font-size: 12px;
    line-height: 1.6
}

@media (width<=900px) {
    .ethics-section {
        grid-template-columns: 1fr
    }

    .ethics-heading>span {
        margin-top: 25px
    }
}

@media (width<=600px) {
    .ethics-section {
        gap: 45px;
        padding: 70px 7vw
    }

    .ethics-list {
        grid-template-columns: 1fr
    }

    .ethics-list li,.ethics-list li:nth-child(odd),.ethics-list li:nth-child(2n) {
        border-right: 0;
        padding: 18px 0
    }
}

.eeo-section {
    color: #fff;
    background: #202c31;
    grid-template-columns: .7fr 1.3fr;
    gap: 8vw;
    padding: 9vw 8vw;
    display: grid
}

.eeo-heading>span {
    color: var(--red);
    margin: 45px 0 18px;
    font-size: 12px;
    font-weight: 800;
    display: block
}

.eeo-heading h2 {
    letter-spacing: -.055em;
    margin: 0;
    font-size: clamp(40px,4.8vw,68px);
    line-height: 1.03
}

.eeo-heading h2 em {
    color: #9caaae;
    font-style: normal
}

.eeo-content>p {
    color: #c2cbce;
    margin: 0 0 22px;
    font-size: 15px;
    line-height: 1.85
}

.eeo-principles {
    border-top: 1px solid #fff3;
    grid-template-columns: 1fr 1fr;
    margin-top: 48px;
    display: grid
}

.eeo-principles article {
    border-bottom: 1px solid #fff3;
    padding: 26px 24px 26px 0
}

.eeo-principles article:nth-child(odd) {
    border-right: 1px solid #fff3
}

.eeo-principles article:nth-child(2n) {
    padding-left: 24px
}

.eeo-principles span {
    color: var(--red);
    font-size: 9px;
    font-weight: 800
}

.eeo-principles h3 {
    margin: 24px 0 10px;
    font-size: 18px
}

.eeo-principles p {
    color: #aeb9bd;
    margin: 0;
    font-size: 12px;
    line-height: 1.7
}

@media (width<=900px) {
    .eeo-section {
        grid-template-columns: 1fr
    }

    .eeo-heading>span {
        margin-top: 25px
    }
}

@media (width<=600px) {
    .eeo-section {
        gap: 45px;
        padding: 70px 7vw
    }

    .eeo-principles {
        grid-template-columns: 1fr
    }

    .eeo-principles article,.eeo-principles article:nth-child(odd),.eeo-principles article:nth-child(2n) {
        border-right: 0;
        padding: 22px 0
    }
}

.impact-hero {
    color: #fff;
    background: #171717;
    flex-direction: column;
    justify-content: flex-end;
    min-height: 690px;
    padding: 10vw 8vw 7vw;
    display: flex;
    position: relative;
    overflow: hidden
}

.impact-hero h1 {
    letter-spacing: -.065em;
    z-index: 1;
    margin: 0;
    font-size: clamp(52px,6.3vw,92px);
    line-height: .98;
    position: relative
}

.impact-hero h1 em {
    color: #aaa;
    font-style: normal
}

.impact-hero>p {
    z-index: 1;
    position: relative
}

.impact-hero>p:last-child {
    color: #bbb;
    max-width: 760px;
    line-height: 1.85
}

.impact-orbit {
    border: 1px solid #e3322a77;
    border-radius: 50%;
    width: 570px;
    height: 570px;
    position: absolute;
    top: -150px;
    right: -90px;
    box-shadow: 0 0 0 100px #ffffff05,0 0 0 200px #ffffff03
}

.impact-intro {
    grid-template-columns: .4fr 1.6fr;
    gap: 7vw;
    padding: 9vw 8vw;
    display: grid
}

.impact-intro h2,.impact-section-head h2,.impact-card-copy h2,.impact-principles h2 {
    letter-spacing: -.055em;
    margin: 0 0 30px;
    font-size: clamp(40px,4.8vw,68px);
    line-height: 1.03
}

.impact-intro h2 em,.impact-principles h2 em {
    color: #999;
    font-style: normal
}

.impact-intro div>p {
    max-width: 800px;
    color: var(--muted);
    line-height: 1.85
}

.impact-initiatives {
    color: #fff;
    background: #202c31;
    padding: 8vw
}

.impact-section-head {
    grid-template-columns: .4fr 1.6fr;
    gap: 7vw;
    margin-bottom: 70px;
    display: grid
}

.impact-section-head h2 em {
    color: #9caaae;
    font-style: normal
}

.impact-card {
    border-top: 1px solid #fff3;
    grid-template-columns: .18fr .42fr 1fr;
    align-items: center;
    gap: 5vw;
    min-height: 510px;
    padding: 5vw 0;
    display: grid
}

.impact-card-light {
    color: #171717;
    background: #f5f2ec;
    margin-left: -8vw;
    margin-right: -8vw;
    padding-left: 8vw;
    padding-right: 8vw
}

.impact-card-index span {
    color: var(--red);
    font-size: 11px;
    font-weight: 800
}

.impact-card-index p {
    text-transform: uppercase;
    letter-spacing: .14em;
    font-size: 9px
}

.impact-monogram {
    letter-spacing: -.08em;
    color: #ffffff09;
    font-size: clamp(70px,9vw,140px);
    font-weight: 800
}

.impact-card-light .impact-monogram {
    color: #1717170d
}

.impact-card-copy>p:last-child {
    color: #b5c0c3;
    font-size: 14px;
    line-height: 1.85
}

.impact-card-light .impact-card-copy>p:last-child {
    color: var(--muted)
}

.impact-principles {
    padding: 9vw 8vw
}

.impact-principles>div:first-child {
    grid-template-columns: .4fr 1.6fr;
    gap: 7vw;
    display: grid
}

.impact-principle-grid {
    border-top: 1px solid #aaa;
    grid-template-columns: repeat(3,1fr);
    margin-top: 65px;
    display: grid
}

.impact-principle-grid article {
    border-right: 1px solid #aaa;
    padding: 30px 28px
}

.impact-principle-grid span {
    color: var(--red);
    font-size: 9px
}

.impact-principle-grid h3 {
    margin-top: 45px;
    font-size: 22px
}

.impact-principle-grid p {
    color: var(--muted);
    font-size: 13px;
    line-height: 1.75
}

@media (width<=900px) {
    .impact-intro,.impact-section-head,.impact-principles>div: first-child {
        grid-template-columns:1fr
    }

    .impact-card {
        grid-template-columns: 70px .35fr 1fr
    }

    .impact-principle-grid {
        grid-template-columns: 1fr
    }

    .impact-principle-grid article {
        border-bottom: 1px solid #aaa;
        border-right: 0
    }
}

@media (width<=650px) {
    .impact-hero {
        min-height: 610px;
        padding: 110px 7vw 65px
    }

    .impact-intro,.impact-initiatives,.impact-principles {
        padding: 70px 7vw
    }

    .impact-card,.impact-card-light {
        grid-template-columns: 1fr;
        gap: 25px;
        margin-left: -7vw;
        margin-right: -7vw;
        padding: 55px 7vw
    }

    .impact-card-index {
        align-items: center;
        gap: 18px;
        display: flex
    }

    .impact-card-index p {
        margin: 0
    }

    .impact-monogram {
        font-size: 72px
    }

    .impact-principle-grid {
        margin-top: 45px
    }
}

.about-menu {
    grid-template-columns: repeat(4,1fr);
    gap: 28px 36px;
    left: 6vw;
    right: 6vw
}

.about-menu>div {
    border-right: 1px solid #e2ded8;
    padding-right: 22px
}

.about-menu>div:nth-child(4n),.about-menu>div:last-child {
    border-right: 0
}

.about-menu strong {
    font-size: 14px
}

.about-menu a {
    font-size: 11px;
    line-height: 1.5
}

.about-menu a:last-child {
    color: #777
}

@media (width<=1200px) {
    .about-menu {
        grid-template-columns: repeat(3,1fr)
    }
}

.about-trigger .about-menu:before {
    content: "";
    background: 0 0;
    height: 18px;
    position: absolute;
    top: -18px;
    left: 0;
    right: 0
}

.accolades-hero {
    color: #fff;
    background: #171717;
    flex-direction: column;
    justify-content: flex-end;
    min-height: 680px;
    padding: 10vw 8vw 7vw;
    display: flex;
    position: relative;
    overflow: hidden
}

.accolades-hero:after {
    content: "";
    border: 1px solid #e3322a77;
    border-radius: 50%;
    width: 520px;
    height: 520px;
    position: absolute;
    top: -130px;
    right: -70px;
    box-shadow: 0 0 0 90px #ffffff05,0 0 0 180px #ffffff03
}

.accolades-hero>* {
    z-index: 1;
    position: relative
}

.accolades-hero h1,.accolades-intro h2,.accolades-cta h2 {
    letter-spacing: -.065em;
    margin: 0;
    font-size: clamp(48px,6vw,88px);
    line-height: .98
}

.accolades-hero h1 em,.accolades-intro h2 em,.accolades-cta h2 em {
    color: #999;
    font-style: normal
}

.accolades-hero>p:last-child {
    color: #bbb;
    max-width: 780px;
    margin-top: 34px;
    line-height: 1.85
}

.accolades-intro {
    grid-template-columns: .4fr 1.6fr;
    gap: 7vw;
    padding: 9vw 8vw;
    display: grid
}

.accolades-intro>div:first-child span {
    color: var(--red);
    font-size: 11px;
    font-weight: 800
}

.accolades-intro h2 {
    font-size: clamp(40px,4.8vw,68px)
}

.accolades-intro>div:last-child>p {
    max-width: 780px;
    color: var(--muted);
    margin-top: 32px;
    line-height: 1.85
}

.accolades-grid {
    color: #fff;
    background: #1b272c;
    grid-template-columns: repeat(2,1fr);
    padding: 0 8vw 8vw;
    display: grid
}

.accolades-grid article {
    border-top: 1px solid #ffffff3b;
    border-right: 1px solid #ffffff2b;
    flex-direction: column;
    min-height: 420px;
    padding: 42px;
    display: flex
}

.accolades-grid article:nth-child(2n) {
    border-right: 0
}

.accolade-number {
    color: var(--red);
    font-size: 11px;
    font-weight: 800
}

.accolade-type {
    letter-spacing: .14em;
    text-transform: uppercase;
    color: #9fadb1;
    margin: 48px 0 12px;
    font-size: 9px
}

.accolades-grid h2 {
    letter-spacing: -.055em;
    margin: 0;
    font-size: clamp(32px,4vw,56px)
}

.accolades-grid h3 {
    margin: 24px 0 10px;
    font-size: 22px;
    line-height: 1.3
}

.accolades-grid article>p:last-child {
    color: #b5c0c3;
    margin-top: auto;
    line-height: 1.7
}

.accolades-cta {
    color: #fff;
    background: #8f211d;
    padding: 9vw 8vw
}

.accolades-cta .button {
    margin-top: 38px
}

@media (width<=800px) {
    .accolades-intro,.accolades-grid {
        grid-template-columns: 1fr
    }

    .accolades-grid article {
        border-right: 0;
        min-height: 350px
    }
}

@media (width<=600px) {
    .accolades-hero {
        min-height: 610px;
        padding: 110px 7vw 65px
    }

    .accolades-intro,.accolades-cta {
        padding: 70px 7vw
    }

    .accolades-grid {
        padding: 0 7vw 70px
    }

    .accolades-grid article {
        padding: 34px 20px
    }
}

.desktop-nav>a sup {
    color: var(--red);
    font-size: 7px
}

.staffiq-hero {
    color: #fff;
    background: #171717;
    flex-direction: column;
    justify-content: flex-end;
    min-height: 720px;
    padding: 10vw 8vw 7vw;
    display: flex;
    position: relative;
    overflow: hidden
}

.staffiq-grid {
    background-image: linear-gradient(#ffffff0b 1px,#0000 1px),linear-gradient(90deg,#ffffff0b 1px,#0000 1px);
    background-size: 70px 70px;
    position: absolute;
    inset: 0;
    -webkit-mask-image: linear-gradient(270deg,#000,#0000);
    mask-image: linear-gradient(270deg,#000,#0000)
}

.staffiq-mark {
    letter-spacing: -.13em;
    color: #ffffff04;
    font-size: 34vw;
    font-weight: 800;
    line-height: .8;
    position: absolute;
    bottom: -7vw;
    right: -2vw
}

.staffiq-hero h1 {
    letter-spacing: -.08em;
    margin: 15px 0 40px;
    font-size: clamp(76px,10vw,150px);
    line-height: .78;
    position: relative
}

.staffiq-hero h1 sup {
    color: var(--red);
    vertical-align: top;
    font-size: .18em
}

.staffiq-hero h2 {
    letter-spacing: -.05em;
    margin: 0;
    font-size: clamp(32px,4vw,58px);
    line-height: 1.05;
    position: relative
}

.staffiq-hero h2 em {
    color: #999;
    font-style: normal
}

.staffiq-hero>p:last-child {
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #bbb;
    font-size: 13px;
    position: relative
}

.staffiq-intro {
    grid-template-columns: .4fr 1.6fr;
    gap: 7vw;
    padding: 9vw 8vw;
    display: grid
}

.staffiq-intro h2,.staffiq-outcomes h2,.staffiq-section-head h2,.staffiq-tech h2,.staffiq-why h2,.staffiq-difference h2 {
    letter-spacing: -.055em;
    margin: 0 0 30px;
    font-size: clamp(40px,4.8vw,68px);
    line-height: 1.03
}

.staffiq-intro h2 em,.staffiq-section-head h2 em,.staffiq-why h2 em {
    color: #999;
    font-style: normal
}

.staffiq-intro div>p {
    max-width: 900px;
    color: var(--muted);
    line-height: 1.85
}

.staffiq-outcomes {
    color: #fff;
    background: #202c31;
    grid-template-columns: .85fr 1.15fr;
    gap: 8vw;
    padding: 8vw;
    display: grid
}

.staffiq-outcomes>div>p:last-child {
    color: #b5c0c3;
    line-height: 1.8
}

.staffiq-outcomes h2 em,.staffiq-tech h2 em,.staffiq-difference h2 em {
    color: #9caaae;
    font-style: normal
}

.staffiq-outcomes ol {
    border-top: 3px solid var(--red);
    margin: 0;
    padding: 0;
    list-style: none
}

.staffiq-outcomes li {
    border-bottom: 1px solid #fff3;
    grid-template-columns: 45px 1fr;
    padding: 16px 3px;
    display: grid
}

.staffiq-outcomes li span {
    color: var(--red);
    font-size: 9px
}

.staffiq-outcomes li strong {
    font-size: 12px
}

.staffiq-pillars {
    background: #f5f2ec
}

.staffiq-section-head {
    grid-template-columns: .4fr 1.6fr;
    gap: 7vw;
    padding: 8vw 8vw 4vw;
    display: grid
}

.staffiq-pillar {
    border-top: 1px solid #aaa;
    grid-template-columns: .3fr 1.7fr;
    gap: 7vw;
    padding: 6vw 8vw;
    display: grid
}

.staffiq-pillar-index span {
    color: var(--red);
    font-size: 12px;
    font-weight: 800
}

.staffiq-pillar-index p {
    letter-spacing: .14em;
    font-size: 8px
}

.staffiq-pillar h2 {
    letter-spacing: -.05em;
    margin: 0 0 25px;
    font-size: clamp(36px,4vw,58px);
    line-height: 1.03
}

.staffiq-pillar>div:last-child>strong {
    max-width: 850px;
    font-size: 16px;
    line-height: 1.7;
    display: block
}

.staffiq-pillar>div:last-child>p {
    color: var(--muted);
    max-width: 900px;
    font-size: 14px;
    line-height: 1.85
}

.staffiq-pillar-dark>div:last-child>p {
    color: #aeb9bd
}

.staffiq-tech {
    color: #fff;
    background: #8f211d;
    grid-template-columns: .85fr 1.15fr;
    gap: 8vw;
    padding: 8vw;
    display: grid
}

.staffiq-tech>div:first-child>p:not(.eyebrow) {
    color: #f2cac7;
    line-height: 1.8
}

.staffiq-tech-grid {
    border-top: 1px solid #fff5;
    grid-template-columns: 1fr 1fr;
    display: grid
}

.staffiq-tech-grid div {
    border-bottom: 1px solid #fff5;
    grid-template-columns: 36px 1fr;
    padding: 17px 10px 17px 0;
    display: grid
}

.staffiq-tech-grid div:nth-child(odd) {
    border-right: 1px solid #fff5
}

.staffiq-tech-grid div:nth-child(2n) {
    padding-left: 18px
}

.staffiq-tech-grid span {
    font-size: 9px
}

.staffiq-tech-grid strong {
    font-size: 11px
}

.staffiq-why {
    grid-template-columns: 1fr 1fr;
    gap: 8vw;
    padding: 9vw 8vw;
    display: grid
}

.staffiq-why>div:first-child>p:not(.eyebrow) {
    color: var(--muted);
    line-height: 1.85
}

.staffiq-quality-grid {
    border-top: 3px solid var(--red);
    grid-template-columns: 1fr 1fr;
    display: grid
}

.staffiq-quality-grid div {
    border-bottom: 1px solid #aaa;
    flex-direction: column;
    justify-content: space-between;
    min-height: 120px;
    padding: 20px;
    display: flex
}

.staffiq-quality-grid div:nth-child(odd) {
    border-right: 1px solid #aaa
}

.staffiq-quality-grid span {
    color: var(--red);
    font-size: 9px
}

.staffiq-quality-grid strong {
    font-size: 17px
}

.staffiq-difference {
    color: #fff;
    background: #202c31;
    padding: 9vw 8vw
}

.staffiq-difference h2 {
    max-width: 900px
}

.staffiq-difference>p:not(.eyebrow) {
    color: #b5c0c3;
    max-width: 900px;
    line-height: 1.85
}

.staffiq-difference .button {
    margin-top: 25px
}

@media (width<=900px) {
    .staffiq-intro,.staffiq-outcomes,.staffiq-section-head,.staffiq-tech,.staffiq-why {
        grid-template-columns: 1fr
    }

    .staffiq-pillar {
        grid-template-columns: 75px 1fr
    }
}

@media (width<=600px) {
    .staffiq-hero {
        min-height: 620px;
        padding: 110px 7vw 65px
    }

    .staffiq-intro,.staffiq-outcomes,.staffiq-section-head,.staffiq-pillar,.staffiq-tech,.staffiq-why,.staffiq-difference {
        padding: 70px 7vw
    }

    .staffiq-pillar {
        grid-template-columns: 1fr
    }

    .staffiq-pillar-index {
        align-items: center;
        gap: 18px;
        display: flex
    }

    .staffiq-pillar-index p {
        margin: 0
    }

    .staffiq-tech-grid,.staffiq-quality-grid {
        grid-template-columns: 1fr
    }

    .staffiq-tech-grid div,.staffiq-tech-grid div:nth-child(odd),.staffiq-tech-grid div:nth-child(2n),.staffiq-quality-grid div,.staffiq-quality-grid div:nth-child(odd) {
        border-right: 0;
        padding-left: 0
    }
}

.contract-detail-intro {
    grid-template-columns: repeat(auto-fit,minmax(210px,1fr))
}

.contract-detail-body h3 {
    letter-spacing: -.025em;
    margin: 34px 0 10px;
    font-size: 22px
}

.contract-how-to-order {
    border-top: 1px solid #fff2
}

.contract-how-to-order .order-card-copy {
    color: #666;
    margin: 0 0 25px;
    font-size: 12px;
    line-height: 1.75
}

.contract-how-to-order .dir-contact-card h3 {
    line-height: 1.1
}

.category-explore-link {
    text-transform: uppercase;
    letter-spacing: .08em;
    border-bottom: 1px solid;
    margin-top: 20px;
    padding-bottom: 7px;
    font-size: 10px;
    font-weight: 800;
    display: inline-block
}

.category-explore-link span {
    color: var(--red);
    margin-left: 7px
}

.ta-hero {
    color: #fff;
    background: #171717;
    flex-direction: column;
    justify-content: flex-end;
    min-height: 690px;
    padding: 10vw 8vw 7vw;
    display: flex;
    position: relative;
    overflow: hidden
}

.ta-hero .services-grid {
    opacity: .7
}

.ta-hero h1 {
    letter-spacing: -.065em;
    margin: 0;
    font-size: clamp(54px,6.6vw,96px);
    line-height: .96;
    position: relative
}

.ta-hero h1 em {
    color: #999;
    font-style: normal
}

.ta-hero>p {
    position: relative
}

.ta-hero>p:last-child {
    color: #bbb;
    max-width: 760px;
    line-height: 1.8
}

.ta-practices {
    color: #fff;
    background: #202c31;
    padding: 8vw
}

.ta-section-head {
    grid-template-columns: .4fr 1.6fr;
    gap: 7vw;
    margin-bottom: 55px;
    display: grid
}

.ta-section-head h2,.ta-approach h2,.ta-tech h2,.ta-value h2 {
    letter-spacing: -.055em;
    margin: 0;
    font-size: clamp(40px,4.8vw,68px);
    line-height: 1.03
}

.ta-section-head h2 em,.ta-tech h2 em {
    color: #9da8aa;
    font-style: normal
}

.ta-practice-grid {
    border-top: 1px solid #fff3;
    border-left: 1px solid #fff2;
    grid-template-columns: repeat(4,1fr);
    display: grid
}

.ta-practice-grid article {
    border-bottom: 1px solid #fff2;
    border-right: 1px solid #fff2;
    padding: 28px 24px
}

.ta-practice-grid article>span {
    color: var(--red);
    font-size: 9px
}

.ta-practice-grid h3 {
    margin: 35px 0 14px;
    font-size: 21px;
    line-height: 1.2
}

.ta-practice-grid article>p {
    color: #b9c2c4;
    min-height: 80px;
    font-size: 12px;
    line-height: 1.7
}

.ta-practice-grid ul {
    border-top: 1px solid #fff2;
    margin: 20px 0 0;
    padding: 0;
    list-style: none
}

.ta-practice-grid li {
    color: #ccd3d4;
    border-bottom: 1px solid #ffffff18;
    padding: 9px 0;
    font-size: 10px
}

.ta-approach {
    grid-template-columns: .8fr 1.2fr;
    gap: 8vw;
    padding: 8vw;
    display: grid
}

.ta-approach>div>p:last-child,.ta-value div>p {
    color: var(--muted);
    line-height: 1.85
}

.ta-approach h2 em,.ta-value h2 em {
    color: #999;
    font-style: normal
}

.ta-approach ol {
    border-top: 1px solid #aaa;
    margin: 0;
    padding: 0;
    list-style: none
}

.ta-approach li {
    border-bottom: 1px solid #aaa;
    grid-template-columns: 50px 1fr;
    gap: 18px;
    padding: 20px 4px;
    display: grid
}

.ta-approach li>span {
    color: var(--red);
    font-size: 9px
}

.ta-approach strong {
    font-size: 18px
}

.ta-approach li p {
    color: var(--muted);
    margin: 6px 0;
    font-size: 12px;
    line-height: 1.65
}

.ta-tech {
    color: #fff;
    background: #171717;
    grid-template-columns: .7fr 1.3fr;
    gap: 8vw;
    padding: 8vw;
    display: grid
}

.ta-tech-grid {
    border-top: 1px solid #fff3;
    grid-template-columns: repeat(3,1fr);
    display: grid
}

.ta-tech-grid span {
    border-bottom: 1px solid #fff2;
    border-right: 1px solid #fff2;
    padding: 18px 14px;
    font-size: 11px
}

.ta-value {
    grid-template-columns: .4fr 1.6fr;
    gap: 7vw;
    padding: 8vw;
    display: grid
}

.ta-value div>p {
    max-width: 760px
}

.ta-value ul {
    border-top: 1px solid #aaa;
    grid-template-columns: 1fr 1fr;
    gap: 0;
    margin: 35px 0 0;
    padding: 0;
    list-style: none;
    display: grid
}

.ta-value li {
    border-bottom: 1px solid #aaa;
    padding: 16px 5px;
    font-size: 11px
}

.ta-value li:nth-child(odd) {
    border-right: 1px solid #aaa;
    padding-right: 20px
}

.ta-value li:nth-child(2n) {
    padding-left: 20px
}

@media (width<=900px) {
    .ta-section-head,.ta-approach,.ta-tech,.ta-value {
        grid-template-columns: 1fr
    }

    .ta-practice-grid {
        grid-template-columns: 1fr 1fr
    }
}

@media (width<=600px) {
    .ta-hero {
        min-height: 620px;
        padding: 110px 7vw 65px
    }

    .ta-intro,.ta-practices,.ta-approach,.ta-tech,.ta-value {
        padding: 70px 7vw
    }

    .ta-practice-grid,.ta-tech-grid,.ta-value ul {
        grid-template-columns: 1fr
    }

    .ta-practice-grid article>p {
        min-height: 0
    }

    .ta-value li:nth-child(odd) {
        border-right: 0
    }

    .ta-value li:nth-child(2n) {
        padding-left: 5px
    }
}

.pm-talent-grid {
    grid-template-columns: repeat(5,1fr)
}

.pm-market .pm-industries-label {
    letter-spacing: .14em;
    color: var(--red);
    margin-top: 42px;
    font-size: 9px;
    font-weight: 800
}

.pm-industry-list {
    flex-wrap: wrap;
    gap: 8px;
    display: flex
}

.pm-industry-list span {
    color: #fff;
    background: #202c31;
    padding: 9px 12px;
    font-size: 9px
}

.pm-solutions .ta-tech-grid {
    grid-template-columns: repeat(3,1fr)
}

@media (width<=1000px) {
    .pm-talent-grid {
        grid-template-columns: repeat(2,1fr)
    }
}

@media (width<=600px) {
    .pm-talent-grid,.pm-solutions .ta-tech-grid {
        grid-template-columns: 1fr
    }
}

.ta-talent-groups {
    background: #202c31;
    grid-template-columns: repeat(3,1fr);
    margin-top: 38px
}

.ta-talent-groups article {
    color: #fff
}

.ta-talent-groups article>p {
    min-height: 72px
}

.ta-talent-groups h3 {
    color: #fff
}

@media (width<=900px) {
    .ta-talent-groups {
        grid-template-columns: 1fr
    }
}

.government-talent-groups {
    grid-template-columns: repeat(4,1fr)
}

@media (width<=1100px) {
    .government-talent-groups {
        grid-template-columns: repeat(2,1fr)
    }
}

@media (width<=600px) {
    .government-talent-groups {
        grid-template-columns: 1fr
    }
}

.application-solution-grid {
    grid-template-columns: repeat(5,1fr)
}

@media (width<=1100px) {
    .application-solution-grid {
        grid-template-columns: repeat(2,1fr)
    }
}

@media (width<=600px) {
    .application-solution-grid {
        grid-template-columns: 1fr
    }
}

.leadership-v2-feature-image {
    aspect-ratio: auto;
    width: 260px;
    height: auto;
    box-shadow: none;
    background: 0 0
}

.leadership-v2-feature-image img {
    object-fit: contain;
    object-position: center;
    width: 100%;
    height: auto;
    box-shadow: 0 18px 42px #0003
}

.leadership-v2-card-image {
    background: #ebe7df;
    height: 205px;
    padding: 20px
}

.leadership-v2-card-image img {
    object-fit: contain;
    object-position: center;
    width: auto;
    max-width: min(66%,220px);
    height: auto;
    max-height: 165px;
    box-shadow: 0 10px 24px #241f191f
}

@media (width<=1050px) {
    .leadership-v2-card-image {
        height: 200px
    }

    .leadership-v2-card-image img {
        width: auto;
        max-width: min(64%,210px);
        height: auto;
        max-height: 160px
    }
}

@media (width<=800px) {
    .leadership-v2-feature-image {
        width: 230px
    }

    .leadership-v2-card-image {
        height: 195px
    }

    .leadership-v2-card-image img {
        width: auto;
        max-width: min(62%,200px);
        height: auto;
        max-height: 155px
    }
}

@media (width<=650px) {
    .leadership-v2-feature-image {
        width: min(68vw,260px);
        height: auto
    }

    .leadership-v2-card-image {
        height: 210px
    }

    .leadership-v2-card-image img {
        width: auto;
        max-width: min(64%,210px);
        height: auto;
        max-height: 170px
    }
}

.ai-menu {
    grid-template-columns: repeat(2,1fr);
    left: 15vw;
    right: 15vw
}

.ai-menu a {
    line-height: 1.45
}

.ai-trigger>button {
    white-space: nowrap
}

.ta-practice-grid article[id] {
    scroll-margin-top: 100px
}

@media (width<=1300px) {
    .desktop-nav {
        gap: 1.35vw;
        font-size: 12px
    }

    .site-header {
        gap: 2vw;
        padding-left: 3vw;
        padding-right: 3vw
    }
}

@media (width<=900px) {
    .mobile-menu div {
        max-height: 75vh;
        overflow-y: auto
    }

    .mobile-menu div strong {
        color: var(--red)
    }
}

.ai-capability-hub {
    color: #fff;
    background: #1a1a1a;
    padding: 8vw
}

.ai-capability-cards {
    border-top: 1px solid #fff3;
    border-left: 1px solid #fff2;
    grid-template-columns: repeat(4,1fr);
    display: grid
}

.ai-capability-cards article {
    border-bottom: 1px solid #fff2;
    border-right: 1px solid #fff2;
    flex-direction: column;
    min-height: 285px;
    padding: 26px;
    display: flex
}

.ai-capability-cards article>span {
    color: var(--red);
    font-size: 9px
}

.ai-capability-cards h3 {
    margin: 34px 0 12px;
    font-size: 20px;
    line-height: 1.25
}

.ai-capability-cards p {
    color: #aaa;
    font-size: 12px;
    line-height: 1.7
}

.ai-capability-cards a {
    text-transform: uppercase;
    letter-spacing: .08em;
    margin-top: auto;
    padding-top: 22px;
    font-size: 10px;
    font-weight: 800
}

.ai-capability-cards a b {
    color: var(--red);
    margin-left: 8px
}

.ai-capability-detail {
    scroll-margin-top: 82px
}

.ai-capability-detail .service-body h3 {
    margin-top: 38px
}

.ai-capability-detail.service-dark .service-body h3 {
    color: #fff
}

.ai-capability-sections {
    background: #fff
}

@media (width<=1000px) {
    .ai-capability-cards {
        grid-template-columns: repeat(2,1fr)
    }
}

@media (width<=600px) {
    .ai-capability-hub {
        padding: 70px 7vw
    }

    .ai-capability-cards {
        grid-template-columns: 1fr
    }

    .ai-capability-cards article {
        min-height: 235px
    }

    .ai-capability-detail {
        padding: 70px 7vw
    }
}

.ai-capability-hub .ai-capability-cards {
    border: 0;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 18px;
    max-width: 980px
}

.ai-capability-hub .ai-capability-cards article {
    border: 1px solid #fff2;
    border-top: 1px solid var(--red);
    background: #1d2528;
    min-height: 285px
}

.ai-capability-hub .ai-capability-cards article:last-child {
    border-right: 1px solid #fff2
}

@media (width<=700px) {
    .ai-capability-hub .ai-capability-cards {
        grid-template-columns: 1fr;
        gap: 14px;
        max-width: none
    }
}

.ai-capability-hub .ai-category-capability-cards {
    border: 0;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 18px;
    max-width: none
}

.ai-capability-hub .ai-category-capability-cards article {
    border: 1px solid #fff2;
    border-top: 1px solid var(--red);
    background: #1d2528
}

.ai-capability-hub .ai-category-capability-cards article:last-child {
    border-right: 1px solid #fff2
}

@media (width<=1100px) {
    .ai-capability-hub .ai-category-capability-cards {
        grid-template-columns: repeat(2,minmax(0,1fr))
    }
}

@media (width<=700px) {
    .ai-capability-hub .ai-category-capability-cards {
        grid-template-columns: 1fr;
        gap: 14px
    }
}

.ai-editorial-hero>p:last-child {
    max-width: 820px
}

.ai-editorial-intro>div>p {
    max-width: 900px
}

.ai-editorial-detail {
    background: #f5f2ec;
    border-bottom: 1px solid #d3cfc8;
    grid-template-columns: .18fr .82fr 1fr;
    gap: 5vw;
    padding: 8vw;
    scroll-margin-top: 82px;
    display: grid
}

.ai-editorial-dark {
    color: #fff;
    background: #202c31
}

.ai-detail-index span {
    color: var(--red);
    font-size: 13px;
    font-weight: 800
}

.ai-detail-index p {
    letter-spacing: .16em;
    margin-top: 16px;
    font-size: 8px
}

.ai-detail-story h2 {
    letter-spacing: -.055em;
    margin: 14px 0 30px;
    font-size: clamp(34px,4vw,58px);
    line-height: 1.03
}

.ai-detail-kicker {
    letter-spacing: .13em;
    text-transform: uppercase;
    font-weight: 800;
    color: var(--red)!important;
    font-size: 10px!important
}

.ai-detail-story>p:not(.ai-detail-kicker) {
    color: var(--muted);
    font-size: 14px;
    line-height: 1.85
}

.ai-editorial-dark .ai-detail-story>p:not(.ai-detail-kicker) {
    color: #b8c2c5
}

.ai-detail-story>a {
    text-transform: uppercase;
    letter-spacing: .06em;
    border-bottom: 1px solid;
    margin-top: 24px;
    padding-bottom: 7px;
    font-size: 10px;
    font-weight: 800;
    display: inline-block
}

.ai-detail-story>a span {
    color: var(--red);
    margin-left: 8px
}

.ai-detail-lists {
    grid-template-columns: 1fr 1fr;
    gap: 28px;
    display: grid
}

.ai-detail-lists>div {
    border-top: 3px solid var(--red)
}

.ai-detail-lists h3 {
    letter-spacing: .13em;
    text-transform: uppercase;
    margin: 22px 0;
    font-size: 11px
}

.ai-detail-lists ul {
    margin: 0;
    padding: 0;
    list-style: none
}

.ai-detail-lists li {
    border-top: 1px solid #bbb;
    padding: 11px 2px;
    font-size: 11px;
    line-height: 1.45
}

.ai-editorial-dark .ai-detail-lists li {
    border-color: #ffffff2b
}

.ai-detail-lists li:before {
    content: "+";
    color: var(--red);
    margin-right: 10px
}

.ai-why {
    grid-template-columns: 1.15fr .85fr
}

.ai-why>div:first-child>p:not(.eyebrow) {
    color: var(--muted);
    font-size: 14px;
    line-height: 1.85
}

.ai-models {
    border-top: 3px solid var(--red)
}

.ai-models>.eyebrow {
    margin: 24px 0
}

.ai-models>div {
    border-top: 1px solid #aaa;
    grid-template-columns: 42px 1fr;
    align-items: center;
    padding: 15px 2px;
    display: grid
}

.ai-models span {
    color: var(--red);
    font-size: 9px
}

.ai-models strong {
    font-size: 12px
}

@media (width<=1050px) {
    .ai-editorial-detail {
        grid-template-columns: 70px 1fr
    }

    .ai-detail-lists {
        grid-column: 2
    }
}

@media (width<=760px) {
    .ai-editorial-detail {
        grid-template-columns: 1fr;
        padding: 70px 7vw
    }

    .ai-detail-index {
        align-items: center;
        gap: 18px;
        display: flex
    }

    .ai-detail-index p {
        margin: 0
    }

    .ai-detail-lists {
        grid-column: 1
    }

    .ai-why {
        grid-template-columns: 1fr
    }
}

@media (width<=520px) {
    .ai-detail-lists {
        grid-template-columns: 1fr
    }

    .ai-detail-lists>div+div {
        margin-top: 20px
    }
}

.search-jobs-link {
    color: var(--red)!important
}

.staffiq-pillar-groups {
    padding: 0 8vw 8vw
}

.staffiq-pillar-group {
    border-top: 1px solid #aaa;
    padding: 34px 0 42px
}

.staffiq-pillar-group-head {
    align-items: center;
    gap: 18px;
    margin-bottom: 24px;
    display: flex
}

.staffiq-pillar-group-head span {
    color: var(--red);
    font-size: 10px;
    font-weight: 800
}

.staffiq-pillar-group-head h3 {
    letter-spacing: -.025em;
    margin: 0;
    font-size: 22px
}

.staffiq-pillar-grid {
    border-top: 3px solid var(--red);
    grid-template-columns: repeat(3,1fr);
    display: grid
}

.staffiq-pillar {
    color: #171717;
    background: #fff;
    border: 0;
    border-right: 1px solid #bbb;
    padding: 26px 24px 28px;
    display: block
}

.staffiq-pillar:last-child {
    border-right: 0
}

.staffiq-pillar-index {
    align-items: center;
    gap: 12px;
    margin-bottom: 32px;
    display: flex
}

.staffiq-pillar-index p {
    margin: 0
}

.staffiq-pillar h3 {
    letter-spacing: -.03em;
    margin: 0 0 16px;
    font-size: 21px;
    line-height: 1.15
}

.staffiq-pillar>strong {
    font-size: 12px;
    line-height: 1.55;
    display: block
}

.staffiq-pillar>p {
    color: var(--muted);
    margin: 14px 0 0;
    font-size: 11px;
    line-height: 1.65
}

.staffiq-pillar-dark {
    color: #171717;
    background: #fff
}

@media (width<=900px) {
    .staffiq-pillar-grid {
        grid-template-columns: 1fr
    }

    .staffiq-pillar {
        border-bottom: 1px solid #bbb;
        border-right: 0
    }

    .staffiq-pillar:last-child {
        border-bottom: 0
    }
}

@media (width<=600px) {
    .staffiq-pillar-groups {
        padding: 0 7vw 70px
    }

    .staffiq-pillar-group {
        padding: 28px 0 34px
    }

    .staffiq-pillar {
        padding: 24px 20px
    }

    .staffiq-pillar-index {
        margin-bottom: 24px
    }
}

.goviq-trigger>button sup {
    color: var(--red);
    font-size: 7px
}

.goviq-menu {
    grid-template-columns: repeat(4,1fr);
    left: 6vw;
    right: 6vw
}

.goviq-hero {
    color: #fff;
    background: #17252b;
    flex-direction: column;
    justify-content: flex-end;
    min-height: 720px;
    padding: 10vw 8vw 7vw;
    display: flex;
    position: relative;
    overflow: hidden
}

.goviq-grid {
    background-image: linear-gradient(#ffffff0a 1px,#0000 1px),linear-gradient(90deg,#ffffff0a 1px,#0000 1px);
    background-size: 74px 74px;
    position: absolute;
    inset: 0;
    -webkit-mask-image: linear-gradient(270deg,#000,#0000);
    mask-image: linear-gradient(270deg,#000,#0000)
}

.goviq-mark {
    letter-spacing: -.1em;
    color: #ffffff04;
    font-size: 25vw;
    font-weight: 800;
    line-height: .8;
    position: absolute;
    bottom: -4vw;
    right: -2vw
}

.goviq-hero h1 {
    letter-spacing: -.075em;
    margin: 16px 0 38px;
    font-size: clamp(72px,9vw,138px);
    line-height: .82;
    position: relative
}

.goviq-hero h1 sup {
    color: var(--red);
    vertical-align: top;
    font-size: .18em
}

.goviq-hero h2 {
    letter-spacing: -.05em;
    margin: 0;
    font-size: clamp(32px,4vw,58px);
    line-height: 1.04;
    position: relative
}

.goviq-hero h2 em {
    color: #9eabad;
    font-style: normal
}

.goviq-hero>p:last-child {
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #bdc7c9;
    font-size: 12px;
    position: relative
}

.goviq-intro {
    grid-template-columns: .4fr 1.6fr;
    gap: 7vw;
    padding: 9vw 8vw;
    display: grid
}

.goviq-intro h2,.goviq-section-head h2,.goviq-why h2 {
    letter-spacing: -.055em;
    margin: 0 0 30px;
    font-size: clamp(40px,4.8vw,68px);
    line-height: 1.03
}

.goviq-intro h2 em,.goviq-section-head h2 em,.goviq-why h2 em {
    color: #999;
    font-style: normal
}

.goviq-intro div>p {
    max-width: 880px;
    color: var(--muted);
    line-height: 1.85
}

.goviq-overview {
    color: #fff;
    background: #202c31;
    padding: 8vw
}

.goviq-section-head {
    grid-template-columns: .4fr 1.6fr;
    gap: 7vw;
    margin-bottom: 55px;
    display: grid
}

.goviq-section-head h2 em {
    color: #9caaae
}

.goviq-card-grid {
    border-top: 3px solid var(--red);
    border-left: 1px solid #fff2;
    grid-template-columns: repeat(4,1fr);
    display: grid
}

.goviq-card-grid article {
    border-bottom: 1px solid #fff2;
    border-right: 1px solid #fff2;
    flex-direction: column;
    min-height: 265px;
    padding: 26px;
    display: flex
}

.goviq-card-grid article>span {
    color: var(--red);
    font-size: 9px
}

.goviq-card-grid h3 {
    margin: 35px 0 12px;
    font-size: 21px;
    line-height: 1.2
}

.goviq-card-grid p {
    color: #b7c0c3;
    font-size: 12px;
    line-height: 1.65
}

.goviq-card-grid a {
    text-transform: uppercase;
    letter-spacing: .08em;
    margin-top: auto;
    padding-top: 20px;
    font-size: 10px;
    font-weight: 800
}

.goviq-card-grid b {
    color: var(--red);
    margin-left: 7px
}

.goviq-detail {
    background: #f5f2ec;
    border-bottom: 1px solid #d3cfc8;
    grid-template-columns: .18fr .82fr 1fr;
    gap: 5vw;
    padding: 7vw 8vw;
    scroll-margin-top: 82px;
    display: grid
}

.goviq-detail-dark {
    color: #fff;
    background: #17252b
}

.goviq-detail-index span {
    color: var(--red);
    font-size: 13px;
    font-weight: 800
}

.goviq-detail-index p {
    letter-spacing: .16em;
    margin-top: 16px;
    font-size: 8px
}

.goviq-detail-kicker {
    letter-spacing: .13em;
    text-transform: uppercase;
    font-weight: 800;
    color: var(--red)!important;
    font-size: 10px!important
}

.goviq-detail-story h2 {
    letter-spacing: -.055em;
    margin: 14px 0 27px;
    font-size: clamp(34px,4vw,56px);
    line-height: 1.03
}

.goviq-detail-story>p:not(.goviq-detail-kicker) {
    color: var(--muted);
    font-size: 13px;
    line-height: 1.82
}

.goviq-detail-dark .goviq-detail-story>p:not(.goviq-detail-kicker) {
    color: #b8c3c6
}

.goviq-detail-lists {
    grid-template-columns: 1fr 1fr;
    gap: 28px;
    display: grid
}

.goviq-detail-lists>div {
    border-top: 3px solid var(--red)
}

.goviq-detail-lists h3 {
    letter-spacing: .13em;
    text-transform: uppercase;
    margin: 22px 0;
    font-size: 11px
}

.goviq-detail-lists ul {
    margin: 0;
    padding: 0;
    list-style: none
}

.goviq-detail-lists li {
    border-top: 1px solid #bbb;
    padding: 9px 2px;
    font-size: 10px;
    line-height: 1.4
}

.goviq-detail-dark .goviq-detail-lists li {
    border-color: #ffffff2b
}

.goviq-detail-lists li:before {
    content: "+";
    color: var(--red);
    margin-right: 9px
}

.goviq-why {
    grid-template-columns: .8fr 1.2fr;
    gap: 8vw;
    padding: 9vw 8vw;
    display: grid
}

.goviq-why div:last-child>p {
    color: var(--muted);
    line-height: 1.85
}

.goviq-why .button {
    margin-top: 22px
}

@media (width<=1200px) {
    .desktop-nav {
        gap: 1vw;
        font-size: 11px
    }

    .site-header {
        gap: 1.6vw;
        padding-left: 2.5vw;
        padding-right: 2.5vw
    }
}

@media (width<=1000px) {
    .goviq-card-grid {
        grid-template-columns: repeat(2,1fr)
    }

    .goviq-detail {
        grid-template-columns: 70px 1fr
    }

    .goviq-detail-lists {
        grid-column: 2
    }
}

@media (width<=900px) {
    .goviq-intro,.goviq-section-head,.goviq-why {
        grid-template-columns: 1fr
    }
}

@media (width<=700px) {
    .goviq-hero {
        min-height: 620px;
        padding: 110px 7vw 65px
    }

    .goviq-intro,.goviq-overview,.goviq-detail,.goviq-why {
        padding: 70px 7vw
    }

    .goviq-card-grid,.goviq-detail,.goviq-detail-lists {
        grid-template-columns: 1fr
    }

    .goviq-detail-index {
        align-items: center;
        gap: 18px;
        display: flex
    }

    .goviq-detail-index p {
        margin: 0
    }

    .goviq-detail-lists {
        grid-column: 1
    }

    .goviq-card-grid article {
        min-height: 225px
    }
}

.sharp-menu {
    grid-template-columns: repeat(3,1fr);
    left: 13vw;
    right: 13vw
}

.sharp-hero {
    color: #fff;
    background: #191919;
    flex-direction: column;
    justify-content: flex-end;
    min-height: 720px;
    padding: 10vw 8vw 7vw;
    display: flex;
    position: relative;
    overflow: hidden
}

.sharp-lines {
    background: linear-gradient(115deg,#0000 0 48%,#e3322a33 48% 48.3%,#0000 48.3%),linear-gradient(65deg,#0000 0 68%,#ffffff12 68% 68.2%,#0000 68.2%);
    position: absolute;
    inset: 0
}

.sharp-hero h1 {
    letter-spacing: -.085em;
    margin: 16px 0 42px;
    font-size: clamp(84px,12vw,180px);
    line-height: .78;
    position: relative
}

.sharp-hero h1 sup {
    color: var(--red);
    vertical-align: top;
    font-size: .16em
}

.sharp-hero h2 {
    letter-spacing: -.05em;
    margin: 0;
    font-size: clamp(32px,4vw,58px);
    line-height: 1.04;
    position: relative
}

.sharp-hero h2 em {
    color: #999;
    font-style: normal
}

.sharp-hero>p:last-child {
    color: #bbb;
    max-width: 760px;
    line-height: 1.75;
    position: relative
}

.sharp-intro {
    grid-template-columns: .4fr 1.6fr;
    gap: 7vw;
    padding: 9vw 8vw;
    display: grid
}

.sharp-intro h2,.sharp-section-head h2,.sharp-section h2,.sharp-mission h2,.sharp-cta h2 {
    letter-spacing: -.055em;
    margin: 0 0 30px;
    font-size: clamp(40px,4.8vw,68px);
    line-height: 1.03
}

.sharp-intro h2 em,.sharp-section-head h2 em,.sharp-section h2 em,.sharp-mission h2 em,.sharp-cta h2 em {
    color: #999;
    font-style: normal
}

.sharp-intro div>p {
    max-width: 880px;
    color: var(--muted);
    line-height: 1.85
}

.sharp-overview {
    color: #fff;
    background: #202c31;
    padding: 8vw
}

.sharp-section-head {
    grid-template-columns: .4fr 1.6fr;
    gap: 7vw;
    margin-bottom: 55px;
    display: grid
}

.sharp-section-head h2 em {
    color: #9caaae
}

.sharp-principle-grid {
    border-top: 3px solid var(--red);
    grid-template-columns: repeat(5,1fr);
    display: grid
}

.sharp-principle-grid article {
    border-bottom: 1px solid #ffffff2b;
    border-right: 1px solid #ffffff2b;
    flex-direction: column;
    min-height: 300px;
    padding: 25px 20px;
    display: flex
}

.sharp-principle-grid article:last-child {
    border-right: 0
}

.sharp-principle-grid span {
    color: var(--red);
    font-size: 9px
}

.sharp-principle-grid h3 {
    margin: 38px 0 13px;
    font-size: 19px;
    line-height: 1.2
}

.sharp-principle-grid p {
    color: #b8c2c5;
    font-size: 11px;
    line-height: 1.65
}

.sharp-principle-grid a {
    text-transform: uppercase;
    letter-spacing: .08em;
    margin-top: auto;
    font-size: 9px;
    font-weight: 800
}

.sharp-principle-grid b {
    color: var(--red);
    margin-left: 6px
}

.sharp-section {
    grid-template-columns: .85fr 1.15fr;
    gap: 8vw;
    padding: 8vw;
    scroll-margin-top: 82px;
    display: grid
}

.sharp-section>div>p:not(.eyebrow) {
    color: var(--muted);
    line-height: 1.85
}

.sharp-section ul {
    border-top: 3px solid var(--red);
    grid-template-columns: 1fr 1fr;
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid
}

.sharp-section li {
    border-bottom: 1px solid #aaa;
    padding: 18px 14px 18px 2px;
    font-size: 11px;
    line-height: 1.45
}

.sharp-section li:nth-child(odd) {
    border-right: 1px solid #aaa
}

.sharp-section li:before {
    content: "+";
    color: var(--red);
    margin-right: 10px
}

.sharp-dark {
    color: #fff;
    background: #17252b
}

.sharp-dark h2 em {
    color: #9caaae
}

.sharp-dark>div>p:not(.eyebrow) {
    color: #b8c2c5
}

.sharp-dark li {
    border-color: #ffffff2b
}

.sharp-red {
    color: #fff;
    background: #9b2722
}

.sharp-red h2 em {
    color: #f1bbb7
}

.sharp-red>div>p:not(.eyebrow) {
    color: #f2d0cd
}

.sharp-red li {
    border-color: #ffffff45
}

.sharp-red li:before {
    color: #fff
}

.sharp-mission {
    grid-template-columns: .8fr 1.2fr;
    gap: 8vw;
    padding: 9vw 8vw;
    display: grid
}

.sharp-mission>div:first-child>p:not(.eyebrow) {
    color: var(--muted);
    line-height: 1.85
}

.sharp-mission-grid {
    border-top: 3px solid var(--red);
    grid-template-columns: 1fr 1fr;
    display: grid
}

.sharp-mission-grid div {
    border-bottom: 1px solid #aaa;
    flex-direction: column;
    justify-content: space-between;
    min-height: 115px;
    padding: 20px;
    display: flex
}

.sharp-mission-grid div:nth-child(odd) {
    border-right: 1px solid #aaa
}

.sharp-mission-grid span {
    color: var(--red);
    font-size: 9px
}

.sharp-mission-grid strong {
    font-size: 13px;
    line-height: 1.4
}

.sharp-cta {
    background: var(--red);
    color: #fff;
    padding: 9vw 8vw
}

.sharp-cta h2 em {
    color: #641713
}

.sharp-cta>p:not(.eyebrow) {
    max-width: 760px;
    line-height: 1.8
}

.sharp-cta .button {
    margin-top: 24px
}

@media (width<=1100px) {
    .sharp-principle-grid {
        grid-template-columns: repeat(3,1fr)
    }
}

@media (width<=900px) {
    .sharp-intro,.sharp-section-head,.sharp-section,.sharp-mission {
        grid-template-columns: 1fr
    }

    .sharp-principle-grid {
        grid-template-columns: 1fr 1fr
    }
}

@media (width<=600px) {
    .sharp-hero {
        min-height: 620px;
        padding: 110px 7vw 65px
    }

    .sharp-intro,.sharp-overview,.sharp-section,.sharp-mission,.sharp-cta {
        padding: 70px 7vw
    }

    .sharp-principle-grid,.sharp-section ul,.sharp-mission-grid {
        grid-template-columns: 1fr
    }

    .sharp-section li:nth-child(odd),.sharp-mission-grid div:nth-child(odd) {
        border-right: 0
    }

    .sharp-principle-grid article {
        min-height: 230px
    }
}

.about-certifications,.about-location {
    scroll-margin-top: 82px
}

.about-certifications .certification-grid {
    grid-template-columns: repeat(2,1fr)
}

.about-location {
    color: #fff;
    background: #17252b;
    grid-template-columns: .72fr 1.28fr;
    align-items: stretch;
    gap: 7vw;
    padding: 8vw;
    display: grid
}

.about-location-copy h2 {
    letter-spacing: -.055em;
    margin: 0 0 34px;
    font-size: clamp(40px,4.8vw,68px);
    line-height: 1.03
}

.about-location-copy h2 em {
    color: #9caaae;
    font-style: normal
}

.about-location-copy address {
    color: #bcc6c8;
    font-size: 15px;
    font-style: normal;
    line-height: 1.8
}

.about-location-copy address strong {
    color: #fff;
    margin-bottom: 5px;
    font-size: 20px;
    display: block
}

.about-contact-links {
    border-top: 1px solid #fff3;
    margin: 34px 0
}

.about-contact-links a {
    border-bottom: 1px solid #fff3;
    flex-direction: column;
    gap: 6px;
    padding: 16px 2px;
    font-size: 15px;
    font-weight: 700;
    display: flex
}

.about-contact-links span {
    letter-spacing: .15em;
    color: var(--red);
    font-size: 8px
}

.about-map {
    background: #27383e;
    min-height: 520px
}

.about-map iframe {
    filter: grayscale(.15);
    border: 0;
    width: 100%;
    height: 100%;
    min-height: 520px
}

@media (width<=900px) {
    .about-location {
        grid-template-columns: 1fr
    }

    .about-map,.about-map iframe {
        min-height: 420px
    }
}

@media (width<=600px) {
    .about-location {
        padding: 70px 7vw
    }

    .about-certifications .certification-grid {
        grid-template-columns: 1fr
    }

    .about-map,.about-map iframe {
        min-height: 340px
    }
}

.about-hero>p:last-child {
    margin-top: 32px
}

main section h1+p,main section h2+p {
    margin-top: clamp(26px,2.2vw,34px)!important
}

.location-hero {
    color: #fff;
    background: #171717;
    flex-direction: column;
    justify-content: flex-end;
    min-height: 560px;
    padding: 10vw 8vw 7vw;
    display: flex;
    position: relative;
    overflow: hidden
}

.location-hero:after {
    content: "";
    border: 1px solid #e3322a77;
    border-radius: 50%;
    width: 480px;
    height: 480px;
    position: absolute;
    top: -150px;
    right: -50px;
    box-shadow: 0 0 0 85px #ffffff05,0 0 0 170px #ffffff03
}

.location-hero>* {
    z-index: 1;
    position: relative
}

.location-hero h1 {
    letter-spacing: -.065em;
    margin: 0;
    font-size: clamp(52px,6.3vw,92px);
    line-height: .98
}

.location-hero h1 em {
    color: #999;
    font-style: normal
}

.location-hero>p:last-child {
    color: #bbb;
    max-width: 680px;
    line-height: 1.85
}

.corporate-location-page {
    scroll-margin-top: 82px
}

@media (width<=600px) {
    .location-hero {
        min-height: 540px;
        padding: 110px 7vw 65px
    }
}

.certifications-hero {
    color: #fff;
    background: #17252b;
    flex-direction: column;
    justify-content: flex-end;
    min-height: 650px;
    padding: 10vw 8vw 7vw;
    display: flex;
    position: relative;
    overflow: hidden
}

.certifications-hero:after {
    content: "";
    border: 1px solid #e3322a77;
    border-radius: 50%;
    width: 520px;
    height: 520px;
    position: absolute;
    top: -140px;
    right: -70px;
    box-shadow: 0 0 0 90px #ffffff05,0 0 0 180px #ffffff03
}

.certifications-hero>* {
    z-index: 1;
    position: relative
}

.certifications-hero h1 {
    letter-spacing: -.065em;
    margin: 0;
    font-size: clamp(52px,6.3vw,92px);
    line-height: .98
}

.certifications-hero h1 em {
    color: #9eabad;
    font-style: normal
}

.certifications-hero>p:last-child {
    color: #bdc7c9;
    max-width: 760px;
    line-height: 1.85
}

.diversity-page-certifications {
    scroll-margin-top: 82px
}

@media (width<=600px) {
    .certifications-hero {
        min-height: 590px;
        padding: 110px 7vw 65px
    }
}

.mega-trigger>.nav-top-link {
    cursor: pointer;
    background: 0 0;
    border: 0;
    padding: 31px 0;
    display: block
}

.mega-trigger>.nav-top-link span {
    color: var(--red);
    margin-left: 5px
}

.goviq-trigger>.nav-top-link sup {
    color: var(--red);
    font-size: 7px
}

.what-menu {
    align-items: start;
    gap: 18px;
    padding-top: 26px;
    padding-bottom: 26px
}

.what-menu>div {
    background: #faf9f7;
    border: 1px solid #e2ded8;
    gap: 0;
    transition: border-color .2s,box-shadow .2s
}

.what-menu>div>a:first-child {
    color: #171717;
    justify-content: space-between;
    align-items: center;
    min-height: 64px;
    padding: 18px 20px;
    display: flex
}

.what-menu>div>a:first-child:after {
    content: "+";
    color: var(--red);
    margin-left: 18px;
    font-size: 18px;
    font-weight: 400
}

.what-menu>div>a:not(:first-child) {
    background: #fff;
    border-top: 1px solid #ece8e2;
    padding: 10px 20px;
    display: none
}

.what-menu>div:hover,.what-menu>div:focus-within {
    border-color: #171717;
    box-shadow: 0 12px 28px #00000012
}

.what-menu>div:hover>a:not(:first-child),.what-menu>div:focus-within>a:not(:first-child) {
    display: block
}

.what-menu>div:hover>a:first-child:after,.what-menu>div:focus-within>a:first-child:after {
    content: "−"
}

.what-menu {
    grid-template-columns: 1fr;
    gap: 0;
    padding: 4px 0;
    left: 24vw;
    right: 24vw
}

.what-menu>div {
    background: 0 0;
    border: 0;
    box-shadow: none!important
}

.what-menu>div>a:first-child {
    min-height: 0;
    padding: 8px 20px
}

.what-menu>div>a:not(:first-child) {
    border-top: 0;
    padding: 8px 20px 8px 38px
}

.what-menu>div:hover,.what-menu>div:focus-within {
    box-shadow: none;
    border: 0
}

@media (width<=1200px) {
    .what-menu {
        left: 14vw;
        right: 14vw
    }
}

.what-menu {
    color: #171717;
    background: #fff
}

.what-menu>div>a:first-child {
    color: #171717
}

.what-menu>div>a:not(:first-child) {
    color: #666;
    background: #fff
}

.what-menu>div>a:not(:first-child):hover {
    color: var(--red)
}

.what-menu>div:hover>a:first-child,.what-menu>div:focus-within>a:first-child {
    color: #171717;
    background: #f2efea
}

.progressive-menu {
    color: #171717;
    background: #fff;
    grid-template-columns: 1fr;
    gap: 0;
    padding: 4px 0;
    left: 24vw;
    right: 24vw
}

.progressive-menu>div {
    box-shadow: none;
    background: 0 0;
    border: 0;
    gap: 0
}

.progressive-menu>div>a:first-child {
    color: #171717;
    justify-content: space-between;
    align-items: center;
    min-height: 0;
    padding: 8px 20px;
    display: flex
}

.progressive-menu>div>a:first-child:after {
    content: "+";
    color: var(--red);
    margin-left: 18px;
    font-size: 18px;
    font-weight: 400
}

.progressive-menu>div>a:not(:first-child) {
    color: #666;
    background: #fff;
    border: 0;
    padding: 8px 20px 8px 38px;
    display: none
}

.progressive-menu>div:hover>a:not(:first-child),.progressive-menu>div:focus-within>a:not(:first-child) {
    display: block
}

.progressive-menu>div:hover>a:first-child,.progressive-menu>div:focus-within>a:first-child {
    color: #171717;
    background: #f2efea
}

.progressive-menu>div:hover>a:first-child:after,.progressive-menu>div:focus-within>a:first-child:after {
    content: "−"
}

.progressive-menu>div>a:not(:first-child):hover {
    color: var(--red)
}

@media (width<=1200px) {
    .progressive-menu {
        left: 14vw;
        right: 14vw
    }
}

.what-menu a,.progressive-menu a {
    font-size: 11px;
    line-height: 1.35
}

.what-menu a:first-child strong,.progressive-menu a:first-child strong {
    margin-bottom: 0;
    font-size: 13px;
    line-height: 1.25
}

.what-menu>div>a:first-child:after,.progressive-menu>div>a:first-child:after {
    font-size: 15px
}

.leader-linkedin {
    letter-spacing: .1em;
    text-transform: uppercase;
    color: #555;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    margin: -8px 0 20px;
    font-size: 9px;
    font-weight: 800;
    display: flex
}

.leader-linkedin span,.profile-linkedin span {
    color: var(--red)
}

.leader-linkedin span {
    letter-spacing: 0;
    font-size: 21px;
    font-weight: 400;
    line-height: 1
}

.leadership-v2-feature-copy .leader-linkedin {
    color: #fff;
    max-width: 320px
}

.goviq-contact-card a.profile-linkedin {
    color: #d1d8da;
    width: max-content;
    margin-top: 10px;
    display: block
}

.goviq-contact-card a.profile-linkedin:hover {
    color: #fff
}

.goviq-contacts {
    color: #fff;
    background: #17252b;
    padding: 7vw 8vw
}

.goviq-contacts-heading {
    grid-template-columns: .4fr 1.6fr;
    align-items: end;
    gap: 7vw;
    margin-bottom: 44px;
    display: grid
}

.goviq-contacts-heading h2 {
    letter-spacing: -.055em;
    margin: 0;
    font-size: clamp(38px,4.4vw,62px);
    line-height: 1.03
}

.goviq-contacts-heading h2 em {
    color: #9eabad;
    font-style: normal
}

.goviq-contact-grid {
    border-top: 3px solid var(--red);
    background: #ffffff26;
    grid-template-columns: 1fr 1fr;
    gap: 1px;
    display: grid
}

.goviq-contact-card {
    background: #202f35;
    grid-template-columns: 112px 1fr;
    gap: 26px;
    min-height: 270px;
    padding: 30px;
    display: grid
}

.goviq-contact-card img {
    object-fit: cover;
    object-position: center top;
    filter: contrast(1.04)saturate(.94);
    width: 112px;
    height: 112px;
    display: block
}

.goviq-contact-label {
    letter-spacing: .14em;
    font-weight: 800;
    color: var(--red)!important;
    margin: 0 0 10px!important;
    font-size: 8px!important
}

.goviq-contact-card h3 {
    letter-spacing: -.035em;
    margin: 0 0 4px;
    font-size: 25px
}

.goviq-contact-card h4 {
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #aebbc0;
    margin: 0 0 18px;
    font-size: 10px
}

.goviq-contact-card div>p:not(.goviq-contact-label) {
    color: #bdc7ca;
    margin: 0 0 20px;
    font-size: 11px;
    line-height: 1.7
}

.goviq-contact-card a {
    color: #fff;
    border-bottom: 1px solid #ffffff45;
    padding-bottom: 5px;
    font-size: 10px;
    font-weight: 800;
    display: inline-block
}

.goviq-contact-card a span {
    color: var(--red);
    margin-left: 6px
}

@media (width<=950px) {
    .goviq-contact-grid,.goviq-contacts-heading {
        grid-template-columns: 1fr
    }
}

@media (width<=600px) {
    .goviq-contacts {
        padding: 70px 7vw
    }

    .goviq-contact-card {
        grid-template-columns: 82px 1fr;
        gap: 18px;
        padding: 24px 18px
    }

    .goviq-contact-card img {
        width: 82px;
        height: 82px
    }
}

.leadership-v2-feature-image {
    width: 230px
}

.leadership-v2-card-image {
    height: 180px;
    padding: 18px
}

.leadership-v2-card-image img {
    filter: brightness(1.06)saturate(.98)contrast(1.12);
    max-width: min(60%,190px);
    max-height: 140px
}

.leadership-v2-card-copy {
    min-height: 325px;
    padding: 24px
}

.leadership-v2-card-copy h3 {
    font-size: clamp(23px,2vw,31px)
}

.goviq-contact-card {
    grid-template-columns: 92px 1fr;
    gap: 20px;
    min-height: 240px;
    padding: 24px
}

.goviq-contact-card img {
    filter: brightness(1.04)contrast(1.1)saturate(.98);
    width: 92px;
    height: 92px
}

@media (width<=600px) {
    .goviq-contact-card {
        grid-template-columns: 74px 1fr;
        gap: 16px;
        padding: 20px 16px
    }

    .goviq-contact-card img {
        width: 74px;
        height: 74px
    }

    .leadership-v2-card-image {
        height: 190px
    }

    .leadership-v2-card-image img {
        max-width: min(62%,190px);
        max-height: 150px
    }
}

.contracts-intro>.eyebrow,.teaming-heading>.eyebrow,.goviq-contacts-heading>.eyebrow,.contract-detail-body .eyebrow,.dir-resources .eyebrow {
    white-space: nowrap
}

.teaming-heading {
    grid-template-columns: minmax(260px,.42fr) 1.58fr;
    column-gap: 5vw
}

.teaming-heading>.eyebrow {
    margin-bottom: 0
}

@media (width<=900px) {
    .teaming-heading {
        grid-template-columns: 1fr;
        row-gap: 30px
    }

    .teaming-heading>.eyebrow {
        margin-bottom: 0
    }
}

main h1,main h2,main h3 {
    text-wrap: balance;
    word-break: normal;
    overflow-wrap: normal
}

main .eyebrow {
    text-wrap: pretty;
    word-break: keep-all;
    overflow-wrap: normal;
    line-height: 1.45
}

main section h3+p {
    margin-top: 18px
}

.contract-type,.goviq-contact-label,.ai-detail-kicker,.goviq-detail-kicker,.teaming-card>p,.contract-details span,.contract-detail-intro span,.profile-numbers span {
    white-space: nowrap;
    word-break: keep-all
}

@media (width<=520px) {
    main .eyebrow {
        letter-spacing: .14em;
        font-size: 9px;
        line-height: 1.5
    }
}

.leadership-v2-feature-image {
    width: 100%;
    height: 190px;
    box-shadow: none;
    background: #ebe7df;
    justify-content: center;
    align-items: center;
    padding: 20px;
    display: flex
}

.leadership-v2-feature-image:after {
    display: none
}

.leadership-v2-feature-image img,.leadership-v2-card-image img {
    object-fit: cover;
    object-position: center top;
    background: #fff;
    width: 150px;
    min-width: 150px;
    max-width: none;
    height: 150px;
    min-height: 150px;
    max-height: none;
    box-shadow: 0 10px 24px #241f191f
}

.leadership-v2-card-image {
    background: #ebe7df;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 190px;
    min-height: 190px;
    padding: 20px;
    display: flex
}

@media (width<=650px) {
    .leadership-v2-feature-image {
        width: 100%;
        height: 190px
    }

    .leadership-v2-card-image {
        width: 100%;
        height: 190px;
        min-height: 190px
    }

    .leadership-v2-feature-image img,.leadership-v2-card-image img {
        width: 150px;
        min-width: 150px;
        height: 150px;
        min-height: 150px
    }
}

.leadership-v2-category+.leadership-v2-category {
    margin-top: 72px
}

.leadership-v2-category-head {
    border-bottom: 2px solid #171717;
    grid-template-columns: .42fr 1.58fr;
    align-items: end;
    gap: 7vw;
    margin-bottom: 28px;
    padding-bottom: 18px;
    display: grid
}

.leadership-v2-category-head h3 {
    letter-spacing: -.045em;
    margin: 0;
    font-size: clamp(25px,3vw,42px);
    line-height: 1
}

.leadership-v2-category-head p {
    max-width: 560px;
    color: var(--muted);
    margin: 0;
    font-size: 12px;
    line-height: 1.7
}

@media (width<=700px) {
    .leadership-v2-category+.leadership-v2-category {
        margin-top: 55px
    }

    .leadership-v2-category-head {
        grid-template-columns: 1fr;
        gap: 12px
    }
}

.leadership-v2-feature-image img {
    width: 130px;
    min-width: 130px;
    height: 130px;
    min-height: 130px
}

.practice-subnav {
    z-index: 35;
    background: #fff;
    border-bottom: 1px solid #ddd;
    gap: 8px;
    padding: 13px 5vw;
    display: flex;
    position: sticky;
    top: 82px;
    overflow-x: auto
}

.practice-subnav a {
    text-transform: uppercase;
    letter-spacing: .06em;
    color: #666;
    flex: none;
    padding: 8px 11px;
    font-size: 9px;
    font-weight: 800
}

.practice-subnav a.active {
    color: #fff;
    background: #171717
}

.ai-practice-page {
    grid-template-columns: .8fr 1.2fr;
    gap: 7vw;
    padding: 8vw;
    display: grid
}

.ai-practice-page h2 {
    letter-spacing: -.05em;
    font-size: clamp(36px,4vw,58px);
    line-height: 1.05
}

.ai-practice-page>div:first-child>p:not(.eyebrow) {
    color: var(--muted);
    line-height: 1.8
}

.ai-practice-columns {
    grid-template-columns: 1fr 1fr;
    gap: 25px;
    display: grid
}

.ai-practice-columns section {
    color: #fff;
    background: #202c31;
    padding: 28px
}

.ai-practice-columns h3 {
    margin: 0 0 22px
}

.ai-practice-columns ul {
    margin: 0;
    padding: 0;
    list-style: none
}

.ai-practice-columns li {
    border-bottom: 1px solid #fff2;
    padding: 10px 0;
    font-size: 11px
}

.goviq-practice-hero {
    min-height: 620px
}

.goviq-practice-hero h1 {
    letter-spacing: -.06em;
    word-break: normal;
    overflow-wrap: normal;
    text-wrap: balance;
    max-width: 1180px;
    font-size: clamp(52px,6.7vw,104px);
    line-height: .96
}

.goviq-practice-page {
    padding: 8vw
}

.single-profile-grid {
    grid-template-columns: 1fr;
    max-width: 760px
}

@media (width<=800px) {
    .practice-subnav {
        top: 68px
    }

    .ai-practice-page,.ai-practice-columns {
        grid-template-columns: 1fr
    }
}

main h1,main h2,main h3,main h4,.service-body,.goviq-detail-story,.ai-detail-story,.prime-contract-card,.teaming-card {
    text-wrap: balance;
    word-break: normal;
    overflow-wrap: break-word;
    -webkit-hyphens: none;
    hyphens: none
}

main p,main li,main a {
    text-wrap: pretty;
    word-break: normal;
    overflow-wrap: break-word;
    -webkit-hyphens: none;
    hyphens: none
}

.desktop-nav>a,.nav-top-link,.mega-trigger>button,.mega-menu strong,.practice-subnav a {
    white-space: nowrap;
    word-break: keep-all;
    overflow-wrap: normal
}

.goviq-detail-lists li,.ai-detail-lists li {
    line-height: 1.55
}

#teaming-agreements .goviq-detail-lists li {
    text-wrap: balance;
    padding-right: 18px
}

#prime-contracts .goviq-detail-lists li,#teaming-agreements .goviq-detail-lists li {
    align-items: center;
    min-height: 44px;
    font-size: 11px;
    line-height: 1.45;
    display: flex
}

#prime-contracts .goviq-detail-story h2,#teaming-agreements .goviq-detail-story h2 {
    font-size: clamp(38px,3.7vw,54px)
}

.goviq-details a[href^="/contract-vehicles/"] {
    letter-spacing: .06em;
    text-transform: uppercase;
    align-items: center;
    gap: 8px;
    font-size: 9px;
    font-weight: 800;
    line-height: 1.3;
    display: inline-flex
}

.goviq-details a[href^="/contract-vehicles/"] span {
    color: var(--red);
    font-size: 13px;
    line-height: 1
}

@media (width<=600px) {
    main h1,main h2,main h3 {
        text-wrap: balance;
        max-width: 100%
    }

    .goviq-detail-story h2,.ai-detail-story h2,.service-body h2 {
        font-size: clamp(34px,10vw,48px)
    }
}

.financial-risk-practices .goviq-detail-story>a {
    letter-spacing: .07em;
    text-transform: uppercase;
    align-items: center;
    gap: 7px;
    margin-top: 18px;
    font-size: 9px;
    font-weight: 800;
    line-height: 1.3;
    display: inline-flex
}

.financial-risk-practices .goviq-detail-story>a span {
    color: var(--red);
    font-size: 13px;
    line-height: 1
}

.goviq-detail-lists,.ai-detail-lists {
    overflow: visible
}

.goviq-detail-lists>div,.ai-detail-lists>div {
    min-width: 0
}

.goviq-detail-lists li,.ai-detail-lists li,#prime-contracts .goviq-detail-lists li,#teaming-agreements .goviq-detail-lists li {
    white-space: normal;
    text-wrap: pretty;
    word-break: normal;
    overflow-wrap: break-word;
    grid-template-columns: auto minmax(0,1fr);
    align-items: start;
    column-gap: 12px;
    display: grid
}

.goviq-detail-lists li:before,.ai-detail-lists li:before {
    line-height: inherit;
    margin-right: 0
}

.site-header>.brand-lockup {
    letter-spacing: 0;
    flex: none;
    align-items: center;
    gap: 11px;
    width: auto;
    height: 43px;
    background: 0 0!important;
    font-size: 0!important;
    display: flex!important
}

.site-header .brand-lockup .logo-mark {
    background: url(/4ci-logo.jpg) 50%/cover no-repeat;
    flex: none;
    width: 76px;
    height: 43px;
    display: block
}

.site-header .brand-lockup .logo-values {
    min-width: 84px;
    height: 43px;
    color: var(--ink);
    letter-spacing: .105em;
    text-transform: uppercase;
    text-rendering: geometricprecision;
    -webkit-font-smoothing: antialiased;
    grid-template-rows: repeat(3,1fr);
    align-items: center;
    font-size: 8.5px;
    font-weight: 900;
    line-height: 1;
    display: grid!important
}

.site-header .brand-lockup .logo-values span {
    color: inherit;
    display: block
}

.why .why-grid {
    border: 1px solid #3b474a;
    border-top: 4px solid var(--red);
    background: #202c31;
    gap: 0
}

.why .why-grid article {
    color: #fff;
    min-height: 360px;
    box-shadow: none;
    background: #202c31;
    flex-direction: column;
    padding: 34px 28px 30px;
    transition: background .25s;
    display: flex;
    border: 0!important;
    border-right: 1px solid #3b474a!important
}

.why .why-grid article:last-child {
    border-right: 0!important
}

.why .why-grid article:hover {
    box-shadow: none;
    background: #25343a;
    transform: none
}

.why .why-grid span {
    color: var(--red);
    font-weight: 800
}

.why .why-grid h3 {
    color: #fff;
    margin: 64px 0 0;
    font-size: clamp(25px,2.15vw,35px);
    line-height: 1.1
}

.why .why-grid p {
    color: #b8c6ca;
    margin-top: 28px;
    font-size: 14px;
    line-height: 1.7
}

.why .why-grid article:after {
    content: "VIEW OVERVIEW  ↓";
    color: #fff;
    letter-spacing: .02em;
    text-transform: uppercase;
    margin-top: auto;
    font-size: 11px;
    font-weight: 900
}

.why .why-grid article:hover:after {
    color: #fff
}

:is(.workforce-solutions-page,.business-process-services-page,.advisory-transformation-page) .category-jump {
    border: 1px solid #3b474a;
    border-top: 4px solid var(--red);
    background: #202c31;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 0
}

:is(.workforce-solutions-page,.business-process-services-page,.advisory-transformation-page) .category-jump a {
    min-height: 360px;
    box-shadow: none;
    background: #202c31;
    border-radius: 0;
    flex-direction: column;
    justify-content: flex-start;
    padding: 34px 28px 30px;
    transition: background .25s;
    display: flex;
    border: 1px solid #3b474a!important;
    border-top: 0!important;
    border-left: 0!important
}

:is(.workforce-solutions-page,.business-process-services-page,.advisory-transformation-page) .category-jump a:hover {
    box-shadow: none;
    background: #25343a;
    transform: none;
    border-color: #3b474a!important
}

:is(.workforce-solutions-page,.business-process-services-page,.advisory-transformation-page) .category-jump a>span {
    color: var(--red);
    margin: 0;
    font-size: 10px;
    font-weight: 800
}

:is(.workforce-solutions-page,.business-process-services-page,.advisory-transformation-page) .category-jump strong {
    color: #fff;
    margin-top: 64px;
    font-size: clamp(25px,2.15vw,35px);
    font-weight: 500;
    line-height: 1.1;
    display: block
}

:is(.workforce-solutions-page,.business-process-services-page,.advisory-transformation-page) .category-jump p {
    color: #b8c6ca;
    margin: 28px 0 0;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.7;
    display: block
}

:is(.workforce-solutions-page,.business-process-services-page,.advisory-transformation-page) .category-jump b {
    color: #fff;
    text-transform: uppercase;
    letter-spacing: .02em;
    margin-top: auto;
    font-size: 11px;
    font-weight: 900
}

:is(.workforce-solutions-page,.business-process-services-page,.advisory-transformation-page) .category-jump b span {
    color: var(--red);
    margin-left: 12px;
    font-size: 14px
}

@media (width<=1000px) {
    : is(.workforce-solutions-page,.business-process-services-page,.advisory-transformation-page) .category-jump {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }

    .why .why-grid {
        grid-template-columns: repeat(2,1fr)
    }
}

@media (width<=600px) {
    : is(.workforce-solutions-page,.business-process-services-page,.advisory-transformation-page) .category-jump,.why .why-grid {
        grid-template-columns:1fr
    }

    .why .why-grid article,:is(.workforce-solutions-page,.business-process-services-page,.advisory-transformation-page) .category-jump a {
        min-height: 300px;
        border-right: 0!important
    }
}

.why .why-grid {
    border-top-width: 3px
}

.why .why-grid article {
    min-height: 245px;
    padding: 24px 22px 22px
}

.why .why-grid span {
    font-size: 9px
}

.why .why-grid h3 {
    margin-top: 34px;
    font-size: clamp(18px,1.5vw,24px);
    line-height: 1.16
}

.why .why-grid p {
    margin-top: 18px;
    font-size: 12px;
    line-height: 1.6
}

.why .why-grid article:after {
    font-size: 9px
}

:is(.workforce-solutions-page,.business-process-services-page,.advisory-transformation-page) .category-jump {
    border-top-width: 3px
}

:is(.workforce-solutions-page,.business-process-services-page,.advisory-transformation-page) .category-jump a {
    min-height: 245px;
    padding: 24px 22px 22px
}

:is(.workforce-solutions-page,.business-process-services-page,.advisory-transformation-page) .category-jump a>span {
    font-size: 9px
}

:is(.workforce-solutions-page,.business-process-services-page,.advisory-transformation-page) .category-jump strong {
    margin-top: 34px;
    font-size: clamp(18px,1.5vw,24px);
    font-weight: 600;
    line-height: 1.16
}

:is(.workforce-solutions-page,.business-process-services-page,.advisory-transformation-page) .category-jump p {
    margin-top: 18px;
    font-size: 12px;
    line-height: 1.6
}

:is(.workforce-solutions-page,.business-process-services-page,.advisory-transformation-page) .category-jump b {
    white-space: nowrap;
    align-items: center;
    gap: 10px;
    font-size: 9px;
    display: inline-flex
}

:is(.workforce-solutions-page,.business-process-services-page,.advisory-transformation-page) .category-jump b span {
    margin-left: 0;
    font-size: 12px;
    line-height: 1
}

@media (width<=600px) {
    .why .why-grid article,: is(.workforce-solutions-page,.business-process-services-page,.advisory-transformation-page) .category-jump a {
        min-height:220px
    }
}

.why .why-grid {
    background: 0 0;
    border: 0;
    gap: 18px
}

.why .why-grid article,.why .why-grid article:last-child {
    border: 1px solid #3b474a!important
}

:is(.workforce-solutions-page,.business-process-services-page,.advisory-transformation-page) .category-jump {
    background: 0 0;
    border: 0;
    gap: 18px
}

:is(.workforce-solutions-page,.business-process-services-page,.advisory-transformation-page) .category-jump a {
    border: 1px solid #3b474a!important;
    border-top: 1px solid var(--red)!important
}

@media (width<=600px) {
    .why .why-grid,: is(.workforce-solutions-page,.business-process-services-page,.advisory-transformation-page) .category-jump {
        gap:14px
    }
}

.why .why-grid .why-card {
    color: #fff;
    min-height: 245px;
    box-shadow: none;
    background: #202c31;
    flex-direction: column;
    padding: 24px 22px 22px;
    transition: background .25s;
    display: flex;
    border: 1px solid #3b474a!important
}

.why .why-grid a.why-card:hover,.why .why-grid article.why-card:hover {
    box-shadow: none;
    background: #25343a;
    transform: none
}

.why .why-grid a.why-card strong {
    color: #fff;
    letter-spacing: .02em;
    text-transform: uppercase;
    margin-top: auto;
    font-size: 9px;
    font-weight: 900
}

.why .why-grid a.why-card strong span {
    color: var(--red);
    margin-left: 6px;
    font-size: 10px
}

.why .why-grid a.why-card:after {
    content: none!important
}

.domain-expertise-page,.domain-detail-page {
    background: var(--warm);
    color: var(--ink);
    min-height: 100vh
}

.domain-hero,.domain-detail-hero {
    color: #fff;
    background: #192428;
    padding: 9vw 7vw 8vw;
    position: relative;
    overflow: hidden
}

.domain-hero:after,.domain-detail-hero:after {
    content: "";
    border: 1px solid #ffffff1f;
    border-radius: 50%;
    width: 42vw;
    height: 42vw;
    position: absolute;
    top: -12vw;
    right: -12vw;
    box-shadow: 0 0 0 9vw #ffffff08,0 0 0 18vw #e3322a12
}

.domain-hero h1,.domain-detail-hero h1 {
    letter-spacing: -.055em;
    z-index: 1;
    max-width: 920px;
    margin: 0;
    font-size: clamp(44px,6vw,86px);
    line-height: 1;
    position: relative
}

.domain-hero h1 em {
    color: #aeb8bb;
    font-style: normal
}

.domain-hero p:not(.eyebrow),.domain-detail-hero p:not(.eyebrow) {
    color: #bfd0d4;
    z-index: 1;
    max-width: 760px;
    margin: 30px 0 0;
    font-size: 17px;
    line-height: 1.75;
    position: relative
}

.domain-intro,.domain-detail-overview {
    grid-template-columns: .95fr 1.05fr;
    align-items: start;
    gap: 7vw;
    padding: 7vw;
    display: grid
}

.domain-intro h2,.domain-detail-overview h2,.domain-detail-grid-section h2 {
    letter-spacing: -.045em;
    margin: 0;
    font-size: clamp(30px,4vw,54px);
    line-height: 1.05
}

.domain-intro p:not(.eyebrow),.domain-detail-overview p {
    color: var(--muted);
    margin-top: 0;
    font-size: 16px;
    line-height: 1.8
}

.domain-card-section {
    padding: 0 7vw 8vw
}

.domain-card-grid {
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 22px;
    display: grid
}

.domain-card {
    color: #fff;
    background: #202c31;
    border: 1px solid #3b474a;
    flex-direction: column;
    min-height: 340px;
    padding: 32px 28px;
    transition: all .22s;
    display: flex
}

.domain-card.red-top {
    border-top: 1px solid var(--red)
}

.domain-card:hover {
    background: #25343a;
    transform: translateY(-2px)
}

.domain-card span,.domain-outcomes span {
    color: var(--red);
    font-size: 10px;
    font-weight: 900
}

.domain-card h2 {
    letter-spacing: -.04em;
    margin: 48px 0 0;
    font-size: clamp(25px,2.2vw,34px);
    line-height: 1.12
}

.domain-card p {
    color: #b8c6ca;
    margin: 22px 0 0;
    font-size: 14px;
    line-height: 1.7
}

.domain-card strong {
    color: #fff;
    text-transform: uppercase;
    letter-spacing: .02em;
    margin-top: auto;
    font-size: 11px
}

.domain-card strong span,.domain-next .text-link span {
    color: var(--red);
    margin-left: 6px
}

.domain-detail-dark {
    color: #fff;
    background: #172022;
    padding: 7vw
}

.domain-detail-dark .section-heading {
    margin-bottom: 40px
}

.domain-detail-dark h2 {
    color: #fff
}

.domain-detail-dark h2 em {
    color: #aeb8bb
}

.domain-labels {
    flex-wrap: wrap;
    gap: 12px;
    display: flex
}

.domain-labels span {
    color: #fff;
    background: #202c31;
    border: 1px solid #3b474a;
    padding: 12px 14px;
    font-size: 12px
}

.domain-detail-grid-section {
    grid-template-columns: .8fr 1.2fr;
    gap: 7vw;
    padding: 7vw;
    display: grid
}

.domain-skill-list {
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 10px;
    display: grid
}

.domain-skill-list span {
    color: #222;
    border-bottom: 1px solid #c8c2ba;
    padding: 15px 0;
    font-size: 14px
}

.domain-skill-list span:first-letter {
    color: var(--red)
}

.domain-outcomes {
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 22px;
    padding: 0 7vw 7vw;
    display: grid
}

.domain-outcomes article {
    background: #fff;
    border: 1px solid #d8d3cc;
    min-height: 190px;
    padding: 30px
}

.domain-outcomes p {
    color: #45413d;
    margin: 38px 0 0;
    font-size: 18px;
    line-height: 1.55
}

.domain-next {
    justify-content: space-between;
    align-items: center;
    gap: 24px;
    padding: 0 7vw 8vw;
    display: flex
}

@media (width<=1000px) {
    .domain-card-grid {
        grid-template-columns: repeat(2,minmax(0,1fr))
    }

    .domain-intro,.domain-detail-overview,.domain-detail-grid-section,.domain-outcomes {
        grid-template-columns: 1fr
    }
}

@media (width<=650px) {
    .domain-hero,.domain-detail-hero,.domain-intro,.domain-detail-overview,.domain-detail-dark,.domain-detail-grid-section,.domain-card-section,.domain-outcomes,.domain-next {
        padding-left: 6vw;
        padding-right: 6vw
    }

    .domain-card-grid,.domain-skill-list {
        grid-template-columns: 1fr
    }

    .domain-next {
        flex-direction: column;
        align-items: flex-start
    }
}

.ta-practices>.ta-practice-grid {
    background: 0 0;
    border: 0;
    gap: 18px
}

.ta-practices>.ta-practice-grid article {
    background: #202c31;
    border: 1px solid #3b474a!important
}

@media (width<=600px) {
    .ta-practices>.ta-practice-grid {
        gap: 14px
    }
}

.ta-talent-groups {
    gap: 18px;
    background: 0 0!important;
    border: 0!important
}

.ta-talent-groups article {
    background: #202c31!important;
    border: 1px solid #3b474a!important
}

.ta-talent-groups ul,.ta-practices>.pm-talent-grid ul {
    flex-wrap: wrap;
    gap: 8px;
    border: 0!important;
    margin: 0!important;
    padding: 0!important;
    display: flex!important
}

.ta-talent-groups ul:before,.ta-practices>.pm-talent-grid ul:before {
    content: "Skills supported";
    letter-spacing: .14em;
    text-transform: uppercase;
    flex: 0 0 100%;
    font-weight: 800;
    display: block;
    min-height: 0!important;
    color: var(--red)!important;
    margin: 26px 0 4px!important;
    font-size: 9px!important
}

.ta-talent-groups li,.ta-practices>.pm-talent-grid li {
    background: #ffffff0a;
    border-radius: 8px;
    color: #d4dcde!important;
    border: 1px solid #ffffff1f!important;
    padding: 8px 10px!important;
    font-size: 10px!important;
    line-height: 1.25!important
}

.ta-talent-groups li:nth-child(odd),.ta-talent-groups li:nth-child(2n),.ta-practices>.pm-talent-grid li:nth-child(odd),.ta-practices>.pm-talent-grid li:nth-child(2n) {
    border-right: 1px solid #ffffff1f!important;
    padding: 8px 10px!important
}

@media (width<=600px) {
    .ta-talent-groups {
        gap: 14px
    }
}

.ta-model-card-grid {
    grid-template-columns: repeat(3,1fr);
    gap: 14px;
    margin: 34px 0 0;
    display: grid
}

.ta-model-card-grid article {
    background: #fff;
    border: 1px solid #cfc9bf;
    min-height: 132px;
    padding: 20px 20px 22px
}

.ta-model-card-grid h3 {
    letter-spacing: -.02em;
    color: #171717;
    margin: 0 0 14px;
    font-size: 18px;
    line-height: 1.18
}

.ta-model-card-grid p {
    color: var(--muted)!important;
    margin: 0!important;
    font-size: 11px!important;
    line-height: 1.55!important
}

@media (width<=900px) {
    .ta-model-card-grid {
        grid-template-columns: repeat(2,1fr)
    }
}

@media (width<=600px) {
    .ta-model-card-grid {
        grid-template-columns: 1fr;
        gap: 12px
    }

    .ta-model-card-grid article {
        min-height: 0
    }
}

.ta-tech-grid {
    border: 0!important;
    gap: 16px!important
}

.ta-tech-grid span {
    align-items: flex-start;
    min-height: 112px;
    display: flex;
    color: #fff!important;
    background: #1f292d!important;
    border: 1px solid #ffffff20!important;
    padding: 24px!important;
    font-size: 13px!important;
    line-height: 1.35!important
}

@media (width<=600px) {
    .ta-tech-grid {
        gap: 12px!important
    }

    .ta-tech-grid span {
        min-height: 0;
        padding: 20px!important
    }
}

.technology-context-section {
    align-items: start
}

.technology-context-panel {
    padding: 0
}

.technology-context-copy {
    border-bottom: 1px solid #ffffff1f;
    max-width: 900px;
    margin-bottom: 24px;
    padding-bottom: 26px
}

.technology-context-copy h3 {
    letter-spacing: -.04em;
    color: #fff;
    margin: 0 0 16px;
    font-size: clamp(25px,2.4vw,38px);
    line-height: 1.08
}

.technology-context-copy p {
    color: #b8c2c5;
    margin: 0;
    font-size: 13px;
    line-height: 1.75
}

.technology-label-list {
    flex-wrap: wrap;
    gap: 9px;
    display: flex
}

.technology-label-list span {
    color: #fff;
    background: #ffffff08;
    border: 1px solid #fff2;
    padding: 10px 13px;
    font-size: 11px;
    line-height: 1.1
}

@media (width<=600px) {
    .technology-context-panel {
        padding: 24px
    }

    .technology-label-list span {
        padding: 9px 11px;
        font-size: 10px
    }
}

.context-label-panel {
    border-top: 1px solid #ffffff24;
    padding-top: 26px
}

.context-label-panel h3 {
    letter-spacing: -.04em;
    margin: 0 0 14px;
    font-size: clamp(23px,2.2vw,34px);
    line-height: 1.12
}

.context-label-panel p {
    margin: 0 0 22px;
    font-size: 13px;
    line-height: 1.75
}

.context-label-list {
    flex-wrap: wrap;
    gap: 9px;
    display: flex
}

.context-label-list span {
    color: #fff;
    background: #ffffff08;
    border: 1px solid #ffffff24;
    align-items: center;
    padding: 10px 13px;
    font-size: 11px;
    line-height: 1.15;
    display: inline-flex
}

.context-label-panel.light {
    border-color: #d7d1c8
}

.context-label-panel.light p {
    color: var(--muted)
}

.context-label-panel.light .context-label-list span {
    color: #171717;
    background: #fff;
    border-color: #d8d1c7
}

.context-label-panel.red {
    border-color: #fff5
}

.context-label-panel.red p {
    color: #f2cac7
}

.context-label-panel.red .context-label-list span {
    color: #fff;
    background: #ffffff12;
    border-color: #ffffff45
}

.context-label-panel.dark p {
    color: #b8c2c5
}

.context-label-panel.dark .context-label-list span {
    color: #fff;
    background: #ffffff08;
    border-color: #ffffff24
}

@media (width<=600px) {
    .context-label-panel {
        padding-top: 22px
    }

    .context-label-list span {
        padding: 9px 11px;
        font-size: 10px
    }
}

.frc-practice-cards {
    gap: 18px;
    background: 0 0!important;
    border: 0!important
}

.frc-practice-cards article {
    min-height: 300px;
    background: #1f292d!important;
    border: 1px solid #ffffff20!important
}

.frc-practice-cards article h3 {
    max-width: 360px
}

.frc-practice-cards article p {
    max-width: 420px
}

@media (width<=600px) {
    .frc-practice-cards {
        gap: 14px
    }

    .frc-practice-cards article {
        min-height: 250px
    }
}

.eyebrow.light {
    max-width: 100%;
    padding-left: 38px;
    display: inline-block;
    position: relative
}

.eyebrow.light:before {
    margin-right: 0;
    position: absolute;
    top: .62em;
    left: 0
}

.goviq-contact-grid {
    background: 0 0!important;
    border: 0!important;
    gap: 18px!important
}

.goviq-contact-card {
    border: 1px solid #fff2!important;
    border-top: 1px solid var(--red)!important;
    background: #202f35!important
}

.goviq-primary-contact {
    background: #26383f!important
}

.missiongoviq-contact-grid {
    grid-template-columns: repeat(3,minmax(0,1fr))!important
}

.missiongoviq-contact-grid .goviq-contact-card {
    grid-template-columns: 84px 1fr;
    gap: 18px;
    min-height: 310px;
    padding: 22px
}

.missiongoviq-contact-grid .goviq-contact-card img {
    width: 84px;
    height: 84px
}

.single-profile-grid {
    max-width: 760px
}

@media (width<=1180px) {
    .missiongoviq-contact-grid {
        grid-template-columns: 1fr!important
    }

    .missiongoviq-contact-grid .goviq-contact-card {
        min-height: 240px
    }
}

@media (width<=600px) {
    .goviq-contact-grid {
        gap: 14px!important
    }
}

.goviq-card-grid,.goviq-overview .goviq-card-grid {
    background: 0 0!important;
    border: 0!important;
    gap: 18px!important
}

.goviq-card-grid article,.goviq-overview .goviq-card-grid article {
    border: 1px solid #fff2!important;
    border-top: 1px solid var(--red)!important;
    background: #202c31!important
}

@media (width<=600px) {
    .goviq-overview .goviq-card-grid {
        gap: 14px!important
    }
}

.goviq-detail-story .practice-group-link {
    color: inherit;
    text-transform: uppercase;
    letter-spacing: .08em;
    background: 0 0;
    border-bottom: 1px solid;
    align-items: center;
    gap: 8px;
    margin-top: 22px;
    padding-bottom: 7px;
    font-size: 10px;
    font-weight: 800;
    display: inline-flex
}

.goviq-detail-story .practice-group-link span {
    color: var(--red);
    font-size: 13px;
    line-height: 1
}

.sharp-hero .sharp-jump {
    border-top: 0;
    grid-template-columns: repeat(3,1fr);
    gap: 14px;
    margin-top: 44px
}

.sharp-hero .sharp-jump a {
    border: 1px solid #fff2;
    border-top: 1px solid var(--red);
    background: #202c31cc;
    flex-direction: column;
    min-height: 128px;
    padding: 18px 18px 20px;
    font-size: 11px;
    font-weight: 700;
    display: flex
}

.sharp-hero .sharp-jump span {
    margin-bottom: 18px
}

.sharp-hero .sharp-jump strong {
    color: #fff;
    font-size: 13px;
    line-height: 1.25
}

.sharp-hero .sharp-jump p {
    color: #b8c2c5;
    margin: 14px 0 0;
    font-size: 10px;
    font-weight: 400;
    line-height: 1.5
}

@media (width<=900px) {
    .sharp-hero .sharp-jump {
        grid-template-columns: repeat(2,1fr)
    }
}

@media (width<=600px) {
    .sharp-hero .sharp-jump {
        grid-template-columns: 1fr;
        gap: 12px
    }

    .sharp-hero .sharp-jump a {
        min-height: 0
    }
}

.sharp-detail-card-grid {
    grid-template-columns: repeat(2,1fr);
    gap: 16px;
    display: grid
}

.sharp-detail-card-grid article {
    background: #fff;
    border: 1px solid #d3cdc4;
    min-height: 150px;
    padding: 22px
}

.sharp-detail-card-grid h3 {
    color: #171717;
    letter-spacing: -.01em;
    margin: 0 0 14px;
    font-size: 15px;
    line-height: 1.35
}

.sharp-detail-card-grid p {
    color: var(--muted);
    margin: 0;
    font-size: 11px;
    line-height: 1.65
}

@media (width<=700px) {
    .sharp-detail-card-grid {
        grid-template-columns: 1fr
    }

    .sharp-detail-card-grid article {
        min-height: 0
    }
}

.about-hero .about-jump {
    border-top: 0;
    grid-template-columns: repeat(4,1fr);
    gap: 14px;
    margin-top: 44px
}

.about-hero .about-jump a {
    border: 1px solid #fff2;
    border-top: 1px solid var(--red);
    background: #202c31cc;
    flex-direction: column;
    min-height: 132px;
    padding: 18px 18px 20px;
    font-size: 11px;
    font-weight: 700;
    display: flex
}

.about-hero .about-jump span {
    margin-bottom: 18px
}

.about-hero .about-jump strong {
    color: #fff;
    font-size: 13px;
    line-height: 1.25
}

.about-hero .about-jump p {
    color: #b8c2c5;
    margin: 14px 0 0;
    font-size: 10px;
    font-weight: 400;
    line-height: 1.5
}

@media (width<=1100px) {
    .about-hero .about-jump {
        grid-template-columns: repeat(3,1fr)
    }
}

@media (width<=800px) {
    .about-hero .about-jump {
        grid-template-columns: repeat(2,1fr)
    }
}

@media (width<=600px) {
    .about-hero .about-jump {
        grid-template-columns: 1fr;
        gap: 12px
    }

    .about-hero .about-jump a {
        min-height: 0
    }
}

.values-section .value-grid {
    border-top: 0!important;
    gap: 18px!important
}

.values-section .value-grid article {
    min-height: 310px;
    background: #202c31!important;
    border: 1px solid #fff2!important;
    padding: 30px!important
}

.values-section .value-grid article:last-child {
    border-right: 1px solid #fff2!important
}

@media (width<=900px) {
    .values-section .value-grid {
        gap: 14px!important
    }

    .values-section .value-grid article {
        min-height: 0
    }
}

.eeo-section .eeo-principles {
    border-top: 0!important;
    gap: 18px!important
}

.eeo-section .eeo-principles article {
    min-height: 230px;
    background: #263238!important;
    border: 1px solid #fff2!important;
    padding: 26px 24px!important
}

.eeo-section .eeo-principles article:nth-child(odd),.eeo-section .eeo-principles article:nth-child(2n) {
    border-right: 1px solid #fff2!important;
    padding: 26px 24px!important
}

@media (width<=600px) {
    .eeo-section .eeo-principles {
        gap: 14px!important
    }

    .eeo-section .eeo-principles article,.eeo-section .eeo-principles article:nth-child(odd),.eeo-section .eeo-principles article:nth-child(2n) {
        min-height: 0;
        padding: 22px!important
    }
}

.impact-principles .impact-principle-grid {
    border-top: 0!important;
    gap: 18px!important
}

.impact-principles .impact-principle-grid article {
    min-height: 250px;
    background: #fff!important;
    border: 1px solid #d3cdc4!important;
    padding: 30px 28px!important
}

.impact-principles .impact-principle-grid article:last-child {
    border-right: 1px solid #d3cdc4!important
}

@media (width<=900px) {
    .impact-principles .impact-principle-grid {
        gap: 14px!important
    }

    .impact-principles .impact-principle-grid article {
        min-height: 0
    }
}

.industries-hero .industries-jump {
    border-top: 0!important;
    grid-template-columns: repeat(4,1fr)!important;
    gap: 18px!important
}

.industries-hero .industries-jump a {
    min-height: 190px;
    border: 1px solid #fff2!important;
    border-top: 1px solid var(--red)!important;
    background: #1d1d1dcc!important;
    flex-direction: column!important;
    padding: 22px!important;
    font-size: 11px!important;
    font-weight: 700!important;
    display: flex!important
}

.industries-hero .industries-jump strong {
    color: #fff;
    margin: 34px 0 12px;
    font-size: 15px;
    line-height: 1.35;
    display: block
}

.industries-hero .industries-jump p {
    color: #aeb7ba;
    margin: 0;
    font-size: 12px;
    font-weight: 500;
    line-height: 1.6
}

@media (width<=1100px) {
    .industries-hero .industries-jump {
        grid-template-columns: 1fr 1fr!important
    }
}

@media (width<=600px) {
    .industries-hero .industries-jump {
        grid-template-columns: 1fr!important
    }

    .industries-hero .industries-jump a {
        min-height: 0
    }
}

.ghs-credentials .ghs-experience-grid {
    border-top: 0!important;
    gap: 18px!important
}

.ghs-credentials .ghs-experience-grid article {
    min-height: 230px;
    background: #1d1d1d!important;
    border: 1px solid #fff2!important;
    padding: 28px 24px!important
}

.ghs-credentials .ghs-experience-grid strong {
    margin-bottom: 18px!important;
    font-size: 34px!important
}

.ghs-credentials .ghs-experience-grid span {
    color: #d6dde0!important;
    font-size: 12px!important;
    line-height: 1.5!important
}

.ghs-credentials .ghs-experience-grid p {
    color: #9fa9ad;
    margin: 18px 0 0;
    font-size: 12px;
    line-height: 1.65
}

@media (width<=900px) {
    .ghs-credentials .ghs-experience-grid {
        gap: 14px!important
    }

    .ghs-credentials .ghs-experience-grid article {
        min-height: 0
    }
}

.ghs-hhs .ghs-hhs-grid {
    border-top: 0!important;
    gap: 18px!important
}

.ghs-hhs .ghs-hhs-grid article {
    min-height: 0;
    background: #1f1f1f!important;
    border: 1px solid #fff2!important;
    padding: 24px!important
}

.ghs-hhs .ghs-hhs-grid article:nth-child(odd),.ghs-hhs .ghs-hhs-grid article:nth-child(2n) {
    border-right: 1px solid #fff2!important;
    padding: 24px!important
}

.ghs-hhs .ghs-hhs-grid h3 {
    margin: 22px 0 10px!important;
    font-size: 22px!important
}

.ghs-hhs .ghs-hhs-grid p {
    margin: 0;
    font-size: 13px!important;
    line-height: 1.65!important
}

.ghs-hhs .ghs-hhs-grid ul {
    margin: 18px 0 0!important
}

.ghs-hhs .ghs-hhs-grid li {
    padding: 8px 0!important;
    font-size: 10px!important;
    line-height: 1.45!important
}

@media (width<=900px) {
    .ghs-hhs .ghs-hhs-grid {
        gap: 14px!important
    }

    .ghs-hhs .ghs-hhs-grid article:nth-child(odd),.ghs-hhs .ghs-hhs-grid article:nth-child(2n) {
        padding: 22px!important
    }
}

.ghs-process .ghs-process-grid {
    border-top: 0!important;
    gap: 16px!important
}

.ghs-process .ghs-process-grid article {
    min-height: 220px;
    background: #fff!important;
    border: 1px solid #d3cdc4!important;
    padding: 22px!important
}

.ghs-process .ghs-process-grid h3 {
    font-size: 20px;
    margin: 32px 0 14px!important
}

.ghs-process .ghs-process-grid p {
    color: var(--muted);
    margin: 0 0 12px;
    font-size: 11px;
    line-height: 1.65
}

.ghs-process .ghs-process-grid p:last-child {
    color: #5f5b56;
    margin-bottom: 0
}

@media (width<=900px) {
    .ghs-process .ghs-process-grid {
        grid-template-columns: 1fr 1fr!important;
        gap: 14px!important
    }

    .ghs-process .ghs-process-grid article {
        min-height: 0
    }
}

@media (width<=600px) {
    .ghs-process .ghs-process-grid {
        grid-template-columns: 1fr!important
    }
}

.cs-index {
    grid-template-columns: repeat(4,1fr)!important;
    gap: 16px!important;
    padding: 0 8vw 7vw!important
}

.cs-index a,.cs-index a:nth-child(4n),.cs-index a:nth-child(2n),.cs-index a:last-child {
    background: #fff!important;
    border: 1px solid #d3cdc4!important;
    min-height: 245px!important;
    padding: 22px!important
}

.cs-index strong {
    letter-spacing: -.03em;
    margin: 34px 0 16px!important;
    font-size: 20px!important;
    line-height: 1.18!important
}

.cs-index p {
    color: var(--muted);
    margin: 0 0 18px;
    font-size: 12px;
    line-height: 1.6
}

.cs-index small {
    color: #888!important;
    margin-top: auto!important;
    font-size: 9px!important;
    line-height: 1.35!important
}

@media (width<=1100px) {
    .cs-index {
        grid-template-columns: repeat(3,1fr)!important
    }
}

@media (width<=800px) {
    .cs-index {
        grid-template-columns: repeat(2,1fr)!important
    }
}

@media (width<=600px) {
    .cs-index {
        grid-template-columns: 1fr!important;
        padding: 0 7vw 70px!important
    }

    .cs-index a,.cs-index a:nth-child(4n),.cs-index a:nth-child(2n),.cs-index a:last-child {
        min-height: 0!important
    }
}

.diversity-page-certifications .certification-grid {
    border-top: 0!important;
    gap: 16px!important
}

.diversity-page-certifications .certification-grid article {
    min-height: 250px;
    background: #fff!important;
    border: 1px solid #d3cdc4!important;
    padding: 24px!important
}

.diversity-page-certifications .certification-grid h3 {
    margin: 38px 0 16px!important;
    font-size: 24px!important;
    line-height: 1.2!important
}

.diversity-page-certifications .certification-grid p {
    margin: 0 0 12px!important;
    font-size: 12px!important;
    line-height: 1.65!important
}

.diversity-page-certifications .certification-grid p:last-child {
    color: #5f5b56!important;
    margin-bottom: 0!important
}

@media (width<=700px) {
    .diversity-page-certifications .certification-grid {
        grid-template-columns: 1fr!important;
        gap: 14px!important
    }

    .diversity-page-certifications .certification-grid article {
        min-height: 0!important
    }
}

.accolades-grid {
    background: #1b272c!important;
    gap: 18px!important
}

.accolades-grid article,.accolades-grid article:nth-child(2n) {
    background: #202c31!important;
    border: 1px solid #fff2!important;
    min-height: 390px!important
}

@media (width<=800px) {
    .accolades-grid {
        gap: 14px!important
    }

    .accolades-grid article,.accolades-grid article:nth-child(2n) {
        min-height: 0!important
    }
}

.credentials-band {
    align-items: start!important
}

.credentials-band .credential-stats {
    border-top: 0!important;
    gap: 16px!important
}

.credentials-band .credential-stats article {
    min-height: 220px;
    background: #202c31!important;
    border: 1px solid #fff2!important;
    padding: 28px 26px!important
}

.credentials-band .credential-stats strong {
    color: #fff!important;
    font-size: 44px!important;
    line-height: 1!important
}

.credentials-band .credential-stats span {
    color: #d4dde0!important;
    margin-top: 24px!important;
    font-size: 14px!important;
    line-height: 1.4!important
}

.credentials-band .credential-stats p {
    color: #9fa9ad;
    margin: 16px 0 0;
    font-size: 11px;
    line-height: 1.65
}

@media (width<=900px) {
    .credentials-band .credential-stats {
        gap: 14px!important
    }

    .credentials-band .credential-stats article {
        min-height: 0!important
    }
}

.government .capability-grid {
    border-top: 0!important;
    gap: 16px!important
}

.government .capability-grid div {
    min-height: 170px;
    background: #202c31!important;
    border: 1px solid #fff2!important;
    padding: 22px!important
}

.government .capability-grid strong {
    color: #fff;
    margin: 26px 0 12px;
    font-size: 15px;
    line-height: 1.25;
    display: block
}

.government .capability-grid p {
    color: #aeb8bb;
    margin: 0;
    font-size: 11px;
    line-height: 1.6
}

@media (width<=900px) {
    .government .capability-grid {
        grid-template-columns: repeat(2,1fr)!important;
        gap: 14px!important
    }

    .government .capability-grid div {
        min-height: 0!important
    }
}

@media (width<=600px) {
    .government .capability-grid {
        grid-template-columns: 1fr!important
    }
}

.hero-values-visual {
    z-index: 1;
    opacity: .92;
    pointer-events: none;
    width: min(47vw,620px);
    height: min(47vw,620px);
    position: absolute;
    top: 50%;
    right: 3vw;
    transform: translateY(-50%)
}

.hero .grid-lines {
    opacity: .035;
    -webkit-mask-image: linear-gradient(90deg,#000 0 46%,#00000057 64%,#0000 84%);
    mask-image: linear-gradient(90deg,#000 0 46%,#00000057 64%,#0000 84%)
}

.hero-values-visual {
    isolation: isolate
}

.hero-values-visual:before {
    content: "";
    z-index: -1;
    background: radial-gradient(circle,#191919 0 56%,#191919eb 68%,#1919198a 78%,#0000 100%);
    border-radius: 50%;
    position: absolute;
    inset: -8%
}

.hero-values-visual svg {
    width: 100%;
    height: 100%;
    display: block;
    overflow: visible
}

.values-center {
    fill: #fff;
    letter-spacing: -.055em;
    font-size: 54px;
    font-weight: 800
}

.values-node circle:first-child {
    fill: #181818;
    stroke: #fff;
    stroke-opacity: .24;
    stroke-width: .8px
}

.values-node circle:nth-child(2) {
    stroke-opacity: .44
}

.values-node path,.values-node circle:not(:first-child) {
    fill: none;
    stroke: #fff;
    stroke-width: 1.35px;
    stroke-opacity: .84;
    stroke-linecap: round;
    stroke-linejoin: round
}

.values-node-top circle:first-child {
    stroke: var(--red);
    stroke-opacity: .62
}

.values-node-top path {
    stroke: #fff
}

@media (width<=1050px) {
    .hero-values-visual {
        opacity: .45;
        width: 58vw;
        height: 58vw;
        right: -9vw
    }
}

@media (width<=760px) {
    .hero-values-visual {
        opacity: .24;
        width: 88vw;
        height: 88vw;
        top: 58%;
        right: -26vw
    }

    .hero-values-visual .values-node {
        display: none
    }
}

.sustainability-hero {
    color: #fff;
    background: #171717;
    flex-direction: column;
    justify-content: flex-end;
    min-height: 690px;
    padding: 10vw 8vw 7vw;
    display: flex;
    position: relative;
    overflow: hidden
}

.sustainability-hero h1 {
    letter-spacing: -.065em;
    z-index: 1;
    margin: 0;
    font-size: clamp(52px,6.3vw,92px);
    line-height: .98;
    position: relative
}

.sustainability-hero h1 em {
    color: #aaa;
    font-style: normal
}

.sustainability-hero>p {
    z-index: 1;
    position: relative
}

.sustainability-hero>p:last-child {
    color: #bbb;
    max-width: 790px;
    font-size: 16px;
    line-height: 1.85
}

.sustainability-orbit {
    border: 1px solid #e3322a55;
    border-radius: 50%;
    width: 570px;
    height: 570px;
    position: absolute;
    top: -150px;
    right: -110px;
    box-shadow: 0 0 0 105px #ffffff05,0 0 0 205px #ffffff03
}

.sustainability-intro {
    grid-template-columns: .42fr 1.58fr;
    gap: 7vw;
    padding: 9vw 8vw;
    display: grid
}

.sustainability-intro h2,.sustainability-section-head h2,.sustainability-workforce h2,.sustainability-future h2,.sustainability-promise h2 {
    letter-spacing: -.055em;
    margin: 0 0 30px;
    font-size: clamp(40px,4.8vw,68px);
    line-height: 1.03
}

.sustainability-intro h2 em,.sustainability-workforce h2 em,.sustainability-promise h2 em {
    color: #999;
    font-style: normal
}

.sustainability-intro div>p {
    max-width: 850px;
    color: var(--muted);
    line-height: 1.85
}

.sustainability-pillars {
    color: #fff;
    background: #202c31;
    padding: 8vw
}

.sustainability-section-head {
    grid-template-columns: .42fr 1.58fr;
    gap: 7vw;
    margin-bottom: 64px;
    display: grid
}

.sustainability-section-head h2 em,.sustainability-future h2 em {
    color: #9caaae;
    font-style: normal
}

.sustainability-card-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 18px;
    display: grid
}

.sustainability-card {
    background: #253238;
    border: 1px solid #ffffff20;
    flex-direction: column;
    min-height: 430px;
    padding: 30px;
    display: flex
}

.sustainability-card-redline {
    border-top: 1px solid var(--red)
}

.sustainability-card span,.sustainability-outcome-card span {
    color: var(--red);
    font-size: 10px;
    font-weight: 800
}

.sustainability-card h3 {
    letter-spacing: -.05em;
    margin: 46px 0 18px;
    font-size: clamp(28px,3vw,42px);
    line-height: 1.05
}

.sustainability-card p {
    color: #b5c0c3;
    max-width: 620px;
    font-size: 13px;
    line-height: 1.75
}

.sustainability-card ul {
    border-top: 1px solid #ffffff1f;
    margin: 24px 0 0;
    padding: 0;
    list-style: none
}

.sustainability-card li {
    color: #dce4e6;
    border-bottom: 1px solid #ffffff1a;
    padding: 11px 0 11px 22px;
    font-size: 12px;
    line-height: 1.45;
    position: relative
}

.sustainability-card li:before {
    content: "+";
    color: var(--red);
    font-weight: 800;
    position: absolute;
    left: 0
}

.sustainability-workforce {
    grid-template-columns: .7fr 1.3fr;
    gap: 7vw;
    padding: 9vw 8vw;
    display: grid
}

.sustainability-workforce>div:first-child>p:not(.eyebrow) {
    max-width: 620px;
    color: var(--muted);
    line-height: 1.85
}

.sustainability-outcome-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 18px;
    display: grid
}

.sustainability-outcome-card {
    background: #fff;
    border: 1px solid #d3cdc4;
    min-height: 210px;
    padding: 26px
}

.sustainability-outcome-card h3 {
    letter-spacing: -.035em;
    margin: 38px 0 16px;
    font-size: 22px;
    line-height: 1.18
}

.sustainability-outcome-card p {
    color: var(--muted);
    margin: 0;
    font-size: 12px;
    line-height: 1.7
}

.sustainability-future {
    color: #fff;
    background: #202c31;
    grid-template-columns: .42fr 1.58fr;
    gap: 7vw;
    padding: 9vw 8vw;
    display: grid
}

.sustainability-future div>p {
    color: #b5c0c3;
    max-width: 850px;
    line-height: 1.85
}

.sustainability-promise {
    background: #f5f2ec;
    padding: 9vw 8vw
}

.sustainability-promise p:not(.eyebrow) {
    max-width: 880px;
    color: var(--muted);
    line-height: 1.85
}

.sustainability-promise .sustainability-contact {
    margin-top: 22px;
    font-weight: 700;
    color: #242424!important
}

.sustainability-contact a {
    color: var(--red);
    border-bottom: 1px solid
}

.sustainability-promise>div {
    flex-wrap: wrap;
    align-items: center;
    gap: 28px;
    margin-top: 30px;
    display: flex
}

@media (width<=900px) {
    .sustainability-intro,.sustainability-section-head,.sustainability-workforce,.sustainability-future,.sustainability-card-grid,.sustainability-outcome-grid {
        grid-template-columns: 1fr
    }
}

@media (width<=650px) {
    .sustainability-hero {
        min-height: 610px;
        padding: 110px 7vw 65px
    }

    .sustainability-intro,.sustainability-pillars,.sustainability-workforce,.sustainability-future,.sustainability-promise {
        padding: 70px 7vw
    }

    .sustainability-card,.sustainability-outcome-card {
        min-height: 0
    }
}

.services-hero .services-jump {
    border-top: 0;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 18px
}

.services-hero .services-jump a {
    border: 1px solid #fff2;
    border-top: 1px solid var(--red);
    background: #202c31;
    flex-direction: column;
    min-height: 210px;
    padding: 24px 22px 22px;
    font-size: 11px;
    font-weight: 700;
    transition: background .2s,border-color .2s;
    display: flex
}

.services-hero .services-jump a:hover {
    border-color: #fff3;
    border-top-color: var(--red);
    background: #26343a
}

.services-hero .services-jump a>span {
    color: var(--red);
    margin: 0 0 30px;
    font-size: 9px;
    display: block
}

.services-hero .services-jump strong {
    color: #fff;
    font-size: clamp(18px,1.6vw,24px);
    font-weight: 650;
    line-height: 1.16;
    display: block
}

.services-hero .services-jump p {
    color: #b8c6ca;
    max-width: 310px;
    margin: 18px 0 0;
    font-size: 12px;
    line-height: 1.6
}

.services-hero .services-jump b {
    color: #fff;
    text-transform: uppercase;
    letter-spacing: .02em;
    align-items: center;
    gap: 10px;
    margin-top: auto;
    font-size: 9px;
    font-weight: 900;
    display: inline-flex
}

.services-hero .services-jump b i {
    color: var(--red);
    font-size: 12px;
    font-style: normal;
    line-height: 1
}

@media (width<=900px) {
    .services-hero .services-jump {
        grid-template-columns: 1fr 1fr
    }
}

@media (width<=600px) {
    .services-hero .services-jump {
        grid-template-columns: 1fr
    }

    .services-hero .services-jump a {
        min-height: 190px
    }
}

.case-label span {
    letter-spacing: .08em;
    text-transform: uppercase;
    margin-top: 10px;
    line-height: 1.5;
    display: block
}

.case-detail-hero {
    color: #fff;
    background: #17252b;
    flex-direction: column;
    justify-content: flex-end;
    min-height: 700px;
    padding: 10vw 8vw 7vw;
    display: flex;
    position: relative;
    overflow: hidden
}

.case-detail-hero:before {
    content: "";
    background-image: linear-gradient(#ffffff0a 1px,#0000 1px),linear-gradient(90deg,#ffffff0a 1px,#0000 1px);
    background-size: 90px 90px;
    position: absolute;
    inset: 0;
    -webkit-mask-image: linear-gradient(270deg,#000,#0000 78%);
    mask-image: linear-gradient(270deg,#000,#0000 78%)
}

.case-detail-mark {
    color: #ffffff05;
    letter-spacing: -.1em;
    font-size: 24vw;
    font-weight: 800;
    line-height: .8;
    position: absolute;
    bottom: -4vw;
    right: -2vw
}

.case-detail-hero h1 {
    letter-spacing: -.065em;
    z-index: 1;
    margin: 0;
    font-size: clamp(50px,6.5vw,96px);
    line-height: .96;
    position: relative
}

.case-detail-hero h1 em {
    color: #aeb8bb;
    font-style: normal
}

.case-detail-hero>p {
    z-index: 1;
    position: relative
}

.case-detail-hero>p:last-child {
    color: #bdc7ca;
    max-width: 830px;
    font-size: 16px;
    line-height: 1.8
}

.case-detail-summary {
    grid-template-columns: .42fr 1.58fr;
    gap: 7vw;
    padding: 9vw 8vw;
    display: grid
}

.case-detail-summary h2,.case-detail-section-head h2,.case-detail-programs h2,.case-detail-two-column h2 {
    letter-spacing: -.055em;
    margin: 0 0 30px;
    font-size: clamp(40px,4.8vw,68px);
    line-height: 1.03
}

.case-detail-summary h2 em,.case-detail-programs h2 em,.case-detail-two-column h2 em {
    color: #999;
    font-style: normal
}

.case-detail-summary div>p,.case-detail-programs div>p {
    max-width: 860px;
    color: var(--muted);
    line-height: 1.85
}

.case-detail-stats {
    grid-template-columns: repeat(4,1fr);
    gap: 16px;
    padding: 0 8vw 8vw;
    display: grid
}

.case-detail-stats article {
    background: #fff;
    border: 1px solid #d3cdc4;
    min-height: 230px;
    padding: 26px
}

.case-detail-stats span,.case-detail-card-grid article>span {
    color: var(--red);
    font-size: 9px;
    font-weight: 800
}

.case-detail-stats strong {
    letter-spacing: -.04em;
    margin: 34px 0 14px;
    font-size: 38px;
    line-height: 1;
    display: block
}

.case-detail-stats h3 {
    margin: 0 0 14px;
    font-size: 16px;
    line-height: 1.25
}

.case-detail-stats p {
    color: var(--muted);
    margin: 0;
    font-size: 12px;
    line-height: 1.65
}

.case-detail-dark {
    color: #fff;
    background: #202c31;
    padding: 8vw
}

.case-detail-section-head {
    grid-template-columns: .42fr 1.58fr;
    gap: 7vw;
    margin-bottom: 55px;
    display: grid
}

.case-detail-section-head h2 em {
    color: #9eabad;
    font-style: normal
}

.case-detail-card-grid {
    grid-template-columns: repeat(4,1fr);
    gap: 18px;
    display: grid
}

.case-detail-card-grid article {
    border: 1px solid #fff2;
    border-top: 1px solid var(--red);
    background: #202c31;
    min-height: 260px;
    padding: 26px
}

.case-detail-card-grid h3 {
    letter-spacing: -.03em;
    margin: 38px 0 15px;
    font-size: 21px;
    line-height: 1.2
}

.case-detail-card-grid p {
    color: #b7c2c5;
    margin: 0;
    font-size: 12px;
    line-height: 1.65
}

.case-detail-programs {
    grid-template-columns: .85fr 1.15fr;
    align-items: start;
    gap: 7vw;
    padding: 9vw 8vw;
    display: grid
}

.case-detail-labels,.case-detail-tech {
    flex-wrap: wrap;
    gap: 10px;
    display: flex
}

.case-detail-labels span,.case-detail-tech span {
    background: #fff;
    border: 1px solid #d3cdc4;
    align-items: center;
    min-height: 34px;
    padding: 8px 12px;
    font-size: 11px;
    font-weight: 800;
    line-height: 1.25;
    display: inline-flex
}

.case-detail-two-column {
    color: #fff;
    background: #17252b;
    grid-template-columns: 1fr 1fr;
    gap: 5vw;
    padding: 8vw;
    display: grid
}

.case-detail-two-column>div {
    background: #202c31;
    border: 1px solid #fff2;
    padding: 34px
}

.case-detail-two-column ul {
    margin: 28px 0 0;
    padding: 0;
    list-style: none
}

.case-detail-two-column li {
    color: #c0cbce;
    border-top: 1px solid #ffffff24;
    grid-template-columns: auto minmax(0,1fr);
    gap: 10px;
    padding: 10px 0;
    font-size: 12px;
    line-height: 1.45;
    display: grid
}

.case-detail-two-column li:before {
    content: "+";
    color: var(--red)
}

.case-detail-tech {
    margin-top: 28px
}

.case-detail-tech span {
    color: #fff;
    background: #17252b;
    border-color: #ffffff24
}

.case-detail-outcomes {
    padding: 8vw
}

.case-detail-card-grid.light article {
    background: #fff;
    border-color: currentColor #d3cdc4 #d3cdc4;
    border-top-style: none;
    border-top-width: 0;
    min-height: 230px
}

.case-detail-card-grid.light h3 {
    color: #171717
}

.case-detail-card-grid.light p {
    color: var(--muted)
}

@media (width<=1050px) {
    .case-detail-stats,.case-detail-card-grid {
        grid-template-columns: repeat(2,1fr)
    }

    .case-detail-programs,.case-detail-two-column {
        grid-template-columns: 1fr
    }
}

@media (width<=700px) {
    .case-detail-hero {
        min-height: 620px;
        padding: 110px 7vw 65px
    }

    .case-detail-summary,.case-detail-dark,.case-detail-programs,.case-detail-two-column,.case-detail-outcomes {
        padding: 70px 7vw
    }

    .case-detail-summary,.case-detail-section-head {
        grid-template-columns: 1fr
    }

    .case-detail-stats {
        grid-template-columns: 1fr;
        padding: 0 7vw 70px
    }

    .case-detail-card-grid {
        grid-template-columns: 1fr
    }

    .case-detail-card-grid article,.case-detail-stats article {
        min-height: 0
    }
}

.site-header>.brand-lockup {
    gap: 0!important
}

.site-header .brand-lockup .logo-values,.footer-top>p {
    display: none!important
}

.footer-legal-band {
    color: var(--ink);
    background: #fff;
    border-top: 1px solid #e6e0d8;
    padding: 5vw 7vw 6vw
}

.footer-legal-grid {
    grid-template-columns: repeat(3,minmax(0,1fr));
    align-items: stretch;
    gap: 32px;
    display: grid
}

.footer-legal-simple {
    padding: 34px 7vw 38px
}

.footer-legal-item {
    box-shadow: none;
    background: 0 0;
    border: 0;
    padding: 0
}

.footer-legal-item .eyebrow {
    letter-spacing: .12em;
    color: #777;
    margin-bottom: 10px;
    font-size: 10px
}

.footer-legal-item h2 {
    letter-spacing: -.02em;
    margin: 0 0 8px;
    font-size: 16px;
    font-weight: 800;
    line-height: 1.25
}

.footer-legal-item p {
    color: #666;
    max-width: 420px;
    margin: 0 0 10px;
    font-size: 12px;
    line-height: 1.55
}

.footer-legal-resources {
    border-top: 1px solid #e5ded5;
    margin-top: 30px;
    padding-top: 24px
}

.footer-legal-resources .footer-legal-item {
    padding-top: 0
}

.footer-disclaimer-statement {
    color: #68635d;
    border-top: 1px solid #e5ded5;
    max-width: 1180px;
    margin: 28px 0 0;
    padding-top: 18px;
    font-size: 11px;
    line-height: 1.7
}

.footer-disclaimer-statement strong {
    color: var(--ink);
    font-weight: 800
}

.footer-legal-card {
    background: #fff;
    border: 1px solid #d8d2c9;
    padding: 32px;
    box-shadow: 0 18px 40px #00000008
}

.footer-legal-card .eyebrow {
    margin-bottom: 18px
}

.footer-legal-card h2 {
    letter-spacing: -.045em;
    margin: 0 0 20px;
    font-size: clamp(26px,2.8vw,42px);
    line-height: 1.05
}

.footer-legal-card h3 {
    letter-spacing: .11em;
    text-transform: uppercase;
    color: var(--red);
    margin: 28px 0 10px;
    font-size: 12px
}

.footer-legal-card p {
    color: #5f5b56;
    margin: 0 0 12px;
    font-size: 13px;
    line-height: 1.72
}

.footer-legal-list {
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 8px 18px;
    margin: 16px 0 0;
    padding: 0;
    list-style: none;
    display: grid
}

.footer-legal-list li {
    color: #4f4b46;
    grid-template-columns: auto 1fr;
    gap: 9px;
    font-size: 12px;
    line-height: 1.45;
    display: grid
}

.footer-legal-list li:before {
    content: "+";
    color: var(--red);
    font-weight: 800
}

.footer-legal-link {
    border-bottom: 1px solid;
    align-items: center;
    gap: 8px;
    margin-top: 10px;
    padding-bottom: 6px;
    font-size: 12px;
    font-weight: 800;
    display: inline-flex
}

.footer-legal-link span {
    color: var(--red)
}

.paf-hero {
    color: #fff;
    background: #171717;
    flex-direction: column;
    justify-content: flex-end;
    min-height: 520px;
    padding: 130px 8vw 80px;
    display: flex
}

.paf-hero h1 {
    letter-spacing: -.06em;
    max-width: 980px;
    margin: 0;
    font-size: clamp(46px,5.7vw,86px);
    line-height: .98
}

.paf-hero h1 em {
    color: #aaa;
    font-style: normal
}

.paf-hero p:last-child {
    color: #c5c5c5;
    max-width: 780px;
    margin-top: 26px;
    line-height: 1.8
}

.paf-content {
    background: var(--warm);
    grid-template-columns: .6fr 1.4fr;
    gap: 6vw;
    padding: 7vw 8vw;
    display: grid
}

.paf-card {
    background: #fff;
    border: 1px solid #d8d2c9;
    padding: 34px;
    box-shadow: 0 18px 40px #00000008
}

.paf-card h2 {
    letter-spacing: -.045em;
    margin: 0 0 18px;
    font-size: clamp(28px,3vw,44px);
    line-height: 1.05
}

.paf-card h3 {
    margin: 0 0 12px;
    font-size: 18px
}

.paf-card p {
    color: var(--muted);
    font-size: 13px;
    line-height: 1.75
}

.paf-card a {
    border-bottom: 1px solid;
    font-weight: 800
}

.compliance-article {
    padding: 42px 44px
}

.compliance-section {
    border-bottom: 1px solid #e4ded6;
    margin: 0 0 34px;
    padding: 0 0 34px
}

.compliance-section:last-child {
    border-bottom: 0;
    margin-bottom: 0;
    padding-bottom: 0
}

.compliance-section h3 {
    letter-spacing: -.025em;
    color: #161616;
    margin: 0 0 18px;
    font-size: clamp(20px,1.7vw,28px);
    line-height: 1.16
}

.compliance-section p {
    color: #5f5b55;
    max-width: 900px;
    margin: 0 0 16px;
    font-size: 14px;
    line-height: 1.85
}

.compliance-section p:last-child {
    margin-bottom: 0
}

.compliance-section .footer-legal-list {
    margin-top: 22px
}

.compliance-link-row {
    margin-top: 18px!important
}

.compliance-link-row a {
    letter-spacing: .08em;
    text-transform: uppercase;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    display: inline-flex
}

.compliance-link-row a span {
    color: var(--red)
}

.paf-table-wrap {
    background: #fff;
    border: 1px solid #d8d2c9;
    margin: 26px 0 28px;
    overflow-x: auto
}

.paf-table {
    border-collapse: collapse;
    width: 100%;
    min-width: 760px;
    font-size: 12px
}

.paf-table th {
    color: #312f2c;
    text-align: left;
    letter-spacing: .11em;
    text-transform: uppercase;
    white-space: nowrap;
    background: #f5f2ec;
    border-bottom: 1px solid #d8d2c9;
    padding: 15px 16px;
    font-size: 10px;
    font-weight: 900
}

.paf-table td {
    color: #3f3b36;
    vertical-align: top;
    border-bottom: 1px solid #e5dfd7;
    border-right: 1px solid #e5dfd7;
    padding: 16px
}

.paf-table td:last-child,.paf-table th:last-child {
    border-right: 0
}

.paf-table tr:last-child td {
    border-bottom: 0
}

.paf-table a {
    color: var(--ink);
    white-space: nowrap;
    border-bottom: 1px solid;
    align-items: center;
    gap: 8px;
    padding-bottom: 4px;
    font-size: 11px;
    font-weight: 900;
    display: inline-flex
}

.paf-table a span {
    color: var(--red)
}

@media (width<=900px) {
    .footer-legal-grid,.paf-content,.footer-legal-list {
        grid-template-columns: 1fr
    }
}

@media (width<=600px) {
    .footer-legal-band {
        padding: 60px 6vw
    }

    .footer-legal-card {
        padding: 24px
    }

    .paf-hero {
        padding: 110px 7vw 65px
    }

    .paf-content {
        padding: 60px 7vw
    }

    .compliance-article {
        padding: 28px 24px
    }

    .compliance-section {
        margin-bottom: 28px;
        padding-bottom: 28px
    }
}

.insight-paper-hero {
    color: #fff;
    background: #050505;
    flex-direction: column;
    justify-content: center;
    min-height: 92vh;
    padding: 7vw 8vw;
    display: flex;
    position: relative;
    overflow: hidden
}

.insight-paper-hero:before {
    content: "";
    border: 1px solid #ffffff18;
    border-radius: 50%;
    width: 58vw;
    height: 58vw;
    position: absolute;
    top: 8vh;
    right: -18vw;
    box-shadow: 0 0 0 90px #ffffff08,0 0 0 180px #e3322a12
}

.paper-mark {
    background: var(--red);
    letter-spacing: -.06em;
    z-index: 2;
    justify-content: center;
    align-items: center;
    width: 76px;
    height: 48px;
    margin-bottom: 30px;
    font-size: 27px;
    font-weight: 700;
    display: flex;
    position: relative
}

.insight-paper-hero h1 {
    letter-spacing: -.055em;
    color: #ffc400;
    z-index: 2;
    max-width: 1030px;
    margin: 22px 0;
    font-size: clamp(48px,7vw,104px);
    line-height: 1.04;
    position: relative
}

.paper-dek {
    color: #f2f2f2;
    z-index: 2;
    max-width: 1040px;
    margin: 0;
    font-size: clamp(19px,2vw,30px);
    line-height: 1.45;
    position: relative
}

.paper-red-line {
    background: var(--red);
    z-index: 2;
    width: 50px;
    height: 6px;
    margin: 64px 0 58px;
    position: relative
}

.paper-audience {
    color: #ffc400;
    z-index: 2;
    max-width: 870px;
    margin: 0 0 70px;
    font-size: 18px;
    font-weight: 800;
    line-height: 1.5;
    position: relative
}

.paper-date {
    text-transform: uppercase;
    letter-spacing: .12em;
    z-index: 2;
    font-size: 12px;
    font-weight: 800;
    position: relative
}

.insight-paper-summary {
    background: #fff;
    grid-template-columns: .55fr 1.45fr;
    gap: 7vw;
    padding: 7vw;
    display: grid
}

.insight-paper-summary aside {
    border-top: 2px solid var(--red);
    padding-top: 24px
}

.insight-paper-summary aside span,.paper-takeaway span,.paper-section-head p {
    text-transform: uppercase;
    letter-spacing: .16em;
    color: var(--red);
    font-size: 11px;
    font-weight: 900
}

.insight-paper-summary aside strong {
    letter-spacing: -.045em;
    margin-top: 26px;
    font-size: clamp(28px,3.5vw,52px);
    line-height: 1.05;
    display: block
}

.insight-paper-summary article>p,.paper-body>p,.paper-sources p,.paper-closing p {
    color: #615d58;
    font-size: 16px;
    line-height: 1.8
}

.insight-paper-summary blockquote,.paper-section blockquote {
    letter-spacing: -.04em;
    border-left: 4px solid var(--red);
    color: #191919;
    margin: 45px 0;
    padding-left: 28px;
    font-size: clamp(24px,3vw,42px);
    line-height: 1.18
}

.paper-summary-cards {
    grid-template-columns: repeat(3,1fr);
    gap: 22px;
    margin-top: 38px;
    display: grid
}

.paper-summary-cards div,.paper-card-grid article,.paper-step-grid article,.paper-roadmap article,.paper-lifecycle article {
    background: #fff;
    border: 1px solid #d7d1c8;
    padding: 26px
}

.paper-summary-cards h3,.paper-card-grid h3,.paper-step-grid h3,.paper-roadmap h3,.paper-lifecycle h3 {
    letter-spacing: -.035em;
    margin: 0 0 14px;
    font-size: 22px;
    line-height: 1.15
}

.paper-summary-cards p,.paper-card-grid p,.paper-step-grid p,.paper-roadmap p,.paper-lifecycle p {
    color: #68635f;
    margin: 0;
    font-size: 13px;
    line-height: 1.65
}

.paper-takeaway {
    background: var(--red);
    color: #fff;
    grid-template-columns: .35fr 1.65fr;
    align-items: center;
    gap: 5vw;
    padding: 38px 8vw;
    display: grid
}

.paper-takeaway span {
    color: #fff
}

.paper-takeaway p {
    letter-spacing: -.04em;
    margin: 0;
    font-size: clamp(24px,3vw,42px);
    font-weight: 750;
    line-height: 1.1
}

.paper-section {
    grid-template-columns: .42fr 1.58fr;
    gap: 6vw;
    padding: 7vw 8vw;
    display: grid
}

.paper-section.light {
    background: var(--warm);
    color: var(--ink)
}

.paper-section.dark {
    color: #fff;
    background: #1a2225
}

.paper-section-head {
    align-self: start;
    position: sticky;
    top: 110px
}

.paper-section-head>span {
    letter-spacing: -.07em;
    color: var(--red);
    margin-bottom: 28px;
    font-size: 72px;
    font-weight: 800;
    line-height: 1;
    display: block
}

.paper-section-head h2 {
    letter-spacing: -.055em;
    margin: 18px 0 0;
    font-size: clamp(30px,4vw,58px);
    line-height: 1.03
}

.paper-section.dark .paper-body>p,.paper-section.dark .paper-card-grid p,.paper-section.dark .paper-step-grid p,.paper-section.dark .paper-lifecycle p {
    color: #b9c3c6
}

.paper-section.dark .paper-card-grid article,.paper-section.dark .paper-step-grid article,.paper-section.dark .paper-lifecycle article {
    color: #fff;
    background: #212c30;
    border-color: #3c474b
}

.paper-card-grid {
    grid-template-columns: repeat(3,1fr);
    gap: 24px;
    margin-top: 34px;
    display: grid
}

.paper-card-grid.compact {
    grid-template-columns: repeat(2,1fr)
}

.paper-card-grid article {
    border-top: 1px solid var(--red)
}

.paper-card-grid article>span,.paper-step-grid span,.paper-roadmap span {
    color: var(--red);
    margin-bottom: 34px;
    font-size: 12px;
    font-weight: 900;
    display: block
}

.paper-lifecycle {
    grid-template-columns: repeat(2,1fr);
    gap: 22px;
    margin-top: 34px;
    display: grid
}

.paper-lifecycle article {
    border-top: 1px solid var(--red)
}

.paper-lifecycle strong {
    color: inherit
}

.paper-guardrail {
    border-top: 1px solid var(--red);
    padding-top: 20px;
    margin-top: 34px!important
}

.paper-step-grid {
    grid-template-columns: repeat(5,1fr);
    gap: 16px;
    margin-top: 34px;
    display: grid
}

.paper-step-grid article {
    border-top: 1px solid var(--red);
    min-height: 230px
}

.paper-roadmap {
    grid-template-columns: repeat(4,1fr);
    gap: 18px;
    margin: 30px 0 45px;
    display: grid
}

.paper-roadmap article {
    border-top: 1px solid var(--red)
}

.paper-closing {
    color: #fff;
    background: #111;
    grid-template-columns: 1fr .72fr;
    align-items: end;
    gap: 6vw;
    padding: 8vw;
    display: grid
}

.paper-closing .eyebrow {
    grid-column: 1/-1
}

.paper-closing h2 {
    letter-spacing: -.055em;
    margin: 0;
    font-size: clamp(38px,5vw,76px);
    line-height: 1.02
}

.paper-closing p {
    color: #c8c8c8
}

.paper-closing .button {
    justify-self: start
}

.paper-sources {
    background: #fff;
    padding: 5vw 8vw
}

.paper-sources h2 {
    letter-spacing: -.04em;
    margin: 0 0 20px;
    font-size: 34px
}

@media (width<=1100px) {
    .paper-step-grid,.paper-card-grid,.paper-summary-cards {
        grid-template-columns: repeat(2,1fr)
    }
}

@media (width<=800px) {
    .insight-paper-summary,.paper-section,.paper-takeaway,.paper-closing {
        grid-template-columns: 1fr
    }

    .paper-section-head {
        position: static
    }

    .paper-card-grid,.paper-card-grid.compact,.paper-summary-cards,.paper-lifecycle,.paper-roadmap,.paper-step-grid {
        grid-template-columns: 1fr
    }

    .insight-paper-hero {
        min-height: auto;
        padding: 90px 7vw
    }

    .paper-audience {
        margin-bottom: 40px
    }
}

.leadership-v2-disclosure {
    background: #f5f2ec;
    padding: 0 8vw 7vw
}

.leadership-v2-disclosure p {
    color: #5f5b55;
    border-top: 1px solid #d4d0ca;
    max-width: 1120px;
    margin: 0;
    padding-top: 24px;
    font-size: 12px;
    line-height: 1.85
}

.leadership-v2-disclosure strong {
    color: #171717;
    font-weight: 900
}

.leadership-v2-category-head h3 span {
    display: block
}

@media (width<=700px) {
    .leadership-v2-disclosure {
        padding: 0 7vw 60px
    }
}

.paper-download {
    text-transform: uppercase;
    letter-spacing: .08em;
    z-index: 2;
    border-bottom: 1px solid #fff;
    align-self: flex-start;
    align-items: center;
    gap: 10px;
    margin-top: 28px;
    padding-bottom: 8px;
    font-size: 12px;
    font-weight: 900;
    display: inline-flex;
    position: relative
}

.paper-download span {
    color: var(--red)
}

.insights-landing-hero {
    color: #fff;
    background: #171717;
    flex-direction: column;
    justify-content: flex-end;
    min-height: 560px;
    padding: 9vw 8vw 7vw;
    display: flex;
    position: relative;
    overflow: hidden
}

.insights-landing-hero:after {
    content: "";
    border: 1px solid #e3322a66;
    border-radius: 50%;
    width: 560px;
    height: 560px;
    position: absolute;
    top: -150px;
    right: -120px;
    box-shadow: 0 0 0 95px #ffffff06,0 0 0 190px #ffffff03
}

.insights-landing-hero>* {
    z-index: 1;
    position: relative
}

.insights-landing-hero h1 {
    letter-spacing: -.06em;
    max-width: 1040px;
    margin: 0;
    font-size: clamp(48px,6vw,88px);
    line-height: 1
}

.insights-landing-hero h1 em {
    color: #a8a8a8;
    font-style: normal
}

.insights-landing-hero>p:last-child {
    color: #c2c2c2;
    max-width: 860px;
    margin: 30px 0 0;
    font-size: 16px;
    line-height: 1.8
}

.insights-index {
    background: #fff
}

@media (width<=600px) {
    .insights-landing-hero {
        min-height: 540px;
        padding: 110px 7vw 65px
    }

    .insights-landing-hero h1 {
        font-size: clamp(42px,13vw,62px)
    }
}

.practice-subnav {
    display: none!important
}

@property --tw-rotate-x {
    syntax: "*";
    inherits: false
}

@property --tw-rotate-y {
    syntax: "*";
    inherits: false
}

@property --tw-rotate-z {
    syntax: "*";
    inherits: false
}

@property --tw-skew-x {
    syntax: "*";
    inherits: false
}

@property --tw-skew-y {
    syntax: "*";
    inherits: false
}

@property --tw-blur {
    syntax: "*";
    inherits: false
}

@property --tw-brightness {
    syntax: "*";
    inherits: false
}

@property --tw-contrast {
    syntax: "*";
    inherits: false
}

@property --tw-grayscale {
    syntax: "*";
    inherits: false
}

@property --tw-hue-rotate {
    syntax: "*";
    inherits: false
}

@property --tw-invert {
    syntax: "*";
    inherits: false
}

@property --tw-opacity {
    syntax: "*";
    inherits: false
}

@property --tw-saturate {
    syntax: "*";
    inherits: false
}

@property --tw-sepia {
    syntax: "*";
    inherits: false
}

@property --tw-drop-shadow {
    syntax: "*";
    inherits: false
}

@property --tw-drop-shadow-color {
    syntax: "*";
    inherits: false
}

@property --tw-drop-shadow-alpha {
    syntax: "<percentage>";
    inherits: false;
    initial-value: 100%
}

@property --tw-drop-shadow-size {
    syntax: "*";
    inherits: false
}
