/* Client showcase
   ------------------------------------------------------------------ */

.mm-back{
  display:inline-block;
  margin-bottom:22px;
  font-size:.74rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--ink-55);
  text-decoration:none;
  transition:color .3s var(--ease);
}
.mm-back:hover{color:var(--ink);}

.mm-phead--client .mm-phead__logo{
  display:block;
  margin:0 0 26px;
}
.mm-phead--client .mm-phead__logo img{
  max-width:220px;
  max-height:90px;
  width:auto;
  height:auto;
  object-fit:contain;
}

/* Facts ------------------------------------------------------------ */

.mm-facts{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
  gap:1px;
  background:var(--line);
  border:1px solid var(--line);
}
.mm-fact{
  background:var(--surface);
  padding:38px 30px;
}
.mm-fact__fig{
  display:block;
  font-size:clamp(2rem,4.4vw,3rem);
  line-height:1.05;
  letter-spacing:-.02em;
  color:var(--ink);
}
.mm-fact__fig--sm{
  font-size:clamp(1.1rem,2vw,1.4rem);
  line-height:1.25;
  letter-spacing:0;
}
.mm-fact__lab{
  display:block;
  margin-top:12px;
  font-size:.78rem;
  line-height:1.5;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--ink-55);
}
.mm-dark .mm-facts{background:var(--line-dark);border-color:var(--line-dark);}
.mm-dark .mm-fact{background:transparent;}
.mm-dark .mm-fact__fig{color:#fff;}
.mm-dark .mm-fact__lab{color:var(--on-dark);}

/* Client grid ------------------------------------------------------ */

.mm-clients{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:1px;
  background:var(--line);
  border:1px solid var(--line);
}
.mm-client{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:28px;
  min-height:230px;
  padding:34px 30px;
  background:var(--bg);
  text-decoration:none;
  color:inherit;
  transition:background .4s var(--ease);
}
.mm-client:hover{background:var(--surface);}
.mm-client__mark{
  display:flex;
  align-items:center;
  min-height:64px;
}
.mm-client__mark img{
  max-width:170px;
  max-height:64px;
  width:auto;
  height:auto;
  object-fit:contain;
  filter:grayscale(1);
  opacity:.78;
  transition:filter .4s var(--ease),opacity .4s var(--ease);
}
.mm-client:hover .mm-client__mark img{filter:none;opacity:1;}
.mm-client__name{
  font-size:1.28rem;
  line-height:1.25;
  letter-spacing:-.01em;
  color:var(--ink);
}
.mm-client__meta{display:block;}
.mm-client__sector{
  display:block;
  margin-bottom:10px;
  font-size:.72rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--accent-deep);
}
.mm-client__stat{
  display:block;
  font-size:.9rem;
  color:var(--ink-55);
}
.mm-client__stat strong{
  display:inline-block;
  margin-right:10px;
  font-weight:400;
  color:var(--ink);
}

/* Timeline --------------------------------------------------------- */

.mm-timeline{
  list-style:none;
  margin:0;
  padding:0;
  border-top:1px solid var(--line);
}
.mm-timeline__row{
  display:grid;
  grid-template-columns:150px 1fr;
  gap:24px;
  padding:30px 0;
  border-bottom:1px solid var(--line);
}
.mm-timeline__year{
  font-size:1.5rem;
  line-height:1;
  letter-spacing:-.01em;
  color:var(--ink);
}
.mm-timeline__items{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:10px;
}
.mm-timeline__items li{
  position:relative;
  padding-left:22px;
  font-size:1rem;
  line-height:1.55;
  color:var(--ink-70);
}
.mm-timeline__items li::before{
  content:"";
  position:absolute;
  left:0;
  top:.62em;
  width:8px;
  height:1px;
  background:var(--accent);
}
.mm-dark .mm-timeline{border-top-color:var(--line-dark);}
.mm-dark .mm-timeline__row{border-bottom-color:var(--line-dark);}
.mm-dark .mm-timeline__year{color:#fff;}
.mm-dark .mm-timeline__items li{color:var(--on-dark);}

/* Scope ------------------------------------------------------------ */

.mm-scope{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:1px;
  background:var(--line);
  border:1px solid var(--line);
}
.mm-scope li{
  background:var(--bg);
  padding:26px 28px;
  font-size:1rem;
  line-height:1.55;
  color:var(--ink-70);
}

/* Roster ----------------------------------------------------------- */

.mm-roster{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}
.mm-roster li{
  padding:11px 20px;
  border:1px solid var(--line-dark);
  font-size:.88rem;
  letter-spacing:.02em;
  color:var(--on-dark);
}

/* Pull quote ------------------------------------------------------- */

.mm-pull{
  margin:0;
  max-width:52ch;
}
.mm-pull p{
  margin:0 0 20px;
  font-size:clamp(1.25rem,2.4vw,1.7rem);
  line-height:1.45;
  letter-spacing:-.01em;
  color:var(--ink);
}
.mm-pull cite{
  font-style:normal;
  font-size:.78rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--ink-55);
}

@media (max-width:640px){
  .mm-timeline__row{grid-template-columns:1fr;gap:14px;}
  .mm-fact{padding:30px 24px;}
  .mm-client{padding:26px 24px;min-height:0;gap:18px;}
  .mm-client__mark{min-height:0;}
  .mm-client__name{font-size:1.18rem;}
}

