/* V8: ausgewählte V5-Bausteine auf dem gemeinsamen Raster aus V6. */
.eyebrow, .chapter-line { font-size: 11px; font-weight: 600; line-height: 1.5; text-transform: uppercase; letter-spacing: .14em; }
.eyebrow { display: block; margin-bottom: 20px; }
.eyebrow--mint { color: var(--mint); }
.chapter-line { display: flex; justify-content: space-between; align-items: center; gap: 24px; border-top: 1px solid currentColor; padding-top: 17px; margin-bottom: 72px; }
.chapter-line > :last-child { color: var(--gray-600); font-weight: 400; letter-spacing: .05em; text-transform: none; }
.section-head { display: grid; grid-template-columns: 7fr 4fr; gap: 8.33%; align-items: end; margin-bottom: 64px; }
.section-head > p { font-size: 17px; line-height: 1.7; color: var(--gray-600); max-width: 440px; }
.hero { padding-top: 35px; overflow: clip; }
.hero-meta { display: flex; align-items: center; justify-content: space-between; gap: 30px; }
.hero-meta .eyebrow { margin: 0; display: flex; flex-shrink: 0; align-items: center; gap: 12px; }
.hero-meta .eyebrow::before { content: ''; width: 9px; height: 9px; background: var(--mint-dark); }
.hero-meta__right { font-size: 11px; color: var(--gray-600); }
.hero-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 1.8%; align-items: center; padding: 43px 0 48px; }
.hero-copy { position: relative; z-index: 2; padding-block: 5px; }
.hero h1 { font-size: clamp(65px, 7.55vw, 119px); line-height: .95; letter-spacing: -.065em; font-weight: 500; }
.hero-opening { display: block; font-size: clamp(22px, 2.35vw, 36px); line-height: 1.2; letter-spacing: -.035em; margin-bottom: 22px; }
.hero h1 em { display: table; padding: 2px 13px 8px 8px; margin-top: 16px; margin-left: -8px; font-size: .69em; font-style: normal; line-height: 1; letter-spacing: -.06em; color: var(--mint-dark); background: #dcebd6; }
.hero-copy > p { max-width: 505px; margin-top: 26px; font-size: 16px; line-height: 1.65; color: var(--gray-600); }
.hero-actions { display: flex; flex-wrap: wrap; gap: 22px; align-items: center; margin-top: 29px; }
.hero-actions .text-link { font-size: 12px; }
.hero-note { display: block; font-size: 10px; margin-top: 18px; color: var(--gray-600); }
.result-sculpture { position: relative; margin-left: -3%; align-self: stretch; display: flex; flex-direction: column; justify-content: center; }
.sculpture-label { display: flex; justify-content: space-between; margin-inline: 8% 2%; font-family: var(--font-display); font-size: 12px; }
.sculpture-label span:last-child { color: var(--mint-dark); }
.result-sculpture > svg { width: 100%; max-height: 580px; overflow: visible; }
.result-sculpture figcaption { display: grid; grid-template-columns: 60px 1fr 40px; gap: 10px; align-items: start; border-top: 1px solid var(--line-light); margin: -17px 1% 0 8%; padding-top: 16px; }
.sculpture-caption__index { font-size: 10px; color: var(--gray-600); padding-top: 2px; }
.result-sculpture figcaption p { font-size: 12px; line-height: 1.65; color: var(--gray-600); }
.result-sculpture figcaption strong { color: var(--ink); font-weight: 500; }
.result-sculpture figcaption a { display: grid; place-items: center; width: 36px; height: 36px; border: 1px solid var(--line-light); border-radius: 50%; font-size: 20px; }
.customer-bar { border-top: 1px solid var(--line-light); display: grid; grid-template-columns: 210px 1fr; gap: 45px; padding: 29px 0; align-items: center; }
.customer-bar > p { color: var(--gray-600); font-size: 11px; line-height: 1.8; }
.customer-bar > p strong { font-weight: 500; color: var(--ink); }
.customer-logos { display: flex; align-items: center; justify-content: space-between; gap: 30px; }
.customer-logos img { width: auto; max-width: 104px; height: 36px; }
.customer-logos img:nth-child(3) { height: 46px; width: 53px; }
.problem { background: #fff; }
.problem-layout { display: grid; grid-template-columns: 5fr 6fr; gap: 8.33%; }
.problem-intro > p { color: var(--gray-600); max-width: 350px; margin-block: 30px 25px; font-size: 16px; }
.problem-intro h2 { font-size: clamp(40px, 4.1vw, 64px); }
.problem-item { border-top: 1px solid var(--line-light); }
.problem-item:last-child { border-bottom: 1px solid var(--line-light); }
.problem-item summary { display: grid; grid-template-columns: 100px 1fr 20px; align-items: center; gap: 24px; padding-block: 24px; list-style: none; cursor: pointer; }
.problem-item summary::-webkit-details-marker { display: none; }
.problem-value { font-family: var(--font-display); font-size: 60px; font-weight: 500; line-height: 1; letter-spacing: -.075em; color: #809080; }
.problem-value small { font-size: 23px; vertical-align: top; line-height: 1.3; letter-spacing: -.035em; }
.problem-heading .eyebrow { font-size: 9px; color: var(--gray-600); margin-bottom: 7px; }
.problem-heading strong { font-family: var(--font-display); font-size: 23px; font-weight: 500; line-height: 1.17; letter-spacing: -.03em; display: block; }
.details-symbol { font-size: 24px; text-align: center; }
.problem-item[open] .problem-value { color: var(--mint-dark); }
.problem-item[open] .details-symbol { transform: rotate(45deg); }
.problem-body { margin-left: 124px; padding-bottom: 30px; padding-right: 24px; }
.problem-body > p { color: var(--gray-600); font-size: 14px; }
.problem-signal { font-size: 10px; display: block; margin-top: 14px; color: var(--mint-dark); }
.problem-body blockquote { margin-top: 24px; padding: 16px 18px; background: var(--paper); font-family: var(--font-display); font-size: 18px; line-height: 1.45; letter-spacing: -.03em; }
.problem-body cite { display: block; margin-top: 12px; font: 9px Inter, sans-serif; letter-spacing: .1em; text-transform: uppercase; color: var(--gray-600); }
.problem-verdict { margin-top: 70px; border-top: 1px solid var(--line-light); padding-top: 35px; display: grid; grid-template-columns: 5fr 6fr; gap: 8.33%; }
.problem-verdict > span { color: var(--gray-600); font-size: 11px; }
.problem-verdict p { color: var(--gray-600); font-family: var(--font-display); font-size: clamp(24px, 3vw, 44px); line-height: 1.2; letter-spacing: -.045em; }
.problem-verdict strong { color: var(--ink); font-weight: 500; }

.disciplines { padding-bottom: 80px; }
.discipline-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 5%; }
.discipline-grid article { border-top: 1px solid var(--ink); padding-top: 18px; }
.discipline-top { display: flex; align-items: center; justify-content: space-between; }
.discipline-top > span { font-family: var(--font-display); font-size: 66px; line-height: 1; letter-spacing: -.07em; color: #a4b3a0; }
.discipline-top p { font-size: 10px; text-transform: uppercase; letter-spacing: .12em; }
.discipline-grid h3 { margin-top: 45px; font-size: clamp(27px, 2.55vw, 39px); }
.discipline-grid article > p { margin-top: 20px; color: var(--gray-600); font-size: 14px; max-width: 340px; }
.discipline-outcome { display: flex; align-items: center; gap: 24px; border-top: 1px solid var(--line-light); margin-top: 50px; padding-top: 24px; }
.discipline-outcome > span { font-size: 56px; line-height: 1; color: var(--mint-dark); }
.discipline-outcome p { font-size: 14px; color: var(--gray-600); flex: 1; }
.discipline-outcome strong { color: var(--ink); font-weight: 500; }

.final-cta { background: var(--ink); color: var(--paper); padding-block: 55px 105px; }
.final-cta .chapter-line { border-color: #50614d; margin-bottom: 60px; }
.final-cta .chapter-line > :last-child { color: #afc0ac; }
.contact-grid { display: grid; grid-template-columns: 7fr 4fr; gap: 8.33%; align-items: end; }
.contact-grid h2 { font-size: clamp(52px, 7.1vw, 110px); line-height: .99; letter-spacing: -.06em; }
.contact-grid h2 span { color: var(--mint); }
.contact-person { display: flex; gap: 15px; align-items: center; margin-bottom: 32px; }
.contact-person img { width: 58px; height: 58px; object-fit: cover; border-radius: 50%; }
.contact-person strong, .contact-person span { display: block; }
.contact-person strong { font-size: 12px; font-weight: 500; }
.contact-person span { margin-top: 5px; font-size: 10px; color: #a7b6a5; }
.contact-copy > p { font-size: 16px; color: #bdcbb9; margin-bottom: 28px; }
.contact-copy > .button { width: 100%; }
.contact-copy > .text-link { color: #d6e1d2; width: 100%; margin-top: 15px; font-weight: 500; border-color: #52634d; }
.contact-copy ul { margin-top: 25px; }
.contact-copy li { font-size: 10px; color: #aebeaa; margin-top: 11px; display: flex; gap: 12px; }
.contact-copy li::before { content: '✓'; color: var(--mint); }

/* Farbwelt, Satzspiegel und Leserhythmus gelten für alle ausgewählten Kapitel. */
:root { --ink: #19291e; --ink-2: #263e2d; --mint: #b9f49d; --mint-dark: #496d46; --paper: #f5f4ee; --paper-2: #e8ecdf; --gray-600: #616e61; --line-light: #d3d9cc; --font-display: 'Space Grotesk', sans-serif; --header-h: 76px; --margin: clamp(24px, 4.6vw, 88px); --gutter: 28px; --shell: min(1480px, calc(100vw - 2 * var(--margin))); --chapter-y: clamp(80px, 7.6vw, 120px); color-scheme: light; }
body.landing-v8, [data-theme="light"] { --text: #19291e; --text-2: #5c6a5d; --text-3: #697665; --accent: #496d46; --bg: var(--paper); --line: #d5dbd0; --line-strong: #9ca895; color: var(--text); background: var(--bg); }
[data-theme="light"][data-surface="white"] { --bg: #fff; }
[data-theme="light"][data-surface="sage"] { --bg: #e3ead8; --surface: #f0f3e9; }
[data-theme="dark"] { --text: #f7f9f1; --text-2: #e0e7d9; --text-3: #cad5c5; --accent: var(--mint); --line: #ffffff30; --line-strong: #ffffff50; }
html { background: var(--paper); scroll-padding-top: calc(var(--header-h) + 1px); }
body { overflow-x: clip; }
p, figure, blockquote { margin: 0; }
a { text-decoration: none; }
button, a { -webkit-tap-highlight-color: transparent; }
button, summary { cursor: pointer; }
[hidden] { display: none !important; }
body.menu-open { overflow: hidden; }
h2 { font-size: clamp(38px, 4.8vw, 72px); line-height: 1.04; letter-spacing: -.05em; }
h3 { font-size: clamp(28px, 2.5vw, 38px); letter-spacing: -.04em; }
.section { padding-block: var(--chapter-y); }
.t-h1 { font-size: clamp(38px, 4.8vw, 72px); letter-spacing: -.045em; line-height: 1.05; }
.t-h2 { font-size: clamp(34px, 3.7vw, 56px); letter-spacing: -.035em; line-height: 1.08; }
.t-h3 { font-size: clamp(26px, 2.4vw, 34px); }
.t-lead, .section-head > p { font-size: clamp(18px, 1.4vw, 21px); line-height: 1.6; }
.t-body { font-size: 17px; line-height: 1.65; }
.t-caption { font-size: 14px; color: var(--text-3); }
.eyebrow, .chapter-line, .t-eyebrow { font-size: 12px; }
.chapter-line { margin-bottom: 56px; }
.section-head { margin-bottom: 64px; }
.section-head h2 span, .problem-intro h2 span { color: var(--mint-dark); }
.chapter-head--split { grid-template-columns: repeat(12, minmax(0, 1fr)); }
.chapter-head__main { grid-column: 1 / span 7; }
.chapter-head--split > .t-lead { grid-column: 9 / span 4; }
.shell { width: var(--shell); }
:focus-visible { outline: 2px solid var(--mint-dark); outline-offset: 5px; }
.industries :focus-visible, .final-cta :focus-visible { outline-color: var(--mint); }
/* Inhalte sind auch ohne JavaScript sichtbar. Überschriften werden niemals ausgeblendet. */
[data-reveal], [data-reveal="mask"], [data-reveal="scale"], [data-reveal="line"] { opacity: 1; transform: none; clip-path: none; transition: none; }
.reading-progress { position: fixed; inset: 0 0 auto; height: 2px; z-index: 70; pointer-events: none; }
.reading-progress span { display: block; width: 100%; height: 100%; background: var(--mint-dark); transform: scaleX(var(--read-progress, 0)); transform-origin: left; }

/* Hero: vier präzise Baugruppen, die einmal ruhig in ihre Endposition fahren. */
.hero { color: var(--ink); background: var(--paper); padding-top: 34px; }
.hero-meta__right { display: flex; flex-wrap: wrap; justify-content: flex-end; column-gap: .35em; font-size: 15px; line-height: 1.55; }
.hero-meta__right > span { white-space: nowrap; }
.hero-grid { grid-template-columns: 1.08fr 1fr; column-gap: 4%; padding-block: 54px 58px; }
.hero h1 { font-size: clamp(70px, 7.8vw, 126px); }
.hero h1 .hero-line { display: block; }
.hero-copy > p { font-size: 18px; line-height: 1.65; max-width: 530px; }
.hero-actions { gap: 20px; margin-top: 28px; }
.hero-actions .text-link { font-size: 15px; }
.hero-note { font-size: 13px; }
.result-sculpture { margin-left: -2%; }
.result-sculpture > svg { max-height: 650px; }
.sculpture-label, .result-sculpture figcaption p { font-size: 14px; }
.sculpture-caption__index { font-size: 12px; }
.sculpture-bar { transform-box: fill-box; transform-origin: bottom; }
@media (prefers-reduced-motion: no-preference) {
  .sculpture-bar { animation: sculpture-rise 1500ms cubic-bezier(.22,1,.36,1) both; animation-delay: calc(var(--bar-index) * 140ms + 100ms); }
  @keyframes sculpture-rise { from { opacity: .15; transform: translateY(36px) scaleY(.8); } to { opacity: 1; transform: none; } }
}
.customer-bar { grid-template-columns: 195px 1fr; gap: 32px; padding-block: 28px; }
.customer-bar > p { font-size: 13px; }
.customer-logos { gap: 28px; }
.customer-logos img { max-width: 112px; height: 38px; }

/* Ausgangslage und drei Disziplinen: Satz und Raster aus V5 mit lesbaren Details. */
.problem-intro h2 { font-size: clamp(39px, 4.2vw, 64px); }
.problem-intro > p { max-width: 420px; font-size: 18px; line-height: 1.7; }
.problem-value { font-size: 66px; color: #72826d; }
.problem-heading .eyebrow { font-size: 11px; }
.problem-heading strong { font-size: clamp(22px, 2vw, 29px); }
.problem-body > p { font-size: 16px; }
.problem-body cite, .problem-signal { font-size: 12px; }
.problem-body blockquote { font-size: 19px; }
.problem-verdict > span { font-size: 14px; }
.discipline-grid { gap: 5%; }
.discipline-grid article { padding-top: 24px; }
.discipline-top p { font-size: 12px; }
.discipline-grid article > p { font-size: 17px; line-height: 1.65; max-width: 100%; }
.discipline-grid h3 { margin-top: 46px; font-size: clamp(28px, 2.75vw, 41px); }
.discipline-outcome p { font-size: 17px; }
.discipline-outcome .text-link { white-space: nowrap; }

/* Die Bühne trägt Kopf und Inhalt gemeinsam. Pinning wird nur bei ausreichend Platz aktiviert. */
.scene { height: auto; }
.scene-stage { position: relative; top: auto; height: auto; overflow: visible; }
.scene-step { opacity: 1; transform: none; visibility: visible; }
.scene-step.is-past { transform: none; }
.system, .platform { padding-block: 56px 80px; }
.system-scene, .platform-scene { margin-top: 0; }
.system-stage, .platform-stage, .journey-stage { padding-block: 20px; display: block; }
.system > .system-stage-heading { padding-top: 20px; }
.system-head, .platform-head { max-width: 1140px; }
.system-head .t-lead, .platform-head .t-lead { max-width: 920px; }
.system-head .t-h2, .platform-head .t-h2 { font-size: clamp(32px, 3.2vw, 46px); }
.system-head { max-width: 1320px; }
.system-head .t-h2 { font-size: clamp(38px, 3.8vw, 64px); }
.system-layout { grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); gap: clamp(40px, 4vw, 76px); min-height: 0; padding: 32px 0 8px; align-items: center; }
.system-shift { grid-column: 1; }
.system-shift .t-h2 { font-size: clamp(34px, 2.8vw, 46px); }
.system-shift .t-body { font-size: clamp(20px, 1.15vw, 22px); line-height: 1.55; max-width: none; }
.system-shift > * + * { margin-top: 18px; }
.system .t-eyebrow { font-size: 14px; }
.system-proof li { padding-block: 12px; font-size: clamp(18px, 1.1vw, 20px); }
.system-head > * + *, .platform-head > * + * { margin-top: 16px; }
.system-head .t-lead, .platform-head .t-lead { font-size: 18px; }
.system-head .t-lead { max-width: 1100px; font-size: clamp(20px, 1.2vw, 23px); }
.system-depth { --illustration: 112px; --track: 140px; grid-column: 2; }
.system-illustrations { grid-template-rows: minmax(0, 1fr); }
.system-illustration { min-height: 0; }
.system-stairs { column-gap: 16px; margin-top: 16px; }
.system-bar__label { gap: 8px; align-content: start; grid-template-rows: 20px 2.6em auto; font-size: clamp(18px, 1.1vw, 22px); }
.system-bar__label b { font-size: 14px; }
.system-bar__label strong { font-size: clamp(18px, 1.1vw, 22px); }
.system-bar__label small { font-size: clamp(16px, .9vw, 18px); }
.system-bar__fill { background: #718e64; transform: scaleY(1); }
.system-bar:last-child .system-bar__fill { background: #b9eea3; }
.system-illustration { visibility: hidden; opacity: 0; transform: none; }
.system-illustration.is-active { visibility: visible; opacity: 1; }
.system-outcome { margin-top: 20px; }
.system-outcome__head { font-size: 14px; }
.system-outcome__value { font-size: clamp(30px, 2.3vw, 40px); }
.system-outcome__stack > * { opacity: 0; }
.system-outcome__stack > .is-active { opacity: 1; }
.system-scene:not([data-active-step]) .system-outcome__stack > :first-child { opacity: 1; transform: none; }
.system-close { padding-top: 36px; }
.system-close__row { margin-top: 28px; }
.system-close__actions { flex-wrap: wrap; }
.comparison-table tbody td { font-size: 16px; }
.comparison-table thead small { font-size: 14px; }
.comparison-table__kicker { font-size: 13px; }

/* Die Galerie läuft beim Scrollen horizontal durch; kleine Fenster behalten den nativen Slider. */
.use-cases-scroll { margin-top: 48px; }
.use-cases-gallery { margin-top: 0; }
.use-cases-stage { padding-block: 20px; }
.use-cases-scroll.is-pinned { height: calc(var(--stage-height) + var(--gallery-travel)); }
.use-cases-scroll.is-pinned .use-cases-stage { position: sticky; top: var(--header-h); height: var(--stage-height); display: flex; flex-direction: column; justify-content: center; overflow: clip; }
.use-cases-scroll.is-pinned .use-cases-rail { scroll-snap-type: none; scroll-behavior: auto; }
.use-cases-scroll.is-pinned .use-case { height: clamp(500px, calc(var(--stage-height) - 225px), 650px); }
.use-cases-scroll.is-pinned .use-cases-foot { margin-top: 24px; padding-top: 20px; }
.use-cases-bar__label { display: flex; align-items: center; flex-wrap: wrap; gap: 10px 24px; font-size: 17px; }
.use-cases-bar__hint { display: none; color: var(--mint-dark); font-size: 13px; }
.is-pinned .use-cases-bar__hint { display: inline-flex; gap: 12px; align-items: center; }
.use-cases-bar__hint > span { font-size: 22px; }
.use-cases-outro { display: none; }
.use-cases-scroll.is-pinned .use-cases-outro { display: flex; flex-direction: column; justify-content: center; gap: 24px; width: calc(7 * var(--col) + 6 * var(--gutter)); padding: 32px clamp(32px, 4vw, 76px); }
.use-cases-outro h3 { font-size: clamp(38px, 3.5vw, 58px); }
.use-cases-outro .t-lead { font-size: 21px; max-width: 480px; }
.use-cases-outro__arrow { font-size: 80px; line-height: 1; color: var(--mint-dark); }
.use-case { --text: #fbfff4; --text-2: #e6eddf; --text-3: #d9e4d3; --accent: var(--mint); border-radius: 10px; height: 610px; background: var(--ink); }
.use-case::after { background: linear-gradient(180deg, #10231966, transparent 30%), linear-gradient(180deg, transparent 24%, #1b2e20d9 63%, #17291cf5 100%); }
.use-case__body .t-body { font-size: 16px; }
.use-case__meta { font-size: 14px; color: #fff; text-shadow: 0 1px 8px #0008; }
.use-case__metrics .metric strong { color: var(--mint); }
.use-case .metric span { font-size: 15px; }
.use-cases-bar__position { color: var(--text); }
.use-cases-foot .button { background: var(--ink); color: white; border-color: var(--ink); }

/* Branchen: Text im vertikalen Bildzentrum, Logos frei auf dem Bild, große Navigation. */
.industries { background: var(--paper); }
.industries-head { padding-block: 90px 64px; }
.industries-stage { background: #233b2b; }
.industries-backdrop img { filter: saturate(.86) brightness(1.02); transform: scale(1.03); }
.industries-veil { background: linear-gradient(90deg, #14251ded 0%, #14251de0 25%, #14251d7a 60%, #14251d12 100%), linear-gradient(0deg, #14251de6, transparent 28%); }
.industries-layout { min-height: 0; height: 100%; padding-block: 64px 140px; align-content: center; }
.industries-panel { grid-column: 1 / span 7; max-width: 710px; }
.industries-step { gap: 20px; }
.industries-step .t-h2 { font-size: clamp(38px, 3.8vw, 58px); }
.industries-step .t-lead { max-width: 600px; font-size: 20px; }
.industries-facts { justify-content: flex-start; gap: 32px 64px; }
.industries-plate { background: transparent; padding: 4px 0; gap: 25px; border-radius: 0; }
.industries-plate img { height: 27px; max-width: 130px; filter: brightness(0) invert(1); }
.industries-plate .industries-logo--ritter { filter: none; height: 45px; }
.industries-plate .industries-logo--kaco { mix-blend-mode: normal; filter: none; }
.industries-nav { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); column-gap: 24px; bottom: 32px; }
.industries-nav li { grid-column: auto; }
.industries-nav button { font-size: 17px; padding-block: 8px; white-space: normal; color: #d4dfcb; min-height: 62px; }
.industries-nav__index { font-size: 13px; margin-right: 8px; }
.industries-nav__bar { margin-bottom: 16px; }

/* Plattform: vier austauschbare Produktbilder, ein gleichmäßiges 2×2-Raster. */
.platform-layout { padding-top: 28px; column-gap: 40px; }
.platform-layer { padding: 12px 16px 12px 0; }
.platform-layer__select { position: absolute; z-index: 2; inset: 0; width: 100%; padding: 0; border: 0; background: transparent; }
.platform-layer__select:hover { background: #496d4607; }
.platform-layer__title { font-size: 22px; max-width: 28ch; margin-top: 8px; }
.platform-layer__sub { font-size: 15px; }
.platform-layer__label { font-size: 12px; }
.platform-layer__select[aria-pressed="true"] { border-left: 3px solid var(--mint-dark); left: -17px; width: calc(100% + 17px); }
.platform-window { width: 100%; max-width: 760px; justify-self: end; border-radius: 10px; box-shadow: 0 22px 60px #283e2420; }
.platform-window__bar { padding-inline: 16px; height: 42px; }
.platform-window__url { font-size: 12px; }
.platform-window__status { font-size: 11px; }
.platform-window__screens { height: auto; aspect-ratio: 1600 / 1080; }
.platform-window__screens img { width: 100%; height: 100%; object-fit: contain; object-position: center; transform: none; }
.platform-window__screens img:not(.is-active) { opacity: 0; visibility: hidden; }
.platform-window__screens img.is-active { opacity: 1; visibility: visible; }
.platform-window__screens img { aspect-ratio: 1600 / 1080; }
.platform-capabilities { margin-top: 88px; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.platform-card { grid-column: auto; display: flex; flex-direction: column; align-items: stretch; padding: 32px; gap: 20px; min-width: 0; border-radius: 8px; }
.platform-card .t-h3 { font-size: 30px; max-width: 25ch; }
.platform-card__kicker { font-size: 12px; color: var(--text-2); }
.platform-card .t-body { font-size: 17px; }
.platform-map { grid-template-columns: minmax(80px, 1fr) 20px 52px minmax(76px, 1fr) minmax(80px, 1fr); padding: 16px; margin-top: auto; min-height: 195px; }
.platform-map__lane { padding: 8px; }
.platform-map__lane-label { white-space: normal; font-size: 10px; }
.platform-map__core { width: 52px; height: 52px; }
.platform-map__core img { width: 37px; }
.platform-map__connect { font-size: 10px; padding: 6px; gap: 4px; }
.platform-models { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-block: 0; padding: 0; }
.platform-models li { border-radius: 5px; padding: 12px; gap: 9px; font-size: 14px; min-height: 48px; background: #f8f9f4; }
.platform-card__stat { margin-top: auto; padding-top: 16px; border-top: 1px solid var(--line); }
.platform-card__stat strong { font-size: 40px; }
.platform-deploy { margin-top: auto; }
.platform-deploy li { padding-block: 16px; }
.platform-checks { gap: 0; margin: 0; }
.platform-checks li { padding-block: 18px; font-size: 17px; line-height: 1.5; }
.governance-activity { padding: 20px; margin-top: auto; background: #f0f4e9; border: 1px solid #dce4d1; border-radius: 6px; }
.governance-activity > p { font-size: 12px; text-transform: uppercase; letter-spacing: .09em; color: var(--mint-dark); margin-bottom: 14px; }
.governance-activity div { display: grid; grid-template-columns: 8px 1fr auto; align-items: center; gap: 12px; font-size: 14px; padding-block: 9px; }
.governance-activity i { width: 6px; height: 6px; border-radius: 50%; background: var(--mint-dark); }
.governance-activity small { font-size: 12px; color: var(--text-2); }

/* Zitate: Farbe führt durch den Gedanken, der Text bleibt immer im Dokument. */
.quote-story { background: #edf0e5; padding-block: 40px; }
#team.quote-story { background: var(--paper); }
.quote-stage { padding-block: 72px; }
.quote-layout { display: grid; grid-template-columns: 180px minmax(0, 1fr); column-gap: 72px; align-items: center; max-width: 1260px; }
.quote-person img { width: 156px; height: 176px; border-radius: 6px; object-fit: cover; filter: saturate(.8); }
#luc-quote .quote-person img { width: 132px; height: 148px; }
.quote-person p { margin-top: 20px; }
.quote-person strong { display: block; font-size: 17px; font-weight: 600; }
.quote-person p > span { display: block; margin-top: 6px; font-size: 14px; color: var(--text-2); }
.quote-content > .eyebrow { margin-bottom: 26px; color: var(--mint-dark); }
.quote-content blockquote { font-family: var(--font-display); font-size: clamp(29px, 3.1vw, 46px); line-height: 1.2; letter-spacing: -.035em; text-wrap: pretty; overflow-wrap: anywhere; }
.quote-word { color: #707c67; transition: color 320ms linear; }
.quote-word.is-read { color: var(--ink); }
.quote-source { font-size: 13px; line-height: 1.6; color: var(--text-2); max-width: 690px; margin-top: 30px; }

/* Partnerschaften: identische Bildformate und gleich breite Spalten. */
.news-grid { margin-top: 48px; }
.news-card { grid-column: span 4; }
.news-card__media, .news-card--lead .news-card__media { aspect-ratio: 16 / 10; }
.news-card__media--founder img { object-position: 50% 44%; }
.news-card__title { font-size: clamp(26px, 2.2vw, 34px); }
.news-card__meta { font-size: 12px; }
.news-card__body { padding-top: 24px; }

/* Prozess: klare Blickführung aus V6, Salbeigrün und Navigation aus V5. */
.journey { padding-block: 32px 72px; }
.journey-stage .chapter-line { margin-bottom: 40px; }
.journey-stage .section-head { margin-bottom: 48px; }
.journey-stage h2 { font-size: clamp(38px, 4.3vw, 64px); }
.journey-layout { display: grid; grid-template-columns: 5fr 6fr; gap: 8.33%; align-items: center; }
.journey-counter { display: flex; align-items: baseline; gap: 16px; font-family: var(--font-display); line-height: 1; margin: 24px 0 32px; }
.journey-counter > span { font-size: clamp(80px, 9vw, 132px); letter-spacing: -.08em; }
.journey-counter > small { font-size: 24px; color: var(--text-2); }
.journey-nav { list-style: none; padding: 0; margin: 0; border: 1px solid #c6d1ba; }
.journey-nav li + li { border-top: 1px solid #c6d1ba; }
.journey-nav button { width: 100%; min-height: 52px; display: grid; grid-template-columns: 28px 1fr 8px; gap: 14px; align-items: center; text-align: left; padding: 14px 18px; font-size: 16px; background: transparent; border: 0; }
.journey-nav button > span { font-size: 12px; }
.journey-nav i { width: 5px; height: 5px; border: 1px solid currentColor; }
.journey-nav [aria-pressed="true"] { background: var(--ink); color: var(--mint); }
.journey-nav [aria-pressed="true"] i { background: currentColor; }
.journey-panels { display: grid; align-items: center; }
.journey-step { padding-block: 32px; border-top: 1px solid var(--line); }
.journey-step h3, .journey-summary h3 { font-size: clamp(30px, 3.5vw, 50px); line-height: 1.1; overflow-wrap: anywhere; }
.journey-step > p:not(.eyebrow) { font-size: 20px; line-height: 1.65; margin-top: 28px; color: var(--text-2); }
.journey-result { display: flex; gap: 18px; align-items: center; margin-top: 32px; font-size: 16px; font-weight: 500; }
.journey-result > span { font-size: 32px; color: var(--mint-dark); }
.journey-summary { display: none; }
.journey-summary ol { list-style: none; padding: 24px 0 0; margin: 32px 0 0; display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--mint-dark); gap: 16px; }
.journey-summary li { font-size: 14px; }
.journey-summary li > span { font-family: var(--font-display); font-size: 32px; color: var(--mint-dark); }
.journey-summary li strong { display: block; margin-top: 14px; font-weight: 500; }
.client-quote { border-top: 1px solid #b8c7aa; padding-top: 48px; margin-top: 56px; display: grid; grid-template-columns: 1fr auto; gap: 64px; align-items: center; }
.client-quote blockquote { max-width: 820px; font-family: var(--font-display); font-size: 29px; letter-spacing: -.025em; line-height: 1.3; }
.client-quote figcaption { display: flex; align-items: center; gap: 14px; }
.client-quote figcaption > img { border-radius: 50%; object-fit: cover; }
.client-quote figcaption p > * { display: block; font-size: 14px; }
.client-quote figcaption p > span { color: var(--text-2); }
.client-quote figcaption > .client-quote__logo { border-radius: 0; margin-left: 12px; }

/* Eine gemeinsame Tabelle: gleiche Zeilenhöhen und direkt vergleichbare Erwartungen. */
.fit-head { max-width: 1120px; }
.fit-head .t-lead { max-width: 760px; margin-inline: auto; }
.fit-table-wrap { margin-top: 48px; border: 1px solid #cbd4c4; border-radius: 10px; overflow: hidden; }
.fit-table { width: 100%; border-collapse: separate; border-spacing: 0; table-layout: fixed; text-align: left; }
.fit-table__criterion { width: 23%; }
.fit-table__positive { width: 38.5%; }
.fit-table th, .fit-table td { padding: 26px 32px; vertical-align: middle; font-size: 20px; line-height: 1.5; font-weight: 400; }
.fit-table th + th, .fit-table td { border-left: 1px solid #cbd4c4; }
.fit-table thead th { padding-block: 30px; background: var(--paper); vertical-align: top; }
.fit-table thead .fit-table__yes { background: var(--ink); color: #f6faef; border-left-color: var(--ink); }
.fit-table thead .fit-table__no { background: #f0f1eb; color: #51604e; }
.fit-table__eyebrow { display: flex; align-items: center; gap: 12px; min-height: 28px; margin-bottom: 16px; color: var(--text-2); font-size: 12px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; }
.fit-table__yes .fit-table__eyebrow { color: var(--mint); }
.fit-table__symbol { display: inline-grid; place-items: center; width: 26px; height: 26px; border: 1px solid currentColor; border-radius: 50%; font-size: 18px; font-weight: 400; letter-spacing: 0; }
.fit-table__heading { display: block; max-width: 20ch; font-family: var(--font-display); font-size: clamp(24px, 2vw, 31px); line-height: 1.2; letter-spacing: -.025em; }
.fit-table tbody th, .fit-table tbody td { border-top: 1px solid #cbd4c4; }
.fit-table tbody th { background: #fafbf7; font-weight: 500; font-size: 18px; }
.fit-table__index { display: block; margin-bottom: 6px; font-family: var(--font-numeric); color: #67785c; font-size: 12px; letter-spacing: .06em; }
.fit-table tbody .fit-table__yes { background: #e8efdf; color: var(--ink); }
.fit-table tbody .fit-table__no { background: #f7f7f3; color: #596553; }
.fit-table td p { margin: 0; }
.fit-table__mobile-label { display: none; }

/* Abschluss: dieselbe Größe und Gewichtung für alle entscheidenden Texte. */
.final-cta { padding-block: 64px 104px; }
.contact-grid { grid-template-columns: 6fr 5fr; gap: 8.33%; }
.contact-grid h2 { font-size: clamp(52px, 6.9vw, 108px); }
.contact-person img { width: 64px; height: 64px; }
.contact-person strong { font-size: 18px; }
.contact-person span { font-size: 14px; color: #c7d6bd; }
.contact-copy > p { font-size: 19px; line-height: 1.7; color: #d1ddc7; }
.contact-copy li { font-size: 15px; color: #d1ddc7; margin-top: 14px; }
.contact-copy ul { padding: 0; list-style: none; }

/* Der Footer besitzt ein eigenes Raster und eigene Farben, unabhängig von den V6-Bausteinen. */

/* Bewegung wird erst nach Größenprüfung zugeschaltet; zu kleine Bühnen bleiben im Lesefluss. */
.scene.is-pinned { height: calc(var(--stage-height) + var(--travel)); }
.scene.is-pinned > .scene-stage { position: sticky; top: var(--header-h); height: var(--stage-height); display: flex; flex-direction: column; justify-content: center; overflow: clip; }
.scene.is-pinned .scene-step, .scene.is-pinned .system-outcome__stack > * { opacity: 0; visibility: hidden; pointer-events: none; transform: translateY(8px); transition: opacity 120ms ease-out, transform 360ms var(--ease-out), visibility 0s linear 120ms; }
/* Erst den alten Text ausblenden, dann den neuen zeigen: keine übereinanderliegenden Sätze. */
.scene.is-pinned .scene-step.is-active, .scene.is-pinned .system-outcome__stack > .is-active { opacity: 1; visibility: visible; pointer-events: auto; transform: none; transition: opacity 320ms var(--ease-out) 120ms, transform 480ms var(--ease-out) 120ms, visibility 0s; }
.scene.is-pinned .system-bar__fill { transform: scaleY(clamp(.07, (var(--progress, 0) * 4 - var(--n)) * 1.8, 1)); }
.scene.is-pinned .journey-step, .scene.is-pinned .journey-summary { grid-area: 1/1; border-top: 0; }
.scene.is-pinned .journey-summary { display: block; }
.scene.is-pinned .journey-panels { min-height: 360px; }
.scene.is-pinned[data-active-step="4"] .journey-summary li { animation: summary-arrive 600ms var(--ease-out) both; animation-delay: calc(var(--item-index) * 100ms); }
@keyframes summary-arrive { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }
.quote-story.is-pinned { height: calc(var(--quote-stage-height) + var(--quote-travel)); padding: 0; }
.quote-story.is-pinned .quote-stage { position: sticky; top: var(--header-h); height: var(--quote-stage-height); display: grid; align-items: center; }
/* Statische Fassung: keine überlagerten Panels, auch bei Zoom und ausgeschalteter Bewegung. */
.scene:not(.is-pinned) .platform-window { display: none; }
.scene:not(.is-pinned) .platform-layers { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 36px; }
.scene:not(.is-pinned) .platform-layer__shot { display: block; margin-top: 20px; border: 1px solid var(--line); border-radius: 8px; overflow: hidden; }
.scene:not(.is-pinned) .platform-layer__shot img { width: 100%; height: auto; max-height: none; object-fit: contain; }
.scene:not(.is-pinned) .platform-layer__select { display: none; }
.scene:not(.is-pinned) .system-illustration:not(:first-child) { display: none; }
.scene:not(.is-pinned) .system-illustration:first-child { visibility: visible; opacity: 1; }
.scene:not(.is-pinned) .system-illustration [data-draw] { stroke-dashoffset: 0; }
.scene:not(.is-pinned) .system-illustrations, .scene:not(.is-pinned) .system-outcome { display: none; }
.scene:not(.is-pinned) .journey-guide { align-self: start; }
.scene:not(.is-pinned) .journey-counter { display: none; }
.scene:not(.is-pinned) .journey-nav { margin-top: 32px; }
.scene:not(.is-pinned).industries-scene .industries-stage { height: auto; }
.scene:not(.is-pinned) .industries-layout { padding-block: 0; }
.scene:not(.is-pinned) .industries-backdrop, .scene:not(.is-pinned) .industries-veil, .scene:not(.is-pinned) .industries-nav { display: none; }
.scene:not(.is-pinned) .industries-panel { display: block; grid-column: 1/-1; max-width: none; }
.scene:not(.is-pinned) .industries-step { width: 100%; min-width: 0; grid-template-columns: minmax(0, 1fr); border: 0; border-radius: 0; background: transparent; position: relative; isolation: isolate; min-height: 690px; padding: 56px; overflow: hidden; gap: 20px; }
.scene:not(.is-pinned) .industries-step > * { margin-inline: 0; min-width: 0; }
.scene:not(.is-pinned) .industries-step__media { aspect-ratio: auto; display: block; position: absolute; inset: 0; z-index: -2; }
.scene:not(.is-pinned) .industries-step__media img { width: 100%; height: 100%; object-fit: cover; }
.scene:not(.is-pinned) .industries-step::after { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg,#17291ef2,#17291e88); }
.scene:not(.is-pinned) .industries-step .t-lead { max-width: 600px; }
.scene:not(.is-pinned) .industries-step .t-h2 { max-width: 700px; }

/* In flachen Desktop-Fenstern wird die Illustration kompakter, die Schrift bleibt groß. */
@media (min-width: 1001px) and (max-height: 940px) {
  .system-stage { padding-block: 16px; }
  .system-layout { padding-block: 24px 0; }
  .system-depth { --illustration: 72px; --track: 104px; }
  .system-outcome { padding-top: 12px; }
}
@media (max-width: 1180px) {
  .hero h1 { font-size: 8.2vw; }
  .hero-actions { gap: 12px 20px; }
  .customer-logos { gap: 20px; }
  .customer-logos img { max-width: 92px; }
  .platform-card { padding: 28px; }
  .platform-map { grid-template-columns: minmax(72px,1fr) 8px 40px minmax(65px,1fr) minmax(72px,1fr); padding: 12px; }
  .platform-map__core { width: 40px; height: 40px; }
  .platform-map__connect { font-size: 9px; }
}
@media (max-width: 1000px) {
  :root { --header-h: 68px; --margin: 32px; }
  .hero-grid { column-gap: 16px; }
  .hero h1 { font-size: 8.5vw; }
  .hero-copy > p { font-size: 17px; }
  .hero-meta { flex-direction: column; align-items: flex-start; gap: 10px; }
  .hero-meta__right { justify-content: flex-start; }
  .hero-note { max-width: 300px; }
  .sculpture-label { font-size: 12px; }
  .result-sculpture figcaption { grid-template-columns: 1fr 32px; margin-top: 0; }
  .sculpture-caption__index { display: none; }
  .customer-bar { grid-template-columns: 1fr; gap: 22px; }
  .customer-bar > p br { display: none; }
  .customer-logos img { max-width: 105px; }
  .problem-layout, .problem-verdict { gap: 5%; }
  .problem-item summary { grid-template-columns: 70px 1fr 20px; gap: 16px; }
  .problem-value { font-size: 52px; }
  .problem-body { margin-left: 86px; padding-right: 0; }
  .section-head, .chapter-head--split { display: grid; grid-template-columns: 1fr; gap: 28px; }
  .chapter-head__main, .chapter-head--split > .t-lead { grid-column: 1/-1; }
  .section-head > p, .chapter-head--split > .t-lead { max-width: 640px; }
  .system-layout { display: grid; grid-template-columns: 1fr; gap: 44px; }
  .system-shift, .system-depth { grid-column: 1 / -1; }
  .system-depth { margin-top: 0; }
  .system-bar__label { grid-template-rows: none; }
  .fit-table th, .fit-table td { padding: 22px; font-size: 18px; }
  .fit-table__heading { font-size: 24px; }
  .system-close__row > *, .system-close__actions { grid-column: 1/-1; }
  .system-close__actions { justify-content: flex-start; margin-top: 24px; }
  .discipline-grid { gap: 28px; }
  .discipline-top { display: block; }
  .discipline-top p { margin-top: 12px; }
  .discipline-outcome { flex-wrap: wrap; }
  .discipline-outcome .text-link { margin-left: 74px; }
  .platform-layout { grid-template-columns: minmax(0, 1fr); }
  .platform-capabilities { grid-template-columns: 1fr; }
  .platform-map { grid-template-columns: 1fr 32px 72px 150px 1fr; padding: 24px; }
  .platform-map__core { width: 72px; height: 72px; }
  .platform-map__connect { font-size: 12px; }
  .platform-models { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .news-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .news-card { grid-column: auto; }
  .news-card__title { font-size: 25px; }
  .quote-layout { grid-template-columns: 140px minmax(0,1fr); gap: 36px; }
  .quote-person img { width: 130px; height: 145px; }
  .client-quote { grid-template-columns: 1fr; gap: 28px; }
  .contact-grid { gap: 6%; grid-template-columns: 1fr 1fr; }
}
@media (max-width: 700px) {
  :root { --margin: 22px; --gutter: 20px; --chapter-y: 72px; }
  h2, .t-h1 { font-size: clamp(35px, 8.8vw, 50px); }
  .t-h2 { font-size: 34px; }
  .section-head { margin-bottom: 40px; }
  .chapter-line { margin-bottom: 36px; padding-top: 14px; font-size: 11px; }
  .chapter-line > :last-child { display: none; }
  .hero { padding-top: 28px; }
  .hero-meta .eyebrow { font-size: 11px; letter-spacing: .12em; }
  .hero-grid { grid-template-columns: 1fr; padding: 36px 0 32px; gap: 42px; }
  .hero h1 { font-size: clamp(65px, 17.8vw, 100px); }
  .hero-opening { font-size: 25px; margin-bottom: 20px; }
  .hero h1 em { margin-top: 14px; }
  .hero-copy > p { margin-top: 25px; font-size: 17px; }
  .hero-actions { display: grid; gap: 14px; }
  .hero-actions > * { width: 100%; }
  .hero-note { font-size: 12px; max-width: none; }
  .result-sculpture { width: 100%; max-width: 440px; margin: 0 auto; }
  .result-sculpture > svg { max-height: 400px; }
  .sculpture-label { font-size: 13px; }
  .result-sculpture figcaption { grid-template-columns: 1fr 36px; margin-inline: 5%; margin-top: -10px; }
  .result-sculpture figcaption p { font-size: 13px; }
  .customer-bar { padding-block: 24px; }
  .customer-bar > p { font-size: 13px; }
  .customer-logos { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 26px 20px; justify-items: center; }
  .customer-logos img { max-width: 95px; max-height: 35px; }
  .customer-logos img:nth-child(3) { max-height: 42px; height: 42px; }
  .problem-layout, .problem-verdict { grid-template-columns: 1fr; gap: 36px; }
  .problem-intro h2 { font-size: 42px; }
  .problem-intro > p { font-size: 17px; margin-block: 24px; }
  .problem-item summary { padding-block: 24px; grid-template-columns: 68px minmax(0,1fr) 18px; gap: 13px; }
  .problem-heading strong { font-size: 23px; }
  .problem-heading .eyebrow { font-size: 10px; }
  .problem-value { font-size: 48px; }
  .problem-value small { font-size: 20px; }
  .problem-body { margin-left: 0; padding-bottom: 24px; }
  .problem-verdict { margin-top: 44px; gap: 20px; }
  .problem-verdict p { font-size: 31px; }
  .discipline-grid { grid-template-columns: 1fr; gap: 38px; }
  .discipline-top { display: flex; }
  .discipline-top > span { font-size: 58px; }
  .discipline-top p { margin: 0; }
  .discipline-grid h3 { margin-top: 24px; font-size: 32px; }
  .discipline-grid article > p { margin-top: 18px; font-size: 17px; }
  .discipline-outcome { gap: 16px; align-items: start; margin-top: 36px; }
  .discipline-outcome > span { font-size: 40px; }
  .discipline-outcome p { flex-basis: calc(100% - 60px); font-size: 16px; }
  .discipline-outcome .text-link { margin: 8px 0 0 0; white-space: normal; width: 100%; }
  .system, .platform { padding-block: 40px 56px; }
  .system-stage, .platform-stage, .journey-stage { padding-block: 20px; }
  .system-head, .platform-head { text-align: left; }
  .system-head .t-eyebrow, .platform-head .t-eyebrow { justify-content: flex-start; }
  .system-head .t-h2, .platform-head .t-h2 { font-size: 33px; overflow-wrap: anywhere; }
  .system-head .t-lead, .platform-head .t-lead { font-size: 17px; }
  .system-head .t-h2 { font-size: 38px; }
  .system-head .t-lead, .system-shift .t-body { font-size: 19px; }
  .system-shift .t-h2 { font-size: 34px; }
  .system .t-eyebrow { font-size: 12px; }
  .system-layout { padding-top: 40px; }
  .system-illustrations, .system-outcome { display: none; }
  .system-bar__label strong { font-size: 19px; }
  .system-bar__label small { font-size: 17px; }
  .system-close__row .t-h3 { font-size: 29px; }
  .system-close__actions { display: grid; gap: 12px; }
  .system-close__actions .button { width: 100%; }
  .comparison-table-wrap { margin-top: 36px; }
  .comparison-table thead th { display: block; }
  .comparison-table tbody td, .comparison-table tbody td::before { font-size: 15px; }
  .use-cases-scroll { margin-top: 24px; }
  .use-cases-bar { flex-wrap: wrap; gap: 18px; }
  .use-cases-bar__nav { margin-left: auto; }
  .use-case, .use-case--lead { width: calc(100vw - 44px); height: 620px; padding: 24px; }
  .use-case__body .t-h3 { font-size: 30px; }
  .use-case__body .t-body { font-size: 16px; }
  .use-case__meta { font-size: 12px; gap: 8px; }
  .use-case__metrics .metric strong { font-size: 43px; }
  .use-case__metrics .use-case__metric--secondary strong { font-size: 27px; }
  .use-case .metric span { font-size: 13px; }
  .use-cases-foot { flex-direction: column; align-items: flex-start; gap: 24px; }
  .use-cases-foot .button { width: 100%; }
  .industries-head { padding-block: 64px 40px; }
  .industries-scene .industries-layout { width: 100%; }
  .scene:not(.is-pinned) .industries-step { min-height: 730px; padding: 44px 24px; margin: 0; }
  .industries-step .t-h2 { font-size: 35px; overflow-wrap: anywhere; }
  .industries-step .t-lead { font-size: 18px; }
  .industries-facts { gap: 24px; margin-top: 4px; padding-top: 24px; }
  .industries-pills { gap: 6px; }
  .industries-pills li { font-size: 12px; padding: 6px 10px; }
  .industries-numbers { gap: 18px; }
  .industries-numbers .metric { flex: 1 1 85px; }
  .industries-numbers .metric strong { font-size: 29px; }
  .industries-numbers .metric span { font-size: 13px; }
  .platform-layout { padding-top: 32px; }
  .scene:not(.is-pinned) .platform-layers { grid-template-columns: 1fr; gap: 20px; }
  .platform-layer { padding-block: 24px; }
  .platform-layer__title { font-size: 28px; max-width: none; }
  .platform-capabilities { margin-top: 32px; gap: 20px; }
  .platform-card { padding: 24px; gap: 18px; }
  .platform-card .t-h3 { font-size: 28px; max-width: none; }
  .platform-card .t-body { font-size: 16px; }
  .platform-map { display: flex; flex-direction: column; gap: 12px; padding: 16px; }
  .platform-map__lane { width: 100%; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 6px; }
  .platform-map__lane-label { grid-column: 1 / -1; font-size: 11px; }
  .platform-map__link { width: 1px; height: 18px; background: var(--line-strong); }
  .platform-map__core { width: 64px; height: 64px; }
  .platform-map__core img { width: 48px; }
  .platform-map__link--connect { height: 28px; }
  .platform-map__connect { font-size: 12px; }
  .platform-map__chip { font-size: 12px; text-align: center; }
  .platform-models { grid-template-columns: 1fr 1fr; gap: 8px; }
  .platform-models li { padding: 10px 8px; font-size: 12px; gap: 6px; }
  .platform-models li img { width: 16px; }
  .platform-models li.platform-models__wordmark img { width: 70px; }
  .platform-checks { grid-template-columns: 1fr; }
  .governance-activity { padding: 14px; }
  .governance-activity div { font-size: 12px; gap: 8px; }
  .governance-activity small { font-size: 11px; }
  .quote-story { padding-block: 0; }
  .quote-stage { padding-block: 64px; }
  .quote-layout { grid-template-columns: 1fr; gap: 32px; }
  .quote-person { display: flex; gap: 18px; align-items: center; }
  .quote-person img, #luc-quote .quote-person img { width: 68px; height: 76px; }
  .quote-person p { margin: 0; }
  .quote-person strong { font-size: 16px; }
  .quote-person p > span { font-size: 13px; }
  .quote-content blockquote { font-size: 31px; line-height: 1.25; }
  .quote-content > .eyebrow { margin-bottom: 20px; font-size: 11px; }
  .quote-source { font-size: 12px; }
  .news-grid { grid-template-columns: 1fr; gap: 44px; }
  .news-card { grid-column: 1 / -1; }
  .news-card__title { font-size: 30px; }
  .journey { padding-block: 32px 56px; }
  .journey-stage h2 { font-size: 40px; }
  .journey-layout { grid-template-columns: 1fr; gap: 32px; }
  .journey-guide { display: none; }
  .journey-step { padding-block: 32px; }
  .journey-step h3 { font-size: 34px; }
  .journey-step > p:not(.eyebrow) { font-size: 18px; margin-top: 22px; }
  .journey-result { font-size: 15px; margin-top: 24px; }
  .client-quote { margin-top: 24px; padding-top: 36px; }
  .client-quote blockquote { font-size: 27px; }
  .client-quote figcaption { gap: 12px; flex-wrap: wrap; }
  .client-quote figcaption > .client-quote__logo { margin-left: auto; }
  .fit-head { text-align: left; }
  .fit-head .t-eyebrow { justify-content: flex-start; }
  .fit-table-wrap { margin-top: 32px; }
  .fit-table, .fit-table tbody { display: block; }
  .fit-table colgroup { display: none; }
  .fit-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  .fit-table tbody tr { display: grid; grid-template-columns: minmax(0, 1fr); }
  .fit-table tbody th, .fit-table tbody td { display: block; padding: 20px 24px; border-left: 0; }
  .fit-table tbody th { display: flex; align-items: center; gap: 14px; font-size: 21px; background: var(--paper); }
  .fit-table tbody tr:first-child th { border-top: 0; }
  .fit-table tbody td { font-size: 18px; line-height: 1.55; }
  .fit-table__index { margin: 0; font-size: 13px; }
  .fit-table__mobile-label { display: block; margin-bottom: 8px; font-size: 11px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--mint-dark); }
  .fit-table__no .fit-table__mobile-label { color: #65735e; }
  .final-cta { padding-block: 48px 64px; }
  .contact-grid { grid-template-columns: 1fr; gap: 40px; }
  .contact-grid h2 { font-size: clamp(48px, 13vw, 76px); }
  .contact-copy > p { font-size: 18px; }
  .contact-copy li { font-size: 15px; }
  .contact-person strong { font-size: 17px; }
  .contact-person span { font-size: 13px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation: none !important; transition: none !important; }
  .quote-word { color: var(--ink); }
}
@media print {
  .scene.is-pinned, .quote-story.is-pinned { height: auto !important; }
  .scene.is-pinned > .scene-stage, .quote-story.is-pinned .quote-stage { position: static; height: auto; overflow: visible; }
  .scene.is-pinned .scene-step { opacity: 1; visibility: visible; transform: none; }
  .quote-word { color: var(--ink); }
}
