/* Shared palette, navigation and artwork links come from the case-study framework. */
.campaign-case h3 { font:400 clamp(32px,3.4vw,48px)/1.1 var(--font-display); margin:0 0 24px; }
.campaign-role { display:grid; grid-template-columns:1fr 3fr; gap:28px; border-block:1px solid var(--line); padding:24px 0; margin-bottom:36px; }
.campaign-role strong { font-size:12px; text-transform:uppercase; letter-spacing:.07em; color:var(--accent); }
.campaign-wide { margin-bottom:28px !important; }.campaign-wide > a { padding:clamp(10px,2vw,24px); }.campaign-wide img { max-width:none; }
.campaign-editorial { display:grid; grid-template-columns:1fr 1fr; gap:7%; align-items:center; margin-top:40px; }
.campaign-editorial .case-prose .case-artwork { margin-top:30px; }
.campaign-subheading { display:grid; grid-template-columns:1fr 1fr; gap:7%; align-items:end; margin:60px 0 28px; }.campaign-subheading h3 { margin:0; }
.campaign-email-row { display:grid; grid-template-columns:1fr 1fr; gap:8%; align-items:start; margin-top:60px; }
.campaign-email-row .case-prose { padding-top:28px; }.campaign-email-row .case-artwork > a { padding:16px; }
.campaign-pair { display:grid; grid-template-columns:1fr 1fr; gap:30px; align-items:start; }.campaign-pair .case-artwork > a { padding:16px; }
.campaign-note,.campaign-credit { font-size:13px; }.campaign-note { margin-top:24px !important; }.campaign-credit { margin-bottom:30px !important; }
.campaign-nescafe { display:grid; grid-template-columns:1fr 1.1fr; gap:30px; align-items:start; }.campaign-stack { display:grid; gap:24px; }.campaign-stack .case-artwork { margin:0 !important; }.campaign-nescafe .case-artwork > a { padding:14px; }
@media(max-width:760px) { .campaign-role,.campaign-editorial,.campaign-subheading,.campaign-email-row,.campaign-pair,.campaign-nescafe { grid-template-columns:1fr; gap:24px; }.campaign-role { gap:10px; } }

