/*
Theme Name: MontrealIT Kadence Child
Theme URI: https://montrealit.ca/
Description: MontrealIT brand, accessibility and native-block refinements for Kadence Free.
Author: Ordinateurs Unitech Computers
Template: kadence
 Version: 0.3.65
Text Domain: montrealit-kadence-child
*/

:root {
  --mi-ink: #102c2c;
  --mi-ink-soft: #173d3b;
  --mi-muted: #5e716d;
  --mi-paper: #f5f7f1;
  --mi-mist: #e5eee8;
  --mi-white: #fff;
  --mi-line: #c9d8cf;
  /* Slightly lightened for AA body/button text contrast on dark ink. */
  --mi-coral: #d97958;
  --mi-coral-dark: #a94d34;
  --mi-lime: #d8e794;
  --mi-shell-wide: 1180px;
  --mi-shell-content: 1040px;
  --mi-shell-decision: 1120px;
  --mi-shell-reading: 760px;
  --mi-wide-max: var(--mi-shell-wide);
  --mi-shell-max: var(--mi-shell-wide);
  --mi-section-max: var(--mi-shell-content);
  --mi-reading-max: var(--mi-shell-reading);
  --mi-card-max: var(--mi-shell-wide);
  --mi-gutter: clamp(1rem, 3vw, 2rem);
  --mi-space-section-compact: clamp(2.25rem, 4vw, 3.5rem);
  --mi-space-section-standard: clamp(3.5rem, 6vw, 5.5rem);
  --mi-space-section-feature: clamp(5rem, 8vw, 7rem);
  --mi-space-section-decision: clamp(3.5rem, 5.5vw, 5rem);
  --mi-space-home-secondary: clamp(2.75rem, 4.5vw, 4.25rem);
  --mi-space-home-sequence: clamp(2rem, 3vw, 3rem);
  --mi-space-section: var(--mi-space-section-standard);
  --mi-space-hero: clamp(4rem, 7vw, 6.5rem);
  --mi-space-hero-lead: clamp(1.35rem, 2.6vw, 2rem);
  --mi-space-compact: var(--mi-space-section-compact);
  --mi-space-heading-body: .95rem;
  --mi-space-body-action: 1.35rem;
  /* One shared owner for ordinary article section breathing room. Neutral
   * sections flow as one document; semantic roles may opt into a surface. */
  --mi-space-article-section: clamp(1.45rem, 2.2vw, 2.15rem);
  --mi-space-list: .65rem;
  --mi-heading-display: clamp(2.45rem, 5.2vw, 5.25rem);
  --mi-leading-display: 1.02;
  --mi-heading-section: clamp(1.8rem, 3vw, 2.85rem);
  --mi-body-measure: 68ch;
  --mi-accent-rule: 2px;
  --mi-surface-radius: 2px;
  --mi-max: var(--mi-shell-max);
  --mi-radius: 4px;
  --mi-button-radius: .5rem;
  --mi-space-local-discovery: clamp(1.35rem, 3vw, 2.25rem);
  --mi-shadow: 0 1.5rem 3.5rem rgba(16, 44, 44, .12);
  --mi-leading-body: 1.58;
  --mi-leading-heading: 1.08;
  --mi-leading-card: 1.12;
  --mi-type-kicker: .72rem;
  --mi-type-card-title: clamp(1.25rem, 1.8vw, 1.7rem);
  --mi-surface-editorial: transparent;
  --mi-surface-bordered: rgba(255, 255, 255, .72);
  --mi-surface-tinted: var(--mi-mist);
  --mi-surface-feature: var(--mi-white);
  --mi-motion-fast: .16s;
  --mi-motion-standard: .22s;
  --mi-surface-open: var(--mi-white);
}

