:root{
  --black:#050505;
  --panel:#0b0b0b;
  --panel-soft:#101010;
  --white:#f6f4ef;
  --copy:#d8d8d3;
  --muted:#a9aaa6;
  --red:#e00012;
  --line:rgba(255,255,255,.14);
  --font-body:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,Helvetica,sans-serif;
  --font-display:Georgia,"Times New Roman",serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--black)}
body{margin:0;background:var(--black);color:var(--white);font-family:var(--font-body);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
a{color:inherit;text-decoration:none}
.wrap{width:min(100% - 72px,1360px);margin-inline:auto}
p{margin:0 0 18px;color:var(--copy);font-size:16px;line-height:1.66;font-weight:400;letter-spacing:0}
.lead{font-size:17px;line-height:1.62;color:#efefec;max-width:640px}
.eyebrow{color:var(--red);font-family:var(--font-body);font-size:12px;line-height:1.28;font-weight:800;text-transform:uppercase;letter-spacing:.30em}
h1,h2{font-family:var(--font-display);font-weight:400;text-transform:none;letter-spacing:-.032em;color:var(--white);text-wrap:balance;margin:0}
h1{font-size:clamp(42px,3.65vw,58px);line-height:1.06;max-width:720px;margin-top:22px}
h2{font-size:clamp(31px,2.65vw,44px);line-height:1.10;max-width:820px;margin-top:18px}
h3{font-family:var(--font-body);font-size:17px;line-height:1.22;font-weight:760;color:#fff;margin:0;letter-spacing:.01em}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:17px 25px;border-radius:2px;border:1px solid var(--red);background:var(--red);color:#fff;font-size:12px;font-weight:850;line-height:1;text-transform:uppercase;letter-spacing:.075em;white-space:nowrap}
.btn.secondary{background:rgba(0,0,0,.28);border-color:rgba(255,255,255,.48)}
.redline{width:58px;height:3px;background:var(--red);margin:24px 0 28px}

/* Header */
header{position:sticky;top:0;z-index:50;background:rgba(5,5,5,.985);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}
.nav{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:34px}
.logo-img{width:285px;height:auto;display:block;object-fit:contain}
nav{display:flex;align-items:center;gap:34px;white-space:nowrap;font-size:12px;line-height:1;font-weight:850;text-transform:uppercase;letter-spacing:.085em}
nav a{position:relative;padding:37px 0;color:#fff}
nav a:first-child,nav a:hover{color:var(--red)}
nav a:first-child:after{content:"";position:absolute;left:0;right:0;bottom:24px;height:2px;background:var(--red)}
.nav>.btn{min-width:250px}

/* Hero */
.hero{position:relative;overflow:hidden;min-height:680px;border-bottom:1px solid var(--line);background:#050505}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover!important;object-position:center center;opacity:.96;filter:contrast(1.04) saturate(1.04) brightness(1.04);transform:none!important}
.hero:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#050505 0%,rgba(5,5,5,.98) 31%,rgba(5,5,5,.88) 49%,rgba(5,5,5,.30) 73%,rgba(5,5,5,.08) 100%)}
.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;min-height:680px;padding:82px 0 58px}
.hero-copy{border-left:2px solid var(--red);padding-left:30px;max-width:720px}
.actions{display:flex;gap:18px;flex-wrap:wrap;margin-top:30px}
.proof{display:grid;grid-template-columns:repeat(4,auto);gap:30px;margin-top:42px;max-width:760px;align-items:center}
.proof-card{display:flex;align-items:center;gap:13px;padding-right:24px;border-right:1px solid rgba(255,255,255,.18)}
.proof-card:last-child{border-right:0;padding-right:0}
.icon{width:34px;height:34px;color:var(--red);flex:0 0 auto}
.proof-card b,.proof-card span{display:block;font-size:12px;line-height:1.14;text-transform:uppercase;letter-spacing:.16em;font-weight:850}
.proof-card span{color:var(--red);margin-top:5px}

/* Logos */
.client-strip{background:linear-gradient(180deg,#0a0a0a,#080808);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:36px 0 42px}
.strip-title{display:flex;align-items:center;gap:20px;justify-content:center;text-align:center;margin-bottom:26px}
.strip-title:before,.strip-title:after{content:"";height:1px;flex:1;max-width:230px;background:linear-gradient(90deg,transparent,var(--red))}
.strip-title:after{background:linear-gradient(90deg,var(--red),transparent)}
.strip-title .eyebrow{color:#fff;letter-spacing:.20em}
.logos{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:22px;align-items:stretch}
.logo-card{height:116px;background:#fff;border:0;box-shadow:0 12px 30px rgba(0,0,0,.26),inset 0 0 0 1px rgba(0,0,0,.04);display:flex;align-items:center;justify-content:center;padding:14px 22px;overflow:hidden}
.logo-card img{display:block;width:100%;height:100%;object-fit:contain!important;filter:none!important;opacity:1!important;transform:none!important}

/* Sections */
section{padding:96px 0;border-bottom:1px solid var(--line)}
.dark,section:nth-of-type(even):not(.hero){background:var(--panel)}
.split{display:grid;grid-template-columns:minmax(300px,.28fr) minmax(0,.72fr);gap:64px;align-items:start}
.split>div:first-child p{max-width:560px}

/* Value cards */
.services-grid.value-grid{display:grid;grid-template-columns:repeat(2,minmax(360px,1fr));gap:28px}
.card,.process-card,blockquote,.featured-testimonial{background:linear-gradient(145deg,rgba(255,255,255,.052),rgba(255,255,255,.018));border:1px solid rgba(255,255,255,.15)}
.card{padding:40px;min-height:0}
.icon-box{width:56px;height:56px;border:1px solid rgba(224,0,18,.52);display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.22);margin-bottom:24px}
.card h3{font-size:16px;line-height:1.24;text-transform:uppercase;letter-spacing:.055em;font-weight:800;margin:0 0 18px;color:#fff}
.card p{font-size:15px;line-height:1.64;color:#d0d0cb;margin:0 0 18px}
.outcome{border-left:3px solid var(--red);padding-left:14px;margin-top:22px;color:#f3f3f0;font-size:14px;line-height:1.55;font-weight:650}
.outcome strong,.outcome::first-word{color:var(--red)}

/* Support */
.process-grid,.support-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.process-card{padding:30px;min-height:160px}
.process-card b{display:block;color:var(--red);font-size:26px;line-height:1;font-weight:850;margin-bottom:18px}
.process-card h3{text-transform:none;letter-spacing:0;margin-bottom:12px}
.process-card p{font-size:16px;line-height:1.62;color:#d7d7d2;margin:0}

/* About */
#about .split{grid-template-columns:.95fr 1.35fr;gap:76px}
.tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.tool{border:1px solid var(--line);background:rgba(255,255,255,.035);padding:20px;text-align:center;font-weight:700;font-size:15px}
.footer-logo{width:280px;max-width:100%;height:auto;display:block;margin-bottom:26px}

/* Projects */
.projects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:54px}
.project{border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.022);overflow:hidden}
.project img{width:100%;height:235px;display:block;object-fit:cover;filter:contrast(1.02) saturate(1.02)}
.project .inner{padding:28px}
.meta{font-size:12px;line-height:1.35;font-weight:850;text-transform:uppercase;letter-spacing:.17em;color:var(--red);margin-bottom:16px}
.project h3{font-size:20px;line-height:1.16;text-transform:uppercase;letter-spacing:.03em;margin:0 0 22px;color:#fff}
.case-block{margin-top:18px}.case-label{font-size:11px;line-height:1.2;font-weight:850;text-transform:uppercase;letter-spacing:.20em;color:var(--red)}
.case-text{font-size:15.5px;line-height:1.58;color:#d7d7d2;margin-top:7px}.result{border-left:3px solid var(--red);padding-left:14px;margin-top:20px}.result .case-text{font-weight:700;color:#f3f3f0}

/* Testimonials */
.featured-testimonial{margin-top:44px;padding:34px;max-width:1180px}.stars{color:var(--red);letter-spacing:.08em;margin-bottom:16px}.testimonial-grid-small{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:38px}blockquote{padding:28px}blockquote p{font-size:16px;line-height:1.66}

/* Footer */
footer{border-top:1px solid rgba(224,0,18,.55);background:#0a0a0a;padding:62px 0 22px}.footer-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:70px;align-items:start}.contact-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:42px}footer h3{font-size:18px;letter-spacing:0;text-transform:none}.footer-cta-title{font-family:var(--font-display);font-weight:400;text-transform:none;letter-spacing:-.035em;font-size:clamp(34px,2.8vw,48px);line-height:1.08}.copy{text-align:center;border-top:1px solid var(--line);padding-top:22px;margin-top:52px;font-size:12px;color:#777}

@media(max-width:1180px){.wrap{width:min(100% - 56px,1120px)}.logo-img{width:240px}.nav{min-height:84px;gap:22px}nav{gap:20px;font-size:11px}.nav>.btn{display:none}.projects,.testimonial-grid-small{grid-template-columns:repeat(2,minmax(0,1fr))}.services-grid.value-grid{grid-template-columns:repeat(2,minmax(300px,1fr))}.split,#about .split{grid-template-columns:1fr;gap:46px}}
@media(max-width:860px){nav,.nav>.btn{display:none}.nav{min-height:82px}.logo-img{width:225px}.hero,.hero-grid{min-height:auto}.hero-bg{opacity:.38;object-position:center right}.hero-grid{grid-template-columns:1fr;padding:74px 0 54px}.hero-copy{max-width:100%}.proof{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.proof-card{border-right:0}.logos{grid-template-columns:repeat(2,minmax(0,1fr))}.logo-card{height:104px;padding:12px 20px}.support-grid.process-grid,.contact-grid,.footer-grid{grid-template-columns:1fr}}
@media(max-width:560px){.wrap{width:min(100% - 36px,520px)}h1{font-size:38px}h2{font-size:32px}.actions .btn{width:100%}.proof,.logos,.services-grid.value-grid,.projects,.testimonial-grid-small,.tools{grid-template-columns:1fr}.hero-copy{padding-left:22px}.card,.project .inner,.process-card,blockquote,.featured-testimonial{padding:24px}.project img{height:210px}section{padding:72px 0}}

/* Locked 2026 homepage updates */
.logo-img{width:330px}
.client-strip .eyebrow{color:#fff;letter-spacing:.22em}
.logos.monochrome-logos{align-items:center}
.monochrome-logos .logo-card{height:86px;background:transparent;box-shadow:none;border:0;padding:10px 22px;transition:opacity .2s ease}
.monochrome-logos .logo-card img{filter:grayscale(1) brightness(0) invert(1)!important;opacity:.78!important;transition:filter .2s ease,opacity .2s ease}
.monochrome-logos .logo-card:hover img{filter:none!important;opacity:1!important;transform:none}
.support-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}
.about-clean{max-width:980px}
.about-clean p{max-width:860px}
.about-signoff{color:#fff;font-weight:800;font-size:18px!important;margin-top:8px!important}
.cookie-banner{position:fixed;left:24px;right:24px;bottom:24px;z-index:100;display:flex;align-items:center;justify-content:space-between;gap:28px;max-width:1040px;margin:0 auto;padding:20px 22px;background:rgba(10,10,10,.98);border:1px solid rgba(255,255,255,.18);box-shadow:0 22px 70px rgba(0,0,0,.45);color:#fff}
.cookie-banner.is-hidden{display:none}
.cookie-banner p{margin:4px 0 0;font-size:14px;line-height:1.45;color:#d8d8d3}
.cookie-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.cookie-actions .btn{min-height:42px;padding:13px 18px}
.copy a{color:#d4d4d0;text-decoration:underline;text-underline-offset:3px}
.legal-page{padding:86px 0}.legal-page .wrap{max-width:980px}.legal-page h1{font-size:clamp(38px,3vw,54px);margin-bottom:22px}.legal-page h2{font-family:var(--font-body);font-size:22px;font-weight:800;letter-spacing:0;margin:34px 0 12px}.legal-page ul{color:var(--copy);line-height:1.7}.legal-page li{margin-bottom:8px}
@media(max-width:1180px){.logo-img{width:280px}.support-grid-three{grid-template-columns:1fr}}
@media(max-width:860px){.logo-img{width:245px}.monochrome-logos .logo-card{height:78px}.cookie-banner{display:block;left:16px;right:16px;bottom:16px}.cookie-actions{margin-top:14px}}

/* Final layout fixes - 2026-06-03 */
/* Trust logo strip: force the agreed premium dark/monochrome treatment even if older rules are cached above. */
.client-strip .logos.monochrome-logos{display:grid!important;grid-template-columns:repeat(5,minmax(120px,1fr))!important;gap:34px!important;align-items:center!important}
.client-strip .monochrome-logos .logo-card{height:78px!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:8px 16px!important;overflow:visible!important}
.client-strip .monochrome-logos .logo-card img{max-height:52px!important;width:100%!important;height:100%!important;object-fit:contain!important;filter:grayscale(1) brightness(0) invert(1)!important;opacity:.78!important;transition:filter .2s ease,opacity .2s ease!important}
.client-strip .monochrome-logos .logo-card:hover img{filter:none!important;opacity:1!important;transform:none!important}

/* Service section: keep the four service cards as a balanced 2 x 2 grid on desktop/tablet. */
#services .split{grid-template-columns:minmax(330px,390px) minmax(0,1fr)!important;gap:58px!important;align-items:start!important}
#services .services-grid.value-grid{display:grid!important;grid-template-columns:repeat(2,minmax(300px,1fr))!important;gap:28px!important;align-items:stretch!important}
#services .card{padding:44px 40px!important;min-height:430px!important;display:flex!important;flex-direction:column!important}
#services .card p{font-size:16px!important;line-height:1.62!important}
#services .outcome{font-size:16px!important;line-height:1.55!important;font-weight:760!important;margin-top:auto!important;color:#f3f3f0!important}
#services .outcome::first-letter{color:inherit!important}

/* Who we support: keep three audience cards aligned in one row where there is room. */
#process .split{grid-template-columns:minmax(330px,390px) minmax(0,1fr)!important;gap:58px!important}
#process .support-grid-three{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:22px!important;align-items:stretch!important}
#process .process-card{min-height:230px!important;padding:30px!important}

/* Cookie banner: make the accept/decline controls obvious and reliable. */
.cookie-banner{left:50%!important;right:auto!important;bottom:22px!important;transform:translateX(-50%)!important;width:min(calc(100% - 40px),1040px)!important;border-color:rgba(255,255,255,.24)!important;border-top:1px solid rgba(224,0,18,.65)!important}
.cookie-banner.is-hidden{display:none!important}
.cookie-actions .btn.secondary{background:transparent!important;color:#fff!important;border-color:rgba(255,255,255,.45)!important}
.cookie-actions .btn.secondary:hover{border-color:#fff!important}
.cookie-actions .btn{cursor:pointer!important}

@media(max-width:1280px){
  #services .split,#process .split{grid-template-columns:1fr!important;gap:38px!important}
  #services .services-grid.value-grid{grid-template-columns:repeat(2,minmax(280px,1fr))!important}
  #process .support-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:900px){
  .client-strip .logos.monochrome-logos{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px!important}
  #services .services-grid.value-grid{grid-template-columns:1fr!important}
  #services .card{min-height:auto!important}
  #process .support-grid-three{grid-template-columns:1fr!important}
}
@media(max-width:560px){
  .cookie-banner{width:calc(100% - 28px)!important;bottom:14px!important;padding:18px!important}
  .cookie-actions{display:grid!important;grid-template-columns:1fr!important}
}

/* Header and hero polish - v3 */
header .wrap{width:min(100% - 72px,1420px)!important}
.nav{min-height:100px!important;gap:30px!important}
.logo-img{width:390px!important;max-height:78px!important;object-fit:contain!important}
nav{flex:0 0 auto!important;gap:32px!important;font-size:11.5px!important;letter-spacing:.075em!important;white-space:nowrap!important}
nav a{display:block!important;white-space:nowrap!important;padding:40px 0!important}
nav a:first-child:after{bottom:27px!important}
.nav>.btn{min-width:236px!important;min-height:54px!important;padding:15px 22px!important;font-size:11.5px!important;line-height:1.15!important}
.hero-bg{object-position:58% center!important}
.hero-copy{max-width:780px!important}
.hero-copy .lead{max-width:700px!important}
.hero h1{max-width:820px!important}

@media(max-width:1320px){
  header .wrap{width:min(100% - 54px,1220px)!important}
  .logo-img{width:330px!important;max-height:72px!important}
  .nav{gap:22px!important}
  nav{gap:22px!important;font-size:10.8px!important;letter-spacing:.065em!important}
  .nav>.btn{min-width:220px!important;padding-left:18px!important;padding-right:18px!important;font-size:11px!important}
}
@media(max-width:1180px){
  .logo-img{width:300px!important}
  nav{gap:18px!important;font-size:10.4px!important}
  .nav>.btn{display:none!important}
}
@media(max-width:860px){
  .logo-img{width:245px!important;max-height:64px!important}
  .nav{min-height:82px!important}
}


/* Final launch polish - v5 */
/* Prevent sticky header from covering section titles after smooth scrolling. */
html{scroll-padding-top:118px!important}
section,.client-strip,footer{scroll-margin-top:118px!important}

/* Client logo strip: visible monochrome logos by default, colour on hover, no pale boxes. */
.client-strip .logos.monochrome-logos{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(120px,1fr))!important;
  gap:38px!important;
  align-items:center!important;
}
.client-strip .monochrome-logos .logo-card{
  position:relative!important;
  height:78px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:8px 18px!important;
  overflow:visible!important;
}
.client-strip .monochrome-logos .logo-card img{
  position:absolute!important;
  inset:8px 18px!important;
  width:calc(100% - 36px)!important;
  height:calc(100% - 16px)!important;
  object-fit:contain!important;
  max-height:none!important;
  transition:opacity .18s ease!important;
  filter:none!important;
}
.client-strip .monochrome-logos .logo-card .logo-mono{
  opacity:.86!important;
}
.client-strip .monochrome-logos .logo-card .logo-colour{
  opacity:0!important;
}
.client-strip .monochrome-logos .logo-card:hover .logo-mono{
  opacity:0!important;
  transform:none!important;
}
.client-strip .monochrome-logos .logo-card:hover .logo-colour{
  opacity:1!important;
  transform:none!important;
}

/* About: add headshot without making the section feel like a personal CV. */
.about-clean.about-profile{
  max-width:1120px!important;
  display:grid!important;
  grid-template-columns:300px minmax(0,1fr)!important;
  gap:72px!important;
  align-items:center!important;
}
.headshot-panel{
  display:flex;
  align-items:center;
  justify-content:center;
}
.headshot{
  width:275px!important;
  height:275px!important;
  object-fit:cover;
  border-radius:50%;
  display:block;
  background:#050505;
  border:1px solid rgba(255,255,255,.30);
  box-shadow:0 14px 36px rgba(0,0,0,.34);
}
.about-copy p{max-width:860px}

/* Testimonials: keep four supporting testimonials balanced rather than leaving a single card. */
.testimonial-grid-small{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  max-width:980px!important;
  gap:26px!important;
}
.testimonial-grid-small blockquote{
  min-height:250px!important;
}

/* Slightly reduce vertical excess in testimonial section after balancing the cards. */
#testimonials .featured-testimonial{
  padding:32px 34px!important;
}

/* Cookie banner should feel like a notice, not a full website section. */
.cookie-banner{
  padding:16px 18px!important;
  max-width:920px!important;
}
.cookie-banner p{font-size:13.5px!important}
.cookie-actions .btn{min-height:40px!important;padding:12px 16px!important}

@media(max-width:900px){
  html{scroll-padding-top:92px!important}
  section,.client-strip,footer{scroll-margin-top:92px!important}
  .client-strip .logos.monochrome-logos{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .about-clean.about-profile{grid-template-columns:1fr!important;gap:34px!important;text-align:left!important}
  .headshot-panel{justify-content:flex-start!important}
  .headshot{width:180px;height:180px}
  .testimonial-grid-small{grid-template-columns:1fr!important;max-width:none!important}
}
@media(max-width:560px){
  .client-strip .logos.monochrome-logos{grid-template-columns:1fr!important}
  .headshot{width:160px;height:160px}
}


/* Final headshot visibility and purple-trim fix support */
#about .headshot-panel{display:flex!important;visibility:visible!important;opacity:1!important;align-items:center!important;justify-content:center!important;min-height:280px!important}
#about .headshot{display:block!important;visibility:visible!important;opacity:1!important;width:275px!important;height:275px!important;object-fit:cover!important;border-radius:50%!important;background:#050505!important;border:1px solid rgba(255,255,255,.30)!important;box-shadow:0 14px 36px rgba(0,0,0,.34)!important}


/* Final launch polish: crisp logo hover, cleaner headshot, header balance */
.client-strip .monochrome-logos .logo-card,
.client-strip .monochrome-logos .logo-card img,
.client-strip .monochrome-logos .logo-card:hover,
.client-strip .monochrome-logos .logo-card:hover img,
.client-strip .monochrome-logos .logo-card:hover .logo-mono,
.client-strip .monochrome-logos .logo-card:hover .logo-colour{
  transform:none!important;
}
.client-strip .monochrome-logos .logo-card img{
  image-rendering:auto!important;
  backface-visibility:hidden;
}
.client-strip .monochrome-logos .logo-card .logo-mono{opacity:.88!important}
.client-strip .monochrome-logos .logo-card:hover .logo-mono{opacity:0!important}
.client-strip .monochrome-logos .logo-card:hover .logo-colour{opacity:1!important}
#about .headshot{
  width:275px!important;
  height:275px!important;
  border-radius:50%!important;
  border:1px solid rgba(255,255,255,.30)!important;
  box-shadow:0 14px 36px rgba(0,0,0,.34)!important;
  background:#050505!important;
}
.logo-img{width:410px!important;max-height:82px!important}
.nav>.btn{padding:16px 28px!important;min-width:245px!important}
@media(max-width:1180px){.logo-img{width:330px!important;max-height:72px!important}}
@media(max-width:860px){.logo-img{width:245px!important;max-height:64px!important}#about .headshot{width:190px!important;height:190px!important}}
@media(max-width:560px){#about .headshot{width:170px!important;height:170px!important}}


/* v8 final verified polish: keep client logos crisp and static. The previous colour-swap hover used overlapping images/filters and made the logos appear soft. */
.client-strip .logos.crisp-logo-strip{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(120px,1fr))!important;
  gap:34px!important;
  align-items:center!important;
}
.client-strip .crisp-logo-strip .logo-card{
  height:78px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:8px 16px!important;
  overflow:visible!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  transform:none!important;
}
.client-strip .crisp-logo-strip .logo-card img{
  position:static!important;
  inset:auto!important;
  width:100%!important;
  height:100%!important;
  max-height:52px!important;
  object-fit:contain!important;
  opacity:.9!important;
  filter:none!important;
  transform:none!important;
  transition:opacity .15s ease!important;
  image-rendering:auto!important;
  backface-visibility:visible!important;
}
.client-strip .crisp-logo-strip .logo-card:hover,
.client-strip .crisp-logo-strip .logo-card:hover img{
  transform:none!important;
  filter:none!important;
  opacity:1!important;
}
.client-strip .crisp-logo-strip .logo-tithegrove img{max-height:60px!important;opacity:.95!important}
.client-strip .crisp-logo-strip .logo-vistry img{max-height:48px!important}
.client-strip .crisp-logo-strip .logo-colour,
.client-strip .crisp-logo-strip .logo-mono{display:none!important}

/* Cleaner About photo treatment: keep the portrait prominent but remove the dated glow/ring effect. */
#about .headshot{
  width:275px!important;
  height:275px!important;
  border-radius:50%!important;
  border:1px solid rgba(255,255,255,.28)!important;
  box-shadow:none!important;
  background:#050505!important;
}
#about .headshot-panel{min-height:280px!important}

@media(max-width:900px){
  .client-strip .logos.crisp-logo-strip{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px!important}
}
@media(max-width:560px){
  .client-strip .logos.crisp-logo-strip{grid-template-columns:1fr!important}
}

/* v9 final logo correction: use supplied sharp colour client logos in consistent light cards.
   No filters, no colour swap, no transform, no hover blur. */
.logo-img{width:430px!important;max-height:86px!important}
.nav>.btn{padding:15px 28px!important;min-width:240px!important}
.client-strip .logos.client-logo-strip{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(132px,1fr))!important;
  gap:40px!important;
  align-items:center!important;
}
.client-strip .client-logo-strip .logo-card{
  height:72px!important;
  background:rgba(245,245,245,.94)!important;
  border:1px solid rgba(255,255,255,.20)!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding:12px 18px!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  transform:none!important;
}
.client-strip .client-logo-strip .logo-card img{
  position:static!important;
  inset:auto!important;
  width:100%!important;
  height:100%!important;
  max-height:48px!important;
  object-fit:contain!important;
  filter:none!important;
  opacity:1!important;
  transform:none!important;
  transition:none!important;
  image-rendering:auto!important;
  backface-visibility:visible!important;
}
.client-strip .client-logo-strip .logo-card:hover,
.client-strip .client-logo-strip .logo-card:hover img{
  filter:none!important;
  opacity:1!important;
  transform:none!important;
}
.client-strip .client-logo-strip .logo-bloor img{max-height:44px!important}
.client-strip .client-logo-strip .logo-miller img{max-height:40px!important}
.client-strip .client-logo-strip .logo-tithegrove img{max-height:54px!important}
.client-strip .client-logo-strip .logo-buxted img{max-height:48px!important}
.client-strip .client-logo-strip .logo-vistry img{max-height:38px!important}
@media(max-width:1180px){.logo-img{width:350px!important;max-height:76px!important}.client-strip .logos.client-logo-strip{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:26px!important}}
@media(max-width:860px){.logo-img{width:260px!important;max-height:68px!important}.client-strip .logos.client-logo-strip{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:22px!important}.client-strip .client-logo-strip .logo-card{height:70px!important}}
@media(max-width:560px){.client-strip .logos.client-logo-strip{grid-template-columns:1fr!important}.client-strip .client-logo-strip .logo-card{height:68px!important}}
