:root {
  --ink: #0d0f0f;
  --ink-soft: #151918;
  --ivory: #f4f0e8;
  --paper: #faf8f3;
  --orange: #dc4f10;
  --orange-bright: #ff7a24;
  --orange-text: #b9380a;
  --forest: #173d34;
  --sage: #dce7e0;
  --lime: #d7ef4c;
  --line-dark: rgba(13, 15, 15, 0.16);
  --line-light: rgba(255, 255, 255, 0.16);
  --sans: "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  --serif: Georgia, "Times New Roman", serif;
  --mono: "Cascadia Code", "SFMono-Regular", Consolas, monospace;
  --page-pad: clamp(22px, 4.5vw, 76px);
  --header-height: 92px;
}

* {
  box-sizing: border-box;
}

img {
  display: block;
  height: auto;
  max-width: 100%;
}

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

body {
  margin: 0;
  min-width: 320px;
  background: var(--ink);
  color: var(--ink);
  font-family: var(--sans);
  font-size: 16px;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

body.nav-open {
  overflow: hidden;
}

.skip-link {
  background: var(--orange);
  color: var(--ink);
  font-size: 13px;
  font-weight: 750;
  left: 16px;
  padding: 11px 16px;
  position: fixed;
  top: 12px;
  transform: translateY(-150%);
  transition: transform 160ms ease;
  z-index: 1000;
}

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

::selection {
  background: var(--orange);
  color: var(--ink);
}

a {
  color: inherit;
  text-decoration: none;
}

button,
a {
  -webkit-tap-highlight-color: transparent;
}

button {
  font: inherit;
}

button:focus-visible,
a:focus-visible {
  outline: 3px solid var(--orange-text);
  outline-offset: 4px;
}

h1,
h2,
h3,
p,
blockquote {
  margin-top: 0;
}

em {
  font-family: var(--serif);
  font-weight: 400;
}

[hidden] {
  display: none !important;
}

#top {
  position: absolute;
  top: 0;
}

#partner,
[id] {
  scroll-margin-top: 90px;
}

.breadcrumbs {
  color: rgba(13, 15, 15, .7);
  font-family: var(--mono);
  font-size: 11px;
  letter-spacing: .08em;
  margin-bottom: 42px;
  text-transform: uppercase;
}

.breadcrumbs ol {
  display: flex;
  gap: 10px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.breadcrumbs li + li::before {
  content: "/";
  margin-right: 10px;
  opacity: .45;
}

.breadcrumbs a:hover {
  color: var(--orange-text);
}

.breadcrumbs-dark {
  color: rgba(255, 255, 255, .58);
}

.breadcrumbs-dark a:hover {
  color: var(--orange-bright);
}

.page-shell,
.hero-shell {
  position: relative;
  overflow: hidden;
}

.page-ivory {
  background: var(--ivory);
}

.site-header {
  align-items: center;
  color: var(--ink);
  display: flex;
  height: var(--header-height);
  justify-content: space-between;
  left: 0;
  padding: 0 var(--page-pad);
  position: fixed;
  right: 0;
  top: 0;
  transition: background-color 220ms ease, box-shadow 220ms ease, height 220ms ease;
  z-index: 100;
}

.hero-dark .site-header,
.about-shell .site-header {
  color: white;
}

.site-header.is-scrolled {
  background: rgba(244, 240, 232, 0.94);
  box-shadow: 0 1px 0 rgba(13, 15, 15, 0.1);
  color: var(--ink);
  height: 74px;
  backdrop-filter: blur(18px);
}

.hero-dark .site-header.is-scrolled,
.about-shell .site-header.is-scrolled {
  background: rgba(13, 15, 15, 0.92);
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.1);
  color: white;
}

.brand {
  align-items: center;
  display: inline-flex;
  gap: 13px;
  position: relative;
  z-index: 2;
}

.brand-mark {
  align-items: center;
  background: var(--orange);
  border-radius: 50%;
  color: var(--ink);
  display: inline-flex;
  font-size: 13px;
  font-weight: 800;
  height: 43px;
  justify-content: center;
  letter-spacing: -0.06em;
  width: 43px;
}

.brand-name {
  font-size: 15px;
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.05;
}

.brand-name small {
  display: block;
  font-family: var(--mono);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.12em;
  margin-top: 5px;
  opacity: 0.58;
  text-transform: uppercase;
}

.primary-nav {
  align-items: center;
  display: flex;
  gap: clamp(22px, 3vw, 52px);
}

.nav-links {
  align-items: center;
  display: flex;
  gap: clamp(20px, 2.5vw, 42px);
}

.nav-links a {
  font-size: 13px;
  font-weight: 650;
  padding: 12px 0;
  position: relative;
}

.nav-links a::after {
  background: currentColor;
  bottom: 5px;
  content: "";
  height: 1px;
  left: 0;
  position: absolute;
  transform: scaleX(0);
  transform-origin: right;
  transition: transform 200ms ease;
  width: 100%;
}

.nav-links a:hover::after,
.nav-links a.is-active::after {
  transform: scaleX(1);
  transform-origin: left;
}

.nav-cta {
  align-items: center;
  border: 1px solid currentColor;
  border-radius: 999px;
  display: inline-flex;
  font-size: 12px;
  font-weight: 700;
  gap: 18px;
  padding: 12px 17px;
  transition: background 180ms ease, color 180ms ease;
}

.nav-cta:hover {
  background: currentColor;
  color: var(--ink);
}

.page-ivory .nav-cta:hover,
.site-header.is-scrolled .nav-cta:hover {
  background: var(--ink);
  color: white;
}

.hero-dark .site-header:not(.is-scrolled) .nav-cta:hover,
.about-shell .site-header:not(.is-scrolled) .nav-cta:hover {
  background: white;
  color: var(--ink);
}

.menu-toggle {
  background: none;
  border: 0;
  color: inherit;
  cursor: pointer;
  display: none;
  height: 42px;
  padding: 10px 6px;
  position: relative;
  width: 42px;
  z-index: 3;
}

.menu-toggle span {
  background: currentColor;
  display: block;
  height: 1px;
  margin: 6px 0 6px auto;
  transition: transform 180ms ease, width 180ms ease;
  width: 26px;
}

.menu-toggle span:last-child {
  width: 18px;
}

.menu-toggle[aria-expanded="true"] span:first-child {
  transform: translateY(3.5px) rotate(45deg);
}

.menu-toggle[aria-expanded="true"] span:last-child {
  transform: translateY(-3.5px) rotate(-45deg);
  width: 26px;
}

.button {
  align-items: center;
  border: 1px solid transparent;
  border-radius: 999px;
  display: inline-flex;
  font-size: 13px;
  font-weight: 750;
  gap: 24px;
  justify-content: center;
  min-height: 52px;
  padding: 14px 22px;
  transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease, transform 180ms ease;
}

.button:hover {
  transform: translateY(-2px);
}

.button-primary {
  background: var(--orange);
  color: var(--ink);
}

.button-primary:hover {
  background: var(--orange-bright);
}

.button-ghost-light {
  border-color: rgba(255, 255, 255, 0.35);
  color: white;
}

.button-ghost-light:hover {
  border-color: white;
}

.button-outline {
  border-color: rgba(13, 15, 15, 0.45);
  color: var(--ink);
}

.button-outline:hover {
  background: var(--ink);
  color: white;
}

.button-dark {
  background: var(--ink);
  color: white;
}

.button-ghost-dark {
  border-color: rgba(13, 15, 15, 0.45);
  color: var(--ink);
}

.eyebrow {
  align-items: center;
  color: rgba(13, 15, 15, 0.63);
  display: flex;
  font-family: var(--mono);
  font-size: 11px;
  font-weight: 650;
  gap: 11px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.eyebrow-light {
  color: rgba(255, 255, 255, 0.7);
}

.status-dot {
  background: #79e287;
  border-radius: 50%;
  box-shadow: 0 0 0 5px rgba(121, 226, 135, 0.1);
  height: 7px;
  width: 7px;
}

.section-kicker {
  align-items: center;
  color: rgba(13, 15, 15, 0.7);
  display: flex;
  font-family: var(--mono);
  font-size: 11px;
  font-weight: 700;
  gap: 12px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.section-kicker::before {
  background: var(--orange);
  border-radius: 50%;
  content: "";
  height: 6px;
  width: 6px;
}

.section-kicker-light {
  color: rgba(255, 255, 255, 0.58);
}

.hero-dark {
  background: var(--ink);
}

.home-hero {
  background: var(--ink);
  color: white;
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(420px, 0.88fr);
  min-height: min(940px, 100svh);
  overflow: hidden;
  padding: calc(var(--header-height) + clamp(52px, 7vh, 90px)) var(--page-pad) 0;
  position: relative;
}

.technical-grid {
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.045) 1px, transparent 1px);
  background-size: 68px 68px;
  inset: 0;
  mask-image: linear-gradient(to bottom, black, transparent 86%);
  pointer-events: none;
  position: absolute;
}

.home-hero::before {
  background: var(--orange);
  border-radius: 50%;
  content: "";
  filter: blur(140px);
  height: 420px;
  opacity: 0.12;
  position: absolute;
  right: 8%;
  top: 22%;
  width: 420px;
}

.hero-copy {
  align-self: center;
  max-width: 930px;
  padding-bottom: 126px;
  position: relative;
  z-index: 2;
}

.hero-copy .eyebrow {
  margin-bottom: clamp(28px, 5vh, 54px);
}

.hero-copy h1 {
  font-size: clamp(57px, 7.3vw, 120px);
  font-weight: 640;
  letter-spacing: -0.074em;
  line-height: 0.86;
  margin-bottom: clamp(32px, 5vh, 56px);
  max-width: 980px;
}