html { scroll-behavior: smooth; }
body { background: var(--mi-paper); color: var(--mi-ink); font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
a { text-underline-offset: .18em; }
.entry-content a:not(.wp-element-button) { color: var(--mi-coral-dark); text-decoration: underline; text-decoration-thickness: .1em; text-decoration-skip-ink: auto; }
.entry-content a:not(.wp-element-button):hover { text-decoration-thickness: .16em; }
.entry-content .mi-hero a:not(.wp-element-button), .entry-content .mi-section--dark a:not(.wp-element-button), .entry-content .mi-assessment-hero a:not(.wp-element-button), .entry-content .mi-assessment-deliverables a:not(.wp-element-button) { color: var(--mi-white); }
.entry-content .mi-assessment-cta a:not(.wp-element-button) { color: var(--mi-ink); }
.mi-external-link-cue { display: inline-block; margin-left: .25em; font-size: .9em; font-weight: 900; line-height: 1; text-decoration: none; }
:focus-visible { outline: 3px solid var(--mi-coral); outline-offset: 3px; }

.site-header { border-bottom: 0; background: rgba(245, 247, 241, .96); box-shadow: none; }
.site-header .site-container { min-height: 78px; }
.site-branding { min-width: 235px; }
.mi-brand { display: inline-flex; align-items: center; gap: .72rem; color: var(--mi-ink); text-decoration: none; }
.mi-brand__mark { display: grid; place-items: center; width: 3rem; height: 3rem; flex: 0 0 auto; }
.mi-brand__mark img { display: block; width: 100%; height: 100%; object-fit: contain; }
.mi-brand__words { display: grid; gap: .22rem; line-height: 1; }
.mi-brand__words strong { font-size: 1.08rem; letter-spacing: -.035em; }
.mi-brand__words small { color: var(--mi-coral-dark); font-size: .64rem; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.header-navigation .header-menu-container > ul > li > a { font-size: .82rem; font-weight: 750; }
.header-navigation .header-menu-container > ul > li > a:hover,
.header-navigation .header-menu-container > ul > li > a:focus-visible { color: var(--mi-coral-dark); }
.mi-language-switch > a { border-left: 1px solid var(--mi-line); margin-left: .45rem; padding-left: 1rem !important; color: var(--mi-coral-dark) !important; font-weight: 850 !important; }
.mi-header-cta { display: inline-flex; align-items: center; justify-content: center; min-height: 2.7rem; padding: .6rem 1rem; border-radius: var(--mi-button-radius); background: var(--mi-ink); color: var(--mi-white) !important; font-size: .78rem; font-weight: 850; text-decoration: none; }
.mi-header-cta:hover, .mi-header-cta:focus-visible { background: var(--mi-coral); color: var(--mi-ink) !important; }

.entry-content { color: var(--mi-ink); }
.mi-acceptance-page .entry-header { display: none; }
.mi-top-level-page .entry-hero, .mi-top-level-page .entry-header { display: none; }
.mi-top-level-page .content-area { margin-top: 0; margin-bottom: 0; }
.mi-top-level-page .entry-content-wrap { padding-top: 0; padding-bottom: 0; }
.mi-information-page .entry-hero, .mi-information-page .entry-header { display: none; }
.mi-information-page .content-area, .mi-information-page .entry-content-wrap, .mi-information-page .entry-content { width: 100%; max-width: none; box-sizing: border-box; }
.mi-information-page .content-area { margin-top: 0; margin-bottom: 0; }
.mi-information-page .entry-content-wrap { padding-top: 0; padding-right: 0; padding-bottom: 0; padding-left: 0; }
.mi-acceptance-page .content-area { margin-top: 0; margin-bottom: 0; }
.mi-acceptance-page .entry-content-wrap { padding-top: 0; padding-bottom: 0; }
.entry-content > * { max-width: var(--mi-shell-max); margin-right: auto; margin-left: auto; }
.entry-content > .alignfull { box-sizing: border-box; width: auto; max-width: none; margin-right: calc(50% - 50vw); margin-left: calc(50% - 50vw); }
.entry-content > .mi-surface { width: auto; max-width: none; }
.mi-surface { box-sizing: border-box; }
.mi-surface__inner { box-sizing: border-box; width: 100%; max-width: var(--mi-shell-max); margin-right: auto; margin-left: auto; padding-right: var(--mi-gutter); padding-left: var(--mi-gutter); }
.mi-acceptance-page .entry-hero { display: none; }
.entry-content p { color: var(--mi-muted); }
.entry-content h1, .entry-content h2, .entry-content h3 { color: var(--mi-ink); letter-spacing: -.055em; }
.entry-content h1 { font-size: clamp(2.7rem, 7vw, 6.6rem); line-height: var(--mi-leading-display); }
.entry-content h2 { font-size: clamp(2.15rem, 4.2vw, 4.25rem); line-height: .98; }
.entry-content h3 { font-size: clamp(1.25rem, 2vw, 1.7rem); line-height: 1.08; }
.entry-content .mi-kicker { margin-bottom: .8rem; color: var(--mi-coral-dark); font-size: var(--mi-type-kicker); font-weight: 900; letter-spacing: .16em; line-height: 1.3; text-transform: uppercase; }
.mi-information-page .entry-content > * { max-width: none; }
.mi-information-page .entry-content > .alignfull { width: 100vw; max-width: 100vw; margin-right: calc(50% - 50vw); margin-left: calc(50% - 50vw); }
.mi-information-page .mi-information-hero,
.mi-information-page .mi-information-summary,
.mi-information-page .mi-information-section { box-sizing: border-box; width: 100%; max-width: none; padding: clamp(2.8rem, 6vw, 5.5rem) var(--mi-gutter); }
.mi-information-page .mi-information-hero > .mi-surface__inner,
.mi-information-page .mi-information-summary > .mi-surface__inner,
.mi-information-page .mi-information-section > .mi-surface__inner { max-width: var(--mi-shell-wide); margin-right: auto; margin-left: auto; }
.mi-information-page .mi-information-hero { background: var(--mi-ink); color: var(--mi-white); }
.mi-information-page .mi-information-hero h1 { max-width: 860px; margin-top: 0; color: var(--mi-white); }
.mi-information-page .mi-information-hero h1, .mi-information-page .mi-information-section h2 { word-break: normal; overflow-wrap: normal; hyphens: none; }
.mi-information-page .mi-information-hero .mi-kicker { color: var(--mi-lime); }
.mi-information-page .mi-information-deck { max-width: var(--mi-shell-reading); color: #d9e6dd; font-size: clamp(1.12rem, 2vw, 1.45rem); line-height: 1.5; }
.mi-information-page .mi-information-summary { background: var(--mi-mist); }
.mi-information-page .mi-information-summary h2 { max-width: 720px; margin-top: 0; font-size: clamp(1.8rem, 3.4vw, 3rem); }
.mi-information-page .mi-information-summary p:last-child { max-width: var(--mi-shell-reading); font-size: 1.08rem; line-height: 1.7; }
.mi-information-page .mi-information-section { background: var(--mi-paper); }
.mi-information-page .mi-information-section--mist { background: var(--mi-mist); }
.mi-information-page .mi-information-section .mi-surface__inner > h2,
.mi-information-page .mi-information-section .mi-surface__inner > p:not(.mi-kicker),
.mi-information-page .mi-information-section .mi-surface__inner > ul { max-width: var(--mi-shell-reading); }
.mi-information-page .mi-information-section h2 { margin-top: 0; font-size: clamp(1.75rem, 3.5vw, 3.1rem); }
.mi-information-page .mi-information-section p, .mi-information-page .mi-information-section li { color: var(--mi-muted); line-height: 1.76; }
.mi-information-page .mi-information-section ul { padding-left: 1.25rem; }
.mi-information-page .mi-information-contact { padding-bottom: clamp(4rem, 8vw, 7rem); }
.mi-information-page .mi-information-contact .mi-form-status { max-width: var(--mi-shell-reading); margin: 2rem 0 0; padding: 1.35rem 1.5rem; border-left: .3rem solid var(--mi-coral); background: #fff; color: var(--mi-ink); }
.mi-information-page .mi-information-contact .mi-form-status p { margin-top: 0; }
.mi-information-page .mi-information-contact .mi-form-status p:last-child { margin-bottom: 0; }
.mi-information-page .mi-information-contact .mi-contact-line { display: flex; flex-wrap: wrap; gap: .8rem 1.5rem; font-weight: 850; }
.mi-information-page .mi-information-contact .mi-contact-line a { color: var(--mi-ink); }
.mi-direct-contact { box-sizing: border-box; width: 100%; max-width: none; margin: 0; padding-block: clamp(2.75rem, 7vw, 5.5rem); background: var(--mi-mist); color: var(--mi-ink); }
.mi-direct-contact__inner { max-width: var(--mi-shell-wide); }
.mi-direct-contact__layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(19rem, .78fr); align-items: start; gap: clamp(2rem, 6vw, 5.5rem); }
.mi-direct-contact__main { min-width: 0; }
.mi-direct-contact h1 { max-width: 16ch; margin: .7rem 0 1rem; font-size: clamp(2.2rem, 4.6vw, 4.2rem); line-height: 1; text-wrap: balance; }
.mi-direct-contact__intro { max-width: 62ch; margin: 0; font-size: clamp(1.08rem, 1.8vw, 1.28rem); line-height: 1.6; }
.mi-direct-contact__panel { min-width: 0; margin-top: .35rem; padding: clamp(1.35rem, 3vw, 2.15rem); border: 1px solid var(--mi-line); border-top: 3px solid var(--mi-coral); background: var(--mi-white); box-shadow: var(--mi-surface-shadow); }
.mi-direct-contact .mi-direct-contact__choices { display: grid; grid-template-columns: 1fr; gap: 0; margin: 0; padding-inline: 0; list-style: none; }
.mi-direct-contact__choices li { display: grid; gap: .35rem; min-width: 0; padding-top: .9rem; border-top: 2px solid var(--mi-coral); }
.mi-direct-contact__choices li + li { margin-top: 1.1rem; }
.mi-direct-contact__choices li > span { color: var(--mi-coral-dark); font-size: .82rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.mi-direct-contact__choices a { min-width: 0; color: var(--mi-ink); font-size: clamp(1.15rem, 2vw, 1.45rem); font-weight: 850; overflow-wrap: anywhere; text-decoration-thickness: .1em; text-underline-offset: .16em; }
.mi-direct-contact__choices a:focus-visible { outline: 3px solid var(--mi-coral); outline-offset: 4px; }
.mi-direct-contact__supporting { max-width: 62ch; margin: 1.5rem 0 0; padding-top: 1.15rem; border-top: 1px solid var(--mi-line); color: var(--mi-ink-soft); }
.entry-content .mi-hero { position: relative; overflow: hidden; box-sizing: border-box; padding: var(--mi-space-hero) 0; background: var(--mi-ink); color: var(--mi-white); }
.entry-content .mi-hero::after { position: absolute; right: -8rem; top: -10rem; width: 35rem; height: 35rem; border: 1px solid rgba(229, 238, 232, .23); border-radius: 50%; box-shadow: 0 0 0 4rem rgba(229, 238, 232, .05), 0 0 0 9rem rgba(229, 238, 232, .025); content: ""; pointer-events: none; }
.entry-content .mi-hero > .mi-surface__inner,
.entry-content .mi-hero > .wp-block-group__inner-container,
.entry-content .mi-cta > .mi-surface__inner,
.entry-content .mi-cta > .wp-block-group__inner-container { position: relative; z-index: 1; }
.entry-content .mi-hero__layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(15rem, 20rem); align-items: center; gap: clamp(2rem, 6vw, 6rem); max-width: none; margin: 0; }
.entry-content .mi-hero__main { min-width: 0; }
.entry-content .mi-hero__proof { position: static; min-width: 0; max-width: none; margin: 0; transform: none; }
.entry-content .mi-hero h1 { max-width: 850px; margin-top: 0; color: var(--mi-white); word-break: normal; overflow-wrap: normal; hyphens: none; }
.entry-content .mi-hero .mi-proof strong { word-break: normal; overflow-wrap: normal; hyphens: none; }
.entry-content .mi-hero p { max-width: 680px; color: #d9e6dd; font-size: clamp(1.05rem, 1.8vw, 1.25rem); }
.entry-content .mi-hero .wp-block-buttons { margin-top: 1.7rem; }
.entry-content .mi-m365-hero { padding-bottom: clamp(3rem, 6vw, 5rem); }
.entry-content .mi-m365-hero .mi-m365-deck { max-width: 720px; }
.entry-content .mi-m365-hero .mi-m365-transition { max-width: 680px; margin-top: 1.25rem; color: #b9ccc0; font-size: .98rem; }
.entry-content .mi-m365-hero .mi-m365-actions { display: flex; flex-wrap: wrap; gap: .75rem; }
.entry-content .mi-m365-hero .mi-m365-actions .is-style-outline .wp-block-button__link { border-color: var(--mi-coral); color: var(--mi-white); }
.entry-content .mi-m365-hero .mi-m365-actions .is-style-outline .wp-block-button__link:hover,
.entry-content .mi-m365-hero .mi-m365-actions .is-style-outline .wp-block-button__link:focus-visible { background: var(--mi-white); border-color: var(--mi-white); color: var(--mi-ink); }
.entry-content .mi-hero .mi-proof strong { display: block; color: var(--mi-white); font-size: 4.5rem; line-height: .85; letter-spacing: -.1em; }
.entry-content .mi-hero .mi-proof em { display: block; margin-top: .7rem; color: var(--mi-coral); font-style: normal; font-weight: 850; }
.entry-content .mi-hero .mi-proof p { margin-top: .7rem; font-size: .88rem; }
.entry-content .mi-strip { padding: 0 max(1rem, calc((100vw - var(--mi-max)) / 2)); background: var(--mi-mist); }
.entry-content .mi-strip .wp-block-columns { gap: 0; margin: 0; }
.entry-content .mi-strip .wp-block-column { min-height: 94px; padding: 1.05rem 1rem; border-right: 1px solid var(--mi-line); }
.entry-content .mi-strip .wp-block-column:last-child { border-right: 0; }
.entry-content .mi-strip strong { display: block; color: var(--mi-ink); font-size: 1.15rem; letter-spacing: -.04em; }
.entry-content .mi-strip p { margin: .2rem 0 0; font-size: .82rem; font-weight: 700; }
.entry-content .mi-section {
  /* Shared full-width surface with a single constrained content axis. */
  box-sizing: border-box;
  width: 100vw;
  max-width: none;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  padding: 0 var(--mi-gutter);
}
.entry-content .mi-section > .mi-section__intro,
.entry-content .mi-section > .wp-block-columns,
.entry-content .mi-section > .mi-faq { box-sizing: border-box; width: 100%; max-width: var(--mi-shell-content); margin-right: auto; margin-left: auto; }
.entry-content .mi-section--mist { background: var(--mi-mist); }
.entry-content .mi-section--dark { background: var(--mi-ink); }
.entry-content .mi-section--dark h2, .entry-content .mi-section--dark h3 { color: var(--mi-white); }
.entry-content .mi-section--dark p { color: #c5d6cb; }
.entry-content .mi-section--dark li { color: #c5d6cb; }
.entry-content .mi-section--dark .mi-kicker { color: var(--mi-lime); }
.entry-content .mi-section__intro { max-width: 760px; margin-bottom: 2rem; }
.entry-content .mi-section__intro p { font-size: 1.08rem; }
.entry-content .mi-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); gap: .85rem; }
.entry-content .mi-grid .wp-block-column { min-width: 0; width: auto; flex-basis: auto; }
.entry-content .mi-grid .wp-block-column { padding: 1.25rem; border-top: 3px solid var(--mi-coral); background: var(--mi-white); box-shadow: 0 1px 0 rgba(16, 44, 44, .08); }
.entry-content .mi-grid .wp-block-column p { font-size: .98rem; }
.entry-content .mi-section:not(.mi-section--dark) .mi-grid .wp-block-column { padding: .45rem 0 .55rem 1.15rem; border-top: 0; border-left: var(--mi-accent-rule) solid var(--mi-coral); background: var(--mi-surface-editorial); box-shadow: none; }
.entry-content .mi-grid--dark .wp-block-column { background: rgba(255, 255, 255, .07); box-shadow: none; }
.entry-content .mi-grid--dark .wp-block-column h3 { color: var(--mi-white); }
.entry-content .mi-section--dark .mi-grid .wp-block-column { background: rgba(255, 255, 255, .07); box-shadow: none; }
.entry-content .mi-section--dark .mi-grid .wp-block-column h3 { color: var(--mi-white); }
.entry-content .mi-section--dark .mi-grid .wp-block-column p,
.entry-content .mi-section--dark .mi-grid .wp-block-column li { color: #c5d6cb; }
.entry-content .mi-process { counter-reset: mi-step; gap: 1.25rem; }
.entry-content .mi-process .wp-block-column { position: relative; padding-top: 3.25rem; }
.entry-content .mi-process .wp-block-column::before { position: absolute; left: 0; top: 0; color: var(--mi-coral-dark); content: counter(mi-step, decimal-leading-zero); counter-increment: mi-step; font-size: 2rem; font-weight: 900; letter-spacing: -.08em; }
.entry-content .mi-faq details { padding: 1rem 0; border-top: 1px solid var(--mi-line); }
.entry-content .mi-faq details:last-child { border-bottom: 1px solid var(--mi-line); }
.entry-content .mi-faq summary { cursor: pointer; color: var(--mi-ink); font-weight: 850; }
.entry-content .mi-faq p { max-width: 760px; margin-bottom: 0; }
.entry-content .mi-cta { box-sizing: border-box; width: auto; max-width: none; margin-right: calc(50% - 50vw); margin-left: calc(50% - 50vw); padding: clamp(3rem, 5vw, 4.5rem) 0; background: var(--mi-coral); }
.entry-content .mi-cta > .wp-block-group__inner-container,
.entry-content .mi-cta > .mi-surface__inner { max-width: var(--mi-card-max); }
.entry-content .mi-cta h2 { margin-top: 0; max-width: 780px; color: var(--mi-ink); }
.entry-content .mi-cta p { max-width: 680px; color: var(--mi-ink-soft); }
.entry-content .wp-block-buttons { gap: .75rem; }
.entry-content .wp-block-button__link { border-radius: var(--mi-button-radius); background: var(--mi-coral); color: var(--mi-ink); font-weight: 850; }
.entry-content .mi-hero .wp-block-button__link, .entry-content .mi-section--dark .wp-block-button__link { background: var(--mi-coral); }
.entry-content .mi-cta .wp-block-button__link { background: var(--mi-ink); color: var(--mi-white); }
.entry-content .wp-block-button.is-style-outline .wp-block-button__link { border-color: currentColor; background: transparent; }
.entry-content .mi-contact-line { display: flex; flex-wrap: wrap; gap: .7rem 1.5rem; font-weight: 850; }
.entry-content .mi-contact-line a { color: var(--mi-ink); }

/* Shared premium editorial shell. Kadence keeps the template and metadata;
   repository-owned Gutenberg groups provide the full-width surfaces. */
.mi-editorial-article .content-area { margin-top: 0; margin-bottom: 0; }
.mi-editorial-article .content-container { padding-right: 0; padding-left: 0; }
.mi-editorial-article .entry { margin-right: 0; margin-left: 0; border-radius: 0; background: transparent; }
.mi-editorial-article .entry-content-wrap { padding: 0; }
.mi-editorial-article .entry-header {
  position: relative;
  z-index: 0;
  box-sizing: border-box;
  width: 100vw;
  max-width: none;
  margin-bottom: 0;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  padding: clamp(3.5rem, 8vw, 7rem) max(var(--mi-gutter), calc((100vw - var(--mi-wide-max)) / 2 + var(--mi-gutter))) clamp(2.5rem, 5vw, 4rem);
  overflow: hidden;
  background: var(--mi-ink);
}
.mi-editorial-article .entry-header::after {
  position: absolute;
  z-index: -1;
  right: -9rem;
  top: -12rem;
  width: 38rem;
  height: 38rem;
  border: 1px solid rgba(229, 238, 232, .2);
  border-radius: 50%;
  box-shadow: 0 0 0 4rem rgba(229, 238, 232, .05), 0 0 0 9rem rgba(229, 238, 232, .025);
  content: "";
  pointer-events: none;
}
.mi-editorial-article .entry-title { max-width: 950px; color: var(--mi-white); font-size: clamp(2.7rem, 6vw, 5.8rem); line-height: .96; letter-spacing: -.06em; }
.mi-editorial-article .entry-meta { color: #c5d6cb; }
.mi-editorial-article .mi-public-byline { margin: .8rem 0 0; color: var(--mi-lime); font-size: .92rem; font-weight: 800; }
.mi-editorial-article .entry-header .mi-article-hero__breadcrumb {
  box-sizing: border-box;
  display: flex;
  width: 100%;
  max-width: none;
  min-height: 0;
  margin: 0 0 1.15rem;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  color: var(--mi-fg-inverse-muted);
  font-size: .78rem;
  font-weight: 400;
  line-height: 1.4;
}
.mi-editorial-article .entry-header .mi-article-hero__breadcrumb ol {
  width: auto;
  gap: .25rem .55rem;
}
.mi-editorial-article .entry-header .mi-article-hero__breadcrumb li { gap: .55rem; }
.mi-editorial-article .entry-header .mi-article-hero__breadcrumb li:not(:last-child)::after {
  color: var(--mi-fg-inverse-muted);
  font-weight: 400;
}
.mi-editorial-article .entry-header .mi-article-hero__breadcrumb a {
  color: var(--mi-fg-inverse-secondary);
  font-weight: 500;
  text-decoration-thickness: .06em;
}
.mi-editorial-article .entry-header .mi-article-hero__breadcrumb [aria-current="page"] {
  color: var(--mi-fg-inverse-muted);
}
.mi-editorial-article .entry-content { width: 100%; max-width: none; margin-top: 0; overflow-wrap: normal; word-break: normal; }
.mi-editorial-article .entry-content :where(.wp-block-group, .wp-block-columns, .wp-block-column, .wp-block-group__inner-container) { box-sizing: border-box; min-width: 0; }
.mi-editorial-article .entry-content > :where(.mi-article-intro, .mi-article-guide-map, .mi-article-section, .mi-article-cta-section, .mi-editorial-component, .mi-editorial-component-host) { width: auto; max-width: none; margin-right: calc(50% - 50vw); margin-left: calc(50% - 50vw); }
.mi-editorial-article .entry-content > .mi-editorial-component-host { box-sizing: border-box; padding: 0; }
.mi-editorial-article .entry-content > .mi-editorial-component-host > .mi-editorial-component,
.mi-editorial-article .entry-content > .mi-editorial-component-host > .mi-m365-self-check { width: 100%; max-width: none; margin: 0; }
.mi-editorial-article .mi-surface__inner { box-sizing: border-box; width: 100%; max-width: var(--mi-shell-max); margin-right: auto; margin-left: auto; padding-right: var(--mi-gutter); padding-left: var(--mi-gutter); }
.mi-editorial-article .mi-article-intro { padding: clamp(2.35rem, 4.2vw, 3.8rem) 0; background: var(--mi-paper); }
.mi-editorial-article .mi-article-section {
  padding: var(--mi-space-article-section) 0;
  background: var(--mi-white);
}
/* Older stored migrations used --mist as an automatic every-fourth-section
 * marker. Keep that historical class harmless; authored semantic roles below
 * remain the only way a section selects a distinct surface. */
.mi-editorial-article .mi-article-section--mist { background: var(--mi-white); }
.mi-editorial-article .mi-article-intro .mi-surface__inner > *,
.mi-editorial-article .mi-article-section .mi-surface__inner > :where(h2, h3, h4, h5, h6, p, ul, ol, blockquote, figure, table, pre) { width: min(100%, var(--mi-reading-max)); max-width: var(--mi-reading-max); margin-right: auto; margin-left: auto; }
.mi-editorial-article .mi-article-section h2 { margin-top: 0; margin-bottom: var(--mi-space-heading-body); font-size: clamp(2rem, 4.2vw, 3.7rem); line-height: .99; }
.mi-editorial-article .mi-article-section h3 { margin-top: 2.2rem; font-size: clamp(1.3rem, 2vw, 1.75rem); }
.mi-editorial-article .mi-article-intro p, .mi-editorial-article .mi-article-section p, .mi-editorial-article .mi-article-section li { font-size: 1.06rem; line-height: 1.72; }
.mi-editorial-article .mi-article-section li { margin-bottom: var(--mi-space-list); }
.mi-editorial-article .mi-article-heading--numbered { display: grid; grid-template-columns: minmax(3.2rem, 4.5rem) minmax(0, 1fr); align-items: start; gap: 1rem; }
.mi-editorial-article .mi-article-heading__number { padding-top: .15rem; border-top: 2px solid var(--mi-coral); color: var(--mi-coral-dark); font-size: clamp(1.35rem, 2.1vw, 2.1rem); font-weight: 900; letter-spacing: -.08em; line-height: 1; }
.mi-editorial-article .mi-article-heading__title { display: block; }
.mi-editorial-article .mi-article-intro .mi-surface__inner > p:first-of-type { color: var(--mi-ink-soft); font-size: clamp(1.14rem, 1.9vw, 1.35rem); line-height: 1.58; }
.mi-editorial-article .mi-article-section p + ul,
.mi-editorial-article .mi-article-section p + ol { margin-top: .85rem; }
.mi-editorial-article .mi-article-section p:last-child,
.mi-editorial-article .mi-article-section ul:last-child,
.mi-editorial-article .mi-article-section ol:last-child { margin-bottom: 0; }
.mi-editorial-article .mi-article-guide-map { padding: var(--mi-space-section-compact) 0; border-block: 1px solid var(--mi-line); background: var(--mi-mist); }
.mi-editorial-article .mi-article-guide-map__title { max-width: var(--mi-reading-max); margin: 0 0 var(--mi-space-heading-body); font-size: clamp(1.8rem, 3vw, 2.8rem); line-height: 1.04; }
.mi-editorial-article .mi-article-guide-map__columns { max-width: var(--mi-reading-max); margin: 0 auto; gap: clamp(1.5rem, 4vw, 3.5rem); }
.mi-editorial-article .mi-article-guide-map__list { margin: 0; padding-left: 1.25rem; }
.mi-editorial-article .mi-article-guide-map__list li { margin-bottom: .55rem; }
.mi-editorial-article .mi-article-guide-map__list li:last-child { margin-bottom: 0; }
.mi-editorial-article .mi-article-guide-map a { color: var(--mi-ink); font-weight: 750; text-decoration-thickness: .08em; }
.mi-editorial-article .mi-article-heading__title { min-width: 0; }
.mi-editorial-article .mi-article-cta-section { padding: clamp(3.2rem, 6vw, 5.8rem) 0; background: var(--mi-coral); }
.mi-editorial-article .mi-article-cta-section .mi-surface__inner > * { width: min(100%, var(--mi-reading-max)); max-width: var(--mi-reading-max); margin-right: auto; margin-left: auto; }
.mi-editorial-article .mi-article-cta-section h2 { margin-top: 0; color: var(--mi-ink); }
.mi-editorial-article .mi-article-cta-section p, .mi-editorial-article .mi-article-cta-section li { color: var(--mi-ink-soft); }
.mi-editorial-article .mi-article-cta-section a { color: var(--mi-ink); font-weight: 800; }
.mi-editorial-article .mi-related-reading { width: min(100%, var(--mi-reading-max)); margin: 1.5rem auto; padding: 1rem 1.2rem; border-left: 4px solid var(--mi-coral); background: var(--mi-mist); font-weight: 750; }
.mi-editorial-article .mi-related-resources { width: 100vw; max-width: none; margin-right: calc(50% - 50vw); margin-left: calc(50% - 50vw); }
.mi-editorial-article .mi-related-resources__inner { max-width: var(--mi-card-max); }
.mi-editorial-article .mi-related-resources__grid { grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); }
.mi-editorial-article .entry-content :where(h1, h2, h3, h4, h5, h6) { overflow-wrap: break-word; }
.mi-editorial-article .entry-content :where(p, li, blockquote, a, span, strong, em) { max-width: 100%; white-space: normal; writing-mode: horizontal-tb; text-orientation: mixed; word-break: normal; overflow-wrap: break-word; }
.mi-editorial-article .entry-content :where(.wp-block-columns, .wp-block-column) { width: 100%; max-width: 100%; }
.mi-editorial-article .entry-content :where(pre, table) { max-width: 100%; overflow-x: auto; }

/* Keep Kadence's shared previous/next navigation inside the editorial shell. */
.single-post .post-navigation {
  box-sizing: border-box;
  width: min(100%, var(--mi-shell-content));
  margin: clamp(2rem, 4vw, 3.5rem) auto 0;
  padding: 0 var(--mi-gutter) clamp(2.5rem, 5vw, 4rem);
}
.single-post .post-navigation .nav-links {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1.5rem, 5vw, 5rem);
}
.single-post .post-navigation .nav-previous,
.single-post .post-navigation .nav-next {
  min-width: 0;
  border: 0;
  border-inline: 0;
  box-shadow: none;
}
.single-post .post-navigation .nav-previous::after,
.single-post .post-navigation .nav-previous::before,
.single-post .post-navigation .nav-next::after,
.single-post .post-navigation .nav-next::before {
  display: none;
  content: none;
}
.single-post .post-navigation a {
  display: block;
  min-width: 0;
  height: 100%;
  box-sizing: border-box;
  padding: .65rem 0;
  border: 0;
  border-top: 1px solid var(--mi-rule-subtle);
  background: transparent;
  color: var(--mi-ink);
  overflow-wrap: break-word;
  word-break: normal;
  white-space: normal;
}
.single-post .post-navigation a:hover,
.single-post .post-navigation a:focus-visible {
  border-top-color: var(--mi-coral);
  background: transparent;
}
.single-post .post-navigation .post-navigation-sub { margin-bottom: .45rem; }
.single-post .post-navigation .post-navigation-sub small { color: var(--mi-coral-dark); font-weight: 850; }
.single-post .post-navigation .nav-next { text-align: right; }

.mi-resources-page .entry-content-wrap { padding-top: 0; padding-bottom: 0; }
.mi-resources-page .entry-hero, .mi-resources-page .entry-header { display: none; }
.mi-resources-page .entry-content > * { max-width: var(--mi-section-max); }
.mi-resources-page .entry-content > .mi-surface { max-width: none; }
.mi-resources-hero { background: var(--mi-ink); }
.mi-resources-title { margin: 0 0 .7rem; color: var(--mi-white) !important; font-size: clamp(2.7rem, 7vw, 5.8rem); line-height: .98; }
.mi-resources-hero .mi-resource-deck { max-width: 760px; color: #d9e6dd; font-size: clamp(1.15rem, 2vw, 1.45rem); line-height: 1.45; }
.mi-resources-section { margin-top: 0; }
.mi-resources-section--archive { background: var(--mi-paper); }
.mi-resource-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; max-width: var(--mi-max); margin: 1.6rem auto 0; }
.wp-block-columns.mi-resource-grid { display: flex; flex-wrap: wrap !important; align-items: stretch; gap: 1rem; }
.wp-block-columns.mi-resource-grid > .wp-block-column { display: flex; width: auto; min-width: 0; margin: 0; flex: 1 1 calc((100% - 2rem) / 3) !important; }
.wp-block-columns.mi-resource-grid > .wp-block-column > .mi-resource-card { display: flex; flex: 1 1 auto; width: 100%; }
.wp-block-columns.mi-resource-grid.mi-resource-grid--single { max-width: var(--mi-shell-reading); }
.wp-block-columns.mi-resource-grid.mi-resource-grid--single > .wp-block-column { flex-basis: 100% !important; }
.mi-resource-grid--single { grid-template-columns: minmax(0, 1fr); max-width: var(--mi-reading-max); margin-left: 0; }
.mi-resource-card { display: flex; flex-direction: column; min-width: 0; min-height: 0; padding: 1.35rem; border-top: 3px solid var(--mi-coral); background: var(--mi-white); box-shadow: 0 1px 0 rgba(16, 44, 44, .08); }
.mi-resource-card__type { margin: 0 0 .55rem; color: var(--mi-coral-dark) !important; font-size: .72rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.entry-content .mi-resource-card h3 { min-width: 0; margin: 0; font-size: clamp(1.25rem, 1.8vw, 1.7rem); line-height: 1.12; }
.entry-content .mi-resource-card h3 a { color: var(--mi-ink); text-decoration: none; }
.entry-content .mi-resource-card h3 a:hover, .entry-content .mi-resource-card h3 a:focus-visible { color: var(--mi-coral-dark); text-decoration: underline; text-decoration-thickness: .08em; }
.mi-resource-card > p:not(.mi-resource-card__type) { margin: .9rem 0; }
.mi-resource-card__link { display: inline-flex; gap: .35rem; align-items: center; margin-top: auto; color: var(--mi-coral-dark); font-weight: 850; }
.mi-home-resources { padding: clamp(3rem, 5.5vw, 4.75rem) max(1rem, calc((100vw - var(--mi-max)) / 2)); border-block: 1px solid var(--mi-line); background: var(--mi-paper); }
.mi-home-resources + .mi-section { border-top: 1px solid var(--mi-line); }
.mi-home-resources__inner { max-width: var(--mi-max); margin: 0 auto; }
.mi-home-resources h2 { margin: 0; }
.mi-home-resources__inner > p:not(.mi-kicker) { max-width: 42rem; }
.mi-home-resources__grid, .mi-contextual-resources__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin-top: 1.4rem; }
.mi-home-resources__grid article { padding: 1.3rem; border-top: 3px solid var(--mi-coral); background: var(--mi-white); }
.mi-home-resources__grid h3 { margin: 0; font-size: 1.35rem; }
.mi-home-resources__grid h3 a { color: var(--mi-ink); text-decoration: none; }
.mi-home-resources__grid article p { margin: .65rem 0; }
.mi-home-resources__grid article > a { color: var(--mi-coral-dark); font-weight: 850; }

/* Shared editorial decision compositions. These are content-led primitives,
 * not article-specific card skins. */
.mi-editorial-component { background: var(--mi-paper); }
.mi-editorial-component-host { display: block; }
.mi-editorial-component__inner { box-sizing: border-box; width: min(100%, var(--mi-shell-max)); margin-inline: auto; padding: clamp(3.4rem, 7vw, 6.5rem) var(--mi-gutter); }
.mi-editorial-component .mi-kicker { margin: 0 0 .85rem; color: var(--mi-coral-dark); }
.mi-editorial-component h2 { max-width: 28ch; margin: 0 0 1.2rem; font-size: clamp(2.1rem, 4.5vw, 4.8rem); line-height: 1.02; letter-spacing: -.045em; }
.mi-editorial-thesis { background: var(--mi-paper); }
.mi-editorial-thesis > .mi-editorial-component__inner { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(16rem, .65fr); gap: clamp(2rem, 8vw, 8rem); align-items: end; }
.mi-editorial-thesis__support { max-width: 34rem; margin: 0; color: var(--mi-ink-soft); font-size: clamp(1.1rem, 1.8vw, 1.35rem); line-height: 1.6; }
.mi-editorial-distinction { background: var(--mi-mist); border-block: 1px solid var(--mi-line); }
.mi-editorial-distinction h2, .mi-editorial-question-rail h2, .mi-editorial-evidence h2 { max-width: 22ch; }
.mi-editorial-distinction__grid, .mi-editorial-evidence__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(1.4rem, 4vw, 4.5rem); margin-top: 2.2rem; padding-top: 1.2rem; border-top: 1px solid var(--mi-ink-soft); }
.mi-editorial-distinction__grid article { min-width: 0; }
.mi-editorial-distinction__grid h3 { margin: .75rem 0 .4rem; font-size: 1rem; }
.mi-editorial-distinction__grid p:last-child { margin: 0; line-height: 1.6; }
.mi-editorial-term { margin: 0; color: var(--mi-coral-dark); font-size: .76rem; font-weight: 900; letter-spacing: .13em; line-height: 1.25; text-transform: uppercase; }
.mi-editorial-question-rail { background: var(--mi-paper); }
.mi-editorial-question-rail ol { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 clamp(2rem, 6vw, 6rem); max-width: var(--mi-shell-content); margin: 2rem 0 0; padding: 0; list-style: none; border-top: 1px solid var(--mi-line); }
.mi-editorial-question-rail li { display: grid; grid-template-columns: 3.2rem minmax(0, 1fr); gap: 1rem; padding: 1.2rem 0; border-bottom: 1px solid var(--mi-line); font-size: 1.05rem; line-height: 1.5; }
.mi-editorial-question__number { color: var(--mi-coral-dark); font-size: 1.35rem; font-weight: 900; letter-spacing: -.08em; }
.mi-editorial-evidence { background: var(--mi-mist); color: var(--mi-ink); }
.mi-editorial-evidence .mi-kicker, .mi-editorial-evidence .mi-editorial-term { color: var(--mi-coral-dark); }
.mi-editorial-evidence h2 { color: var(--mi-ink); }
.mi-editorial-evidence__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); border-top-color: var(--mi-ink-soft); }
.mi-editorial-evidence__grid ul { margin: .85rem 0 0; padding-left: 1.2rem; }
.mi-editorial-evidence__grid li { margin-bottom: .55rem; line-height: 1.5; }
.mi-editorial-decision-pair { background: var(--mi-paper); }
.mi-editorial-decision-pair__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(1.5rem, 6vw, 7rem); margin-top: 1.5rem; }
.mi-editorial-decision-pair__grid > div { padding-top: 1.1rem; border-top: 2px solid var(--mi-coral); }
.mi-editorial-decision-pair__grid p:last-child { max-width: 34rem; margin: .7rem 0 0; line-height: 1.65; }
.mi-editorial-closing { background: var(--mi-ink); border-block: 1px solid var(--mi-ink); color: var(--mi-white); }
.mi-editorial-closing .mi-kicker { color: var(--mi-lime); }
.mi-editorial-closing h2 { color: var(--mi-white); }
.mi-editorial-closing p:last-child { color: #d5e2d9; }
.mi-editorial-closing h2 { max-width: 15ch; }
.mi-editorial-closing p:last-child { max-width: 42rem; margin: 0; font-size: 1.18rem; line-height: 1.65; }
.mi-m365-self-check { background: var(--mi-ink); color: var(--mi-white); }
.mi-m365-self-check > .mi-editorial-component__inner { width: min(100%, var(--mi-shell-max)); margin-right: auto; margin-left: auto; }
.mi-m365-self-check .mi-kicker { color: var(--mi-lime); }
.mi-m365-self-check h2 { color: var(--mi-white); }
.mi-m365-self-check__intro { max-width: 38rem; }
.mi-m365-self-check__intro > p:last-child { color: #d5e2d9; }
.mi-m365-self-check__form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 clamp(2rem, 6vw, 6rem); margin-top: 2rem; }
.mi-m365-self-check__question { grid-column: auto; margin: 0; padding: 1rem 0; border: 0; border-top: 1px solid rgba(255,255,255,.28); }
.mi-m365-self-check__question legend { display: grid; grid-template-columns: 3rem minmax(0, 1fr); gap: .9rem; width: 100%; padding: 0; font-weight: 800; line-height: 1.45; }
.mi-m365-self-check__number { color: var(--mi-coral); font-size: 1.25rem; font-weight: 900; }
.mi-m365-self-check__options { display: flex; flex-wrap: wrap; gap: .45rem; margin: .8rem 0 0 3.9rem; }
.mi-m365-self-check__options label { position: relative; display: inline-flex; align-items: center; min-height: 2.5rem; padding: .45rem .8rem; border: 1px solid rgba(255,255,255,.42); border-radius: var(--mi-button-radius); color: var(--mi-white); cursor: pointer; }
.mi-m365-self-check__options input { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
.mi-m365-self-check__options label:has(input:checked) { border-color: var(--mi-coral); background: var(--mi-coral); color: var(--mi-ink); }
.mi-m365-self-check__options label:has(input:focus-visible) { outline: 3px solid var(--mi-white); outline-offset: 3px; }
.mi-m365-self-check__form > .mi-action-link { grid-column: 1 / -1; justify-self: start; margin: 1.4rem 0 0; }
.mi-m365-self-check__result { grid-column: 1 / -1; margin-top: 2.4rem; padding-top: 1.5rem; border-top: 2px solid var(--mi-coral); }
.mi-m365-self-check__result h3 { max-width: 30ch; margin: .3rem 0 .7rem; color: var(--mi-white); font-size: clamp(1.6rem, 3vw, 2.7rem); }
.mi-m365-self-check__result h4 { margin: 1.8rem 0 .65rem; color: var(--mi-lime); }
.mi-m365-self-check__result p { max-width: 48rem; line-height: 1.6; }
.mi-m365-self-check__result-kicker { margin: 0; color: var(--mi-lime); font-size: .76rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.mi-m365-self-check__actions { max-width: 58rem; margin: 0; padding: 0; list-style: none; }
.mi-m365-self-check__action { padding: 1rem 0; border-top: 1px solid rgba(255,255,255,.25); }
.mi-m365-self-check__action strong { display: inline; }
.mi-m365-self-check__answer { margin-left: .6rem; color: var(--mi-coral); font-size: .84rem; font-weight: 800; }
.mi-m365-self-check__action p { margin: .35rem 0 0; }
.mi-m365-self-check__action .mi-m365-self-check__why { color: #c8d8ce; font-size: .93rem; }
.mi-m365-self-check__missing { margin: .7rem 0 0; padding-left: 1.2rem; }
.mi-m365-self-check__toggle { margin-top: 1rem; padding: .35rem 0; border: 0; border-bottom: 1px solid var(--mi-coral); background: transparent; color: var(--mi-white); font: inherit; font-weight: 800; cursor: pointer; }
.mi-m365-self-check__support { margin-top: 2.5rem; padding-top: 1.5rem; border-top: 1px solid rgba(255,255,255,.3); }
.mi-m365-self-check__support h3 { margin: 0 0 .55rem; color: var(--mi-white); font-size: 1.4rem; }
.mi-m365-self-check__support-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 1.4rem; margin-top: 1rem; }
.mi-m365-self-check__support .mi-action-link--primary.wp-element-button { background: var(--mi-white); color: var(--mi-ink) !important; }
.mi-m365-self-check__support .mi-action-link--primary.wp-element-button:hover, .mi-m365-self-check__support .mi-action-link--primary.wp-element-button:focus-visible { background: var(--mi-coral); color: var(--mi-ink) !important; }
.entry-content .mi-editorial-decision-panel .mi-m365-self-check__support .mi-action-link--text { color: var(--mi-white); }
.entry-content .mi-editorial-decision-panel .mi-action-link--primary.wp-element-button { background: var(--mi-white); color: var(--mi-ink) !important; }
.entry-content .mi-editorial-decision-panel .mi-action-link--primary.wp-element-button:hover,
.entry-content .mi-editorial-decision-panel .mi-action-link--primary.wp-element-button:focus-visible { background: var(--mi-coral); color: var(--mi-ink) !important; }
.mi-home-resources__grid article,
.mi-commercial-card,
.mi-service-ongoing__grid article,
.mi-service-shelf__list > .mi-service-shelf__item { display: flex; flex-direction: column; min-width: 0; }
.mi-home-resources__grid article > p:last-child,
.mi-service-shelf__list > .mi-service-shelf__item > .mi-action-link { margin-top: auto; }
.mi-action-link { display: inline-flex; align-items: baseline; justify-content: flex-start; gap: .42em; max-width: 100%; color: var(--mi-coral-dark); font-weight: 850; text-decoration: underline; text-decoration-thickness: .1em; text-underline-offset: .18em; }
.mi-action-link--text { background: transparent; color: var(--mi-coral-dark); }
.mi-action-link__unit { display: inline-flex; align-items: center; justify-content: center; gap: .48em; width: fit-content; min-width: 0; max-width: 100%; }
.mi-action-link__label { min-width: 0; overflow-wrap: normal; word-break: normal; }
.mi-action-link__arrow { flex: 0 0 auto; white-space: nowrap; text-decoration: none; transition: transform var(--mi-motion-fast) ease; }
.mi-action-link:hover .mi-action-link__arrow,
.mi-action-link:focus-visible .mi-action-link__arrow { transform: translateX(.18em); }
.mi-action-link--primary.wp-element-button,
.mi-action-link.wp-element-button:not(.mi-action-link--inverse) { display: inline-flex; align-items: center; justify-content: center; text-align: center; width: fit-content; max-width: 100%; min-width: 0; min-height: 2.8rem; padding: .72rem clamp(1.25rem, 2vw, 1.75rem); border-radius: var(--mi-button-radius); background: var(--mi-ink); color: var(--mi-white) !important; text-decoration: none; }
.mi-action-link--primary.wp-element-button .mi-action-link__unit,
.mi-action-link--inverse.wp-element-button .mi-action-link__unit { width: max-content; margin-inline: auto; }
.wp-block-button:has(> .mi-action-link) { flex: 0 1 auto; width: fit-content; max-width: 100%; min-width: 0; margin-inline: auto; }
.mi-action-link--primary.wp-element-button:hover,
.mi-action-link--primary.wp-element-button:focus-visible,
.mi-action-link.wp-element-button:not(.mi-action-link--inverse):hover,
.mi-action-link.wp-element-button:not(.mi-action-link--inverse):focus-visible { background: var(--mi-coral); color: var(--mi-ink) !important; }
.mi-action-link--inverse.wp-element-button { display: inline-flex; align-items: center; justify-content: center; text-align: center; width: fit-content; max-width: 100%; min-width: 0; min-height: 2.8rem; padding: .72rem clamp(1.25rem, 2vw, 1.75rem); border-radius: var(--mi-button-radius); background: var(--mi-coral); color: var(--mi-ink) !important; text-decoration: none; }
.mi-action-link--inverse.wp-element-button:hover, .mi-action-link--inverse.wp-element-button:focus-visible { background: var(--mi-white); color: var(--mi-ink) !important; }

/* CTA contrast follows the semantic surface, not the page or route. */
.entry-content .mi-hero .mi-action-link--primary.wp-element-button,
.entry-content .mi-section--dark .mi-action-link--primary.wp-element-button {
  background: var(--mi-white);
  color: var(--mi-ink) !important;
}
.entry-content .mi-hero .mi-action-link--primary.wp-element-button:hover,
.entry-content .mi-hero .mi-action-link--primary.wp-element-button:focus-visible,
.entry-content .mi-section--dark .mi-action-link--primary.wp-element-button:hover,
.entry-content .mi-section--dark .mi-action-link--primary.wp-element-button:focus-visible {
  background: var(--mi-coral);
  color: var(--mi-ink) !important;
}
.entry-content .mi-hero .mi-action-link--inverse.wp-element-button,
.entry-content .mi-section--dark .mi-action-link--inverse.wp-element-button {
  border: 1px solid rgba(255, 255, 255, .78);
  background: transparent;
  color: var(--mi-white) !important;
}
.entry-content .mi-hero .mi-action-link--inverse.wp-element-button:hover,
.entry-content .mi-hero .mi-action-link--inverse.wp-element-button:focus-visible,
.entry-content .mi-section--dark .mi-action-link--inverse.wp-element-button:hover,
.entry-content .mi-section--dark .mi-action-link--inverse.wp-element-button:focus-visible {
  border-color: var(--mi-white);
  background: var(--mi-white);
  color: var(--mi-ink) !important;
}
.entry-content .mi-cta .mi-action-link--text,
.entry-content .mi-cta .mi-action-link--text:hover,
.entry-content .mi-cta .mi-action-link--text:focus-visible {
  color: var(--mi-ink) !important;
  text-decoration-color: currentColor;
}
.entry-content .mi-cta .mi-action-link--primary.wp-element-button:hover,
.entry-content .mi-cta .mi-action-link--primary.wp-element-button:focus-visible,
.entry-content .mi-cta .mi-action-link--primary.wp-element-button:active,
.entry-content .mi-assessment-cta .mi-action-link--primary.wp-element-button:hover,
.entry-content .mi-assessment-cta .mi-action-link--primary.wp-element-button:focus-visible,
.entry-content .mi-assessment-cta .mi-action-link--primary.wp-element-button:active,
.entry-content .mi-article-cta-section .mi-action-link--primary.wp-element-button:hover,
.entry-content .mi-article-cta-section .mi-action-link--primary.wp-element-button:focus-visible,
.entry-content .mi-article-cta-section .mi-action-link--primary.wp-element-button:active {
  background-color: var(--mi-white) !important;
  background-image: none !important;
  color: var(--mi-ink) !important;
}
.entry-content .mi-cta .mi-action-link--primary.wp-element-button:focus-visible,
.entry-content .mi-assessment-cta .mi-action-link--primary.wp-element-button:focus-visible,
.entry-content .mi-article-cta-section .mi-action-link--primary.wp-element-button:focus-visible {
  outline: 3px solid var(--mi-ink) !important;
  outline-offset: 3px;
}
.mi-cta-group { width: min(100%, 46rem); margin: clamp(1.7rem, 4vw, 2.8rem) auto 0; }
.mi-cta-group__pair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; width: min(100%, 42rem); margin: 0 auto; }
.mi-cta-group__pair.is-layout-flex { display: grid; }
.mi-cta-group__pair .wp-block-button { display: flex; width: auto; min-width: 0; margin: 0; }
.mi-cta-group__pair .mi-action-link--primary.wp-element-button,
.mi-cta-group__pair .mi-action-link--inverse.wp-element-button { width: 100%; max-width: none; }
.mi-cta-pair {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .8rem;
  width: min(100%, 42rem);
  margin-inline: auto;
}
.mi-cta-pair > a,
.mi-cta-pair > .wp-block-button,
.mi-cta-pair > .wp-block-button > .wp-element-button { width: 100%; min-width: 0; }
:where(.mi-hero, .mi-service-hero) .wp-block-buttons:has(> .wp-block-button + .wp-block-button) {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .8rem;
  width: min(100%, 42rem);
  margin-inline: auto;
}
:where(.mi-hero, .mi-service-hero) .wp-block-buttons:has(> .wp-block-button + .wp-block-button) > .wp-block-button {
  display: flex;
  width: 100%;
  min-width: 0;
  margin: 0;
}
:where(.mi-hero, .mi-service-hero) .wp-block-buttons:has(> .wp-block-button + .wp-block-button) > .wp-block-button > .wp-element-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-width: 0;
  min-height: 2.8rem;
}
.mi-cta-group--closing .mi-action-link--inverse.wp-element-button { background: var(--mi-white); color: var(--mi-ink) !important; }
.mi-cta-group--closing .mi-action-link--inverse.wp-element-button:hover,
.mi-cta-group--closing .mi-action-link--inverse.wp-element-button:focus-visible { background: var(--mi-ink); color: var(--mi-white) !important; }
.mi-cta-group__trust { margin: 1.05rem 0 0; text-align: center; }
.mi-cta-group__trust-link { font-size: .92rem; }
.mi-home-topics > .wp-block-column,
.mi-home-evidence > .wp-block-column { display: flex; flex-direction: column; min-width: 0; }
.mi-home-topics > .wp-block-column > h3,
.mi-home-evidence > .wp-block-column > h3 { line-height: var(--mi-leading-card); }
.mi-home-topics > .wp-block-column > p:last-child { margin-top: auto; padding-top: var(--mi-space-body-action); }
.mi-home-topics > .wp-block-column > p:last-child a { display: inline-flex; align-items: baseline; gap: .42em; max-width: 100%; }
.mi-home-topics > .wp-block-column > p:last-child a span { flex: 0 0 auto; white-space: nowrap; text-decoration: none; }
.mi-home-evidence > .wp-block-column > p:last-child { margin-bottom: 0; }
.mi-service-shelf__list > .mi-service-shelf__item { gap: .15rem; padding: clamp(1.1rem, 2vw, 1.45rem); background: var(--mi-surface-feature); }
.mi-service-shelf__list > .mi-service-shelf__item > .mi-service-shelf__label { flex: 0 0 auto; margin-bottom: .65rem; }
.mi-service-shelf__list > .mi-service-shelf__item > h2 { margin-top: 0; line-height: var(--mi-leading-card); }
.mi-service-shelf__list > .mi-service-shelf__item > p:not(.mi-service-shelf__label) { margin-top: .55rem; }
.mi-service-shelf__list > .mi-service-shelf__item > .mi-action-link { padding-top: var(--mi-space-body-action); }
.mi-home-resources__more { clear: both; margin: clamp(2.8rem, 6vw, 4.2rem) 0 0; padding-top: .35rem; }
.mi-home-resources__more > a.wp-element-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.8rem;
  padding: .72rem 1.15rem;
  border-radius: var(--mi-button-radius);
  border: 0;
  background: var(--mi-ink) !important;
  color: var(--mi-white) !important;
  font-weight: 850;
  text-decoration: none !important;
}
.mi-home-resources__more > a.wp-element-button:hover,
.mi-home-resources__more > a.wp-element-button:focus-visible {
  background: var(--mi-coral) !important;
  color: var(--mi-ink) !important;
}
.mi-home-managed { background: var(--mi-mist); border-top: 1px solid var(--mi-line); border-bottom: 1px solid var(--mi-line); }
.mi-home-managed__inner { display: flex; align-items: center; justify-content: space-between; gap: clamp(2rem, 6vw, 5rem); max-width: var(--mi-max); margin: 0 auto; padding: clamp(2.8rem, 5vw, 4.5rem) max(1rem, calc((100vw - var(--mi-max)) / 2)); }
.mi-home-managed h2 { max-width: 900px; margin: 0; color: var(--mi-ink); font-size: clamp(2.15rem, 4vw, 3.7rem); line-height: 1.02; }
.mi-home-managed p:not(.mi-kicker) { max-width: 700px; color: var(--mi-ink-soft); }
.mi-home-managed .mi-kicker { color: var(--mi-coral-dark); }
.mi-home-managed .wp-element-button { flex: 0 0 auto; background: var(--mi-ink); color: var(--mi-white); text-decoration: none; }
.mi-home-managed .wp-element-button:hover, .mi-home-managed .wp-element-button:focus-visible { background: var(--mi-white); color: var(--mi-ink); }
.mi-home-trust { padding: clamp(2.8rem, 5vw, 4.5rem) max(1rem, calc((100vw - var(--mi-max)) / 2)); background: var(--mi-paper); }
.mi-home-trust__inner { max-width: var(--mi-max); margin: 0 auto; }
.mi-home-trust h2 { max-width: 760px; margin: 0; font-size: clamp(2rem, 4vw, 3.6rem); }
.mi-home-trust p:not(.mi-kicker) { max-width: 650px; color: var(--mi-muted); }
.mi-home-trust a { color: var(--mi-coral-dark); font-weight: 850; }
.mi-home-trust .wp-element-button { background: var(--mi-ink); color: var(--mi-white) !important; text-decoration: none; }
.mi-home-trust .wp-element-button:hover, .mi-home-trust .wp-element-button:focus-visible { background: var(--mi-coral); color: var(--mi-ink) !important; }
.mi-home-trust--compact { padding-top: clamp(2rem, 4vw, 3.2rem); padding-bottom: clamp(2rem, 4vw, 3.2rem); }
.mi-home-trust--compact h2 { font-size: clamp(1.8rem, 3.5vw, 3rem); }
.mi-section--dark .mi-home-evidence .wp-block-column { border-top: 1px solid rgba(229,238,232,.24); padding-top: 1.2rem; background: transparent; }
.mi-contextual-resources { max-width: var(--mi-max); margin: 2rem auto; padding: 2rem max(1rem, 3vw); border-top: 3px solid var(--mi-coral); background: var(--mi-mist); }
.mi-contextual-resources h2 { margin-top: 0; font-size: clamp(1.65rem, 3vw, 2.4rem); }
.mi-contextual-resources__grid a { display: block; padding: 1rem; background: var(--mi-white); color: var(--mi-ink); font-weight: 800; text-decoration: none; }
.mi-contextual-resources__grid a:hover, .mi-contextual-resources__grid a:focus-visible { color: var(--mi-coral-dark); }
.mi-footer-resources { font-weight: 850; }
.mi-related-resources { width: 100%; max-width: none; padding: clamp(2.8rem, 5vw, 4.6rem) max(1rem, calc((100vw - var(--mi-max)) / 2)); background: var(--mi-paper); }
.mi-related-resources__inner { max-width: var(--mi-card-max); margin: 0 auto; }
.mi-editorial-article .mi-related-resources__inner { box-sizing: border-box; padding-right: var(--mi-gutter); padding-left: var(--mi-gutter); }
.single-post .mi-related-resources { padding-inline: clamp(1rem, 3vw, 2rem); }
.single-post .mi-related-resources__inner { width: 100%; }
.mi-related-resources h2 { margin-top: 0; font-size: clamp(2rem, 4vw, 3.2rem); }
.mi-related-resources__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.mi-related-resource-card { display: flex; flex-direction: column; min-height: 13rem; padding: 1.35rem; border-top: 3px solid var(--mi-coral); background: var(--mi-white); }
.mi-related-resource-card__type { margin: 0 0 .5rem; color: var(--mi-coral-dark) !important; font-size: .72rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.mi-related-resource-card h3 { margin: 0; font-size: clamp(1.25rem, 2vw, 1.7rem); }
.entry-content .mi-related-resource-card h3 a { color: var(--mi-ink); text-decoration: none; }
.entry-content .mi-related-resource-card h3 a:hover, .entry-content .mi-related-resource-card h3 a:focus-visible { color: var(--mi-coral-dark); text-decoration: underline; text-decoration-thickness: .08em; }
.mi-related-resource-card > p:not(.mi-related-resource-card__type) { color: var(--mi-muted); }
.mi-related-resource-card__link { margin-top: auto; color: var(--mi-coral-dark); font-weight: 850; }
.mi-grid--three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.mi-fact { padding-top: 1rem; border-top: 1px solid var(--mi-line); }
.mi-fact strong { display: block; color: var(--mi-coral); font-size: clamp(2rem, 4vw, 3.8rem); line-height: 1; letter-spacing: -.07em; }
.mi-section--dark .mi-fact h3 { color: var(--mi-white); }

/* Repository-owned assessment composition. The page content supplies the
   editable blocks; this layer gives every offer the same usable hierarchy. */
.mi-assessment-page .entry-content-wrap { padding-top: 0; padding-bottom: 0; }
.mi-assessment-page .entry-hero, .mi-assessment-page .entry-header { display: none; }
.mi-assessment-page .entry-content > * { max-width: none; }
.mi-assessment-page .entry-content h1 { font-size: clamp(2.65rem, 6vw, 5.6rem); line-height: .98; }
.mi-assessment-page .mi-assessment-hero,
.mi-assessment-page .mi-assessment-section,
.mi-assessment-page .mi-assessment-cta { box-sizing: border-box; width: 100%; max-width: none; padding: clamp(3rem, 6vw, 5.5rem) max(1rem, calc((100vw - var(--mi-max)) / 2)); }
.mi-assessment-page .mi-assessment-hero { width: 100vw; max-width: 100vw; margin-left: calc(50% - 50vw); }
.mi-assessment-page .mi-assessment-hero { background: var(--mi-ink); color: var(--mi-white); }
.mi-assessment-page .mi-assessment-hero > *,
.mi-assessment-page .mi-assessment-section > *,
.mi-assessment-page .mi-assessment-cta > * { max-width: var(--mi-max); margin-right: auto; margin-left: auto; }
.mi-assessment-page .mi-assessment-hero > .wp-block-group__inner-container { width: 100%; max-width: var(--mi-shell-wide) !important; }
.mi-assessment-page .mi-assessment-hero h1 { max-width: 900px; margin-top: .75rem; color: var(--mi-white); }
.mi-assessment-page .mi-assessment-hero p { max-width: 780px; color: #d9e6dd; }
.mi-assessment-page .mi-assessment-hero .mi-kicker { color: var(--mi-lime); }
.mi-assessment-hero__layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(18rem, 25rem); gap: clamp(2rem, 6vw, 6rem); align-items: start; max-width: var(--mi-shell-wide); margin: 0 auto; }
.mi-assessment-page .mi-assessment-hero .wp-block-group__inner-container > .mi-assessment-hero__layout { width: 100%; max-width: var(--mi-shell-wide) !important; }
.mi-assessment-hero__main { min-width: 0; }
.mi-site-breadcrumb { box-sizing: border-box; display: flex; align-items: center; max-width: var(--mi-shell-wide); min-height: 2.25rem; margin: 0 auto; padding: .35rem var(--mi-gutter); border: 0; color: var(--mi-muted); font-size: .84rem; line-height: 1.35; }
.entry-content > .mi-site-breadcrumb + :where(.mi-surface, .mi-section) { margin-top: 0; }
.mi-site-breadcrumb ol { display: flex; align-items: center; flex-wrap: wrap; gap: .3rem .65rem; width: 100%; margin: 0; padding: 0; list-style: none; }
.mi-site-breadcrumb li { display: inline-flex; align-items: center; gap: .65rem; }
.mi-site-breadcrumb li:not(:last-child)::after { color: var(--mi-coral-dark); content: '›'; font-weight: 800; }
.mi-site-breadcrumb a { color: var(--mi-ink); font-weight: 800; text-decoration-thickness: .08em; text-underline-offset: .16em; }
.mi-site-breadcrumb [aria-current="page"] { color: var(--mi-muted); }
.mi-assessment-evidence-panel { box-sizing: border-box; margin-top: 2.5rem; padding: 1.5rem; border: 1px solid rgba(229, 238, 232, .28); background: rgba(255, 255, 255, .08); }
.mi-assessment-evidence-panel h2 { margin-top: .5rem; color: var(--mi-white); font-size: clamp(1.6rem, 2.6vw, 2.4rem); line-height: 1.05; }
.mi-assessment-evidence-panel p { color: #d9e6dd; }
.mi-assessment-evidence-panel ul { margin: 1.25rem 0 0; padding-left: 1.1rem; color: #d9e6dd; }
.mi-assessment-evidence-panel li { margin: .55rem 0; }
.mi-assessment-breadcrumb { display: flex; flex-wrap: wrap; gap: .45rem; align-items: center; color: #b9ccc0; font-size: .84rem; }
.mi-assessment-breadcrumb a { color: var(--mi-white); font-weight: 800; }
.mi-assessment-deck { font-size: clamp(1.12rem, 2vw, 1.42rem); line-height: 1.48; }
.mi-assessment-qualifier { margin-top: 1.25rem; font-size: .86rem; }
.mi-assessment-actions { display: flex; flex-wrap: wrap; gap: .8rem 1.1rem; align-items: center; margin-top: 1.6rem; }
.mi-assessment-actions .wp-element-button { display: inline-flex; align-items: center; min-height: 2.8rem; padding: .72rem 1.15rem; border-radius: var(--mi-button-radius); background: var(--mi-coral); color: var(--mi-ink); font-weight: 850; text-decoration: none; }
.mi-assessment-actions .wp-element-button:hover, .mi-assessment-actions .wp-element-button:focus-visible { background: var(--mi-white); }
.mi-assessment-anchor, .mi-assessment-review { color: inherit; font-weight: 800; }
.mi-assessment-section:nth-of-type(even) { background: var(--mi-paper); }
.mi-assessment-section h2 { max-width: 820px; margin-top: 0; font-size: clamp(2rem, 4vw, 3.6rem); }
.mi-assessment-section h3 { letter-spacing: -.035em; }
.mi-assessment-benefits, .mi-assessment-scope, .mi-assessment-factors { background: var(--mi-mist); }
.mi-assessment-audience, .mi-assessment-evidence, .mi-assessment-boundaries, .mi-assessment-access { background: var(--mi-paper); }
.mi-assessment-card-grid, .mi-assessment-split, .mi-assessment-process, .mi-assessment-boundary-grid { display: grid; gap: 1rem; max-width: var(--mi-max); margin-top: 1.6rem; }
.mi-assessment-card-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.mi-assessment-split { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.mi-assessment-boundary-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.mi-assessment-card-grid > article, .mi-assessment-split > article, .mi-assessment-boundary-grid > article { padding: 1.35rem; border-top: 3px solid var(--mi-coral); background: var(--mi-white); }
.mi-assessment-card-grid h3, .mi-assessment-split h3, .mi-assessment-boundary-grid h3 { margin-top: 0; }
.mi-assessment-card-grid p, .mi-assessment-card-grid li, .mi-assessment-split p, .mi-assessment-boundary-grid li { color: var(--mi-muted); line-height: 1.62; }
.mi-assessment-card-grid ul, .mi-assessment-boundary-grid ul { margin: .7rem 0 0; padding-left: 1.1rem; }
.mi-assessment-source-copy { max-width: 760px; margin: 2rem auto 0; }
.mi-assessment-source-copy p, .mi-assessment-source-copy li { color: var(--mi-muted); line-height: 1.72; }
.mi-assessment-process-section { background: var(--mi-paper); }
.mi-assessment-process { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.mi-assessment-process article { position: relative; padding: 3.2rem 1rem 0 0; border-top: 1px solid var(--mi-line); }
.mi-assessment-process article h3 { margin-top: .6rem; }
.mi-assessment-process article p { color: var(--mi-muted); }
.mi-assessment-step { position: absolute; top: .55rem; left: 0; color: var(--mi-coral-dark); font-size: 1.7rem; font-weight: 900; letter-spacing: -.08em; }
.mi-assessment-deliverables { background: var(--mi-ink); }
.mi-assessment-deliverables h2, .mi-assessment-deliverables h3 { color: var(--mi-white); }
.mi-assessment-deliverables .mi-kicker { color: var(--mi-lime); }
.mi-assessment-deliverables p, .mi-assessment-deliverables li { color: #c5d6cb; }
.mi-assessment-deliverables .mi-assessment-source-copy { max-width: var(--mi-max); }
.mi-assessment-deliverables .mi-assessment-source-copy p { max-width: 760px; }
.mi-assessment-cta { background: var(--mi-coral); }
.mi-assessment-cta h2 { margin-top: 0; color: var(--mi-ink); }
.mi-assessment-cta p { max-width: 760px; color: var(--mi-ink-soft); }
.mi-assessment-cta .mi-assessment-source-copy { margin-left: 0; }
.mi-assessment-contact { font-weight: 800; }
.mi-assessment-contact a { color: var(--mi-ink); }
.mi-assessment-hero .mi-assessment-breadcrumb + .mi-kicker { margin-top: 1.1rem; }
.mi-assessment-cta .mi-assessment-actions { margin-top: 1.85rem; margin-bottom: .35rem; }
.mi-assessment-cta .mi-assessment-contact { margin-top: 1.35rem; }
.mi-assessment-commercial-clarity { background: var(--mi-mist); }
.mi-assessment-commercial-clarity > .mi-commercial-engagement { max-width: var(--mi-section-max); margin-top: 1.25rem; }
.mi-commercial-engagement { padding: 1rem 1.2rem; border-left: 4px solid var(--mi-coral); background: var(--mi-white); }
.mi-commercial-engagement p { margin: 0; }
.mi-commercial-card__label { color: var(--mi-coral-dark) !important; font-size: .72rem; font-weight: 900; letter-spacing: .12em; line-height: 1.3; text-transform: uppercase; }
.mi-commercial-card__value { margin-top: .25rem !important; color: var(--mi-ink) !important; font-size: 1.15rem; font-weight: 800; }
.mi-commercial-subheading { max-width: var(--mi-section-max) !important; margin-top: 2.4rem !important; margin-bottom: 0; font-size: clamp(1.45rem, 2.6vw, 2.15rem) !important; }
.mi-commercial-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; max-width: var(--mi-card-max) !important; margin-top: 1rem !important; }
.mi-commercial-grid .wp-block-column { min-width: 0; margin: 0; }
.mi-commercial-card { box-sizing: border-box; height: 100%; max-width: none !important; padding: 1.35rem; border-top: 3px solid var(--mi-coral); background: var(--mi-white); }
.mi-commercial-card h4 { margin: 0; color: var(--mi-ink); font-size: clamp(1.12rem, 1.7vw, 1.45rem); letter-spacing: -.035em; line-height: 1.1; }
.mi-commercial-card ul { margin: .8rem 0 0; padding-left: 1.1rem; }
.mi-commercial-card li { color: var(--mi-muted); line-height: 1.62; }
.mi-commercial-limitations { max-width: var(--mi-reading-max) !important; margin-top: 2rem !important; }
.mi-commercial-limitations p { color: var(--mi-muted); line-height: 1.72; }
.mi-commercial-approval { max-width: var(--mi-reading-max) !important; margin-top: 1rem !important; color: var(--mi-ink) !important; font-weight: 750; }
.mi-footer-history { color: #e4eee7 !important; font-weight: 750; }
.mi-footer-reviews { margin-top: 1rem !important; color: var(--mi-coral) !important; font-weight: 800; }

.site-footer { background: #0b2020; color: #e4eee7; }
.site-footer .footer-html { font-size: .84rem; }
.site-footer .mi-footer-grid a { color: #e4eee7 !important; }
.site-footer .mi-footer-grid a:not(.mi-brand) { text-decoration: underline; text-decoration-thickness: .1em; }
.site-footer .mi-footer-grid a:hover, .site-footer .mi-footer-grid a:focus-visible { color: var(--mi-coral) !important; }
.site-footer .mi-footer-legal a { color: #9fb4a8 !important; }
.site-footer .mi-footer-legal a:hover, .site-footer .mi-footer-legal a:focus-visible { color: var(--mi-coral) !important; }
.mi-footer-grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 2.4rem; padding: 2.8rem 0 2.4rem; text-align: left; }
.mi-footer-grid p { color: #b8cbbf; font-size: .88rem; }
.mi-footer-grid h2 { margin: 0 0 .75rem; color: var(--mi-coral); font-size: .72rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.mi-footer-grid a { display: block; margin: .4rem 0; text-decoration: none; }
.mi-footer-menu { margin: 0; padding: 0; list-style: none; }
.mi-footer-menu li { margin: 0; padding: 0; list-style: none; }
.mi-footer-grid .mi-brand { color: var(--mi-white); }
.mi-footer-grid .mi-brand__mark { width: 3.25rem; height: 3.25rem; }
.mi-footer-grid .mi-brand__words strong { font-size: 1.12rem; }
.mi-footer-grid .mi-brand__words small { color: var(--mi-coral); }
.mi-footer-contact a { font-size: .98rem; font-weight: 750; }
.mi-footer-legal { padding: .9rem 0 1.5rem; border-top: 1px solid rgba(228, 238, 231, .18); color: #9fb4a8; font-size: .75rem; text-align: left; }
.mi-release-stamp { margin: .55rem 0 0; color: #b8cbbf; font-size: .7rem; letter-spacing: .04em; }
.mi-contact-form { display: grid; gap: 1rem; max-width: 46rem; }
.mi-contact-form p { margin: 0; }
.mi-contact-form label { display: block; font-weight: 700; margin-bottom: .35rem; }
.mi-contact-form input, .mi-contact-form textarea { box-sizing: border-box; width: 100%; border: 1px solid rgba(16,44,44,.35); border-radius: .35rem; padding: .75rem; font: inherit; background: #fff; }
.mi-contact-form input:focus, .mi-contact-form textarea:focus { outline: 3px solid rgba(237,111,87,.45); outline-offset: 2px; border-color: #ed6f57; }
.mi-contact-form button { border: 0; border-radius: var(--mi-button-radius); padding: .8rem 1.25rem; background: #ed6f57; color: #102c2c; font-weight: 800; cursor: pointer; }
.mi-contact-form button:hover, .mi-contact-form button:focus-visible { background: #102c2c; color: #fff; }
.mi-contact-notice { font-size: .9rem; color: #385252; }
.mi-form-status { padding: .8rem 1rem; border-left: .25rem solid #ed6f57; background: #f5eee7; }
.mi-form-status--error { border-color: #a53d32; }
.mi-honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }

/* Shared productized-service shelf. The CPT supplies language and scope data;
   this brand layer supplies one composed public system for all service keys. */
.mi-service-page-body .entry-hero, .mi-service-page-body .entry-header, .mi-service-shelf-body .entry-hero, .mi-service-shelf-body .entry-header { display: none; }
.mi-service-page-body .content-area, .mi-service-shelf-body .content-area { margin-top: 0; margin-bottom: 0; }
.mi-service-page-body .entry-content-wrap, .mi-service-shelf-body .entry-content-wrap { padding-top: 0; padding-bottom: 0; }
.mi-service-page, .mi-service-shelf { --mi-service-max: var(--mi-shell-wide); }
.mi-service-page > section, .mi-service-shelf > section { box-sizing: border-box; width: 100vw; max-width: none; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); }
.mi-service-hero, .mi-service-shelf__hero { position: relative; overflow: hidden; background: var(--mi-ink); color: var(--mi-white); }
.mi-service-hero::after, .mi-service-shelf__hero::after { position: absolute; right: -9rem; top: -11rem; width: 34rem; height: 34rem; border: 1px solid rgba(229,238,232,.22); border-radius: 50%; box-shadow: 0 0 0 4rem rgba(229,238,232,.05), 0 0 0 9rem rgba(229,238,232,.025); content: ""; pointer-events: none; }
.mi-service-hero__inner, .mi-service-shelf__inner, .mi-service-section__inner, .mi-service-cta__inner { position: relative; z-index: 1; box-sizing: border-box; width: 100%; margin: 0 auto; padding: var(--mi-space-section) var(--mi-gutter); }
.mi-service-hero__inner, .mi-service-shelf__inner { max-width: var(--mi-shell-wide); }
.mi-service-section__inner, .mi-service-cta__inner { max-width: var(--mi-shell-content); }
.mi-service-hero__inner, .mi-service-shelf__hero .mi-service-shelf__inner { padding-top: clamp(3.6rem, 7vw, 5.8rem); padding-bottom: clamp(3.2rem, 6vw, 5.2rem); }
.mi-service-hero h1, .mi-service-shelf__hero h1 { max-width: 900px; margin: 0; color: var(--mi-white); font-size: var(--mi-heading-display); line-height: var(--mi-leading-display); }
.mi-service-hero__summary, .mi-service-shelf__hero p:not(.mi-kicker) { max-width: var(--mi-shell-reading); color: var(--mi-mist); font-size: clamp(1.08rem, 1.8vw, 1.3rem); }
.entry-content .mi-hero h1 + p:not(.mi-kicker),
.entry-content .mi-page-deck,
.mi-service-hero h1 + .mi-hero__lead,
.mi-service-shelf__hero h1 + .mi-hero__lead { margin-top: var(--mi-space-hero-lead); }
.entry-content .mi-service-hero__summary { color: var(--mi-mist); }
.mi-service-hero .mi-kicker, .mi-service-shelf__hero .mi-kicker { color: var(--mi-lime); }
.mi-service-hero__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem; margin-top: 1.7rem; }
.mi-service-hero__actions > a { min-width: 0; }
.mi-service-hero .wp-element-button, .mi-problem-navigation .wp-element-button { background: var(--mi-coral); color: var(--mi-ink); font-weight: 850; text-decoration: none; }
.mi-service-hero .wp-element-button:hover, .mi-service-hero .wp-element-button:focus-visible, .mi-problem-navigation .wp-element-button:hover, .mi-problem-navigation .wp-element-button:focus-visible { background: var(--mi-white); color: var(--mi-ink); }
.mi-service-hero__secondary { color: var(--mi-white); text-decoration: underline; text-underline-offset: .2em; }
.entry-content a.mi-service-hero__secondary:not(.wp-element-button) { color: var(--mi-white); }
.mi-service-section { background: var(--mi-paper); }
.mi-service-section__inner { padding-top: var(--mi-space-section); padding-bottom: var(--mi-space-section); }
.mi-service-page .mi-service-section--ongoing-intro, .mi-service-page .mi-service-section--ongoing-process { background: var(--mi-paper); }
.mi-service-page .mi-service-section--ongoing-cards { background: var(--mi-mist); }
.mi-service-page .mi-service-section--ongoing-relationship { background: var(--mi-ink); }
.mi-service-section h2, .mi-service-shelf__group h2 { max-width: 850px; margin-top: 0; }
.mi-service-section h2 { font-size: var(--mi-heading-section); line-height: 1.06; }
.mi-service-symptoms { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.mi-service-symptoms p { min-width: 0; margin: 0; padding: 1.2rem 1.3rem; border-top: 2px solid var(--mi-coral); background: var(--mi-white); color: var(--mi-ink); font-weight: 750; }
.mi-service-split { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(18rem, .8fr); gap: clamp(2rem, 6vw, 5rem); }
.mi-service-split > div { min-width: 0; }
.mi-service-section ul { margin: 0; padding-left: 1.2rem; }
.mi-service-section li { margin: .55rem 0; color: var(--mi-muted); }
.mi-service-receives { padding: 1.5rem; background: var(--mi-ink); }
.mi-service-receives h2, .mi-service-receives li { color: var(--mi-white); }
.mi-service-receives .mi-kicker { color: var(--mi-lime); }
.mi-service-scope-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.mi-service-scope-grid > div { min-width: 0; padding: 1.3rem; border-top: var(--mi-accent-rule) solid var(--mi-line); background: rgba(255,255,255,.68); }
.mi-service-scope-grid h3 { margin-top: 0; }
.mi-service-approval { max-width: 760px; margin-top: 1.5rem; color: var(--mi-ink-soft) !important; font-weight: 400; font-size: 1rem; line-height: 1.55; }
.mi-service-qualification { max-width: 760px; margin: 1.25rem 0 0; color: var(--mi-ink-soft); font-size: 1rem; line-height: 1.55; }
.mi-service-cta { background: var(--mi-coral); }
.mi-service-cta__inner { padding-top: clamp(3rem, 5vw, 4.5rem); padding-bottom: clamp(3rem, 5vw, 4.5rem); }
.mi-service-cta h2 { max-width: 850px; margin-top: 0; color: var(--mi-ink); }
.mi-service-cta p { max-width: 720px; color: var(--mi-ink-soft); }
.mi-service-cta .wp-element-button { background: var(--mi-ink); color: var(--mi-white); }
.mi-service-related { background: var(--mi-mist); }
.mi-service-related__inner { max-width: var(--mi-shell-wide); margin: 0 auto; padding: clamp(2rem, 3.5vw, 3rem) var(--mi-gutter); }
.mi-service-related__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.mi-service-related__grid article { min-width: 0; padding: 1.15rem 1.25rem; border-top: 2px solid var(--mi-line); background: var(--mi-white); }
.mi-service-related__grid h3 { margin-top: 0; font-size: clamp(1.2rem, 1.8vw, 1.55rem); line-height: 1.12; }
.entry-content .mi-service-related__grid h3 a { color: var(--mi-ink); text-decoration: none; }
.entry-content .mi-service-related__grid h3 a:hover, .entry-content .mi-service-related__grid h3 a:focus-visible { color: var(--mi-coral-dark); text-decoration: underline; text-decoration-thickness: .08em; }
.mi-service-related__grid article > p:not(.mi-kicker) { color: var(--mi-muted); }
.mi-service-shelf__group { border-top: 1px solid var(--mi-line); }
.mi-service-shelf__group--paper { background: var(--mi-paper); }
.mi-service-shelf__group--mist { background: var(--mi-surface-tinted); }
.mi-service-shelf__group .mi-service-shelf__inner { padding-top: var(--mi-space-compact); padding-bottom: var(--mi-space-compact); }
.mi-service-shelf__group > .mi-service-shelf__inner > .mi-kicker { margin: 0; padding-bottom: .8rem; border-bottom: var(--mi-accent-rule) solid var(--mi-coral); }
.mi-service-shelf__list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem 1.25rem; margin-top: 1.25rem; }
.mi-service-shelf__list--count-1 { grid-template-columns: minmax(0, 1fr); }
.mi-service-shelf__list--count-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.mi-service-shelf__list--count-4-plus { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.mi-service-shelf__list > .mi-service-shelf__item { min-width: 0; padding: 1.2rem 1.25rem 1.3rem; border-top: 1px solid var(--mi-line); background: rgba(255,255,255,.68); }
.mi-service-shelf__list h2 { margin: 0; font-size: clamp(1.28rem, 1.8vw, 1.85rem); line-height: 1.1; }
.entry-content .mi-service-shelf__list h2 a { color: var(--mi-ink); text-decoration: none; }
.entry-content .mi-service-shelf__list h2 a:hover, .entry-content .mi-service-shelf__list h2 a:focus-visible { color: var(--mi-coral-dark); text-decoration: underline; text-decoration-thickness: .08em; }
.mi-service-shelf__list article > p:not(.mi-service-shelf__label) { color: var(--mi-muted); }
.mi-service-shelf__label { margin: 0 0 .6rem; color: var(--mi-coral-dark) !important; font-size: .72rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.mi-service-shelf__link { color: var(--mi-coral-dark); font-weight: 800; }
.mi-service-shelf__relationship { background: var(--mi-mist); border-top: 1px solid var(--mi-line); border-bottom: 1px solid var(--mi-line); }
.mi-service-shelf__relationship-inner { display: flex; align-items: center; justify-content: space-between; gap: 2rem; max-width: var(--mi-shell-max); margin: 0 auto; padding: var(--mi-space-compact) var(--mi-gutter); }
.mi-service-shelf__relationship h2 { max-width: 780px; margin: 0; color: var(--mi-ink); font-size: clamp(2rem, 4vw, 3.7rem); line-height: 1; }
.mi-service-shelf__relationship p:not(.mi-kicker) { max-width: 720px; color: var(--mi-ink-soft); }
.mi-service-shelf__relationship .mi-kicker { color: var(--mi-coral-dark); }
.mi-service-shelf__relationship .wp-element-button { flex: 0 0 auto; background: var(--mi-ink); color: var(--mi-white); text-decoration: none; }
.mi-service-shelf__relationship .wp-element-button:hover, .mi-service-shelf__relationship .wp-element-button:focus-visible { background: var(--mi-white); color: var(--mi-ink); }
.mi-service-capabilities { background: var(--mi-ink); color: var(--mi-white); }
.mi-service-capabilities__inner { max-width: var(--mi-shell-max); margin: 0 auto; padding: clamp(3rem, 5vw, 4.8rem) var(--mi-gutter); }
.mi-service-capabilities h2 { max-width: 840px; margin-top: 0; color: var(--mi-white); }
.mi-service-capabilities .mi-kicker { color: var(--mi-lime); }
.mi-service-capabilities__groups { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(1.25rem, 3vw, 2.25rem); margin-top: 1.6rem; }
.mi-service-capabilities__groups section { min-width: 0; padding-top: 1rem; border-top: 1px solid rgba(229,238,232,.3); }
.mi-service-capabilities__groups h3 { color: var(--mi-white); font-size: 1.25rem; }
.mi-service-capabilities__groups ul { margin: 0; padding: 0; list-style: none; }
.mi-service-capabilities__groups li { margin: 0; border-top: 1px solid rgba(229,238,232,.14); }
.entry-content .mi-service-capabilities__groups a { display: flex; justify-content: space-between; gap: 1rem; padding: .75rem 0; color: var(--mi-white); text-decoration: none; }
.entry-content .mi-service-capabilities__groups a span { color: var(--mi-coral); font-weight: 900; }
.entry-content .mi-service-capabilities__groups a:hover, .entry-content .mi-service-capabilities__groups a:focus-visible { color: var(--mi-white); text-decoration: underline; text-decoration-thickness: .08em; }
.entry-content .mi-service-capabilities__groups a:hover span, .entry-content .mi-service-capabilities__groups a:focus-visible span { color: var(--mi-lime); }
.mi-service-page--trust .mi-service-section--why { background: var(--mi-mist); }
.mi-service-page--trust .mi-service-section--checks { background: var(--mi-paper); }
.mi-service-page--operations .mi-service-section--situations { background: var(--mi-mist); }
.mi-service-page--operations .mi-service-section--checks { background: var(--mi-ink); }
.mi-service-page--operations .mi-service-section--checks h2, .mi-service-page--operations .mi-service-section--checks li { color: var(--mi-white); }
.mi-service-page--operations .mi-service-section--checks .mi-kicker { color: var(--mi-lime); }
.mi-service-page--continuity .mi-service-section--why { background: var(--mi-paper); }
.mi-service-page--continuity .mi-service-section--checks { background: var(--mi-mist); }
.mi-service-page--transition .mi-service-section--why { background: var(--mi-mist); }
.mi-service-page--transition .mi-service-section--checks { background: var(--mi-paper); }
.mi-service-page--transition .mi-service-section--onboarding { background: var(--mi-ink); }
.mi-service-page--transition .mi-service-section--onboarding h2, .mi-service-page--transition .mi-service-section--onboarding li, .mi-service-page--transition .mi-service-section--onboarding p { color: var(--mi-white); }
.mi-service-page--transition .mi-service-section--onboarding .mi-kicker { color: var(--mi-lime); }
.mi-service-page--ongoing .mi-service-hero__inner { padding-top: clamp(5rem, 10vw, 8rem); padding-bottom: clamp(4.5rem, 8vw, 7rem); }
.mi-service-page--ongoing .mi-service-hero h1 { max-width: 980px; }
.mi-service-page--ongoing .mi-service-hero__summary { max-width: 760px; }
.mi-service-ongoing__signal { align-self: end; padding: clamp(1.4rem, 3vw, 2.2rem); border-left: 3px solid var(--mi-coral); background: var(--mi-ink); color: var(--mi-white); }
.mi-service-ongoing__signal .mi-kicker { color: var(--mi-lime); }
.mi-service-ongoing__signal p:last-child { margin-bottom: 0; color: #d9e6dd; }
.mi-service-ongoing__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin-top: 1.6rem; }
.mi-service-ongoing__grid--three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.mi-service-section--ongoing-cards.mi-service-section--mist .mi-service-ongoing__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.mi-service-ongoing__grid article { min-width: 0; padding: clamp(1.25rem, 2.2vw, 1.75rem); border-top: 3px solid var(--mi-coral); background: var(--mi-white); }
.mi-service-ongoing__grid article h3 { margin-top: 0; }
.mi-service-ongoing__grid article ul { margin-bottom: 0; }
.mi-service-section--ongoing-intro { background: var(--mi-paper); }
.mi-service-section--ongoing-cards { background: var(--mi-mist); }
.mi-service-section--ongoing-cards.mi-service-section--mist { background: var(--mi-paper); }
.entry-content .mi-service-section--dark h2, .entry-content .mi-service-section--dark h3 { color: var(--mi-white); }
.entry-content .mi-service-section--dark p, .entry-content .mi-service-section--dark li { color: #d9e6dd; }
.entry-content .mi-service-section--dark .mi-kicker { color: var(--mi-lime); }
.mi-service-section--ongoing-relationship ul { margin-bottom: 0; }
.mi-service-section--ongoing-process { background: var(--mi-white); }
.mi-service-section--ongoing-first-conversation { background: var(--mi-white); }
.mi-problem-navigation { box-sizing: border-box; width: 100vw; max-width: none; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); background: var(--mi-ink); }
.mi-problem-navigation__inner { max-width: var(--mi-shell-max); margin: 0 auto; padding: clamp(2.5rem, 5vw, 4rem) var(--mi-gutter); }
.mi-problem-navigation h2 { margin-top: 0; color: var(--mi-white); }
.mi-problem-navigation p:not(.mi-kicker) { max-width: 650px; color: #d9e6dd; }
.mi-problem-navigation .mi-kicker { color: var(--mi-lime); }
@media (max-width: 960px) and (min-width: 721px) {
  .wp-block-columns.mi-resource-grid > .wp-block-column { flex-basis: calc((100% - 1rem) / 2) !important; }
  .mi-service-symptoms, .mi-service-scope-grid, .mi-service-related__grid,
  .mi-service-ongoing__grid--three, .mi-service-capabilities__groups {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .mi-service-section--ongoing-cards.mi-service-section--mist .mi-service-ongoing__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mi-service-split { grid-template-columns: 1fr; }
}
@media (max-width: 1099px) and (min-width: 721px) {
  .mi-service-shelf__list--count-2,
  .mi-service-shelf__list--count-3,
  .mi-service-shelf__list--count-4-plus { grid-template-columns: 1fr; }
  .mi-service-shelf__list > .mi-service-shelf__item { padding-inline: 0; background: transparent; }
}
@media (min-width: 1100px) {
  .mi-service-shelf__list--count-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
  .wp-block-columns.mi-resource-grid > .wp-block-column { flex-basis: 100% !important; }
  .mi-service-section--ongoing-cards.mi-service-section--mist .mi-service-ongoing__grid { grid-template-columns: 1fr; }
  .mi-service-symptoms, .mi-service-split, .mi-service-scope-grid, .mi-service-shelf__list, .mi-service-related__grid, .mi-service-ongoing__grid, .mi-service-ongoing__grid--three, .mi-service-capabilities__groups { grid-template-columns: 1fr; }
  .mi-service-shelf__relationship-inner { display: block; }
  .mi-service-shelf__relationship .wp-element-button { display: inline-flex; margin-top: 1rem; }
  .mi-service-shelf__group .mi-service-shelf__inner { padding-top: var(--mi-space-section-mobile); padding-bottom: var(--mi-space-section-mobile); }
  .mi-service-shelf__list { display: grid; grid-template-columns: 1fr; gap: 0; margin-top: 1rem; }
  .mi-service-shelf__list > .mi-service-shelf__item { display: block; padding: 1.15rem 0 1.25rem; border-top: 1px solid var(--mi-line); background: transparent; }
  .mi-service-shelf__list > .mi-service-shelf__item:first-child { border-top: 1px solid var(--mi-line); }
  .mi-service-shelf__list > .mi-service-shelf__item:last-child { border-bottom: 1px solid var(--mi-line); }
  .mi-service-shelf__list h2 { font-size: clamp(1.35rem, 7vw, 2rem); line-height: 1.06; }
  .mi-service-shelf__list article > p:not(.mi-service-shelf__label) { margin: .65rem 0; line-height: 1.45; }
  .mi-service-shelf__link { display: inline-block; padding: .35rem 0; line-height: 1.45; }
  .mi-service-shelf__relationship-inner { padding-top: 2.2rem; padding-bottom: 2.2rem; }
  .mi-service-shelf__relationship h2 { font-size: clamp(1.85rem, 9vw, 2.8rem); line-height: 1.04; }
  .mi-home-managed__inner { padding-top: 2.2rem; padding-bottom: 2.2rem; }
  .mi-home-managed h2 { font-size: clamp(1.85rem, 8.5vw, 3.1rem); line-height: 1.04; }
  .home .mi-home-managed__inner > .wp-block-group__inner-container,
  .home .mi-problem-selector__inner > .wp-block-group__inner-container { padding-block: var(--mi-space-section-compact); }
  .home .mi-home-managed__columns { display: block; }
  .home .mi-home-managed__columns > .wp-block-column:last-child { margin-top: 1rem; }
  .home .mi-home-resources__grid { grid-template-columns: 1fr; }
  .home .mi-home-resources__grid > .wp-block-column { padding: 1rem; }
  .home .mi-home-resources__grid > .wp-block-column h3 { font-size: 1.2rem; line-height: 1.12; }
  .home .mi-home-resources__grid > .wp-block-column p { line-height: 1.45; }
  .home .mi-home-resources__grid > .wp-block-column > p:last-child a { display: inline-flex; align-items: center; min-height: 2.7rem; }
  .home .mi-problem-selector__list > .wp-block-group__inner-container { grid-template-columns: 1fr; }
  .mi-home-resources__grid article { padding: 1rem; }
  .mi-home-resources__grid h3 { font-size: 1.2rem; line-height: 1.12; }
  .mi-home-resources__grid article p { line-height: 1.45; }
  .mi-home-resources__grid article > a { display: inline-flex; align-items: center; min-height: 2.7rem; }
  .mi-service-hero h1, .mi-service-shelf__hero h1 { font-size: clamp(2.25rem, 10.5vw, 4.2rem); }
}

/* Article Studio creative layer: opt-in editorial moments. These are native
 * Gutenberg groups/columns with a shorter rhythm than the older component
 * family. They add pacing and decision support without turning a narrative
 * article into a card wall. Full-bleed hosts use the existing shell; all
 * visible creative content returns to the canonical reading rail. */
.mi-editorial-article .mi-creative-moment {
  border-block: 1px solid var(--mi-rule-subtle);
  background: var(--mi-paper);
}

.mi-editorial-article .mi-creative-moment > .mi-editorial-component__inner {
  padding-block: clamp(2.1rem, 4vw, 3.5rem);
}

/* One article rail: the shell owns the background's inner gutters, while all
 * visible creative content shares the same reading axis as normal prose. */
.mi-editorial-article .mi-creative-moment__content {
  box-sizing: border-box;
  width: min(100%, var(--mi-reading-max));
  max-width: var(--mi-reading-max);
  margin-inline: auto;
}
.mi-editorial-article .mi-creative-moment__content > :where(.mi-kicker, h2, .mi-creative-note, .mi-creative-pull) {
  width: 100%;
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
}
.mi-editorial-article .mi-creative-moment__content > .wp-block-columns {
  width: 100%;
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
}

.mi-editorial-article .mi-creative-decision-path,
.mi-editorial-article .mi-creative-comparison,
.mi-editorial-article .mi-creative-recovery-comparison {
  background: var(--mi-mist);
}

.mi-editorial-article .mi-creative-cost-horizon {
  background: var(--mi-paper);
}

.mi-editorial-article .mi-creative-moment .mi-kicker {
  margin-bottom: .7rem;
}

.mi-editorial-article .mi-creative-moment h2 {
  max-width: 100%;
  margin: 0 auto 1.1rem;
  font-size: clamp(1.9rem, 3.7vw, 3.5rem);
  line-height: 1.02;
  text-wrap: balance;
}

.mi-editorial-article .mi-creative-moment .wp-block-columns {
  display: grid;
  gap: clamp(1.25rem, 3.5vw, 3rem);
  margin: 1.6rem 0 0;
}

/* Track count belongs to the semantic component, not to Gutenberg's generic
 * column block. Decision paths have four steps; comparison strips have two
 * alternatives. Keeping those declarations separate prevents one component
 * variant from silently inheriting another variant's empty tracks. */
.mi-editorial-article .mi-creative-decision-path .wp-block-columns {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.mi-editorial-article .mi-creative-moment .wp-block-column {
  min-width: 0;
  padding: .35rem 0 .15rem clamp(.85rem, 1.6vw, 1.25rem);
  border-inline-start: 2px solid var(--mi-coral);
}

.mi-editorial-article .mi-creative-moment .wp-block-column > * {
  max-width: 100%;
}

.mi-editorial-article .mi-creative-step__number,
.mi-editorial-article .mi-creative-term {
  margin: 0 0 .55rem;
  color: var(--mi-coral-dark);
  font-size: .74rem;
  font-weight: 900;
  letter-spacing: .12em;
  line-height: 1.3;
  text-transform: uppercase;
}

.mi-editorial-article .mi-creative-step__title {
  margin: 0 0 .45rem;
  font-size: clamp(1.15rem, 1.8vw, 1.55rem);
  line-height: 1.08;
}

.mi-editorial-article .mi-creative-step__body,
.mi-editorial-article .mi-creative-comparison-strip p:last-child {
  margin-bottom: 0;
  color: var(--mi-ink-soft);
  font-size: .98rem;
  line-height: 1.55;
}

.mi-editorial-article .mi-creative-comparison-strip {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1.5rem, 6vw, 6rem);
  margin-top: 1.3rem;
  padding-top: 1.2rem;
  border-top: 1px solid var(--mi-rule-subtle);
}

.mi-editorial-article .mi-creative-comparison-strip > .wp-block-column {
  padding: .1rem 0 .2rem clamp(1rem, 2vw, 1.6rem);
}

.mi-editorial-article .mi-creative-comparison-strip > .wp-block-column + .wp-block-column {
  border-inline-start-color: var(--mi-ink-soft);
}

.mi-editorial-article .mi-creative-comparison-strip h3 {
  margin: 0 0 .55rem;
  font-size: clamp(1.35rem, 2.4vw, 2.15rem);
  line-height: 1.05;
}

.mi-editorial-article .mi-creative-pull {
  max-width: var(--mi-reading-max);
  margin: .4rem auto 1rem;
  padding: .2rem 0 .2rem clamp(1rem, 2.4vw, 1.7rem);
  border-inline-start: 4px solid var(--mi-coral);
  background: transparent;
}

.mi-editorial-article .mi-creative-pull p {
  margin: 0;
  color: var(--mi-ink);
  font-size: clamp(1.55rem, 3vw, 2.75rem);
  font-weight: 800;
  line-height: 1.05;
  letter-spacing: -.035em;
}

.mi-editorial-article .mi-creative-note {
  max-width: 100%;
  margin-bottom: 0;
  font-size: .98rem;
  line-height: 1.58;
}

.mi-editorial-article .mi-creative-caution {
  background: var(--mi-surface-ice);
}

.mi-editorial-article .mi-creative-caution > .mi-editorial-component__inner {
  padding-inline-start: var(--mi-gutter);
}

.mi-editorial-article .mi-creative-caution .mi-creative-moment__content {
  padding-inline-start: clamp(1rem, 2.5vw, 2rem);
  border-inline-start: 5px solid var(--mi-coral);
}

.mi-editorial-article .mi-creative-caution h2 {
  max-width: 100%;
}

.mi-editorial-article .mi-creative-caution .mi-creative-moment__content > p:last-child {
  max-width: 58ch;
  margin-bottom: 0;
  color: var(--mi-ink-soft);
  font-size: 1.08rem;
  line-height: 1.6;
}

.mi-editorial-article .mi-creative-closing {
  border-color: var(--mi-ink);
  background: var(--mi-ink);
}

.mi-editorial-article .mi-creative-closing .mi-kicker {
  color: var(--mi-lime);
}

.mi-editorial-article .mi-creative-closing h2 {
  max-width: 100%;
  color: var(--mi-fg-inverse-primary);
}

.mi-editorial-article .mi-creative-closing .mi-creative-moment__content > p:last-child {
  max-width: 100%;
  margin-bottom: 0;
  color: var(--mi-fg-inverse-secondary);
  font-size: 1.12rem;
  line-height: 1.62;
}

@media (max-width: 1024px) {
  .mi-editorial-article .mi-creative-decision-path .wp-block-columns {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    row-gap: 1.8rem;
  }
}

@media (max-width: 720px) {
  .mi-editorial-article .mi-creative-moment > .mi-editorial-component__inner {
    padding-block: 2rem;
  }

  .mi-editorial-article .mi-creative-moment .wp-block-columns {
    grid-template-columns: 1fr;
    gap: 1rem;
  }

  .mi-editorial-article .mi-creative-moment .wp-block-column,
  .mi-editorial-article .mi-creative-comparison-strip > .wp-block-column {
    padding: .85rem 0 0 1rem;
    border-inline-start: 2px solid var(--mi-coral);
  }

  .mi-editorial-article .mi-creative-comparison-strip > .wp-block-column + .wp-block-column {
    padding-top: 1rem;
    border-inline-start-color: var(--mi-ink-soft);
    border-top: 1px solid var(--mi-rule-subtle);
  }

  .mi-editorial-article .mi-creative-pull p {
    font-size: clamp(1.45rem, 7vw, 2.2rem);
  }
}

@media (prefers-reduced-motion: reduce) {
  .mi-action-link__arrow,
  .mi-problem-selector__item summary::after { transition: none; }
}

/* Kadence's assessment rules predate the explicit archetype and set these
 * Groups back to the content width. Keep the correction shared and scoped to
 * the declared assessment contract. */
body.mi-archetype-assessment .entry-content > :where(.mi-assessment-hero, .mi-assessment-section, .mi-assessment-cta) {
  width: 100vw !important;
  max-width: none !important;
  margin-inline: calc(50% - 50vw) !important;
}

body.mi-archetype-studio-landing .entry-content > :where(.alignfull, .mi-surface, .mi-section, .mi-related-resources),
body.mi-archetype-service-hub .entry-content > :where(.alignfull, .mi-surface, .mi-section, .mi-related-resources),
body.mi-archetype-service .entry-content > :where(.alignfull, .mi-surface, .mi-section, .mi-related-resources),
body.mi-archetype-contact .entry-content > :where(.alignfull, .mi-surface, .mi-section, .mi-related-resources),
body.mi-archetype-assessment .entry-content > :where(.alignfull, .mi-surface, .mi-section, .mi-related-resources, .mi-assessment-hero, .mi-assessment-section, .mi-assessment-cta),
body.mi-archetype-editorial .entry-content > :where(.alignfull, .mi-surface, .mi-section, .mi-related-resources) {
  margin-block-end: 0 !important;
}

/* Business Email and Domain Foundation canary. The page content is shared by
   both languages; only the service record supplies translated copy. */
.mi-bed-page-body .entry-header { display: none; }
.mi-bed-page-body .content-area { margin-top: 0; margin-bottom: 0; }
.mi-bed-page-body .entry-content-wrap { padding-top: 0; padding-bottom: 0; }
.mi-bed-page { --mi-bed-max: var(--mi-shell-max); --mi-bed-reading: 760px; margin: 0; }
.mi-bed-page > section { box-sizing: border-box; width: 100vw; max-width: none; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); }
.mi-bed-page > section > .mi-bed-hero__inner, .mi-bed-page > section > .mi-bed-section__inner, .mi-bed-results { box-sizing: border-box; width: 100%; max-width: var(--mi-bed-max); margin: 0 auto; padding: var(--mi-space-section) var(--mi-gutter); }
.mi-bed-hero { position: relative; overflow: hidden; background: var(--mi-ink); color: var(--mi-white); }
.mi-bed-hero::after { position: absolute; right: -9rem; top: -11rem; width: 34rem; height: 34rem; border: 1px solid rgba(229,238,232,.22); border-radius: 50%; box-shadow: 0 0 0 4rem rgba(229,238,232,.05), 0 0 0 9rem rgba(229,238,232,.025); content: ""; pointer-events: none; }
.mi-bed-hero__inner { position: relative; z-index: 1; padding-top: clamp(4rem, 8vw, 7rem) !important; padding-bottom: clamp(3.5rem, 7vw, 6rem) !important; }
.mi-bed-hero h1 { max-width: 900px; margin: 0; color: var(--mi-white); font-size: clamp(2.7rem, 6.5vw, 6.25rem); line-height: var(--mi-leading-display); }
.mi-bed-hero p { max-width: 760px; color: #d9e6dd; }
.mi-bed-hero .mi-kicker { color: var(--mi-lime); }
.mi-bed-deck { margin-top: 1.5rem; font-size: clamp(1.08rem, 1.8vw, 1.3rem); }
.mi-bed-boundary { margin-top: 1.5rem; font-size: .9rem; }
.mi-bed-section__inner { padding-top: var(--mi-space-section); padding-bottom: var(--mi-space-section); }
.mi-bed-section:nth-of-type(odd) { background: var(--mi-mist); }
.mi-bed-section h2, .mi-bed-results h2 { max-width: 850px; margin-top: 0; }
.mi-bed-cards, .mi-bed-findings { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.mi-bed-cards article, .mi-bed-findings article { min-width: 0; padding: 1.35rem; border-top: 3px solid var(--mi-coral); background: var(--mi-white); }
.mi-bed-cards article p, .mi-bed-findings article p { margin: 0; }
.mi-bed-section--checks .mi-bed-cards article { background: rgba(255,255,255,.68); }
.mi-bed-section--assessment { background: var(--mi-coral); }
.mi-bed-section--assessment .mi-bed-section__inner { max-width: var(--mi-bed-max); }
.mi-bed-assessment { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem 1.25rem; max-width: 850px; margin-top: 2rem; }
.mi-bed-assessment p { margin: 0; }
.mi-bed-assessment p:nth-last-child(-n+2), .mi-bed-assessment .mi-bed-required { grid-column: 1 / -1; }
.mi-bed-assessment label { display: block; margin-bottom: .35rem; color: var(--mi-ink); font-weight: 800; }
.mi-bed-assessment input, .mi-bed-assessment textarea { box-sizing: border-box; width: 100%; border: 1px solid rgba(16,44,44,.35); border-radius: .35rem; padding: .75rem; color: var(--mi-ink); background: var(--mi-white); font: inherit; }
.mi-bed-assessment button { border: 0; border-radius: var(--mi-button-radius); padding: .85rem 1.25rem; background: var(--mi-ink); color: var(--mi-white); font-weight: 850; cursor: pointer; }
.mi-bed-assessment button:hover, .mi-bed-assessment button:focus-visible { background: var(--mi-ink-soft); }
.mi-bed-results { margin-top: 0; background: var(--mi-paper); }
.mi-bed-results .mi-bed-findings { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.mi-bed-results .wp-element-button { display: inline-flex; margin-top: 1rem; }
.mi-bed-status { max-width: var(--mi-bed-reading); margin: 2rem auto; padding: 1rem; background: var(--mi-mist); }
@media (max-width: 720px) {
  .mi-home-managed__inner { display: block; }
  .mi-home-managed .wp-element-button { display: inline-flex; margin-top: 1rem; }
  .mi-bed-cards, .mi-bed-findings, .mi-bed-results .mi-bed-findings, .mi-bed-assessment { grid-template-columns: 1fr; }
  .mi-bed-assessment p:nth-last-child(-n+2), .mi-bed-assessment .mi-bed-required { grid-column: auto; }
  .mi-bed-hero h1 { font-size: clamp(2.45rem, 12vw, 4.8rem); }
  .mi-information-page .mi-information-hero h1 { font-size: clamp(2.2rem, 10vw, 4.8rem); }
}

@media (max-width: 900px) {
  .mi-brand__words strong { font-size: 1rem; }
  .entry-content .mi-hero__layout { grid-template-columns: minmax(0, 1fr) minmax(13rem, 18rem); gap: 2rem; }
}
@media (max-width: 720px) {
  .site-header .site-container { min-height: 68px; }
  .site-branding { min-width: 0; }
  .mi-brand__mark { width: 2.55rem; height: 2.55rem; }
  .mi-language-switch > a { margin-left: 0; padding-left: 0 !important; border-left: 0; }
  .entry-content .mi-hero { padding-top: 3.5rem; padding-bottom: 3.3rem; }
  .entry-content .mi-hero h1 { font-size: clamp(2.35rem, 12vw, 4.7rem); }
  .entry-content .mi-hero__layout { display: block; }
  .entry-content .mi-hero__proof { margin-top: 2.5rem; }
  .entry-content .mi-hero .mi-proof strong { font-size: 3.8rem; }
  .entry-content .mi-strip .wp-block-columns { display: grid; grid-template-columns: 1fr 1fr; }
  .entry-content .mi-strip .wp-block-column { min-height: 88px; border-bottom: 1px solid var(--mi-line); }
  .entry-content .mi-strip .wp-block-column:nth-child(2n) { border-right: 0; }
  .entry-content .mi-grid, .entry-content .mi-process { display: block; }
  .entry-content .mi-grid .wp-block-column, .entry-content .mi-process .wp-block-column { margin: .85rem 0; }
  .mi-footer-grid { grid-template-columns: 1fr; gap: 1.25rem; padding: 2.2rem 0 1.8rem; }
  .mi-resource-grid, .mi-home-resources__grid, .mi-contextual-resources__grid, .mi-related-resources__grid { grid-template-columns: 1fr; }
  .mi-resource-card { min-height: 0; }
  .mi-assessment-page .mi-assessment-hero,
  .mi-assessment-page .mi-assessment-section,
  .mi-assessment-page .mi-assessment-cta { padding-top: 2.7rem; padding-bottom: 2.7rem; }
  .mi-assessment-page .entry-content h1 { font-size: clamp(2.15rem, 9.5vw, 3.6rem); }
  .mi-assessment-hero__layout { display: block; }
  .mi-assessment-evidence-panel { margin-top: 2rem; }
  .mi-assessment-card-grid, .mi-assessment-split, .mi-assessment-process, .mi-assessment-boundary-grid { grid-template-columns: 1fr; }
  .mi-commercial-grid { grid-template-columns: 1fr; }
  .mi-assessment-process article { padding-right: 0; }
  .mi-assessment-breadcrumb { align-items: flex-start; line-height: 1.45; }
  .mi-editorial-article .entry-header { padding-top: 3.3rem; padding-bottom: 2.5rem; }
  .mi-editorial-article .entry-title { font-size: clamp(2.35rem, 11vw, 4.4rem); }
  .mi-editorial-article .mi-article-heading--numbered { grid-template-columns: 2.6rem minmax(0, 1fr); gap: .7rem; }
.mi-editorial-thesis > .mi-editorial-component__inner, .mi-editorial-distinction__grid, .mi-editorial-evidence__grid, .mi-editorial-decision-pair__grid { grid-template-columns: 1fr; }
.mi-editorial-thesis__support { margin-top: 1rem; }
.mi-editorial-question-rail ol { grid-template-columns: 1fr; }
.mi-m365-self-check__form { display: block; }
.mi-m365-self-check__form > .mi-action-link { display: inline-flex; margin-top: 1.4rem; }
.mi-m365-self-check__result { margin-top: 2rem; }
.mi-m365-self-check__support-actions { align-items: flex-start; flex-direction: column; }
.single-post .post-navigation .nav-links { grid-template-columns: 1fr; gap: .75rem; }
.single-post .post-navigation .nav-previous,
.single-post .post-navigation .nav-next { grid-column: 1; width: auto; }
.single-post .post-navigation a { padding: .9rem; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

/* Studio composition correction 0.3.50.
 * Gutenberg supplies editable structure; these rules give every full-width
 * surface one predictable inner axis and give the shared problem selector a
 * deliberate, no-JavaScript presentation. */
:root {
  --mi-shell-gutter: clamp(1.1rem, 3.2vw, 2.25rem);
  --mi-space-section-mobile: clamp(2.7rem, 9vw, 4.2rem);
  --mi-heading-mobile: clamp(2rem, 9vw, 3.4rem);
}

.entry-content > .mi-surface,
.entry-content .mi-surface {
  overflow: hidden;
}
.entry-content .mi-surface__inner,
.entry-content .mi-section > .wp-block-group__inner-container,
.entry-content .mi-service-section__inner,
.entry-content .mi-service-shelf__inner,
.entry-content .mi-service-capabilities__inner,
.entry-content .mi-service-shelf__relationship-inner {
  box-sizing: border-box;
  width: 100%;
  max-width: var(--mi-shell-wide);
  margin-inline: auto;
  padding-inline: var(--mi-shell-gutter);
}
.entry-content .mi-section > .wp-block-group__inner-container {
  padding-block: var(--mi-space-section);
}
/* A nested section owns the final content edge. When its parent is followed
 * by a CTA, the parent's bottom padding is transition space, not surface
 * breathing room; retaining it creates an unowned empty band. */
.entry-content > .mi-section:has(+ .mi-cta):has(> .wp-block-group__inner-container > .mi-section:last-child) > .wp-block-group__inner-container {
  padding-bottom: 0;
}
.entry-content .mi-section > .wp-block-group__inner-container > .mi-section__intro {
  width: min(100%, var(--mi-shell-reading));
  max-width: var(--mi-shell-reading);
  margin-inline: 0;
}
.entry-content .mi-section > .wp-block-group__inner-container > .mi-section__intro > .wp-block-group__inner-container {
  padding: 0;
}
.entry-content .mi-section > .wp-block-group__inner-container > .mi-section__intro h2 {
  max-width: 24ch;
  font-size: var(--mi-heading-section);
  line-height: 1.05;
}
.entry-content .mi-section > .wp-block-group__inner-container > .mi-grid,
.entry-content .mi-section > .wp-block-group__inner-container > .mi-process {
  width: 100%;
  max-width: var(--mi-shell-content);
  margin-inline: 0;
}

.entry-content .mi-strip {
  padding: 0;
}
.entry-content .mi-strip .mi-surface__inner {
  max-width: var(--mi-shell-wide);
}
.entry-content .mi-strip .wp-block-columns {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.entry-content .mi-strip .wp-block-column {
  min-width: 0;
  min-height: 0;
  padding: 1.2rem 1.25rem;
}
.entry-content .mi-strip strong { font-size: 1rem; letter-spacing: -.02em; }

/* Homepage surface contract: the outer section owns the background and the
 * inner shell owns the readable axis. Kadence's block gap must not expose a
 * white seam between adjacent homepage surfaces. */
.home .entry-content > :where(.alignfull.mi-surface, .mi-section, .mi-home-managed, .mi-problem-selector, .mi-home-resources) { margin-block-end: 0; }
.home .entry-content > .mi-home-managed,
.home .entry-content > .mi-home-resources {
  box-sizing: border-box;
  width: 100vw;
  max-width: none;
  margin-inline: calc(50% - 50vw);
}
.home .mi-home-managed__inner,
.home .mi-home-resources__inner {
  box-sizing: border-box;
  width: 100%;
  max-width: var(--mi-shell-wide);
  margin-inline: auto;
  padding-inline: var(--mi-gutter);
}
.home .mi-home-resources { padding-inline: 0; }
.home .entry-content > .mi-section:not(.mi-section--mist):not(.mi-section--dark) { background: var(--mi-paper); }

/* Native Gutenberg wrappers keep the same visual contract as the former
 * discovery modules while leaving every heading, paragraph, button and
 * details item editable in the page content. */
.home .mi-home-managed__inner { max-width: none; margin: 0; padding: 0; display: block; }
.home .mi-home-managed__inner > .wp-block-group__inner-container,
.home .mi-home-resources__inner > .wp-block-group__inner-container {
  box-sizing: border-box;
  width: 100%;
  max-width: var(--mi-shell-wide);
  margin-inline: auto;
  padding: var(--mi-space-section-standard) var(--mi-gutter);
}
.home .mi-home-managed__columns { display: flex; align-items: center; justify-content: space-between; gap: clamp(2rem, 6vw, 5rem); margin: 0; }
.home .mi-home-managed__columns > .wp-block-column { min-width: 0; }
.home .mi-home-managed__columns > .wp-block-column:first-child { flex: 1 1 auto; }
.home .mi-home-managed__columns > .wp-block-column:last-child { flex: 0 0 auto; }
.home .mi-home-managed__columns h2 { margin-top: 0; }
.home .mi-home-resources__inner { max-width: none; margin: 0; padding: 0; }
.home .mi-home-resources__grid > .wp-block-column { min-width: 0; padding: 1.3rem; border-top: 3px solid var(--mi-coral); background: var(--mi-white); }
.home .mi-home-resources__grid > .wp-block-column p { margin: .65rem 0; }
.home .mi-home-resources__grid > .wp-block-column h3 { margin: 0; font-size: 1.35rem; }
.home .mi-home-resources__grid > .wp-block-column h3 a { color: var(--mi-ink); text-decoration: none; }
.home .mi-home-resources__grid > .wp-block-column > p:last-child a { color: var(--mi-coral-dark); font-weight: 850; }
.home .mi-home-resources__inner > .wp-block-group__inner-container > .wp-block-buttons { margin-top: clamp(2.8rem, 6vw, 4.2rem); }
.home .mi-home-resources__inner > .wp-block-group__inner-container > .wp-block-buttons .wp-block-button__link { background: var(--mi-ink); color: var(--mi-white); }
/* Homepage density pass: secondary decision surfaces share a quieter rhythm,
 * while the primary problem selector keeps its more generous reading space. */
.home .entry-content > :where(.mi-section--mist, .mi-section--dark) > .wp-block-group__inner-container {
  padding-block: var(--mi-space-home-secondary);
}
.home .entry-content > :where(.mi-section--mist, .mi-section--dark) .mi-section__intro {
  margin-bottom: clamp(1.35rem, 2.2vw, 2rem);
}
.home .entry-content > :where(.mi-section--mist, .mi-section--dark) :where(.mi-home-topics, .mi-home-evidence) {
  margin-bottom: 0;
}
.home .mi-problem-selector__inner { max-width: none; margin: 0; padding: 0; }
.home .mi-problem-selector__inner > .wp-block-group__inner-container { box-sizing: border-box; width: 100%; max-width: var(--mi-shell-wide); margin-inline: auto; padding: var(--mi-space-section-standard) var(--mi-shell-gutter); }
.home .mi-problem-selector__list { display: block; margin-top: 1.8rem; }
.home .mi-problem-selector__list > .wp-block-group__inner-container { display: block; }

.mi-problem-selector {
  box-sizing: border-box;
  width: 100vw;
  max-width: none;
  margin-inline: calc(50% - 50vw);
  background: var(--mi-white);
  border-block: 1px solid var(--mi-line);
}
.mi-problem-selector__inner {
  box-sizing: border-box;
  width: 100%;
  max-width: var(--mi-shell-wide);
  margin-inline: auto;
  padding: var(--mi-space-section-standard) var(--mi-shell-gutter);
}
.mi-problem-selector h2 {
  max-width: 22ch;
  margin-top: 0;
  font-size: var(--mi-heading-section);
  line-height: 1.05;
}
.mi-problem-selector__list {
  display: block;
  margin-top: 1.8rem;
}
.mi-problem-selector__items { display: block; }
.mi-problem-selector__choices { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: start; gap: 0 1.2rem; border-top: 1px solid var(--mi-line); }
.mi-problem-selector__item { align-self: start; min-width: 0; }
.mi-problem-selector__items.is-enhanced .mi-problem-selector__item[open] { border-color: var(--mi-ink); background: var(--mi-mist); box-shadow: inset 4px 0 0 var(--mi-coral); }
.mi-problem-selector__items.is-enhanced .mi-problem-selector__item > .mi-problem-selector__detail { display: none; }
.mi-problem-selector__items.is-enhanced .mi-problem-selector__item[open] summary { border-bottom: 0; background: transparent; color: var(--mi-ink); font-weight: 900; }
.mi-problem-selector__tray { display: block; box-sizing: border-box; margin-top: 1rem; padding: clamp(1.25rem, 2.5vw, 2rem); border: 0; border-top: 3px solid var(--mi-coral); border-bottom: 1px solid var(--mi-line); background: var(--mi-mist); }
.mi-problem-selector__tray[hidden] { display: none; }
.mi-premium-motif { position: relative; isolation: isolate; overflow: hidden; }
.mi-premium-motif > * { position: relative; z-index: 1; }
.mi-premium-motif--rings::before,
.mi-premium-motif--rings::after { position: absolute; right: clamp(-8rem, -10vw, -3rem); bottom: clamp(-11rem, -12vw, -5rem); width: clamp(15rem, 31vw, 27rem); aspect-ratio: 1; border: 1px solid currentColor; border-radius: 50%; color: var(--mi-coral); content: ""; opacity: .18; pointer-events: none; }
.mi-premium-motif--rings::after { right: clamp(-4rem, -5vw, 1rem); bottom: clamp(-7rem, -8vw, -2rem); width: clamp(9rem, 20vw, 17rem); opacity: .12; }
.mi-premium-motif--m::before { position: absolute; right: clamp(-4rem, -5vw, 1rem); bottom: clamp(-5rem, -7vw, -2rem); width: clamp(12rem, 24vw, 21rem); aspect-ratio: 1; background: url("assets/montrealit-symbol.svg") center / contain no-repeat; content: ""; opacity: .075; pointer-events: none; }
.mi-studio-surface { position: relative; isolation: isolate; overflow: hidden; }
.mi-studio-surface > .mi-surface__inner { position: relative; z-index: 1; }
.mi-studio-motif--rings::before,
.mi-studio-motif--rings::after { position: absolute; right: clamp(-10rem, -12vw, -3rem); bottom: clamp(-13rem, -15vw, -5rem); width: clamp(18rem, 36vw, 34rem); aspect-ratio: 1; border: 1px solid var(--mi-coral); border-radius: 50%; content: ""; opacity: .15; pointer-events: none; transform: translate3d(0, 0, 0); }
.mi-studio-motif--rings::after { right: clamp(-4rem, -4vw, 2rem); bottom: clamp(-8rem, -8vw, -2rem); width: clamp(10rem, 22vw, 20rem); opacity: .1; }
.mi-studio-motif--m::before { position: absolute; right: clamp(-5rem, -6vw, 1rem); bottom: clamp(-6rem, -8vw, -2rem); width: clamp(16rem, 30vw, 28rem); aspect-ratio: 1; background: url("assets/montrealit-symbol.svg") center / contain no-repeat; content: ""; opacity: .065; pointer-events: none; transform: translate3d(0, 0, 0); }
.mi-studio-motif-position--rail.mi-studio-motif--m::before { top: clamp(2rem, 7vw, 6rem); right: max(var(--mi-shell-gutter), calc((100vw - var(--mi-shell-wide)) / 2)); bottom: auto; width: clamp(13rem, 22vw, 22rem); opacity: .085; }
.mi-studio-motif-position--transition.mi-studio-motif--m::before { right: max(var(--mi-shell-gutter), calc((100vw - var(--mi-shell-wide)) / 2)); bottom: clamp(-4rem, -5vw, -1rem); width: clamp(14rem, 24vw, 24rem); opacity: .075; }
.mi-studio-motif--rings-m::before { position: absolute; right: clamp(-5rem, -6vw, 1rem); bottom: clamp(-6rem, -8vw, -2rem); width: clamp(16rem, 30vw, 28rem); aspect-ratio: 1; background: url("assets/montrealit-symbol.svg") center / contain no-repeat; content: ""; opacity: .065; pointer-events: none; transform: translate3d(0, 0, 0); }
.mi-studio-motif--rings-m::after { position: absolute; right: clamp(-10rem, -12vw, -3rem); bottom: clamp(-13rem, -15vw, -5rem); width: clamp(18rem, 36vw, 34rem); aspect-ratio: 1; border: 1px solid var(--mi-coral); border-radius: 50%; content: ""; opacity: .12; pointer-events: none; transform: translate3d(0, 0, 0); }
.mi-studio-motion--slow { view-timeline-name: --mi-studio-section; view-timeline-axis: block; }
@keyframes mi-studio-motif-drift { from { transform: translate3d(0, 3rem, 0); } to { transform: translate3d(0, -3rem, 0); } }
@supports (animation-timeline: view()) {
  .mi-studio-motion--slow::before { animation: mi-studio-motif-drift linear both; animation-timeline: view(); animation-range: entry 0% exit 100%; }
}
.mi-studio-rhythm--tight { --mi-studio-rhythm-space: var(--mi-space-section-compact); }
.mi-studio-rhythm--quiet { --mi-studio-rhythm-space: var(--mi-space-section-feature); }
.mi-studio-rhythm--conversion { --mi-studio-rhythm-space: var(--mi-space-section-standard); }
.mi-studio-rhythm--crossing { --mi-studio-rhythm-space: var(--mi-space-section-standard); }
.home .entry-content > .mi-section:has(+ .mi-studio-rhythm--tight) > .wp-block-group__inner-container { padding-bottom: var(--mi-space-section-compact); }
.mi-studio-rhythm--tight > .wp-block-group__inner-container > .mi-surface__inner,
.mi-studio-rhythm--tight > .mi-surface__inner { padding-block: clamp(2rem, 4vw, 3rem); }
.mi-studio-sequence__layout.is-layout-flex { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); align-items: start; gap: clamp(1.75rem, 4vw, 4.5rem); }
.mi-studio-sequence__lead { position: sticky; top: clamp(5rem, 10vh, 8rem); align-self: start; }
.mi-studio-sequence__lead h2 { max-width: 17ch; margin-top: 0; font-size: clamp(2rem, 4vw, 4rem); line-height: .98; }
.mi-studio-sequence__lead p:not(.mi-kicker) { max-width: 34ch; }
.mi-studio-sequence__items { display: grid; gap: 0; min-width: 0; }
.mi-studio-sequence__item { position: relative; min-width: 0; padding: clamp(1.15rem, 2.1vw, 2rem) 0; border-top: 2px solid var(--mi-coral); background: transparent; }
.mi-studio-sequence__item > .wp-block-group__inner-container { display: grid; grid-template-columns: 3rem minmax(0, 1fr); gap: 1rem; min-width: 0; }
.mi-studio-sequence__item > .wp-block-group__inner-container > .mi-studio-sequence__content { min-width: 0; }
.mi-studio-sequence__item:last-child { border-bottom: 0; }
.mi-studio-sequence__item .mi-studio-sequence__index { margin: .25rem 0 0; color: var(--mi-coral-dark); font-size: var(--mi-type-kicker); font-weight: 900; letter-spacing: .12em; }
.mi-studio-sequence__item h3 { margin: 0; max-width: 24ch; font-size: clamp(1.25rem, 2vw, 2rem); line-height: 1.06; }
.mi-studio-sequence__item p:not(.mi-studio-sequence__index) { max-width: 48ch; }
.mi-studio-sequence__item .mi-action-link { margin-top: .55rem; }
.mi-studio-sequence {
  /* The sequence is a compact homepage guide, not a legacy resource shell.
   * This outer wrapper is its single vertical-spacing owner. */
  padding-block: var(--mi-space-home-sequence);
  border-block: 0;
  background: var(--mi-paper);
}
.mi-studio-sequence > .wp-block-group__inner-container > .mi-surface__inner {
  max-width: var(--mi-shell-decision);
  padding-block: 0;
}
.mi-studio-sequence__layout.is-layout-flex { gap: clamp(1.5rem, 3vw, 3rem); }
.entry-content .mi-studio-sequence__layout { margin-block-end: 0; }
.mi-studio-sequence__items > .mi-studio-sequence__item { margin-block-end: 0; }
.mi-studio-sequence__item { padding-block: clamp(.8rem, 1.2vw, 1.1rem); }
.mi-home-guides .mi-studio-sequence__lead { position: static; }
.mi-studio-quiet h2 { max-width: 12ch; font-size: var(--mi-heading-display); line-height: .95; }
.mi-studio-quiet > .mi-surface__inner { padding-block: clamp(5rem, 12vw, 11rem); }
.mi-problem-selector__item {
  min-width: 0;
  margin: 0;
  border: 0;
  border-bottom: 1px solid var(--mi-line);
  background: transparent;
}
.mi-problem-selector__item[open] { background: var(--mi-mist); box-shadow: inset 4px 0 0 var(--mi-coral); }
.mi-problem-selector__item summary {
  position: relative;
  min-height: 4.4rem;
  box-sizing: border-box;
  padding: 1.15rem 3rem 1.15rem .35rem;
  cursor: pointer;
  color: var(--mi-ink);
  font-size: 1rem;
  font-weight: 850;
  line-height: var(--mi-leading-card);
  list-style: none;
}
.mi-problem-selector__item summary::-webkit-details-marker { display: none; }
.mi-problem-selector__item summary::after {
  position: absolute;
  top: 50%;
  right: 1.05rem;
  width: .65rem;
  height: .65rem;
  border-right: 2px solid var(--mi-coral-dark);
  border-bottom: 2px solid var(--mi-coral-dark);
  content: "";
  transform: translateY(-65%) rotate(45deg);
  transition: transform var(--mi-motion-fast) ease;
}
.mi-problem-selector__item[open] summary { border-bottom: 1px solid var(--mi-line); }
.mi-problem-selector__item[open] summary::after { transform: translateY(-35%) rotate(225deg); }
.mi-problem-selector__item summary:hover,
.mi-problem-selector__item summary:focus-visible { background: var(--mi-mist); }
.mi-problem-selector__item:not([open]) summary { color: var(--mi-ink-soft); }
.mi-problem-selector__items.is-enhanced .mi-problem-selector__item[open] summary { padding-left: 1rem; }
.mi-problem-selector__detail > p,
.mi-problem-selector__detail > a {
  display: block;
  margin: 0;
  padding-inline: 1.15rem;
}
.mi-problem-selector__detail > p {
  padding-top: 1rem;
  color: var(--mi-muted);
  line-height: 1.52;
}
.entry-content .mi-problem-selector__detail > a {
  width: fit-content;
  margin-top: .65rem;
  padding-bottom: 1.15rem;
  color: var(--mi-coral-dark);
  font-weight: 850;
}
.entry-content .mi-problem-selector__detail > .mi-problem-selector__actions {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem 1rem;
  padding-bottom: 1.15rem;
}
.entry-content .mi-problem-selector__actions a {
  width: fit-content;
  margin-top: .65rem;
  padding-bottom: 0;
}
.entry-content .mi-problem-selector__actions .mi-action-link { margin-top: .65rem; padding-bottom: 0; }
.entry-content .mi-problem-selector__actions .mi-action-link__arrow { margin-left: 0; }
.entry-content .mi-problem-selector__actions .mi-problem-selector__secondary {
  color: var(--mi-ink-soft);
  font-size: .92rem;
  font-weight: 750;
}
.mi-problem-selector__urgent {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 1.25rem 2rem;
  box-sizing: border-box;
  margin-top: 1.8rem;
  padding: clamp(1.25rem, 2.5vw, 1.8rem) clamp(1.35rem, 3vw, 2rem);
  border-top: 3px solid var(--mi-coral);
  background: var(--mi-mist);
}
.mi-problem-selector__urgent-copy { min-width: 0; }
.mi-problem-selector__urgent-copy .mi-kicker { margin-bottom: .45rem; }
.mi-problem-selector__urgent h3 { max-width: 44ch; margin: 0; font-size: clamp(1.15rem, 1.8vw, 1.45rem); line-height: 1.2; }
.mi-problem-selector__urgent-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: .7rem 1rem; margin: 0; }
.mi-problem-selector__urgent-actions a { font-weight: 850; }
.mi-problem-selector__urgent-actions .mi-action-link { text-decoration: none; }
.mi-problem-selector__urgent-actions .wp-element-button { white-space: normal; }
.mi-problem-selector__urgent-secondary { color: var(--mi-coral-dark); }

.mi-recovery-page-body .entry-hero,
.mi-recovery-page-body .entry-header { display: none; }
.mi-recovery-page-body .content-area { margin-block: 0; }
.mi-recovery-page-body .entry-content-wrap { padding: 0; }
.mi-recovery-page-body .entry-content { width: 100%; max-width: none; }
.mi-recovery-hero .mi-hero__proof { align-self: center; }
.entry-content .mi-recovery-hero .mi-hero__layout { grid-template-columns: minmax(0, 1.25fr) minmax(18rem, 22rem); gap: clamp(2rem, 4vw, 4rem); }
.entry-content .mi-recovery-hero h1 { max-width: 16ch; font-size: clamp(2.35rem, 4.6vw, 5rem); line-height: 1; }
.mi-recovery-hero .mi-recovery-hero__actions { display: flex; flex-wrap: wrap; align-items: center; gap: .7rem 1rem; margin-top: 1.5rem; }
.mi-recovery-hero .mi-recovery-hero__actions a { display: inline-flex; align-items: center; min-height: 2.8rem; padding: .72rem 1.1rem; border-radius: var(--mi-button-radius); background: var(--mi-coral); color: var(--mi-ink); font-weight: 850; text-decoration: none; }
.mi-recovery-hero .mi-recovery-hero__actions a:hover, .mi-recovery-hero .mi-recovery-hero__actions a:focus-visible { background: var(--mi-white); color: var(--mi-ink); }
.mi-recovery-hero__panel {
  box-sizing: border-box;
  padding: clamp(1.4rem, 3vw, 2.2rem);
  border-left: 3px solid var(--mi-coral);
  background: var(--mi-mist);
}
.entry-content .mi-recovery-hero .mi-recovery-hero__panel .mi-kicker { color: var(--mi-coral-dark); }
.mi-recovery-hero__panel h3 { margin-top: 0; color: var(--mi-ink); font-size: clamp(1.4rem, 2.3vw, 2rem); }
.mi-recovery-hero__panel p:not(.mi-kicker) { color: var(--mi-ink-soft); font-size: 1rem; }
.mi-recovery-hero__panel ul { margin: 1rem 0 0; padding-left: 1.1rem; }
.mi-recovery-hero__panel li { margin: .7rem 0; color: var(--mi-ink-soft); }
.mi-recovery-stop { background: var(--mi-mist); }
.mi-recovery-stop ul { max-width: var(--mi-shell-reading); margin-bottom: 0; }
.mi-recovery-stop li { margin: .7rem 0; color: var(--mi-ink-soft); font-weight: 700; }
.mi-recovery-contact-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; max-width: var(--mi-shell-wide); margin: 2rem auto 0; padding: 0; list-style: none; }
.mi-recovery-contact-list li { display: grid; gap: .35rem; min-width: 0; padding-top: .8rem; border-top: 2px solid var(--mi-ink); }
.mi-recovery-contact-list span { font-size: .76rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.entry-content .mi-recovery-contact-list a { color: var(--mi-ink); font-size: clamp(1.05rem, 1.7vw, 1.3rem); font-weight: 900; overflow-wrap: anywhere; text-decoration-thickness: .12em; text-underline-offset: .16em; }
.entry-content .mi-recovery-contact-list a:hover, .entry-content .mi-recovery-contact-list a:focus-visible { color: var(--mi-white); }
.entry-content .mi-cta .mi-contact-line a { color: var(--mi-ink); font-weight: 900; text-decoration-thickness: .12em; text-underline-offset: .16em; }
.entry-content .mi-cta .mi-contact-line a:hover, .entry-content .mi-cta .mi-contact-line a:focus-visible { color: var(--mi-white); }

/* Contact methods are independent actions. The source content may contain
 * literal separators between anchors; hide those anonymous text nodes and
 * own separators through layout so mobile never leaves an orphan bullet. */
.entry-content .mi-contact-line {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .55rem 0;
  font-size: 0;
  line-height: 1.4;
}
.entry-content .mi-contact-line > strong,
.entry-content .mi-contact-line > a {
  display: inline-flex;
  align-items: center;
  min-width: 0;
  font-size: 1rem;
  white-space: nowrap;
}
.entry-content .mi-contact-line > strong + a::before,
.entry-content .mi-contact-line > a + a::before {
  content: "•";
  display: inline-block;
  margin-inline: .65rem;
  color: currentColor;
  font-size: 1rem;
}

.mi-local-trust { box-sizing: border-box; width: auto; max-width: none; margin-right: calc(50% - 50vw); margin-left: calc(50% - 50vw); padding: clamp(3.5rem, 7vw, 6rem) 0; border-block: 1px solid var(--mi-line); background: var(--mi-mist); }
.mi-local-trust > .mi-surface__inner { max-width: var(--mi-card-max); }
.mi-local-trust h2 { max-width: 18ch; margin-top: 0; }
.mi-local-trust > .mi-surface__inner > p:not(.mi-kicker) { max-width: 700px; }
.mi-local-trust__proof { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem 2rem; margin-top: 1.8rem; border-top: 2px solid var(--mi-coral); }
.mi-local-trust__proof > .wp-block-column { min-width: 0; padding: 1rem 0 .2rem; border-top: 0; background: transparent; }
.mi-local-trust__proof h3 { margin-top: 0; font-size: var(--mi-type-card-title); line-height: var(--mi-leading-card); }
.mi-local-trust .wp-block-buttons { margin-top: 1.8rem; }
.mi-local-trust .wp-element-button { background: var(--mi-ink); color: var(--mi-white); }
.mi-local-trust .wp-element-button:hover, .mi-local-trust .wp-element-button:focus-visible { background: var(--mi-coral); color: var(--mi-ink); }
.mi-local-discovery-bridge { box-sizing: border-box; width: auto; max-width: none; margin-right: calc(50% - 50vw); margin-left: calc(50% - 50vw); border-block: 1px solid var(--mi-line); background: var(--mi-mist); }
.mi-local-discovery-bridge .mi-surface__inner { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(15rem, .8fr); align-items: end; gap: 1.25rem clamp(2rem, 8vw, 7rem); max-width: var(--mi-shell-content); padding-block: clamp(2rem, 4vw, 3rem); }
.mi-local-discovery-bridge__copy-column { min-width: 0; }
.mi-local-discovery-bridge .mi-kicker { margin: 0 0 .65rem; font-size: .68rem; }
.mi-local-discovery-bridge__title { max-width: 26ch; margin: 0; font-size: clamp(1.35rem, 2.3vw, 2.1rem); line-height: 1.04; }
.mi-local-discovery-bridge__copy { max-width: 58ch; margin: .8rem 0 0; color: var(--mi-muted); font-size: .95rem; }
.mi-local-discovery-bridge__action { align-self: end; min-width: 0; margin: 0; padding-bottom: .15rem; }
.mi-local-discovery-bridge__link { font-size: .98rem; font-weight: 850; }

/* Strong full-width surfaces already provide separation; avoid stacked
 * generic block margins creating an accidental band between them. */
.entry-content > :where(.mi-surface, .mi-section, .mi-home-managed, .mi-home-resources, .mi-local-trust) + :where(.mi-cta, .mi-service-cta, .mi-assessment-cta) { margin-top: 0; }

.mi-service-shelf__relationship { border-top: 1px solid var(--mi-line); border-bottom: 1px solid var(--mi-line); }
.mi-service-shelf__relationship-inner { padding-block: clamp(2.5rem, 5vw, 4rem); }
.mi-service-shelf__relationship h2 { max-width: 25ch; font-size: clamp(2rem, 4vw, 3.2rem); line-height: 1.05; }
.mi-service-capabilities__inner { padding-block: clamp(3.5rem, 6vw, 5.5rem); }

@media (max-width: 1100px) and (min-width: 721px) {
  .mi-problem-selector__choices { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 900px) and (min-width: 721px) {
  .entry-content .mi-process { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .entry-content .mi-process .wp-block-column { width: auto; min-width: 0; flex-basis: auto; }
}
@media (max-width: 720px) {
  :root { --mi-leading-display: 1.04; }
  .mi-studio-sequence__layout.is-layout-flex { grid-template-columns: 1fr; gap: 1.75rem; }
  .mi-studio-sequence__lead { position: static; }
  .mi-studio-sequence__lead h2 { max-width: 14ch; font-size: clamp(2.2rem, 11vw, 4rem); }
  .mi-studio-sequence__item > .wp-block-group__inner-container { grid-template-columns: 2.25rem minmax(0, 1fr); gap: .75rem; }
  .mi-studio-motif--rings::before, .mi-studio-motif--rings::after { opacity: .08; }
  .mi-studio-motif--m::before { opacity: .045; }
  .mi-studio-motif-position--rail.mi-studio-motif--m::before,
  .mi-studio-motif-position--transition.mi-studio-motif--m::before { display: none; }
  .mi-studio-motif--rings-m::before { opacity: .035; }
  .mi-studio-motif--rings-m::after { opacity: .06; }
  .entry-content .mi-section > .wp-block-group__inner-container { padding-block: var(--mi-space-section-mobile); }
  .entry-content .mi-section > .wp-block-group__inner-container > .mi-section__intro h2,
  .mi-problem-selector h2 { max-width: 18ch; font-size: var(--mi-heading-mobile); line-height: 1.08; }
  .entry-content .mi-strip .wp-block-columns { grid-template-columns: 1fr; }
  .entry-content .mi-strip .wp-block-column { border-right: 0; border-bottom: 1px solid var(--mi-line); }
  .entry-content .mi-strip .wp-block-column:last-child { border-bottom: 0; }
  .mi-problem-selector__inner { padding-block: var(--mi-space-section-mobile); }
  .mi-problem-selector__choices { grid-template-columns: 1fr; gap: .65rem; }
  .mi-problem-selector__item summary { min-height: 4.1rem; padding-block: 1rem; }
  .mi-problem-selector__urgent { display: block; }
  .mi-problem-selector__urgent-actions { justify-content: flex-start; margin-top: 1rem; }
  .mi-recovery-hero .mi-hero__layout { display: block; }
  .mi-recovery-hero .mi-hero__proof { margin-top: 1.75rem; }
  .entry-content .mi-recovery-hero h1 { max-width: 14ch; font-size: clamp(2.1rem, 8vw, 3.2rem); line-height: 1.04; }
  .mi-recovery-hero .mi-recovery-hero__actions { align-items: stretch; }
  .mi-recovery-hero .mi-recovery-hero__actions a { justify-content: center; }
  .mi-recovery-hero .mi-surface__inner { padding-block: 3.5rem; }
  .mi-recovery-contact-list { grid-template-columns: 1fr; gap: 1rem; }
  .mi-service-shelf__relationship-inner { padding-block: 2.5rem; }
  .mi-service-shelf__relationship h2 { font-size: clamp(1.9rem, 8vw, 2.7rem); }
  .mi-local-trust__proof { grid-template-columns: 1fr; }
  .mi-local-trust { padding-block: 3.5rem; }
  .mi-cta-group__pair { grid-template-columns: 1fr; }
  .mi-service-hero__actions {
    display: grid;
    grid-template-columns: 1fr;
    width: min(100%, 22rem);
    margin-inline: auto;
  }
  .mi-service-hero__actions > a { width: 100%; }
  .mi-cta-pair,
  :where(.mi-hero, .mi-service-hero) .wp-block-buttons:has(> .wp-block-button + .wp-block-button) {
    grid-template-columns: 1fr;
    width: 100%;
    max-width: 22rem;
  }
  .mi-cta-group__pair > .wp-block-button,
  .mi-cta-pair > .wp-block-button,
  :where(.mi-hero, .mi-service-hero) .wp-block-buttons:has(> .wp-block-button + .wp-block-button) > .wp-block-button {
    width: 100%;
  }
  .entry-content .mi-contact-line {
    flex-direction: column;
    align-items: flex-start;
    gap: .65rem;
  }
  .entry-content .mi-contact-line > strong + a::before,
  .entry-content .mi-contact-line > a + a::before { display: none; }
  .mi-local-discovery-bridge .mi-surface__inner { display: block; padding-block: clamp(2rem, 8vw, 3rem); }
  .mi-local-discovery-bridge__action { margin-top: 1.25rem; padding-bottom: 0; }
}

@media (max-width: 1100px) and (min-width: 721px) {
  .home .mi-problem-selector__list > .wp-block-group__inner-container { display: block; }
  .home .mi-problem-selector__choices { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 721px) and (max-height: 599px) {
  .mi-studio-sequence__lead { position: static; }
  .mi-studio-sequence__layout.is-layout-flex { grid-template-columns: 1fr; gap: 2rem; }
  .mi-studio-motif-position--rail.mi-studio-motif--m::before,
  .mi-studio-motif-position--transition.mi-studio-motif--m::before { display: none; }
  .mi-problem-selector__choices,
  .home .mi-problem-selector__choices { grid-template-columns: 1fr; }
  .mi-problem-selector__urgent { display: block; }
  .mi-problem-selector__urgent-actions { justify-content: flex-start; margin-top: 1rem; }
}
@media (prefers-reduced-motion: reduce) {
  .mi-studio-motion--slow::before { animation: none !important; transform: none; }
}
@media (max-width: 720px) {
  .home .mi-problem-selector__list > .wp-block-group__inner-container { display: block; }
  .home .mi-problem-selector__choices { grid-template-columns: 1fr; gap: .65rem; }
}

/* Shared WordPress/Kadence shell contract. Presentation is selected by an
 * explicit metadata-derived archetype; editable Gutenberg blocks remain the
 * owner of content and section order. */
:where(.mi-archetype-studio-landing, .mi-archetype-service-hub, .mi-archetype-service, .mi-archetype-contact, .mi-archetype-assessment, .mi-archetype-editorial, .mi-archetype-utility) .content-area {
  margin-block: 0;
}
/* Contact is a compact utility composition. Kadence's footer-on-bottom shell
 * grows #inner-wrap to fill a short viewport, which leaves an unowned cream band
 * between a complete contact block and the footer. Keep that global behavior
 * for the rest of the site, but let this archetype end after its own content. */
body.mi-archetype-contact.footer-on-bottom #inner-wrap { flex: 0 1 auto; }
:where(.mi-archetype-studio-landing, .mi-archetype-service-hub, .mi-archetype-service, .mi-archetype-contact, .mi-archetype-assessment, .mi-archetype-editorial, .mi-archetype-utility) .entry,
:where(.mi-archetype-studio-landing, .mi-archetype-service-hub, .mi-archetype-service, .mi-archetype-contact, .mi-archetype-assessment, .mi-archetype-editorial, .mi-archetype-utility) .entry-content-wrap {
  background: transparent;
  box-shadow: none;
  border: 0;
  border-radius: 0;
}
:where(.mi-archetype-studio-landing, .mi-archetype-service-hub, .mi-archetype-service, .mi-archetype-contact, .mi-archetype-assessment, .mi-archetype-editorial, .mi-archetype-utility) .entry-content-wrap {
  padding-block: 0;
}
:where(.mi-archetype-studio-landing, .mi-archetype-service-hub, .mi-archetype-service, .mi-archetype-contact, .mi-archetype-assessment, .mi-archetype-editorial, .mi-archetype-utility) .entry-content {
  box-sizing: border-box;
  width: 100%;
  max-width: none;
}
:where(.mi-archetype-studio-landing, .mi-archetype-service-hub, .mi-archetype-service, .mi-archetype-contact, .mi-archetype-assessment, .mi-archetype-editorial) .entry-content > :where(.alignfull, .mi-surface, .mi-section, .mi-article-guide-map, .mi-related-resources, .mi-assessment-hero, .mi-assessment-section, .mi-assessment-cta) {
  box-sizing: border-box;
  width: 100vw;
  max-width: none;
  margin-inline: calc(50% - 50vw);
  margin-block-end: 0;
}
:where(.mi-archetype-studio-landing, .mi-archetype-service-hub, .mi-archetype-service, .mi-archetype-contact, .mi-archetype-assessment, .mi-archetype-editorial) .entry-content > .mi-section {
  padding-inline: 0;
}
:where(.mi-archetype-studio-landing, .mi-archetype-service-hub, .mi-archetype-service, .mi-archetype-contact, .mi-archetype-assessment, .mi-archetype-editorial) .entry-content > :where(.mi-section, .mi-surface) > :where(.wp-block-group__inner-container, .mi-surface__inner) {
  box-sizing: border-box;
  width: 100%;
  max-width: var(--mi-shell-wide);
  margin-inline: auto;
  padding-inline: var(--mi-gutter);
}

/* Assessment Groups were stored as constrained top-level Groups rather than
 * alignfull surfaces. The shared archetype gives them the same surface edge
 * without changing their editable block content. */
.mi-archetype-assessment .entry-content > :where(.mi-assessment-hero, .mi-assessment-section, .mi-assessment-cta) {
  margin-block-end: 0;
}

/* Shared action geometry: actions belong to the composition that introduces
 * them, wrap predictably, and retain a useful keyboard/touch target. */
:where(.mi-archetype-studio-landing, .mi-archetype-service-hub, .mi-archetype-service, .mi-archetype-contact, .mi-archetype-assessment, .mi-archetype-editorial) .wp-block-buttons,
:where(.mi-archetype-studio-landing, .mi-archetype-service-hub, .mi-archetype-service, .mi-archetype-contact, .mi-archetype-assessment, .mi-archetype-editorial) :where(.mi-assessment-actions, .mi-service-hero__actions) {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .75rem 1rem;
  margin-block: 1.35rem 0;
}
:where(.mi-archetype-studio-landing, .mi-archetype-service-hub, .mi-archetype-service, .mi-archetype-contact, .mi-archetype-assessment, .mi-archetype-editorial) .wp-block-button,
:where(.mi-archetype-studio-landing, .mi-archetype-service-hub, .mi-archetype-service, .mi-archetype-contact, .mi-archetype-assessment, .mi-archetype-editorial) .wp-block-button__link,
:where(.mi-archetype-studio-landing, .mi-archetype-service-hub, .mi-archetype-service, .mi-archetype-contact, .mi-archetype-assessment, .mi-archetype-editorial) .wp-element-button {
  min-height: 2.75rem;
}

/* The relationship action shares the same vertical composition as its copy;
 * the inner shell no longer adds a second page gutter. */
.mi-home-managed__inner { max-width: none; margin: 0; padding: 0; }
.mi-home-managed__columns { align-items: center; gap: clamp(2rem, 6vw, 5rem); }
.mi-home-managed__columns > .wp-block-column:last-child { display: flex; align-items: center; justify-content: flex-end; }

/* Related resources is one intentional surface; cards remain the only white
 * objects inside it. */
:where(.mi-archetype-editorial, .mi-archetype-studio-landing, .mi-archetype-contact, .mi-archetype-assessment) .mi-related-resources {
  background: var(--mi-mist);
  box-shadow: none;
}

/* Neutral article sections are one continuous reading surface. Separators are
 * reserved for authored semantic components, not emitted after every H2. */
.mi-archetype-editorial .mi-article-section + .mi-article-section,
.mi-archetype-editorial .mi-article-section--mist + .mi-article-section--mist {
  border-top: 0;
}

/* Shared infrastructure card treatment. These cards are authored by the
 * infrastructure capability source, so the presentation stays reusable for
 * multi-gigabit, scope, deliverable and bounded-review groups. */
.mi-infrastructure-section { background: var(--mi-paper); }
.mi-infrastructure-section > .mi-surface__inner {
  box-sizing: border-box;
  width: 100%;
  max-width: var(--mi-shell-content);
  margin-inline: auto;
  padding: var(--mi-space-section) var(--mi-gutter);
}
.mi-infrastructure-section__intro { max-width: 50rem; margin-bottom: clamp(1.75rem, 3vw, 2.75rem); }
.mi-infrastructure-section__intro h2 { margin-top: 0; }
.mi-infrastructure-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(1rem, 2vw, 1.35rem);
  margin-top: 0;
}
.mi-infrastructure-grid--related {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.mi-infrastructure-card {
  display: flex;
  min-width: 0;
  min-height: 100%;
  flex-direction: column;
  box-sizing: border-box;
  padding: clamp(1.25rem, 2.2vw, 1.7rem);
  border: 1px solid rgba(16, 44, 44, .12);
  border-top: 3px solid var(--mi-coral);
  border-radius: var(--mi-radius);
  background: rgba(255, 255, 255, .82);
  box-shadow: 0 .75rem 1.8rem rgba(16, 44, 44, .055);
}
.mi-infrastructure-card__eyebrow {
  margin: 0 0 .65rem;
  color: var(--mi-coral-dark) !important;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .12em;
  line-height: 1.2;
  text-transform: uppercase;
}
.mi-infrastructure-card h3 {
  margin: 0 0 .7rem;
  color: var(--mi-ink);
  font-size: clamp(1.2rem, 1.8vw, 1.55rem);
  letter-spacing: -.025em;
  line-height: 1.08;
}
.mi-infrastructure-card > p:not(.mi-infrastructure-card__eyebrow) {
  margin: 0;
  color: var(--mi-muted);
  line-height: 1.52;
}
.mi-infrastructure-card > p:last-child { margin-top: auto; padding-top: 1.2rem; }
.entry-content .mi-infrastructure-card__link {
  display: inline-flex;
  align-items: baseline;
  gap: .35em;
  color: var(--mi-coral-dark);
  font-weight: 850;
  line-height: 1.35;
}
.mi-infrastructure-card__link span { transition: transform .16s ease; }
.mi-infrastructure-card__link:hover span,
.mi-infrastructure-card__link:focus-visible span { transform: translateX(.18em); }
.mi-infrastructure-multigig { background: var(--mi-mist); }
.mi-infrastructure-multigig .mi-infrastructure-grid { gap: clamp(1rem, 2.4vw, 1.5rem); }
.mi-infrastructure-multigig__links {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem 1.5rem;
  margin-top: 1.35rem;
}
.mi-infrastructure-multigig__links br { display: none; }

@media (max-width: 960px) and (min-width: 721px) {
  .mi-infrastructure-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mi-infrastructure-grid--related { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 720px) {
  .mi-infrastructure-section > .mi-surface__inner { padding-block: var(--mi-space-section-compact); }
  .mi-infrastructure-grid, .mi-infrastructure-grid--related { grid-template-columns: 1fr; }
  .mi-infrastructure-card { padding: 1.25rem; }
  .mi-infrastructure-multigig__links { display: grid; gap: .8rem; }
}

/* Final shared surface/CTA normalization. Existing Gutenberg markup may still
 * carry only .wp-element-button; semantic section owners therefore resolve
 * the complete visual contract here instead of inheriting Kadence defaults. */
:root {
  --mi-surface-paper: var(--mi-paper);
  --mi-surface-mist: var(--mi-mist);
  --mi-surface-dark: var(--mi-ink);
  --mi-surface-coral: var(--mi-coral);
  --mi-accent-editorial: var(--mi-coral-dark);
  --mi-accent-on-dark: var(--mi-lime);
  --mi-accent-interaction: var(--mi-coral);
  --mi-link-paper: var(--mi-coral-dark);
  --mi-link-dark: var(--mi-white);
  --mi-link-coral: var(--mi-ink);
  --mi-focus-paper: var(--mi-coral);
  --mi-focus-dark: var(--mi-white);
  --mi-focus-coral: var(--mi-ink);
  --mi-cta-transition: background-color var(--mi-motion-standard) ease, color var(--mi-motion-standard) ease, border-color var(--mi-motion-standard) ease, transform var(--mi-motion-fast) ease;
}

:where(.entry-content) :where(.wp-element-button):not(.mi-action-link) {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  min-height: 2.8rem;
  padding: .72rem clamp(1.25rem, 2vw, 1.75rem);
  border: 1px solid transparent;
  border-radius: var(--mi-button-radius) !important;
  background: var(--mi-ink) !important;
  color: var(--mi-white) !important;
  font-weight: 850;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  transition: var(--mi-cta-transition);
}

:where(.entry-content) :where(.wp-element-button):not(.mi-action-link):hover,
:where(.entry-content) :where(.wp-element-button):not(.mi-action-link):focus-visible,
:where(.entry-content) :where(.wp-element-button):not(.mi-action-link):active {
  border-color: var(--mi-ink) !important;
  background: var(--mi-white) !important;
  color: var(--mi-ink) !important;
}

:where(.entry-content) :where(.wp-element-button):not(.mi-action-link):focus-visible {
  outline: 3px solid var(--mi-coral) !important;
  outline-offset: 3px;
}

/* Dark surfaces use coral as the resting action accent and white as the
 * inverse state. The contrast is shared by heroes, dark editorial sections,
 * capability fields and dark service sections. */
:where(.entry-content) :where(
  .mi-hero,
  .mi-service-hero,
  .mi-service-shelf__hero,
  .mi-section--dark,
  .mi-service-capabilities,
  .mi-service-section--ongoing-relationship,
  .mi-service-receives,
  .mi-assessment-deliverables
) :where(.wp-element-button):not(.mi-action-link),
:where(.entry-content) :where(.mi-hero, .mi-service-hero, .mi-service-shelf__hero, .mi-section--dark, .mi-service-capabilities, .mi-service-section--ongoing-relationship, .mi-service-receives, .mi-assessment-deliverables) .mi-action-link--primary.wp-element-button {
  border-color: transparent !important;
  background: var(--mi-coral) !important;
  color: var(--mi-ink) !important;
}

:where(.entry-content) :where(
  .mi-hero,
  .mi-service-hero,
  .mi-service-shelf__hero,
  .mi-section--dark,
  .mi-service-capabilities,
  .mi-service-section--ongoing-relationship,
  .mi-service-receives,
  .mi-assessment-deliverables
) :where(.wp-element-button):not(.mi-action-link):hover,
:where(.entry-content) :where(
  .mi-hero,
  .mi-service-hero,
  .mi-service-shelf__hero,
  .mi-section--dark,
  .mi-service-capabilities,
  .mi-service-section--ongoing-relationship,
  .mi-service-receives,
  .mi-assessment-deliverables
) :where(.wp-element-button):not(.mi-action-link):focus-visible,
:where(.entry-content) :where(
  .mi-hero,
  .mi-service-hero,
  .mi-service-shelf__hero,
  .mi-section--dark,
  .mi-service-capabilities,
  .mi-service-section--ongoing-relationship,
  .mi-service-receives,
  .mi-assessment-deliverables
) :where(.wp-element-button):not(.mi-action-link):active,
:where(.entry-content) :where(.mi-hero, .mi-service-hero, .mi-service-shelf__hero, .mi-section--dark, .mi-service-capabilities, .mi-service-section--ongoing-relationship, .mi-service-receives, .mi-assessment-deliverables) .mi-action-link--primary.wp-element-button:hover,
:where(.entry-content) :where(.mi-hero, .mi-service-hero, .mi-service-shelf__hero, .mi-section--dark, .mi-service-capabilities, .mi-service-section--ongoing-relationship, .mi-service-receives, .mi-assessment-deliverables) .mi-action-link--primary.wp-element-button:focus-visible,
:where(.entry-content) :where(.mi-hero, .mi-service-hero, .mi-service-shelf__hero, .mi-section--dark, .mi-service-capabilities, .mi-service-section--ongoing-relationship, .mi-service-receives, .mi-assessment-deliverables) .mi-action-link--primary.wp-element-button:active {
  border-color: var(--mi-white) !important;
  background: var(--mi-white) !important;
  color: var(--mi-ink) !important;
}

:where(.entry-content) :where(.mi-hero, .mi-service-hero, .mi-service-shelf__hero, .mi-section--dark, .mi-service-capabilities, .mi-service-section--ongoing-relationship, .mi-service-receives, .mi-assessment-deliverables) :where(.wp-element-button):not(.mi-action-link):focus-visible,
:where(.entry-content) :where(.mi-hero, .mi-service-hero, .mi-service-shelf__hero, .mi-section--dark, .mi-service-capabilities, .mi-service-section--ongoing-relationship, .mi-service-receives, .mi-assessment-deliverables) .mi-action-link--primary.wp-element-button:focus-visible {
  outline-color: var(--mi-white) !important;
}

/* Coral surfaces always resolve primary actions to ink/white and invert to
 * white/ink. This closes the generic coral-hover fallback for every owner. */
:where(.entry-content) :where(.mi-cta, .mi-service-cta, .mi-assessment-cta, .mi-article-cta-section) :where(.wp-element-button):not(.mi-action-link),
:where(.entry-content) :where(.mi-cta, .mi-service-cta, .mi-assessment-cta, .mi-article-cta-section) .mi-action-link--primary.wp-element-button {
  border-color: transparent !important;
  background: var(--mi-ink) !important;
  color: var(--mi-white) !important;
}

:where(.entry-content) :where(.mi-cta, .mi-service-cta, .mi-assessment-cta, .mi-article-cta-section) :where(.wp-element-button):not(.mi-action-link):hover,
:where(.entry-content) :where(.mi-cta, .mi-service-cta, .mi-assessment-cta, .mi-article-cta-section) :where(.wp-element-button):not(.mi-action-link):focus-visible,
:where(.entry-content) :where(.mi-cta, .mi-service-cta, .mi-assessment-cta, .mi-article-cta-section) :where(.wp-element-button):not(.mi-action-link):active,
:where(.entry-content) :where(.mi-cta, .mi-service-cta, .mi-assessment-cta, .mi-article-cta-section) .mi-action-link--primary.wp-element-button:hover,
:where(.entry-content) :where(.mi-cta, .mi-service-cta, .mi-assessment-cta, .mi-article-cta-section) .mi-action-link--primary.wp-element-button:focus-visible,
:where(.entry-content) :where(.mi-cta, .mi-service-cta, .mi-assessment-cta, .mi-article-cta-section) .mi-action-link--primary.wp-element-button:active {
  border-color: var(--mi-ink) !important;
  background: var(--mi-white) !important;
  color: var(--mi-ink) !important;
}

:where(.entry-content) :where(.mi-cta, .mi-service-cta, .mi-assessment-cta, .mi-article-cta-section) :where(.wp-element-button):not(.mi-action-link):focus-visible,
:where(.entry-content) :where(.mi-cta, .mi-service-cta, .mi-assessment-cta, .mi-article-cta-section) .mi-action-link--primary.wp-element-button:focus-visible {
  outline-color: var(--mi-ink) !important;
}

/* Trust/review actions are editorial text actions, never filled buttons. */
:where(.entry-content) .mi-home-trust .wp-block-button > .wp-element-button {
  min-height: 0;
  padding: 0;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--mi-coral-dark) !important;
  text-decoration: underline !important;
  text-decoration-thickness: .1em;
  text-underline-offset: .18em;
}
:where(.entry-content) .mi-home-trust .wp-block-button > .wp-element-button:hover,
:where(.entry-content) .mi-home-trust .wp-block-button > .wp-element-button:focus-visible,
:where(.entry-content) .mi-home-trust .wp-block-button > .wp-element-button:active {
  background: transparent !important;
  color: var(--mi-ink) !important;
  text-decoration-thickness: .16em;
}

/* Same family, quieter surface: paper/mist sections share ink rest and
 * white inverse states. This also covers legacy raw Gutenberg buttons. */
:where(.entry-content) :where(.mi-home-managed, .mi-home-trust, .mi-problem-selector, .mi-service-related, .mi-service-section--ongoing-cards, .mi-service-shelf__relationship, .mi-local-trust, .mi-infrastructure-section, .mi-article-guide-map) :where(.wp-element-button):not(.mi-action-link),
:where(.entry-content) :where(.mi-home-managed, .mi-home-trust, .mi-problem-selector, .mi-service-related, .mi-service-section--ongoing-cards, .mi-service-shelf__relationship, .mi-local-trust, .mi-infrastructure-section, .mi-article-guide-map) .mi-action-link--primary.wp-element-button {
  background: var(--mi-ink) !important;
  color: var(--mi-white) !important;
}

:where(.entry-content) :where(.mi-home-managed, .mi-problem-selector, .mi-service-related, .mi-service-section--ongoing-cards, .mi-service-shelf__relationship, .mi-local-trust, .mi-infrastructure-section, .mi-article-guide-map) :where(.wp-element-button):not(.mi-action-link):hover,
:where(.entry-content) :where(.mi-home-managed, .mi-problem-selector, .mi-service-related, .mi-service-section--ongoing-cards, .mi-service-shelf__relationship, .mi-local-trust, .mi-infrastructure-section, .mi-article-guide-map) :where(.wp-element-button):not(.mi-action-link):focus-visible,
:where(.entry-content) :where(.mi-home-managed, .mi-problem-selector, .mi-service-related, .mi-service-section--ongoing-cards, .mi-service-shelf__relationship, .mi-local-trust, .mi-infrastructure-section, .mi-article-guide-map) :where(.wp-element-button):not(.mi-action-link):active,
:where(.entry-content) :where(.mi-home-managed, .mi-problem-selector, .mi-service-related, .mi-service-section--ongoing-cards, .mi-service-shelf__relationship, .mi-local-trust, .mi-infrastructure-section, .mi-article-guide-map) .mi-action-link--primary.wp-element-button:hover,
:where(.entry-content) :where(.mi-home-managed, .mi-problem-selector, .mi-service-related, .mi-service-section--ongoing-cards, .mi-service-shelf__relationship, .mi-local-trust, .mi-infrastructure-section, .mi-article-guide-map) .mi-action-link--primary.wp-element-button:focus-visible,
:where(.entry-content) :where(.mi-home-managed, .mi-problem-selector, .mi-service-related, .mi-service-section--ongoing-cards, .mi-service-shelf__relationship, .mi-local-trust, .mi-infrastructure-section, .mi-article-guide-map) .mi-action-link--primary.wp-element-button:active {
  border-color: var(--mi-ink) !important;
  background: var(--mi-white) !important;
  color: var(--mi-ink) !important;
}

@media (max-width: 720px) {
  .mi-home-managed__columns { display: block; }
  .mi-home-managed__columns > .wp-block-column:last-child { display: block; margin-top: 1.2rem; }
  .mi-direct-contact { padding-block: 2.5rem 3rem; }
  .mi-direct-contact__layout { grid-template-columns: 1fr; gap: 2rem; }
  .mi-direct-contact h1 { max-width: 16ch; font-size: clamp(2.1rem, 9.2vw, 3.2rem); }
  .mi-direct-contact__panel { margin-top: 0; }
  .mi-direct-contact .mi-direct-contact__choices { grid-template-columns: 1fr; gap: 0; }
  .mi-direct-contact__choices li { padding-top: .75rem; }
  :where(.mi-archetype-studio-landing, .mi-archetype-service-hub, .mi-archetype-service, .mi-archetype-contact, .mi-archetype-assessment, .mi-archetype-editorial) .wp-block-buttons,
  :where(.mi-archetype-studio-landing, .mi-archetype-service-hub, .mi-archetype-service, .mi-archetype-contact, .mi-archetype-assessment, .mi-archetype-editorial) :where(.mi-assessment-actions, .mi-service-hero__actions) {
    align-items: stretch;
  }
}

/* At tablet width the sequence has no useful reason to preserve a miniature
 * desktop rail. Stack it before the content measure becomes cramped. */
@media (max-width: 820px) and (min-width: 721px) {
  .mi-studio-sequence__layout.is-layout-flex { grid-template-columns: 1fr; gap: 2rem; }
  .mi-studio-sequence__lead { position: static; }
  .mi-studio-sequence__lead h2 { max-width: 17ch; }
}

/* The operator correction keeps the display scale intentional on mobile
 * without changing body or navigation typography. */
@media (max-width: 720px) {
  .mi-studio-sequence__lead h2 { max-width: 16ch; font-size: clamp(2rem, 8.5vw, 3.25rem); }
  .mi-studio-sequence__layout.is-layout-flex { gap: 2rem; }
  .mi-studio-sequence__item { padding-block: 1rem; }
}

/* Contact is a final navigation action, not a second hero button. A quiet
 * coral underline makes it findable without overpowering the header. */
.main-navigation .primary-menu-container > ul > li.mi-contact-link > a,
.mobile-navigation .mi-contact-link > a {
  font-weight: 850;
  text-decoration: underline;
  text-decoration-color: var(--mi-coral);
  text-decoration-thickness: .12em;
  text-underline-offset: .28em;
}
.main-navigation .primary-menu-container > ul > li.mi-contact-link > a:hover,
.main-navigation .primary-menu-container > ul > li.mi-contact-link > a:focus-visible,
.mobile-navigation .mi-contact-link > a:hover,
.mobile-navigation .mi-contact-link > a:focus-visible {
  color: var(--mi-coral-dark);
  text-decoration-thickness: .18em;
}

/* Authoritative semantic CTA matrix. Keep role + surface responsible for
 * every interactive state; this prevents the older generic Gutenberg hover
 * rule from becoming an accidental fifth visual system. */
:where(.entry-content) .mi-action-link--primary.wp-element-button,
:where(.entry-content) .mi-action-link.wp-element-button:not(.mi-action-link--inverse):not(.mi-action-link--text) {
  border: 1px solid transparent !important;
  border-radius: var(--mi-button-radius) !important;
  transition: var(--mi-cta-transition) !important;
}

:where(.entry-content) :where(
  .mi-home-managed,
  .mi-problem-selector,
  .mi-service-related,
  .mi-service-section--ongoing-cards,
  .mi-service-shelf__relationship,
  .mi-local-trust,
  .mi-infrastructure-section,
  .mi-article-guide-map,
  .mi-section--paper,
  .mi-section--mist,
  .mi-surface--paper,
  .mi-surface--mist
) .mi-action-link--primary.wp-element-button,
:where(.entry-content) :where(
  .mi-home-managed,
  .mi-problem-selector,
  .mi-service-related,
  .mi-service-section--ongoing-cards,
  .mi-service-shelf__relationship,
  .mi-local-trust,
  .mi-infrastructure-section,
  .mi-article-guide-map,
  .mi-section--paper,
  .mi-section--mist,
  .mi-surface--paper,
  .mi-surface--mist
) .mi-action-link.wp-element-button:not(.mi-action-link--inverse):not(.mi-action-link--text) {
  background: var(--mi-ink) !important;
  color: var(--mi-white) !important;
}

:where(.entry-content) :where(
  .mi-home-managed,
  .mi-problem-selector,
  .mi-service-related,
  .mi-service-section--ongoing-cards,
  .mi-service-shelf__relationship,
  .mi-local-trust,
  .mi-infrastructure-section,
  .mi-article-guide-map,
  .mi-section--paper,
  .mi-section--mist,
  .mi-surface--paper,
  .mi-surface--mist
) .mi-action-link--primary.wp-element-button:hover,
:where(.entry-content) :where(
  .mi-home-managed,
  .mi-problem-selector,
  .mi-service-related,
  .mi-service-section--ongoing-cards,
  .mi-service-shelf__relationship,
  .mi-local-trust,
  .mi-infrastructure-section,
  .mi-article-guide-map,
  .mi-section--paper,
  .mi-section--mist,
  .mi-surface--paper,
  .mi-surface--mist
) .mi-action-link.wp-element-button:not(.mi-action-link--inverse):not(.mi-action-link--text):hover,
:where(.entry-content) :where(
  .mi-home-managed,
  .mi-problem-selector,
  .mi-service-related,
  .mi-service-section--ongoing-cards,
  .mi-service-shelf__relationship,
  .mi-local-trust,
  .mi-infrastructure-section,
  .mi-article-guide-map,
  .mi-section--paper,
  .mi-section--mist,
  .mi-surface--paper,
  .mi-surface--mist
) .mi-action-link--primary.wp-element-button:active,
:where(.entry-content) :where(
  .mi-home-managed,
  .mi-problem-selector,
  .mi-service-related,
  .mi-service-section--ongoing-cards,
  .mi-service-shelf__relationship,
  .mi-local-trust,
  .mi-infrastructure-section,
  .mi-article-guide-map,
  .mi-section--paper,
  .mi-section--mist,
  .mi-surface--paper,
  .mi-surface--mist
) .mi-action-link.wp-element-button:not(.mi-action-link--inverse):not(.mi-action-link--text):active,
:where(.entry-content) :where(
  .mi-home-managed,
  .mi-problem-selector,
  .mi-service-related,
  .mi-service-section--ongoing-cards,
  .mi-service-shelf__relationship,
  .mi-local-trust,
  .mi-infrastructure-section,
  .mi-article-guide-map,
  .mi-section--paper,
  .mi-section--mist,
  .mi-surface--paper,
  .mi-surface--mist
) .mi-action-link--primary.wp-element-button:focus-visible {
  border-color: var(--mi-ink) !important;
  background: var(--mi-white) !important;
  color: var(--mi-ink) !important;
}

:where(.entry-content) :where(
  .mi-home-managed,
  .mi-problem-selector,
  .mi-service-related,
  .mi-service-section--ongoing-cards,
  .mi-service-shelf__relationship,
  .mi-local-trust,
  .mi-infrastructure-section,
  .mi-article-guide-map,
  .mi-section--paper,
  .mi-section--mist,
  .mi-surface--paper,
  .mi-surface--mist
) .mi-action-link--primary.wp-element-button:focus-visible {
  outline: 3px solid var(--mi-coral) !important;
  outline-offset: 3px;
}

:where(.entry-content) :where(
  .mi-hero,
  .mi-service-hero,
  .mi-service-shelf__hero,
  .mi-section--dark,
  .mi-service-capabilities,
  .mi-service-section--ongoing-relationship,
  .mi-service-receives,
  .mi-assessment-deliverables,
  .mi-surface--dark
) .mi-action-link--primary.wp-element-button {
  background: var(--mi-coral) !important;
  color: var(--mi-ink) !important;
}

:where(.entry-content) :where(
  .mi-hero,
  .mi-service-hero,
  .mi-service-shelf__hero,
  .mi-section--dark,
  .mi-service-capabilities,
  .mi-service-section--ongoing-relationship,
  .mi-service-receives,
  .mi-assessment-deliverables,
  .mi-surface--dark
) .mi-action-link--primary.wp-element-button:hover,
:where(.entry-content) :where(
  .mi-hero,
  .mi-service-hero,
  .mi-service-shelf__hero,
  .mi-section--dark,
  .mi-service-capabilities,
  .mi-service-section--ongoing-relationship,
  .mi-service-receives,
  .mi-assessment-deliverables,
  .mi-surface--dark
) .mi-action-link--primary.wp-element-button:focus-visible,
:where(.entry-content) :where(
  .mi-hero,
  .mi-service-hero,
  .mi-service-shelf__hero,
  .mi-section--dark,
  .mi-service-capabilities,
  .mi-service-section--ongoing-relationship,
  .mi-service-receives,
  .mi-assessment-deliverables,
  .mi-surface--dark
) .mi-action-link--primary.wp-element-button:active {
  border-color: var(--mi-white) !important;
  background: var(--mi-white) !important;
  color: var(--mi-ink) !important;
}

:where(.entry-content) :where(
  .mi-hero,
  .mi-service-hero,
  .mi-service-shelf__hero,
  .mi-section--dark,
  .mi-service-capabilities,
  .mi-service-section--ongoing-relationship,
  .mi-service-receives,
  .mi-assessment-deliverables,
  .mi-surface--dark
) .mi-action-link--primary.wp-element-button:focus-visible {
  outline: 3px solid var(--mi-white) !important;
  outline-offset: 3px;
}

:where(.entry-content) :where(
  .mi-cta,
  .mi-service-cta,
  .mi-assessment-cta,
  .mi-article-cta-section,
  .mi-surface--coral
) .mi-action-link--primary.wp-element-button {
  background: var(--mi-ink) !important;
  color: var(--mi-white) !important;
}

:where(.entry-content) :where(
  .mi-cta,
  .mi-service-cta,
  .mi-assessment-cta,
  .mi-article-cta-section,
  .mi-surface--coral
) .mi-action-link--primary.wp-element-button:hover,
:where(.entry-content) :where(
  .mi-cta,
  .mi-service-cta,
  .mi-assessment-cta,
  .mi-article-cta-section,
  .mi-surface--coral
) .mi-action-link--primary.wp-element-button:focus-visible,
:where(.entry-content) :where(
  .mi-cta,
  .mi-service-cta,
  .mi-assessment-cta,
  .mi-article-cta-section,
  .mi-surface--coral
) .mi-action-link--primary.wp-element-button:active {
  border-color: var(--mi-ink) !important;
  background: var(--mi-white) !important;
  color: var(--mi-ink) !important;
}

:where(.entry-content) :where(
  .mi-cta,
  .mi-service-cta,
  .mi-assessment-cta,
  .mi-article-cta-section,
  .mi-surface--coral
) .mi-action-link--primary.wp-element-button:focus-visible {
  outline: 3px solid var(--mi-ink) !important;
  outline-offset: 3px;
}

/* Secondary buttons are outlined on light/mist, quiet inverse controls on
 * dark, and light inverse controls on coral. Text/trust remains unboxed. */
:where(.entry-content) :where(.mi-section--paper, .mi-section--mist, .mi-surface--paper, .mi-surface--mist, .mi-home-managed, .mi-problem-selector, .mi-local-trust) .mi-action-link--inverse.wp-element-button {
  border: 1px solid var(--mi-ink) !important;
  background: transparent !important;
  color: var(--mi-ink) !important;
}
:where(.entry-content) :where(.mi-section--paper, .mi-section--mist, .mi-surface--paper, .mi-surface--mist, .mi-home-managed, .mi-problem-selector, .mi-local-trust) .mi-action-link--inverse.wp-element-button:hover,
:where(.entry-content) :where(.mi-section--paper, .mi-section--mist, .mi-surface--paper, .mi-surface--mist, .mi-home-managed, .mi-problem-selector, .mi-local-trust) .mi-action-link--inverse.wp-element-button:focus-visible,
:where(.entry-content) :where(.mi-section--paper, .mi-section--mist, .mi-surface--paper, .mi-surface--mist, .mi-home-managed, .mi-problem-selector, .mi-local-trust) .mi-action-link--inverse.wp-element-button:active {
  border-color: var(--mi-ink) !important;
  background: var(--mi-ink) !important;
  color: var(--mi-white) !important;
}

:where(.entry-content) :where(.mi-hero, .mi-section--dark, .mi-surface--dark) .mi-action-link--inverse.wp-element-button {
  border: 1px solid rgba(255, 255, 255, .78) !important;
  background: transparent !important;
  color: var(--mi-white) !important;
}
:where(.entry-content) :where(.mi-hero, .mi-section--dark, .mi-surface--dark) .mi-action-link--inverse.wp-element-button:hover,
:where(.entry-content) :where(.mi-hero, .mi-section--dark, .mi-surface--dark) .mi-action-link--inverse.wp-element-button:focus-visible,
:where(.entry-content) :where(.mi-hero, .mi-section--dark, .mi-surface--dark) .mi-action-link--inverse.wp-element-button:active {
  border-color: var(--mi-white) !important;
  background: var(--mi-white) !important;
  color: var(--mi-ink) !important;
}

:where(.entry-content) :where(.mi-cta, .mi-service-cta, .mi-assessment-cta, .mi-article-cta-section, .mi-surface--coral) .mi-action-link--inverse.wp-element-button {
  border: 1px solid var(--mi-ink) !important;
  background: var(--mi-white) !important;
  color: var(--mi-ink) !important;
}
:where(.entry-content) :where(.mi-cta, .mi-service-cta, .mi-assessment-cta, .mi-article-cta-section, .mi-surface--coral) .mi-action-link--inverse.wp-element-button:hover,
:where(.entry-content) :where(.mi-cta, .mi-service-cta, .mi-assessment-cta, .mi-article-cta-section, .mi-surface--coral) .mi-action-link--inverse.wp-element-button:focus-visible,
:where(.entry-content) :where(.mi-cta, .mi-service-cta, .mi-assessment-cta, .mi-article-cta-section, .mi-surface--coral) .mi-action-link--inverse.wp-element-button:active {
  border-color: var(--mi-ink) !important;
  background: var(--mi-ink) !important;
  color: var(--mi-white) !important;
}

:where(.entry-content) .mi-action-link--text,
:where(.entry-content) .mi-action-link--text:hover,
:where(.entry-content) .mi-action-link--text:focus-visible,
:where(.entry-content) .mi-action-link--text:active {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--mi-coral-dark) !important;
  text-decoration: underline;
}

/* Shared button geometry/motion also applies to renderer output that sits
 * outside an entry-content wrapper (for example the reusable About hero). */
.mi-action-link--primary.wp-element-button,
.mi-action-link--inverse.wp-element-button {
  border-radius: var(--mi-button-radius) !important;
  transition: var(--mi-cta-transition) !important;
}
:where(.entry-content) :where(.mi-hero, .mi-section--dark, .mi-surface--dark) .mi-action-link--text,
:where(.entry-content) :where(.mi-hero, .mi-section--dark, .mi-surface--dark) .mi-action-link--text:hover,
:where(.entry-content) :where(.mi-hero, .mi-section--dark, .mi-surface--dark) .mi-action-link--text:focus-visible,
:where(.entry-content) :where(.mi-hero, .mi-section--dark, .mi-surface--dark) .mi-action-link--text:active {
  color: var(--mi-white) !important;
}
:where(.entry-content) :where(.mi-cta, .mi-service-cta, .mi-assessment-cta, .mi-article-cta-section, .mi-surface--coral) .mi-action-link--text,
:where(.entry-content) :where(.mi-cta, .mi-service-cta, .mi-assessment-cta, .mi-article-cta-section, .mi-surface--coral) .mi-action-link--text:hover,
:where(.entry-content) :where(.mi-cta, .mi-service-cta, .mi-assessment-cta, .mi-article-cta-section, .mi-surface--coral) .mi-action-link--text:focus-visible,
:where(.entry-content) :where(.mi-cta, .mi-service-cta, .mi-assessment-cta, .mi-article-cta-section, .mi-surface--coral) .mi-action-link--text:active {
  color: var(--mi-ink) !important;
}

/* Premium interaction and component geometry consolidation. Semantic role,
 * surface and state own the final appearance; browser, Gutenberg and Kadence
 * defaults must not become a second visual system. */

/* Metadata/category accents: light surfaces use restrained rust; dark chrome
 * uses the approved high-contrast lime accent. Visited metadata remains in
 * the same semantic family rather than becoming browser purple. */
.entry-header .category-links a,
.entry-taxonomies .category-links a,
.entry-content .mi-kicker,
.entry-content .mi-editorial-term {
  color: var(--mi-accent-editorial);
}
.entry-content :where(.mi-hero, .mi-service-hero, .mi-service-shelf__hero, .mi-section--dark, .mi-service-section--dark, .mi-assessment-deliverables, .mi-surface--dark) p.mi-kicker {
  color: var(--mi-accent-on-dark);
}
.entry-header .category-links a:visited,
.entry-taxonomies .category-links a:visited {
  color: var(--mi-accent-editorial);
}
.entry-header:has(.category-links) .category-links a,
.entry-header:has(.category-links) .category-links a:visited {
  color: var(--mi-accent-on-dark);
}
.entry-header .category-links a:hover,
.entry-header .category-links a:focus-visible,
.entry-taxonomies .category-links a:hover,
.entry-taxonomies .category-links a:focus-visible {
  color: var(--mi-white);
  text-decoration-thickness: .16em;
}
.entry-content a:not(.wp-element-button):not(.mi-action-link),
.entry-content a:not(.wp-element-button):not(.mi-action-link):visited {
  color: var(--mi-link-paper);
}
.entry-content :where(.mi-hero, .mi-service-hero, .mi-service-shelf__hero, .mi-section--dark, .mi-service-section--dark, .mi-assessment-deliverables, .mi-surface--dark) a:not(.wp-element-button):not(.mi-action-link),
.entry-content :where(.mi-hero, .mi-service-hero, .mi-service-shelf__hero, .mi-section--dark, .mi-service-section--dark, .mi-assessment-deliverables, .mi-surface--dark) a:not(.wp-element-button):not(.mi-action-link):visited {
  color: var(--mi-link-dark);
}
.entry-content :where(.mi-cta, .mi-service-cta, .mi-assessment-cta, .mi-article-cta-section, .mi-surface--coral) a:not(.wp-element-button):not(.mi-action-link),
.entry-content :where(.mi-cta, .mi-service-cta, .mi-assessment-cta, .mi-article-cta-section, .mi-surface--coral) a:not(.wp-element-button):not(.mi-action-link):visited {
  color: var(--mi-link-coral);
}
.entry-content a:not(.wp-element-button):not(.mi-action-link):hover,
.entry-content a:not(.wp-element-button):not(.mi-action-link):focus-visible,
.entry-content a:not(.wp-element-button):not(.mi-action-link):active {
  color: var(--mi-ink);
  text-decoration-thickness: .16em;
}
.entry-content :where(.mi-hero, .mi-service-hero, .mi-service-shelf__hero, .mi-section--dark, .mi-service-section--dark, .mi-assessment-deliverables, .mi-surface--dark) a:not(.wp-element-button):not(.mi-action-link):hover,
.entry-content :where(.mi-hero, .mi-service-hero, .mi-service-shelf__hero, .mi-section--dark, .mi-service-section--dark, .mi-assessment-deliverables, .mi-surface--dark) a:not(.wp-element-button):not(.mi-action-link):focus-visible,
.entry-content :where(.mi-hero, .mi-service-hero, .mi-service-shelf__hero, .mi-section--dark, .mi-service-section--dark, .mi-assessment-deliverables, .mi-surface--dark) a:not(.wp-element-button):not(.mi-action-link):active {
  color: var(--mi-accent-interaction);
}
.entry-content :where(.mi-cta, .mi-service-cta, .mi-assessment-cta, .mi-article-cta-section, .mi-surface--coral) a:not(.wp-element-button):not(.mi-action-link):hover,
.entry-content :where(.mi-cta, .mi-service-cta, .mi-assessment-cta, .mi-article-cta-section, .mi-surface--coral) a:not(.wp-element-button):not(.mi-action-link):focus-visible,
.entry-content :where(.mi-cta, .mi-service-cta, .mi-assessment-cta, .mi-article-cta-section, .mi-surface--coral) a:not(.wp-element-button):not(.mi-action-link):active {
  color: var(--mi-ink-soft);
}

/* Raw WordPress button markup receives the same surface-aware states as the
 * renderer-owned action link. This is the compatibility boundary for old
 * Gutenberg blocks and prevents framework hover leakage. */
:where(.entry-content) :where(.mi-section--paper, .mi-section--mist, .mi-surface--paper, .mi-surface--mist, .mi-home-managed, .mi-service-related, .mi-local-trust) :where(.wp-element-button):not(.mi-action-link),
:where(.entry-content) :where(.mi-section--paper, .mi-section--mist, .mi-surface--paper, .mi-surface--mist, .mi-home-managed, .mi-service-related, .mi-local-trust) :where(.wp-element-button):not(.mi-action-link):visited {
  border-color: transparent;
  background: var(--mi-ink);
  color: var(--mi-white);
}
:where(.entry-content) :where(.mi-section--paper, .mi-section--mist, .mi-surface--paper, .mi-surface--mist, .mi-home-managed, .mi-service-related, .mi-local-trust) :where(.wp-element-button):not(.mi-action-link):hover,
:where(.entry-content) :where(.mi-section--paper, .mi-section--mist, .mi-surface--paper, .mi-surface--mist, .mi-home-managed, .mi-service-related, .mi-local-trust) :where(.wp-element-button):not(.mi-action-link):focus-visible,
:where(.entry-content) :where(.mi-section--paper, .mi-section--mist, .mi-surface--paper, .mi-surface--mist, .mi-home-managed, .mi-service-related, .mi-local-trust) :where(.wp-element-button):not(.mi-action-link):active {
  border-color: var(--mi-ink);
  background: var(--mi-white);
  color: var(--mi-ink);
}
:where(.entry-content) :where(.mi-hero, .mi-service-hero, .mi-service-shelf__hero, .mi-section--dark, .mi-service-section--dark, .mi-assessment-deliverables, .mi-surface--dark) :where(.wp-element-button):not(.mi-action-link),
:where(.entry-content) :where(.mi-hero, .mi-service-hero, .mi-service-shelf__hero, .mi-section--dark, .mi-service-section--dark, .mi-assessment-deliverables, .mi-surface--dark) :where(.wp-element-button):not(.mi-action-link):visited {
  border-color: transparent;
  background: var(--mi-coral);
  color: var(--mi-ink);
}
:where(.entry-content) :where(.mi-hero, .mi-service-hero, .mi-service-shelf__hero, .mi-section--dark, .mi-service-section--dark, .mi-assessment-deliverables, .mi-surface--dark) :where(.wp-element-button):not(.mi-action-link):hover,
:where(.entry-content) :where(.mi-hero, .mi-service-hero, .mi-service-shelf__hero, .mi-section--dark, .mi-service-section--dark, .mi-assessment-deliverables, .mi-surface--dark) :where(.wp-element-button):not(.mi-action-link):focus-visible,
:where(.entry-content) :where(.mi-hero, .mi-service-hero, .mi-service-shelf__hero, .mi-section--dark, .mi-service-section--dark, .mi-assessment-deliverables, .mi-surface--dark) :where(.wp-element-button):not(.mi-action-link):active {
  border-color: var(--mi-white);
  background: var(--mi-white);
  color: var(--mi-ink);
}
:where(.entry-content) :where(.mi-cta, .mi-service-cta, .mi-assessment-cta, .mi-article-cta-section, .mi-surface--coral) :where(.wp-element-button):not(.mi-action-link),
:where(.entry-content) :where(.mi-cta, .mi-service-cta, .mi-assessment-cta, .mi-article-cta-section, .mi-surface--coral) :where(.wp-element-button):not(.mi-action-link):visited {
  border-color: transparent;
  background: var(--mi-ink);
  color: var(--mi-white);
}
:where(.entry-content) :where(.mi-cta, .mi-service-cta, .mi-assessment-cta, .mi-article-cta-section, .mi-surface--coral) :where(.wp-element-button):not(.mi-action-link):hover,
:where(.entry-content) :where(.mi-cta, .mi-service-cta, .mi-assessment-cta, .mi-article-cta-section, .mi-surface--coral) :where(.wp-element-button):not(.mi-action-link):focus-visible,
:where(.entry-content) :where(.mi-cta, .mi-service-cta, .mi-assessment-cta, .mi-article-cta-section, .mi-surface--coral) :where(.wp-element-button):not(.mi-action-link):active {
  border-color: var(--mi-ink);
  background: var(--mi-white);
  color: var(--mi-ink);
}

/* Focus is semantic and geometry-neutral. */
:where(.entry-content) :where(.mi-action-link, .wp-element-button, .mi-problem-selector__item summary):focus-visible {
  outline: 3px solid var(--mi-focus-paper);
  outline-offset: 3px;
}
:where(.entry-content) :where(.mi-hero, .mi-service-hero, .mi-service-shelf__hero, .mi-section--dark, .mi-service-section--dark, .mi-assessment-deliverables, .mi-surface--dark) :where(.mi-action-link, .wp-element-button, .mi-problem-selector__item summary):focus-visible {
  outline-color: var(--mi-focus-dark);
}
:where(.entry-content) :where(.mi-cta, .mi-service-cta, .mi-assessment-cta, .mi-article-cta-section, .mi-surface--coral) :where(.mi-action-link, .wp-element-button, .mi-problem-selector__item summary):focus-visible {
  outline-color: var(--mi-focus-coral);
}

/* Selector: grid rows own their height; the active state changes only paint,
 * never padding, line-height or border-box geometry. Guidance remains one
 * shared tray on enhanced desktop and a natural inline disclosure on mobile. */
.mi-problem-selector__choices {
  align-items: stretch;
  grid-auto-rows: auto;
}
.mi-problem-selector__item {
  display: flex;
  flex-direction: column;
  align-self: stretch;
}
.mi-problem-selector__item > summary {
  display: flex;
  align-items: center;
  flex: 1 1 auto;
}
.mi-problem-selector__item[open],
.mi-problem-selector__items.is-enhanced .mi-problem-selector__item[open] {
  border-color: var(--mi-coral);
  background: var(--mi-ink);
  box-shadow: inset 4px 0 0 var(--mi-coral);
  color: var(--mi-white);
}
.mi-problem-selector__item[open] > summary,
.mi-problem-selector__items.is-enhanced .mi-problem-selector__item[open] > summary,
.mi-problem-selector__item[open] > summary:hover,
.mi-problem-selector__item[open] > summary:focus-visible {
  background: transparent;
  color: var(--mi-white);
}
.mi-problem-selector__item[open] > summary::after {
  border-color: var(--mi-coral);
}
.mi-problem-selector__item[open] > summary,
.mi-problem-selector__items.is-enhanced .mi-problem-selector__item[open] > summary {
  padding-left: 1.35rem;
}
.mi-problem-selector__item[open] .mi-problem-selector__detail {
  background: var(--mi-ink);
  color: var(--mi-white);
}
.mi-problem-selector__item[open] .mi-problem-selector__detail > p,
.mi-problem-selector__item[open] .mi-problem-selector__detail > a,
.mi-problem-selector__item[open] .mi-problem-selector__detail .mi-problem-selector__secondary {
  color: var(--mi-white);
}
.mi-problem-selector__tray {
  border-top-color: var(--mi-coral);
  background: var(--mi-ink);
  color: var(--mi-white);
}
.mi-problem-selector__tray .mi-problem-selector__detail > p,
.mi-problem-selector__tray .mi-problem-selector__detail > a,
.mi-problem-selector__tray .mi-problem-selector__secondary {
  color: var(--mi-white);
}
.mi-problem-selector__tray .mi-kicker { color: var(--mi-lime); }

/* Same-role comparison groups use stretch + flex columns. They equalize the
 * row without fixed heights and naturally release that constraint on mobile. */
.mi-assessment-card-grid,
.mi-commercial-grid,
.mi-service-related__grid,
.mi-service-ongoing__grid--three {
  align-items: stretch;
}
.mi-assessment-card-grid > article,
.mi-commercial-grid > .wp-block-column,
.mi-service-related__grid > article,
.mi-service-ongoing__grid--three > article {
  display: flex;
  flex-direction: column;
  min-width: 0;
  height: 100%;
  box-sizing: border-box;
}
.mi-assessment-card-grid > article > :last-child,
.mi-commercial-grid > .wp-block-column > :last-child,
.mi-service-related__grid > article > :last-child,
.mi-service-ongoing__grid--three > article > :last-child {
  margin-bottom: 0;
}
.mi-assessment-card-grid .mi-action-link,
.mi-commercial-grid .mi-action-link,
.mi-service-related__grid .mi-action-link,
.mi-service-ongoing__grid--three .mi-action-link,
.mi-assessment-card-grid .wp-element-button,
.mi-commercial-grid .wp-element-button,
.mi-service-related__grid .wp-element-button,
.mi-service-ongoing__grid--three .wp-element-button {
  margin-top: auto;
}

/* Coral surfaces need the ink accent for readable metadata. The generic
 * editorial accent is intentionally rust on light surfaces, but rust on
 * coral collapses the kicker hierarchy. */
.entry-content :where(.mi-cta, .mi-service-cta, .mi-assessment-cta, .mi-article-cta-section, .mi-surface--coral) p.mi-kicker {
  color: var(--mi-ink);
}

/* Related cards are a contained responsive primitive. Keep the grid and its
 * children shrinkable even when a consumer or browser injects a min-content
 * width; mobile must expose complete cards, never a clipped third column. */
.mi-service-related__grid {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}
.mi-service-related__grid > article {
  width: auto;
  max-width: 100%;
  min-width: 0;
  overflow-wrap: anywhere;
}
@media (max-width: 720px) {
  .mi-service-related__grid {
    display: flex;
    flex-direction: column;
    gap: 1rem;
  }
}

@media (max-width: 720px) {
  .mi-problem-selector__choices { align-items: stretch; }
  .mi-problem-selector__item { height: auto; }
  .mi-problem-selector__item[open] > summary,
  .mi-problem-selector__items.is-enhanced .mi-problem-selector__item[open] > summary { padding-left: 1.2rem; }
  .mi-assessment-card-grid > article,
  .mi-commercial-grid > .wp-block-column,
  .mi-service-related__grid > article,
  .mi-service-ongoing__grid--three > article { height: auto; }
}

/* Premium surface polish — shared resource, footer and action owners only.
 * This pass keeps the recorded palette and page geometry while giving the
 * repeated discovery surfaces a clearer editorial rhythm. */
:root {
  --mi-surface-shadow: 0 .55rem 1.7rem rgba(16, 44, 44, .075);
  --mi-surface-shadow-hover: 0 .9rem 2.2rem rgba(16, 44, 44, .14);
  --mi-footer-rule: rgba(228, 238, 231, .22);
}

/* Related resources are a deliberate decompression surface, not a second
 * plain card wall. The section owns the background; cards own the action. */
:where(.mi-related-resources, .mi-service-related, .mi-contextual-resources) {
  border-top: 1px solid var(--mi-line);
  border-bottom: 1px solid var(--mi-line);
}

.mi-related-resources {
  padding-top: clamp(3.4rem, 6vw, 5.2rem);
  padding-bottom: clamp(3.6rem, 6vw, 5.4rem);
  background: var(--mi-mist);
}

.mi-related-resources__inner {
  width: 100%;
}

.mi-related-resources h2 {
  max-width: 24ch;
  margin-bottom: clamp(1.35rem, 2.5vw, 2rem);
}

.mi-related-resources__grid,
.mi-resource-grid,
.mi-service-related__grid,
.mi-home-resources__grid,
.mi-contextual-resources__grid {
  align-items: stretch;
  gap: clamp(1rem, 2vw, 1.35rem);
}

:where(
  .mi-related-resource-card,
  .mi-resource-card,
  .mi-service-related__grid > article,
  .mi-home-resources__grid > article,
  .mi-contextual-resources__grid > a
) {
  box-sizing: border-box;
  border: 1px solid var(--mi-line);
  border-top: 3px solid var(--mi-coral);
  border-radius: var(--mi-radius);
  box-shadow: var(--mi-surface-shadow);
  transition: transform var(--mi-motion-fast) ease, box-shadow var(--mi-motion-standard) ease, border-color var(--mi-motion-standard) ease;
}

:where(
  .mi-related-resource-card,
  .mi-resource-card,
  .mi-service-related__grid > article,
  .mi-home-resources__grid > article
) {
  display: flex;
  flex-direction: column;
  min-width: 0;
  height: 100%;
  padding: clamp(1.25rem, 2vw, 1.55rem);
  background: var(--mi-white);
}

:where(
  .mi-related-resource-card,
  .mi-resource-card,
  .mi-service-related__grid > article,
  .mi-home-resources__grid > article
):hover,
:where(
  .mi-related-resource-card,
  .mi-resource-card,
  .mi-service-related__grid > article,
  .mi-home-resources__grid > article
):focus-within {
  border-color: var(--mi-coral);
  box-shadow: var(--mi-surface-shadow-hover);
  transform: translateY(-2px);
}

:where(
  .mi-related-resource-card__link,
  .mi-resource-card__link,
  .mi-service-related__grid .mi-action-link,
  .mi-home-resources__grid > article > p:last-child a,
  .mi-contextual-resources__grid > a
) {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  margin-top: auto;
  padding-top: .95rem;
  border-top: 1px solid var(--mi-line);
}

.mi-contextual-resources__grid > a {
  color: var(--mi-ink);
  background: var(--mi-white);
  text-decoration: none;
}

.mi-contextual-resources__grid > a:hover,
.mi-contextual-resources__grid > a:focus-visible {
  border-color: var(--mi-coral);
  box-shadow: var(--mi-surface-shadow-hover);
  color: var(--mi-coral-dark);
  transform: translateY(-2px);
}

.mi-service-related {
  background: var(--mi-mist);
}

.mi-service-related__inner {
  padding-top: clamp(2.8rem, 5vw, 4.2rem);
  padding-bottom: clamp(3rem, 5vw, 4.4rem);
}

/* The footer owns a restrained dark boundary. A universal pale strip made
 * dark-to-dark surfaces look like a rendering seam, so spacing and the
 * preceding semantic surface now establish the transition. */
.site-footer {
  border-top: 1px solid var(--mi-footer-rule);
}

.site-footer::before {
  display: none;
  height: 0;
  background: none;
  content: none;
}

/* Kadence's footer row adds 30px above and below the repository-owned footer
 * grid. The grid already owns its breathing room; leaving both layers active
 * created the dead field reported in actual-device review. */
.site-bottom-footer-inner-wrap {
  padding-top: 0;
  padding-bottom: 0;
}

.mi-footer-grid {
  grid-template-columns: minmax(0, 1.35fr) minmax(10rem, .85fr) minmax(13rem, 1fr);
  gap: clamp(2rem, 5vw, 4.8rem);
  padding-top: clamp(2.4rem, 4vw, 3.5rem);
  padding-bottom: clamp(1.8rem, 3vw, 2.5rem);
}

.mi-footer-grid > div {
  min-width: 0;
}

.mi-footer-grid > div:not(:first-child) {
  padding-top: .25rem;
}

.mi-footer-grid h2 {
  margin-bottom: .8rem;
  padding-bottom: .5rem;
  border-bottom: 1px solid var(--mi-footer-rule);
}

.mi-footer-grid a {
  margin: .35rem 0;
}

.mi-footer-contact {
  padding-left: clamp(1rem, 2.5vw, 2rem);
  border-left: 1px solid var(--mi-footer-rule);
}

.mi-footer-legal {
  padding-top: .8rem;
  padding-bottom: 1.1rem;
  border-top-color: var(--mi-footer-rule);
}

/* Compact hero rhythm remains shared and stable; this only prevents a short
 * hero from feeling detached from its first supporting surface. */
:where(.mi-resources-hero, .mi-service-hero, .mi-service-shelf__hero, .mi-assessment-hero) + :where(.mi-resources-section, .mi-service-section, .mi-assessment-section) {
  border-top: 1px solid var(--mi-line);
}

@media (hover: none) {
  :where(
    .mi-related-resource-card,
    .mi-resource-card,
    .mi-service-related__grid > article,
    .mi-home-resources__grid > article,
    .mi-contextual-resources__grid > a
  ):hover {
    box-shadow: var(--mi-surface-shadow);
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  :where(
    .mi-related-resource-card,
    .mi-resource-card,
    .mi-service-related__grid > article,
    .mi-home-resources__grid > article,
    .mi-contextual-resources__grid > a
  ) {
    transition: none;
  }
}

@media (max-width: 1024px) {
  .mi-related-resources {
    padding-top: 2.8rem;
    padding-bottom: 3.2rem;
  }

  :where(
    .mi-related-resource-card,
    .mi-resource-card,
    .mi-service-related__grid > article,
    .mi-home-resources__grid > article
  ) {
    height: auto;
  }

  .mi-footer-grid > div:not(:first-child) {
    padding-top: 0;
  }

  /* The footer is a single readable flow on narrow screens. Keep this
   * declaration beside the later desktop footer overrides so the cascade
   * cannot restore the three-column desktop track definition. */
  .mi-footer-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .mi-footer-contact {
    padding-top: 1rem !important;
    padding-left: 0;
    border-top: 1px solid var(--mi-footer-rule);
    border-left: 0;
  }
}

@media (max-width: 720px) {
  .mi-footer-grid {
    padding-top: 2rem;
    padding-bottom: 1.5rem;
  }
}

/* Operator touch targets — action links are controls, not decorative inline
 * copy. The rule is limited to the existing action primitive and card rails;
 * ordinary article links keep their editorial line-height. */
:where(
  .mi-action-link:not(.wp-element-button),
  .mi-related-resource-card__link,
  .mi-resource-card__link,
  .mi-service-related__grid .mi-action-link,
  .mi-home-resources__grid > article > p:last-child a,
  .mi-contextual-resources__grid > a
) {
  box-sizing: border-box;
  min-height: 2.75rem;
  align-items: center;
}

/* Kadence's mobile trigger is an icon button, but its default box is below
 * the accessible touch target. Preserve the icon while enlarging the hit
 * area only in the mobile header. */
@media (max-width: 1024px) {
  .site-mobile-header-wrap .menu-toggle-open {
    box-sizing: border-box;
    min-width: 2.75rem;
    min-height: 2.75rem;
    align-items: center;
    justify-content: center;
  }
}

/* Public acquisition convergence: keep the local call path beside the brand
 * only where the wide header has room. The mobile drawer owns the call action
 * at smaller widths. */
.mi-header-phone-link > a {
  min-height: 0;
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  white-space: nowrap;
}

.mi-header-phone-link__icon {
  display: inline-flex;
  flex: 0 0 .95rem;
  width: .95rem;
  height: .95rem;
}

.mi-header-phone-link__icon svg {
  display: block;
  width: 100%;
  height: 100%;
}

.main-navigation .primary-menu-container > ul > li.mi-header-phone-link > a {
  display: flex;
  align-items: center;
}

.mi-header-phone-link > a:hover,
.mi-header-phone-link > a:focus-visible {
  color: var(--mi-coral-dark);
}

.mi-mobile-call-link a {
  display: flex;
  align-items: center;
  min-height: 2.75rem;
  gap: .45rem;
  font-weight: 800;
}

.mi-mobile-call-link__label {
  color: var(--mi-coral-dark);
  font-size: .76rem;
  letter-spacing: .08em;
  text-transform: uppercase;
}

/* Contact is a normal navigation item. Only truthful current state receives
 * the shared marker; the old persistent Contact underline was misleading on
 * every other page. */
.main-navigation .primary-menu-container > ul > li.mi-contact-link > a,
.mobile-navigation .mi-contact-link > a {
  font-weight: 700;
  text-decoration: none;
  text-decoration-thickness: initial;
  text-underline-offset: initial;
}

.main-navigation .primary-menu-container > ul > li.current-menu-item > a,
.main-navigation .primary-menu-container > ul > li.current-menu-ancestor > a,
.main-navigation .primary-menu-container > ul > li.current_page_item > a,
.main-navigation .primary-menu-container > ul > li.current_page_parent > a {
  text-decoration: underline;
  text-decoration-color: var(--mi-coral);
  text-decoration-thickness: .11em;
  text-underline-offset: .28em;
}

.mobile-navigation li.current-menu-item > a,
.mobile-navigation li.current-menu-ancestor > a,
.mobile-navigation li.current_page_item > a,
.mobile-navigation li.current_page_parent > a {
  border-inline-start: 3px solid var(--mi-coral);
  padding-inline-start: .8rem;
}

@media (max-width: 1180px) {
  .mi-header-phone-link { display: none; }
}

/* The direct-contact page owns a dark editorial hero and a contrasting
 * practical rail. The panel is a surface within the hero, not a second page
 * of utility cards. */
.mi-direct-contact {
  background: var(--mi-ink);
  color: var(--mi-white);
}

.mi-direct-contact__layout {
  grid-template-columns: minmax(0, 1.45fr) minmax(19rem, .9fr);
  align-items: center;
  gap: clamp(2.5rem, 7vw, 7rem);
}

.mi-direct-contact .mi-kicker {
  color: var(--mi-coral);
}

.mi-direct-contact h1 {
  max-width: 19ch;
  color: var(--mi-white);
  font-size: clamp(2.35rem, 5.2vw, 4.75rem);
  line-height: .98;
}

.mi-direct-contact__intro {
  max-width: 58ch;
  color: #e2eee7;
}

.mi-direct-contact__local-trust {
  max-width: 48ch;
  margin: 1.5rem 0 0;
  padding: 1rem 1.25rem 1.1rem;
  border-top: 1px solid rgba(226, 238, 231, .28);
  border-inline-start: 3px solid var(--mi-coral);
  background: var(--mi-ink-soft);
  color: #c8dbd0;
  font-size: .98rem;
}

.mi-direct-contact__panel {
  margin-top: 0;
  padding: clamp(1.45rem, 3vw, 2.25rem);
  border: 0;
  border-top: 3px solid var(--mi-coral);
  background: var(--mi-mist);
  box-shadow: none;
}

.mi-direct-contact__panel-label {
  margin: 0 0 1.1rem;
  color: var(--mi-coral-dark);
  font-size: .78rem;
  font-weight: 850;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.mi-direct-contact__choices li,
.mi-direct-contact__choices li + li {
  margin-top: 0;
  padding: .9rem 0;
  border-top: 1px solid var(--mi-line);
}

.mi-direct-contact__choices li:first-child {
  padding-top: .25rem;
  border-top: 0;
}

.mi-direct-contact__choices li:first-child > span {
  color: var(--mi-coral-dark);
}

.mi-direct-contact__choices li:first-child a {
  color: var(--mi-ink);
  font-size: clamp(1.45rem, 2.4vw, 2rem);
}

.mi-direct-contact__choices a {
  display: inline-flex;
  align-items: center;
  min-height: 2.75rem;
}

.mi-direct-contact__supporting {
  margin-top: .9rem;
  padding-top: .9rem;
  color: var(--mi-ink-soft);
}

/* Editorial resource rail: typography and rules carry the navigation; no
 * nested white card wall. */
:where(.mi-related-resources, .mi-contextual-resources) {
  background: var(--mi-mist);
}

.mi-related-resources__grid,
.mi-contextual-resources__grid {
  gap: 0;
  border-top: 1px solid var(--mi-line);
  border-bottom: 1px solid var(--mi-line);
}

.mi-related-resource-card,
.mi-contextual-resources__grid > a {
  min-width: 0;
  min-height: 0;
  padding: clamp(1.25rem, 2.5vw, 2rem) clamp(1rem, 3vw, 2.5rem);
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.mi-related-resource-card + .mi-related-resource-card,
.mi-contextual-resources__grid > a + a {
  border-inline-start: 1px solid var(--mi-line);
}

.mi-related-resource-card__type {
  color: var(--mi-coral-dark);
  font-size: .76rem;
  font-weight: 850;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.mi-related-resource-card h3 {
  margin: .7rem 0 .55rem;
  font-size: clamp(1.35rem, 2.6vw, 2rem);
  line-height: 1.08;
}

.mi-related-resource-card h3 .mi-related-resource-card__link {
  display: block;
  min-height: 2.75rem;
  margin-top: 0;
  padding: 0;
  border: 0;
}

.mi-related-resource-card h3 .mi-action-link__unit {
  align-items: flex-start;
}

.mi-related-resource-card > p:not(.mi-related-resource-card__type) {
  max-width: 38ch;
  color: var(--mi-ink-soft);
}

.mi-related-resource-card:hover,
.mi-related-resource-card:focus-within,
.mi-contextual-resources__grid > a:hover,
.mi-contextual-resources__grid > a:focus-visible {
  border-color: transparent;
  background: rgba(255, 255, 255, .28);
  box-shadow: none;
  transform: none;
}

.mi-related-resource-card .mi-action-link__arrow,
.mi-contextual-resources__grid .mi-action-link__arrow {
  transition: transform var(--mi-motion-fast) ease;
}

.mi-related-resource-card:hover .mi-action-link__arrow,
.mi-related-resource-card:focus-within .mi-action-link__arrow,
.mi-contextual-resources__grid > a:hover .mi-action-link__arrow,
.mi-contextual-resources__grid > a:focus-visible .mi-action-link__arrow {
  transform: translateX(.2rem);
}

/* Premium system pass: the shared rail is an editorial ending, not a pair
 * of table cells. Type, rules and the directional affordance carry the group. */
.mi-related-resources {
  padding-block: clamp(2.4rem, 5vw, 4rem);
  border-block: 1px solid var(--mi-line);
}

.mi-related-resources__grid {
  gap: 0;
  border-top: 1px solid var(--mi-line);
  border-bottom: 1px solid var(--mi-line);
}

.mi-related-resource-card {
  padding: clamp(1.4rem, 3vw, 2.25rem) clamp(1rem, 3.5vw, 3rem) clamp(1.6rem, 3vw, 2.5rem);
}

.mi-related-resource-card:first-child {
  padding-left: 0;
}

.mi-related-resource-card:last-child {
  padding-right: 0;
}

.mi-related-resource-card h3 {
  max-width: 22ch;
  margin: .8rem 0 .7rem;
  font-size: clamp(1.45rem, 2.45vw, 2.15rem);
  letter-spacing: -.025em;
}

.mi-related-resource-card h3 .mi-related-resource-card__link {
  padding-block: .2rem;
  text-decoration-thickness: .08em;
  text-underline-offset: .16em;
}

.mi-related-resource-card > p:not(.mi-related-resource-card__type) {
  max-width: 35ch;
  margin-bottom: 0;
  font-size: .98rem;
  line-height: 1.58;
}

.mi-related-resource-card:focus-within,
.mi-related-resource-card:hover {
  background: transparent;
}

/* The dark hero keeps a clear secondary hierarchy without falling back to a
 * low-contrast muted gray. The selector is a semantic Contact surface. */
.mi-direct-contact__intro,
.mi-direct-contact__local-trust {
  color: #e2eee7;
}

@media (max-width: 820px) {
  .mi-related-resource-card:first-child,
  .mi-related-resource-card:last-child {
    padding-inline: 0;
  }
}

/* West Island surface rhythm and columns are semantic classes emitted by the
 * shared source, not page-ID exceptions. */
.mi-west-island-section--accountable,
.mi-west-island-section--bounded,
.mi-west-island-section--path,
.mi-west-island-section--local {
  background: var(--mi-paper);
}

.mi-west-island-section--proximity,
.mi-west-island-section--faq {
  background: var(--mi-mist);
}

.mi-west-island-section--co-managed {
  background: var(--mi-ink);
  color: var(--mi-white);
}

.mi-west-island-section--co-managed h2,
.mi-west-island-section--co-managed h3 {
  color: var(--mi-white);
}

.mi-west-island-section--co-managed p {
  color: #d5e5dc;
}

.mi-west-island-section--co-managed .mi-action-link--inverse {
  border-color: var(--mi-coral);
  background: var(--mi-coral);
  color: var(--mi-ink);
}

.mi-west-island-section--co-managed .mi-action-link--inverse:hover,
.mi-west-island-section--co-managed .mi-action-link--inverse:focus-visible {
  border-color: var(--mi-white);
  background: var(--mi-white);
  color: var(--mi-ink);
}

.mi-west-island-section--proximity .mi-grid--four,
.mi-west-island-section--local .mi-grid--four {
  gap: 0;
  border-top: 1px solid var(--mi-line);
  border-bottom: 1px solid var(--mi-line);
}

.mi-west-island-section--proximity .mi-grid--four > .wp-block-column,
.mi-west-island-section--local .mi-grid--four > .wp-block-column {
  min-width: 0;
  padding: 1.25rem clamp(.85rem, 2vw, 1.5rem);
}

.mi-west-island-section--proximity .mi-grid--four > .wp-block-column + .wp-block-column,
.mi-west-island-section--local .mi-grid--four > .wp-block-column + .wp-block-column {
  border-inline-start: 1px solid var(--mi-line);
}

.mi-west-island-section--proximity .mi-grid--four h3,
.mi-west-island-section--local .mi-grid--four h3 {
  font-size: clamp(1.15rem, 2vw, 1.55rem);
}

.mi-about-local-presence {
  background: var(--mi-paper);
}

.mi-about-local-presence__intro {
  max-width: 64ch;
  font-size: clamp(1.05rem, 1.6vw, 1.2rem);
}

.mi-about-geography {
  gap: 0;
  margin-top: clamp(1.5rem, 3vw, 2.5rem);
  border-top: 1px solid var(--mi-line);
  border-bottom: 1px solid var(--mi-line);
}

.mi-about-geography__item {
  min-width: 0;
  padding: 1.25rem clamp(.85rem, 2vw, 1.5rem);
}

.mi-about-geography__item + .mi-about-geography__item {
  border-inline-start: 1px solid var(--mi-line);
}

.mi-about-geography__item h3 {
  margin-top: .6rem;
  font-size: clamp(1.1rem, 1.8vw, 1.4rem);
}

.mi-about-local-presence__link {
  margin-top: 1.5rem;
}

@media (max-width: 820px) {
  .mi-related-resource-card + .mi-related-resource-card,
  .mi-contextual-resources__grid > a + a,
  .mi-west-island-section--proximity .mi-grid--four > .wp-block-column + .wp-block-column,
  .mi-west-island-section--local .mi-grid--four > .wp-block-column + .wp-block-column,
  .mi-about-geography__item + .mi-about-geography__item {
    border-inline-start: 0;
    border-top: 1px solid var(--mi-line);
  }

  .mi-direct-contact__layout {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .mi-direct-contact h1 {
    max-width: 17ch;
  }

  .mi-about-geography,
  .mi-west-island-section--proximity .mi-grid--four,
  .mi-west-island-section--local .mi-grid--four {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .mi-related-resource-card,
  .mi-contextual-resources__grid > a {
    padding-inline: 0;
  }

  .mi-about-geography,
  .mi-west-island-section--proximity .mi-grid--four,
  .mi-west-island-section--local .mi-grid--four {
    grid-template-columns: 1fr;
  }

  .mi-about-geography__item,
  .mi-west-island-section--proximity .mi-grid--four > .wp-block-column,
  .mi-west-island-section--local .mi-grid--four > .wp-block-column {
    padding-inline: 0;
  }

  .mi-direct-contact h1 {
    max-width: 15ch;
    font-size: clamp(2.25rem, 11vw, 3.45rem);
  }
}

@media (prefers-reduced-motion: reduce) {
  .mi-related-resource-card .mi-action-link__arrow,
  .mi-contextual-resources__grid .mi-action-link__arrow {
    transition: none;
  }
}

/* Premium studio hardening — shared semantic roles, editorial grids and
 * quieter endings. Content and page families choose the role; no route owns
 * a visual exception here. */
:root {
  --mi-surface-ice: #edf4f0;
  --mi-fg-inverse-primary: #f4f8f2;
  --mi-fg-inverse-secondary: #dbe8df;
  --mi-fg-inverse-muted: #b8cec0;
  --mi-rule-subtle: rgba(16, 44, 44, .16);
  --mi-rule-dark: rgba(228, 238, 231, .2);
}

[data-studio-surface="ice"],
.mi-surface--ice {
  background: var(--mi-surface-ice);
}

:where(
  .mi-direct-contact,
  .mi-editorial-closing,
  .mi-m365-self-check,
  .mi-west-island-section--co-managed,
  .site-footer
) :where(p, li, blockquote, .entry-meta, .mi-editorial-component__support, .mi-footer-grid p) {
  color: var(--mi-fg-inverse-secondary);
}

:where(
  .mi-direct-contact,
  .mi-editorial-closing,
  .mi-m365-self-check,
  .mi-west-island-section--co-managed,
  .site-footer
) :where(h1, h2, h3, h4, strong, .mi-footer-history, .mi-brand) {
  color: var(--mi-fg-inverse-primary);
}

:where(
  .mi-direct-contact,
  .mi-editorial-closing,
  .mi-m365-self-check,
  .mi-west-island-section--co-managed,
  .site-footer
) :where(.entry-meta, .mi-footer-legal, small) {
  color: var(--mi-fg-inverse-muted);
}

.mi-direct-contact .mi-direct-contact__intro,
.mi-direct-contact .mi-direct-contact__local-trust,
.mi-editorial-closing p:last-child,
.mi-west-island-section--co-managed p {
  color: var(--mi-fg-inverse-secondary);
}

.mi-editorial-article .entry-header {
  padding-block: clamp(2.6rem, 5vw, 4.5rem);
}

.mi-editorial-article .entry-title {
  max-width: 24ch;
  font-size: clamp(2.25rem, 5.4vw, 5.1rem);
  line-height: 1;
  letter-spacing: -.055em;
}

.mi-editorial-article .entry-meta,
.mi-editorial-article .entry-meta a {
  color: var(--mi-fg-inverse-secondary);
}

/* A four-item editorial grid is reusable across page families. It earns
 * columns only while the content can keep a comfortable reading measure. */
.entry-content .mi-grid.mi-grid--four {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(1.4rem, 3vw, 3.4rem);
  border: 0;
}

.entry-content .mi-grid.mi-grid--four > .wp-block-column {
  min-width: 0;
  padding: .25rem 0 .4rem clamp(.9rem, 1.8vw, 1.4rem);
  border: 0;
  border-inline-start: 2px solid var(--mi-coral);
  background: transparent;
  box-shadow: none;
}

.entry-content .mi-grid.mi-grid--four > .wp-block-column h3 {
  margin-top: 0;
  font-size: clamp(1.1rem, 1.7vw, 1.45rem);
  line-height: 1.12;
}

.entry-content .mi-grid.mi-grid--four > .wp-block-column p:last-child {
  margin-bottom: 0;
  line-height: 1.58;
}

/* Related resources V3: the rail is carried by type, title, space and one
 * quiet group boundary. It is not a table and it does not need a centre line. */
.mi-related-resources {
  border: 0;
  background: var(--mi-mist);
}

.mi-related-resources__grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1.5rem, 5vw, 5rem);
  border: 0;
  border-top: 1px solid var(--mi-rule-subtle);
}

.mi-related-resource {
  position: relative;
  min-width: 0;
  padding: clamp(1.35rem, 3vw, 2.2rem) 0 0;
  border: 0;
  background: transparent;
}

.mi-related-resource::before {
  display: block;
  width: 2.6rem;
  margin-bottom: 1rem;
  border-top: 2px solid var(--mi-coral);
  content: '';
}

.mi-related-resource__type {
  margin: 0;
  color: var(--mi-coral-dark) !important;
  font-size: .74rem;
  font-weight: 900;
  letter-spacing: .12em;
  line-height: 1.3;
  text-transform: uppercase;
}

.mi-related-resource h3 {
  max-width: 24ch;
  margin: .55rem 0 .55rem;
  font-size: clamp(1.35rem, 2.4vw, 2.05rem);
  line-height: 1.08;
  letter-spacing: -.025em;
}

.mi-related-resource__link {
  display: block;
  min-height: 2.75rem;
  padding: .15rem 0;
  color: var(--mi-ink) !important;
  text-decoration-thickness: .08em;
  text-underline-offset: .16em;
}

.mi-related-resource__excerpt {
  max-width: 38ch;
  margin: 0;
  color: var(--mi-ink-soft);
  font-size: .98rem;
  line-height: 1.58;
}

.mi-related-resource:focus-within,
.mi-related-resource:hover {
  background: rgba(255, 255, 255, .18);
}

.mi-related-resource .mi-action-link__arrow {
  transition: transform var(--mi-motion-fast) ease;
}

.mi-related-resource:focus-within .mi-action-link__arrow,
.mi-related-resource:hover .mi-action-link__arrow {
  transform: translateX(.2rem);
}

/* One footer grouping rule: the group boundary belongs to the next group,
 * while heading underlines and the old contact-specific border are removed. */
.site-footer .mi-footer-grid h2 {
  padding-bottom: 0;
  border-bottom: 0;
}

.site-footer .mi-footer-grid > div + div {
  padding-inline-start: clamp(1.25rem, 3vw, 2.5rem);
  border-inline-start: 1px solid var(--mi-rule-dark);
}

.site-footer .mi-footer-contact {
  padding-left: clamp(1.25rem, 3vw, 2.5rem);
  border-left: 0;
}

.site-footer .mi-footer-grid a {
  color: var(--mi-fg-inverse-primary) !important;
}

.site-footer .mi-footer-grid a:hover,
.site-footer .mi-footer-grid a:focus-visible {
  color: var(--mi-coral) !important;
}

@media (max-width: 1024px) {
  .entry-content .mi-grid.mi-grid--four {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .site-footer .mi-footer-grid > div + div {
    padding-inline-start: 0;
    border-inline-start: 0;
  }

  .site-footer .mi-footer-contact {
    padding-left: 0;
    border-left: 0;
  }
}

@media (max-width: 720px) {
  .mi-editorial-article .entry-header {
    padding-block: 2.25rem 2rem;
  }

  .mi-editorial-article .entry-title {
    max-width: 18ch;
    font-size: clamp(2rem, 9.2vw, 3.2rem);
    line-height: 1.03;
  }

  .entry-content .mi-grid.mi-grid--four {
    grid-template-columns: 1fr;
    gap: 1.45rem;
  }

  .entry-content .mi-grid.mi-grid--four > .wp-block-column {
    padding-block: 0 .15rem;
    padding-inline-start: 1rem;
  }

  .mi-related-resources__grid {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .mi-related-resource {
    padding-block: 1.35rem 1.5rem;
  }

  .mi-related-resource + .mi-related-resource {
    border-top: 1px solid var(--mi-rule-subtle);
  }

  .single-post .post-navigation .nav-links {
    grid-template-columns: 1fr;
    gap: .75rem;
  }

  .single-post .post-navigation .nav-next {
    text-align: left;
  }

  .site-footer .mi-footer-grid > div + div {
    padding-top: 1.25rem;
    border-top: 1px solid var(--mi-rule-dark);
  }
}

@media (prefers-reduced-motion: reduce) {
  .mi-related-resource .mi-action-link__arrow {
    transition: none;
  }
}

/* Article Studio semantic roles. These classes describe editorial meaning;
 * they do not prescribe a card/list choreography or a route-specific skin. */
.mi-editorial-article :where(.mi-article-intro, .mi-article-section) :where(p, ul, ol, blockquote) {
  width: min(100%, var(--mi-reading-max));
  max-width: var(--mi-reading-max);
  margin-inline: auto;
}

.mi-editorial-article .mi-article-section--orientation,
.mi-editorial-article .mi-article-section--checklist,
.mi-editorial-article .mi-article-section--decision {
  background: var(--mi-paper);
}

.mi-editorial-article .mi-article-section--evidence,
.mi-editorial-article .mi-article-section--caution {
  background: var(--mi-mist);
}

.mi-editorial-article .mi-article-section--caution {
  box-shadow: inset .25rem 0 0 var(--mi-coral);
}

.mi-editorial-article .mi-article-section--ice,
.mi-editorial-article [data-studio-surface="ice"] {
  background: var(--mi-surface-ice);
}

.mi-editorial-article .mi-article-section--next-step {
  background: var(--mi-ink);
  color: var(--mi-fg-inverse-primary);
}

.mi-editorial-article .mi-article-section--next-step :where(h2, h3, h4, strong) {
  color: var(--mi-fg-inverse-primary);
}

.mi-editorial-article .mi-article-section--next-step :where(p, li) {
  color: var(--mi-fg-inverse-secondary);
}

@media (max-width: 720px) {
  .mi-editorial-article :where(.mi-article-intro, .mi-article-section) :where(p, ul, ol, blockquote) {
    width: 100%;
  }

  .mi-editorial-article .mi-article-section--caution {
    box-shadow: inset .2rem 0 0 var(--mi-coral);
  }
}
