.services-hero { display: grid; grid-template-columns: minmax(0, 1.9fr) minmax(0, 1fr); gap: 56px; align-items: center; margin-bottom: 64px; }
.services-hero .work-heading { margin: 0; }
.services-hero .work-heading > p:not(.home-eyebrow) { font-size: 16px; line-height: 1.8; color: #ababaa; max-width: 550px; }
.services-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.services-intro-note { padding: 28px; background: #242526; border: 1px solid #3a3b3c; border-radius: 5px; }
.services-intro-note h2 { font-size: 24px; line-height: 1.35; font-weight: 500; color: #eceae5; margin: 18px 0; letter-spacing: -.025em; }
.services-intro-note > p:not(.home-eyebrow) { font-size: 14px; line-height: 1.8; color: #ababaa; }
.services-intro-note > span { display: block; font-size: 12px; color: #EABD7C; margin-top: 26px; }
.services-section { padding: 48px 0; border-top: 1px solid #343536; scroll-margin-top: 96px; }
.services-section-heading { display: flex; justify-content: space-between; align-items: end; gap: 24px; margin-bottom: 30px; }
.services-section h2, .services-stack h2 { font-size: clamp(25px, 3vw, 34px); font-weight: 500; color: #eceae5; letter-spacing: -.025em; line-height: 1.3; margin-top: 12px; }
.services-section-heading > p { color: #979794; font-size: 13px; max-width: 240px; line-height: 1.7; }
.services-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.service-card { padding: clamp(24px, 3vw, 36px); border: 1px solid #343536; border-radius: 5px; display: flex; flex-direction: column; scroll-margin-top: 96px; }
.service-number { color: #EABD7C; font-size: 12px; letter-spacing: 1px; }
.service-card h3 { margin: 20px 0 14px; font-size: 25px; font-weight: 500; line-height: 1.25; color: #eceae5; letter-spacing: -.02em; }
.service-card > p, .service-card li { font-size: 14px; line-height: 1.8; color: #ababaa; }
.service-card .service-fit { padding: 18px 0; margin: 18px 0; border-block: 1px solid #343536; }
.service-fit span { display: block; color: #EABD7C; font-size: 11px; letter-spacing: 1px; margin-bottom: 6px; }
.service-card h4 { font-size: 13px; font-weight: 500; color: #d4d4d4; margin-bottom: 12px; }
.service-card ul { padding-left: 18px; }
.service-card li { padding-left: 4px; margin-bottom: 6px; }
.service-card li::marker { color: #EABD7C; }
.service-card > .service-scope-note { color: #979794; font-size: 12px; margin: 18px 0 24px; }
.service-request { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: auto; padding: 15px 0 0; border: 0; border-top: 1px solid #343536; background: none; color: #EABD7C; cursor: pointer; font: inherit; font-size: 13px; text-align: left; }
.service-request:hover { color: #f3cd98; }
.engagement-section { padding-bottom: 64px; }
.engagement-heading { margin-bottom: 22px; }
.engagement-principle { max-width: 820px; margin-bottom: 30px; padding-left: 18px; border-left: 2px solid #EABD7C; color: #b6b6b1; font-size: 14px; line-height: 1.8; }
.engagement-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.engagement-card { position: relative; display: flex; min-width: 0; flex-direction: column; border: 1px solid #3a3b3c; background: #191a1b; }
.engagement-card-featured { border-top-color: #EABD7C; }
.engagement-card-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; padding: 22px clamp(24px, 3vw, 36px); border-bottom: 1px solid #343536; }
.engagement-card-header > div { display: flex; align-items: center; gap: 12px; }
.engagement-number { color: #EABD7C; font-size: 12px; letter-spacing: 1px; }
.engagement-card-header p { color: #8f8f8b; font-size: 10px; line-height: 1.5; letter-spacing: 1.1px; }
.engagement-estimate { flex: 0 0 auto; min-width: 118px; text-align: right; }
.engagement-estimate span, .engagement-estimate small { display: block; color: #8f8f8b; font-size: 9px; line-height: 1.4; letter-spacing: 1.05px; }
.engagement-estimate strong { display: block; margin: 5px 0 3px; color: #EABD7C; font-size: 22px; font-weight: 500; line-height: 1; letter-spacing: -.02em; }
.engagement-estimate small { color: #aaa9a5; }
.engagement-card-copy, .engagement-capabilities { padding: clamp(25px, 3.5vw, 38px); }
.engagement-card-copy { padding-bottom: 28px; }
.engagement-card-copy h3 { color: #eceae5; font-size: clamp(28px, 3.4vw, 40px); font-weight: 500; line-height: 1.15; letter-spacing: -.035em; }
.engagement-tagline { max-width: 510px; margin-top: 18px; color: #b2b2ad; font-size: 15px; line-height: 1.75; }
.engagement-fit { margin-top: 24px; padding-top: 19px; border-top: 1px solid #343536; color: #9e9e9a; font-size: 13px; line-height: 1.75; }
.engagement-fit span { display: block; margin-bottom: 7px; color: #EABD7C; font-size: 10px; letter-spacing: 1.15px; }
.engagement-capabilities { flex: 1; padding-top: 0; }
.engagement-capabilities > p { margin-bottom: 16px; color: #d1d1cc; font-size: 12px; letter-spacing: .5px; }
.engagement-capabilities ul { padding-left: 18px; }
.engagement-capabilities li { padding-left: 4px; color: #a5a5a1; font-size: 13px; line-height: 1.75; }
.engagement-capabilities li + li { margin-top: 8px; }
.engagement-capabilities li::marker { color: #EABD7C; }
.engagement-action { display: flex; align-items: center; justify-content: space-between; gap: 20px; width: calc(100% - clamp(48px, 7vw, 76px)); margin: 0 clamp(24px, 3.5vw, 38px) clamp(24px, 3.5vw, 38px); padding: 16px 0 0; border: 0; border-top: 1px solid #3a3b3c; background: none; color: #EABD7C; cursor: pointer; font: inherit; font-size: 13px; text-align: left; }
.engagement-action:hover { color: #f3cd98; }
.engagement-pricing-note { margin-top: 22px; padding: 22px 24px; border: 1px solid #343536; color: #92928f; font-size: 12px; line-height: 1.75; }
.engagement-pricing-note strong { color: #c9c8c3; font-weight: 500; }
.scope-clarity { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; margin-top:22px; }
.scope-clarity article { padding:clamp(24px,3vw,34px); border:1px solid #343536; background:#1b1c1d; }
.scope-clarity h3 { margin:14px 0 12px; color:#eceae5; font-size:21px; font-weight:500; line-height:1.35; letter-spacing:-.02em; }
.scope-clarity article > p:not(.home-eyebrow), .scope-clarity li { color:#a5a5a1; font-size:13px; line-height:1.8; }
.scope-clarity ul { margin-top:14px; padding-left:18px; }
.scope-clarity li + li { margin-top:6px; }
.scope-clarity li::marker { color:#EABD7C; }
.optional-modules { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(320px, .8fr); gap: clamp(28px, 5vw, 64px); margin-top: 22px; padding: clamp(26px, 4vw, 42px); border: 1px solid #343536; background: #242526; }
.optional-modules h3 { margin: 14px 0 12px; color: #eceae5; font-size: clamp(22px, 2.7vw, 30px); font-weight: 500; line-height: 1.3; letter-spacing: -.025em; }
.optional-modules > div > p:last-child { max-width: 590px; color: #a5a5a1; font-size: 14px; line-height: 1.8; }
.optional-modules ul { display: flex; align-content: flex-start; flex-wrap: wrap; gap: 8px; list-style: none; }
.optional-modules li { padding: 8px 10px; border: 1px solid #454647; border-radius: 3px; color: #bcbcb7; font-size: 11px; line-height: 1.4; }
.optional-modules li.optional-scope { border-color: #8f7047; color: #EABD7C; }
.levels-breadcrumb { display: flex; align-items: center; gap: 10px; margin-bottom: 34px; color: #858582; font-size: 11px; letter-spacing: .8px; text-transform: uppercase; }
.levels-breadcrumb a { color: #b4b4b0; text-decoration: none; }
.levels-breadcrumb a:hover { color: #EABD7C; }
.levels-hero { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(280px, .85fr); align-items: center; gap: clamp(36px, 6vw, 78px); padding-bottom: 70px; }
.levels-hero h1 { margin: 18px 0 24px; color: #eceae5; font-size: clamp(42px, 6vw, 80px); font-weight: 500; line-height: 1.05; letter-spacing: -.055em; }
.levels-hero h1 span { color: #EABD7C; }
.levels-hero > div > p:last-child { max-width: 650px; color: #ababaa; font-size: 16px; line-height: 1.85; }
.levels-hero aside { padding: clamp(26px, 3vw, 38px); border: 1px solid #3a3b3c; border-top: 2px solid #EABD7C; background: #242526; }
.levels-hero aside h2 { margin: 18px 0; color: #eceae5; font-size: 24px; font-weight: 500; line-height: 1.4; letter-spacing: -.025em; }
.levels-hero aside > p:last-child { color: #ababaa; font-size: 14px; line-height: 1.8; }
.levels-page .engagement-section { padding: 60px 0 64px; border-top: 1px solid #343536; border-bottom: 1px solid #343536; }
.levels-optional-section { padding: 22px 0 64px; }
.levels-next-step { display: flex; align-items: center; justify-content: space-between; gap: 42px; padding: clamp(34px, 5vw, 56px); border: 1px solid #343536; border-left: 2px solid #EABD7C; background: #1b1c1d; }
.levels-next-step > div { max-width: 720px; }
.levels-next-step h2 { margin: 12px 0; color: #eceae5; font-size: clamp(24px, 3vw, 34px); font-weight: 500; line-height: 1.3; letter-spacing: -.025em; }
.levels-next-step p:not(.home-eyebrow) { color: #ababaa; font-size: 14px; line-height: 1.8; }
.levels-next-step > a { flex: 0 0 auto; }
.levels-page .work-contact { border-top: 0; }
.services-stack { display: grid; grid-template-columns: 1.5fr 1fr; align-items: center; gap: 40px; margin-bottom: 48px; padding: 30px; background: #1b1c1d; border-left: 2px solid #EABD7C; }
.services-stack h2 { font-size: 25px; margin-bottom: 16px; }
.services-stack p:not(.home-eyebrow) { font-size: 14px; line-height: 1.8; color: #ababaa; }
.services-stack .deployment-note { margin-top: 14px; font-size: 12px; color: #979794; }
.services-stack .deployment-note strong { color: #EABD7C; font-weight: 500; }
.services-visual-map, .plans-visual-summary { display:grid; grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr); gap:clamp(30px,6vw,90px); align-items:center; padding:48px 0; border-top:1px solid #343536; }
.visual-map-heading h2, .plans-visual-summary h2 { margin-top:14px; color:#eceae5; font-size:clamp(26px,3vw,38px); font-weight:500; line-height:1.2; letter-spacing:-.03em; }
.visual-map-heading h2 span, .plans-visual-summary h2 span { color:#EABD7C; }
.visual-map-flow { display:grid; grid-template-columns:1fr auto 1fr auto 1fr; align-items:center; gap:12px; }
.visual-map-flow article { min-height:128px; display:flex; flex-direction:column; justify-content:center; padding:20px; border:1px solid #3a3b3c; background:#1b1c1d; }
.visual-map-flow article span, .depth-scale span { color:#EABD7C; font-size:10px; letter-spacing:1px; }
.visual-map-flow strong { margin:12px 0 6px; color:#d4d4d0; font-size:14px; font-weight:500; }
.visual-map-flow small, .depth-scale small { color:#92928f; font-size:11px; line-height:1.5; }
.visual-map-flow i { color:#EABD7C; font-style:normal; font-size:20px; }
.depth-scale { display:grid; gap:22px; }
.depth-scale > div { position:relative; padding:0 0 16px 34px; border-bottom:1px solid #343536; }
.depth-scale strong { display:block; margin:7px 0 4px; color:#d4d4d0; font-size:14px; font-weight:500; }
.depth-scale em { display:block; height:3px; margin-top:14px; background:#EABD7C; font-style:normal; }
.services-stack .project-tags { margin: 0; }
.services-process { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); list-style: none; gap: 28px; }
.services-process li { border-top: 1px solid #454545; padding-top: 20px; }
.services-process span { color: #EABD7C; font-size: 12px; }
.services-process h3 { font-size: 18px; line-height: 1.4; font-weight: 500; margin: 18px 0 12px; }
.services-process p { font-size: 14px; line-height: 1.8; color: #ababaa; }
.services-questions { display: grid; grid-template-columns: 1fr 1.6fr; gap: 48px; }
.services-questions details { border-bottom: 1px solid #343536; }
.services-questions summary { padding: 20px 0; font-size: 15px; color: #d4d4d4; cursor: pointer; line-height: 1.5; }
.services-questions summary::marker { color: #EABD7C; }
.services-questions .faq-question { display: inline-block; margin-left: 8px; }
.services-questions summary:focus-visible { outline: 2px solid #EABD7C; outline-offset: 4px; }
.services-questions details p { font-size: 14px; line-height: 1.8; color: #ababaa; padding: 0 0 20px 22px; }
.services-page .work-contact { border-top: 1px solid #343536; }
.services-proposal { display: flex; align-items: center; justify-content: space-between; gap: 42px; padding: clamp(28px, 4vw, 46px); margin-bottom: 48px; border: 1px solid #3a3b3c; border-left: 2px solid #EABD7C; background: #1b1c1d; }
.services-proposal > div { max-width: 680px; }
.services-proposal h2 { margin: 12px 0; color: #eceae5; font-size: clamp(24px, 3vw, 34px); font-weight: 500; line-height: 1.3; letter-spacing: -.025em; }
.services-proposal p:not(.home-eyebrow) { color: #ababaa; font-size: 14px; line-height: 1.8; }
.services-proposal > a { flex: 0 0 auto; }
@media (max-width: 900px) { .services-hero, .levels-hero { grid-template-columns: minmax(0, 1fr); gap: 30px; } .services-intro-note, .levels-hero aside { max-width: 620px; } .services-process { grid-template-columns: repeat(2, minmax(0, 1fr)); } .engagement-grid { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 700px) {
    .services-hero { margin-bottom: 40px; }
    .services-hero .work-heading > p:not(.home-eyebrow) { font-size: 14px; }
    .services-section { padding: 32px 0; scroll-margin-top: 80px; }
    .services-section-heading { align-items: start; flex-direction: column; gap: 16px; }
    .services-section-heading > p { max-width: none; }
    .services-grid, .services-stack, .services-questions, .optional-modules, .scope-clarity { grid-template-columns: minmax(0, 1fr); }
    .services-visual-map, .plans-visual-summary { grid-template-columns: minmax(0,1fr); gap:28px; padding:36px 0; }
    .services-stack { gap: 22px; padding: 24px; margin-bottom: 32px; }
    .services-questions { gap: 16px; }
    .services-actions a { flex: 1 1 145px; }
    .engagement-card-header { flex-direction: column; gap: 10px; }
    .engagement-section { padding-bottom: 42px; }
    .services-proposal { align-items: flex-start; flex-direction: column; gap: 24px; margin-bottom: 32px; }
    .levels-breadcrumb { margin-bottom: 24px; }
    .levels-hero { padding-bottom: 46px; }
    .levels-hero > div > p:last-child { font-size: 14px; }
    .levels-page .engagement-section { padding: 42px 0; }
    .levels-optional-section { padding-bottom: 42px; }
    .levels-next-step { align-items: flex-start; flex-direction: column; gap: 24px; }
    .visual-map-flow { grid-template-columns:minmax(0,1fr); gap:10px; }
    .visual-map-flow i { justify-self:center; transform:rotate(90deg); }
}
@media (max-width: 420px) { .services-process { grid-template-columns: minmax(0, 1fr); } }
/* Plans & pricing: single platform card and milestone table (synced with the proposal). */
.engagement-card-single { max-width: none; }
.engagement-capabilities-columns ul { columns: 2; column-gap: 40px; }
.engagement-capabilities-columns li { break-inside: avoid; }
.engagement-capabilities-columns li + li { margin-top: 0; }
.engagement-capabilities-columns li { margin-bottom: 8px; }
.levels-page .milestone-section { border-top: 0; padding-top: 0; padding-bottom: 64px; }
.milestone-table-wrap { border: 1px solid #343536; background: #191a1b; }
.milestone-table { width: 100%; border-collapse: collapse; font-size: 13px; line-height: 1.6; }
.milestone-table th, .milestone-table td { padding: 16px 20px; text-align: left; vertical-align: top; border-bottom: 1px solid #2c2d2e; }
.milestone-table thead th { color: #EABD7C; font-size: 10px; font-weight: 600; letter-spacing: 1.2px; text-transform: uppercase; border-bottom-color: #343536; }
.milestone-table tbody th { color: #eceae5; font-weight: 500; min-width: 200px; }
.milestone-table tbody th span { display: block; margin-bottom: 2px; color: #EABD7C; font-size: 11px; letter-spacing: 1px; }
.milestone-table td { color: #ababaa; }
.milestone-table td:nth-child(n+3) { white-space: nowrap; }
.milestone-table td:last-child { color: #eceae5; font-weight: 500; text-align: right; }
.milestone-table thead th:last-child { text-align: right; }
.milestone-table tfoot th, .milestone-table tfoot td { border-bottom: 0; background: #242526; color: #eceae5; font-weight: 600; }
.milestone-table tfoot td:last-child { color: #EABD7C; font-size: 16px; }
@media (max-width: 900px) { .engagement-capabilities-columns ul { columns: 1; } }
@media (max-width: 700px) {
    .milestone-table thead { display: none; }
    .milestone-table, .milestone-table tbody, .milestone-table tfoot, .milestone-table tr, .milestone-table th, .milestone-table td { display: block; width: 100%; }
    .milestone-table tr { padding: 16px 18px; border-bottom: 1px solid #2c2d2e; }
    .milestone-table th, .milestone-table td { padding: 0; border: 0; min-width: 0; }
    .milestone-table td:nth-child(2) { margin: 6px 0 10px; }
    .milestone-table td[data-label] { display: flex; justify-content: space-between; gap: 16px; text-align: right; }
    .milestone-table td[data-label]::before { content: attr(data-label); color: #8f8f8b; font-weight: 400; text-align: left; }
    .milestone-table tfoot tr { background: #242526; border-bottom: 0; }
}
.engagement-section h2 { font-size: clamp(25px, 3vw, 34px); font-weight: 500; color: #eceae5; letter-spacing: -.025em; line-height: 1.3; margin-top: 12px; }
.engagement-section .services-section-heading > p { color: #979794; font-size: 13px; max-width: 280px; line-height: 1.7; }
.service-price-link { color: #EABD7C; text-decoration: none; white-space: nowrap; }
.service-price-link:hover { text-decoration: underline; }
