/* One clear colour for navigation icons. */
.mm-site .mm-mega-service:nth-child(n) .mm-mega-icon,
.mm-site .mm-mobile-link:nth-child(n) .mm-mobile-nav-icon { color:#21d4ec; background:#21d4ec12; border-color:#21d4ec45; box-shadow:0 0 0 5px #21d4ec08; }
.mm-site .mm-mega-arrow {display:none}
.mm-site .mm-mega-service {grid-template-columns:auto 1fr}

/* Keep the project selector close to the work it filters. */
.mm-site #main>.section:has(>.filters .mm-compact-filter){padding-top:48px}
.mm-site .filters:has(.mm-compact-filter){margin-bottom:28px;gap:0}
.mm-site .filters>.mm-compact-filter{margin:0}
@media(max-width:800px){.mm-site #main>.section:has(>.filters .mm-compact-filter){padding-top:24px;padding-bottom:50px}.mm-site .filters:has(.mm-compact-filter){margin-bottom:24px}.mm-site .filters>.mm-compact-filter{margin:0}.mm-site .mm-compact-filter summary{min-height:48px}.mm-site .filters+.sr-only{margin:0}}

/* The brand blue applies to text on every page, including formerly darker variants. */
body.mm-site{--blue:#21d4ec;--blue-deep:#21d4ec;--blue-bright:#21d4ec}
.mm-site .ai-copy .text-blue,
.mm-site .detail-item:nth-child(2n) .mm-feature-icon,
.mm-site .discipline-items svg,
.mm-site .faq-list details[open] summary,
.mm-site .faq-list summary::before,
.mm-site .mix-home-link em,
.mm-site .mm-about-intro h2 span,
.mm-site .mm-about-service-arrow,
.mm-site .mm-about-service-icon,
.mm-site .mm-about-service:hover h3,
.mm-site .mm-channel-icon,
.mm-site .mm-client-projects>a:hover,
.mm-site .mm-compact-active-chip>span,
.mm-site .mm-compact-filter-icon,
.mm-site .mm-contact-channels a:hover strong,
.mm-site .mm-contact-details h2 span,
.mm-site .mm-contact-form em,
.mm-site .mm-contact-next li>span,
.mm-site .mm-editorial-head h2 span,
.mm-site .mm-editorial-link span,
.mm-site .mm-faq-conversation a,
.mm-site .mm-faq-conversation a span,
.mm-site .mm-feature-icon,
.mm-site .mm-footer-social svg,
.mm-site .mm-form-heading .label,
.mm-site .mm-mega-icon,
.mm-site .mm-mobile-link-arrow,
.mm-site .mm-mobile-nav-icon,
.mm-site .mm-mobile-services a>span:first-child,
.mm-site .mm-mobile-services a>span:last-child,
.mm-site .mm-related-card:focus-visible .mm-related-icon,
.mm-site .mm-related-card:hover .mm-related-icon,
.mm-site .mm-related-card:nth-child(2n) .mm-related-icon,
.mm-site .mm-related-icon,
.mm-site .mm-sub-item-icon,
.mm-site .mm-subservice-link:hover,
.mm-site .mm-team-role,
.mm-site .service-cover h1 .text-blue,
.mm-site .service-mark,
.mm-site .text-blue,
.mm-site .tile-design .service-mark,
.mm-site .tile-drone .service-mark{color:#21d4ec!important}

/* Hover follows the brand's yellow accent, including keyboard navigation. */
.mm-site .mm-mega-service:is(:hover,:focus-visible){border-color:#ffda0099;background:#ffda000a}
.mm-site .mm-mega-service:is(:hover,:focus-visible) .mm-mega-icon,
.mm-site .mm-mobile-link:is(:hover,:focus-visible) .mm-mobile-nav-icon{color:#ffda00!important;background:#ffda0015;border-color:#ffda0066;box-shadow:0 0 0 5px #ffda0009}
/* Decorative cubes move with the document rather than the fixed navigation. */
.mm-site .site-header .header-mosaic{transform:translate3d(0,var(--mm-header-mosaic-y,0px),0) skewX(-20deg);transition:none;will-change:transform}
@media(min-width:801px){
 .mm-site .mm-compact-filter .mm-compact-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:min(760px,calc(100vw - 2*var(--pad)));gap:4px 12px;padding:18px;max-height:min(74dvh,650px)}
 .mm-site .mm-compact-filter .mm-compact-options-head,.mm-site .mm-compact-filter .mm-compact-options>a:first-of-type{grid-column:1/-1}
 .mm-site .mm-compact-filter .mm-compact-options>a{min-width:0;margin:0;padding:13px 10px}
}
/* Sparse collages stay behind content and never catch pointer events. */
.mm-site .mm-collage-host{position:relative;isolation:isolate}
.mm-site .mm-parallax-collage{position:absolute;z-index:-1;pointer-events:none;right:clamp(24px,5vw,90px);top:28px;width:105px;height:95px;opacity:.78;transform:translate3d(0,var(--mm-collage-y,0px),0)}
.mm-site .approach>.mm-parallax-collage{right:auto;left:32px;top:20px;width:85px}
.mm-site .mm-contact-layout>.mm-parallax-collage,.mm-site .mm-about-intro>.mm-parallax-collage{top:-35px}
@media(max-width:800px){.mm-site .mm-parallax-collage{display:none}}
@media(prefers-reduced-motion:reduce){.mm-site .mm-parallax-collage{transform:none}.mm-site .site-header.scrolled .header-mosaic{visibility:hidden}}

/* All project-filter icons share one blue style; only the background turns yellow. */
.mm-site .mm-compact-filter .mm-compact-options>a:nth-child(n) .mm-compact-option-icon{color:#21d4ec!important;background:#21d4ec18;border:1px solid #21d4ec38;box-shadow:none;transform:none;border-radius:8px;transition:background-color .18s,border-color .18s}
.mm-site .mm-compact-filter .mm-compact-options>a:is(:hover,:focus-visible,[aria-current]) .mm-compact-option-icon{color:#21d4ec!important;background:#ffda00;border-color:#ffda00;transform:none}
.mm-site .mm-compact-filter .mm-compact-options>a:focus-visible{outline:2px solid #21d4ec;outline-offset:1px}
@media(prefers-reduced-motion:reduce){.mm-site .mm-compact-filter .mm-compact-options>a:nth-child(n) .mm-compact-option-icon{transition:none}}
