/*
Theme Name: neomesh. native
Theme URI: https://example.com/neomesh-native
Author: neomesh.
Description: Ein innovatives, maßgeschneidertes Block-Theme für neomesh. – nativ mit WordPress entwickelt, schnell, zugänglich und flexibel.
Version: 1.2.25
Requires at least: 6.7
Requires PHP: 8.0
Text Domain: neomesh-native
*/

:root {
  --nm-radius: 1.25rem;
  --nm-shadow: 0 18px 50px rgb(15 23 42 / 8%);
  --nm-ui-bg: #fff;
  --nm-ui-surface: #fff;
  --nm-ui-muted: #f7f8fa;
  --nm-ui-text: #101828;
  --nm-ui-text-muted: #475467;
  --nm-ui-border: #d0d5dd;
  --nm-ui-accent: #2f6fed;
  --nm-ui-accent-soft: #e8f0ff;
  --nm-ui-button: #101828;
  --nm-ui-button-text: #fff;
}
.nm-idle-light { position:fixed; inset:0; z-index:30; pointer-events:none; }
html { color-scheme: light dark; }
html { scroll-behavior: smooth; }
.nm-back-to-top { position: fixed; right: max(1.25rem, env(safe-area-inset-right)); bottom: max(1.25rem, env(safe-area-inset-bottom)); z-index: 80; display: grid; width: 3rem; height: 3rem; padding: 0; place-items: center; color: var(--nm-ui-button-text); background: var(--nm-ui-button); border: 1px solid color-mix(in srgb, currentColor 22%, transparent); border-radius: 50%; box-shadow: 0 .75rem 2rem rgb(15 23 42 / 18%); cursor: pointer; opacity: 0; visibility: hidden; pointer-events: none; transform: translateY(.75rem); transition: opacity .22s ease, transform .22s ease, visibility .22s; }
.nm-back-to-top.is-visible { opacity: 1; visibility: visible; pointer-events: auto; transform: translateY(0); }
.nm-back-to-top:hover { transform: translateY(-2px); }
.nm-back-to-top:focus-visible { outline: 3px solid var(--nm-ui-accent); outline-offset: 3px; }
.nm-section-navigation { position: fixed; top: 50%; right: 0; z-index: 40; transform: translateY(-50%); }
.nm-section-navigation ol { display:flex; flex-direction:column; gap:0; margin:0; padding:0; list-style:none; }
/* Keep each 24px navigation target clear of its neighbours. */
.nm-section-navigation li { position:relative; height:24px; }
.nm-section-navigation__button { position:absolute; right:0; top:50%; display:block; width:56px; height:24px; padding:0; border:0; background:transparent; cursor:pointer; transform:translateY(-50%); }
.nm-section-navigation.is-on-dark .nm-section-navigation__button { color: #f8fafc; }
.nm-section-navigation__line { position:absolute; right:0; top:50%; display:block; width:20px; height:2px; margin-top:-1px; background:#667085; border-radius:0; opacity:1; transition:width .18s ease,background-color .18s ease; }
.nm-section-navigation__button:not(.is-active) .nm-section-navigation__line { background:#667085; }
.nm-section-navigation.is-on-dark .nm-section-navigation__button:not(.is-active) .nm-section-navigation__line { background:#cbd5e1; }
html[data-nm-theme="dark"] .nm-section-navigation__button { color:#f8fafc; }
html[data-nm-theme="dark"] .nm-section-navigation__button:not(.is-active) .nm-section-navigation__line { background:#cbd5e1; }
.nm-section-navigation__button:is(:hover, .is-active) .nm-section-navigation__line { width:40px; background:#101828; opacity:1; }
html[data-nm-theme="dark"] .nm-section-navigation__button:is(:hover,.is-active) .nm-section-navigation__line,.nm-section-navigation.is-on-dark .nm-section-navigation__button:is(:hover,.is-active) .nm-section-navigation__line { background:#f8fafc; }
.nm-section-navigation__button:focus-visible { outline: 2px solid var(--nm-ui-accent); outline-offset: -4px; }
@media (max-width: 781px) { .nm-section-navigation { display: none; } }
@media (prefers-reduced-motion: reduce) { .nm-section-navigation__line { transition: none; } }
.nm-typewriter { display: grid; max-width: 100%; margin-block: 1.25rem; }
.nm-typewriter__measure, .nm-typewriter__visual { grid-area: 1 / 1; white-space: pre-wrap; }
.nm-typewriter__measure { visibility: hidden; }
.nm-typewriter__visual::after { display: none; width: 1px; height: 1.05em; margin-left: .08em; background: currentColor; content: ""; vertical-align: -.1em; }
.nm-typewriter.is-animating .nm-typewriter__visual::after { display: inline-block; animation: nm-typewriter-caret .9s steps(1, end) infinite; }
@keyframes nm-typewriter-caret { 50% { opacity: 0; } }
@media (prefers-reduced-motion: reduce) { .nm-typewriter.is-animating .nm-typewriter__visual::after { animation: none; } }
mark.nm-text-highlight, mark[class*="nm-text-highlight--"] { padding: .04em .16em .09em; color: inherit; -webkit-box-decoration-break: clone; box-decoration-break: clone; }
mark.nm-text-highlight--blue { background: #e8f0ff; }
mark.nm-text-highlight--forest { background: #e8f2ec; }
mark.nm-text-highlight--clay { background: #f4e9e3; }
mark.nm-text-highlight--sand { background: #e9dfca; }
.home .nm-typewriter .nm-home-clarity-highlight { background: #d7e4ff; }
em.nm-heading-accent { color: var(--nm-ui-accent); font-style: italic; }
.nm-dark-panel em.nm-heading-accent { color: var(--nm-ui-accent) !important; }
.nm-dark-panel .wp-block-button__link,
.nm-dark-panel .wp-block-button__link:visited { color: #101828 !important; background: #fff !important; border-color: #fff !important; }
.nm-dark-panel .wp-block-button__link:is(:hover, :focus-visible) { color: #101828 !important; background: #e8f0ff !important; border-color: #e8f0ff !important; }
.nm-dark-panel .wp-block-button__link:focus-visible { outline-color: #2f6fed; }
html[data-nm-theme="dark"] mark.nm-text-highlight--blue { background: #172554; }
html[data-nm-theme="dark"] mark.nm-text-highlight--forest { background: #163327; }
html[data-nm-theme="dark"] mark.nm-text-highlight--clay { background: #3b2823; }
html[data-nm-theme="dark"] mark.nm-text-highlight--sand { background: #3b3425; }
html[data-nm-theme="dark"] :is(.nm-service-card, .nm-capability-list > *, .nm-hybrid-pillars > .wp-block-column, .nm-hybrid-thinking .wp-block-column, .nm-proof-section .wp-block-column, .nm-php-support .wp-block-column, .nm-hosting-features .wp-block-column, .nm-privacy-section, .nm-services-section--evidence .nm-worldwide-note) { border-top-color: #cbd5e1; }
html[data-nm-theme="dark"] .nm-dark-panel .wp-block-button__link,
html[data-nm-theme="dark"] .nm-dark-panel .wp-block-button__link:visited { color: #101828 !important; background: #f8fafc !important; border-color: #f8fafc !important; }
html[data-nm-theme="dark"] .nm-dark-panel .wp-block-button__link:is(:hover, :focus-visible) { color: #101828 !important; background: #d7e4ff !important; border-color: #d7e4ff !important; }
html[data-nm-theme="dark"] .nm-dark-panel .wp-block-button__link:focus-visible { outline-color: #8fb5ff; }
@media (prefers-color-scheme: dark) {
  html:not([data-nm-theme]) mark.nm-text-highlight--blue { background: #172554; }
  html:not([data-nm-theme]) mark.nm-text-highlight--forest { background: #163327; }
  html:not([data-nm-theme]) mark.nm-text-highlight--clay { background: #3b2823; }
  html:not([data-nm-theme]) mark.nm-text-highlight--sand { background: #3b3425; }
  html:not([data-nm-theme]) :is(.nm-service-card, .nm-capability-list > *, .nm-hybrid-pillars > .wp-block-column, .nm-hybrid-thinking .wp-block-column, .nm-proof-section .wp-block-column, .nm-php-support .wp-block-column, .nm-hosting-features .wp-block-column, .nm-privacy-section, .nm-services-section--evidence .nm-worldwide-note) { border-top-color: #cbd5e1; }
  html:not([data-nm-theme]) .nm-dark-panel .wp-block-button__link,
  html:not([data-nm-theme]) .nm-dark-panel .wp-block-button__link:visited { color: #101828 !important; background: #f8fafc !important; border-color: #f8fafc !important; }
  html:not([data-nm-theme]) .nm-dark-panel .wp-block-button__link:is(:hover, :focus-visible) { color: #101828 !important; background: #d7e4ff !important; border-color: #d7e4ff !important; }
  html:not([data-nm-theme]) .nm-dark-panel .wp-block-button__link:focus-visible { outline-color: #8fb5ff; }
}
body { text-rendering: optimizeLegibility; font-kerning: normal; font-variant-numeric: proportional-nums; letter-spacing: -.006em; }
header.wp-block-template-part { position: relative; z-index: 20; }
header.wp-block-template-part > header.wp-block-group { position: relative; background: rgb(255 255 255 / 78%); -webkit-backdrop-filter: blur(10px) saturate(135%); backdrop-filter: blur(10px) saturate(135%); }
@media (min-width: 782px) {
  header.wp-block-template-part { position: sticky; top: var(--wp-admin--admin-bar--height, 0); transition: transform .28s ease, box-shadow .28s ease; }
  header.wp-block-template-part.nm-header-hidden { transform: translateY(calc(-100% - var(--wp-admin--admin-bar--height, 0px))); }
}
:where(p, li, blockquote) { hyphens: auto; overflow-wrap: break-word; }
:where(h1, h2, h3) { font-family: var(--wp--preset--font-family--neomesh-serif); text-wrap: balance; }
:where(h1, h2) em { font-style: italic; font-weight: 400; }
.wp-block-post-content h1 { max-inline-size: 16ch; }
.wp-block-post-content h2 { max-inline-size: 25ch; font-size: clamp(1.9rem, 1.35rem + 1.9vw, 3.15rem); }
.wp-block-post-content h3 { max-inline-size: 34ch; font-family: var(--wp--preset--font-family--neomesh-sans); font-size: clamp(1.15rem, 1.03rem + .55vw, 1.5rem); font-weight: 700; letter-spacing: -.022em; }
.wp-block-post-content > p:first-child:not(.has-small-font-size) { font-size: var(--wp--preset--font-size--lead); line-height: 1.55; color: var(--wp--preset--color--slate); }
.wp-block-post-content { width: min(calc(100% - clamp(2rem, 6vw, 6rem)), var(--wp--style--global--wide-size)); margin-inline: auto; }
.home .wp-block-post-content { width: 100%; max-width: none; }
.page-id-6 .wp-block-post-content { width: 100%; max-width: none; }
.page-id-6 .wp-block-post-content > .alignfull { width: 100vw; max-width: 100vw; margin-left: calc(50% - 50vw); }
.page-id-6 .wp-block-post-content > .nm-services-intro { margin-block: clamp(3rem, 8vw, 8rem) clamp(4rem, 10vw, 10rem); }
.nm-services-intro > :where(h2, p) { max-width: 58rem; }
.nm-services-intro h2 { margin-block: .35rem 1.5rem; font-size: clamp(2.8rem, 5vw, 5.6rem); line-height: .98; }
.nm-services-intro .has-lead-font-size { max-width: 49rem; color: var(--nm-ui-text); }
.nm-services-section { padding-block: clamp(4rem, 9vw, 9rem); }
.nm-services-section__heading { max-width: var(--wp--style--global--wide-size); margin-bottom: clamp(2.5rem, 5vw, 5rem); }
.nm-services-section__heading > :where(h2, p) { max-width: 54rem; }
.nm-services-section__heading h2,
.nm-services-section--evidence h2,
.nm-services-cta h2 { margin-block: .35rem 1.25rem; font-size: clamp(2.25rem, 3.4vw, 4.3rem); line-height: 1; }
.nm-services-section--architecture { background: var(--nm-ui-muted); border-block: 1px solid var(--nm-ui-border); }
.nm-services-section--communication { background: var(--nm-ui-bg); }
.nm-services-section--process { background: var(--nm-ui-accent-soft); border-block: 1px solid color-mix(in srgb, var(--nm-ui-accent) 24%, var(--nm-ui-border)); }
.nm-services-section--projects { padding-block: clamp(3.5rem, 7vw, 7rem); color: #f8fafc; background: #101828; }
.page-id-6 .nm-services-section { border-block: 0; }
.nm-services-section--projects a { color: #d7e4ff; }
.nm-services-grid { gap: clamp(1.25rem,3vw,3rem); margin-top: 0; border-top: 0; }
.nm-services-grid > .wp-block-column { display: flex; margin-left: 0 !important; }
.nm-services-card { display: flex; width: 100%; min-height: 100%; padding: clamp(1.5rem, 3vw, 2.75rem) 0; flex-direction: column; border: 0; border-top: 2px solid #000; border-radius: 0; }
.nm-services-card h3 { margin: 0 0 1.1rem; font-family: var(--wp--preset--font-family--neomesh-serif); font-size: clamp(1.55rem, 1.2rem + 1vw, 2.3rem); line-height: 1.08; }
.nm-services-card p { margin-block: 0 .95rem; }
.nm-services-card p:last-child { margin-bottom: 0; }
.nm-services-section--process .nm-services-grid { border-color: color-mix(in srgb, var(--nm-ui-accent) 32%, var(--nm-ui-border)); }
.nm-services-section--process .nm-services-card { border-color: #000; }
.nm-services-section--evidence { margin-block: clamp(4rem, 9vw, 9rem); padding-block: clamp(3rem, 6vw, 6rem); border-block: 1px solid var(--nm-ui-border); }
.nm-services-section--evidence > :where(h2, p) { max-width: 58rem; }
.nm-services-section--evidence .nm-worldwide-note { max-width: 52rem; margin-top: clamp(2rem, 4vw, 4rem); padding-top: 1.25rem; border-top: 2px solid var(--nm-ui-text); }
.nm-services-cta { margin-block: clamp(4rem, 9vw, 9rem); padding: clamp(2.25rem, 5vw, 5rem); border-left: 3px solid var(--nm-ui-accent); background: var(--nm-ui-muted); }
.nm-services-cta > :where(h2, p) { max-width: 48rem; }
.nm-services-cta .wp-block-buttons { margin-top: 1.75rem; }
html[data-nm-theme="dark"] .nm-services-section--projects { color: #f8fafc; background: #080d17; }
html[data-nm-theme="dark"] .nm-services-section--projects a { color: #d7e4ff; }
@media (prefers-color-scheme: dark) {
  html:not([data-nm-theme]) .nm-services-section--projects { color: #f8fafc; background: #080d17; }
  html:not([data-nm-theme]) .nm-services-section--projects a { color: #d7e4ff; }
}
@media (max-width: 781px) {
  .page-id-6 .wp-block-post-content > .nm-services-intro { margin-block: var(--wp--preset--spacing--l) var(--wp--preset--spacing--xl); }
  .nm-services-intro h2 { font-size: clamp(2.35rem, 10vw, 3.4rem); overflow-wrap: normal; word-break: normal; hyphens: none; }
  .nm-services-section :is(h2, h3), .nm-services-cta h2 { overflow-wrap: normal; word-break: normal; hyphens: none; }
  .nm-services-card h3 { hyphens: manual; }
  .nm-services-section { padding-block: var(--wp--preset--spacing--xl); }
  .nm-services-grid > .wp-block-column { display: block; }
  .nm-services-card { padding: 1.5rem 0; border-right: 0; }
  .nm-services-section__heading { margin-bottom: 2.25rem; }
  .nm-services-cta { margin-block: var(--wp--preset--spacing--xl); padding: 1.5rem; }
}
.single-post .nm-article-single { margin-block-start: 0; }
.single-post .nm-article-hero {
  position: relative;
  display: grid;
  min-height: clamp(32rem, 82svh, 54rem);
  margin-top: calc(-1 * var(--nm-header-height, 6rem));
  overflow: hidden;
  isolation: isolate;
  color: #fff;
  background: #101828;
}
.single-post .nm-article-hero__media,
.single-post .nm-article-hero__shade { position: absolute; inset: 0; }
.single-post .nm-article-hero__media { z-index: -2; }
.single-post .nm-article-hero__image { display: block; width: 100%; height: 100%; object-fit: cover; }
.single-post .nm-article-hero__shade { z-index: -1; background: linear-gradient(90deg, rgb(8 13 23 / 79%) 0%, rgb(8 13 23 / 52%) 50%, rgb(8 13 23 / 20%) 100%); }
.single-post .nm-article-hero__content { display: flex; width: min(100%, var(--wp--style--global--wide-size)); padding: calc(var(--nm-header-height, 6rem) + clamp(2rem, 8vh, 6rem)) clamp(1.25rem, 4vw, 4rem) clamp(3rem, 9vh, 7rem); align-items: end; }
.single-post .nm-article-hero__inner { width: min(100%, 62rem); }
.single-post .nm-article-hero .nm-breadcrumbs { margin-top: 0; margin-bottom: clamp(2rem, 6vh, 5rem); color: rgb(255 255 255 / 84%); }
.single-post .nm-article-hero .nm-breadcrumbs a { color: inherit; }
.single-post .nm-article-hero .nm-breadcrumbs a:hover { color: #fff; }
.single-post .nm-article-hero__date { margin: 0 0 .75rem; color: rgb(255 255 255 / 82%); font-size: .88rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.single-post .nm-article-hero__title { max-width: 13ch; margin: 0; color: #fff; font-family: var(--wp--preset--font-family--neomesh-serif); font-size: clamp(3rem, 7vw, 7.25rem); font-weight: 600; line-height: .95; letter-spacing: -.04em; text-wrap: balance; }
.single-post .nm-article-hero--fallback { min-height: 0; margin-top: 0; color: var(--nm-ui-text); background: var(--nm-ui-bg); }
.single-post .nm-article-hero--fallback .nm-article-hero__content { min-height: 0; padding-block: var(--wp--preset--spacing--l) var(--wp--preset--spacing--m); }
.single-post .nm-article-hero--fallback .nm-breadcrumbs { margin-bottom: var(--wp--preset--spacing--l); color: var(--nm-ui-text-muted); }
.single-post .nm-article-hero--fallback .nm-breadcrumbs a:hover { color: var(--nm-ui-text); }
.single-post .nm-article-hero--fallback .nm-article-hero__date { color: var(--nm-ui-text-muted); }
.single-post .nm-article-hero--fallback .nm-article-hero__title { color: var(--nm-ui-text); }
.nm-page-hero {
  position:relative;
  display:grid;
  min-height:clamp(34rem, 84svh, 58rem);
  margin-top:calc(-1 * var(--nm-header-height, 6rem));
  overflow:hidden;
  isolation:isolate;
  color:#fff;
  background:#101828;
}
.nm-page-hero__media,
.nm-page-hero__shade { position:absolute; inset:0; }
.nm-page-hero__media { z-index:-2; }
.nm-page-hero__image { display:block; width:100%; height:100%; object-fit:cover; }
.nm-page-hero__shade { z-index:-1; background:linear-gradient(90deg, rgb(8 13 23 / 84%) 0%, rgb(8 13 23 / 57%) 52%, rgb(8 13 23 / 22%) 100%); }
.nm-page-hero__content { display:flex; width:min(100%, var(--wp--style--global--wide-size)); padding:calc(var(--nm-header-height, 6rem) + clamp(2rem, 8vh, 6rem)) clamp(1.25rem, 4vw, 4rem) clamp(3rem, 9vh, 7rem); align-items:end; }
.nm-page-hero__inner { width:min(100%, 62rem); }
.nm-page-hero .nm-breadcrumbs { margin-top:0; margin-bottom:clamp(2rem, 6vh, 5rem); color:rgb(255 255 255 / 84%); }
.nm-page-hero .nm-breadcrumbs a { color:inherit; }
.nm-page-hero .nm-breadcrumbs a:hover { color:#fff; }
.nm-page-hero__title { max-width:13ch; margin:0; color:#fff; font-family:var(--wp--preset--font-family--neomesh-serif); font-size:clamp(3rem, 7vw, 7.25rem); font-weight:600; line-height:.95; letter-spacing:-.04em; text-wrap:balance; }
@media (min-width:782px) {
  .nm-page-hero__media { overflow:hidden; }
  .nm-page-hero__image { will-change:transform; transform:translate3d(0, var(--nm-page-hero-parallax-y, 0px), 0) scale(1.065); }
}
.nm-page-heading { width:min(100% - 2.5rem, var(--wp--style--global--wide-size)); margin:var(--wp--preset--spacing--m) auto 0; }
.nm-page-heading__title { max-width:16ch; margin-top:var(--wp--preset--spacing--m); font-size:var(--wp--preset--font-size--display); }
@media (max-width:781px) {
  .nm-page-hero { min-height:max(34rem, 100svh); }
  .nm-page-hero__shade { background:linear-gradient(180deg, rgb(8 13 23 / 62%) 0%, rgb(8 13 23 / 22%) 34%, rgb(8 13 23 / 86%) 100%); }
  .nm-page-hero__content { padding-top:calc(var(--nm-header-height, 5rem) + 2rem); padding-bottom:max(2.5rem, env(safe-area-inset-bottom)); }
  .nm-page-hero .nm-breadcrumbs { margin-bottom:auto; padding-bottom:clamp(5rem, 17vh, 9rem); }
  .nm-page-hero__title { max-width:11ch; font-size:clamp(2.8rem, 13vw, 4.8rem); }
  .nm-page-heading { width:calc(100% - 2rem); }
}
@media (max-width: 781px) {
  .single-post .nm-article-hero { min-height: max(34rem, 100svh); }
  .single-post .nm-article-hero__shade { background: linear-gradient(180deg, rgb(8 13 23 / 57%) 0%, rgb(8 13 23 / 17%) 34%, rgb(8 13 23 / 81%) 100%); }
  .single-post .nm-article-hero__content { padding-top: calc(var(--nm-header-height, 5rem) + 2rem); padding-bottom: max(2.5rem, env(safe-area-inset-bottom)); }
  .single-post .nm-article-hero .nm-breadcrumbs { margin-bottom: auto; padding-bottom: clamp(5rem, 17vh, 9rem); }
  .single-post .nm-article-hero__title { max-width: 11ch; font-size: clamp(2.8rem, 13vw, 4.8rem); }
  .single-post .nm-article-hero--fallback { min-height: 0; }
  .single-post .nm-article-hero--fallback .nm-article-hero__content { padding-top: var(--wp--preset--spacing--m); padding-bottom: var(--wp--preset--spacing--m); }
  .single-post .nm-article-hero--fallback .nm-breadcrumbs { padding-bottom: 0; }
}
.wp-block-post-content > :where(p, ul, ol, blockquote) { max-inline-size: 82ch; }
.wp-block-post-content > :where(h2, h3, h4, p, ul, ol, blockquote):not(.alignwide):not(.alignfull) { margin-inline: auto; }
.wp-block-post-content > :where(.wp-block-group, .wp-block-columns, .wp-block-cover, .wp-block-media-text):not(.alignfull) { width: 100%; max-width: var(--wp--style--global--wide-size); margin-inline: auto; }
.wp-block-post-content > .has-text-align-center { margin-inline: auto; }
.wp-block-post-content > .alignwide { width: 100%; max-width: var(--wp--style--global--wide-size); }
.wp-block-post-content > .alignfull { max-width: none; }
/* Magazine: one stable reading column, with explicitly wide media allowed. */
.single-post .wp-block-post-content { display:block; width:min(calc(100% - 2.5rem), 76rem); padding-block:clamp(2rem,4vw,4rem); }
.single-post .wp-block-post-content > *,
.single-post .wp-block-post-content > .nm-editorial-post > *,
.single-post .wp-block-post-content > .nm-article-reading-column > * { box-sizing:border-box; width:100%; max-width:76rem; max-inline-size:76rem; margin-inline:auto; }
.single-post .wp-block-post-content > :is(.nm-editorial-post,.nm-article-reading-column) { width:100%; max-width:76rem; padding-inline:0 !important; }
.single-post .wp-block-post-content :is(h2,h3,h4) { max-inline-size:none; width:auto; text-wrap:pretty; }
.single-post .wp-block-post-content > :is(h2,h3,h4),
.single-post .wp-block-post-content > :is(.nm-editorial-post,.nm-article-reading-column) > :is(h2,h3,h4) { width:100%; max-width:76rem; margin-top:2.5rem; margin-bottom:1rem; }
.single-post .wp-block-post-content > :is(.alignwide,.alignfull,.wp-block-gallery,.wp-block-cover,.wp-block-columns,.nm-magazine-media):not(.nm-editorial-post) { max-width:76rem; }
.single-post .wp-block-post-content .nm-article-reading-column > * { margin-inline:auto !important; }
.single-post .wp-block-post-content .wp-block-quote { margin-block:2rem; }
.single-post .wp-block-post-content .wp-block-buttons { margin-block:2rem; }
.single-post .nm-article-hero__inner { width:100%; }
.single-post .nm-article-hero__title { width:100%; max-width:none; text-wrap:wrap; font-size:clamp(2.75rem,5.3vw,5.5rem); }

/* International company-overview landing pages. */
.nm-language-landing { width: 100vw; max-width: none; margin-inline: calc(50% - 50vw); padding: clamp(3.5rem, 8vw, 8rem) max(1.25rem, calc((100vw - 1240px) / 2)); }
.nm-language-landing > :where(.wp-block-columns, .wp-block-buttons, h2, p) { max-width: 1240px; margin-inline: auto; }
.nm-language-landing__intro { color: #f8fafc; background: #101828; }
.nm-language-landing__intro .nm-eyebrow, .nm-language-landing__section--ink .nm-eyebrow { color: #a8c3ff; }
.nm-language-landing h2 { max-width: 18ch; margin-top: 0; font-size: clamp(2.25rem, 5.3vw, 5.25rem); line-height: .98; text-wrap: balance; }
.nm-language-landing h3 { margin-top: 0; font-size: clamp(1.25rem, 2vw, 1.7rem); }
.nm-language-landing .wp-block-columns { gap: clamp(1.5rem, 4vw, 4rem); margin-top: clamp(2rem, 5vw, 4rem); }
.nm-language-landing .wp-block-column { padding-top: 1.1rem; border-top: 2px solid currentColor; }
.nm-language-landing .wp-block-button { margin-top: 1.25rem; }
.nm-language-landing__section--blue { background: #e8f0ff; }
.nm-language-landing__section--ink { color: #f8fafc; background: #101828; }
.nm-language-landing__section--forest { background: #e6f0e7; }
.nm-language-landing__section--sand { background: #f4eadf; }
html[data-nm-theme="dark"] .nm-language-landing__section--blue { color: #f8fafc; background: #1b2948; }
html[data-nm-theme="dark"] .nm-language-landing__section--forest { color: #f8fafc; background: #17362d; }
html[data-nm-theme="dark"] .nm-language-landing__section--sand { color: #f8fafc; background: #44332a; }
@media (max-width: 781px) { .nm-language-landing { padding-block: clamp(3.5rem, 12vw, 5rem); } .nm-language-landing h2 { font-size: clamp(2rem, 10vw, 3.25rem); } }

/* Search results retain the editorial list; only the empty state receives its own calm layout. */
.nm-search-empty { max-width: 52rem; border-top: 2px solid currentColor; }
.nm-search-empty h2 { max-width: 20ch; margin-top: 0; }
.nm-search-empty .wp-block-search { max-width: 38rem; margin-block: 2rem; }
.nm-search-empty .wp-block-search__input { min-height: 3rem; border: 1px solid currentColor; border-radius: 0; background: transparent; }
.nm-search-empty .wp-block-search__button { min-height: 3rem; margin-left: .5rem; border-radius: 0; }
html[data-nm-theme="dark"] .nm-search-result { border-bottom-color: #cbd5e1 !important; }

/* Retained in the editor for future use; intentionally not published on Eigenprojekte. */
.page-id-67 .nm-eigenprojekte-coefficient { display: none; }
.page-id-9 .nm-imprint { max-width: var(--wp--style--global--wide-size); margin: clamp(2rem,5vw,4rem) auto; }
.page-id-9 .nm-imprint-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(2rem,6vw,6rem); }
.page-id-9 .nm-imprint :is(section,.nm-imprint__legal) { padding-top:1.25rem; border-top:2px solid currentColor; }
.page-id-9 .nm-imprint h2 { margin-top:0; font-size:clamp(1.25rem,2vw,1.7rem); }
.page-id-9 .nm-imprint__legal { max-width:52rem; margin-top:clamp(3rem,6vw,5rem); }
@media(max-width:781px){.page-id-9 .nm-imprint-grid{grid-template-columns:1fr;gap:2.5rem}}

/* Content page: editorial service sections. */
.nm-screen-section { box-sizing:border-box; display:grid !important; width:100vw; min-height:100svh; max-width:none; margin:0 calc(50% - 50vw); padding:clamp(5.5rem,10vh,9rem) max(1.25rem,calc((100vw - 1100px)/2)) !important; align-items:center; scroll-snap-align:start; scroll-snap-stop:normal; scroll-margin-top:var(--nm-header-height, 0px); }
.nm-screen-section > .wp-block-group { width:min(100%,70rem); margin:auto; padding-inline:0 !important; }
/* Contact and communication: retain readable text measures but let each chapter use the theme's alignwide canvas. */
:is(.page-id-8,.page-id-57) .nm-screen-section { margin-block:0; padding-inline:max(1.25rem,calc((100vw - var(--wp--style--global--wide-size))/2)) !important; }
:is(.page-id-8,.page-id-57) .nm-screen-section > .wp-block-group { width:min(100%,var(--wp--style--global--wide-size)); max-width:none !important; margin-inline:auto; }
:is(.page-id-8,.page-id-57) .nm-screen-section > .wp-block-group > :where(:not(.alignleft):not(.alignright):not(.alignfull)) { max-width:none; }
.page-id-8 .nm-contact-intro { color:#f8fafc; background:#101828; }
.page-id-8 .nm-contact-intro a:not(.wp-block-button__link) { color:#d7e4ff; }
.page-id-8 .nm-office-hours { background:#e8f0ff; }
.page-id-8 .nm-proof-section { margin-block:0; padding-block:clamp(5.5rem,10vh,9rem); border:0; background:#f4eadf; }
.page-id-8 .nm-contact-form-section { min-height:auto; align-items:start; background:#e6f0e7; }
.page-id-8 .neomesh-contact { border-color:#667085; }
.page-id-8 .neomesh-contact :is(input,textarea) { border-color:#667085; }
.page-id-57 .nm-communication-intro { background:#e8f0ff; }
.page-id-57 .nm-communication-services { background:#e6f0e7; }
.page-id-57 .nm-moderation-workshops { border:0; border-radius:0; box-shadow:none; background:#f4eadf; }
:is(.page-id-8,.page-id-57) .nm-screen-section:not(.nm-dark-panel) em.nm-heading-accent { color:#1e4b9f; }
:is(.page-id-8,.page-id-57) .nm-dark-panel em.nm-heading-accent { color:#a8c3ff !important; }
/* Advisory page: full-bleed chapters with a deliberately restrained reading column. */
.page-id-464 .nm-screen-section { width:100vw; max-width:none; margin-inline:calc(50% - 50vw); padding-inline:max(1.25rem,calc((100vw - 1100px)/2)) !important; }
.page-id-464 .nm-screen-section > .wp-block-group { width:min(100%,70rem); margin-inline:auto; }
.page-id-464 .nm-advisory-intro { color:#f8fafc; background:#101828; }
.page-id-464 .nm-advisory-intro .nm-eyebrow { color:#a8c3ff; }
.page-id-464 .nm-screen-section:nth-of-type(2) { background:var(--nm-ui-muted); }
.page-id-464 .nm-advisory-process { background:var(--nm-ui-surface); }
.page-id-464 .nm-screen-section:nth-of-type(4) { background:var(--nm-ui-accent-soft); }
.page-id-464 .nm-advisory-fields { background:#f4eadf; }
.page-id-464 .nm-screen-section:last-child { color:#f8fafc; background:#101828; }
.page-id-464 .nm-screen-section:last-child .wp-block-button__link { color:#101828; background:#fff; border-color:#fff; }
@media (max-width:781px) { .page-id-464 .nm-screen-section { margin-inline:calc(50% - 50vw); padding-inline:1.25rem !important; } }
.nm-screen-section h2 { max-width:19ch; margin-top:0; font-size:clamp(2.1rem,5vw,4.75rem); line-height:1; text-wrap:balance; }
.nm-screen-section > .wp-block-group > :is(p,ul,ol) { max-width:58rem; }
.nm-screen-section .wp-block-list { display:grid; gap:.55rem; padding-left:1.25rem; }
.nm-screen-section .wp-block-button__link { display:inline-flex; margin-top:1rem; border-radius:0; }
.page-id-29 .entry-content { margin-block-start: 0; }
.page-id-29 .nm-content-section,
.nm-service-page > .nm-service-section { box-sizing:border-box; display:grid; width:100vw; min-height:100svh; max-width:none; margin:0 calc(50% - 50vw); padding:clamp(5.5rem,10vh,9rem) max(1.25rem,calc((100vw - 1100px)/2)); align-items:center; }
.page-id-29 .nm-content-section,
.nm-service-page > .nm-service-section { scroll-snap-align:start; scroll-snap-stop:normal; scroll-margin-top:var(--nm-header-height, 0px); }
.page-id-29 .nm-content-section > div { max-width:70rem; margin:auto; }
.nm-service-page > .nm-service-section > div { width:min(100%,70rem); margin:auto; }
.page-id-29 .nm-content-section h2 { max-width:19ch; margin-top:0; font-size:clamp(2.1rem,5vw,4.75rem); line-height:1; text-wrap:balance; }
.page-id-29 .nm-content-section h1,
.nm-service-page h1,
.nm-service-page h2 { max-width:19ch; margin-top:0; font-size:clamp(2.1rem,5vw,4.75rem); line-height:1; text-wrap:balance; }
.page-id-29 .nm-content-section p { max-width:58rem; }
.nm-service-page p,
.nm-service-page ul { max-width:58rem; }
.nm-service-page ul { display:grid; gap:.55rem; padding-left:1.25rem; }
.nm-service-page .nm-service-eyebrow { margin-bottom:var(--wp--preset--spacing--s); font-size:.78rem; font-weight:750; letter-spacing:.12em; text-transform:uppercase; }
.nm-service-page .nm-service-section--intro,.nm-service-section--intro { color:#f8fafc; background:#101828; }
.nm-service-page .nm-service-section--intro .nm-service-eyebrow,.nm-service-section--intro .nm-service-eyebrow { color:#a8c3ff; }
.nm-service-page .nm-service-section--soft-blue,.nm-service-section--soft-blue { background:#e8f0ff; }
.nm-service-page .nm-service-section--sand,.nm-service-section--sand { background:#f4eadf; }
.nm-service-page .nm-service-section--forest,.nm-service-section--forest { background:#e6f0e7; }
.nm-service-page .nm-service-section--ink,.nm-service-section--ink { color:#f8fafc; background:#101828; }
.nm-service-page .nm-service-section--mist,.nm-service-section--mist { background:var(--nm-ui-surface); }
.nm-service-page .nm-service-section--accent,.nm-service-section--accent { background:var(--nm-ui-accent-soft); }
.nm-service-page .nm-service-section .wp-block-button__link,.nm-service-section .wp-block-button__link { display:inline-flex; margin-top:1rem; border-radius:0; }
.page-id-53 .entry-content { margin-block-start:0; }
.nm-research-section { box-sizing:border-box; display:grid; width:100vw; min-height:100svh; max-width:none; margin:0 calc(50% - 50vw); padding:clamp(5.5rem,10vh,9rem) max(1.25rem,calc((100vw - 1100px)/2)); align-items:center; scroll-snap-align:start; scroll-snap-stop:normal; scroll-margin-top:var(--nm-header-height, 0px); }
.nm-research-section__inner { width:min(100%,70rem); margin:auto; }
.nm-research-section h2 { max-width:18ch; margin-top:0; font-size:clamp(2.1rem,5vw,4.75rem); line-height:1; text-wrap:balance; }
.nm-research-section__lead { max-width:56rem; font-size:clamp(1.15rem,1rem + .55vw,1.45rem); line-height:1.55; }
.nm-research-section__grid { display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(1.25rem,3vw,3rem); margin-top:clamp(2.25rem,6vh,5rem); }
.nm-research-section__card { min-height:100%; padding-top:clamp(1.25rem,2.5vw,2rem); border-top:2px solid currentColor; }
.nm-research-section__card .nm-section-number { margin-top:0; color:var(--nm-ui-accent); font-size:.78rem; font-weight:750; letter-spacing:.12em; }
.nm-research-section__card h3 { margin-block:.75rem 1rem; font-family:var(--wp--preset--font-family--neomesh-serif); font-size:clamp(1.45rem,2.2vw,2.25rem); line-height:1.08; }
.nm-research-section__card h3 a { color:inherit; }
.nm-research-section--intro { color:#f8fafc; background:#101828; }
.nm-research-section--intro .nm-eyebrow { color:#a8c3ff; }
.nm-research-section--intro .nm-research-section__card .nm-section-number { color:#a8c3ff; }
.nm-research-section--projects { background:#e8f0ff; }
.nm-research-section--projects blockquote { max-width:56rem; margin:clamp(3rem,7vh,6rem) 0 0; padding-top:clamp(1.5rem,3vw,2.5rem); padding-left:0; border-top:2px solid currentColor; border-left:0; }
.nm-research-section--values { background:#e6f0e7; }
.nm-research-section--cta { color:#f8fafc; background:#101828; }
.nm-research-section--cta .nm-eyebrow { color:#a8c3ff; }
.nm-research-section--cta .wp-block-button__link { display:inline-flex; margin-top:1rem; border-radius:0; color:#101828; background:#fff; }
html[data-nm-theme="dark"] .nm-research-section--projects { color:#f8fafc; background:#1b2948; }
html[data-nm-theme="dark"] .nm-research-section--values { color:#f8fafc; background:#17362d; }
@media (max-width:781px) { .nm-research-section { min-height:100svh; padding-block:clamp(4.5rem,14vw,6rem); } .nm-research-section h2 { font-size:clamp(2rem,10vw,3.25rem); } .nm-research-section__grid { grid-template-columns:1fr; gap:1.5rem; margin-top:2.5rem; } }
.page-id-29 .nm-content-intro { color:#f8fafc; background:#101828; }
.page-id-29 .nm-content-intro .nm-eyebrow,.page-id-29 .nm-content-video .nm-eyebrow { color:#a8c3ff; }
.page-id-29 .nm-content-strategy { background:#e8f0ff; }
.page-id-29 .nm-content-text { background:#f4eadf; }
.page-id-29 .nm-content-image { background:#e6f0e7; }
.page-id-29 .nm-content-video { color:#f8fafc; background:#101828; }
.page-id-29 .nm-content-audio { background:var(--nm-ui-surface); }
.page-id-29 .nm-content-illustration { background:var(--nm-ui-accent-soft); }
.page-id-29 .nm-content-design { background:#e8f0ff; }
.page-id-29 .nm-content-design .wp-block-button__link { display:inline-flex; margin-top:1rem; border-radius:0; }
html[data-nm-theme="dark"] .page-id-29 :is(.nm-content-strategy,.nm-content-design) { color:#f8fafc; background:#1b2948; }
html[data-nm-theme="dark"] .page-id-29 .nm-content-text { color:#f8fafc; background:#44332a; }
html[data-nm-theme="dark"] .nm-services-card { border-top-color:#cbd5e1; }
html[data-nm-theme="dark"] .page-id-29 .nm-content-image { color:#f8fafc; background:#17362d; }
html[data-nm-theme="dark"] .nm-service-page .nm-service-section--soft-blue,html[data-nm-theme="dark"] .nm-service-section--soft-blue { color:#f8fafc; background:#1b2948; }
html[data-nm-theme="dark"] .nm-service-page .nm-service-section--sand,html[data-nm-theme="dark"] .nm-service-section--sand { color:#f8fafc; background:#44332a; }
html[data-nm-theme="dark"] .nm-service-page .nm-service-section--forest,html[data-nm-theme="dark"] .nm-service-section--forest { color:#f8fafc; background:#17362d; }
html[data-nm-theme="dark"] .nm-service-page .nm-service-section--accent,html[data-nm-theme="dark"] .nm-service-section--accent { color:#f8fafc; background:#172554; }
@media (max-width:781px){.nm-screen-section,.page-id-29 .nm-content-section,.nm-service-page > .nm-service-section{min-height:100svh;padding-block:clamp(4.5rem,14vw,6rem)!important}.nm-screen-section h2,.page-id-29 .nm-content-section :is(h1,h2),.nm-service-page :is(h1,h2){font-size:clamp(2rem,10vw,3.25rem)}}

/* UrbANT uses the same editorial colour rhythm as the other project sections. */
.nm-urbant-section--intro { color:#f8fafc; background:#101828; }
.nm-urbant-section--intro .nm-eyebrow { color:#a8c3ff; }
.nm-urbant-section--role { background:#e8f0ff; }
.nm-urbant-section--partners { background:#f4eadf; }
.nm-urbant-section--associates { background:#e6f0e7; }
html[data-nm-theme="dark"] .nm-urbant-section--role { color:#f8fafc; background:#1b2948; }
html[data-nm-theme="dark"] .nm-urbant-section--partners { color:#f8fafc; background:#44332a; }
html[data-nm-theme="dark"] .nm-urbant-section--associates { color:#f8fafc; background:#17362d; }

/* Hybrider Einzelhandel: a deliberately editorial sequence of full-width sections. */
.page-id-448 .entry-content { margin-block-start: 0; }
.page-id-448 .nm-hybrid-retail-section { width: 100vw; max-width: none; margin-inline: calc(50% - 50vw); padding: clamp(4rem, 9vw, 8rem) max(1.25rem, calc((100vw - 1240px) / 2)); }
.page-id-448 .nm-hybrid-retail-section > .wp-block-group { width:min(100%,1240px); max-width:1240px; margin-inline:auto; }
.page-id-448 .nm-hybrid-retail-section h2 { max-width: 18ch; margin-top: 0; font-size: clamp(2.25rem, 5.3vw, 5.25rem); line-height: .98; text-wrap: balance; }
.page-id-448 .nm-hybrid-retail-section h3 { margin-top: 0; font-size: clamp(1.2rem, 1.9vw, 1.6rem); }
.page-id-448 .nm-hybrid-retail-section .wp-block-columns { gap: clamp(1.5rem, 4vw, 4rem); margin-top: clamp(2rem, 5vw, 4rem); }
.page-id-448 .nm-hybrid-retail-section .wp-block-column { padding-top: 1.1rem; border-top: 2px solid currentColor; }
.page-id-448 .nm-hybrid-retail-intro { color: #f8fafc; background: #101828; }
.page-id-448 .nm-hybrid-retail-intro .nm-eyebrow, .page-id-448 .nm-hybrid-retail-offer .nm-eyebrow { color: #a8c3ff; }
.page-id-448 .nm-hybrid-retail-understanding { background: #e8f0ff; }
.page-id-448 .nm-hybrid-retail-city { background: #e6f0e7; }
.page-id-448 .nm-hybrid-retail-offer { color: #f8fafc; background: #101828; }
.page-id-448 .nm-hybrid-retail-offer-grid .nm-section-number { color: #a8c3ff; font-size: .78rem; font-weight: 750; letter-spacing: .12em; }
.page-id-448 .nm-hybrid-retail-technology { background: #f4eadf; }
.page-id-448 .nm-hybrid-retail-gallery { width: 100vw; max-width: none; margin: 0; }
.page-id-448 .nm-hybrid-retail-gallery .wp-block-image { min-height: 22rem; }
.page-id-448 .nm-hybrid-retail-gallery img { width: 100%; height: 100%; min-height: 22rem; object-fit: cover; }
.page-id-448 .nm-hybrid-retail-perspectives { background: var(--nm-ui-surface); }
.page-id-448 .nm-hybrid-retail-cta { padding-block: clamp(6rem, 13vw, 12rem); background: var(--nm-ui-accent-soft); }
.page-id-448 .nm-hybrid-retail-cta .wp-block-buttons { margin-top: clamp(2rem, 4vw, 3.5rem); }
.page-id-448 :is(.nm-hybrid-retail-intro,.nm-hybrid-retail-offer) a:not(.wp-block-button__link):is(:link,:visited),
html[data-nm-theme="dark"] .page-id-448 .nm-hybrid-retail-section a:not(.wp-block-button__link):is(:link,:visited) { color:#f8fafc; }
.page-id-448 :is(.nm-hybrid-retail-intro,.nm-hybrid-retail-offer) a:not(.wp-block-button__link):is(:hover,:focus-visible),
html[data-nm-theme="dark"] .page-id-448 .nm-hybrid-retail-section a:not(.wp-block-button__link):is(:hover,:focus-visible) { color:#fff; background-size:100% 1px; }
.page-id-448 :is(.nm-hybrid-retail-intro,.nm-hybrid-retail-offer) a:focus-visible,
html[data-nm-theme="dark"] .page-id-448 .nm-hybrid-retail-section a:focus-visible { outline-color:#fff; }
.page-id-448 :is(.nm-hybrid-retail-intro,.nm-hybrid-retail-offer) .wp-block-button__link,
html[data-nm-theme="dark"] .page-id-448 .nm-hybrid-retail-section .wp-block-button__link { color:#101828; background:#fff; }
@media (prefers-color-scheme: dark) {
	html:not([data-nm-theme]) .page-id-448 .nm-hybrid-retail-section a:not(.wp-block-button__link):is(:link,:visited) { color:#f8fafc; }
	html:not([data-nm-theme]) .page-id-448 .nm-hybrid-retail-section a:not(.wp-block-button__link):is(:hover,:focus-visible) { color:#fff; background-size:100% 1px; }
	html:not([data-nm-theme]) .page-id-448 .nm-hybrid-retail-section a:focus-visible { outline-color:#fff; }
	html:not([data-nm-theme]) .page-id-448 .nm-hybrid-retail-section .wp-block-button__link { color:#101828; background:#fff; }
}
html[data-nm-theme="dark"] .page-id-448 .nm-hybrid-retail-understanding { color: #f8fafc; background: #1b2948; }
html[data-nm-theme="dark"] .page-id-448 .nm-hybrid-retail-city { color: #f8fafc; background: #17362d; }
html[data-nm-theme="dark"] .page-id-448 .nm-hybrid-retail-technology { color: #f8fafc; background: #44332a; }
@media (max-width: 781px) { .page-id-448 .nm-hybrid-retail-section { padding-block: clamp(3.5rem, 12vw, 5rem); } .page-id-448 .nm-hybrid-retail-cta { padding-block: clamp(4.5rem, 14vw, 7rem); } .page-id-448 .nm-hybrid-retail-section h2 { font-size: clamp(2rem, 10vw, 3.25rem); } .page-id-448 .nm-hybrid-retail-gallery .wp-block-image, .page-id-448 .nm-hybrid-retail-gallery img { min-height: 14rem; } }
.wp-block-columns.alignwide { column-gap: clamp(2rem, 5vw, 6rem); }
.wp-block-quote { margin-block: var(--wp--preset--spacing--l); }
.wp-block-quote p { font-family: var(--wp--preset--font-family--neomesh-serif); font-size: clamp(1.3rem, 1.05rem + 1vw, 2rem); font-style: italic; font-weight: 400; line-height: 1.42; letter-spacing: -.018em; }
.wp-block-quote cite { display: block; margin-top: 1rem; color: var(--wp--preset--color--slate); font-size: .86rem; font-style: normal; font-weight: 650; letter-spacing: .04em; text-transform: uppercase; }
.wp-block-quote.is-style-large { border-left: 0; padding: clamp(2rem, 5vw, 5rem); border-radius: var(--nm-radius); background: var(--wp--preset--color--mist); }
.wp-block-quote.is-style-large p { max-width: 30ch; font-size: clamp(1.8rem, 1.15rem + 2.4vw, 3.6rem); line-height: 1.12; }
:where(a, button, input, textarea, select):focus-visible { outline: 3px solid #2f6fed; outline-offset: 3px; }
.wp-site-blocks { overflow: clip; }
.wp-site-blocks { min-height: 100dvh; display: flex; flex-direction: column; }
.wp-site-blocks > main { flex: 1 0 auto; }
.wp-site-blocks > footer { margin-top: auto; }
.home .wp-site-blocks > main { margin-block-start: 0; }
.nm-hero-slider { position: relative; height: calc(100svh - var(--nm-header-height, 0px)); min-height: 38rem; overflow: hidden; color: #fff; background: #101828; }
.nm-hero-slider__track { display: flex; width: 100%; height: 100%; overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory; scrollbar-width: none; overscroll-behavior-x: contain; }
.nm-hero-slider__track::-webkit-scrollbar { display: none; }
@media (pointer: fine) { html:not(.nm-custom-cursor) .nm-hero-slider__track { cursor: grab; } html:not(.nm-custom-cursor) .nm-hero-slider.is-dragging .nm-hero-slider__track { cursor: grabbing; } }
/* Keep enlarged parallax images inside their own full-width slide. */
.nm-hero-slide { position: relative; display: grid; box-sizing: border-box; flex: 0 0 100%; min-width: 100%; height: 100%; padding: clamp(2rem, 7vw, 7rem); overflow: hidden; align-items: center; scroll-snap-align: start; scroll-snap-stop: always; isolation: isolate; }
.nm-hero-slide__image, .nm-hero-slide__shade { position: absolute; inset: 0; width: 100%; height: 100%; }
.nm-hero-slide__image { z-index: -2; object-fit: cover; }
.nm-hero-slide__shade { z-index: -1; background: linear-gradient(90deg, rgb(8 13 23 / 82%) 0%, rgb(8 13 23 / 54%) 52%, rgb(8 13 23 / 18%) 100%); }
@media (min-width: 782px) { .nm-hero-slide__image { will-change: transform; transform: translate3d(0, var(--nm-hero-slider-parallax-y, 0px), 0) scale(1.05); } }
.nm-hero-slide__content { width: min(100%, 72rem); margin-inline: auto; }
.wp-block-post-content .nm-hero-slide :is(h1, h2) { max-width: 11ch; margin-block: .35rem 1.25rem; color: #fff; font-size: clamp(3rem, 7vw, 7.2rem); line-height: .94; }
.nm-hero-slide :where(h1, h2) em { color: #b9ccff; }
.nm-hero-slide__lead { max-width: 42rem; margin-bottom: 1.75rem; color: rgb(255 255 255 / 90%); font-size: clamp(1.05rem, 1rem + .45vw, 1.35rem); line-height: 1.55; }
.nm-hero-slide .wp-block-button__link { background: #fff; color: #101828; }
.nm-hero-slider__controls { position: absolute; right: clamp(1.25rem, 4vw, 4rem); bottom: clamp(1.25rem, 4vw, 3rem); z-index: 3; display: flex; gap: .75rem; align-items: center; }
.nm-hero-slider__arrow, .nm-hero-slider__dots button { border: 1px solid rgb(255 255 255 / 55%); color: #fff; background: rgb(8 13 23 / 30%); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); cursor: pointer; }
.nm-hero-slider__arrow { display: grid; width: 2.75rem; height: 2.75rem; padding: 0; place-items: center; border-radius: 50%; font-size: 1.15rem; }
.nm-hero-slider__dots { display: flex; gap: .5rem; }
.nm-hero-slider__dots button { width: .65rem; height: .65rem; padding: 0; border-radius: 999px; transition: width .25s ease, background .25s ease; }
.nm-hero-slider__dots button[aria-current="true"] { width: 1.8rem; background: #fff; }
.nm-card { border: 1px solid #e6e8ec; border-radius: var(--nm-radius); box-shadow: var(--nm-shadow); }
.nm-contact-channels a[href^="mailto:"] {
  display: inline-flex;
  min-height: 2.75rem;
  margin-top: .65rem;
  padding: .65rem 1rem;
  gap: .55rem;
  align-items: center;
  border: 1px solid currentColor;
  border-radius: 999px;
  color: var(--wp--preset--color--blue, #3157d5);
  background: transparent;
  background-image: none !important;
  font-weight: 650;
  line-height: 1.2;
  transition: color .25s ease, background-color .25s ease, border-color .25s ease;
}
.nm-contact-channels a[href^="mailto:"]::before {
  content: "";
  width: 1em;
  height: .75em;
  flex: 0 0 auto;
  border: 1.5px solid currentColor;
  border-radius: .12em;
  background: linear-gradient(145deg, transparent 47%, currentColor 49% 52%, transparent 54%) left top / 50% 100% no-repeat,
              linear-gradient(215deg, transparent 47%, currentColor 49% 52%, transparent 54%) right top / 50% 100% no-repeat;
}
.nm-contact-channels a[href^="mailto:"]:is(:hover, :focus-visible) {
  color: var(--wp--preset--color--paper, #fff);
  background-color: var(--wp--preset--color--blue, #3157d5);
  border-color: var(--wp--preset--color--blue, #3157d5);
}
.nm-policy-summary,
.nm-consent-panel { margin-block: clamp(2rem, 5vw, 4.5rem); padding: clamp(1.5rem, 4vw, 3.5rem); }
.nm-policy-summary ul { display: grid; gap: .75rem; margin-bottom: 0; }
.nm-policy-grid { margin-block: clamp(2rem, 5vw, 4rem); align-items: stretch; }
.nm-policy-grid > .wp-block-column { padding: clamp(1.25rem, 2.5vw, 2rem); border-top: 2px solid var(--wp--preset--color--blue, #3157d5); background: color-mix(in srgb, currentColor 3%, transparent); }
.nm-policy-grid h3 { margin-top: 0; }
.nm-consent-panel .cmplz-manage-consent-container { margin-top: 1rem; }
#cmplz-cookies-overview { margin-block: 1.5rem 3rem; }
.nm-pill { border-radius: 999px; }
.nm-hero-grid { min-height: 42rem; }
.nm-feature-grid > * { height: 100%; }
.wp-block-navigation .wp-block-navigation-item__content { text-underline-offset: .25em; }
.wp-block-navigation .wp-block-navigation-item__content.nm-current-menu-link,
.wp-block-navigation .nm-current-menu-item > .wp-block-navigation-item__content {
  color: var(--wp--preset--color--blue, #3157d5);
  background-image: none;
  font-weight: 650;
}
.wp-block-navigation .nm-current-menu-ancestor > .wp-block-navigation-item__content {
  color: var(--wp--preset--color--blue, #3157d5);
  background-image: none;
  font-weight: 600;
}
:where(.wp-block-post-content, header.wp-block-template-part, footer.wp-block-template-part) a:not(.wp-block-button__link):not(.custom-logo-link) { text-decoration: none; background-image: linear-gradient(currentColor, currentColor); background-repeat: no-repeat; background-position: left calc(100% - .04em); background-size: 0 1px; transition: background-size .28s cubic-bezier(.2,.7,.2,1); }
:where(.wp-block-post-content, header.wp-block-template-part, footer.wp-block-template-part) a:not(.wp-block-button__link):not(.custom-logo-link):is(:hover,:focus-visible) { background-size: 100% 1px; }
.nm-reveal-pending.is-style-neomesh-reveal,
.nm-reveal-pending.nm-auto-reveal { opacity: 0; transform: translateY(.75rem); transition: opacity .62s ease, transform .7s cubic-bezier(.2,.7,.2,1); transition-delay: var(--nm-reveal-delay, 0ms); }
.nm-reveal-pending.is-style-neomesh-soft-reveal { opacity: 0; transform: scale(.992); transition: opacity .72s ease, transform .85s cubic-bezier(.2,.7,.2,1); }
.nm-reveal-pending.nm-is-visible { opacity: 1; transform: none; }
.is-style-neomesh-screen-section { box-sizing: border-box; display: flex; min-height: 100svh; padding-block: clamp(3.5rem, 8vh, 8rem); align-items: center; }
.is-style-neomesh-screen-section > .wp-block-group__inner-container,
.is-style-neomesh-screen-section > :where(.wp-block-group, .wp-block-columns) { width: 100%; }
/* Keep the sticky-header offset on the scroll container only. */
html.nm-has-screen-sections.nm-snap-is-ready {
  scroll-snap-type: y mandatory;
  scroll-padding-block-start: var(--nm-snap-header-offset, var(--nm-header-height, 0px));
  scroll-padding-block-end: 8svh;
}
.page-id-7 .is-style-neomesh-screen-section { padding-inline: clamp(1.25rem, 4vw, 4rem); border-radius: 0; }
.page-id-7 .nm-name-story { background: var(--wp--preset--color--mist); }
.page-id-7 .nm-integrated-perspective { background: var(--wp--preset--color--soft-blue); }
.page-id-7 .nm-hybrid-thinking { background: var(--wp--preset--color--soft-forest); }
.page-id-7 .nm-economy-ecology { background: var(--wp--preset--color--soft-clay); }
.page-id-7 .nm-dark-panel { background: var(--wp--preset--color--ink); }
.page-id-7 .nm-profile-page > .is-style-neomesh-screen-section,
.page-id-7 .nm-profile-page .nm-profile-links > .is-style-neomesh-screen-section { width: 100vw; max-width: none; margin-inline: calc(50% - 50vw); }
/* Block-flow spacing exposed the parent background as bars between profile chapters. */
.page-id-7 .entry-content > .nm-profile-chapter + .nm-profile-chapter { margin-block-start: 0 !important; }
.is-style-neomesh-screen-section,
.nm-home-snap-target { scroll-snap-align: start; scroll-snap-stop: normal; scroll-margin-top: var(--nm-header-height, 0px); }
html.nm-has-screen-sections.nm-snap-is-ready :is(.is-style-neomesh-screen-section, .nm-home-snap-target, .nm-screen-section, .nm-content-section, .nm-service-page > .nm-service-section, .nm-research-section, .page-id-7 .nm-profile-chapter) { scroll-margin-block-start: 0; }
.is-style-neomesh-parallax .wp-block-cover__image-background,
.is-style-neomesh-parallax img,
.home .nm-editorial-split .wp-block-image img,
.page-id-448 .nm-hybrid-retail-gallery .wp-block-image:first-child img { will-change: transform; transform: translate3d(0, var(--nm-parallax-y, 0px), 0) scale(1.08); }
.is-style-neomesh-parallax,
.home .nm-editorial-split .wp-block-image,
.page-id-448 .nm-hybrid-retail-gallery .wp-block-image:first-child { overflow: hidden; }
.home .nm-hero .wp-block-cover__inner-container { width: min(100% - 3rem, 1240px); margin-inline: auto; }
.home .nm-hero h1 { max-width: 10ch; text-wrap: balance; }
.home .nm-hero p { hyphens: none; }
.home .nm-hero h1 em { color: #a8c3ff; font-style: italic; font-weight: 400; }
.nm-eyebrow { margin-bottom: var(--wp--preset--spacing--s); font-size: .78rem; font-weight: 750; letter-spacing: .12em; text-transform: uppercase; }
.nm-home-intro { padding-block: var(--wp--preset--spacing--xl); }
.nm-home-intro h2 { margin-top: 0; max-width: 15ch; }
.nm-service-grid { margin-block: 0 var(--wp--preset--spacing--xl); }
.nm-service-card { height: 100%; padding-top: var(--wp--preset--spacing--s); border-top: 2px solid #000; border-radius: 0; }
.nm-service-card .nm-section-number { color: var(--wp--preset--color--blue); font-size: .8rem; font-weight: 750; letter-spacing: .1em; }
.nm-service-card h3 { margin-top: var(--wp--preset--spacing--l); }
.nm-capabilities { margin-bottom: var(--wp--preset--spacing--xl); align-items: stretch; }
.nm-capability-lead { height: 100%; padding: clamp(2rem, 5vw, 5rem); background:#101828; color:#f8fafc; }
.nm-capability-lead :where(h2,p,a) { color:inherit; }
.nm-capability-list { height:100%; padding-left:clamp(0rem, 2vw, 2rem); }
.nm-capability-list > * { padding-block:var(--wp--preset--spacing--m); border-top:2px solid #000; border-radius:0; }
.nm-capability-list > *:first-child { padding-top:0; }
.nm-capability-list h3 { margin-top:.35rem; }
:where(.nm-capability-list > *, .nm-service-card) {
	margin-inline: -.65rem;
	padding-inline: .65rem;
	border-radius: .45rem;
	transition: background-color .55s cubic-bezier(.22, .61, .36, 1);
}
.nm-capability-list > *, .nm-service-card { border-radius: 0; }
@media (hover: hover) and (pointer: fine) {
	:where(.nm-capability-list > *, .nm-service-card):is(:hover, :focus-within) {
		background-color: color-mix(in srgb, currentColor 4%, transparent);
	}
}
.nm-client-logos { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:1px; background:var(--nm-ui-border); border:1px solid var(--nm-ui-border); }
.nm-client-logo { display:flex; min-height:9rem; margin:0; padding:1.5rem; align-items:center; justify-content:center; background:#fff; }
.nm-client-logo img { display:block; width:auto; height:auto; max-width:min(100%,10rem); max-height:4.5rem; object-fit:contain; object-position:center; filter:grayscale(1); opacity:.78; transition:filter .25s ease,opacity .25s ease; }
.nm-client-logo:is(:hover, :focus-within, .is-auto-colour) img { filter:none; opacity:1; }
.nm-client-logo__fallback { max-width:12rem; color:#101828; font-family:var(--wp--preset--font-family--neomesh-serif); font-size:clamp(1rem,1.5vw,1.3rem); font-weight:600; line-height:1.15; text-align:center; }
.nm-portrait-gallery { gap:clamp(.5rem,1.2vw,1rem)!important; }
.nm-portrait-gallery .wp-block-image img { aspect-ratio:3/4; width:100%; height:100%; object-fit:cover; }
/* Gallery previews remain editorially cropped; the lightbox always contains the complete attachment. */
.wp-lightbox-overlay .nm-portrait-lightbox img { object-fit:contain !important; }
@media (max-width:900px) { .nm-client-logos { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:560px) { .nm-client-logos { grid-template-columns:repeat(2,minmax(0,1fr)); } .nm-portrait-gallery { --wp--style--unstable-gallery-gap: .5rem; } }
.nm-dark-panel { padding-block: var(--wp--preset--spacing--xl); background: #101828; color: #f8fafc; }
.nm-dark-panel :where(h2,h3,p,a) { color: inherit; }
.nm-dark-panel a { text-underline-offset: .25em; }
.nm-dark-panel .wp-block-quote.is-style-large { background: #182235; color: #f8fafc; }
.nm-dark-panel .wp-block-quote.is-style-large cite { color: #cbd5e1; }
.nm-editorial-split { margin-block: var(--wp--preset--spacing--xl); align-items: stretch; }
.nm-editorial-split .wp-block-image, .nm-editorial-split .wp-block-image img { height: 100%; }
.nm-editorial-split .wp-block-image img { min-height: 28rem; object-fit: cover; }
.nm-editorial-copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(2rem, 5vw, 5rem); }
.nm-theme-toggle { display: flex; align-items: center; margin-left: .5rem; }
.nm-language-switcher { display: flex; gap: .35rem; align-items: center; font-size: .78rem; font-weight: 700; letter-spacing: .06em; }
.nm-language-switcher a { color: inherit; text-decoration: none; opacity: .55; }
.nm-language-switcher a[aria-current="page"] { opacity: 1; text-decoration: underline; text-underline-offset: .25em; }
.nm-footer-label { margin-bottom: .55rem; color: #98a2b3; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.nm-footer-navigation { margin-bottom: 1.25rem; }
.nm-footer-columns { gap: clamp(2rem, 6vw, 6rem); }
.nm-footer-self-services .wp-block-navigation__container { gap: .55rem; align-items: flex-start; }
.nm-footer-self-services a { text-decoration: none; }
.nm-footer-self-services a:hover { text-decoration: underline; text-underline-offset: .25em; }
.nm-footer-bottom { margin-top: var(--wp--preset--spacing--l); padding-top: var(--wp--preset--spacing--s); border-top: 1px solid rgb(255 255 255 / 22%); }
.nm-footer-signoff { opacity: 0; animation: nm-footer-signoff-in .8s ease 3s forwards; }
@keyframes nm-footer-signoff-in { to { opacity: 1; } }
.nm-breadcrumbs__home { display: inline-flex; align-items: center; justify-content: center; line-height: 1; }
.nm-breadcrumbs__home svg { display: block; width: 1em; height: 1em; }
@media (pointer: coarse) {
  .nm-breadcrumbs__home { min-width: 2.75rem; min-height: 2.75rem; margin: -.7rem 0 -.7rem -.7rem; }
  .lightbox-trigger, .neodialog__reset { min-width: 2.75rem !important; min-height: 2.75rem !important; }
  .nm-hero-slider__dots button { position: relative; width: 2.25rem; height: 2.25rem; border-color: transparent; background: transparent; backdrop-filter: none; }
  .nm-hero-slider__dots button::after { content: ""; position: absolute; inset: 50% auto auto 50%; width: .65rem; height: .65rem; border: 1px solid rgb(255 255 255 / 70%); border-radius: 999px; background: rgb(8 13 23 / 30%); transform: translate(-50%, -50%); }
  .nm-hero-slider__dots button[aria-current="true"] { width: 2.25rem; background: transparent; }
  .nm-hero-slider__dots button[aria-current="true"]::after { width: 1.25rem; background: #fff; }
}
.nm-viewport-edge-blur > span {
	position: fixed;
	z-index: 15;
	left: 0;
	width: 100%;
	height: var(--nm-edge-blur-height, 80px);
	pointer-events: none;
	-webkit-backdrop-filter: blur(var(--nm-edge-blur-strength, 10px));
	backdrop-filter: blur(var(--nm-edge-blur-strength, 10px));
	background: rgb(255 255 255 / 1%);
}
.nm-viewport-edge-blur__top {
	top: 0;
	-webkit-mask-image: linear-gradient(to bottom, #000 0%, rgb(0 0 0 / 72%) 45%, transparent 100%);
	mask-image: linear-gradient(to bottom, #000 0%, rgb(0 0 0 / 72%) 45%, transparent 100%);
}
.nm-viewport-edge-blur__bottom {
	bottom: 0;
	-webkit-mask-image: linear-gradient(to bottom, transparent 0%, rgb(0 0 0 / 72%) 55%, #000 100%);
	mask-image: linear-gradient(to bottom, transparent 0%, rgb(0 0 0 / 72%) 55%, #000 100%);
}

@media (pointer: fine) {
	html.nm-custom-cursor,
	html.nm-custom-cursor * { cursor: none !important; }
	.nm-pointer {
		position: fixed;
		z-index: 2147483647;
		top: 0;
		left: 0;
		width: var(--nm-pointer-size, 20px);
		height: var(--nm-pointer-size, 20px);
		border: 1px solid color-mix(in srgb, var(--nm-pointer-color, #ff2bd6) 90%, white);
		border-radius: 50%;
		background: color-mix(in srgb, var(--nm-pointer-color, #ff2bd6) 62%, transparent);
		box-shadow: none;
		opacity: 0;
		pointer-events: none;
		transform: translate3d(calc(var(--nm-pointer-x, -40px) - 50%), calc(var(--nm-pointer-y, -40px) - 50%), 0) scale(1);
		transition: opacity .16s ease, background-color .12s ease, transform .12s ease, box-shadow .12s ease;
		will-change: transform;
	}
	.nm-pointer.is-visible { visibility: visible; opacity: .92; box-shadow: 0 0 .65rem color-mix(in srgb, var(--nm-pointer-color, #ff2bd6) 45%, transparent); }
	.nm-pointer.is-interactive {
		border-width: 2px;
		background: color-mix(in srgb, var(--nm-pointer-color, #ff2bd6) 18%, transparent);
		opacity: 1;
		transform: translate3d(calc(var(--nm-pointer-x, -40px) - 50%), calc(var(--nm-pointer-y, -40px) - 50%), 0) scale(1.42);
		animation: nm-pointer-interactive-pulse 1.35s ease-in-out infinite;
	}
	.nm-pointer.is-active {
		animation: none;
		opacity: 1;
		background: var(--nm-pointer-color, #ff2bd6);
		box-shadow: none;
		transform: translate3d(calc(var(--nm-pointer-x, -40px) - 50%), calc(var(--nm-pointer-y, -40px) - 50%), 0) scale(.78);
	}
	.nm-pointer.is-idle-drawing {
		animation: none;
		opacity: 1;
		background: color-mix(in srgb, var(--nm-pointer-color, #ff2bd6) 35%, transparent);
		box-shadow: 0 0 1rem color-mix(in srgb, var(--nm-pointer-color, #ff2bd6) 55%, transparent);
	}
	.nm-pointer.is-idle-drawing.is-active {
		background: var(--nm-pointer-color, #ff2bd6);
		box-shadow: none;
		transform: translate3d(calc(var(--nm-pointer-x, -40px) - 50%), calc(var(--nm-pointer-y, -40px) - 50%), 0) scale(.78);
		animation: nm-pointer-idle-press .26s cubic-bezier(.2, .85, .3, 1) 1 both;
	}
	.nm-pointer--crosshair { border-radius: 2px; background: transparent; }
	@keyframes nm-pointer-interactive-pulse {
		0%, 100% { transform: translate3d(calc(var(--nm-pointer-x, -40px) - 50%), calc(var(--nm-pointer-y, -40px) - 50%), 0) scale(1.34); }
		50% { transform: translate3d(calc(var(--nm-pointer-x, -40px) - 50%), calc(var(--nm-pointer-y, -40px) - 50%), 0) scale(1.48); }
	}
	@keyframes nm-pointer-idle-press {
		0% { transform: translate3d(calc(var(--nm-pointer-x, -40px) - 50%), calc(var(--nm-pointer-y, -40px) - 50%), 0) scale(1); }
		100% { transform: translate3d(calc(var(--nm-pointer-x, -40px) - 50%), calc(var(--nm-pointer-y, -40px) - 50%), 0) scale(.78); }
	}
}
.nm-footer-legal { opacity: .76; }
.nm-footer-navigation .wp-block-navigation__container, .nm-footer-legal .wp-block-navigation__container { row-gap: .45rem; }
.nm-home-news .nm-news-query { margin-top: var(--wp--preset--spacing--l); }
.nm-home-news .wp-block-post-template { gap: clamp(1rem, 2vw, 1.75rem); }
.nm-home-news .nm-news-query { position:relative; }
.nm-home-news .wp-block-post-template { display:flex; overflow-x:auto; scroll-snap-type:x mandatory; scroll-behavior:smooth; scrollbar-width:none; overscroll-behavior-x:contain; }
.nm-home-news .wp-block-post-template::-webkit-scrollbar { display:none; }
.nm-home-news .wp-block-post-template > li { flex:0 0 calc((100% - 3.5rem) / 3); min-width:0; scroll-snap-align:start; }
.nm-magazine-slider__controls { display:flex; justify-content:flex-end; gap:.65rem; margin-top:1.25rem; }
.nm-magazine-slider__controls button { display:grid; width:2.75rem; height:2.75rem; padding:0; place-items:center; border:1px solid var(--nm-ui-border); border-radius:50%; color:var(--nm-ui-text); background:var(--nm-ui-surface); cursor:pointer; }
.nm-magazine-slider__controls button:is(:hover,:focus-visible) { color:var(--nm-ui-button-text); background:var(--nm-ui-button); }
@media (max-width:899px) { .nm-home-news .wp-block-post-template > li { flex-basis:calc((100% - 1.75rem) / 2); } }
@media (max-width:600px) { .nm-home-news .wp-block-post-template > li { flex-basis:86%; } }
.nm-project-mark { max-width:min(34rem,80%); margin-block:2rem 4rem; }
.nm-project-logo-grid { gap:clamp(1rem,2.5vw,2rem); margin-block:2rem 5rem; }
.nm-project-logo { min-height:10rem; padding:1.25rem; border:1px solid var(--nm-ui-border); background:var(--nm-ui-surface); text-align:center; }
.nm-project-logo figure { display:flex; min-height:5.5rem; align-items:center; justify-content:center; margin:0 0 .75rem; }
.nm-project-logo img { width:auto; max-width:100%; max-height:5rem; object-fit:contain; }
.nm-project-video { width:100%; margin-block:clamp(2rem,5vw,5rem); }
.nm-project-video .nm-video-embed { display:grid; grid-template-columns:minmax(0,1fr); gap:.75rem; width:100%; margin:0; }
.nm-project-video .nm-video-embed iframe { display:block; width:100%; aspect-ratio:16/9; height:auto; border:0; background:var(--nm-ui-muted); }
.nm-project-video .nm-video-embed figcaption { color:var(--nm-ui-text-muted); font-size:.9rem; }
.nm-project-video .cmplz-placeholder-parent,
.nm-project-video .cmplz-blocked-content-container { width:100%; aspect-ratio:16/9; }
.nm-project-video .nm-video-consent { box-sizing:border-box; display:grid; grid-template-columns:minmax(0,1fr); width:100%; min-width:0; min-height:0; aspect-ratio:16/9; place-items:center; padding:clamp(1.25rem,4vw,3rem); color:#f8fafc; background:linear-gradient(135deg,#101828,#263754); text-align:center; }
.nm-project-video .nm-video-consent__inner { max-width:34rem; }
.nm-project-video .nm-video-consent__inner p { max-width:34rem; }
.nm-project-video .nm-video-consent__button { min-height:2.75rem; padding:.7rem 1rem; border:1px solid #f8fafc; border-radius:0; color:#101828; background:#f8fafc; font:inherit; font-weight:700; cursor:pointer; }
.nm-project-video .nm-video-consent__button:is(:hover,:focus-visible) { color:#fff; background:#2f6fed; border-color:#2f6fed; }
.nm-project-video .nm-video-consent iframe { display:block; width:100%; height:100%; border:0; }
@media (max-width:600px) { .nm-project-video .nm-video-consent { min-height:18rem; aspect-ratio:auto; } }
.nm-project-video .nm-video-consent[data-nm-video-loaded="true"] { padding:0; min-height:0; aspect-ratio:16/9; }
.nm-project-facts { margin-block:clamp(3rem,6vw,6rem); padding-block:2rem; border-block:1px solid var(--nm-ui-border); }
.nm-economy-ecology { margin-block:clamp(4rem,8vw,8rem); }
.nm-hybrid-pillars > .wp-block-column { padding-top:1.25rem; border-top:2px solid var(--nm-ui-text); }
.nm-aachen-references { margin-block:clamp(3rem,7vw,7rem); padding-block:clamp(2rem,5vw,5rem); border-block:1px solid var(--nm-ui-border); }
.nm-hybrid-thinking { margin-block:clamp(4rem,9vw,9rem); }
.nm-hybrid-thinking-home { padding-block:clamp(3rem,7vw,7rem); border-block:1px solid var(--nm-ui-border); }
.nm-hybrid-thinking .wp-block-column { padding-top:1.1rem; border-top:2px solid var(--nm-ui-text); }
.nm-news-card { height: 100%; overflow: hidden; padding-bottom: 1.4rem; border-bottom: 1px solid var(--nm-ui-border); }
.nm-news-card .wp-block-post-featured-image { margin-bottom: 1.1rem; overflow: hidden; border-radius: var(--nm-radius); background: var(--nm-ui-muted); }
.nm-news-card .wp-block-post-featured-image img { transition: transform .45s ease; }
.nm-news-card:hover .wp-block-post-featured-image img { transform: scale(1.025); }
.nm-magazine-query .wp-block-post-featured-image,
.single-post .wp-block-post-featured-image,
.single-post .wp-block-post-content .wp-block-image { overflow: hidden; }
.nm-magazine-query .wp-block-post-featured-image img,
.single-post .wp-block-post-featured-image img,
.single-post .wp-block-post-content .wp-block-image img {
  transform: scale(1);
  transition: transform .5s cubic-bezier(.2, .7, .2, 1);
  will-change: transform;
}
@media (hover: hover) and (pointer: fine) {
  .nm-magazine-query .wp-block-post-featured-image:is(:hover, :focus-within) img,
  .single-post .wp-block-post-featured-image:is(:hover, :focus-within) img,
  .single-post .wp-block-post-content .wp-block-image:is(:hover, :focus-within) img { transform: scale(1.025); }
}
@media (prefers-reduced-motion: reduce) {
  .nm-magazine-query .wp-block-post-featured-image img,
  .single-post .wp-block-post-featured-image img,
  .single-post .wp-block-post-content .wp-block-image img { transition: none; transform: none; }
}
.nm-news-card .wp-block-post-date { color: var(--nm-ui-text-muted); }
.nm-news-card .wp-block-post-title { margin-block: .55rem; font-size: clamp(1.2rem, 1.05rem + .55vw, 1.55rem); }
.nm-news-card .wp-block-post-excerpt { margin-top: 0; }
.nm-news-card .wp-block-post-excerpt__more-link { display: inline-block; margin-top: .7rem; font-weight: 700; text-underline-offset: .2em; }
.nm-news-card .wp-block-post-featured-image:empty { min-height: 12rem; }
.nm-proof-section { margin-block: var(--wp--preset--spacing--xl); padding-block: clamp(2rem, 5vw, 4.5rem); border-top: 1px solid var(--nm-ui-border); border-bottom: 1px solid var(--nm-ui-border); }
.nm-proof-section > p:not(.nm-eyebrow) { max-width: 72ch; }
.nm-proof-section .wp-block-columns { margin-top: var(--wp--preset--spacing--l); }
.nm-proof-section .wp-block-column { padding-top: 1rem; border-top: 2px solid var(--nm-ui-text); }
.nm-product-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; margin-block: var(--wp--preset--spacing--l); overflow: hidden; background: var(--nm-ui-border); border: 1px solid var(--nm-ui-border); border-radius: var(--nm-radius); }
.nm-product { display: grid; min-height: 13rem; padding: clamp(1.25rem, 2.5vw, 2rem); grid-template-rows: 4.5rem auto; gap: 1.25rem; background: var(--nm-ui-surface); }
.nm-product-logo { display: flex; align-items: center; }
.nm-product-logo img { width: auto; max-width: 9rem; height: auto; max-height: 3.25rem; object-fit: contain; }
.nm-standards-section { margin-top: clamp(4rem, 8vw, 8rem); padding-block: clamp(4rem, 8vw, 8rem); border-block: 1px solid var(--wp--preset--color--line, rgba(127,127,127,.25)); }
[data-nm-theme="dark"] .nm-product-logo img[src*="openai.svg"] { filter: invert(1); }
.nm-founder-social { display: flex; flex-wrap: wrap; gap: .75rem; margin-block: 1.25rem 2rem; }
.nm-founder-social a { display: inline-flex; align-items: center; gap: .55rem; color: inherit; text-decoration: none; }
.nm-founder-social span { display: inline-grid; place-items: center; width: 1.8rem; height: 1.8rem; border: 1px solid currentColor; border-radius: 50%; font-size: .75rem; font-weight: 700; }
.nm-footer-social { margin-top: .5rem !important; }
.nm-product strong, .nm-product small { display: block; }
.nm-product strong { margin-bottom: .35rem; font-size: 1rem; }
.nm-product small { color: var(--nm-ui-text-muted); font-size: .88rem; line-height: 1.5; }
.nm-php-support { margin-block: var(--wp--preset--spacing--xl); padding-block: clamp(3.5rem, 8vw, 8rem); }
.nm-php-support .wp-block-columns { margin-block: var(--wp--preset--spacing--l); gap: clamp(1.5rem, 4vw, 4rem); }
.nm-php-support .wp-block-column { padding-top: 1.25rem; border-top: 2px solid var(--nm-ui-text); }
.nm-hosting-features { margin-block: var(--wp--preset--spacing--l); }
.nm-hosting-features .wp-block-column { padding-top: 1.25rem; border-top: 2px solid var(--nm-ui-text); }
.nm-hosting-dns { margin-block: var(--wp--preset--spacing--xl); padding-block: clamp(3.5rem, 8vw, 7rem); }
.nm-worldwide-note { margin-top: var(--wp--preset--spacing--l); padding: 1rem 1.2rem; border-left: 3px solid var(--nm-ui-accent); background: var(--nm-ui-muted); }
.nm-privacy-policy { width: min(calc(100% - clamp(2rem, 6vw, 6rem)), var(--wp--style--global--wide-size)); max-width: var(--wp--style--global--wide-size); margin-inline: auto; padding-bottom: clamp(3rem, 7vw, 7rem); }
.nm-privacy-policy > .has-lead-font-size { max-width: 64ch; margin-bottom: clamp(3rem, 6vw, 6rem); }
.nm-privacy-grid { gap: clamp(2rem, 5vw, 5rem); margin-block: 0 clamp(3rem, 6vw, 6rem); align-items: stretch; }
.nm-privacy-grid > .wp-block-column { min-width: 0; }
.nm-privacy-section { height: 100%; padding-top: clamp(1.25rem, 2.5vw, 2rem); border-top: 2px solid var(--nm-ui-text); }
.nm-privacy-section h2 { max-width: 23ch; margin-top: 0; font-size: clamp(1.55rem, 1.2rem + 1.25vw, 2.35rem); }
.nm-privacy-section p:last-child { margin-bottom: 0; }
.nm-privacy-cluster-label { margin-top: clamp(4rem, 8vw, 8rem); }
.nm-privacy-cluster-title { max-width: 20ch; margin-bottom: clamp(2.5rem, 5vw, 5rem); }
.nm-privacy-rights { margin-block: clamp(4rem, 8vw, 8rem); padding: clamp(2rem, 5vw, 5rem); background: var(--nm-ui-muted); border-left: 4px solid var(--nm-ui-accent); }
.nm-privacy-rights h2 { max-width: 18ch; }
.nm-privacy-rights p:last-child { max-width: 78ch; margin-bottom: 0; }
.nm-privacy-meta { max-width: 78ch; height: auto; margin-top: clamp(3rem, 6vw, 6rem); }
@media (max-width: 781px) {
  .nm-privacy-policy { width: calc(100% - 2rem); }
  .nm-privacy-grid { gap: 2.5rem; margin-bottom: 2.5rem; }
  .nm-privacy-cluster-title { margin-bottom: 2.5rem; }
  .nm-privacy-rights { padding: 1.5rem; border-left-width: 3px; }
}
.nm-jobs-employer { margin-block: var(--wp--preset--spacing--l); padding: clamp(2rem, 5vw, 4rem); background: var(--nm-ui-muted); }
.nm-jobs-employer .wp-block-image { margin-block: 1.5rem 0; }
.nm-jobs-employer img { width: auto; max-width: min(15rem, 70%); max-height: 4rem; object-fit: contain; }
.nm-jobs-status { border-top-color: var(--nm-ui-accent); background: var(--nm-ui-muted); padding-inline: clamp(1.5rem, 4vw, 4rem); }
.nm-profile-positioning { margin-block: var(--wp--preset--spacing--l) var(--wp--preset--spacing--xl); align-items: stretch; }
.nm-profile-facts { padding: clamp(1.5rem, 3vw, 2.5rem); background: var(--nm-ui-muted); border-top: 3px solid var(--nm-ui-accent); }
.nm-profile-facts p { margin-block: 0 1.4rem; }
.nm-profile-facts p:last-child { margin-bottom: 0; }
.nm-founder { padding-block: clamp(1rem, 3vw, 3rem); }
.nm-founder h2 { max-width: 19ch; }
.nm-founder-aside { display: flex; align-items: center; }
.nm-founder-aside .wp-block-quote { margin: 0; }
.page-id-7 .wp-block-post-content { width: 100%; max-width: none; }
.page-id-7 main > .wp-block-post-title { display: none; }
.page-id-7 .wp-block-post-content > :not(.alignfull) { width: min(calc(100% - clamp(2rem, 6vw, 6rem)), var(--wp--style--global--wide-size)); }
.nm-profile-intro { padding-block: clamp(3rem, 8vw, 8rem); scroll-snap-align: start; scroll-snap-stop: always; }
.nm-profile-intro > h2 { max-width: 15ch; font-size: clamp(3rem, 7vw, 7rem); line-height: .94; }
.nm-profile-intro-grid { margin-top: clamp(2rem, 6vw, 5rem); align-items: end; }
.nm-profile-chapter { box-sizing: border-box; width: 100vw; max-width: none; margin-inline: calc(50% - 50vw); padding: clamp(4rem, 8vw, 8rem) clamp(1.25rem, 4vw, 4rem); }
.nm-profile-name { background: #1e293b !important; color: #f8fafc !important; }
.nm-profile-founder { background: #080d17 !important; color: #f8fafc !important; }
.nm-profile-method { background: #172554 !important; color: #f8fafc !important; }
.nm-profile-hybrid { background: #e8f2ec !important; color: #13251b !important; }
.nm-profile-sustainability { background: #f4e9e3 !important; color: #302018 !important; }
.nm-profile-chapter :where(h2, h3, p, strong, a, cite) { color: inherit !important; }
.nm-profile-chapter__inner { width: min(100%, var(--wp--style--global--wide-size)); margin-inline: auto; }
.nm-profile-chapter__inner > h2 { max-width: 18ch; margin-block: .5rem clamp(1.75rem, 4vw, 3.5rem); font-size: clamp(2.8rem, 6vw, 6rem); line-height: .96; }
.nm-profile-chapter__inner > .has-lead-font-size { max-width: 48rem; }
.nm-profile-duo, .nm-profile-founder-grid, .nm-profile-steps { margin-top: clamp(2rem, 5vw, 4rem); align-items: stretch; }
.nm-profile-duo > .wp-block-column, .nm-profile-steps > .wp-block-column { padding: clamp(1.35rem, 2.5vw, 2.25rem); border-top: 2px solid currentColor; background: color-mix(in srgb, currentColor 4%, transparent); }
.nm-profile-steps > .wp-block-column { transition: background-color .5s ease; }
@media (hover:hover) and (pointer:fine) { .nm-profile-steps > .wp-block-column:hover { background: color-mix(in srgb, currentColor 8%, transparent); } }
.nm-profile-founder .nm-profile-quote { display: flex; align-items: end; }
.nm-profile-founder .wp-block-quote { margin: 0; padding: clamp(1.5rem, 3vw, 2.5rem); border: 1px solid rgb(255 255 255 / 22%); }
.nm-profile-sustainability .wp-block-quote { max-width: 54rem; margin-top: clamp(2rem, 5vw, 4rem); }
.nm-profile-outro { margin-block: clamp(4rem, 9vw, 9rem); padding: clamp(2rem, 5vw, 5rem); }
@media (min-width: 782px) { .page-id-7 .nm-profile-chapter { min-height: 100svh; scroll-snap-align: start; scroll-snap-stop: always; } }
@media (max-width: 781px) {
  .page-id-7 .wp-block-post-content > :not(.alignfull) { width: calc(100% - 2rem); }
  .nm-profile-intro > h2, .nm-profile-chapter__inner > h2 { font-size: clamp(2.7rem, 13vw, 4.6rem); }
  .nm-profile-chapter { min-height: auto !important; padding-block: 4rem; }
  .nm-profile-founder .nm-profile-quote { margin-top: 1rem; }
}
.home .wp-block-post-content > .is-style-neomesh-surface { margin-block: clamp(3rem, 7vw, 7rem); padding: clamp(2.25rem, 5vw, 5rem); }
.home .wp-block-post-content > .is-style-neomesh-surface > :first-child { margin-top: 0; }
.home .wp-block-post-content > .is-style-neomesh-surface > :last-child { margin-bottom: 0; }
@media (max-width: 900px) { .nm-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .nm-product-grid { grid-template-columns: 1fr; } }
.wp-block-navigation .wp-block-navigation__submenu-container { padding: .65rem; border: 1px solid var(--nm-ui-border); border-radius: .75rem; box-shadow: var(--nm-shadow); }
.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content { min-width: 14rem; padding: .55rem .7rem; }
.nm-header-search { width: 10.5rem; margin-left: .25rem; }
.nm-header-search .wp-block-search__input { min-width: 0; border-color: var(--nm-ui-border); border-radius: 999px 0 0 999px; color: var(--nm-ui-text); background: var(--nm-ui-surface); font-size: .82rem; padding-inline: .8rem; color-scheme: light; }
.nm-header-search .wp-block-search__input::placeholder { color: var(--nm-ui-text-muted); opacity: 1; }
.nm-header-search .wp-block-search__button { margin-left: 0; border-radius: 0 999px 999px 0; color: var(--nm-ui-button-text); background: var(--nm-ui-button); padding-inline: .65rem; }
html[data-nm-theme="light"] .nm-header-search .wp-block-search__input { color:#101828; background:#fff; border-color:#d0d5dd; color-scheme:light; }
html[data-nm-theme="light"] .nm-header-search .wp-block-search__input::placeholder { color:#667085; }
html[data-nm-theme="light"] .nm-header-search .wp-block-search__button { color:#fff; background:#101828; }
.custom-logo { filter: brightness(0); }
/* Give the flex item a definite width so SVG percentage sizing cannot collapse. */
.nm-brand-logo { display:inline-flex; width:10.75rem; max-width:100%; flex-shrink:0; background-image:none !important; }
.nm-brand-logo__image { display:block; width:100%; max-width:100%; height:auto; filter:brightness(0); }
.nm-footer-logo .nm-brand-logo__image { filter:brightness(0) invert(1); }
html[data-nm-theme="dark"] .nm-header-logo .nm-brand-logo__image { filter:brightness(0) invert(1); }
@media (prefers-color-scheme: dark) { html:not([data-nm-theme]) .nm-header-logo .nm-brand-logo__image { filter:brightness(0) invert(1); } }
.nm-breadcrumbs { display: flex; flex-wrap: wrap; gap: .45rem; margin-top: var(--wp--preset--spacing--m); color: #667085; font-size: .82rem; }
.nm-breadcrumbs a { color: inherit; text-decoration: none; }
.nm-breadcrumbs a:hover { color: #101828; text-decoration: underline; text-underline-offset: .22em; }
.nm-breadcrumbs__separator { opacity: .55; }
.nm-theme-toggle button { position:relative; display: inline-grid; place-items: center; width: 2.5rem; height: 2.5rem; padding: 0; overflow:hidden; border: 1px solid #d0d5dd; border-radius: 50%; color: #101828; background: #fff; cursor: pointer; }
.nm-theme-toggle { position: relative; }
.nm-theme-toggle .nm-theme-icon { position:absolute; display:block; width:1.25rem; height:1.25rem; font-size:1.25rem; line-height:1.25rem; will-change:transform,opacity; transition:transform .62s cubic-bezier(.35,.82,.32,1), opacity .34s ease; }
/* Two opposing pivots give the icons a short, visible orbital path rather than a linear slide. */
.nm-theme-toggle .nm-sun { opacity:1; transform-origin:50% 285%; transform:rotate(0deg); }
.nm-theme-toggle .nm-moon { opacity:0; transform-origin:50% -185%; transform:rotate(-110deg); }
.nm-theme-toggle button::after { position: absolute; top: calc(100% + .5rem); right: 0; width: max-content; max-width: min(16rem, calc(100vw - 1.5rem)); padding: .4rem .55rem; color: #f8fafc; background: #101828; content: attr(data-tooltip); font-size: .75rem; font-weight: 600; line-height: 1.2; opacity: 0; pointer-events: none; transform: translateY(-.2rem); transition: opacity .18s ease, transform .18s ease; }
.nm-theme-toggle button:is(:hover, :focus-visible)::after { opacity: 1; transform: translateY(0); }
.nm-theme-toggle button:focus-visible { outline: 3px solid #2f6fed; outline-offset: 3px; }
html.nm-theme-transition :is(body, .wp-site-blocks, header.wp-block-template-part > header.wp-block-group, footer.wp-block-group, .wp-block-group, .wp-block-column, .wp-block-button__link, .nm-theme-toggle button, .nm-client-logo) { transition: color 2s cubic-bezier(.22,.61,.36,1), background-color 2s cubic-bezier(.22,.61,.36,1), border-color 2s cubic-bezier(.22,.61,.36,1), box-shadow 2s cubic-bezier(.22,.61,.36,1); }
.nm-theme-dawn-overlay { position: fixed; inset: 0; z-index: 1000; pointer-events: none; animation: nm-theme-dawn 2s cubic-bezier(.22,.61,.36,1) forwards; }
.nm-theme-dawn-overlay--to-light { background: radial-gradient(95% 78% at 86% -8%, rgb(243 231 209 / 34%), rgb(255 255 255 / 12%) 54%, transparent 100%); }
.nm-theme-dawn-overlay--to-dark { background: radial-gradient(95% 78% at 86% -8%, rgb(27 41 72 / 26%), rgb(8 13 23 / 28%) 54%, transparent 100%); }
@keyframes nm-theme-dawn { 0% { opacity: 0; } 28% { opacity: 1; } 100% { opacity: 0; } }
html[data-nm-theme="dark"] { --wp--preset--color--ink: #f8fafc; --wp--preset--color--slate: #cbd5e1; --wp--preset--color--mist: #1e293b; --wp--preset--color--paper: #101828; --wp--preset--color--blue: #8fb5ff; --wp--preset--color--soft-blue: #172554; --nm-shadow: 0 18px 50px rgb(0 0 0 / 25%); --nm-ui-bg:#101828; --nm-ui-surface:#182235; --nm-ui-muted:#1e293b; --nm-ui-text:#f8fafc; --nm-ui-text-muted:#cbd5e1; --nm-ui-border:#475467; --nm-ui-accent:#8fb5ff; --nm-ui-accent-soft:#172554; --nm-ui-button:#f8fafc; --nm-ui-button-text:#101828; }
html[data-nm-theme="dark"] body, html[data-nm-theme="dark"] .wp-site-blocks { background-color: #101828 !important; color: #f8fafc !important; }
html[data-nm-theme="dark"] .has-mist-background-color { background-color: #1e293b !important; }
html[data-nm-theme="dark"] .has-paper-background-color { background-color: #101828 !important; }
html[data-nm-theme="dark"] .has-ink-background-color { background-color: #080d17 !important; }
html[data-nm-theme="dark"] a:not(.wp-block-button__link) { color: #d7e4ff; }
html[data-nm-theme="dark"] .nm-theme-toggle button { background: #182235; color: #f8fafc; border-color: #475467; }
html[data-nm-theme="dark"] .custom-logo { filter: brightness(0) invert(1); }
html[data-nm-theme="dark"] .nm-breadcrumbs { color: #cbd5e1; }
html[data-nm-theme="dark"] .nm-breadcrumbs a:hover { color: #fff; }
html[data-nm-theme="dark"] .nm-header-search .wp-block-search__input { background:#182235; color:#f8fafc; border-color:#475467; }
html[data-nm-theme="dark"] .nm-header-search .wp-block-search__input::placeholder { color:#cbd5e1; }
html[data-nm-theme="dark"] .nm-header-search .wp-block-search__button { background:#f8fafc; color:#101828; }
html[data-nm-theme="dark"] .nm-theme-toggle .nm-sun { opacity:0; transform:rotate(110deg); }
html[data-nm-theme="dark"] .nm-theme-toggle .nm-moon { opacity:1; transform:rotate(0deg); }
html[data-nm-theme="dark"] header.wp-block-template-part > header.wp-block-group { border-bottom-color: #344054 !important; background: rgb(16 24 40 / 78%); }
html[data-nm-theme="dark"] footer.wp-block-group { background:#080d17 !important; color:#f8fafc !important; }
html[data-nm-theme="dark"] footer.wp-block-group a { color:#f8fafc !important; }
html[data-nm-theme="dark"] .wp-block-navigation__responsive-container.is-menu-open { background:#101828; color:#f8fafc; }
html[data-nm-theme="dark"] .wp-block-navigation__responsive-container-close svg { fill:#f8fafc; }
@media (prefers-color-scheme: dark) {
  html:not([data-nm-theme]) { --wp--preset--color--ink: #f8fafc; --wp--preset--color--slate: #cbd5e1; --wp--preset--color--mist: #1e293b; --wp--preset--color--paper: #101828; --wp--preset--color--blue: #8fb5ff; --wp--preset--color--soft-blue: #172554; --nm-shadow: 0 18px 50px rgb(0 0 0 / 25%); --nm-ui-bg:#101828; --nm-ui-surface:#182235; --nm-ui-muted:#1e293b; --nm-ui-text:#f8fafc; --nm-ui-text-muted:#cbd5e1; --nm-ui-border:#475467; --nm-ui-accent:#8fb5ff; --nm-ui-accent-soft:#172554; --nm-ui-button:#f8fafc; --nm-ui-button-text:#101828; }
  html:not([data-nm-theme]) body, html:not([data-nm-theme]) .wp-site-blocks { background-color: #101828 !important; color: #f8fafc !important; }
  html:not([data-nm-theme]) .has-mist-background-color { background-color: #1e293b !important; }
  html:not([data-nm-theme]) .has-paper-background-color { background-color: #101828 !important; }
  html:not([data-nm-theme]) .has-ink-background-color { background-color: #080d17 !important; }
  html:not([data-nm-theme]) a:not(.wp-block-button__link) { color: #d7e4ff; }
  html:not([data-nm-theme]) .nm-theme-toggle button { background: #182235; color: #f8fafc; border-color: #475467; }
  html:not([data-nm-theme]) .custom-logo { filter: brightness(0) invert(1); }
  html:not([data-nm-theme]) .nm-header-search .wp-block-search__input { background:#182235; color:#f8fafc; border-color:#475467; }
  html:not([data-nm-theme]) .nm-header-search .wp-block-search__input::placeholder { color:#cbd5e1; }
  html:not([data-nm-theme]) .nm-header-search .wp-block-search__button { background:#f8fafc; color:#101828; }
  html:not([data-nm-theme]) .nm-theme-toggle .nm-sun { opacity:0; transform:rotate(110deg); }
  html:not([data-nm-theme]) .nm-theme-toggle .nm-moon { opacity:1; transform:rotate(0deg); }
  html:not([data-nm-theme]) header.wp-block-template-part > header.wp-block-group { border-bottom-color: #344054 !important; background: rgb(16 24 40 / 78%); }
  html:not([data-nm-theme]) footer.wp-block-group { background:#080d17 !important; color:#f8fafc !important; }
  html:not([data-nm-theme]) footer.wp-block-group a { color:#f8fafc !important; }
  html:not([data-nm-theme]) .wp-block-navigation__responsive-container.is-menu-open { background:#101828; color:#f8fafc; }
  html:not([data-nm-theme]) .wp-block-navigation__responsive-container-close svg { fill:#f8fafc; }
}
@media (max-width: 781px) {
  .wp-block-post-content :where(h1, h2, h3) { overflow-wrap: anywhere; }
  .wp-block-post-content .wp-block-quote { box-sizing: border-box; width: calc(100% - .5rem) !important; max-width: calc(100% - .5rem) !important; }
  .page-id-7 .is-style-neomesh-screen-section { width: 100% !important; max-width: 100% !important; margin-inline: auto !important; }
  .nm-breadcrumbs__home { min-width: 2.75rem; min-height: 2.75rem; margin: -.7rem 0 -.7rem -.7rem; }
  .lightbox-trigger, .neodialog__reset { min-width: 2.75rem !important; min-height: 2.75rem !important; }
  .nm-hero-slider__dots button { position: relative; width: 2.25rem; height: 2.25rem; border-color: transparent; background: transparent; backdrop-filter: none; }
  .nm-hero-slider__dots button::after { content: ""; position: absolute; inset: 50% auto auto 50%; width: .65rem; height: .65rem; border: 1px solid rgb(255 255 255 / 70%); border-radius: 999px; background: rgb(8 13 23 / 30%); transform: translate(-50%, -50%); }
  .nm-hero-slider__dots button[aria-current="true"] { width: 2.25rem; background: transparent; }
  .nm-hero-slider__dots button[aria-current="true"]::after { width: 1.25rem; background: #fff; }
  .nm-hero-grid { min-height: auto; }
  .nm-hero-slider { min-height: 34rem; }
  .nm-hero-slide { padding: 2rem 1.25rem 5.5rem; }
  .wp-block-post-content .nm-hero-slide :is(h1, h2) { font-size: clamp(2.8rem, 14vw, 5rem); }
  .nm-hero-slider__controls { right: 1.25rem; bottom: 1.25rem; }
  .nm-header-search { display: none; }
  .wp-block-navigation__responsive-container.is-menu-open { padding: 1.5rem; }
}
@media (max-width: 1100px) { .nm-header-search { display: none; } }
@media (min-width: 900px) {
  .nm-magazine-query .wp-block-post-template { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(2rem,4vw,4.5rem); }
  .nm-magazine-query .wp-block-post-template > li { margin:0; }
}
@media (max-width: 781px) { html.nm-has-screen-sections.nm-snap-is-ready { scroll-snap-type: none; scroll-padding-block: 0; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } html.nm-has-screen-sections { scroll-snap-type: none; } *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; } :where(.is-style-neomesh-reveal,.is-style-neomesh-soft-reveal,.nm-auto-reveal,.nm-footer-signoff) { opacity: 1; transform: none; } .nm-pointer { animation: none !important; } .nm-viewport-edge-blur { display: none; } .is-style-neomesh-parallax .wp-block-cover__image-background, .nm-page-hero__image, .nm-hero-slide__image { transform: none; } }

/* Adobe Captivate landing page. */
.page-id-472 .entry-content { margin-block-start:0; }
.page-id-472 .nm-captivate-section { width:100vw; max-width:none; margin-inline:calc(50% - 50vw); padding-inline:clamp(1.25rem,4vw,4rem); border-radius:0; }
.page-id-472 .nm-captivate-section > .wp-block-group { width:min(100%,var(--wp--style--global--wide-size)); margin-inline:auto; }
.page-id-472 .nm-captivate-intro { min-height:min(76svh,52rem); padding-block:clamp(4rem,10vh,8rem); background:var(--nm-ui-bg); }
.page-id-472 .nm-captivate-capabilities { background:var(--nm-ui-muted); }
.page-id-472 .nm-captivate-features { background:var(--nm-ui-bg); }
.page-id-472 .nm-captivate-standards { color:#f8fafc; background:#101828; }
.page-id-472 .nm-captivate-expertise { background:var(--nm-ui-accent-soft); }
.page-id-472 .nm-captivate-options { background:var(--nm-ui-surface); }
.page-id-472 .nm-captivate-section h2 { max-width:18ch; margin-top:0; font-size:clamp(2.2rem,5vw,5.2rem); text-wrap:balance; }
.page-id-472 .nm-captivate-logo { display:flex; margin:0; justify-content:center; }
.page-id-472 .nm-captivate-logo img { width:clamp(6.5rem,12vw,9rem)!important; height:auto; }
.page-id-472 .nm-certified-logo { margin:0; }
.page-id-472 .nm-certified-logo img { width:min(100%,17.5rem)!important; height:auto; }
.page-id-472 .nm-captivate-grid { margin-top:clamp(2.5rem,6vh,5rem); align-items:stretch; }
.page-id-472 .nm-captivate-card,.page-id-472 .nm-captivate-option { padding:clamp(1.25rem,2.5vw,2.25rem) 0; border-top:2px solid currentColor; }
.page-id-472 .nm-captivate-card .nm-section-number { display:block; margin-bottom:clamp(2rem,5vh,4rem); color:var(--nm-ui-accent); font-size:.78rem; font-weight:750; letter-spacing:.12em; }
.page-id-472 .nm-captivate-card h3,.page-id-472 .nm-captivate-option h3 { margin-top:0; }
.page-id-472 .nm-captivate-feature-layout { margin-top:clamp(2.5rem,6vh,5rem); gap:clamp(2rem,5vw,6rem); align-items:stretch; }
.page-id-472 .nm-captivate-feature-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 clamp(1.5rem,3vw,3rem); margin:0; padding:0; list-style:none; }
.page-id-472 .nm-captivate-feature-list li { padding:1.15rem 0 1.35rem; border-top:2px solid currentColor; }
.page-id-472 .nm-captivate-feature-list strong { display:block; margin-bottom:.35rem; font-size:1.05em; }
.page-id-472 .nm-captivate-ai { display:flex; flex-direction:column; justify-content:center; padding:clamp(1.75rem,4vw,4rem); color:#f8fafc; background:#101828; border-top:4px solid var(--nm-ui-accent); }
.page-id-472 .nm-captivate-ai :where(h3,p) { color:inherit; }
.page-id-472 .nm-captivate-ai h3 { margin-top:.5rem; font-size:clamp(1.75rem,3vw,3rem); text-wrap:balance; }
.page-id-472 .nm-captivate-badge { margin:0; color:#a8c3ff!important; font-size:.75rem; font-weight:750; letter-spacing:.1em; text-transform:uppercase; }
.page-id-472 .nm-captivate-standards :where(h2,h3,p,li) { color:inherit; }
.page-id-472 .nm-captivate-standards .nm-eyebrow { color:#a8c3ff; }
.page-id-472 .nm-captivate-standard-list { padding-top:1.25rem; border-top:2px solid currentColor; }
.page-id-472 .nm-captivate-standard-list li + li { margin-top:.65rem; }
.page-id-472 .nm-captivate-option { display:flex; min-height:20rem; flex-direction:column; align-items:flex-start; }
.page-id-472 .nm-captivate-option .wp-block-buttons { margin-top:auto; padding-top:2rem; }
.page-id-472 .nm-captivate-legal { max-width:60rem; margin-top:clamp(3rem,6vh,5rem); color:var(--nm-ui-text-muted); }
@media (max-width:781px) { .page-id-472 .nm-captivate-section { width:100%; max-width:100%; min-height:auto; margin-inline:auto; padding-block:clamp(3.5rem,12vw,5rem); } .page-id-472 .nm-captivate-intro { min-height:auto; } .page-id-472 .nm-captivate-section h2 { font-size:clamp(2rem,10vw,3.25rem); } .page-id-472 .nm-captivate-logo { justify-content:flex-start; } .page-id-472 .nm-captivate-option { min-height:auto; } .page-id-472 .nm-captivate-feature-list { grid-template-columns:1fr; } .page-id-472 .nm-captivate-ai { padding:1.5rem; } }

/* Virtual-tour single template. */
.nm-tour-heading { margin-block: clamp(3rem, 8vw, 7rem) clamp(2rem, 5vw, 4rem); }
.nm-tour-heading h1 { max-width: 16ch; margin-top: 0; text-wrap: balance; }
.nm-tour-detail { width: 100%; }
.nm-tour-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; margin:0 0 clamp(3rem,7vw,6rem); background:var(--nm-ui-border); border:1px solid var(--nm-ui-border); }
.nm-tour-facts > div { padding:clamp(1.25rem,3vw,2.5rem); background:var(--nm-ui-surface); }
.nm-tour-facts dt { margin-bottom:.6rem; color:var(--nm-ui-text-muted); font-size:.75rem; font-weight:750; letter-spacing:.1em; text-transform:uppercase; }
.nm-tour-facts dd { margin:0; font-size:clamp(1.05rem,1.6vw,1.35rem); }
.nm-tour-embed { margin-block:clamp(3rem,8vw,7rem); }
.nm-tour-embed h2 { max-width:16ch; }
.nm-tour-frame { position:relative; width:100%; aspect-ratio:16/9; min-height:32rem; overflow:hidden; background:var(--nm-ui-muted); }
.nm-tour-frame iframe { position:absolute; inset:0; width:100%; height:100%; border:0; }
.nm-tour-frame--map { min-height:28rem; }
.nm-tour-nav { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; margin-block:clamp(4rem,9vw,8rem); background:var(--nm-ui-border); border:1px solid var(--nm-ui-border); }
.nm-tour-nav > :where(a,span) { min-height:9rem; padding:clamp(1.25rem,3vw,2.5rem); background:var(--nm-ui-surface); }
.nm-tour-nav a { display:flex; flex-direction:column; justify-content:space-between; color:inherit; }
.nm-tour-nav a:last-child { text-align:right; }
.nm-tour-nav small { color:var(--nm-ui-text-muted); font-weight:650; }
.nm-tour-nav strong { font-family:var(--wp--preset--font-family--neomesh-serif); font-size:clamp(1.15rem,2vw,1.7rem); line-height:1.15; }
@media (hover:hover) and (pointer:fine) { .nm-tour-nav a { transition:background-color .35s ease; } .nm-tour-nav a:hover { background:var(--nm-ui-muted); } }
@media (max-width:680px) { .nm-tour-facts,.nm-tour-nav { grid-template-columns:1fr; } .nm-tour-frame,.nm-tour-frame--map { min-height:23rem; aspect-ratio:4/5; } .nm-tour-nav a:last-child { text-align:left; } .nm-tour-nav > :where(a,span):empty { display:none; } }

/* Training and qualification: wide, chapter-based editorial layout. */
.page-id-58 .entry-content { margin-block-start: 0; }
.page-id-58 .nm-training-section {
	width: 100vw;
	max-width: none;
	margin-inline: calc(50% - 50vw);
	padding-inline: clamp(1.25rem, 4vw, 4rem);
	border-radius: 0;
}
.page-id-58 .nm-training-section > .wp-block-group {
	width: min(100%, var(--wp--style--global--wide-size));
	margin-inline: auto;
}
.page-id-58 .nm-training-intro {
	min-height: min(72svh, 48rem);
	padding-block: clamp(4rem, 10vh, 8rem);
	background: var(--nm-ui-bg);
}
.page-id-58 .nm-training-formats { background: var(--nm-ui-muted); }
.page-id-58 .nm-training-process { background: var(--nm-ui-surface); }
.page-id-58 .nm-training-evaluation { color: #f8fafc; background: #101828; }
.page-id-58 .nm-training-experience { background: var(--nm-ui-accent-soft); }
.page-id-58 .nm-training-section h2 {
	max-width: 17ch;
	margin-top: 0;
	font-size: clamp(2.2rem, 5vw, 5.25rem);
	text-wrap: balance;
}
.page-id-58 .nm-training-section .nm-training-lead { max-width: 48rem; }
.page-id-58 .nm-training-grid { margin-top: clamp(2.5rem, 6vh, 5rem); align-items: stretch; }
.page-id-58 .nm-training-card {
	height: 100%;
	padding: clamp(1.25rem, 2.5vw, 2.25rem) 0;
	border-top: 2px solid currentColor;
}
.page-id-58 .nm-training-card .nm-section-number {
	display: block;
	margin-bottom: clamp(2rem, 5vh, 4rem);
	color: var(--nm-ui-accent);
	font-size: .78rem;
	font-weight: 750;
	letter-spacing: .12em;
}
.page-id-58 .nm-training-card h3 { margin-top: 0; font-size: clamp(1.25rem, 2vw, 1.8rem); }
.page-id-58 .nm-training-evaluation :where(h2,h3,p,li) { color: inherit; }
.page-id-58 .nm-training-evaluation .nm-eyebrow { color: #a8c3ff; }
.page-id-58 .nm-training-evaluation .wp-block-column:last-child {
	padding-top: 1.25rem;
	border-top: 2px solid currentColor;
}
.page-id-58 .nm-training-evaluation li + li { margin-top: .7rem; }
.page-id-58 .nm-training-experience .wp-block-column { align-self: center; }
.page-id-58 .nm-training-actions { margin-top: clamp(2rem, 5vh, 4rem); }

@media (max-width: 781px) {
	.page-id-58 .nm-training-section {
		width: 100%;
		max-width: 100%;
		min-height: auto;
		margin-inline: auto;
		padding-block: clamp(3.5rem, 12vw, 5rem);
	}
	.page-id-58 .nm-training-intro { min-height: auto; }
	.page-id-58 .nm-training-section h2 { font-size: clamp(2rem, 10vw, 3.25rem); }
	.page-id-58 .nm-training-card .nm-section-number { margin-bottom: 1.5rem; }
	.page-id-58 .nm-training-grid { gap: 1.5rem; }
}

@media (prefers-reduced-motion: reduce) {
	.nm-theme-toggle .nm-theme-icon { transition: none; }
}

/* White supplied reference marks need a contrasting surface in both modes. */
.nm-client-logo.nm-client-logo--inverse { background:#263243; }
.nm-client-logo--inverse img { opacity:1; }

/* Accessible contact shortcut on empty frontend surfaces. */
.nm-contact-context-menu { position:fixed; z-index:2147483646; width:230px; padding:6px; border:1px solid #cbd0d8; border-radius:12px; background:#fff; color:#101828; box-shadow:0 12px 36px rgb(16 24 40 / 18%); font:500 15px/1.4 var(--wp--preset--font-family--neomesh-sans, sans-serif); }
.nm-contact-context-menu[hidden] { display:none; }
.nm-contact-context-menu a { display:block; color:inherit; border-radius:7px; padding:11px 13px; text-decoration:none; }
.nm-contact-context-menu a:is(:hover,:focus-visible) { background:#e8f0ff; color:#101828; outline:2px solid #2458bf; outline-offset:-2px; }
html[data-nm-theme="dark"] .nm-contact-context-menu { background:#182230; color:#f8fafc; border-color:#475467; }
html[data-nm-theme="dark"] .nm-contact-context-menu a:is(:hover,:focus-visible) { background:#293c60; color:#f8fafc; outline-color:#a8c3ff; }
@media(prefers-color-scheme:dark) { html:not([data-nm-theme]) .nm-contact-context-menu { background:#182230; color:#f8fafc; border-color:#475467; } html:not([data-nm-theme]) .nm-contact-context-menu a:is(:hover,:focus-visible) { background:#293c60; color:#f8fafc; outline-color:#a8c3ff; } }

/* Consistent keyboard focus plus an explicit, opt-in navigation aid. */
body :where(a,button,input,textarea,select,[tabindex]):focus-visible { outline:3px solid #2458bf; outline-offset:4px; box-shadow:0 0 0 2px #fff; }
.nm-keyboard-help-launcher { position:fixed; bottom:12px; left:12px; z-index:100000; padding:7px 11px; border:1px solid #cbd0d8; border-radius:7px; background:#fff; color:#101828; font:500 12px/1.4 sans-serif; cursor:pointer; }
.nm-keyboard-help { box-sizing:border-box; width:min(38rem,calc(100% - 32px)); max-height:85dvh; overflow:auto; padding:28px; border:1px solid #cbd0d8; border-radius:16px; background:#fff; color:#101828; box-shadow:0 20px 80px #0004; }
.nm-keyboard-help::backdrop { background:#10182888; }
.nm-keyboard-help h2 { margin-block:1rem; font-size:1.7rem; }
.nm-keyboard-help li { margin-block:.7rem; }
.nm-keyboard-help kbd { font:600 .9em monospace; padding:.1em .3em; border:1px solid currentColor; border-radius:4px; }
.nm-keyboard-help-close { float:right; padding:.4rem .7rem; color:inherit; background:transparent; border:1px solid currentColor; border-radius:6px; cursor:pointer; }
.nm-quick-toggle { display:flex; align-items:center; gap:.7rem; font-weight:600; margin-top:1.4rem; }
.nm-quick-keys { display:grid; grid-template-columns:2rem 1fr; gap:.5rem; }
.nm-quick-keys dd { margin:0; }
html[data-nm-theme="dark"] :is(.nm-keyboard-help,.nm-keyboard-help-launcher) { background:#182230; color:#f8fafc; border-color:#475467; }
html[data-nm-theme="dark"] body :where(a,button,input,textarea,select,[tabindex]):focus-visible { outline-color:#a8c3ff; box-shadow:0 0 0 2px #101828; }
@media(prefers-color-scheme:dark) { html:not([data-nm-theme]) :is(.nm-keyboard-help,.nm-keyboard-help-launcher) { background:#182230; color:#f8fafc; border-color:#475467; } }

/* Native, automatically updated visual site hierarchy. */
.nm-sitemap { padding-block:clamp(2rem,5vw,5rem); }
.nm-sitemap-intro { max-width:48rem; }
.nm-sitemap-root { display:table; margin:3rem auto 2rem; padding:1rem 2rem; border:1px solid var(--nm-ui-border,#d0d5dd); border-radius:12px; background:var(--nm-ui-accent-soft,#e8f0ff); position:relative; }
.nm-sitemap-root::after { content:""; position:absolute; height:2rem; width:1px; background:var(--nm-ui-border,#d0d5dd); top:100%; left:50%; }
.nm-sitemap-branches { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr)); gap:20px; padding-top:24px; border-top:1px solid var(--nm-ui-border,#d0d5dd); }
.nm-sitemap-branch { border:1px solid var(--nm-ui-border,#d0d5dd); border-radius:16px; padding:24px; background:var(--nm-ui-surface,#fff); min-width:0; }
.nm-sitemap-icon { width:40px; height:40px; padding:8px; border-radius:10px; color:var(--nm-ui-accent,#2458bf); background:var(--nm-ui-accent-soft,#e8f0ff); }
.nm-sitemap-icon svg { width:100%;height:100%; }
.nm-sitemap-branch h3 { font-size:1.35rem; margin-block:18px; }
.nm-sitemap a { color:inherit; text-decoration:none; overflow-wrap:anywhere; }
.nm-sitemap a:hover { text-decoration:underline; text-underline-offset:.2em; }
.nm-sitemap-tree,.nm-sitemap-tree ul { list-style:none; padding-left:14px; margin:0; border-left:1px solid var(--nm-ui-border,#d0d5dd); }
.nm-sitemap-tree li { position:relative; padding:8px 0 8px 8px; line-height:1.4; font-size:.95rem; }
.nm-sitemap-tree li::before { content:""; position:absolute; top:19px; left:-14px; width:15px; border-top:1px solid var(--nm-ui-border,#d0d5dd); }
.nm-sitemap-additional { margin-block:3rem; }
.nm-sitemap-cards { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr)); list-style:none; gap:10px; padding:0; }
.nm-sitemap-cards a { display:block; height:100%; box-sizing:border-box; padding:14px 16px; border:1px solid var(--nm-ui-border,#d0d5dd); border-radius:9px; }
.nm-sitemap-collection { padding:18px 0; border-top:1px solid var(--nm-ui-border,#d0d5dd); }
.nm-sitemap-collection summary { cursor:pointer; font-size:1.2rem; font-weight:600; padding:8px; }
.nm-sitemap-collection summary span { font:500 .8em sans-serif; opacity:.7; margin-left:.5em; }

.nm-sitemap-heading { display:flex; align-items:center; justify-content:space-between; gap:1.5rem; flex-wrap:wrap; }
.nm-sitemap-heading h2 { margin-block:.5rem; }
.nm-sitemap-heading .nm-sitemap-search { width:min(100%,22rem); margin:0; flex-shrink:0; }
.nm-sitemap-search .wp-block-search__inside-wrapper { min-height:44px; }
@media(max-width:600px) { .nm-sitemap-heading { align-items:stretch; gap:.75rem; } .nm-sitemap-heading .nm-sitemap-search { width:100%; } }
.nm-sitemap-heading .nm-sitemap-search { display:block; }

/* Editable language landing pages share the section palette system. */
.nm-language-section h1 { font-size:clamp(2.8rem,6.8vw,6.5rem); line-height:1.02; letter-spacing:-.04em; max-width:16ch; margin-block:1.6rem 2rem; }
.nm-language-section h2 { font-size:clamp(2rem,4vw,3.75rem); line-height:1.12; max-width:24ch; }
.nm-language-section h3 { font-size:clamp(1.3rem,2vw,1.6rem); line-height:1.25; }
.nm-language-section > .nm-section__inner > p { max-width:70ch; }
.nm-language-section .nm-language-lead { font-size:clamp(1.1rem,2vw,1.4rem); line-height:1.6; }
.nm-language-section .wp-block-buttons { margin-top:2rem; gap:1rem; }
.nm-language-section .nm-language-note { font-size:.85rem; margin-top:1.2rem; }
.nm-language-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.5rem; margin-top:3rem; }
.nm-language-card { padding:clamp(1.4rem,3vw,2.5rem); border:1px solid color-mix(in srgb,currentColor 18%,transparent); border-radius:1rem; margin-block:0!important; min-width:0; }
.nm-language-card .nm-section-number,.nm-language-step .nm-section-number { font-size:.85rem; font-weight:600; letter-spacing:.12em; }
.nm-language-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:2rem; margin-top:3rem; }
.nm-language-step { border-top:1px solid color-mix(in srgb,currentColor 25%,transparent); padding-top:1.25rem; margin-block:0!important; min-width:0; }
@media(max-width:700px) { .nm-language-grid,.nm-language-steps { grid-template-columns:1fr; } .nm-language-section .wp-block-button { width:100%; } .nm-language-section .wp-block-button__link { box-sizing:border-box; width:100%; text-align:center; } }

@media(min-width:1200px) { .nm-sitemap-branches { grid-template-columns:repeat(5,minmax(0,1fr)); } }

.nm-language-section.alignfull { box-sizing:border-box; width:100vw; max-width:100vw; margin:0 calc(50% - 50vw)!important; padding-inline:max(1.5rem,calc((100vw - 1200px)/2)); }
.nm-language-section > .nm-section__inner { width:100%; max-width:1200px; margin-inline:auto; }
.nm-language-navigation .nm-section-navigation__label { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
@media(min-width:782px) { .nm-language-navigation .nm-section-navigation__button:is(:hover,:focus-visible) .nm-section-navigation__label { right:60px; top:0; width:max-content; height:auto; clip-path:none; padding:5px 10px; border-radius:4px; background:var(--nm-ui-surface); color:var(--nm-ui-text); font-size:.8rem; } }
@media(max-width:781px) {
 .nm-language-navigation { display:block; top:var(--nm-header-height,74px); right:0; left:0; transform:none; overflow-x:auto; background:var(--nm-ui-surface); border-bottom:1px solid var(--nm-ui-border); }
 .nm-language-navigation ol { flex-direction:row; width:max-content; gap:0; }
 .nm-language-navigation li { position:static; height:auto; }
 .nm-language-navigation .nm-section-navigation__button { position:static; width:auto; height:44px; transform:none; padding:0 14px; color:var(--nm-ui-text); }
 .nm-language-navigation .nm-section-navigation__label { position:static; width:auto; height:auto; clip-path:none; overflow:visible; font-size:.78rem; white-space:nowrap; }
 .nm-language-navigation .nm-section-navigation__line { display:none; }
 .nm-language-navigation .is-active { border-bottom:3px solid var(--nm-ui-accent); }
 .nm-language-hero { padding-top:5.5rem; }
}

.wp-site-blocks > .nm-language-main { width:100%; max-width:none; padding:0; margin:0; }
.nm-language-main > .wp-block-post-content { width:100%; max-width:none; margin:0!important; padding:0; }
.nm-language-main .nm-language-section.alignfull { width:100%; max-width:none; margin:0!important; }
/* One safe viewport and snap contract for all section-based pages. */
html.nm-section-layout { scroll-padding-block-start:var(--nm-snap-header-offset,0px); }
html.nm-section-layout header.wp-block-template-part { position:sticky; top:var(--nm-snap-admin-offset,0px); }
html.nm-section-layout .nm-snap-section:not(.nm-hero-slider) { box-sizing:border-box; min-height:calc(100svh - var(--nm-snap-header-offset,0px)); height:auto; scroll-snap-align:start; scroll-snap-stop:normal; scroll-margin-block-start:0; }
html.nm-section-layout.nm-has-screen-sections.nm-snap-is-ready { scroll-snap-type:y proximity; scroll-padding-block-end:0; }
@media(prefers-reduced-motion:reduce) { html.nm-section-layout { scroll-behavior:auto; scroll-snap-type:none!important; } }
html.nm-section-layout .nm-snap-section.nm-hero-slider { height:calc(100svh - var(--nm-snap-header-offset,0px)); min-height:max(38rem,var(--nm-hero-content-min,0px)); scroll-snap-align:start; scroll-margin-top:0; }
@media(max-width:781px) { html.nm-section-layout .nm-snap-section.nm-hero-slider { min-height:max(34rem,var(--nm-hero-content-min,0px)); } }
.nm-hero-slider__track > .nm-hero-slide { box-sizing:border-box; flex:0 0 100%; min-width:0; }
@media(max-width:781px) { .home .nm-keyboard-help-launcher { bottom:5rem; } }

.nm-alt-shortcuts-visible .nm-shortcut-letter { color:var(--nm-ui-button-text); background:var(--nm-ui-button); box-shadow:0 0 0 2px var(--nm-ui-button); border-radius:2px; text-decoration:underline; text-underline-offset:.12em; }

/* A native modal sits above the document cursor: restore the system cursor. */
html.nm-custom-cursor:has(#nm-keyboard-help[open]),html.nm-custom-cursor:has(#nm-keyboard-help[open]) * { cursor:auto!important; }
html.nm-custom-cursor #nm-keyboard-help[open] :is(a,button) { cursor:pointer!important; }
html:has(#nm-keyboard-help[open]) .nm-pointer { visibility:hidden!important; }
.nm-keyboard-help kbd { display:inline-block; white-space:nowrap; }
.nm-keyboard-help .nm-key-combo { display:inline-flex; align-items:center; gap:.25em; white-space:nowrap; }
.nm-keyboard-help .nm-quick-keys { grid-template-columns:max-content minmax(0,1fr); align-items:center; gap:.8rem 1.2rem; }
.nm-keyboard-help .nm-quick-keys dt { white-space:nowrap; }
.nm-keyboard-help .nm-quick-keys dd { min-width:0; }
@media(max-width:420px) { .nm-keyboard-help { padding:20px; } .nm-keyboard-help .nm-quick-keys { gap:.75rem .7rem; font-size:.9rem; } }

html.nm-reduced-motion { scroll-behavior:auto!important; scroll-snap-type:none!important; }
html.nm-reduced-motion *,html.nm-reduced-motion *::before,html.nm-reduced-motion *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; scroll-snap-type:none!important; }
html.nm-reduced-motion .nm-pointer,html.nm-reduced-motion .nm-idle-light,html.nm-reduced-motion .nm-viewport-edge-blur { display:none!important; }
html.nm-reduced-motion,html.nm-reduced-motion * { cursor:auto!important; }
html.nm-reduced-motion :is(a,button,[role="button"]) { cursor:pointer!important; }
html.nm-reduced-motion :where(.is-style-neomesh-reveal,.is-style-neomesh-soft-reveal,.nm-auto-reveal,.nm-footer-signoff,.nm-reveal-pending) { opacity:1!important; visibility:visible!important; transform:none!important; }
html.nm-reduced-motion :is(.is-style-neomesh-parallax .wp-block-cover__image-background,.nm-page-hero__image,.nm-hero-slide__image,.home .nm-editorial-split .wp-block-image) { transform:none!important; }
.nm-motion-setting { display:flex; align-items:center; gap:.65rem; font-weight:600; }

/* Review: keep long German headings and branded artwork readable on small/dark surfaces. */
:where(h1, h2, h3, .nm-page-hero__title) { overflow-wrap: anywhere; hyphens: auto; }
.nm-project-mark img, .nm-jobs-employer img { box-sizing: content-box; padding: 1rem; background: #fff; border-radius: .25rem; }
html[data-nm-theme="dark"] :is(.page-id-8 .nm-office-hours, .page-id-57 .nm-communication-intro) { background:#1b2948; color:#f8fafc; }
html[data-nm-theme="dark"] :is(.page-id-8 .nm-proof-section, .page-id-57 .nm-moderation-workshops) { background:#44332a; color:#f8fafc; }
html[data-nm-theme="dark"] :is(.page-id-8 .nm-contact-form-section, .page-id-57 .nm-communication-services) { background:#17362d; color:#f8fafc; }
html[data-nm-theme="dark"] :is(.page-id-8,.page-id-57) .nm-screen-section em.nm-heading-accent { color:#a8c3ff; }

.single-post .wp-block-post-content > :is(.nm-editorial-post,.nm-article-reading-column) { max-width:76rem; }
.single-post .wp-block-post-content .is-style-neomesh-reading-columns { width:100%; max-width:76rem; max-inline-size:76rem; margin-block:2rem; }

/* Include hero padding in its available width; keep title and article within the viewport. */
.single-post .nm-article-single { padding-inline:0; }
.single-post .nm-article-hero__content { box-sizing:border-box; min-width:0; }
.single-post .nm-article-hero__inner { min-width:0; max-width:100%; }
.single-post .nm-article-hero__title em { color:inherit; }

.single-post .nm-article-single > .nm-article-hero { width:100%; max-width:none; margin-inline:0; }

.nm-article-publisher { margin-top:1.5rem; font-size:.9rem; color:inherit; } .nm-article-publisher a { color:inherit; text-decoration:underline; }
.nm-evidence-section { padding:clamp(3rem,6vw,6rem) max(1.25rem,calc((100vw - 1200px)/2)); } .nm-evidence-section .wp-block-columns { gap:2rem; } .nm-evidence-section .wp-block-column { border-top:1px solid currentColor; padding-top:1rem; }

.wp-block-post-content > .nm-evidence-section { width:100vw !important; max-width:none !important; margin-inline:calc(50% - 50vw) !important; }

/* Keep the header for the first viewport, then reveal the page beneath it. */
header.wp-block-template-part { position:sticky; top:var(--nm-snap-admin-offset,var(--wp-admin--admin-bar--height,0px)); transition:transform .22s ease,visibility .22s; }
html header.wp-block-template-part.nm-header-hidden { transform:translateY(calc(-100% - var(--nm-snap-admin-offset,0px)))!important; visibility:hidden; pointer-events:none; }
@media(max-width:781px) {
 html.nm-header-is-hidden .nm-language-navigation { top:var(--nm-snap-admin-offset,0px)!important; }
}
@media(prefers-reduced-motion:reduce) { header.wp-block-template-part { transition:none; } }

/* Ten short vector signatures; the untouched image anchors the layout. */
.nm-footer-logo { position:relative; overflow:visible; }
.nm-footer-vector { position:absolute; inset:0; width:100%; height:100%; overflow:visible; color:#fff; fill:currentColor; opacity:0; pointer-events:none; }
.nm-footer-vector__echo { opacity:0; }
.nm-footer-vector__echo--cyan { color:#8de6ed; }
.nm-footer-vector__echo--rose { color:#eea6cb; }
.nm-footer-logo[data-nm-logo-effect] .nm-brand-logo__image { opacity:0; }
.nm-footer-logo[data-nm-logo-effect] .nm-footer-vector { opacity:1; }
.nm-footer-logo[data-nm-logo-effect="wave"] .nm-footer-vector__letters > path { transform-box:fill-box; transform-origin:center; animation:nm-logo-wave .8s cubic-bezier(.22,.7,.25,1) both; animation-delay:calc(var(--nm-letter) * 38ms); }
.nm-footer-logo[data-nm-logo-effect="draw"] .nm-footer-vector__letters > path { stroke:currentColor; stroke-width:1.8; stroke-dasharray:1; animation:nm-logo-draw 1.05s ease both; animation-delay:calc(var(--nm-letter) * 18ms); }
.nm-footer-logo[data-nm-logo-effect="spectrum"] .nm-footer-vector__echo { animation:nm-logo-spectrum 1.05s cubic-bezier(.22,.7,.25,1) both; mix-blend-mode:screen; }
.nm-footer-vector__echo--cyan { --nm-echo-x:-9px; --nm-echo-y:-3px; }
.nm-footer-vector__echo--rose { --nm-echo-x:9px; --nm-echo-y:3px; }
@keyframes nm-logo-wave { 0%,100% { transform:translateY(0) rotate(0); } 38% { transform:translateY(-11px) rotate(-5deg); fill:#8de6ed; } 68% { transform:translateY(3px) rotate(2deg); } }
@keyframes nm-logo-draw { 0% { fill-opacity:0; stroke-dashoffset:1; } 62% { fill-opacity:0; stroke-dashoffset:0; } 100% { fill-opacity:1; stroke-dashoffset:0; stroke-opacity:0; } }
@keyframes nm-logo-spectrum { 0%,100% { opacity:0; transform:translate(0,0); } 35% { opacity:.72; transform:translate(var(--nm-echo-x),var(--nm-echo-y)); } 65% { opacity:.4; transform:translate(calc(var(--nm-echo-x) * -.3),calc(var(--nm-echo-y) * -.3)); } }
/* Staggered letter effects finish before the 1300 ms playback cleanup. */
.nm-footer-logo:is([data-nm-logo-effect="spring"],[data-nm-logo-effect="tilt"],[data-nm-logo-effect="pulse"],[data-nm-logo-effect="stretch"],[data-nm-logo-effect="unfold"],[data-nm-logo-effect="glide"],[data-nm-logo-effect="glow"]) .nm-footer-vector__letters > path { transform-box:fill-box; transform-origin:center; animation-duration:.85s; animation-timing-function:cubic-bezier(.22,.7,.25,1); animation-fill-mode:both; animation-delay:calc(var(--nm-letter) * 40ms); }
.nm-footer-logo[data-nm-logo-effect="spring"] .nm-footer-vector__letters > path { transform-origin:center bottom; animation-name:nm-logo-spring; }
.nm-footer-logo[data-nm-logo-effect="tilt"] .nm-footer-vector__letters > path { transform-origin:center bottom; animation-name:nm-logo-tilt; }
.nm-footer-logo[data-nm-logo-effect="pulse"] .nm-footer-vector__letters > path { animation-name:nm-logo-pulse; }
.nm-footer-logo[data-nm-logo-effect="stretch"] .nm-footer-vector__letters > path { animation-name:nm-logo-stretch; }
.nm-footer-logo[data-nm-logo-effect="unfold"] .nm-footer-vector__letters > path { transform-origin:center bottom; animation-name:nm-logo-unfold; }
.nm-footer-logo[data-nm-logo-effect="glide"] .nm-footer-vector__letters > path { animation-name:nm-logo-glide; }
.nm-footer-logo[data-nm-logo-effect="glow"] .nm-footer-vector__letters > path { animation-name:nm-logo-glow; }
@keyframes nm-logo-spring { 0%,100% { transform:translateY(0) scale(1); } 20% { transform:translateY(2px) scale(1.08,.88); } 48% { transform:translateY(-9px) scale(.96,1.04); } 76% { transform:translateY(1px) scale(1.03,.96); } }
@keyframes nm-logo-tilt { 0%,100% { transform:rotate(0); } 30% { transform:rotate(-9deg); } 58% { transform:rotate(6deg); } 80% { transform:rotate(-2deg); } }
@keyframes nm-logo-pulse { 0%,100% { transform:scale(1); fill:#fff; } 45% { transform:scale(1.13); fill:#b9ccff; } 72% { transform:scale(.97); } }
@keyframes nm-logo-stretch { 0%,100% { transform:scale(1); } 32% { transform:scale(.86,1.16); } 64% { transform:scale(1.08,.94); } }
@keyframes nm-logo-unfold { 0%,100% { transform:scaleY(1) skewX(0); } 35% { transform:scaleY(.18) skewX(-12deg); } 70% { transform:scaleY(1.07) skewX(3deg); } }
@keyframes nm-logo-glide { 0%,100% { transform:translateX(0); opacity:1; } 25% { transform:translateX(-7px); opacity:.55; } 62% { transform:translateX(3px); opacity:1; } }
@keyframes nm-logo-glow { 0%,100% { fill:#fff; filter:drop-shadow(0 0 0 transparent); } 42% { fill:#8de6ed; filter:drop-shadow(0 0 3px rgb(141 230 237 / 65%)); } 70% { fill:#eea6cb; filter:drop-shadow(0 0 2px rgb(238 166 203 / 35%)); } }
html.nm-reduced-motion .nm-footer-logo .nm-footer-vector { display:none; }
html.nm-reduced-motion .nm-footer-logo .nm-brand-logo__image { opacity:1; }
@media(prefers-reduced-motion:reduce) { .nm-footer-logo .nm-footer-vector { display:none; } .nm-footer-logo .nm-brand-logo__image { opacity:1; } }

.home .nm-hero-slide :is(h1,h2,h3) { hyphens:none; -webkit-hyphens:none; overflow-wrap:normal; word-break:normal; }
@media(max-width:480px) {
 .home .nm-hero-slide :is(h1,h2) { font-size:clamp(2.65rem,13.5vw,5rem); }
}

@media(max-width:1100px) {
 header.wp-block-template-part.nm-search-open .nm-header-search { display:block; position:absolute; top:100%; right:1rem; width:min(24rem,calc(100vw - 2rem)); box-sizing:border-box; margin:0; padding:.5rem; background:var(--nm-ui-surface); border:1px solid var(--nm-ui-border); border-radius:.75rem; }
}

/* Consent controls use the same light/dark surfaces as the rest of neomesh. */
.cmplz-cookiebanner, #cmplz-manage-consent .cmplz-manage-consent {
 --cmplz_banner_background_color:var(--nm-ui-surface);
 --cmplz_banner_border_color:var(--nm-ui-border);
 --cmplz_banner_border_width:1px;
 --cmplz_text_color:var(--nm-ui-text);
 --cmplz_hyperlink_color:var(--nm-ui-text);
 --cmplz_button_accept_background_color:var(--nm-ui-button);
 --cmplz_button_accept_border_color:var(--nm-ui-button);
 --cmplz_button_accept_text_color:var(--nm-ui-button-text);
 --cmplz_button_deny_background_color:var(--nm-ui-surface);
 --cmplz_button_deny_border_color:var(--nm-ui-border);
 --cmplz_button_deny_text_color:var(--nm-ui-text);
 --cmplz_button_settings_background_color:var(--nm-ui-surface);
 --cmplz_button_settings_border_color:var(--nm-ui-border);
 --cmplz_button_settings_text_color:var(--nm-ui-text);
 --cmplz_category_header_always_active_color:var(--nm-ui-text-muted);
 --cmplz_slider_active_color:var(--nm-ui-button);
 --cmplz_slider_inactive_color:var(--nm-ui-border);
 --cmplz_slider_bullet_color:var(--nm-ui-button-text);
 font-family:var(--wp--preset--font-family--neomesh-sans);
}
html .cmplz-cookiebanner .cmplz-categories .cmplz-category { background:var(--nm-ui-muted); }
.cmplz-cookiebanner .cmplz-close svg { fill:currentColor; }
.cmplz-cookiebanner .cmplz-links a { text-decoration:underline; text-underline-offset:.16em; }
.cmplz-cookiebanner :is(button,a,input,[tabindex]):focus-visible, #cmplz-manage-consent .cmplz-manage-consent:focus-visible { outline:2px solid var(--nm-ui-text); outline-offset:3px; }

html .cmplz-cookiebanner .cmplz-close:focus { outline:2px solid var(--nm-ui-text); outline-offset:3px; }
.cmplz-cookiebanner .cmplz-icon svg { fill:var(--nm-ui-text); }
body:has(.cmplz-cookiebanner.cmplz-show) .nm-keyboard-help-launcher { z-index:9997; }

.nm-hero-slider__pause { display:grid; place-items:center; flex:0 0 auto; width:2.75rem; height:2.75rem; padding:0; border:1px solid rgb(255 255 255 / 55%); border-radius:50%; color:#fff; background:rgb(8 13 23 / 30%); -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); cursor:pointer; }
.nm-hero-slider__pause svg { width:1.1rem; height:1.1rem; fill:currentColor; }
.nm-hero-slider__pause[hidden] { display:none; }
.nm-hero-slider__pause:focus-visible { outline:2px solid #fff; outline-offset:3px; }
.nm-hero-slider__pause:disabled { opacity:.75; cursor:default; }

@media(max-width:781px) {
 .nm-hero-slider__controls { left:1.25rem; right:1.25rem; gap:.25rem; justify-content:space-between; }
 .nm-hero-slider__arrow { flex:0 0 auto; }
 .nm-hero-slider__dots { flex:1; gap:0; justify-content:space-evenly; }
 .nm-hero-slider__dots button, .nm-hero-slider__dots button[aria-current="true"] { flex:0 0 1.5rem; width:1.5rem; height:2.75rem; }
}
@media(max-width:360px) { .nm-hero-slider__arrow, .nm-hero-slider__pause { width:2.5rem; height:2.5rem; } }

/* Quiet feedback: reference captions, editorial links and project cards. */
.nm-client-logo { position:relative; flex-direction:column; gap:1rem; overflow:hidden; }
.nm-client-logo__caption { margin:0; color:#344054; font-size:.78rem; line-height:1.35; text-align:center; }
.nm-client-logo--inverse .nm-client-logo__caption { color:#f8fafc; }
main :is(p,li,figcaption) > a:not(.wp-element-button):not(:has(img,svg)) {
 text-decoration:underline; text-underline-offset:.2em;
 background-image:linear-gradient(currentColor,currentColor); background-repeat:no-repeat;
 background-position:0 100%; background-size:0 1px;
 transition:background-size .22s ease;
}
main :is(p,li,figcaption) > a:not(.wp-element-button):not(:has(img,svg)):is(:hover,:focus-visible) { background-size:100% 1px; }
:is(.nm-evidence-section > .wp-block-columns > .wp-block-column,.nm-research-section__card):has(a) {
 transition:transform .24s ease,box-shadow .24s ease;
}
@media (hover:hover) and (pointer:fine) and (min-width:782px) {
 html:not(.nm-reduced-motion) .nm-client-logo:has(img) { padding-bottom:3.4rem; }
 html:not(.nm-reduced-motion) .nm-client-logo__caption { position:absolute; left:.65rem; right:.65rem; bottom:.7rem; opacity:0; transform:translateY(4px); transition:opacity .22s ease,transform .22s ease; }
 html:not(.nm-reduced-motion) .nm-client-logo:is(:hover,:focus-within) .nm-client-logo__caption { opacity:1; transform:none; }
 html:not(.nm-reduced-motion) .nm-client-logo img { transition:transform .3s ease,filter .25s ease,opacity .25s ease; }
 html:not(.nm-reduced-motion) .nm-client-logo:is(:hover,:focus-within) img { transform:scale(1.035); }
 html:not(.nm-reduced-motion) :is(.nm-evidence-section > .wp-block-columns > .wp-block-column,.nm-research-section__card):has(a):is(:hover,:focus-within) { transform:translateY(-3px); box-shadow:0 12px 24px -18px rgb(16 24 40 / 35%); }
}
html.nm-reduced-motion main :is(p,li,figcaption) > a { transition:none; }
@media (prefers-reduced-motion:reduce) {
 html .nm-client-logo__caption { position:static!important; opacity:1!important; transform:none!important; transition:none!important; }
 html .nm-client-logo:has(img) { padding-bottom:1.5rem!important; }
 html .nm-client-logo img,html :is(.nm-evidence-section > .wp-block-columns > .wp-block-column,.nm-research-section__card):has(a) { transform:none!important; transition:none!important; }
 main :is(p,li,figcaption) > a { transition:none!important; }
}

/* Consistent button feedback without changing their position or hit area. */
:is(.wp-block-button__link,.wp-block-search__button,.nm-hero-slider__arrow,.nm-hero-slider__pause,.nm-theme-toggle button,.nm-keyboard-help-launcher,.cmplz-btn,.nm-video-consent__button):not(:disabled):not([aria-disabled="true"]) {
 transition:box-shadow .18s ease,filter .18s ease,background-color .18s ease;
}
@media (hover:hover) and (pointer:fine) {
 :is(.wp-block-button__link,.wp-block-search__button,.nm-hero-slider__arrow,.nm-hero-slider__pause,.nm-theme-toggle button,.nm-keyboard-help-launcher,.cmplz-btn,.nm-video-consent__button):not(:disabled):not([aria-disabled="true"]):hover {
  box-shadow:inset 0 0 0 1px color-mix(in srgb,currentColor 28%,transparent),0 4px 12px rgb(16 24 40 / 16%);
  filter:brightness(.94);
 }
}
:is(.wp-block-button__link,.wp-block-search__button,.nm-hero-slider__arrow,.nm-hero-slider__pause,.nm-theme-toggle button,.nm-keyboard-help-launcher,.cmplz-btn,.nm-video-consent__button):not(:disabled):not([aria-disabled="true"]):active {
 box-shadow:inset 0 2px 4px rgb(16 24 40 / 24%);filter:brightness(.88);
}

/* References: five editorial chapters, with a consistent grid for all industries. */
.page-id-44 .nm-references-section {
  margin-block: 0;
  padding-inline: max(1.25rem, calc((100vw - var(--wp--style--global--wide-size)) / 2)) !important;
  border-top: 1px solid var(--nm-ui-border);
}
.page-id-44 .nm-references-section > .nm-references-section__inner {
  width: 100%;
  max-width: var(--wp--style--global--wide-size);
}
.page-id-44 .nm-references-section__inner > :first-child { margin-top: 0; }
.page-id-44 .nm-references-section__inner > :last-child { margin-bottom: 0; }
.page-id-44 .nm-references-projects { background: var(--nm-ui-accent-soft); }
.page-id-44 .nm-references-projects .wp-block-columns { gap: clamp(1.5rem, 3vw, 3rem); margin-top: 3rem; }
.page-id-44 .nm-references-projects .wp-block-column { padding-top: 1.25rem; border-top: 2px solid var(--nm-ui-accent); }
.page-id-44 .nm-references-projects h3,
.page-id-44 .nm-references-industry h3 { margin-top: 0; font-size: clamp(1.4rem, 2.2vw, 2rem); line-height: 1.2; overflow-wrap: anywhere; }
.page-id-44 .nm-references-logos { background: var(--nm-ui-surface); }
.page-id-44 .nm-references-logos .nm-client-logos { margin-top: 3rem; }
.page-id-44 .nm-references-industries { background: var(--nm-ui-muted); }
.page-id-44 .nm-references-industry-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(2rem, 4vw, 4rem); margin-top: 3rem; }
.page-id-44 .nm-references-industry { margin: 0; padding-top: 1.25rem; border-top: 2px solid var(--nm-ui-border); }
.page-id-44 .nm-references-industry p { margin-bottom: 0; }
.page-id-44 .nm-references-context { background: var(--nm-ui-accent-soft); }
.page-id-44 .nm-references-context blockquote { max-width: 52rem; margin: 3rem 0 0; padding: 0 0 0 1.5rem; border-left: 3px solid var(--nm-ui-accent); }
.page-id-44 .nm-references-cta { color: #f8fafc; background: #101828; border-color: #344054; }
.page-id-44 .nm-references-cta a:not(.wp-block-button__link) { color: #d7e4ff; }
@media (max-width: 781px) {
  .page-id-44 .nm-references-industry-grid { grid-template-columns: 1fr; }
  .page-id-44 .nm-references-section { min-height: auto; }
}

/* Curated references: readable marks in two desktop rows within one chapter. */
.page-id-44 .nm-references-logos { min-height: calc(100svh - var(--nm-header-height, 96px)); padding-block: clamp(2rem, 5vh, 3rem) !important; }
.page-id-44 .nm-references-logos h2 { max-width: none; font-size: clamp(2rem, 4vw, 4rem); }
.page-id-44 .nm-references-logos .nm-client-logos { margin-top: 2rem; }
.page-id-44 .nm-references-logos .nm-client-logo { box-sizing: border-box; min-height: 10.5rem; padding: 1.25rem !important; gap: .75rem; }
.page-id-44 .nm-references-logos .nm-client-logo__caption { position: static !important; opacity: 1 !important; transform: none !important; }
@media (min-width: 782px) { .page-id-44 .nm-references-logos .nm-client-logos { grid-template-columns: repeat(5, minmax(0, 1fr)); } }
@media (max-width: 781px) { .page-id-44 .nm-references-logos { min-height: auto; } }

/* Overscan leaves room for the article cover to lag behind the scrolling text. */
.single-post .nm-article-hero--parallax .nm-article-hero__media {
  inset: -20% 0;
  transform: translate3d(0, var(--nm-article-parallax-y, 0px), 0);
  will-change: transform;
}
@media (prefers-reduced-motion: reduce) {
  .single-post .nm-article-hero--parallax .nm-article-hero__media { inset: 0; transform: none; will-change: auto; }
}
html.nm-reduced-motion .nm-article-hero--parallax .nm-article-hero__media { inset: 0; transform: none; will-change: auto; }

/* References: one full viewport per desktop chapter, including the header area. */
@media (min-width: 782px) {
  html.nm-section-layout:has(body.page-id-44) {
    scroll-padding-block: 0;
  }
  html.nm-section-layout.nm-has-screen-sections.nm-snap-is-ready:has(body.page-id-44) {
    scroll-snap-type: y mandatory;
  }
  html.nm-section-layout .page-id-44 .nm-references-section.nm-snap-section {
    display: flex !important;
    flex-direction: column;
    height: 100svh;
    height: 100dvh;
    min-height: 100svh;
    min-height: 100dvh;
    padding-block: calc(var(--nm-snap-header-offset, 100px) + 1.5rem) 2rem !important;
    overflow-y: auto;
    scroll-snap-align: start;
    scroll-snap-stop: always;
    scroll-margin-block: 0;
  }
  .page-id-44 .nm-references-section > .nm-references-section__inner {
    flex: 0 0 auto;
    margin-block: auto;
  }
  .page-id-44 :is(.nm-page-hero, footer.wp-block-template-part) {
    scroll-snap-align: start;
  }
}
@media (max-width: 781px) {
  html.nm-section-layout .page-id-44 .nm-references-section.nm-snap-section {
    min-height: 100svh;
  }
}

.page-id-44 .nm-references-section:focus-visible { outline: 2px solid var(--nm-ui-accent); outline-offset: -3px; }

/* Keep the home-page experience section clear of viewport edges. */
.home .nm-proof-section { box-sizing:border-box; padding-inline:clamp(1.5rem, 5vw, 5rem); }

/* Contact entry: one primary invitation, followed by a compact contact directory. */
.page-id-8 .nm-screen-section.nm-contact-intro { padding-inline: clamp(1.5rem, 4vw, 5rem) !important; }
.page-id-8 .nm-contact-intro .nm-contact-layout { max-width: 86rem; }
.page-id-8 .nm-contact-intro .nm-contact-opening { gap: clamp(2rem, 6vw, 7rem); margin: 0; align-items: center; }
.page-id-8 .nm-contact-intro .nm-contact-kicker { margin: 0 0 1.1rem; color: #a8c3ff; font-size: .8rem; font-weight: 650; letter-spacing: .12em; text-transform: uppercase; }
.page-id-8 .nm-contact-intro .nm-contact-title { max-width: 16ch; margin: 0; font-size: clamp(2.5rem, 4.4vw, 4.5rem); line-height: 1.08; letter-spacing: -.035em; text-wrap: balance; }
.page-id-8 .nm-contact-intro .nm-contact-summary > p { max-width: 53ch; margin: 0 0 1rem; color: #ccd4e2; font-size: 1.05rem; line-height: 1.65; hyphens: none; }
.page-id-8 .nm-contact-intro .nm-contact-actions { margin-top: 1.6rem; }
.page-id-8 .nm-contact-intro .nm-contact-actions .wp-block-button__link { display: inline-flex; align-items: center; justify-content: space-between; gap: 1.75rem; min-height: 3.1rem; padding: .85rem 1.3rem; border: 1px solid #d7e4ff; background: #d7e4ff; color: #101828; font-size: 1rem; font-weight: 650; }
.page-id-8 .nm-contact-intro .nm-contact-actions .wp-block-button__link:hover { background: #fff; border-color: #fff; }
.page-id-8 .nm-contact-intro .nm-contact-summary .nm-contact-phone { margin: 1rem 0 0; font-size: .9rem; }
.page-id-8 .nm-contact-intro .nm-contact-phone a { display: inline-block; padding-block: .3rem; white-space: nowrap; text-decoration: underline; text-underline-offset: .25em; }
.page-id-8 .nm-contact-intro .nm-contact-directory { margin-top: clamp(2.75rem, 5vw, 4.5rem); padding-top: 1.5rem; border-top: 1px solid #3a4558; }
.page-id-8 .nm-contact-intro .nm-contact-directory-title { max-width: none; margin: 0 0 1.4rem; font-family: var(--wp--preset--font-family--body, sans-serif); font-size: 1rem; font-weight: 500; line-height: 1.4; letter-spacing: 0; color: #b4c2d8; }
.page-id-8 .nm-contact-intro .nm-contact-options { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin: 0; max-width: none; }
.page-id-8 .nm-contact-intro .nm-contact-option { display: flex; flex-direction: column; min-width: 0; margin: 0; padding: clamp(1.25rem, 2.1vw, 2rem); border: 1px solid #344056; background: #162133; }
.page-id-8 .nm-contact-intro .nm-contact-option h3 { margin: 0 0 .85rem; color: #f8fafc; font-size: clamp(1.1rem, 1.5vw, 1.3rem); line-height: 1.35; text-wrap: balance; hyphens: none; }
.page-id-8 .nm-contact-intro .nm-contact-option > p { margin: 0; color: #c4cede; font-size: .97rem; line-height: 1.6; hyphens: none; }
.page-id-8 .nm-contact-intro .nm-contact-option .nm-contact-email { margin-top: auto; padding-top: 1.5rem; }
.page-id-8 .nm-contact-intro .nm-contact-email a { display: flex; align-items: center; justify-content: space-between; gap: .5rem; min-height: 2.75rem; padding-top: .65rem; border-top: 1px solid #344056; font-weight: 600; font-size: .95rem; overflow-wrap: anywhere; text-decoration: none; }
.page-id-8 .nm-contact-intro .nm-contact-email a:hover { color: #fff; text-decoration: underline; text-underline-offset: .25em; }
.page-id-8 .nm-contact-intro a:focus-visible { outline: 2px solid #a8c3ff; outline-offset: 5px; }
@media (max-width: 900px) {
  .page-id-8 .nm-contact-intro .nm-contact-opening { flex-direction: column; gap: 1.75rem; }
  .page-id-8 .nm-contact-intro .nm-contact-opening > .wp-block-column { width: 100%; flex-basis: auto !important; }
  .page-id-8 .nm-contact-intro .nm-contact-options { grid-template-columns: 1fr; }
  .page-id-8 .nm-contact-intro .nm-contact-title { max-width: 19ch; }
  .page-id-8 .nm-contact-intro .nm-contact-option .nm-contact-email { padding-top: 1rem; }
}

/* Match the home hero accent against the dark contact introduction. */
.page-id-8 .nm-screen-section.nm-contact-intro .nm-contact-title em.nm-heading-accent { color: #b9ccff; }

/* Plain section titles follow the pointer; keyboard labels stay by the target. */
.nm-section-navigation-cursor-label {
  position: fixed;
  inset: 0 auto auto 0;
  z-index: 100;
  display: block;
  width: max-content;
  max-width: min(26rem, calc(100vw - 32px));
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: #101828;
  text-shadow: 0 1px 3px rgb(255 255 255 / 70%);
  font-size: .85rem;
  font-weight: 600;
  line-height: 1.45;
  text-align: left;
  white-space: normal;
  overflow-wrap: anywhere;
  pointer-events: none;
  user-select: none;
  visibility: hidden;
}
.nm-section-navigation-cursor-label.is-on-dark { color: #f8fafc; text-shadow: 0 1px 3px rgb(0 0 0 / 80%); }
.nm-section-navigation-cursor-label.is-visible { visibility: visible; }
@media (min-width: 782px) {
  .nm-section-navigation .nm-section-navigation__label { display: none; }
}
@media (max-width: 781px) {
  .nm-section-navigation-cursor-label { display: none; }
}

/* Full-width home invitation, with the existing constrained text column. */
.home .wp-block-post-content > .nm-home-project-cta {
  box-sizing: border-box;
  width: 100%;
  max-width: none;
  margin: 0;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  padding-block: clamp(4rem, 8vw, 8rem);
  padding-inline: clamp(1.25rem, 5vw, 5rem);
}

/* Subtle gallery-only zoom; preserve the image box and lightbox controls. */
.nm-portrait-gallery .wp-block-image { overflow: hidden; }
.nm-portrait-gallery .wp-block-image img { transition: transform 400ms ease; transform-origin: center; }
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .nm-portrait-gallery .wp-block-image:hover img { transform: scale(1.035); }
}
@media (prefers-reduced-motion: reduce) {
  .nm-portrait-gallery .wp-block-image img { transition: none; transform: none; }
}

/* Give the values grid the full section width instead of the 760px text measure. */
.nm-research-section--values .nm-research-section__grid {
 width:100%; max-width:none; margin-inline:0;
}
.nm-research-section--values .nm-research-section__card { min-width:0; }
@media (max-width:960px) {
 .nm-research-section--values .nm-research-section__grid { grid-template-columns:1fr; }
}

/* Project communication follows the shared service-section layout. */
:is(.nm-project-communication,.nm-transformation-communication) { margin-block:0; }
:is(.nm-project-communication,.nm-transformation-communication) :is(.nm-project-communication-inner,.nm-communication-section-inner) { max-width:1100px; }
:is(.nm-project-communication,.nm-transformation-communication) :is(.nm-project-communication-inner,.nm-communication-section-inner) > .wp-block-columns { width:100%; max-width:none; gap:clamp(1.5rem,3vw,3rem); }
:is(.nm-project-communication,.nm-transformation-communication) .wp-block-column { min-width:0; }
@media(max-width:960px) {
 :is(.nm-project-communication,.nm-transformation-communication) .wp-block-columns { flex-direction:column; }
}

/* Editorial service pages: readable long-form text and spacious section grids. */
.nm-editorial-services { margin-block:0; }
.nm-editorial-services .nm-editorial-service-inner { max-width:1100px; }
.nm-editorial-services .nm-editorial-service-inner > .wp-block-columns { width:100%; max-width:none; gap:clamp(1.5rem,3vw,3rem); }
.nm-editorial-services .wp-block-column { min-width:0; }
.nm-seo-landing .nm-service-section h2 { max-width:24ch; font-size:clamp(2rem,3.8vw,3.5rem); }
.nm-seo-landing .nm-source-note { font-size:.875rem; line-height:1.55; }
.nm-seo-landing code { overflow-wrap:anywhere; }
.nm-photography-page .wp-block-columns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
@media(max-width:781px) {
 .nm-editorial-services .wp-block-columns { display:grid; grid-template-columns:1fr; }
 .nm-seo-landing .nm-service-section h2 { font-size:clamp(2rem,9vw,3rem); }
}

/* Shared entrance: visible by default, first intersection only; no layout geometry changes. */
@keyframes nm-section-enter { from { opacity:0; translate:0 10px; } to { opacity:1; translate:0 0; } }
.nm-reveal-item.nm-is-visible:not(.nm-reveal-static) { animation:nm-section-enter 560ms cubic-bezier(.2,.7,.2,1) var(--nm-reveal-delay,0ms) backwards; }
html.nm-reduced-motion .nm-reveal-item {animation:none!important;}
@media(prefers-reduced-motion:reduce) {.nm-reveal-item {animation:none!important;}}
@media print {.nm-reveal-item {animation:none!important;opacity:1!important;translate:none!important;}}

/* Advisory sections share one content column; prevent scattered grid children. */
.page-id-464 .nm-screen-section > .nm-advisory-inner {width:100%;max-width:1100px;margin-inline:auto;}
.page-id-464 .nm-advisory-inner > :is(h2,p,blockquote,.wp-block-buttons) {margin-inline:0;}
.page-id-464 .nm-advisory-inner > * + * {margin-block-start:1.5rem;}
.page-id-464 .nm-advisory-inner > .wp-block-columns {max-width:none;width:100%;}
.page-id-464 .nm-advisory-intro h2 {font-size:clamp(2.5rem,5vw,4.5rem)!important;line-height:1.06;max-width:24ch;margin-block:1.25rem 1.75rem;hyphens:none;}
.page-id-464 .nm-advisory-intro .nm-eyebrow {margin:0;}
.page-id-464 .nm-advisory-intro .has-lead-font-size {max-width:58rem;margin-block:0;}

/* Home invitation: original Neo artwork points toward the copy. */
.home .nm-home-project-cta > .nm-home-project-layout {display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);align-items:center;gap:clamp(1.5rem,4vw,4rem);width:100%;max-width:1100px;margin:0 auto;}
.home .nm-home-project-copy,.home .nm-home-project-visual {min-width:0;}
.home .nm-home-project-copy > * {margin-inline:0;}
.home .nm-home-project-visual .nm-home-neo {width:100%;margin:0;}
.home .nm-home-project-visual img {display:block;width:100%;height:auto;max-height:620px;object-fit:contain;object-position:center;}
@media(max-width:781px) {
 .home .nm-home-project-cta > .nm-home-project-layout {grid-template-columns:minmax(0,1fr);gap:1.5rem;}
 .home .nm-home-project-visual {width:min(70%,260px);margin-inline:auto;}
}

/* Dashboard Library: compact feature overview, scoped to this article. */
.postid-1284 .nm-dashboard-functions > .nm-section__inner {
  width:100%; max-width:1200px; margin-inline:auto;
}
.postid-1284 .nm-dashboard-functions .nm-dashboard-feature-grid {
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr));
  gap:2rem clamp(2rem,5vw,4rem); width:100%; max-width:none;
  margin-block-start:2.5rem;
}
.postid-1284 .nm-dashboard-feature-grid > .nm-dashboard-feature {
  min-width:0; margin:0;
}
.postid-1284 .nm-dashboard-feature > h3 { margin:0 0 .75rem; }
.postid-1284 .nm-dashboard-feature > p { margin:0; }
@media (max-width:781px) {
  .postid-1284 .nm-dashboard-functions .nm-dashboard-feature-grid {
    grid-template-columns:minmax(0,1fr); gap:1.75rem;
  }
}

.postid-1284 .nm-dashboard-license-layout { gap:clamp(2rem,5vw,4rem); margin-block-start:2.5rem; }
.postid-1284 .nm-dashboard-license-layout > .wp-block-column { min-width:0; display:flex; flex-direction:column; }
.postid-1284 .nm-dashboard-license-layout .wp-block-buttons { margin-block-start:auto; padding-block-start:1rem; }

/* Dashboard showcase sections span the article canvas; text stays constrained inside. */
.single-post.postid-1284 .wp-block-post-content {
  display:block; box-sizing:border-box; width:100%; max-width:none;
  max-inline-size:none; margin:0; padding:0;
}
.single-post.postid-1284 .wp-block-post-content > .nm-dashboard-section.alignfull {
  box-sizing:border-box; width:100%; max-width:none; max-inline-size:none;
  margin:0; border-radius:0;
}
.single-post.postid-1284 .nm-dashboard-section > .nm-section__inner {
  width:100%; max-width:1200px; margin-inline:auto;
}

/* Final Dashboard Library invitation with the existing transparent Neo asset. */
.single-post.postid-1284 .nm-dashboard-final-layout {
 display:grid; grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);
 align-items:center; gap:clamp(1.5rem,4vw,4rem);
}
.postid-1284 .nm-dashboard-final-layout > .wp-block-column { min-width:0; margin:0; }
.postid-1284 .nm-dashboard-final-copy > :first-child { margin-block-start:0; }
.postid-1284 .nm-dashboard-final-visual .nm-dashboard-final-neo { width:100%; margin:0; }
.postid-1284 .nm-dashboard-final-neo img {
 display:block; width:100%; height:auto; max-height:620px;
 object-fit:contain; object-position:center;
}
@media (max-width:781px) {
 .single-post.postid-1284 .nm-dashboard-final-layout { grid-template-columns:minmax(0,1fr); gap:1.5rem; }
 .postid-1284 .nm-dashboard-final-layout > .nm-dashboard-final-visual { width:min(70%,260px); margin-inline:auto; }
}

/* Technology overview follows the shared full-width service sections. */
.page-id-340 .wp-block-post-content { width:100%; max-width:none; margin-block-start:0; }
.page-id-340 .nm-technology-section { width:100%; max-width:none; margin:0; padding-inline:clamp(1.25rem,5vw,5rem); }
.page-id-340 .nm-technology-section > .nm-technology-inner { width:100%; max-width:1100px; margin-inline:auto; }
.page-id-340 .nm-technology-inner > :is(h2,p,.wp-block-buttons,.wp-block-columns) { margin-inline:0; }
.page-id-340 .nm-technology-inner > * + * { margin-block-start:1.5rem; }
.page-id-340 .nm-technology-inner > .wp-block-columns { width:100%; max-width:none; gap:2rem; }
.page-id-340 .nm-technology-inner h2 { max-width:24ch; }

/* Reuse the appointment asset's exact 516px grip edge, independently scoped. */
.page-id-340 .nm-technology-systems-layout {
 display:grid; grid-template-columns:clamp(7rem,18%,12rem) minmax(0,1fr);
 align-items:start; gap:0; isolation:isolate;
}
.page-id-340 .nm-technology-systems-layout > .nm-technology-neo {
 position:relative; z-index:1; width:calc(100% * 578 / 516);
 max-width:none; margin:0; pointer-events:none;
}
.page-id-340 .nm-technology-neo img { display:block; width:100%; height:auto; }
.page-id-340 .nm-technology-systems-layout > .nm-product-grid {
 min-width:0; width:100%; margin:0; border-radius:0;
}
@media (max-width:640px) {
 .page-id-340 .nm-technology-systems-layout { grid-template-columns:clamp(2.5rem,13vw,5rem) minmax(0,1fr); }
}

/* Keep the extra research level inside the desktop viewport. */
@media (min-width:782px) {
 .wp-block-navigation .nm-research-menu > .wp-block-navigation__submenu-container { left:100% !important; right:auto !important; top:0; }
}

/* Remove the default page-template gutter around technology section backgrounds. */
.page-id-340 main.wp-block-group { padding-inline:0 !important; }

/* Technology information cards: stationary feedback, no implied link. */
.page-id-340 .nm-product { transition: box-shadow 180ms ease; }
@media (hover: hover) {
  .page-id-340 .nm-product:hover { box-shadow: inset 0 0 0 2px var(--nm-climate-accent, #244e67); }
}
html[data-nm-theme="dark"] .page-id-340 .nm-product-logo img[src="/neomesh.svg"] { filter: invert(1); }
@media (prefers-color-scheme: dark) {
  html:not([data-nm-theme="light"]) .page-id-340 .nm-product-logo img[src="/neomesh.svg"] { filter: invert(1); }
}
@media (prefers-reduced-motion: reduce) {
  .page-id-340 .nm-product { transition: none; }
}
html.nm-reduced-motion .page-id-340 .nm-product { transition: none; }
/* Preserve Microsoft's original wordmark colors on a neutral logo plate. */
.page-id-340 .nm-product-logo img[src$="/microsoft.png"] { box-sizing: content-box; padding: .45rem; background: #fafafa; }

/* Scannable project communication services, using native blocks. */
.page-id-25 .nm-project-services-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(2rem,4vw,4rem); margin-top:3rem; }
.page-id-25 .nm-project-service-group { min-width:0; margin:0; }
.page-id-25 .nm-project-service-group h3 { margin:0 0 1.5rem; }
.page-id-25 .nm-project-service-group p { margin:0 0 1.25rem; }
@media(max-width:640px) { .page-id-25 .nm-project-services-grid { grid-template-columns:1fr; } }
.page-id-25 main.wp-block-group { padding-inline:0 !important; }
.page-id-25 .wp-block-post-content, .page-id-25 .nm-project-communication { width:100%; max-width:none; margin-inline:0; padding-inline:0; }
.page-id-25 .nm-project-communication > .nm-service-section.alignfull { box-sizing:border-box; width:100%; max-width:none; margin-inline:0; }

/* Existing Neo image alongside the concept heading; retain the complete motif. */
.page-id-25 #projektbetrieb .nm-project-concept-intro { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(0,1fr); align-items:center; gap:clamp(1.5rem,4vw,3rem); width:100%; max-width:none; margin-bottom:2.5rem; }
.page-id-25 #projektbetrieb .nm-project-concept-intro h2 { margin:0; min-width:0; }
.page-id-25 #projektbetrieb .nm-project-concept-neo { width:100%; max-width:360px; margin:0; justify-self:center; pointer-events:none; }
.page-id-25 #projektbetrieb .nm-project-concept-neo img { display:block; width:100%; height:auto; object-fit:contain; }
@media(max-width:640px) {
 .page-id-25 #projektbetrieb .nm-project-concept-intro { grid-template-columns:1fr; }
 .page-id-25 #projektbetrieb .nm-project-concept-neo { max-width:280px; }
}

/* Research: remove the root block gap between its hero and content. */
.page-id-2483 .nm-page-hero + main.wp-block-group { margin-block-start:0; }

/* Integration CTA: existing full-length Neo points toward the copy. */
.page-id-340 .nm-technology-final-layout { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); gap:clamp(2rem,5vw,4rem); align-items:center; }
.page-id-340 .nm-technology-final-copy { min-width:0; }
.page-id-340 .nm-technology-final-copy > * { margin-inline:0; }
.page-id-340 .nm-technology-final-copy > * + * { margin-block-start:1.5rem; }
.page-id-340 .nm-technology-final-layout > .nm-technology-final-neo { width:100%; max-width:340px; margin:0; justify-self:center; pointer-events:none; }
.page-id-340 .nm-technology-final-neo img { display:block; width:100%; height:auto; object-fit:contain; }
@media(max-width:640px) {
 .page-id-340 .nm-technology-final-layout { grid-template-columns:1fr; }
 .page-id-340 .nm-technology-final-layout > .nm-technology-final-neo { max-width:260px; }
}

/* Two-day Captivate course, local native sections and Dashboard Library agenda. */
.page-id-2502 main.wp-block-group { padding-inline:0 !important; }
.page-id-2502 .wp-block-post-content { width:100%;max-width:none;margin:0;padding:0; }
.page-id-2502 .nm-captivate-training-section { box-sizing:border-box;width:100%;max-width:none;margin:0;padding-inline:clamp(1.25rem,5vw,5rem); }
.page-id-2502 .nm-captivate-training-inner { width:100%;max-width:1100px;margin-inline:auto; }
.page-id-2502 .nm-captivate-training-inner > * { margin-inline:0; }
.page-id-2502 .nm-captivate-training-inner > * + * { margin-block-start:1.5rem; }
.page-id-2502 .nm-captivate-training-inner > p { max-width:76ch; }
.page-id-2502 .nm-captivate-relative-agenda { width:100%;max-width:none; }
.page-id-2502 .nm-captivate-relative-agenda:not(.nm-agenda-ready) .dl-agenda-range,
.page-id-2502 .nm-captivate-relative-agenda:not(.nm-agenda-ready) .dl-agenda-day-heading > time { visibility:hidden; }
.page-id-2502 .dl-agenda { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem; }
.page-id-2502 .dl-agenda > :not(.dl-agenda-day) { grid-column:1/-1; }
.page-id-2502 .dl-agenda-day { min-width:0;margin:0; }
.page-id-2502 .dl-agenda-blocks { max-width:100%; }
@media(max-width:800px) { .page-id-2502 .dl-agenda { grid-template-columns:1fr; } }
@layer nm-climate {
 html:not([data-nm-theme="dark"]) .page-id-2502 [data-nm-climate="blue"] h2 .nm-heading-accent { color:#fafafa !important; }
 @media(prefers-color-scheme:dark) {
 html:not([data-nm-theme]) .page-id-2502 [data-nm-climate="blue"] h2 .nm-heading-accent { color:#ccc343 !important; }
 }
}
@layer nm-climate {
 .page-id-2502 .dl-agenda {
  --dl-surface:var(--nm-climate-bg) !important;
  --dl-text:var(--nm-climate-fg) !important;
  --dl-muted:var(--nm-climate-fg) !important;
  --dl-border:var(--nm-climate-accent) !important;
  --dl-agenda-session-bg:var(--nm-climate-bg) !important;
  --dl-agenda-break-bg:var(--nm-climate-bg) !important;
  --dl-agenda-accent:var(--nm-climate-accent) !important;
  --dl-agenda-break-accent:var(--nm-climate-fg) !important;
 }
 .page-id-2502 .dl-agenda :is(.dl-agenda-day-hours,.dl-agenda-time,.dl-agenda-time-separator,.dl-agenda-info) { color:var(--nm-climate-fg) !important; }
}
.page-id-2502 .dl-agenda > .dl-title,
.page-id-2502 .dl-agenda > .dl-agenda-range,
.page-id-2502 .dl-agenda > .dl-agenda-zone { margin:0; }
@media(max-width:640px) {
 .page-id-2502 .ndl-wp .dl-agenda { padding:1rem; }
 .page-id-2502 .ndl-wp .dl-agenda-block { grid-template-columns:minmax(0,1fr);gap:.5rem;padding:1rem; }
}

/* Fixed navigation must use the viewport, not the blurred sticky header. */
html.has-modal-open header.wp-block-template-part {
 transform:none !important;
 z-index:100000;
}
html.has-modal-open header.wp-block-template-part > header.wp-block-group {
 -webkit-backdrop-filter:none !important;
 backdrop-filter:none !important;
}

/* References: join the featured hero directly to the first section. */
body.page-id-44 .nm-page-hero + main { margin-block-start: 0; }
