/* Source: /entry-preview-v44.css */
/* Experimental, calmer entry for local review only. */

.hero.entry-preview {
  min-height: clamp(580px, 70vh, 680px);
  height: auto;
  max-height: none;
  padding: 142px 9vw 92px;
}

.hero.entry-preview .hero-content {
  width: min(760px, 64%);
}

.hero.entry-preview .eyebrow {
  display: flex;
  margin-bottom: 30px;
  color: #d4edc2;
  letter-spacing: 0.18em;
  font-size: 15px;
}

.hero.entry-preview .eyebrow span {
  width: 48px;
  height: 2px;
  background: #6bbd45;
  box-shadow: 0 0 18px rgba(107, 189, 69, 0.22);
}

.hero.entry-preview .eyebrow strong {
  font: inherit;
  font-weight: 700;
}

.site-header .brand-logo {
  width: clamp(255px, 18vw, 305px);
}

.hero.entry-preview h1 {
  max-width: 760px;
  margin-bottom: 27px;
  font-size: clamp(52px, 5.45vw, 78px);
  line-height: 1;
  color: #ffffff;
  text-shadow: 0 2px 24px rgba(0, 0, 0, 0.22);
}

.hero.entry-preview .lead {
  max-width: 760px;
  margin: 0;
  font-size: clamp(12px, 1.05vw, 14px);
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.86);
  font-weight: 600;
  letter-spacing: 0.045em;
  text-transform: none;
}

.hero.entry-preview .hero-actions {
  margin-top: 28px;
}

.hero.entry-preview .hero-actions .button.text {
  display: inline-flex;
}

.hero.entry-preview .hero-meta {
  display: none;
}

.hero.entry-preview::before {
  opacity: 0.54;
}

.hero.entry-preview .ambient-one {
  opacity: 0.68;
  transform: scale(0.9);
  transform-origin: center;
  border-color: rgba(107, 189, 69, 0.42);
  box-shadow:
    inset 0 0 145px rgba(107, 189, 69, 0.1),
    0 0 90px rgba(107, 189, 69, 0.08);
}

.hero.entry-preview .ambient-two {
  display: none;
}

.hero.entry-preview .button.primary {
  min-width: 0;
  padding: 10px 0 8px;
  color: #e0efda;
  background: transparent;
  border-bottom: 1px solid rgba(185, 221, 159, 0.48);
  box-shadow: none;
  gap: 24px;
}

.hero.entry-preview .button.primary:hover {
  color: #ffffff;
  border-bottom-color: #b9dd9f;
}

.hero.entry-preview .button.text {
  color: rgba(255, 255, 255, 0.86);
  border-bottom-color: rgba(255, 255, 255, 0.46);
}

html[data-theme="light"] .hero.entry-preview .button.primary {
  color: #315f20;
  border-bottom-color: rgba(49, 95, 32, 0.42);
}

html[data-theme="light"] .hero.entry-preview .button.primary:hover {
  color: #18330f;
  border-bottom-color: #315f20;
}

html[data-theme="light"] .hero.entry-preview h1 {
  color: #0c110d;
  text-shadow: none;
}

html[data-theme="light"] .hero.entry-preview {
  background:
    radial-gradient(circle at 80% 28%, rgba(107, 189, 69, 0.52), transparent 35%),
    radial-gradient(circle at 98% 88%, rgba(74, 132, 48, 0.32), transparent 36%),
    linear-gradient(135deg, #fbfaf6 0%, #e8f1e3 45%, #c2ddb8 100%);
}

html[data-theme="light"] .hero.entry-preview .ambient-one {
  border-color: rgba(74, 132, 48, 0.32);
  box-shadow:
    inset 0 0 150px rgba(107, 189, 69, 0.17),
    0 0 80px rgba(107, 189, 69, 0.08);
}

html[data-theme="light"] .hero.entry-preview .ambient-two {
  border-color: rgba(74, 132, 48, 0.26);
}

html[data-theme="light"] .hero.entry-preview .lead {
  color: #486044;
}

html[data-theme="light"] .hero.entry-preview .button.text {
  color: #303832;
  border-bottom-color: rgba(48, 56, 50, 0.36);
}

.hero.entry-preview .hero-actions .button,
.hero.entry-preview .hero-actions .button.primary,
.hero.entry-preview .hero-actions .button.text {
  width: 260px;
  min-width: 260px;
  padding: 11px 0 10px;
  justify-content: space-between;
  color: rgba(255, 255, 255, 0.88);
  background: transparent;
  border: 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.42);
  box-shadow: none;
  gap: 24px;
}

.hero.entry-preview .hero-actions .button span {
  color: #9ed182;
}

html[data-theme="light"] .hero.entry-preview .hero-actions .button,
html[data-theme="light"] .hero.entry-preview .hero-actions .button.primary,
html[data-theme="light"] .hero.entry-preview .hero-actions .button.text {
  color: #303832;
  border-bottom-color: rgba(48, 56, 50, 0.38);
}

html[data-theme="light"] .hero.entry-preview .hero-actions .button span {
  color: #3f772b;
}

.hero.entry-preview .hero-actions .button.text {
  display: none;
}

.hero.entry-preview .hero-actions .button.primary {
  width: 250px;
  min-width: 250px;
  padding: 15px 18px;
  color: #10170e;
  background: #6bbd45;
  border: 1px solid #6bbd45;
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.13);
}

.hero.entry-preview .hero-actions .button.primary span {
  color: #10170e;
}

html[data-theme="light"] .hero.entry-preview .hero-actions .button.primary {
  color: #ffffff;
  background: #3f772b;
  border-color: #3f772b;
  box-shadow: 0 14px 34px rgba(49, 95, 32, 0.14);
}

html[data-theme="light"] .hero.entry-preview .hero-actions .button.primary span {
  color: #ffffff;
}

html[data-theme="light"] .hero.entry-preview .eyebrow {
  color: #3f772b;
}

.proof-strip.entry-proof-source {
  display: none !important;
}

.outcomes .outcome-grid article::before {
  display: none;
}

.outcomes .outcome-grid article,
.outcomes .outcome-grid article + article {
  padding-top: 38px;
}

.entry-credibility {
  margin: 0;
}

.proof-strip.entry-orientation {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding: 0 8vw;
  background: linear-gradient(90deg, #121613 0%, #1a201b 50%, #141915 100%);
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  border-bottom: 1px solid rgba(107, 189, 69, 0.18);
}

.proof-strip.entry-orientation > div {
  min-height: 112px;
  padding: 25px 2.5vw 24px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 8px;
  color: rgba(255, 255, 255, 0.52);
  border-right: 1px solid rgba(255, 255, 255, 0.1);
  font-size: 9px;
  line-height: 1.5;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.proof-strip.entry-orientation > div:last-child {
  border-right: 0;
}

.proof-strip.entry-orientation strong {
  color: #eef2ed;
  font-family: var(--display-font, Georgia, serif);
  font-size: clamp(19px, 1.65vw, 24px);
  line-height: 1.15;
  letter-spacing: -0.015em;
  text-transform: none;
  font-weight: 400;
}

html[data-theme="light"] .proof-strip.entry-orientation {
  background:
    radial-gradient(circle at 85% 20%, rgba(107, 189, 69, 0.1), transparent 31%),
    linear-gradient(90deg, #fbfaf6 0%, #f0f4ed 52%, #e9f0e5 100%);
  border-color: rgba(74, 132, 48, 0.17);
}

html[data-theme="light"] .proof-strip.entry-orientation > div {
  color: #687068;
  border-color: rgba(74, 132, 48, 0.15);
}

html[data-theme="light"] .proof-strip.entry-orientation strong {
  color: #182019;
}

@media (min-width: 901px) {
  .site-header nav a:nth-child(n + 3) {
    display: none;
  }
}

@media (max-width: 900px) {
  .hero.entry-preview {
    min-height: 600px;
    padding: 128px 7vw 78px;
  }

  .hero.entry-preview .hero-content {
    width: min(100%, 720px);
  }

  .proof-strip.entry-orientation {
    padding: 0 7vw;
  }
}

@media (max-width: 600px) {
  .hero.entry-preview {
    min-height: 570px;
    padding: 112px 7vw 64px;
  }

  .hero.entry-preview .eyebrow {
    margin-bottom: 25px;
    font-size: 11px;
    letter-spacing: 0.15em;
  }

  .hero.entry-preview .eyebrow span {
    width: 30px;
  }

  .hero.entry-preview h1 {
    max-width: 560px;
    margin-bottom: 21px;
    font-size: clamp(42px, 11.7vw, 49px);
  }

  .hero.entry-preview .lead {
    max-width: 520px;
    font-size: 11px;
    line-height: 1.7;
    letter-spacing: 0.035em;
  }

  .hero.entry-preview .hero-actions {
    margin-top: 28px;
  }

  .hero.entry-preview .button.primary {
    min-width: 0;
  }

  .hero.entry-preview .hero-actions .button,
  .hero.entry-preview .hero-actions .button.primary,
  .hero.entry-preview .hero-actions .button.text {
    width: min(100%, 280px);
    min-width: 0;
  }

  .hero.entry-preview .ambient-one {
    right: -350px;
    opacity: 0.43;
    transform: scale(0.82);
  }

  .proof-strip.entry-orientation {
    grid-template-columns: 1fr;
    padding: 0 7vw;
  }

  .proof-strip.entry-orientation > div {
    min-height: 0;
    padding: 19px 0 18px;
    border-right: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
  }

  html[data-theme="light"] .proof-strip.entry-orientation > div {
    border-bottom-color: rgba(74, 132, 48, 0.15) !important;
  }

  .proof-strip.entry-orientation > div:last-child {
    border-bottom: 0 !important;
  }
}

/* Light mode: the statement section needs a firm, readable contrast.
   White remains reserved for the dark theme. */
html[data-theme="light"] #root .principle {
  color: #263a2b !important;
}

html[data-theme="light"] #root .principle > .kicker {
  color: #2f7130 !important;
}

html[data-theme="light"] #root .principle h2 {
  color: #17331e !important;
}

html[data-theme="light"] #root .principle > div > p {
  color: #354b3a !important;
}

/* Boutique coherence pass — local preview only. */
:root {
  --boutique-green: #4a8430;
  --boutique-bright: #6bbd45;
  --boutique-line: rgba(17, 19, 18, 0.14);
  --boutique-shadow: 0 24px 64px rgba(17, 19, 18, 0.075);
  --boutique-dark: #121613;
}

#root .section {
  padding-top: clamp(92px, 8vw, 124px);
  padding-bottom: clamp(92px, 8vw, 124px);
}

#root .section-head {
  row-gap: 22px;
  margin-bottom: clamp(48px, 5vw, 68px);
}

#root .section-head > div {
  width: min(100%, 980px);
}

#root .section-head h2,
#root .profile h2,
#root .contact h2 {
  letter-spacing: -0.045em;
  line-height: 1.01;
}

#root .section-head h2 + p {
  max-width: 700px;
  margin-top: 24px;
  line-height: 1.75;
}

#root .kicker,
#root .deep-dive-intro > span {
  letter-spacing: 0.17em;
}

#root .kicker::after,
#root .deep-dive-intro > span::after {
  width: 42px;
  height: 2px;
  margin-top: 18px;
}

/* Services: clearer 2x2 architecture instead of a dense four-column strip. */
#root .service-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border: 1px solid var(--line);
  box-shadow: var(--boutique-shadow);
}

#root .service-card,
#root .service-card:nth-child(2),
#root .service-card:nth-child(-n + 2),
#root .service-card:last-child {
  min-height: 390px;
  padding: 42px 40px 38px;
  border: 0;
  border-right: 0;
  border-bottom: 0;
}

#root .service-card:nth-child(odd) {
  border-right: 1px solid var(--line);
}

#root .service-card:nth-child(-n + 2) {
  border-bottom: 1px solid var(--line);
}

#root .service-card::after {
  display: none;
}

#root .service-card h3 {
  max-width: 470px;
  margin: 20px 0 17px;
  font-size: clamp(29px, 2.5vw, 38px);
  line-height: 1.06;
}

#root .service-card p {
  max-width: 570px;
  font-size: 13px;
  line-height: 1.72;
}

#root .service-card ul {
  max-width: 590px;
  margin-top: 26px;
  padding-top: 22px;
}

#root .service-card small {
  padding-top: 28px;
  letter-spacing: 0.12em;
}

/* Topic links and mandates use the same calm card rhythm. */
#root .deep-dive-links {
  margin-top: clamp(72px, 7vw, 104px);
  padding-top: 0;
}

#root .deep-dive-intro {
  padding: 46px 0 50px;
}

#root .deep-dive-intro strong {
  max-width: 820px;
}

#root .deep-dive-topic-grid {
  border: 1px solid var(--line);
  background: transparent;
  gap: 0;
  padding: 0;
  box-shadow: var(--boutique-shadow);
}

#root .deep-dive-topic-grid a {
  min-height: 150px;
  padding: 27px 26px 23px;
  border-right: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.5);
  font-size: clamp(20px, 1.7vw, 26px);
}

#root .deep-dive-topic-grid a:last-child {
  border-right: 0;
}

#root .deep-dive-topic-grid a::before,
#root .mandate-list article::before,
#root .project-experience-grid article::before {
  display: none;
}

#root .deep-dive-topic-grid b {
  color: var(--boutique-green);
  font-size: 16px;
}

#root .mandates {
  padding-top: 58px;
}

#root .mandate-list {
  border: 1px solid var(--line);
  background: transparent;
  gap: 0;
  padding: 0;
  box-shadow: var(--boutique-shadow);
}

#root .mandate-list article {
  min-height: 270px;
  padding: 40px 40px 38px;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

#root .mandate-list article:nth-child(2n) {
  border-right: 0;
}

#root .mandate-list article:nth-last-child(-n + 2) {
  border-bottom: 0;
}

#root .mandate-list h3 {
  font-size: clamp(27px, 2.35vw, 34px);
}

#root .mandate-list small {
  margin: 8px 0 30px;
}

/* Profile and proof sections: premium contrast without hard visual breaks. */
#root .profile {
  grid-template-columns: 42% 58%;
  background:
    radial-gradient(circle at 9% 18%, rgba(107, 189, 69, 0.11), transparent 30%),
    linear-gradient(135deg, #101411 0%, #171d18 56%, #1f2821 100%);
}

#root .profile-title,
#root .profile-content {
  padding-top: clamp(96px, 8vw, 124px);
  padding-bottom: clamp(96px, 8vw, 124px);
}

#root .profile-title {
  padding-left: 8vw;
  padding-right: clamp(42px, 5vw, 76px);
}

#root .profile-content {
  padding-right: 8vw;
  padding-left: clamp(42px, 6vw, 88px);
}

#root .profile-lead {
  max-width: 760px;
  margin: 38px 0 48px;
  font-size: clamp(20px, 1.8vw, 25px);
}

/* Haltung becomes the deliberate colour break between the calm content areas. */
#root .principle {
  color: #ffffff;
  background:
    radial-gradient(circle at 84% 24%, rgba(225, 246, 213, 0.18), transparent 31%),
    linear-gradient(112deg, #2f6928 0%, #438934 55%, #68b349 100%);
}

#root .principle > .kicker {
  color: #d7ebca;
}

#root .principle h2 {
  color: #ffffff;
}

#root .principle > div > p {
  color: rgba(255, 255, 255, 0.8);
}

#root .principle-mark {
  color: rgba(255, 255, 255, 0.08);
}

#root .profile blockquote {
  max-width: 760px;
  margin-bottom: 42px;
  padding: 18px 0 18px 24px;
}

#root .profile-photo {
  width: min(360px, 100%);
  margin-top: 50px;
}

/* Carry the green accent past the portrait and through its caption. */
#root .profile-photo::after {
  top: 16px;
  bottom: 0;
}

#root .evidence-grid {
  border: 1px solid rgba(74, 132, 48, 0.18);
  box-shadow: var(--boutique-shadow);
}

#root .evidence-grid article {
  min-height: 170px;
  padding: 34px 30px 30px;
}

/* Tools, sectors and approach share one restrained neutral system. */
#root .tooling,
#root .approach {
  background:
    radial-gradient(circle at 92% 12%, rgba(107, 189, 69, 0.075), transparent 27%),
    #edf0ea;
}

#root .tool-grid {
  border: 1px solid var(--line);
  background: transparent;
  gap: 0;
  padding: 0;
  box-shadow: var(--boutique-shadow);
}

#root .tool-card {
  min-height: 190px;
  padding: 30px;
  border-right: 1px solid var(--line);
}