.hero-copy h1 em {
  color: var(--orange);
  display: block;
  font-size: 0.91em;
  letter-spacing: -0.055em;
  line-height: 1;
}

.hero-intro {
  color: rgba(255, 255, 255, 0.72);
  font-size: clamp(16px, 1.25vw, 20px);
  line-height: 1.7;
  margin-bottom: 34px;
  max-width: 680px;
}

.hero-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.ecosystem-orbit {
  align-self: center;
  aspect-ratio: 1;
  margin: 0 0 96px auto;
  max-width: 650px;
  position: relative;
  width: 100%;
  z-index: 2;
}

.orbit-ring {
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 50%;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}

.orbit-ring-one { height: 29%; width: 29%; }
.orbit-ring-two { height: 61%; width: 61%; }
.orbit-ring-three { height: 94%; width: 94%; }

.orbit-ring-two::after,
.orbit-ring-three::after {
  background: var(--orange);
  border: 4px solid var(--ink);
  border-radius: 50%;
  content: "";
  height: 12px;
  position: absolute;
  width: 12px;
}

.orbit-ring-two::after { right: 9%; top: 18%; }
.orbit-ring-three::after { bottom: 12%; left: 20%; }

.orbit-core {
  align-items: center;
  background: var(--orange);
  border-radius: 50%;
  color: var(--ink);
  display: flex;
  flex-direction: column;
  height: 24%;
  justify-content: center;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 24%;
  z-index: 3;
}

.orbit-core span {
  font-size: clamp(32px, 4vw, 62px);
  font-weight: 850;
  letter-spacing: -0.09em;
  line-height: 0.9;
}

.orbit-core small {
  font-family: var(--mono);
  font-size: clamp(6px, 0.55vw, 8px);
  letter-spacing: 0.08em;
  margin-top: 9px;
  text-transform: uppercase;
}

.orbit-node {
  background: rgba(20, 23, 22, 0.92);
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 14px;
  display: flex;
  flex-direction: column;
  min-width: 128px;
  padding: 16px 18px;
  position: absolute;
  z-index: 4;
}

.orbit-node .node-code {
  color: var(--orange);
  font-family: var(--mono);
  font-size: 8px;
  margin-bottom: 18px;
}

.orbit-node strong {
  font-size: 14px;
  letter-spacing: -0.02em;
}

.orbit-node small {
  color: rgba(255, 255, 255, 0.48);
  font-size: 9px;
  margin-top: 3px;
}

.node-commerce { left: 2%; top: 19%; }
.node-data { right: 0; top: 29%; }
.node-media { bottom: 14%; left: 12%; }
.node-cloud { bottom: 7%; right: 11%; }

.orbit-caption {
  bottom: -10px;
  color: rgba(255, 255, 255, 0.36);
  display: flex;
  font-family: var(--mono);
  font-size: 7px;
  justify-content: space-between;
  left: 4%;
  letter-spacing: 0.12em;
  position: absolute;
  right: 4%;
}

@keyframes orbit-pulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(243, 107, 33, 0); }
  50% { box-shadow: 0 0 0 12px rgba(243, 107, 33, 0.08); }
}

.orbit-core {
  animation: orbit-pulse 4s ease-in-out infinite;
}

.hero-proof {
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  bottom: 0;
  display: grid;
  grid-column: 1 / -1;
  grid-template-columns: repeat(3, 1fr);
  left: var(--page-pad);
  position: absolute;
  right: var(--page-pad);
}

.hero-proof > div {
  align-items: center;
  border-right: 1px solid rgba(255, 255, 255, 0.14);
  display: flex;
  gap: 18px;
  min-height: 96px;
  padding: 18px clamp(16px, 2.2vw, 34px);
}

.hero-proof > div:first-child { padding-left: 0; }
.hero-proof > div:last-child { border-right: 0; }

.hero-proof strong {
  font-size: clamp(19px, 1.7vw, 28px);
  letter-spacing: -0.04em;
}

.hero-proof span {
  color: rgba(255, 255, 255, 0.48);
  font-family: var(--mono);
  font-size: 8px;
  letter-spacing: 0.08em;
  line-height: 1.45;
  text-transform: uppercase;
}

.section-light {
  background: var(--paper);
}

.section-warm {
  background: var(--ivory);
}

.section-dark {
  background: var(--ink);
  color: white;
}

.section-sage {
  background: var(--sage);
}

.manifesto {
  padding: clamp(100px, 13vw, 210px) var(--page-pad);
}

.manifesto > .section-kicker {
  margin-bottom: clamp(42px, 7vw, 90px);
}

.manifesto-layout {
  align-items: start;
  display: grid;
  gap: 8vw;
  grid-template-columns: 1.2fr 0.8fr;
}

.display-heading {
  font-size: clamp(52px, 7.2vw, 116px);
  font-weight: 620;
  letter-spacing: -0.075em;
  line-height: 0.92;
  margin: 0;
}

.display-heading em {
  color: var(--orange-text);
}

.manifesto-copy {
  border-top: 1px solid var(--line-dark);
  padding-top: 28px;
}

.manifesto-copy p {
  color: rgba(13, 15, 15, 0.69);
  font-size: clamp(16px, 1.35vw, 21px);
  line-height: 1.72;
  margin-bottom: 24px;
}

.text-link,
.feature-copy > a,
.research-copy > a {
  display: inline-flex;
  font-size: 13px;
  font-weight: 750;
  gap: 15px;
  margin-top: 12px;
  padding-bottom: 6px;
  position: relative;
}

.text-link::after,
.feature-copy > a::after,
.research-copy > a::after {
  background: currentColor;
  bottom: 0;
  content: "";
  height: 1px;
  left: 0;
  position: absolute;
  transition: width 180ms ease;
  width: 32px;
}

.text-link:hover::after,
.feature-copy > a:hover::after,
.research-copy > a:hover::after {
  width: 100%;
}

.credibility-grid {
  border-bottom: 1px solid var(--line-dark);
  border-top: 1px solid var(--line-dark);
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin-top: clamp(70px, 10vw, 145px);
}

.credibility-grid a {
  border-right: 1px solid var(--line-dark);
  display: flex;
  flex-direction: column;
  min-height: 280px;
  padding: 29px clamp(20px, 2.7vw, 42px) 32px;
  transition: background-color 180ms ease;
}

.credibility-grid a:first-child { padding-left: 0; }
.credibility-grid a:last-child { border-right: 0; }
.credibility-grid a:hover { background: rgba(13, 15, 15, .035); }
.credibility-grid span { color: var(--orange-text); font-family: var(--mono); font-size: 11px; letter-spacing: .1em; text-transform: uppercase; }
.credibility-grid strong { font-size: clamp(23px, 2.4vw, 37px); font-weight: 600; letter-spacing: -.045em; line-height: 1.12; margin-top: 47px; }
.credibility-grid small { color: rgba(13,15,15,.68); font-family: var(--mono); font-size: 11px; letter-spacing: .05em; margin-top: auto; padding-top: 25px; text-transform: uppercase; }

.featured-work {
  padding: clamp(90px, 11vw, 170px) var(--page-pad);
}

.section-heading-row {
  align-items: end;
  display: flex;
  justify-content: space-between;
  margin-bottom: clamp(50px, 7vw, 92px);
}

.section-heading-row .section-kicker {
  margin-bottom: 22px;
}

.section-heading-row h2 {
  font-size: clamp(48px, 6vw, 92px);
  font-weight: 620;
  letter-spacing: -0.068em;
  line-height: 0.9;
  margin: 0;
}

.featured-card {
  overflow: hidden;
}

.feature-commerce {
  background: #ff7a24;
  display: grid;
  grid-template-columns: 0.72fr 1.28fr;
  min-height: 610px;
}

.feature-copy {
  align-self: end;
  padding: clamp(34px, 5vw, 76px);
}

.project-meta {
  display: flex;
  flex-wrap: wrap;
  font-family: var(--mono);
  font-size: 11px;
  gap: 17px;
  letter-spacing: 0.1em;
  margin-bottom: 40px;
  text-transform: uppercase;
}

.project-meta span + span::before {
  content: "•";
  margin-right: 17px;
  opacity: 0.45;
}

.feature-copy h3 {
  font-size: clamp(38px, 4vw, 67px);
  font-weight: 650;
  letter-spacing: -0.06em;
  line-height: 0.95;
  margin-bottom: 24px;
}

.feature-copy p {
  font-size: clamp(15px, 1.2vw, 19px);
  line-height: 1.65;
  max-width: 570px;
  opacity: 0.72;
}

.commerce-window {
  align-self: center;
  background: var(--paper);
  border-radius: 18px 0 0 18px;
  box-shadow: 0 40px 80px rgba(102, 38, 0, 0.2);
  color: var(--ink);
  margin-left: 4vw;
  min-height: 420px;
  overflow: hidden;
  transform: translateX(5%);
}

.window-bar {
  align-items: center;
  background: #ece8df;
  display: flex;
  gap: 6px;
  height: 30px;
  padding-left: 14px;
}

.window-bar span {
  background: #c8c3bb;
  border-radius: 50%;
  height: 6px;
  width: 6px;
}

.shop-nav {
  align-items: center;
  border-bottom: 1px solid rgba(13, 15, 15, 0.1);
  display: grid;
  font-size: 10px;
  grid-template-columns: auto 1fr auto;
  padding: 19px 23px;
}

.shop-nav b {
  color: var(--orange);
  font-size: 16px;
  letter-spacing: -0.05em;
  margin-right: 32px;
}

.shop-nav > span {
  background: #eeeae2;
  border-radius: 999px;
  color: rgba(13, 15, 15, 0.4);
  padding: 9px 15px;
}

.shop-nav i {
  font-style: normal;
  margin-left: 22px;
}

.shop-body {
  padding: 23px;
}