/* Related client band ---------------------------------------------- */

.mm-relate{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:34px;
  flex-wrap:wrap;
}
.mm-relate__c{max-width:56ch;}
.mm-relate__c .mm-lead{margin-bottom:0;}
.mm-relate .mm-btns{margin:0;flex-shrink:0;}
@media (max-width:760px){
  .mm-relate{align-items:flex-start;}
}

.mm-surface .mm-clients{background:var(--line);}
.mm-surface .mm-client{background:var(--bg);}
.mm-surface .mm-client:hover{background:var(--surface);}

.mm-proof__row--names a{
  color:inherit;
  text-decoration:none;
  border-bottom:1px solid transparent;
  transition:border-color .3s var(--ease),color .3s var(--ease);
}
.mm-proof__row--names a:hover{
  color:var(--ink);
  border-bottom-color:var(--accent);
}

.mm-client__years{
  display:block;
  margin-bottom:14px;
  font-size:1.02rem;
  letter-spacing:.01em;
  color:var(--ink);
}
.mm-client__go{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:.72rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--ink-55);
  transition:color .3s var(--ease),gap .3s var(--ease);
}
.mm-client__go span{
  transition:transform .3s var(--ease);
}
.mm-client:hover .mm-client__go{color:var(--accent-deep);}
.mm-client:hover .mm-client__go span{transform:translateX(4px);}

/* Work filter bar --------------------------------------------------- */

.mm-filters{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:14px 26px;
  margin-bottom:52px;
  padding-bottom:2px;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
}
@media (max-width:760px){
  .mm-filters{flex-wrap:wrap;overflow-x:visible;gap:10px 16px;margin-bottom:38px;justify-content:center;}
  .mm-filters .mm-filter{font-size:14px;}
  .mm-filters__sep{display:none;}
}
.mm-filters::-webkit-scrollbar{display:none;}
.mm-filters .mm-filter{flex:0 0 auto;}
.mm-filters__sep{
  flex:0 0 auto;
  width:1px;
  height:20px;
  margin:0 18px;
  background:var(--line);
}

/* ==================================================================
   PREMIUM REFINEMENT LAYER (global) — elevate the existing design
   ================================================================== */

/* Buttons: soft depth + confident hover lift (site-wide CTAs) */
.mm-btn{transition:background .26s var(--ease),color .26s var(--ease),border-color .26s var(--ease),transform .3s var(--ease),box-shadow .35s var(--ease);}
.mm-btn--primary{box-shadow:0 12px 30px -14px color-mix(in srgb,var(--accent) 80%,transparent);}
.mm-btn:hover{transform:translateY(-2px);}
.mm-btn--primary:hover{background:#E0AE0D;border-color:#E0AE0D;box-shadow:0 20px 40px -14px color-mix(in srgb,var(--accent) 82%,transparent);}
.mm-btn--ghost:hover{box-shadow:0 18px 34px -18px rgba(20,17,15,.55);}

/* Header + footer + submit CTAs: same premium lift language */
.mm-head-cta{transition:background .26s var(--ease),transform .3s var(--ease),box-shadow .35s var(--ease);}
.mm-head-cta:hover{transform:translateY(-1px);box-shadow:0 10px 24px -8px color-mix(in srgb,var(--accent) 62%,transparent);}
.mm-footer__cta{transition:background .26s var(--ease),transform .3s var(--ease),box-shadow .35s var(--ease);}
.mm-footer__cta:hover{transform:translateY(-2px);background:#E0AE0D;box-shadow:0 18px 36px -12px rgba(0,0,0,.5);}

/* Sticky mobile bar: lift it off the page with a soft shadow */
.mm-sticky{box-shadow:0 -12px 34px -14px rgba(10,8,7,.55);}

/* Client cards: premium hover — gold top accent, quiet elevation */
.mm-clients{background:var(--line);}
.mm-client{position:relative;transition:background .4s var(--ease),box-shadow .4s var(--ease),transform .4s var(--ease);}
.mm-client::before{content:"";position:absolute;left:0;top:0;height:2px;width:0;background:var(--accent);transition:width .45s var(--ease);z-index:2;}
.mm-client:hover{background:#fff;box-shadow:0 26px 46px -24px rgba(20,17,15,.45);z-index:1;}
.mm-client:hover::before{width:100%;}
.mm-surface .mm-client:hover{background:#fff;}

/* Capability grid (home): gold marker slides in on hover */
.mm-cap__g a{position:relative;}
.mm-cap__g a::before{content:"";position:absolute;left:-2px;top:50%;width:0;height:2px;background:var(--accent);transform:translateY(-50%);transition:width .28s var(--ease);}
.mm-cap__g a:hover{padding-left:16px;}
.mm-cap__g a:hover::before{width:9px;}

/* Section headings: a touch more breathing room */
.mm-head{margin-bottom:56px;}

/* Video play button: refine hover */
.mm-vid__play:hover .mm-vid__icon{transform:scale(1.1);box-shadow:0 12px 30px -8px color-mix(in srgb,var(--accent) 60%,transparent);}

/* Smooth all anchor colour changes for a polished feel */
a{transition:color .24s var(--ease);}
/* Contact: separate details from the form */
.page-id-1719 .mm-form{margin-top:48px;padding-top:44px;border-top:1px solid var(--line);}