#root .tool-card:last-child {
  border-right: 0;
}

#root .tool-card h3 {
  margin-top: 28px;
  font-size: 23px;
}

#root .sector-list article {
  grid-template-columns: minmax(240px, 28%) minmax(0, 1fr);
  gap: clamp(40px, 6vw, 92px);
  padding: 44px 0;
}

#root .sector-list h3 {
  font-size: clamp(28px, 2.35vw, 36px);
  line-height: 1.08;
}

#root .sector-list p {
  max-width: 760px;
  line-height: 1.72;
}

#root .steps {
  gap: clamp(26px, 4vw, 62px);
}

#root .steps article {
  padding-right: 0;
}

#root .steps h3 {
  font-size: clamp(23px, 2vw, 29px);
}

#root .steps p {
  max-width: 250px;
  line-height: 1.7;
}

/* Project experience retains depth, but cards no longer compete with accents. */
#root .project-experience {
  background:
    radial-gradient(circle at 88% 12%, rgba(107, 189, 69, 0.13), transparent 31%),
    radial-gradient(circle at 10% 92%, rgba(74, 132, 48, 0.07), transparent 26%),
    linear-gradient(135deg, #111512 0%, #192019 100%);
}

#root .project-experience-grid {
  box-shadow: 0 28px 72px rgba(0, 0, 0, 0.18);
}

#root .project-experience-grid article {
  min-height: 250px;
  padding: 38px 34px 34px;
}

#root .project-experience-grid span {
  margin: 4px 0 30px;
}

#root .project-experience-grid h3 {
  font-size: clamp(26px, 2.2vw, 34px);
}

/* Contact is the one deliberate full-colour statement. */
#root .contact {
  padding-top: clamp(92px, 8vw, 120px);
  padding-bottom: clamp(92px, 8vw, 120px);
  background:
    radial-gradient(circle at 82% 20%, rgba(255, 255, 255, 0.13), transparent 27%),
    linear-gradient(125deg, #315e20 0%, #447c2d 56%, #5aa63a 100%);
}

#root .contact-copy {
  padding-top: 34px;
}

#root .contact-link,
#root .light-button {
  transition: transform 180ms ease, border-color 180ms ease, background 180ms ease;
}

html[data-theme="light"] #root .profile {
  color: var(--ink);
  background:
    radial-gradient(circle at 8% 18%, rgba(107, 189, 69, 0.19), transparent 31%),
    linear-gradient(135deg, #e5eee0 0%, #eff3eb 54%, #dbe8d5 100%);
}

html[data-theme="light"] #root .profile-content {
  border-color: rgba(49, 94, 32, 0.2);
}

html[data-theme="light"] #root .profile .kicker.light {
  color: #3f772b;
}

html[data-theme="light"] #root .profile .monogram {
  color: rgba(93, 101, 96, 0.15);
  display: block;
}

@media (min-width: 901px) {
  html[data-theme="light"] #root .profile .monogram {
    display: none;
  }

  html[data-theme="light"] #root .profile-photo::before {
    content: "CB";
    position: absolute;
    top: calc(100% + 54px);
    left: -3.5vw;
    color: rgba(93, 101, 96, 0.13);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(210px, 22vw, 330px);
    line-height: 0.78;
    letter-spacing: -0.12em;
    white-space: nowrap;
    pointer-events: none;
  }
}

html[data-theme="light"] #root .profile h2,
html[data-theme="light"] #root .profile-photo strong {
  color: #171a18;
}

html[data-theme="light"] #root .profile-lead {
  color: #424b43;
}

html[data-theme="light"] #root .profile blockquote {
  color: #315e20;
  background: rgba(107, 189, 69, 0.12);
  border-left-color: #4a8430;
  font-weight: 500;
}

html[data-theme="light"] #root .profile-facts,
html[data-theme="light"] #root .strengths {
  border-color: rgba(23, 26, 24, 0.16);
}

html[data-theme="light"] #root .profile-facts p,
html[data-theme="light"] #root .strengths p {
  color: #4f5950;
}

html[data-theme="light"] #root .profile-facts p,
html[data-theme="light"] #root .strengths div {
  border-color: rgba(23, 26, 24, 0.13);
}

html[data-theme="light"] #root .certifications small,
html[data-theme="light"] #root .profile-photo span {
  color: #667168;
}

html[data-theme="light"] #root .certifications span {
  color: #315e20;
  background: rgba(255, 255, 255, 0.48);
  border-color: rgba(74, 132, 48, 0.30);
}

html[data-theme="light"] body {
  background: #edf0eb;
}

html[data-theme="light"] #root .section,
html[data-theme="light"] #root .services,
html[data-theme="light"] #root .mandates,
html[data-theme="light"] #root .experience {
  background:
    radial-gradient(circle at 92% 8%, rgba(107, 189, 69, 0.09), transparent 27%),
    #f1f3ee;
}

html[data-theme="light"] #root .tooling,
html[data-theme="light"] #root .approach {
  background:
    radial-gradient(circle at 91% 12%, rgba(107, 189, 69, 0.14), transparent 28%),
    #e2e9df;
}

html[data-theme="light"] #root .section-head p:not(.kicker),
html[data-theme="light"] #root .service-card p,
html[data-theme="light"] #root .service-card li,
html[data-theme="light"] #root .mandate-list p,
html[data-theme="light"] #root .deep-dive-intro p,
html[data-theme="light"] #root .tool-card p,
html[data-theme="light"] #root .tooling-note,
html[data-theme="light"] #root .sector-list p,
html[data-theme="light"] #root .steps p {
  color: #4c564f;
}

html[data-theme="light"] #root .service-grid,
html[data-theme="light"] #root .deep-dive-topic-grid,
html[data-theme="light"] #root .mandate-list,
html[data-theme="light"] #root .tool-grid {
  border-color: rgba(49, 94, 32, 0.22);
  box-shadow: 0 24px 60px rgba(35, 51, 38, 0.11);
}

html[data-theme="light"] #root .deep-dive-topic-grid a,
html[data-theme="light"] #root .mandate-list article,
html[data-theme="light"] #root .tool-card,
html[data-theme="light"] #root .service-card {
  background: rgba(255, 255, 252, 0.94);
  border-color: rgba(49, 94, 32, 0.19);
}

html[data-theme="light"] #root .project-experience {
  color: var(--ink);
  background:
    radial-gradient(circle at 88% 12%, rgba(107, 189, 69, 0.13), transparent 31%),
    radial-gradient(circle at 10% 92%, rgba(74, 132, 48, 0.06), transparent 26%),
    linear-gradient(135deg, #edf3e9 0%, #f8f7f2 100%);
}

html[data-theme="light"] #root .project-experience-grid {
  box-shadow: var(--boutique-shadow);
}

@media (hover: hover) {
  #root .service-card:hover,
  #root .mandate-list article:hover,
  #root .tool-card:hover,
  #root .deep-dive-topic-grid a:hover {
    transform: translateY(-2px);
    box-shadow: 0 18px 42px rgba(17, 19, 18, 0.085);
  }
}

@media (max-width: 900px) {
  #root .service-card,
  #root .service-card:nth-child(2),
  #root .service-card:nth-child(-n + 2),
  #root .service-card:last-child {
    min-height: 350px;
    padding: 34px 31px 32px;
  }

  #root .profile {
    grid-template-columns: 1fr;
  }

  #root .profile-title {
    padding: 88px 7vw 54px;
  }

  #root .profile-content {
    padding: 0 7vw 88px;
    border-left: 0;
  }

  #root .tool-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #root .tool-card {
    border-right: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
  }

  #root .tool-card:nth-child(2n) {
    border-right: 0;
  }
}

@media (max-width: 600px) {
  #root .section {
    padding-top: 78px;
    padding-bottom: 78px;
  }

  #root .service-icon {
    display: none;
  }

  #root .section-head {
    margin-bottom: 42px;
  }

  #root .kicker::after,
  #root .deep-dive-intro > span::after {
    width: 36px;
    margin-top: 15px;
  }

  #root .service-grid,
  #root .mandate-list,
  #root .deep-dive-topic-grid {
    grid-template-columns: 1fr;
  }

  #root .tool-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #root .service-card,
  #root .service-card:nth-child(odd),
  #root .service-card:nth-child(2),
  #root .service-card:nth-child(-n + 2),
  #root .service-card:last-child {
    min-height: 0;
    padding: 32px 26px 30px;
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }

  #root .service-card:last-child {
    border-bottom: 0;
  }

  #root .service-card h3 {
    font-size: 29px;
  }

  #root .deep-dive-intro {
    padding: 38px 0 40px;
  }

  #root .deep-dive-topic-grid a,
  #root .deep-dive-topic-grid a:last-child {
    min-height: 100px;
    padding: 20px 20px 17px;
    border-right: 0;
    border-bottom: 1px solid var(--line);
    font-size: 19px;
    line-height: 1.15;
  }

  #root .deep-dive-topic-grid b {
    width: 16px;
    min-width: 16px;
    height: 16px;
    color: transparent;
    font-size: 0;
    line-height: 0;
  }

  #root .deep-dive-topic-grid a:last-child {
    border-bottom: 0;
  }

  #root .mandate-list article,
  #root .mandate-list article:nth-child(2n),
  #root .mandate-list article:nth-last-child(-n + 2) {
    min-height: 0;
    padding: 32px 26px 30px;
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }

  #root .mandate-list article:last-child {
    border-bottom: 0;
  }

  #root .profile-title {
    padding: 78px 7vw 44px;
  }

  #root .profile-content {
    padding: 0 7vw 78px;
  }

  #root .profile-photo {
    margin-top: 38px;
  }

  #root .evidence-grid {
    grid-template-columns: 1fr;
    gap: 0;
  }

  #root .evidence-grid article,
  #root .evidence-grid article:nth-child(2),
  #root .evidence-grid article:nth-child(-n + 2),
  #root .evidence-grid article:last-child {
    border-right: 0;
    border-bottom: 1px solid rgba(49, 94, 32, 0.2);
  }

  #root .evidence-grid article:last-child {
    border-bottom: 0;
  }

  #root .tool-card,
  #root .tool-card:nth-child(2n) {
    min-height: 126px;
    padding: 17px 14px 15px;
    border-right: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
  }

  #root .tool-card:nth-child(2n) {
    border-right: 0;
  }

  #root .tool-card:nth-last-child(-n + 2) {
    border-bottom: 0;
  }

  #root .tool-mark {
    width: 38px;
    height: 38px;
  }

  #root .tool-mark > span {
    font-size: 13px;
  }

  #root .tool-mark-2 > span,
  #root .tool-mark-4 > span,
  #root .tool-mark-7 > span {
    font-size: 18px;
  }

  #root .tool-mark-3 > span,
  #root .tool-mark-6 > span {
    font-size: 10px;
  }

  #root .tool-mark-5 > span {
    font-size: 7px;
  }

  #root .tool-card h3 {
    margin: 16px 0 5px;
    font-size: 17px;
    line-height: 1.12;
  }

  #root .tool-card:last-child h3 {
    font-size: 0;
  }

  #root .tool-card:last-child h3::after {
    display: block;
    font-size: 17px;
    line-height: 1.12;
  }

  html[lang="de"] #root .tool-card:last-child h3::after {
    content: "Agile Projektleitung";
  }

  html[lang="en"] #root .tool-card:last-child h3::after {
    content: "Agile Project Delivery";
  }

  #root .tool-card p {
    font-size: 7px;
    line-height: 1.35;
    letter-spacing: 0.065em;
  }

  #root .sector-list article {
    grid-template-columns: 1fr;
    gap: 18px;
    padding: 35px 0;
  }

  #root .steps {
    gap: 38px;
  }

  #root .steps::before,
  #root .step-dot {
    display: none;
  }

  #root .contact-copy {
    padding-top: 28px;
  }
}

/* Softer dark mode: layered charcoal-green surfaces instead of black/white jumps. */
html[data-theme="dark"] body {
  color: #e4e8e1;
  background: #242c26;
}

html[data-theme="dark"] .site-header {
  background: linear-gradient(180deg, rgba(28, 35, 30, 0.94), rgba(28, 35, 30, 0.76));
  border-bottom-color: rgba(229, 236, 227, 0.09);
}

html[data-theme="dark"] .hero.entry-preview {
  background:
    radial-gradient(circle at 80% 28%, rgba(111, 164, 82, 0.22), transparent 34%),
    radial-gradient(circle at 98% 90%, rgba(85, 124, 67, 0.14), transparent 36%),
    linear-gradient(135deg, #1c241f 0%, #242d27 52%, #303a32 100%);
}

@media (min-width: 901px) {
  html[data-theme="dark"] .hero.entry-preview {
    min-height: clamp(690px, 78vh, 800px);
    padding-top: 158px;
    padding-bottom: 132px;
  }
}

html[data-theme="dark"] .hero.entry-preview h1 {
  color: #f0f2ed;
  text-shadow: 0 2px 22px rgba(12, 16, 13, 0.16);
}

html[data-theme="dark"] .hero.entry-preview .lead {
  color: #bdc7bc;
}

html[data-theme="dark"] .hero.entry-preview .eyebrow {
  color: #b7d3a6;
}

html[data-theme="dark"] .hero.entry-preview .hero-actions .button.primary {
  color: #182019;
  background: #78ad5d;
  border-color: #78ad5d;
  box-shadow: 0 14px 34px rgba(12, 16, 13, 0.16);
}

/* Header navigation: visually attached to the wordmark and readable in both themes. */
@media (min-width: 901px) {
  .site-header {
    justify-content: flex-start;
  }

  .site-header nav {
    margin-left: clamp(34px, 4vw, 68px);
    gap: clamp(26px, 2.2vw, 38px);
  }

  .site-header nav a {
    color: rgba(236, 241, 235, 0.9);
    font-weight: 600;
    opacity: 1;
  }

  .site-header .header-actions {
    margin-left: auto;
  }

  html[data-theme="light"] .site-header nav a {
    color: rgba(23, 26, 24, 0.9);
  }

  html[data-theme="light"] .site-header nav a:hover,
  html[data-theme="light"] .site-header nav a:focus-visible {
    color: #315f20;
  }
}

html[data-theme="dark"] .hero.entry-preview .hero-actions .button.primary span {
  color: #182019;
}

html[data-theme="dark"] #root .section,
html[data-theme="dark"] #root .services,
html[data-theme="dark"] #root .mandates,
html[data-theme="dark"] #root .experience {
  color: #edf0ea;
  background:
    radial-gradient(circle at 92% 8%, rgba(111, 164, 82, 0.085), transparent 27%),
    #202923;
}

html[data-theme="dark"] #root .section-head h2,
html[data-theme="dark"] #root .service-card h3,
html[data-theme="dark"] #root .mandate-list h3,
html[data-theme="dark"] #root .sector-list h3,
html[data-theme="dark"] #root .steps h3,
html[data-theme="dark"] #root .deep-dive-intro strong,
html[data-theme="dark"] #root .deep-dive-topic-grid a,
html[data-theme="dark"] #root .tool-card h3 {
  color: #e9ece6;
}

html[data-theme="dark"] #root .section-head p:not(.kicker),
html[data-theme="dark"] #root .service-card p,
html[data-theme="dark"] #root .service-card li,
html[data-theme="dark"] #root .mandate-list p,
html[data-theme="dark"] #root .deep-dive-intro p,
html[data-theme="dark"] #root .tool-card p,
html[data-theme="dark"] #root .tooling-note,
html[data-theme="dark"] #root .sector-list p,
html[data-theme="dark"] #root .steps p {
  color: #c3cdc4;
}

html[data-theme="dark"] #root .kicker,
html[data-theme="dark"] #root .eyebrow,
html[data-theme="dark"] #root .profile-facts small,
html[data-theme="dark"] #root .certifications-label,
html[data-theme="dark"] #root .tool-card small {
  color: #a9cb96;
}

html[data-theme="dark"] #root .service-grid,
html[data-theme="dark"] #root .deep-dive-topic-grid,
html[data-theme="dark"] #root .mandate-list,
html[data-theme="dark"] #root .tool-grid {
  border-color: rgba(226, 233, 224, 0.17);
  box-shadow: 0 24px 64px rgba(8, 12, 9, 0.24);
}

html[data-theme="dark"] #root .service-card,
html[data-theme="dark"] #root .deep-dive-topic-grid a,
html[data-theme="dark"] #root .mandate-list article,
html[data-theme="dark"] #root .tool-card {
  background: #303c33;
  border-color: rgba(226, 233, 224, 0.15);
}