.shop-hero {
  background: var(--forest);
  color: white;
  display: flex;
  flex-direction: column;
  min-height: 200px;
  padding: 27px;
}

.shop-hero small {
  color: #a8d5c5;
  font-family: var(--mono);
  font-size: 7px;
  letter-spacing: 0.16em;
}

.shop-hero strong {
  font-size: clamp(23px, 2.5vw, 40px);
  letter-spacing: -0.055em;
  line-height: 0.98;
  margin-top: 18px;
}

.shop-hero .shop-button {
  align-self: start;
  background: var(--orange);
  border: 0;
  border-radius: 999px;
  color: var(--ink);
  font-size: 8px;
  font-weight: 700;
  margin-top: auto;
  padding: 9px 12px;
}

.shop-products {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, 1fr);
  margin-top: 12px;
}

.shop-products span {
  aspect-ratio: 1.6;
  background: #ded9cf;
}

.shop-products span:nth-child(2) { background: #cedbd4; }
.shop-products span:nth-child(3) { background: #f1c7aa; }

.featured-pair {
  display: grid;
  gap: 22px;
  grid-template-columns: 1fr 1fr;
  margin-top: 22px;
}

.feature-post {
  background: #e9e0d1;
}

.feature-dev {
  background: #172e2a;
  color: white;
}

.news-preview,
.dev-preview {
  margin: clamp(24px, 4vw, 55px) clamp(24px, 4vw, 55px) 0;
  min-height: 360px;
}

.news-preview {
  background: #f9f6ef;
  color: #111;
  padding: 26px;
  transform: rotate(-1.4deg);
}

.news-masthead {
  font-family: var(--serif);
  font-size: clamp(23px, 2.8vw, 43px);
  font-weight: 900;
  letter-spacing: -0.06em;
  text-align: center;
}

.news-rule {
  border-bottom: 3px double #111;
  margin: 14px 0 20px;
}

.news-grid {
  display: grid;
  gap: 20px;
  grid-template-columns: 0.9fr 1.1fr;
}

.news-image {
  align-items: end;
  background: #243a36;
  color: #f6ede0;
  display: flex;
  font-family: var(--mono);
  font-size: 9px;
  letter-spacing: 0.1em;
  min-height: 230px;
  padding: 16px;
}

.news-grid small {
  color: #a84d23;
  font-family: var(--mono);
  font-size: 7px;
  letter-spacing: 0.1em;
}

.news-grid strong {
  display: block;
  font-family: var(--serif);
  font-size: clamp(24px, 2.4vw, 38px);
  line-height: 0.98;
  margin-top: 15px;
}

.news-grid p {
  border-top: 1px solid #aaa;
  font-family: var(--mono);
  font-size: 7px;
  margin-top: 20px;
  padding-top: 12px;
}

.feature-copy.compact {
  padding-top: 42px;
}

.feature-copy.compact h3 {
  font-size: clamp(35px, 3.4vw, 55px);
}

.dev-preview {
  background: #0c1211;
  border: 1px solid rgba(255, 255, 255, 0.12);
  display: flex;
  flex-direction: column;
  padding: 22px;
  transform: rotate(1.2deg);
}

.terminal-top,
.terminal-status {
  align-items: center;
  display: flex;
  font-family: var(--mono);
  font-size: 8px;
  justify-content: space-between;
}

.terminal-top { color: rgba(255, 255, 255, 0.48); }
.terminal-top i { color: #6ddd81; font-style: normal; }

.dev-preview pre {
  align-items: center;
  color: #c9e9d9;
  display: flex;
  flex: 1;
  font-family: var(--mono);
  font-size: clamp(11px, 1.25vw, 17px);
  line-height: 1.8;
  margin: 0;
  overflow: hidden;
}

.terminal-status {
  border-top: 1px solid rgba(255, 255, 255, 0.12);
  color: rgba(255, 255, 255, 0.42);
  padding-top: 17px;
}

.terminal-status b { color: #6ddd81; font-weight: 500; }
.terminal-status i { color: white; font-style: normal; }

.disciplines {
  display: grid;
  gap: 9vw;
  grid-template-columns: 0.75fr 1.25fr;
  padding: clamp(100px, 12vw, 190px) var(--page-pad);
}

.disciplines-intro {
  position: sticky;
  top: 125px;
  align-self: start;
}

.disciplines-intro .section-kicker {
  margin-bottom: 40px;
}

.disciplines-intro h2 {
  font-size: clamp(45px, 5vw, 78px);
  font-weight: 620;
  letter-spacing: -0.07em;
  line-height: 0.92;
  margin-bottom: 35px;
}

.disciplines-intro p {
  color: rgba(255, 255, 255, 0.57);
  font-size: 17px;
  line-height: 1.7;
  max-width: 480px;
}

.discipline-item {
  border-top: 1px solid var(--line-light);
  display: grid;
  gap: 30px;
  grid-template-columns: 50px 0.8fr 1.2fr;
  padding: 35px 0 45px;
}

.discipline-number {
  color: var(--orange);
  font-family: var(--mono);
  font-size: 11px;
}

.discipline-item h3 {
  font-size: clamp(24px, 2.2vw, 35px);
  font-weight: 620;
  letter-spacing: -0.045em;
  margin: 0;
}

.discipline-item p {
  color: rgba(255, 255, 255, 0.58);
  line-height: 1.7;
  margin: 0;
}

.tag-list {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  grid-column: 3;
}

.tag-list span {
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 999px;
  color: rgba(255, 255, 255, 0.62);
  font-family: var(--mono);
  font-size: 11px;
  letter-spacing: 0.05em;
  padding: 8px 11px;
  text-transform: uppercase;
}

.home-partner {
  align-items: center;
  display: flex;
  flex-direction: column;
  padding: clamp(100px, 14vw, 210px) var(--page-pad);
  text-align: center;
}

.partner-signal {
  align-items: center;
  display: inline-flex;
  font-family: var(--mono);
  font-size: 11px;
  gap: 13px;
  letter-spacing: 0.13em;
  margin-bottom: 42px;
  text-transform: uppercase;
}

.signal-rings {
  display: inline-block;
  height: 18px;
  position: relative;
  width: 18px;
}

.signal-rings i {
  border: 1px solid var(--forest);
  border-radius: 50%;
  inset: 0;
  position: absolute;
}

.signal-rings i:nth-child(2) { inset: 5px; }
.signal-rings i:nth-child(3) { background: var(--forest); border: 0; inset: 8px; }

.home-partner h2 {
  font-size: clamp(48px, 7vw, 110px);
  font-weight: 620;
  letter-spacing: -0.075em;
  line-height: 0.93;
  margin-bottom: 34px;
  max-width: 1250px;
}

.home-partner > p {
  color: rgba(13, 15, 15, 0.65);
  font-size: clamp(16px, 1.3vw, 20px);
  line-height: 1.7;
  margin-bottom: 35px;
  max-width: 720px;
}

.js .reveal {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 700ms cubic-bezier(0.2, 0.7, 0.2, 1), transform 700ms cubic-bezier(0.2, 0.7, 0.2, 1);
}

.js .reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}

/* Ecosystem page */
.work-hero {
  padding: calc(var(--header-height) + clamp(70px, 9vw, 135px)) var(--page-pad) clamp(70px, 9vw, 125px);
}

.work-hero > .breadcrumbs {
  margin-bottom: clamp(42px, 6vw, 78px);
}

.work-hero-top {
  align-items: end;
  display: grid;
  gap: 8vw;
  grid-template-columns: 1.4fr 0.6fr;
}

.work-hero .eyebrow {
  gap: 28px;
  margin-bottom: 38px;
}

.work-hero .eyebrow span + span::before {
  content: "/";
  margin-right: 28px;
  opacity: 0.35;
}

.work-hero h1 {
  font-size: clamp(63px, 9vw, 145px);
  font-weight: 630;
  letter-spacing: -0.08em;
  line-height: 0.84;
  margin: 0;
}

.work-hero h1 em {
  color: var(--orange-text);
}

.work-hero-top > p {
  border-top: 1px solid var(--line-dark);
  color: rgba(13, 15, 15, 0.66);
  font-size: clamp(16px, 1.22vw, 20px);
  line-height: 1.72;
  margin: 0;
  padding-top: 25px;
}

.work-ledger {
  border-bottom: 1px solid var(--line-dark);
  border-top: 1px solid var(--line-dark);
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  margin-top: clamp(70px, 9vw, 125px);
}

.work-ledger > div {
  border-right: 1px solid var(--line-dark);
  display: flex;
  flex-direction: column;
  padding: 28px clamp(17px, 2vw, 32px);
}

.work-ledger > div:first-child { padding-left: 0; }
.work-ledger > div:last-child { border-right: 0; }

.work-ledger span {
  font-size: clamp(30px, 3.3vw, 53px);
  font-weight: 660;
  letter-spacing: -0.06em;
  line-height: 1;
}

.work-ledger small {
  color: rgba(13, 15, 15, 0.68);
  font-family: var(--mono);
  font-size: 11px;
  letter-spacing: 0.08em;
  margin-top: 12px;
  text-transform: uppercase;
}

.portfolio-section {
  background: var(--paper);
  padding: clamp(85px, 11vw, 165px) var(--page-pad);
}

.portfolio-toolbar {
  align-items: end;
  display: flex;
  gap: 45px;
  justify-content: space-between;
  margin-bottom: clamp(48px, 7vw, 95px);
}

.portfolio-toolbar .section-kicker {
  margin-bottom: 20px;
}

.portfolio-toolbar h2 {
  font-size: clamp(48px, 6vw, 92px);
  font-weight: 620;
  letter-spacing: -0.072em;
  line-height: 0.92;
  margin: 0;
}

.filter-controls {
  display: none;
  max-width: 620px;
}

.js .filter-controls {
  display: block;
}

.filter-list {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  justify-content: flex-end;
  max-width: 620px;
}

.filter-results {
  color: rgba(13, 15, 15, .7);
  font-family: var(--mono);
  font-size: 11px;
  letter-spacing: .06em;
  margin-top: 11px;
  text-align: right;
  width: 100%;
}

.filter-list button {
  background: transparent;
  border: 1px solid rgba(13, 15, 15, 0.23);
  border-radius: 999px;
  color: rgba(13, 15, 15, 0.66);
  cursor: pointer;
  font-size: 11px;
  font-weight: 670;
  padding: 10px 14px;
  transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease;
}

.filter-list button:hover,
.filter-list button.is-active {
  background: var(--ink);
  border-color: var(--ink);
  color: white;
}

.portfolio-grid {
  display: grid;
  gap: 24px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.portfolio-card {
  background: var(--card-bg, #eee);
  color: var(--card-fg, var(--ink));
  display: flex;
  flex-direction: column;
  min-height: 760px;
  overflow: hidden;
}

.portfolio-card:nth-child(3n + 1) {
  grid-column: span 1;
}

.portfolio-visual {
  align-items: center;
  background: var(--visual-bg, rgba(255, 255, 255, 0.15));
  display: flex;
  flex: 0 0 375px;
  justify-content: center;
  overflow: hidden;
  padding: clamp(24px, 3.5vw, 54px);
  position: relative;
}

.portfolio-visual::before {
  background-image:
    linear-gradient(rgba(255,255,255,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.08) 1px, transparent 1px);
  background-size: 44px 44px;
  content: "";
  inset: 0;
  opacity: 0.5;
  pointer-events: none;
  position: absolute;
}

.portfolio-content {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: clamp(28px, 3.4vw, 50px);
}

.portfolio-index {
  align-items: center;
  border-bottom: 1px solid var(--card-line, rgba(13, 15, 15, 0.16));
  display: flex;
  font-family: var(--mono);
  font-size: 11px;
  justify-content: space-between;
  letter-spacing: 0.1em;
  margin-bottom: 25px;
  padding-bottom: 14px;
  text-transform: uppercase;
}

.portfolio-index span:first-child {
  color: var(--card-accent, var(--orange));
}

.project-status {
  align-items: center;
  display: flex;
  font-family: var(--mono);
  font-size: 11px;
  gap: 8px;
  letter-spacing: 0.08em;
  margin-bottom: 25px;
  text-transform: uppercase;
}

.project-status i {
  background: currentColor;
  border-radius: 50%;
  height: 6px;
  width: 6px;
}

.status-live { color: var(--status-live, #247b4c); }
.status-play { color: var(--status-play, #226bb3); }
.status-listed { color: var(--status-listed, #8d5912); }
.status-archive { color: var(--status-archive, #86575d); }

.portfolio-content h3 {
  font-size: clamp(34px, 3.8vw, 60px);
  font-weight: 640;
  letter-spacing: -0.065em;
  line-height: 0.96;
  margin-bottom: 20px;
}

.portfolio-content > p {
  color: var(--card-muted, rgba(13, 15, 15, 0.65));
  font-size: 16px;
  line-height: 1.66;
  max-width: 600px;
}

.contribution {
  border-top: 1px solid var(--card-line, rgba(13, 15, 15, 0.16));
  color: var(--card-muted, rgba(13, 15, 15, 0.64));
  font-size: 11px;
  margin-top: 16px;
  padding-top: 17px;
}

.contribution span {
  display: block;
  font-family: var(--mono);
  font-size: 11px;
  letter-spacing: 0.12em;
  margin-bottom: 5px;
  text-transform: uppercase;
}

.portfolio-content > a {
  align-items: center;
  align-self: flex-start;
  display: inline-flex;
  font-size: 12px;
  font-weight: 760;
  gap: 18px;
  margin-top: auto;
  padding-top: 28px;
}

.portfolio-content > a span {
  border: 1px solid currentColor;
  border-radius: 50%;
  display: grid;
  height: 30px;
  place-items: center;
  transition: background 180ms ease, color 180ms ease;
  width: 30px;
}

.portfolio-content > a:hover span {
  background: currentColor;
  color: var(--card-bg, white);
}

.theme-orange { --card-bg: #ff7628; --visual-bg: #e65e16; --card-line: rgba(29, 18, 12, 0.22); --card-muted: rgba(20, 12, 8, 0.7); --card-accent: #fff; --status-live: #173d34; }
.theme-forest { --card-bg: #173d34; --visual-bg: #0f2d27; --card-fg: #fff; --card-line: rgba(255,255,255,.16); --card-muted: rgba(255,255,255,.62); --card-accent: #b9e6d2; --status-live: #9fe7b0; }
.theme-cobalt { --card-bg: #204c9b; --visual-bg: #123875; --card-fg: #fff; --card-line: rgba(255,255,255,.16); --card-muted: rgba(255,255,255,.64); --card-accent: #c7ddff; --status-live: #9fe7b0; }
.theme-yellow { --card-bg: #f3cc3d; --visual-bg: #e2b925; --card-accent: #7a3000; --status-play: #174f8b; }
.theme-ink { --card-bg: #161918; --visual-bg: #090c0b; --card-fg: #fff; --card-line: rgba(255,255,255,.15); --card-muted: rgba(255,255,255,.59); --card-accent: #f36b21; --status-live: #7bdf91; }
.theme-blue { --card-bg: #2760b9; --visual-bg: #194a98; --card-fg: #fff; --card-line: rgba(255,255,255,.18); --card-muted: rgba(255,255,255,.65); --card-accent: #b8ddff; --status-live: #b8f1c3; }
.theme-violet { --card-bg: #7c5ac6; --visual-bg: #6042a6; --card-fg: #fff; --card-line: rgba(255,255,255,.18); --card-muted: rgba(255,255,255,.68); --card-accent: #e8ddff; --status-listed: #f4dd8a; }
.theme-magenta { --card-bg: #c63872; --visual-bg: #922450; --card-fg: #fff; --card-line: rgba(255,255,255,.18); --card-muted: rgba(255,255,255,.68); --card-accent: #ffd5e5; --status-listed: #ffdd8f; }
.theme-tomato { --card-bg: #e84f36; --visual-bg: #c53b27; --card-fg: #fff; --card-line: rgba(255,255,255,.18); --card-muted: rgba(255,255,255,.69); --card-accent: #ffe1b4; --status-listed: #ffe08c; }
.theme-mint { --card-bg: #bde3d9; --visual-bg: #8fc8ba; --card-accent: #115b4c; --status-live: #17634e; }
.theme-lime { --card-bg: #d7ef4c; --visual-bg: #b8d52c; --card-accent: #284411; --status-listed: #775314; }
.theme-paper { --card-bg: #e8dfd0; --visual-bg: #d5c7b4; --card-accent: #9b3d20; --status-live: #22714b; }
.theme-cream { --card-bg: #f0e7d8; --visual-bg: #d8c8ae; --card-accent: #a34522; --status-live: #22714b; }
.theme-sand { --card-bg: #d7b991; --visual-bg: #bf9a6d; --card-accent: #643d21; --status-archive: #6f3940; }

.mini-market,
.mini-dashboard,
.mini-code,
.mini-server,
.mini-tools,
.mini-player,
.mini-food,
.mini-medical,
.mini-finance,
.mini-news,
.mini-invite {
  box-shadow: 0 28px 55px rgba(0,0,0,.16);
  position: relative;
  width: min(100%, 520px);
  z-index: 1;
}

.mini-accounts,
.mini-insights {
  box-shadow: 0 28px 55px rgba(0,0,0,.16);
  position: relative;
  width: min(100%, 520px);
  z-index: 1;
}

.mini-market {
  background: #f9f5ed;
  color: #111;
  transform: rotate(-2deg);
}

.mini-top {
  align-items: center;
  border-bottom: 1px solid #ddd7cb;
  display: grid;
  font-size: 8px;
  grid-template-columns: auto 1fr auto;
  gap: 17px;
  padding: 14px;
}

.mini-top b { color: var(--orange); font-size: 15px; }
.mini-top span { background: #ede9e1; border-radius: 99px; color: #999; padding: 7px 10px; }
.mini-top i { background: var(--orange); border-radius: 50%; color: var(--ink); display: grid; font-size: 7px; font-style: normal; height: 22px; place-items: center; width: 22px; }
.mini-market-body { background: #173d34; color: white; display: flex; flex-direction: column; margin: 13px; min-height: 185px; padding: 25px; }
.mini-market-body strong { font-size: clamp(26px, 3.2vw, 47px); letter-spacing: -.06em; line-height: .9; }
.mini-pill { align-self: start; background: var(--orange); border-radius: 99px; color: var(--ink); font-family: var(--mono); font-size: 7px; margin-top: auto; padding: 9px 12px; }
.mini-products { display: grid; gap: 9px; grid-template-columns: repeat(3, 1fr); padding: 0 13px 13px; }
.mini-products i { aspect-ratio: 2; background: #e3c8ad; }
.mini-products i:nth-child(2) { background: #bdd5cd; }
.mini-products i:nth-child(3) { background: #e7d66f; }

.mini-dashboard {
  background: #f5f2eb;
  color: #12211e;
  display: grid;
  grid-template-columns: 56px 1fr;
  min-height: 270px;
  transform: rotate(1.5deg);
}
.mini-accounts { background:#f7f9fd; color:#17315f; padding:28px; transform:rotate(-1deg); }
.accounts-mark { align-items:center; background:#2157ad; border-radius:50%; color:white; display:flex; font-size:23px; font-weight:800; height:47px; justify-content:center; margin-bottom:26px; width:47px; }
.mini-accounts > small { font-family:var(--mono); font-size:7px; letter-spacing:.13em; }.mini-accounts > strong { display:block; font-size:clamp(27px,3.5vw,48px); letter-spacing:-.065em; line-height:.94; margin:12px 0 25px; }.accounts-field { border:1px solid #b8c5db; color:#8491a7; font-size:8px; padding:12px; }.mini-accounts > span { background:#2157ad; color:white; display:block; font-family:var(--mono); font-size:7px; margin-top:8px; padding:12px; text-align:center; }
.dash-side { align-items: center; background: #0c211d; display: flex; flex-direction: column; gap: 20px; padding-top: 16px; }
.dash-side b { align-items: center; background: var(--orange); border-radius: 50%; color: var(--ink); display: flex; height: 27px; justify-content: center; width: 27px; }
.dash-side i { background: rgba(255,255,255,.26); border-radius: 50%; height: 8px; width: 8px; }
.dash-main { padding: 27px; }
.dash-main > small { color: #6c7b76; font-family: var(--mono); font-size: 7px; }
.dash-main > strong { display: block; font-size: clamp(25px, 3vw, 40px); letter-spacing: -.055em; margin: 12px 0 22px; }
.dash-stats { display: grid; gap: 9px; grid-template-columns: 1fr 1fr; }
.dash-stats span { background: #e6e1d6; color: #69736f; font-size: 8px; padding: 12px; }
.dash-stats b { color: #173d34; display: block; font-size: 19px; margin-top: 5px; }
.dash-chart { align-items: end; border-bottom: 1px solid #aeb8b4; display: flex; gap: 8px; height: 77px; margin-top: 14px; }
.dash-chart i { background: #ed7840; height: 30%; width: 11%; }
.dash-chart i:nth-child(2) { height: 52%; }.dash-chart i:nth-child(3) { height: 42%; }.dash-chart i:nth-child(4) { height: 75%; }.dash-chart i:nth-child(5) { height: 66%; }.dash-chart i:nth-child(6) { height: 92%; }

.mini-phone {
  background: #f9f8f5;
  border: 8px solid #161616;
  border-radius: 28px;
  box-shadow: 0 30px 55px rgba(73,46,0,.24);
  color: #171717;
  height: 315px;
  overflow: hidden;
  position: relative;
  transform: rotate(4deg);
  width: 170px;
  z-index: 1;
}
.phone-speaker { background: #161616; border-radius: 0 0 8px 8px; height: 12px; left: 45px; position: absolute; top: 0; width: 66px; }
.phone-appbar { align-items: center; display: flex; justify-content: space-between; padding: 25px 13px 10px; }
.phone-appbar b { color: #e45b16; font-size: 15px; }.phone-appbar span { font-size: 19px; }
.phone-banner { background: #173d34; color: #fff; font-size: 10px; line-height: 1.2; margin: 0 10px; padding: 17px 12px; }
.phone-banner strong { color: #f6c730; font-size: 23px; letter-spacing: -.06em; }
.phone-grid { display: grid; gap: 5px; grid-template-columns: repeat(2,1fr); padding: 9px; }
.phone-grid i { aspect-ratio: 1.2; background: #e9e3d8; }.phone-grid i:nth-child(2) { background:#cfe0d7; }.phone-grid i:nth-child(3) { background:#efc7af; }.phone-grid i:nth-child(4) { background:#dacfeb; }

.mini-code { background: #0c100f; border: 1px solid #35403d; color: #d3ede2; font-family: var(--mono); padding: 19px; transform: rotate(-1deg); }
.mini-code > div { color: #77827f; display: flex; font-size: 8px; justify-content: space-between; }.mini-code > div i { color:#65d47a; font-style:normal; }
.mini-code pre { font-size: clamp(10px, 1.4vw, 16px); line-height: 2; margin: 28px 0; overflow: hidden; }.mini-code small { border-top: 1px solid #35403d; color:#65d47a; display:block; font-size:8px; padding-top:13px; }

.mini-server { align-items:center; background:#0e3069; color:#fff; display:grid; gap:30px; grid-template-columns:1fr 1fr; padding:30px; transform:rotate(1deg); }
.server-orb { align-items:center; aspect-ratio:1; border:1px solid rgba(255,255,255,.3); border-radius:50%; display:flex; flex-direction:column; justify-content:center; position:relative; }
.server-orb::before { border:8px solid #71d8ff; border-bottom-color:transparent; border-radius:50%; content:""; inset:10px; position:absolute; transform:rotate(35deg); }
.server-orb b { font-size:clamp(30px,4vw,55px); letter-spacing:-.07em; line-height:1; }.server-orb span { font-family:var(--mono); font-size:7px; margin-top:6px; }
.server-lines { display:flex; flex-direction:column; gap:18px; }.server-lines span { align-items:center; border-bottom:1px solid rgba(255,255,255,.18); display:flex; font-family:var(--mono); font-size:7px; gap:9px; padding-bottom:11px; }.server-lines i { background:#79e287; border-radius:50%; height:6px; width:6px; }

.mini-tools { display:grid; gap:9px; grid-template-columns:repeat(2,1fr); transform:rotate(-2deg); }
.mini-tools > div { background:#f7f2ff; color:#442a7b; display:flex; flex-direction:column; min-height:112px; padding:17px; }.mini-tools span { font-family:var(--mono); font-size:20px; font-weight:800; }.mini-tools small { margin-top:auto; }.mini-tools > div:nth-child(2){background:#d5f2e2;color:#175b3b}.mini-tools > div:nth-child(3){background:#ffd8e8;color:#7e2147}.mini-tools > div:nth-child(4){background:#f5df89;color:#674f06}

.mini-player { align-items:center; background:#25101b; color:#fff; display:flex; flex-direction:column; padding:24px; transform:rotate(2deg); }
.album-art { align-items:center; background:radial-gradient(circle at 30% 30%,#ff8fc1,#b52c68 52%,#381020); display:flex; height:115px; justify-content:center; margin-bottom:16px; width:115px; }.album-art span { font-family:var(--serif); font-size:38px; font-style:italic; }
.mini-player > small { color:#cf759d; font-family:var(--mono); font-size:6px; letter-spacing:.14em; }.mini-player > strong { font-size:17px; margin:5px 0 13px; }
.wave { align-items:center; display:flex; gap:4px; height:35px; }.wave i { background:#ec5e9d; height:35%; width:3px; }.wave i:nth-child(2),.wave i:nth-child(7){height:65%}.wave i:nth-child(3),.wave i:nth-child(6){height:90%}.wave i:nth-child(4){height:55%}.wave i:nth-child(5){height:75%}
.player-controls { align-items:center; display:flex; gap:24px; margin-top:12px; }.player-controls b { align-items:center; background:#fff; border-radius:50%; color:#25101b; display:flex; height:35px; justify-content:center; width:35px; }

.mini-food { background:#f8dfbc; color:#3b160d; display:grid; grid-template-columns:.8fr 1.2fr; min-height:250px; transform:rotate(-1deg); }
.food-stamp { align-items:center; background:#243d31; color:#f8dfbc; display:flex; flex-direction:column; font-family:var(--mono); font-size:10px; justify-content:center; letter-spacing:.1em; }.food-stamp b { color:#ff6e4b; font-size:17px; }
.food-card { display:flex; flex-direction:column; padding:28px 23px; }.food-card span { font-family:var(--mono); font-size:7px; text-transform:uppercase; }.food-card strong { font-size:clamp(24px,3vw,39px); letter-spacing:-.06em; line-height:.95; margin-top:23px; }.food-card i { align-self:start; border-bottom:1px solid; font-family:var(--mono); font-size:7px; font-style:normal; margin-top:auto; padding-bottom:3px; }

.mini-medical { align-items:center; background:#eaf7f3; color:#103f35; display:grid; gap:28px; grid-template-columns:.7fr 1.3fr; padding:34px; transform:rotate(1deg); }
.medical-cross { aspect-ratio:1; background:#166c5a; border-radius:50%; position:relative; }.medical-cross i { background:#eaf7f3; left:28%; position:absolute; right:28%; top:46%; height:8%; }.medical-cross i+ i { bottom:28%; height:auto; left:46%; right:auto; top:28%; width:8%; }
.mini-medical small { font-family:var(--mono); font-size:7px; letter-spacing:.12em; }.mini-medical strong { display:block; font-size:clamp(22px,2.7vw,38px); letter-spacing:-.06em; line-height:.96; margin:16px 0 23px; }.mini-medical span { font-size:9px; font-weight:700; }

.mini-finance { background:#132412; color:#fff; min-height:250px; padding:28px; transform:rotate(-1.5deg); }
.finance-head { align-items:center; display:flex; font-family:var(--mono); font-size:7px; justify-content:space-between; }.finance-head b { background:#d7ef4c; border-radius:99px; color:#132412; padding:5px 8px; }
.mini-finance > strong { display:block; font-size:clamp(38px,5vw,70px); letter-spacing:-.07em; line-height:1; margin-top:30px; }.mini-finance > small { color:#a7dd6d; font-size:8px; }
.finance-chart { align-items:end; display:flex; gap:8px; height:70px; margin-top:20px; }.finance-chart i { background:#d7ef4c; height:25%; width:12%; }.finance-chart i:nth-child(2){height:40%}.finance-chart i:nth-child(3){height:36%}.finance-chart i:nth-child(4){height:61%}.finance-chart i:nth-child(5){height:55%}.finance-chart i:nth-child(6){height:83%}.finance-chart i:nth-child(7){height:100%}

.mini-news { background:#f7f1e8; color:#151515; padding:23px; transform:rotate(1deg); }.mini-news-title { font-family:var(--serif); font-size:clamp(24px,3vw,42px); font-weight:900; letter-spacing:-.06em; text-align:center; }.mini-news-rule { border-bottom:3px double #111; margin:10px 0 16px; }.mini-news > small { color:#9a4025; font-family:var(--mono); font-size:6px; }.mini-news > strong { display:block; font-family:var(--serif); font-size:clamp(27px,3.5vw,48px); line-height:.94; margin:16px 0 25px; }.mini-news-cols { display:grid; gap:7px; grid-template-columns:repeat(3,1fr); }.mini-news-cols i { background:#253e38; height:45px; }.mini-news-cols i:nth-child(2){background:#b9a990}.mini-news-cols i:nth-child(3){background:#d97b51}
.mini-insights { background:#fffaf2; color:#2c2119; padding:28px; transform:rotate(-1.5deg); }.mini-insights > small { color:#a34522; font-family:var(--mono); font-size:7px; letter-spacing:.14em; }.mini-insights > strong { display:block; font-family:var(--serif); font-size:clamp(27px,3.4vw,48px); line-height:.94; margin:17px 0 27px; }.mini-insights > div { border-bottom:1px solid #cfc1ae; border-top:1px solid #cfc1ae; display:flex; flex-wrap:wrap; gap:13px; padding:13px 0; }.mini-insights > div span { font-family:var(--mono); font-size:6px; letter-spacing:.08em; }.mini-insights > i { display:block; font-family:var(--mono); font-size:7px; font-style:normal; margin-top:24px; }

.mini-invite { background:#f6ead9; color:#432a1d; padding:28px; transform:rotate(-2deg); }.invite-mark { align-items:center; background:#613d28; border-radius:50%; color:#f6ead9; display:flex; font-weight:800; height:48px; justify-content:center; letter-spacing:-.06em; margin-bottom:30px; width:48px; }.mini-invite > small { font-family:var(--mono); font-size:7px; letter-spacing:.15em; }.mini-invite > strong { display:block; font-size:clamp(29px,3.5vw,48px); letter-spacing:-.07em; line-height:.92; margin:14px 0 30px; }.mini-invite > div:last-child { border-top:1px solid #bda68b; display:flex; font-family:var(--mono); font-size:7px; justify-content:space-between; padding-top:12px; }

.filter-empty {
  border: 1px dashed var(--line-dark);
  color: rgba(13,15,15,.56);
  padding: 40px;
  text-align: center;
}

.research-project {
  background: #121615;
  color: white;
  display: grid;
  gap: 6vw;
  grid-template-columns: .22fr .83fr .95fr;
  min-height: 650px;
  padding: clamp(85px, 11vw, 160px) var(--page-pad);
}

.research-number { color:var(--orange); font-family:var(--mono); font-size:11px; letter-spacing:.12em; }
.research-copy .section-kicker { margin-bottom:38px; }
.research-copy h2 { font-size:clamp(46px,5.5vw,84px); font-weight:620; letter-spacing:-.07em; line-height:.92; margin-bottom:30px; }
.research-copy p { color:rgba(255,255,255,.59); font-size:17px; line-height:1.72; max-width:620px; }
.research-diagram { align-self:center; aspect-ratio:1.15; border:1px solid rgba(255,255,255,.11); position:relative; }
.research-diagram::before,.research-diagram::after { background:rgba(255,255,255,.08); content:""; position:absolute; }.research-diagram::before{height:1px;left:0;right:0;top:50%}.research-diagram::after{bottom:0;left:50%;top:0;width:1px}
.alert-phone { align-items:center; background:#f36b21; border:8px solid #282d2b; border-radius:24px; display:flex; flex-direction:column; height:210px; justify-content:center; left:50%; position:absolute; top:50%; transform:translate(-50%,-50%) rotate(-4deg); width:118px; z-index:2; }.alert-phone span { border:1px solid rgba(255,255,255,.6); border-radius:50%; display:grid; font-size:23px; font-weight:800; height:68px; place-items:center; width:68px; }.alert-phone i { font-family:var(--mono); font-size:6px; font-style:normal; margin-top:16px; text-transform:uppercase; }
.alert-node { background:#202624; border:1px solid rgba(255,255,255,.16); font-family:var(--mono); font-size:8px; letter-spacing:.1em; padding:13px 16px; position:absolute; text-transform:uppercase; z-index:2; }.node-public{left:7%;top:16%}.node-response{bottom:15%;right:5%}
.data-path { border:1px dashed rgba(243,107,33,.6); position:absolute; }.path-one{height:28%;left:17%;top:27%;width:31%}.path-two{bottom:25%;height:27%;right:16%;width:35%}

.verification-note {
  align-items:start;
  background:#e4e9e5;
  display:grid;
  gap:28px;
  grid-template-columns:45px 1fr auto;
  padding:55px var(--page-pad);
}
.verification-mark { align-items:center; border:1px solid #7d8b84; border-radius:50%; display:flex; font-family:var(--serif); font-style:italic; height:34px; justify-content:center; width:34px; }
.verification-note h2 { font-size:21px; letter-spacing:-.03em; margin-bottom:10px; }.verification-note p { color:rgba(13,15,15,.62); font-size:13px; line-height:1.7; margin:0; max-width:850px; }
.verification-date { color:rgba(13,15,15,.68); font-family:var(--mono); font-size:11px; letter-spacing:.1em; padding-top:8px; text-transform:uppercase; }

.work-cta {
  align-items:center;
  background:var(--sage);
  display:flex;
  flex-direction:column;
  padding:clamp(100px,14vw,210px) var(--page-pad);
  text-align:center;
}
.work-cta .section-kicker { margin-bottom:40px; }.work-cta h2 { font-size:clamp(55px,8vw,125px); font-weight:620; letter-spacing:-.08em; line-height:.87; margin-bottom:45px; }.work-cta h2 em { color:var(--orange-text); }

/* About and partnerships */
.about-shell {
  background: var(--ink);
  color: white;
}

.about-hero {
  display: grid;
  gap: 4.5vw;
  grid-template-columns: 1fr .72fr;
  min-height: 100svh;
  padding: calc(var(--header-height) + clamp(55px, 7vw, 100px)) var(--page-pad) clamp(85px, 10vw, 140px);
  position: relative;
}

.about-hero::before {
  background-image:
    linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px);
  background-size: 64px 64px;
  content:"";
  inset:0;
  mask-image:linear-gradient(to bottom,black,transparent 82%);
  pointer-events:none;
  position:absolute;
}

.about-title-block {
  grid-column: 1 / -1;
  position: relative;
  z-index: 1;
}

.about-hero > .breadcrumbs {
  grid-column: 1 / -1;
  margin-bottom: -10px;
  position: relative;
  z-index: 2;
}

.about-title-block .eyebrow {
  gap: 28px;
  margin-bottom: 42px;
}

.about-title-block .eyebrow span + span::before {
  content: "/";
  margin-right: 28px;
  opacity: .35;
}

.about-title-block h1 {
  font-size: clamp(61px, 9.4vw, 150px);
  font-weight: 620;
  letter-spacing: -.082em;
  line-height: .84;
  margin: 0;
}

.about-title-block h1 em {
  color: var(--orange);
}

.founder-portrait {
  align-self: end;
  aspect-ratio: 1.24;
  background: #213d37;
  min-height: 390px;
  overflow: hidden;
  position: relative;
  z-index: 1;
}

.portrait-grid {
  background-image:
    linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);
  background-size: 42px 42px;
  inset:0;
  position:absolute;
}

.portrait-monogram {
  bottom: -9%;
  color: #f36b21;
  font-size: clamp(160px, 22vw, 360px);
  font-weight: 850;
  left: -3%;
  letter-spacing: -.16em;
  line-height: .72;
  position: absolute;
}

.portrait-photo {
  bottom: 0;
  height: 88%;
  object-fit: cover;
  object-position: center top;
  position: absolute;
  right: 6%;
  width: min(62%, 440px);
  z-index: 1;
}

.portrait-orbit {
  border: 1px solid rgba(255,255,255,.24);
  border-radius:50%;
  height:62%;
  position:absolute;
  right:-4%;
  top:-10%;
  width:48%;
  z-index: 2;
}

.portrait-orbit span,
.portrait-orbit i,
.portrait-orbit b {
  border:1px solid rgba(255,255,255,.2);
  border-radius:50%;
  inset:18%;
  position:absolute;
}
.portrait-orbit i { inset:37%; }.portrait-orbit b { background:#d7ef4c;border:0;height:9px;left:13%;top:63%;width:9px; }

.portrait-label {
  display:flex;
  font-family:var(--mono);
  font-size:7px;
  justify-content:space-between;
  left:22px;
  letter-spacing:.12em;
  position:absolute;
  right:22px;
  top:20px;
  z-index: 3;
}

.portrait-role {
  bottom:22px;
  font-family:var(--mono);
  font-size:8px;
  letter-spacing:.09em;
  line-height:1.8;
  position:absolute;
  right:22px;
  text-align:right;
  text-transform:uppercase;
  z-index: 3;
}

.not-found {
  align-items: flex-start;
  background: var(--ink);
  color: white;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 100svh;
  padding: clamp(28px, 5vw, 76px) var(--page-pad) clamp(70px, 10vw, 140px);
}

.not-found > div {
  max-width: 950px;
}

.not-found .section-kicker {
  margin-bottom: 32px;
}

.not-found h1 {
  font-size: clamp(58px, 9vw, 140px);
  font-weight: 620;
  letter-spacing: -.08em;
  line-height: .88;
  margin-bottom: 30px;
}

.not-found p {
  color: rgba(255, 255, 255, .64);
  font-size: 18px;
  margin-bottom: 32px;
}

.about-introduction {
  align-self:end;
  border-top:1px solid var(--line-light);
  padding-top:30px;
  position:relative;
  z-index:1;
}

.about-introduction p {
  color:rgba(255,255,255,.58);
  font-size:16px;
  line-height:1.75;
  max-width:650px;
}

.about-introduction .lead {
  color:white;
  font-size:clamp(21px,2vw,31px);
  letter-spacing:-.035em;
  line-height:1.42;
}

.signature-line {
  align-items:center;
  display:flex;
  gap:18px;
  margin-top:34px;
}
.signature-line span { color:var(--orange); font-family:var(--serif); font-size:33px; font-style:italic; font-weight:700; }.signature-line i { color:rgba(255,255,255,.7); font-family:var(--mono); font-size:11px; font-style:normal; letter-spacing:.08em; text-transform:uppercase; }

.founder-principle {
  background:var(--paper);
  color:var(--ink);
  padding:clamp(100px,13vw,190px) var(--page-pad);
}
.founder-principle .section-kicker { margin-bottom:clamp(45px,7vw,90px); }
.founder-principle blockquote { font-size:clamp(48px,7vw,108px); font-weight:610; letter-spacing:-.075em; line-height:.95; margin-bottom:50px; max-width:1400px; }
.founder-principle blockquote em { color:var(--orange-text); }
.founder-principle > p { border-top:1px solid var(--line-dark); color:rgba(13,15,15,.56); margin:0 0 0 auto; max-width:600px; padding-top:20px; }

.timeline-section {
  background:#17211f;
  color:white;
  display:grid;
  gap:10vw;
  grid-template-columns:.72fr 1.28fr;
  padding:clamp(100px,13vw,190px) var(--page-pad);
}

.timeline-heading {
  align-self:start;
  position:sticky;
  top:120px;
}
.timeline-heading .section-kicker { margin-bottom:40px; }.timeline-heading h2 { font-size:clamp(46px,5vw,78px); font-weight:620; letter-spacing:-.07em; line-height:.92; }

.timeline-item {
  border-top:1px solid rgba(255,255,255,.15);
  display:grid;
  gap:30px;
  grid-template-columns:100px 1fr;
  padding:32px 0 42px;
}
.timeline-item time { color:var(--orange); font-family:var(--mono); font-size:14px; }.timeline-item > div { position:relative; }.timeline-item > div > span { color:rgba(255,255,255,.28); font-family:var(--mono); font-size:8px; position:absolute; right:0; top:7px; }
.timeline-item h3 { font-size:clamp(27px,2.5vw,39px); font-weight:620; letter-spacing:-.045em; margin-bottom:15px; }.timeline-item p { color:rgba(255,255,255,.56); line-height:1.7; margin:0; max-width:620px; }

.capabilities-section {
  background:var(--ivory);
  color:var(--ink);
  display:grid;
  gap:8vw;
  grid-template-columns:.66fr 1.34fr;
  padding:clamp(100px,13vw,190px) var(--page-pad);
}
.capabilities-heading { align-self:start; position:sticky; top:120px; }.capabilities-heading .section-kicker { margin-bottom:38px; }.capabilities-heading h2 { font-size:clamp(49px,5.4vw,86px); font-weight:620; letter-spacing:-.075em; line-height:.9; margin-bottom:35px; }.capabilities-heading h2 em { color:var(--orange-text); }.capabilities-heading p { color:rgba(13,15,15,.6); line-height:1.72; max-width:500px; }
.capabilities-grid { display:grid; gap:1px; grid-template-columns:repeat(2,1fr); background:rgba(13,15,15,.16); }
.capability-card { background:var(--ivory); min-height:290px; padding:clamp(25px,3vw,45px); }.capability-card > span { color:var(--orange-text); font-family:var(--mono); font-size:11px; }.capability-card h3 { font-size:clamp(25px,2.3vw,37px); font-weight:620; letter-spacing:-.05em; margin:48px 0 16px; }.capability-card p { color:rgba(13,15,15,.6); font-size:14px; line-height:1.7; margin:0; }

.partner-section {
  background:var(--orange);
  color:#1b100b;
  padding:clamp(100px,13vw,190px) var(--page-pad) 0;
}
.partner-heading { display:grid; gap:4vw; grid-template-columns:.65fr 1.35fr; margin-bottom:clamp(70px,9vw,130px); }
.partner-availability { align-items:center; display:flex; font-family:var(--mono); font-size:11px; gap:10px; letter-spacing:.1em; text-transform:uppercase; }.partner-availability i { background:#173d34; border-radius:50%; box-shadow:0 0 0 5px rgba(23,61,52,.12); height:7px; width:7px; }
.partner-heading h2 { font-size:clamp(64px,9vw,142px); font-weight:620; grid-column:2; letter-spacing:-.083em; line-height:.83; margin:0; }.partner-heading h2 em { color:#fff0e6; }.partner-heading > p { border-top:1px solid rgba(27,16,11,.25); color:rgba(27,16,11,.68); font-size:17px; grid-column:2; line-height:1.7; margin:0; max-width:680px; padding-top:24px; }

.partnership-grid {
  border-top:1px solid rgba(27,16,11,.25);
  display:grid;
  grid-template-columns:repeat(4,1fr);
}
.partnership-card { border-right:1px solid rgba(27,16,11,.25); display:flex; flex-direction:column; min-height:430px; padding:34px clamp(20px,2.4vw,38px) 42px; }.partnership-card:first-child { padding-left:0; }.partnership-card:last-child { border-right:0; }
.partnership-number { font-family:var(--mono); font-size:11px; }.partnership-card h3 { font-size:clamp(26px,2.3vw,38px); font-weight:620; letter-spacing:-.05em; line-height:1.05; margin:70px 0 20px; }.partnership-card p { color:rgba(27,16,11,.64); font-size:14px; line-height:1.7; }.partnership-card a { align-items:center; display:flex; font-size:12px; font-weight:750; justify-content:space-between; margin-top:auto; padding-top:25px; }.partnership-card a span { border:1px solid; border-radius:50%; display:grid; height:30px; place-items:center; transition:background 180ms ease,color 180ms ease; width:30px; }.partnership-card a:hover span { background:#1b100b;color:var(--orange-bright); }

.contact-panel {
  background:var(--ink);
  color:white;
  display:grid;
  gap:8vw;
  grid-template-columns:.75fr 1.25fr;
  margin:clamp(60px,8vw,110px) calc(var(--page-pad) * -1) 0;
  padding:clamp(60px,8vw,110px) var(--page-pad);
}
.contact-copy .section-kicker { margin-bottom:35px; }.contact-copy h3 { font-size:clamp(38px,4vw,64px); font-weight:620; letter-spacing:-.065em; line-height:.95; margin-bottom:28px; }.contact-copy p { color:rgba(255,255,255,.53); line-height:1.7; max-width:500px; }
.contact-actions { border-top:1px solid var(--line-light); }.contact-actions a { align-items:center; border-bottom:1px solid var(--line-light); display:grid; gap:25px; grid-template-columns:110px 1fr auto; padding:28px 0; transition:padding 180ms ease; }.contact-actions a:hover { padding-left:12px; }.contact-actions small { color:rgba(255,255,255,.7); font-family:var(--mono); font-size:11px; letter-spacing:.1em; text-transform:uppercase; }.contact-actions strong { font-size:clamp(17px,1.9vw,28px); font-weight:550; letter-spacing:-.035em; }.contact-actions span { color:var(--orange); }

/* Footer */
.site-footer {
  background:#080a0a;
  color:white;
  padding:clamp(70px,9vw,125px) var(--page-pad) 28px;
}
.footer-top { align-items:start; display:grid; gap:7vw; grid-template-columns:1fr 1fr; padding-bottom:clamp(60px,7vw,95px); }.footer-brand { align-items:center; display:flex; font-size:clamp(25px,3vw,46px); font-weight:620; gap:18px; letter-spacing:-.05em; }.footer-mark { align-items:center; background:var(--orange); border-radius:50%; color:var(--ink); display:flex; font-size:15px; height:48px; justify-content:center; letter-spacing:-.07em; width:48px; }.footer-top p { color:rgba(255,255,255,.48); font-size:16px; line-height:1.72; margin:0; max-width:550px; }
.footer-links { border-top:1px solid var(--line-light); display:grid; grid-template-columns:repeat(3,1fr); }.footer-links > div { border-right:1px solid var(--line-light); display:flex; flex-direction:column; gap:13px; min-height:220px; padding:30px clamp(20px,3vw,45px); }.footer-links > div:first-child { padding-left:0; }.footer-links > div:last-child { border-right:0; }.footer-links a,.footer-links span:not(.footer-label) { color:rgba(255,255,255,.7); font-size:13px; }.footer-links a:hover { color:white; }.footer-label { color:var(--orange); font-family:var(--mono); font-size:11px; letter-spacing:.12em; margin-bottom:17px; text-transform:uppercase; }
.footer-bottom { align-items:center; border-top:1px solid var(--line-light); color:rgba(255,255,255,.7); display:flex; font-family:var(--mono); font-size:11px; justify-content:space-between; letter-spacing:.09em; padding-top:25px; text-transform:uppercase; }.footer-bottom a:hover { color:white; }

@media (max-width: 1180px) {
  .home-hero { grid-template-columns:1.15fr .85fr; }
  .ecosystem-orbit { transform:scale(.9); }
  .orbit-node { min-width:108px; padding:13px 14px; }
  .feature-commerce { grid-template-columns:.8fr 1.2fr; }
  .portfolio-card { min-height:720px; }.portfolio-visual { flex-basis:330px; }
  .partnership-grid { grid-template-columns:repeat(2,1fr); }.partnership-card:nth-child(2){border-right:0}.partnership-card:nth-child(-n+2){border-bottom:1px solid rgba(27,16,11,.25)}.partnership-card:nth-child(3){padding-left:0}
}

@media (max-width: 900px) {
  :root { --header-height:78px; }
  .js .menu-toggle { display:block; }
  .js .primary-nav {
    align-items:stretch;
    background:var(--ink);
    color:white;
    flex-direction:column;
    inset:0;
    justify-content:center;
    opacity:0;
    padding:100px var(--page-pad) 50px;
    pointer-events:none;
    position:fixed;
    transform:translateY(-10px);
    transition:opacity 180ms ease,transform 180ms ease;
    visibility:hidden;
  }
  .js .primary-nav.is-open { opacity:1;pointer-events:auto;transform:translateY(0);visibility:visible; }
  .js .nav-links { align-items:stretch; flex-direction:column; gap:0; }
  .js .nav-links a { border-bottom:1px solid rgba(255,255,255,.16); font-size:clamp(36px,10vw,65px); font-weight:600; letter-spacing:-.06em; padding:12px 0; }
  .js .nav-links a::after { display:none; }
  .js .nav-cta { align-self:flex-start; border-color:rgba(255,255,255,.45); margin-top:25px; }
  html:not(.js) .site-header { flex-wrap: wrap; height: auto; padding-bottom: 14px; padding-top: 14px; position: relative; }
  html:not(.js) .primary-nav { flex-wrap: wrap; gap: 12px; margin-top: 12px; width: 100%; }
  html:not(.js) .nav-links { flex-wrap: wrap; gap: 20px; }
  html:not(.js) .nav-cta { display: none; }
  .site-header.is-scrolled .menu-toggle[aria-expanded="true"] { color:white; }
  .home-hero { grid-template-columns:1fr; min-height:auto; padding-bottom:110px; }
  .hero-copy { padding:55px 0 35px; }
  .hero-copy h1 { font-size:clamp(60px,11.5vw,97px); max-width:800px; }
  .ecosystem-orbit { justify-self:center; margin:0 auto 125px; max-width:560px; transform:none; }
  .hero-proof { grid-template-columns:repeat(3,1fr); }
  .hero-proof > div { align-items:flex-start; flex-direction:column; gap:7px; }
  .manifesto-layout,.disciplines,.timeline-section,.capabilities-section { grid-template-columns:1fr; }
  .manifesto-copy { margin-left:20%; }
  .credibility-grid { grid-template-columns:1fr; }.credibility-grid a { border-bottom:1px solid var(--line-dark);border-right:0;min-height:220px;padding:28px 0 }.credibility-grid a:last-child{border-bottom:0}.credibility-grid strong{margin-top:32px}
  .feature-commerce { grid-template-columns:1fr; }
  .commerce-window { margin:0 0 0 8vw; order:-1; transform:translateX(4%); }
  .featured-pair { grid-template-columns:1fr; }
  .disciplines-intro,.timeline-heading,.capabilities-heading { position:static; }
  .discipline-item { grid-template-columns:45px .9fr 1.1fr; }
  .work-hero-top { grid-template-columns:1fr; }.work-hero-top > p { max-width:620px;margin-left:auto; }
  .portfolio-toolbar { align-items:start;flex-direction:column; }.filter-list { justify-content:flex-start; }
  .portfolio-grid { grid-template-columns:1fr; }.portfolio-card { min-height:0; }.portfolio-visual { flex-basis:390px; }
  .research-project { grid-template-columns:55px 1fr; }.research-diagram { grid-column:2;max-width:550px;width:100%; }
  .verification-note { grid-template-columns:40px 1fr; }.verification-date { grid-column:2; }
  .about-hero { grid-template-columns:1fr; }.about-title-block { grid-column:1; }.founder-portrait { max-width:760px;width:100%; }.about-introduction { margin-left:20%; }
  .partner-heading { grid-template-columns:1fr; }.partner-heading h2,.partner-heading > p { grid-column:1; }.partner-availability { margin-bottom:20px; }
  .contact-panel { grid-template-columns:1fr; }
}

@media (max-width: 640px) {
  :root { --page-pad:20px; }
  .site-header { height:72px; }.site-header.is-scrolled { height:66px; }.brand-name { display:none; }.brand-mark { height:39px;width:39px; }
  .home-hero { padding-top:100px; }.hero-copy { padding-top:35px; }.hero-copy .eyebrow { margin-bottom:31px; }.hero-copy h1 { font-size:clamp(51px,16.5vw,76px); letter-spacing:-.072em; }.hero-intro { font-size:15px;line-height:1.65; }
  .hero-actions { align-items:stretch; flex-direction:column; }.hero-actions .button { width:100%; }
  .ecosystem-orbit { margin-top:30px;max-width:430px; }.orbit-node { min-width:92px;padding:10px 11px; }.orbit-node .node-code { margin-bottom:10px; }.orbit-node strong { font-size:11px; }.orbit-node small { font-size:7px; }.node-commerce{left:-2%}.node-data{right:-3%}.node-media{left:1%}.node-cloud{right:0}
  .hero-proof { left:20px;right:20px; }.hero-proof > div { min-height:82px;padding:12px 10px; }.hero-proof > div:first-child{padding-left:0}.hero-proof strong { font-size:16px; }.hero-proof span { font-size:6px; }
  .manifesto,.featured-work,.disciplines,.home-partner,.portfolio-section,.research-project,.work-cta,.founder-principle,.timeline-section,.capabilities-section { padding-left:20px;padding-right:20px; }
  .manifesto-layout { gap:45px; }.manifesto-copy,.about-introduction { margin-left:0; }.display-heading { font-size:clamp(48px,14vw,70px); }
  .section-heading-row { align-items:start;flex-direction:column;gap:27px; }.section-heading-row .button { width:100%; }
  .feature-copy { padding:30px 24px 38px; }.feature-commerce { min-height:0; }.commerce-window { border-radius:12px 0 0 12px;margin-left:20px;min-height:330px; }.shop-nav { padding:13px; }.shop-nav b{font-size:12px;margin-right:12px}.shop-nav i{margin-left:8px;font-size:7px}.shop-hero{min-height:170px;padding:20px}.shop-products{grid-template-columns:1fr 1fr}.shop-products span:last-child{display:none}
  .news-preview,.dev-preview { margin:20px 20px 0;min-height:300px; }.news-preview { padding:17px; }.news-grid { gap:11px; }.news-image { min-height:180px; }.feature-copy.compact { padding-top:30px; }
  .disciplines { gap:60px; }.discipline-item { gap:14px;grid-template-columns:35px 1fr;padding:28px 0 34px; }.discipline-item p,.tag-list { grid-column:2; }.tag-list { margin-top:7px; }
  .work-hero { padding-left:20px;padding-right:20px; }.work-hero h1 { font-size:clamp(58px,18vw,90px); }.work-hero .eyebrow { align-items:flex-start;flex-direction:column;gap:6px; }.work-hero .eyebrow span + span::before{display:none}.work-ledger { grid-template-columns:repeat(2,1fr); }.work-ledger > div:nth-child(2){border-right:0}.work-ledger > div:nth-child(-n+2){border-bottom:1px solid var(--line-dark)}.work-ledger > div:nth-child(3){padding-left:0}.work-ledger span{font-size:28px}
  .portfolio-toolbar h2 { font-size:50px; }.filter-list { flex-wrap:nowrap;margin-right:-20px;max-width:none;overflow-x:auto;padding:2px 20px 8px 0;width:calc(100% + 20px); }.filter-list button{flex:0 0 auto}.portfolio-grid{gap:14px}.portfolio-visual{flex-basis:300px;padding:25px}.portfolio-content{padding:28px 24px 32px}.portfolio-content h3{font-size:39px}.portfolio-content>p{font-size:14px}.mini-server,.mini-medical{gap:18px;padding:22px}.mini-tools>div{min-height:95px}.portfolio-card{min-height:670px}
  .research-project { gap:25px;grid-template-columns:1fr; }.research-number{margin-bottom:10px}.research-diagram{grid-column:1}.research-copy h2{font-size:49px}.verification-note{padding:40px 20px;grid-template-columns:1fr}.verification-date{grid-column:1}
  .about-hero { padding-left:20px;padding-right:20px; }.about-title-block .eyebrow { align-items:flex-start;flex-direction:column;gap:6px; }.about-title-block .eyebrow span+span::before{display:none}.about-title-block h1 { font-size:clamp(55px,17vw,83px); }.founder-portrait{min-height:330px}.portrait-monogram{font-size:55vw}.portrait-role{font-size:6px}.about-introduction .lead{font-size:22px}
  .founder-principle blockquote { font-size:clamp(44px,13vw,68px); }.timeline-section,.capabilities-section{gap:60px}.timeline-item{gap:15px;grid-template-columns:65px 1fr}.timeline-item p{font-size:14px}.capabilities-grid{grid-template-columns:1fr}.capability-card{min-height:240px}
  .partner-section{padding-left:20px;padding-right:20px}.partner-heading h2{font-size:clamp(61px,17vw,88px)}.partnership-grid{grid-template-columns:1fr}.partnership-card{border-bottom:1px solid rgba(27,16,11,.25)!important;border-right:0;min-height:340px;padding:28px 0 32px!important}.partnership-card:last-child{border-bottom:0!important}.partnership-card h3{margin-top:45px}.contact-panel{margin-left:-20px;margin-right:-20px;padding-left:20px;padding-right:20px}.contact-actions a{gap:12px;grid-template-columns:1fr auto}.contact-actions small{grid-column:1/-1}.contact-actions strong{font-size:17px}
  .site-footer{padding-left:20px;padding-right:20px}.footer-top,.footer-links{grid-template-columns:1fr}.footer-brand{font-size:26px}.footer-links>div{border-bottom:1px solid var(--line-light);border-right:0;min-height:0;padding:28px 0}.footer-links>div:last-child{border-bottom:0}.footer-bottom{align-items:flex-start;flex-direction:column;gap:12px}
}

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