/* Source: /deep-dive-v5.css */
/* Bergermann Consulting — final boutique alignment for all deep-dive pages. */

:root {
  --dd-max: 1320px;
  --dd-gutter: clamp(24px, 5vw, 72px);
  --dd-green: #67b346;
  --dd-green-deep: #315f2b;
  --dd-ink: #eef2ed;
  --dd-muted: #aab5ad;
  --dd-page: #0e1410;
  --dd-surface: #141c17;
  --dd-surface-2: #19251e;
  --dd-surface-3: #203127;
  --dd-line: rgba(185, 221, 159, 0.16);
  --dd-shadow: 0 28px 70px rgba(0, 0, 0, 0.22);
}

html,
body {
  overflow-x: hidden;
  overflow-x: clip;
}

body {
  background: var(--dd-page);
  color: var(--dd-ink);
}

.detail-header {
  height: 94px;
  padding-inline: max(var(--dd-gutter), calc((100vw - var(--dd-max)) / 2));
  background: rgba(14, 20, 16, 0.88);
  border-bottom-color: rgba(185, 221, 159, 0.14);
  backdrop-filter: blur(18px);
}

.detail-logo {
  width: clamp(225px, 16vw, 285px);
}

.detail-header-actions {
  gap: 22px;
}

.detail-hero {
  min-height: clamp(620px, 74vh, 760px);
  padding: 156px max(var(--dd-gutter), calc((100vw - var(--dd-max)) / 2)) 92px;
  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%);
}

.detail-hero::before {
  opacity: 0.62;
  background-size: 86px 86px;
}

.detail-hero-content {
  width: min(900px, 76%);
}

.detail-hero h1 {
  max-width: 960px;
  margin-bottom: 30px;
  font-size: clamp(48px, 5vw, 82px);
  line-height: 1.01;
  letter-spacing: -0.045em;
  text-wrap: balance;
  overflow-wrap: normal;
}

.hero-lead {
  max-width: 760px;
  color: rgba(238, 242, 237, 0.72);
  font-size: clamp(15px, 1.25vw, 18px);
}

.hero-tags {
  max-width: 980px;
  margin-top: 38px;
}

.hero-tags span {
  max-width: 100%;
  overflow-wrap: break-word;
  color: #cee8bf;
  background: rgba(103, 179, 70, 0.08);
  border-color: rgba(185, 221, 159, 0.31);
}

.detail-orbit {
  right: max(-150px, calc((100vw - var(--dd-max)) / 2 - 250px));
  border-color: rgba(103, 179, 70, 0.28);
}

.topic-nav {
  position: sticky;
  top: 0;
  z-index: 15;
  grid-template-columns: repeat(4, minmax(0, calc(var(--dd-max) / 4)));
  justify-content: center;
  background: #131a16;
  border-color: var(--dd-line);
  box-shadow: 0 14px 38px rgba(4, 9, 6, 0.24);
}

.topic-nav a {
  min-width: 0;
  padding: 25px 28px;
  color: rgba(238, 242, 237, 0.72);
  border-color: var(--dd-line);
  font-size: 10px;
  letter-spacing: 0.08em;
}

.topic-nav a:hover {
  color: #fff;
  background: #1c2921;
}

