/* Services page — structured, restrained, and consistent with the main site. */

.offerings-page .offerings-hero {
    padding:104px 0 34px;
    background:var(--paper);
    color:#fff;
}

.offerings-page .offerings-hero-frame {
    position:relative;
    min-height:540px;
    display:grid;
    grid-template-columns:minmax(0,1fr);
    align-items:center;
    padding:clamp(48px,5.5vw,76px);
    overflow:hidden;
    isolation:isolate;
    border:1px solid rgba(255,255,255,.08);
    border-radius:24px;
    background:linear-gradient(145deg,var(--navy) 0%,var(--deep) 76%);
    box-shadow:0 28px 72px rgba(7,24,32,.14);
}

.offerings-page .offerings-hero-frame::before,
.offerings-page .offerings-hero-frame::after {
    display:none;
}

.offerings-page .offerings-hero-copy {
    position:relative;
    z-index:1;
    max-width:790px;
}

.offerings-page .offerings-hero-copy h1 {
    max-width:690px;
    margin:0;
    font-size:clamp(35px,3.45vw,48px);
    font-weight:570;
    line-height:1.5;
    letter-spacing:-.025em;
}

.offerings-page .offerings-hero-copy>p {
    max-width:650px;
    margin:22px 0 0;
    color:rgba(255,255,255,.68);
    font-size:15px;
    line-height:2.05;
}

.offerings-page .page-hero-actions {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:31px;
}

.offerings-page .page-hero-actions .button {
    min-height:49px;
}

.offerings-page .offerings-button-ghost {
    border-color:rgba(255,255,255,.24);
    background:rgba(255,255,255,.035);
    color:#fff;
}

.offerings-page .offerings-button-ghost:hover {
    border-color:rgba(225,161,113,.55);
    background:rgba(255,255,255,.08);
}

.offerings-page .offerings-services {
    padding-block:clamp(84px,9vw,126px);
    background:var(--paper);
}

.offerings-page .offerings-section-intro {
    display:grid;
    grid-template-columns:minmax(0,1.08fr) minmax(270px,.56fr);
    gap:clamp(54px,9vw,126px);
    align-items:end;
}

.offerings-page .offerings-section-intro>div::before {
    width:36px;
    height:2px;
    margin-bottom:22px;
}

.offerings-page .offerings-section-intro h2 {
    max-width:700px;
    font-size:clamp(28px,2.7vw,37px);
    font-weight:560;
    line-height:1.58;
}

.offerings-page .offerings-section-intro>div>p {
    max-width:710px;
    margin-top:17px;
    color:#52636c;
    font-size:14px;
    line-height:2.05;
}

.offerings-page .offerings-section-intro>.offerings-intro-note {
    max-width:430px;
    margin:0;
    padding:18px 21px;
    border:1px solid var(--line);
    border-radius:9px;
    background:rgba(255,255,255,.48);
    color:var(--muted);
    font-size:12px;
    line-height:1.95;
}

.offerings-page .offerings-service-grid {
    display:block;
    margin-top:clamp(48px,6vw,76px);
    overflow:visible;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
}

.offerings-page .offerings-service-grid .offerings-service-track,
.offerings-page .offerings-service-grid .offerings-service-track.is-operations {
    position:relative;
    min-height:390px;
    display:grid;
    grid-template-columns:minmax(250px,.76fr) minmax(330px,1.05fr) minmax(220px,.58fr);
    gap:0;
    align-items:stretch;
    overflow:hidden;
    padding:0;
    border:1px solid rgba(16,32,42,.14);
    border-radius:16px;
    background:#fff;
    color:var(--ink);
    box-shadow:0 18px 46px rgba(7,24,32,.055);
}

.offerings-page .offerings-service-grid .offerings-service-track+.offerings-service-track {
    margin-top:24px;
    border-top:1px solid rgba(16,32,42,.14);
}

.offerings-page .service-track-index {
    position:absolute;
    z-index:2;
    inset:31px 34px auto auto;
    color:var(--copper-dark);
    font-size:10px;
    font-weight:780;
}

.offerings-page .service-track-copy,
.offerings-page .offerings-service-track.is-intelligence .service-track-copy {
    grid-column:1;
    grid-row:1;
    display:flex;
    justify-content:center;
    align-items:flex-start;
    flex-direction:column;
    padding:54px 76px 48px 34px;
}

.offerings-page .service-track-copy h3 {
    margin:0;
    font-size:clamp(24px,2.2vw,31px);
    font-weight:590;
    line-height:1.58;
}

.offerings-page .service-track-copy>p {
    max-width:420px;
    margin:15px 0 0;
    color:var(--muted);
    font-size:14px;
    line-height:2.05;
}

