:root {
  --ink: #14252d;
  --ink-soft: #263c44;
  --cream: #f3f0e9;
  --paper: #faf8f3;
  --rust: #b85532;
  --rust-light: #d9825e;
  --line: rgba(20, 37, 45, 0.17);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font-family: Arial, Helvetica, sans-serif;
  -webkit-font-smoothing: antialiased;
}
a { color: inherit; text-decoration: none; }
.shell { width: min(1180px, calc(100% - 80px)); margin: 0 auto; }

.hero {
  min-height: 760px;
  position: relative;
  overflow: hidden;
  color: var(--cream);
  background: var(--ink);
}
.nav {
  height: 112px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid rgba(243, 240, 233, 0.17);
  position: relative;
  z-index: 2;
}
.brand { display: flex; align-items: center; gap: 13px; letter-spacing: .17em; }
.brand-mark {
  width: 39px; height: 39px; display: grid; place-items: center;
  border: 1px solid var(--rust-light); color: var(--rust-light);
  font: italic 25px/1 Georgia, serif;
}
.brand strong, .brand small { display: block; }
.brand strong { font-size: 15px; line-height: 1.1; }
.brand small { margin-top: 5px; font-size: 8px; color: #9da8a9; }
.nav-links { display: flex; gap: 38px; font-size: 12px; letter-spacing: .13em; text-transform: uppercase; }
.nav-links a { color: #c7ccca; transition: color .2s ease; }
.nav-links a:hover { color: var(--rust-light); }

.hero-grid {
  min-height: 648px;
  display: grid;
  grid-template-columns: 1fr 2.25fr 1fr;
  gap: 52px;
  align-items: end;
  padding: 108px 0 98px;
  position: relative;
  z-index: 1;
}
.eyebrow, .section-number, .kicker {
  font-size: 11px; line-height: 1.5; letter-spacing: .18em; text-transform: uppercase;
}
.eyebrow {
  align-self: start; color: #9aa6a7;
  writing-mode: vertical-rl; transform: rotate(180deg);
}
.kicker { margin: 0 0 25px; font-weight: 650; color: var(--rust-light); }
.hero h1 {
  max-width: 780px; margin: 0;
  font: 400 clamp(48px, 5.2vw, 78px)/.99 Georgia, "Times New Roman", serif;
  letter-spacing: -.045em;
}
.hero h1 em { color: var(--rust-light); font-weight: 400; }
.hero-intro { padding-bottom: 8px; }
.hero-intro p {
  color: #c4cbc9; font: 400 16px/1.65 Georgia, serif; margin: 0 0 38px;
}
.text-link {
  display: inline-flex; align-items: center; gap: 22px;
  padding-bottom: 8px; border-bottom: 1px solid currentColor;
  font-size: 11px; letter-spacing: .15em; text-transform: uppercase;
}
.hero-orbit { position: absolute; border: 1px solid rgba(217,130,94,.18); border-radius: 50%; pointer-events: none; }
.orbit-one { width: 680px; height: 680px; right: -260px; top: 70px; }
.orbit-two { width: 420px; height: 420px; right: -130px; top: 200px; }

.story-section { padding: 145px 0; background: var(--cream); }
.story-grid {
  display: grid; grid-template-columns: .65fr 2.25fr .9fr; gap: 80px; align-items: start;
}
.section-number { margin: 8px 0 0; color: #738086; }
.rust { color: var(--rust); }
h2 {
  font: 400 clamp(42px, 4.3vw, 64px)/1.02 Georgia, serif;
  letter-spacing: -.035em; margin: 0;
}
.story-copy .lead { margin: 40px 0 25px; font: 400 22px/1.55 Georgia, serif; color: var(--ink-soft); }
.story-copy > p:last-child { max-width: 620px; color: #68777b; line-height: 1.7; }
.history-mark { border-top: 1px solid var(--rust); padding-top: 20px; position: relative; }
.history-mark span { font: 400 92px/1 Georgia, serif; letter-spacing: -.08em; }
.history-mark sup { font: 32px/1 Georgia, serif; color: var(--rust); }
.history-mark small { display: block; margin-top: 14px; color: #6f7c80; font-size: 9px; line-height: 1.6; letter-spacing: .17em; }

.pathways-section { padding: 138px 0 150px; }
.section-heading { display: grid; grid-template-columns: .65fr 3.15fr; gap: 80px; margin-bottom: 70px; }
.cards { display: grid; grid-template-columns: 1fr 1fr; }
.path-card {
  min-height: 550px; padding: 52px; display: flex; flex-direction: column; justify-content: space-between;
}
.light-card { background: #e6e1d7; }
.dark-card { background: var(--ink); color: var(--cream); }
.card-index { display: block; margin-bottom: 70px; font: italic 17px/1 Georgia, serif; color: var(--rust); }
.path-card h3 {
  max-width: 470px; margin: 0 0 30px;
  font: 400 36px/1.12 Georgia, serif; letter-spacing: -.025em;
}
.path-card p:not(.kicker) { max-width: 480px; margin: 0; color: #657378; font-size: 15px; line-height: 1.72; }
.dark-card p:not(.kicker) { color: #aeb9b7; }
.path-card > a {
  border-top: 1px solid var(--line); padding-top: 24px;
  display: flex; align-items: center; justify-content: space-between;
  font-size: 11px; letter-spacing: .15em; text-transform: uppercase;
}
.dark-card > a { border-color: rgba(243,240,233,.18); }
.path-card a > span:last-child { color: var(--rust); font-size: 18px; }
.coming-soon { margin-left: auto; margin-right: 18px; color: #7c898b; font-size: 9px; }

.credibility { background: var(--rust); color: #fff5ec; overflow: hidden; padding: 22px 0; }
.ticker { white-space: nowrap; display: flex; justify-content: center; gap: 20px; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; }
.ticker i { opacity: .55; }

.lean-preview { padding: 130px 0; background: #e9e5dc; }
.lean-grid { display: grid; grid-template-columns: .65fr 2.25fr .9fr; gap: 80px; align-items: start; }
blockquote {
  max-width: 700px; margin: 0;
  font: 400 clamp(34px, 3.5vw, 52px)/1.15 Georgia, serif;
  letter-spacing: -.03em;
}
.lean-grid > p:last-child { color: #6b797d; line-height: 1.7; margin-top: 40px; }

footer { background: var(--ink); color: var(--cream); padding: 120px 0 35px; }
.footer-grid { display: grid; grid-template-columns: .65fr 3.15fr; gap: 80px; }
.footer-grid .section-number { color: #849194; }
.footer-copy h2 { max-width: 860px; }
.footer-actions { display: flex; align-items: center; gap: 45px; margin-top: 55px; }
.button {
  min-width: 210px; display: flex; justify-content: space-between; align-items: center;
  background: var(--rust); padding: 20px 24px;
  font-size: 11px; letter-spacing: .15em; text-transform: uppercase;
}
.button:hover { background: #c7633e; }
.footer-link { color: #b7c0be; }
.footer-bottom {
  display: flex; justify-content: space-between; margin-top: 125px; padding-top: 25px;
  border-top: 1px solid rgba(243,240,233,.15); color: #778589;
  font-size: 9px; letter-spacing: .14em; text-transform: uppercase;
}

@media (max-width: 900px) {
  .shell { width: min(100% - 40px, 680px); }
  .nav { height: 90px; }
  .nav-links { gap: 18px; }
  .hero { min-height: auto; }
  .hero-grid { min-height: 670px; grid-template-columns: 1fr; gap: 35px; padding: 85px 0 65px; align-items: start; }
  .eyebrow { writing-mode: initial; transform: none; }
  .hero h1 { font-size: clamp(49px, 12vw, 72px); }
  .hero-intro { max-width: 480px; }
  .story-section, .pathways-section, .lean-preview { padding: 90px 0; }
  .story-grid, .lean-grid { grid-template-columns: 1fr; gap: 40px; }
  .history-mark { max-width: 240px; }
  .section-heading { grid-template-columns: 1fr; gap: 30px; margin-bottom: 45px; }
  .cards { grid-template-columns: 1fr; }
  .path-card { min-height: 520px; }
  .ticker { justify-content: flex-start; padding: 0 20px; }
  .footer-grid { grid-template-columns: 1fr; gap: 35px; }
  .footer-bottom { margin-top: 90px; }
}

@media (max-width: 580px) {
  .shell { width: calc(100% - 32px); }
  .nav-links a:not(:last-child) { display: none; }
  .hero-grid { padding-top: 70px; min-height: 640px; }
  .hero h1 { font-size: clamp(44px, 13vw, 60px); }
  h2 { font-size: 42px; }
  .path-card { min-height: 540px; padding: 35px 28px; }
  .path-card h3 { font-size: 32px; }
  .card-index { margin-bottom: 52px; }
  .footer-actions { flex-direction: column; align-items: stretch; }
  .button { min-width: 100%; }
  .footer-bottom { flex-direction: column; gap: 14px; line-height: 1.5; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}

/* Lean AI approach page */
.lean-page { background: var(--paper); }
.lean-hero {
  min-height: 820px;
  position: relative;
  overflow: hidden;
  background: var(--ink);
  color: var(--cream);
}
.lean-hero-grid {
  min-height: 708px;
  display: grid;
  grid-template-columns: .8fr 3.2fr;
  gap: 80px;
  align-items: center;
  position: relative;
  z-index: 1;
  padding: 75px 0 90px;
}
.lean-hero-side {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  border-right: 1px solid rgba(243,240,233,.16);
  padding: 30px 42px 30px 0;
}
.lean-hero-side .section-number { color: #879496; }
.lean-hero-side > span {
  color: #899698;
  font-size: 10px;
  line-height: 1.85;
  letter-spacing: .15em;
  text-transform: uppercase;
}
.lean-hero-copy { max-width: 890px; }
.lean-hero h1 {
  margin: 0;
  max-width: 900px;
  font: 400 clamp(62px, 7vw, 104px)/.92 Georgia, "Times New Roman", serif;
  letter-spacing: -.055em;
}
.lean-hero h1 em { display: block; color: var(--rust-light); font-weight: 400; }
.lean-hero-lead {
  max-width: 680px;
  margin: 48px 0 45px;
  color: #c0c8c6;
  font: 400 20px/1.6 Georgia, serif;
}

.manifesto { padding: 150px 0; background: var(--cream); }
.manifesto-grid {
  display: grid;
  grid-template-columns: .65fr 3.15fr;
  gap: 80px;
}
.manifesto-copy h2 { max-width: 930px; }
.manifesto-columns {
  max-width: 930px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 70px;
  margin-top: 60px;
  border-top: 1px solid var(--line);
  padding-top: 35px;
}
.manifesto-columns p {
  margin: 0;
  color: #667579;
  font-size: 16px;
  line-height: 1.75;
}

.people-section { background: var(--rust); color: #fff5ec; padding: 120px 0; }
.people-grid {
  display: grid;
  grid-template-columns: 2.15fr 1fr;
  gap: 110px;
  align-items: end;
}
.people-statement .kicker { color: #ffd4c3; }
.people-statement blockquote { max-width: 780px; }
.people-copy { border-top: 1px solid rgba(255,245,236,.4); padding-top: 28px; }
.people-copy p { margin: 0 0 22px; font-size: 15px; line-height: 1.72; }
.people-copy p:last-child { margin-bottom: 0; }

.approach-section { padding: 150px 0; background: var(--paper); }
.approach-heading {
  display: grid;
  grid-template-columns: .65fr 3.15fr;
  gap: 80px;
  margin-bottom: 80px;
}
.approach-heading h2 { max-width: 900px; }
.approach-flow { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--ink); }
.approach-flow article {
  min-height: 450px;
  padding: 32px 28px 35px;
  border-right: 1px solid var(--line);
  display: flex;
  flex-direction: column;
}
.approach-flow article:last-child { border-right: 0; }
.flow-number {
  margin-bottom: 75px;
  color: var(--rust);
  font: italic 18px/1 Georgia, serif;
}
.approach-flow .kicker { color: var(--rust); margin-bottom: 18px; }
.approach-flow h3 {
  margin: 0 0 25px;
  font: 400 28px/1.15 Georgia, serif;
  letter-spacing: -.02em;
}
.approach-flow article > p:last-child {
  margin: auto 0 0;
  color: #6c7a7e;
  font-size: 14px;
  line-height: 1.72;
}
.approach-note {
  max-width: 770px;
  margin: 50px 0 0 auto;
  border-left: 2px solid var(--rust);
  padding-left: 25px;
  color: #657478;
  font: italic 18px/1.6 Georgia, serif;
}

.difference-section { padding: 140px 0; background: var(--ink); color: var(--cream); }
.difference-grid { display: grid; grid-template-columns: .65fr 3.15fr; gap: 80px; }
.difference-section .section-number { color: #819092; }
.difference-content h2 { max-width: 840px; }
.difference-table { margin-top: 75px; border-top: 1px solid rgba(243,240,233,.3); }
.difference-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border-bottom: 1px solid rgba(243,240,233,.14);
}
.difference-row span { padding: 24px 30px 24px 0; color: #9eabaa; line-height: 1.5; }
.difference-row span + span {
  border-left: 1px solid rgba(243,240,233,.14);
  padding-left: 35px;
  color: var(--cream);
}
.difference-header span {
  color: var(--rust-light) !important;
  font-size: 10px;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.perspective-section { padding: 150px 0; background: #e9e5dc; }
.perspective-grid {
  display: grid;
  grid-template-columns: .65fr 1.55fr 1.6fr;
  gap: 80px;
}
.perspective-main h2 { font-size: clamp(40px, 4vw, 58px); }
.perspective-lead { margin: 40px 0 0; color: #5e6e72; font: 20px/1.58 Georgia, serif; }
.perspective-details { border-top: 1px solid var(--ink); }
.perspective-details article {
  display: grid;
  grid-template-columns: 45px 1fr;
  column-gap: 20px;
  padding: 30px 0;
  border-bottom: 1px solid var(--line);
}
.perspective-details article > span { color: var(--rust); font: italic 16px Georgia, serif; grid-row: span 2; }
.perspective-details h3 { margin: 0 0 12px; font: 400 23px/1.15 Georgia, serif; }
.perspective-details p { margin: 0; color: #68777b; font-size: 14px; line-height: 1.65; }

.outcomes-section { padding: 130px 0; background: var(--cream); }
.outcomes-grid { display: grid; grid-template-columns: .65fr 1.6fr 1.55fr; gap: 80px; }
.outcomes-grid h2 { font-size: clamp(42px, 4vw, 60px); }
.outcomes-grid ul { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--ink); }
.outcomes-grid li {
  display: grid;
  grid-template-columns: 42px 1fr;
  gap: 15px;
  padding: 22px 0;
  border-bottom: 1px solid var(--line);
  color: #394e55;
  line-height: 1.5;
}
.outcomes-grid li span { color: var(--rust); font: italic 14px Georgia, serif; }

@media (max-width: 1000px) {
  .lean-hero-grid { grid-template-columns: 1fr; gap: 45px; align-items: start; padding-top: 85px; }
  .lean-hero-side { min-height: auto; border-right: 0; border-bottom: 1px solid rgba(243,240,233,.16); padding: 0 0 25px; }
  .lean-hero-side > span { display: none; }
  .approach-flow { grid-template-columns: 1fr 1fr; }
  .approach-flow article:nth-child(2) { border-right: 0; }
  .approach-flow article { border-bottom: 1px solid var(--line); }
  .perspective-grid, .outcomes-grid { grid-template-columns: 1fr; gap: 45px; }
}

@media (max-width: 760px) {
  .lean-hero { min-height: auto; }
  .lean-hero-grid { min-height: 680px; }
  .lean-hero h1 { font-size: clamp(54px, 15vw, 76px); }
  .lean-hero-lead { font-size: 18px; margin-top: 35px; }
  .manifesto, .approach-section, .difference-section, .perspective-section, .outcomes-section { padding: 90px 0; }
  .manifesto-grid, .approach-heading, .difference-grid { grid-template-columns: 1fr; gap: 35px; }
  .manifesto-columns, .people-grid { grid-template-columns: 1fr; gap: 32px; }
  .people-section { padding: 85px 0; }
  .approach-flow { grid-template-columns: 1fr; }
  .approach-flow article { min-height: 390px; border-right: 0; }
  .flow-number { margin-bottom: 55px; }
  .difference-row { grid-template-columns: 1fr; }
  .difference-row span + span { border-left: 0; border-top: 1px solid rgba(243,240,233,.08); padding-left: 0; }
  .difference-header { display: none; }
  .nav-links a:nth-child(2), .nav-links a:nth-child(3) { display: none; }
}
