/* About: experience -> perspective -> working model -> capability -> trust. */
.jc-about-page { color: #d1e1e8; }
.jc-about-page h2 { font-size: clamp(28px,2.7vw,37px); line-height: 1.15; margin-bottom: 17px; }
.jc-about-page h3 { font-size: 16px; line-height: 1.35; margin-bottom: 13px; }
.jc-about-page p { font-size: var(--jc-text-body); line-height: 1.6; margin-bottom: 12px; }
.jc-about-page .jc-eyebrow { font-size: var(--jc-text-label); line-height: 1.5; margin-bottom: 12px; }
.jc-about-page .jc-eyebrow:before { flex-shrink: 0; }
.jc-about-page .jc-button { min-height: 44px; text-decoration: none; }
.jc-about-page a:focus-visible { outline: 3px solid #00b5ff; outline-offset: 4px; }
.jc-ab-section { padding: 43px 0; }
.jc-ab-dark { background: #031824; border-bottom: 1px solid #17434f; }
.jc-ab-light { background: #eef7f9; color: #17323f; }
.jc-ab-light h2,.jc-ab-light h3 { color: #102b38; }
.jc-ab-light p { color: #294b59; }
.jc-ab-light .jc-eyebrow { color: #078e91; }
.jc-ab-hero { background: radial-gradient(ellipse at 75% 30%,#063035 0,transparent 52%),linear-gradient(110deg,#031b29,#02141e); border-bottom: 1px solid #23616c; padding: 48px 0; }
.jc-ab-hero-grid { display: grid; grid-template-columns: 1.08fr 1fr; gap: 48px; align-items: center; }
.jc-ab-hero h1 { font-size: clamp(39px,3.7vw,52px); line-height: 1.08; margin-bottom: 23px; }
.jc-ab-hero h1 span { color: var(--jc-cyan); }
.jc-ab-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 15px 24px; margin-top: 24px; }
.jc-ab-actions > span { font-size: var(--jc-text-detail); line-height: 1.5; color: #d0e3eb; }
.jc-ab-hero-visual { display: grid; grid-template-columns: 1fr 130px; align-items: center; gap: 26px; }
.jc-ab-model { padding: 32px 25px 18px; border: 1px solid #087c83; border-radius: 3px; background: rgba(1,19,29,.55); }
.jc-ab-model-step { display: grid; grid-template-columns: 58px 1fr; align-items: center; gap: 19px; }
.jc-ab-model-step > i { font-size: 43px; text-align: center; color: var(--jc-cyan); justify-self: center; }
.jc-ab-model-step strong { font-size: 14px; line-height: 1.45; text-transform: uppercase; }
.jc-ab-model-arrow { width: 58px; text-align: center; font-size: 28px; color: var(--jc-cyan); line-height: 1.5; }
.jc-about-page .jc-ab-model-caption { color: #9bced2; font-size: var(--jc-text-detail); text-align: center; margin: 24px 0 0; }
.jc-about-page .jc-ab-note { font-family: "Segoe Print","Comic Sans MS",cursive; color: var(--jc-cyan); font-size: 20px; line-height: 1.55; transform: rotate(-7deg); margin: 0; }
.jc-ab-note:after { content: ''; display: block; width: 80%; height: 2px; background: currentColor; margin-top: 7px; }
.jc-ab-why-grid { display: grid; grid-template-columns: .82fr 1.18fr; gap: 38px; align-items: start; }
.jc-ab-comparison,.jc-ab-decisions { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 13px; }
.jc-ab-panel { border: 1px solid #c0dce3; border-radius: 3px; padding: 20px 17px; }
.jc-ab-caution { background: #faedf0; border-color: #efcdd5; }
.jc-ab-neutral { background: #e6f3f8; }
.jc-ab-good { background: #def9f4; border-color: #a4e7dc; }
.jc-ab-panel > i { font-size: 34px; color: #078d9f; display: block; margin-bottom: 15px; }
.jc-ab-comparison .jc-ab-panel > i,.jc-ab-comparison h3 { text-align: center; }
.jc-ab-comparison .jc-ab-panel > i { margin-left: auto; margin-right: auto; }
.jc-ab-caution > i { color: #e94d75; }
.jc-ab-good > i,.jc-ab-good h3 { color: #048f81; }
.jc-ab-list { list-style: none; padding: 0; margin: 0; }
.jc-ab-list li { padding-left: 20px; position: relative; font-size: var(--jc-text-detail); line-height: 1.5; margin-bottom: 5px; }
.jc-ab-list li:last-child { margin-bottom: 0; }
.jc-ab-list li:before { content: '✓'; position: absolute; left: 0; color: #00b8a0; font-weight: 800; }
.jc-ab-cross li:before { content: '×'; color: #df4768; }
.jc-about-page .jc-ab-takeaway { background: #d4f3f7; color: #143744; font-size: var(--jc-text-detail); line-height: 1.5; font-weight: 800; text-align: center; border-radius: 2px; padding: 9px 12px; margin: 12px 0 0; }
.jc-ab-dark .jc-ab-takeaway { color: var(--jc-cyan); background: rgba(0,255,192,.055); }
.jc-ab-experience-grid { display: grid; grid-template-columns: 1.15fr 1fr; gap: 38px; align-items: center; }
.jc-ab-experience-cells { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); border: 1px solid #16404d; border-radius: 3px; overflow: hidden; }
.jc-ab-experience-cells > div { padding: 21px 10px; text-align: center; border-right: 1px solid #16404d; border-bottom: 1px solid #16404d; }
.jc-ab-experience-cells > div:nth-child(4n) { border-right: 0; }
.jc-ab-experience-cells > div:nth-child(n+5) { border-bottom: 0; }
.jc-ab-experience-cells i { display: block; color: var(--jc-cyan); font-size: 30px; margin: 0 auto 13px; }
.jc-ab-experience-cells span { display: block; font-size: var(--jc-text-detail); line-height: 1.5; font-weight: 700; }
.jc-ab-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; }
.jc-ab-pair h2,.jc-ab-team h2,.jc-ab-relationships h2 { font-size: clamp(27px,2.3vw,32px); }
.jc-ab-flow-comparison { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.jc-ab-flow-comparison .jc-ab-panel { padding: 18px 14px; }
.jc-ab-flow-comparison h3 { font-size: var(--jc-text-body); text-align: center; color: #b83557; }
.jc-ab-flow-comparison .jc-ab-good h3 { color: #048f81; }
.jc-ab-flow { padding: 0; margin: 0; list-style: none; text-align: center; }
.jc-ab-flow li { font-size: var(--jc-text-detail); line-height: 1.5; }
.jc-ab-flow li:not(:last-child):after { content: '↓'; display: block; width: 100%; color: #bc5272; font-size: 25px; line-height: 1.2; padding: 5px 0; text-align: center; }
.jc-ab-good .jc-ab-flow li:not(:last-child):after { color: #039b8d; padding: 14px 0; }
.jc-ab-decisions { margin-bottom: 15px; }
.jc-ab-decisions .jc-ab-panel { padding: 19px 16px; }
.jc-ab-decisions h3 { text-transform: uppercase; font-size: var(--jc-text-body); margin-bottom: 5px; }
.jc-ab-decisions p { font-size: var(--jc-text-body); line-height: 1.5; margin-bottom: 0; }
.jc-ab-decisions .jc-ab-caution h3 { color: #bd3d59; }
.jc-ab-team-grid { display: grid; grid-template-columns: 1.55fr 1fr; gap: 38px; }
.jc-ab-team { display: grid; grid-template-columns: .85fr 1fr; gap: 18px; }
.jc-ab-constellation { position: relative; min-height: 300px; align-self: center; }
.jc-ab-constellation svg { position: absolute; width: 100%; height: 100%; }
.jc-ab-constellation path { stroke: #087078; stroke-width: 1; fill: none; }
.jc-ab-hub { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 43%; padding: 16px 9px; background: #031824; border: 1px solid #008c91; text-align: center; font-size: 15px; line-height: 1.4; font-weight: 800; border-radius: 3px; }
.jc-ab-capability { position: absolute; width: 29%; text-align: center; font-size: var(--jc-text-detail); line-height: 1.45; font-weight: 700; background: #031824; padding: 6px 3px; }
.jc-ab-capability i { display: block; color: var(--jc-cyan); font-size: 28px; margin: 0 auto 8px; }
.jc-ab-capability-0 { top: 0; left: 8%; }.jc-ab-capability-1 { top: 0; right: 8%; }
.jc-ab-capability-2 { top: 39%; left: -1%; }.jc-ab-capability-3 { top: 39%; right: -1%; }
.jc-ab-capability-4 { bottom: 0; left: 8%; }.jc-ab-capability-5 { bottom: 0; right: 8%; }
.jc-ab-two-lists { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.jc-ab-two-lists h3 { font-size: var(--jc-text-body); text-transform: uppercase; letter-spacing: .03em; color: var(--jc-cyan); }
.jc-ab-relationships .jc-ab-takeaway { text-align: left; }
.jc-ab-ai-grid { display: grid; grid-template-columns: .85fr 1.15fr; align-items: center; gap: 38px; }
.jc-ab-ai-grid h2 { font-size: 30px; }
.jc-ab-ai-visual { display: grid; grid-template-columns: 1.65fr 1fr; align-items: center; gap: 23px; }
.jc-ab-equation { display: grid; grid-template-columns: 1fr 16px 1fr 16px 1fr; align-items: center; gap: 8px; }
.jc-ab-equation > div { align-self: stretch; border: 1px solid #c7e6ee; border-radius: 3px; text-align: center; padding: 22px 8px; display: flex; flex-direction: column; justify-content: center; gap: 15px; }
.jc-ab-equation i { color: #02b9a6; font-size: 34px; align-self: center; }
.jc-ab-equation strong { font-size: var(--jc-text-detail); line-height: 1.5; text-transform: uppercase; color: #048c86; }
.jc-ab-equation > span { font-size: 23px; font-weight: 800; color: #00b8a4; text-align: center; }
.jc-ab-equation .jc-ab-equation-result { background: #dff9f4; border-color: #a4e7dc; }
.jc-ab-ai-visual .jc-ab-list li { font-size: var(--jc-text-detail); }
.jc-ab-beliefs-grid { display: grid; grid-template-columns: 1.8fr 1fr; gap: 38px; margin-top: 42px; }
.jc-ab-beliefs-grid h2 { font-size: 29px; }
.jc-ab-beliefs { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 13px; }
.jc-ab-beliefs article { padding: 17px; border: 1px solid #c9e3ea; border-radius: 3px; }
.jc-ab-beliefs i { font-size: 28px; color: #05a99d; margin-bottom: 14px; }
.jc-ab-beliefs h3 { font-size: var(--jc-text-body); line-height: 1.4; margin-bottom: 8px; }
.jc-ab-beliefs p { font-size: var(--jc-text-body); line-height: 1.5; margin: 0; }
.jc-ab-nebraska-visual { display: grid; grid-template-columns: .85fr 1.15fr; gap: 17px; align-items: center; margin-top: 23px; }
.jc-ab-nebraska .jc-ab-note { color: #009a8f; font-size: 19px; }
.jc-ab-nebraska figure { margin: 0; }
.jc-ab-nebraska img { display: block; width: 100%; height: 190px; object-fit: cover; border-radius: 2px; }
.jc-ab-nebraska figcaption { color: #466c79; font-size: var(--jc-text-detail); margin-top: 6px; }
.jc-ab-services { margin-top: 38px; }
.jc-ab-services h2 { font-size: 27px; }
.jc-ab-spectrum { display: grid; grid-template-columns: repeat(8,minmax(0,1fr)); gap: 13px; }
.jc-ab-spectrum-step { border: 1px solid #c7e6ee; border-radius: 3px; text-align: center; padding: 17px 6px 13px; position: relative; display: flex; flex-direction: column; align-items: center; }
.jc-ab-spectrum-step:not(:last-child):after { content: '→'; color: #029f9b; background: #eef7f9; font-size: 19px; line-height: 1; position: absolute; top: 50%; right: -13px; width: 13px; z-index: 1; }
.jc-ab-spectrum-step > i { color: #009f9d; font-size: 27px; margin-bottom: 11px; }
.jc-ab-spectrum-step strong { font-size: var(--jc-text-detail); color: #008e87; margin-bottom: 3px; }
.jc-ab-spectrum-step a { color: #315664; font-size: var(--jc-text-detail); line-height: 1.5; text-decoration: none; padding: 4px 0; }
.jc-ab-spectrum-step a:hover { text-decoration: underline; color: #007c75; }
.jc-ab-spectrum-plus { font-size: var(--jc-text-detail); line-height: 1; color: #008e87; }
.jc-ab-spectrum-evolve { background: #def9f4; border-color: #8ce2d6; }
.jc-ab-closing { background: linear-gradient(90deg,rgba(2,16,27,.96),rgba(2,16,27,.9) 48%,rgba(2,16,27,.75)),url('/Images/heroes/about-direct-engineering-v1.webp') center right / cover no-repeat; border-top: 1px solid #23616c; padding: 48px 0; }
.jc-ab-closing-grid { display: grid; grid-template-columns: 1.25fr 1fr; gap: 38px; align-items: center; }
.jc-ab-closing h2 { font-size: 31px; }
.jc-ab-closing-visual { display: grid; grid-template-columns: 1fr 120px; gap: 32px; align-items: center; }
.jc-ab-closing-visual ul { border: 1px solid #087c83; border-radius: 3px; background: rgba(1,19,29,.8); padding: 26px 23px; list-style: none; margin: 0; }
.jc-ab-closing-visual li { color: var(--jc-cyan); font-size: var(--jc-text-detail); font-weight: 800; text-transform: uppercase; margin-bottom: 15px; display: flex; align-items: center; gap: 12px; }
.jc-ab-closing-visual li:last-child { margin-bottom: 0; }
.jc-ab-closing-visual i { font-size: 20px; flex-shrink: 0; width: 22px; text-align: center; }
.jc-ab-hero-grid > *,.jc-ab-why-grid > *,.jc-ab-experience-grid > *,.jc-ab-pair > *,.jc-ab-team-grid > *,.jc-ab-team > *,.jc-ab-ai-grid > *,.jc-ab-ai-visual > *,.jc-ab-beliefs-grid > *,.jc-ab-closing-grid > * { min-width: 0; }
@media (max-width:1199px) {
    .jc-ab-hero-grid { gap: 30px; }
    .jc-ab-hero-visual { grid-template-columns: 1fr 130px; gap: 18px; }
    .jc-ab-model { padding: 25px 18px 18px; }
    .jc-ab-model-step { gap: 12px; }.jc-ab-model-step strong { font-size: var(--jc-text-detail); }
    .jc-ab-team-grid { grid-template-columns: 1.2fr 1fr; }.jc-ab-team { grid-template-columns: 1fr; }
    .jc-ab-constellation { width: 360px; max-width: 100%; justify-self: center; }
    .jc-ab-ai-visual { grid-template-columns: 1fr; }.jc-ab-ai-visual .jc-ab-list { display: grid; grid-template-columns: 1fr 1fr; gap: 5px 13px; }
    .jc-ab-spectrum { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 20px 17px; }.jc-ab-spectrum-step:nth-child(4):after { display: none; }
}
@media (max-width:991px) {
    .jc-ab-section { padding: 42px 0; }
    .jc-ab-hero-grid,.jc-ab-why-grid,.jc-ab-experience-grid,.jc-ab-pair,.jc-ab-team-grid,.jc-ab-ai-grid,.jc-ab-beliefs-grid,.jc-ab-closing-grid { grid-template-columns: 1fr; gap: 30px; }
    .jc-ab-hero-grid h1 { max-width: 650px; }
    .jc-ab-hero-visual { grid-template-columns: minmax(0,400px) 130px; justify-content: center; }
    .jc-ab-model-step strong { font-size: 14px; }
    .jc-ab-pair h2,.jc-ab-team h2,.jc-ab-relationships h2 { font-size: 30px; }
    .jc-ab-team { grid-template-columns: .9fr 1fr; gap: 25px; align-items: center; }
    .jc-ab-constellation { width: 100%; }
    .jc-ab-ai-visual { grid-template-columns: 1.5fr 1fr; }.jc-ab-ai-visual .jc-ab-list { display: block; }
    .jc-ab-nebraska-visual { grid-template-columns: .8fr 1.2fr; }.jc-ab-nebraska img { height: 210px; }
    .jc-ab-closing-visual { grid-template-columns: minmax(0,400px) 130px; justify-content: center; }
}
@media (max-width:575px) {
    .jc-ab-hero,.jc-ab-closing { padding: 38px 0; }
    .jc-ab-section { padding: 36px 0; }
    .jc-ab-hero h1 { font-size: 39px; }
    .jc-ab-hero-visual { grid-template-columns: 1fr; gap: 20px; }
    .jc-ab-hero-visual .jc-ab-note { text-align: center; justify-self: center; }.jc-ab-note:after { margin-left: auto; margin-right: auto; }
    .jc-ab-model { padding: 25px; }.jc-ab-model-step { grid-template-columns: 58px 1fr; gap: 20px; }
    .jc-ab-comparison,.jc-ab-decisions,.jc-ab-flow-comparison { grid-template-columns: 1fr; }
    .jc-ab-comparison .jc-ab-panel > i,.jc-ab-comparison h3 { text-align: left; }
    .jc-ab-comparison .jc-ab-panel > i { margin-left: 0; }
    .jc-ab-experience-cells { grid-template-columns: repeat(2,minmax(0,1fr)); }.jc-ab-experience-cells > div { border-right: 1px solid #16404d; border-bottom: 1px solid #16404d; }.jc-ab-experience-cells > div:nth-child(2n) { border-right: 0; }.jc-ab-experience-cells > div:nth-child(n+7) { border-bottom: 0; }
    .jc-ab-team { grid-template-columns: 1fr; }
    .jc-ab-constellation { display: grid; grid-template-columns: 1fr; gap: 9px; min-height: 0; padding-left: 17px; border-left: 1px solid #087078; }
    .jc-ab-constellation svg { display: none; }.jc-ab-hub,.jc-ab-capability { position: static; width: 100%; transform: none; }
    .jc-ab-hub { padding: 16px; margin-bottom: 7px; }
    .jc-ab-capability { display: flex; align-items: center; gap: 17px; padding: 12px 15px; border: 1px solid #16404d; text-align: left; font-size: var(--jc-text-detail); }.jc-ab-capability i { width: 30px; margin: 0; text-align: center; }
    .jc-ab-two-lists { grid-template-columns: 1fr; gap: 23px; }
    .jc-ab-ai-visual { grid-template-columns: 1fr; }.jc-ab-equation { grid-template-columns: 1fr; gap: 7px; }.jc-ab-equation > div { padding: 22px; }.jc-ab-equation strong { font-size: var(--jc-text-detail); }.jc-ab-ai-visual .jc-ab-list li { font-size: var(--jc-text-detail); }
    .jc-ab-beliefs { grid-template-columns: 1fr; }.jc-ab-beliefs article { padding: 20px; }
    .jc-ab-nebraska-visual { grid-template-columns: 1fr; gap: 24px; }.jc-ab-nebraska .jc-ab-note { justify-self: center; }.jc-ab-nebraska img { height: auto; aspect-ratio: 3 / 2; }
    .jc-ab-spectrum { grid-template-columns: 1fr; gap: 27px; }.jc-ab-spectrum-step { padding: 20px; }.jc-ab-spectrum-step strong { font-size: 15px; }.jc-ab-spectrum-step a { font-size: var(--jc-text-detail); min-height: 36px; display: flex; align-items: center; justify-content: center; }
    .jc-ab-spectrum-step:not(:last-child):after,.jc-ab-spectrum-step:nth-child(4):after { display: block; content: '↓'; top: auto; bottom: -26px; left: 50%; right: auto; transform: translateX(-50%); width: 24px; height: 24px; line-height: 24px; }
    .jc-ab-closing-visual { grid-template-columns: 1fr; gap: 25px; }.jc-ab-closing-visual .jc-ab-note { justify-self: center; text-align: center; }
    .jc-ab-actions { align-items: flex-start; flex-direction: column; }
}