.offerings-page .service-track-detail {
    grid-column:2;
    grid-row:1;
    display:flex;
    justify-content:center;
    align-items:flex-start;
    flex-direction:column;
    padding:45px clamp(30px,3vw,48px);
    border-inline-start:1px solid var(--line);
}

.offerings-page .service-track-detail h4 {
    margin:0 0 14px;
    color:var(--ink);
    font-size:13px;
    font-weight:690;
}

.offerings-page .service-track-detail ul {
    display:grid;
    gap:8px;
    margin:0;
    padding:0;
    list-style:none;
}

.offerings-page .service-track-detail li {
    position:relative;
    padding-inline-start:19px;
    color:#50616a;
    font-size:12px;
    line-height:1.95;
}

.offerings-page .service-track-detail li::before {
    position:absolute;
    inset:12px 0 auto auto;
    width:8px;
    height:2px;
    background:var(--copper);
    content:"";
}

.offerings-page .service-track-start {
    width:100%;
    display:grid;
    grid-template-columns:76px minmax(0,1fr);
    gap:14px;
    margin-top:22px;
    padding-top:17px;
    border-top:1px solid var(--line);
}

.offerings-page .service-track-start strong {
    color:var(--copper-dark);
    font-size:10px;
    font-weight:740;
}

.offerings-page .service-track-start p {
    margin:0;
    color:var(--muted);
    font-size:11px;
    line-height:1.9;
}

.offerings-page .service-track-detail>.service-track-action {
    min-height:44px;
    margin-top:22px;
    padding-inline:16px;
    font-size:11px;
}

.offerings-page .service-track-model {
    grid-column:3;
    grid-row:1;
    display:flex;
    justify-content:center;
    flex-direction:column;
    padding:40px clamp(26px,3vw,42px);
    background:var(--navy);
    color:#fff;
}

.offerings-page .service-track-model>span {
    color:var(--copper-2);
    font-size:10px;
    font-weight:740;
}

.offerings-page .service-track-model ol {
    display:grid;
    margin:24px 0 0;
    padding:0;
    list-style:none;
}

.offerings-page .service-track-model li {
    position:relative;
    min-height:63px;
    display:flex;
    align-items:center;
    padding-inline-start:27px;
    border-top:1px solid rgba(255,255,255,.14);
    color:rgba(255,255,255,.78);
    font-size:12px;
    font-weight:570;
}

.offerings-page .service-track-model li:last-child {
    border-bottom:1px solid rgba(255,255,255,.14);
}

.offerings-page .service-track-model li::before {
    position:absolute;
    inset:auto 0 auto auto;
    width:7px;
    height:7px;
    border:1px solid var(--copper-2);
    background:transparent;
    content:"";
}

.offerings-page .offerings-fit-signal {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(300px,.55fr);
    gap:clamp(48px,8vw,108px);
    align-items:start;
    margin-top:38px;
    padding:28px 0 0;
    border-top:1px solid var(--line);
}

.offerings-page .offerings-fit-signal strong,
.offerings-page .offerings-fit-signal span {
    color:var(--copper-dark);
    font-size:12px;
    font-weight:730;
}

.offerings-page .offerings-fit-signal p {
    max-width:700px;
    margin:7px 0 0;
    color:var(--muted);
    font-size:12px;
    line-height:1.95;
}

.offerings-page .offerings-fit-signal>p {
    margin:0;
    padding-inline-start:28px;
    border-inline-start:1px solid var(--line);
}

.offerings-page .offerings-fit-signal>p span {
    display:block;
    margin-bottom:6px;
}

.offerings-page .offerings-engagement {
    padding-block:clamp(86px,9vw,126px);
    overflow:hidden;
    background:linear-gradient(145deg,var(--navy) 0%,var(--deep) 78%);
    color:#fff;
}

.offerings-page .offerings-engagement-layout {
    display:block;
}

.offerings-page .offerings-engagement-heading {
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(300px,.55fr);
    gap:clamp(54px,9vw,126px);
    align-items:end;
}

.offerings-page .offerings-engagement-heading::before {
    grid-column:1/-1;
    width:36px;
    height:2px;
    margin-bottom:-25px;
    background:var(--copper);
    content:"";
}

.offerings-page .offerings-engagement-heading h2 {
    max-width:650px;
    margin:0;
    font-size:clamp(28px,2.7vw,37px);
    font-weight:560;
    line-height:1.6;
    letter-spacing:-.025em;
    color:#fff;
}

.offerings-page .offerings-engagement-heading p {
    max-width:450px;
    margin:0 0 3px;
    color:rgba(255,255,255,.62);
    font-size:13px;
    line-height:2;
}

.offerings-page .offerings-engagement-flow {
    margin-top:48px;
}

.offerings-page .engagement-path {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    margin:0;
    padding:0;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.15);
    border-radius:15px;
    background:rgba(3,16,22,.22);
    box-shadow:0 20px 54px rgba(0,0,0,.12);
    list-style:none;
}

