:where(img[data-seo-intrinsic]) { height: auto; }
/* Consent controls are shared by every page. */
#hk-cookie-banner[hidden], #hk-cookie-banner [hidden] { display: none !important; }
#hk-cookie-banner {
  position: fixed; inset: auto 0 0; z-index: 10000;
  max-height: 85vh; max-height: 85dvh; overflow-y: auto;
  background: #fff; color: #211D23; border-top: 3px solid #C7A05B;
  box-shadow: 0 -8px 40px rgba(33,19,40,.18);
  padding: 24px max(20px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left));
  font: 14px/1.6 var(--sans, Arial, sans-serif);
}
.hk-consent-inner { max-width: 1200px; margin: auto; }
#hk-cookie-banner h2 { font: 600 22px/1.3 var(--sans, Arial, sans-serif); margin: 0 0 10px; color: #211328; }
#hk-cookie-banner p { margin: 0 0 8px; max-width: none; font-size: 14px; line-height: 1.55; }
#hk-cookie-banner a { color: #3A2145; text-decoration: underline; text-underline-offset: 3px; }
.hk-consent-note { color: #514A55; font-size: 12px; }
.hk-consent-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
.hk-consent-button {
  appearance: none; border: 1px solid #3A2145; border-radius: 4px;
  background: #3A2145; color: #fff; padding: 12px 20px;
  font: 600 14px/1.4 var(--sans, Arial, sans-serif); cursor: pointer;
  min-height: 44px;
}
.hk-consent-button:hover { background: #211328; }
.hk-consent-settings { background: #fff; color: #3A2145; }
.hk-consent-settings:hover { background: #F3EFF6; }
#hk-cookie-banner button:focus-visible, #hk-cookie-banner a:focus-visible, #hk-cookie-banner input:focus-visible,
.hk-consent-reopen:focus-visible { outline: 3px solid #C7A05B; outline-offset: 3px; }
.hk-consent-options { background: #F3EFF6; padding: 16px; border-radius: 4px; margin-top: 16px; }
.hk-consent-options label { display: flex; align-items: flex-start; gap: 12px; margin-bottom: 14px; cursor: pointer; }
.hk-consent-options input { appearance: auto; flex: 0 0 20px; width: 20px; height: 20px; margin: 3px 0 0; accent-color: #3A2145; }
.hk-consent-options strong, .hk-consent-options small { display: block; }
.hk-consent-options small { font-size: 13px; }
.hk-consent-reopen { appearance: none; background: transparent; color: inherit; border: 0; padding: 8px 0; font: inherit; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; min-height: 44px; }
.hk-consent-error { margin-top: 12px !important; color: #81321d; }
@media (max-width: 600px) {
  #hk-cookie-banner { padding-top: 18px; font-size: 13px; }
  #hk-cookie-banner h2 { font-size: 19px; }
  .hk-consent-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 14px; }
  .hk-consent-actions .hk-consent-settings { grid-column: 1 / -1; grid-row: 2; }
  .hk-consent-actions .hk-consent-button { padding: 11px 8px; font-size: 13px; }
  .hk-consent-button { width: 100%; }
}

@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/montserrat-400.ttf) format('truetype');
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/montserrat-500.ttf) format('truetype');
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/montserrat-600.ttf) format('truetype');
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(../fonts/montserrat-700.ttf) format('truetype');
}
@font-face {
  font-family: 'Libre Baskerville';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/librebaskerville-400.ttf) format('truetype');
}
:root {
  --plum-950: #211328;
  --plum-900: #211328;
  --plum-800: #3A2145;
  --gold-500: #C7A05B;
  --gold-300: #E0C68F;
  --ink: #211D23;
  --ink-soft: #514A55;
  --paper: #F3EFF6;
  --paper-2: #E4DAEA;
  --white: #FFFFFF;
  --line: #E4DAEA;
  --serif: "Libre Baskerville", Georgia, serif;
  --sans: "Montserrat", Arial, sans-serif;
  --shadow: 0 24px 70px rgba(27, 16, 31, .12);
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  color: var(--ink);
  background: #E4DAEA;
  font-family: var(--sans);
  font-size: 16px;
  line-height: 1.65;
}

body.panel-open {
  overflow: hidden;
}

a {
  color: inherit;
  text-decoration: none;
}

button,
a {
  -webkit-tap-highlight-color: transparent;
}

button,
input,
textarea,
select {
  font: inherit;
}

img {
  display: block;
  max-width: 100%;
}

h1,
h2,
h3,
p {
  margin-top: 0;
}

h1,
h2 {
  font-family: var(--serif);
  font-weight: 400;
}

h1 {
  margin-bottom: 26px;
  font-size: clamp(2.8rem, 5vw, 5.2rem);
  line-height: 1.04;
  letter-spacing: -.045em;
}

h2 {
  margin-bottom: 22px;
  font-size: clamp(2rem, 3.25vw, 3.55rem);
  line-height: 1.12;
  letter-spacing: -.035em;
}

h3 {
  margin-bottom: 14px;
  font-size: 1.45rem;
  line-height: 1.3;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.prototype-bar {
  position: sticky;
  z-index: 100;
  top: 0;
  display: flex;
  min-height: 58px;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 10px 20px;
  border-bottom: 1px solid #E4DAEA;
  background: rgba(255, 255, 255, .96);
  box-shadow: 0 4px 18px rgba(0, 0, 0, .05);
  backdrop-filter: blur(12px);
}

.prototype-title,
.prototype-actions,
.view-switch {
  display: flex;
  align-items: center;
}

.prototype-title {
  gap: 10px;
  font-size: .82rem;
  font-weight: 600;
}

.prototype-mark {
  display: inline-flex;
  width: 34px;
  height: 28px;
  align-items: center;
  justify-content: center;
  background: var(--plum-900);
  color: var(--white);
  font-family: var(--serif);
  font-size: .75rem;
}

.prototype-actions {
  gap: 10px;
}

.view-switch {
  gap: 3px;
  padding: 3px;
  border: 1px solid #E4DAEA;
  border-radius: 7px;
  background: #F3EFF6;
}

.control {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  gap: 7px;
  padding: 6px 11px;
  border: 0;
  border-radius: 4px;
  color: #514A55;
  background: transparent;
  font-size: .78rem;
  font-weight: 600;
  cursor: pointer;
}

.control:hover,
.control:focus-visible {
  color: var(--plum-900);
  background: #FFFFFF;
}

.control.is-active {
  color: #FFFFFF;
  background: var(--plum-900);
}

.desktop-icon {
  display: inline-block;
  width: 14px;
  height: 10px;
  border: 1.5px solid currentColor;
  border-radius: 1px;
}

.mobile-icon {
  display: inline-block;
  width: 8px;
  height: 14px;
  border: 1.5px solid currentColor;
  border-radius: 2px;
}

.notes-toggle {
  border: 1px solid #E4DAEA;
}

.prototype-stage {
  min-height: calc(100vh - 58px);
  padding: 28px;
  transition: padding .25s ease;
}

.site-shell {
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  background: var(--white);
  box-shadow: var(--shadow);
  transition: width .3s ease, max-width .3s ease, border-radius .3s ease;
}

.site-page {
  container-type: inline-size;
  background: var(--white);
}

.section-inner {
  width: min(1180px, calc(100% - 64px));
  margin: 0 auto;
}

.section {
  padding: 112px 0;
}

.eyebrow {
  margin-bottom: 18px;
  color: var(--gold-300);
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .15em;
  line-height: 1.4;
  text-transform: uppercase;
}

.eyebrow.dark {
  color: #70501F;
}

.eyebrow.light {
  color: var(--gold-300);
}

.button {
  display: inline-flex;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 22px;
  border: 1px solid transparent;
  border-radius: 2px;
  font-size: .875rem;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
  transition: color .18s ease, background .18s ease, border-color .18s ease, transform .18s ease;
}

.button:hover {
  transform: translateY(-2px);
}

.button-gold {
  color: var(--plum-950);
  background: var(--gold-500);
}

.button-gold:hover {
  background: #C7A05B;
}

.button-outline {
  border-color: var(--plum-900);
  color: var(--plum-900);
  background: transparent;
}

.button-outline:hover {
  color: var(--white);
  background: var(--plum-900);
}

.button-dark {
  color: var(--white);
  background: var(--plum-900);
}

.button-dark:hover {
  background: #3A2145;
}

.text-link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--plum-900);
  font-size: .84rem;
  font-weight: 700;
}

.text-link span {
  transition: transform .18s ease;
}

.text-link:hover span {
  transform: translateX(4px);
}

.text-link.light {
  color: var(--white);
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 40;
  display: flex;
  min-height: 84px;
  align-items: center;
  gap: 28px;
  padding: 0 max(32px, calc((100% - 1180px) / 2));
  border-bottom: 1px solid rgba(224, 198, 143, .42);
  background: var(--plum-950);
}

.brand {
  display: inline-flex;
  flex: 0 0 auto;
}

.brand-logo {
  width: 238px;
  height: auto;
}

.desktop-nav {
  display: flex;
  align-items: center;
}

nav.desktop-nav {
  justify-content: center;
  gap: 25px;
  margin-left: auto;
}

nav.desktop-nav a {
  position: relative;
  color: #EEE8F1;
  font-size: .875rem;
  font-weight: 600;
}

nav.desktop-nav a::after {
  position: absolute;
  right: 0;
  bottom: -8px;
  left: 0;
  height: 1px;
  background: var(--gold-500);
  content: "";
  transform: scaleX(0);
  transition: transform .18s ease;
}

nav.desktop-nav a:hover::after {
  transform: scaleX(1);
}

.nav-cta {
  min-height: 42px;
  justify-content: center;
  padding: 9px 17px;
  border: 1px solid var(--gold-500);
  color: var(--plum-950);
  background: var(--gold-500);
  font-size: .75rem;
  font-weight: 700;
}

.nav-cta:hover {
  color: var(--plum-950);
  background: var(--gold-300);
}

.mobile-menu-button {
  display: none;
  width: 44px;
  height: 44px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
  margin-left: auto;
  border: 1px solid rgba(224, 198, 143, .45);
  border-radius: 0;
  background: transparent;
  cursor: pointer;
}

.mobile-menu-button > span:not(.sr-only) {
  width: 18px;
  height: 1.5px;
  background: var(--gold-300);
}

.mobile-menu {
  position: sticky;
  top: 88px;
  z-index: 25;
  max-height: calc(100vh - 88px);
  overflow-y: auto;
  padding: 12px 24px 20px;
  border-bottom: 1px solid rgba(224, 198, 143, .42);
  color: var(--white);
  background: var(--plum-950);
}

.mobile-menu a {
  display: block;
  padding: 12px 0;
  border-bottom: 1px solid rgba(255, 255, 255, .12);
  font-size: .875rem;
  font-weight: 600;
}

.hero {
  color: var(--white);
  background: var(--plum-950);
}

.hero-grid {
  display: grid;
  min-height: 650px;
  grid-template-columns: minmax(0, 1.12fr) minmax(340px, .88fr);
  align-items: stretch;
}

.hero-copy {
  align-self: center;
  padding: 80px 78px 80px 0;
}

.hero-intro {
  max-width: 665px;
  margin-bottom: 34px;
  color: #E4DAEA;
  font-size: 1.05rem;
  line-height: 1.75;
}

.hero-actions {
  display: flex;
  align-items: center;
  gap: 24px;
}

.hero-note {
  max-width: 560px;
  margin: 20px 0 0;
  color: #E0C68F;
  font-size: .77rem;
  line-height: 1.6;
}

.hero-portrait {
  position: relative;
  min-height: 650px;
  overflow: hidden;
}

.hero-portrait::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 50%, rgba(25, 14, 29, .72) 100%);
  content: "";
}

.hero-portrait img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 22%;
  filter: saturate(.86) contrast(1.04);
}

.portrait-caption {
  position: absolute;
  z-index: 2;
  right: 28px;
  bottom: 24px;
  left: 28px;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  padding-top: 17px;
  border-top: 1px solid rgba(255, 255, 255, .45);
}

.portrait-caption strong {
  font-family: var(--serif);
  font-size: 1rem;
  font-weight: 400;
}

.portrait-caption span {
  max-width: 160px;
  color: #E4DAEA;
  font-size: .75rem;
  line-height: 1.4;
  text-align: right;
}

.proof-strip {
  padding: 29px 0;
  border-bottom: 1px solid var(--line);
  background: var(--paper);
}

.proof-grid {
  display: grid;
  grid-template-columns: .86fr .86fr 1.28fr;
}

.proof-item {
  display: flex;
  min-height: 60px;
  flex-direction: column;
  justify-content: center;
  padding: 0 32px;
  border-right: 1px solid var(--line);
}

.proof-item:first-child {
  padding-left: 0;
}

.proof-item:last-child {
  padding-right: 0;
  border-right: 0;
}

.proof-item strong {
  color: var(--plum-900);
  font-family: var(--serif);
  font-size: 1.1rem;
  font-weight: 400;
}

.proof-item span {
  margin-top: 5px;
  color: var(--ink-soft);
  font-size: .7rem;
  line-height: 1.45;
}

.proof-clients strong {
  font-family: var(--sans);
  font-size: .77rem;
  font-weight: 700;
}

.section-heading {
  display: grid;
  margin-bottom: 46px;
  grid-template-columns: .9fr 1.1fr;
  column-gap: 70px;
}

.section-heading .eyebrow {
  grid-column: 1 / -1;
}

.section-heading h2 {
  margin-bottom: 0;
}

.section-heading > p:last-child {
  max-width: 620px;
  margin: 7px 0 0;
  color: var(--ink-soft);
  line-height: 1.8;
}

.section-heading.compact {
  grid-template-columns: 1fr;
}

.section-heading.compact h2 {
  max-width: 760px;
}

.offer-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}

.offer-card {
  display: flex;
  min-height: 690px;
  flex-direction: column;
  padding: 42px;
  border: 1px solid var(--line);
  background: var(--white);
}

.offer-card.featured {
  border-top: 5px solid var(--gold-500);
  background: var(--paper);
}

.offer-topline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 26px;
  color: #807487;
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.offer-number {
  display: inline-flex;
  width: 33px;
  height: 33px;
  align-items: center;
  justify-content: center;
  border: 1px solid #E0C68F;
  border-radius: 50%;
  color: var(--plum-900);
  font-size: .75rem;
}

.offer-card h3 {
  font-family: var(--serif);
  font-size: clamp(1.55rem, 2.2vw, 2.15rem);
  font-weight: 400;
}

.offer-lead {
  min-height: 100px;
  margin-bottom: 22px;
  color: var(--ink-soft);
}

.feature-list {
  display: grid;
  gap: 11px;
  margin: 0 0 30px;
  padding: 0;
  list-style: none;
}

.feature-list li {
  position: relative;
  padding-left: 22px;
  color: #3A2145;
  font-size: .875rem;
  line-height: 1.55;
}

.feature-list li::before {
  position: absolute;
  top: .63em;
  left: 0;
  width: 10px;
  height: 1px;
  background: var(--gold-500);
  content: "";
}

.offer-price {
  display: grid;
  margin-top: auto;
  margin-bottom: 24px;
  padding-top: 24px;
  border-top: 1px solid var(--line);
}

.offer-price span {
  color: var(--ink-soft);
  font-size: .75rem;
}

.offer-price strong {
  color: var(--plum-900);
  font-family: var(--serif);
  font-size: 2.05rem;
  font-weight: 400;
}

.offer-price small {
  color: #807487;
  font-size: .75rem;
}

.offer-footnote {
  margin: 17px 0 0;
  min-height: 6.2em;
  color: #807487;
  font-size: .75rem;
  line-height: 1.55;
}

.process-route {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  margin-top: 24px;
  padding: 28px 32px;
  border-left: 4px solid var(--gold-500);
  background: var(--paper);
}

.process-route div {
  display: flex;
  flex-direction: column;
}

.process-route strong {
  font-size: .86rem;
}

.process-route span {
  margin-top: 4px;
  color: var(--ink-soft);
  font-size: .78rem;
}

.deliverable {
  background: var(--paper);
}

.academy {
  background: var(--white);
}

.academy-intro {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 78px;
  margin-bottom: 48px;
}

.academy-intro h2 {
  max-width: 650px;
  margin-bottom: 0;
}

.academy-intro-copy {
  padding-top: 42px;
}

.academy-intro-copy > p {
  margin-bottom: 17px;
  color: var(--ink-soft);
}

.academy-format {
  padding-top: 16px;
  border-top: 1px solid var(--line);
  font-size: .82rem;
}

.academy-format strong {
  color: var(--plum-900);
}

.academy-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border: 1px solid var(--line);
}

.academy-role {
  display: flex;
  min-height: 370px;
  flex-direction: column;
  padding: 32px 27px;
  border-right: 1px solid var(--line);
  background: var(--white);
}

.academy-role:last-child {
  border-right: 0;
}

.academy-role.featured-role {
  color: var(--white);
  background: var(--plum-900);
}

.role-index {
  display: inline-flex;
  width: 30px;
  height: 30px;
  align-items: center;
  justify-content: center;
  margin-bottom: 40px;
  border: 1px solid #E0C68F;
  border-radius: 50%;
  color: #70501F;
  font-size: .75rem;
  font-weight: 700;
}

.featured-role .role-index {
  border-color: rgba(224, 198, 143, .55);
  color: var(--gold-300);
}