html[data-theme="dark"] #root .service-card ul,
html[data-theme="dark"] #root .sector-list,
html[data-theme="dark"] #root .sector-list article {
  border-color: rgba(226, 233, 224, 0.11);
}

html[data-theme="dark"] #root .service-icon,
html[data-theme="dark"] #root .service-card small,
html[data-theme="dark"] #root .mandate-list small,
html[data-theme="dark"] #root .sector-list small,
html[data-theme="dark"] #root .sector-list .arrow,
html[data-theme="dark"] #root .deep-dive-topic-grid b {
  color: #91bd78;
}

html[data-theme="dark"] #root .outcomes {
  color: #e9ece6;
  background: #2b342d;
}

html[data-theme="dark"] #root .outcomes p {
  color: #bdc6bc;
}

html[data-theme="dark"] #root .outcome-grid article {
  border-color: rgba(226, 233, 224, 0.1);
}

html[data-theme="dark"] #root .principle {
  color: #e7ebe4;
  background:
    radial-gradient(circle at 85% 28%, rgba(171, 211, 149, 0.12), transparent 32%),
    linear-gradient(112deg, #263f29 0%, #345a31 56%, #4b763d 100%);
}

html[data-theme="dark"] #root .principle > div > p {
  color: rgba(239, 244, 236, 0.78);
}

html[data-theme="dark"] #root .principle-mark {
  color: rgba(239, 244, 236, 0.07);
}

html[data-theme="dark"] #root .profile {
  background:
    radial-gradient(circle at 10% 16%, rgba(111, 164, 82, 0.14), transparent 31%),
    linear-gradient(135deg, #203526 0%, #294730 100%);
}

html[data-theme="dark"] #root .profile .monogram {
  color: rgba(218, 226, 215, 0.06);
}

html[data-theme="dark"] #root .profile-content,
html[data-theme="dark"] #root .profile-facts,
html[data-theme="dark"] #root .profile-facts p,
html[data-theme="dark"] #root .strengths,
html[data-theme="dark"] #root .strengths div {
  border-color: rgba(226, 233, 224, 0.11);
}

html[data-theme="dark"] #root .profile-lead,
html[data-theme="dark"] #root .profile-facts p,
html[data-theme="dark"] #root .strengths p {
  color: #c0c8bf;
}

html[data-theme="dark"] #root .profile blockquote {
  color: #c5dcb8;
  background: rgba(120, 173, 93, 0.055);
  border-left-color: #78ad5d;
}

html[data-theme="dark"] #root .certifications span {
  color: #c2d9b5;
  background: rgba(255, 255, 255, 0.025);
  border-color: rgba(145, 189, 120, 0.24);
}

html[data-theme="dark"] #root .tooling,
html[data-theme="dark"] #root .approach {
  color: #edf0ea;
  background:
    radial-gradient(circle at 90% 12%, rgba(111, 164, 82, 0.1), transparent 28%),
    #26342b;
}

html[data-theme="dark"] #root .tool-mark {
  color: #9bc486;
  background: #344037;
  border-color: rgba(165, 198, 146, 0.2);
}

html[data-theme="dark"] #root .evidence-grid {
  color: #e8ebe5;
  background: #2d3b31;
}

html[data-theme="dark"] #root .evidence-grid article {
  border-color: rgba(226, 233, 224, 0.1);
}

html[data-theme="dark"] #root .evidence-grid strong {
  color: #c0d9b2;
}

html[data-theme="dark"] #root .evidence-grid p {
  color: #bbc4ba;
}

html[data-theme="dark"] #root .proof-strip.entry-orientation {
  background: linear-gradient(90deg, #29322b 0%, #303a32 52%, #2a342c 100%);
  border-color: rgba(145, 189, 120, 0.16);
}

html[data-theme="dark"] #root .proof-strip.entry-orientation > div {
  color: #9fa99f;
  border-color: rgba(226, 233, 224, 0.1);
}

html[data-theme="dark"] #root .proof-strip.entry-orientation strong {
  color: #e5e9e2;
}

html[data-theme="dark"] #root .contact {
  background:
    radial-gradient(circle at 82% 20%, rgba(229, 238, 224, 0.08), transparent 28%),
    linear-gradient(125deg, #34512d 0%, #3f6235 58%, #4b743e 100%);
}

html[data-theme="dark"] footer {
  color: #919b92;
  background: #1d241f;
}

/* Stronger section rhythm: distinct surfaces without losing the restrained boutique palette. */
html[data-theme="light"] body {
  background: #e8ede7;
}

html[data-theme="light"] #root .services {
  background:
    radial-gradient(circle at 88% 4%, rgba(88, 153, 55, 0.16), transparent 30%),
    linear-gradient(135deg, #f6f7f2 0%, #edf3e9 100%);
  border-top: 1px solid rgba(49, 94, 32, 0.18);
}

html[data-theme="light"] #root .outcomes {
  color: #172019;
  background:
    radial-gradient(circle at 86% 8%, rgba(74, 132, 48, 0.18), transparent 32%),
    linear-gradient(120deg, #d2e1cc 0%, #e5ede1 100%);
  border-top: 1px solid rgba(49, 94, 32, 0.22);
}

html[data-theme="light"] #root .outcomes p {
  color: #445047;
}

html[data-theme="light"] #root .outcome-grid,
html[data-theme="light"] #root .outcome-grid article {
  border-color: rgba(49, 94, 32, 0.23);
}

html[data-theme="light"] #root .principle {
  color: #142016;
  background:
    radial-gradient(circle at 84% 24%, rgba(255, 255, 255, 0.26), transparent 30%),
    linear-gradient(112deg, #c1dab6 0%, #add09e 56%, #96c184 100%);
  border-top: 1px solid rgba(49, 94, 32, 0.24);
}

html[data-theme="light"] #root .principle > div > p {
  color: #38483b;
}

html[data-theme="light"] #root .profile {
  background:
    radial-gradient(circle at 8% 18%, rgba(84, 151, 51, 0.27), transparent 32%),
    linear-gradient(135deg, #dbe8d5 0%, #edf2e9 51%, #cbdcc4 100%);
  border-top: 1px solid rgba(49, 94, 32, 0.25);
}

html[data-theme="light"] #root .tooling {
  background:
    radial-gradient(circle at 90% 8%, rgba(88, 153, 55, 0.20), transparent 30%),
    linear-gradient(135deg, #d4e1d0 0%, #e4ebe0 100%);
  border-top: 1px solid rgba(49, 94, 32, 0.22);
}

html[data-theme="light"] #root .project-experience,
html[data-theme="light"] #root .experience {
  background:
    radial-gradient(circle at 88% 12%, rgba(88, 153, 55, 0.15), transparent 31%),
    linear-gradient(135deg, #f4f5f0 0%, #e9efe5 100%);
  border-top: 1px solid rgba(49, 94, 32, 0.18);
}

html[data-theme="light"] #root .approach {
  background:
    radial-gradient(circle at 10% 88%, rgba(74, 132, 48, 0.12), transparent 29%),
    linear-gradient(135deg, #d8e4d4 0%, #e8eee4 100%);
  border-top: 1px solid rgba(49, 94, 32, 0.22);
}

html[data-theme="light"] #root .service-card,
html[data-theme="light"] #root .tool-card,
html[data-theme="light"] #root .mandate-list article,
html[data-theme="light"] #root .deep-dive-topic-grid a,
html[data-theme="light"] #root .project-experience-grid article {
  background: rgba(255, 255, 252, 0.96);
  border-color: rgba(49, 94, 32, 0.22);
}

html[data-theme="dark"] body {
  background: #111813;
}

html[data-theme="dark"] #root .services {
  background:
    radial-gradient(circle at 88% 5%, rgba(111, 180, 76, 0.17), transparent 31%),
    linear-gradient(135deg, #18251c 0%, #203026 100%);
  border-top: 1px solid rgba(145, 189, 120, 0.20);
}

html[data-theme="dark"] #root .outcomes {
  color: #edf2ea;
  background:
    radial-gradient(circle at 85% 9%, rgba(129, 192, 94, 0.18), transparent 32%),
    linear-gradient(120deg, #253a29 0%, #304b32 100%);
  border-top: 1px solid rgba(145, 189, 120, 0.23);
}

html[data-theme="dark"] #root .outcomes p {
  color: #c8d2c8;
}

html[data-theme="dark"] #root .outcome-grid,
html[data-theme="dark"] #root .outcome-grid article {
  border-color: rgba(226, 233, 224, 0.17);
}

html[data-theme="dark"] #root .principle {
  color: #f0f4ed;
  background:
    radial-gradient(circle at 84% 26%, rgba(194, 226, 176, 0.16), transparent 31%),
    linear-gradient(112deg, #2b5230 0%, #3d6b38 56%, #568448 100%);
  border-top: 1px solid rgba(176, 216, 154, 0.23);
}

html[data-theme="dark"] #root .principle > div > p {
  color: #d9e3d7;
}

html[data-theme="dark"] #root .profile {
  background:
    radial-gradient(circle at 10% 16%, rgba(124, 191, 86, 0.22), transparent 32%),
    linear-gradient(135deg, #1b3522 0%, #294b2f 52%, #335b37 100%);
  border-top: 1px solid rgba(145, 189, 120, 0.22);
}

html[data-theme="dark"] #root .tooling {
  background:
    radial-gradient(circle at 90% 9%, rgba(121, 183, 86, 0.17), transparent 30%),
    linear-gradient(135deg, #223228 0%, #2a3f30 100%);
  border-top: 1px solid rgba(145, 189, 120, 0.20);
}

html[data-theme="dark"] #root .project-experience,
html[data-theme="dark"] #root .experience {
  background:
    radial-gradient(circle at 88% 12%, rgba(111, 174, 78, 0.14), transparent 31%),
    linear-gradient(135deg, #17231c 0%, #213128 100%);
  border-top: 1px solid rgba(145, 189, 120, 0.18);
}

html[data-theme="dark"] #root .approach {
  background:
    radial-gradient(circle at 10% 88%, rgba(121, 183, 86, 0.14), transparent 30%),
    linear-gradient(135deg, #263a2c 0%, #304835 100%);
  border-top: 1px solid rgba(145, 189, 120, 0.21);
}

html[data-theme="dark"] #root .service-card,
html[data-theme="dark"] #root .tool-card,
html[data-theme="dark"] #root .mandate-list article,
html[data-theme="dark"] #root .deep-dive-topic-grid a,
html[data-theme="dark"] #root .project-experience-grid article {
  background: #304237;
  border-color: rgba(197, 221, 184, 0.18);
}

/* Ultrawide screens: keep the 16:9 composition, but use extra width to reduce scroll depth. */
@media (min-width: 1900px) and (min-aspect-ratio: 19/9) {
  #root .section,
  #root .outcomes,
  #root .principle,
  #root .contact {
    padding-top: 90px;
    padding-bottom: 90px;
    padding-left: max(6vw, calc((100vw - 1500px) / 2));
    padding-right: max(6vw, calc((100vw - 1500px) / 2));
  }

  #root .section-head {
    grid-template-columns: 22% 1fr;
    margin-bottom: 48px;
  }

  #root .service-card {
    min-height: 430px;
  }

  #root .deep-dive-links {
    margin-top: 52px;
  }

  #root .mandate-list {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  #root .mandate-list article {
    min-height: 255px;
    padding: 31px 30px 33px;
  }

  #root .mandate-list article::before {
    left: 30px;
  }

  #root .mandate-list small {
    margin-bottom: 34px;
  }

  #root .tool-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  #root .tool-card {
    min-height: 190px;
    padding: 24px 22px;
  }

  #root .tool-card h3 {
    margin-top: 26px;
    font-size: 20px;
  }

  #root .project-experience-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  #root .project-experience-grid article,
  #root .project-experience-grid article:nth-child(3n),
  #root .project-experience-grid article:nth-last-child(-n + 3) {
    border-right: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
  }

  #root .project-experience-grid article:nth-child(4n),
  #root .project-experience-grid article:last-child {
    border-right: 0;
  }

  #root .project-experience-grid article:nth-child(n + 5) {
    border-bottom: 0;
  }

  #root .sector-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #root .sector-list article {
    grid-template-columns: 28% 1fr 28px;
    min-height: 235px;
    padding: 34px 34px 34px 0;
  }

  #root .sector-list article:nth-child(odd) {
    border-right: 1px solid var(--line);
  }

  #root .sector-list article:nth-child(even) {
    padding-left: 34px;
  }
}

/* v44 — single source of truth for the final profile and dark theme.
   This layer deliberately sits last so legacy theme rules cannot win. */
html[data-theme="light"] #root .profile-content .profile-facts,
html[data-theme="light"] #root .profile-content .profile-facts *,
html[data-theme="light"] #root .profile-content .strengths,
html[data-theme="light"] #root .profile-content .strengths * {
  color: #414c44 !important;
  -webkit-text-fill-color: #414c44 !important;
  opacity: 1 !important;
}

html[data-theme="light"] #root .profile-content .profile-facts p,
html[data-theme="light"] #root .profile-content .strengths div {
  border-color: rgba(38, 50, 42, 0.18) !important;
}

html[data-theme="light"] #root .profile-content blockquote,
html[data-theme="light"] #root .profile-content blockquote * {
  color: #2c6724 !important;
  -webkit-text-fill-color: #2c6724 !important;
  opacity: 1 !important;
}

html[data-theme="light"] #root .profile-content .certifications small,
html[data-theme="light"] #root .profile-content .certifications small * {
  color: #4e5c53 !important;
  -webkit-text-fill-color: #4e5c53 !important;
  opacity: 1 !important;
}

html[data-theme="light"] #root .profile-content .certifications span,
html[data-theme="light"] #root .profile-content .certifications span * {
  color: #2c6724 !important;
  -webkit-text-fill-color: #2c6724 !important;
  opacity: 1 !important;
}

@media (min-width: 901px) {
  html[data-theme="light"] #root .profile-title::after,
  html[data-theme="light"] #root .profile-photo::before {
    content: none !important;
    display: none !important;
  }

  html[data-theme="light"] #root .profile .monogram {
    display: block !important;
    z-index: 1 !important;
    left: max(8vw, calc((100% - 1400px) / 2)) !important;
    bottom: -45px !important;
    color: rgba(79, 87, 82, 0.18) !important;
    -webkit-text-fill-color: rgba(79, 87, 82, 0.18) !important;
    font-size: clamp(230px, 18vw, 340px) !important;
    line-height: 0.72 !important;
    opacity: 1 !important;
    pointer-events: none !important;
  }

  html[data-theme="light"] #root .profile-title,
  html[data-theme="light"] #root .profile-content {
    position: relative !important;
    z-index: 2 !important;
  }
}

/* Deep green-grey dark mode with readable, restrained contrast. */
html[data-theme="dark"] body,
html[data-theme="dark"] #root {
  background: #0c110e !important;
  color: #e7ece6 !important;
}

html[data-theme="dark"] #root .site-header {
  background: rgba(10, 15, 12, 0.94) !important;
  border-color: rgba(211, 225, 207, 0.13) !important;
}

html[data-theme="dark"] #root .hero.entry-preview {
  background:
    radial-gradient(circle at 84% 42%, rgba(91, 145, 78, 0.31), transparent 35%),
    linear-gradient(115deg, #090e0b 0%, #111914 52%, #1e2d23 100%) !important;
}

html[data-theme="dark"] #root .services,
html[data-theme="dark"] #root .mandates {
  background:
    radial-gradient(circle at 88% 7%, rgba(91, 139, 79, 0.12), transparent 32%),
    linear-gradient(135deg, #101713 0%, #17211a 100%) !important;
}

html[data-theme="dark"] #root .outcomes {
  background: linear-gradient(125deg, #17221b 0%, #223229 100%) !important;
}

html[data-theme="dark"] #root .principle {
  background:
    radial-gradient(circle at 84% 28%, rgba(164, 203, 146, 0.12), transparent 31%),
    linear-gradient(112deg, #1b3020 0%, #28472b 56%, #355d32 100%) !important;
}

html[data-theme="dark"] #root .profile {
  background:
    radial-gradient(circle at 9% 17%, rgba(103, 158, 89, 0.17), transparent 32%),
    linear-gradient(135deg, #111a15 0%, #19271e 52%, #223529 100%) !important;
}

html[data-theme="dark"] #root .tooling,
html[data-theme="dark"] #root .approach {
  background:
    radial-gradient(circle at 88% 8%, rgba(91, 139, 79, 0.11), transparent 31%),
    linear-gradient(135deg, #131b16 0%, #1c2820 100%) !important;
}

