/* Machine Minds sitewide visual reset and 2026 refresh. */

/* Eliminate WordPress block-gap whitespace between major page sections. */
html,body{overflow-x:hidden}
.wp-site-blocks{padding-left:0!important;padding-right:0!important}
.wp-site-blocks>*{margin-block-start:0!important}
.wp-site-blocks>.wp-block-template-part{margin-block-start:0!important}
.mm-site-main,.mm-home-page,.mm-services-page,.mm-service-detail-page,.mm-industries-page,.mm-industry-detail,.mm-work-page,.mm-case-study-page,.mm-about-page,.mm-contact-page{margin-block-start:0!important}
.mm-home-page>*,.mm-services-page>*,.mm-service-detail-page>*,.mm-industries-page>*,.mm-industry-detail>*,.mm-work-page>*,.mm-case-study-page>*,.mm-about-page>*,.mm-contact-page>*{margin-block-start:0!important}
.mm-site-main>.wp-block-group.alignfull,.mm-home-page>.wp-block-group.alignfull,.mm-services-page>.wp-block-group.alignfull,.mm-service-detail-page>.wp-block-group.alignfull,.mm-industries-page>.wp-block-group.alignfull,.mm-industry-detail>.wp-block-group.alignfull,.mm-work-page>.wp-block-group.alignfull,.mm-about-page>.wp-block-group.alignfull,.mm-contact-page>.wp-block-group.alignfull{margin-block-start:0!important}

/* Dense, deliberate section rhythm instead of oversized empty bands. */
.mm-services-catalog,.mm-services-process,.mm-services-proof,.mm-service-section,.mm-industry-section,.mm-industries-context,.mm-industries-grid-section,.mm-work-grid-section,.mm-case-study-content,.mm-case-study-services,.mm-case-study-related,.mm-about-section,.mm-contact-section,.mm-related-service-cta,.mm-newsletter-cta,.mm-insights-context,.mm-insights-feed{
  padding-top:clamp(2.75rem,4.2vw,4.25rem)!important;
  padding-bottom:clamp(2.75rem,4.2vw,4.25rem)!important;
}
.mm-services-hero,.mm-service-detail-hero,.mm-industries-hero,.mm-industry-detail__hero,.mm-work-hero,.mm-case-study-hero,.mm-about-hero,.mm-contact-hero,.mm-insights-hero{
  padding-top:clamp(4rem,6.5vw,6rem)!important;
  padding-bottom:clamp(3.75rem,6vw,5.5rem)!important;
}

/* Large but controlled typography. */
:where(.mm-services-page,.mm-service-detail-page,.mm-industries-page,.mm-industry-detail,.mm-work-page,.mm-case-study-page,.mm-about-page,.mm-contact-page,.mm-site-main) h1{
  font-size:clamp(3rem,5.5vw,5.55rem)!important;
  line-height:1!important;
  letter-spacing:-.045em!important;
}
:where(.mm-services-page,.mm-service-detail-page,.mm-industries-page,.mm-industry-detail,.mm-work-page,.mm-case-study-page,.mm-about-page,.mm-contact-page,.mm-site-main) h2{
  font-size:clamp(2.1rem,3.65vw,3.65rem)!important;
  line-height:1.04!important;
  letter-spacing:-.035em!important;
}
:where(.mm-services-page,.mm-service-detail-page,.mm-industries-page,.mm-industry-detail,.mm-work-page,.mm-case-study-page,.mm-about-page,.mm-contact-page,.mm-site-main) h3{
  font-size:clamp(1.25rem,1.75vw,1.7rem)!important;
  line-height:1.14!important;
}
.mm-services-lede,.mm-service-detail-lede,.mm-industries-hero__lede,.mm-industry-detail__lede,.mm-work-hero__lede,.mm-about-hero__lede,.mm-contact-hero__lede,.mm-insights-intro{
  font-size:clamp(1.08rem,1.55vw,1.28rem)!important;
  line-height:1.68!important;
}
.mm-section-intro>p:not(.mm-eyebrow),.mm-about-split p,.mm-service-split p,.mm-industry-section p,.mm-contact-context>p{
  font-size:clamp(1rem,1.2vw,1.12rem);
  line-height:1.72;
}

/* One shared content rail across every section and subsection. */
:where(.mm-services-catalog,.mm-services-process,.mm-services-proof,.mm-service-section,.mm-industries-context,.mm-industries-grid-section,.mm-industry-section,.mm-work-grid-section,.mm-case-study-content,.mm-case-study-services,.mm-case-study-related,.mm-about-section,.mm-contact-section,.mm-insights-context,.mm-insights-feed) > :where(.alignwide,.mm-section-intro,.mm-service-split,.mm-assessment-grid,.mm-operating-model,.mm-roadmap,.mm-engagement-grid,.mm-faq-list,.mm-industry-grid,.mm-industry-service-grid,.mm-industry-related-grid,.mm-work-grid,.mm-about-split,.mm-about-beliefs,.mm-about-team-grid,.mm-contact-layout,.mm-proof-grid){
  width:min(100%,1280px)!important;
  max-width:1280px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}
