/* Brand Lift 360 consistency layer: gold eyebrows, white h1, no blue highlights, one card system */
:root{--blc-navy:#0a1d50;--blc-card:#12306a;--blc-gold:#ddc38b;--blc-gold-ink:#7a6231;--blc-ink:#0a1d50;--blc-body:#43516b}:is(#blc#blc#blc,html) .eyebrow,:is(#blc#blc#blc,html) .pa-kicker,:is(#blc#blc#blc,html) .br-kicker,:is(#blc#blc#blc,html) .ax-label,:is(#blc#blc#blc,html) .sx-label,:is(#blc#blc#blc,html) .sx-caption-label,:is(#blc#blc#blc,html) .portfolio-kind,:is(#blc#blc#blc,html) .kicker,:is(#blc#blc#blc,html) .overline,:is(#blc#blc#blc,html) .section-kicker{color:var(--blc-gold-ink)!important}:is(#blc#blc#blc,html) .blc-on-dark{color:var(--blc-gold)!important}:is(#blc#blc#blc,html) .blc-on-light{color:var(--blc-gold-ink)!important}:is(#blc#blc#blc,html) h1.blc-on-dark-h,:is(#blc#blc#blc,html) .blc-on-dark-h{color:#fff!important}:is(#blc#blc#blc,html) .blc-on-dark-h > span:not([style*=display]){color:inherit!important}:is(#blc#blc#blc,html) .blc-on-dark-h > span.blc-under{color:var(--blc-gold)!important}:is(#blc#blc#blc,html) h2 span:not(.blc-keep),:is(#blc#blc#blc,html) h3 span:not(.blc-keep),:is(#blc#blc#blc,html) h2 .lt.hl,:is(#blc#blc#blc,html) h3 .lt.hl,:is(#blc#blc#blc,html) .on-dark h2 .lt.hl{color:inherit!important;background:none!important;-webkit-text-fill-color:currentColor!important}:is(#blc#blc#blc,html) .blc-card-dark,:is(#blc#blc#blc,html) .blc-card-light{border-radius:18px!important;transition:transform .2s ease,box-shadow .2s ease}:is(#blc#blc#blc,html) .blc-card-dark{background:var(--blc-card)!important;background-image:none!important;border:1px solid rgba(255,255,255,.08)!important;box-shadow:0 14px 34px rgba(10,29,80,.18)!important;color:rgba(255,255,255,.84)!important}:is(#blc#blc#blc,html) .blc-card-light{background:#fff!important;background-image:none!important;border:1px solid rgba(10,29,80,.08)!important;box-shadow:0 16px 40px rgba(0,0,0,.22)!important;color:var(--blc-body)!important}:is(#blc#blc#blc,html) .blc-card-dark :is(h2,h3,h4,h5,h6,strong,b,dt,th):not(.blc-card-light *):not(.blc-skip,.blc-skip *){color:#fff!important}:is(#blc#blc#blc,html) .blc-card-dark :is(p,li,dd,td,small,em,figcaption,blockquote,label,span,div,time,cite):not(.blc-card-light *):not(.blc-skip,.blc-skip *):not(.blc-on-dark,.blc-on-light){color:rgba(255,255,255,.84)!important}:is(#blc#blc#blc,html) .blc-card-dark a:not(.blc-card-light *):not(.blc-skip,.blc-skip *){color:var(--blc-gold)!important}:is(#blc#blc#blc,html) .blc-card-dark a:not(.blc-skip) :is(span,strong,div,h3,h4,p):not(.blc-skip *){color:inherit!important}:is(#blc#blc#blc,html) .blc-card-dark svg:not(.blc-card-light *):not(.blc-skip *){color:var(--blc-gold)}:is(#blc#blc#blc,html) .blc-card-dark :is(hr){border-color:rgba(255,255,255,.14)!important}:is(#blc#blc#blc,html) .blc-card-dark :is(li,div,p,dl,dt,dd,ul,ol):not(.blc-card-light *):not(.blc-skip,.blc-skip *){border-color:rgba(255,255,255,.14)!important}:is(#blc#blc#blc,html) .blc-card-light :is(h2,h3,h4,h5,h6,strong,b,dt,th):not(.blc-card-dark *):not(.blc-skip,.blc-skip *){color:var(--blc-ink)!important}:is(#blc#blc#blc,html) .blc-card-light :is(p,li,dd,td,small,em,figcaption,blockquote,label,span,div,time,cite):not(.blc-card-dark *):not(.blc-skip,.blc-skip *):not(.blc-on-dark,.blc-on-light){color:var(--blc-body)!important}:is(#blc#blc#blc,html) .blc-card-light a:not(.blc-card-dark *):not(.blc-skip,.blc-skip *){color:var(--blc-ink)!important;text-decoration-color:var(--blc-gold)}:is(#blc#blc#blc,html) .blc-card-light a:not(.blc-skip) :is(span,strong,div,h3,h4,p):not(.blc-skip *){color:inherit!important}:is(#blc#blc#blc,html) .blc-card-light svg:not(.blc-card-dark *):not(.blc-skip *){color:var(--blc-gold-ink)}:is(#blc#blc#blc,html) .blc-card-light :is(li,div,p,dl,dt,dd,ul,ol):not(.blc-card-dark *):not(.blc-skip,.blc-skip *){border-color:rgba(10,29,80,.12)!important}
:is(#blc#blc#blc,html) .strip-in>div{min-width:0;white-space:normal;line-height:1.35}
@media (hover:hover){:is(#blc#blc#blc,html) a.blc-card-dark:hover,:is(#blc#blc#blc,html) a.blc-card-light:hover{transform:translateY(-3px)}}
@media (prefers-reduced-motion:reduce){:is(#blc#blc#blc,html) .blc-card-dark,:is(#blc#blc#blc,html) .blc-card-light{transition:none}:is(#blc#blc#blc,html) a.blc-card-dark:hover,:is(#blc#blc#blc,html) a.blc-card-light:hover{transform:none}}
/* Nov 1 2026 site notes. 201: FAQ questions (summary) inside dark cards were navy on navy. */
:is(#blc#blc#blc,html) .blc-card-dark summary:not(.blc-card-light *):not(.blc-skip),:is(#blc#blc#blc,html) .blc-card-dark summary :not(.blc-card-light *):not(.blc-skip){color:#fff!important}
:is(#blc#blc#blc,html) .blc-card-light summary:not(.blc-card-dark *):not(.blc-skip),:is(#blc#blc#blc,html) .blc-card-light summary :not(.blc-card-dark *):not(.blc-skip){color:var(--blc-ink)!important}
/* 216: screenshots (case studies, website portfolio, search and AI examples) are shown whole. consistency.js tags them .bl-whole. */
:is(#blc#blc#blc,html) img.bl-whole{object-fit:contain!important;object-position:center!important;background:#edf2f8}
:is(#blc#blc#blc,html) .bl-whole-box{aspect-ratio:auto!important;height:auto!important;align-self:center}
:is(#blc#blc#blc,html) .bl-whole-box img.bl-whole{height:auto!important;aspect-ratio:auto!important;background:transparent}
:is(#blc#blc#blc,html) .gal-slide img.bl-whole{aspect-ratio:16/9!important;background:#f5f7fb}
/* 201 sitewide sweep (every sitemap page checked for text under 2.5:1 contrast). */
:is(#blc#blc#blc#blc,html) .blc-card-dark .from-experience,:is(#blc#blc#blc#blc,html) .blc-card-dark .from-experience *{color:#1a2233!important}
:is(#blc#blc#blc,html) .article-copy em:not(.blc-card-dark *){color:inherit!important}
:is(#blc#blc#blc,html) .faq-sec p.note{color:#4d5b72!important}
:is(#blc#blc#blc,html) .faq-sec p.note a{color:#0a1d50!important}
:is(#blc#blc#blc,html) .on-dark p.note,:is(#blc#blc#blc,html) .close p.note{color:rgba(255,255,255,.78)!important}
:is(#blc#blc#blc#blc,html) figure.media figcaption.cap{color:#fff!important}
:is(#blc#blc#blc,html) .vd-thumb--brand,:is(#blc#blc#blc,html) .vd-thumb--brand *{color:#fff!important}
:is(#blc#blc#blc,html) .vd-thumb--brand .vd-brand-label{color:#ddc38b!important}
:is(#blc#blc#blc#blc,html) .ps-vid .vd-brand-label{color:#0a1d50!important}
/* 205, 210: service-card hover keeps the navy icon tile and lifts it with a gold glow, instead of turning into a flat gold block. */
:is(#blc#blc#blc,html) .svc .ico{transition:background .3s,color .3s,border-color .3s,transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .3s}
:is(#blc#blc#blc,html) .svc:hover .ico{background:rgba(196,173,125,.2)!important;color:#ecdcb0!important;border-color:#ddc38b!important;transform:translateY(-3px) rotate(-6deg) scale(1.06);box-shadow:0 12px 26px -10px rgba(196,173,125,.75)}
:is(#blc#blc#blc,html) .svc:hover .ico svg{color:#ecdcb0!important}
@media (prefers-reduced-motion:reduce){:is(#blc#blc#blc,html) .svc:hover .ico{transform:none}}
/* 199: footer. Five even columns on desktop; About and Service Areas share the last column, so nothing wraps awkwardly. */
@media (min-width:1101px){
:is(#blc#blc#blc,html) footer.site-footer .f-top:has(> :nth-child(6):last-child){grid-template-columns:minmax(230px,1.3fr) repeat(4,minmax(0,1fr))!important;column-gap:44px!important;row-gap:34px!important;align-items:start}
:is(#blc#blc#blc,html) footer.site-footer .f-top:has(> :nth-child(6):last-child)>:nth-child(1){grid-column:1;grid-row:1/3;padding-right:12px}
:is(#blc#blc#blc,html) footer.site-footer .f-top:has(> :nth-child(6):last-child)>:nth-child(2){grid-column:2;grid-row:1/3}
:is(#blc#blc#blc,html) footer.site-footer .f-top:has(> :nth-child(6):last-child)>:nth-child(3){grid-column:3;grid-row:1/3}
:is(#blc#blc#blc,html) footer.site-footer .f-top:has(> :nth-child(6):last-child)>:nth-child(4){grid-column:4;grid-row:1/3}
:is(#blc#blc#blc,html) footer.site-footer .f-top:has(> :nth-child(6):last-child)>:nth-child(5){grid-column:5;grid-row:1}
:is(#blc#blc#blc,html) footer.site-footer .f-top:has(> :nth-child(6):last-child)>:nth-child(6){grid-column:5;grid-row:2}
}
:is(#blc#blc#blc,html) footer.site-footer .f-col h4{margin-bottom:14px}
:is(#blc#blc#blc,html) footer.site-footer .f-col h4.sub{margin-top:28px}
:is(#blc#blc#blc,html) footer.site-footer .f-col a{line-height:1.45}
/* 203: every affiliation logo is white on a blue card. Opaque JPEGs are inverted and screened so their white box disappears. */
:is(#blc#blc#blc,html) .aff-i{background:var(--blc-card)!important;background-image:none!important;border:1px solid rgba(255,255,255,.1)!important;box-shadow:0 14px 34px rgba(10,29,80,.18)!important}
:is(#blc#blc#blc,html) .aff-i :is(p,span,b,strong,h3,h4,div,figcaption,small){color:#fff!important}
:is(#blc#blc#blc,html) .aff-i img{filter:brightness(0) invert(1)!important;opacity:.95}
:is(#blc#blc#blc,html) .aff-i img:is([src$=".jpg"],[src$=".jpeg"]){filter:grayscale(1) invert(1) contrast(1.6)!important;mix-blend-mode:screen}
/* 190: tighter gap between the homepage AI check and Real Results, with a gold rule between them. */
:is(#blc#blc#blc,html) #ai-check{padding-bottom:56px!important}
:is(#blc#blc#blc,html) #ai-check + #bh-results{position:relative;margin-top:0!important;padding-top:64px!important}
:is(#blc#blc#blc,html) #ai-check + #bh-results::before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:min(1120px,calc(100% - 32px));height:1px;background:linear-gradient(90deg,transparent,#c4ad7d 20%,#c4ad7d 80%,transparent)}