html[data-theme="dark"] #root .experience,
html[data-theme="dark"] #root .project-experience {
  background:
    radial-gradient(circle at 88% 12%, rgba(85, 132, 74, 0.10), transparent 31%),
    linear-gradient(135deg, #0f1612 0%, #17211a 100%) !important;
}

html[data-theme="dark"] #root .service-card,
html[data-theme="dark"] #root .tool-card,
html[data-theme="dark"] #root .mandate-list article,
html[data-theme="dark"] #root .deep-dive-topic-grid a,
html[data-theme="dark"] #root .project-experience-grid article {
  background: #202a23 !important;
  border-color: rgba(211, 225, 207, 0.14) !important;
}

html[data-theme="dark"] #root .section-head h2,
html[data-theme="dark"] #root .service-card h3,
html[data-theme="dark"] #root .mandate-list h3,
html[data-theme="dark"] #root .sector-list h3,
html[data-theme="dark"] #root .steps h3,
html[data-theme="dark"] #root .deep-dive-intro strong,
html[data-theme="dark"] #root .deep-dive-topic-grid a,
html[data-theme="dark"] #root .tool-card h3 {
  color: #edf2eb !important;
  -webkit-text-fill-color: #edf2eb !important;
}

html[data-theme="dark"] #root .section-head p:not(.kicker),
html[data-theme="dark"] #root .service-card p,
html[data-theme="dark"] #root .service-card li,
html[data-theme="dark"] #root .mandate-list p,
html[data-theme="dark"] #root .deep-dive-intro p,
html[data-theme="dark"] #root .tool-card p,
html[data-theme="dark"] #root .tooling-note,
html[data-theme="dark"] #root .sector-list p,
html[data-theme="dark"] #root .steps p,
html[data-theme="dark"] #root .profile-content .profile-facts *,
html[data-theme="dark"] #root .profile-content .strengths * {
  color: #bdc8be !important;
  -webkit-text-fill-color: #bdc8be !important;
  opacity: 1 !important;
}

html[data-theme="dark"] #root .profile-content blockquote,
html[data-theme="dark"] #root .profile-content blockquote *,
html[data-theme="dark"] #root .profile-content .certifications span,
html[data-theme="dark"] #root .profile-content .certifications span * {
  color: #c0ddaf !important;
  -webkit-text-fill-color: #c0ddaf !important;
  opacity: 1 !important;
}

html[data-theme="dark"] #root .profile-content .certifications small {
  color: #98aa9c !important;
  -webkit-text-fill-color: #98aa9c !important;
  opacity: 1 !important;
}

html[data-theme="dark"] #root .profile-content,
html[data-theme="dark"] #root .profile-facts,
html[data-theme="dark"] #root .profile-facts p,
html[data-theme="dark"] #root .strengths,
html[data-theme="dark"] #root .strengths div {
  border-color: rgba(221, 231, 218, 0.14) !important;
}

/* Restrained content width: backgrounds remain full-bleed while content stays
   calm and readable on desktop and ultrawide displays. */
@media (min-width: 1600px) {
  #root .site-header {
    padding-left: max(5vw, calc((100vw - 1400px) / 2)) !important;
    padding-right: max(5vw, calc((100vw - 1400px) / 2)) !important;
  }

  #root .hero.entry-preview {
    padding-left: max(7vw, calc((100vw - 1400px) / 2)) !important;
    padding-right: max(7vw, calc((100vw - 1400px) / 2)) !important;
  }

  #root .proof-strip,
  #root .section:not(.profile),
  #root .outcomes,
  #root .principle,
  #root .contact {
    padding-left: max(5vw, calc((100vw - 1400px) / 2)) !important;
    padding-right: max(5vw, calc((100vw - 1400px) / 2)) !important;
  }

  #root .profile {
    grid-template-columns: minmax(0, 560px) minmax(0, 840px) !important;
    justify-content: center !important;
  }

  #root .profile-title,
  #root .profile-content {
    padding-left: 64px !important;
    padding-right: 64px !important;
  }

  #root .section-head,
  #root .service-grid,
  #root .deep-dive-links,
  #root .mandate-list,
  #root .tool-grid,
  #root .project-experience-grid,
  #root .sector-list,
  #root .steps {
    width: min(100%, 1400px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* Mobile overflow guard: long German and English headings must wrap inside
   their own column instead of widening the page. */
html,
body,
#root {
  max-width: 100%;
  overflow-x: clip;
}

@supports not (overflow: clip) {
  html,
  body,
  #root {
    overflow-x: hidden;
  }
}

@media (max-width: 600px) {
  #root *,
  #root *::before,
  #root *::after {
    min-width: 0;
  }

  #root .hero h1,
  #root .section-head h2,
  #root .profile-title h2,
  #root .contact h2,
  #root .project-experience h2,
  #root .deep-dive-intro strong,
  #root .mandate-list h3,
  #root .service-card h3 {
    max-width: 100%;
    overflow-wrap: anywhere;
    word-break: normal;
    hyphens: auto;
    text-wrap: pretty;
  }

  #root .hero h1 {
    font-size: clamp(42px, 11.8vw, 54px) !important;
  }

  #root .section-head h2,
  #root .profile-title h2,
  #root .contact h2,
  #root .project-experience h2 {
    font-size: clamp(37px, 10.3vw, 47px) !important;
    line-height: 1.01 !important;
  }
}


/* Source: /header-match-v4.css */
/* Homepage header and hero: same canvas, spacing and orbit geometry as deep-dive pages. */
html[data-theme="dark"] #root .site-header {
  background: rgba(14, 20, 16, 0.88) !important;
  border-bottom-color: rgba(185, 221, 159, 0.14) !important;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}

html[data-theme="dark"] #root .hero.entry-preview {
  background:
    radial-gradient(circle at 82% 34%, rgba(103, 179, 70, 0.28), transparent 31%),
    radial-gradient(circle at 100% 100%, rgba(55, 92, 66, 0.30), transparent 34%),
    linear-gradient(132deg, #0c120e 0%, #121b15 50%, #1d2b22 100%) !important;
}

html[data-theme="light"] #root .site-header {
  background: rgba(244, 246, 240, 0.90) !important;
  border-bottom-color: rgba(49, 95, 43, 0.16) !important;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}

html[data-theme="light"] #root .hero.entry-preview {
  background:
    radial-gradient(circle at 82% 31%, rgba(103, 179, 70, 0.48), transparent 32%),
    radial-gradient(circle at 100% 100%, rgba(65, 126, 51, 0.22), transparent 34%),
    linear-gradient(132deg, #faf9f4 0%, #e8f0e3 52%, #c8debe 100%) !important;
}

/* Match the deep-dive header dimensions as well as its translucent surface. */
#root .site-header {
  height: 94px !important;
  padding-inline: max(clamp(24px, 5vw, 72px), calc((100vw - 1320px) / 2)) !important;
}

#root .site-header .brand-logo {
  width: clamp(225px, 16vw, 285px) !important;
}

#root .site-header .header-actions {
  gap: 22px !important;
}

/* Use the exact deep-dive hero height and gutters at every breakpoint. */
#root .hero.entry-preview {
  min-height: clamp(620px, 74vh, 760px) !important;
  height: auto !important;
  max-height: none !important;
  padding: 156px max(clamp(24px, 5vw, 72px), calc((100vw - 1320px) / 2)) 92px !important;
  flex-direction: column;
  justify-content: center;
  align-items: stretch;
}

#root .hero.entry-preview .hero-content {
  width: min(900px, 76%);
}

#root .hero.entry-preview::before {
  opacity: 0.62 !important;
  background-size: 86px 86px !important;
  mask-image: linear-gradient(to right, black, transparent 82%);
  -webkit-mask-image: linear-gradient(to right, black, transparent 82%);
}

#root .hero.entry-preview .ambient-one {
  display: block !important;
  width: 570px !important;
  height: 570px !important;
  top: 125px !important;
  right: max(-150px, calc((100vw - 1320px) / 2 - 250px)) !important;
  opacity: 1 !important;
  transform: none !important;
  filter: none !important;
  border: 1px solid rgba(103, 179, 70, 0.28) !important;
  border-radius: 50%;
  box-shadow: inset 0 0 120px rgba(107, 189, 69, 0.08) !important;
}

#root .hero.entry-preview .ambient-one::after {
  content: "";
  position: absolute;
  width: 62%;
  height: 62%;
  left: 19%;
  top: 19%;
  border: 1px solid rgba(107, 189, 69, 0.18);
  border-radius: 50%;
}

html[data-theme="light"] #root .hero.entry-preview .ambient-one::after {
  border-color: rgba(74, 132, 48, 0.25);
}

#root .hero.entry-preview .ambient-two {
  display: none !important;
}

@media (max-width: 900px) {
  #root .site-header {
    padding-inline: clamp(24px, 5vw, 72px) !important;
  }

  #root .hero.entry-preview {
    min-height: 650px !important;
    padding: 146px clamp(24px, 5vw, 72px) 82px !important;
  }

  #root .hero.entry-preview .hero-content {
    width: 100%;
  }

  #root .hero.entry-preview .ambient-one {
    right: -240px !important;
  }
}

@media (max-width: 600px) {
  html[data-theme="dark"] #root .site-header {
    background: rgba(14, 20, 16, 0.96) !important;
  }

  html[data-theme="light"] #root .site-header {
    background: rgba(244, 246, 240, 0.97) !important;
  }

  #root .site-header {
    height: 76px !important;
    padding-inline: 24px !important;
  }

  #root .site-header .brand-logo {
    width: 178px !important;
  }

  #root .hero.entry-preview {
    min-height: 610px !important;
    padding: 124px 24px 68px !important;
  }

  #root .hero.entry-preview .ambient-one {
    width: 380px !important;
    height: 380px !important;
    right: -200px !important;
    top: 180px !important;
  }
}


/* Source: /site-shell-v45.css */
/* Bergermann Consulting — shared scroll header, progress control and hover integrity. */

:root {
  --bc-header-full: 94px;
  --bc-header-compact: 68px;
  --bc-hover-line: rgba(49, 94, 32, 0.34);
  --bc-hover-surface: #ffffff;
  --bc-hover-inset: rgba(49, 94, 32, 0.055);
  --bc-hover-shadow: rgba(31, 47, 34, 0.15);
  --bc-progress-track: rgba(49, 94, 32, 0.22);
  --bc-progress-stroke: #4f9137;
  --bc-progress-surface: rgba(247, 248, 243, 0.94);
  --bc-progress-ink: #23451e;
}

/* Mobile polish: keep the two-column tool grid complete and simplify projects. */
@media (max-width: 600px) {
  #root .tool-grid > .tool-card:nth-child(-n + 6) {
    border-bottom-width: 1px !important;
    border-bottom-style: solid !important;
  }

  #root .tool-grid > .tool-card:nth-last-child(-n + 2) {
    border-bottom-width: 0 !important;
  }

  #root .sector-list .arrow {
    display: none !important;
  }
}

html[data-theme="dark"] {
  --bc-hover-line: rgba(203, 225, 191, 0.31);
  --bc-hover-surface: #27342b;
  --bc-hover-inset: rgba(203, 225, 191, 0.045);
  --bc-hover-shadow: rgba(0, 0, 0, 0.32);
  --bc-progress-track: rgba(211, 230, 201, 0.18);
  --bc-progress-stroke: #91bd78;
  --bc-progress-surface: rgba(26, 37, 30, 0.94);
  --bc-progress-ink: #e7eee2;
}

html {
  scroll-padding-top: calc(var(--bc-header-compact) + 20px);
}

/* The header remains present from the first pixel and morphs into its compact state. */
#root .site-header,
.detail-header,
.legal-header {
  z-index: 60;
  transition:
    height 380ms cubic-bezier(0.22, 1, 0.36, 1),
    min-height 380ms cubic-bezier(0.22, 1, 0.36, 1),
    padding 380ms cubic-bezier(0.22, 1, 0.36, 1),
    background-color 280ms ease,
    border-color 280ms ease,
    box-shadow 320ms ease,
    backdrop-filter 320ms ease;
  will-change: height, min-height;
}

#root .site-header,
.detail-header {
  position: fixed !important;
  inset: 0 0 auto 0;
  width: 100%;
}

.legal-header {
  position: sticky !important;
  top: 0;
  min-height: var(--bc-header-full) !important;
  padding-inline: max(clamp(24px, 5vw, 72px), calc((100vw - 1320px) / 2)) !important;
}

.legal-header img {
  display: block;
  width: clamp(225px, 16vw, 285px) !important;
}

/* Keep the legal-page footer in the same fixed composition as the homepage. */
.legal-footer {
  min-height: 120px;
  padding: 25px 5vw;
  display: flex;
  align-items: center;
  gap: 4vw;
  color: rgba(255, 255, 255, 0.45);
  font-size: 9px;
  line-height: 1.5;
  letter-spacing: 0.08em;
}

.legal-footer-brand {
  display: flex;
  align-items: center;
  margin-right: auto;
  color: #fff;
}

.legal-footer-brand img {
  display: block;
  width: 220px;
  height: auto;
}

.legal-footer > p {
  margin: 0;
  color: inherit;
  font-size: inherit;
  line-height: inherit;
}

.legal-footer-links {
  display: flex;
  align-items: center;
  gap: 22px;
}

.legal-footer a {
  color: #b9dd9f;
  text-decoration: none;
}

.legal-footer > span {
  margin-left: 0;
}

#root .site-header .brand-logo,
.detail-header .detail-logo,
.legal-header img,
#root .site-header .header-actions,
.detail-header .detail-header-actions {
  transition:
    width 380ms cubic-bezier(0.22, 1, 0.36, 1),
    gap 380ms cubic-bezier(0.22, 1, 0.36, 1),
    transform 380ms cubic-bezier(0.22, 1, 0.36, 1);
}

#root .site-header.is-compact,
.detail-header.is-compact {
  height: var(--bc-header-compact) !important;
  box-shadow: 0 12px 34px rgba(17, 25, 19, 0.13);
}

.legal-header.is-compact {
  min-height: var(--bc-header-compact) !important;
  box-shadow: 0 12px 34px rgba(17, 25, 19, 0.13);
}

html[data-theme="dark"] #root .site-header.is-compact,
html[data-theme="dark"] .detail-header.is-compact,
html[data-theme="dark"] .legal-header.is-compact {
  background-color: rgba(14, 20, 16, 0.9) !important;
  border-bottom-color: rgba(185, 221, 159, 0.19) !important;
  box-shadow: 0 14px 38px rgba(0, 0, 0, 0.28);
  backdrop-filter: blur(20px) saturate(118%);
  -webkit-backdrop-filter: blur(20px) saturate(118%);
}

html[data-theme="light"] #root .site-header.is-compact,
html[data-theme="light"] .detail-header.is-compact,
html[data-theme="light"] .legal-header.is-compact {
  background-color: rgba(247, 248, 243, 0.9) !important;
  border-bottom-color: rgba(49, 95, 43, 0.2) !important;
  box-shadow: 0 14px 36px rgba(35, 51, 38, 0.12);
  backdrop-filter: blur(20px) saturate(112%);
  -webkit-backdrop-filter: blur(20px) saturate(112%);
}

#root .site-header.is-compact .brand-logo,
.detail-header.is-compact .detail-logo,
.legal-header.is-compact img {
  width: 195px !important;
}

#root .site-header.is-compact .header-actions,
.detail-header.is-compact .detail-header-actions {
  gap: 17px !important;
}

#root .site-header.is-compact .contact-link {
  padding-block: 8px !important;
}

/* The topic bar docks beneath the compact header on desktop deep-dive pages. */
@media (min-width: 901px) {
  .topic-nav {
    top: var(--bc-header-compact) !important;
  }
}

@media (max-width: 900px) {
  .legal-header {
    padding-inline: clamp(24px, 5vw, 72px) !important;
  }
}

/* Keep the mobile dropdown attached to the header at both header heights. */
#root .site-header nav.open {
  top: 100% !important;
}

/* All elevated grid fields retain a complete one-pixel perimeter on hover. */
#root .service-card,
#root .mandate-list article,
#root .tool-card,
#root .deep-dive-topic-grid a,
#root .project-experience-grid article,
.project-experience-grid article,
.definition-grid article,
.failure-grid article,
.support-grid article,
.landscape-card {
  transition:
    background-color 220ms ease,
    border-color 220ms ease,
    box-shadow 220ms ease,
    outline-color 220ms ease;
}