.mm-section-intro,.mm-service-section__intro,.mm-industry-section__intro,.mm-about-section .mm-section-intro,.mm-work-grid-section .mm-section-intro,.mm-services-catalog .mm-section-intro,.mm-services-process .mm-section-intro,.mm-services-proof .mm-section-intro{
  width:100%!important;
  max-width:1280px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:left!important;
}
.mm-section-intro>*,.mm-service-section__intro>*,.mm-industry-section__intro>*{
  margin-left:0!important;
  margin-right:auto!important;
  text-align:left!important;
}

/* FAQ headings and accordions share the same left edge. */
.mm-service-section--faq .mm-section-intro,.mm-service-section--faq .mm-faq-list,.mm-faq-section .mm-section-intro,.mm-faq-section .mm-faq-list,[class*="faq"] .mm-section-intro,[class*="faq"] .mm-faq-list{
  width:min(100%,1280px)!important;
  max-width:1280px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:left!important;
}
.mm-faq-list details,.mm-faq-list summary,.mm-faq-list details p{
  text-align:left!important;
  margin-left:0!important;
}
.mm-faq-list details p{max-width:980px!important;margin-right:auto!important}

/* Global cards: stronger contrast, depth and interaction. */
.mm-service-card,.mm-assessment-card,.mm-engagement-grid>div,.mm-operating-model>div,.mm-industry-card,.mm-industry-help-card,.mm-industry-solution-card,.mm-work-card,.mm-proof-item,.mm-about-beliefs article,.mm-about-team-grid article,.mm-about-delivery-list>div,.mm-contact-context__note,.mm-insight-card,.mm-related-grid article{
  position:relative;isolation:isolate;overflow:hidden;border-radius:22px!important;box-shadow:0 20px 55px rgba(4,28,68,.10)!important;
}
.mm-service-card:before,.mm-assessment-card:before,.mm-engagement-grid>div:before,.mm-operating-model>div:before,.mm-industry-card:before,.mm-industry-solution-card:before,.mm-work-card:before,.mm-about-beliefs article:before,.mm-about-team-grid article:before{
  content:"";position:absolute;z-index:-1;inset:-1px;background:radial-gradient(circle at 92% 4%,rgba(0,200,244,.14),transparent 30%),radial-gradient(circle at 6% 100%,rgba(81,68,248,.10),transparent 34%);pointer-events:none
}
.mm-service-card,.mm-assessment-card,.mm-engagement-grid>div,.mm-operating-model>div,.mm-industry-card,.mm-industry-solution-card,.mm-work-card,.mm-about-beliefs article,.mm-about-team-grid article{transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.mm-service-card:hover,.mm-assessment-card:hover,.mm-engagement-grid>div:hover,.mm-operating-model>div:hover,.mm-industry-card:hover,.mm-industry-solution-card:hover,.mm-work-card:hover,.mm-about-beliefs article:hover,.mm-about-team-grid article:hover{transform:translateY(-5px);border-color:rgba(23,109,245,.5)!important;box-shadow:0 30px 75px rgba(4,28,68,.16)!important}

/* Hero diagrams are information graphics, not tiny decorative blobs. */
.mm-services-hero-visual svg,.mm-service-detail-visual svg,.mm-industries-hero__visual svg,.mm-industry-detail__visual svg,.mm-work-hero__visual svg,.mm-about-journey__visual svg,.mm-contact-hero-art svg,.mm-insights-hero-art svg{
  width:100%!important;max-width:760px!important;height:auto!important;display:block;margin-inline:auto;filter:drop-shadow(0 26px 55px rgba(0,8,32,.28))
}

/* Footer background and actual footer content both use the viewport. */
.wp-site-blocks>footer.wp-block-template-part,.wp-site-blocks>.wp-block-template-part:has(.mm-site-footer){
  width:100vw!important;max-width:none!important;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;margin-block-start:0!important;
}
.mm-site-footer{position:relative!important;width:100%!important;max-width:none!important;margin:0!important;box-sizing:border-box!important}
.mm-site-footer>.mm-footer-inner,.mm-site-footer .mm-footer-inner{
  width:calc(100% - clamp(2rem,5vw,5rem))!important;
  max-width:none!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}
.mm-site-footer .mm-footer-cta,.mm-site-footer .mm-footer-grid,.mm-site-footer .mm-footer-bottom,.mm-site-footer .wp-block-separator{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  box-sizing:border-box!important;
}
.mm-site-footer .mm-footer-cta>.wp-block-group{max-width:900px!important;margin-left:0!important;margin-right:auto!important}
.mm-site-footer .mm-footer-grid{gap:clamp(1.5rem,3vw,4rem)!important}

/* Fixed file-based PNG logo, visibly larger in both global regions. */
.mm-fallback-site-logo{display:block;flex:0 0 auto;margin:0}
.mm-fallback-site-logo a{display:block;line-height:0}
.mm-fallback-site-logo img{display:block;height:auto;object-fit:contain}
.mm-brand-lockup .mm-fallback-site-logo img,.mm-brand-lockup .mm-forced-header-logo img{
  width:clamp(235px,17vw,285px)!important;max-width:none!important;max-height:58px!important;
}
.mm-footer-brand .mm-fallback-site-logo img{
  width:clamp(280px,21vw,350px)!important;max-width:none!important;max-height:72px!important;
}
.mm-forced-header-logo{margin-right:1rem!important}
body.mm-uses-fallback-logo .mm-brand-lockup .wp-block-site-title,body.mm-uses-fallback-logo .mm-footer-brand .wp-block-site-title{display:none!important}

/* Shared rich-content grids used outside the Services stylesheet. */
.mm-proof-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:2rem}
.mm-proof-item{padding:1.55rem;border:1px solid #dce7f5;background:linear-gradient(155deg,#fff,#f7faff)}
.mm-proof-item strong{display:block;margin-bottom:.65rem;color:#10243f;font-size:1.08rem}
.mm-proof-item p{margin:0;color:#53657d;line-height:1.65}
.mm-insights-context{padding-inline:1.25rem!important;background:#f5f7fb}
.mm-insights-feed{padding-inline:1.25rem!important;background:#07152d;color:#f5f7fb}

@media(max-width:1050px){
  .mm-site-footer .mm-footer-grid{flex-wrap:wrap!important}
  .mm-site-footer .mm-footer-grid>.wp-block-column{flex-basis:calc(33.333% - 1.5rem)!important}
  .mm-site-footer .mm-footer-grid>.wp-block-column:first-child{flex-basis:100%!important}
}
@media(max-width:781px){
  .mm-brand-lockup .mm-fallback-site-logo img,.mm-brand-lockup .mm-forced-header-logo img{width:205px!important;max-height:44px!important}
  .mm-footer-brand .mm-fallback-site-logo img{width:260px!important;max-height:58px!important}
  .mm-site-footer .mm-footer-grid>.wp-block-column{flex-basis:100%!important}
  .mm-proof-grid{grid-template-columns:1fr}
  :where(.mm-services-page,.mm-service-detail-page,.mm-industries-page,.mm-industry-detail,.mm-work-page,.mm-case-study-page,.mm-about-page,.mm-contact-page,.mm-site-main) h1{font-size:clamp(2.55rem,10.5vw,3.9rem)!important}
  :where(.mm-services-page,.mm-service-detail-page,.mm-industries-page,.mm-industry-detail,.mm-work-page,.mm-case-study-page,.mm-about-page,.mm-contact-page,.mm-site-main) h2{font-size:clamp(1.9rem,8vw,2.75rem)!important}
}
@media(prefers-reduced-motion:reduce){
  .mm-service-card,.mm-assessment-card,.mm-engagement-grid>div,.mm-operating-model>div,.mm-industry-card,.mm-industry-solution-card,.mm-work-card,.mm-about-beliefs article,.mm-about-team-grid article{transition:none!important}
  .mm-service-card:hover,.mm-assessment-card:hover,.mm-engagement-grid>div:hover,.mm-operating-model>div:hover,.mm-industry-card:hover,.mm-industry-solution-card:hover,.mm-work-card:hover,.mm-about-beliefs article:hover,.mm-about-team-grid article:hover{transform:none!important}
}

/* -------------------------------------------------------------------------
 * Final global alignment pass.
 * ---------------------------------------------------------------------- */

/* Make the ACTUAL footer box full viewport width, not only its background. */
.wp-site-blocks>.wp-block-template-part:has(.mm-site-footer),
.wp-site-blocks>footer.wp-block-template-part,
.mm-site-footer{
  position:relative!important;
  left:auto!important;
  width:100vw!important;
  min-width:100vw!important;
  max-width:100vw!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
  box-sizing:border-box!important;
}
.mm-site-footer>.mm-footer-inner,.mm-site-footer .mm-footer-inner{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding-left:clamp(1.25rem,4vw,4rem)!important;
  padding-right:clamp(1.25rem,4vw,4rem)!important;
  box-sizing:border-box!important;
}
.mm-site-footer .mm-footer-cta,
.mm-site-footer .mm-footer-grid,
.mm-site-footer .mm-footer-bottom,
.mm-site-footer .wp-block-separator{
  width:100%!important;
  max-width:none!important;
}

/* Keep every subsection heading on the same left rail as the content after it. */
.mm-home-section-heading,
.mm-home-section-heading--wide,
.mm-section-intro,
.mm-section-intro.alignwide,
.mm-industry-section__intro,
.mm-industry-section__intro.alignwide,
.mm-about-section .mm-section-intro,
.mm-services-page .mm-section-intro,
.mm-service-detail-page .mm-section-intro,
.mm-industries-page .mm-section-intro,
.mm-work-page .mm-section-intro,
.mm-contact-page .mm-section-intro{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  text-align:left!important;
  box-sizing:border-box!important;
}
.mm-home-section-heading>*,
.mm-section-intro>*,
.mm-industry-section__intro>*,
.mm-about-split>div:first-child>*,
.mm-service-split>.wp-block-column:first-child>*,
.mm-contact-context>*,
.mm-industry-related-grid section>*{
  text-align:left!important;
  margin-left:0!important;
  margin-right:auto!important;
}

/* FAQ list begins exactly where its FAQ heading begins on every page. */
.mm-service-section--faq .mm-section-intro,
.mm-service-section--faq .mm-faq-list,
.mm-faq-section .mm-section-intro,
.mm-faq-section .mm-faq-list,
[class*="faq"] .mm-section-intro,
[class*="faq"] .mm-faq-list{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  padding-left:0!important;
  padding-right:0!important;
  text-align:left!important;
}
.mm-faq-list details,
.mm-faq-list summary,
.mm-faq-list details p{
  width:100%!important;
  max-width:none!important;
  text-align:left!important;
}

/* Reduce oversized display headings, including the homepage's separate scale. */
.mm-home-hero h1{
  font-size:clamp(3.35rem,6.25vw,6.1rem)!important;
  line-height:.95!important;
}
.mm-home-section-heading h2,.mm-home-clarity h2{
  font-size:clamp(2.45rem,4.4vw,4.15rem)!important;
  line-height:1!important;
}
:where(.mm-services-page,.mm-service-detail-page,.mm-industries-page,.mm-industry-detail,.mm-work-page,.mm-case-study-page,.mm-about-page,.mm-contact-page,.mm-site-main) h1{
  font-size:clamp(2.85rem,4.85vw,4.9rem)!important;
}
:where(.mm-services-page,.mm-service-detail-page,.mm-industries-page,.mm-industry-detail,.mm-work-page,.mm-case-study-page,.mm-about-page,.mm-contact-page,.mm-site-main) h2{
  font-size:clamp(2rem,3.25vw,3.2rem)!important;
}

/* Make the PNG brand mark clearly visible instead of a tiny WordPress-logo size. */
.mm-header-inner{min-height:84px!important}
body .mm-brand-lockup .mm-fallback-site-logo img,
body .mm-brand-lockup .mm-forced-header-logo img,
body .mm-forced-header-logo img{
  width:clamp(300px,23vw,390px)!important;
  max-width:none!important;
  max-height:76px!important;
  height:auto!important;
}
body .mm-footer-brand .mm-fallback-site-logo img{
  width:clamp(320px,25vw,430px)!important;
  max-width:none!important;
  max-height:86px!important;
  height:auto!important;
}

@media(max-width:980px){
  body .mm-brand-lockup .mm-fallback-site-logo img,
  body .mm-brand-lockup .mm-forced-header-logo img,
  body .mm-forced-header-logo img{width:260px!important;max-height:62px!important}
}
@media(max-width:781px){
  .mm-header-inner{min-height:68px!important}
  body .mm-brand-lockup .mm-fallback-site-logo img,
  body .mm-brand-lockup .mm-forced-header-logo img,
  body .mm-forced-header-logo img{width:220px!important;max-height:52px!important}
  body .mm-footer-brand .mm-fallback-site-logo img{width:280px!important;max-height:68px!important}
  .mm-home-hero h1{font-size:clamp(3rem,12vw,4.6rem)!important}
  .mm-home-section-heading h2,.mm-home-clarity h2{font-size:clamp(2.2rem,9vw,3.2rem)!important}
  :where(.mm-services-page,.mm-service-detail-page,.mm-industries-page,.mm-industry-detail,.mm-work-page,.mm-case-study-page,.mm-about-page,.mm-contact-page,.mm-site-main) h1{font-size:clamp(2.45rem,10vw,3.6rem)!important}
  :where(.mm-services-page,.mm-service-detail-page,.mm-industries-page,.mm-industry-detail,.mm-work-page,.mm-case-study-page,.mm-about-page,.mm-contact-page,.mm-site-main) h2{font-size:clamp(1.85rem,7.5vw,2.6rem)!important}
}