.role-label {
  color: #70501F;
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.featured-role .role-label {
  color: var(--gold-300);
}

.academy-role h3 {
  margin: 8px 0 22px;
  font-family: var(--serif);
  font-size: 1.7rem;
  font-weight: 400;
}

.academy-role p {
  color: var(--ink-soft);
  font-size: .875rem;
}

.featured-role p {
  color: #E4DAEA;
}

.role-format {
  margin-top: auto;
  padding-top: 18px;
  border-top: 1px solid var(--line);
  color: #807487;
  font-size: .75rem;
  font-weight: 600;
}

.featured-role .role-format {
  border-color: rgba(255, 255, 255, .16);
  color: #E4DAEA;
}

.academy-license {
  display: grid;
  grid-template-columns: 1.35fr .7fr auto;
  align-items: center;
  gap: 50px;
  margin-top: 24px;
  padding: 38px 42px;
  color: var(--white);
  background: var(--plum-950);
}

.license-kicker {
  color: var(--gold-300);
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.academy-license h3 {
  margin: 8px 0 10px;
  font-family: var(--serif);
  font-size: 1.35rem;
  font-weight: 400;
}

.academy-license-copy p {
  margin: 0;
  color: #E4DAEA;
  font-size: .875rem;
}

.seat-block {
  display: grid;
  gap: 9px;
}

.seat-block > span,
.seat-block small {
  color: #E4DAEA;
  font-size: .75rem;
}

.seat-block > strong {
  color: var(--gold-300);
  font-family: var(--serif);
  font-size: 1.05rem;
  font-weight: 400;
  line-height: 1.45;
}

.seat-list {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.seat-list b {
  display: inline-flex;
  min-width: 42px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(224, 198, 143, .4);
  color: var(--gold-300);
  font-size: .75rem;
}

.deliverable-grid {
  display: grid;
  grid-template-columns: 1fr .86fr;
  align-items: center;
  gap: 94px;
}

.large-copy {
  max-width: 590px;
  color: var(--ink-soft);
  font-size: 1rem;
  line-height: 1.8;
}

.result-list {
  display: grid;
  gap: 0;
  margin-top: 36px;
  border-top: 1px solid var(--line);
}

.result-item {
  display: grid;
  grid-template-columns: 42px 1fr;
  gap: 15px;
  padding: 19px 0;
  border-bottom: 1px solid var(--line);
}

.result-item > span {
  color: #70501F;
  font-size: .7rem;
  font-weight: 700;
}

.result-item p {
  margin: 0;
  color: var(--ink-soft);
  font-size: .83rem;
}

.result-item strong {
  color: var(--ink);
}

.decision-sheet {
  position: relative;
  padding: 38px;
  border: 1px solid #E0C68F;
  background: var(--white);
  box-shadow: 0 22px 52px rgba(46, 30, 49, .11);
  transform: rotate(1.2deg);
}

.sheet-head,
.sheet-metrics,
.sheet-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.sheet-head {
  padding-bottom: 16px;
  border-bottom: 2px solid var(--plum-900);
  color: #514A55;
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.sheet-label {
  padding: 3px 8px;
  background: var(--paper-2);
}

.sheet-title {
  display: grid;
  gap: 5px;
  padding: 26px 0;
}

.sheet-title small {
  color: #70501F;
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.sheet-title strong {
  max-width: 380px;
  font-family: var(--serif);
  font-size: 1.3rem;
  font-weight: 400;
  line-height: 1.35;
}

.sheet-metrics {
  gap: 8px;
  margin-bottom: 25px;
}

.sheet-metrics div {
  display: grid;
  min-width: 0;
  flex: 1;
  gap: 4px;
  padding: 12px;
  background: var(--paper);
}

.sheet-metrics span,
.sheet-row span {
  color: #807487;
  font-size: .75rem;
}

.sheet-metrics b,
.sheet-row strong {
  color: var(--plum-900);
  font-size: .75rem;
}

.sheet-row {
  min-height: 47px;
  gap: 20px;
  border-top: 1px solid #E4DAEA;
}

.sheet-row strong {
  text-align: right;
}

.sheet-stamp {
  position: absolute;
  right: -18px;
  bottom: -18px;
  display: flex;
  width: 69px;
  height: 69px;
  align-items: center;
  justify-content: center;
  border: 2px solid #70501F;
  border-radius: 50%;
  color: #70501F;
  background: #F3EFF6;
  font-family: var(--serif);
  font-size: 1rem;
  transform: rotate(-8deg);
}

.kiri {
  color: var(--white);
  background: var(--plum-900);
}

.kiri-grid {
  display: grid;
  grid-template-columns: .88fr 1.12fr;
  align-items: center;
  gap: 90px;
}

.kiri-card {
  padding: 35px;
  color: var(--ink);
  background: var(--white);
  box-shadow: 0 20px 48px rgba(0, 0, 0, .18);
}

.kiri-card-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  margin-bottom: 27px;
  padding-bottom: 15px;
  border-bottom: 2px solid var(--plum-900);
}

.kiri-card-head > span {
  font-family: var(--serif);
  font-size: 1.65rem;
}

.kiri-card-head small {
  color: #807487;
  font-size: .75rem;
  text-transform: uppercase;
}

.score-row {
  display: grid;
  grid-template-columns: 100px 1fr;
  align-items: center;
  gap: 16px;
  margin-bottom: 13px;
}

.score-row span {
  color: #514A55;
  font-size: .75rem;
}

.score-row i {
  position: relative;
  display: block;
  height: 7px;
  overflow: hidden;
  background: #EEE8F1;
}

.score-row i::after {
  display: block;
  width: var(--score);
  height: 100%;
  background: var(--gold-500);
  content: "";
}

.score-row i::before {
  position: absolute;
  z-index: 2;
  top: -2px;
  bottom: -2px;
  left: 58%;
  width: 2px;
  background: #807487;
  content: "";
}

.kiri-legend {
  display: flex;
  gap: 20px;
  margin-top: 24px;
  padding-top: 14px;
  border-top: 1px solid #E4DAEA;
  color: #807487;
  font-size: .75rem;
}

.dot {
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-right: 5px;
  border-radius: 50%;
}

.dot.company {
  background: var(--gold-500);
}

.dot.benchmark {
  background: #E4DAEA;
}

.kiri-copy p:not(.eyebrow) {
  max-width: 630px;
  color: #E4DAEA;
}

.kiri-facts {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 28px 0;
  padding: 0;
  list-style: none;
}

.kiri-facts li {
  padding: 7px 11px;
  border: 1px solid rgba(255, 255, 255, .2);
  color: #E4DAEA;
  font-size: .75rem;
}

.kiri-note {
  max-width: 560px;
  margin: 18px 0 0;
  color: #E0C68F !important;
  font-size: .75rem;
}

.resources {
  padding: 76px 0;
  border-bottom: 1px solid var(--line);
  background: var(--white);
}

.resources-grid {
  display: grid;
  grid-template-columns: 1.08fr .96fr .96fr;
  gap: 22px;
  align-items: stretch;
}

.resources-intro {
  padding: 20px 34px 20px 0;
}

.resources-intro h2 {
  margin-bottom: 20px;
  font-size: clamp(1.8rem, 3vw, 2.55rem);
}

.resources-intro > p:last-child {
  max-width: 420px;
  margin: 0;
  color: var(--ink-soft);
  font-size: .94rem;
  line-height: 1.75;
}

.resource-card {
  display: flex;
  min-height: 270px;
  flex-direction: column;
  padding: 30px;
  border: 1px solid var(--line);
  border-top: 4px solid var(--gold-500);
  background: var(--paper);
  transition: border-color .18s ease, transform .18s ease;
}

.resource-card:hover {
  border-color: #C7A05B;
  transform: translateY(-2px);
}

.resource-type {
  margin-bottom: 23px;
  color: #70501F;
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.resource-card h3 {
  margin-bottom: 12px;
  font-family: var(--serif);
  font-size: 1.45rem;
  font-weight: 400;
}

.resource-card > p {
  margin: 0 0 24px;
  color: var(--ink-soft);
  font-size: .875rem;
  line-height: 1.65;
}

.resource-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-top: auto;
  padding-top: 17px;
  border-top: 1px solid var(--line);
  color: var(--plum-900);
  font-size: .875rem;
  font-weight: 700;
}

.resource-bottom span:last-child {
  font-size: 1.15rem;
  transition: transform .18s ease;
}

.resource-card:hover .resource-bottom span:last-child {
  transform: translateX(4px);
}

.expertise {
  background: var(--paper);
}

.expertise-heading {
  display: grid;
  margin-bottom: 42px;
  grid-template-columns: .92fr 1.08fr;
  column-gap: 70px;
}

.expertise-heading .eyebrow {
  grid-column: 1 / -1;
}

.expertise-heading h2 {
  margin: 0;
}

.expertise-heading > p:last-child {
  max-width: 610px;
  margin: 7px 0 0;
  color: var(--ink-soft);
  line-height: 1.8;
}

.expertise-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
  align-items: start;
}

.expertise-panel {
  padding: 36px;
  border: 1px solid var(--line);
  background: var(--white);
}

.panel-heading {
  min-height: 218px;
  padding-bottom: 28px;
  border-bottom: 1px solid var(--line);
}

.panel-heading > span {
  display: inline-block;
  margin-bottom: 15px;
  color: #70501F;
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.panel-heading h3 {
  margin-bottom: 14px;
  font-family: var(--serif);
  font-size: clamp(1.45rem, 2vw, 1.8rem);
  font-weight: 400;
  line-height: 1.3;
}

.panel-heading p {
  margin: 0;
  color: var(--ink-soft);
  font-size: .875rem;
  line-height: 1.7;
}

.book-offer {
  display: grid;
  grid-template-columns: 116px minmax(0, 1fr);
  gap: 22px;
  margin-top: 18px;
  padding: 22px;
  color: var(--white);
  background: var(--plum-950);
}

.book-placeholder {
  position: relative;
  display: flex;
  aspect-ratio: 2 / 3;
  flex-direction: column;
  align-self: start;
  padding: 15px 12px;
  border: 1px solid rgba(224, 198, 143, .55);
  background: var(--plum-900);
  box-shadow: 0 13px 24px rgba(15, 8, 17, .28);
}

.book-placeholder > span {
  color: var(--gold-300);
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.book-placeholder > strong {
  margin-top: 30px;
  font-family: var(--serif);
  font-size: 1.35rem;
  font-weight: 400;
  line-height: 1;
}

.book-placeholder > em {
  margin-top: 9px;
  color: #E4DAEA;
  font-family: var(--serif);
  font-size: .75rem;
  font-style: normal;
  line-height: 1.35;
}

.book-placeholder > small {
  margin-top: auto;
  padding-top: 8px;
  border-top: 1px solid rgba(255, 255, 255, .2);
  color: #E0C68F;
  font-size: .75rem;
  text-transform: uppercase;
}

.book-offer-copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
}

.book-offer-kicker {
  margin-bottom: 7px;
  color: var(--gold-300);
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.book-offer-copy h4 {
  margin: 0 0 6px;
  font-family: var(--serif);
  font-size: 1.45rem;
  font-weight: 400;
}

.book-offer-subtitle {
  margin: 0 0 10px;
  color: var(--white);
  font-size: .875rem;
  font-weight: 600;
  line-height: 1.5;
}

.book-offer-copy > p:not(.book-offer-subtitle) {
  margin: 0 0 16px;
  color: #E4DAEA;
  font-size: .875rem;
  line-height: 1.55;
}

.book-offer-copy .button {
  width: 100%;
  min-height: 44px;
  margin-top: auto;
  padding: 10px 12px;
  font-size: .875rem;
}

.book-offer-copy > small {
  margin-top: 10px;
  color: #E0C68F;
  font-size: .75rem;
  line-height: 1.45;
}

.publication-list {
  display: grid;
  gap: 10px;
  margin-top: 18px;
}

.publication-row {
  display: grid;
  min-height: 151px;
  grid-template-columns: 78px minmax(0, 1fr);
  align-items: start;
  gap: 18px;
  padding: 15px;
  border: 1px solid var(--line);
  background: var(--paper);
  transition: border-color .18s ease, transform .18s ease;
}

.publication-row:hover {
  border-color: #C7A05B;
  transform: translateY(-2px);
}

.book-cover {
  align-self: start;
  overflow: hidden;
  background: #E4DAEA;
  box-shadow: 0 13px 24px rgba(35, 23, 38, .16);
}

.book-cover img {
  width: 100%;
  aspect-ratio: 2 / 3;
  object-fit: contain;
}

.publication-copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
}

.publication-copy > span:first-child {
  margin-bottom: 7px;
  color: #70501F;
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.publication-copy h4 {
  margin: 0 0 7px;
  font-family: var(--serif);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.35;
}

.publication-copy p {
  margin: 0;
  color: var(--ink-soft);
  font-size: .8rem;
  line-height: 1.55;
}

.expertise-link {
  margin-top: 24px;
  padding-top: 20px;
  border-top: 1px solid var(--line);
  width: 100%;
  justify-content: space-between;
}

.team-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 18px;
}

.team-card {
  overflow: hidden;
  border: 1px solid var(--line);
  background: var(--white);
  transition: border-color .18s ease, transform .18s ease;
}

.team-card:hover {
  border-color: #C7A05B;
  transform: translateY(-3px);
}

.team-card img {
  width: 100%;
  aspect-ratio: 4 / 3.7;
  object-fit: cover;
  object-position: center top;
}

.team-card > div {
  min-height: 105px;
  padding: 17px 15px;
}

.team-card h4 {
  margin-bottom: 7px;
  font-family: var(--serif);
  font-size: .96rem;
  font-weight: 400;
  line-height: 1.35;
}

.team-card p {
  margin: 0;
  color: var(--ink-soft);
  font-size: .8rem;
  line-height: 1.55;
}

.references-heading {
  display: grid;
  grid-template-columns: 1fr .8fr;
  align-items: end;
  gap: 80px;
  margin-bottom: 42px;
}

.references-heading h2 {
  margin-bottom: 0;
}

.references-heading > p {
  margin: 0 0 7px;
  color: var(--ink-soft);
  font-size: .82rem;
}

.reference-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.reference-card {
  min-height: 250px;
  padding: 34px;
  border: 1px solid var(--line);
  background: var(--white);
}

.reference-sector {
  display: inline-block;
  margin-bottom: 35px;
  color: #70501F;
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.reference-card h3 {
  margin-bottom: 8px;
  font-family: var(--serif);
  font-size: 1.28rem;
  font-weight: 400;
}

.reference-card p {
  min-height: 48px;
  color: var(--ink-soft);
  font-size: .875rem;
}

.reference-card .text-link {
  margin-top: 15px;
  font-size: .875rem;
}

.other-paths {
  padding-top: 40px;
  background: var(--paper);
}

.path-list {
  border-top: 1px solid var(--line);
}

.path-row {
  display: grid;
  min-height: 92px;
  grid-template-columns: 48px 1.1fr 1.4fr .8fr 22px;
  align-items: center;
  gap: 20px;
  border-bottom: 1px solid var(--line);
  transition: padding .18s ease, background .18s ease;
}

.path-row:hover {
  padding: 0 12px;
  background: var(--white);
}

.path-index {
  color: #C7A05B;
  font-size: .75rem;
  font-weight: 700;
}

.path-name {
  font-family: var(--serif);
  font-size: 1.02rem;
}

.path-copy {
  color: var(--ink-soft);
  font-size: .875rem;
}

.path-price {
  color: var(--plum-900);
  font-size: .875rem;
  font-weight: 700;
  text-align: right;
}

.path-arrow {
  color: var(--plum-900);
  font-size: 1.1rem;
}

.conversation {
  color: var(--white);
  background: var(--plum-950);
}

.conversation-grid {
  display: grid;
  grid-template-columns: 1.06fr .94fr;
  align-items: center;
  gap: 100px;
}

.conversation-copy p:not(.eyebrow) {
  max-width: 620px;
  margin-bottom: 29px;
  color: #E4DAEA;
}

.conversation-questions {
  padding: 37px;
  border: 1px solid rgba(255, 255, 255, .19);
}

.conversation-questions > p {
  margin-bottom: 17px;
  color: var(--gold-300);
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.conversation-questions ol {
  display: grid;
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.conversation-questions li {
  display: grid;
  grid-template-columns: 36px 1fr;
  gap: 15px;
  padding: 18px 0;
  border-top: 1px solid rgba(255, 255, 255, .14);
  color: #E4DAEA;
  font-size: .875rem;
}

.conversation-questions li span {
  color: var(--gold-300);
  font-size: .75rem;
  font-weight: 700;
}

.site-footer {
  padding: 58px 0 24px;
  color: #514A55;
  background: #EEE8F1;
}

.footer-grid {
  display: grid;
  grid-template-columns: 1.5fr 1fr .7fr;
  gap: 70px;
}

.footer-grid > div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.footer-brand {
  margin-bottom: 20px;
}

.footer-brand .brand-logo {
  width: 245px;
  padding: 12px 14px;
  background: var(--plum-950);
}

.footer-grid p,
.footer-grid a,
.footer-grid span {
  margin-bottom: 7px;
  font-size: .75rem;
}

.footer-grid strong {
  margin-bottom: 15px;
  color: var(--plum-900);
  font-size: .75rem;
}

.footer-bottom {
  display: flex;
  justify-content: space-between;
  margin-top: 42px;
  padding-top: 18px;
  border-top: 1px solid #E4DAEA;
  color: #807487;
  font-size: .75rem;
}

.wix-notes {
  position: fixed;
  z-index: 120;
  top: 0;
  right: 0;
  width: min(460px, 100%);
  height: 100vh;
  overflow-y: auto;
  padding: 32px;
  background: var(--white);
  box-shadow: -16px 0 48px rgba(30, 20, 32, .2);
  transform: translateX(104%);
  transition: transform .25s ease;
}

.wix-notes.is-open {
  transform: translateX(0);
}

.notes-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  padding-bottom: 23px;
  border-bottom: 2px solid var(--plum-900);
}

.notes-kicker {
  color: #70501F;
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.notes-head h2 {
  margin: 6px 0 0;
  font-size: 1.65rem;
}

.notes-close {
  display: inline-flex;
  width: 35px;
  height: 35px;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--line);
  background: var(--white);
  font-size: 1.4rem;
  cursor: pointer;
}

.notes-intro {
  margin: 24px 0;
  color: var(--ink-soft);
  font-size: .79rem;
}

.wix-step {
  display: grid;
  grid-template-columns: 34px 1fr;
  gap: 14px;
  padding: 18px 0;
  border-top: 1px solid var(--line);
}

.wix-step > span {
  display: inline-flex;
  width: 27px;
  height: 27px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: var(--white);
  background: var(--plum-900);
  font-size: .75rem;
  font-weight: 700;
}

.wix-step h3 {
  margin-bottom: 5px;
  font-size: .87rem;
}

.wix-step p {
  margin: 0;
  color: var(--ink-soft);
  font-size: .75rem;
  line-height: 1.6;
}

.notes-rule {
  display: grid;
  gap: 7px;
  margin-top: 18px;
  padding: 20px;
  color: #E4DAEA;
  background: var(--plum-900);
}

.notes-rule strong {
  margin-bottom: 6px;
  color: var(--gold-300);
  font-size: .75rem;
}

.notes-rule span {
  font-size: .75rem;
}

.panel-backdrop {
  position: fixed;
  z-index: 110;
  inset: 0;
  background: rgba(22, 14, 24, .48);
}

.prototype-toast {
  position: fixed;
  z-index: 130;
  right: 22px;
  bottom: 22px;
  max-width: calc(100vw - 44px);
  padding: 13px 17px;
  color: var(--white);
  background: var(--plum-950);
  box-shadow: 0 12px 30px rgba(24, 15, 27, .22);
  font-size: .76rem;
  font-weight: 600;
}

/* Shared subpage system. Every block maps to a standard Wix strip, container,
   text element, button, image, table or Wix Form. */
.page-picker select {
  min-height: 34px;
  max-width: 220px;
  padding: 5px 30px 5px 10px;
  border: 1px solid #E4DAEA;
  border-radius: 4px;
  color: #514A55;
  background: #FFFFFF;
  font-size: .76rem;
  font-weight: 600;
}

.subpage-main-nav a.is-current::after {
  transform: scaleX(1);
}

.subpage-hero {
  color: var(--white);
  background: var(--plum-950);
}

.subpage-hero-grid {
  display: grid;
  min-height: 610px;
  grid-template-columns: minmax(0, 1.15fr) minmax(330px, .85fr);
  align-items: center;
  gap: 86px;
  padding-top: 78px;
  padding-bottom: 78px;
}

.subpage-hero-copy {
  max-width: 760px;
}

.subpage-hero h1 {
  max-width: 820px;
  margin-bottom: 24px;
  font-size: clamp(2.75rem, 4.5vw, 4.8rem);
}

.breadcrumb {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 34px;
  color: #E4DAEA;
  font-size: .72rem;
  font-weight: 600;
}

.breadcrumb span {
  color: var(--gold-300);
}

.subpage-hero-intro {
  max-width: 720px;
  margin-bottom: 31px;
  color: #E4DAEA;
  font-size: 1.05rem;
  line-height: 1.8;
}

.subpage-hero-side {
  min-width: 0;
}

.hero-price-card,
.action-box,
.license-box,
.booking-placeholder {
  padding: 38px;
  color: var(--ink);
  background: var(--paper);
  box-shadow: 18px 18px 0 rgba(199, 160, 91, .18);
}

.hero-price-card > span,
.action-box > span,
.license-box > span,
.booking-placeholder > span {
  display: block;
  margin-bottom: 13px;
  color: #70501F;
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.hero-price-card > strong {
  display: block;
  margin-bottom: 23px;
  color: var(--plum-900);
  font-family: var(--serif);
  font-size: clamp(2rem, 3vw, 3.1rem);
  font-weight: 400;
  line-height: 1.18;
}

.hero-price-card ul,
.fit-box ul,
.check-list,
.cross-list {
  padding: 0;
  margin: 0;
  list-style: none;
}

.hero-price-card li,
.check-list li,
.fit-box li,
.cross-list li {
  position: relative;
  padding: 9px 0 9px 23px;
  border-top: 1px solid var(--line);
  font-size: .82rem;
}

.hero-price-card li::before,
.check-list li::before,
.fit-box li::before {
  position: absolute;
  top: 9px;
  left: 0;
  color: #70501F;
  content: "✓";
  font-weight: 700;
}

.hero-price-card small {
  display: block;
  margin-top: 18px;
  color: var(--ink-soft);
  font-size: .68rem;
}

.hero-role-list,
.reference-hero-list {
  border-top: 1px solid rgba(224, 198, 143, .55);
  border-bottom: 1px solid rgba(224, 198, 143, .55);
}

.hero-role-list span,
.reference-hero-list span {
  display: flex;
  align-items: center;
  gap: 18px;
  padding: 20px 4px;
  border-bottom: 1px solid rgba(255, 255, 255, .14);
  color: var(--gold-300);
  font-size: .74rem;
  letter-spacing: .08em;
}

.hero-role-list span:last-child,
.reference-hero-list span:last-child {
  border-bottom: 0;
}

.hero-role-list b,
.reference-hero-list span {
  color: var(--white);
  font-size: 1.12rem;
  font-weight: 500;
  letter-spacing: 0;
}

.hero-score-card {
  padding: 32px;
  color: var(--ink);
  background: var(--paper);
  transform: rotate(1.5deg);
}

.hero-score-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  margin-bottom: 24px;
  padding-bottom: 14px;
  border-bottom: 2px solid var(--plum-900);
}

.hero-score-head strong {
  color: var(--plum-900);
  font-family: var(--serif);
  font-size: 2rem;
}

.hero-score-head span,
.hero-score-card small {
  color: var(--ink-soft);
  font-size: .68rem;
}

.hero-score-row {
  display: grid;
  grid-template-columns: 82px 1fr;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
  font-size: .68rem;
}

.hero-score-row i {
  height: 7px;
  overflow: hidden;
  background: #E4DAEA;
}

.hero-score-row b {
  display: block;
  height: 100%;
  background: var(--gold-500);
}

.canvas-preview {
  display: grid;
  min-height: 360px;
  grid-template-columns: repeat(3, 1fr);
  gap: 5px;
  padding: 12px;
  background: rgba(255, 255, 255, .09);
  border: 1px solid rgba(224, 198, 143, .46);
}

.canvas-preview span {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 13px 7px;
  color: #E4DAEA;
  background: rgba(255, 255, 255, .06);
  font-size: .72rem;
  font-weight: 600;
  text-align: center;
}

.canvas-preview .focus-cell {
  color: var(--plum-950);
  background: var(--gold-300);
}

.paper-stack {
  position: relative;
  min-height: 360px;
}

.paper-stack span {
  position: absolute;
  display: flex;
  width: 70%;
  aspect-ratio: .72;
  align-items: flex-end;
  padding: 24px;
  border: 1px solid rgba(224, 198, 143, .5);
  color: var(--plum-950);
  background: var(--paper);
  box-shadow: 0 16px 45px rgba(0, 0, 0, .22);
  font-family: var(--serif);
  font-size: 1.25rem;
}

.paper-stack span:nth-child(1) {
  z-index: 3;
  top: 5px;
  left: 0;
}

.paper-stack span:nth-child(2) {
  z-index: 2;
  top: 26px;
  left: 14%;
  background: var(--gold-300);
}

.paper-stack span:nth-child(3) {
  z-index: 1;
  top: 47px;
  left: 28%;
  color: var(--white);
  background: #807487;
}

.large-book-placeholder {
  display: flex;
  min-height: 410px;
  aspect-ratio: .72;
  flex-direction: column;
  padding: 29px 25px;
  color: var(--white);
  background: linear-gradient(150deg, #514A55 0%, var(--plum-950) 68%);
  box-shadow: 17px 20px 0 rgba(199, 160, 91, .2);
}

.large-book-placeholder span,
.large-book-placeholder small {
  font-size: .62rem;
  font-style: normal;
  font-weight: 600;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.large-book-placeholder strong {
  margin-top: auto;
  font-family: var(--serif);
  font-size: clamp(2.35rem, 4vw, 4.2rem);
  font-weight: 400;
  line-height: 1;
}

.large-book-placeholder em {
  margin-top: 13px;
  color: var(--gold-300);
  font-size: .8rem;
  font-style: normal;
  font-weight: 700;
}

.large-book-placeholder b {
  max-width: 250px;
  margin-top: 7px;
  font-size: .72rem;
  font-weight: 500;
  line-height: 1.5;
}

.large-book-placeholder small {
  margin-top: 25px;
  color: #E4DAEA;
}

.hero-person {
  position: relative;
}

.hero-person img {
  width: 100%;
  min-height: 440px;
  object-fit: cover;
  object-position: center 24%;
  filter: saturate(.78);
}

.hero-person > div {
  position: absolute;
  right: 20px;
  bottom: 20px;
  left: 20px;
  display: flex;
  flex-direction: column;
  padding: 18px;
  color: var(--ink);
  background: rgba(245, 242, 238, .96);
}

.hero-person > div strong {
  font-size: .88rem;
}

.hero-person > div span {
  color: var(--ink-soft);
  font-size: .69rem;
}

.compact-person img {
  min-height: 360px;
}

.subpage-section {
  padding: 104px 0;
}

.paper-section {
  background: var(--paper);
}

.dark-section {
  color: var(--white);
  background: var(--plum-950);
}

.dark-section .subpage-section-head > p:last-child {
  color: #E4DAEA;
}

.subpage-section-head {
  max-width: 800px;
  margin-bottom: 45px;
}

.subpage-section-head > p:last-child {
  max-width: 760px;
  color: var(--ink-soft);
}

.cards-2,
.cards-3,
.cards-4 {
  display: grid;
  gap: 18px;
}

.cards-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.cards-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.cards-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.detail-offer-card,
.info-card,
.program-card,
.whitepaper-card,
.reference-page-grid article {
  position: relative;
  padding: 36px 32px;
  border: 1px solid var(--line);
  background: var(--white);
}

.detail-offer-card {
  display: flex;
  min-height: 520px;
  flex-direction: column;
}

.featured-detail-card {
  border-top: 5px solid var(--gold-500);
}

.card-kicker,
.program-card > span,
.info-card > span,
.whitepaper-card > span,
.reference-page-grid article > span {
  display: block;
  margin-bottom: 25px;
  color: #70501F;
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.detail-offer-card > p,
.info-card p,
.program-card p,
.whitepaper-card p {
  color: var(--ink-soft);
  font-size: .84rem;
}

.detail-offer-card .check-list {
  margin: 13px 0 28px;
}

.detail-price {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 15px;
  margin-top: auto;
  padding-top: 24px;
  border-top: 2px solid var(--plum-900);
}

.detail-price strong,
.program-card > strong,
.single-price strong,
.action-box > strong,
.dark-info-card > strong {
  color: var(--plum-900);
  font-family: var(--serif);
  font-size: 1.65rem;
  font-weight: 400;
}

.detail-price span,
.program-card small,
.single-price span {
  color: var(--ink-soft);
  font-size: .7rem;
}

.compact-cards .info-card {
  min-height: 250px;
}

.info-card h3 {
  font-size: 1.12rem;
}

.split-layout,
.form-layout,
.profile-split,
.page-cta-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: start;
  gap: 90px;
}

.phase-list article,
.question-list > div,
.question-steps li {
  display: grid;
  grid-template-columns: 40px 1fr;
  gap: 17px;
  padding: 24px 0;
  border-top: 1px solid var(--line);
}

.phase-list article > span,
.question-list span,
.question-steps span,
.number-list span {
  color: #70501F;
  font-size: .72rem;
  font-weight: 700;
}

.phase-list h3,
.phase-list p,
.question-list p,
.question-steps p {
  margin-bottom: 0;
}

.phase-list p,
.question-list p,
.question-steps p {
  color: var(--ink-soft);
  font-size: .83rem;
}

.fit-box {
  padding: 34px;
  background: var(--paper);
}

.fit-box > span {
  display: block;
  margin: 20px 0 8px;
  color: var(--plum-900);
  font-size: .78rem;
  font-weight: 700;
}

.fit-box > span:first-child {
  margin-top: 0;
}

.price-table-wrap {
  overflow-x: auto;
  border: 1px solid var(--line);
}

.price-table {
  width: 100%;
  min-width: 620px;
  border-collapse: collapse;
  background: var(--white);
}

.price-table th,
.price-table td {
  padding: 21px 24px;
  border-bottom: 1px solid var(--line);
  text-align: left;
}

.price-table th {
  color: var(--white);
  background: var(--plum-900);
  font-size: .7rem;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.price-table td {
  font-size: .86rem;
}

.price-table td:last-child {
  color: var(--plum-900);
  font-weight: 700;
}

.table-note {
  margin: 17px 0 0;
  color: var(--ink-soft);
  font-size: .72rem;
}

.timeline-4 {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 2px solid var(--plum-900);
}

.timeline-4 article {
  min-height: 260px;
  padding: 29px 24px;
  border-right: 1px solid var(--line);
}

.timeline-4 article:last-child {
  border-right: 0;
}

.timeline-4 article > span {
  display: block;
  margin-bottom: 30px;
  color: #70501F;
  font-size: .69rem;
  font-weight: 700;
}

.timeline-4 h3 {
  font-size: 1.08rem;
}

.timeline-4 p {
  color: var(--ink-soft);
  font-size: .78rem;
}

.single-price {
  display: flex;
  align-items: baseline;
  justify-content: flex-end;
  gap: 22px;
  margin-top: 26px;
  padding: 21px 0;
  border-top: 1px solid var(--line);
}

.dark-info-card {
  min-height: 270px;
  padding: 37px;
  border: 1px solid rgba(224, 198, 143, .34);
  background: rgba(255, 255, 255, .04);
}

.dark-info-card > span {
  display: block;
  margin-bottom: 26px;
  color: var(--gold-300);
  font-size: .69rem;
  font-weight: 700;
}

.dark-info-card p {
  color: #E4DAEA;
  font-size: .84rem;
}

.dark-info-card > strong {
  display: block;
  margin-top: 28px;
  color: var(--gold-300);
}

.program-card {
  display: flex;
  min-height: 390px;
  flex-direction: column;
}

.program-card > strong {
  display: block;
  margin-top: auto;
  padding-top: 22px;
  border-top: 1px solid var(--line);
}

.program-card small {
  display: block;
  margin-top: 5px;
  line-height: 1.45;
}

.academy-split {
  align-items: stretch;
}

.number-list {
  padding: 0;
  margin: 0;
  list-style: none;
}

.number-list li {
  display: grid;
  grid-template-columns: 38px 1fr;
  gap: 15px;
  padding: 17px 0;
  border-top: 1px solid var(--line);
  font-size: .83rem;
}

.license-box {
  box-shadow: none;
}

.license-box > p {
  color: var(--ink-soft);
  font-size: .83rem;
}

.license-rows,
.decision-rows {
  margin-top: 24px;
  border-top: 2px solid var(--plum-900);
}

.license-rows div,
.decision-rows div,
.link-row-list a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 16px 0;
  border-bottom: 1px solid var(--line);
  font-size: .78rem;
}

.license-rows b,
.decision-rows span,
.link-row-list span {
  font-weight: 500;
}

.license-rows strong,
.decision-rows strong,
.link-row-list b {
  color: var(--plum-900);
  text-align: right;
}

.license-box > small {
  display: block;
  margin-top: 20px;
  color: var(--ink-soft);
  font-size: .68rem;
}

.action-box > strong {
  display: block;
  margin-bottom: 16px;
  font-size: 2.1rem;
}

.action-box p {
  color: var(--ink-soft);
  font-size: .83rem;
}

.action-box .button {
  width: 100%;
  margin-top: 12px;
}

.large-checks li {
  padding-top: 16px;
  padding-bottom: 16px;
  font-size: .9rem;
}

.link-card {
  display: block;
  min-height: 260px;
  padding: 36px;
  border: 1px solid var(--line);
  transition: border-color .18s ease, transform .18s ease;
}

.link-card:hover {
  border-color: var(--gold-500);
  transform: translateY(-3px);
}

.link-card > span {
  color: #70501F;
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.link-card p {
  color: var(--ink-soft);
  font-size: .83rem;
}

.link-card b {
  display: block;
  margin-top: 35px;
  color: var(--plum-900);
  font-size: .76rem;
}

.canvas-field-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.canvas-field-grid article {
  min-height: 150px;
  padding: 25px;
  border: 1px solid var(--line);
  background: var(--paper);
}

.canvas-field-grid article > span {
  display: block;
  margin-bottom: 27px;
  color: #70501F;
  font-size: .7rem;
  font-weight: 700;
}

.canvas-field-grid article h3 {
  margin: 0;
  font-size: 1rem;
}

.canvas-field-grid .focus-field {
  color: var(--white);
  background: var(--plum-900);
}

.canvas-field-grid .focus-field > span {
  color: var(--gold-300);
}

.form-layout {
  align-items: start;
}

.subpage-form {
  padding: 38px;
  border: 1px solid var(--line);
  background: var(--white);
}

.form-heading h2 {
  margin-bottom: 11px;
  font-family: var(--sans);
  font-size: 1.3rem;
  font-weight: 600;
  letter-spacing: -.02em;
}

.form-heading p,
.form-note {
  color: var(--ink-soft);
  font-size: .73rem;
}

.form-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 17px;
  margin: 27px 0 20px;
}

.form-grid label {
  display: grid;
  gap: 6px;
}

.form-grid label > span {
  font-size: .69rem;
  font-weight: 700;
}

.field-wide {
  grid-column: 1 / -1;
}

.form-grid input,
.form-grid select,
.form-grid textarea {
  width: 100%;
  min-height: 48px;
  padding: 11px 12px;
  border: 1px solid #E0C68F;
  border-radius: 0;
  color: var(--ink);
  background: var(--white);
}

.form-grid textarea {
  min-height: 110px;
  resize: vertical;
}

.form-check {
  display: grid;
  grid-template-columns: 18px 1fr;
  gap: 10px;
  margin: 0 0 20px;
  color: var(--ink-soft);
  font-size: .66rem;
  line-height: 1.55;
}

.form-check input {
  margin-top: 3px;
}

.subpage-form .button {
  width: 100%;
}

.form-note {
  margin: 11px 0 0;
  text-align: center;
}

.whitepaper-card {
  min-height: 320px;
}

.book-form-layout > div > .large-book-placeholder {
  width: min(260px, 100%);
  min-height: 360px;
  margin-top: 30px;
}

.question-list > div:first-child,
.question-steps li:first-child {
  border-top: 2px solid var(--plum-900);
}

.question-steps {
  padding: 0;
  margin: 0;
  list-style: none;
}

.profile-facts {
  border-top: 2px solid var(--plum-900);
}

.profile-facts div {
  padding: 20px 0;
  border-bottom: 1px solid var(--line);
}

.profile-facts span,
.profile-facts strong {
  display: block;
}

.profile-facts span {
  margin-bottom: 7px;
  color: #70501F;
  font-size: .68rem;
  font-weight: 700;
  text-transform: uppercase;
}

.profile-facts strong {
  font-size: .83rem;
}

.person-card {
  overflow: hidden;
  border: 1px solid var(--line);
  background: var(--white);
}

.person-card img {
  width: 100%;
  aspect-ratio: .9;
  object-fit: cover;
  object-position: center top;
  filter: saturate(.72);
}

.person-card h3,
.person-card p {
  margin-right: 21px;
  margin-left: 21px;
}

.person-card h3 {
  margin-top: 20px;
  margin-bottom: 7px;
  font-size: .95rem;
}

.person-card p {
  margin-bottom: 22px;
  color: var(--ink-soft);
  font-size: .71rem;
}

.publication-page-grid {
  align-items: stretch;
}

.book-page-card {
  display: flex;
  flex-direction: column;
  padding: 22px;
  border: 1px solid var(--line);
  background: var(--paper);
  height: 100%;
}

.book-page-card img,
.book-page-card > .large-book-placeholder {
  width: 100%;
  min-height: 240px;
  max-width: 200px;
  aspect-ratio: .72;
  object-fit: cover;
  box-shadow: none;
}

.book-page-card h3,
.draft-ten.draft-v4 .book-page-card h3 {
  margin: 36px 0 8px;
  font-size: 1rem;
  min-height: 2.7em;
}

.book-page-card p,
.draft-ten.draft-v4 .site-shell .book-page-card p {
  flex: 1;
  margin-bottom: 0;
  color: var(--ink-soft);
  font-size: .9rem;
  line-height: 1.6;
}

.metric-panel {
  display: flex;
  min-height: 270px;
  flex-direction: column;
  justify-content: center;
  padding: 40px;
  color: var(--white);
  background: var(--plum-900);
}

.metric-panel > strong {
  font-family: var(--serif);
  font-size: clamp(3rem, 6vw, 5.2rem);
  font-weight: 400;
  line-height: 1;
}

.metric-panel > span {
  margin: 13px 0 35px;
  color: #E4DAEA;
  font-size: .78rem;
}

.metric-panel .text-link {
  color: var(--gold-300);
}

.link-row-list {
  border-top: 2px solid var(--plum-900);
}

.link-row-list a:hover span {
  color: #70501F;
}

.reference-page-grid article {
  min-height: 340px;
}

.reference-page-grid blockquote {
  min-height: 130px;
  margin: 35px 0 27px;
  color: var(--plum-900);
  font-family: var(--serif);
  font-size: 1.28rem;
  line-height: 1.5;
}

.reference-page-grid article > p {
  color: var(--ink-soft);
  font-size: .72rem;
}

.cross-list li {
  padding: 13px 0 13px 25px;
}

.cross-list li::before {
  position: absolute;
  top: 13px;
  left: 0;
  color: #70501F;
  content: "×";
  font-weight: 700;
}

.plain-box {
  padding: 36px;
  border-left: 4px solid var(--gold-500);
  background: var(--paper);
}

.plain-box p {
  margin: 0;
  color: var(--ink-soft);
  font-size: .84rem;
}

.booking-placeholder {
  box-shadow: none;
}

.calendar-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  margin: 24px 0 12px;
  padding-bottom: 12px;
  border-bottom: 2px solid var(--plum-900);
}

.calendar-head span {
  color: var(--ink-soft);
  font-size: .73rem;
}

.calendar-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 5px;
  margin-bottom: 24px;
}

.calendar-grid span {
  display: flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  color: var(--ink-soft);
  background: #E4DAEA;
  font-size: .69rem;
}

.calendar-grid .available {
  color: var(--plum-950);
  background: var(--gold-300);
  font-weight: 700;
}

.booking-placeholder .button {
  width: 100%;
}

.page-cta {
  padding: 76px 0;
  color: var(--white);
  background: var(--plum-900);
}

.page-cta-grid {
  align-items: center;
}

.page-cta h2 {
  margin-bottom: 0;
}

.page-cta p:not(.eyebrow) {
  color: #E4DAEA;
  font-size: .86rem;
}

.page-cta .button {
  margin-top: 12px;
}

@container (max-width: 800px) {
  h1 {
    font-size: 2.5rem;
  }

  h2 {
    font-size: 2rem;
  }

  .section {
    padding: 64px 0;
  }

  .section-inner {
    width: calc(100% - 48px);
  }

  .site-header {
    min-height: 70px;
    padding: 0 24px;
  }

  .brand-logo {
    width: 183px;
  }

  .desktop-nav {
    display: none;
  }

  .mobile-menu-button {
    display: flex;
  }

  .hero-grid {
    min-height: auto;
    grid-template-columns: 1fr;
  }

  .hero-copy {
    padding: 52px 0 40px;
  }

  .hero-intro {
    font-size: .92rem;
  }

  .hero-actions {
    align-items: flex-start;
    flex-direction: column;
    gap: 17px;
  }

  .hero-note {
    margin-top: 17px;
  }

  .hero-portrait {
    min-height: 330px;
  }

  .portrait-caption {
    right: 20px;
    bottom: 19px;
    left: 20px;
  }

  .proof-grid {
    grid-template-columns: 1fr;
  }

  .proof-item {
    min-height: 74px;
    padding: 16px 0;
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }

  .proof-item:last-child {
    border-bottom: 0;
  }

  .section-heading,
  .references-heading {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .section-heading h2 {
    margin-bottom: 19px;
  }

  .offer-grid,
  .deliverable-grid,
  .academy-intro,
  .kiri-grid,
  .resources-grid,
  .expertise-grid,
  .reference-grid,
  .conversation-grid,
  .footer-grid {
    grid-template-columns: 1fr;
  }

  .offer-card {
    min-height: auto;
    padding: 31px 27px;
  }

  .offer-card.featured {
    border-top-width: 4px;
  }

  .offer-lead {
    min-height: 0;
  }

  .process-route {
    align-items: flex-start;
    flex-direction: column;
    gap: 18px;
    padding: 24px;
  }

  .deliverable-grid,
  .academy-intro,
  .kiri-grid,
  .conversation-grid {
    gap: 55px;
  }

  .decision-sheet {
    padding: 26px 22px;
    transform: none;
  }

  .academy-intro-copy {
    padding-top: 0;
  }

  .academy-grid {
    grid-template-columns: 1fr;
  }

  .academy-role {
    min-height: 270px;
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }

  .academy-role:last-child {
    border-bottom: 0;
  }

  .academy-license {
    grid-template-columns: 1fr;
    gap: 28px;
    padding: 30px 26px;
  }

  .academy-license .button {
    width: 100%;
  }

  .sheet-metrics {
    align-items: stretch;
  }

  .sheet-metrics div {
    padding: 10px 7px;
  }

  .kiri-card {
    order: 2;
    padding: 27px 22px;
  }

  .kiri-copy {
    order: 1;
  }

  .kiri-facts {
    align-items: flex-start;
    flex-direction: column;
  }

  .resources-intro {
    padding: 0 0 8px;
  }

  .resource-card {
    min-height: 230px;
    padding: 26px 24px;
  }

  .expertise-heading {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .expertise-heading h2 {
    margin-bottom: 19px;
  }

  .expertise-panel {
    padding: 26px 22px;
  }

  .panel-heading {
    min-height: 0;
  }

  .book-offer {
    grid-template-columns: 102px minmax(0, 1fr);
    gap: 15px;
    padding: 17px;
  }

  .book-placeholder {
    min-height: 180px;
    aspect-ratio: auto;
    padding: 13px 10px;
  }

  .book-placeholder > strong {
    margin-top: 22px;
    font-size: 1.12rem;
  }

  .book-offer-copy h4 {
    font-size: 1.2rem;
  }

  .book-offer-copy .button {
    margin-top: 4px;
  }

  .publication-row {
    min-height: 0;
    grid-template-columns: 72px minmax(0, 1fr);
    gap: 15px;
    padding: 13px;
  }

  .team-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  .team-card > div {
    min-height: 130px;
    padding: 17px 14px;
  }

  .team-card h4 {
    font-size: .9rem;
  }

  .references-heading > p {
    margin-top: 18px;
  }

  .reference-grid {
    gap: 11px;
  }

  .reference-card {
    min-height: 210px;
    padding: 27px;
  }

  .path-row {
    position: relative;
    min-height: 0;
    grid-template-columns: 34px 1fr;
    gap: 7px 12px;
    padding: 24px 0;
  }

  .path-row:hover {
    padding: 24px 10px;
  }

  .path-name {
    padding-right: 30px;
  }

  .path-copy,
  .path-price {
    grid-column: 2;
    text-align: left;
  }

  .path-arrow {
    position: absolute;
    top: 23px;
    right: 0;
  }

  .conversation-questions {
    padding: 25px 22px;
  }

  .footer-grid {
    gap: 36px;
  }

  .footer-bottom {
    align-items: flex-start;
    flex-direction: column;
    gap: 7px;
  }

  .subpage-hero-grid {
    min-height: 0;
    grid-template-columns: 1fr;
    gap: 48px;
    padding-top: 48px;
    padding-bottom: 58px;
  }

  .subpage-hero h1 {
    font-size: 2.45rem;
  }

  .breadcrumb {
    margin-bottom: 28px;
  }

  .subpage-hero-intro {
    font-size: .91rem;
  }

  .subpage-hero-side {
    width: 100%;
  }

  .hero-price-card,
  .action-box,
  .license-box,
  .booking-placeholder,
  .subpage-form {
    padding: 26px 22px;
  }

  .hero-score-card {
    padding: 24px 21px;
    transform: none;
  }

  .hero-role-list span,
  .reference-hero-list span {
    padding: 17px 3px;
  }

  .canvas-preview,
  .paper-stack {
    min-height: 300px;
  }

  .paper-stack span {
    width: 66%;
    padding: 18px;
    font-size: 1rem;
  }

  .large-book-placeholder {
    width: min(270px, 90%);
    min-height: 380px;
    margin: 0 auto;
  }

  .hero-person img {
    min-height: 360px;
  }

  .subpage-section {
    padding: 68px 0;
  }

  .subpage-section-head {
    margin-bottom: 31px;
  }

  .cards-2,
  .cards-3,
  .cards-4,
  .split-layout,
  .form-layout,
  .profile-split,
  .page-cta-grid {
    grid-template-columns: 1fr;
  }

  .cards-2,
  .cards-3,
  .cards-4 {
    gap: 14px;
  }

  .split-layout,
  .form-layout,
  .profile-split,
  .page-cta-grid {
    gap: 40px;
  }

  .detail-offer-card,
  .info-card,
  .program-card,
  .whitepaper-card,
  .reference-page-grid article {
    min-height: 0;
    padding: 29px 24px;
  }

  .detail-price {
    align-items: flex-start;
    flex-direction: column;
  }

  .fit-box,
  .plain-box,
  .dark-info-card,
  .link-card,
  .metric-panel {
    padding: 28px 24px;
  }

  .price-table-wrap {
    margin-right: -24px;
  }

  .timeline-4 {
    grid-template-columns: 1fr;
  }

  .timeline-4 article {
    min-height: 0;
    padding: 25px 0;
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }

  .timeline-4 article > span {
    margin-bottom: 15px;
  }

  .single-price {
    align-items: flex-start;
    flex-direction: column;
    gap: 7px;
  }

  .program-card > strong {
    margin-top: 23px;
  }

  .license-rows div,
  .decision-rows div,
  .link-row-list a {
    align-items: flex-start;
    flex-direction: column;
    gap: 4px;
  }

  .license-rows strong,
  .decision-rows strong,
  .link-row-list b {
    text-align: left;
  }

  .canvas-field-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .canvas-field-grid article {
    min-height: 125px;
    padding: 19px;
  }

  .form-grid {
    grid-template-columns: 1fr;
  }

  .field-wide {
    grid-column: auto;
  }

  .book-form-layout > div > .large-book-placeholder {
    margin-right: auto;
    margin-left: auto;
  }

  .person-card img {
    max-height: 420px;
    aspect-ratio: 1;
  }

  .book-page-card img,
  .book-page-card > .large-book-placeholder {
    width: min(270px, 100%);
    min-height: 360px;
    margin: 0 auto;
  }

  .reference-page-grid blockquote {
    min-height: 0;
    font-size: 1.12rem;
  }

  .page-cta {
    padding: 58px 0;
  }
}

.prototype-stage.is-mobile {
  display: flex;
  justify-content: center;
  padding: 28px 16px 60px;
}

.prototype-stage.is-mobile .site-shell {
  width: 390px;
  max-width: calc(100vw - 32px);
  height: min(812px, calc(100vh - 110px));
  min-height: 620px;
  overflow-x: hidden;
  overflow-y: auto;
  border: 9px solid #211D23;
  border-radius: 30px;
  box-shadow: 0 30px 90px rgba(24, 15, 27, .28);
}

.prototype-stage.is-mobile .site-shell::-webkit-scrollbar {
  width: 0;
}

@media (max-width: 700px) {
  .prototype-bar {
    position: relative;
    align-items: flex-start;
    flex-direction: column;
    padding: 12px;
  }

  .prototype-title {
    width: 100%;
  }

  .prototype-actions {
    width: 100%;
    justify-content: space-between;
    flex-wrap: wrap;
  }

  .page-picker {
    width: 100%;
  }

  .page-picker select {
    width: 100%;
    max-width: none;
  }

  .prototype-stage {
    padding: 0;
  }

  .site-shell {
    box-shadow: none;
  }

  .prototype-stage.is-mobile {
    padding: 16px 8px 40px;
  }

  .prototype-stage.is-mobile .site-shell {
    max-width: calc(100vw - 16px);
    height: 780px;
  }

  .wix-notes {
    padding: 24px;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }
}
/* Förderhinweis: einfacher Wix-Abschnitt mit Text, Link und optionalem Akkordeon. */
.funding-section { padding: 2rem 0; scroll-margin-top: 7rem; }
.funding-note { box-sizing: border-box; border: 1px solid #E0C68F; border-left: 4px solid #70501F; background: #F3EFF6; padding: clamp(1.25rem, 4vw, 2.5rem); color: #211328; }
.funding-note h2 { font-size: clamp(1.5rem, 3vw, 2rem); line-height: 1.25; margin: .5rem 0 1rem; }
.funding-note p { font-size: 1rem; line-height: 1.65; max-width: 76ch; margin: .75rem 0; }
.funding-note details { margin: 1rem 0; }
.funding-note summary { cursor: pointer; font-weight: 600; padding: .65rem 0; }
.funding-note a { display: inline-block; padding: .65rem 0; overflow-wrap: anywhere; }
.funding-note .funding-date { font-size: .875rem; }
@media (max-width: 640px) { .funding-note { width: calc(100% - 2rem); margin-inline: auto; } }

/* Entwurf 10: ruhigeres Raster und kompakte mobile Inhalte. */
/* Entwurf 11: direkte Wissensnavigation und kurze Anfrage-Landingpages. */
.knowledge-menu { position: relative; color: #EEE8F1; font-size: .875rem; font-weight: 600; }
.knowledge-menu summary { cursor: pointer; padding: 12px 0; }
.knowledge-links { position: absolute; top: 100%; left: -18px; width: 240px; padding: 14px 18px; background: #211328; border: 1px solid #C7A05B; box-shadow: 0 12px 25px #21132822; z-index: 30; }
.draft-ten .knowledge-links a { display: block; padding: 10px 0; font-size: .875rem; }
.draft-ten .knowledge-links a::after { display: none; }
.inquiry-top { background: #F3EFF6; padding: 40px 0 52px; }
.draft-ten .inquiry-top h1 { font-size: 2.25rem; }
.inquiry-context { border-left: 3px solid #C7A05B; padding: 12px 16px; margin: 20px 0; }
.inquiry-context p { margin: 0; }
.editorial-open { border-top: 1px solid var(--line); margin-top: 24px; padding-top: 20px; }
.draft-ten .editorial-open p { font-size: .875rem; }
.draft-ten .subpage-section.download-short { padding-top: 32px; }
.draft-ten .subpage-hero.short-hero .subpage-hero-grid { grid-template-columns: 1fr; padding: 30px 0; }
.draft-ten .short-hero .subpage-hero-side { display: none; }
.draft-ten .short-hero h1 { max-width: 850px; }
@container (max-width: 800px) {
  .knowledge-links { position: static; width: 100%; box-shadow: none; border: 0; padding: 0 0 12px 18px; }
  .mobile-menu .knowledge-menu summary { padding: 14px 0; border-bottom: 1px solid #FFFFFF22; }
  .inquiry-top { padding: 28px 0 36px; }
  .draft-ten .inquiry-top h1 { font-size: 1.8rem; }
  .draft-ten .inquiry-top .form-layout { gap: 20px; }
  .draft-ten .short-hero .hero-actions { display: none; }
  .draft-ten .short-hero .subpage-hero-grid { gap: 0; }
  .draft-ten .short-hero .subpage-hero-intro { margin-bottom: 0; }
}
:root { --paper: #F3EFF6; --line: #E4DAEA; }
html { scroll-padding-top: 5rem; }
.draft-ten h1, .draft-ten h2 { font-family: var(--sans); font-weight: 600; letter-spacing: -.035em; line-height: 1.15; }
.draft-ten h1 { font-size: clamp(2.2rem, 4.4vw, 3.5rem); }
.draft-ten h2 { font-size: clamp(1.7rem, 3vw, 2.5rem); }
.draft-ten h3 { overflow-wrap: anywhere; }
.draft-ten p { font-size: 1rem; line-height: 1.65; }
.draft-ten .section-inner { width: min(980px, calc(100% - 64px)); }
.draft-ten .section, .draft-ten .subpage-section { padding: 72px 0; }
.draft-ten .eyebrow, .draft-ten .card-kicker, .draft-ten .resource-type { font-size: .875rem; letter-spacing: .06em; }
.draft-ten .button { font-size: .9375rem; min-height: 48px; line-height: 1.45; text-align: center; }
.draft-ten .text-link { font-size: .9375rem; line-height: 1.5; text-decoration: underline; text-underline-offset: 4px; }
.draft-ten .text-link:hover { text-decoration-thickness: 2px; }
.draft-ten .section-heading { max-width: 750px; margin-bottom: 32px; }
.draft-ten .section-heading h2 { max-width: none; }
.draft-ten .section-heading > p:last-child { max-width: 70ch; font-size: 1rem; }
.draft-ten .hero-editorial { color: var(--ink); background: #FFFFFF; }
.draft-ten .hero-grid { min-height: 0; padding: 64px 0; grid-template-columns: 1.2fr .8fr; gap: 48px; align-items: center; }
.draft-ten .hero-copy { padding: 0; }
.draft-ten .hero-intro { max-width: 53ch; color: var(--ink-soft); font-size: 1.0625rem; }
.draft-ten .hero-note { margin: 20px 0 0; color: var(--ink-soft); font-size: .875rem; max-width: 44ch; }
.draft-ten .hero-actions { flex-wrap: wrap; gap: 18px 24px; }
.draft-ten .hero-portrait { margin: 0; height: 410px; min-height: 0; border-radius: 2px; }
.draft-ten .hero-portrait img { height: 100%; min-height: 0; object-fit: cover; object-position: center; }
.draft-ten .portrait-caption { bottom: 24px; left: 24px; right: 20px; color: white; align-items: flex-start; flex-direction: column; gap: 8px; }
.draft-ten .portrait-caption strong { font-size: 1rem; }
.draft-ten .portrait-caption span { font-size: .875rem; }
.case-strip { padding: 28px 0 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); background: var(--paper); }
.case-strip-grid { display: grid; grid-template-columns: 1fr 1.3fr; gap: 48px; align-items: start; }
.case-strip-grid h2 { font-size: 1.35rem; margin-bottom: 20px; }
.case-strip-grid .eyebrow { margin-bottom: 12px; }
.case-strip-grid p { margin-bottom: 12px; }
.client-line { display: flex; align-items: center; flex-wrap: wrap; gap: 14px 26px; padding: 22px 0; margin-top: 18px; border-top: 1px solid var(--line); }
.client-line span { font-size: .875rem; color: var(--ink-soft); }
.client-line strong { font-size: .9375rem; }
.draft-ten .offer-card { padding: 28px; min-height: 0; display: flex; flex-direction: column; }
.draft-ten .offer-card h3 { margin-top: 16px; font-size: 1.5rem; }
.draft-ten .offer-card.featured { background: #F3EFF6; border-top: 4px solid var(--plum-900); }
.draft-ten .offer-card .feature-list { flex: 1; }
.draft-ten .feature-list li, .draft-ten .check-list li { font-size: 1rem; }
.draft-ten .offer-price { margin: 16px 0 20px; }
.draft-ten .offer-price strong { font-size: 2rem; }
.draft-ten .offer-footnote { margin-top: 14px; margin-bottom: 0; font-size: .875rem; }
.draft-ten .process-route { gap: 24px; margin-top: 24px; padding: 22px 0; border-top: 1px solid var(--line); background: transparent; }
.draft-ten .process-route > div { flex: 1; }
.draft-ten .process-route strong, .draft-ten .process-route span { font-size: 1rem; }
.draft-ten .process-route .text-link { max-width: 180px; }
.funding-inline { display: grid; grid-template-columns: 190px 1fr; gap: 24px; background: #F3EFF6; border-left: 3px solid #C7A05B; padding: 22px 24px; margin-top: 10px; }
.funding-label { font-size: .875rem; font-weight: 700; }
.funding-inline p { margin-bottom: 12px; }
.draft-ten .academy { background: var(--paper); }
.draft-ten .academy-intro { gap: 40px; margin-bottom: 30px; grid-template-columns: 1fr 1.2fr; }
.draft-ten .academy-intro-copy { padding: 0; }
.academy-rows { display: grid; grid-template-columns: 1fr 1fr; gap: 0 28px; border-top: 1px solid var(--line); }
.academy-row { display: grid; grid-template-columns: 26px 1fr; align-items: start; gap: 10px 16px; padding: 24px 0; border-bottom: 1px solid var(--line); }
.academy-row:hover h3 { text-decoration: underline; text-underline-offset: 4px; }
.academy-row h3 { font-size: 1.125rem; margin: 0 0 6px; }
.academy-row p { margin: 0; }
.academy-row > span:last-child { grid-column: 2; font-size: .875rem; color: var(--ink-soft); }
.academy-row .role-index { font-size: .875rem; color: #70501F; margin: 0; }
.draft-ten .academy-license { display: grid; grid-template-columns: 1fr auto; padding: 28px; gap: 28px; margin-top: 28px; }
.draft-ten .academy-license h3 { margin-top: 0; font-size: 1.3rem; }
.draft-ten .academy-license-copy p { font-size: 1rem; margin: 0; }
.draft-ten .home-team-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 18px; }
.draft-ten .home-team-grid .team-card { min-width: 0; border: 0; background: transparent; }
.draft-ten .home-team-grid img { width: 100%; aspect-ratio: 1; height: auto; object-fit: cover; }
.draft-ten .home-team-grid .team-card > div { padding: 18px 0 0; min-height: 0; }
.draft-ten .home-team-grid h3 { font-size: 1rem; margin-bottom: 8px; line-height: 1.4; }
.draft-ten .home-team-grid p { font-size: .875rem; margin-bottom: 0; }
.section-tail { display: inline-block; margin-top: 28px; }
.home-publications { background: var(--paper); }
.publication-feature-grid { display: grid; grid-template-columns: 1.35fr 1fr; gap: 32px; }
.draft-ten .book-offer { display: grid; grid-template-columns: 160px 1fr; gap: 24px; padding: 0; margin: 0; background: transparent; border: none; align-items: start; }
.draft-ten .book-placeholder { padding: 20px 16px; min-height: 250px; aspect-ratio: 2 / 3; box-shadow: none; transform: none; }
.draft-ten .book-placeholder > span { font-size: .875rem; }
.draft-ten .book-placeholder > strong { font-size: 1.6rem; margin-top: 30px; }
.draft-ten .book-placeholder > em { font-size: .875rem; }
.draft-ten .book-placeholder > b { font-size: .875rem; line-height: 1.45; font-weight: 500; }
.draft-ten .book-placeholder > small { font-size: .75rem; margin-top: 20px; }
.draft-ten .book-offer-copy h3 { font-size: 1.6rem; margin-top: 14px; margin-bottom: 12px; }
.draft-ten .book-offer-copy > p { font-size: 1rem; }
.draft-ten .book-offer-copy > small { font-size: .875rem; line-height: 1.5; }
.draft-ten .book-offer-copy .button { padding: 12px 16px; font-size: .9375rem; width: 100%; }
.draft-ten .publication-row { grid-template-columns: 65px minmax(0,1fr); min-height: 0; padding: 18px 0; gap: 18px; border-bottom: 1px solid var(--line); background: transparent; }
.draft-ten .publication-row:first-child { padding-top: 0; }
.draft-ten .publication-copy h3 { font-size: 1.0625rem; line-height: 1.4; margin: 8px 0; }
.draft-ten .publication-copy p, .draft-ten .publication-copy > span { font-size: .875rem; }
.draft-ten .resource-card { min-height: 0; padding: 26px 22px; }
.draft-ten .resource-card h3 { font-size: 1.25rem; }
.draft-ten .resource-card > p { font-size: 1rem; }
.draft-ten .resource-bottom { font-size: .875rem; margin-top: auto; }
.draft-ten .conversation-grid { gap: 40px; }
.draft-ten .conversation-questions li { font-size: 1rem; }
.draft-ten .subpage-hero-grid { grid-template-columns: 1.5fr 1fr; gap: 44px; min-height: 0; padding: 54px 0; }
.draft-ten .subpage-hero h1 { font-size: clamp(2rem,3.7vw,3rem); }
.draft-ten .subpage-hero-intro { font-size: 1.0625rem; }
.draft-ten .breadcrumb { margin-bottom: 20px; font-size: .875rem; }
.draft-ten .hero-price-card, .draft-ten .hero-role-list, .draft-ten .reference-hero-list { padding: 24px; }
.draft-ten .hero-price-card > strong { font-size: 2rem; overflow-wrap: anywhere; }
.draft-ten .hero-price-card li, .draft-ten .hero-price-card small { font-size: .875rem; }
.draft-ten .hero-price-card > span, .draft-ten .action-box > span, .draft-ten .license-box > span, .draft-ten .info-card > span, .draft-ten .timeline-4 article > span { font-size: .875rem; }
.draft-ten .large-book-placeholder > span, .draft-ten .large-book-placeholder > em, .draft-ten .large-book-placeholder > b { font-size: .875rem; }
.draft-ten .large-book-placeholder > small { font-size: .75rem; }
.draft-ten .breadcrumb { flex-wrap: wrap; }
.draft-ten .subpage-section-head { margin-bottom: 30px; }
.draft-ten .detail-offer-card { padding: 28px; }
.draft-ten .detail-offer-card h3 { font-size: 1.5rem; }
.draft-ten .detail-offer-card .button { margin-top: 24px; }
.draft-ten .detail-price { flex-wrap: wrap; gap: 8px 16px; }
.draft-ten .detail-price span, .draft-ten .table-note { font-size: .875rem; }
.draft-ten .price-table { min-width: 0; font-size: 1rem; }
.draft-ten .price-table th { font-size: .875rem; }
.draft-ten .price-table td { font-size: 1rem; }
.program-detail { display: grid; grid-template-columns: 1fr 1.5fr; gap: 40px; padding: 32px 0; border-top: 1px solid var(--line); scroll-margin-top: 6rem; }
.program-detail:last-child { border-bottom: 1px solid var(--line); }
.program-detail h3 { font-size: 1.5rem; }
.program-detail .program-meta { font-size: .875rem; color: var(--ink-soft); }
.program-detail .check-list { margin-bottom: 16px; }
.program-detail .program-price { display: flex; flex-wrap: wrap; gap: 8px 24px; margin: 22px 0; }
.program-price div { min-width: 160px; }
.program-price strong { display: block; font-size: 1.3rem; }
.program-price span { font-size: .875rem; color: var(--ink-soft); }
.draft-ten .license-rows b, .draft-ten .license-rows strong { font-size: .9375rem; }
.draft-ten .license-box { padding: 26px; }
.draft-ten .license-box small { font-size: .875rem; display: block; margin-top: 16px; }
.draft-ten .info-card p, .draft-ten .person-card p, .draft-ten .whitepaper-card p { font-size: 1rem; }
.draft-ten .form-grid label > span, .draft-ten .form-check, .draft-ten .form-note { font-size: .875rem; }
.draft-ten .form-grid input, .draft-ten .form-grid select, .draft-ten .form-grid textarea { min-width: 0; font-size: 1rem; }
.draft-ten .form-check { align-items: start; }
.draft-ten .form-check input { flex-shrink: 0; margin-top: 4px; }
.draft-ten .subpage-form { padding: 28px; }
.draft-ten .subpage-form .button { width: 100%; }
.form-status { margin-top: 20px; padding: 16px; border-left: 3px solid var(--gold-500); background: var(--paper); }
.draft-ten .whitepaper-card { display: flex; flex-direction: column; min-height: 0; }
.draft-ten .whitepaper-card h2 { font-size: 1.4rem; }
.whitepaper-card .button { margin-top: auto; }
.draft-ten .reference-page-grid { grid-template-columns: 1fr; }
.draft-ten .reference-page-grid article { display: grid; grid-template-columns: .8fr 1.2fr; gap: 24px 40px; padding: 30px; }
.draft-ten .reference-page-grid article h3 { font-size: 1.5rem; }
.draft-ten .reference-page-grid article p { font-size: 1rem; }
.reference-source { margin-top: 22px; font-size: .875rem; }
.draft-ten .page-cta { padding: 54px 0; }
.draft-ten .page-cta-grid { gap: 40px; }
.draft-ten .funding-note { padding: 28px; }
.draft-ten .funding-note h2 { font-size: 1.5rem; }
.funding-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 16px 24px; }
.draft-ten .site-footer p, .draft-ten .site-footer a, .draft-ten .site-footer span { font-size: .875rem; }
.draft-ten .site-header { padding-inline: max(32px,calc((100% - 980px)/2)); gap: 20px; }
.draft-ten .desktop-nav { gap: 18px; }
.draft-ten .desktop-nav a { font-size: .875rem; }
.draft-ten .brand-logo { width: 172px; height: auto; }
.draft-ten .prototype-title, .draft-ten .control, .draft-ten .page-picker select { font-size: .875rem; }
.draft-ten .control { min-height: 40px; }
.draft-ten .prototype-bar { gap: 14px; }
.draft-ten .skip-link { position: fixed; z-index: 300; top: -100px; left: 16px; padding: 12px 18px; background: white; color: var(--ink); }
.draft-ten .skip-link:focus { top: 8px; }
.draft-ten :focus-visible { outline: 3px solid #70501F; outline-offset: 4px; }
.draft-ten .subpage-hero :focus-visible, .draft-ten .site-header :focus-visible, .draft-ten .conversation :focus-visible { outline-color: var(--gold-300); }
.draft-ten [id] { scroll-margin-top: 5rem; }
.draft-ten .prototype-stage.is-mobile .site-shell { height: auto; min-height: 0; max-height: none; overflow: clip; }
.draft-ten .wix-notes { max-width: calc(100vw - 20px); }
.draft-ten .wix-notes p, .draft-ten .wix-notes span { font-size: .875rem; }
@container (max-width: 800px) {
  .draft-ten .section-inner { width: calc(100% - 40px); }
  .draft-ten .section, .draft-ten .subpage-section { padding: 44px 0; }
  .draft-ten h1 { font-size: 2.15rem; line-height: 1.18; }
  .draft-ten h2 { font-size: 1.7rem; }
  .draft-ten .hero-grid, .draft-ten .subpage-hero-grid { grid-template-columns: 1fr; gap: 30px; padding: 36px 0; }
  .draft-ten .hero-portrait { height: 255px; order: 2; }
  .draft-ten .hero-portrait img { height: 100%; }
  .draft-ten .hero-actions { flex-direction: column; align-items: stretch; gap: 16px; }
  .draft-ten .hero-actions .button { width: 100%; }
  .draft-ten .hero-actions .text-link { align-self: flex-start; }
  .draft-ten .hero-note { font-size: .875rem; }
  .case-strip-grid { grid-template-columns: 1fr; gap: 0; }
  .case-strip-grid h2 { font-size: 1.3rem; margin-bottom: 12px; }
  .client-line { gap: 10px 20px; }
  .client-line > span { width: 100%; }
  .draft-ten .offer-grid, .draft-ten .cards-2, .draft-ten .cards-3, .draft-ten .cards-4 { grid-template-columns: 1fr; }
  .draft-ten .offer-card { padding: 24px 22px; }
  .draft-ten .offer-card h3 { font-size: 1.35rem; }
  .draft-ten .process-route .text-link { max-width: none; }
  .funding-inline { grid-template-columns: 1fr; gap: 12px; padding: 20px; }
  .draft-ten .academy-intro { grid-template-columns: 1fr; gap: 6px; }
  .academy-rows { grid-template-columns: 1fr; }
  .academy-row { padding: 20px 0; }
  .draft-ten .academy-license { grid-template-columns: 1fr; padding: 24px; gap: 20px; }
  .draft-ten .home-team-grid, .draft-ten .team-page-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px 16px; }
  .draft-ten .home-team-grid h3, .draft-ten .team-page-grid h3 { font-size: 1rem; }
  .draft-ten .home-team-grid p, .draft-ten .team-page-grid p { font-size: .875rem; }
  .draft-ten .person-card h3, .draft-ten .person-card p { margin-left: 12px; margin-right: 12px; }
  .publication-feature-grid { grid-template-columns: 1fr; gap: 36px; }
  .draft-ten .book-offer { grid-template-columns: 1fr; gap: 24px; }
  .draft-ten .book-placeholder { width: 180px; min-height: 270px; margin: 0 auto; }
  .draft-ten .book-offer-copy .button { width: 100%; }
  .draft-ten .resource-card { padding: 24px; }
  .draft-ten .conversation-grid, .draft-ten .page-cta-grid { grid-template-columns: 1fr; gap: 28px; }
  .draft-ten .conversation-questions { padding: 24px; }
  .draft-ten .subpage-hero h1 { font-size: 2rem; }
  .draft-ten .subpage-hero-intro { font-size: 1rem; }
  .draft-ten .subpage-hero-side { max-width: 100%; }
  .draft-ten .hero-person img { min-height: 0; height: 260px; object-fit: cover; }
  .program-detail { grid-template-columns: 1fr; gap: 8px; padding: 28px 0; }
  .program-detail h3 { font-size: 1.35rem; }
  .draft-ten .price-table-wrap { overflow: visible; margin: 0; }
  .draft-ten .price-table, .draft-ten .price-table tbody { display: block; width: 100%; }
  .draft-ten .price-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  .draft-ten .price-table tr { display: block; margin-bottom: 14px; padding: 14px 20px; border: 1px solid var(--line); background: white; }
  .draft-ten .price-table td { display: grid; grid-template-columns: 1fr 1.2fr; gap: 16px; padding: 8px 0; border: 0; text-align: right; }
  .draft-ten .price-table td::before { content: attr(data-label); text-align: left; font-weight: 500; color: var(--ink-soft); font-size: .875rem; }
  .draft-ten .detail-offer-card, .draft-ten .subpage-form { padding: 24px; }
  .draft-ten .reference-page-grid article { grid-template-columns: 1fr; gap: 8px; padding: 24px; }
  .draft-ten .funding-note { padding: 24px; }
  .funding-actions { align-items: stretch; flex-direction: column; gap: 8px; }
  .draft-ten .funding-note .button { padding: 12px 16px; }
  .draft-ten .page-cta .button { width: 100%; }
  .draft-ten .site-header { padding-inline: 20px; }
  .draft-ten .brand-logo { width: 162px; }
}
@container (max-width: 360px) {
  .draft-ten .home-team-grid, .draft-ten .team-page-grid { grid-template-columns: 1fr; }
  .draft-ten .home-team-grid .team-card { display: grid; grid-template-columns: 95px 1fr; gap: 16px; }
  .draft-ten .home-team-grid .team-card > div { padding: 0; }
  .draft-ten .home-team-grid img { width: 95px; }
}
@media (max-width: 700px) {
  .draft-ten .prototype-stage.is-mobile { padding: 0; }
  .draft-ten .prototype-stage.is-mobile .site-shell { width: 100%; max-width: none; border: 0; border-radius: 0; }
  .draft-ten .prototype-title { font-size: .875rem; }
  .draft-ten .prototype-bar { padding: 10px; }
}

/* Final visual system: explicit surface pairs and shared spacing. */
.draft-ten .prototype-stage.is-mobile .site-shell { width: 390px; }
:root {
  --plum-950: #211328;
  --plum-900: #211328;
  --plum-800: #3A2145;
  --gold-500: #C7A05B;
  --gold-300: #E0C68F;
  --gold-text: #70501F;
  --ink: #211D23;
  --ink-soft: #514A55;
  --paper: #E4DAEA;
  --paper-2: #E4DAEA;
  --card: #EEE8F1;
  --white: #FFFFFF;
  --line: #807487;
  --control-line: #807487;
  --on-dark: #EEE8F1;
}
.draft-ten .site-shell { --gutter: 40px; color: var(--ink); }
.draft-ten .section-inner { width: min(980px, calc(100% - var(--gutter) * 2)); margin-inline: auto; }
.draft-ten .site-header { padding-inline: max(var(--gutter), calc((100% - 980px) / 2)); }
.draft-ten :is(h1,h2,h3,p,li,small,a,button,summary,span) { overflow-wrap: break-word; }
.draft-ten :is(h1,h2) { letter-spacing: -.025em; line-height: 1.2; }
.draft-ten :is(.hero-grid,.subpage-hero-grid,.publication-feature-grid,.book-offer,.academy-intro,.page-cta-grid,.conversation-grid) > * { min-width: 0; }
.draft-ten :is(.cards-2,.cards-3,.cards-4,.offer-grid,.team-grid) { gap: 24px; }
.draft-ten :is(.section,.subpage-section) { padding-block: 80px; }
.draft-ten :is(.offer-card,.detail-offer-card,.resource-card,.info-card,.link-card,.whitepaper-card,.subpage-form,.license-box,.action-box,.hero-price-card,.dark-info-card,.fit-box,.conversation-questions,.profile-facts,.booking-placeholder) { padding: 32px; }
.draft-ten :is(.offer-card,.detail-offer-card,.resource-card,.info-card,.link-card,.whitepaper-card,.subpage-form) { border-color: var(--line); }
.draft-ten :is(.hero-price-card,.license-box,.action-box) { box-shadow: none; border: 1px solid var(--line); }
.draft-ten :is(.eyebrow.dark,.card-kicker,.resource-type,.book-offer-kicker,.publication-copy > span,.role-index,.info-card > span,.timeline-4 article > span,.hero-price-card > span,.license-box > span,.action-box > span,.question-steps li > span,.link-card > span,.canvas-field-grid article > span) { color: var(--gold-text); }
.draft-ten :is(.offer-footnote,.offer-price > span,.detail-price span,.table-note,.resource-card > p,.team-card p,.publication-copy p,.book-offer-copy > small,.form-note,.form-check,.footer-bottom,.program-meta,.program-price span,.notes-intro,.wix-step p) { color: var(--ink-soft); }
.draft-ten :is(.book-offer,.publication-row,.team-card,.person-card,.whitepaper-card) { color: var(--ink); }
.draft-ten .book-offer { grid-template-columns: 168px minmax(0,1fr); padding: 28px; background: var(--white); border: 1px solid var(--line); }
.draft-ten .publication-feature-grid { grid-template-columns: 1.45fr 1fr; align-items: start; }
.draft-ten .book-offer-copy :is(h3,.book-offer-subtitle) { color: var(--ink); }
.draft-ten .book-offer-copy > p:not(.book-offer-subtitle) { color: var(--ink-soft); }
.draft-ten .book-offer-copy > small { margin-top: 16px; }
.draft-ten .book-placeholder { color: var(--white); padding: 24px 20px; min-height: 300px; }
.draft-ten :is(.book-placeholder,.large-book-placeholder) { background: var(--plum-900); }
.draft-ten :is(.book-placeholder,.large-book-placeholder) > :is(em,b,small) { color: var(--on-dark); }
.draft-ten :is(.book-placeholder,.large-book-placeholder) > span { color: var(--gold-300); }
.draft-ten .publication-row { border: 0; border-bottom: 1px solid var(--line); padding: 24px 0; }
.draft-ten .portrait-caption { position: static; padding: 20px 24px; background: var(--plum-950); gap: 4px; }
.draft-ten .portrait-caption span { color: var(--on-dark); }
.draft-ten .hero-portrait { height: auto; overflow: hidden; }
.draft-ten .hero-portrait img { height: 340px; }
.draft-ten .hero-portrait::after { display: none; }
.draft-ten :is(.site-header,.mobile-menu,.knowledge-links,.subpage-hero,.dark-section,.conversation,.academy-license,.page-cta) { color: var(--white); background-color: var(--plum-950); }
.draft-ten :is(.subpage-hero-intro,.breadcrumb,.dark-info-card p,.page-cta-grid > div > p,.conversation-copy > p,.conversation-questions li,.academy-license-copy p,.academy-license small,.dark-section .subpage-section-head > p:last-child) { color: var(--on-dark); }
.draft-ten :is(.eyebrow.light,.dark-section .eyebrow,.page-cta .eyebrow,.academy-license .eyebrow,.dark-info-card > span,.dark-info-card > strong,.conversation-questions > p) { color: var(--gold-300); }
.draft-ten .subpage-hero .hero-price-card p { color: var(--ink-soft); }
.draft-ten .dark-info-card { background: var(--plum-900); border-color: var(--control-line); }
.draft-ten .dark-info-card .text-link { color: var(--gold-300); }
.draft-ten :is(.subpage-hero,.page-cta,.dark-section,.conversation,.academy-license) .text-link.light { color: var(--white); }
.draft-ten .site-footer { background: var(--paper-2); color: var(--ink-soft); }
.draft-ten .site-footer a { color: var(--plum-900); }
.draft-ten .footer-bottom { border-color: var(--line); }
.draft-ten :is(.funding-inline,.funding-note) { background: var(--paper); border-color: var(--line); border-left-color: var(--gold-text); color: var(--ink); }
.draft-ten .funding-note { padding: 32px; }
.draft-ten .button { min-height: 48px; padding: 14px 24px; white-space: normal; font-size: 1rem; line-height: 1.5; border-radius: 3px; }
.draft-ten .button-dark { color: var(--white); background: var(--plum-900); }
.draft-ten .button-dark:hover { background: var(--plum-800); }
.draft-ten .button-gold { color: var(--plum-950); background: var(--gold-500); }
.draft-ten .button-gold:hover { background: var(--gold-300); }
.draft-ten .button-outline { color: var(--plum-900); border-color: var(--plum-900); background: var(--white); }
.draft-ten .button-outline:hover { color: var(--white); background: var(--plum-900); }
.draft-ten .text-link { display: inline-flex; align-items: center; min-height: 44px; padding-block: 8px; gap: 8px; color: var(--plum-900); font-weight: 600; }
.draft-ten :is(.funding-note,.book-offer-copy) .button { padding: 14px 20px; }
.draft-ten .single-price { flex-wrap: wrap; gap: 16px 24px; padding: 24px; }
.draft-ten .single-price p { margin: 0; }
.draft-ten .inquiry-top { padding-block: 40px 32px; }
.draft-ten .inquiry-top h1 { max-width: 24ch; }
.draft-ten .inquiry-context { margin-bottom: 0; }
.draft-ten .form-grid :is(input,select,textarea) { border: 1px solid var(--control-line); padding: 12px 14px; border-radius: 3px; }
.draft-ten .form-grid :is(input,textarea)::placeholder { color: var(--ink-soft); opacity: 1; }
.draft-ten .form-check input { width: 20px; height: 20px; accent-color: var(--plum-900); }
.draft-ten .form-check { grid-template-columns: 20px 1fr; gap: 12px; }
.draft-ten :is(.hero-role-list span,.reference-hero-list span,.detail-price span,.single-price span,.action-box > span,.action-box p,.hero-score-card small,.license-box small,.person-card p,.link-card b,.canvas-field-grid article > span,.large-book-placeholder > small,.book-placeholder > small,.wix-step > span,.notes-kicker) { font-size: .875rem; }
.draft-ten .knowledge-menu { font-size: .9375rem; }
.draft-ten .knowledge-links { padding: 12px; background: var(--plum-950); border-color: var(--control-line); }
.draft-ten .knowledge-links a { padding: 12px; color: var(--white); border-radius: 2px; }
.draft-ten .knowledge-links a:hover { color: var(--plum-950); background: var(--gold-300); }
.draft-ten :focus-visible { outline: 3px solid var(--gold-text); outline-offset: 4px; }
.draft-ten :is(.subpage-hero,.site-header,.mobile-menu,.dark-section,.conversation,.academy-license,.page-cta) :focus-visible { outline-color: var(--gold-300); }
.draft-ten .hero-price-card :focus-visible { outline-color: var(--gold-text); }
.draft-ten :is(.nav-cta,.offer-price > span,.book-offer-kicker,.conversation-questions li > span,.site-footer strong,.dark-info-card > span,.metric-panel > span,.link-row-list a,.question-steps li > span) { font-size: .875rem; }
.draft-ten :is(.page-cta-grid > div > p,.cross-list li) { font-size: 1rem; }
.draft-ten .metric-panel .text-link { color: var(--gold-300); }
.draft-ten .portrait-caption { align-items: flex-start; text-align: left; }
.draft-ten .portrait-caption :is(strong,span) { text-align: left; max-width: none; font-family: var(--sans); }
.draft-ten .site-shell { transition: none; }
.draft-ten .site-shell *, .draft-ten .site-shell *::before, .draft-ten .site-shell *::after { transition: none; }
.draft-ten :is(.phase-list article > span,.fit-box > span,.hero-person > div span,.profile-facts span) { font-size: .875rem; }
.draft-ten :is(.fit-box li,.profile-facts strong) { font-size: 1rem; }
.draft-ten .hero-person > div { position: static; color: var(--ink); background: var(--paper); padding: 24px; }
.draft-ten .book-placeholder { aspect-ratio: auto; height: auto; }
.draft-ten .book-placeholder > * { flex-shrink: 0; }
.draft-ten .book-placeholder > small { text-transform: none; letter-spacing: 0; }
.draft-ten :is(.split-layout,.form-layout,.cards-2,.cards-3,.cards-4,.phase-list,.program-detail,.profile-facts,.fit-box) > * { min-width: 0; }
.draft-ten .phase-list article { grid-template-columns: 32px minmax(0,1fr); gap: 16px; }
.draft-ten .palette-list { display: grid; gap: 12px; margin-block: 20px; }
.draft-ten .palette-row { display: grid; grid-template-columns: 28px 1fr; gap: 12px; align-items: center; }
.draft-ten .palette-swatch { width: 28px; height: 28px; border: 1px solid var(--control-line); border-radius: 3px; }
.draft-ten .palette-row code { font-size: .875rem; }
.draft-ten .design-spec { padding-block: 24px; border-top: 1px solid var(--line); }
.draft-ten .design-spec p { margin: 4px 0 16px; color: var(--ink-soft); font-size: .875rem; }
.draft-ten .palette-row strong { display: block; font-size: .875rem; line-height: 1.5; }
.draft-ten .palette-row p { margin: 4px 0 0; }
@container (max-width: 1050px) {
  .draft-ten .site-header { min-height: 80px; }
  .draft-ten .desktop-nav { display: none; }
  .draft-ten .mobile-menu-button { display: flex; }
  .draft-ten .publication-feature-grid { grid-template-columns: 1fr; }
  .draft-ten .book-offer { grid-template-columns: 180px minmax(0,1fr); gap: 32px; }
}
@container (max-width: 800px) {
  .draft-ten .section-inner { width: calc(100% - 48px); }
  .draft-ten .site-header { padding-inline: 24px; }
  .draft-ten .mobile-menu { padding: 16px 24px 24px; }
  .draft-ten :is(.section,.subpage-section) { padding-block: 52px; }
  .draft-ten :is(.offer-card,.detail-offer-card,.resource-card,.info-card,.link-card,.whitepaper-card,.subpage-form,.license-box,.action-box,.hero-price-card,.dark-info-card,.fit-box,.conversation-questions,.profile-facts,.booking-placeholder,.funding-note) { padding: 24px; }
  .draft-ten .hero-grid, .draft-ten .subpage-hero-grid { padding-block: 40px; }
  .draft-ten h1 { font-size: 2rem; }
  .draft-ten .subpage-hero h1 { font-size: 1.875rem; }
  .draft-ten h2 { font-size: 1.625rem; }
  .draft-ten .hero-portrait { height: auto; }
  .draft-ten .hero-portrait img { height: 280px; }
  .draft-ten .portrait-caption { padding: 20px; }
  .draft-ten .home-team-grid, .draft-ten .team-page-grid { grid-template-columns: 1fr; gap: 24px; }
  .draft-ten .home-team-grid .team-card { display: grid; grid-template-columns: 88px minmax(0,1fr); align-items: start; gap: 20px; }
  .draft-ten .home-team-grid img { width: 88px; }
  .draft-ten .home-team-grid .team-card > div { padding: 0; }
  .draft-ten .person-card :is(h3,p) { margin-inline: 24px; }
  .draft-ten .book-offer { grid-template-columns: 1fr; padding: 24px; gap: 28px; }
  .draft-ten .book-placeholder { width: 190px; min-height: 300px; }
  .draft-ten .knowledge-links { padding: 4px 0 4px 12px; }
  .draft-ten .knowledge-links a { padding: 12px; }
  .draft-ten .button { width: 100%; }
  .draft-ten .program-price { flex-direction: column; gap: 20px; }
  .draft-ten .license-rows div { flex-wrap: wrap; gap: 4px 16px; }
  .draft-ten .price-table td { grid-template-columns: minmax(0,1fr) minmax(0,1.4fr); gap: 12px; }
  .draft-ten .canvas-field-grid { grid-template-columns: 1fr; }
  .draft-ten :is(.cards-2,.cards-3,.cards-4,.split-layout,.form-layout,.program-detail) { grid-template-columns: minmax(0,1fr); }
  .draft-ten #anfrage .form-layout > .subpage-form { order: -1; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition: none !important; animation: none !important; }
}
.draft-ten .proof-intro { display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center; margin-bottom:32px; }
.draft-ten .proof-intro > div > strong { font-size:1.6rem; line-height:1.35; color:var(--plum-900); }
.draft-ten .proof-intro p { color:var(--ink-soft); }
.draft-ten .testimonial-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.draft-ten .text-testimonial { margin:0; padding:32px; background:var(--white); color:var(--ink); border:1px solid var(--line); }
.draft-ten .text-testimonial blockquote { margin:0 0 24px; font-size:1.15rem; line-height:1.7; font-style:normal; color:var(--ink); }
.draft-ten .text-testimonial figcaption { display:grid; gap:6px; font-size:.875rem; line-height:1.6; color:var(--ink-soft); }
.draft-ten .text-testimonial figcaption strong { color:var(--ink); }
.draft-ten .text-testimonial .text-link { font-size:.875rem; margin-top:16px; }
.draft-ten .process-entry { background:var(--paper); }
.draft-ten .process-entry .funding-inline { margin-top:32px; background:var(--white); }
.draft-ten .fit-editorial .section-inner { max-width:760px; }
.draft-ten .fit-editorial p { font-size:1.125rem; line-height:1.8; }
.draft-ten .home-faq { background:var(--paper); }
.draft-ten .home-faq details { border-bottom:1px solid var(--control-line); padding:20px 0; }
.draft-ten .home-faq summary { min-height:48px; display:list-item; cursor:pointer; font-weight:600; line-height:1.6; padding:12px 8px; color:var(--ink); }
.draft-ten .home-faq details p { max-width:70ch; padding:0 8px; }
.draft-ten .funding-warning { border-left:4px solid var(--gold-text); padding:16px 20px; background:var(--white); color:var(--ink); }
.draft-ten .funding-order { padding-left:24px; }
.draft-ten .funding-order li { padding:8px 0 8px 8px; line-height:1.7; }
.draft-ten .funding-table { width:100%; margin:24px 0; }
.draft-ten .funding-table caption { text-align:left; padding:0 0 16px; color:var(--ink-soft); }
@container (max-width: 760px) {
 .draft-ten .proof-intro,.draft-ten .testimonial-grid { grid-template-columns:minmax(0,1fr); gap:24px; }
 .draft-ten .text-testimonial { padding:24px; }
 .draft-ten .funding-note { padding:24px; }
 .draft-ten .funding-warning { padding:16px; }
 .draft-ten .funding-table tbody th { display:block; padding:16px; color:var(--ink); background:var(--paper); }
 .draft-ten .funding-table caption { display:block; width:100%; }
}

/* Surface contrast: card boundaries remain visible without hover. */
.draft-ten .profile-facts span { color:var(--ink-soft); }
.draft-ten :is(.offer-card,.detail-offer-card,.resource-card,.info-card,.link-card,.whitepaper-card,.fit-box,.profile-facts) {
  background: var(--card); border: 2px solid var(--line); color: var(--ink);
}
.draft-ten :is(.paper-section,.process-entry,.case-strip) :is(.info-card,.link-card,.whitepaper-card,.text-testimonial) {
  background: var(--white); border: 2px solid var(--line);
}
.draft-ten :is(.book-offer,.subpage-form,.license-box,.hero-price-card,.action-box,.person-card) {
  background: var(--white); border: 2px solid var(--line);
}
.draft-ten :is(.funding-inline,.funding-note) {
  background: var(--card); border: 2px solid var(--line); border-left: 5px solid var(--gold-text);
}
.draft-ten .process-entry .funding-inline { background: var(--white); }
.draft-ten :is(.offer-card.featured,.detail-offer-card.featured-detail-card) {
  background: var(--plum-900); border: 2px solid var(--plum-900); color: var(--white);
}
.draft-ten :is(.offer-card.featured,.detail-offer-card.featured-detail-card) :is(h3,p,li,strong,small,span) { color: var(--on-dark); }
.draft-ten :is(.offer-card.featured,.detail-offer-card.featured-detail-card) :is(h3,.offer-price strong,.detail-price strong) { color: var(--white); }
.draft-ten :is(.offer-card.featured,.detail-offer-card.featured-detail-card) .card-kicker { color: var(--gold-300); }
.draft-ten :is(.offer-card.featured,.detail-offer-card.featured-detail-card) :is(.offer-price,.detail-price) { border-color: var(--control-line); }
.draft-ten :is(.offer-card.featured,.detail-offer-card.featured-detail-card) .button {
  color: var(--plum-950); background: var(--gold-500); border-color: var(--gold-500);
}
.draft-ten :is(.offer-card.featured,.detail-offer-card.featured-detail-card) .button:hover { background:var(--gold-300); border-color:var(--gold-300); }
.draft-ten :is(.offer-card.featured,.detail-offer-card.featured-detail-card) :focus-visible { outline-color:var(--gold-300); }
.draft-ten .resource-card:hover { background:var(--paper); border-color:var(--plum-900); }
.draft-ten .academy-rows { gap:20px; border:0; }
.draft-ten .academy-row { background:var(--white); border:2px solid var(--line); padding:24px; }
.draft-ten .home-team-grid .team-card { background:var(--card); border:2px solid var(--line); }
.draft-ten .home-team-grid .team-card > div { padding:20px; }
@container (max-width:800px) {
  .draft-ten .home-team-grid .team-card { padding:20px; grid-template-columns:64px minmax(0,1fr); gap:16px; }
  .draft-ten .home-team-grid .team-card img { width:64px; }
  .draft-ten .home-team-grid .team-card > div { padding:0; }
  .draft-ten .academy-row { padding:24px; }
}

/* Final pass: saturated surfaces, visible selection routes and mobile actions. */
.draft-ten :is(.offer-card,.detail-offer-card,.resource-card,.occasion-card) { background:var(--plum-800); color:var(--white); border:2px solid var(--plum-800); }
.draft-ten :is(.offer-card,.detail-offer-card,.resource-card,.occasion-card) :is(h3,p,li,strong,small,span) { color:var(--on-dark); }
.draft-ten :is(.offer-card,.detail-offer-card,.resource-card,.occasion-card) :is(h3,.offer-price strong,.detail-price strong) { color:var(--white); }
.draft-ten :is(.offer-card,.detail-offer-card,.resource-card,.occasion-card) :is(.card-kicker,.resource-label,.text-link) { color:var(--gold-300); }
.draft-ten :is(.offer-card,.detail-offer-card,.resource-card,.occasion-card) .button { background:var(--gold-500); border-color:var(--gold-500); color:var(--plum-950); }
.draft-ten :is(.offer-card,.detail-offer-card) :is(.offer-price,.detail-price) { border-color:var(--control-line); }
.draft-ten :is(.offer-card.featured,.featured-detail-card) { background:var(--plum-950); border-color:var(--plum-950); }
.draft-ten :is(.resource-card,.occasion-card):hover { background:var(--plum-900); border-color:var(--plum-900); }
.draft-ten :is(.offer-card,.detail-offer-card,.resource-card,.occasion-card) :focus-visible { outline-color:var(--gold-300); }
.draft-ten :is(.resource-card,.occasion-card):focus-visible { outline-color:var(--gold-text); }
.draft-ten .occasion-section { padding:64px 0; background:var(--white); }
.draft-ten .occasion-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin-top:28px; }
.draft-ten .occasion-card { display:flex; flex-direction:column; align-items:flex-start; padding:32px; text-decoration:none; }
.draft-ten .occasion-card > span { color:var(--gold-300); font-size:.875rem; }
.draft-ten .occasion-card h3 { font-size:1.5rem; line-height:1.4; margin:16px 0; }
.draft-ten .occasion-card strong { display:block; margin-top:auto; padding-top:16px; text-decoration:underline; text-underline-offset:5px; }
.draft-ten .academy-next { background:var(--plum-950); color:var(--white); padding:48px 0; }
.draft-ten .academy-next .section-inner { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); align-items:center; gap:40px; }
.draft-ten .academy-next :is(h2,p) { color:var(--on-dark); }
.draft-ten .next-step-note { font-size:.875rem; line-height:1.6; margin-top:12px; }
.draft-ten .academy-row-price { line-height:1.7; }
.draft-ten .footer-sitemap { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; padding:32px 0; border-top:1px solid var(--line); }
.draft-ten .footer-sitemap > div { display:flex; flex-direction:column; align-items:flex-start; }
.draft-ten .footer-sitemap strong { margin-bottom:12px; color:var(--ink); }
.draft-ten .footer-sitemap a { min-height:44px; padding:8px 0; color:var(--ink); line-height:1.6; }
.draft-ten .dimension-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.draft-ten .dimension-list article { padding:24px; border:2px solid var(--line); background:var(--card); }
.draft-ten .program-hero-price { font-size:1.125rem; color:var(--gold-300); line-height:1.7; }
.draft-ten .mobile-header-cta,.draft-ten .mobile-contact-bar { display:none; }
.draft-ten .prototype-stage.is-mobile .site-shell { width:min(390px,100%); }
.draft-ten:has(.prototype-stage.is-mobile) .mobile-contact-bar { display:flex; }
.draft-ten .mobile-contact-bar { position:fixed; bottom:0; left:50%; transform:translateX(-50%); width:min(390px,100%); z-index:25; flex-direction:column; padding:12px 20px max(12px,env(safe-area-inset-bottom)); background:var(--plum-950); color:var(--on-dark); box-shadow:0 -3px 16px #21132833; }
.draft-ten .mobile-contact-bar .button { min-height:48px; width:100%; padding:12px; }
.draft-ten .mobile-contact-bar span { font-size:.875rem; text-align:center; line-height:1.5; padding-top:6px; }
.draft-ten:has(:is(input,select,textarea):focus) .mobile-contact-bar { display:none; }
@container (max-width:1050px) {
 .draft-ten .site-header { gap:12px; }
 .draft-ten .brand { margin-right:auto; min-width:0; }
 .draft-ten .mobile-header-cta { display:flex; align-items:center; justify-content:center; min-height:48px; padding:8px 10px; color:var(--plum-950); background:var(--gold-500); font-size:.875rem; font-weight:600; white-space:nowrap; }
}
@container (max-width:800px) {
 .draft-ten .site-page { padding-bottom:118px; }
 .draft-ten :is(.occasion-grid,.academy-next .section-inner,.footer-sitemap,.dimension-list) { grid-template-columns:minmax(0,1fr); }
 .draft-ten .occasion-section { padding:48px 0; }
 .draft-ten .occasion-card { padding:24px; }
 .draft-ten .occasion-card h3 { font-size:1.375rem; }
 .draft-ten .site-shell { font-size:18px; }
 .draft-ten .site-shell :is(p,li) { font-size:18px; line-height:1.7; }
 .draft-ten .site-shell :is(.next-step-note,.form-note,.form-check,.table-note,.offer-footnote,.portrait-caption p,.footer-bottom p) { font-size:14px; }
 .draft-ten .site-header { padding-inline:20px; gap:10px; }
 .draft-ten .brand-logo { width:100%; max-width:150px; min-width:0; }
 .draft-ten .brand { flex:1; min-width:0; }
 .draft-ten .mobile-menu-button { flex-shrink:0; }
 .draft-ten .academy-next .section-inner { gap:24px; }
}
@media (max-width:800px) {
 .draft-ten .mobile-contact-bar { display:flex; width:100%; }
 .draft-ten .site-page { padding-bottom:118px; }
}
.draft-ten .resource-card .resource-type { color:var(--gold-300); }
.draft-ten .section-heading { grid-template-columns:minmax(0,1fr); }
.draft-ten .section-heading > * { min-width:0; }
.draft-ten .process-entry .info-card { background:var(--plum-800); color:var(--white); border-color:var(--plum-800); }
.draft-ten .process-entry .info-card :is(h3,p,strong) { color:var(--on-dark); }
.draft-ten .process-entry .info-card .text-link { color:var(--gold-300); }
.draft-ten .process-entry .info-card :focus-visible { outline-color:var(--gold-300); }

/* V4: authoritative tokens. Font sizes use rem; pixels in the guide assume 16px. */
:root{--plum-950:#211328;--plum-900:#3A2145;--plum-800:#3A2145;--gold-500:#C7A05B;--gold-300:#E0C68F;--gold-text:#70501F;--ink:#211D23;--ink-soft:#514A55;--paper:#F3EFF6;--paper-2:#E4DAEA;--card:#E4DAEA;--white:#FFFFFF;--line:#807487;--control-line:#807487;--on-dark:#EEE8F1;--sans:'Montserrat',Arial,sans-serif}
html{scroll-padding-top:7rem}
body.draft-v4{background:var(--paper-2);font-family:var(--sans);font-size:1.125rem;line-height:1.65}
.draft-ten.draft-v4 .site-shell{--gutter:40px;max-width:1440px;border:0;border-radius:0}
.draft-ten.draft-v4 .prototype-stage{padding:24px 24px 0;min-height:0}
.draft-ten.draft-v4 .site-page{padding-bottom:0}
.draft-ten.draft-v4 .section-inner{width:min(980px,calc(100% - 80px));}
.draft-ten.draft-v4 h1{font-family:var(--sans);font-size:3.25rem;font-weight:600;line-height:1.15;letter-spacing:-.025em;margin:0 0 24px;hyphens:manual}
.draft-ten.draft-v4 .subpage-hero h1,.draft-ten.draft-v4 .inquiry-top h1{font-size:3rem;max-width:24ch}
.draft-ten.draft-v4 h2{font-family:var(--sans);font-size:2.25rem;font-weight:600;line-height:1.22;letter-spacing:-.02em;margin:0 0 24px}
.draft-ten.draft-v4 h3,.draft-ten.draft-v4 h2.program-title{font-family:var(--sans);font-size:1.5rem;font-weight:600;line-height:1.35;letter-spacing:0;overflow-wrap:normal;hyphens:auto;margin:0 0 16px}
.draft-ten.draft-v4 h4{font-size:1.25rem;line-height:1.4;font-weight:600;letter-spacing:0}
.draft-ten.draft-v4 .site-shell :is(p,li){font-size:1.125rem;line-height:1.65}
.draft-ten.draft-v4 :is(.hero-intro,.subpage-hero-intro){font-size:1.25rem;line-height:1.6;max-width:60ch}
.draft-ten.draft-v4 :is(.hero-note,.next-step-note,.offer-footnote,.table-note,.form-note,.form-check,.program-meta,.program-price span,.academy-row-price,.portrait-caption span,.publication-copy p,.team-card p,.reference-source,.book-offer-copy>small,.footer-bottom p){font-size:.875rem;line-height:1.6}
.draft-ten.draft-v4 :is(.eyebrow,.card-kicker,.resource-type,.resource-label,.role-index,.book-offer-kicker){font-size:.875rem;line-height:1.5;letter-spacing:.045em;font-weight:700;text-transform:none}
.draft-ten.draft-v4 .button{font-size:1rem;font-weight:600;min-height:52px;line-height:1.5;padding:14px 24px;border-radius:4px;text-decoration:none}
.draft-ten.draft-v4 .text-link{font-size:1rem;line-height:1.5;min-height:44px;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.draft-ten.draft-v4 :is(.offer-price,.detail-price) strong{font-family:var(--sans);font-size:2.25rem;line-height:1.2;font-weight:600;letter-spacing:-.02em}
.draft-ten.draft-v4 :is(.hero-price-card>strong,.single-price strong){font-family:var(--sans);font-size:2rem;line-height:1.3;font-weight:600}
.draft-ten.draft-v4 .hero-grid{padding:64px 0 48px;grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr);gap:48px;align-items:center}
.draft-ten.draft-v4 .hero-portrait{height:auto;box-shadow:none}
.draft-ten.draft-v4 .hero-portrait img{width:100%;height:360px;object-fit:cover;object-position:center 12%}
.draft-ten.draft-v4 .portrait-caption{padding:20px;background:var(--plum-950);position:static}
.draft-ten.draft-v4 .portrait-caption strong{font-size:1rem;line-height:1.5}
.draft-ten.draft-v4 .hero-note{max-width:55ch;margin:20px 0 0;color:var(--ink-soft)}
.draft-ten.draft-v4 .occasion-section{padding:32px 0 64px;border-top:0}
.draft-ten.draft-v4 .occasion-section h2{font-size:1.5rem;line-height:1.35;margin-bottom:20px}
.draft-ten.draft-v4 .occasion-grid{margin:0;gap:24px}
.draft-ten.draft-v4 .occasion-card{padding:28px;background:var(--plum-800);border:2px solid var(--plum-800);border-radius:4px}
.draft-ten.draft-v4 .occasion-card h3{font-size:1.5rem;margin:16px 0}
.draft-ten.draft-v4 .occasion-card strong{font-size:1rem;color:var(--gold-300);line-height:1.5}
.draft-ten.draft-v4 .case-strip{padding:56px 0;background:var(--paper);border:0}
.draft-ten.draft-v4 .proof-intro{grid-template-columns:1.3fr 1fr;gap:40px;margin-bottom:24px}
.draft-ten.draft-v4 .proof-intro h2{font-size:2rem;margin:0}
.draft-ten.draft-v4 .proof-intro>p{margin:0}
.draft-ten.draft-v4 .text-testimonial{border:1px solid var(--control-line);border-left:4px solid var(--plum-800);padding:28px}
.draft-ten.draft-v4 .text-testimonial blockquote{font-family:var(--sans);font-size:1.25rem;line-height:1.6;font-weight:500;margin-bottom:20px}
.draft-ten.draft-v4 .text-testimonial figcaption{font-size:.875rem;line-height:1.55}
.draft-ten.draft-v4 .text-testimonial .text-link{font-size:.875rem}
.draft-ten.draft-v4 :is(.section,.subpage-section){padding-block:80px}
.draft-ten.draft-v4 :is(.offer-card,.detail-offer-card,.resource-card,.info-card,.whitepaper-card,.fit-box,.profile-facts,.person-card){border-radius:4px}
.draft-ten.draft-v4 :is(.offer-card,.detail-offer-card){padding:32px;display:flex;flex-direction:column;align-items:stretch}
.draft-ten.draft-v4 :is(.offer-card,.detail-offer-card) .feature-list{flex:1}
.draft-ten.draft-v4 .offer-card h3{margin-top:18px}
.draft-ten.draft-v4 .offer-card.featured{background:var(--plum-950);border-color:var(--plum-950)}
.draft-ten.draft-v4 .offer-card .button{width:100%}
.draft-ten.draft-v4 :is(.offer-card,.detail-offer-card,.occasion-card,.resource-card,.process-entry .info-card) :is(p,li,span,small){color:var(--on-dark)}
.draft-ten.draft-v4 :is(.offer-card,.detail-offer-card,.occasion-card,.resource-card,.process-entry .info-card) :is(h3,strong){color:var(--white)}
.draft-ten.draft-v4 :is(.offer-card,.detail-offer-card,.occasion-card,.resource-card,.process-entry .info-card) :is(.card-kicker,.resource-type,.text-link,.resource-bottom,.occasion-card>span){color:var(--gold-300)}
.draft-ten.draft-v4 .process-entry{background:var(--paper)}
.draft-ten.draft-v4 .process-entry .info-card{display:flex;flex-direction:column;background:var(--plum-800);padding:32px}
.draft-ten.draft-v4 .process-entry .info-card .text-link{margin-top:auto}
.draft-ten.draft-v4 .home-process-price{font-weight:600}
.draft-ten.draft-v4 .funding-inline{grid-template-columns:180px 1fr;background:var(--white);border:1px solid var(--control-line);border-left:4px solid var(--gold-text);margin-top:32px}
.draft-ten.draft-v4 .funding-label{font-size:.875rem;color:var(--gold-text)}
.draft-ten.draft-v4 .funding-note{background:var(--paper);border:1px solid var(--control-line);border-left:4px solid var(--gold-text)}
.draft-ten.draft-v4 .funding-note h2{font-size:1.5rem}
.draft-ten.draft-v4 .academy{background:var(--white)}
.draft-ten.draft-v4 .academy-intro{grid-template-columns:1fr 1.2fr;gap:40px}
.draft-ten.draft-v4 .academy-row{background:var(--paper);border:1px solid var(--control-line);padding:24px;border-radius:4px}
.draft-ten.draft-v4 :is(.academy-row h3,.home-team-grid h3,.publication-copy h3){font-size:1.25rem;line-height:1.4}
.draft-ten.draft-v4 .academy-row:hover{border-color:var(--plum-800);background:var(--paper-2)}
.draft-ten.draft-v4 .academy-license{display:none}
.draft-ten.draft-v4 .academy-next{padding:48px 0}
.draft-ten.draft-v4 .academy-next h2{font-size:1.75rem;color:var(--white)}
.draft-ten.draft-v4 .academy-next p{color:var(--on-dark)}
.draft-ten.draft-v4 .home-team-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.draft-ten.draft-v4 .home-team-grid .team-card{background:var(--paper);border:1px solid var(--control-line)}
.draft-ten.draft-v4 .home-team-grid .team-card>div{padding:20px 16px}
.draft-ten.draft-v4 .home-team-grid h3{font-size:1rem}
.draft-ten.draft-v4 .home-team-grid p{font-size:.875rem}
.draft-ten.draft-v4 .publication-feature-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:32px}
.draft-ten.draft-v4 .book-offer{grid-template-columns:150px minmax(0,1fr);padding:24px;gap:24px;align-items:start}
.draft-ten.draft-v4 .book-placeholder{width:150px;min-height:270px;padding:20px 16px}
.draft-ten.draft-v4 .book-placeholder>strong{font-size:1.75rem}
.draft-ten.draft-v4 .book-placeholder>:is(em,b,small){font-size:.875rem}
.draft-ten.draft-v4 .book-offer-copy h3{font-size:1.75rem}
.draft-ten.draft-v4 .book-offer-copy p{font-size:1rem}
.draft-ten.draft-v4 .resource-card{padding:28px}
.draft-ten.draft-v4 .resource-card h3{font-size:1.5rem}
.draft-ten.draft-v4 .fit-editorial{background:var(--white)}
.draft-ten.draft-v4 .fit-editorial .section-inner{max-width:800px}
.draft-ten.draft-v4 .home-faq{background:var(--paper)}
.draft-ten.draft-v4 .home-faq summary{font-size:1.125rem}
.draft-ten.draft-v4 .site-footer{background:var(--paper-2);color:var(--ink-soft)}
.draft-ten.draft-v4 .footer-brand-logo{background:var(--plum-950);padding:12px;width:190px}
.draft-ten.draft-v4 .site-header{min-height:88px;gap:18px;padding-inline:max(40px,calc((100% - 980px)/2))}
.draft-ten.draft-v4 .brand-logo{width:164px;min-width:0;height:auto}
.draft-ten.draft-v4 .desktop-nav{gap:18px;flex-wrap:nowrap}
.draft-ten.draft-v4 .desktop-nav a,.draft-ten.draft-v4 .knowledge-menu{font-size:.875rem;line-height:1.4}
.draft-ten.draft-v4 .nav-cta{white-space:nowrap;min-height:44px;padding:12px 16px}
.draft-ten.draft-v4 .knowledge-links{min-width:220px}
.draft-ten.draft-v4 .subpage-hero-grid{padding:56px 0;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:40px}
.draft-ten.draft-v4 .breadcrumb{font-size:.875rem}
.draft-ten.draft-v4 .scope-subheading{margin-top:32px}
.draft-ten.draft-v4 .price-table{font-size:1rem}
.draft-ten.draft-v4 .price-table td{font-size:1rem;color:var(--ink)}
.draft-ten.draft-v4 .price-table th{font-size:.875rem}
.draft-ten.draft-v4 .program-detail{gap:32px}
.draft-ten.draft-v4 .subpage-form{background:var(--white);border:1px solid var(--control-line)}
.draft-ten.draft-v4 .subpage-form h2{font-size:1.5rem}
.draft-ten.draft-v4 .form-grid label>span{font-size:.875rem;line-height:1.6;color:var(--ink)}
.draft-ten.draft-v4 .form-grid :is(input,textarea,select){font-size:1rem;background:var(--white);color:var(--ink);min-height:48px;border:1px solid var(--control-line)}
.draft-ten.draft-v4 .form-status{color:var(--ink);background:var(--paper);font-size:1rem}
.draft-ten.draft-v4 .form-note a{font-size:.875rem}
.draft-ten.draft-v4 .inquiry-top{padding:48px 0;background:var(--paper)}
.draft-ten.draft-v4 .inquiry-top h1{color:var(--ink)}
.draft-ten.draft-v4 .page-cta-grid h2{font-size:2rem}
.draft-ten.draft-v4 :focus-visible{outline:3px solid var(--gold-text);outline-offset:4px}
.draft-ten.draft-v4 :is(.site-header,.mobile-menu,.subpage-hero,.dark-section,.page-cta,.conversation,.academy-next,.offer-card,.detail-offer-card) :focus-visible{outline-color:var(--gold-300)}
.draft-ten.draft-v4 .hero-price-card :focus-visible{outline-color:var(--gold-text)}
.draft-ten.draft-v4 .prototype-bar{padding:10px 20px;min-height:64px;background:var(--white);border-color:var(--control-line);backdrop-filter:none;gap:12px}
.draft-ten.draft-v4 :is(.prototype-title,.control,.page-picker select){font-size:.875rem;line-height:1.4}
.draft-ten.draft-v4 .control{min-height:42px;padding:10px 12px}
.draft-ten.draft-v4 .page-picker select{max-width:260px;min-height:42px;color:var(--ink);background:var(--white);border:1px solid var(--control-line)}
.draft-ten.draft-v4 .v4-notes{position:fixed;inset:0 0 0 auto;transform:none;width:min(760px,100%);max-width:100%;height:100dvh;max-height:100dvh;margin:0;border:0;padding:32px;background:var(--white);color:var(--ink);overflow-y:auto;box-shadow:none}
.v4-notes::backdrop{background:#211328aa}
.draft-ten.draft-v4 .v4-notes :is(p,li){font-size:1rem}
.draft-ten.draft-v4 .v4-notes h2{font-size:1.75rem}
.draft-ten.draft-v4 .v4-notes h3{font-size:1.25rem;margin-top:32px}
.draft-ten.draft-v4 .v4-notes .notes-close{top:0;right:0;width:44px;height:44px;background:var(--paper);color:var(--ink);border:1px solid var(--control-line)}
.draft-ten.draft-v4 .v4-notes table{border-collapse:collapse;width:100%;font-size:.875rem;margin:20px 0}
.draft-ten.draft-v4 .v4-notes :is(td,th){text-align:left;vertical-align:top;padding:12px 8px;border-bottom:1px solid var(--control-line)}
.draft-ten.draft-v4 .v4-notes a{text-decoration:underline;color:var(--plum-800)}
.draft-ten.draft-v4 .v4-notes code{font-size:.875rem;overflow-wrap:anywhere}
.draft-ten.draft-v4 .v4-notes .swatch{display:inline-block;width:20px;height:20px;vertical-align:middle;border:1px solid var(--control-line);margin-right:8px}
.draft-ten.draft-v4 .mobile-contact-bar{display:none;position:fixed;bottom:0;left:50%;transform:translateX(-50%);z-index:90;background:var(--plum-950);padding:12px 20px calc(12px + env(safe-area-inset-bottom));width:390px;max-width:100%;box-shadow:none}
.draft-ten.draft-v4 .mobile-contact-bar span{font-size:.875rem;line-height:1.5;color:var(--on-dark);text-align:center}
.draft-ten.draft-v4 .mobile-contact-bar .button{width:100%;margin:0}
.draft-ten.draft-v4:has(.is-mobile) .mobile-contact-bar{display:grid;gap:6px}
.draft-ten.draft-v4 .prototype-stage.is-mobile .site-shell{width:390px;max-width:100%;border:0;border-radius:0}
.draft-ten.draft-v4 .prototype-stage.is-mobile .site-page{padding-bottom:124px}
.draft-ten.draft-v4 .site-page .mobile-menu[hidden],.draft-ten.draft-v4 [hidden]{display:none!important}
.draft-ten.draft-v4 .site-shell :is(a,p,li,span){overflow-wrap:break-word}
@container(max-width:1080px){
 .draft-ten.draft-v4 .desktop-nav{display:none}
 .draft-ten.draft-v4 .mobile-menu-button{display:flex}
 .draft-ten.draft-v4 .publication-feature-grid{grid-template-columns:1fr}
 .draft-ten.draft-v4 .book-offer{grid-template-columns:180px 1fr}
 .draft-ten.draft-v4 .book-placeholder{width:180px}
}
@container(max-width:800px){
 .draft-ten.draft-v4 .section-inner{width:calc(100% - 48px)}
 .draft-ten.draft-v4 :is(h1,.subpage-hero h1,.inquiry-top h1){font-size:2.125rem;line-height:1.2;hyphens:auto;max-width:none}
}
@container(max-width:400px){
 .draft-ten.draft-v4 :is(h1,.subpage-hero h1,.inquiry-top h1){font-size:1.75rem;hyphens:none}
}
@container(max-width:800px){
 .draft-ten.draft-v4 h2{font-size:1.75rem;line-height:1.25}
 .draft-ten.draft-v4 h3,.draft-ten.draft-v4 h2.program-title{font-size:1.375rem;line-height:1.4}
 .draft-ten.draft-v4 h4{font-size:1.125rem}
 .draft-ten.draft-v4 .site-shell :is(p,li){font-size:1.125rem;line-height:1.65}
 .draft-ten.draft-v4 :is(.hero-intro,.subpage-hero-intro){font-size:1.125rem}
 .draft-ten.draft-v4 :is(.hero-note,.next-step-note,.offer-footnote,.table-note,.form-note,.form-check,.program-meta,.program-price span,.academy-row-price,.portrait-caption span,.publication-copy p,.team-card p,.reference-source,.book-offer-copy>small,.footer-bottom p){font-size:.875rem}
 .draft-ten.draft-v4 :is(.section,.subpage-section){padding-block:56px}
 .draft-ten.draft-v4 :is(.hero-grid,.subpage-hero-grid){grid-template-columns:1fr;gap:32px;padding:40px 0}
 .draft-ten.draft-v4 .hero-portrait img{height:260px;object-position:center 12%}
 .draft-ten.draft-v4 .hero-portrait{max-width:440px;width:100%}
 .draft-ten.draft-v4 .hero-actions{align-items:stretch;gap:12px}
 .draft-ten.draft-v4 .hero-actions .text-link{align-self:center}
 .draft-ten.draft-v4 .occasion-section{padding:12px 0 48px}
 .draft-ten.draft-v4 .occasion-section h2{font-size:1.375rem}
 .draft-ten.draft-v4 .occasion-grid{grid-template-columns:1fr;gap:16px}
 .draft-ten.draft-v4 .occasion-card{padding:24px}
 .draft-ten.draft-v4 .occasion-card h3{font-size:1.375rem}
 .draft-ten.draft-v4 .occasion-card strong{font-size:1rem}
 .draft-ten.draft-v4 .proof-intro{grid-template-columns:1fr;gap:16px}
 .draft-ten.draft-v4 .proof-intro h2{font-size:1.75rem}
 .draft-ten.draft-v4 .testimonial-grid{grid-template-columns:1fr;gap:20px}
 .draft-ten.draft-v4 .text-testimonial{padding:24px}
 .draft-ten.draft-v4 .text-testimonial blockquote{font-size:1.125rem}
 .draft-ten.draft-v4 :is(.offer-card,.detail-offer-card,.resource-card,.info-card,.process-entry .info-card,.subpage-form){padding:24px}
 .draft-ten.draft-v4 :is(.offer-price,.detail-price) strong{font-size:2rem}
 .draft-ten.draft-v4 :is(.hero-price-card>strong,.single-price strong){font-size:1.75rem}
 .draft-ten.draft-v4 .funding-inline{grid-template-columns:1fr;gap:12px;padding:24px}
 .draft-ten.draft-v4 .academy-intro{grid-template-columns:1fr;gap:8px}
 .draft-ten.draft-v4 :is(.academy-row h3,.publication-copy h3){font-size:1.25rem}
 .draft-ten.draft-v4 .academy-next .section-inner{grid-template-columns:1fr;gap:20px}
 .draft-ten.draft-v4 .academy-next h2{font-size:1.75rem}
 .draft-ten.draft-v4 .home-team-grid{grid-template-columns:1fr;gap:16px}
 .draft-ten.draft-v4 .home-team-grid .team-card{grid-template-columns:80px 1fr;padding:20px;gap:16px}
 .draft-ten.draft-v4 .home-team-grid .team-card>div{padding:0}
 .draft-ten.draft-v4 .home-team-grid img{width:80px}
 .draft-ten.draft-v4 .home-team-grid h3{font-size:1rem}
 .draft-ten.draft-v4 .home-team-grid p{font-size:.875rem}
 .draft-ten.draft-v4 .book-offer{grid-template-columns:1fr;gap:24px;padding:24px}
 .draft-ten.draft-v4 .book-placeholder{width:180px}
 .draft-ten.draft-v4 .site-header{min-height:80px;padding-inline:20px;gap:12px}
 .draft-ten.draft-v4 .mobile-menu{top:80px;max-height:calc(100vh - 80px)}
 .draft-ten.draft-v4 .brand{flex:1}
 .draft-ten.draft-v4 .brand-logo{width:150px;max-width:100%}
 .draft-ten.draft-v4 .mobile-header-cta{display:none}
 .draft-ten.draft-v4 .mobile-menu{padding:12px 24px}
 .draft-ten.draft-v4 .mobile-menu a{font-size:1rem;min-height:48px}
 .draft-ten.draft-v4 .mobile-menu-button{width:48px;height:48px}
 .draft-ten.draft-v4 .page-cta-grid h2{font-size:1.75rem}
 .draft-ten.draft-v4 .price-table td{font-size:1rem}
}
@media(max-width:800px){
 .draft-ten.draft-v4 .prototype-stage{padding:0}
 .draft-ten.draft-v4 .prototype-bar{position:relative;flex-direction:column;align-items:stretch;padding:12px;gap:8px}
 .draft-ten.draft-v4 .prototype-title{font-size:.875rem}
 .draft-ten.draft-v4 .prototype-actions{flex-wrap:wrap;gap:8px}
 .draft-ten.draft-v4 .page-picker{width:100%;margin:0}
 .draft-ten.draft-v4 .page-picker select{width:100%;max-width:none}
 .draft-ten.draft-v4 .view-switch{display:none}
 .draft-ten.draft-v4 .notes-toggle{width:100%;justify-content:center}
 .draft-ten.draft-v4 .site-page{padding-bottom:124px}
 .draft-ten.draft-v4 .mobile-contact-bar{display:grid;gap:6px;width:100%}
 .draft-ten.draft-v4 .prototype-stage.is-mobile .site-shell{width:100%}
 .draft-ten.draft-v4 .v4-notes{padding:24px}
}
@media print{
 .prototype-bar,.mobile-contact-bar,.v4-notes,.prototype-toast,.skip-link{display:none!important}
 .draft-ten.draft-v4 .prototype-stage{padding:0}
 .draft-ten.draft-v4 .site-shell{max-width:none;box-shadow:none}
 .draft-ten.draft-v4 .site-page{padding:0}
}
/* Explicit text-style sizes override legacy paragraph selectors. */
.draft-ten.draft-v4 .site-shell p.eyebrow{font-size:.875rem;line-height:1.5}
.draft-ten.draft-v4 .site-shell :is(p.hero-intro,p.subpage-hero-intro){font-size:1.25rem;line-height:1.6}
.draft-ten.draft-v4 .mobile-menu-button{color:var(--gold-300)}
@container(max-width:800px){.draft-ten.draft-v4 .site-shell :is(p.hero-intro,p.subpage-hero-intro){font-size:1.125rem;line-height:1.6}}
.draft-ten.draft-v4 .mobile-size{display:none}
.draft-ten.draft-v4:has(.is-mobile) .mobile-size{display:block}
.draft-ten.draft-v4 .mobile-size select{font-size:.875rem;min-height:42px;border:1px solid var(--control-line);background:var(--white);color:var(--ink);padding:8px}
.draft-ten.draft-v4 .prototype-stage.is-mobile .site-shell{width:var(--preview-width,390px)}
.draft-ten.draft-v4:has(.is-mobile) .mobile-contact-bar{width:var(--preview-width,390px)}
@media(max-width:800px){.draft-ten.draft-v4:has(.is-mobile) .mobile-size{display:none}.draft-ten.draft-v4 .prototype-stage.is-mobile .site-shell,.draft-ten.draft-v4:has(.is-mobile) .mobile-contact-bar{width:100%}}
.draft-ten.draft-v4 .subpage-hero>.section-inner:not(.subpage-hero-grid){padding-block:56px}
.draft-ten.draft-v4 .prototype-stage.is-mobile .site-page{padding-bottom:160px}
@container(max-width:800px){.draft-ten.draft-v4 .subpage-hero>.section-inner:not(.subpage-hero-grid){padding-block:40px}}
@media(max-width:800px){.draft-ten.draft-v4 .site-page{padding-bottom:160px}}
.draft-ten.draft-v4 .v4-notes .notes-head{display:block;position:relative;padding:0 52px 24px 0}
.draft-ten.draft-v4 .v4-notes .notes-head h2{margin-top:14px}
.draft-ten.draft-v4 .v4-notes .notes-close{position:absolute;top:0;right:0}

/* V5 adds an infrastructure offer to the established V4 design system. */
.draft-ten.draft-v4.draft-v5 .desktop-nav{gap:14px}
.draft-ten.draft-v4.draft-v5 .v5-split{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:48px;align-items:start}
.draft-ten.draft-v4.draft-v5 .v5-home-systems{background:var(--white);border-bottom:1px solid var(--line)}
.draft-ten.draft-v4.draft-v5 .v5-home-facts{background:var(--paper);border-left:4px solid var(--plum-800);padding:32px;border-radius:4px}
.draft-ten.draft-v4.draft-v5 .v5-home-facts dl{margin:24px 0}
.draft-ten.draft-v4.draft-v5 .v5-home-facts dl>div+div{margin-top:20px}
.draft-ten.draft-v4.draft-v5 :is(.v5-home-facts,.v5-system-panel) dt{font-size:1rem;font-weight:600;line-height:1.5}
.draft-ten.draft-v4.draft-v5 :is(.v5-home-facts,.v5-system-panel) dd{font-size:1rem;line-height:1.6;margin:6px 0 0}
.draft-ten.draft-v4.draft-v5 .v5-home-facts :is(h3,dt){color:var(--ink)}
.draft-ten.draft-v4.draft-v5 .v5-home-facts dd{color:var(--ink-soft)}
.draft-ten.draft-v4.draft-v5 .v5-home-price{font-weight:600;font-size:1.5rem;line-height:1.35;margin-bottom:12px}
.draft-ten.draft-v4.draft-v5 .v5-home-actions{display:flex;align-items:flex-start;flex-direction:column;gap:12px;margin-top:28px}
.draft-ten.draft-v4.draft-v5 .v5-entry-link{margin:24px 0 0;padding-top:20px;border-top:1px solid var(--line);color:var(--ink-soft)}
.draft-ten.draft-v4.draft-v5 .v5-entry-link a{display:inline-flex}
.draft-ten.draft-v4.draft-v5 .v5-system-panel{background:var(--plum-950);border:1px solid var(--gold-300);padding:28px;border-radius:4px;color:var(--on-dark)}
.draft-ten.draft-v4.draft-v5 .v5-system-panel .v5-panel-label{color:var(--gold-300);font-size:.875rem;font-weight:700;margin:0 0 20px;line-height:1.5}
.draft-ten.draft-v4.draft-v5 .v5-system-layers{margin:0}
.draft-ten.draft-v4.draft-v5 .v5-system-layers>div{padding:18px 0;border-top:1px solid var(--control-line)}
.draft-ten.draft-v4.draft-v5 .v5-system-panel dt{color:var(--white)}
.draft-ten.draft-v4.draft-v5 .v5-system-panel dd{color:var(--on-dark)}
.draft-ten.draft-v4.draft-v5 .v5-system-panel .v5-panel-foot{font-size:.875rem;line-height:1.6;color:var(--gold-300);margin:20px 0 0}
.draft-ten.draft-v4.draft-v5 .v5-hero-note{font-size:.875rem;line-height:1.6;color:var(--on-dark);margin-top:24px}
.draft-ten.draft-v4.draft-v5 .v5-delivery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 40px}
.draft-ten.draft-v4.draft-v5 .v5-delivery-grid article{padding-top:24px;border-top:1px solid var(--control-line)}
.draft-ten.draft-v4.draft-v5 .v5-step{display:block;font-size:.875rem;line-height:1.5;font-weight:700;color:var(--gold-text);margin-bottom:12px}
.draft-ten.draft-v4.draft-v5 .v5-scope-note{margin-top:40px;padding:28px 32px;background:var(--white);border-left:4px solid var(--plum-800)}
.draft-ten.draft-v4.draft-v5 .v5-scope-note p{margin-bottom:0}
.draft-ten.draft-v4.draft-v5 .v5-autonomy{background:var(--plum-950)}
.draft-ten.draft-v4.draft-v5 .v5-autonomy :is(h2,h3){color:var(--white)}
.draft-ten.draft-v4.draft-v5 .v5-autonomy :is(p,li){color:var(--on-dark)}
.draft-ten.draft-v4.draft-v5 .v5-autonomy .eyebrow{color:var(--gold-300)}
.draft-ten.draft-v4.draft-v5 .v5-autonomy-facts{padding:28px 32px;background:var(--plum-800);border-radius:4px}
.draft-ten.draft-v4.draft-v5 .v5-autonomy-facts ul{padding-left:22px;margin:0 0 24px}
.draft-ten.draft-v4.draft-v5 .v5-autonomy-facts li+li{margin-top:14px}
.draft-ten.draft-v4.draft-v5 .v5-autonomy-facts p{margin-bottom:0}
.draft-ten.draft-v4.draft-v5 .v5-price-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:40px;align-items:start}
.draft-ten.draft-v4.draft-v5 .v5-price-card{background:var(--white);padding:32px;border:1px solid var(--control-line);border-top:4px solid var(--plum-800);border-radius:4px}
.draft-ten.draft-v4.draft-v5 .v5-request-price{font-size:2rem;font-weight:600;line-height:1.3;color:var(--ink);margin-bottom:24px}
.draft-ten.draft-v4.draft-v5 .v5-price-card .table-note{margin-top:18px;margin-bottom:0}
.draft-ten.draft-v4.draft-v5 .v5-crosslink{margin-top:32px;padding-top:24px;border-top:1px solid var(--line)}
.draft-ten.draft-v4.draft-v5 .dark-section .v5-crosslink :is(p,a){color:var(--on-dark)}
.draft-ten.draft-v4.draft-v5 .dark-section .v5-crosslink .text-link{color:var(--gold-300)}
@container(max-width:800px){
 .draft-ten.draft-v4.draft-v5 :is(.v5-split,.v5-delivery-grid,.v5-price-layout){grid-template-columns:1fr;gap:32px}
 .draft-ten.draft-v4.draft-v5 :is(.v5-home-facts,.v5-system-panel,.v5-scope-note,.v5-autonomy-facts,.v5-price-card){padding:24px}
 .draft-ten.draft-v4.draft-v5 .v5-request-price{font-size:1.75rem}
 .draft-ten.draft-v4.draft-v5 .v5-home-price{font-size:1.375rem}
 .draft-ten.draft-v4.draft-v5 .v5-home-actions .button{width:100%;text-align:center}
}

/* Footer LinkedIn link (added when rebuilding from the Wix site) */
.footer-social{display:inline-flex;align-items:center;gap:8px;margin-top:16px}
.footer-social img{width:20px;height:20px;border-radius:4px}

/* Hero trust bar (added when porting the home page from the live site) */
.hero-visual{min-width:0}
.hero-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}
.hero-facts > div{display:flex;flex-direction:column;gap:4px}
.hero-facts strong{font-family:var(--serif);font-size:1.05rem;font-weight:400;color:var(--ink)}
.hero-facts span{font-size:.8rem;line-height:1.4;color:var(--ink-soft)}
@container(max-width:800px){.hero-facts{grid-template-columns:1fr;gap:14px}}

/* Real book cover photo instead of the CSS placeholder
   (needs draft-ten.draft-v4 specificity to beat the theme's own
   .draft-ten.draft-v4 .book-placeholder padding/width overrides) */
.draft-ten.draft-v4 .book-placeholder.book-cover-photo{padding:0;width:100%;min-height:0;background:transparent;box-shadow:none}
.book-placeholder.book-cover-photo{overflow:hidden}
.book-placeholder.book-cover-photo img{width:100%;height:100%;object-fit:cover;display:block}

/* Personal sign-off on the Erstgespräch form (ported from the live site) */
.form-signoff{margin-top:16px;font-family:var(--serif);font-size:1rem;line-height:1.5;color:var(--ink)}

/* Real book cover photo instead of the large stylised placeholder */
.large-book-placeholder.book-cover-photo{padding:0;overflow:hidden;box-shadow:none;background:none}
.large-book-placeholder.book-cover-photo img{width:100%;height:100%;object-fit:cover;display:block}

/* Card-scoped heading sizes clobbered by the later global h2/h3 rule
   (same specificity, later source order was winning) — restore intent
   with draft-v4 specificity. */
.draft-ten.draft-v4 .whitepaper-card h2 { font-size: 1.4rem; line-height: 1.3; }
.draft-ten.draft-v4 .academy-license h3 { font-size: 1.3rem; }

/* Whitepaper cover in the subpage hero (own class, no inherited crop/filter) */
.whitepaper-cover-side{display:flex;align-items:center;justify-content:center}
.whitepaper-cover-side img{width:auto;max-width:100%;height:auto;max-height:420px;box-shadow:0 24px 48px rgba(33,19,40,.22)}
@container(max-width:800px){.whitepaper-cover-side img{max-height:280px}}

/* Whitepaper cover thumbnail on the topic-selector cards */
.whitepaper-card{position:relative}
.whitepaper-cover{display:block;width:calc(100% + 64px);height:170px;margin:-36px -32px 20px;object-fit:cover;object-position:top center}
@media (max-width:900px){.whitepaper-cover{width:calc(100% + 48px);margin:-24px -24px 20px}}

/* Footer wordmark logo (matches the live site's footer branding) */
.footer-wordmark{display:block;width:100%;max-width:220px;height:auto;margin:16px 0}

/* Impressum & Datenschutz: long-form legal text */
.legal-text{max-width:760px}
.legal-text h3{margin-top:32px;margin-bottom:10px;font-size:1.1rem}
.legal-text p{margin:0 0 14px;line-height:1.6}
.legal-text p:last-child{margin-bottom:0}

/* ===== KIRI interactive tool ===== */
.kiri-panel { padding: 56px 0; }
.kiri-panel.dark-section { background: var(--plum-950); color: var(--on-dark, #fff); }
.kiri-panel.dark-section :is(h2,p) { color: inherit; }
.kiri-intro { padding-top: 0; }
.kiri-figure { margin: 32px 0 0; max-width: 480px; }
.kiri-figure img { display: block; max-width: 100%; height: auto; border: 1px solid var(--line); box-shadow: 0 26px 50px rgba(33,19,40,.28); }
.kiri-figure figcaption { margin-top: 12px; font-size: .8rem; color: var(--ink-soft); }
.kiri-panel.dark-section .kiri-figure img { box-shadow: 0 26px 50px rgba(0,0,0,.4); border-color: rgba(224,198,143,.35); }
.kiri-panel.dark-section .kiri-figure figcaption { color: #E4DAEA; }
.kiri-figure.kiri-figure-large { margin-top: 40px; max-width: 640px; }
.kiri-figure.kiri-figure-large img { width: 100%; }
/* The results-chart screenshot is cropped at the bottom edge; fade it out
   on purpose instead of showing a hard, accidental-looking cut. Positioned
   (not clipped), so the image's own border/shadow stay fully visible. */
.kiri-figure-fade { position: relative; }
.kiri-figure-fade::after { position: absolute; right: 0; bottom: 0; left: 0; height: 64px; background: linear-gradient(to bottom, transparent, var(--plum-950)); content: ""; pointer-events: none; }
.kiri-start-cta { display: flex; align-items: center; justify-content: space-between; gap: 32px; flex-wrap: wrap; }
.kiri-start-cta h2 { margin: 8px 0 12px; }
.kiri-start-cta p { margin: 0; max-width: 46ch; color: var(--ink-soft); }

.kiri-quiz-inner { max-width: 760px; }
.kiri-progress { height: 6px; background: var(--line); margin-bottom: 32px; overflow: hidden; }
.kiri-progress-bar { height: 100%; background: var(--gold-500); transition: width .3s ease; }
.kiri-dim-desc { margin: 12px 0 32px; color: var(--ink-soft); max-width: 62ch; }
.kiri-question { border: 0; padding: 0; margin: 0 0 32px; }
.kiri-question legend { padding: 0 0 14px; font-weight: 600; }
.kiri-scale { display: grid; gap: 10px; }
.kiri-scale label { display: flex; align-items: center; gap: 10px; padding: 10px 14px; border: 1px solid var(--line); cursor: pointer; }
.kiri-scale label:has(input:checked) { border-color: var(--gold-500); background: var(--paper); }
.kiri-scale input { flex-shrink: 0; }
.kiri-nav { display: flex; gap: 16px; margin-top: 12px; }
.kiri-error { margin-top: 16px; color: #B3261E; }

.kiri-results-layout { display: grid; grid-template-columns: minmax(0,1fr) minmax(280px,.8fr); gap: 40px; align-items: center; margin: 32px 0 48px; }
.kiri-chart-wrap { background: var(--plum-950); padding: 24px; display: flex; align-items: center; justify-content: center; }
.kiri-chart-wrap svg { width: 100%; height: auto; max-width: 420px; }
.kiri-score-summary { display: flex; flex-direction: column; gap: 6px; }
.kiri-score-label { margin: 0; font-size: .875rem; color: var(--ink-soft); }
.kiri-score-value { margin: 0; font-family: var(--serif); font-size: 2.25rem; color: var(--plum-900); }
.kiri-score-tier { margin: 0 0 20px; font-size: 1.125rem; }
.kiri-dim-scores { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.kiri-dim-scores li { display: grid; grid-template-columns: 1fr auto; gap: 4px 12px; align-items: center; font-size: .875rem; }
.kiri-dim-score-value { color: var(--ink-soft); }
.kiri-dim-bar { grid-column: 1 / -1; display: block; height: 4px; background: var(--line); }
.kiri-dim-bar > span { display: block; height: 100%; background: var(--gold-500); }

.kiri-lead-gate { padding: 32px; background: var(--paper); border-top: 4px solid var(--gold-500); margin-bottom: 32px; }
.kiri-lead-gate .subpage-form { padding: 0; border: 0; background: transparent; }

@container (max-width: 800px) {
  .kiri-results-layout { grid-template-columns: 1fr; }
  .kiri-start-cta { flex-direction: column; align-items: flex-start; }
}

/* Testimonial avatar photos */
.text-testimonial figcaption { display: flex; align-items: center; gap: 14px; }
.text-testimonial figcaption > div { display: grid; gap: 2px; }
.testimonial-avatar { width: 52px; height: 52px; border-radius: 50%; object-fit: cover; flex-shrink: 0; }

/* --- Round 2 fixes (v12) --- */

/* 5) Bigger H&K wordmark logo in the header. */
.draft-ten.draft-v4 .brand-logo { width: 208px; }
@container (max-width: 900px) {
  .draft-ten.draft-v4 .brand-logo { width: 180px; }
}
@container (max-width: 640px) {
  .draft-ten .brand-logo { max-width: 176px; }
}

/* 12) Bigger LinkedIn icon in the footer. */
.footer-social { gap: 10px; }
.footer-social img { width: 28px; height: 28px; border-radius: 6px; }

/* 13) Whitepaper cover: show the full cover instead of cropping the top. */
.whitepaper-cover { height: 220px; object-fit: contain; object-position: center; background: var(--plum-950); }
@media (max-width: 900px) { .whitepaper-cover { height: 200px; } }

/* 3) Referenzen client-line: make clear the list is a selection, not the full roster. */
.client-line-more { margin-top: 4px; font-size: .875rem; font-style: italic; color: var(--ink-soft); }

/* 1) Testimonial cards: keep captions/avatars aligned along the bottom of every
   card in a row, regardless of how long each quote is. */
.draft-ten .text-testimonial { display: flex; flex-direction: column; }
.draft-ten .text-testimonial blockquote { flex: 1; }

/* 6) Home hero: dark plum background like every other page's hero, matching
   the live site (previously forced back to white by .hero-editorial). */
.draft-ten .hero-editorial.hero-dark { color: var(--white); background: var(--plum-950); }
.draft-ten .hero-editorial.hero-dark .hero-note { color: var(--on-dark); }
.draft-ten .hero-editorial.hero-dark .hero-facts { border-top-color: rgba(255,255,255,.14); }
.draft-ten .hero-editorial.hero-dark .hero-facts strong { color: var(--white); }
.draft-ten .hero-editorial.hero-dark .hero-facts span { color: var(--on-dark); }

/* 14) Funding mentions: a compact contact card for Alexandra Zanders, reused
   inside every funding-note box, plus a larger standalone variant. */
.funding-contact { display: flex; align-items: center; gap: 14px; margin-top: 24px; padding-top: 20px; border-top: 1px solid rgba(112,80,31,.25); }
.funding-contact img { width: 52px; height: 52px; border-radius: 50%; object-fit: cover; flex-shrink: 0; }
.funding-contact > div { display: grid; gap: 2px; font-size: .875rem; }
.funding-contact strong { color: var(--ink); }
.funding-contact span { color: var(--ink-soft); }
.funding-contact .text-link { margin-top: 4px; font-size: .8125rem; }
.funding-contact-lg { border-top: 0; padding-top: 0; margin-top: 0; align-items: flex-start; gap: 24px; }
.funding-contact-lg img { width: 160px; height: 160px; }
.funding-contact-lg h3 { margin: 4px 0 8px; font-family: var(--serif); font-size: 1.28rem; font-weight: 400; color: var(--ink); }
.funding-contact-lg p { color: var(--ink-soft); font-size: 1rem; max-width: 60ch; margin-bottom: 10px; }
@media (max-width: 640px) {
  .funding-contact-lg { flex-direction: column; }
}

/* 8) KIRI results: tier description text ("Beschreibung"). */
.kiri-tier-desc { margin-top: 10px; }
.kiri-tier-desc-label { margin-bottom: 4px; font-size: .8125rem; font-weight: 700; letter-spacing: .04em; color: var(--gold-text, #70501F); }
.kiri-tier-desc p:not(.kiri-tier-desc-label) { font-size: .9375rem; line-height: 1.6; color: var(--ink-soft); }

/* --- Round 3 fixes --- */

/* Bigger H&K logos in header and footer: still too small to read the wordmark.
   The header's own content column had narrowed to 980px in a later design
   pass while every other section kept the 1180px column; restoring it frees
   the room the bigger logo and the new "KI-Förderung" nav item need. */
.draft-ten.draft-v4 .site-header { padding-inline: max(40px, calc((100% - 1180px) / 2)); }
.draft-ten.draft-v4 .brand-logo { width: 264px; }
.draft-ten.draft-v4 .desktop-nav { gap: 14px; }
.draft-ten.draft-v4 .desktop-nav a, .draft-ten.draft-v4 .knowledge-menu { white-space: nowrap; }
@container (max-width: 1200px) {
  .draft-ten.draft-v4 .brand-logo { width: 220px; }
  .draft-ten.draft-v4 .desktop-nav { gap: 10px; }
  .draft-ten.draft-v4 .desktop-nav a, .draft-ten.draft-v4 .knowledge-menu { font-size: .8125rem; }
}
@container (max-width: 640px) {
  .draft-ten .brand-logo { max-width: 200px; }
}
@container (max-width: 360px) {
  .draft-ten .brand-logo { max-width: 168px; }
}
.footer-wordmark { max-width: 300px; }

/* Bigger testimonial and funding-contact portraits. */
.testimonial-avatar { width: 88px; height: 88px; }
.funding-contact img { width: 88px; height: 88px; }
.funding-contact { align-items: flex-start; }
.funding-contact > div { padding-top: 6px; }

/* Fix: hero on the homepage (.hero-dark) is not a .subpage-hero, so the
   dark-background text rules for .text-link.light and body copy never
   matched it, leaving near-invisible dark-on-dark text. */
.draft-ten .hero-dark .hero-intro { color: var(--on-dark); }
.draft-ten .hero-dark .text-link.light,
.draft-ten .hero-dark .text-link.light span { color: var(--white); }

/* "Unsere Arbeitsweise" (and any narrowed .section-inner) should stay flush
   with the page's left edge instead of centering as a narrower column. */
.fit-editorial .section-inner { margin-left: 0; margin-right: auto; }

/* Card headings followed by body copy: reserve enough height for a two-line
   heading (min-height only, no flex/vertical-centering trick) so headings
   stay top-aligned AND the body copy after them still starts level across
   a row, whether a given heading wraps to one line or two. */
.draft-ten :is(.info-card,.detail-offer-card,.academy-role,.whitepaper-card,.program-card,.link-card,.v5-delivery-grid article,.expertise-panel,.dark-info-card,.person-card,.timeline-4 article,.pilot-flow-step) h3 {
  min-height: 2.6em;
}

/* Fix: a global ".draft-ten.draft-v4 h3" rule sets the margin shorthand
   (0 0 16px), which zeroes out .person-card h3's intended 20px gap to the
   photo above it because that rule only had one context class. The same
   rule also silently zeroed the legal page's section-heading spacing. */
.draft-ten.draft-v4 .person-card h3 { margin: 20px 21px 7px; font-size: 1.5rem; min-height: 2.8em; }
.draft-ten.draft-v4 .person-card p { margin-left: 21px; margin-right: 21px; }
.draft-ten.draft-v4 .legal-text h3 { margin-top: 32px; }

/* Homepage hero: the photo was vertically centered against the row while
   the copy column was too, so the two rarely lined up at the top. Top-align
   both so the portrait starts level with the "Harwardt & Kollegen" eyebrow. */
.draft-ten.draft-v4 .hero-grid { align-items: start; }
.draft-ten .hero-copy { align-self: start; }

/* Side box next to an eyebrow+heading pair in a two-column split: line up
   with the heading, not with the eyebrow label above it. Recurs across
   several pages (KI-Strategie, Über H&K, Eigene KI). */
@container (min-width: 801px) {
  .ablauf-fit-box, .heading-align-box { margin-top: 40px; }
}

/* Hero visual on the KI-Strategie page: a photographed example document
   instead of an abstract price card. */
.hero-decision-figure { display: flex; flex-direction: column; }
.hero-decision-photo { padding: 14px; background: var(--white); box-shadow: var(--shadow); transform: rotate(-1.4deg); }
.hero-decision-photo img { width: 100%; height: auto; display: block; }
.hero-decision-figure figcaption { margin-top: 18px; color: var(--on-dark); font-size: .8125rem; text-align: center; }

/* KI-Pilot page: a connected step-flow instead of plain bordered cards. */
.pilot-flow { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px; margin-top: 8px; }
.pilot-flow-dot-row { display: flex; align-items: center; margin-bottom: 24px; }
.pilot-flow-dot { display: flex; flex-shrink: 0; width: 42px; height: 42px; align-items: center; justify-content: center; border-radius: 50%; background: var(--plum-900); color: var(--gold-300); font-family: var(--serif); font-size: 1.15rem; }
.pilot-flow-connector { flex: 1; height: 2px; margin-left: 10px; background: var(--gold-500); }
.pilot-flow-step:last-child .pilot-flow-connector { display: none; }
.pilot-flow-week { display: block; margin-bottom: 8px; color: #70501F; font-size: .75rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
.pilot-flow-step h3 { font-size: 1.08rem; margin-bottom: 8px; min-height: 0; display: block; }
.pilot-flow-step p { margin: 0; color: var(--ink-soft); font-size: .85rem; line-height: 1.6; }
@container (max-width: 800px) {
  .pilot-flow { grid-template-columns: 1fr; gap: 0; }
  .pilot-flow-step { padding-bottom: 26px; }
  .pilot-flow-connector { display: none; }
  .pilot-flow-dot-row { margin-bottom: 14px; }
}

/* Anfrage pages: always show a photo of Mark Harwardt next to the request
   header, instead of a plain text-only band. */
.inquiry-top-grid { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(180px, .5fr); align-items: center; gap: 40px; }
.inquiry-top-grid .hero-person { align-self: center; min-height: 0; }
.inquiry-top-grid .hero-person img { width: 100%; height: 200px; min-height: 0; object-fit: cover; border-radius: 2px; }
@container (max-width: 800px) {
  .inquiry-top-grid { grid-template-columns: 1fr; gap: 20px; }
  .inquiry-top-grid .hero-person { max-width: 200px; margin: 0 auto; min-height: 0; }
  .inquiry-top-grid .hero-person img { min-height: 0; height: 180px; }
}

/* Qwen model badge on the "Eigene KI" page: a simple wordmark chip rather
   than an external logo file. */
.model-badge { display: inline-flex; align-items: center; gap: 14px; margin-top: 20px; padding: 10px 16px; border: 1px solid var(--line); background: var(--white); }
.model-badge-mark { display: inline-flex; align-items: center; justify-content: center; padding: 6px 14px; border-radius: 3px; background: var(--plum-900); color: var(--gold-300); font-family: var(--serif); font-size: 1.05rem; letter-spacing: .02em; }
.model-badge-note { color: var(--ink-soft); font-size: .8125rem; }

/* Academy learning-platform screenshots: full-width and stacked, instead of
   a single 640px-wide image lost at the bottom of the section. */
.academy-screens { display: grid; gap: 32px; margin-top: 32px; }
.academy-screens figure { margin: 0; }
.academy-screens img { display: block; width: 100%; box-shadow: 0 20px 40px rgba(33, 19, 40, .18); }
.academy-screens figcaption { margin-top: 12px; font-size: .8125rem; color: var(--ink-soft); }

/* --- Round 4 fixes --- */

/* Buttons and text-link arrows should not shift position on hover. */
.draft-ten .button:hover { transform: none; }
.draft-ten .text-link:hover span { transform: none; }

/* Required-field marker: a plain asterisk instead of "(Pflichtfeld)". */
.required-mark { color: #70501F; }

/* KI-Strategie "Zwei Einstiege" cards: price and its "einmalig, netto" note
   were sitting side by side on one line; stack them so the note reads as a
   caption under the price, and so both cards' notes line up. */
.draft-ten .detail-price { flex-direction: column; align-items: flex-start; gap: 4px; }

/* Fix: the strategie.html example-document photo lost its aspect ratio
   because the <img> carried width/height attributes but only a CSS width
   override — Chrome/Firefox then used the height attribute as a fixed
   pixel height instead of deriving it from the image's aspect ratio. */
.hero-decision-photo img { height: auto; }

/* Forms without a visible border/card frame (KIRI results, KI-Canvas). */
.draft-ten.draft-v4 .form-no-frame.subpage-form { padding: 0; border: 0; background: transparent; }

/* KIRI results: chart with its per-dimension scores beside it, then the
   headline score with its tier description beside that, underneath. */
.kiri-score-row { display: grid; grid-template-columns: minmax(0,1fr) minmax(280px,.8fr); gap: 40px; margin-bottom: 48px; padding-top: 32px; border-top: 1px solid var(--line); }
@container (max-width: 700px) {
  .kiri-score-row { grid-template-columns: 1fr; }
}

/* Whitepaper topic cards: show the cover as a real portrait rectangle,
   left-aligned with the heading and body copy below it, instead of a
   wide letterboxed/cropped strip bleeding past the card's own padding. */
.draft-ten .whitepaper-cover { display: block; width: 132px; height: auto; aspect-ratio: .7; max-width: 100%; margin: 0 0 22px; object-fit: cover; box-shadow: 0 18px 34px rgba(33,19,40,.22); }

/* Referenzen: real client logos instead of plain text names. */
.client-logos { display: flex; flex-wrap: wrap; align-items: center; gap: 24px 44px; padding: 26px 0; margin-top: 18px; border-top: 1px solid var(--line); }
.client-logos img { display: block; height: 48px; width: auto; max-width: 260px; object-fit: contain; }

/* Model-provider logos on the "Eigene KI" page. */
.model-logos { display: flex; flex-wrap: wrap; align-items: center; gap: 26px 38px; margin-top: 24px; }
.model-logos img { display: block; height: 30px; width: auto; max-width: 130px; }

/* Fix: .dark-info-card never set a light color for a plain h3 heading,
   leaving near-invisible dark-ink text on its dark plum background
   (affects prozesse.html's existing cards too, not just new ones). */
.draft-ten .dark-info-card h3 { color: var(--white); }

/* Publikationen: highlight the current book among the "Aktuelle Auswahl"
   cards instead of showing it identically to the older titles. */
.book-page-card.featured-book { position: relative; border: 3px solid var(--gold-500); }
.book-page-card.featured-book::before { content: "Neues Buch"; position: absolute; top: 14px; right: 14px; padding: 4px 10px; background: var(--gold-500); color: var(--plum-950); font-size: .6875rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }

/* Two-per-row variant: four narrow columns of card content read as cramped
   strips, so let some four-item grids wrap to two rows of two instead. */
.cards-4.two-up, .pilot-flow.two-up { grid-template-columns: repeat(2, minmax(0, 1fr)); }
@container (max-width: 640px) {
  .cards-4.two-up, .pilot-flow.two-up { grid-template-columns: 1fr; }
}

/* Vertical process flow: numbered steps stacked top to bottom, connected by
   a plain line, for a step-by-step sequence like "Anfrage → Angebot" rather
   than a row of cards. */
.process-flow { display: flex; flex-direction: column; max-width: 640px; margin-top: 8px; }
.process-flow-step { display: flex; align-items: stretch; gap: 24px; }
.process-flow-marker { display: flex; flex-direction: column; align-items: center; width: 44px; flex-shrink: 0; }
.process-flow-dot { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 50%; background: var(--plum-900); color: var(--gold-300); font-family: var(--serif); font-size: 1.2rem; flex-shrink: 0; }
.process-flow-line { position: relative; flex: 1; width: 8px; min-height: 32px; background: var(--gold-500); }
.process-flow-step:last-child .process-flow-line { display: none; }
.process-flow-body { position: relative; flex: 1; min-width: 0; padding-top: 5.8px; padding-bottom: 36px; }
.process-flow-label { display: block; position: absolute; left: 0; bottom: 100%; margin-bottom: -2px; line-height: 1; color: #70501F; font-size: .75rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
.process-flow-body h3 { margin: 0 0 8px; font-size: 1.15rem; }
.process-flow-body p { margin: 0; color: var(--ink-soft); font-size: .9rem; line-height: 1.6; }

/* Four-card cycle: same cards-4 grid, but the gap itself is colored so the
   grid's internal cross of gaps reads as connecting lines between the four
   cards in a loop (1-2, 2-3, 3-4, 4-1), without arrows. */
.cards-4.cycle-grid { gap: 4px; background: var(--gold-500); }
.cards-4.cycle-grid .info-card { background: var(--white); }
.cards-4.cycle-grid .info-card > span { display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; margin-bottom: 16px; border: 1px solid #70501F; border-radius: 50%; }

/* Circled number badge for card/step numbers, without the cycle-grid's
   colored-gap grid treatment — for a plain "01, 02, ..." card row. */
.circled-numbers .info-card > span { display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; border: 1px solid #70501F; border-radius: 50%; }
.draft-ten.draft-v4.draft-v5 .v5-step { display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; margin-bottom: 12px; border: 1px solid #70501F; border-radius: 50%; }

/* Blog overview: editorial cards within the existing H&K page layout. */
.blog-page .blog-intro { padding-block: 56px; }
.blog-page .blog-intro h1 { max-width: 850px; }
.blog-page .blog-intro .subpage-hero-intro { max-width: 730px; margin-bottom: 0; }
.blog-section-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 20px; margin-bottom: 28px; }
.draft-ten.draft-v4 .blog-section-heading h2 { margin: 0; font-size: 1.75rem; }
.blog-section-heading > span { color: var(--ink-soft); font-size: .875rem; }
.blog-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
.blog-entry { background: white; border: 1px solid var(--line); border-top: 3px solid var(--gold-500); padding: 30px; display: flex; flex-direction: column; }
.draft-ten.draft-v4 .blog-entry h2 { font-size: 1.5rem; line-height: 1.35; margin: 8px 0 16px; }
.blog-entry h2 a { color: inherit; text-decoration: none; }
.blog-entry h2 a:hover { text-decoration: underline; text-underline-offset: 4px; }
.blog-entry p { margin: 0 0 20px; }
.blog-entry-bottom { margin-top: auto; padding-top: 20px; border-top: 1px solid var(--line); display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; }
.blog-entry-bottom > span { font-size: .875rem; color: var(--ink-soft); }
.blog-entry a:focus-visible { outline: 3px solid var(--gold-500); outline-offset: 4px; }
@media(max-width:700px) {
 .blog-page .blog-intro { padding-block: 36px; }
 .blog-grid { grid-template-columns: 1fr; }
 .blog-section-heading { display: block; }
 .blog-section-heading > span { display: block; margin-top: 8px; }
 .blog-entry { padding: 24px; }
 .draft-ten.draft-v4 .blog-entry h2 { font-size: 1.3rem; }
}

/* Keep footer columns and testimonial text inside narrow viewports. */
@media (max-width: 700px) {
  .draft-ten.draft-v4 .footer-grid { grid-template-columns: minmax(0, 1fr); }
  .draft-ten.draft-v4 .footer-grid > div { min-width: 0; overflow-wrap: anywhere; }
  .draft-ten.draft-v4 .text-testimonial { min-width: 0; max-width: 100%; }
  .draft-ten.draft-v4 .text-testimonial figcaption > div { min-width: 0; overflow-wrap: anywhere; }
}