/* The tool area is a true 4 Ã— 2 / 2 Ã— 4 grid, including its row lines. */
#root .tool-grid > .tool-card {
  border-right-width: 1px;
  border-right-style: solid;
  border-bottom-width: 1px;
  border-bottom-style: solid;
}

@media (min-width: 901px) {
  #root .tool-grid > .tool-card:nth-child(4n) {
    border-right-width: 0;
  }

  #root .tool-grid > .tool-card:nth-last-child(-n + 4) {
    border-bottom-width: 0;
  }
}

@media (max-width: 900px) {
  #root .tool-grid > .tool-card:nth-child(2n) {
    border-right-width: 0;
  }

  #root .tool-grid > .tool-card:nth-last-child(-n + 2) {
    border-bottom-width: 0;
  }
}

@media (hover: hover) {
  #root .service-card:hover,
  #root .mandate-list article:hover,
  #root .tool-card:hover,
  #root .deep-dive-topic-grid a:hover,
  #root .project-experience-grid article:hover,
  .project-experience-grid article:hover,
  .definition-grid article:hover,
  .failure-grid article:hover,
  .support-grid article:hover,
  .landscape-card:hover {
    z-index: 3;
    transform: none !important;
    --bc-card-content-lift: -3px;
    background: var(--bc-hover-surface) !important;
    outline: 1px solid var(--bc-hover-line);
    outline-offset: -1px;
    border-color: var(--bc-hover-line) !important;
    box-shadow:
      inset 0 0 0 1px var(--bc-hover-line),
      inset 0 14px 34px var(--bc-hover-inset) !important;
  }
}

@media (hover: hover) {
  html[data-theme="light"] #root .service-card:hover,
  html[data-theme="light"] #root .mandate-list article:hover,
  html[data-theme="light"] #root .tool-card:hover,
  html[data-theme="light"] #root .deep-dive-topic-grid a:hover,
  html[data-theme="light"] #root .project-experience-grid article:hover,
  html[data-theme="light"] .project-experience-grid article:hover,
  html[data-theme="dark"] #root .service-card:hover,
  html[data-theme="dark"] #root .mandate-list article:hover,
  html[data-theme="dark"] #root .tool-card:hover,
  html[data-theme="dark"] #root .deep-dive-topic-grid a:hover,
  html[data-theme="dark"] #root .project-experience-grid article:hover,
  html[data-theme="dark"] .project-experience-grid article:hover {
    background: var(--bc-hover-surface) !important;
  }
}

/* Lift the card contents while the structural grid lines remain pixel-stable. */
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  #root .service-card > *,
  #root .mandate-list article > *,
  #root .tool-card > *,
  #root .deep-dive-topic-grid a > *,
  .project-experience-grid article > *,
  .definition-grid article > *,
  .failure-grid article > *,
  .support-grid article > *,
  .landscape-card > * {
    translate: 0 var(--bc-card-content-lift, 0);
    transition: translate 220ms cubic-bezier(0.22, 1, 0.36, 1);
  }
}

/* Correct the connected grids at the tablet and ultrawide layouts as well. */
@media (min-width: 601px) and (max-width: 900px) {
  #root .deep-dive-topic-grid > a,
  #root .deep-dive-topic-grid > a:last-child {
    border-right: 1px solid var(--dd-line, var(--line));
    border-bottom: 0;
  }

  #root .deep-dive-topic-grid > a:nth-child(2n) {
    border-right-width: 0;
  }

  #root .deep-dive-topic-grid > a:nth-child(-n + 2) {
    border-bottom: 1px solid var(--dd-line, var(--line));
  }
}

@media (min-width: 1900px) and (min-aspect-ratio: 19/9) {
  #root .mandate-list > article,
  #root .mandate-list > article:nth-child(2n),
  #root .mandate-list > article:nth-last-child(-n + 2) {
    border-right: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
  }

  #root .mandate-list > article:nth-child(4n) {
    border-right-width: 0;
  }

  #root .mandate-list > article:nth-child(n + 5) {
    border-bottom-width: 0;
  }
}

.source-links a,
.theme-toggle {
  transition: color 180ms ease, border-color 180ms ease, background-color 180ms ease;
}

html[data-theme="light"] .source-links a:hover {
  color: #315f2b;
  border-color: rgba(49, 94, 43, 0.5);
  background: #fff;
}

html[data-theme="dark"] .source-links a:hover {
  color: #d9ead0;
  border-color: rgba(185, 221, 159, 0.46);
  background: rgba(255, 255, 255, 0.055);
}

html[data-theme="dark"] .theme-toggle:hover {
  color: #eef4e9;
  border-color: rgba(185, 221, 159, 0.55);
  background: rgba(255, 255, 255, 0.075);
}

/* Start the portrait accent flush with the photo; keep its caption extension. */
#root .profile-photo::after {
  top: 0 !important;
  bottom: 0 !important;
}

/* Preserve the intended dark project-experience band inside the light theme. */
html[data-theme="light"] .content-section.project-experience {
  color: #f2f6ef;
  background:
    radial-gradient(circle at 88% 12%, rgba(103, 179, 70, 0.22), transparent 30%),
    radial-gradient(circle at 10% 92%, rgba(73, 119, 81, 0.17), transparent 28%),
    linear-gradient(128deg, #16251b, #26392d);
}

html[data-theme="light"] .content-section.project-experience h2,
html[data-theme="light"] .content-section.project-experience h3 {
  color: #f3f7f1;
}

html[data-theme="light"] .content-section.project-experience .section-head p:not(.kicker),
html[data-theme="light"] .content-section.project-experience .project-experience-grid p {
  color: rgba(239, 245, 236, 0.72);
}

html[data-theme="light"] .content-section.project-experience .project-experience-grid article {
  background: rgba(255, 255, 255, 0.025);
  border-color: rgba(185, 221, 159, 0.18);
}

@media (hover: hover) {
  html[data-theme="light"] .content-section.project-experience .project-experience-grid article:hover {
    background: rgba(255, 255, 255, 0.075) !important;
    border-color: rgba(203, 225, 191, 0.34) !important;
    outline-color: rgba(203, 225, 191, 0.34);
    box-shadow:
      inset 0 0 0 1px rgba(203, 225, 191, 0.28),
      inset 0 14px 34px rgba(203, 225, 191, 0.045) !important;
  }
}

#root .deep-dive-topic-grid a:focus-visible,
.topic-nav a:focus-visible,
.source-links a:focus-visible {
  outline: 2px solid var(--bc-progress-stroke);
  outline-offset: -3px;
}

/* Ohertannen-inspired circular scroll progress, adapted to this colour system. */
.bc-scroll-progress {
  position: fixed;
  right: max(22px, calc(env(safe-area-inset-right) + 18px));
  bottom: max(22px, calc(env(safe-area-inset-bottom) + 18px));
  z-index: 45;
  width: 52px;
  height: 52px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  -webkit-appearance: none;
  appearance: none;
  overflow: hidden;
  background-clip: padding-box;
  isolation: isolate;
  filter: none;
  color: var(--bc-progress-ink);
  background: var(--bc-progress-surface);
  box-shadow: 0 14px 36px rgba(17, 25, 19, 0.18);
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(13px) scale(0.92);
  transition:
    opacity 260ms ease,
    visibility 260ms ease,
    transform 340ms cubic-bezier(0.22, 1, 0.36, 1),
    background-color 220ms ease,
    box-shadow 220ms ease;
  -webkit-tap-highlight-color: transparent;
}

.bc-scroll-progress.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0) scale(1);
}

.bc-scroll-progress:hover {
  transform: translateY(-3px) scale(1.03);
  box-shadow: 0 18px 42px rgba(17, 25, 19, 0.24);
}

/* iOS can retain a rectangular native-button shadow after tapping. */
@media (hover: none), (pointer: coarse) {
  .bc-scroll-progress,
  .bc-scroll-progress:hover {
    box-shadow: none;
  }

  .bc-scroll-progress:hover {
    transform: translateY(0) scale(1);
  }
}

.bc-scroll-progress:focus-visible {
  outline: 2px solid var(--bc-progress-stroke);
  outline-offset: 4px;
}

.bc-scroll-progress .bc-progress-graphic {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  overflow: visible;
  pointer-events: none;
}

.bc-scroll-progress circle {
  fill: none;
  stroke-width: 1.7;
}

.bc-scroll-progress .bc-progress-track {
  stroke: var(--bc-progress-track);
}

.bc-scroll-progress .bc-progress-value {
  stroke: var(--bc-progress-stroke);
  stroke-linecap: round;
}

.bc-scroll-progress .bc-progress-arrow {
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
}

@media (max-width: 600px) {
  :root {
    --bc-header-full: 76px;
    --bc-header-compact: 62px;
  }

  .legal-main h1 {
    max-width: 100%;
    overflow-wrap: anywhere;
    hyphens: auto;
  }

  .legal-header {
    min-height: var(--bc-header-full) !important;
    padding-inline: 24px !important;
  }

  .legal-header img {
    width: 178px !important;
  }

  .legal-footer {
    padding: 25px 5vw;
    flex-flow: row wrap;
    align-items: center;
    gap: 18px 30px;
  }

  .legal-footer-brand {
    width: 100%;
  }

  .legal-footer > p {
    display: none;
  }

  .legal-footer-links {
    width: 100%;
    flex-wrap: wrap;
    gap: 15px 22px;
  }

  #root .site-header.is-compact,
  .detail-header.is-compact {
    height: var(--bc-header-compact) !important;
  }

  .legal-header.is-compact {
    min-height: var(--bc-header-compact) !important;
  }

  #root .site-header.is-compact .brand-logo,
  .detail-header.is-compact .detail-logo,
  .legal-header.is-compact img {
    width: 164px !important;
  }

  .bc-scroll-progress {
    right: max(16px, calc(env(safe-area-inset-right) + 12px));
    bottom: max(16px, calc(env(safe-area-inset-bottom) + 12px));
    width: 48px;
    height: 48px;
  }

  /* Crisp, unclipped topic arrows on narrow Retina displays. */
  #root .deep-dive-topic-grid b {
    width: 20px;
    min-width: 20px;
    height: 20px;
    overflow: visible;
  }

  #root .deep-dive-topic-grid b::before {
    content: "";
    position: absolute;
    inset: 0;
    width: 20px;
    height: 20px;
    border: 0;
    background: var(--bc-progress-stroke);
    transform: none;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5.25 14.75 14.75 5.25M8 5.25h6.75V12' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 20px 20px no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5.25 14.75 14.75 5.25M8 5.25h6.75V12' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 20px 20px no-repeat;
  }

  #root .deep-dive-topic-grid b::after {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  #root .site-header,
  .detail-header,
  .legal-header,
  #root .site-header .brand-logo,
  .detail-header .detail-logo,
  .legal-header img,
  .bc-scroll-progress,
  #root .service-card,
  #root .mandate-list article,
  #root .tool-card,
  #root .deep-dive-topic-grid a,
  #root .project-experience-grid article,
  .project-experience-grid article,
  .definition-grid article,
  .failure-grid article,
  .support-grid article,
  .landscape-card {
    scroll-behavior: auto !important;
    transition-duration: 1ms !important;
  }
}

/* Final mobile override: preserve complete grid lines and remove project arrows. */
@media (max-width: 600px) {
  #root .tool-grid > .tool-card:nth-child(-n + 6) {
    border-bottom-width: 1px !important;
    border-bottom-style: solid !important;
  }

  #root .tool-grid > .tool-card:nth-last-child(-n + 2) {
    border-bottom-width: 0 !important;
  }

  #root .sector-list .arrow {
    display: none !important;
  }
}


/* Source: /fax-contact-20260905.css */
/* Keep the fax number readable and together at every breakpoint. */
.contact-fax span,
.fax-number,
.phone-number {
  white-space: nowrap;
}

#root .contact-copy .contact-mobile,
.detail-contact .contact-mobile {
  color: inherit;
  font-size: 1rem;
  line-height: 1.6;
  margin: 0 0 .4rem;
}
#root .contact-copy a.phone-number,
.detail-contact a.phone-number {
  display: inline;
  min-width: 0;
  width: auto;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;
  color: inherit;
  font: inherit;
  text-decoration: underline;
  text-underline-offset: 4px;
  transform: none;
}

#root .contact-copy .contact-fax,
.detail-contact .contact-fax {
  color: inherit;
  font-size: 1rem;
  line-height: 1.6;
  margin: 0 0 1.75rem;
}

/* The existing light-theme monogram position is shared by both themes. */
@media (min-width: 901px) {
  html[data-theme] #root .profile .monogram {
    display: block !important;
    z-index: 1 !important;
    left: max(8vw, calc((100% - 1400px) / 2)) !important;
    bottom: -45px !important;
    font-size: clamp(230px, 18vw, 340px) !important;
    line-height: 0.72 !important;
    opacity: 1 !important;
    pointer-events: none !important;
  }
}

.legal-header {
  gap: 24px;
}
.legal-header-actions {
  display: contents;
}
.legal-nav {
  order: 1;
  display: flex;
  align-items: center;
  gap: 24px;
  margin-left: auto;
}
.legal-nav a {
  color: inherit;
  font: 500 13px/1.4 var(--ui-font);
  text-decoration: none;
  white-space: nowrap;
}
.legal-nav .legal-contact-link {
  padding-block: 10px;
  border-bottom: 1px solid currentColor;
}
.legal-contact-link::after {
  content: "↗";
  margin-left: 12px;
}
.legal-nav a:hover {
  color: var(--green);
}
.legal-header > .theme-toggle {
  order: 2;
  flex-shrink: 0;
  margin-left: 0;
}
.legal-language {
  order: 3;
  display: flex;
  align-items: center;
  gap: 9px;
  font-size: 12px;
}
.legal-language button {
  min-height: 40px;
  padding: 6px 2px;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  cursor: pointer;
  opacity: .55;
}
.legal-language button[aria-pressed="true"] {
  opacity: 1;
  font-weight: 600;
}
.legal-main [hidden] {
  display: none !important;
}
@media (max-width: 760px) {
  .legal-footer {
    flex-wrap: wrap;
  }
  .legal-footer-brand,
  .legal-footer-links {
    width: 100%;
  }
  .legal-footer-links {
    flex-wrap: wrap;
  }
  .legal-footer > p {
    display: none;
  }
  .legal-header,
  .legal-header.is-compact {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 5px 18px;
    padding-top: 12px;
    padding-bottom: 8px;
  }
  .legal-header > a {
    grid-column: 1;
    grid-row: 1;
  }
  .legal-header > .theme-toggle {
    grid-column: 2;
    grid-row: 1;
    justify-self: end;
  }
  .legal-nav {
    grid-column: 1;
    grid-row: 2;
    margin-left: 0;
  }
  .legal-language {
    grid-column: 2;
    grid-row: 2;
    justify-self: end;
  }
  .legal-nav a {
    font-size: 13px;
    min-height: 40px;
    display: inline-flex;
    align-items: center;
  }
}


/* Source: /quality-polish-20260905.css */
/* Targeted polish; loaded after the shared shell and contact styles. */

/* Darker text green, not a change to the logo or the brand gradients. */
html[data-theme="light"] .legal-main a:not(.back),
html[data-theme="light"] .legal-main .kicker,
html[data-theme="light"] .legal-nav a:hover {
  color: #3f7428;
}

.detail-contact-link {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
  min-height: 40px;
  padding-block: 10px;
  border-bottom: 1px solid currentColor;
  color: inherit;
  font-size: 12px;
  line-height: 1.4;
  text-decoration: none;
  white-space: nowrap;
}
.detail-contact-link::after {
  content: "↗";
  margin-left: 10px;
}
html[data-theme="light"] .detail-contact-link:hover {
  color: #3f7428;
}
html[data-theme="dark"] .detail-contact-link:hover {
  color: #b9dd9f;
}
#root .site-header nav .mobile-contact-link {
  display: none;
}

/* Enlarge the hit areas without changing the visible letter size. */
#root .site-header .language button,
.detail-header .language button,
.legal-header .language button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  min-width: 36px;
  min-height: 44px;
  padding: 0;
}

@media (max-width: 900px) {
  #root .site-header nav.open .mobile-contact-link {
    display: block;
  }
  #root .site-header .header-actions,
  #root .site-header.is-compact .header-actions {
    gap: 12px !important;
    margin-right: 0;
  }
  #root .site-header .language,
  .detail-header .language,
  .legal-header .language {
    gap: 0;
  }
  #root .site-header .language > span,
  .detail-header .language > span,
  .legal-header .language > span {
    flex: 0 0 4px;
    width: 4px;
    text-align: center;
  }
}

