:root{
  --cream:#fff;
  --paper:#fff;
}

body,
.hero,
.experience,
.manifesto,
.capabilities,
footer{
  background:#fff;
}

.site-header,
.hero{
  color:var(--ink);
}

.site-header{
  border-bottom:1px solid var(--line);
}

.nav-cta{
  border-color:rgba(17,17,16,.45);
}

.hero{
  border-bottom:1px solid var(--line);
}

.hero h1{
  max-width:1050px;
  color:#000;
  font-family:var(--brand-font);
  font-size:clamp(48px,5.8vw,92px);
  font-weight:500;
  line-height:1.08;
  letter-spacing:.01em;
  text-transform:uppercase;
}

.hero-copy{
  width:min(1100px,88vw);
  margin:0 auto;
  padding-left:0;
  padding-right:0;
  text-align:center;
}

.hero-logo{
  margin-left:auto;
  margin-right:auto;
}

.hero-copy .intro{
  max-width:720px;
  margin-left:auto;
  margin-right:auto;
}

.hero h1 em{
  color:#000;
  font-style:normal;
  font-weight:500;
}

.intro{
  color:#000;
}

.button-dark{
  background:var(--ink);
  color:#fff;
}

.text-link{
  border-bottom-color:rgba(17,17,16,.45);
}

.manifesto,
.capabilities{
  border-bottom:1px solid var(--line);
}

.manifesto-lines{
  margin:0 0 64px;
  grid-template-columns:repeat(3,max-content);
  justify-content:center;
  gap:clamp(8px,1vw,16px);
  font-size:clamp(24px,2.5vw,38px);
  line-height:1.05;
  white-space:nowrap;
}

.manifesto-lines p{
  margin:0;
}

.manifesto-copy{
  max-width:980px;
  margin:0;
  font-family:var(--brand-font);
  font-size:clamp(22px,2.4vw,34px);
  line-height:1.28;
}

.collaborators{
  background:#fff;
  color:var(--ink);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  grid-template-columns:1fr;
  gap:45px;
  text-align:center;
}

.collaborators-heading{
  width:100%;
  max-width:760px;
  margin:0 auto;
  text-align:center;
}

.collaborators-heading h3{
  max-width:720px;
  margin:0 auto;
}

.collaborators-heading>p:last-child{
  color:#000;
  max-width:620px;
  margin:0 auto;
}

.name-grid{
  width:100%;
  max-width:1050px;
  margin:0 auto;
  text-align:center;
}

.service{
  background:#fff;
  color:var(--ink);
  border-bottom:1px solid var(--line);
}

.service .eyebrow,
.steps span{
  color:var(--bronze);
}

.service-lead{
  color:#000;
}

.steps{
  border-top-color:var(--line);
}

.steps li{
  border-right-color:var(--line);
}

.steps p{
  color:#000;
}

.name-grid .name-entry{
  min-height:66px;
  padding:14px 16px;
  border-bottom:1px solid var(--line);
  display:flex;
  justify-content:center;
  gap:14px;
  align-items:center;
  text-align:center;
}

.name-grid .name-entry:nth-child(odd){
  padding-left:16px;
}

.name-grid .name-entry span{
  padding:0;
  border:0;
  color:#000;
  line-height:1.4;
}

.firm-logo{
  width:28px;
  height:28px;
  object-fit:contain;
}

.hero-logo,
.section-logo,
footer img{
  background:#fff;
}

footer{
  color:#000;
  border-top:1px solid var(--line);
}

@media(max-width:900px){
  .manifesto-lines{
    grid-template-columns:repeat(3,max-content);
    justify-content:center;
    gap:6px;
    font-size:clamp(16px,2.4vw,24px);
    white-space:nowrap;
  }

  .site-header nav{
    background:#fff;
    color:var(--ink);
    border-bottom:1px solid var(--line);
  }

  .name-grid .name-entry{
    padding-left:0;
  }
}

@media(max-width:560px){
  .manifesto-lines{
    grid-template-columns:1fr;
    justify-content:start;
    font-size:clamp(30px,8vw,40px);
    margin-bottom:42px;
    white-space:normal;
  }

  .manifesto-lines p{
    padding:13px 0;
  }

  .steps li,
  .steps li:not(:first-child){
    border-bottom-color:var(--line);
  }
}

.site-header nav .nav-studio{font-weight:600;color:#000;border-bottom:2px solid #000;padding:10px 0;font-size:14px;letter-spacing:.08em}.site-header nav{gap:clamp(16px,2.3vw,34px)}@media(max-width:900px){.site-header nav .nav-studio{font-size:16px}}

.mobile-studio-link{display:none}@media(max-width:900px){.mobile-studio-link{display:inline-flex;align-items:center;justify-content:center;position:relative;z-index:11;min-height:44px;max-width:calc(100% - 76px);padding:9px 12px;border:1px solid #000;color:#000;background:#fff;font-size:14px;line-height:1.4;text-align:center;font-weight:600;letter-spacing:.01em}.site-header .menu-toggle{min-height:44px;font-size:14px}.mobile-studio-link:focus-visible{outline:3px solid #000;outline-offset:3px}}
.studio-home-cta{margin:32px auto 0;max-width:100%}.studio-home-cta a{display:inline-flex;justify-content:center;align-items:center;min-height:52px;max-width:100%;padding:15px 24px;background:#000;color:#fff;font-size:16px;line-height:1.5;font-weight:500;white-space:normal}.studio-home-cta a:hover{background:#222}.studio-home-cta a:focus-visible{outline:3px solid #000;outline-offset:5px}.studio-home-cta p{margin:12px 0 0;font-size:16px;color:#000}

/* Contact section matches the approved Flemming Group logo teal. */
.contact{background:#82a099;color:#111110}
.contact .contact-card{border-color:rgba(17,17,16,.3)}
.contact .button-light{color:#fff}