.offerings-page .engagement-path::before {
    display:none;
}

.offerings-page .engagement-path li {
    min-height:318px;
    display:grid;
    grid-template-columns:42px minmax(0,1fr);
    gap:18px;
    align-items:start;
    padding:32px clamp(26px,3vw,38px);
    border:0;
}

.offerings-page .engagement-path li+li {
    border-inline-start:1px solid rgba(255,255,255,.14);
}

.offerings-page .engagement-path li>span {
    width:38px;
    height:38px;
    display:grid;
    place-items:center;
    border:1px solid rgba(225,161,113,.48);
    border-radius:6px;
    background:rgba(196,123,72,.1);
    color:var(--copper-2);
    font-size:10px;
    font-weight:780;
}

.offerings-page .engagement-path li>div {
    min-height:254px;
    display:flex;
    flex-direction:column;
}

.offerings-page .engagement-path h3 {
    margin:2px 0 8px;
    font-size:19px;
    font-weight:600;
    line-height:1.7;
    color:#fff;
}

.offerings-page .engagement-path li>div>p {
    margin:0;
    color:rgba(255,255,255,.58);
    font-size:12px;
    line-height:1.95;
}

.offerings-page .engagement-output {
    width:100%;
    min-height:76px;
    margin-top:auto;
    padding:18px 0 0;
    border:0;
    border-top:1px solid rgba(255,255,255,.14);
    border-radius:0;
    background:transparent;
}

.offerings-page .engagement-output p {
    margin:0;
    color:rgba(255,255,255,.76);
    font-size:12px;
    line-height:1.9;
}

.offerings-page .offerings-ai-integration {
    padding:clamp(90px,9vw,128px) 0;
    background:#fff;
    color:var(--ink);
}

.offerings-page .offerings-ai-body {
    display:grid;
    grid-template-columns:minmax(280px,.68fr) minmax(0,1.32fr);
    gap:clamp(62px,9vw,132px);
}

.offerings-page .offerings-ai-heading {
    position:static;
    align-self:start;
}

.offerings-page .offerings-ai-heading::before {
    width:36px;
    height:2px;
    margin-bottom:22px;
}

.offerings-page .offerings-ai-heading h2 {
    max-width:510px;
    font-size:clamp(28px,2.75vw,38px);
    font-weight:560;
    line-height:1.62;
    color:var(--ink);
}

.offerings-page .offerings-ai-heading>p {
    max-width:500px;
    margin-top:16px;
    color:var(--muted);
    font-size:13px;
    line-height:2.05;
}

.offerings-page .offerings-ai-capabilities {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    margin:0;
    padding:0;
    overflow:hidden;
    border:1px solid var(--line);
    border-radius:14px;
    background:#f8f7f3;
    list-style:none;
}

.offerings-page .offerings-ai-capabilities li {
    min-height:188px;
    display:flex;
    justify-content:center;
    flex-direction:column;
    padding:30px clamp(25px,3vw,38px);
    background:#f8f7f3;
    transition:background .2s var(--ease);
}

.offerings-page .offerings-ai-capabilities li:hover {
    background:#f1eee7;
}

.offerings-page .offerings-ai-capabilities li:nth-child(odd) {
    border-inline-end:1px solid var(--line);
}

.offerings-page .offerings-ai-capabilities li:nth-child(n+3) {
    border-top:1px solid var(--line);
}

.offerings-page .offerings-ai-capabilities h3 {
    position:relative;
    margin:0;
    padding-inline-start:21px;
    color:var(--ink);
    font-size:16px;
    font-weight:600;
    line-height:1.75;
}

.offerings-page .offerings-ai-capabilities h3::before {
    position:absolute;
    inset:13px 0 auto auto;
    width:9px;
    height:2px;
    background:var(--copper);
    content:"";
}

.offerings-page .offerings-ai-capabilities p {
    margin:9px 0 0;
    color:var(--muted);
    font-size:11px;
    line-height:1.95;
}

.offerings-page .offerings-ai-cta {
    display:block;
    margin-top:27px;
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
}

.offerings-page .offerings-ai-cta>p {
    max-width:500px;
    margin:0;
    color:var(--muted);
    font-size:12px;
    line-height:1.95;
}

.offerings-page .offerings-ai-cta>div {
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:16px 22px;
    margin-top:20px;
}

.offerings-page .offerings-ai-cta .button {
    min-height:46px;
}

.offerings-page .offerings-ai-assessment {
    display:inline-flex;
    align-items:center;
    gap:13px;
    color:var(--copper-dark);
    font-size:11px;
    font-weight:720;
}