/* Two light rows provide Home, Contact and controls without hiding anything. */
@media (max-width: 760px) {
  html:has(.detail-header) {
    --bc-header-full: 106px;
    --bc-header-compact: 96px;
  }
  .detail-header,
  .detail-header.is-compact {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    grid-template-rows: 44px 36px;
    gap: 4px 12px;
    height: var(--bc-header-full) !important;
    padding-block: 10px;
  }
  .detail-header.is-compact {
    height: var(--bc-header-compact) !important;
    padding-block: 5px;
  }
  .detail-header > a {
    grid-column: 1 / 3;
    grid-row: 1;
    min-width: 0;
  }
  .detail-header-actions {
    display: contents;
  }
  .detail-header-actions > .theme-toggle {
    grid-column: 3;
    grid-row: 1;
    justify-self: end;
    margin: 0;
  }
  .detail-header-actions .back-link {
    grid-column: 1;
    grid-row: 2;
    display: inline-flex;
    align-items: center;
    justify-self: start;
    min-height: 36px;
    padding: 0;
    font-size: 12px;
    white-space: nowrap;
  }
  .detail-header-actions .detail-contact-link {
    grid-column: 2;
    grid-row: 2;
    min-height: 36px;
    padding-block: 0;
  }
  .detail-header-actions .language {
    grid-column: 3;
    grid-row: 2;
    justify-self: end;
  }
  .legal-header .legal-language {
    gap: 0;
  }
}

@media (max-width: 600px) {
  /* At 393px: 178 logo + 42 menu + 36 theme + 76 language + 10 gaps = 342px.
     The existing 24px gutters leave 345px. Nothing overlaps or shrinks. */
  #root .site-header {
    gap: 2px;
  }
  #root .site-header .brand,
  #root .site-header .menu-button,
  #root .site-header .header-actions {
    flex-shrink: 0;
  }
  #root .site-header .menu-button {
    width: 42px;
    min-height: 44px;
    justify-content: center;
    padding: 10px;
  }
  #root .site-header .header-actions,
  #root .site-header.is-compact .header-actions {
    gap: 6px !important;
    margin-right: 0;
  }
  .detail-hero {
    padding-top: 154px;
  }

  /* English breaks between words, not in short words such as "creates". */
  html[lang="en"] #root h1,
  html[lang="en"] #root h2,
  html[lang="en"] #root h3,
  html[lang="en"] [data-language="en"] h1,
  html[lang="en"] [data-language="en"] h2,
  html[lang="en"] [data-language="en"] h3 {
    min-width: 0;
    max-width: 100%;
    -webkit-hyphens: none !important;
    hyphens: none !important;
    word-break: normal;
    overflow-wrap: normal;
    text-wrap: balance;
  }
  html[lang="en"] #root .hero h1,
  html[lang="en"] .detail-hero h1 {
    font-size: clamp(36px, 11vw, 48px) !important;
    line-height: 1.04;
  }
  html[lang="en"] #root .section-head h2,
  html[lang="en"] #root .profile-title h2,
  html[lang="en"] #root .contact h2,
  html[lang="en"] #root .project-experience h2,
  html[lang="en"] .section-head h2,
  html[lang="en"] .detail-contact h2 {
    font-size: clamp(32px, 9.1vw, 42px) !important;
    line-height: 1.06 !important;
  }
}

/* Below the one-row width budget, retain the logo and move controls to a row. */
@media (max-width: 391px) {
  html:has(#root .site-header) {
    --bc-header-full: 108px;
    --bc-header-compact: 98px;
  }
  #root .site-header,
  #root .site-header.is-compact {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-rows: 40px 44px;
    gap: 2px 12px;
    height: var(--bc-header-full) !important;
    padding-block: 10px;
  }
  #root .site-header.is-compact {
    height: var(--bc-header-compact) !important;
    padding-block: 5px;
  }
  #root .site-header .brand {
    grid-column: 1;
    grid-row: 1;
  }
  #root .site-header .header-actions {
    display: contents;
  }
  #root .site-header .theme-toggle {
    grid-column: 2;
    grid-row: 1;
    justify-self: end;
  }
  #root .site-header .menu-button {
    grid-column: 1;
    grid-row: 2;
    justify-self: start;
  }
  #root .site-header .language {
    grid-column: 2;
    grid-row: 2;
    justify-self: end;
  }
  #root .hero.entry-preview {
    padding-top: 156px !important;
  }
}


/* Source: /consistency-polish-20260905.css */
/* Audited consistency fixes. Existing typography, card motion and hero design remain. */

/* An intrinsic long word must not expand a grid track beyond its own card. */
.content-section.project-experience .project-experience-grid > article,
#root .steps > article {
  min-width: 0;
}
.content-section.project-experience .project-experience-grid h3 {
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: normal;
}
html[lang="de"] .content-section.project-experience .project-experience-grid h3 {
  -webkit-hyphens: auto;
  hyphens: auto;
  hyphenate-limit-chars: 16 5 5;
  text-wrap: balance;
}

/* Constrain text locally instead of hiding a layout failure at the page edge.
   English still wraps between words first; no automatic English hyphenation. */
@media (max-width: 1100px) {
  html[lang] #root :is(h1, h2, h3, p),
  html[lang] .content-section :is(h2, h3, p),
  html[lang] .sources :is(h2, h3, p),
  html[lang] .legal-main :is(h1, h2, h3, p) {
    min-width: 0;
    max-width: 100%;
    overflow-wrap: anywhere;
    word-break: normal;
  }
  html[lang="de"] #root :is(h1, h2, h3, p),
  html[lang="de"] .content-section :is(h2, h3, p),
  html[lang="de"] .sources :is(h2, h3, p),
  html[lang="de"] .legal-main :is(h1, h2, h3, p) {
    -webkit-hyphens: auto;
    hyphens: auto;
  }
  html[lang="en"] [data-language="en"] :is(h2, h3, p) {
    overflow-wrap: anywhere;
  }
  html[lang="de"] #root .service-card h3,
  html[lang="de"] .landscape-card h3 {
    hyphenate-limit-chars: 16 5 5;
    text-wrap: balance;
  }
}

@media (max-width: 900px) {
  #root .steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 38px 24px;
  }
  #root .steps::before {
    display: none;
  }
  /* Match the existing mobile process style, without a misleading cross-row rail. */
  #root .step-dot {
    display: none;
  }
  #root .site-header .menu-button {
    min-height: 44px;
  }
  #root .site-header nav.open {
    gap: 0;
  }
  #root .site-header nav.open a,
  #root .site-header nav.open .mobile-contact-link {
    display: flex;
    align-items: center;
    min-height: 44px;
  }
}
@media (max-width: 380px) {
  #root .steps {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (min-width: 901px) {
  /* Fit the complete word Architecture inside the portrait's text column. */
  #root .profile-title h2 {
    font-size: clamp(36px, 4.2vw, 72px);
  }
}

/* One real, accessible label at every width, not a second CSS-generated name. */
@media (max-width: 600px) {
  html[lang] #root .tool-card:last-child h3 {
    font-size: 17px;
    line-height: 1.15;
    overflow-wrap: anywhere;
  }
  html[lang="de"] #root .tool-card:last-child h3 {
    -webkit-hyphens: auto;
    hyphens: auto;
  }
  html[lang] #root .tool-card:last-child h3::after {
    content: none;
    display: none;
  }
}

/* Same understated green contact band on homepage and all four topic pages.
   Worst-case end-stop plus maximum glow gives >4.5:1 against opaque white. */
html[data-theme="light"] #root .contact,
html[data-theme="light"] .detail-contact {
  background:
    radial-gradient(circle at 82% 20%, rgba(255, 255, 255, .06), transparent 27%),
    linear-gradient(125deg, #315e20 0%, #396c25 56%, #3f7428 100%);
}
html[data-theme="dark"] #root .contact,
html[data-theme="dark"] .detail-contact {
  background:
    radial-gradient(circle at 82% 20%, rgba(229, 238, 224, .08), transparent 27%),
    linear-gradient(125deg, #34512d 0%, #3f6235 58%, #4b743e 100%);
}
html[data-theme] #root .contact h2,
html[data-theme] #root .contact p,
html[data-theme] #root .contact .email-address,
html[data-theme] .detail-contact h2,
html[data-theme] .detail-contact p {
  color: #fff;
  opacity: 1;
}
html[data-theme] #root .contact-copy > p:first-child,
html[data-theme] .detail-contact-copy > p:first-child {
  font-size: 14px;
  line-height: 1.75;
}
html[data-theme] #root .contact .light-button,
html[data-theme] .detail-contact-copy > a:not(.phone-number) {
  color: #23451e;
  background: #fff;
}

/* Identical footer markup, rhythm and readable type on every route.
   The right gutter reserves the fixed back-to-top control's footprint. */
:is(#root, body) footer.bc-footer {
  display: grid;
  grid-template-columns: 220px minmax(120px, 1fr) auto auto;
  grid-template-areas: "brand focus links copyright";
  align-items: center;
  gap: 24px;
  min-height: 128px;
  padding: 32px max(90px, 5vw) 32px max(24px, 5vw);
  border-top: 1px solid rgba(203, 225, 191, .15);
  background: #1d241f;
  color: #c2ccc0;
  font: 400 12px/1.6 var(--ui-font, sans-serif);
  letter-spacing: .025em;
}
html[data-theme="light"] :is(#root, body) footer.bc-footer {
  background: #f3f5ef;
  color: #495547;
  border-top-color: rgba(49, 94, 32, .2);
}
:is(#root, body) footer.bc-footer > * {
  min-width: 0;
  margin: 0;
}
:is(#root, body) footer.bc-footer .bc-footer-brand {
  grid-area: brand;
  display: block;
  width: 220px;
  min-width: 220px;
  padding: 0;
  border: 0;
  background: none;
}
:is(#root, body) footer.bc-footer .bc-footer-brand img {
  display: block;
  width: 220px;
  min-width: 220px;
  max-width: none;
  height: 44px;
  object-fit: contain;
  object-position: left center;
}
html[data-theme="light"] :is(#root, body) footer.bc-footer .bc-footer-brand img {
  content: url("/bergermann-consulting-logo-dark.svg");
}
:is(#root, body) footer.bc-footer .bc-footer-description {
  grid-area: focus;
  display: block;
  max-width: 46ch;
  color: inherit;
  font: inherit;
  -webkit-hyphens: none;
  hyphens: none;
}
:is(#root, body) footer.bc-footer .bc-footer-links {
  grid-area: links;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 18px;
  width: auto;
  margin: 0;
}
:is(#root, body) footer.bc-footer .bc-footer-links a {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  text-decoration: none;
  white-space: nowrap;
}
:is(#root, body) footer.bc-footer .bc-footer-links a:hover {
  text-decoration: underline;
  text-underline-offset: 4px;
}
:is(#root, body) footer.bc-footer .bc-footer-copyright {
  grid-area: copyright;
  justify-self: end;
  color: inherit;
  font: inherit;
  white-space: nowrap;
}
:is(#root, body) footer.bc-footer a:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 4px;
}
@media (max-width: 1200px) {
  :is(#root, body) footer.bc-footer {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    grid-template-areas: "brand focus" "links copyright";
    gap: 20px 24px;
  }
}
@media (max-width: 760px) {
  :is(#root, body) footer.bc-footer {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: "brand" "focus" "links" "copyright";
    gap: 12px;
    padding: 28px max(24px, 5vw) max(28px, env(safe-area-inset-bottom, 0px));
  }
  :is(#root, body) footer.bc-footer .bc-footer-links {
    gap: 4px 22px;
  }
  :is(#root, body) footer.bc-footer .bc-footer-links a {
    min-height: 40px;
  }
  :is(#root, body) footer.bc-footer .bc-footer-copyright {
    justify-self: stretch;
    min-height: 32px;
    padding-right: 72px;
    display: flex;
    align-items: center;
  }
}


/* Source: /refinement-r4-20260906.css */
/* Round 2: readable inactive language choices; the active language keeps its emphasis. */
html[data-theme="light"] :is(.site-header, .detail-header) .language button:not(.active),
html[data-theme="light"] .legal-header .legal-language button:not(.active) {
  color: #59635b;
  opacity: 1;
}

/* Round 3: contrast-aware keyboard focus on light and green surfaces. */
html[data-theme="light"] #root .site-header :is(a, button):focus-visible,
html[data-theme="light"] :is(.detail-header, .legal-header, .legal-main) :is(a, button):focus-visible {
  outline: 2px solid #3f7428;
  outline-offset: 4px;
}
html[data-theme] #root .contact :is(a, button):focus-visible,
html[data-theme] .detail-contact :is(a, button):focus-visible {
  outline: 2px solid #fff;
  outline-offset: 4px;
}

/* Round 4: honor the visitor's reduced-motion preference on legal pages too. */
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto !important;
  }
  .legal-main .back,
  .legal-main .back:hover {
    transition: none;
    transform: none;
  }
}


/* Source: /workshops-nav-visible-20260911.css */
/* The legacy desktop navigation hides links from the third item onward.
   Keep only the new workshop link visible; leave the mobile nav container alone. */
@media (min-width: 901px) {
  #root .site-header nav a[data-preview-workshops] {
    display: inline-flex;
    align-items: center;
  }
}


