.work-hero{padding:85px 0 65px;background:linear-gradient(135deg,#fff 10%,#f2f7ff 100%);border-bottom:1px solid var(--line)}.work-hero-grid{display:grid;grid-template-columns:1.4fr .65fr;gap:80px;align-items:center}.work-hero h1{font-size:clamp(42px,5vw,68px);letter-spacing:-.05em;line-height:1.08;margin:15px 0 24px;max-width:800px}.work-hero p{font-size:19px;color:var(--ink-soft);max-width:720px}.work-person{display:flex;gap:14px;align-items:center;margin-bottom:25px}.work-person img{width:64px;height:64px;border-radius:50%;object-fit:cover;object-position:50% 30%}.work-person strong{font-size:15px}.work-person small{display:block;color:var(--ink-soft);font-size:12px}.work-art{background:#fff;border:1px solid var(--line);border-radius:26px;padding:30px;box-shadow:var(--shadow);transform:rotate(2deg)}.work-art .art-row{border-bottom:1px solid var(--line);padding:18px 0}.work-art .art-row:last-child{border:0}.work-art strong{display:block;font-size:23px;line-height:1.25}.work-art span{color:var(--ink-soft);font-size:12px}.work-section{padding:70px 0}.work-section h2{font-size:clamp(28px,3vw,40px);letter-spacing:-.035em;line-height:1.15;margin:12px 0 20px}.work-section .intro{max-width:760px;color:var(--ink-soft);font-size:18px}.industry-strip{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.industry-strip span{border:1px solid var(--line);background:#fff;border-radius:30px;padding:10px 16px;font-size:13px}.case-feature{display:grid;grid-template-columns:.85fr 1.15fr;border:1px solid var(--line);border-radius:24px;overflow:hidden;margin-top:30px;background:#fff}.case-graphic{background:linear-gradient(145deg,#eaf2ff,#edfafa);padding:40px;display:flex;flex-direction:column;justify-content:space-between;min-height:350px}.case-graphic h3{font-size:35px;line-height:1.1;letter-spacing:-.04em;max-width:360px}.case-copy{padding:40px}.case-copy h3{font-size:29px;line-height:1.2;letter-spacing:-.035em;margin:14px 0 18px}.case-copy p{color:var(--ink-soft)}.case-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:28px 0}.case-metrics strong{display:block;font-size:27px;letter-spacing:-.04em}.case-metrics small{font-size:11px;color:var(--ink-soft);display:block;line-height:1.5}.lab-overview{background:var(--mist);border-block:1px solid var(--line)}.lab-concepts{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:30px}.lab-concept{background:#fff;border:1px solid var(--line);padding:25px;border-radius:16px}.lab-concept h3{font-size:19px;line-height:1.3;margin:10px 0}.lab-concept p{font-size:14px;color:var(--ink-soft);margin-bottom:0}.concept-label{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--blue);font-weight:700}.resume-panel{border:1px solid var(--line);border-radius:22px;padding:35px;display:flex;gap:35px;align-items:center;justify-content:space-between}.resume-panel p{max-width:650px;color:var(--ink-soft)}.resume-actions{display:flex;flex-wrap:wrap;gap:20px;align-items:center}.case-hero{padding:38px 0 30px;background:linear-gradient(135deg,#fff,#f2f7ff);border-bottom:1px solid var(--line)}.back-link{display:inline-block;color:var(--blue);font-size:13px;text-decoration:none;font-weight:700;margin-bottom:30px}.case-hero h1{font-size:clamp(36px,4.5vw,60px);letter-spacing:-.045em;line-height:1.1;max-width:1000px;margin:15px 0 20px}.case-hero .case-lead{font-size:20px;color:var(--ink-soft);max-width:850px}.case-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:30px}.case-facts dt{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft)}.case-facts dd{margin:8px 0 0;font-size:14px}.article-layout{display:grid;grid-template-columns:210px 1fr;gap:65px;padding-top:34px;padding-bottom:50px}.article-toc{align-self:start;position:sticky;top:110px;max-height:calc(100vh - 140px);overflow:auto;padding-right:10px}.article-toc strong{font-size:11px;letter-spacing:.1em;text-transform:uppercase;display:block;margin-bottom:12px}.article-toc a{display:block;text-decoration:none;color:var(--ink-soft);font-size:12px;line-height:1.4;padding:8px 0}.article-toc a:hover{color:var(--blue)}.case-article{max-width:820px}.case-article section{padding:0;min-height:0;margin:0 0 36px;scroll-margin-top:105px}.case-article h2{font-size:28px;line-height:1.2;letter-spacing:-.03em;margin-bottom:18px}.case-article h3{font-size:20px}.case-article p,.case-article li{font-size:17px;line-height:1.8;color:var(--ink-soft)}.case-article li{margin-bottom:10px}.case-article strong{color:var(--ink)}.case-article ul{padding-left:23px}.case-article .scope-list{columns:2;column-gap:35px}.case-article .scope-list li{break-inside:avoid;font-size:15px}.case-article .case-outcomes{background:var(--mist);border:1px solid var(--line);border-radius:16px;padding:24px}.skip-link{position:absolute;top:-100px;left:15px;background:#fff;padding:12px;z-index:100}.skip-link:focus{top:10px}a:focus-visible,button:focus-visible{outline:3px solid #185ee7;outline-offset:4px}@media(max-width:900px){.work-hero-grid{gap:35px;grid-template-columns:1fr}.work-art{max-width:500px;transform:none}.case-feature{grid-template-columns:1fr}.case-graphic{min-height:230px}.lab-concepts{grid-template-columns:1fr 1fr}.article-layout{grid-template-columns:1fr;gap:30px}.article-toc{position:static;max-height:none;display:none}.resume-panel{display:block}.case-facts{grid-template-columns:1fr 1fr}.work-section{padding:50px 0}}@media(max-width:560px){.work-hero{padding:45px 0}.work-hero h1{font-size:40px}.work-hero p{font-size:17px}.work-art{padding:22px}.case-copy,.case-graphic{padding:25px}.case-graphic h3{font-size:30px}.case-metrics{gap:10px}.case-metrics strong{font-size:24px}.lab-concepts{grid-template-columns:1fr}.case-article .scope-list{columns:1}.case-facts{grid-template-columns:1fr}.case-hero{padding-top:35px}.case-article p,.case-article li{font-size:16px}.resume-panel{padding:25px}.industry-strip span{font-size:12px}.resume-actions{align-items:flex-start;flex-direction:column}}

/* Product development journey: equal stages with explicit directional arrows. */
.journey-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px;list-style:none;padding:0;margin:0;width:100%;align-items:stretch}
.journey-flow li{position:relative;display:flex;align-items:stretch;min-width:0;margin:0}
.journey-stage{display:flex;align-items:center;justify-content:center;flex:1;min-width:0;padding:13px 12px;background:#ffffffd9;border:1px solid #d9e5f3;border-radius:8px;text-align:center;color:var(--ink);font-size:13px;font-weight:600;line-height:1.45;overflow-wrap:normal}
.journey-arrow{position:absolute;right:-21px;top:50%;transform:translateY(-50%);color:var(--blue);font-size:17px;line-height:1}
.journey-flow--compact{gap:18px;margin-top:18px}
.journey-flow--compact .journey-stage{padding:10px 5px;font-size:11px}
.journey-flow--compact .journey-arrow{right:-15px;font-size:14px}
.case-journey{margin:23px 0 0;max-width:1050px}
.case-hero .journey-explanation{font-size:15px;line-height:1.65;color:var(--ink-soft);margin:12px 0 0;max-width:1050px}
/* Override the marketing section padding inside the article only. */
.case-hero .back-link{margin-bottom:16px}
.case-hero .eyebrow{margin:0 0 8px}
.case-hero h1{margin:0 0 14px}
.case-hero .case-lead{margin:0}
.case-hero .case-facts{gap:18px;margin:20px 0 0}
.case-hero .case-metrics{margin:20px 0 0}
.case-article section>p:last-child,.case-article section>ul:last-child{margin-bottom:0}
.case-article section:last-of-type{margin-bottom:28px}
@media(min-width:901px) and (max-width:1100px){
 .journey-flow--compact{grid-template-columns:1fr;gap:19px}
 .journey-flow--compact .journey-stage{font-size:12px;padding:9px}
 .journey-flow--compact .journey-arrow{right:auto;left:50%;top:auto;bottom:-17px;transform:translateX(-50%) rotate(90deg)}
}
@media(max-width:700px){
 .case-hero{padding:28px 0 25px}
 .case-hero .case-facts{gap:14px;margin-top:18px}
 .case-hero .case-metrics{margin-top:18px}
 .article-layout{padding-top:26px;padding-bottom:36px}
 .case-article section{margin-bottom:28px}
 .case-article .case-outcomes{padding:20px}
 .case-journey{margin-top:20px}
 .case-journey .journey-flow{grid-template-columns:1fr;gap:23px}
 .case-journey .journey-stage{padding:10px 12px}
 .case-journey .journey-arrow{right:auto;left:50%;top:auto;bottom:-20px;transform:translateX(-50%) rotate(90deg)}
}
@media(max-width:560px){
 .journey-flow--compact{grid-template-columns:1fr;gap:21px;margin-top:16px}
 .journey-flow--compact .journey-stage{font-size:12px;padding:9px}
 .journey-flow--compact .journey-arrow{right:auto;left:50%;top:auto;bottom:-18px;transform:translateX(-50%) rotate(90deg)}
}
