@font-face {
  font-family: "Cabin";
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("/assets/fonts/cabin-latin-ext.woff2") format("woff2");
}

:root {
  --ink: #0a0d0f;
  --ink-soft: #111619;
  --paper: #e9e4da;
  --paper-muted: #aca89f;
  --line: rgba(233, 228, 218, 0.16);
  --line-strong: rgba(233, 228, 218, 0.28);
  --copper: #c47b45;
  --copper-light: #e0a36d;
  --shell: min(1180px, calc(100vw - 48px));
  --serif: Georgia, "Times New Roman", serif;
  --sans: "Cabin", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }

html {
  scroll-behavior: smooth;
  background: var(--ink);
}

body {
  margin: 0;
  color: var(--paper);
  background:
    radial-gradient(circle at 75% 3%, rgba(196, 123, 69, 0.08), transparent 26rem),
    var(--ink);
  font-family: var(--sans);
  font-size: 16px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}

body::before {
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  content: "";
  opacity: 0.26;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.06'/%3E%3C/svg%3E");
}

a { color: inherit; }
button { font: inherit; }

.shell {
  width: var(--shell);
  margin-inline: auto;
}

.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;
}

.skip-link {
  position: fixed;
  top: 12px;
  left: 12px;
  z-index: 100;
  padding: 10px 14px;
  color: var(--ink);
  background: var(--paper);
  transform: translateY(-150%);
}

.skip-link:focus { transform: translateY(0); }

.site-header {
  position: fixed;
  inset: 0 0 auto;
  z-index: 20;
  border-bottom: 1px solid transparent;
  transition: background 220ms ease, border-color 220ms ease;
}

.site-header.is-scrolled {
  background: rgba(10, 13, 15, 0.88);
  border-color: var(--line);
  backdrop-filter: blur(16px);
}

.header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 84px;
}

.brand {
  display: inline-flex;
  gap: 13px;
  align-items: center;
  text-decoration: none;
}

.brand-name {
  font-size: 0.77rem;
  font-weight: 700;
  letter-spacing: 0.24em;
}

.brand-mark,
.closing-mark {
  position: relative;
  display: grid;
  width: 28px;
  height: 28px;
  place-items: center;
  border: 1px solid var(--copper);
  border-radius: 50%;
}

.brand-mark::before,
.brand-mark::after,
.closing-mark::before,
.closing-mark::after {
  position: absolute;
  content: "";
  background: var(--copper);
}

.brand-mark::before,
.closing-mark::before { width: 1px; height: 38px; }
.brand-mark::after,
.closing-mark::after { width: 38px; height: 1px; }
.brand-mark span,
.closing-mark span { width: 5px; height: 5px; background: var(--copper-light); border-radius: 50%; }

.main-nav {
  display: flex;
  gap: 24px;
  align-items: center;
}

.main-nav a {
  color: var(--paper-muted);
  font-size: 0.76rem;
  letter-spacing: 0.12em;
  text-decoration: none;
  text-transform: uppercase;
  transition: color 160ms ease;
}

.main-nav a:hover,
.main-nav a:focus-visible { color: var(--paper); }

.nav-divider { width: 1px; height: 18px; background: var(--line); }

.language-switcher {
  display: flex;
  gap: 12px;
  align-items: center;
}

.language-switcher a {
  color: #74736e;
  font-size: 0.62rem;
  letter-spacing: 0.08em;
}

.language-switcher a[aria-current="page"] { color: var(--copper-light); }

.menu-button { display: none; }

.hero {
  position: relative;
  display: flex;
  min-height: 100svh;
  padding: 132px 0 44px;
  overflow: hidden;
  flex-direction: column;
  justify-content: space-between;
}

.hero-glow {
  position: absolute;
  top: 10%;
  right: -14rem;
  width: 46rem;
  height: 46rem;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(196, 123, 69, 0.1), transparent 66%);
  filter: blur(4px);
}

.hero-grid {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(440px, 0.92fr);
  gap: 40px;
  align-items: center;
}

.eyebrow,
.section-index {
  margin: 0 0 28px;
  color: var(--copper-light);
  font-size: 0.69rem;
  font-weight: 650;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.eyebrow { display: flex; gap: 11px; align-items: center; }
.eyebrow span { width: 24px; height: 1px; background: var(--copper); }

.hero h1,
.section h2 {
  margin: 0;
  font-family: var(--serif);
  font-weight: 400;
  letter-spacing: -0.045em;
  line-height: 0.97;
}

.hero h1 { font-size: clamp(3.7rem, 6.2vw, 6.8rem); }
.hero h1 em { color: var(--copper-light); font-weight: 400; }

.hero-intro {
  max-width: 590px;
  margin: 34px 0 0;
  color: var(--paper-muted);
  font-size: clamp(1rem, 1.35vw, 1.18rem);
}

.hero-actions {
  display: flex;
  gap: 18px;
  margin-top: 38px;
  align-items: center;
  flex-wrap: wrap;
}

.button {
  display: inline-flex;
  min-height: 50px;
  padding: 0 20px;
  gap: 20px;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--line-strong);
  font-size: 0.73rem;
  font-weight: 650;
  letter-spacing: 0.12em;
  text-decoration: none;
  text-transform: uppercase;
  transition: color 180ms ease, background 180ms ease, border-color 180ms ease;
}

.button-primary { color: var(--ink); background: var(--paper); border-color: var(--paper); }
.button-primary:hover,
.button-primary:focus-visible { color: var(--ink); background: var(--copper-light); border-color: var(--copper-light); }
.button-quiet:hover,
.button-quiet:focus-visible { border-color: var(--paper); }

.intelligence-map {
  position: relative;
  width: min(100%, 550px);
  aspect-ratio: 1;
  margin-inline: auto;
}

.intelligence-map::before {
  position: absolute;
  inset: 13%;
  content: "";
  border: 1px solid var(--line);
  border-radius: 50%;
  background: radial-gradient(circle, rgba(196, 123, 69, 0.08), transparent 58%);
}

.orbit {
  position: absolute;
  border: 1px solid var(--line);
  border-radius: 50%;
}

.orbit-one { inset: 4%; animation: spin 34s linear infinite; }
.orbit-one::before,
.orbit-two::before {
  position: absolute;
  width: 5px;
  height: 5px;
  content: "";
  border-radius: 50%;
  background: var(--copper-light);
  box-shadow: 0 0 18px var(--copper);
}
.orbit-one::before { top: 13%; left: 12%; }
.orbit-two { inset: 25%; border-style: dashed; animation: spin 22s linear infinite reverse; }
.orbit-two::before { right: -3px; bottom: 32%; }