/* Source: /site-header-links-v2-20260911.css */
/* Shared header link treatment across homepage, topic, legal and offer pages. */
html{--bc-header-link-ink:#eef2ed;--bc-header-link-line:rgba(238,242,237,.4);--bc-header-link-hover:#b9dd9f}
html[data-theme="light"]{--bc-header-link-ink:#242925;--bc-header-link-line:rgba(36,41,37,.4);--bc-header-link-hover:#3f7428}
html :is(#root .site-header nav>a,#root .site-header .contact-link,.detail-header .back-link,.detail-header .detail-contact-link,.legal-header .legal-nav>a){font-family:var(--ui-font,Arial,sans-serif);font-size:var(--bc-header-link-size,14px);font-weight:500;line-height:1.4;letter-spacing:0;color:var(--bc-header-link-ink);opacity:1;text-decoration:none}
html :is(#root .site-header .contact-link,.detail-header .back-link,.detail-header .detail-contact-link,.legal-header .legal-nav>a){min-height:var(--bc-header-action-height,40px);padding:var(--bc-header-action-padding,10px 0);align-items:center;border-bottom:1px solid var(--bc-header-link-line);white-space:nowrap}
@media(min-width:761px){.detail-header .back-link{display:inline-flex}}
.legal-header .legal-nav>a{display:inline-flex}
html :is(.detail-header .detail-contact-link,.legal-header .legal-contact-link)::after{margin-left:10px}
html :is(#root .site-header nav>a,#root .site-header .contact-link,.detail-header .back-link,.detail-header .detail-contact-link,.legal-header .legal-nav>a):is(:hover,:focus-visible){color:var(--bc-header-link-hover);border-bottom-color:var(--bc-header-link-hover)}
html :is(#root .site-header nav>a,#root .site-header .contact-link,.detail-header .back-link,.detail-header .detail-contact-link,.legal-header .legal-nav>a):focus-visible{outline:2px solid var(--bc-header-link-hover);outline-offset:4px}
@media(max-width:760px){.detail-header,.legal-header{--bc-header-action-height:36px;--bc-header-action-padding:0;--bc-header-link-size:12px}}
/* Preserve the larger text and visibility rules of the mobile menu. */
@media(max-width:900px){#root .site-header nav{--bc-header-link-size:16px}}
/* Keep DE / EN readable and identical across all four page templates. */
html :is(#root .site-header,.detail-header,.legal-header) .language,
html :is(#root .site-header,.detail-header,.legal-header) .language button{font-family:var(--ui-font,Arial,sans-serif);font-size:14px;font-weight:500;line-height:1.4;letter-spacing:0}
html :is(#root .site-header,.detail-header,.legal-header) .language button[aria-pressed="true"]{font-weight:600}
/* Narrow desktop windows still have room for a single-line menu. */
@media(min-width:901px) and (max-width:1100px){
 #root .site-header{padding-inline:28px!important}
 #root .site-header nav{flex:0 0 auto;margin-inline:20px;gap:18px}
 #root .site-header nav>a{white-space:nowrap}
 #root .site-header .header-actions{flex-shrink:0;gap:14px!important}
}
/* Short hero phrases should wrap between words rather than split them. */
@media(max-width:600px){.workshops-page .detail-hero h1{-webkit-hyphens:none;hyphens:none}}


/* Source: /mobile-layout-v3-20260911.css */
/* Phone-only composition. Existing desktop rendering remains untouched. */
.mobile-home,.mb-workshop-title,.mb-workshop-intro{display:none}
@media (max-width:700px){
  html.has-mobile-preview .mb-desktop-home{display:none!important}
  .mobile-home{--mb-page:#122018;--mb-surface:#19291f;--mb-ink:#eff3eb;--mb-muted:#bcc9bf;--mb-line:rgba(185,221,159,.2);--mb-accent:#b9dd9f;--mb-button:#b9dd9f;--mb-button-ink:#162614;display:block;background:var(--mb-page);color:var(--mb-ink);font:400 16px/1.6 var(--ui-font)}
  html[data-theme="light"] .mobile-home{--mb-page:#f7f9f4;--mb-surface:#edf3e8;--mb-ink:#18231b;--mb-muted:#526156;--mb-line:#d2dec9;--mb-accent:#3f742d;--mb-button:#3f742d;--mb-button-ink:#fff}
  .mobile-home *{box-sizing:border-box}
  .mobile-home :is(h1,h2,h3,p){margin:0;hyphens:none;word-break:normal;overflow-wrap:normal}
  .mobile-home :is(h1,h2,h3){font-family:var(--display-font);font-weight:400;letter-spacing:-.035em}
  .mobile-home h1{font-size:clamp(38px,11.2vw,52px);line-height:1.07;max-width:10ch;text-wrap:balance}
  .mobile-home h2{font-size:32px;line-height:1.13;text-wrap:balance}
  .mobile-home .mb-eyebrow{display:block;font:600 12px/1.5 var(--ui-font);letter-spacing:.13em;text-transform:uppercase;color:var(--mb-accent);margin-bottom:18px}
  .mb-hero{padding:calc(var(--bc-header-full,76px) + 32px) 24px 32px;background:radial-gradient(ellipse at 105% 0,rgba(106,184,70,.18),transparent 65%);border-bottom:1px solid var(--mb-line)}
  .mobile-home .mb-intro{margin-top:21px;max-width:34ch;color:var(--mb-muted);font-size:16px;line-height:1.6}
  .mobile-home .mb-primary{display:flex;align-items:center;justify-content:center;min-height:50px;padding:13px 18px;margin-top:25px;background:var(--mb-button);color:var(--mb-button-ink);font-size:15px;font-weight:600;border:1px solid transparent;text-decoration:none}
  .mobile-home .mb-secondary{display:flex;align-items:center;justify-content:center;min-height:44px;margin-top:4px;color:var(--mb-accent);font-size:14px}
  .mobile-home .mb-section{padding:34px 24px;border-bottom:1px solid var(--mb-line);scroll-margin-top:105px}
  .mobile-home .mb-muted{font-size:14px;color:var(--mb-muted);margin-top:12px}
  .mb-services{margin-top:23px;border-top:1px solid var(--mb-line)}
  .mobile-home summary{list-style:none;cursor:pointer;position:relative;min-height:56px;padding:19px 30px 19px 0;display:flex;align-items:center;gap:14px;font-size:16px;color:var(--mb-ink)}
  .mobile-home summary::-webkit-details-marker{display:none}
  .mobile-home summary::after{content:'+';position:absolute;right:0;top:50%;transform:translateY(-50%);font:300 25px/1 var(--ui-font);color:var(--mb-accent)}
  .mobile-home details[open]>summary::after{content:'−'}
  .mobile-home details{border-bottom:1px solid var(--mb-line)}
  .mobile-home .mb-number{align-self:flex-start;padding-top:3px;font-size:12px;color:var(--mb-accent);font-variant-numeric:tabular-nums}
  .mb-service strong{font:500 19px/1.25 var(--ui-font);letter-spacing:-.02em;display:block}
  .mb-service small{display:block;margin-top:6px;font:400 14px/1.45 var(--ui-font);color:var(--mb-muted)}
  .mobile-home .mb-prose{padding:2px 0 22px;color:var(--mb-muted);font-size:16px;line-height:1.65}
  .mobile-home .mb-prose p{font-size:16px;line-height:1.65;margin:0 0 16px}
  .mobile-home .mb-prose :is(h2,h3){font:600 18px/1.4 var(--ui-font);color:var(--mb-ink);letter-spacing:0;margin:24px 0 10px}
  .mobile-home .mb-prose :is(ul,blockquote){padding-left:20px;margin:16px 0}
  .mobile-home .mb-prose article{padding:0 0 20px;margin:0 0 18px;border-bottom:1px solid var(--mb-line)}
  .mobile-home .mb-prose article:last-child{padding-bottom:0;margin-bottom:0;border-bottom:0}
  .mobile-home .mb-prose small{display:block;font-size:13px;line-height:1.5;color:var(--mb-accent)}
  .mobile-home .mb-prose a{display:block;min-height:44px;padding-block:10px;color:var(--mb-accent)}
  .mobile-home .mb-prose a span+span{display:none}
  .mobile-home .mb-workshops{margin-top:26px;padding:23px;background:var(--mb-surface);border-left:3px solid #6bbd45}
  .mobile-home .mb-workshops .mb-eyebrow{margin-bottom:10px}
  .mobile-home .mb-workshops p{font-size:15px;line-height:1.6;color:var(--mb-muted)}
  .mobile-home .mb-text-link{display:inline-flex;min-height:44px;align-items:center;margin-top:8px;color:var(--mb-accent);font-size:14px;font-weight:600;border-bottom:1px solid var(--mb-line)}
  .mobile-home .mb-person{background:var(--mb-surface)}
  .mb-person-head{display:grid;grid-template-columns:92px minmax(0,1fr);gap:18px;align-items:center;margin-bottom:22px}
  .mb-person-head img{width:92px;height:115px;object-fit:cover;border-bottom:3px solid #6bbd45}
  .mobile-home .mb-person-head h2{font-size:24px;line-height:1.16;letter-spacing:-.025em;overflow-wrap:anywhere;text-wrap:initial}
  .mobile-home .mb-person-head p{font-size:12px;line-height:1.6;margin-top:10px;color:var(--mb-muted)}
  .mobile-home .mb-person>p:not(.mb-eyebrow){font-size:16px;color:var(--mb-muted)}
  .mobile-home .mb-person details{margin-top:14px}
  .mobile-home .mb-background .mb-eyebrow{margin-bottom:5px}
  .mobile-home .mb-reading{margin-top:26px}
  .mobile-home .mb-reading>h2{font:600 20px/1.3 var(--ui-font);letter-spacing:-.02em;text-wrap:initial}
  .mobile-home .mb-reading-context{margin-top:12px;color:var(--mb-muted);font-size:16px;line-height:1.5}
  .mobile-home .mb-reading-context>strong{display:block;font-size:14px;font-weight:500;margin-bottom:4px}
  .mobile-home .mb-reading-context>p{font-size:16px;line-height:1.5}
  .mobile-home .mb-reading-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;margin-top:16px}
  .mobile-home .mb-reading-links>a{display:flex;align-items:center;min-width:0;min-height:58px;padding:10px 0;border-bottom:1px solid var(--mb-line);color:var(--mb-accent);font:500 15px/1.4 var(--ui-font);text-decoration:none;hyphens:none;overflow-wrap:normal}
  .mobile-home .mb-reading-links>a>b{display:none}
  .mobile-home .mb-reading-links>a:hover{text-decoration:underline;text-underline-offset:4px}
  .mobile-home .mb-contact{--mb-ink:#fff;--mb-muted:#e0ebdc;--mb-accent:#c3e3ad;--mb-line:rgba(255,255,255,.28);background:#24472b;color:#fff;padding-block:36px}
  .mobile-home .mb-contact .mb-eyebrow{color:#c3e3ad}
  .mobile-home .mb-contact>p:not(.mb-eyebrow){color:#e0ebdc;margin-top:18px}
  .mobile-home .mb-contact .mb-primary{background:#c2dda9;color:#173014}
  .mobile-home .mb-phone,.mobile-home .mb-mail{display:flex;justify-content:center;align-items:center;min-height:44px;font-size:16px;color:#fff;margin-top:9px}
  .mobile-home .mb-mail{font-size:14px;margin-top:0;overflow-wrap:anywhere}
  .mobile-home :focus-visible{outline:2px solid var(--mb-accent);outline-offset:4px}
  #root .mobile-home ~ .bc-footer{padding-block:28px}
  .workshops-page .detail-hero{min-height:0;padding:calc(var(--bc-header-full,106px) + 30px) 24px 32px}
  .workshops-page.has-mobile-workshop-hero .detail-hero-content>h1:not(.mb-workshop-title),.workshops-page.has-mobile-workshop-hero .hero-lead{display:none}
  .workshops-page.has-mobile-workshop-hero .mb-workshop-title{display:block;font:400 clamp(34px,10vw,44px)/1.1 var(--display-font);letter-spacing:-.03em;white-space:pre-line;hyphens:none;text-wrap:balance}
  .workshops-page.has-mobile-workshop-hero .mb-workshop-intro{display:block;font-size:16px;line-height:1.6;margin-top:20px;color:var(--dd-muted)}
  .workshops-page .ws-hero-actions{margin-top:23px;gap:12px}
  .workshops-page .ws-hero-note{font-size:13px}
  .workshops-page .detail-orbit{opacity:.2}
  .workshops-page .ws-section{padding:34px 24px}
  .workshops-page .ws-heading{margin-bottom:22px;gap:5px}
  .workshops-page .ws-heading .kicker{display:none}
  .workshops-page .ws-heading h2{font-size:31px;line-height:1.15}
  .workshops-page .ws-heading p{font-size:15px;line-height:1.6;margin-top:14px}
  .workshops-page .ws-choices{box-shadow:none}
  .workshops-page .ws-choice>summary{grid-template-columns:22px minmax(0,1fr) 20px;gap:7px 10px;padding:19px 16px;min-height:0}
  .workshops-page .ws-choice-number{display:block;grid-column:1;grid-row:1;align-self:start;padding-top:3px;font-size:12px}
  .workshops-page .ws-choice-heading{grid-column:2;grid-row:1;gap:7px}
  .workshops-page .ws-choice-heading .ws-choice-title{font:500 19px/1.3 var(--ui-font);letter-spacing:-.025em;hyphens:none;overflow-wrap:normal}
  .workshops-page .ws-choice-heading>span{font-size:14px;line-height:1.5}
  .workshops-page .ws-choice-duration{grid-column:2;grid-row:2;justify-self:start;text-align:left;font-size:13px;color:var(--ws-accent)}
  .workshops-page .ws-choice-toggle{grid-column:3;grid-row:1/3}
  .workshops-page .ws-choice-body{grid-template-columns:minmax(0,1fr);padding:23px 16px;gap:24px}
  .workshops-page .ws-choice-price{padding:22px 18px}
  .workshops-page .ws-choice-copy.mb-extension .ws-company-wide{margin-top:0;padding:22px 18px}
  .workshops-page .ws-choice-copy.mb-extension .ws-company-wide .ws-detail-heading{font-size:20px}
  .workshops-page .ws-choice-copy.mb-extension .ws-company-wide p{font-size:15px;line-height:1.65}
  .workshops-page .ws-orientation,.workshops-page .ws-process-static{padding:24px;margin-top:24px}
  .workshops-page .ws-difference strong,.workshops-page .ws-process-heading{font-size:22px!important}
  .workshops-page .ws-steps{gap:21px;margin-top:24px}
  .workshops-page .ws-steps article{display:grid;grid-template-columns:26px minmax(0,1fr);gap:6px 10px}
  .workshops-page .ws-steps span{grid-column:1;grid-row:1/3;margin:0;padding-top:4px}
  .workshops-page .ws-steps h3{grid-column:2;font-size:22px;margin:0}
  .workshops-page .ws-steps p{grid-column:2}
  .workshops-page .ws-experience{gap:25px}
  .workshops-page .ws-person{max-width:220px;margin:0}
  .workshops-page .ws-experience h2,.workshops-page .ws-contact h2{font-size:32px;line-height:1.15}
}


/* Source: /site-quality-20260911.css */
/* Readability and compact topic pages; the established brand is retained. */
.quality-topic-page :is(.content-section,.sources,.detail-contact) p:not(.kicker),
.quality-topic-page :is(.content-section,.sources) li {font-size:1rem;line-height:1.7}
.quality-topic-page .hero-lead {font-size:1.0625rem;line-height:1.65}
.quality-topic-page :is(.kicker,.eyebrow,.failure-grid small,.project-experience-grid span,.keyword-list span,.hero-tags span) {font-size:.75rem;line-height:1.5}
.quality-topic-page .topic-nav a {font-size:.875rem;line-height:1.4;letter-spacing:.02em;padding:22px 24px}
.quality-topic-page .source-links a {font-size:.875rem;line-height:1.5;min-height:44px;display:inline-flex;align-items:center}
.quality-topic-page .section-head h2 {font-size:clamp(2.25rem,3.6vw,3.5rem);line-height:1.12}
.quality-topic-page .section-head {margin-bottom:42px}
.quality-topic-page .support-note {font-size:1.125rem!important}
.quality-topic-page .detail-contact a {font-size:1rem;line-height:1.5}
.quality-topic-page .source-note {color:var(--dd-muted)}
.quality-topic-page :is(.quality-topic-group,.sources,.detail-contact) {scroll-margin-top:calc(var(--bc-header-full,106px) + 16px)}
.quality-topic-group > summary {display:none}
.quality-section-nav {display:none}
.quality-topic-offers {display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:1320px;margin:0 auto;padding:28px var(--dd-gutter,24px);color:var(--dd-ink);border-bottom:1px solid var(--dd-line)}
.quality-topic-offers p {margin:0;font-size:1rem;line-height:1.6;color:var(--dd-muted)}
.quality-topic-offers a {font-size:1rem;line-height:1.4;font-weight:600;display:inline-flex;min-height:44px;align-items:center;border-bottom:1px solid currentColor;white-space:nowrap;color:#b9dd9f}
html[data-theme="light"] .quality-topic-offers a {color:#3f742d}
.bc-footer .bc-footer-links a,.bc-footer .bc-footer-description {font-size:.875rem;line-height:1.6}
.bc-footer .bc-footer-copyright {font-size:.75rem}
.legal-main :is(p,li) {font-size:1rem;line-height:1.7}
.ws-form[hidden] {display:none!important}
.ws-form-fallback {font-size:1rem;line-height:1.7}
.ws-form-fallback a {text-decoration:underline;text-underline-offset:4px}
.quality-noscript-language {padding:12px 24px;margin-top:var(--bc-header-full,106px);font:400 .875rem/1.5 var(--ui-font,Arial,sans-serif);display:flex;gap:24px}
.quality-noscript-language a {text-decoration:underline}
@media (max-width:700px) {
 .quality-topic-page .detail-hero {min-height:0;padding:calc(var(--bc-header-full,106px) + 30px) 24px 32px}
 .quality-topic-page .detail-hero-content {width:100%}
 .quality-topic-page .detail-hero h1 {font-size:clamp(2.125rem,9.5vw,2.875rem);line-height:1.12;hyphens:none;letter-spacing:-.035em;overflow-wrap:break-word;margin-bottom:22px}
 .quality-topic-page .hero-lead {font-size:1rem;line-height:1.65}
 .quality-topic-page .eyebrow {margin-bottom:20px;letter-spacing:.1em}
 .quality-topic-page .hero-tags {margin-top:22px;gap:6px}
 .quality-topic-page .hero-tags span {font-size:.75rem;padding:6px 8px;text-transform:none;letter-spacing:0}
 .quality-topic-page .detail-orbit {opacity:.25}
 .quality-topic-page .topic-nav {position:static;grid-template-columns:repeat(2,minmax(0,1fr));box-shadow:none;display:grid}
 .quality-topic-page .topic-nav a {font-size:.875rem;min-height:60px;padding:12px 18px;text-transform:none;letter-spacing:0}
 body.quality-topic-page .topic-nav a b {display:none}
 html[lang] body.quality-topic-page :is(.content-section,.sources) :is(h2,h3,p) {-webkit-hyphens:none;hyphens:none;overflow-wrap:break-word;word-break:normal}
 .quality-topic-page .quality-section-nav {display:flex;flex-wrap:wrap;gap:8px 18px;padding:18px 24px;border-bottom:1px solid var(--dd-line);background:var(--dd-page)}
 .quality-section-nav a {display:inline-flex;align-items:center;min-height:44px;font-size:.875rem;line-height:1.5;text-decoration:underline;text-underline-offset:4px;color:var(--dd-ink)}
 .quality-topic-page .content-section,.quality-topic-page .sources {padding:32px 24px}
 .quality-topic-page .section-head {display:block;margin-bottom:24px}
 .quality-topic-page .section-head .kicker {margin:0 0 12px}
 .quality-topic-page .section-head h2 {font-size:1.875rem;line-height:1.18;hyphens:none;overflow-wrap:break-word}
 .quality-topic-page .section-head p:not(.kicker) {margin-top:18px}
 .quality-topic-page :is(.definition-grid,.opportunity-grid,.method-flow,.failure-grid,.context-list,.landscape-grid,.support-grid,.project-experience-grid) {grid-template-columns:minmax(0,1fr);box-shadow:none}
 .quality-topic-page :is(.definition-grid article,.failure-grid article,.support-grid article,.landscape-card,.project-experience-grid article) {padding:24px 20px;min-height:0}
 .quality-topic-page :is(.definition-grid h3,.failure-grid h3,.support-grid h3,.landscape-card h3,.context-list h3,.opportunity-grid h3,.method-flow h3,.project-experience-grid h3) {font-size:1.4375rem;line-height:1.3}
 .quality-topic-page .method-flow {gap:26px}
 .quality-topic-page .method-flow::before {display:none}
 .quality-topic-page .method-flow article {padding:0}
 .quality-topic-page .method-dot {margin-bottom:16px}
 .quality-topic-page .context-list article {display:block;padding:24px 0}
 .quality-topic-page .context-list h3 {margin-bottom:12px}
 .quality-topic-page .audit-experience {padding:24px 20px;display:block}
 .quality-topic-page .audit-experience h3 {font-size:1.5rem;margin-top:16px}
 .quality-topic-page .failure-grid small {margin-bottom:14px}
 .quality-topic-page .quality-topic-group {margin:0;background:var(--dd-surface);border-top:1px solid var(--dd-line)}
 .quality-topic-page .quality-topic-group>summary {display:flex;align-items:center;justify-content:space-between;gap:16px;list-style:none;cursor:pointer;min-height:74px;padding:22px 24px;font:600 1.0625rem/1.4 var(--ui-font,Arial,sans-serif);color:var(--dd-ink)}
 .quality-topic-group>summary::-webkit-details-marker {display:none}
 .quality-topic-group>summary::after {content:'+';font-size:1.5rem;line-height:1;font-weight:400;color:#b9dd9f;flex:none}
 .quality-topic-group[open]>summary::after {content:'−'}
 html[data-theme="light"] .quality-topic-group>summary::after {color:#3f742d}
 .quality-topic-page .quality-topic-group>summary:focus-visible {outline:2px solid currentColor;outline-offset:-6px}
 .quality-topic-page .quality-topic-group .content-section {padding-top:24px;padding-bottom:28px}
 .quality-topic-page .quality-topic-offers {display:block;padding:24px}
 .quality-topic-offers a {margin-top:12px;white-space:normal}
 .quality-topic-page .sources h2 {font-size:1.75rem}
 .quality-topic-page .detail-contact {padding:34px 24px;display:block}
 .quality-topic-page .detail-contact h2 {font-size:2rem;line-height:1.15;hyphens:none}
 .quality-topic-page .detail-contact-copy {padding-top:20px}
 .quality-topic-page .detail-contact :is(p,a) {font-size:1rem}
}


/* Source: /consulting-entry-20260911.css */
/* A quiet, always-visible bridge from services to the full portfolio. */
.bc-consulting-entry {
  --entry-ink:#edf3e9; --entry-muted:#b9c5ba; --entry-accent:#b9dd9f;
  --entry-surface:#19271e; --entry-line:#344936;
  display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:40px;
  margin-top:52px; padding:40px; background:var(--entry-surface);
  scroll-margin-top:110px;
  border:1px solid var(--entry-line); border-left:3px solid #6bbd45; color:var(--entry-ink);
}
html[data-theme="light"] .bc-consulting-entry {
  --entry-ink:#18231b; --entry-muted:#526156; --entry-accent:#3f742d;
  --entry-surface:#edf3e8; --entry-line:#d2dec9;
}
.bc-consulting-entry .bc-consulting-eyebrow {
  margin:0 0 14px; color:var(--entry-accent); font:600 12px/1.5 var(--ui-font);
  letter-spacing:.13em; text-transform:uppercase;
}
.bc-consulting-entry h3 {margin:0 0 16px; font:400 clamp(25px,2.3vw,34px)/1.2 var(--display-font); letter-spacing:-.025em; color:var(--entry-ink)}
.bc-consulting-entry .bc-consulting-description {max-width:66ch; margin:0; color:var(--entry-muted); font:400 16px/1.65 var(--ui-font)}
.bc-consulting-entry .bc-consulting-link {
  display:inline-flex; align-items:center; justify-content:space-between; gap:22px; min-height:48px;
  padding:10px 0; border-bottom:1px solid var(--entry-accent); color:var(--entry-accent);
  font:600 15px/1.5 var(--ui-font); text-decoration:none;
}
.bc-consulting-link>span:first-child {max-width:24ch}
.bc-consulting-link>span:last-child {font-size:23px; font-weight:400}
.bc-consulting-link:hover {border-bottom-width:2px}
.bc-consulting-link:focus-visible {outline:2px solid var(--entry-accent); outline-offset:5px}
@media (max-width:1050px) {
  .bc-consulting-entry {grid-template-columns:minmax(0,1fr); gap:22px; padding:32px}
  .bc-consulting-entry .bc-consulting-link {justify-self:start}
  .bc-consulting-link>span:first-child {max-width:none}
}
@media (max-width:700px) {
  .mobile-home .mb-workshops .mb-eyebrow {letter-spacing:.09em}
  .mobile-home .mb-workshops .mb-text-link {display:flex; width:fit-content; line-height:1.5; padding-block:8px}
}

/* Shared phone header. Existing menus, theme controls and desktop layout remain. */
@media (max-width:700px) {
  html:has(#root .site-header), html:has(.detail-header), html:has(.legal-header), html[data-page-key="workshops-checks"] {
    --bc-header-full:108px; --bc-header-compact:108px;
  }
  #root .site-header, #root .site-header.is-compact,
  .detail-header:not(.ws-main-header), .detail-header:not(.ws-main-header).is-compact,
  .workshops-page .ws-main-header.ws-menu-ready, .workshops-page .ws-main-header.ws-menu-ready.is-compact,
  .legal-header, .legal-header.is-compact {
    display:grid !important;
    grid-template-columns:auto auto minmax(0,1fr) auto;
    grid-template-rows:52px 44px;
    align-items:center; gap:2px 12px;
    height:108px !important; min-height:108px !important;
    padding:5px 24px !important; box-sizing:border-box;
  }
  #root .site-header .header-actions,
  .detail-header:not(.ws-main-header) .detail-header-actions,
  .workshops-page .ws-main-header.ws-menu-ready .detail-header-actions,
  .legal-header .legal-header-actions { display:contents !important; }
  #root .site-header > a.brand,
  .detail-header:not(.ws-main-header) > a,
  .workshops-page .ws-main-header.ws-menu-ready .ws-header-brand,
  .legal-header > .legal-header-brand {
    grid-column:1 / 4; grid-row:1; justify-self:start; min-width:0; margin:0;
  }
  #root .site-header .brand-logo, #root .site-header.is-compact .brand-logo,
  .detail-header .detail-logo, .detail-header.is-compact .detail-logo,
  .workshops-page .ws-main-header .detail-logo, .workshops-page .ws-main-header.is-compact .detail-logo,
  .legal-header .legal-header-brand img, .legal-header.is-compact .legal-header-brand img {
    display:block; width:164px !important; height:auto !important; max-width:100%;
  }
  .workshops-page .ws-current-label { display:block; padding:4px 0 0 9px; font-size:11px; line-height:1.2; }
  #root .site-header .theme-toggle, .detail-header .theme-toggle, .legal-header .theme-toggle {
    grid-column:4; grid-row:1; justify-self:end; margin:0 !important; padding:0 !important;
    display:flex; align-items:center; justify-content:center;
    width:44px !important; min-width:44px !important; height:44px !important;
  }
  #root .site-header .theme-toggle-label, .detail-header .theme-toggle-label, .legal-header .theme-toggle-label { display:none !important; }
  #root .site-header .language, .detail-header .language, .legal-header .legal-language {
    grid-column:4; grid-row:2; justify-self:end; display:flex; gap:0 !important; margin:0 !important;
  }
  #root .site-header .language button, .detail-header .language button, .legal-header .language button {
    min-width:32px !important; min-height:44px !important; font-size:14px !important;
  }
  #root .site-header .language > span, .detail-header .language > span, .legal-header .language > span { width:8px; text-align:center; }
  #root .site-header .menu-button, .workshops-page .ws-menu-ready .ws-menu-button {
    grid-column:1; grid-row:2; justify-self:start; margin:0 !important;
    width:44px !important; min-width:44px !important; height:44px !important; padding:10px !important;
  }
  .detail-header:not(.ws-main-header) .back-link { grid-column:1; grid-row:2; }
  .detail-header:not(.ws-main-header) .detail-contact-link { grid-column:2; grid-row:2; }
  .detail-header:not(.ws-main-header) :is(.back-link,.detail-contact-link), .legal-header .legal-nav a {
    display:inline-flex; align-items:center; min-height:44px !important; padding-block:0 !important; font-size:14px !important;
  }
  .legal-header .legal-nav { grid-column:1 / 3; grid-row:2; display:flex; gap:18px; margin:0; }
  #root .site-header nav.open, .workshops-page .ws-menu-ready .ws-primary-nav.open { top:100%; }
  .quality-topic-page .detail-hero h1 { hyphens:manual; overflow-wrap:normal; }
  .ws-choice-title { margin:0; }
  .ws-process-context { font-size:15px; line-height:1.6; }
}
/* Heading levels describe the catalogue; classes retain the established styling. */
.ws-choice-title { margin:0; }
.ws-choice > summary > .ws-summary-heading {
  grid-column:1 / -1; display:grid; grid-template-columns:inherit;
  gap:inherit; align-items:inherit; margin:0; font:inherit; letter-spacing:inherit;
}
.ws-process-context { max-width:760px; color:var(--dd-muted); margin:18px 0 0; }

/* Phone experience panel: grouped content, readable names and calm brand surfaces. */
@media (max-width:700px) {
  html[lang] #root .mobile-home .mb-prose,
  html[lang] #root .mobile-home .mb-prose :is(h2,h3,h4,p,li,blockquote,span) {
    -webkit-hyphens:none; hyphens:none; word-break:normal; overflow-wrap:break-word;
  }
  #root .mobile-home #mb-profile-details > summary { font-weight:500; }
  #root .mobile-home #mb-profile-details > .mb-prose { padding:8px 0 0; }
  #root .mobile-home .mb-profile-heading { margin:0 0 20px; }
  #root .mobile-home .mb-profile-heading h3 { font-size:20px; line-height:1.3; margin:0 0 8px; }
  #root .mobile-home .mb-profile-heading p { font-size:14px; line-height:1.5; margin:0; }
  #root .mobile-home .mb-profile-intro p { font-size:16px; line-height:1.55; margin:0 0 14px; }
  #root .mobile-home .mb-profile-statement {
    margin:22px 0; padding:20px; border:0; border-left:3px solid #6bbd45;
    background:#24472b; color:#f5f8f1; font:400 16px/1.55 var(--ui-font);
  }
  #root .mobile-home .mb-profile-panel {
    margin:16px 0 0; padding:20px; background:var(--mb-page);
    border:1px solid var(--mb-line); color:var(--mb-muted);
  }
  #root .mobile-home .mb-profile-panel h4 {
    margin:0 0 14px; font:600 16px/1.4 var(--ui-font);
    letter-spacing:0; color:var(--mb-ink);
  }
  #root .mobile-home .mb-profile-panel ul { padding:0; margin:0; list-style:none; }
  #root .mobile-home :is(.mb-profile-facts,.mb-profile-strengths) li {
    margin:0; padding:12px 0; border-top:1px solid var(--mb-line);
    font:400 16px/1.5 var(--ui-font);
  }
  #root .mobile-home :is(.mb-profile-facts,.mb-profile-strengths) li:first-child { padding-top:0; border-top:0; }
  #root .mobile-home :is(.mb-profile-facts,.mb-profile-strengths) li:last-child { padding-bottom:0; }
  #root .mobile-home .mb-profile-certifications {
    background:#24472b; border-color:transparent; color:#f5f8f1;
  }
  #root .mobile-home .mb-profile-certifications h4 { color:#f5f8f1; }
  #root .mobile-home .mb-profile-certifications ul { display:flex; flex-wrap:wrap; gap:8px; }
  #root .mobile-home .mb-profile-certifications li {
    min-width:0; max-width:100%; margin:0; padding:7px 10px;
    background:rgba(255,255,255,.10); border:1px solid rgba(210,232,197,.35);
    font:500 14px/1.5 var(--ui-font); color:#f5f8f1;
  }
  #root .mobile-home .mb-profile-strengths { margin-bottom:22px; }
}

/* One shared project-card rhythm, without a special insurance layout. */
html[lang] #root .experience .sector-list {
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0;
  border-top:1px solid var(--line); border-left:1px solid var(--line);
}
html[lang] #root .experience .sector-list > article {
  display:flex; flex-direction:column; gap:0; min-height:0; min-width:0;
  padding:clamp(24px,2.5vw,36px); margin:0;
  border:0; border-right:1px solid var(--line); border-bottom:1px solid var(--line);
}
html[lang] #root .experience .sector-list > article > h3 {
  margin:0 0 20px; font:400 clamp(26px,2.1vw,34px)/1.2 var(--display-font);
  letter-spacing:-.025em; -webkit-hyphens:none; hyphens:none; overflow-wrap:break-word;
}
html[lang] #root .experience .sector-list > article > div { display:flex; flex-direction:column; flex:1; min-width:0; }
html[lang] #root .experience .sector-list > article p {
  max-width:none; margin:0 0 16px; font:400 16px/1.65 var(--ui-font);
}
html[lang] #root .experience .sector-list > article small {
  display:block; margin-top:auto; padding-top:8px;
  font:500 14px/1.6 var(--ui-font); letter-spacing:0; text-transform:none;
}
html[lang] #root .experience .sector-list > article > .arrow { display:none; }
@media(max-width:1000px) {
  html[lang] #root .experience .sector-list { grid-template-columns:minmax(0,1fr); }
}
@media(max-width:700px) {
  html[lang] #root .mobile-home .mb-project-list { display:grid; gap:16px; margin-top:24px; }
  html[lang] #root .mobile-home .mb-project-list > article {
    margin:0; padding:22px 18px; border:1px solid var(--mb-line); background:var(--mb-page);
  }
  html[lang] #root .mobile-home .mb-project-list h3 {
    margin:0 0 16px; font:600 20px/1.3 var(--ui-font); letter-spacing:0;
  }
  html[lang] #root .mobile-home .mb-project-list p { margin:0 0 14px; font:400 16px/1.6 var(--ui-font); }
  html[lang] #root .mobile-home .mb-project-list small {
    display:block; padding-top:4px; font:500 14px/1.55 var(--ui-font); letter-spacing:0; text-transform:none;
  }
}

/* Quiet, individually framed project tiles; content and interaction stay unchanged. */
html[lang] #root .experience .sector-list {
  --project-surface:#1a2b20;
  --project-border:rgba(185,221,159,.22);
  gap:clamp(20px,2vw,28px); border:0;
}
html[lang][data-theme="light"] #root .experience .sector-list {
  --project-surface:#fafbf7;
  --project-border:#d3decd;
}
html[lang] #root .experience .sector-list > article {
  border:1px solid var(--project-border); background:var(--project-surface);
  border-radius:0; box-shadow:none; transform:none; transition:none; cursor:default;
}
html[lang] #root .experience .sector-list > article:hover {
  border-color:var(--project-border); background:var(--project-surface);
  box-shadow:none; transform:none;
}
@media(max-width:700px) {
  html[lang] #root .mobile-home .mb-project-list { gap:18px; }
  html[lang] #root .mobile-home .mb-project-list > article {
    border-radius:0; box-shadow:none; transform:none; transition:none; cursor:default;
  }
}

/* Standalone consulting card immediately before mobile contact. */
@media (max-width: 700px) {
  .mobile-home .mb-consulting > .mb-workshops { margin-top: 0; }
}