.topic-nav a.active {
  color: #fff;
  background:
    linear-gradient(105deg, #3f7438 0%, #2f5b32 100%);
  box-shadow: inset 0 3px 0 var(--dd-green);
}

.topic-nav b {
  color: var(--dd-green);
}

.content-section,
.sources {
  position: relative;
  padding: clamp(86px, 8vw, 128px) var(--dd-gutter);
  color: var(--dd-ink);
  background: var(--dd-surface);
  border-top: 1px solid rgba(185, 221, 159, 0.09);
}

.content-section > *,
.sources > * {
  width: min(100%, var(--dd-max));
  margin-inline: auto;
}

.content-section:nth-of-type(odd) {
  background:
    radial-gradient(circle at 92% 8%, rgba(103, 179, 70, 0.075), transparent 30%),
    var(--dd-surface);
}

.content-section:nth-of-type(even) {
  background:
    radial-gradient(circle at 8% 94%, rgba(103, 179, 70, 0.065), transparent 28%),
    var(--dd-surface-2);
}

.section-head {
  grid-template-columns: minmax(190px, 25%) minmax(0, 1fr);
  gap: clamp(44px, 7vw, 104px);
  margin-bottom: clamp(52px, 6vw, 78px);
}

.section-head > div {
  min-width: 0;
}

.detail-hero-content,
.topic-nav a,
.definition-grid > *,
.failure-grid > *,
.support-grid > *,
.landscape-grid > *,
.method-flow > *,
.opportunity-grid > * {
  min-width: 0;
}

.section-head h2 {
  max-width: 900px;
  font-size: clamp(42px, 4.6vw, 68px);
  line-height: 1.035;
  letter-spacing: -0.04em;
  text-wrap: balance;
  overflow-wrap: normal;
}

.section-head p:not(.kicker) {
  max-width: 720px;
  color: var(--dd-muted);
  font-size: 14px;
}

.kicker {
  color: #9bd57f;
  font-size: 11px;
  letter-spacing: 0.22em;
}

.definition-grid,
.failure-grid,
.support-grid,
.landscape-grid {
  background: var(--dd-line);
  border-color: var(--dd-line);
  box-shadow: var(--dd-shadow);
}

.definition-grid article,
.failure-grid article,
.support-grid article,
.landscape-card {
  color: var(--dd-ink);
  background: rgba(255, 255, 255, 0.025);
}

.definition-grid article,
.failure-grid article,
.support-grid article,
.landscape-card,
.project-experience-grid article {
  padding: clamp(34px, 3.2vw, 48px);
}

.definition-grid h3,
.opportunity-grid h3,
.support-grid h3,
.failure-grid h3,
.landscape-card h3,
.context-list h3 {
  color: var(--dd-ink);
}

.definition-grid p,
.failure-grid p,
.support-grid p,
.landscape-card > p,
.context-list p,
.project-experience-grid p {
  color: var(--dd-muted);
}

.definition-grid blockquote,
.support-note {
  color: #cfe8c0;
}

.opportunity {
  background:
    radial-gradient(circle at 80% 16%, rgba(103, 179, 70, 0.18), transparent 28%),
    linear-gradient(132deg, #1b2b21 0%, #24402b 100%);
}

.opportunity-grid {
  border-color: rgba(185, 221, 159, 0.18);
}

.opportunity-grid article {
  border-color: rgba(185, 221, 159, 0.18);
}

.opportunity-grid p {
  color: #b8c8bc;
}

.method {
  background:
    linear-gradient(rgba(255, 255, 255, 0.018), rgba(255, 255, 255, 0.018)),
    radial-gradient(circle at 88% 28%, rgba(103, 179, 70, 0.20), transparent 33%),
    linear-gradient(120deg, #0d1510, #1a2b20 62%, #243b2b);
  border-color: rgba(185, 221, 159, 0.13);
}

.method .section-head p:not(.kicker),
.method-flow p {
  color: #aebbb1;
}

.method-flow::before {
  background: rgba(185, 221, 159, 0.20);
}

.method-dot {
  background: var(--dd-green);
  box-shadow: 0 0 0 7px #15241a;
}

.failure-grid small,
.project-experience-grid span,
.keyword-list span {
  color: #9bd57f;
}

.context-band {
  background:
    radial-gradient(circle at 10% 22%, rgba(103, 179, 70, 0.13), transparent 25%),
    linear-gradient(128deg, #1a251e, #24342a);
}

.context-list {
  border-color: rgba(185, 221, 159, 0.18);
}

.context-list article {
  border-color: rgba(185, 221, 159, 0.18);
}

.context-list em {
  color: #a6d88c;
}

.project-experience {
  background:
    radial-gradient(circle at 88% 12%, rgba(103, 179, 70, 0.18), transparent 30%),
    radial-gradient(circle at 10% 92%, rgba(73, 119, 81, 0.14), transparent 28%),
    linear-gradient(128deg, #0f1712, #1b2920);
  color: var(--dd-ink);
}

.project-experience::after {
  border-color: rgba(185, 221, 159, 0.15);
}

.project-experience .section-head p:not(.kicker) {
  color: var(--dd-muted);
}

.project-experience-grid {
  border-color: rgba(185, 221, 159, 0.18);
  background: rgba(255, 255, 255, 0.018);
  box-shadow: var(--dd-shadow);
}

.project-experience-grid article {
  min-height: 240px;
  background: rgba(255, 255, 255, 0.025);
  border-color: rgba(185, 221, 159, 0.16);
}

.project-experience-grid h3 {
  color: var(--dd-ink);
}

.project-experience blockquote {
  color: #cce6bd;
}

.regulatory-landscape {
  background:
    radial-gradient(circle at 86% 12%, rgba(103, 179, 70, 0.11), transparent 28%),
    var(--dd-surface-2);
}

.keyword-list span {
  background: rgba(103, 179, 70, 0.07);
  border-color: rgba(185, 221, 159, 0.20);
}

.audit-experience {
  width: min(100%, var(--dd-max));
  margin: 24px auto 0;
  color: var(--dd-ink);
  background:
    radial-gradient(circle at 85% 18%, rgba(103, 179, 70, 0.18), transparent 34%),
    linear-gradient(118deg, #1a2b20 0%, #233b2a 100%);
  border-color: rgba(103, 179, 70, 0.32);
  border-left-color: var(--dd-green);
  box-shadow: var(--dd-shadow);
}

.audit-experience h3,
.audit-experience .kicker,
.audit-experience strong {
  color: #d5ebc8;
}

.audit-experience p {
  color: #b4c1b7;
}

.support {
  background:
    radial-gradient(circle at 14% 20%, rgba(103, 179, 70, 0.08), transparent 26%),
    var(--dd-surface);
}

.support-grid article::before {
  background: var(--dd-green);
}

.sources {
  background: #111914;
  border-color: rgba(185, 221, 159, 0.11);
}

.sources h2 {
  color: var(--dd-ink);
}

.source-links a {
  color: #c2cec5;
  background: rgba(255, 255, 255, 0.025);
  border-color: rgba(185, 221, 159, 0.18);
}

.source-note {
  color: #87938a;
}

.detail-contact {
  padding: clamp(86px, 8vw, 124px) max(var(--dd-gutter), calc((100vw - var(--dd-max)) / 2));
  background:
    radial-gradient(circle at 82% 24%, rgba(255, 255, 255, 0.14), transparent 27%),
    linear-gradient(122deg, #2d6328 0%, #478b35 58%, #67b346 100%);
}

.detail-contact h2 {
  max-width: 760px;
  text-wrap: balance;
}

.detail-footer {
  padding-inline: max(var(--dd-gutter), calc((100vw - var(--dd-max)) / 2));
  background: #090e0b;
}

.detail-footer img {
  width: clamp(190px, 15vw, 230px);
}

/* Light mode retains the same hierarchy with stronger, readable surfaces. */
html[data-theme="light"] {
  --dd-ink: #151a16;
  --dd-muted: #59635b;
  --dd-page: #eef1eb;
  --dd-surface: #f7f7f2;
  --dd-surface-2: #edf2e9;
  --dd-surface-3: #dfe9da;
  --dd-line: rgba(49, 95, 43, 0.18);
  --dd-shadow: 0 26px 68px rgba(45, 61, 48, 0.10);
}

html[data-theme="light"] body {
  background: var(--dd-page);
  color: var(--dd-ink);
}

html[data-theme="light"] .detail-header {
  color: var(--dd-ink);
  background: rgba(244, 246, 240, 0.90);
  border-bottom-color: rgba(49, 95, 43, 0.16);
}

html[data-theme="light"] .detail-hero {
  color: var(--dd-ink);
  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%);
}

html[data-theme="light"] .detail-hero h1 {
  color: #101511;
}

html[data-theme="light"] .detail-hero .eyebrow {
  color: #326b28;
}

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

html[data-theme="light"] .hero-tags span {
  color: #315f2b;
  background: rgba(255, 255, 255, 0.42);
  border-color: rgba(49, 95, 43, 0.28);
}

html[data-theme="light"] .topic-nav {
  background: #edf2e9;
  border-color: var(--dd-line);
  box-shadow: 0 14px 38px rgba(45, 61, 48, 0.10);
}

html[data-theme="light"] .topic-nav a {
  color: #4e5950;
  border-color: var(--dd-line);
}

html[data-theme="light"] .topic-nav a:hover {
  color: #183315;
  background: #e1eadc;
}

html[data-theme="light"] .topic-nav a.active {
  color: #17361b;
  background: linear-gradient(105deg, #dcefd5, #c6e1bc);
  box-shadow: inset 0 3px 0 #5eaa43;
}

html[data-theme="light"] .content-section,
html[data-theme="light"] .sources {
  color: var(--dd-ink);
  background: var(--dd-surface);
  border-color: rgba(49, 95, 43, 0.12);
}

html[data-theme="light"] .content-section:nth-of-type(odd) {
  background:
    radial-gradient(circle at 92% 8%, rgba(103, 179, 70, 0.10), transparent 30%),
    #f7f7f2;
}

html[data-theme="light"] .content-section:nth-of-type(even) {
  background:
    radial-gradient(circle at 8% 94%, rgba(103, 179, 70, 0.09), transparent 28%),
    #edf2e9;
}

html[data-theme="light"] .kicker {
  color: #315f2b;
}

html[data-theme="light"] .failure-grid small {
  color: #315f2b;
}

html[data-theme="light"] .section-head p:not(.kicker),
html[data-theme="light"] .definition-grid p,
html[data-theme="light"] .failure-grid p,
html[data-theme="light"] .support-grid p,
html[data-theme="light"] .landscape-card > p,
html[data-theme="light"] .context-list p,
html[data-theme="light"] .project-experience-grid p {
  color: var(--dd-muted);
}

html[data-theme="light"] .definition-grid article,
html[data-theme="light"] .failure-grid article,
html[data-theme="light"] .support-grid article,
html[data-theme="light"] .landscape-card {
  color: var(--dd-ink);
  background: rgba(255, 255, 255, 0.74);
}

html[data-theme="light"] .definition-grid h3,
html[data-theme="light"] .opportunity-grid h3,
html[data-theme="light"] .support-grid h3,
html[data-theme="light"] .failure-grid h3,
html[data-theme="light"] .landscape-card h3,
html[data-theme="light"] .context-list h3 {
  color: var(--dd-ink);
}

html[data-theme="light"] .definition-grid blockquote,
html[data-theme="light"] .support-note {
  color: #315f2b;
}

html[data-theme="light"] .opportunity {
  background:
    radial-gradient(circle at 80% 16%, rgba(103, 179, 70, 0.22), transparent 29%),
    linear-gradient(132deg, #dcead5 0%, #cfe2c6 100%);
}

html[data-theme="light"] .opportunity-grid p {
  color: #4e5d4f;
}

html[data-theme="light"] .context-band {
  background:
    radial-gradient(circle at 10% 22%, rgba(103, 179, 70, 0.17), transparent 25%),
    linear-gradient(128deg, #e0e9dc, #d6e3d1);
}

html[data-theme="light"] .context-list {
  border-color: var(--dd-line);
}

html[data-theme="light"] .context-list article {
  border-color: var(--dd-line);
}

html[data-theme="light"] .context-list em {
  color: #315f2b;
}

html[data-theme="light"] .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"] .project-experience h2,
html[data-theme="light"] .project-experience h3 {
  color: #f3f7f1;
}

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

html[data-theme="light"] .project-experience-grid article {
  background: rgba(255, 255, 255, 0.025);
}

html[data-theme="light"] .project-experience blockquote {
  color: #d5ebc8;
}

html[data-theme="light"] .regulatory-landscape {
  background:
    radial-gradient(circle at 86% 12%, rgba(103, 179, 70, 0.12), transparent 28%),
    #e8eee5;
}

html[data-theme="light"] .keyword-list span {
  color: #3f6336;
  background: #f5f8f2;
  border-color: rgba(49, 95, 43, 0.20);
}

html[data-theme="light"] .audit-experience {
  color: #f2f6ef;
  background:
    radial-gradient(circle at 85% 18%, rgba(103, 179, 70, 0.22), transparent 34%),
    linear-gradient(118deg, #244426 0%, #3a6831 100%);
  border-color: rgba(49, 95, 43, 0.34);
  border-left-color: #79c956;
}

html[data-theme="light"] .audit-experience h3,
html[data-theme="light"] .audit-experience .kicker,
html[data-theme="light"] .audit-experience strong {
  color: #f2f7ef;
}

html[data-theme="light"] .audit-experience p {
  color: rgba(239, 245, 236, 0.76);
}

html[data-theme="light"] .support {
  background:
    radial-gradient(circle at 14% 20%, rgba(103, 179, 70, 0.10), transparent 26%),
    #f4f6f0;
}

html[data-theme="light"] .sources {
  background: #e3e9df;
}

html[data-theme="light"] .sources h2 {
  color: var(--dd-ink);
}

html[data-theme="light"] .source-links a {
  color: #47534a;
  background: rgba(255, 255, 255, 0.72);
  border-color: rgba(49, 95, 43, 0.18);
}

html[data-theme="light"] .source-note {
  color: #677168;
}

@media (hover: hover) {
  .definition-grid article:hover,
  .failure-grid article:hover,
  .support-grid article:hover,
  .landscape-card:hover {
    background: rgba(255, 255, 255, 0.07);
    box-shadow: 0 22px 52px rgba(0, 0, 0, 0.16);
  }

  html[data-theme="light"] .definition-grid article:hover,
  html[data-theme="light"] .failure-grid article:hover,
  html[data-theme="light"] .support-grid article:hover,
  html[data-theme="light"] .landscape-card:hover {
    background: #fff;
    box-shadow: 0 20px 48px rgba(45, 61, 48, 0.12);
  }
}

@media (max-width: 900px) {
  .detail-header {
    padding-inline: var(--dd-gutter);
  }

  .detail-hero {
    min-height: 650px;
    padding: 146px var(--dd-gutter) 82px;
  }

  .detail-hero-content {
    width: 100%;
  }

  .detail-hero h1 {
    max-width: 760px;
    font-size: clamp(48px, 8vw, 68px);
  }

  .detail-orbit {
    right: -240px;
  }

  .topic-nav {
    position: static;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .topic-nav a:nth-child(2) {
    border-right: 0;
  }

  .topic-nav a:nth-child(-n + 2) {
    border-bottom: 1px solid var(--dd-line);
  }

  .content-section,
  .sources {
    padding-inline: var(--dd-gutter);
  }

  .section-head {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .section-head .kicker {
    margin-bottom: 10px;
  }

  .project-experience-grid article {
    min-height: 0;
  }

  .detail-contact,
  .detail-footer {
    padding-inline: var(--dd-gutter);
  }
}

@media (max-width: 600px) {
  :root {
    --dd-gutter: 24px;
  }

  .detail-header {
    height: 76px;
    background: rgba(14, 20, 16, 0.96);
  }

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

  .detail-logo {
    width: 178px;
  }

  .detail-hero {
    min-height: 610px;
    padding: 124px 24px 68px;
  }

  .detail-hero h1 {
    font-size: clamp(43px, 12.5vw, 55px);
    line-height: 1;
    max-width: 100%;
    overflow-wrap: anywhere;
    hyphens: auto;
  }

  .hero-lead {
    font-size: 15px;
    line-height: 1.62;
  }

  .hero-tags {
    gap: 7px;
    margin-top: 30px;
  }

  .hero-tags span {
    overflow-wrap: break-word;
    padding: 8px 10px;
    font-size: 8px;
  }

  .topic-nav {
    grid-template-columns: 1fr 1fr;
  }

  .topic-nav a,
  .topic-nav a:nth-child(2) {
    min-height: 72px;
    padding: 16px 18px;
    align-items: center;
    border-right: 1px solid var(--dd-line);
    border-bottom: 1px solid var(--dd-line) !important;
    font-size: 9px;
    line-height: 1.35;
  }

  .topic-nav a:nth-child(2n) {
    border-right: 0;
  }

  .topic-nav a:nth-last-child(-n + 2) {
    border-bottom: 0 !important;
  }

  .topic-nav a.active {
    color: #edf7e9;
    background: linear-gradient(105deg, #315d34, #254b2c);
    box-shadow: inset 0 3px 0 var(--dd-green);
  }

  html[data-theme="light"] .topic-nav a.active {
    color: #17361b;
    background: linear-gradient(105deg, #dcefd5, #c6e1bc);
    box-shadow: inset 0 3px 0 #5eaa43;
  }

  .content-section,
  .sources {
    padding: 72px 24px;
  }

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

  .section-head h2 {
    max-width: 100%;
    font-size: clamp(38px, 10.8vw, 48px);
    overflow-wrap: break-word;
    word-break: normal;
    hyphens: auto;
  }

  .section-head p:not(.kicker) {
    font-size: 14px;
    line-height: 1.65;
  }

  .kicker {
    font-size: 10px;
  }

  .definition-grid article,
  .failure-grid article,
  .support-grid article,
  .landscape-card,
  .project-experience-grid article {
    padding: 30px 25px;
  }

  .definition-grid h3,
  .opportunity-grid h3,
  .support-grid h3,
  .failure-grid h3,
  .landscape-card h3,
  .context-list h3 {
    font-size: 25px;
  }

  .method-flow {
    gap: 38px;
  }

  .method-dot {
    margin-bottom: 18px;
  }

  .context-list article {
    padding: 28px 0;
  }

  .audit-experience {
    padding: 30px 25px;
  }

  .audit-experience h3 {
    font-size: 27px;
  }

  .detail-contact {
    padding: 72px 24px;
  }

  .detail-contact h2 {
    font-size: clamp(39px, 10.5vw, 48px);
  }

  .detail-footer {
    padding: 28px 24px;
  }
}

@media (min-width: 1800px) {
  .detail-hero h1,
  .section-head h2 {
    max-width: 900px;
  }

  .content-section,
  .sources {
    padding-top: 112px;
    padding-bottom: 112px;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.001ms !important;
  }
}

/*
 * Keep the process section independent from the alternating generic section
 * surfaces. The more specific nth-of-type selectors otherwise replace only
 * its background while leaving the process typography in the contrast colour.
 */
body .content-section.method {
  color: #eef2ed;
  background:
    linear-gradient(rgba(255, 255, 255, 0.018), rgba(255, 255, 255, 0.018)),
    radial-gradient(circle at 88% 28%, rgba(103, 179, 70, 0.20), transparent 33%),
    linear-gradient(120deg, #0d1510, #1a2b20 62%, #243b2b);
  border-color: rgba(185, 221, 159, 0.13);
}

body .content-section.method h2,
body .content-section.method h3 {
  color: #f4f7f2;
}

body .content-section.method .section-head p:not(.kicker),
body .content-section.method .method-flow p {
  color: #aebbb1;
}

html[data-theme="light"] body .content-section.method {
  color: #17331e;
  background:
    radial-gradient(circle at 88% 28%, rgba(103, 179, 70, 0.25), transparent 33%),
    linear-gradient(120deg, #dfeeda 0%, #c7dfbd 60%, #a8cf96 100%);
  border-color: rgba(49, 95, 43, 0.24);
}

html[data-theme="light"] body .content-section.method h2,
html[data-theme="light"] body .content-section.method h3 {
  color: #17331e;
}

html[data-theme="light"] body .content-section.method .kicker {
  color: #2f7130;
}

html[data-theme="light"] body .content-section.method .section-head p:not(.kicker),
html[data-theme="light"] body .content-section.method .method-flow p {
  color: #354b3a;
}

html[data-theme="light"] body .content-section.method .method-flow::before {
  background: rgba(23, 51, 30, 0.22);
}

html[data-theme="light"] body .content-section.method .method-dot {
  background: #67b346;
  box-shadow: 0 0 0 7px #c7dfbd;
}


/* 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-20260911.css */
.workshops-page{--ws-accent:#b9dd9f;--ws-action:#a6ce89;--ws-button-ink:#15230e;--ws-soft:rgba(185,221,159,.07)}
.ws-skip{position:fixed;top:8px;left:16px;z-index:3000;padding:12px 18px;background:#fff;color:#172212;transform:translateY(-200%)}.ws-skip:focus{transform:none}
html[data-theme="light"] .workshops-page{--ws-accent:#3f742d;--ws-action:#3f742d;--ws-button-ink:#fff;--ws-soft:rgba(103,179,70,.07)}
.ws-wrap{width:min(100%,1320px);margin-inline:auto}
.ws-section{padding:clamp(64px,7vw,108px) max(24px,5vw);border-top:1px solid var(--dd-line);background:var(--dd-page)}
.ws-section.alt{background:var(--dd-surface)}
.ws-section h2{font-size:clamp(36px,4vw,62px);font-weight:400;line-height:1.07;letter-spacing:-.035em;margin:0;text-wrap:balance}
.ws-section p{font-size:16px;line-height:1.7}
.ws-section .kicker{font-size:14px;color:var(--ws-accent);margin-bottom:24px}
.ws-hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:32px}
.ws-button{min-height:48px;display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:15px 20px;font:500 14px/1.3 var(--ui-font);letter-spacing:.025em;background:var(--ws-action);color:var(--ws-button-ink);border:1px solid transparent;cursor:pointer;transition:background .2s,transform .2s}
.ws-button:hover{filter:brightness(1.08);transform:translateY(-2px)}
.ws-button svg{width:17px;height:17px;flex-shrink:0;stroke:currentColor;fill:none;stroke-width:1.5}
.ws-hero-note{font-size:14px;color:var(--dd-muted);line-height:1.6;max-width:390px}
.detail-hero .ws-hero-note{color:inherit;opacity:.85}
.ws-jump{border-top:1px solid var(--dd-line);border-bottom:1px solid var(--dd-line);background:var(--dd-surface)}
.ws-jump .ws-wrap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.ws-jump a{padding:23px 28px;font-size:14px;line-height:1.5;border-right:1px solid var(--dd-line);transition:background .2s;min-width:0}
.ws-jump a:last-child{border-right:0}.ws-jump a:hover{background:var(--ws-soft)}
.ws-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;padding:36px 0 0}
.ws-facts p{margin:0;font-size:14px;color:var(--dd-muted);line-height:1.6}.ws-facts strong{font-weight:600;color:var(--dd-ink);display:block;margin-bottom:5px;font-size:15px}
.ws-heading{display:grid;grid-template-columns:1fr 2fr;gap:clamp(28px,5vw,80px);margin-bottom:44px}
.ws-heading .kicker{padding-top:6px}.ws-heading p:not(.kicker){max-width:720px;color:var(--dd-muted);margin:22px 0 0}
.ws-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-left:1px solid var(--dd-line);border-top:1px solid var(--dd-line);box-shadow:var(--dd-shadow)}
.ws-card{min-width:0;padding:32px;display:flex;flex-direction:column;background:var(--dd-surface);border-right:1px solid var(--dd-line);border-bottom:1px solid var(--dd-line);scroll-margin-top:108px;position:relative}
.ws-card:nth-child(3){background:var(--dd-surface-2)}
.ws-card-top{display:flex;justify-content:space-between;gap:12px;color:var(--ws-accent);font-size:12px;letter-spacing:.1em;text-transform:uppercase;line-height:1.5;margin-bottom:26px}
.ws-card-top span:last-child{font-variant-numeric:tabular-nums;opacity:.75}
.ws-card h3{font:400 clamp(28px,2.4vw,36px)/1.13 var(--display-font);letter-spacing:-.025em;text-wrap:balance;margin:0 0 16px;min-height:2.3em;color:var(--dd-ink)}
.ws-card p{margin:0 0 22px;color:var(--dd-muted);font-size:16px}
.ws-card .ws-card-tag{margin:0 0 14px;color:var(--ws-accent);font-size:14px;font-weight:500}
.ws-meta{display:flex;flex-direction:column;gap:7px;border-top:1px solid var(--dd-line);border-bottom:1px solid var(--dd-line);padding:18px 0;margin:0 0 22px;font-size:14px;line-height:1.5;color:var(--dd-muted)}
.ws-meta span:first-child{color:var(--dd-ink);font-weight:600}
.ws-results{padding:0;margin:0 0 22px;list-style:none}
.ws-results li{font-size:15px;line-height:1.55;position:relative;padding-left:17px;margin:10px 0;color:var(--dd-ink)}
.ws-results li::before{content:"";position:absolute;top:.65em;left:0;width:4px;height:4px;background:var(--ws-accent)}
.ws-results-label{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--ws-accent)}
.ws-details{border-top:1px solid var(--dd-line);margin-bottom:28px;font-size:14px}
.ws-details summary{display:flex;justify-content:space-between;align-items:center;gap:14px;cursor:pointer;padding:15px 0;list-style:none;min-height:48px}
.ws-details summary::-webkit-details-marker{display:none}.ws-details summary::after{content:"+";font-size:23px;font-weight:300;color:var(--ws-accent)}.ws-details[open] summary::after{content:"−"}
.ws-details p{font-size:14px;margin-bottom:15px}.ws-details .ws-audience{color:var(--dd-ink)}
.ws-card-bottom{margin-top:auto}
.ws-price{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:5px;font-family:var(--display-font);font-size:40px;line-height:1.15;letter-spacing:-.03em;color:var(--dd-ink);font-variant-numeric:lining-nums}
.ws-price small{font:400 14px/1.4 var(--ui-font);letter-spacing:0;color:var(--dd-muted)}
.ws-included{font-size:12px;color:var(--dd-muted);line-height:1.6;margin-bottom:22px}
.ws-card .ws-button{width:100%;margin-bottom:15px}.ws-download{display:inline-flex;gap:7px;align-items:center;font-size:14px;line-height:1.5;color:var(--ws-accent);min-height:44px;border-bottom:1px solid var(--dd-line)}.ws-download:hover{border-bottom-color:var(--ws-accent)}.ws-download small{font-size:12px;color:var(--dd-muted)}
.ws-difference{display:grid;grid-template-columns:1fr 2fr;gap:clamp(28px,5vw,80px);padding-top:30px;margin-top:15px}
.ws-difference strong{font-family:var(--display-font);font-size:24px;font-weight:400}.ws-difference p{margin:0;font-size:15px;color:var(--dd-muted)}
.ws-cards.secondary{grid-template-columns:repeat(2,minmax(0,1fr))}.secondary .ws-card{padding:40px;background:var(--dd-page)}.secondary .ws-card h3{max-width:440px;min-height:0}.secondary .ws-card .ws-button{width:auto;min-width:230px}.secondary .ws-card-bottom{display:flex;align-items:end;justify-content:space-between;gap:25px;flex-wrap:wrap}.secondary .ws-card .ws-download{display:flex;width:max-content}
.ws-special{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(36px,6vw,100px)}
.ws-special p{color:var(--dd-muted);max-width:630px}.ws-special .ws-special-lead{font-size:19px;color:var(--dd-ink)}
.ws-special-panel{border:1px solid var(--dd-line);padding:36px;background:var(--dd-surface);align-self:start}.ws-special-panel>p{margin:0 0 20px;color:var(--dd-ink);font-weight:500}.ws-phases{display:flex;flex-wrap:wrap;gap:8px 16px;color:var(--dd-muted);font-size:14px;line-height:1.7;border-bottom:1px solid var(--dd-line);padding-bottom:24px}
.ws-tiers{display:grid;grid-template-columns:1fr 1fr;padding:28px 0;gap:22px}.ws-tiers>div+div{border-left:1px solid var(--dd-line);padding-left:22px}.ws-tiers .ws-price{font-size:38px}.ws-tiers span{font-size:14px;color:var(--dd-muted)}.ws-special-panel .ws-button{width:100%;margin:12px 0}.ws-special-panel .ws-download{margin-top:5px}
.ws-experience{display:grid;grid-template-columns:.7fr 1.3fr;gap:clamp(36px,7vw,110px);align-items:center}
.ws-person{max-width:365px;position:relative;margin:0}.ws-person::after{content:"";position:absolute;top:0;bottom:0;right:-12px;width:2px;background:#6bbd45}.ws-person img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}.ws-person figcaption{font:400 22px/1.35 var(--display-font);padding-top:19px}.ws-person figcaption span{display:block;margin-top:8px;font:400 12px/1.5 var(--ui-font);text-transform:uppercase;letter-spacing:.12em;color:var(--dd-muted)}
.ws-experience p{color:var(--dd-muted);max-width:710px}.ws-experience .ws-boundary{border-left:2px solid var(--dd-line);padding-left:20px;font-size:14px;margin-top:28px}
.ws-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:36px;margin-top:54px}
.ws-steps article{border-top:1px solid var(--dd-line);padding-top:22px}.ws-steps span{display:block;font-size:14px;color:var(--ws-accent);margin-bottom:22px}.ws-steps h3{font:400 27px/1.2 var(--display-font);margin:0 0 15px}.ws-steps p{font-size:15px;color:var(--dd-muted);margin:0}
.ws-contact{background:linear-gradient(120deg,#24412b,#426c34);color:#fff}.ws-contact .ws-wrap{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(36px,7vw,110px)}.ws-contact h2{max-width:620px}.ws-contact .kicker{color:#e1efd8}.ws-contact p{color:#e4eddf}.ws-contact .ws-direct{margin-top:28px}.ws-direct a{border-bottom:1px solid #b9dd9f;display:inline-flex;min-height:36px;align-items:center}.ws-direct span{display:block;margin-top:12px}
.ws-form{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-content:start;padding-top:10px}.ws-field{display:flex;flex-direction:column;gap:9px;min-width:0}.ws-field.wide{grid-column:1/-1}.ws-field label{font-size:14px;color:#fff}.ws-field input,.ws-field select{font:400 16px/1.5 var(--ui-font);min-width:0;width:100%;min-height:52px;border:1px solid #b0c5a2;border-radius:0;background:#f7faf3;color:#172212;padding:13px 14px;appearance:auto}.ws-field input::placeholder{color:#616d5b}.ws-form .ws-button{background:#fff;color:#1a2c15;grid-column:1/-1;justify-content:space-between}.ws-form .ws-mail-note{font-size:13px;margin:0;grid-column:1/-1;line-height:1.5}.ws-contact .ws-tax{font-size:13px;border-top:1px solid rgba(255,255,255,.28);padding-top:24px;margin-top:36px;max-width:610px}
.workshops-page .detail-header .back-link{font-size:14px}.workshops-page .detail-contact-link{font-size:14px}.workshops-page .language{font-size:14px}.workshops-page .language button{min-height:44px;min-width:34px}
.workshops-page .bc-footer-description,.workshops-page .bc-footer-links{font-size:13px}
html[data-theme="light"] .ws-contact{background:linear-gradient(118deg,#315f2b,#538038)}
html[data-theme="light"] .ws-card{background:#fff}html[data-theme="light"] .ws-card:nth-child(3){background:#f3f8ef}html[data-theme="light"] .secondary .ws-card{background:var(--dd-surface)}
html[data-theme="light"] .ws-special-panel{background:#fff}
.workshops-page :focus-visible{outline:2px solid var(--ws-accent);outline-offset:5px}.workshops-page .ws-contact :focus-visible{outline-color:#fff}.workshops-page input:focus-visible,.workshops-page select:focus-visible{outline:3px solid #10250c;outline-offset:2px}
.ws-section[id],.ws-special[id]{scroll-margin-top:100px}
@media(max-width:1100px){.ws-card{padding:25px}.ws-card h3{font-size:30px}.ws-heading{grid-template-columns:.7fr 2fr}.ws-steps{gap:22px}.ws-tiers .ws-price{font-size:31px}.ws-special-panel{padding:28px}}
@media(max-width:900px){.ws-cards{grid-template-columns:1fr}.ws-card{padding:32px}.ws-card h3{font-size:36px;min-height:0}.ws-card .ws-button{width:auto;min-width:240px}.ws-card p{max-width:760px}.ws-facts{gap:20px}.ws-heading{grid-template-columns:1fr;gap:12px}.ws-heading .kicker{margin-bottom:6px}.ws-difference{grid-template-columns:1fr;gap:10px}.ws-special{grid-template-columns:1fr}.ws-special-panel{max-width:none}.ws-tiers .ws-price{font-size:40px}.ws-experience{grid-template-columns:.8fr 1.2fr;gap:38px}.ws-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.ws-contact .ws-wrap{grid-template-columns:1fr}.ws-jump a{padding:18px}.ws-cards.secondary{grid-template-columns:1fr}}
@media(max-width:600px){.ws-facts{grid-template-columns:1fr;padding-top:30px;gap:18px}.ws-facts p+ p{padding-top:17px;border-top:1px solid var(--dd-line)}.ws-jump .ws-wrap{grid-template-columns:1fr}.ws-jump a{padding:14px 24px;min-height:48px;border-right:0;border-bottom:1px solid var(--dd-line)}.ws-jump a:last-child{border-bottom:0}.ws-hero-actions{gap:15px}.ws-hero-note{max-width:100%;font-size:14px}.ws-card,.secondary .ws-card{padding:28px 23px}.ws-card .ws-button{width:100%;min-width:0}.ws-card h3{font-size:33px}.ws-experience{grid-template-columns:1fr}.ws-person{max-width:280px;margin-bottom:18px}.ws-steps{grid-template-columns:1fr;gap:28px}.ws-steps span{margin-bottom:12px}.ws-form{grid-template-columns:1fr}.ws-field{grid-column:1/-1}.ws-tiers{gap:16px}.ws-tiers>div+div{padding-left:16px}.ws-tiers .ws-price{font-size:32px}.ws-special-panel{padding:25px}.workshops-page .detail-header .back-link{display:inline-flex;font-size:12px}.workshops-page .detail-header-actions{gap:9px}.workshops-page .detail-header .detail-logo{width:160px;max-width:100%}.workshops-page .detail-header{padding-inline:20px}.workshops-page .detail-header .detail-contact-link{display:none}.workshops-page .language{font-size:12px;gap:0}.workshops-page .language button{padding:4px;min-width:25px}.workshops-page .theme-toggle{margin-left:0}.ws-special .ws-special-lead{font-size:18px}}
@media(max-width:380px){.workshops-page .detail-header .detail-logo{width:135px}.workshops-page .detail-header{padding-inline:14px}.workshops-page .detail-header .back-link{font-size:11px}.workshops-page .detail-header-actions{gap:5px}.ws-card h3{font-size:30px}}
@media(max-width:600px){.workshops-page .detail-header .detail-contact-link{display:inline-flex;align-items:center;font-size:12px}}
.ws-offer-actions{display:flex;flex-direction:column;align-items:flex-start;gap:12px;min-width:0;max-width:100%}
.workshops-page .ws-card .ws-offer-actions .ws-button{margin-bottom:0;max-width:100%}
.workshops-page .ws-card .ws-offer-actions .ws-download,.workshops-page .ws-special-panel .ws-download{display:flex;flex-wrap:wrap;column-gap:8px;row-gap:2px;width:fit-content;max-width:100%;padding-bottom:5px}
.workshops-page .ws-section{padding-block:clamp(54px,5vw,80px)}
.ws-choices{border:1px solid var(--dd-line);box-shadow:var(--dd-shadow)}
.ws-choice{background:var(--dd-surface);scroll-margin-top:112px}
.ws-choice+.ws-choice{border-top:1px solid var(--dd-line)}
.ws-choice>summary{display:grid;grid-template-columns:32px minmax(0,1fr) 88px 28px;gap:20px;align-items:center;min-height:9rem;padding:24px 28px;list-style:none;cursor:pointer;transition:background .2s}
.ws-choice>summary::-webkit-details-marker,.ws-more>summary::-webkit-details-marker{display:none}
.ws-choice>summary:hover,.ws-choice[open]>summary{background:var(--ws-soft)}
.ws-choice-number{font-size:14px;color:var(--ws-accent)}
.ws-choice-heading{display:flex;flex-direction:column;gap:7px;min-width:0}
.ws-choice-heading .ws-choice-title{font:400 clamp(25px,2.2vw,32px)/1.15 var(--display-font);letter-spacing:-.025em;color:var(--dd-ink);overflow-wrap:break-word}
.ws-choice-heading>span{font-size:15px;line-height:1.5;color:var(--dd-muted)}
.ws-choice-duration{font-size:14px;line-height:1.5;color:var(--dd-muted);white-space:nowrap;justify-self:end;text-align:right;font-variant-numeric:tabular-nums}
.ws-choice-toggle{font:300 28px/1 var(--ui-font);color:var(--ws-accent);text-align:center;transition:transform .2s}
.ws-choice[open] .ws-choice-toggle{transform:rotate(45deg)}
.ws-choice-body{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,.85fr);gap:clamp(30px,5vw,80px);padding:30px 28px 34px 80px;border-top:1px solid var(--dd-line)}
.ws-choice-copy{min-width:0}.ws-choice-copy>p{font-size:15px;line-height:1.65;color:var(--dd-muted);margin:0 0 18px}
.ws-choice-copy .ws-detail-heading{font:500 15px/1.4 var(--ui-font);color:var(--dd-ink);margin:24px 0 10px}
.ws-choice-copy .ws-choice-capacity{color:var(--dd-ink);font-weight:500}
.workshops-page .ws-choice-kicker{font-size:12px;line-height:1.5;text-transform:uppercase;letter-spacing:.09em;color:var(--ws-accent);margin:0 0 15px}
.ws-choice-price{align-self:start;padding:26px;background:var(--ws-soft);border:1px solid var(--dd-line);min-width:0}
.ws-choice-price .ws-price{font-size:42px;margin-bottom:4px}
.ws-choice-price>p,.ws-tier>p{font-size:14px;line-height:1.5;color:var(--dd-muted);margin:0 0 20px}
.ws-choice-price .ws-choice-kicker{color:var(--ws-accent)}
.ws-choice-price .ws-included{font-size:13px;margin:20px 0}
.ws-tier+.ws-tier{border-top:1px solid var(--dd-line);padding-top:20px}
.ws-choice-price .ws-offer-actions{align-items:stretch}
.ws-choice-price .ws-button{width:100%;min-width:0;max-width:100%}
.ws-choice-price .ws-download{display:flex;flex-wrap:wrap;gap:3px 8px;width:fit-content;max-width:100%;padding-bottom:4px;font-size:14px}
.ws-brochures{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0;max-width:100%}
.ws-more{border-top:1px solid var(--dd-line);margin-top:25px}
.ws-more>summary{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:18px 0;list-style:none;cursor:pointer;font-size:15px;line-height:1.5;color:var(--dd-ink)}
.ws-more>summary::after{content:'+';font-size:24px;color:var(--ws-accent)}
.ws-more[open]>summary::after{content:'−'}
.ws-process .ws-steps{margin:10px 0 0}.ws-process .ws-steps article{border-top:0;padding-top:10px}
.ws-about-section{overflow:hidden}.ws-person-column{min-width:0;max-width:300px}
.ws-about-section .ws-person{max-width:280px}.ws-about-section .ws-experience{align-items:start;grid-template-columns:.65fr 1.35fr}
.ws-monogram{display:none}
@media(min-width:901px){.ws-monogram{display:block;height:145px;margin:40px 0 -25px -16px;pointer-events:none;user-select:none;font-family:Georgia,'Times New Roman',serif;font-size:clamp(230px,18vw,300px);font-weight:400;line-height:.72;letter-spacing:-.12em;white-space:nowrap;color:rgba(218,226,215,.06)}html[data-theme='light'] .ws-monogram{color:rgba(93,101,96,.15)}}
@media(min-width:601px) and (max-width:1100px){.ws-choice>summary{min-height:10rem}.ws-choice-heading .ws-choice-title{min-height:2.3em}.ws-choice-heading>span{min-height:3em}}
@media(max-width:900px){.ws-choice>summary{grid-template-columns:26px minmax(0,1fr) 88px 24px;gap:14px;padding:24px}.ws-choice-body{padding:26px;grid-template-columns:1fr;gap:24px}.ws-choice-price{max-width:460px;width:100%}.ws-about-section .ws-experience{grid-template-columns:.8fr 1.2fr}}
@media(max-width:600px){.ws-choice>summary{grid-template-columns:minmax(0,1fr) 24px;min-height:0;padding:22px;gap:11px}.ws-choice-number{display:none}.ws-choice-heading{grid-column:1;grid-row:1}.ws-choice-duration{grid-column:1;grid-row:2;justify-self:start;text-align:left}.ws-choice-toggle{grid-column:2;grid-row:1/3}.ws-choice-heading .ws-choice-title{font-size:27px}.ws-choice-heading>span{font-size:14px}.ws-choice-body{padding:22px}.ws-choice-price{padding:22px}.ws-about-section .ws-experience{grid-template-columns:1fr}.ws-about-section .ws-person{margin-bottom:0}}
@media(prefers-reduced-motion:reduce){.ws-choice>summary,.ws-choice-toggle{transition:none}}
@media(prefers-reduced-motion:reduce){.ws-button,.ws-download,.ws-jump a{transition:none}.ws-button:hover{transform:none}}


/* Source: /workshops-experience-20260911.css */
/* Expanded audit experience: the existing closed summary remains unchanged. */
.ws-audit-details{display:grid;gap:22px;padding-top:8px;min-width:0}
.ws-audit-topic{min-width:0}
.ws-audit-topic+.ws-audit-topic{border-top:1px solid var(--dd-line);padding-top:22px}
.ws-audit-topic h3{margin:0 0 8px;font:600 1.0625rem/1.45 var(--ui-font);letter-spacing:0;color:var(--dd-ink);overflow-wrap:break-word}
.ws-experience .ws-audit-topic p{margin:0;font-size:1rem;line-height:1.7;color:var(--dd-muted);overflow-wrap:break-word}
/* Keep the small contact heading readable on green in both themes. */
.workshops-page .ws-contact .kicker{color:#fff;opacity:1}


/* Source: /workshops-calm-surfaces-20260911.css */
/* The collaboration steps are always visible, not an accordion. */
.ws-process-static{border-top:1px solid var(--dd-line);margin-top:25px;padding-top:24px}
.ws-section .ws-process-title,.ws-section .ws-difference>strong{font:600 clamp(1.25rem,calc(1.1rem + .6vw),1.625rem)/1.35 var(--ui-font);letter-spacing:0;margin:0 0 30px;max-width:100%;color:var(--ws-accent);overflow-wrap:break-word;text-wrap:balance}
.ws-section .ws-process-title::after,.ws-section .ws-difference>strong::after{content:"";display:block;width:54px;height:3px;margin-top:14px;background:var(--ws-accent)}
.ws-process-static .ws-steps{margin:0}
/* Two quiet, always-visible surfaces instead of several floating grids. */
.ws-orientation{margin-top:40px;padding:clamp(24px,3.4vw,44px);background:var(--dd-surface);border:1px solid var(--dd-line)}
.ws-orientation .ws-difference{display:block;margin:0;padding:0}
.ws-orientation .ws-difference>strong{display:block;margin-bottom:24px}
.ws-orientation .ws-difference>p{max-width:78ch;font-size:1rem;line-height:1.7}
.ws-orientation .ws-facts{margin-top:32px;padding-top:28px;border-top:1px solid var(--dd-line);gap:28px 40px}
.ws-orientation .ws-facts p{font-size:1rem;line-height:1.65}
.ws-orientation .ws-facts strong{font-size:1rem;margin-bottom:8px}
.ws-process-static{margin-top:28px;padding:clamp(24px,3.4vw,44px);border:1px solid var(--dd-line);background:var(--ws-soft)}
.ws-process-static .ws-process-title{margin-bottom:36px}
.ws-process-static .ws-steps{gap:32px}
.ws-process-static .ws-steps article{border:0;padding:0}
.ws-process-static .ws-steps span{margin-bottom:14px}
.ws-process-static .ws-steps h3{font-size:clamp(23px,1.55vw,27px);line-height:1.3}
.ws-process-static .ws-steps p{font-size:1rem;line-height:1.65}
@media(max-width:1000px){.ws-process-static .ws-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.ws-orientation .ws-facts{grid-template-columns:1fr}.ws-orientation .ws-facts p+p{padding-top:0;border-top:0}}
@media(max-width:600px){.ws-process-static .ws-steps{grid-template-columns:1fr}.ws-orientation{margin-top:28px}}


/* Source: /company-wide-offer-panels-20260911.css */
.ws-choice-copy .ws-company-wide{margin-top:36px;padding:clamp(20px,2.4vw,32px);border:1px solid var(--dd-line);border-left:3px solid var(--ws-accent);background:var(--ws-soft);min-width:0}
.ws-choice-copy .ws-company-wide .ws-detail-heading{font:600 clamp(1.125rem,1.05rem + .3vw,1.375rem)/1.4 var(--ui-font);letter-spacing:0;text-transform:none;color:var(--ws-accent);margin:0 0 16px;overflow-wrap:break-word}
.ws-choice-copy .ws-company-wide p{font-size:1rem;line-height:1.7;color:var(--dd-muted);margin:0 0 16px}
.ws-choice-copy .ws-company-wide .ws-company-wide-label{font-size:.875rem;font-weight:600;line-height:1.5;color:var(--ws-accent);margin:0 0 18px}
.ws-choice-copy .ws-company-wide .ws-company-wide-intro{color:var(--dd-ink);font-weight:500;padding-bottom:22px;margin-bottom:22px;border-bottom:1px solid var(--dd-line)}
.ws-choice-copy .ws-company-wide .ws-company-wide-price{margin-top:24px}
.ws-company-wide-price strong{color:var(--dd-ink);font-weight:600}
.ws-company-wide-link{display:inline-flex;align-items:center;min-height:44px;max-width:100%;font:500 1rem/1.5 var(--ui-font);color:var(--ws-accent);border-bottom:1px solid var(--dd-line);overflow-wrap:anywhere}
.ws-company-wide-link:hover{border-bottom-color:currentColor}


/* 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: /workshop-header-20260911.css */
/* Shared homepage-style navigation, scoped to Workshops & Checks only. */
html[data-page-key="workshops-checks"] { --bc-header-full:94px; --bc-header-compact:68px; }
.workshops-page .ws-main-header {
  display:flex; align-items:center; justify-content:flex-start; gap:0; height:var(--bc-header-full) !important;
  padding-block:0; padding-inline:max(clamp(24px,5vw,72px),calc((100vw - 1320px)/2)) !important;
}
.workshops-page .ws-main-header.is-compact { height:var(--bc-header-compact) !important; }
.workshops-page .ws-header-brand { display:block; flex:0 0 auto; }
.workshops-page .ws-main-header .detail-logo { display:block; width:clamp(225px,16vw,285px) !important; height:auto; }
.workshops-page .ws-main-header.is-compact .detail-logo { width:195px !important; }
.workshops-page .ws-current-label { display:none; }
.workshops-page .ws-primary-nav {
  display:flex; align-items:center; gap:clamp(26px,2.2vw,38px);
  margin-left:clamp(34px,4vw,68px); flex-shrink:0;
}
.workshops-page .ws-primary-nav a {
  display:inline-flex; align-items:center; min-height:44px;
  font:500 14px/1.4 var(--ui-font); color:var(--bc-header-link-ink);
  text-decoration:none; white-space:nowrap; border-bottom:0;
}
.workshops-page .ws-primary-nav a[aria-current="page"] {
  color:var(--bc-header-link-hover); font-weight:600; box-shadow:inset 0 -2px currentColor;
}
.workshops-page .ws-primary-nav a:hover { color:var(--bc-header-link-hover); }
.workshops-page .ws-main-header :is(a,button):focus-visible { outline:2px solid var(--bc-header-link-hover); outline-offset:5px; }
.workshops-page .ws-primary-nav .ws-mobile-nav-link { display:none; }
.workshops-page .ws-main-header .detail-header-actions {
  display:flex; align-items:center; flex-shrink:0; gap:22px !important; margin-left:auto;
}
.workshops-page .ws-main-header.is-compact .detail-header-actions { gap:17px !important; }
.workshops-page .ws-main-header .language button { min-width:36px; }
.workshops-page .ws-main-header .detail-contact-link { display:block; }
.workshops-page .ws-main-header .detail-contact-link::after { content:none; }
.workshops-page .ws-main-header .detail-contact-link > span { margin-left:20px; }
.workshops-page .ws-main-header.is-compact .detail-contact-link { padding-block:8px !important; }
.workshops-page .ws-menu-button { display:none; }
@media (min-width:901px) and (max-width:1100px) {
  .workshops-page .ws-main-header { padding-inline:28px !important; }
  .workshops-page .ws-primary-nav { margin-inline:20px; gap:18px; }
  .workshops-page .ws-main-header .detail-header-actions,
  .workshops-page .ws-main-header.is-compact .detail-header-actions { gap:14px !important; }
}
@media (max-width:900px) {
  html[data-page-key="workshops-checks"] { --bc-header-full:84px; --bc-header-compact:76px; }
  .workshops-page .ws-main-header,
  .workshops-page .ws-main-header.is-compact {
    display:flex; flex-wrap:nowrap; gap:10px; padding-block:0; padding-inline:20px !important;
  }
  .workshops-page .ws-main-header .detail-logo,
  .workshops-page .ws-main-header.is-compact .detail-logo { width:164px !important; }
  .workshops-page .ws-current-label {
    display:block; padding-top:5px; padding-left:10px;
    font:600 11px/1.2 var(--ui-font); color:var(--bc-header-link-hover); white-space:nowrap;
  }
  .workshops-page .ws-main-header .detail-header-actions,
  .workshops-page .ws-main-header.is-compact .detail-header-actions { gap:8px !important; margin-left:0; }
  .workshops-page .ws-main-header .detail-contact-link { display:none; }
  .workshops-page .ws-main-header .theme-toggle { margin:0; width:36px; min-width:36px; height:36px; padding:0; justify-content:center; }
  .workshops-page .ws-main-header .theme-toggle-label { display:none; }
  .workshops-page .ws-main-header .language { display:flex; gap:0; margin:0; }
  .workshops-page .ws-main-header .language button { min-width:30px; min-height:44px; font-size:13px; }
  .workshops-page .ws-main-header .language > span { flex:0 0 4px; width:4px; }
  .workshops-page .ws-menu-ready .ws-menu-button {
    display:flex; flex-direction:column; justify-content:center; align-items:center; gap:6px;
    width:44px; min-width:44px; height:44px; margin:0 0 0 auto; padding:8px;
    border:0; background:none; color:var(--bc-header-link-ink); cursor:pointer;
  }
  .workshops-page .ws-menu-button span { display:block; width:22px; height:1.5px; background:currentColor; transition:transform .15s; }
  .workshops-page .ws-menu-button[aria-expanded="true"] span:first-child { transform:translateY(3.75px) rotate(45deg); }
  .workshops-page .ws-menu-button[aria-expanded="true"] span:last-child { transform:translateY(-3.75px) rotate(-45deg); }
  .workshops-page .ws-primary-nav {
    display:grid; align-items:stretch; gap:0; margin:0; padding:12px 24px 20px;
    background:#101a14; border-bottom:1px solid var(--bc-header-link-line);
    max-height:calc(100dvh - var(--bc-header-compact)); overflow-y:auto;
  }
  html[data-theme="light"] .workshops-page .ws-primary-nav { background:#f4f6ef; }
  .workshops-page .ws-primary-nav a { font-size:16px; min-height:48px; width:100%; border-bottom:1px solid var(--bc-header-link-line); }
  .workshops-page .ws-primary-nav a[aria-current="page"] { border-bottom:2px solid currentColor; box-shadow:none; }
  .workshops-page .ws-primary-nav .ws-mobile-nav-link { display:flex; }
  .workshops-page .ws-menu-ready .ws-primary-nav { position:absolute; top:100%; left:0; right:0; display:none; }
  .workshops-page .ws-menu-ready .ws-primary-nav.open { display:grid; }
  /* If scripts fail, links remain usable instead of disappearing behind a dead menu. */
  .workshops-page .ws-main-header:not(.ws-menu-ready) { position:relative !important; height:auto !important; min-height:84px; flex-wrap:wrap; padding-block:14px; }
  .workshops-page .ws-main-header:not(.ws-menu-ready) .ws-primary-nav { order:3; flex-basis:100%; }
  .workshops-page .ws-main-header:not(.ws-menu-ready) .detail-header-actions { margin-left:auto; }
}
@media (max-width:380px) {
  .workshops-page .ws-main-header,
  .workshops-page .ws-main-header.is-compact { padding-inline:14px !important; gap:4px; }
  .workshops-page .ws-main-header .detail-logo,
  .workshops-page .ws-main-header.is-compact .detail-logo { width:130px !important; }
  .workshops-page .ws-main-header .detail-header-actions { gap:4px !important; }
  .workshops-page .ws-current-label { font-size:10px; padding-left:8px; }
}
@media (prefers-reduced-motion:reduce) { .workshops-page .ws-menu-button span { transition:none; } }


/* Source: /portfolio-offers-20260911.css */
/* Additional consulting offers use the existing accordion and brand tokens. */
.ws-catalog-nav{display:flex;flex-wrap:wrap;gap:10px 28px;padding:0 0 26px;margin-bottom:8px;align-items:center}
.ws-catalog-nav a{display:inline-flex;align-items:center;min-height:44px;padding:8px 0;border-bottom:1px solid var(--dd-line);font:500 14px/1.5 var(--ui-font);color:var(--ws-accent)}
.ws-catalog-nav a:hover{border-bottom-color:currentColor}
.ws-catalog-heading{padding:52px 0 26px;scroll-margin-top:100px}
.ws-catalog-heading .kicker{margin-bottom:12px}
.ws-catalog-heading h3{margin:0;font:400 clamp(28px,3vw,40px)/1.15 var(--display-font);letter-spacing:-.025em;color:var(--dd-ink)}
.ws-catalog-heading>p:not(.kicker){max-width:760px;color:var(--dd-muted);margin:16px 0 0}
.ws-consulting-choice .ws-choice-duration{white-space:normal;max-width:100px}
.ws-consulting-price .ws-price{font-size:32px;line-height:1.18;margin-bottom:18px}
.ws-consulting-price .ws-planning-range{border-block:1px solid var(--dd-line);padding:20px 0;margin:24px 0}
.ws-planning-range .ws-detail-heading{font:600 14px/1.4 var(--ui-font);margin:0 0 12px;color:var(--ws-accent)}
.ws-planning-range p{font-size:14px;line-height:1.6;color:var(--dd-muted);margin:0}
.ws-planning-range p+p{margin-top:12px}
.ws-planning-range strong{display:block;color:var(--dd-ink);font-size:16px;line-height:1.5}
.ws-planning-range span{display:block;margin-top:4px}
.ws-consulting-price .ws-consulting-boundary{font-size:13px;line-height:1.6}
.ws-consulting-steps{padding-left:20px;margin:0 0 24px}
.ws-consulting-steps li{padding-left:6px;margin:14px 0;color:var(--dd-muted);font:400 15px/1.65 var(--ui-font)}
.ws-consulting-steps li::marker{color:var(--ws-accent)}
.ws-consulting-steps strong{display:block;color:var(--dd-ink);font-weight:600;margin-bottom:3px}
.ws-consulting-steps span{display:block}
@media(max-width:700px){
 .ws-catalog-nav{display:grid;gap:0;padding-bottom:18px;margin-bottom:10px}
 .ws-catalog-nav a{min-height:44px;font-size:14px}
 .ws-catalog-heading{padding-top:34px}
 .ws-catalog-heading h3{font-size:28px;line-height:1.2}
 .ws-catalog-heading>p:not(.kicker){font-size:15px;line-height:1.6}
 .ws-consulting-choice .ws-choice-duration{max-width:none}
 .ws-consulting-choice .ws-choice-heading .ws-choice-title{overflow-wrap:break-word}
 .ws-consulting-price .ws-price{font-size:29px}
}


/* 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}
}


/* Source: /offer-flow-20260911.css */
/* One continuous offer catalogue; practical information follows the full selection. */
#angebote .ws-catalog-heading {padding:40px 0 22px; scroll-margin-top:110px}
#angebote .ws-catalog-start {padding-top:8px}
.ws-security-subheading {padding:22px 28px;scroll-margin-top:110px;border-top:1px solid var(--dd-line);background:var(--ws-soft)}
.ws-security-subheading h4 {margin:0;color:var(--ws-accent);font:600 18px/1.4 var(--ui-font);letter-spacing:0}
.ws-security-subheading + .ws-choice {border-top:1px solid var(--dd-line)}
#angebote .ws-catalog-heading h3 {font-size:clamp(25px,2.5vw,34px);line-height:1.2}
#angebote .ws-catalog-heading>p {max-width:82ch;margin-top:12px;font-size:16px;line-height:1.65}
.ws-collaboration-section .ws-orientation {margin-top:0}
@media(max-width:700px) {
 #angebote .ws-catalog-heading {padding-top:30px;padding-bottom:18px}
 #angebote .ws-catalog-start {padding-top:6px}
 #angebote .ws-catalog-heading h3 {font-size:25px;line-height:1.25}
 #angebote .ws-catalog-heading>p {font-size:15px;line-height:1.6}
}

/* 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; }

/* An explicit route home on every full-navigation subpage. */
.ws-main-header .ws-home-shortcut { display:none; }
@media (min-width:901px) and (max-width:1200px) {
  :is(.workshops-page,body[data-legal-page]) { --bc-header-full:118px; --bc-header-compact:118px; }
  :is(.workshops-page,body[data-legal-page]) .ws-main-header,
  :is(.workshops-page,body[data-legal-page]) .ws-main-header.is-compact {
    display:grid; grid-template-columns:auto minmax(0,1fr) auto;
    grid-template-rows:62px 46px; gap:0;
    height:118px !important; padding:5px 28px !important;
  }
  :is(.workshops-page,body[data-legal-page]) .ws-header-brand { grid-column:1; grid-row:1; }
  :is(.workshops-page,body[data-legal-page]) .ws-main-header .detail-header-actions { grid-column:3; grid-row:1; }
  :is(.workshops-page,body[data-legal-page]) .ws-primary-nav {
    grid-column:1 / -1; grid-row:2; justify-self:start; margin:0; gap:28px;
  }
}
@media (max-width:900px) {
  :is(.workshops-page,body[data-legal-page]) .ws-primary-nav .ws-home-nav { display:none; }
  :is(.workshops-page,body[data-legal-page]) .ws-main-header .ws-home-shortcut {
    display:inline-flex; align-items:center; min-height:44px;
    color:var(--bc-header-link-ink); font:500 14px/1.4 var(--ui-font);
    text-decoration:none; border-bottom:1px solid var(--bc-header-link-line); white-space:nowrap;
  }
  :is(.workshops-page,body[data-legal-page]) .ws-main-header .ws-home-shortcut:hover { color:var(--bc-header-link-hover); }
}
@media (max-width:700px) {
  :is(.workshops-page,body[data-legal-page]) .ws-main-header .ws-home-shortcut {
    grid-column:2 / 4; grid-row:2; justify-self:start;
  }
}
