/* Extend the existing institutional layout for business enquiries. */
html{scroll-padding-top:120px}
.campaign-header-nav{display:flex!important}
.campaign-topics{max-width:1240px;margin:0 auto;padding:0 max(4vw,26px) 36px;display:flex;flex-wrap:wrap;gap:10px}
.campaign-topics a{border:1px solid var(--line);padding:12px 16px;font-size:.9rem;font-weight:600}
.campaign-topics a:hover,.campaign-topics a:focus-visible{background:var(--ink);color:#fff;border-color:var(--ink)}
.campaign-detail{max-width:1240px;margin:auto;padding:75px max(4vw,26px);border-top:1px solid var(--line)}
.campaign-detail h2{font-size:clamp(2.25rem,4vw,3.8rem);line-height:1.06;letter-spacing:-.05em;margin:0}
.campaign-detail .section-label{font-size:.875rem;letter-spacing:.12em;margin-bottom:20px}
.campaign-detail .campaign-copy>p:first-child{margin-top:0}
.campaign-points{padding-left:20px;margin:24px 0 30px;color:var(--muted)}
.campaign-points li{padding:5px 0}
.campaign-copy>.button{margin-top:28px}
.campaign-detail .campaign-copy>.button{margin-top:0}
.campaign-list .text-link{font-size:.875rem;margin-top:16px}
.campaign-sectors{border-top:1px solid var(--line)}
.institution-experience{margin-top:48px;max-width:820px}
.institution-experience h3{font-size:clamp(1.6rem,3vw,2.3rem);line-height:1.1;letter-spacing:-.035em;margin:0 0 18px}
.institution-experience p{color:var(--muted)}
.institution-experience+.institution-grid{margin-top:30px}
.institution-grid-expanded{grid-template-columns:repeat(2,minmax(0,1fr))}
.institution-grid-expanded .institution-alliance{grid-column:1/-1}
.service-list h3 a:hover,.service-list h3 a:focus-visible{color:var(--red);text-decoration:underline}
.contact label{font-size:.875rem;letter-spacing:0}
.contact label{grid-column:auto}
.contact .form-wide,.contact .check,.contact .button,.contact .form-note,.contact .form-status,.contact .form-fallback,.contact noscript{grid-column:1/-1}
.contact .form-note{margin:0;font-size:.9rem;line-height:1.5}
.contact .form-fallback{font-size:.9rem;text-decoration:underline;text-underline-offset:3px}
.contact [hidden]{display:none!important}
.contact input:focus-visible,.contact select:focus-visible,.contact textarea:focus-visible{outline:2px solid #fff;outline-offset:4px}
a:focus-visible,button:focus-visible{outline:2px solid var(--red);outline-offset:4px}
.contact a:focus-visible,.contact button:focus-visible,.campaign-cta a:focus-visible{outline-color:#fff}
@media(max-width:800px){
  html{scroll-padding-top:102px}
  .campaign-header-nav,.site-header nav[style="display:flex"]{position:static;padding:0;border:0;flex-direction:row;align-items:center;gap:12px;font-size:.875rem}
  .campaign-detail{padding:58px 24px}
  .campaign-grid{gap:30px}
  .contact label{grid-column:1/-1}
  .institution-grid-expanded{grid-template-columns:1fr}
}
@media(max-width:500px){
  .site-header:has(.campaign-header-nav),.site-header:has(nav[style="display:flex"]){padding:0 20px}
  .campaign-header-nav a:not(.nav-cta),.site-header nav[style="display:flex"] a:not(.nav-cta){display:none}
  .campaign-header-nav .nav-cta,.site-header nav[style="display:flex"] .nav-cta{padding:10px 16px}
  .campaign-hero h1{font-size:clamp(2.6rem,10vw,3.8rem);line-height:1.02;letter-spacing:-.055em;overflow-wrap:break-word}
  .campaign-cta .button{margin:8px 8px 0 0}
  .campaign-detail .button{width:100%;padding:12px 18px;text-align:center}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{animation:none}}