.core {
  position: absolute;
  top: 50%;
  left: 50%;
  display: grid;
  width: 132px;
  height: 132px;
  place-items: center;
  border: 1px solid rgba(224, 163, 109, 0.58);
  border-radius: 50%;
  background: radial-gradient(circle, #2b1c14, #121416 72%);
  box-shadow: 0 0 70px rgba(196, 123, 69, 0.16);
  transform: translate(-50%, -50%);
}

.core-ring {
  position: absolute;
  inset: 12px;
  border: 1px solid var(--line-strong);
  border-radius: 50%;
}

.core-name {
  color: var(--copper-light);
  font-family: var(--serif);
  font-size: 3rem;
  line-height: 1;
}

.core-label {
  position: absolute;
  bottom: 22px;
  color: var(--paper-muted);
  font-size: 0.57rem;
  letter-spacing: 0.19em;
  text-transform: uppercase;
}

.map-line {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 35%;
  height: 1px;
  background: linear-gradient(90deg, rgba(196, 123, 69, 0.52), var(--line));
  transform-origin: left center;
}

.line-one { transform: rotate(-118deg); }
.line-two { transform: rotate(-43deg); }
.line-three { transform: rotate(9deg); }
.line-four { transform: rotate(100deg); }
.line-five { transform: rotate(155deg); }

.node {
  position: absolute;
  display: flex;
  gap: 8px;
  align-items: center;
  color: var(--paper-muted);
  font-size: 0.62rem;
  letter-spacing: 0.12em;
  white-space: nowrap;
  text-transform: uppercase;
}

.node i { display: block; width: 7px; height: 7px; border: 1px solid var(--copper-light); border-radius: 50%; background: var(--ink); }
.node-one { top: 9%; left: 18%; }
.node-two { top: 18%; right: 2%; }
.node-three { right: -1%; bottom: 27%; }
.node-four { bottom: 4%; left: 27%; }
.node-five { bottom: 30%; left: 0; }

.hero-foot {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 18px;
  align-items: center;
  color: #77756f;
  font-size: 0.59rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}
.hero-rule { height: 1px; background: var(--line); }

.section { padding: clamp(100px, 13vw, 180px) 0; border-top: 1px solid var(--line); }

.statement { background: var(--paper); color: var(--ink); }
.statement .section-index { color: #8a5430; }
.statement-grid { display: grid; grid-template-columns: 1fr 3fr; gap: 40px; }
.statement-copy h2 { max-width: 930px; font-size: clamp(2.8rem, 5.6vw, 6rem); }
.statement-detail { display: grid; max-width: 760px; margin: 60px 0 0 auto; grid-template-columns: 1fr 1fr; gap: 50px; }
.statement-detail p { margin: 0; color: #5d5b56; }

.singularity {
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(115deg, rgba(196, 123, 69, 0.09), transparent 34%),
    var(--ink);
}

.singularity::before {
  position: absolute;
  top: -24rem;
  left: 50%;
  width: 58rem;
  height: 58rem;
  content: "";
  border: 1px solid rgba(196, 123, 69, 0.09);
  border-radius: 50%;
  transform: translateX(-50%);
}

.singularity-lead {
  position: relative;
  max-width: 1050px;
  margin-left: auto;
}

.singularity-kicker {
  margin: 0 0 28px;
  color: var(--paper-muted);
  font-size: 0.75rem;
  font-weight: 650;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.singularity-lead h2 {
  font-size: clamp(3.1rem, 6.3vw, 7rem);
}

.singularity-lead h2 em {
  color: var(--copper-light);
  font-weight: 400;
}

.singularity-lead > p:last-child {
  max-width: 690px;
  margin: 44px 0 0 auto;
  color: var(--paper-muted);
  font-size: clamp(1rem, 1.35vw, 1.18rem);
}

.distinction-grid {
  position: relative;
  display: grid;
  margin-top: 100px;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid var(--line-strong);
  border-bottom: 1px solid var(--line-strong);
}

.distinction {
  min-height: 370px;
  padding: 34px 34px 40px;
  border-right: 1px solid var(--line);
}

.distinction:last-child { border-right: 0; }
.distinction > span { color: var(--copper-light); font-size: 0.62rem; letter-spacing: 0.14em; }
.distinction h3 { margin: 80px 0 26px; font-family: var(--serif); font-size: clamp(1.6rem, 2.5vw, 2.5rem); font-weight: 400; line-height: 1.08; }
.distinction p { margin: 0; color: var(--paper-muted); }

.transmission {
  position: relative;
  display: grid;
  margin-top: 110px;
  padding: 70px 64px;
  grid-template-columns: 0.9fr 1.25fr;
  gap: clamp(60px, 8vw, 120px);
  overflow: hidden;
  border: 1px solid var(--line-strong);
  background:
    radial-gradient(circle at 12% 18%, rgba(196, 123, 69, 0.14), transparent 22rem),
    rgba(255, 255, 255, 0.018);
}

.transmission::after {
  position: absolute;
  right: -9rem;
  bottom: -14rem;
  width: 30rem;
  height: 30rem;
  content: "";
  border: 1px solid rgba(196, 123, 69, 0.12);
  border-radius: 50%;
  box-shadow: 0 0 0 4rem rgba(196, 123, 69, 0.025), 0 0 0 8rem rgba(196, 123, 69, 0.015);
  pointer-events: none;
}

.transmission-heading,
.transmission-copy { position: relative; z-index: 1; }

.transmission-label {
  margin: 0 0 22px;
  color: var(--copper-light);
  font-size: 0.62rem;
  font-weight: 650;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.transmission h3 {
  margin: 0;
  font-family: var(--serif);
  font-size: clamp(2.5rem, 4.5vw, 4.8rem);
  font-weight: 400;
  line-height: 0.98;
}

.transmission-copy p { margin: 0 0 24px; color: var(--paper-muted); }
.transmission-copy strong { color: var(--paper); font-family: var(--serif); font-size: 1.25em; font-weight: 400; line-height: 1.35; }
.transmission-copy .transmission-coda { margin: 42px 0 0; color: var(--copper-light); font-size: 0.68rem; font-weight: 650; letter-spacing: 0.16em; text-transform: uppercase; }

.refusal {
  display: grid;
  margin-top: 110px;
  padding: 64px;
  grid-template-columns: 1fr 1.3fr;
  gap: 80px;
  border: 1px solid rgba(196, 123, 69, 0.34);
  background: rgba(196, 123, 69, 0.045);
}

.refusal-label {
  margin: 0 0 16px;
  color: var(--copper-light);
  font-size: 0.62rem;
  font-weight: 650;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.refusal h3 { margin: 0; font-family: var(--serif); font-size: clamp(2rem, 3.4vw, 3.5rem); font-weight: 400; line-height: 1.05; }
.refusal ul { padding: 0; margin: 0; list-style: none; }
.refusal li { position: relative; padding: 18px 0 18px 32px; color: var(--paper-muted); border-bottom: 1px solid var(--line); }
.refusal li:first-child { border-top: 1px solid var(--line); }
.refusal li::before { position: absolute; top: 24px; left: 2px; width: 10px; height: 1px; content: ""; background: var(--copper-light); }

.truth-note {
  display: flex;
  margin: 30px 0 0;
  gap: 18px;
  color: #85827c;
  font-size: 0.75rem;
}

.truth-note span {
  flex: 0 0 auto;
  color: var(--copper-light);
  font-weight: 650;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.section-heading { display: grid; grid-template-columns: 1fr 3fr; gap: 40px; margin-bottom: 70px; }
.section-heading h2,
.method h2,
.ecosystem h2 { font-size: clamp(2.8rem, 4.8vw, 5.2rem); }

.principle-list { border-top: 1px solid var(--line-strong); }
.principle {
  display: grid;
  min-height: 154px;
  padding: 34px 6px;
  grid-template-columns: 0.6fr 3fr auto;
  gap: 30px;
  align-items: center;
  border-bottom: 1px solid var(--line);
  color: inherit;
  text-decoration: none;
  transition: background 180ms ease, padding 180ms ease;
}
.principle:hover { padding-inline: 20px; background: rgba(255, 255, 255, 0.025); }
.principle:focus-visible { outline: 1px solid var(--copper-light); outline-offset: 4px; }
.principle-number { color: var(--copper-light); font-family: var(--serif); font-size: 0.9rem; }
.principle h3 { margin: 0; font-family: var(--serif); font-size: clamp(1.8rem, 3vw, 3.1rem); font-weight: 400; }
.principle p { margin: 6px 0 0; color: var(--paper-muted); }
.principle-mark { color: var(--copper-light); font-size: 1.4rem; }

.principles-page { padding-top: 84px; }
.principles-hero { padding: clamp(110px, 13vw, 180px) 0 clamp(90px, 11vw, 150px); }
.principles-hero-grid { display: grid; grid-template-columns: 0.72fr 2fr; gap: clamp(40px, 8vw, 120px); align-items: end; }
.principles-hero-grid > *,
.principle-detail-grid > * { min-width: 0; }
.principles-hero h1 { margin: 0; font-family: var(--serif); font-size: clamp(3.8rem, 7.6vw, 8.2rem); font-weight: 400; letter-spacing: -0.055em; line-height: 0.92; }
.principles-hero h1 em { color: var(--copper-light); font-weight: 400; }
.principles-hero-copy > p:last-child { max-width: 760px; margin: 42px 0 0; color: var(--paper-muted); font-size: clamp(1rem, 1.45vw, 1.22rem); }
.principles-manifesto { padding: clamp(74px, 9vw, 120px) 0; border-block: 1px solid var(--line); background: var(--ink-soft); }
.principles-manifesto .shell { display: grid; grid-template-columns: 0.72fr 2fr; gap: clamp(40px, 8vw, 120px); }
.principles-manifesto blockquote { max-width: 880px; margin: 0; font-family: var(--serif); font-size: clamp(2.2rem, 4.3vw, 4.7rem); letter-spacing: -0.035em; line-height: 1.06; }
.principles-manifesto blockquote em { color: var(--copper-light); font-weight: 400; }
.principles-summary { display: grid; padding: 0; margin: 0; grid-template-columns: repeat(5, 1fr); border-bottom: 1px solid var(--line); list-style: none; }
.principles-summary a { display: flex; min-height: 150px; padding: 24px; justify-content: space-between; color: var(--paper-muted); border-right: 1px solid var(--line); text-decoration: none; flex-direction: column; transition: color 180ms ease, background 180ms ease; }
.principles-summary li:last-child a { border-right: 0; }
.principles-summary a:hover,
.principles-summary a:focus-visible { color: var(--paper); background: rgba(255, 255, 255, 0.025); }
.principles-summary span { color: var(--copper-light); font-size: 0.62rem; letter-spacing: 0.14em; }
.principles-summary strong { font-family: var(--serif); font-size: clamp(1.2rem, 1.7vw, 1.8rem); font-weight: 400; }
.principle-detail { scroll-margin-top: 84px; padding: clamp(90px, 12vw, 165px) 0; border-bottom: 1px solid var(--line); }
.principle-detail:nth-of-type(even) { background: var(--ink-soft); }
.principle-detail-grid { display: grid; grid-template-columns: 0.72fr 0.95fr 1.05fr; gap: clamp(38px, 6vw, 88px); align-items: start; }
.principle-detail-number { margin: 0; color: var(--copper-light); font-family: var(--serif); font-size: 1rem; }
.principle-detail h2 { margin: 0; font-family: var(--serif); font-size: clamp(3rem, 5.8vw, 6.5rem); font-weight: 400; letter-spacing: -0.05em; line-height: 0.95; }
html[lang="de"] .principles-hero h1,
html[lang="de"] .principle-detail h2 { hyphens: auto; overflow-wrap: break-word; }
.principle-detail-copy > p { margin: 0 0 28px; color: var(--paper-muted); }
.principle-detail-copy > p:first-child { color: var(--paper); font-family: var(--serif); font-size: clamp(1.35rem, 2vw, 1.8rem); line-height: 1.35; }
.principle-detail-copy h3 { margin: 44px 0 14px; color: var(--copper-light); font-size: 0.65rem; letter-spacing: 0.16em; text-transform: uppercase; }
.principle-detail-copy ul { padding: 0; margin: 0; border-top: 1px solid var(--line); list-style: none; }
.principle-detail-copy li { position: relative; padding: 15px 0 15px 24px; color: var(--paper-muted); border-bottom: 1px solid var(--line); }
.principle-detail-copy li::before { position: absolute; top: 25px; left: 2px; width: 8px; height: 1px; content: ""; background: var(--copper-light); }
.principles-closing { text-align: center; }
.principles-closing h2 { font-size: clamp(3rem, 6vw, 6.4rem); }

.inner-page { padding-top: 84px; }
.inner-hero { padding: clamp(110px, 13vw, 180px) 0 clamp(90px, 11vw, 150px); }
.inner-hero-grid { display: grid; grid-template-columns: 0.72fr 2fr; gap: clamp(40px, 8vw, 120px); align-items: end; }
.inner-hero-grid > *,
.about-grid > * { min-width: 0; }
.inner-hero h1 { margin: 0; font-family: var(--serif); font-size: clamp(3.8rem, 7.6vw, 8.2rem); font-weight: 400; letter-spacing: -0.055em; line-height: 0.92; }
.inner-hero h1 em { color: var(--copper-light); font-weight: 400; }
.inner-hero-copy > p { max-width: 820px; margin: 42px 0 0; color: var(--paper-muted); font-size: clamp(1rem, 1.45vw, 1.22rem); }

.about-manifesto { padding: clamp(74px, 9vw, 120px) 0; border-block: 1px solid var(--line); background: var(--ink-soft); }
.about-manifesto-grid { display: grid; grid-template-columns: 0.72fr 2fr; gap: clamp(40px, 8vw, 120px); }
.about-manifesto blockquote { max-width: 920px; margin: 0; font-family: var(--serif); font-size: clamp(2.2rem, 4.3vw, 4.7rem); letter-spacing: -0.035em; line-height: 1.06; }
.about-manifesto blockquote em { color: var(--copper-light); font-weight: 400; }
.about-section { border-bottom: 1px solid var(--line); }
.about-section:nth-of-type(even) { background: var(--ink-soft); }
.about-grid { display: grid; grid-template-columns: 0.45fr 1.25fr 1.45fr; gap: clamp(38px, 6vw, 88px); align-items: start; }
.about-number { margin: 0; color: var(--copper-light); font-family: var(--serif); }
.about-section h2 { font-size: clamp(2.6rem, 4.8vw, 5.4rem); }
.about-copy > p { margin: 0 0 30px; color: var(--paper-muted); font-size: clamp(1rem, 1.3vw, 1.15rem); }
.about-copy .about-coda { padding-top: 24px; color: var(--paper); font-family: var(--serif); font-size: clamp(1.25rem, 2vw, 1.7rem); line-height: 1.4; border-top: 1px solid var(--line); }
.about-copy .designer-intro { margin-bottom:14px; color:var(--paper-muted); }
.designer-identity { margin:0 0 38px; padding:24px 0 26px; border-block:1px solid var(--line); }
.designer-identity h3 { display:block; margin:0; color:var(--paper); font-family:var(--serif); font-size:clamp(1.8rem,3vw,2.8rem); font-weight:400; line-height:1.08; }
.designer-identity .designer-role { display:block; margin:15px 0 0; color:var(--copper-light); font-size:.72rem; font-weight:650; letter-spacing:.08em; line-height:1.55; text-transform:uppercase; }

.method { background: var(--ink-soft); }
.method-grid { display: grid; grid-template-columns: 1fr 1.25fr; gap: clamp(60px, 10vw, 140px); }
.method-intro { position: sticky; top: 130px; align-self: start; }
.method-steps { padding: 0; margin: 0; list-style: none; counter-reset: step; }
.method-steps li { display: grid; padding: 34px 0; grid-template-columns: 64px 1fr; border-bottom: 1px solid var(--line); }
.method-steps li:first-child { border-top: 1px solid var(--line); }
.method-steps span { color: var(--copper-light); font-size: 0.65rem; letter-spacing: 0.14em; }
.method-steps strong { font-family: var(--serif); font-size: 2rem; font-weight: 400; line-height: 1; }
.method-steps p { grid-column: 2; margin: 14px 0 0; color: var(--paper-muted); }

.ecosystem-heading { display: grid; grid-template-columns: 2fr 1fr; gap: 80px; align-items: end; }
.ecosystem-heading > p { margin: 0; color: var(--paper-muted); }
.project-list { display: grid; padding: 0; margin: 80px 0 0; grid-template-columns: repeat(5, 1fr); border-top: 1px solid var(--line-strong); border-bottom: 1px solid var(--line-strong); list-style: none; }
.project-list li { position: relative; min-height: 210px; padding: 26px; border-right: 1px solid var(--line); }
.project-list li:last-child { border-right: 0; }
.project-list span { color: var(--copper-light); font-size: 0.62rem; letter-spacing: 0.14em; }
.project-list strong { position: absolute; right: 24px; bottom: 24px; left: 24px; font-family: var(--serif); font-size: clamp(1.4rem, 2vw, 2.2rem); font-weight: 400; }

.closing { text-align: center; background: radial-gradient(circle at 50% 48%, rgba(196, 123, 69, 0.12), transparent 24rem); }
.closing-inner { display: flex; flex-direction: column; align-items: center; }
.closing-mark { width: 46px; height: 46px; margin-bottom: 32px; }
.closing p { margin: 0 0 20px; color: var(--copper-light); font-size: 0.65rem; letter-spacing: 0.2em; text-transform: uppercase; }
.closing h2 { font-size: clamp(3rem, 6vw, 6.7rem); }
.closing .button { margin-top: 44px; }

.site-footer { border-top: 1px solid var(--line); }
.footer-inner { display: flex; min-height: 130px; gap: 30px; align-items: center; justify-content: space-between; color: #85827c; font-size: 0.72rem; letter-spacing: 0.08em; text-transform: uppercase; }
.footer-inner p { margin: 0; }
.footer-inner strong { margin-right: 18px; color: var(--paper); }
.footer-contact { color: #85827c; text-decoration: none; }
.footer-contact:hover,
.footer-contact:focus-visible { color: var(--paper); }
.footer-nav { display: flex; gap: 24px; }
.footer-nav a { color: #85827c; text-decoration: none; }
.footer-nav a:hover,
.footer-nav a:focus-visible { color: var(--paper); }

.reveal { opacity: 0; transform: translateY(18px); transition: opacity 700ms ease, transform 700ms ease; }
.reveal.is-visible { opacity: 1; transform: translateY(0); }

@keyframes spin { to { transform: rotate(360deg); } }

@media (max-width: 900px) {
  :root { --shell: min(100% - 34px, 720px); }
  .main-nav { gap: 18px; }
  .main-nav a { font-size: 0.64rem; }
  .language-switcher { gap: 8px; }
  .hero { min-height: auto; padding-top: 86px; }
  .hero h1 { font-size: clamp(2.25rem, 6vw, 2.9rem); line-height: 1; }
  .hero-grid { grid-template-columns: 1fr; }
  .intelligence-map { width: min(100%, 520px); margin-top: 20px; }
  .statement-grid,
  .section-heading,
  .method-grid,
  .ecosystem-heading,
  .principles-hero-grid,
  .principles-manifesto .shell,
  .principle-detail-grid,
  .inner-hero-grid,
  .about-manifesto-grid,
  .about-grid { grid-template-columns: 1fr; }
  .statement-detail { margin-left: 0; }
  .distinction-grid { grid-template-columns: 1fr; }
  .distinction { min-height: auto; border-right: 0; border-bottom: 1px solid var(--line); }
  .distinction:last-child { border-bottom: 0; }
  .distinction h3 { margin-top: 44px; }
  .transmission { grid-template-columns: 1fr; gap: 44px; }
  .refusal { grid-template-columns: 1fr; gap: 44px; }
  .method-intro { position: static; }
  .project-list { grid-template-columns: repeat(2, 1fr); }
  .principles-summary { grid-template-columns: repeat(2, 1fr); }
  .principles-summary li:nth-child(2n) a { border-right: 0; }
  .principles-summary a { border-bottom: 1px solid var(--line); }
  .project-list li:nth-child(2n) { border-right: 0; }
  .project-list li { border-bottom: 1px solid var(--line); }
  .project-list li:last-child { border-bottom: 0; }
}

@media (max-width: 760px) {
  .header-inner { min-height: 72px; }
  .menu-button {
    position: relative;
    z-index: 2;
    display: grid;
    width: 42px;
    height: 42px;
    padding: 0;
    place-content: center;
    gap: 7px;
    border: 1px solid var(--line);
    background: var(--ink);
  }
  .menu-button span:not(.sr-only) { display: block; width: 18px; height: 1px; background: var(--paper); transition: transform 160ms ease; }
  .menu-button[aria-expanded="true"] span:nth-last-child(2) { transform: translateY(4px) rotate(45deg); }
  .menu-button[aria-expanded="true"] span:last-child { transform: translateY(-4px) rotate(-45deg); }
  .main-nav {
    position: fixed;
    inset: 78px 12px auto;
    display: none;
    max-height: calc(100svh - 94px);
    padding: 12px 20px 18px;
    gap: 0;
    overflow-y: auto;
    border: 1px solid var(--line-strong);
    background: #0d1114;
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.48);
    flex-direction: column;
  }
  .main-nav.is-open { display: flex; }
  .main-nav > a {
    width: 100%;
    padding: 11px 2px;
    color: var(--paper);
    font-family: var(--serif);
    font-size: 1.28rem;
    letter-spacing: -0.01em;
    border-bottom: 1px solid var(--line);
    text-transform: none;
  }
  .main-nav > a:last-of-type { border-bottom: 0; }
  .nav-divider { width: 100%; height: 1px; margin-block: 8px 10px; }
  .language-switcher { width: 100%; gap: 0; justify-content: space-between; }
  .language-switcher a { padding: 8px 4px 4px; font-family: var(--sans); font-size: 0.7rem; letter-spacing: 0.12em; }
  .hero h1 { font-size: clamp(2.1rem, 8vw, 2.75rem); line-height: 1; }
  .hero-actions { align-items: stretch; flex-direction: column; }
  .button { width: 100%; }
  .intelligence-map { margin-block: 28px 54px; }
  .node { font-size: 0.52rem; }
  .node-one { left: 8%; }
  .node-two { right: 1%; }
  .node-three { right: 2%; }
  .node-four { left: 16%; }
  .node-five { left: 0; }
  .core { width: 108px; height: 108px; }
  .core-label { bottom: 16px; }
  .hero-foot { display: none; }
  .statement-detail { grid-template-columns: 1fr; gap: 20px; margin-top: 40px; }
  .singularity-lead h2 { font-size: clamp(3rem, 14vw, 4.5rem); }
  .singularity-lead > p:last-child { margin-top: 32px; }
  .distinction-grid { margin-top: 64px; }
  .distinction { padding-inline: 8px; }
  .transmission { margin-top: 74px; padding: 42px 24px; }
  .transmission h3 { font-size: clamp(2.75rem, 13vw, 4rem); }
  .refusal { margin-top: 74px; padding: 34px 24px; }
  .truth-note { flex-direction: column; gap: 8px; }
  .principle { min-height: 140px; grid-template-columns: 34px 1fr auto; gap: 14px; }
  .principle p { font-size: 0.9rem; }
  .method-steps li { grid-template-columns: 42px 1fr; }
  .project-list { grid-template-columns: 1fr; }
  .principles-page { padding-top: 72px; }
  .inner-page { padding-top: 72px; }
  .principles-hero h1 { font-size: clamp(3.6rem, 17vw, 5.4rem); }
  .principles-summary { grid-template-columns: 1fr; }
  .principles-summary a { min-height: 108px; border-right: 0; }
  .principle-detail-grid { gap: 26px; }
  .principle-detail h2 { font-size: clamp(3.3rem, 16vw, 5rem); }
  .inner-hero h1 { font-size: clamp(3.4rem, 16vw, 5.2rem); }
  .project-list li { min-height: 130px; border-right: 0; }
  .ecosystem-heading { gap: 32px; }
  .footer-inner { padding-block: 34px; gap: 20px; align-items: flex-start; flex-direction: column; }
  .footer-inner p:first-child { display: flex; gap: 6px; flex-direction: column; }
  .footer-nav { gap: 18px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; }
  .reveal { opacity: 1; transform: none; }
}


/* DOMAIN_APPLICATIONS_V1 */
.architecture-bridge { display:flex; margin:72px 0 28px; padding:28px 32px; gap:18px; align-items:center; border:1px solid var(--line-strong); background:var(--ink-soft); }
.architecture-bridge strong { color:var(--copper-light); font-family:var(--serif); font-size:1.35rem; font-weight:400; letter-spacing:.08em; }
.architecture-bridge span { color:var(--paper-muted); }
.project-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line-strong); border-left:1px solid var(--line); }
.project-card { display:flex; min-height:390px; padding:28px; color:inherit; border-right:1px solid var(--line); border-bottom:1px solid var(--line); text-decoration:none; flex-direction:column; transition:background 180ms ease, transform 180ms ease; }
.project-card:hover,.project-card:focus-visible { background:rgba(196,123,69,.06); transform:translateY(-3px); }
.project-card-top { display:flex; justify-content:space-between; align-items:flex-start; }
.project-number { color:var(--copper-light); font-size:.62rem; letter-spacing:.14em; }
.project-icon { font-size:1.65rem; filter:grayscale(.2); }
.project-card strong { margin-top:56px; font-family:var(--serif); font-size:clamp(2rem,3vw,3.2rem); font-weight:400; }
.project-position { min-height:48px; margin-top:8px; color:var(--copper-light); font-size:.67rem; font-weight:650; letter-spacing:.1em; line-height:1.45; text-transform:uppercase; }
.project-card p { margin:24px 0 30px; color:var(--paper-muted); }
.project-link { margin-top:auto; padding-top:18px; color:var(--paper); border-top:1px solid var(--line); font-size:.7rem; letter-spacing:.1em; text-transform:uppercase; }
.domain-hero-icon { display:block; margin-bottom:28px; font-size:2.5rem; }
.domain-manifesto { padding:clamp(74px,9vw,120px) 0; border-block:1px solid var(--line); background:var(--ink-soft); }
.domain-manifesto blockquote { max-width:960px; margin:0; font-family:var(--serif); font-size:clamp(2rem,3.8vw,4.2rem); letter-spacing:-.03em; line-height:1.08; }
.domain-detail { border-bottom:1px solid var(--line); }
.domain-detail:nth-of-type(even) { background:var(--ink-soft); }
.domain-detail-grid { display:grid; grid-template-columns:.45fr 1.25fr 1.45fr; gap:clamp(38px,6vw,88px); align-items:start; }
.domain-detail h2 { font-size:clamp(2.6rem,4.8vw,5.4rem); }
.domain-copy p,.domain-copy li { color:var(--paper-muted); font-size:clamp(1rem,1.3vw,1.15rem); }
.domain-copy ul { padding:0; margin:0; border-top:1px solid var(--line); list-style:none; }
.domain-copy li { padding:20px 0; border-bottom:1px solid var(--line); }
.domain-coda { padding-top:24px; color:var(--paper)!important; font-family:var(--serif); font-size:clamp(1.25rem,2vw,1.7rem)!important; line-height:1.4; border-top:1px solid var(--line); }
@media (max-width:900px) { .project-grid { grid-template-columns:repeat(2,1fr); } .domain-detail-grid { grid-template-columns:1fr; } }
@media (max-width:760px) { .architecture-bridge { align-items:flex-start; flex-direction:column; } .project-grid { grid-template-columns:1fr; } .project-card { min-height:330px; } }

/* COMMERCIAL_HOME_V1 */
.commercial-home { padding-top:84px; }
.commercial-hero { position:relative; min-height:calc(100svh - 84px); padding:clamp(76px,9vw,128px) 0; overflow:hidden; }
.commercial-hero-grid { position:relative; display:grid; gap:clamp(28px,5vw,64px) clamp(48px,8vw,110px); grid-template-areas:"copy visual" "actions visual"; grid-template-columns:minmax(0,1.35fr) minmax(380px,.65fr); align-items:center; }
.commercial-hero-copy { grid-area:copy; }
.commercial-hero-grid > .hero-actions { grid-area:actions; margin-top:0; }
.commercial-hero-copy h1 { max-width:880px; margin:0; font-family:var(--serif); font-size:clamp(3.5rem,6.8vw,7.5rem); font-weight:400; letter-spacing:-.055em; line-height:.96; }
.commercial-hero-copy .hero-intro { max-width:760px; }
.commercial-hero-visual { display:grid; gap:28px; grid-area:visual; }
.commercial-hero-visual .intelligence-map { width:min(100%,410px); margin:0 auto; }
.commercial-map { position:relative; padding:38px; overflow:hidden; border:1px solid var(--line-strong); background:rgba(17,22,25,.76); }
.commercial-map-title { margin:0 0 18px; color:var(--copper-light); font-size:.65rem; font-weight:650; letter-spacing:.16em; text-transform:uppercase; }
.commercial-map-flow { padding:0; margin:0; list-style:none; }
.commercial-map-flow li { position:relative; border-top:1px solid var(--line); }
.commercial-map-flow li::after { position:absolute; bottom:-11px; left:8px; z-index:1; color:var(--copper-light); content:"↓"; font-family:var(--sans); font-size:.8rem; }
.commercial-map-flow li:last-child { border-bottom:1px solid var(--line); }
.commercial-map-flow li:last-child::after { content:none; }
.commercial-map-flow a { display:grid; min-height:78px; padding:20px 10px 20px 0; gap:20px; align-items:center; color:var(--paper); grid-template-columns:auto 1fr auto; text-decoration:none; transition:padding 180ms ease,background 180ms ease,color 180ms ease; }
.commercial-map-flow a:hover,.commercial-map-flow a:focus-visible,.commercial-map-flow a.is-active { padding-left:10px; color:var(--copper-light); background:rgba(196,123,69,.07); }
.commercial-map-flow a:focus-visible { outline:1px solid var(--copper); outline-offset:3px; }
.map-step-number { color:var(--copper-light); font-family:var(--sans); font-size:.61rem; letter-spacing:.14em; }
.map-step-label { font-family:var(--serif); font-size:clamp(1.15rem,1.8vw,1.55rem); }
.map-step-arrow { color:var(--copper-light); font-family:var(--sans); font-size:.9rem; opacity:.45; transform:translateX(-5px); transition:opacity 180ms ease,transform 180ms ease; }
.commercial-map-flow a:hover .map-step-arrow,.commercial-map-flow a:focus-visible .map-step-arrow,.commercial-map-flow a.is-active .map-step-arrow { opacity:1; transform:translateX(0); }
.commercial-map-human { display:flex; margin:28px 0 0; gap:16px; align-items:center; color:var(--paper-muted); font-size:.72rem; }
.commercial-map-human .brand-mark { width:30px; height:30px; flex:0 0 auto; }
.commercial-split { display:grid; grid-template-columns:1.05fr .95fr; gap:clamp(60px,10vw,150px); }
.commercial-split h2,.commercial-section-heading h2 { font-size:clamp(3rem,5.6vw,6.3rem); }
.commercial-journey { background:rgba(255,255,255,.012); }
.journey-grid { margin-top:76px; border-top:1px solid var(--line-strong); }
.journey-step { display:grid; padding:clamp(34px,5vw,66px) 0; gap:clamp(30px,5vw,76px); grid-template-columns:.18fr .85fr 1.15fr; border-bottom:1px solid var(--line-strong); scroll-margin-top:84px; }
.journey-number { padding-top:8px; color:var(--copper-light); font-size:.62rem; letter-spacing:.14em; }
.journey-heading h3 { margin:0; font-family:var(--serif); font-size:clamp(2rem,3.5vw,4rem); font-weight:400; letter-spacing:-.03em; line-height:1.02; }
.journey-heading p { margin:28px 0 0; color:var(--paper-muted); }
.journey-detail ul { padding:0; margin:0; border-top:1px solid var(--line); list-style:none; }
.journey-detail li { padding:13px 0; color:var(--paper-muted); border-bottom:1px solid var(--line); }
.journey-detail li::before { margin-right:13px; color:var(--copper-light); content:"—"; }
.journey-detail > p { margin:28px 0 0; color:var(--paper); font-family:var(--serif); font-size:clamp(1.2rem,1.8vw,1.65rem); line-height:1.4; }
.commercial-audience { background:rgba(255,255,255,.012); }
.commercial-audience-grid { display:grid; margin-top:76px; grid-template-columns:repeat(5,1fr); border-top:1px solid var(--line-strong); border-left:1px solid var(--line); }
.commercial-audience-item { min-height:210px; padding:26px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.commercial-audience-item span { color:var(--copper-light); font-size:.62rem; letter-spacing:.14em; }
.commercial-audience-item p { margin:54px 0 0; color:var(--paper); font-family:var(--serif); font-size:clamp(1.15rem,1.7vw,1.55rem); line-height:1.25; }
.commercial-apps,.commercial-position { background:var(--ink-soft); }
.commercial-section-heading { display:grid; grid-template-columns:1.55fr .7fr; gap:clamp(54px,9vw,130px); align-items:end; }
.commercial-section-heading > p { margin:0 0 8px; color:var(--paper-muted); }
.commercial-pillars { display:grid; margin-top:76px; grid-template-columns:repeat(5,1fr); border-top:1px solid var(--line-strong); border-left:1px solid var(--line); }
.commercial-pillar { min-height:270px; padding:26px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.commercial-pillar > span { font-size:1.65rem; }
.commercial-pillar h3 { margin:46px 0 14px; font-family:var(--serif); font-size:clamp(1.35rem,2vw,2rem); font-weight:400; line-height:1.05; }
.commercial-pillar p { margin:0; color:var(--paper-muted); font-size:.9rem; }
.commercial-seo-context { max-width:940px; margin:54px 0 0; padding-top:28px; color:var(--paper-muted); border-top:1px solid var(--line); }
.commercial-seo-context a { color:var(--paper); text-underline-offset:4px; text-decoration-color:var(--copper); }
.commercial-seo-context a:hover,.commercial-seo-context a:focus-visible { color:var(--copper-light); }
.commercial-comparison { display:grid; grid-template-columns:repeat(2,1fr); border:1px solid var(--line-strong); }
.commercial-position .commercial-comparison { margin-top:76px; }
.commercial-comparison article { min-height:370px; padding:clamp(30px,4vw,58px); }
.commercial-comparison article + article { border-left:1px solid var(--line-strong); background:rgba(196,123,69,.055); }
.commercial-comparison h3 { margin:0 0 44px; font-family:var(--serif); font-size:clamp(2rem,3.8vw,4.2rem); font-weight:400; }
.commercial-comparison ul { padding:0; margin:0; list-style:none; }
.commercial-comparison li { display:flex; padding:15px 0; gap:16px; color:var(--paper-muted); border-bottom:1px solid var(--line); }
.commercial-comparison li span { color:var(--copper-light); }
.commercial-boundary { max-width:850px; margin:54px auto 0; color:var(--paper); font-family:var(--serif); font-size:clamp(1.35rem,2.3vw,2.2rem); text-align:center; }
.commercial-cta { text-align:center; background:radial-gradient(circle at 50% 48%,rgba(196,123,69,.14),transparent 28rem); }
.commercial-cta-inner { display:flex; align-items:center; flex-direction:column; }
.commercial-cta h2 { max-width:1050px; font-size:clamp(3rem,6vw,6.6rem); }
.commercial-cta-inner > p:not(.section-index) { max-width:720px; margin:32px 0 0; color:var(--paper-muted); font-size:1.05rem; }
.commercial-cta .hero-actions { justify-content:center; }

@media (max-width:1000px) {
  .commercial-hero-grid { gap:40px; grid-template-areas:"copy" "visual" "actions"; grid-template-columns:1fr; }
  .commercial-hero-copy h1 { font-size:clamp(2.4rem,5.6vw,3.5rem); }
  .commercial-map { max-width:620px; }
  .commercial-audience-grid { grid-template-columns:repeat(3,1fr); }
  .commercial-pillars { grid-template-columns:repeat(3,1fr); }
}
@media (max-width:900px) {
  .commercial-split,.commercial-section-heading { grid-template-columns:1fr; }
  .commercial-section-heading { gap:32px; }
  .journey-step { grid-template-columns:44px 1fr; }
  .journey-detail { grid-column:2; }
  .commercial-pillars { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:760px) {
  .commercial-home { padding-top:72px; }
  .commercial-hero { min-height:auto; padding:72px 0 84px; }
  .commercial-hero-copy h1 { font-size:clamp(2.2rem,7.5vw,2.7rem); line-height:1; overflow-wrap:break-word; }
  .commercial-map { padding:24px; }
  .commercial-hero-visual { gap:24px; }
  .commercial-hero-visual .intelligence-map { width:min(100%,340px); }
  .commercial-map-flow a { gap:14px; }
  .journey-grid { margin-top:52px; }
  .journey-step { gap:18px; grid-template-columns:32px 1fr; }
  .journey-heading p { margin-top:20px; }
  .journey-detail { grid-column:1 / -1; }
  .commercial-audience-grid { grid-template-columns:1fr; }
  .commercial-audience-item { min-height:auto; }
  .commercial-audience-item p { margin-top:24px; }
  .commercial-pillars { grid-template-columns:1fr; }
  .commercial-pillar { min-height:auto; }
  .commercial-comparison { grid-template-columns:1fr; }
  .commercial-comparison article { min-height:auto; }
  .commercial-comparison article + article { border-top:1px solid var(--line-strong); border-left:0; }
}

.commercial-home section[id] { scroll-margin-top:84px; }
.page-anchor-nav { display:none; }
@media (min-width:1001px) {
  .page-anchor-nav { position:fixed; top:50%; right:14px; z-index:14; display:flex; width:42px; padding:8px 6px; border:1px solid var(--line); background:rgba(10,13,15,.9); box-shadow:0 16px 42px rgba(0,0,0,.28); backdrop-filter:blur(14px); transform:translateY(-50%); flex-direction:column; }
  .anchor-nav-title,.anchor-text { position:absolute; width:1px; height:1px; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
  .page-anchor-nav a { display:flex; min-height:34px; align-items:center; justify-content:center; color:#77746e; border-left:1px solid transparent; font-size:.56rem; letter-spacing:.08em; text-decoration:none; transition:color 160ms ease,background 160ms ease,border-color 160ms ease; }
  .page-anchor-nav a:hover,.page-anchor-nav a:focus-visible { color:var(--paper); background:rgba(255,255,255,.035); }
  .page-anchor-nav a.is-active,.page-anchor-nav a[aria-current="location"] { color:var(--copper-light); border-left-color:var(--copper); background:rgba(196,123,69,.08); }
}
@media (min-width:1560px) {
  .page-anchor-nav { right:26px; width:168px; padding:14px; }
  .anchor-nav-title { position:static; width:auto; height:auto; margin:0 0 10px; overflow:visible; clip:auto; color:var(--copper-light); font-size:.56rem; letter-spacing:.14em; white-space:normal; text-transform:uppercase; }
  .page-anchor-nav a { min-height:39px; padding:0 8px; gap:10px; justify-content:flex-start; }
  .anchor-text { position:static; width:auto; height:auto; margin:0; overflow:visible; clip:auto; white-space:normal; }
  .anchor-number { min-width:18px; color:var(--copper-light); }
}
@media (min-width:761px) and (max-width:1100px) {
  .main-nav { gap:12px; }
  .main-nav a { font-size:.62rem; letter-spacing:.07em; }
  .language-switcher { gap:7px; }
  .brand-name { font-size:.7rem; letter-spacing:.18em; }
}

/* APPLICATION_COMMERCIAL_V1 */
.application-page { padding-top:84px; }
.application-page section[id] { scroll-margin-top:84px; }
.application-hero { position:relative; min-height:calc(100svh - 84px); padding:clamp(76px,9vw,132px) 0; overflow:hidden; }
.application-hero-grid { position:relative; display:grid; grid-template-columns:minmax(0,1.4fr) minmax(310px,.6fr); gap:clamp(50px,9vw,130px); align-items:center; }
.application-icon { display:block; margin:34px 0 24px; font-size:2.8rem; filter:grayscale(.15); }
.application-hero h1 { max-width:980px; margin:0; font-family:var(--serif); font-size:clamp(3.4rem,6.5vw,7.2rem); font-weight:400; letter-spacing:-.052em; line-height:.96; }
.application-lead { max-width:770px; margin:42px 0 0; color:var(--paper-muted); font-size:clamp(1.05rem,1.45vw,1.25rem); line-height:1.65; }
.application-quick-nav { padding:34px; border:1px solid var(--line-strong); background:rgba(17,22,25,.76); }
.application-quick-nav > span { display:block; margin-bottom:22px; color:var(--copper-light); font-size:.61rem; font-weight:650; letter-spacing:.16em; text-transform:uppercase; }
.application-quick-nav a { display:grid; min-height:68px; padding:16px 4px; gap:18px; align-items:center; color:var(--paper); grid-template-columns:28px 1fr; border-top:1px solid var(--line); font-family:var(--serif); font-size:clamp(1rem,1.5vw,1.3rem); text-decoration:none; transition:padding 180ms ease,background 180ms ease,color 180ms ease; }
.application-quick-nav a:last-child { border-bottom:1px solid var(--line); }
.application-quick-nav a:hover,.application-quick-nav a:focus-visible { padding-left:12px; color:var(--copper-light); background:rgba(196,123,69,.07); }
.application-quick-nav b { color:var(--copper-light); font-family:var(--sans); font-size:.58rem; font-weight:500; letter-spacing:.12em; }
.application-section-grid { display:grid; grid-template-columns:1fr 1fr; gap:clamp(60px,10vw,150px); align-items:start; }
.application-section h2,.application-auditoris h2 { font-size:clamp(3rem,5.4vw,6rem); }
.application-section-intro { max-width:650px; margin:36px 0 0; color:var(--paper-muted); font-size:1.05rem; }
.application-list { padding:0; margin:0; border-top:1px solid var(--line-strong); list-style:none; }
.application-list li { display:flex; min-height:94px; padding:24px 0; gap:20px; align-items:center; color:var(--paper); border-bottom:1px solid var(--line); font-family:var(--serif); font-size:clamp(1.25rem,2vw,1.85rem); line-height:1.35; }
.application-list li span { color:var(--copper-light); font-family:var(--sans); font-size:.72rem; }
.application-approach { background:var(--ink-soft); }
.application-section-heading { display:grid; grid-template-columns:1.25fr .75fr; gap:clamp(56px,9vw,130px); align-items:end; }
.application-section-heading > p { margin:0 0 8px; color:var(--paper-muted); font-size:1.05rem; }
.application-point-grid { display:grid; margin-top:76px; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line-strong); border-left:1px solid var(--line); }
.application-point-grid article { min-height:230px; padding:30px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.application-point-grid span,.application-benefit-grid span { color:var(--copper-light); font-size:.62rem; letter-spacing:.14em; }
.application-point-grid p { margin:74px 0 0; color:var(--paper); font-family:var(--serif); font-size:clamp(1.3rem,2vw,1.85rem); line-height:1.25; }
.application-benefit-grid { display:grid; padding:0; margin:76px 0 0; grid-template-columns:repeat(5,1fr); border-top:1px solid var(--line-strong); border-left:1px solid var(--line); list-style:none; }
.application-benefit-grid li { min-height:260px; padding:26px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.application-benefit-grid p { margin:74px 0 0; color:var(--paper); font-family:var(--serif); font-size:clamp(1.1rem,1.6vw,1.45rem); line-height:1.3; }
.application-auditoris { background:var(--ink-soft); }
.application-auditoris-card { display:grid; padding:clamp(38px,6vw,78px); grid-template-columns:1.2fr .8fr; gap:clamp(54px,9vw,130px); border:1px solid var(--line-strong); background:rgba(196,123,69,.045); }
.application-auditoris-card > div:last-child { align-self:end; }
.application-auditoris-card > div:last-child p { margin:0 0 34px; color:var(--paper-muted); font-size:1.08rem; }
.text-link { display:inline-flex; padding-bottom:8px; gap:14px; color:var(--paper); border-bottom:1px solid var(--copper); font-size:.69rem; font-weight:650; letter-spacing:.1em; text-decoration:none; text-transform:uppercase; }
.text-link:hover,.text-link:focus-visible { color:var(--copper-light); }
.application-cta .hero-actions { margin-top:40px; }
@media (max-width:1000px) {
  .application-hero-grid { grid-template-columns:1fr; }
  .application-quick-nav { max-width:650px; }
  .application-benefit-grid { grid-template-columns:repeat(3,1fr); }
}
@media (max-width:900px) {
  .application-section-grid,.application-section-heading,.application-auditoris-card { grid-template-columns:1fr; }
  .application-section-heading,.application-auditoris-card { gap:34px; }
  .application-point-grid { grid-template-columns:1fr; }
  .application-point-grid article { min-height:auto; }
  .application-point-grid p { margin-top:34px; }
  .application-benefit-grid { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:760px) {
  .application-page { padding-top:72px; }
  .application-page section[id] { scroll-margin-top:72px; }
  .application-hero { min-height:auto; padding:74px 0 96px; }
  .application-hero h1 { font-size:clamp(3rem,13.8vw,4.55rem); overflow-wrap:break-word; }
  .application-icon { margin-top:28px; }
  .application-lead { margin-top:30px; }
  .application-quick-nav { padding:24px; }
  .application-benefit-grid { grid-template-columns:1fr; }
  .application-benefit-grid li { min-height:auto; }
  .application-benefit-grid p { margin-top:34px; }
  .application-auditoris-card { padding:30px 24px; }
}

/* Le titre de l'accueil doit rester contenu sur tout appareil tactile,
   y compris une tablette ou un téléphone en paysage. */
@media (hover: none) and (pointer: coarse) {
  .commercial-hero { padding-top:72px !important; }
  .commercial-hero-copy h1 { font-size:clamp(2.2rem,7.5vw,2.7rem) !important; line-height:1 !important; }
}
