/* JP Patterns: original brand and visual process; scoped to this case only. */
.jp-case{--jp-ink:#30302d;--jp-muted:#66645f;--jp-wash:#f4f2ed;color:var(--jp-ink)}
.jp-case .jp-wrap{width:min(1180px,calc(100% - 64px));margin-inline:auto}
.jp-case .jp-back{display:inline-block;margin:32px 0 26px}
.jp-case .jp-opening{display:grid;grid-template-columns:1fr 1.08fr;gap:76px;align-items:center;padding-bottom:38px}
.jp-case .jp-logo{width:min(420px,100%);height:auto;margin-bottom:28px}
.jp-case h1{margin:0 0 16px}
.jp-case h2{margin:0 0 22px}
.jp-case h3{margin:0 0 15px}
.jp-case p{font-size:15px;line-height:1.85;color:var(--jp-muted)}
.jp-case .jp-tagline{font-size:19px;color:var(--jp-ink);margin-bottom:16px}
.jp-case .jp-context{display:grid;grid-template-columns:.8fr 1.1fr 1.4fr;gap:35px;border-block:1px solid var(--line);padding:22px 0;margin:0 0 70px}
.jp-case .jp-context dt{font-size:11px;color:var(--blue);font-weight:600;margin-bottom:8px}
.jp-case .jp-context dd{font-size:12px;line-height:1.8;margin:0;color:var(--jp-muted)}
.jp-case .jp-artifact{margin:0;min-width:0}
.jp-case .jp-artifact img{width:100%;height:auto}
.jp-case .jp-enlarge{display:block;border:0;background:transparent;padding:0;width:100%;cursor:zoom-in}
.jp-case figcaption{font-size:var(--caption-size);line-height:1.6;color:var(--jp-muted);margin-top:12px}
.jp-case .jp-opening-art{align-self:start}
.jp-case .jp-section-heading{max-width:690px;margin-bottom:35px}
.jp-case .jp-section-heading .section-label,.jp-case .jp-story .section-label{font-size:10px;line-height:1.5;color:var(--blue)}
.jp-case .jp-process{display:grid;grid-template-columns:.65fr 1.65fr;gap:60px;padding-bottom:72px}
.jp-case .jp-steps{display:grid;grid-template-columns:1fr 1fr;gap:30px 40px}
.jp-case .jp-process-icon{display:block;width:48px;height:48px;margin:0 0 15px}
.jp-case .jp-step-label{font-size:12px;font-weight:500;color:var(--blue);line-height:1.6;margin-bottom:13px}
.jp-case .jp-step-label span{margin-right:8px;color:#66645f}

.jp-case .jp-step p:not(.jp-step-label){font-size:14px;line-height:1.85}
.jp-case .jp-brand-banner{width:100%;margin:0 0 75px;background:var(--jp-wash)}
.jp-case .jp-brand-banner img{width:100%;max-height:350px;object-fit:cover;object-position:center}
.jp-case .jp-advertising{padding-bottom:80px}
.jp-case .jp-era-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}
.jp-case .jp-era .jp-artifact{margin-bottom:22px}
.jp-case .jp-era img{aspect-ratio:1;object-fit:contain;background:var(--jp-wash)}
.jp-case .jp-era h3{margin-bottom:12px}
.jp-case .jp-era p{font-size:14px}
.jp-case .jp-campaign{padding:0 0 75px}
.jp-case .jp-copy-columns{columns:2;column-gap:55px;max-width:1070px;margin-bottom:35px}
.jp-case .jp-copy-columns p{break-inside:avoid}
.jp-case .jp-comparisons{display:grid;gap:35px}
.jp-case .jp-comparisons .jp-artifact{background:var(--jp-wash)}
.jp-case .jp-comparisons figcaption{font-size:var(--caption-size);padding:0 20px 17px;margin-top:13px}
.jp-case .jp-promotion{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding-top:55px}
.jp-case .jp-promotion .jp-artifact{max-width:470px}
.jp-case .jp-overview{padding:0 0 75px}
.jp-case .jp-overview .project-film{max-height:none;aspect-ratio:16/9;background:var(--jp-wash)}
.jp-case .jp-story{display:grid;grid-template-columns:1fr 1.05fr;gap:65px;align-items:center;padding:0 0 75px}
.jp-case .jp-story-film{margin:0;min-width:0}
.jp-case .jp-story-film .project-film{max-height:none;aspect-ratio:1;object-fit:contain;background:var(--jp-wash)}
.jp-case .jp-media-note{font-size:11px;margin-top:20px}



.jp-case .jp-next{display:flex;justify-content:space-between;gap:20px;padding-bottom:65px}
@media(max-width:1000px){.jp-case .jp-opening{gap:35px}.jp-case .jp-process{grid-template-columns:1fr;gap:0}.jp-case .jp-process .jp-section-heading{margin-bottom:25px}.jp-case .jp-story{gap:35px}.jp-case .jp-promotion{gap:35px}}
@media(max-width:760px){.jp-case .jp-wrap{width:calc(100% - 40px)}.jp-case .jp-back{margin:25px 0}.jp-case .jp-opening{display:flex;flex-direction:column;gap:25px;padding-bottom:30px}.jp-case .jp-logo{width:300px;margin-bottom:25px}.jp-case .jp-opening-art{width:100%}.jp-case .jp-tagline{font-size:18px}.jp-case p{font-size:15px}.jp-case .jp-context{grid-template-columns:1fr 1fr;gap:20px;margin-bottom:45px}.jp-case .jp-context>div:last-child{grid-column:1/-1}.jp-case .jp-steps{grid-template-columns:1fr;gap:20px}.jp-case .jp-process{padding-bottom:45px}.jp-case .jp-brand-banner{margin-bottom:45px}.jp-case .jp-brand-banner img{min-height:150px;object-fit:cover}.jp-case .jp-era-grid{grid-template-columns:1fr;gap:25px}.jp-case .jp-era{display:grid;grid-template-columns:125px 1fr;gap:0 20px;align-items:start}.jp-case .jp-era .jp-artifact{grid-row:1/3;margin:0}.jp-case .jp-era h3{margin:0 0 10px}.jp-case .jp-era p{font-size:13px;line-height:1.7}.jp-case .jp-advertising,.jp-case .jp-campaign,.jp-case .jp-overview{padding-bottom:45px}.jp-case .jp-copy-columns{columns:1;margin-bottom:25px}.jp-case .jp-promotion{grid-template-columns:1fr;gap:25px;padding-top:35px}.jp-case .jp-promotion .jp-artifact{max-width:none}.jp-case .jp-comparisons{gap:25px}.jp-case .jp-story{grid-template-columns:1fr;gap:25px;padding-bottom:45px}.jp-case .jp-next{flex-wrap:wrap;padding-bottom:45px}.jp-case .jp-next .button{font-size:13px}}
@media(max-width:390px){.jp-case .jp-era{display:block}.jp-case .jp-era .jp-artifact{margin-bottom:18px}.jp-case .jp-era img{max-height:300px}}
