/*
Theme Name: Emergo
Theme URI: https://emergo.biz/
Author: Emergo
Author URI: https://emergo.biz/
Description: Native block theme for the bilingual Emergo website and approved visual identity system.
Version: 0.2.16
Requires at least: 7.0
Requires PHP: 8.3
Text Domain: emergo
*/

:root {
  --emergo-transition: 180ms ease;
}

html {
  scroll-behavior: smooth;
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}

body {
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

:where(a, button, input, select, textarea, summary):focus-visible {
  outline: 3px solid var(--wp--preset--color--muted-amber);
  outline-offset: 3px;
}

.skip-link {
  background: var(--wp--preset--color--deep-ink);
  color: var(--wp--preset--color--warm-ivory);
  left: 1rem;
  padding: 0.75rem 1rem;
  position: fixed;
  top: 1rem;
  transform: translateY(-200%);
  transition: transform var(--emergo-transition);
  z-index: 100000;
}

.skip-link:focus {
  transform: translateY(0);
}

.site-header {
  background: color-mix(in srgb, var(--wp--preset--color--warm-ivory) 96%, transparent);
  border-bottom: 1px solid var(--wp--preset--color--stone-line);
  position: relative;
  z-index: 1;
}

.site-footer a {
  color: inherit;
}

.emergo-eyebrow {
  font-size: var(--wp--preset--font-size--small);
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.emergo-surface {
  background: var(--wp--preset--color--warm-stone);
  border: 1px solid var(--wp--preset--color--stone-line);
  border-radius: var(--wp--custom--radius--medium);
}

.emergo-diagnostic-question {
  border-left: 4px solid var(--wp--preset--color--grounded-clay);
  padding-left: var(--wp--preset--spacing--24);
}

.emergo-cta {
  align-items: center;
  border: 1px solid transparent;
  border-radius: var(--wp--custom--radius--small);
  display: inline-flex;
  font-size: var(--wp--preset--font-size--body);
  font-weight: 600;
  justify-content: center;
  line-height: 1.2;
  min-height: 44px;
  padding: 0.85rem 1.15rem;
  text-decoration: none;
  transition:
    background-color var(--emergo-transition),
    border-color var(--emergo-transition),
    color var(--emergo-transition);
}

.emergo-cta--primary {
  background: var(--wp--preset--color--deep-ink);
  color: var(--wp--preset--color--warm-ivory);
}

.emergo-cta--primary:hover {
  background: var(--wp--preset--color--near-black);
  color: var(--wp--preset--color--warm-ivory);
}

.emergo-cta--secondary {
  background: transparent;
  border-color: var(--wp--preset--color--deep-ink);
  color: var(--wp--preset--color--deep-ink);
}

.emergo-cta--secondary:hover {
  background: var(--wp--preset--color--warm-stone);
  color: var(--wp--preset--color--deep-ink);
}

.emergo-cta--text {
  color: var(--wp--preset--color--deep-teal);
  min-height: auto;
  padding: 0;
  text-decoration: underline;
  text-decoration-thickness: 0.08em;
  text-underline-offset: 0.18em;
}

@media (max-width: 48rem) {
  .site-header__inner {
    gap: var(--wp--preset--spacing--16) !important;
  }
}

/* Prototype page composition — v0.1.1 */
.emergo-section {
  padding-block: clamp(3.5rem, 7vw, 7rem);
}

.emergo-section--stone {
  background: var(--wp--preset--color--warm-stone);
}

.emergo-section--ink {
  background: var(--wp--preset--color--deep-ink);
  color: var(--wp--preset--color--warm-ivory);
}

.emergo-section--ink :where(h1, h2, h3, h4, p, li) {
  color: inherit;
}

.emergo-intro {
  max-width: 54rem;
}

.emergo-copy-narrow {
  max-width: 46rem;
}

.emergo-highlight-question {
  border-left: 4px solid var(--wp--preset--color--grounded-clay);
  font-size: var(--wp--preset--font-size--body-large);
  font-weight: 600;
  margin-top: var(--wp--preset--spacing--32);
  padding-left: var(--wp--preset--spacing--24);
}

.emergo-card-grid,
.emergo-engagement-grid {
  display: grid;
  gap: var(--wp--preset--spacing--24);
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.emergo-field-grid {
  display: grid;
  gap: var(--wp--preset--spacing--24);
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.emergo-card {
  background: var(--wp--preset--color--warm-ivory);
  border: 1px solid var(--wp--preset--color--stone-line);
  border-radius: var(--wp--custom--radius--medium);
  padding: clamp(1.35rem, 2.5vw, 2rem);
}

.emergo-card h3,
.emergo-card h4 {
  margin-top: 0;
}

.emergo-card__label {
  color: var(--wp--preset--color--deep-clay);
  font-size: var(--wp--preset--font-size--small);
  font-weight: 600;
  letter-spacing: 0.025em;
  margin-top: var(--wp--preset--spacing--24);
}

.emergo-card__question {
  color: var(--wp--preset--color--deep-ink);
  font-weight: 500;
  margin-bottom: 0;
}

.emergo-process {
  counter-reset: emergo-step;
  display: grid;
  gap: var(--wp--preset--spacing--16);
}

.emergo-process-step {
  border-top: 1px solid var(--wp--preset--color--stone-line);
  display: block;
  padding-block: var(--wp--preset--spacing--24);
  padding-left: 4rem;
  position: relative;
}

.emergo-process-step::before {
  color: var(--wp--preset--color--deep-teal);
  content: counter(emergo-step, decimal-leading-zero);
  counter-increment: emergo-step;
  font-weight: 600;
  left: 0;
  position: absolute;
  top: var(--wp--preset--spacing--24);
}

.emergo-process-step h3 {
  margin-top: 0;
}

.emergo-process-step p:last-child {
  margin-bottom: 0;
}

.emergo-principle-lines {
  display: grid;
  gap: var(--wp--preset--spacing--12);
  margin-block: var(--wp--preset--spacing--32);
}

.emergo-principle-lines p {
  border-left: 3px solid var(--wp--preset--color--deep-teal);
  margin: 0;
  padding-left: var(--wp--preset--spacing--16);
}

.emergo-context-note {
  border-top: 1px solid var(--wp--preset--color--stone-line);
  margin-top: var(--wp--preset--spacing--32);
  padding-top: var(--wp--preset--spacing--24);
}

.emergo-outcome {
  color: var(--wp--preset--color--deep-teal);
  font-size: var(--wp--preset--font-size--small);
  font-weight: 600;
}

.emergo-cta-row {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--wp--preset--spacing--16);
  margin-top: var(--wp--preset--spacing--32);
}

.emergo-section--ink .emergo-learning-loop__item,
.emergo-section--ink .emergo-learning-loop__item p {
  color: var(--wp--preset--color--deep-ink);
}

@media (max-width: 64rem) {
  .emergo-field-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 48rem) {
  .emergo-card-grid,
  .emergo-engagement-grid {
    grid-template-columns: 1fr;
  }

  .emergo-process-step {
    padding-left: 3.25rem;
  }
}

/* Sticky-header and dark-surface CTA corrections — v0.1.2 */
html {
  scroll-padding-top: 6rem;
}

.emergo-section--ink .emergo-cta--secondary {
  border-color: var(--wp--preset--color--warm-ivory);
  color: var(--wp--preset--color--warm-ivory);
}

.emergo-section--ink .emergo-cta--secondary:hover,
.emergo-section--ink .emergo-cta--secondary:focus-visible {
  background: var(--wp--preset--color--warm-ivory);
  border-color: var(--wp--preset--color--warm-ivory);
  color: var(--wp--preset--color--deep-ink);
}


/* Sticky Header Group wrapper — v0.1.3 */
.emergo-sticky-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 1000;
}

.admin-bar .emergo-sticky-header {
  top: 32px !important;
}

@media (max-width: 782px) {
  .admin-bar .emergo-sticky-header {
    top: 46px !important;
  }
}

/* How Emergo Works page composition — v0.1.4 */
.emergo-sequence {
  display: grid;
  gap: var(--wp--preset--spacing--16);
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-block: var(--wp--preset--spacing--48);
}

.emergo-sequence__item {
  align-items: flex-start;
  border-top: 3px solid var(--wp--preset--color--deep-teal);
  display: flex;
  font-size: var(--wp--preset--font-size--small);
  font-weight: 600;
  line-height: 1.3;
  min-height: 4.5rem;
  min-width: 0;
  overflow-wrap: normal;
  padding-right: var(--wp--preset--spacing--8);
  padding-top: var(--wp--preset--spacing--12);
  word-break: keep-all;
}

.emergo-sequence__item p {
  margin: 0;
  min-width: 0;
  overflow-wrap: normal;
}

.emergo-mode-grid,
.emergo-question-grid {
  display: grid;
  gap: var(--wp--preset--spacing--24);
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.emergo-expectation-grid {
  display: grid;
  gap: var(--wp--preset--spacing--24);
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.emergo-panel {
  border: 1px solid var(--wp--preset--color--stone-line);
  border-radius: var(--wp--custom--radius--medium);
  padding: clamp(1.35rem, 2.5vw, 2rem);
}

.emergo-panel--positive {
  background: var(--wp--preset--color--warm-ivory);
  border-top: 4px solid var(--wp--preset--color--deep-teal);
}

.emergo-panel--guardrail {
  background: var(--wp--preset--color--warm-stone);
  border-top: 4px solid var(--wp--preset--color--grounded-clay);
}

.emergo-panel h3 {
  margin-top: 0;
}

.emergo-mode-card {
  min-height: 100%;
}

.emergo-mode-card__trigger {
  color: var(--wp--preset--color--deep-clay);
  font-size: var(--wp--preset--font-size--small);
  font-weight: 600;
}

.emergo-sequence-note {
  border-bottom: 1px solid var(--wp--preset--color--stone-line);
  border-top: 1px solid var(--wp--preset--color--stone-line);
  margin-block: var(--wp--preset--spacing--32);
  padding-block: var(--wp--preset--spacing--24);
}

.emergo-learning-loop {
  display: grid;
  gap: var(--wp--preset--spacing--16);
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-block: var(--wp--preset--spacing--32);
}

.emergo-learning-loop__item {
  background: var(--wp--preset--color--warm-ivory);
  border: 1px solid var(--wp--preset--color--stone-line);
  border-radius: var(--wp--custom--radius--medium);
  font-weight: 600;
  padding: var(--wp--preset--spacing--24);
}

.emergo-learning-loop__item:last-child {
  border-color: var(--wp--preset--color--grounded-clay);
}

@media (max-width: 64rem) {
  .emergo-sequence {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .emergo-mode-grid,
  .emergo-question-grid {
    grid-template-columns: 1fr;
  }

  .emergo-learning-loop {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 48rem) {
  .emergo-sequence,
  .emergo-expectation-grid,
  .emergo-learning-loop {
    grid-template-columns: 1fr;
  }

  .emergo-sequence__item {
    min-height: auto;
    padding-bottom: var(--wp--preset--spacing--12);
  }
}

/* Contact page and prototype form shell — v0.1.7 */
.emergo-contact-grid,
.emergo-fit-grid {
  display: grid;
  gap: var(--wp--preset--spacing--24);
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.emergo-contact-form-shell {
  background: var(--wp--preset--color--warm-ivory);
  border: 1px solid var(--wp--preset--color--stone-line);
  border-radius: var(--wp--custom--radius--medium);
  margin-top: var(--wp--preset--spacing--32);
  padding: clamp(1.25rem, 3vw, 2.5rem);
}

.emergo-form-prototype-note {
  background: var(--wp--preset--color--warm-stone);
  border-left: 4px solid var(--wp--preset--color--muted-amber);
  margin-bottom: var(--wp--preset--spacing--24);
  padding: var(--wp--preset--spacing--16);
}

.emergo-form-grid {
  display: grid;
  gap: var(--wp--preset--spacing--24);
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.emergo-form-field {
  display: grid;
  gap: var(--wp--preset--spacing--8);
}

.emergo-form-field--full {
  grid-column: 1 / -1;
}

.emergo-form-field label {
  color: var(--wp--preset--color--deep-ink);
  font-weight: 600;
}

.emergo-form-field input,
.emergo-form-field textarea,
.emergo-form-field select {
  background: #fff;
  border: 1px solid var(--wp--preset--color--stone-line);
  border-radius: var(--wp--custom--radius--small);
  color: var(--wp--preset--color--near-black);
  font: inherit;
  min-height: 44px;
  padding: 0.75rem;
  width: 100%;
}

.emergo-form-field textarea {
  min-height: 9rem;
  resize: vertical;
}

.emergo-form-field input:disabled,
.emergo-form-field textarea:disabled,
.emergo-form-field select:disabled {
  cursor: not-allowed;
  opacity: 0.72;
}

.emergo-form-required {
  color: var(--wp--preset--color--deep-clay);
}

.emergo-form-privacy {
  border-top: 1px solid var(--wp--preset--color--stone-line);
  font-size: var(--wp--preset--font-size--small);
  margin-top: var(--wp--preset--spacing--24);
  padding-top: var(--wp--preset--spacing--16);
}

.emergo-form-submit-preview {
  background: var(--wp--preset--color--deep-ink);
  border: 1px solid var(--wp--preset--color--deep-ink);
  border-radius: var(--wp--custom--radius--small);
  color: var(--wp--preset--color--warm-ivory);
  cursor: not-allowed;
  font: inherit;
  font-weight: 600;
  margin-top: var(--wp--preset--spacing--24);
  min-height: 44px;
  opacity: 0.68;
  padding: 0.85rem 1.15rem;
}

.emergo-contact-outcomes {
  display: grid;
  gap: var(--wp--preset--spacing--12);
  margin-block: var(--wp--preset--spacing--24);
}

.emergo-contact-outcome {
  border-left: 3px solid var(--wp--preset--color--deep-teal);
  margin: 0;
  padding-left: var(--wp--preset--spacing--16);
}

@media (max-width: 48rem) {
  .emergo-contact-grid,
  .emergo-fit-grid,
  .emergo-form-grid {
    grid-template-columns: 1fr;
  }

  .emergo-form-field--full {
    grid-column: auto;
  }
}

/* Contact form sizing corrections — v0.1.8 */
.emergo-contact-form-shell,
.emergo-contact-form-shell * {
  box-sizing: border-box;
}

.emergo-form-field {
  align-content: start;
  align-self: start;
  min-width: 0;
}

.emergo-form-field input,
.emergo-form-field select,
.emergo-form-field textarea {
  max-width: 100%;
  min-width: 0;
}

.emergo-form-field input,
.emergo-form-field select {
  height: 44px;
}

.emergo-form-field label {
  line-height: 1.35;
}

/* Align the second desktop form row despite a wrapped German role label — v0.1.9 */
@media (min-width: 48.0625rem) {
  html:lang(de) .emergo-form-grid > .emergo-form-field:nth-child(3) label,
  html:lang(de) .emergo-form-grid > .emergo-form-field:nth-child(4) label {
    display: block;
    min-height: 2.7em;
  }

  html:lang(de) .emergo-form-grid > .emergo-form-field:nth-child(3) label {
    width: 24ch;
  }

  html:lang(en) .emergo-form-grid > .emergo-form-field:nth-child(3) label,
  html:lang(en) .emergo-form-grid > .emergo-form-field:nth-child(4) label {
    display: block;
    min-height: 0;
  }
}

/* Prevent native select text and descenders from being clipped — v0.1.13 */
.emergo-form-field select {
  height: auto;
  line-height: 1.4;
  min-height: 44px;
  padding-block: 0.55rem;
  padding-inline: 0.75rem 2.5rem;
}

/* Context-enabled situation cards — v0.1.14 */
.emergo-card--situation {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.emergo-card--situation > * {
  width: 100%;
}

.emergo-card--situation .emergo-card__question {
  margin-bottom: 0;
}

.emergo-card__cta {
  border-top: 1px solid var(--wp--preset--color--stone-line);
  margin-top: auto;
  padding-top: var(--wp--preset--spacing--24);
}

.emergo-card__cta .emergo-cta--text {
  justify-content: flex-start;
  max-width: 100%;
  text-align: left;
  white-space: normal;
}

/* Mobile expanded clarification choices — v0.1.15 */
.emergo-form-clarify-radios {
  border: 0;
  display: none;
  margin: 0;
  min-width: 0;
  padding: 0;
}

.emergo-form-clarify-radios legend {
  color: var(--wp--preset--color--deep-ink);
  font-weight: 600;
  line-height: 1.35;
  margin-bottom: var(--wp--preset--spacing--12);
  padding: 0;
}

.emergo-form-clarify-options {
  display: grid;
  gap: var(--wp--preset--spacing--12);
}

.emergo-form-clarify-option {
  align-items: start;
  background: #fff;
  border: 1px solid var(--wp--preset--color--stone-line);
  border-radius: var(--wp--custom--radius--small);
  cursor: pointer;
  display: grid;
  font-weight: 400;
  gap: var(--wp--preset--spacing--12);
  grid-template-columns: auto minmax(0, 1fr);
  line-height: 1.4;
  padding: 0.8rem;
}

.emergo-form-clarify-option:hover {
  border-color: var(--wp--preset--color--deep-teal);
}

.emergo-form-clarify-option:focus-within {
  border-color: var(--wp--preset--color--deep-teal);
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--wp--preset--color--deep-teal) 22%, transparent);
}

.emergo-form-clarify-option input[type="radio"] {
  accent-color: var(--wp--preset--color--deep-teal);
  background: transparent;
  border: 0;
  box-shadow: none;
  height: 1.2rem;
  margin: 0.1rem 0 0;
  min-height: 0;
  padding: 0;
  width: 1.2rem;
}

.emergo-form-clarify-option span {
  min-width: 0;
  overflow-wrap: anywhere;
}

.emergo-form-clarify-radios[aria-invalid="true"] .emergo-form-clarify-option {
  border-color: var(--wp--preset--color--deep-clay);
}

@media (max-width: 48rem) {
  .emergo-diagnostic-form.emergo-clarify-mobile .emergo-form-clarify-select {
    display: none;
  }

  .emergo-diagnostic-form.emergo-clarify-mobile .emergo-form-clarify-radios {
    display: block;
  }
}

/* Structured situation-grid integration — v0.1.16 */
.emergo-structured-situations .emergo-card-grid {
  margin-top: var(--wp--preset--spacing--32);
}

.emergo-structured-content-warning {
  background: var(--wp--preset--color--warm-stone);
  border-left: 4px solid var(--wp--preset--color--muted-amber);
  font-size: var(--wp--preset--font-size--small);
  margin-top: var(--wp--preset--spacing--24);
  padding: var(--wp--preset--spacing--16);
}

/* Structured engagement-grid integration — v0.1.17 */
.emergo-structured-engagements .emergo-engagement-grid {
  margin-top: var(--wp--preset--spacing--32);
}

/* Structured-section width parity and Advisory Fields readability — v0.1.18 */
.emergo-structured-situations > .wp-block-group.alignwide,
.emergo-structured-engagements > .wp-block-group.alignwide {
  box-sizing: border-box;
  margin-inline: auto;
  max-width: var(--wp--style--global--wide-size, 76rem);
  width: min(
    calc(100% - (2 * clamp(1.25rem, 3vw, 4rem))),
    var(--wp--style--global--wide-size, 76rem)
  );
}

.emergo-field-grid {
  grid-template-columns: 1fr;
}

.emergo-field-grid > * {
  min-width: 0;
}

.emergo-field-grid :where(h3, p, strong) {
  hyphens: auto;
  overflow-wrap: anywhere;
}

@media (min-width: 48.0625rem) and (max-width: 71.999rem) {
  .emergo-field-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .emergo-field-grid > :last-child {
    grid-column: 1 / -1;
    justify-self: center;
    width: calc(50% - (var(--wp--preset--spacing--24) / 2));
  }
}

@media (min-width: 72rem) {
  .emergo-field-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* Clear desktop and mobile navigation grouping — v0.1.19 */
.site-header .wp-block-navigation-item__content {
  border-radius: var(--wp--custom--radius--small);
  color: var(--wp--preset--color--deep-ink);
  line-height: 1.25;
  text-decoration: none;
  transition:
    background-color var(--emergo-transition),
    color var(--emergo-transition);
}

.site-header .wp-block-navigation-item__content:hover,
.site-header .wp-block-navigation-item__content:focus-visible {
  background: var(--wp--preset--color--warm-stone);
  color: var(--wp--preset--color--deep-ink);
}

.site-header
  .wp-block-navigation-item.current-menu-item
  > .wp-block-navigation-item__content,
.site-header
  .wp-block-navigation-item.current-menu-ancestor
  > .wp-block-navigation-item__content,
.site-header
  .wp-block-navigation-item__content[aria-current="page"] {
  background: var(--wp--preset--color--deep-ink);
  color: var(--wp--preset--color--warm-ivory);
}

@media (min-width: 64.01rem) {
  .site-header .wp-block-navigation__container {
    align-items: stretch;
    gap: 0;
  }

  .site-header
    .wp-block-navigation__container
    > .wp-block-navigation-item {
    align-items: stretch;
    display: flex;
    min-width: 0;
  }

  .site-header
    .wp-block-navigation__container
    > .wp-block-navigation-item
    + .wp-block-navigation-item {
    border-left: 1px solid var(--wp--preset--color--stone-line);
    margin-left: 0.2rem;
    padding-left: 0.2rem;
  }

  .site-header .wp-block-navigation-item__content {
    align-items: center;
    display: inline-flex;
    justify-content: center;
    max-width: 12rem;
    padding: 0.55rem 0.65rem;
    text-align: center;
  }
}

.wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__responsive-container-content {
  align-items: stretch;
}

.wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__container {
  align-items: stretch;
  gap: 0;
  width: 100%;
}

.wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__container
  > .wp-block-navigation-item {
  border-bottom: 1px solid var(--wp--preset--color--stone-line);
  width: 100%;
}

.wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation-item__content {
  display: flex;
  justify-content: flex-start;
  padding: 1rem 0.75rem;
  text-align: left;
  width: 100%;
}

/* Complete Situations page — v0.1.19 */
.emergo-situation-directory {
  padding-top: var(--wp--preset--spacing--32);
}

.emergo-situation-directory > .wp-block-group.alignwide {
  box-sizing: border-box;
  margin-inline: auto;
  max-width: var(--wp--style--global--wide-size, 76rem);
  width: min(
    calc(100% - (2 * clamp(1.25rem, 3vw, 4rem))),
    var(--wp--style--global--wide-size, 76rem)
  );
}

.emergo-situation-profile-list {
  counter-reset: emergo-situation-profile;
  display: grid;
  gap: clamp(2rem, 4vw, 4rem);
}

.emergo-situation-profile {
  background: var(--wp--preset--color--warm-ivory);
  border: 1px solid var(--wp--preset--color--stone-line);
  border-radius: var(--wp--custom--radius--large);
  box-sizing: border-box;
  overflow: hidden;
  padding: clamp(1.5rem, 3vw, 3rem);
}

.emergo-situation-profile__header {
  align-items: start;
  display: grid;
  gap: var(--wp--preset--spacing--24);
  grid-template-columns: auto minmax(0, 1fr);
}

.emergo-situation-profile__number {
  color: var(--wp--preset--color--grounded-clay);
  font-size: var(--wp--preset--font-size--body-large);
  font-weight: 600;
  line-height: 1;
  padding-top: 0.35rem;
}

.emergo-situation-profile__header h2 {
  margin: 0;
  overflow-wrap: anywhere;
}

.emergo-situation-profile__subtitle {
  color: var(--wp--preset--color--deep-teal);
  font-size: var(--wp--preset--font-size--body-large);
  font-weight: 600;
  margin-bottom: 0;
  margin-top: var(--wp--preset--spacing--12);
}

.emergo-situation-profile__intro {
  border-bottom: 1px solid var(--wp--preset--color--stone-line);
  margin-top: var(--wp--preset--spacing--32);
  max-width: 56rem;
  padding-bottom: var(--wp--preset--spacing--32);
}

.emergo-situation-profile__body {
  display: grid;
  gap: clamp(2rem, 4vw, 4rem);
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  margin-top: var(--wp--preset--spacing--32);
}

.emergo-situation-profile__body > * {
  min-width: 0;
}

.emergo-situation-profile__signals {
  background: var(--wp--preset--color--warm-stone);
  border-radius: var(--wp--custom--radius--medium);
  padding: clamp(1.25rem, 2vw, 2rem);
}

.emergo-situation-profile__signals h3,
.emergo-situation-profile__analysis h3 {
  font-size: 1.1rem;
  margin-top: 0;
}

.emergo-situation-profile__signals ul {
  margin-bottom: 0;
  padding-left: 1.25rem;
}

.emergo-situation-profile__signals li + li {
  margin-top: var(--wp--preset--spacing--8);
}

.emergo-situation-profile__analysis {
  display: grid;
  gap: var(--wp--preset--spacing--24);
}

.emergo-situation-profile__analysis section {
  border-top: 1px solid var(--wp--preset--color--stone-line);
  padding-top: var(--wp--preset--spacing--24);
}

.emergo-situation-profile__question {
  border-left: 4px solid var(--wp--preset--color--grounded-clay);
  border-top: 0 !important;
  padding-left: var(--wp--preset--spacing--24);
  padding-top: 0 !important;
}

.emergo-situation-profile__question p {
  font-size: var(--wp--preset--font-size--body-large);
  font-weight: 600;
}

.emergo-situation-profile__analysis p:last-child,
.emergo-situation-profile__intro p:last-child {
  margin-bottom: 0;
}

.emergo-situation-profile__cta {
  border-top: 1px solid var(--wp--preset--color--stone-line);
  margin-top: var(--wp--preset--spacing--32);
  padding-top: var(--wp--preset--spacing--24);
}

.emergo-situation-overlap-list {
  display: grid;
  gap: var(--wp--preset--spacing--12);
  margin-block: var(--wp--preset--spacing--32);
}

.emergo-situation-overlap-list p {
  border-left: 3px solid var(--wp--preset--color--deep-teal);
  margin: 0;
  padding-left: var(--wp--preset--spacing--16);
}

@media (max-width: 64rem) {
  .site-header .wp-block-navigation__responsive-container:not(.is-menu-open) {
    display: none;
  }

  .site-header .wp-block-navigation__responsive-container-open {
    display: flex;
  }

  .emergo-situation-profile__body {
    grid-template-columns: 1fr;
  }
}

@media (min-width: 64.01rem) {
  .site-header .wp-block-navigation__responsive-container-open {
    display: none;
  }

  .site-header .wp-block-navigation__responsive-container:not(.is-menu-open) {
    display: block;
  }
}

@media (max-width: 48rem) {
  .emergo-situation-profile__header {
    gap: var(--wp--preset--spacing--12);
    grid-template-columns: 1fr;
  }

  .emergo-situation-profile__number {
    padding-top: 0;
  }

  .emergo-situation-profile__question {
    padding-left: var(--wp--preset--spacing--16);
  }
}

/* Complete Situations text-flow correction — v0.1.20 */
.emergo-situation-profile__header > div,
.emergo-situation-profile__signals,
.emergo-situation-profile__analysis,
.emergo-situation-profile__analysis section {
  min-width: 0;
}

.emergo-situation-profile :where(
  h2,
  h3,
  p,
  li
) {
  hyphens: auto;
  overflow-wrap: anywhere;
  word-break: normal;
}

.emergo-situation-profile__signals li {
  font-size: clamp(1rem, 0.975rem + 0.08vw, 1.0625rem);
  line-height: 1.55;
}

.emergo-situation-profile__question p {
  font-size: clamp(1.0625rem, 1rem + 0.18vw, 1.2rem);
  line-height: 1.5;
}

/* Keep the analytical columns generous enough for German compound terms. */
.emergo-situation-profile__body {
  grid-template-columns: 1fr;
}

@media (min-width: 80rem) {
  .emergo-situation-profile__body {
    gap: clamp(2.5rem, 3.5vw, 3.5rem);
    grid-template-columns: minmax(20rem, 0.9fr) minmax(0, 1.1fr);
  }
}


/* Complete Situations analytical-column balance — v0.1.21 */
@media (min-width: 80rem) {
  .emergo-situation-profile__body {
    gap: clamp(2.5rem, 3.5vw, 3.5rem);
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .emergo-situation-profile__signals,
  .emergo-situation-profile__analysis {
    width: auto;
  }
}

/* Complete Advisory Fields pages — v0.1.22 */
.emergo-advisory-hero__fields,
.emergo-advisory-system__grid,
.emergo-advisory-format-grid {
  display: grid;
  gap: var(--wp--preset--spacing--16);
  grid-template-columns: 1fr;
  margin-block: var(--wp--preset--spacing--32);
}

.emergo-advisory-hero__field {
  border-top: 3px solid var(--wp--preset--color--deep-teal);
  padding-block: var(--wp--preset--spacing--16);
}

.emergo-advisory-hero__field h3 {
  font-size: clamp(1.05rem, 1rem + 0.15vw, 1.2rem);
  margin: 0;
}

.emergo-advisory-system__question {
  border-left: 3px solid var(--wp--preset--color--deep-teal);
  min-width: 0;
}

.emergo-advisory-system__question p {
  margin: 0;
}

.emergo-advisory-directory {
  padding-block: clamp(2rem, 5vw, 5rem);
}

.emergo-advisory-directory > .wp-block-group.alignfull {
  box-sizing: border-box;
  margin-inline: auto;
  max-width: var(--wp--style--global--wide-size, 76rem);
  width: min(
    calc(100% - (2 * clamp(1.25rem, 3vw, 4rem))),
    var(--wp--style--global--wide-size, 76rem)
  );
}

.emergo-advisory-field-list {
  display: grid;
  gap: clamp(2.5rem, 5vw, 5rem);
}

.emergo-advisory-field {
  background: var(--wp--preset--color--warm-ivory);
  border: 1px solid var(--wp--preset--color--stone-line);
  border-radius: var(--wp--custom--radius--large);
  box-sizing: border-box;
  min-width: 0;
  padding: clamp(1.5rem, 3vw, 3rem);
}

.emergo-advisory-field__header {
  align-items: start;
  display: grid;
  gap: var(--wp--preset--spacing--24);
  grid-template-columns: auto minmax(0, 1fr);
}

.emergo-advisory-field__number {
  color: var(--wp--preset--color--grounded-clay);
  font-size: var(--wp--preset--font-size--body-large);
  font-weight: 600;
  line-height: 1;
  margin: 0;
  padding-top: 0.35rem;
}

.emergo-advisory-field__heading-copy,
.emergo-advisory-field__body > *,
.emergo-advisory-field__perspective,
.emergo-advisory-field__focus,
.emergo-advisory-field__next-step {
  min-width: 0;
}

.emergo-advisory-field__heading-copy h2 {
  margin: 0;
}

.emergo-advisory-field__subtitle {
  color: var(--wp--preset--color--deep-teal);
  font-size: clamp(1.05rem, 1rem + 0.18vw, 1.2rem);
  font-weight: 600;
  margin-bottom: 0;
  margin-top: var(--wp--preset--spacing--12);
}

.emergo-advisory-field__intro {
  border-bottom: 1px solid var(--wp--preset--color--stone-line);
  margin-top: var(--wp--preset--spacing--32);
  max-width: 58rem;
  padding-bottom: var(--wp--preset--spacing--32);
}

.emergo-advisory-field__body {
  display: grid;
  gap: var(--wp--preset--spacing--24);
  grid-template-columns: 1fr;
  margin-top: var(--wp--preset--spacing--32);
}

.emergo-advisory-field__panel {
  background: var(--wp--preset--color--warm-stone);
  border-radius: var(--wp--custom--radius--medium);
  min-width: 0;
  padding: clamp(1.25rem, 2vw, 2rem);
}

.emergo-advisory-field__panel h3,
.emergo-advisory-field__perspective h3,
.emergo-advisory-field__focus h3,
.emergo-advisory-field__next-step h3,
.emergo-advisory-transformation h3 {
  font-size: clamp(1.05rem, 1rem + 0.12vw, 1.15rem);
  margin-top: 0;
}

.emergo-advisory-list,
.emergo-advisory-question-list,
.emergo-advisory-focus-list,
.emergo-advisory-checklist {
  margin-bottom: 0;
  padding-left: 1.25rem;
}

.emergo-advisory-list li + li,
.emergo-advisory-question-list li + li,
.emergo-advisory-focus-list li + li,
.emergo-advisory-checklist li + li {
  margin-top: var(--wp--preset--spacing--8);
}

.emergo-advisory-question-list li {
  font-weight: 500;
}

.emergo-advisory-field__perspective {
  border-left: 4px solid var(--wp--preset--color--grounded-clay);
  margin-top: var(--wp--preset--spacing--32);
  padding-left: var(--wp--preset--spacing--24);
}

.emergo-advisory-field__focus {
  border-top: 1px solid var(--wp--preset--color--stone-line);
  margin-top: var(--wp--preset--spacing--32);
  padding-top: var(--wp--preset--spacing--32);
}

.emergo-advisory-focus-list {
  columns: 1;
}

.emergo-advisory-field__next-step {
  background: var(--wp--preset--color--warm-stone);
  border-radius: var(--wp--custom--radius--medium);
  margin-top: var(--wp--preset--spacing--32);
  padding: clamp(1.25rem, 2vw, 2rem);
}

.emergo-advisory-transformation__question {
  border-left: 4px solid var(--wp--preset--color--grounded-clay);
  font-size: clamp(1.15rem, 1.05rem + 0.35vw, 1.45rem);
  font-weight: 600;
  margin-block: var(--wp--preset--spacing--32);
  padding-left: var(--wp--preset--spacing--24);
}

.emergo-advisory-transformation__questions,
.emergo-advisory-transformation__perspective {
  border-top: 1px solid color-mix(
    in srgb,
    var(--wp--preset--color--warm-ivory) 30%,
    transparent
  );
  margin-top: var(--wp--preset--spacing--32);
  padding-top: var(--wp--preset--spacing--32);
}

.emergo-advisory-interaction__lines {
  display: grid;
  gap: var(--wp--preset--spacing--12);
  margin-block: var(--wp--preset--spacing--32);
}

.emergo-advisory-interaction__lines p {
  border-left: 3px solid var(--wp--preset--color--deep-teal);
  margin: 0;
  padding-left: var(--wp--preset--spacing--16);
}

.emergo-advisory-format-card h3 {
  font-size: clamp(1.05rem, 1rem + 0.12vw, 1.15rem);
  margin-top: 0;
}

.emergo-advisory-checklist {
  display: grid;
  gap: var(--wp--preset--spacing--12) var(--wp--preset--spacing--32);
  grid-template-columns: 1fr;
  margin-block: var(--wp--preset--spacing--32);
}

.emergo-final-question {
  border-left: 4px solid var(--wp--preset--color--grounded-clay);
  font-size: clamp(1.2rem, 1.08rem + 0.4vw, 1.55rem);
  font-weight: 600;
  padding-left: var(--wp--preset--spacing--24);
}

.emergo-advisory-field :where(h2, h3, p, li),
.emergo-advisory-system :where(h2, h3, p),
.emergo-advisory-transformation :where(h2, h3, p, li),
.emergo-advisory-formats :where(h2, h3, p),
.emergo-advisory-relevant :where(h2, p, li) {
  hyphens: auto;
  overflow-wrap: anywhere;
  word-break: normal;
}

@media (min-width: 48.0625rem) {
  .emergo-advisory-hero__fields,
  .emergo-advisory-format-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .emergo-advisory-system__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .emergo-advisory-focus-list {
    column-gap: var(--wp--preset--spacing--48);
    columns: 2;
  }

  .emergo-advisory-checklist {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 80rem) {
  .emergo-advisory-field__body {
    gap: clamp(2.5rem, 3.5vw, 3.5rem);
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 48rem) {
  .emergo-advisory-field__header {
    gap: var(--wp--preset--spacing--12);
    grid-template-columns: 1fr;
  }

  .emergo-advisory-field__number {
    padding-top: 0;
  }

  .emergo-advisory-field__perspective,
  .emergo-advisory-transformation__question,
  .emergo-final-question {
    padding-left: var(--wp--preset--spacing--16);
  }
}


/* Complete collaboration pages — v0.1.25 */
.emergo-collaboration-principles-grid,
.emergo-collaboration-diagnostic-grid,
.emergo-collaboration-role-grid,
.emergo-collaboration-fit-grid {
  display: grid;
  gap: var(--wp--preset--spacing--24);
  grid-template-columns: 1fr;
  margin-block: var(--wp--preset--spacing--32);
}

.emergo-collaboration-principle {
  border-top: 3px solid var(--wp--preset--color--deep-teal);
  min-width: 0;
}

.emergo-collaboration-principle__number,
.emergo-engagement-detail__number {
  color: var(--wp--preset--color--grounded-clay);
  font-size: var(--wp--preset--font-size--body-large);
  font-weight: 600;
  line-height: 1;
  margin: 0 0 var(--wp--preset--spacing--16);
}

.emergo-collaboration-principle h3,
.emergo-collaboration-diagnostic__panel h3,
.emergo-collaboration-role h3,
.emergo-collaboration-fit h3 {
  font-size: clamp(1.05rem, 1rem + 0.14vw, 1.18rem);
  margin-top: 0;
}

.emergo-collaboration-diagnostic__panel {
  background: var(--wp--preset--color--warm-stone);
}

.emergo-collaboration-list,
.emergo-collaboration-question-list,
.emergo-collaboration-clarity-list {
  margin-bottom: 0;
  padding-left: 1.25rem;
}

.emergo-collaboration-list li + li,
.emergo-collaboration-question-list li + li,
.emergo-collaboration-clarity-list li + li,
.emergo-engagement-detail li + li {
  margin-top: var(--wp--preset--spacing--8);
}

.emergo-engagement-directory {
  box-sizing: border-box;
  margin-inline: auto;
  max-width: var(--wp--style--global--wide-size, 76rem);
  padding-block: clamp(2rem, 5vw, 5rem);
  width: min(
    calc(100% - (2 * clamp(1.25rem, 3vw, 4rem))),
    var(--wp--style--global--wide-size, 76rem)
  );
}

.emergo-engagement-detail-list {
  display: grid;
  gap: clamp(2.5rem, 5vw, 5rem);
}

.emergo-engagement-detail {
  background: var(--wp--preset--color--warm-ivory);
  border: 1px solid var(--wp--preset--color--stone-line);
  border-radius: var(--wp--custom--radius--large);
  box-sizing: border-box;
  min-width: 0;
  padding: clamp(1.5rem, 3vw, 3rem);
}

.emergo-engagement-detail__header {
  align-items: start;
  display: grid;
  gap: var(--wp--preset--spacing--24);
  grid-template-columns: auto minmax(0, 1fr);
}

.emergo-engagement-detail__number {
  padding-top: 0.35rem;
}

.emergo-engagement-detail__heading-copy {
  min-width: 0;
}

.emergo-engagement-detail__heading-copy h2 {
  margin: 0;
}

.emergo-engagement-detail__subtitle {
  color: var(--wp--preset--color--deep-teal);
  font-size: clamp(1.05rem, 1rem + 0.18vw, 1.2rem);
  font-weight: 600;
  margin-bottom: 0;
  margin-top: var(--wp--preset--spacing--12);
}

.emergo-engagement-detail__body {
  display: grid;
  gap: var(--wp--preset--spacing--24);
  grid-template-columns: 1fr;
  margin-top: var(--wp--preset--spacing--32);
}

.emergo-engagement-detail__panel {
  background: var(--wp--preset--color--warm-stone);
  border-radius: var(--wp--custom--radius--medium);
  min-width: 0;
  padding: clamp(1.25rem, 2vw, 2rem);
}

.emergo-engagement-detail__panel h3,
.emergo-engagement-detail__outcome h3 {
  font-size: clamp(1.05rem, 1rem + 0.12vw, 1.15rem);
  margin-top: 0;
}

.emergo-engagement-detail__panel ul {
  margin-bottom: 0;
  padding-left: 1.25rem;
}

.emergo-engagement-detail__outcome {
  border-left: 4px solid var(--wp--preset--color--grounded-clay);
  margin-top: var(--wp--preset--spacing--32);
  padding-left: var(--wp--preset--spacing--24);
}

.emergo-collaboration-path-states {
  display: grid;
  gap: var(--wp--preset--spacing--12);
  margin-top: var(--wp--preset--spacing--24);
}

.emergo-collaboration-path-states p {
  border-left: 3px solid var(--wp--preset--color--deep-teal);
  margin: 0;
  padding-left: var(--wp--preset--spacing--16);
}

.emergo-collaboration-role--emergo {
  border-top: 3px solid var(--wp--preset--color--deep-teal);
}

.emergo-collaboration-role--client {
  border-top: 3px solid var(--wp--preset--color--grounded-clay);
}

.emergo-collaboration-fit--useful {
  border-left: 4px solid var(--wp--preset--color--deep-teal);
}

.emergo-collaboration-fit--less-useful {
  border-left: 4px solid var(--wp--preset--color--muted-amber);
}

.emergo-collaboration-clarity-list {
  columns: 1;
  margin-block: var(--wp--preset--spacing--32);
}

.emergo-collaboration-principle :where(h3, p),
.emergo-collaboration-diagnostic :where(h2, h3, p, li),
.emergo-engagement-detail :where(h2, h3, p, li),
.emergo-collaboration-reasoned-path :where(h2, p, li),
.emergo-collaboration-roles :where(h2, h3, p, li),
.emergo-collaboration-fit-section :where(h2, h3, p, li),
.emergo-collaboration-clarity :where(h2, p, li),
.emergo-collaboration-simple-start :where(h2, p, li) {
  hyphens: auto;
  overflow-wrap: anywhere;
  word-break: normal;
}

@media (min-width: 48.0625rem) {
  .emergo-collaboration-principles-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .emergo-collaboration-diagnostic-grid,
  .emergo-collaboration-role-grid,
  .emergo-collaboration-fit-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .emergo-collaboration-clarity-list {
    column-gap: var(--wp--preset--spacing--48);
    columns: 2;
  }
}

@media (min-width: 80rem) {
  .emergo-collaboration-principles-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .emergo-engagement-detail__body {
    gap: clamp(2.5rem, 3.5vw, 3.5rem);
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 48rem) {
  .emergo-engagement-detail__header {
    gap: var(--wp--preset--spacing--12);
    grid-template-columns: 1fr;
  }

  .emergo-engagement-detail__number {
    padding-top: 0;
  }

  .emergo-engagement-detail__outcome {
    padding-left: var(--wp--preset--spacing--16);
  }
}

/* Collaboration role-card readability — retained from v0.1.26 */
.emergo-collaboration-roles .emergo-card {
  color: var(--wp--preset--color--deep-ink);
}

.emergo-collaboration-roles .emergo-card :where(h3, p, li) {
  color: inherit;
}

/* Canonical collaboration-directory alignment — v0.1.29 */
.emergo-engagement-directory {
  box-sizing: border-box;
  left: auto;
  margin-inline: auto !important;
  max-width: var(--wp--style--global--wide-size, 76rem) !important;
  position: static;
  transform: none;
  width: 100%;
}

.emergo-engagement-directory > .emergo-engagement-detail-list,
.emergo-engagement-directory > .emergo-structured-content-warning {
  box-sizing: border-box;
  margin-inline: 0;
  max-width: none;
  width: 100%;
}

@media (min-width: 80rem) {
  .emergo-engagement-detail {
    padding: clamp(1.75rem, 2.25vw, 2.5rem);
  }

  .emergo-engagement-detail__body {
    gap: clamp(1.5rem, 2vw, 2rem);
  }

  .emergo-engagement-detail__panel {
    padding: clamp(1.25rem, 1.6vw, 1.75rem);
  }
}

/* Complete About Emergo pages — v0.1.30 */
.emergo-about-hero__belief-line {
  color: var(--wp--preset--color--deep-teal);
  font-size: clamp(1.15rem, 1.05rem + 0.35vw, 1.45rem);
  font-weight: 600;
  margin-block: var(--wp--preset--spacing--8);
}

.emergo-about-hero__method {
  border-left: 4px solid var(--wp--preset--color--grounded-clay);
  display: grid;
  gap: var(--wp--preset--spacing--8);
  margin-block: var(--wp--preset--spacing--32);
  padding-left: var(--wp--preset--spacing--24);
}

.emergo-about-hero__method p {
  margin: 0;
}

.emergo-about-symptom-grid,
.emergo-about-belief-grid,
.emergo-about-difference-grid,
.emergo-about-origin-grid,
.emergo-about-values-grid,
.emergo-about-not-grid,
.emergo-about-audience-grid {
  display: grid;
  gap: var(--wp--preset--spacing--24);
  grid-template-columns: 1fr;
  margin-block: var(--wp--preset--spacing--32);
}

.emergo-about-symptom-card {
  border-left: 3px solid var(--wp--preset--color--deep-teal);
  min-width: 0;
}

.emergo-about-symptom-card p {
  margin: 0;
}

.emergo-about-key-question {
  border-left: 4px solid var(--wp--preset--color--grounded-clay);
  font-size: clamp(1.15rem, 1.05rem + 0.35vw, 1.45rem);
  font-weight: 600;
  margin-block: var(--wp--preset--spacing--32);
  padding-left: var(--wp--preset--spacing--24);
}

.emergo-about-core-belief__headline {
  color: var(--wp--preset--color--warm-ivory);
  font-size: clamp(1.45rem, 1.25rem + 0.7vw, 2rem);
}

.emergo-about-belief-card {
  border-top: 3px solid var(--wp--preset--color--grounded-clay);
  color: var(--wp--preset--color--deep-ink);
  min-width: 0;
}

.emergo-about-belief-card p {
  color: inherit;
  margin: 0;
}

.emergo-about-difference-panel {
  min-width: 0;
}

.emergo-about-difference-panel--formats {
  border-top: 3px solid var(--wp--preset--color--muted-amber);
}

.emergo-about-difference-panel--diagnosis {
  border-top: 3px solid var(--wp--preset--color--deep-teal);
}

.emergo-about-difference-panel h3,
.emergo-about-origin-card h3,
.emergo-about-value-card h3,
.emergo-about-not-card h3 {
  font-size: clamp(1.05rem, 1rem + 0.14vw, 1.18rem);
  margin-top: 0;
}

.emergo-about-format-list,
.emergo-about-diagnostic-list,
.emergo-about-evidence-list,
.emergo-about-not-list,
.emergo-about-readiness-list,
.emergo-about-start-list {
  margin-bottom: 0;
  padding-left: 1.25rem;
}

.emergo-about-format-list li + li,
.emergo-about-diagnostic-list li + li,
.emergo-about-evidence-list li + li,
.emergo-about-not-list li + li,
.emergo-about-readiness-list li + li,
.emergo-about-start-list li + li {
  margin-top: var(--wp--preset--spacing--8);
}

.emergo-about-principle-line {
  border-left: 4px solid var(--wp--preset--color--grounded-clay);
  font-size: clamp(1.15rem, 1.05rem + 0.3vw, 1.4rem);
  font-weight: 600;
  margin-top: var(--wp--preset--spacing--32);
  padding-left: var(--wp--preset--spacing--24);
}

.emergo-about-origin-card--experience {
  border-top: 3px solid var(--wp--preset--color--deep-teal);
}

.emergo-about-origin-card--beyond {
  border-top: 3px solid var(--wp--preset--color--grounded-clay);
}

.emergo-about-value-card {
  border-top: 3px solid var(--wp--preset--color--deep-teal);
  min-width: 0;
}

.emergo-about-not-card {
  border-left: 4px solid var(--wp--preset--color--muted-amber);
}

.emergo-about-definition-card {
  align-content: center;
  border-left: 4px solid var(--wp--preset--color--deep-teal);
  display: grid;
}

.emergo-about-definition-card p {
  margin: 0;
}

.emergo-about-audience-card {
  border-top: 3px solid var(--wp--preset--color--deep-teal);
}

.emergo-about-readiness-card {
  border-top: 3px solid var(--wp--preset--color--grounded-clay);
}

.emergo-about-audience__emphasis {
  color: var(--wp--preset--color--deep-teal);
  font-size: var(--wp--preset--font-size--body-large);
  font-weight: 600;
}

.emergo-about-emergence-grid {
  display: grid;
  gap: var(--wp--preset--spacing--12);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: var(--wp--preset--spacing--32);
}

.emergo-about-emergence-item {
  border-left: 3px solid var(--wp--preset--color--grounded-clay);
  margin: 0;
  padding-left: var(--wp--preset--spacing--16);
}

.emergo-about-hero :where(h1, p),
.emergo-about-why :where(h2, h3, p, li),
.emergo-about-core-belief :where(h2, h3, p, li),
.emergo-about-different :where(h2, h3, p, li),
.emergo-about-origin :where(h2, h3, p),
.emergo-about-evidence :where(h2, p, li),
.emergo-about-stands-for :where(h2, h3, p),
.emergo-about-not :where(h2, h3, p, li),
.emergo-about-audience :where(h2, p, li),
.emergo-about-name :where(h2, p),
.emergo-about-simple-start :where(h2, p, li) {
  hyphens: auto;
  overflow-wrap: anywhere;
  word-break: normal;
}

@media (min-width: 48.0625rem) {
  .emergo-about-symptom-grid,
  .emergo-about-belief-grid,
  .emergo-about-difference-grid,
  .emergo-about-origin-grid,
  .emergo-about-not-grid,
  .emergo-about-audience-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .emergo-about-values-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .emergo-about-emergence-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (min-width: 80rem) {
  .emergo-about-values-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 48rem) {
  .emergo-about-hero__method,
  .emergo-about-key-question,
  .emergo-about-principle-line {
    padding-left: var(--wp--preset--spacing--16);
  }
}

/* Home Advisory Fields desktop readability — v0.1.31 */
@media (min-width: 72rem) {
  /*
   * Three narrow columns made the approved DE and EN positioning copy hard
   * to scan. On desktop, each advisory field becomes one full-width
   * horizontal card. All three fields retain equal visual weight.
   */
  .emergo-field-grid {
    gap: var(--wp--preset--spacing--16);
    grid-template-columns: 1fr;
  }

  .emergo-field-grid > .emergo-card {
    align-items: start;
    column-gap: clamp(2rem, 4vw, 4rem);
    display: grid;
    grid-template-columns: minmax(15rem, 0.72fr) minmax(0, 1.28fr);
    grid-template-rows: auto 1fr;
    padding: clamp(1.5rem, 2.2vw, 2rem);
  }

  .emergo-field-grid > .emergo-card > h3 {
    grid-column: 1;
    grid-row: 1;
    margin-bottom: var(--wp--preset--spacing--12);
  }

  .emergo-field-grid > .emergo-card > p:first-of-type {
    grid-column: 1;
    grid-row: 2;
    margin-bottom: 0;
    margin-top: 0;
  }

  .emergo-field-grid > .emergo-card > p:last-of-type {
    grid-column: 2;
    grid-row: 1 / span 2;
    margin-bottom: 0;
    margin-top: 0;
  }
}

/* Mobile current-page orientation and DE mode-card wrapping — v0.1.34 */
.site-header__identity {
  flex: 1 1 auto;
  gap: 0.15rem !important;
  min-width: 0;
}

.site-header .wp-block-site-title {
  flex: 1 1 auto;
  line-height: 1.1;
  margin: 0;
  min-width: 0;
}

.site-header .site-header__current-page {
  display: none;
}

@media (max-width: 64rem) {
  .site-header__inner {
    align-items: center;
    flex-wrap: nowrap !important;
  }

  .site-header__identity {
    overflow: hidden;
  }

  .site-header .wp-block-site-title {
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    overflow: hidden;
  }

  .site-header .wp-block-site-title > a {
    flex: 0 0 auto;
  }

  .site-header .site-header__current-page {
    color: var(--wp--preset--color--deep-teal);
    display: block;
    font-size: var(--wp--preset--font-size--small);
    font-weight: 500;
    line-height: 1.2;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .site-header .wp-block-navigation {
    flex: 0 0 auto;
    margin-left: auto;
  }
}

@media (min-width: 64.01rem) {
  .emergo-mode-card :where(p, strong) {
    -webkit-hyphens: auto;
    hyphens: auto;
    overflow-wrap: break-word;
    word-break: normal;
  }
}


/* Phase 7.8G.2 — Global Brand Foundation — v0.2.0 */
:root {
  --emergo-reading-width: 45rem;
  --emergo-lead-width: 47.5rem;
  --emergo-home-headline-width: 55rem;
  --emergo-header-logo-width: 9rem;
}

body {
  font-family: var(--wp--preset--font-family--primary);
  font-size: var(--wp--preset--font-size--body);
  line-height: 1.6;
}

strong,
b {
  font-weight: 600;
}

:where(p, li, dd, dt, figcaption) {
  hyphens: auto;
  overflow-wrap: break-word;
  word-break: normal;
}

:where(h1, h2, h3, h4, .emergo-cta, .wp-block-navigation) {
  hyphens: none !important;
  word-break: normal !important;
}

h1 {
  font-size: 2.25rem !important;
  font-weight: 600 !important;
  letter-spacing: -0.018em;
  line-height: 1.08;
}

h2 {
  font-size: 1.75rem !important;
  font-weight: 600 !important;
  letter-spacing: -0.012em;
  line-height: 1.12;
}

h3 {
  font-size: 1.5rem !important;
  font-weight: 600 !important;
  letter-spacing: -0.006em;
  line-height: 1.18;
}

h4 {
  font-size: 1.25rem !important;
  font-weight: 600 !important;
  line-height: 1.25;
}

.emergo-display,
.emergo-intro > h1 {
  font-size: 2.5rem !important;
  max-width: var(--emergo-home-headline-width);
}

.has-body-large-font-size,
.emergo-lead {
  font-size: 1.25rem !important;
  line-height: 1.45;
}

.emergo-intro {
  max-width: var(--emergo-home-headline-width);
}

.emergo-intro > .has-body-large-font-size {
  max-width: var(--emergo-lead-width);
}

.emergo-copy-narrow {
  max-width: var(--emergo-reading-width);
}

:where(a:not(.emergo-cta):not(.wp-block-navigation-item__content)) {
  text-decoration-thickness: 0.08em;
  text-underline-offset: 0.18em;
}

:where(a, button, input, select, textarea, summary):focus-visible {
  outline-color: var(--wp--preset--color--deep-amber);
}

.emergo-cta {
  font-size: 1.0625rem;
  font-weight: 600;
  hyphens: none;
  padding: 0.82rem 1.2rem;
}

.site-header {
  background: var(--wp--preset--color--warm-ivory);
  border-bottom-color: var(--wp--preset--color--stone-line);
}

.site-header__inner {
  padding-bottom: 0.75rem !important;
  padding-top: 0.75rem !important;
}

.site-header__identity {
  gap: 0.625rem !important;
}

.site-header .wp-block-site-title {
  font-size: inherit;
  line-height: 1;
}

.site-header .wp-block-site-title > a {
  align-items: center;
  display: inline-flex;
  flex: 0 0 auto;
  max-width: 100%;
  text-decoration: none;
}

.emergo-logo__image {
  display: block;
  height: auto;
  max-width: 100%;
  width: var(--emergo-header-logo-width);
}

.site-header .site-header__current-page {
  font-size: var(--wp--preset--font-size--small);
  font-weight: 500;
}

.site-footer .wp-block-site-title {
  font-size: var(--wp--preset--font-size--h4);
  font-weight: 600;
  line-height: 1.2;
}

.emergo-surface--base {
  background: var(--wp--preset--color--warm-ivory);
}

.emergo-surface--quiet {
  background: var(--wp--preset--color--warm-stone);
}

@media (min-width: 48.0625rem) {
  h1 {
    font-size: 2.625rem !important;
  }

  h2 {
    font-size: 2rem !important;
  }

  h3 {
    font-size: 1.625rem !important;
  }

  h4 {
    font-size: 1.3125rem !important;
  }

  .emergo-display,
  .emergo-intro > h1 {
    font-size: 3.125rem !important;
  }

  .has-body-large-font-size,
  .emergo-lead {
    font-size: 1.3125rem !important;
  }
}

@media (min-width: 64.01rem) {
  h1 {
    font-size: 3rem !important;
  }

  h2 {
    font-size: 2.25rem !important;
  }

  h3 {
    font-size: 1.75rem !important;
  }

  h4 {
    font-size: 1.375rem !important;
  }

  .emergo-display,
  .emergo-intro > h1 {
    font-size: 3.75rem !important;
  }

  .has-body-large-font-size,
  .emergo-lead {
    font-size: 1.375rem !important;
  }
}

@media (max-width: 64rem) {
  :root {
    --emergo-header-logo-width: 8.25rem;
  }
}

@media (max-width: 22.5rem) {
  :root {
    --emergo-header-logo-width: 7.5rem;
  }
}


/* Semantic icon integration — Phase 7.8G.3 / Theme v0.2.1
 * Approved S1 Open Structural Line masters, release v8.
 * Icons are redundant visual aids. Text remains the primary meaning carrier;
 * pseudo-elements therefore stay outside the accessibility tree.
 */
:where(
  .emergo-card--situation[data-emergo-situation-key] > h3,
  .emergo-card--engagement[data-emergo-engagement-key] > h3,
  .emergo-situation-profile[data-emergo-situation-key] .emergo-situation-profile__header h2,
  .emergo-engagement-detail[data-emergo-engagement-key] .emergo-engagement-detail__heading-copy h2,
  .emergo-advisory-field .emergo-advisory-field__heading-copy h2
) {
  align-items: flex-start;
  display: flex;
  gap: var(--wp--preset--spacing--16);
}

:where(
  .emergo-card--situation[data-emergo-situation-key] > h3,
  .emergo-card--engagement[data-emergo-engagement-key] > h3
)::before {
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  flex: 0 0 2rem;
  height: 2rem;
  margin-top: 0.05em;
  width: 2rem;
}

:where(
  .emergo-situation-profile[data-emergo-situation-key] .emergo-situation-profile__header h2,
  .emergo-engagement-detail[data-emergo-engagement-key] .emergo-engagement-detail__heading-copy h2,
  .emergo-advisory-field .emergo-advisory-field__heading-copy h2
)::before {
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  flex: 0 0 2.5rem;
  height: 2.5rem;
  margin-top: 0.02em;
  width: 2.5rem;
}

/* Situation family. */
[data-emergo-situation-key="growth"] > h3::before,
[data-emergo-situation-key="growth"] .emergo-situation-profile__header h2::before {
  background-image: url("assets/icons/v8/situation-growth.svg");
}

[data-emergo-situation-key="decision-execution"] > h3::before,
[data-emergo-situation-key="decision-execution"] .emergo-situation-profile__header h2::before {
  background-image: url("assets/icons/v8/situation-decisions-execution.svg");
}

[data-emergo-situation-key="silos-collaboration"] > h3::before,
[data-emergo-situation-key="silos-collaboration"] .emergo-situation-profile__header h2::before {
  background-image: url("assets/icons/v8/situation-silos-collaboration.svg");
}

[data-emergo-situation-key="leadership"] > h3::before,
[data-emergo-situation-key="leadership"] .emergo-situation-profile__header h2::before {
  background-image: url("assets/icons/v8/situation-leadership.svg");
}

[data-emergo-situation-key="strategy-execution"] > h3::before,
[data-emergo-situation-key="strategy-execution"] .emergo-situation-profile__header h2::before {
  background-image: url("assets/icons/v8/situation-strategy-execution.svg");
}

[data-emergo-situation-key="transformation-adaptability"] > h3::before,
[data-emergo-situation-key="transformation-adaptability"] .emergo-situation-profile__header h2::before {
  background-image: url("assets/icons/v8/situation-transformation-adaptability.svg");
}

[data-emergo-situation-key="business-assumptions"] > h3::before,
[data-emergo-situation-key="business-assumptions"] .emergo-situation-profile__header h2::before {
  background-image: url("assets/icons/v8/situation-business-assumptions.svg");
}

/* Engagement family. Diagnostic Conversation and Orientation & Fit intentionally
 * reuse the same approved initial-orientation icon.
 */
[data-emergo-engagement-key="diagnostic-conversation"] > h3::before,
[data-emergo-engagement-key="orientation-fit"] > h3::before,
[data-emergo-engagement-key="diagnostic-conversation"] .emergo-engagement-detail__heading-copy h2::before,
[data-emergo-engagement-key="orientation-fit"] .emergo-engagement-detail__heading-copy h2::before {
  background-image: url("assets/icons/v8/engagement-orientation-fit.svg");
}

[data-emergo-engagement-key="executive-diagnostic-entry"] > h3::before,
[data-emergo-engagement-key="executive-diagnostic-entry"] .emergo-engagement-detail__heading-copy h2::before {
  background-image: url("assets/icons/v8/engagement-executive-diagnostic-entry.svg");
}

[data-emergo-engagement-key="diagnostic-sprint"] > h3::before,
[data-emergo-engagement-key="diagnostic-sprint"] .emergo-engagement-detail__heading-copy h2::before {
  background-image: url("assets/icons/v8/engagement-diagnostic-sprint.svg");
}

[data-emergo-engagement-key="focus-engagement"] > h3::before,
[data-emergo-engagement-key="focus-engagement"] .emergo-engagement-detail__heading-copy h2::before {
  background-image: url("assets/icons/v8/intervention-focus.svg");
}

[data-emergo-engagement-key="integrated-development-engagement"] > h3::before,
[data-emergo-engagement-key="integrated-development-engagement"] .emergo-engagement-detail__heading-copy h2::before {
  background-image: url("assets/icons/v8/engagement-integrated-development.svg");
}

[data-emergo-engagement-key="transformation-adaptability-review"] > h3::before,
[data-emergo-engagement-key="transformation-adaptability-review"] .emergo-engagement-detail__heading-copy h2::before {
  background-image: url("assets/icons/v8/engagement-transformation-review.svg");
}

[data-emergo-engagement-key="learning-partnership"] > h3::before,
[data-emergo-engagement-key="learning-partnership"] .emergo-engagement-detail__heading-copy h2::before {
  background-image: url("assets/icons/v8/learning-rediagnosis.svg");
}

/* Advisory-field family. Existing semantic classes on the approved full page
 * make these stable without a page-content rewrite.
 */
.emergo-advisory-field--leadership .emergo-advisory-field__heading-copy h2::before {
  background-image: url("assets/icons/v8/leadership-development.svg");
}

.emergo-advisory-field--organization .emergo-advisory-field__heading-copy h2::before {
  background-image: url("assets/icons/v8/organizational-development.svg");
}

.emergo-advisory-field--business .emergo-advisory-field__heading-copy h2::before {
  background-image: url("assets/icons/v8/business-development.svg");
}

/* Cross-site recurring semantic markers. */
:where(
  .emergo-diagnostic-question,
  .emergo-situation-profile__question > h3,
  .emergo-advisory-field__questions > h3
),
:where(
  .emergo-situation-profile__perspective > h3,
  .emergo-advisory-field__perspective > h3
),
:where(
  .emergo-situation-profile__next-step > h3,
  .emergo-advisory-field__next-step > h3
) {
  align-items: flex-start;
  display: flex;
  gap: var(--wp--preset--spacing--12);
}

:where(
  .emergo-diagnostic-question,
  .emergo-situation-profile__question > h3,
  .emergo-advisory-field__questions > h3,
  .emergo-situation-profile__perspective > h3,
  .emergo-advisory-field__perspective > h3,
  .emergo-situation-profile__next-step > h3,
  .emergo-advisory-field__next-step > h3
)::before {
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  flex: 0 0 1.5rem;
  height: 1.5rem;
  margin-top: 0.02em;
  width: 1.5rem;
}

:where(
  .emergo-diagnostic-question,
  .emergo-situation-profile__question > h3,
  .emergo-advisory-field__questions > h3
)::before {
  background-image: url("assets/icons/v8/diagnostic-question.svg");
}

:where(
  .emergo-situation-profile__perspective > h3,
  .emergo-advisory-field__perspective > h3
)::before {
  background-image: url("assets/icons/v8/emergo-perspective.svg");
}

:where(
  .emergo-situation-profile__next-step > h3,
  .emergo-advisory-field__next-step > h3
)::before {
  background-image: url("assets/icons/v8/possible-next-step.svg");
}

/* Preserve natural wrapping at narrow widths. Icons remain fixed-size while
 * headings take the available measure; no fixed text heights are introduced.
 */
@media (max-width: 30rem) {
  :where(
    .emergo-card--situation[data-emergo-situation-key] > h3,
    .emergo-card--engagement[data-emergo-engagement-key] > h3,
    .emergo-situation-profile[data-emergo-situation-key] .emergo-situation-profile__header h2,
    .emergo-engagement-detail[data-emergo-engagement-key] .emergo-engagement-detail__heading-copy h2,
    .emergo-advisory-field .emergo-advisory-field__heading-copy h2
  ) {
    gap: var(--wp--preset--spacing--12);
  }
}

/* Phase 7.8G.3 verification corrections — Theme v0.2.4
 * Consolidated after staging review.
 * Scope: Advisory Fields hero desktop optical balance, Typical Situations semantic marker,
 * and language-aware automatic hyphenation in the two approved dense heading contexts.
 */

/* Preserve the verified tablet/mobile hero treatment from v0.2.3. */
.emergo-advisory-hero__field {
  display: block;
  min-width: 0;
  text-align: left;
}

.emergo-advisory-hero__field h3 {
  box-sizing: border-box;
  margin-inline: auto;
  max-inline-size: calc(100% - 2rem);
  text-align: left;
  width: fit-content;
}

/* Desktop correction. The global 7.8C H3 rule had overridden the compact
 * field-label scale that this hero originally used. Restore that local scale
 * and centre each label block with flex. The three-field cluster deliberately
 * stays inside its existing .emergo-copy-narrow parent at every desktop width;
 * there is no large-desktop breakout or alternate cluster measure.
 *
 * The second label is intentionally allowed to form a two-line, left-aligned
 * block at its longest word width. This keeps “Organizational” away from the
 * card edge while centring the complete label block optically.
 */
@media (min-width: 64.01rem) {
  .emergo-advisory-hero__field {
    align-items: center;
    display: flex;
    justify-content: center;
  }

  .emergo-advisory-hero__field h3 {
    font-size: clamp(1.05rem, 1rem + 0.15vw, 1.2rem) !important;
    margin-inline: 0;
    max-inline-size: 100%;
    width: max-content;
  }

  .emergo-advisory-hero__field:nth-child(2) h3 {
    width: min-content;
  }
}

/* Cross-site semantic marker completion: “Typical Situations” uses the
 * approved Visible Situation master. The text remains the meaning carrier.
 */
.emergo-advisory-field__situations > h3 {
  align-items: flex-start;
  display: flex;
  gap: var(--wp--preset--spacing--12);
}

.emergo-advisory-field__situations > h3::before {
  background-image: url("assets/icons/v8/visible-situation.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  flex: 0 0 1.5rem;
  height: 1.5rem;
  margin-top: 0.02em;
  width: 1.5rem;
}

/* 7.8C keeps headings unhyphenated by default. These two dense card/column
 * contexts are the approved exception. Override the global H3 rule explicitly
 * and let the browser use the inherited document language (DE/EN) for proper
 * dictionary hyphenation. Crucially, disable emergency arbitrary word breaking;
 * this was what allowed the final “y” of “Uncertainty” to fall onto its own line.
 */
@media (min-width: 48.0625rem) {
  .emergo-advisory-format-card h3 {
    -webkit-hyphens: auto !important;
    hyphens: auto !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }
}

@media (min-width: 80rem) {
  .emergo-collaboration-principle h3 {
    -webkit-hyphens: auto !important;
    hyphens: auto !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }
}

/* Phase 7.8G.4 — Production Diagram System corrections — v0.2.7
 * Re-grounded in the approved 7.8E production studies after staging review.
 * Geometry is deterministic at each breakpoint; semantic text remains HTML.
 */
:root {
  --emergo-diagram-visual-width: 56rem;
  --emergo-diagram-relational-width: 48rem;
  --emergo-diagram-line: var(--wp--preset--color--stone-line);
  --emergo-diagram-structure: var(--wp--preset--color--deep-teal);
  --emergo-diagram-focus: var(--wp--preset--color--grounded-clay);
  --emergo-diagram-surface: var(--wp--preset--color--warm-ivory);
  --emergo-diagram-surface-alt: var(--wp--preset--color--warm-stone);
}

.emergo-diagram {
  box-sizing: border-box;
  color: var(--wp--preset--color--deep-ink);
  margin-block: clamp(2.25rem, 5vw, 4.25rem);
  min-width: 0;
}

/* Diagram canvases may exceed the 45rem reading measure where the approved
 * architecture needs room, but are capped at a restrained 56rem visual field.
 * This is intentionally narrower than the site's 76rem wide container. */
.emergo-copy-narrow > :where(
  .emergo-diagram--core-flow,
  .emergo-diagram--learning-gate
) {
  left: 50%;
  max-width: none;
  position: relative;
  transform: translateX(-50%);
  width: min(var(--emergo-diagram-visual-width), calc(100vw - clamp(2.5rem, 6vw, 8rem)));
}

.emergo-copy-narrow > :where(
  .emergo-diagram--advisory-map,
  .emergo-diagram--engagement-map
) {
  left: 50%;
  max-width: none;
  position: relative;
  transform: translateX(-50%);
  width: min(var(--emergo-diagram-relational-width), calc(100vw - clamp(2.5rem, 6vw, 8rem)));
}

.emergo-diagram__icon {
  display: block;
  flex: 0 0 auto;
  height: 2.5rem;
  object-fit: contain;
  width: 2.5rem;
}

/* Shared open-structure node treatment. */
.emergo-diagram-node,
.emergo-core-flow__node,
.emergo-advisory-map__node,
.emergo-engagement-map__input,
.emergo-engagement-map__diagnosis,
.emergo-engagement-map__option,
.emergo-learning-gate__node,
.emergo-learning-gate__outcome {
  background: var(--emergo-diagram-surface);
  border: 2px solid var(--emergo-diagram-structure);
  box-sizing: border-box;
  color: var(--wp--preset--color--deep-ink);
  min-width: 0;
  position: relative;
}

.emergo-core-flow__node::after,
.emergo-engagement-map__input::after,
.emergo-engagement-map__diagnosis::after,
.emergo-engagement-map__option::after,
.emergo-learning-gate__node::after,
.emergo-learning-gate__outcome::after {
  background: inherit;
  content: "";
  height: 30%;
  position: absolute;
  right: -3px;
  top: 35%;
  width: 5px;
}

/* --------------------------------------------------------------------------
 * Diagnostic Path — approved B Two-Band Bridge
 * ----------------------------------------------------------------------- */
.emergo-diagram--diagnostic-path {
  width: 100%;
}

.emergo-diagnostic-map {
  position: relative;
}

.emergo-diagram-band {
  background: var(--emergo-diagram-surface);
  border: 1px solid var(--emergo-diagram-line);
  border-radius: 0.875rem;
  box-sizing: border-box;
  padding: clamp(1.4rem, 2.8vw, 2.2rem);
  position: relative;
  z-index: 1;
}

.emergo-diagram-band--development {
  margin-left: 15%;
}

.emergo-diagram-band__label {
  color: var(--emergo-diagram-structure);
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: 0.065em;
  margin: 0 0 clamp(1.45rem, 3vw, 2.25rem);
  text-transform: uppercase;
}

.emergo-diagram-band--development .emergo-diagram-band__label {
  color: var(--wp--preset--color--deep-clay);
}

.emergo-diagram-rail {
  display: grid;
  gap: clamp(1rem, 1.8vw, 1.7rem);
  list-style: none;
  margin: 0;
  padding: 0;
}

.emergo-diagram-rail--five {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.emergo-diagram-rail--three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.emergo-diagram-node {
  align-items: center;
  border: 0;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  justify-content: flex-start;
  padding: 0.2rem;
  text-align: center;
}

.emergo-diagram-node::after {
  display: none;
}

.emergo-diagram-node__label {
  font-size: clamp(0.9rem, 0.84rem + 0.16vw, 1rem);
  font-weight: 600;
  line-height: 1.24;
  max-width: 9.5rem;
}

.emergo-diagram-rail > .emergo-diagram-node:not(:last-child)::before {
  border-top: 1.5px solid var(--emergo-diagram-line);
  content: "";
  left: calc(50% + 2rem);
  position: absolute;
  top: 1.25rem;
  width: calc(100% - 0.65rem);
  z-index: 0;
}

.emergo-diagram-rail > .emergo-diagram-node:not(:last-child) .emergo-diagram__icon {
  position: relative;
  z-index: 1;
}

/* The transition is a Clay route, not a Clay square. It starts at the
 * Intervention Focus position and terminates at Development Mode. */
.emergo-diagram-bridge {
  height: 5rem;
  position: relative;
  z-index: 2;
}

.emergo-diagram-bridge::before {
  border-bottom: 2px solid var(--emergo-diagram-focus);
  border-right: 2px solid var(--emergo-diagram-focus);
  content: "";
  height: 4.9rem;
  left: 29.2%;
  position: absolute;
  right: 10%;
  top: 0;
}

.emergo-diagram-bridge::after {
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 7px solid var(--emergo-diagram-focus);
  bottom: -0.22rem;
  content: "";
  left: calc(29.2% - 4px);
  position: absolute;
}

.emergo-diagram-bridge__label {
  background: var(--wp--preset--color--warm-ivory);
  color: var(--wp--preset--color--deep-clay);
  font-size: 0.82rem;
  font-weight: 600;
  left: 52%;
  line-height: 1.2;
  padding-inline: 0.45rem;
  position: absolute;
  text-align: center;
  top: 3.2rem;
  transform: translateX(-50%);
  width: max-content;
  max-width: 18rem;
}

/* Conditional learning return. It rises from the Learning & Re-diagnosis
 * side of the lower band, travels through the inter-band space and points back
 * to the Diagnosis position. */
.emergo-diagram-return {
  border-right: 1.5px dashed var(--emergo-diagram-line);
  border-top: 1.5px dashed var(--emergo-diagram-line);
  height: 4.35rem;
  left: 70%;
  position: absolute;
  top: -4.35rem;
  width: 16%;
}

.emergo-diagram-return::before {
  border-left: 1.5px dashed var(--emergo-diagram-line);
  content: "";
  height: 0.72rem;
  left: 0;
  position: absolute;
  top: -0.72rem;
}

.emergo-diagram-return::after {
  border-bottom: 7px solid var(--emergo-diagram-line);
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  content: "";
  left: -4.25px;
  position: absolute;
  top: -0.78rem;
}

.emergo-diagram-return__label {
  color: color-mix(in srgb, var(--wp--preset--color--deep-ink) 72%, transparent);
  font-size: 0.82rem;
  line-height: 1.3;
  margin: 1.05rem 0 0 15%;
  text-align: center;
}

/* --------------------------------------------------------------------------
 * Core Flow — approved B Grouped Structural Flow
 * ----------------------------------------------------------------------- */
.emergo-diagram--core-flow {
  margin-top: clamp(2rem, 4vw, 3.75rem);
}

.emergo-core-flow {
  align-items: stretch;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 11.25rem 0.75rem minmax(0, 1fr) 0.75rem 11.25rem;
  min-width: 0;
}

.emergo-core-flow__zone {
  box-sizing: border-box;
  list-style: none;
  margin: 0;
  min-width: 0;
  padding: 0;
}

.emergo-core-flow__zone--start,
.emergo-core-flow__zone--outcome,
.emergo-core-flow__zone--middle-wrap {
  background: color-mix(in srgb, var(--emergo-diagram-surface-alt) 28%, transparent);
  border: 1px solid var(--emergo-diagram-line);
  border-radius: 0.75rem;
  padding: 1rem;
}

.emergo-core-flow__zone--start,
.emergo-core-flow__zone--outcome {
  align-items: stretch;
  display: flex;
  flex-direction: column;
}

.emergo-core-flow__zone--middle-wrap {
  display: flex;
  flex-direction: column;
}

.emergo-core-flow__zone-label {
  color: var(--emergo-diagram-structure);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.055em;
  line-height: 1.2;
  margin: 0 0 1rem;
  text-transform: uppercase;
}

.emergo-core-flow__zone--start .emergo-core-flow__node,
.emergo-core-flow__zone--outcome .emergo-core-flow__node {
  flex: 1;
}

.emergo-core-flow__zone--middle {
  align-content: center;
  display: grid;
  flex: 1;
  gap: 1rem 0.9rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.emergo-core-flow__node {
  align-items: center;
  display: flex;
  font-size: 0.91rem;
  font-weight: 600;
  justify-content: center;
  line-height: 1.24;
  min-height: 7rem;
  padding: 0.85rem;
  text-align: center;
}

.emergo-core-flow__node > span {
  max-width: 100%;
}

.emergo-core-flow__threshold {
  align-self: center;
  background: var(--emergo-diagram-focus);
  display: block;
  height: 0.75rem;
  position: relative;
  width: 0.75rem;
}

.emergo-core-flow__threshold::before,
.emergo-core-flow__threshold::after {
  border-top: 1.5px solid var(--emergo-diagram-line);
  content: "";
  position: absolute;
  top: calc(50% - 0.75px);
  width: 0.85rem;
}

.emergo-core-flow__threshold::before { right: 100%; }
.emergo-core-flow__threshold::after { left: 100%; }

/* Light reading-order hints within the central system field. */
.emergo-core-flow__node--m2::before,
.emergo-core-flow__node--m3::before,
.emergo-core-flow__node--m5::before,
.emergo-core-flow__node--m6::before {
  border-top: 1px solid var(--emergo-diagram-line);
  content: "";
  left: -0.9rem;
  position: absolute;
  top: 50%;
  width: 0.9rem;
}

.emergo-core-flow__node--m1::before,
.emergo-core-flow__node--m2::after,
.emergo-core-flow__node--m3::after {
  border-left: 1px solid var(--emergo-diagram-line);
  bottom: -1rem;
  content: "";
  height: 1rem;
  left: 50%;
  position: absolute;
}

/* --------------------------------------------------------------------------
 * Advisory Fields — refined triangular relationship
 * ----------------------------------------------------------------------- */
.emergo-advisory-map {
  height: 42rem;
  position: relative;
}

.emergo-advisory-map__structure {
  height: 36rem;
  left: 0;
  overflow: visible;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 0;
}

.emergo-advisory-map__structure--mobile { display: none; }

.emergo-advisory-map__triangle {
  fill: none;
  stroke: color-mix(in srgb, var(--emergo-diagram-line) 72%, var(--wp--preset--color--deep-ink));
  stroke-dasharray: 10 9;
  stroke-width: 2.3;
}

.emergo-advisory-map__focus-lines {
  fill: none;
  stroke: var(--emergo-diagram-focus);
  stroke-linecap: square;
  stroke-width: 3.5;
}

.emergo-advisory-map__node {
  align-items: center;
  display: flex;
  gap: 0.75rem;
  min-height: 9.6rem;
  padding: 1rem 1.1rem;
  position: absolute;
  width: 17rem;
  z-index: 2;
}

.emergo-advisory-map__node .emergo-diagram__icon {
  height: 2.25rem;
  width: 2.25rem;
}

.emergo-advisory-map__copy {
  display: grid;
  gap: 0.35rem;
  min-width: 0;
}

.emergo-advisory-map__copy strong {
  font-size: 1rem;
  line-height: 1.18;
}

.emergo-advisory-map__copy span {
  font-size: 0.84rem;
  line-height: 1.3;
}

.emergo-advisory-map__node--leadership {
  left: 50%;
  top: 0;
  transform: translateX(-50%);
}

.emergo-advisory-map__node--organization {
  left: 0.5rem;
  top: 22rem;
}

.emergo-advisory-map__node--business {
  right: 0.5rem;
  top: 22rem;
}

/* Openings face the shared focus and align with the Clay connector lines. */
.emergo-advisory-map__node::after {
  background: inherit;
  content: "";
  position: absolute;
  z-index: 3;
}

.emergo-advisory-map__node--leadership::after {
  bottom: -3px;
  height: 5px;
  left: calc(50% - 1.7rem);
  width: 3.4rem;
}

.emergo-advisory-map__node--organization::after {
  height: 5px;
  right: 0.65rem;
  top: -3px;
  width: 3.2rem;
}

.emergo-advisory-map__node--business::after {
  height: 5px;
  left: 0.65rem;
  top: -3px;
  width: 3.2rem;
}

.emergo-advisory-map__focus-group {
  align-items: center;
  display: flex;
  flex-direction: column;
  left: 50%;
  position: absolute;
  top: 14.25rem;
  transform: translateX(-50%);
  width: 16rem;
  z-index: 3;
}

.emergo-advisory-map__focus-label {
  color: var(--wp--preset--color--deep-clay);
  font-size: 0.84rem;
  font-weight: 600;
  margin-bottom: 0.65rem;
  text-align: center;
}

.emergo-advisory-map__focus {
  background: var(--emergo-diagram-focus);
  display: block;
  height: 1.35rem;
  width: 1.35rem;
}

.emergo-advisory-map__focus-note {
  font-size: 0.8rem;
  line-height: 1.3;
  margin-top: 0.8rem;
  max-width: 13rem;
  text-align: center;
}

.emergo-advisory-map__context {
  align-items: center;
  background: color-mix(in srgb, var(--emergo-diagram-surface-alt) 55%, transparent);
  border-radius: 0.6rem;
  bottom: 0;
  display: flex;
  gap: 0.8rem;
  left: 0;
  min-height: 4.5rem;
  padding: 0.8rem 1rem;
  position: absolute;
  width: min(21rem, 48%);
}

.emergo-advisory-map__context strong {
  font-size: 0.9rem;
  line-height: 1.2;
}

.emergo-advisory-map__context-symbol {
  border: 2px dashed var(--emergo-diagram-structure);
  display: grid;
  flex: 0 0 auto;
  height: 2.4rem;
  place-items: center;
  width: 2.4rem;
}

.emergo-advisory-map__context-symbol i {
  background: var(--emergo-diagram-focus);
  display: block;
  height: 0.75rem;
  width: 0.75rem;
}

/* --------------------------------------------------------------------------
 * Situation → Engagement — approved B Diagnostic Branching Field
 * ----------------------------------------------------------------------- */
.emergo-engagement-map {
  height: 42rem;
  position: relative;
}

.emergo-engagement-map__eyebrow {
  color: var(--emergo-diagram-structure);
  font-size: 0.76rem;
  font-weight: 600;
  left: 0;
  letter-spacing: 0.055em;
  margin: 0;
  position: absolute;
  text-transform: uppercase;
  top: 0;
}

.emergo-engagement-map__input,
.emergo-engagement-map__diagnosis {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: absolute;
  text-align: center;
  z-index: 2;
}

.emergo-engagement-map__input {
  height: 9rem;
  left: 2%;
  padding: 1rem;
  top: 50%;
  transform: translateY(-50%);
  width: 18.2%;
}

.emergo-engagement-map__input > span {
  font-size: 1rem;
  font-weight: 600;
  margin-top: 0.55rem;
}

.emergo-engagement-map__diagnosis {
  height: 14.5rem;
  left: 25.8%;
  padding: 1rem 1.05rem;
  top: 50%;
  transform: translateY(-50%);
  width: 26.4%;
}

.emergo-engagement-map__diagnosis .emergo-diagram__icon {
  margin-bottom: 0.45rem;
}

.emergo-engagement-map__diagnosis-copy {
  min-width: 0;
}

.emergo-engagement-map__diagnosis-copy strong {
  display: block;
  font-size: 1rem;
  line-height: 1.2;
  margin-bottom: 0.7rem;
}

.emergo-engagement-map__diagnosis-copy ul {
  color: color-mix(in srgb, var(--wp--preset--color--deep-ink) 76%, transparent);
  font-size: 0.76rem;
  line-height: 1.35;
  list-style: none;
  margin: 0;
  padding: 0;
}

.emergo-engagement-map__diagnosis-copy li + li {
  margin-top: 0.22rem;
}

.emergo-engagement-map__focus-group {
  align-items: center;
  display: flex;
  gap: 0.55rem;
  left: 56.5%;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 4;
}

.emergo-engagement-map__focus {
  background: var(--emergo-diagram-focus);
  display: block;
  flex: 0 0 auto;
  height: 1rem;
  width: 1rem;
}

.emergo-engagement-map__focus-label {
  color: var(--wp--preset--color--deep-clay);
  font-size: 0.76rem;
  font-weight: 600;
  line-height: 1.15;
  width: 8rem;
}

.emergo-engagement-map__options {
  bottom: 3.4rem;
  display: grid;
  gap: 0.8rem 1rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: repeat(4, minmax(0, 1fr));
  left: 61.8%;
  list-style: none;
  margin: 0;
  min-width: 0;
  padding: 0;
  position: absolute;
  right: 1.5%;
  top: 4.5rem;
  z-index: 2;
}

.emergo-engagement-map__option--c1 { grid-column: 1; }
.emergo-engagement-map__option--c2 { grid-column: 2; }
.emergo-engagement-map__option--r1 { grid-row: 1; }
.emergo-engagement-map__option--r2 { grid-row: 2; }
.emergo-engagement-map__option--r3 { grid-row: 3; }
.emergo-engagement-map__option--r4 { grid-row: 4; }

.emergo-engagement-map__option {
  align-items: center;
  display: grid;
  gap: 0.6rem;
  grid-template-columns: 2rem minmax(0, 1fr);
  min-height: 0;
  padding: 0.55rem 0.65rem;
}

.emergo-engagement-map__option .emergo-diagram__icon {
  height: 1.9rem;
  width: 1.9rem;
}

.emergo-engagement-map__option > span {
  font-size: 0.76rem;
  font-weight: 600;
  line-height: 1.18;
  min-width: 0;
}

.emergo-engagement-map__structure {
  height: 100%;
  inset: 0;
  overflow: visible;
  position: absolute;
  width: 100%;
  z-index: 1;
}

.emergo-engagement-map__line,
.emergo-engagement-map__stop-line {
  fill: none;
  stroke: var(--emergo-diagram-line);
  stroke-width: 1.7;
}

.emergo-engagement-map__stop-line {
  stroke-dasharray: 7 7;
}

.emergo-engagement-map__stop {
  bottom: 0.35rem;
  left: 65.5%;
  position: absolute;
  z-index: 3;
}

.emergo-engagement-map__stop span {
  background: var(--wp--preset--color--warm-ivory);
  color: color-mix(in srgb, var(--wp--preset--color--deep-ink) 72%, transparent);
  font-size: 0.75rem;
  line-height: 1.2;
  padding-inline: 0.35rem;
}

.emergo-engagement-map__alternatives-label {
  display: none;
}

/* --------------------------------------------------------------------------
 * Diagnosis → Intervention → Evidence → conditional Re-diagnosis
 * Approved B Evidence Gate Return, with user-facing decision question.
 * ----------------------------------------------------------------------- */
.emergo-learning-gate {
  height: 31rem;
  position: relative;
}

.emergo-learning-gate__structure {
  height: 100%;
  inset: 0;
  overflow: visible;
  position: absolute;
  width: 100%;
  z-index: 1;
}

.emergo-learning-gate__line {
  fill: none;
  stroke: var(--emergo-diagram-line);
  stroke-width: 1.7;
}

.emergo-learning-gate__return-line {
  fill: none;
  stroke: var(--emergo-diagram-line);
  stroke-dasharray: 7 7;
  stroke-width: 1.7;
}

.emergo-learning-gate__node,
.emergo-learning-gate__outcome {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: absolute;
  text-align: center;
  z-index: 2;
}

.emergo-learning-gate__node {
  height: 8rem;
  padding: 0.8rem;
  top: 8.8rem;
  width: 19%;
}

.emergo-learning-gate__node--diagnosis { left: 0; }
.emergo-learning-gate__node--intervention { left: 25%; }
.emergo-learning-gate__node--evidence { left: 50%; width: 22%; }

.emergo-learning-gate__node > span {
  font-size: 0.9rem;
  font-weight: 600;
  line-height: 1.24;
  margin-top: 0.65rem;
}

.emergo-learning-gate__decision {
  left: 75.5%;
  position: absolute;
  top: 10.9rem;
  z-index: 4;
}

.emergo-learning-gate__focus {
  background: var(--emergo-diagram-focus);
  display: block;
  height: 1rem;
  width: 1rem;
}

.emergo-learning-gate__question {
  color: var(--wp--preset--color--deep-clay);
  font-size: 0.78rem;
  font-weight: 600;
  left: 50%;
  line-height: 1.2;
  margin: 0;
  position: absolute;
  text-align: center;
  top: -2.9rem;
  transform: translateX(-50%);
  width: 11rem;
}

.emergo-learning-gate__outcome {
  min-height: 7.8rem;
  padding: 0.75rem;
  right: 0;
  width: 19.5%;
}

.emergo-learning-gate__outcome--sufficient { top: 3.2rem; }
.emergo-learning-gate__outcome--return { top: 15.8rem; }

.emergo-learning-gate__outcome strong {
  font-size: 0.88rem;
  line-height: 1.2;
}

.emergo-learning-gate__outcome > span,
.emergo-learning-gate__outcome div > span {
  color: color-mix(in srgb, var(--wp--preset--color--deep-ink) 72%, transparent);
  font-size: 0.78rem;
  margin-top: 0.35rem;
}

.emergo-learning-gate__outcome--return {
  display: grid;
  gap: 0.55rem;
  grid-template-columns: 1.8rem minmax(0, 1fr);
}

.emergo-learning-gate__outcome--return .emergo-diagram__icon {
  height: 1.8rem;
  width: 1.8rem;
}

.emergo-learning-gate__return-note {
  bottom: 0;
  color: color-mix(in srgb, var(--wp--preset--color--deep-ink) 72%, transparent);
  font-size: 0.78rem;
  left: 12%;
  line-height: 1.3;
  margin: 0;
  position: absolute;
  right: 22%;
  text-align: center;
  z-index: 2;
}

/* --------------------------------------------------------------------------
 * Tablet / compact desktop
 * ----------------------------------------------------------------------- */
@media (max-width: 64rem) {
  .emergo-diagram { margin-block: clamp(2rem, 5vw, 3.5rem); }

  .emergo-core-flow {
    grid-template-columns: 10.2rem 0.65rem minmax(0, 1fr) 0.65rem 10.2rem;
  }

  .emergo-core-flow__zone--middle {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .emergo-core-flow__node--m2::before,
  .emergo-core-flow__node--m3::before,
  .emergo-core-flow__node--m5::before,
  .emergo-core-flow__node--m6::before,
  .emergo-core-flow__node--m1::before,
  .emergo-core-flow__node--m2::after,
  .emergo-core-flow__node--m3::after {
    display: none;
  }

  .emergo-advisory-map__node {
    width: 16rem;
  }

  .emergo-engagement-map__option > span {
    font-size: 0.72rem;
  }
}

/* --------------------------------------------------------------------------
 * Mobile / narrow tablet: semantic recomposition, not scaled desktop artwork
 * ----------------------------------------------------------------------- */
@media (max-width: 56rem) {
  .emergo-copy-narrow > :where(
    .emergo-diagram--core-flow,
    .emergo-diagram--learning-gate,
    .emergo-diagram--advisory-map,
    .emergo-diagram--engagement-map
  ) {
    left: auto;
    max-width: 100%;
    transform: none;
    width: 100%;
  }

  /* Diagnostic Path mobile: centered Clay transition, no broken return line. */
  .emergo-diagram-band--development { margin-left: 0; }

  .emergo-diagram-rail,
  .emergo-diagram-rail--five,
  .emergo-diagram-rail--three {
    gap: 0.65rem;
    grid-template-columns: 1fr;
  }

  .emergo-diagram-node {
    align-items: center;
    border-bottom: 1px solid var(--emergo-diagram-line);
    flex-direction: row;
    gap: 1rem;
    justify-content: flex-start;
    min-height: 4.15rem;
    padding: 0.55rem 0.15rem;
    text-align: left;
  }

  .emergo-diagram-node:last-child { border-bottom: 0; }
  .emergo-diagram-node__label { max-width: none; }

  .emergo-diagram-rail > .emergo-diagram-node:not(:last-child)::before {
    border-left: 1.5px solid var(--emergo-diagram-line);
    border-top: 0;
    bottom: -0.72rem;
    left: 1.25rem;
    top: auto;
    width: 0;
  }

  .emergo-diagram-bridge {
    height: 4.5rem;
  }

  .emergo-diagram-bridge::before {
    border-bottom: 0;
    border-left: 2px solid var(--emergo-diagram-focus);
    border-right: 0;
    height: 3rem;
    left: 50%;
    right: auto;
    top: 0;
    width: 0;
  }

  .emergo-diagram-bridge::after {
    bottom: 1.2rem;
    left: calc(50% - 4px);
  }

  .emergo-diagram-bridge__label {
    font-size: 0.76rem;
    left: 50%;
    max-width: min(17rem, 85%);
    top: 3.15rem;
    white-space: normal;
  }

  .emergo-diagram-return { display: none; }
  .emergo-diagram-return__label { margin-left: 0; }

  /* Core Flow mobile: semantic group labels retained. */
  .emergo-core-flow {
    display: grid;
    gap: 0.8rem;
    grid-template-columns: 1fr;
  }

  .emergo-core-flow__zone--start,
  .emergo-core-flow__zone--outcome,
  .emergo-core-flow__zone--middle-wrap {
    padding: 0.9rem;
  }

  .emergo-core-flow__zone--middle {
    gap: 0.65rem;
    grid-template-columns: 1fr;
  }

  .emergo-core-flow__node { min-height: 5.2rem; }

  .emergo-core-flow__threshold {
    justify-self: center;
    margin-block: 0.1rem;
  }

  .emergo-core-flow__threshold::before,
  .emergo-core-flow__threshold::after {
    border-left: 1.5px solid var(--emergo-diagram-line);
    border-top: 0;
    height: 0.8rem;
    left: 50%;
    right: auto;
    width: 0;
  }

  .emergo-core-flow__threshold::before { bottom: 100%; top: auto; }
  .emergo-core-flow__threshold::after { top: 100%; }

  /* Advisory Fields mobile: preserve triangular relationship and shared focus. */
  .emergo-advisory-map {
    height: 43rem;
  }

  .emergo-advisory-map__structure--desktop { display: none; }
  .emergo-advisory-map__structure--mobile {
    display: block;
    height: 36rem;
  }

  .emergo-advisory-map__node {
    gap: 0.45rem;
    min-height: 8.8rem;
    padding: 0.7rem;
  }

  .emergo-advisory-map__node .emergo-diagram__icon {
    height: 1.8rem;
    width: 1.8rem;
  }

  .emergo-advisory-map__copy strong { font-size: 0.9rem; }
  .emergo-advisory-map__copy span { font-size: 0.75rem; }

  .emergo-advisory-map__node--leadership {
    left: 50%;
    top: 0;
    transform: translateX(-50%);
    width: min(78%, 16rem);
  }

  .emergo-advisory-map__node--organization,
  .emergo-advisory-map__node--business {
    top: 24rem;
    width: 47%;
  }

  .emergo-advisory-map__node--organization { left: 0; }
  .emergo-advisory-map__node--business { right: 0; }

  .emergo-advisory-map__focus-group {
    top: 12.5rem;
    width: 13.5rem;
  }

  .emergo-advisory-map__focus-note {
    font-size: 0.73rem;
    max-width: 11rem;
  }

  .emergo-advisory-map__context {
    bottom: 0;
    width: 100%;
  }

  .emergo-advisory-map__node--organization::after {
    right: 0.45rem;
    width: 2.6rem;
  }

  .emergo-advisory-map__node--business::after {
    left: 0.45rem;
    width: 2.6rem;
  }

  /* Engagement mobile: the alternatives share one branch rail. */
  .emergo-engagement-map {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    height: auto;
    padding-top: 2rem;
  }

  .emergo-engagement-map__eyebrow {
    position: static;
  }

  .emergo-engagement-map__input,
  .emergo-engagement-map__diagnosis {
    height: auto;
    left: auto;
    min-height: 6.2rem;
    padding: 0.85rem;
    position: relative;
    top: auto;
    transform: none;
    width: 100%;
  }

  .emergo-engagement-map__input::before,
  .emergo-engagement-map__diagnosis::before {
    border-left: 1.5px solid var(--emergo-diagram-line);
    bottom: -0.75rem;
    content: "";
    height: 0.75rem;
    left: 50%;
    position: absolute;
  }

  .emergo-engagement-map__diagnosis {
    min-height: 10.5rem;
  }

  .emergo-engagement-map__focus-group {
    align-self: center;
    flex-direction: column;
    gap: 0.35rem;
    left: auto;
    position: relative;
    top: auto;
    transform: none;
  }

  .emergo-engagement-map__focus-label {
    text-align: center;
    width: auto;
  }

  .emergo-engagement-map__stop {
    align-self: center;
    border-left: 1.5px dashed var(--emergo-diagram-line);
    bottom: auto;
    left: auto;
    margin: -0.2rem 0 0;
    padding: 1.2rem 0 0.2rem 0.75rem;
    position: relative;
  }

  .emergo-engagement-map__alternatives-label {
    color: var(--emergo-diagram-structure);
    display: block;
    font-size: 0.8rem;
    font-weight: 600;
    margin: 0.6rem 0 0;
    text-align: center;
  }

  .emergo-engagement-map__options {
    display: grid;
    gap: 0.65rem;
    grid-template-columns: 1fr;
    grid-template-rows: none;
    left: auto;
    padding-left: 2.2rem;
    position: relative;
    right: auto;
    top: auto;
    bottom: auto;
  }

  .emergo-engagement-map__options::before {
    border-left: 1.5px solid var(--emergo-diagram-line);
    bottom: 2.4rem;
    content: "";
    left: 0.75rem;
    position: absolute;
    top: 2.4rem;
  }

  .emergo-engagement-map__option,
  .emergo-engagement-map__option--r1,
  .emergo-engagement-map__option--r2,
  .emergo-engagement-map__option--r3,
  .emergo-engagement-map__option--r4 {
    grid-column: auto;
    grid-row: auto;
    min-height: 4.8rem;
    position: relative;
  }

  .emergo-engagement-map__option::before {
    border-top: 1.5px solid var(--emergo-diagram-line);
    content: "";
    left: -1.45rem;
    position: absolute;
    top: 50%;
    width: 1.45rem;
  }

  .emergo-engagement-map__structure--desktop { display: none; }

  /* Learning gate mobile: question and two outcomes remain explicit. */
  .emergo-learning-gate {
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
    height: auto;
    padding-bottom: 3rem;
  }

  .emergo-learning-gate__structure { display: none; }

  .emergo-learning-gate__node,
  .emergo-learning-gate__outcome {
    height: auto;
    left: auto;
    min-height: 5.5rem;
    position: relative;
    right: auto;
    top: auto;
    width: 100%;
  }

  .emergo-learning-gate__node:not(.emergo-learning-gate__node--evidence)::before,
  .emergo-learning-gate__node--evidence::after {
    border-left: 1.5px solid var(--emergo-diagram-line);
    bottom: -0.65rem;
    content: "";
    height: 0.65rem;
    left: 50%;
    position: absolute;
  }

  .emergo-learning-gate__decision {
    align-self: center;
    left: auto;
    margin-top: 0.1rem;
    position: relative;
    top: auto;
  }

  .emergo-learning-gate__question {
    left: 50%;
    margin: 0;
    top: 1.35rem;
    width: min(18rem, 85vw);
  }

  .emergo-learning-gate__outcome--sufficient { margin-top: 3.4rem; }

  .emergo-learning-gate__outcome--return {
    display: grid;
    grid-template-columns: 2rem minmax(0, 1fr);
  }

  .emergo-learning-gate__return-note {
    bottom: auto;
    font-size: 0.72rem;
    left: auto;
    margin-top: 0.2rem;
    position: relative;
    right: auto;
  }
}

@media (max-width: 23rem) {
  .emergo-advisory-map { height: 46rem; }

  .emergo-advisory-map__copy strong { font-size: 0.82rem; }

  .emergo-advisory-map__node--organization,
  .emergo-advisory-map__node--business {
    min-height: 10.2rem;
  }

  .emergo-learning-gate__outcomes {
    grid-template-columns: 1fr;
  }
}

/* Diagram text may hyphenate linguistically where necessary, but arbitrary
 * intra-word emergency breaking is never used. */
.emergo-diagram :where(
  .emergo-diagram-node__label,
  .emergo-core-flow__node > span,
  .emergo-advisory-map__copy,
  .emergo-engagement-map__input > span,
  .emergo-engagement-map__diagnosis-copy,
  .emergo-engagement-map__option > span,
  .emergo-learning-gate__node > span,
  .emergo-learning-gate__outcome
) {
  -webkit-hyphens: auto;
  hyphens: auto;
  overflow-wrap: normal;
  word-break: normal;
}

/* 7.8G.4 v0.2.7 precision corrections after browser-layout review. */

/* Diagnostic Path: structural SVG owns the complete desktop transition and
 * learning-return geometry so the routes cannot terminate between boxes. */
.emergo-diagnostic-map__structure {
  height: 100%;
  inset: 0;
  overflow: visible;
  pointer-events: none;
  position: absolute;
  width: 100%;
  z-index: 2;
}

.emergo-diagnostic-map__bridge-path {
  fill: none;
  stroke: var(--emergo-diagram-focus);
  stroke-linecap: square;
  stroke-linejoin: miter;
  stroke-width: 2.5;
}

.emergo-diagnostic-map__clay-arrowhead {
  fill: var(--emergo-diagram-focus);
}

.emergo-diagnostic-map__return-path {
  fill: none;
  stroke: var(--emergo-diagram-line);
  stroke-dasharray: 8 8;
  stroke-linecap: square;
  stroke-width: 1.8;
}

.emergo-diagnostic-map__return-arrowhead {
  fill: var(--emergo-diagram-line);
}

@media (min-width: 56.0625rem) {
  .emergo-diagram-bridge::before,
  .emergo-diagram-bridge::after,
  .emergo-diagram-return {
    display: none;
  }

  .emergo-diagram-bridge__label {
    top: 3.05rem;
    z-index: 3;
  }

  .emergo-diagram-return__label {
    margin-top: 1.35rem;
  }
}

/* Core Flow: the production geometry already restores the approved 3x2
 * organizational field. A slightly tighter label size prevents long German
 * model terms from being forced into arbitrary-looking syllable wraps. */
@media (min-width: 64.0625rem) {
  .emergo-core-flow__node {
    font-size: 0.875rem;
  }
}

/* Advisory Fields: make the Clay square the actual convergence point of all
 * three focus lines. Labels are positioned around the marker without moving
 * the marker away from the geometric centre. */
@media (min-width: 56.0625rem) {
  .emergo-advisory-map__focus-group {
    height: 1.35rem;
    top: 20rem;
    transform: translate(-50%, -50%);
  }

  .emergo-advisory-map__focus-label {
    bottom: 2.35rem;
    margin: 0;
    position: absolute;
    width: 100%;
  }

  .emergo-advisory-map__focus-note {
    margin: 0;
    position: absolute;
    top: 2.45rem;
    width: 13rem;
  }
}

/* Learning/Re-diagnosis: keep both outcomes as one semantic group. */
.emergo-learning-gate__outcomes {
  display: contents;
}

.emergo-learning-gate__outcome--return > div {
  display: grid;
  gap: 0.25rem;
  min-width: 0;
}

.emergo-learning-gate__outcome--return > div > strong,
.emergo-learning-gate__outcome--return > div > span {
  display: block;
}

@media (min-width: 56.0625rem) {
  .emergo-learning-gate__question {
    top: -5.2rem;
    width: 12.5rem;
  }
}

@media (max-width: 56rem) {
  .emergo-diagnostic-map__structure {
    display: none;
  }

  /* The mobile Advisory map keeps the triangle but aligns the marker with the
   * fan-line vertex instead of placing the label stack above that vertex. */
  .emergo-advisory-map__focus-group {
    height: 1.35rem;
    top: 17.75rem;
    transform: translate(-50%, -50%);
  }

  .emergo-advisory-map__focus-label {
    bottom: 2.15rem;
    margin: 0;
    position: absolute;
    width: 100%;
  }

  .emergo-advisory-map__focus-note {
    margin: 0;
    position: absolute;
    top: 2.25rem;
    width: 11rem;
  }

  /* Preserve two distinct choices after the evidence question instead of
   * rendering the outcomes as sequential blocks. */
  .emergo-learning-gate__outcomes {
    display: grid;
    gap: 0.65rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 3.5rem;
  }

  .emergo-learning-gate__outcome,
  .emergo-learning-gate__outcome--sufficient,
  .emergo-learning-gate__outcome--return {
    margin-top: 0;
    min-height: 7.2rem;
  }

  .emergo-learning-gate__outcome--return {
    display: flex;
    gap: 0.35rem;
    grid-template-columns: none;
  }

  .emergo-learning-gate__outcome--return .emergo-diagram__icon {
    height: 1.55rem;
    width: 1.55rem;
  }

  /* The stop/clarify route is a side branch. The solid route continues from
   * diagnostic focus toward the alternatives, so Stop cannot be read as the
   * mandatory next step. */
  .emergo-engagement-map__focus-group::after {
    border-left: 1.5px solid var(--emergo-diagram-line);
    content: "";
    height: 2.7rem;
    left: 50%;
    position: absolute;
    top: calc(100% + 0.2rem);
  }

  .emergo-engagement-map__stop {
    align-self: stretch;
    border-left: 0;
    height: 2.4rem;
    margin: 0;
    padding: 0;
    position: relative;
  }

  .emergo-engagement-map__stop::before {
    border-top: 1.5px dashed var(--emergo-diagram-line);
    content: "";
    left: 50%;
    position: absolute;
    top: 0.65rem;
    width: 2.6rem;
  }

  .emergo-engagement-map__stop span {
    left: calc(50% + 2.9rem);
    padding: 0;
    position: absolute;
    top: 0.18rem;
    white-space: nowrap;
  }

  .emergo-engagement-map__alternatives-label {
    margin-top: 0.15rem;
    position: relative;
  }

  .emergo-engagement-map__alternatives-label::before {
    border-left: 1.5px solid var(--emergo-diagram-line);
    bottom: calc(100% + 0.35rem);
    content: "";
    height: 1.9rem;
    left: 50%;
    position: absolute;
  }
}

@media (max-width: 23rem) {
  /* At a true 320 CSS-pixel viewport the two lower Advisory cards would be
   * too narrow for governed DE/EN terminology. Recompose the triangle into a
   * taller asymmetric relationship field rather than shrinking typography. */
  .emergo-advisory-map {
    height: 58rem;
  }

  .emergo-advisory-map__structure--mobile {
    height: 48rem;
  }

  .emergo-advisory-map__node--organization,
  .emergo-advisory-map__node--business {
    min-height: 9.8rem;
    width: 78%;
  }

  .emergo-advisory-map__node--organization {
    left: 0;
    top: 27rem;
  }

  .emergo-advisory-map__node--business {
    right: 0;
    top: 39rem;
  }

  .emergo-advisory-map__copy strong {
    font-size: 0.88rem;
  }

  .emergo-advisory-map__focus-group {
    top: 18.25rem;
  }

  .emergo-learning-gate__outcome strong {
    font-size: 0.8rem;
  }

  .emergo-learning-gate__outcome > span,
  .emergo-learning-gate__outcome div > span {
    font-size: 0.7rem;
  }

  .emergo-engagement-map__stop span {
    font-size: 0.68rem;
    white-space: normal;
    width: 7.2rem;
  }
}

/* 7.8G.4 v0.2.7 final geometry tuning. */
:root {
  --emergo-core-flow-width: 66rem;
}

.emergo-copy-narrow > .emergo-diagram--core-flow {
  width: min(var(--emergo-core-flow-width), calc(100vw - clamp(2.5rem, 6vw, 8rem)));
}

@media (min-width: 64.0625rem) {
  .emergo-core-flow {
    grid-template-columns: 12rem 0.75rem minmax(0, 1fr) 0.75rem 12rem;
  }

  .emergo-core-flow__zone--start,
  .emergo-core-flow__zone--outcome {
    padding: 0.75rem;
  }

  .emergo-core-flow__node {
    padding-inline: 0.65rem;
  }
}

@media (min-width: 56.0625rem) {
  .emergo-advisory-map__focus-group {
    top: 18.35rem;
  }

  .emergo-learning-gate__question {
    left: -4.75rem;
    top: -5.35rem;
    width: 11.5rem;
  }
}

@media (max-width: 56rem) {
  .emergo-advisory-map__focus-group {
    top: 18.15rem;
  }

  .emergo-engagement-map__stop::before {
    left: auto;
    right: 50%;
  }

  .emergo-engagement-map__stop span {
    left: auto;
    right: calc(50% + 2.9rem);
    text-align: right;
    white-space: normal;
    width: 9rem;
  }

  .emergo-learning-gate__outcomes {
    position: relative;
  }

  .emergo-learning-gate__outcomes::before {
    border-top: 1.5px solid var(--emergo-diagram-line);
    content: "";
    left: 25%;
    position: absolute;
    right: 25%;
    top: -1.3rem;
  }

  .emergo-learning-gate__outcomes::after {
    border-left: 1.5px solid var(--emergo-diagram-line);
    content: "";
    height: 2.2rem;
    left: 50%;
    position: absolute;
    top: -3.5rem;
  }

  .emergo-learning-gate__outcome::before {
    border-left: 1.5px solid var(--emergo-diagram-line);
    content: "";
    height: 1.3rem;
    left: 50%;
    position: absolute;
    top: -1.3rem;
  }
}

@media (max-width: 23rem) {
  /* Keep the approved triangular relationship at 320px. Compact nodes switch
   * their icon above the copy, preserving readable terminology without a
   * meaningless one-dimensional stack. */
  .emergo-advisory-map {
    height: 43rem;
  }

  .emergo-advisory-map__structure--mobile {
    height: 36rem;
  }

  .emergo-advisory-map__node--organization,
  .emergo-advisory-map__node--business {
    align-items: flex-start;
    flex-direction: column;
    min-height: 9.6rem;
    top: 24rem;
    width: 47%;
  }

  .emergo-advisory-map__node--organization { left: 0; }
  .emergo-advisory-map__node--business { right: 0; }

  .emergo-advisory-map__node--organization .emergo-diagram__icon,
  .emergo-advisory-map__node--business .emergo-diagram__icon {
    height: 1.4rem;
    width: 1.4rem;
  }

  .emergo-advisory-map__copy strong {
    font-size: 0.84rem;
  }

  .emergo-advisory-map__copy span {
    font-size: 0.76rem;
  }

  .emergo-advisory-map__focus-group {
    top: 18.15rem;
  }

  .emergo-engagement-map__stop span {
    font-size: 0.68rem;
    width: 8.6rem;
  }
}

/* Avoid pseudo-element collisions in the Core Flow: the open-right node
 * aperture already uses ::after, so vertical reading hints must not reuse it. */
@media (min-width: 64.0625rem) {
  .emergo-core-flow__node--m1::before,
  .emergo-core-flow__node--m2::after,
  .emergo-core-flow__node--m3::after {
    display: none;
  }
}

@media (max-width: 56rem) {
  .emergo-engagement-map__stop::before {
    left: 50%;
    right: auto;
    width: 1.7rem;
  }

  .emergo-engagement-map__stop span {
    left: calc(50% + 2rem);
    right: auto;
    text-align: left;
    width: min(7.5rem, calc(50% - 2.2rem));
  }
}

@media (max-width: 23rem) {
  .emergo-engagement-map__stop span {
    font-size: 0.68rem;
    width: min(6.6rem, calc(50% - 2.2rem));
  }
}

@media (min-width: 56.0625rem) and (max-width: 64rem) {
  .emergo-core-flow {
    grid-template-columns: 11rem 0.65rem minmax(0, 1fr) 0.65rem 11rem;
  }

  .emergo-core-flow__zone--start,
  .emergo-core-flow__zone--outcome {
    padding: 0.5rem;
  }

  .emergo-core-flow__node {
    font-size: 0.86rem;
    padding-inline: 0.6rem;
  }
}

@media (min-width: 56.0625rem) {
  .emergo-advisory-map__focus-group { top: 18rem; }
}

@media (max-width: 23rem) {
  .emergo-advisory-map__node--organization,
  .emergo-advisory-map__node--business {
    min-height: 10.2rem;
  }
}
@media (max-width: 23rem) {
  .emergo-advisory-map__node--organization .emergo-advisory-map__copy,
  .emergo-advisory-map__node--business .emergo-advisory-map__copy {
    max-width: 100%;
    width: 100%;
  }
}

@media (min-width: 56.0625rem) {
  .emergo-engagement-map__options {
    gap: 2rem 1rem;
  }

  .emergo-engagement-map__focus-label {
    transform: translateY(0.35rem);
  }
}
