/* Kinetic Cloud - image-led editorial architecture. */
:root { --gutter:clamp(24px,4.6vw,76px); --ice:#e4ecf6; --ink:#111e32; }
.wrap { max-width:1680px; margin-inline:auto; padding-inline:var(--gutter); }
/* Ultrawide screens: keep the content column centred instead of stretching edge to edge. */
@media (min-width:1800px) {
  :root { --gutter:calc((100vw - 1600px) / 2); }
  .wrap { max-width:none; }
}

.landing { position:relative; isolation:isolate; overflow:hidden; background:#080f1b; min-height:100svh; padding:150px 0 35px; color:#f3f6fc; }
.landing__art { position:absolute; inset:150px 0 0; z-index:-2; }
.landing__art img { width:100%; height:100%; object-fit:cover; object-position:center 65%; }
.landing::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(180deg,#080f1b 0%,#080f1b22 38%,transparent 62%,#080f1bc7),linear-gradient(90deg,#080f1b90,transparent 60%); }
.landing__title { font-size:clamp(58px,7vw,112px); line-height:1.02; letter-spacing:-.065em; font-weight:400; margin:24px 0 0; max-width:1400px; }
.landing__title .mask { display:block; overflow:visible; padding:0; }
.landing__title .rise { display:inline; opacity:1; transform:none; animation:none; }
.landing__title em { color:inherit; font-weight:inherit; }
.landing__lower { margin-top:clamp(140px,15vw,240px); max-width:490px; }
.landing .hero__sub,.landing .hero6__sub { color:#d7e3f4; font-size:17px; max-width:42ch; margin:0; }
.landing .hero__cta,.landing .hero6__cta { margin-top:26px; display:flex; flex-wrap:wrap; gap:8px; }
.landing__meta { margin-top:65px; display:flex; align-items:center; justify-content:space-between; gap:24px; border-top:1px solid #d0def039; padding-top:25px; }
.landing__meta .tagband { padding:0; background:none; color:inherit; gap:22px; flex-wrap:wrap; }
.landing__meta .tagband span { color:#c8d6eb; font-size:10px; }
.landing__meta .hero__base { position:static; width:auto; padding:0; margin:0; border:0; gap:25px; }
.project-lead { padding:110px 0 120px; background:linear-gradient(135deg,#cbd9eb,#f2f5fa); color:var(--ink); }
.project-lead__layout { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:45px 28px; align-items:start; }
.project-lead__heading { grid-column:1/8; }
.project-lead .eyebrow { color:#46638b; margin:0 0 30px; }
.project-lead .h2 { color:var(--ink); font-size:clamp(38px,4.4vw,70px); line-height:1.06; margin:0; max-width:19ch; }
.project-lead .h2 em { color:#406bab; font-weight:400; }
.project-lead .show__media { grid-column:5/-1; grid-row:2; width:100%; margin:0; aspect-ratio:1.55; transform:perspective(1600px) rotateY(-5deg); box-shadow:20px 25px 65px #18335a24; overflow:hidden; border:1px solid #829bb443; }
.project-lead .show__media img { width:100%; height:100%; object-fit:cover; clip-path:none; transform:none; }
.project-lead__story { grid-column:1/5; grid-row:2; color:#4f6380; font-size:15px; padding-top:15px; }
.project-lead__story p { margin-bottom:24px; max-width:38ch; }
.project-lead__story .srow__go { display:flex; width:max-content; max-width:100%; color:#245dc1; margin-top:16px; }
.project-lead__story .tags { display:flex; flex-direction:column; margin-top:42px; gap:0; align-items:flex-start; }
.project-lead__story .tags span { color:#486180; border:0; border-top:1px solid #7993b440; width:100%; padding:12px 0; font-size:10px; }
.capabilities { background:#0c192d; color:#edf3fb; padding:120px 0; }
.capabilities__layout { display:grid; grid-template-columns:5fr 7fr; gap:7%; align-items:start; }
.capabilities__intro { position:sticky; top:130px; }
.capabilities__intro .eyebrow { display:block; color:#e7effa; font-size:clamp(36px,4vw,64px); line-height:1.07; letter-spacing:-.045em; text-transform:none; margin:0; font-weight:400; }
.capabilities__intro .eyebrow i { display:none; }
.capabilities__intro .feat__media { margin-top:50px; aspect-ratio:1.15; width:100%; border:0; }
.capabilities__intro img { width:100%; height:100%; object-fit:cover; }
.capabilities__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 36px; }
.capabilities .srow { display:flex; flex-direction:column; align-items:flex-start; gap:0; padding:30px 0 35px; border-top:1px solid #7493bc4d; border-bottom:0; min-width:0; }
.capabilities .srow:hover { background:transparent; }
.capabilities .srow__n { display:flex; flex-direction:row; align-items:center; gap:15px; font-size:10px; color:#92abd0; margin-bottom:42px; }
.capabilities .srow__t { color:#edf3fb; font-size:clamp(22px,2.1vw,32px); letter-spacing:-.03em; line-height:1.1; margin-bottom:20px; }
.capabilities .srow__b { color:#a9bbd5; font-size:14px; line-height:1.65; }
.capabilities__featured { grid-column:1/-1; border-top:1px solid #7493bc4d; padding-top:30px; display:grid; grid-template-columns:1fr 1fr; gap:20px 28px; }
.capabilities__featured .eyebrow { grid-column:1/-1; margin:0; color:#8fadda; }
.capabilities__featured h3 { margin:0; font-size:32px !important; }
.capabilities__featured .lede { margin:0; font-size:14px; color:#a9bbd5; }
.capabilities__featured .srow__go { grid-column:2; color:#c5daff; margin-top:10px; }
.product-collection { background:#dce7f4; color:var(--ink); padding:90px 0 100px; }
.product-collection >.wrap >.eyebrow { color:#476286; margin-bottom:55px; }
.product-collection .cards { display:flex; flex-direction:column; gap:70px; }
.product-collection .card { display:grid; grid-template-columns:1.3fr 1fr; align-items:center; gap:6%; border:0; background:transparent; box-shadow:none; overflow:visible; }
.product-collection .card:hover { transform:none; }
.product-collection .card__media { aspect-ratio:1.3; border:0; }
.product-collection .card__media img { width:100%; height:100%; object-fit:cover; }
.product-collection .card__body { padding:30px 0; border:0; color:var(--ink); }
.product-collection .card__t { font-size:clamp(34px,3.7vw,58px); line-height:1.05; margin-block:26px; }
.product-collection .card__b { color:#536780; font-size:16px; }
.product-collection .card__label { color:#315b97; font-size:12px; }
.product-collection .pill { color:#4b6689; border-color:#6c84a952; }
.product-collection .card__spec { color:#536780; margin-top:25px; }
.product-collection .card__link { color:#245dc1; margin-top:30px; }
.product-collection .card:nth-child(even) { grid-template-columns:1fr 1.3fr; }
.product-collection .card:nth-child(even) .card__media { order:2; }
.people-story { background:#10223d; padding:100px 0 0; color:#f2f6fd; overflow:hidden; }
.people-story .team { display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:end; }
.people-story .team>div { display:contents; }
.people-story .eyebrow { grid-column:1; color:#94b4df; margin:0; }
.people-story .kicker { grid-column:2; grid-row:1; color:#9eb9df; text-transform:none; letter-spacing:0; margin:0 !important; }
.people-story .h2 { grid-column:1; font-size:clamp(44px,4.8vw,76px); max-width:13ch; margin:0; }
.people-story .lede { grid-column:2; margin:0 0 5px; max-width:38ch; }
.people-story .band { grid-column:1/-1; width:78%; margin:20px 0 -2px auto !important; height:auto; aspect-ratio:1.9; }
.people-story .band img { width:100%; height:100%; object-fit:cover; clip-path:none; }
@media(max-width:1000px) {
 .landing { padding-top:140px; }.landing__title { font-size:7.3vw; }.landing__lower { margin-top:180px; }
 .project-lead__layout { gap:30px; }.project-lead__heading { grid-column:1/-1; }.project-lead .show__media { grid-column:5/-1; }.project-lead__story { grid-column:1/5; font-size:14px; }
 .capabilities__layout { grid-template-columns:1fr; gap:50px; }.capabilities__intro { position:static; display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:30px; }.capabilities__intro .feat__media { margin:0; aspect-ratio:1.8; }
 .product-collection .card,.product-collection .card:nth-child(even) { gap:30px; grid-template-columns:1fr 1fr; }
}
@media(max-width:700px) {
 .landing { padding:125px 0 26px; min-height:900px; }.landing__title { font-size:clamp(43px,10.2vw,70px); letter-spacing:-.055em; }.landing__art { inset:260px -25% 0 -25%; }.landing__art img { object-position:65% center; opacity:.65; }
 .landing::after { background:linear-gradient(180deg,#080f1b 15%,transparent 50%,#080f1bcc 82%); }.landing__lower { margin-top:220px; }.landing__meta { margin-top:40px; gap:15px; }.landing__meta .tagband { gap:10px; }.landing__meta .tagband span { font-size:8px; }
 .project-lead,.capabilities { padding-block:70px; }.project-lead__layout { display:flex; flex-direction:column; }.project-lead .show__media { transform:none; order:2; }.project-lead__story { order:3; padding:0; }.project-lead__story p { max-width:none; }.project-lead__story .tags { margin-top:24px; }
 .capabilities__intro { display:block; }.capabilities__intro .feat__media { margin-top:28px; aspect-ratio:1.6; }.capabilities__grid { column-gap:25px; }.capabilities .srow__t { font-size:24px; }.capabilities .srow__n { margin-bottom:25px; }.capabilities__featured { display:flex; flex-direction:column; }
 .product-collection { padding-block:65px; }.product-collection .card,.product-collection .card:nth-child(even) { display:flex; flex-direction:column; gap:10px; }.product-collection .card:nth-child(even) .card__media { order:0; }.product-collection .card__media { width:100%; aspect-ratio:1.45; }.product-collection .card__body { padding:20px 0; }
 .people-story { padding-top:70px; }.people-story .team { display:flex; flex-direction:column; align-items:stretch; gap:20px; }.people-story .team>div { display:contents; }.people-story .band { width:100%; aspect-ratio:1.4; }.people-story .kicker { order:1; }.people-story .h2 { order:2; }.people-story .lede { order:3; }.people-story .band { order:4; }
}
@media(prefers-reduced-motion:reduce) { .project-lead .show__media { transform:none; } }

/* Version two uses a centered masthead and an illustrated capability gallery. */
/* SOYGEN: a credentials strip and wide, continuously paced case-study chapters. */
.opening--soygen .hero-eyebrow { color:#9cb8dc; margin-bottom:24px; }.opening--soygen .opening__title { max-width:19ch; }
.opening--soygen .opening__meta { flex-direction:row; }.opening--soygen .hero-chips { max-width:none; }
.case-credentials { background:#e0eaf5; max-width:none; padding-top:60px; padding-bottom:60px; }
.case-credentials .deck { background:transparent; border:0; color:#1a304f; }.case-credentials .deck-top { background:transparent; color:#2e4a71; border-bottom:1px solid #93aaca66; padding:0 0 26px; gap:20px; }
.case-credentials .deck-top .tail { color:#577394; }.case-credentials .deck-top .mark { margin:0; color:#25446e; }.case-credentials .deck-body { display:grid; grid-template-columns:1.2fr 1fr; gap:6%; padding:32px 0; }
.case-credentials .deck-quote { border:0; padding:0; }.case-credentials .deck-facts { padding:0; background:none; display:grid; grid-template-columns:1fr 1fr; gap:25px; }
.case-credentials .fact { border:0; padding:0; }.case-credentials .fact dt { color:#627c9e; }.case-credentials .fact dd { color:#1c385f; }
.case-credentials .quotes .name { color:#29496f; }.case-credentials .who,.case-credentials .pending,.case-credentials .pending-tag { color:#607c9e; }
.case-credentials .deck-rail { border-top:1px solid #93aaca66; padding:22px 0 0; background:none; }.case-credentials .deck-rail span { color:#31577e; }
.soygen-story { background:#e0eaf5; color:#172d4a; }
body[data-layout] .soygen-story .block { padding:85px 0; background:none; color:#172d4a; border-top:1px solid #86a1c144; --text:#172d4a; --dim:#536e91; --muted:#6a83a4; --surface:#f0f5fb; --surface-2:#dbe6f3; --line:#87a0bf40; --line-2:#87a0bf66; }
.soygen-story .block-grid { grid-template-columns:1fr; gap:25px; }
.soygen-story .block-marker { position:static; display:flex; align-items:center; gap:20px; }.soygen-story .block-marker .num { font-size:12px; margin:0; color:#4d72a4; }.soygen-story .block-marker .label { color:#6883a5; }
.soygen-story .block-grid>div:last-child { display:grid; grid-template-columns:1fr 1.2fr; column-gap:8%; align-items:start; }
.soygen-story h2 { grid-column:1; font-size:clamp(38px,4.1vw,64px); max-width:16ch; line-height:1.06; margin:0; }
.soygen-story .block-grid>div:last-child>p { grid-column:2; font-size:16px; max-width:none; margin:0; }
.soygen-story .visual,.soygen-story .perm-grid,.soygen-story .status-row { grid-column:1/-1; margin-top:45px; }
.soygen-story .chapter-spread--2 .visual { width:83%; margin-left:auto; }
.soygen-story .mock { background:#152c4b; }.soygen-story .mock-tabs { background:#132944; }.soygen-story .mock-panel .desc { color:#b4cae5; }.soygen-story .perm { padding:30px; background:#ecf3fa; }
.soygen-story .rail { gap:30px; }.soygen-story .rail-step { padding-top:30px; }.soygen-story .status-cell { background:#173858; }.soygen-story .status-cell .cap { color:#a6c1e2; }
body[data-page="work-soygen"] .cta { padding:110px 0; background:#112a49; }
body[data-layout] .close6,body[data-layout] .closeband { padding-top:90px; background:#0b1729; }
body[data-layout] .close6>.wrap { display:grid; grid-template-columns:1.2fr 1fr; gap:25px 8%; }
body[data-layout] .close6 h2 { grid-column:1; font-size:clamp(38px,4.8vw,76px); max-width:17ch; margin:0; }
body[data-layout] .close6>.wrap>.lede6 { grid-column:1; }
body[data-layout] .close6>.wrap>.reveal:not(h2):not(p):not(.close6__meta) { grid-column:1; margin-top:0 !important; }
body[data-layout] .close6__meta { grid-column:2; grid-row:1/4; display:flex; flex-direction:column; margin:0; align-self:end; gap:22px; font-size:12px; padding:0 0 15px; }
body[data-layout] .close6__meta span { max-width:36ch; }
body[data-layout] .close6__foot { grid-column:1/-1; width:100%; margin-top:55px; }
body[data-layout] .closeband>.wrap { display:grid; grid-template-columns:1.2fr 1fr; gap:35px 8%; }
body[data-layout] .closeband .close { font-size:clamp(44px,5vw,80px); grid-column:1; max-width:15ch; }
body[data-layout] .closeband .mail { grid-column:1; font-size:clamp(17px,2vw,29px); margin:0; }
body[data-layout] .closeband .footgrid { grid-column:2; grid-row:1/4; display:grid; grid-template-columns:1fr 1fr; align-content:start; margin:0; gap:35px; padding:0; border:0; }
body[data-layout] .closeband .foot__nav { grid-column:1; margin:0; }.closeband .foot { grid-column:1/-1; width:100%; margin-top:20px; }
body[data-layout] .closeband .tagband { grid-column:1; display:flex; flex-direction:column; align-items:flex-start; gap:4px; background:none; padding:0; margin:0; }
body[data-layout] .closeband .tagband span { font-size:clamp(30px,3.4vw,54px); letter-spacing:-.04em; text-transform:none; font-weight:400; color:#a4bde0; }.closeband .tagband i { display:none; }
/* Work: outcome-led exhibits with a continuous two-column case narrative. */
body[data-layout] .case-metrics { padding:55px var(--gutter) !important; max-width:none; margin:0; background:#d8e4f2; }
.case-metrics>.wrap { padding:0; }.case-metrics .stats,.case-metrics .stats6 { margin:0; border:0; padding:0; background:none; gap:35px; }
.case-metrics .stats>div { background:none; padding:0; }
.case-metrics .stats b,.case-metrics .stats6 b { font-size:clamp(40px,4.6vw,72px); font-weight:300; color:#264e87; }
.stats6 b span,.stats b span { display:inline; font-size:inherit; font-weight:inherit; color:inherit; margin:0; }
.case-metrics .stats>div>span,.case-metrics .stats6>div>span { color:#536c8e; font-size:12px; text-transform:none; letter-spacing:0; }
body[data-layout] .case-exhibit { background:#0b1729; padding:90px 0 80px !important; }
.case-exhibit .h2,.case-exhibit h2 { color:#edf4fe; max-width:22ch; }.case-exhibit .eyebrow { color:#93afd3; }
body[data-layout] .case-exhibit .show__media,body[data-layout] .case-exhibit .wide6 { margin:50px var(--gutter) 0 auto; width:76%; max-width:76%; height:auto; aspect-ratio:1.7; border:1px solid #748fb340; box-shadow:-30px 35px 70px #0003; }
.case-exhibit .show__media img { clip-path:none; transform:none; width:100%; height:100%; object-fit:cover; }.case-exhibit .widebar,.case-exhibit .widecap { color:#95afd0; }
.case-story { background:#e2ebf6; }
body[data-layout] .case-chapter { background:transparent; padding:80px 0 !important; color:#172943; --txt:#172943; --dim:#536d8d; --muted:#627d9e; --sig:#3269b6; --azure:#3269b6; --card:transparent; --panel:transparent; --line:#7591b33d; border-bottom:1px solid #7893b533; }
.case-chapter>.wrap { display:grid; grid-template-columns:1fr 1.15fr; gap:25px 7%; align-items:start; }
.case-chapter .mgrid>div:not(.mark) { display:contents; }
.case-chapter .mark,.case-chapter .secnum { grid-column:1/-1; margin-bottom:5px; }
.case-chapter h2 { grid-column:1; grid-row:2; position:sticky; top:130px; max-width:17ch; }
.case-chapter .lede,.case-chapter .lede6,.case-chapter .res,.case-chapter .res6,.case-chapter .caps,.case-chapter .grid6,.case-chapter .pbars,.case-chapter .pbars6,.case-chapter .loop,.case-chapter .loop6,.case-chapter .method { grid-column:2; margin-top:0 !important; }
.case-chapter .pair,.case-chapter .pair6 { grid-column:1/-1; margin-top:25px; }
.case-chapter .grid6,.case-chapter .caps { gap:0 22px; background:none; border:0; grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
.case-chapter .grid6>div,.case-chapter .caps>div { background:none; border:0; border-top:1px solid #849cb93d; padding:20px 0; }.case-chapter h3 { font-size:19px; font-weight:400; }
.case-chapter .res li,.case-chapter .res6 li { font-size:15px; padding:18px 0; }
.case-chapter .loop,.case-chapter .loop6 { grid-template-columns:1fr 1fr; }.case-chapter .loop>div,.case-chapter .loop6>div { padding:18px; }
.case-chapter .method { grid-template-columns:1fr; }.case-chapter .mstep { background:none; border:0; border-top:1px solid #849cb93d; padding:20px 0; }
body[data-layout] .outcome-statement { background:#132b4b; padding:110px 0; color:#edf4fe; }
.outcome-statement .lede,.outcome-statement .lede6 { color:#a6bfdc; }.outcome-statement h2,.outcome-statement .close { max-width:none; font-size:clamp(56px,8vw,128px) !important; }
/* Mainframe: paired code is followed by a reading column and a vertical migration. */
body[data-layout] .code-exhibit { background:#dce7f4; padding:80px 0; }
.code-exhibit .codes,.code-exhibit .codes6 { gap:0; margin-top:45px; box-shadow:0 20px 60px #1c3b6120; }
.code-exhibit .codes figure,.code-exhibit .codes6 figure { background:#10213a; border:0; }
.code-exhibit .codes .to,.code-exhibit .codes6 .to { background:#f0f5fa; }
.code-exhibit pre { color:#a5bbdb; }.code-exhibit .to pre { color:#213b60; }.code-exhibit figcaption { color:#a5bbdb; border-bottom-color:#7e99bc3a; }
.modernization-story { background:#e2ebf6; }
body[data-layout] .migration-editorial,body[data-layout] .language-editorial { background:transparent; padding:80px 0; color:#142842; --txt:#142842; --dim:#567191; --muted:#637d9c; --card:transparent; --sig:#376caf; }
.migration-editorial>.wrap { display:grid; grid-template-columns:1fr 1.15fr; gap:26px 8%; align-items:start; }.migration-editorial .mgrid>div:not(.mark) { display:contents; }.migration-editorial .mark,.migration-editorial .secnum { grid-column:1/-1; }
.migration-editorial h2 { grid-column:1; grid-row:2; position:sticky; top:130px; }.migration-editorial .lede,.migration-editorial .lede6 { grid-column:2; margin:0; }
.migration-editorial .method,.migration-editorial .grid6 { grid-column:2; display:block; margin:15px 0 0; background:none; }
.migration-editorial .mstep,.migration-editorial .grid6>div { border:0; border-left:1px solid #8fa6c466; padding:0 0 38px 28px; background:none; }.migration-editorial h3 { font-size:25px; font-weight:400; }.migration-editorial p { font-size:14px; }
body[data-layout] .language-editorial { padding-top:0; }.language-editorial .words,.language-editorial .words6 { display:flex; flex-wrap:wrap; gap:0 25px; line-height:1.6; }
.language-editorial .words span,.language-editorial .words6 span { color:#456b9e; font-size:clamp(24px,3vw,45px); border:0; padding:0; font-weight:400; }
body[data-layout] .language-editorial .wide,body[data-layout] .language-editorial .wide6 { width:70%; max-width:70%; margin-left:auto; }
body[data-layout] .proof-editorial { background:#122945; color:#edf3fa; --txt:#edf3fa; --dim:#a5bddc; --muted:#8eacd3; padding:110px 0; }
.proof-editorial .bignum,.proof-editorial .stats6 { margin-top:50px; }.proof-editorial h2 { max-width:18ch; }.proof-editorial .stats6 b,.proof-editorial .bignum b { font-size:clamp(46px,6vw,90px); }

/* Careers: immediate role browsing, followed by one combined culture / FAQ spread. */
body[data-layout] .opportunities-editorial { background:#e5edf6; padding:75px 0 95px; position:relative; }
.opportunities-editorial>.wrap { display:grid; grid-template-columns:190px 1fr; gap:5%; align-items:start; }
.opportunities-editorial .filters,.opportunities-editorial .filters6 { display:flex; flex-direction:column; align-items:stretch; gap:8px; margin:0; position:sticky; top:120px; }
.opportunities-editorial .filters button,.opportunities-editorial .filters6 button { padding:14px 16px; border:0; text-align:left; color:#5a7495; font-size:12px; background:transparent; }
.opportunities-editorial .filters button.on,.opportunities-editorial .filters6 button.on { background:#19395f; color:white; }
.opportunities-editorial .roles,.opportunities-editorial .roles6 { display:grid; grid-template-columns:1fr 1fr; gap:28px; border:0; margin:0; }
.opportunities-editorial .role,.opportunities-editorial .role6 { display:flex; flex-direction:column; align-items:flex-start; gap:15px; background:#f3f7fb; border:1px solid #7e97b435; padding:30px; min-height:245px; transition:background .2s,transform .2s; }
.opportunities-editorial .role:hover,.opportunities-editorial .role6:hover { background:#fff; padding:30px; transform:translateY(-3px); }
.opportunities-editorial .role__t,.opportunities-editorial .rt { font-size:28px; line-height:1.1; letter-spacing:-.03em; order:2; }
.opportunities-editorial .role__d,.opportunities-editorial .rd { color:#6280a4; font-size:10px; order:1; }
.opportunities-editorial .role__s,.opportunities-editorial .rs { color:#3c5a7d; font-size:15px; margin-top:auto; padding-top:15px; order:3; }
.opportunities-editorial .role__a,.opportunities-editorial .ra { order:4; color:#2a63b0; font-size:11px; }
.careers-context { display:grid; grid-template-columns:1fr 1fr; gap:9%; padding:95px var(--gutter); background:#10233e; }
body[data-layout] .careers-context>.sec,body[data-layout] .careers-context>.sech { background:none; padding:0; color:#e4edf9; --txt:#e4edf9; --dim:#a9bfdc; --muted:#91acd0; --sig:#91b9f3; --card:transparent; --line:#829fc333; --line-2:#829fc355; }
.careers-context .wrap { padding:0; }
.benefits-editorial .caps,.benefits-editorial .grid6 { display:block; background:none; border:0; margin-top:40px; }.benefits-editorial .caps>div,.benefits-editorial .grid6>div { padding:18px 0; background:none; border:0; border-top:1px solid #829fc333; }.benefits-editorial h3,.benefits-editorial h3.mono { font-size:17px; font-family:inherit; font-weight:400; letter-spacing:0; text-transform:none; color:#c1d3ed; }
.question-editorial .faq,.question-editorial .faq6 { margin-top:30px; }.question-editorial summary { font-size:19px; font-weight:400; padding-block:20px; }.question-editorial details p { font-size:14px; }

/* Contact: a useful form in the opening, with location and FAQs grouped beneath. */
.contact-experience { background:#0d1e35; color:#edf4fc; padding:155px 0 85px; }
.contact-experience__layout { display:grid; grid-template-columns:1fr 1.05fr; gap:8%; align-items:start; }
.contact-experience__intro .kicker { color:#9bb7de; margin-bottom:26px; }
.contact-experience .opening__title { font-size:clamp(52px,6.3vw,96px); max-width:11ch; }
.contact-experience .opening__summary { margin-top:30px; max-width:38ch; }
.contact-experience .opening__meta { margin-top:25px; }
.contact-experience__image { margin-top:45px; aspect-ratio:1.8; overflow:hidden; }.contact-experience__image img { width:100%; height:100%; object-fit:cover; }
.contact-experience .cinfo,.contact-experience .cinfo6 { grid-template-columns:1fr 1fr; gap:24px; margin-top:35px; }.contact-experience .cinfo b,.contact-experience .cinfo6 b { color:#89a9d1; font-size:10px; }.contact-experience .cinfo span,.contact-experience .cinfo6 span,.contact-experience .cinfo a.big,.contact-experience .cinfo6 a.big { font-size:14px; overflow-wrap:anywhere; color:#b4c9e3; }
.contact-experience__form { background:#eaf0f7; padding:45px; position:sticky; top:115px; color:#142944; --txt:#142944; --dim:#56708f; --muted:#56708f; --low:#627c9c; --line:#7b96b642; --line-2:#7b96b670; --card:transparent; --bg:#eaf0f7; --night:#eaf0f7; }
.contact-experience .form,.contact-experience .form6 { gap:24px; }
.contact-experience label { font-family:inherit; font-size:11px; text-transform:none; letter-spacing:.02em; }
.contact-experience input,.contact-experience select,.contact-experience textarea { background:#f8fbfe; border:1px solid #7994b24a; padding:12px; border-radius:0; font-size:16px; width:100%; min-height:46px; }
.contact-experience textarea { min-height:160px; resize:vertical; }
.contact-experience .form__foot,.contact-experience .form6__foot { align-items:flex-start; flex-direction:column; gap:22px; }
.contact-experience .form__note,.contact-experience .form6__note { font-family:inherit; font-size:11px; text-transform:none; letter-spacing:0; }
.contact-experience .form__foot .btn,.contact-experience .form6__foot .btn { background:#12345e; color:#fff; align-self:flex-end; }
.contact-followthrough { background:#e1ebf6; display:grid; grid-template-columns:1.05fr 1fr; gap:8%; padding:90px var(--gutter); align-items:start; }
body[data-layout] .contact-followthrough>.sec,body[data-layout] .contact-followthrough>.sech { background:none; padding:0; color:#172d49; --txt:#172d49; --dim:#526f91; --muted:#6683a5; --line:#7d98b63d; --line-2:#7d98b650; }
.contact-followthrough .wrap { padding:0; }.contact-followthrough .map,.contact-followthrough .map6 { margin-top:30px; }.contact-followthrough .kvis--map { height:490px; }.contact-followthrough .map__bar,.contact-followthrough .metas6 { margin-top:0; font-size:10px; }
/* Inner-page openings: broad title above an offset image and compact reading column. */
.page-opening { padding:155px 0 80px; background:#0b1729; color:#edf3fb; overflow:hidden; }
.page-opening .kicker { color:#9db7db; margin-bottom:25px; }
.opening__title { font-family:inherit; font-size:clamp(48px,6.5vw,104px); line-height:1.03; font-weight:400; letter-spacing:-.055em; margin:0; max-width:19ch; position:relative; z-index:1; }
.opening__title .mask { display:inline; padding:0; overflow:visible; }.opening__title .rise { display:inline; opacity:1; transform:none; animation:none; }.opening__title .mask+.mask { margin-left:.18em; }.opening__title em { color:#a5c6fa; font-weight:400; }
.opening__lower { display:grid; grid-template-columns:4.4fr 7fr; gap:7%; margin-top:55px; align-items:start; }
.opening__copy { padding-top:26px; border-top:1px solid #86a5ce55; }
.opening__summary { color:#b9cbe4; font-size:17px; line-height:1.65; max-width:47ch; margin:0; }
.opening__meta { display:flex; flex-wrap:wrap; flex-direction:column; gap:9px; margin-top:35px; padding:0; border:0; font-size:10px; letter-spacing:.065em; text-transform:uppercase; color:#8aa8cf; }
.opening__image { margin:0 -3vw -120px 0; height:400px; position:relative; border:1px solid #9ebada26; overflow:hidden; }
.opening__image img { width:100%; height:100%; object-fit:cover; display:block; }
.opening--products { padding-bottom:0; }.opening--products .opening__image { height:290px; margin-bottom:0; }
body[data-layout] .mgrid { display:block; }
body[data-layout] .mark { position:static; display:flex; align-items:center; gap:15px; margin-bottom:34px; }
body[data-layout] .mark .n { margin:0; font-size:11px; }
body[data-layout] .mark .l { font-size:10px; }
body[data-layout] .secnum { font-size:12px; font-weight:400; -webkit-text-stroke:0; margin-bottom:30px; }
body[data-layout] .h2,body[data-layout] .sech h2 { font-size:clamp(36px,4.2vw,66px); line-height:1.07; font-weight:400; letter-spacing:-.045em; }
body[data-layout] .lede,body[data-layout] .lede6 { font-size:17px; line-height:1.7; }
body[data-layout] .wide,body[data-layout] .wide6 { max-width:calc(100% - 2 * var(--gutter)); margin:55px var(--gutter) 0; height:auto; aspect-ratio:2.1; }
body[data-layout] .wide img,body[data-layout] .wide6 img { clip-path:none; width:100%; height:100%; object-fit:cover; }
body[data-layout] .widebar,body[data-layout] .widecap { font-size:10px; letter-spacing:.035em; padding-top:20px; }

/* Services: five independent editorial features, then practice and engagement. */
body[data-layout] .service-directory { background:#e2ebf6; padding:110px 0 80px; }
.service-directory .svc,.service-directory .rowlist { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:55px 38px; border:0; margin-top:60px; }
.service-directory .srow,.service-directory .row6 { display:flex; flex-direction:column; gap:20px; align-items:start; border:0; border-top:1px solid #738db14f; padding:26px 0 0; grid-column:span 2; }
.service-directory .srow:nth-child(-n+2),.service-directory .row6:nth-child(-n+2) { grid-column:span 3; }
.service-directory .srow:nth-child(2),.service-directory .row6:nth-child(2) { margin-top:80px; }
.service-directory .srow:hover,.service-directory .row6:hover { background:transparent; }
.service-directory .srow__n,.service-directory .rn { flex-direction:row; gap:20px; font-size:11px; align-items:center; padding:0; margin-bottom:15px; }
.service-directory h3 { font-size:clamp(26px,2.8vw,40px); font-weight:400; line-height:1.08; letter-spacing:-.04em; max-width:17ch; }
.service-directory .srow:nth-child(-n+2) h3,.service-directory .row6:nth-child(-n+2) h3 { font-size:clamp(32px,3.5vw,52px); }
.service-directory .srow>div,.service-directory .row6>div { width:100%; }.service-directory p { font-size:15px; color:#526a89; }
.service-directory .chips6,.service-directory .srow__items { display:flex; flex-wrap:wrap; gap:0 10px; margin-top:22px; padding:0; }
.service-directory .chips6 span,.service-directory .srow__items span { background:none; border:0; border-bottom:1px solid #7c96b74d; padding:7px 0; font-size:10px; color:#4e698b; line-height:1.5; }
.service-directory .srow__items span::before,.service-directory .srow__items span::after { display:none; }
body[data-layout] .connection-story { display:grid; grid-template-columns:1fr 1fr; padding:100px var(--gutter); gap:20px 6%; background:#10213a; align-items:center; }
.connection-story>.wrap:first-child { padding:0; grid-column:1; margin:0; }.connection-story .mgrid>div:not(.mark) { display:block; }
body[data-layout] .connection-story .wide,body[data-layout] .connection-story .wide6 { margin:0; max-width:none; grid-column:2; grid-row:1; width:100%; aspect-ratio:1.2; height:auto; }
.connection-story .widebar,.connection-story .widecap { padding:0; grid-column:2; margin:0; }
.connection-story .rail6 { padding-top:30px; }.connection-story .kvis { padding:15px; }.connection-story .vis-flow li { padding:12px 8px; }.connection-story .vis-flow span { font-size:11px; }
.practice-story { display:grid; grid-template-columns:1fr 1fr; background:#dce7f4; padding:100px var(--gutter); gap:8%; }
body[data-layout] .practice-story>.sec,body[data-layout] .practice-story>.sech { background:transparent; padding:0; }
.practice-story .wrap { padding:0; }
.stack-directory .stack,.stack-directory .stack6 { grid-template-columns:1fr 1fr; gap:28px 30px; margin-top:30px; }
.stack-directory .stack b,.stack-directory .stack6 b { color:#5c7190; font-size:10px; }.stack-directory .stack li,.stack-directory .stack6 li { font-size:20px; }
.method-editorial .method,.method-editorial .grid6 { display:block; margin-top:30px !important; background:none; }
.method-editorial .mstep,.method-editorial .grid6>div { display:grid; grid-template-columns:60px 1fr; gap:8px 18px; border:0; border-top:1px solid #8299b74d; padding:25px 0; background:none; box-shadow:none; }
.method-editorial .mstep b,.method-editorial .gn { grid-row:1/3; grid-column:1; font-size:10px; padding-top:5px; color:#4d6fa1; }
.method-editorial h3 { grid-column:2; font-size:22px; margin:0 !important; letter-spacing:-.025em; font-weight:400; }.method-editorial p { grid-column:2; margin:0; font-size:14px; }
body[data-layout] .engagement-editorial { padding:95px 0; background:#edf2f8; }
.engagement-editorial .wrap>.mgrid { display:contents; }
.engagement-editorial .caps,.engagement-editorial .grid6 { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)) !important; gap:30px; margin-top:45px; background:none; border:0; }
.engagement-editorial .caps>div,.engagement-editorial .grid6>div { background:none; padding:25px 0 0; border:0; border-top:1px solid #748dae4d; }
.engagement-editorial h3 { font-size:22px; font-weight:400; line-height:1.15; }.engagement-editorial p { font-size:14px; }

/* Products: sculpture, floating interface exhibit and a continuous feature atlas. */
.product-exhibit { background:#0b1729; padding-bottom:100px; overflow:hidden; }
.product-exhibit .page-opening { padding-bottom:0; }.product-exhibit .opening__image { height:470px; margin:0 -4vw 0 0; }
body[data-layout] .exhibit-screen { position:relative; padding:0 0 0 var(--gutter) !important; margin:-50px 0 0; width:76%; background:transparent; z-index:2; }
.exhibit-screen>.wrap { padding:0; max-width:none; color:#9cb6d9; font-size:10px; }
.exhibit-screen .show__media,body[data-layout] .exhibit-screen .wide6 { width:100%; max-width:none; height:auto; aspect-ratio:1.6; margin:20px 0 0; border:1px solid #91aed34a; box-shadow:0 35px 80px #0005; transform:none; overflow:hidden; }
.exhibit-screen .show__media img { width:100%; height:100%; object-fit:cover; clip-path:none; transform:none; }
.exhibit-screen .eyebrow { color:#aac3e4; }.exhibit-screen .widebar,.exhibit-screen .widecap { padding-top:16px; color:#91accf; }
.product-detail-story { background:#e2ebf6; padding:100px 0; }
body[data-layout] .feature-atlas { background:transparent; padding:0; }
.feature-atlas .duo { grid-template-columns:1.25fr 1fr; gap:6%; align-items:center !important; }
.feature-atlas .caps,.feature-atlas .grid6 { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:0 38px; background:none; border:0; margin-top:40px; }
.feature-atlas .caps>div,.feature-atlas .grid6>div { background:none; border:0; border-top:1px solid #7691b440; padding:24px 0 28px; }
.feature-atlas h3,.feature-atlas h3.mono { font-family:inherit; font-size:22px; font-weight:400; letter-spacing:-.02em; text-transform:none; color:#203656; }.feature-atlas p { font-size:15px; color:#576e8c; }
.feature-atlas .feat__media { position:sticky; top:130px; border:0; margin:0; padding:0; }
body[data-layout] .feature-evidence { background:transparent; padding:25px 0 0; width:73%; margin-left:auto; }
body[data-layout] .feature-evidence .wide6 { max-width:calc(100% - 2 * var(--gutter)); aspect-ratio:1.8; }.feature-evidence .widecap { color:#536e93; }
body[data-layout] .process-editorial { background:#11243e; color:#edf4fe; padding:100px 0; --txt:#edf4fe; --dim:#aec2de; --sig:#9fc3ff; }
.process-editorial .loop,.process-editorial .loop6 { display:grid; grid-template-columns:repeat(4,1fr); border:0; border-top:1px solid #789aca66; margin-top:60px; background:none; }
.process-editorial .loop>div,.process-editorial .loop6>div { padding:32px 25px 0 0; background:none; border:0; box-shadow:none; position:relative; }
.process-editorial .loop>div::before,.process-editorial .loop6>div::before { content:""; position:absolute; top:-4px; width:7px; height:7px; background:#96baff; }
.process-editorial .loop b,.process-editorial .loop6 b { font-size:36px; font-weight:300; color:#82a6d9; margin-bottom:35px; }.process-editorial .loop span,.process-editorial .loop6 span { font-size:22px; }.process-editorial .loop i,.process-editorial .loop6 i { font-size:12px; color:#9bb5d8; }

/* Company: purpose and studio share a spread, with history and values in parallel. */
body[data-layout] .purpose-editorial { background:#0b1729; padding:100px var(--gutter) !important; display:grid; grid-template-columns:1fr 1fr; gap:30px 7%; align-items:center; }
.purpose-editorial>.wrap:first-child { grid-column:2; grid-row:1; padding:0; }.purpose-editorial .split,.purpose-editorial .split6 { display:flex; flex-direction:column; gap:40px; margin:0; }
.purpose-editorial .split p,.purpose-editorial .split6 p { font-size:clamp(20px,2vw,30px); font-weight:400; line-height:1.4; }.purpose-editorial .split b,.purpose-editorial .split6 b { color:#91add2; font-size:11px; }
body[data-layout] .purpose-editorial .wide,body[data-layout] .purpose-editorial .wide6 { grid-column:1; grid-row:1; max-width:none; width:100%; margin:0; aspect-ratio:.95; }
.purpose-editorial .widebar,.purpose-editorial .widecap { grid-column:1; margin:0; padding:0; }
.company-story { display:grid; grid-template-columns:1fr 1fr; gap:9%; background:#e2ebf6; padding:100px var(--gutter); }
body[data-layout] .company-story>.sec,body[data-layout] .company-story>.sech { background:none; padding:0; color:#172943; --txt:#172943; --dim:#536d8d; --muted:#6a82a1; }
.company-story .wrap { padding:0; }.history-editorial .tl,.history-editorial .grid6 { display:block; margin-top:0; border:0; background:none; }
.history-editorial .tl>div,.history-editorial .grid6>div { background:none; border:0; border-left:1px solid #8ba3c166; padding:0 0 40px 28px; }
.history-editorial .tl>div::before { display:none; }.history-editorial b,.history-editorial .gn { color:#3564a8; font-size:11px; }.history-editorial h3 { font-size:25px; margin-top:14px; font-weight:400; }.history-editorial p { font-size:14px; max-width:42ch; }
.values-editorial .vrow,.values-editorial .vrow6 { display:block; padding:0 0 36px; margin-bottom:35px; border:0; border-bottom:1px solid #8ba3c166; }
.values-editorial .vrow>span,.values-editorial .vrow6>b { font-size:11px; color:#3564a8; }.values-editorial h3 { font-size:38px; margin:18px 0; font-weight:400; letter-spacing:-.04em; }.values-editorial p { font-size:15px; max-width:42ch; }
.landing--v6 .landing__title { max-width:1200px; margin-inline:auto; text-align:center; font-size:clamp(58px,7.2vw,116px); }
.landing--v6 .landing__title .mask { display:inline; }
.landing--v6 .landing__title .mask:nth-child(2)::after { content:""; display:block; }
.landing--v6 .landing__title .mask:nth-child(odd) { margin-right:.2em; }
.landing--v6 .landing__lower { margin-top:240px; }
.landing--v6 .hero6__base { display:flex; justify-content:space-between; width:100%; max-width:none; color:#a7bfdc; border:0; padding:0; margin:0; font-size:10px; text-transform:uppercase; letter-spacing:.12em; }
.project-lead--v6 .project-lead__heading h2 { color:var(--ink); font-size:clamp(40px,4.6vw,74px); line-height:1.05; font-weight:400; letter-spacing:-.055em; max-width:18ch; }
.project-lead--v6 .case6__client { color:#46638b; margin-bottom:30px; }
.project-lead--v6 h2 em { color:#406bab; font-weight:400; }
.project-lead--v6 .case6__media { position:relative; inset:auto; grid-column:5/-1; grid-row:2; aspect-ratio:1.55; box-shadow:20px 25px 65px #18335a24; }
.project-lead--v6 .case6__media img { object-fit:cover; height:100%; }
.project-lead--v6 .go { color:#245dc1; }
.project-lead__metrics { grid-column:1/-1; margin-top:30px; }
.project-lead .stats6 { margin:0; border-top:1px solid #7993b455; padding-top:38px; border-bottom:0; }
.project-lead .stats6 b { color:#264f8b; font-size:clamp(38px,4.6vw,72px); }.project-lead .stats6 span { color:#4a6283; }
.project-lead__route { grid-column:1/-1; }.project-lead__route .kvis { border-top:1px solid #7993b455; padding:30px 0 0; background:none; }.project-lead__route .vis-flow li { background:transparent; border:0; padding-inline:0; }.project-lead__route .vis-flow li::after { right:10px; }
.capability-gallery { padding:110px 0 120px; background:#0b182a; color:#edf3fb; }
.capability-gallery__header { margin-bottom:60px; max-width:730px; }.capability-gallery__header h2 { font-size:clamp(42px,4.8vw,78px); font-weight:400; line-height:1.04; letter-spacing:-.05em; }
.capability-gallery__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:60px 55px; }
.capability-sheet { display:flex; flex-direction:column-reverse; border-top:1px solid #6988b050; padding-top:25px; min-width:0; }
.capability-sheet:first-child { grid-column:1/-1; display:grid; grid-template-columns:1fr 1.15fr; gap:7%; align-items:center; border:0; padding:0 0 25px; }
.capability-sheet__copy { padding-top:24px; display:grid; grid-template-columns:38px 1fr; column-gap:20px; }
.capability-sheet__copy .num { grid-column:1; grid-row:1/4; color:#8ca8cf; font-size:10px; display:flex; flex-direction:column; gap:14px; padding-top:8px; }
.capability-sheet__copy h3 { font-size:clamp(25px,2.6vw,39px); line-height:1.08; font-weight:400; letter-spacing:-.035em; grid-column:2; }
.capability-sheet:first-child h3 { font-size:clamp(34px,3.6vw,55px); }
.capability-sheet__copy p { margin-top:22px; color:#a6bbd8; font-size:15px; grid-column:2; max-width:46ch; }
.capability-sheet__copy a { grid-column:2; margin-top:25px; font-size:11px; color:#c3d9fc; width:max-content; max-width:100%; border-bottom:1px solid #86a9d465; padding-bottom:7px; }
.capability-sheet__visual { min-width:0; background:#d8e3f0; padding:25px; }
.capability-sheet__visual .kvis { background:#e5ecf6; padding:24px; border:0; }.capability-sheet__visual .vis-caption { font-size:10px; margin-top:16px; }
.capability-sheet:not(:first-child) .vis-bars,.capability-sheet:not(:first-child) .vis-terminal { height:90px; }
.capability-sheet:not(:first-child) .vis-security>div { padding:12px; }.capability-sheet:not(:first-child) .vis-secure-icon { width:44px; height:50px; margin-bottom:10px; }
.product-stories { display:block; padding:0; background:#dce7f4; }
.product-stories .prod6 { display:grid; grid-template-columns:1fr 1.1fr; gap:7%; align-items:center; min-height:750px; padding:95px var(--gutter); margin:0; background:#dce7f4; color:#111e32; overflow:hidden; }
.product-stories .prod6::after { display:none; }
.product-stories .prod6>img { position:relative; inset:auto; width:100%; height:550px; grid-column:2; grid-row:1; object-fit:cover; transform:none; }
.product-stories .prod6__body { position:relative; grid-column:1; grid-row:1; padding:0; background:none; width:100%; }
.product-stories .prod6__name { color:#345f99; margin-bottom:30px; }.product-stories .prod6__name span { color:#506d93; border-color:#6686b04d; }
.product-stories h3 { color:inherit; font-size:clamp(36px,3.8vw,62px); line-height:1.04; letter-spacing:-.045em; margin-top:22px; }
.product-stories .prod6 p { color:#526985; font-size:16px; margin-top:28px; max-width:42ch; }
.product-stories .prodart { max-width:460px; margin-top:28px; }.product-stories .prodart .kvis { padding:14px 0; background:transparent; }.product-stories .go { color:#245dc1; margin-top:25px; }
.product-stories .prod6:nth-child(even) { background:#11243e; color:#f1f5fc; grid-template-columns:1.1fr 1fr; }
.product-stories .prod6:nth-child(even)>img { grid-column:1; }.product-stories .prod6:nth-child(even) .prod6__body { grid-column:2; }
.product-stories .prod6:nth-child(even) .prod6__name,.product-stories .prod6:nth-child(even) .go { color:#a8c9ff; }.product-stories .prod6:nth-child(even) .prod6__name span,.product-stories .prod6:nth-child(even) p { color:#afc2dd; }
.people-feature { position:relative; display:grid; grid-template-columns:1fr 1.2fr; padding:100px var(--gutter) 0; background:#d8e4f2; color:#132139; align-items:start; gap:45px; overflow:hidden; }
.people-feature>div { position:relative; z-index:1; padding-bottom:75px; }
.people-feature h2 { font-size:clamp(44px,5.4vw,86px); font-weight:400; letter-spacing:-.055em; line-height:1.03; }.people-feature h2 em { color:#416da9; font-weight:400; }
.people-feature p { color:#506983; font-size:16px; max-width:36ch; margin-top:26px; }.people-feature .go { color:#245dc1; }
.people-feature .team6__media { height:650px; margin:0 -110px 0 -100px; transform:translateY(50px); position:relative; }
.people-feature .team6__media img { clip-path:none; width:100%; height:100%; object-fit:cover; }
@media(max-width:1000px) {
 .capability-gallery__grid { gap:40px 30px; }.capability-sheet__visual { padding:12px; }.capability-sheet__copy { grid-template-columns:25px 1fr; column-gap:12px; }
 .product-stories .prod6 { padding-block:70px; gap:35px; min-height:0; }.product-stories .prod6>img { height:500px; }
 .people-feature { gap:20px; }.people-feature .team6__media { margin-inline:-45px; height:550px; }
}
@media(max-width:700px) {
 .landing--v6 .landing__title { font-size:clamp(44px,10vw,70px); text-align:left; }.landing--v6 .landing__title .mask:nth-child(2)::after { display:none; }.landing--v6 .hero6__base { font-size:8px; flex-direction:row; gap:15px; }.landing--v6 .landing__lower { margin-top:230px; }
 .project-lead--v6 .case6__media { width:100%; order:2; }.project-lead__metrics { order:4; width:100%; }.project-lead__route { order:5; width:100%; }.project-lead .stats6 { display:grid; grid-template-columns:1fr 1fr; gap:30px 20px; }.project-lead__route .vis-flow li::after { display:none; }
 .capability-gallery { padding-block:70px; }.capability-gallery__grid { display:flex; flex-direction:column; gap:45px; }.capability-sheet:first-child { display:flex; flex-direction:column-reverse; gap:0; }.capability-sheet__visual { width:100%; padding:18px; }.capability-sheet__copy h3,.capability-sheet:first-child h3 { font-size:32px; }.capability-sheet__copy { padding-top:28px; }
 .product-stories .prod6,.product-stories .prod6:nth-child(even) { display:flex; flex-direction:column; padding-block:55px; gap:30px; }.product-stories .prod6>img { width:100%; height:auto; aspect-ratio:1.45; }.product-stories .prod6__body { padding:0; }.product-stories .prodart { max-width:none; }
 .people-feature { display:flex; flex-direction:column; padding-top:65px; gap:0; }.people-feature>div { padding-bottom:0; }.people-feature .team6__media { width:100%; margin:30px 0 0; transform:none; height:auto; aspect-ratio:1.4; }
}

/* Responsive reflow is structural: paired spreads become a linear reading order. */
.close6 .close6__meta:first-child { grid-column:1/-1; grid-row:auto; flex-direction:row; }
@media(max-width:1100px) {
 .opening__lower { gap:5%; }.opening__image { height:350px; }
 .service-directory .svc,.service-directory .rowlist { grid-template-columns:repeat(2,minmax(0,1fr)); gap:45px 32px; }
 .service-directory .srow,.service-directory .row6,.service-directory .srow:nth-child(-n+2),.service-directory .row6:nth-child(-n+2) { grid-column:auto; margin-top:0; }
 .service-directory .srow:last-child,.service-directory .row6:last-child { grid-column:1/-1; max-width:75%; }
 .practice-story,.company-story,.careers-context,.contact-followthrough { gap:6%; }
 .engagement-editorial .caps,.engagement-editorial .grid6 { grid-template-columns:1fr 1fr !important; }
 .contact-experience__form { padding:28px; }.contact-experience__layout { gap:5%; }
 .opportunities-editorial>.wrap { grid-template-columns:150px 1fr; gap:30px; }
 .opportunities-editorial .role,.opportunities-editorial .role6,.opportunities-editorial .role:hover,.opportunities-editorial .role6:hover { padding:25px; }
 .case-chapter>.wrap,.migration-editorial>.wrap { gap:25px 5%; }
 .case-credentials .deck-body { gap:30px; }
}
@media(max-width:800px) {
 .page-opening { padding:130px 0 55px; }.opening__title { font-size:clamp(44px,7.5vw,64px); max-width:20ch; }.opening__lower { grid-template-columns:1fr; gap:35px; margin-top:35px; }.opening__copy { padding-top:22px; }.opening__summary { max-width:60ch; font-size:16px; }.opening__meta { flex-direction:row; gap:10px 22px; margin-top:25px; }.opening__image { height:auto; width:100%; margin:0; aspect-ratio:1.8; }
 .opening--products { padding-bottom:35px; }.opening--products .opening__image { height:auto; aspect-ratio:2; }
 body[data-layout] .service-directory { padding-block:65px; }.service-directory .svc,.service-directory .rowlist { margin-top:40px; }.service-directory h3,.service-directory .srow:nth-child(-n+2) h3,.service-directory .row6:nth-child(-n+2) h3 { font-size:29px; }
 body[data-layout] .connection-story { display:block; padding:65px var(--gutter); }
 body[data-layout] .connection-story .wide,body[data-layout] .connection-story .wide6 { aspect-ratio:1.8; margin-top:35px; }.connection-story .widebar,.connection-story .widecap { margin-top:20px; }
 .practice-story,.company-story,.careers-context,.contact-followthrough { display:flex; flex-direction:column; gap:60px; padding:65px var(--gutter); }
 .practice-story>section,.company-story>section,.careers-context>section,.contact-followthrough>section { width:100%; }
 .method-editorial .method,.method-editorial .grid6 { margin-top:25px !important; }
 body[data-layout] .engagement-editorial { padding-block:65px; }
 .product-exhibit { padding-bottom:60px; }.product-exhibit .page-opening { padding-bottom:0; }.product-exhibit .opening__image { width:100%; height:auto; aspect-ratio:1.8; margin:0; }
 body[data-layout] .exhibit-screen { width:100%; padding:0 var(--gutter) !important; margin:40px 0 0; }.exhibit-screen .show__media,body[data-layout] .exhibit-screen .wide6 { aspect-ratio:1.5; }
 .product-detail-story { padding-block:65px; }.feature-atlas .duo { display:flex; flex-direction:column; gap:35px; }.feature-atlas .duo>div { width:100%; }.feature-atlas .feat__media { position:static; width:100%; }.feature-atlas .feat__media img { width:100%; height:auto; }
 body[data-layout] .feature-evidence { width:100%; margin:0; padding-top:30px; }
 body[data-layout] .feature-evidence .wide6 { margin-top:20px; }.feature-atlas .caps,.feature-atlas .grid6 { gap:0 25px; }
 body[data-layout] .process-editorial { padding-block:65px; }.process-editorial .loop,.process-editorial .loop6 { grid-template-columns:1fr 1fr; border:0; gap:35px 25px; margin-top:40px; }.process-editorial .loop>div,.process-editorial .loop6>div { border-top:1px solid #789aca66; padding:25px 0 0; }
 body[data-layout] .purpose-editorial { display:flex; flex-direction:column; padding:65px var(--gutter) !important; gap:35px; }
 .purpose-editorial>.wrap:first-child { width:100%; }.purpose-editorial .split,.purpose-editorial .split6 { gap:35px; }
 body[data-layout] .purpose-editorial .wide,body[data-layout] .purpose-editorial .wide6 { aspect-ratio:1.7; }
 body[data-layout] .case-metrics { padding:40px var(--gutter) !important; }.case-metrics .stats,.case-metrics .stats6 { display:grid; grid-template-columns:1fr 1fr; gap:30px; }
 body[data-layout] .case-exhibit { padding-block:60px !important; }
 body[data-layout] .case-exhibit .show__media,body[data-layout] .case-exhibit .wide6 { max-width:calc(100% - 2 * var(--gutter)); width:auto; margin:35px var(--gutter) 0; aspect-ratio:1.5; }
 body[data-layout] .case-chapter { padding-block:60px !important; }.case-chapter>.wrap { display:block; }
 .case-chapter .mark,.case-chapter .secnum { margin-bottom:24px; }.case-chapter h2 { position:static; margin:0 0 28px; max-width:none; }
 .case-chapter .lede,.case-chapter .lede6,.case-chapter .res,.case-chapter .res6,.case-chapter .caps,.case-chapter .grid6,.case-chapter .pbars,.case-chapter .pbars6,.case-chapter .loop,.case-chapter .loop6,.case-chapter .method { margin-top:28px !important; }
 body[data-layout] .code-exhibit { padding-block:60px; }.code-exhibit .codes,.code-exhibit .codes6 { display:flex; flex-direction:column; }
 body[data-layout] .migration-editorial { padding-block:65px; }.migration-editorial>.wrap { display:block; }.migration-editorial h2 { position:static; margin-bottom:28px; }.migration-editorial .method,.migration-editorial .grid6 { margin-top:35px; }
 body[data-layout] .language-editorial .wide,body[data-layout] .language-editorial .wide6 { width:calc(100% - 2 * var(--gutter)); max-width:none; }
 body[data-layout] .proof-editorial { padding-block:65px; }
 .opportunities-editorial>.wrap { display:block; }.opportunities-editorial .filters,.opportunities-editorial .filters6 { position:static; display:flex; flex-direction:row; flex-wrap:wrap; gap:5px; margin-bottom:30px; }.opportunities-editorial .filters button,.opportunities-editorial .filters6 button { padding:10px 13px; font-size:11px; }
 .opportunities-editorial .roles,.opportunities-editorial .roles6 { gap:20px; }
 .contact-experience { padding:125px 0 65px; }.contact-experience__layout { display:flex; flex-direction:column; gap:22px; }.contact-experience__intro { display:contents; }.contact-experience .opening__title { font-size:clamp(48px,9.5vw,72px); max-width:14ch; }.contact-experience .opening__summary,.contact-experience .opening__meta { margin-top:0; }.contact-experience .opening__summary { max-width:60ch; }
 .contact-experience__form { position:static; width:100%; order:1; margin-top:12px; padding:30px; }.contact-experience__image { width:100%; margin-top:15px; order:2; aspect-ratio:2; }.contact-experience .cinfo,.contact-experience .cinfo6 { width:100%; order:3; margin-top:10px; }
 .contact-followthrough .kvis--map { height:380px; }
 .case-credentials { padding-block:35px; }.case-credentials .deck-top { flex-wrap:wrap; }.case-credentials .deck-body { grid-template-columns:1fr; gap:35px; }
 body[data-layout] .soygen-story .block { padding-block:65px; }.soygen-story .block-grid>div:last-child { display:block; }.soygen-story h2 { margin-bottom:28px; max-width:none; }.soygen-story .chapter-spread--2 .visual { width:100%; }.soygen-story .rail { grid-template-columns:1fr 1fr; gap:30px; }
 body[data-layout] .close6,body[data-layout] .closeband { padding-top:65px; }
 body[data-layout] .close6>.wrap,body[data-layout] .closeband>.wrap { display:flex; flex-direction:column; gap:30px; }
 body[data-layout] .close6__meta { margin-top:10px; align-self:stretch; }.close6 .close6__meta:first-child { flex-direction:column; }
 body[data-layout] .close6__foot { margin-top:20px; }
 body[data-layout] .closeband .footgrid { width:100%; margin-top:5px; }.closeband .foot { margin-top:0; }
 body[data-layout] .wide,body[data-layout] .wide6 { aspect-ratio:1.7; }
}
@media(max-width:520px) {
 .service-directory .svc,.service-directory .rowlist { display:flex; flex-direction:column; gap:40px; }.service-directory .srow:last-child,.service-directory .row6:last-child { max-width:none; }.service-directory h3,.service-directory .srow:nth-child(-n+2) h3,.service-directory .row6:nth-child(-n+2) h3 { font-size:32px; }
 .engagement-editorial .caps,.engagement-editorial .grid6 { grid-template-columns:1fr !important; gap:15px; }
 .feature-atlas .caps,.feature-atlas .grid6 { grid-template-columns:1fr !important; }.feature-atlas h3,.feature-atlas h3.mono { font-size:24px; }
 .opportunities-editorial .roles,.opportunities-editorial .roles6 { grid-template-columns:1fr; }
 .contact-experience__form { padding:25px 20px; }.contact-experience .form .frow,.contact-experience .form6 .frow { grid-template-columns:1fr; gap:24px; }
 .soygen-story .perm-grid { grid-template-columns:1fr; }.soygen-story .rail { grid-template-columns:1fr; }
 .case-credentials .deck-facts { grid-template-columns:1fr; }
 body[data-layout] .closeband .footgrid { grid-template-columns:1fr 1fr; gap:30px 20px; }
}
