.campaign-hero{background:#17242c;color:#fff;padding:65px 0 62px}
.campaign-hero__grid{display:grid;grid-template-columns:1.4fr .85fr;gap:clamp(40px,6vw,95px);align-items:start}
.campaign-hero .eyebrow{color:#c3ced4;margin:6px 0 25px}
.campaign-hero h1{font-size:clamp(40px,4.25vw,64px);font-weight:400;line-height:1.1;letter-spacing:-.035em;max-width:760px}
.campaign-lead{font-size:18px;line-height:1.75;color:#dbe1e5;margin-top:25px;max-width:650px}
.campaign-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px 27px;margin-top:32px}
.campaign-secondary{display:inline-flex;align-items:center;min-height:52px;border-bottom:1px solid #788891;font-size:15px}
.campaign-fee{font-size:13px;line-height:1.7;color:#bdcbd2;margin-top:20px;max-width:460px}
.campaign-proof{border-left:1px solid #ffffff30;padding-left:30px;max-width:400px}
.campaign-proof__visual{display:block;background:#e6e8e6;height:245px;overflow:hidden}
.campaign-proof__visual>img{display:block;width:100%;height:auto;object-fit:contain;object-position:top}
.campaign-proof__caption{padding-top:18px}
.campaign-kicker{font-size:12px;line-height:1.6;color:#b5c4cc}
.campaign-proof h2{font-size:20px;font-weight:400;line-height:1.35;margin:8px 0 11px}
.campaign-proof h2 a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.campaign-proof__caption>p:last-child{font-size:13px;line-height:1.75;color:#d3dde2}
.campaign-proof__visual:has(.campaign-research-preview){height:auto;overflow:visible}
.campaign-research-preview{padding:24px;color:#17242c;background:#f5f4ef}
.campaign-research-preview>.origination-mark{display:block;width:28px;height:28px;margin-bottom:20px}
.campaign-research-preview>strong{display:block;font-size:25px;font-weight:400;line-height:1.2}
.campaign-research-preview>p{font-size:13px;line-height:1.65;margin:14px 0 0}
.campaign-research-preview>.campaign-research-preview__note{font-size:11px;line-height:1.7;color:#53616a;margin-top:20px}
.campaign-scope{padding:80px 0}
.campaign-section-heading{max-width:780px;margin-bottom:42px}
.campaign-section-heading .eyebrow{margin-bottom:16px}
.campaign-section-heading h2,.campaign-contact h2{font-size:clamp(32px,3vw,46px);font-weight:400;line-height:1.16;letter-spacing:-.025em}
.campaign-section-heading>p:last-child{font-size:17px;line-height:1.75;color:var(--muted);margin-top:20px}
.campaign-scope__grid{display:grid;grid-template-columns:1.6fr 1fr;gap:70px;align-items:start}
.campaign-deliverables{border-top:1px solid #a4afb3}
.campaign-deliverables>div{display:grid;grid-template-columns:.7fr 1.3fr;gap:25px;padding:25px 0;border-bottom:1px solid var(--line)}
.campaign-deliverables dt{font-size:18px;line-height:1.4}
.campaign-deliverables dd{font-size:15px;line-height:1.8;color:var(--muted)}
.campaign-inputs{padding:28px 30px;background:#f2f2ee;align-self:start}
.campaign-inputs h3{font-size:19px;font-weight:500;margin-bottom:18px}
.campaign-inputs ul{padding-left:18px}
.campaign-inputs li{font-size:14px;line-height:1.75;margin:13px 0}
.campaign-boundary{font-size:13px;line-height:1.8;border-top:1px solid #c6cece;padding-top:20px;margin-top:22px;color:var(--muted)}
.campaign-inputs .text-link{font-size:14px;margin-top:23px}
.campaign-contact{padding:75px 0 85px;border-top:1px solid var(--line)}
.campaign-contact__grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:90px}
.campaign-contact .eyebrow{margin-bottom:18px}
.campaign-contact__intro{font-size:17px;line-height:1.75;color:var(--muted);margin-top:23px;max-width:460px}
.campaign-person{display:flex;gap:17px;margin-top:28px;align-items:center}
.campaign-person img{height:64px;width:64px;object-fit:cover}
.campaign-person strong{display:block;font-size:16px;font-weight:500}
.campaign-person span{display:block;font-size:13px;color:var(--muted);margin:3px 0}
.campaign-person a{font-size:14px;text-decoration:underline;text-underline-offset:4px}
.campaign-faq{margin-top:35px;border-top:1px solid var(--line)}
.campaign-faq details{border-bottom:1px solid var(--line);padding:18px 0}
.campaign-faq summary{font-size:15px;line-height:1.6;cursor:pointer}
.campaign-faq p{font-size:14px;line-height:1.8;color:var(--muted);margin-top:12px}
.is-campaign #enquiry{scroll-margin-top:110px}
.is-campaign :focus-visible{outline:2px solid var(--red);outline-offset:4px}
.campaign-hero :focus-visible{outline-color:#fff}
@media(max-width:1000px){
 .campaign-hero__grid{grid-template-columns:1.3fr .9fr;gap:30px}.campaign-proof{padding-left:22px}
 .campaign-hero h1{font-size:43px}.campaign-lead{font-size:17px}
 .campaign-scope__grid{gap:35px;grid-template-columns:1.3fr 1fr}.campaign-deliverables>div{grid-template-columns:1fr;gap:12px}
 .campaign-contact__grid{gap:45px}
}
@media(max-width:700px){
 .campaign-hero{padding:44px 0}.campaign-hero__grid,.campaign-scope__grid,.campaign-contact__grid{grid-template-columns:1fr;gap:35px}
 .campaign-hero h1{font-size:clamp(33px,8.6vw,45px);line-height:1.13}.campaign-hero .eyebrow{font-size:12px;margin:0 0 22px}
 .campaign-lead{font-size:16px;line-height:1.7;margin-top:22px}.campaign-actions{gap:15px;margin-top:26px}
 .campaign-actions .button{width:100%;justify-content:center}.campaign-secondary{min-height:42px}
 .campaign-proof{border-left:0;border-top:1px solid #ffffff30;padding:26px 0 0;max-width:none;display:grid;grid-template-columns:105px 1fr;gap:18px}
 .campaign-proof__visual{height:149px}.campaign-proof__caption{padding-top:0}.campaign-proof h2{font-size:18px}.campaign-proof__caption>p:last-child{font-size:12px}
 .campaign-proof:has(.campaign-research-preview){grid-template-columns:1fr}.campaign-proof:has(.campaign-research-preview) .campaign-proof__visual{height:auto}
 .campaign-scope,.campaign-contact{padding:50px 0}.campaign-section-heading{margin-bottom:28px}
 .campaign-section-heading h2,.campaign-contact h2{font-size:32px}.campaign-section-heading>p:last-child{font-size:16px}
 .campaign-deliverables>div{padding:22px 0}.campaign-inputs{padding:25px}
 .campaign-contact__intro{font-size:16px}.campaign-faq{margin-top:26px}
}
@media print{
 .campaign-hero{background:white;color:black;padding:25px 0}.campaign-hero p,.campaign-proof p{color:black!important}
 .campaign-hero__grid,.campaign-scope__grid,.campaign-contact__grid{display:block}.campaign-proof{display:none}
 .campaign-actions,.campaign-form{display:none}.campaign-scope,.campaign-contact{padding:20px 0}
}