@media(max-width:1100px) {
    .offerings-page .offerings-service-grid .offerings-service-track,
    .offerings-page .offerings-service-grid .offerings-service-track.is-operations {
        grid-template-columns:minmax(220px,.8fr) minmax(310px,1.2fr);
    }

    .offerings-page .service-track-model {
        grid-column:1/-1;
        grid-row:2;
        display:grid;
        grid-template-columns:140px minmax(0,1fr);
        gap:28px;
        align-items:center;
        padding:27px 36px;
    }

    .offerings-page .service-track-model ol {
        grid-template-columns:repeat(3,minmax(0,1fr));
        margin:0;
    }

    .offerings-page .service-track-model li {
        min-height:52px;
        padding:8px 23px;
        border-top:0;
        border-inline-start:1px solid rgba(255,255,255,.14);
    }

    .offerings-page .service-track-model li:last-child {
        border-bottom:0;
    }
}

@media(max-width:900px) {
    .offerings-page .offerings-ai-body {
        grid-template-columns:1fr;
        gap:48px;
    }

    .offerings-page .offerings-ai-heading {
        position:static;
        max-width:690px;
    }

}

@media(max-width:760px) {
    .offerings-page .offerings-hero {
        padding:82px 0 18px;
    }

    .offerings-page .offerings-hero-frame {
        min-height:0;
        padding:45px 28px 39px;
        border-radius:18px;
    }

    .offerings-page .offerings-section-intro,
    .offerings-page .offerings-engagement-heading {
        grid-template-columns:1fr;
        gap:25px;
    }

    .offerings-page .offerings-engagement-heading::before {
        margin-bottom:-4px;
    }

    .offerings-page .offerings-section-intro>.offerings-intro-note {
        max-width:none;
    }

    .offerings-page .offerings-service-grid .offerings-service-track,
    .offerings-page .offerings-service-grid .offerings-service-track.is-operations {
        grid-template-columns:1fr;
    }

    .offerings-page .service-track-copy,
    .offerings-page .offerings-service-track.is-intelligence .service-track-copy {
        grid-column:1;
        grid-row:1;
        padding:52px 65px 30px 27px;
    }

    .offerings-page .service-track-detail {
        grid-column:1;
        grid-row:2;
        padding:29px 27px 36px;
        border-top:1px solid var(--line);
        border-inline-start:0;
    }

    .offerings-page .service-track-model {
        grid-column:1;
        grid-row:3;
        display:block;
        padding:30px 27px;
    }

    .offerings-page .service-track-model ol {
        grid-template-columns:1fr;
        margin-top:20px;
    }

    .offerings-page .service-track-model li {
        min-height:54px;
        padding:10px 25px;
        border-top:1px solid rgba(255,255,255,.14);
        border-inline-start:0;
    }

    .offerings-page .service-track-model li:last-child {
        border-bottom:1px solid rgba(255,255,255,.14);
    }

    .offerings-page .offerings-fit-signal {
        grid-template-columns:1fr;
        gap:21px;
    }

    .offerings-page .offerings-fit-signal>p {
        padding:20px 0 0;
        border-top:1px solid var(--line);
        border-inline-start:0;
    }

    .offerings-page .engagement-path {
        grid-template-columns:1fr;
    }

    .offerings-page .engagement-path li {
        min-height:0;
    }

    .offerings-page .engagement-path li+li {
        border-top:1px solid rgba(255,255,255,.14);
        border-inline-start:0;
    }

    .offerings-page .engagement-path li>div {
        min-height:220px;
    }

    .offerings-page .offerings-ai-cta>div {
        width:100%;
        align-items:flex-start;
        flex-direction:column;
    }
}

@media(max-width:560px) {
    .offerings-page .offerings-hero-frame {
        padding:39px 22px 34px;
    }

    .offerings-page .offerings-hero-copy h1 {
        font-size:30px;
        line-height:1.58;
    }

    .offerings-page .offerings-hero-copy>p {
        font-size:14px;
    }

    .offerings-page .page-hero-actions,
    .offerings-page .page-hero-actions .button {
        width:100%;
    }

    .offerings-page .engagement-path li {
        grid-template-columns:38px minmax(0,1fr);
        gap:15px;
        padding:27px 22px;
    }

    .offerings-page .engagement-path li>span {
        width:35px;
        height:35px;
    }

    .offerings-page .offerings-ai-capabilities {
        grid-template-columns:1fr;
    }

    .offerings-page .offerings-ai-capabilities li {
        min-height:0;
        padding:25px 22px 28px;
    }

    .offerings-page .offerings-ai-capabilities li:nth-child(odd) {
        border-inline-end:0;
    }

    .offerings-page .offerings-ai-capabilities li:nth-child(n+2) {
        border-top:1px solid var(--line);
    }

    .offerings-page .offerings-ai-cta .button {
        width:100%;
    }
}
