/* Project pages: operating manual meets institutional field report. */

.project-page {
  --project: #4162ff;
  --project-rgb: 65, 98, 255;
  --project-on: #ebe9df;
  min-height: 100%;
  background: var(--paper);
  color: var(--ink);
}
.project-page--cortex { --project: #b8c1b7; --project-rgb: 184, 193, 183; --project-on: #121812; }
.project-page--pigeon { --project: #d3ff52; --project-rgb: 211, 255, 82; --project-on: #121812; }
.project-page--bremus { --project: #ef4e3a; --project-rgb: 239, 78, 58; --project-on: #ebe9df; }
.project-page--fastway-sba { --project: #58ad50; --project-rgb: 88, 173, 80; --project-on: #121812; }
.project-page--reverse-consolidation { --project: #ef6664; --project-rgb: 239, 102, 100; --project-on: #121812; }
.project-page--beyondmca { --project: #f2ad00; --project-rgb: 242, 173, 0; --project-on: #121812; }
.project-page--line-of-credit-depot { --project: #4f8ee6; --project-rgb: 79, 142, 230; --project-on: #121812; }

.project-progress { position: fixed; z-index: 100; top: 0; left: 0; width: 100%; height: 3px; background: var(--project); transform: scaleX(0); transform-origin: left; }
.project-nav { position: fixed; z-index: 90; inset: 0 0 auto; display: grid; grid-template-columns: 1.2fr 1fr auto auto auto; min-height: 4.5rem; border-bottom: 1px solid var(--line); background: color-mix(in srgb, var(--paper) 90%, transparent); backdrop-filter: blur(16px); }
.project-nav > * { display: flex; align-items: center; padding: 0 var(--pad); border-right: 1px solid var(--line); }
.project-brand { font-weight: 780; letter-spacing: -0.045em; }
.project-brand b { padding: 0 0.35rem; color: var(--flare); }
.project-context { gap: 0.8rem; color: var(--muted); font: 0.66rem var(--mono); }
.project-context strong { color: var(--ink); font-weight: 500; }
.project-nav__link { font-size: 0.82rem; font-weight: 650; }
.project-nav__link:last-child { border-right: 0; color: var(--dark); background: var(--project); }

.case-hero { position: relative; display: grid; grid-template-columns: 1.1fr 0.9fr; grid-template-rows: auto 1fr auto; min-height: 100svh; padding: calc(4.5rem + 2.5vw) var(--pad) var(--pad); overflow: hidden; border-bottom: 1px solid var(--line); }
.project-particles { position: absolute; inset: 4.5rem 0 0; width: 100%; height: calc(100% - 4.5rem); pointer-events: none; opacity: 0.88; }
.case-hero__meta { position: relative; z-index: 2; grid-column: 1 / -1; display: flex; justify-content: space-between; padding-bottom: 1rem; border-bottom: 1px solid var(--line); font: 0.68rem var(--mono); }
.case-hero__copy { position: relative; z-index: 3; align-self: center; padding: 4rem 2rem 3rem 0; }
.case-hero h1 { margin: 0; font-size: clamp(5.5rem, 11vw, 12rem); line-height: 0.77; letter-spacing: -0.075em; font-variation-settings: "wdth" 88; text-transform: uppercase; }
.case-hero__lead { max-width: 43rem; margin: 2.5rem 0 0; font-size: clamp(1.3rem, 2.2vw, 2.6rem); font-weight: 270; line-height: 1.12; }
.case-hero__jump { display: flex; justify-content: space-between; width: min(20rem, 100%); margin-top: 3rem; padding: 0.8rem 0; border-top: 1px solid var(--ink); border-bottom: 1px solid var(--ink); font: 0.7rem var(--mono); }
.case-hero__jump span { transition: transform 0.25s var(--ease); }
.case-hero__jump:hover span { transform: translateY(0.3rem); }
.case-hero__links { display: grid; grid-template-columns: 0.78fr 1.22fr; width: min(36rem, 100%); margin-top: 3rem; border-top: 1px solid var(--ink); border-bottom: 1px solid var(--ink); }
.case-hero__links .case-hero__jump { width: auto; margin: 0; padding-right: 1rem; border: 0; border-right: 1px solid var(--ink); }
.case-hero__live { display: grid; gap: 0.2rem; padding: 0.7rem 1rem; font: 0.62rem var(--mono); transition: color 0.25s var(--ease), background 0.25s var(--ease); }
.case-hero__live span { color: var(--muted); font-size: 0.52rem; }
.case-hero__live b { overflow-wrap: anywhere; font-weight: 500; }
.case-hero__live:hover { color: var(--project-on); background: var(--project); }
.case-hero__live:hover span { color: inherit; }
.case-hero__graphic { position: relative; z-index: 2; align-self: center; justify-self: end; width: min(42vw, 42rem); aspect-ratio: 1; color: var(--project-on); background: var(--project); transition: border-radius 0.6s var(--ease), transform 0.6s var(--ease); }
.case-hero:hover .case-hero__graphic { border-radius: 50%; transform: rotate(1deg) scale(0.98); }
.case-hero__foot { position: relative; z-index: 2; grid-column: 1 / -1; display: flex; justify-content: space-between; padding-top: 1rem; border-top: 1px solid var(--line); font: 0.64rem var(--mono); }

.graphic-cerberus { display: grid; grid-template-columns: repeat(3, 1fr); align-items: center; gap: 1px; padding: 11%; background: var(--dark); }
.graphic-cerberus::before { content: ""; position: absolute; inset: 8%; border: 1px solid rgba(var(--project-rgb),0.65); border-radius: 50%; animation: spin 18s linear infinite; }
.graphic-cerberus span { position: relative; z-index: 2; display: grid; place-items: center; aspect-ratio: 0.72; border: 1px solid var(--project); color: var(--ink); background: rgba(var(--project-rgb),0.12); font: 0.68rem var(--mono); }
.graphic-cerberus span:nth-child(2) { transform: translateY(-8%); background: var(--project); color: var(--project-on); }
.graphic-cerberus i { position: absolute; right: 12%; bottom: 10%; width: 1rem; aspect-ratio: 1; border-radius: 50%; background: var(--acid); box-shadow: -9rem -14rem 0 var(--flare); }

.graphic-cortex { overflow: hidden; border-radius: 50%; color: var(--light); background: var(--dark); }
.graphic-cortex svg { position: absolute; inset: 8%; width: 84%; height: 84%; }
.graphic-cortex path { fill: rgba(var(--project-rgb),0.16); stroke: var(--project); stroke-width: 3; }
.graphic-cortex path:last-of-type { fill: none; stroke: var(--light); }
.graphic-cortex circle { fill: var(--acid); stroke: var(--dark); stroke-width: 4; }
.graphic-cortex span { position: absolute; padding: 0.55rem; border: 1px solid var(--light); background: var(--dark); font: 0.58rem var(--mono); }
.graphic-cortex span:nth-of-type(1) { top: 9%; right: 8%; }.graphic-cortex span:nth-of-type(2) { bottom: 9%; left: 8%; color: var(--dark); background: var(--acid); }

.graphic-pigeon { display: grid; place-items: center; background: var(--project); }
.graphic-pigeon__phone { position: relative; display: grid; grid-template-rows: auto repeat(3, 1fr) auto; width: 48%; height: 82%; padding: 1rem; border: 2px solid var(--dark); border-radius: 2.2rem; background: var(--light); transform: rotate(4deg); }
.graphic-pigeon__phone > small { padding-bottom: 0.7rem; border-bottom: 1px solid var(--dark); font: 0.55rem var(--mono); }
.graphic-pigeon__phone span { align-self: center; padding: 0.7rem; border: 1px solid var(--dark); background: var(--fog); font: 0.57rem var(--mono); }
.graphic-pigeon__phone span:nth-of-type(2) { margin-left: 12%; color: var(--light); background: var(--signal); }.graphic-pigeon__phone span:nth-of-type(3) { margin-right: 9%; background: var(--acid); }
.graphic-pigeon__phone b { align-self: end; padding-top: 0.7rem; border-top: 1px solid var(--dark); font: 0.52rem var(--mono); }

.graphic-bremus { display: grid; grid-template-columns: repeat(2, 1fr); grid-template-rows: repeat(2, 1fr); gap: 1px; padding: 9%; background: var(--dark); transform: rotate(-2deg); }
.graphic-bremus span { display: flex; flex-direction: column; justify-content: space-between; padding: 1rem; color: var(--dark); background: var(--light); }
.graphic-bremus small { font: 0.53rem var(--mono); color: #666a61; }.graphic-bremus b { font-size: clamp(1rem, 2vw, 1.8rem); line-height: 1; }
.graphic-bremus span:nth-child(2) b { color: var(--signal); }.graphic-bremus span:nth-child(3) b { color: var(--flare); }.graphic-bremus span:nth-child(4) { background: var(--acid); }

.project-page--reverse-consolidation .case-hero h1,
.project-page--line-of-credit-depot .case-hero h1 { font-size: clamp(3.6rem, 7.4vw, 8rem); line-height: 0.82; letter-spacing: -0.06em; }

.brand-graphic__mast { position: absolute; z-index: 5; inset: 0 0 auto; display: flex; align-items: center; justify-content: space-between; height: 20%; padding: 3.2% 4.5%; border-bottom: 1px solid rgba(18,24,18,0.16); background: #fff; }
.brand-graphic__mast img { display: block; max-width: 47%; max-height: 82%; object-fit: contain; object-position: left center; }
.brand-graphic__mast span { color: #162e51; font: 0.48rem var(--mono); }
:is(.project-page--fastway-sba, .project-page--reverse-consolidation, .project-page--beyondmca, .project-page--line-of-credit-depot) .case-hero:hover .case-hero__graphic { border-radius: 0.35rem; transform: translateY(-0.35rem); }

.graphic-fastway-sba { overflow: hidden; color: #162e51; background: #f4f6fb; border: 1px solid rgba(22,46,81,0.2); }
.fastway-brand__mast img { width: 29%; }
.fastway-brand__field { position: absolute; inset: 20% 0 9%; overflow: hidden; }
.fastway-brand__field::before { content: ""; position: absolute; top: -34%; right: -5%; width: 75%; aspect-ratio: 1; border-radius: 50%; background: rgba(190,203,224,0.22); box-shadow: 0 0 0 4rem rgba(190,203,224,0.1); }
.fastway-brand__route { position: absolute; z-index: 3; top: 11%; left: 7%; display: flex; align-items: center; width: 57%; }
.fastway-brand__route span { padding-bottom: 0.35rem; border-bottom: 2px solid #f14624; font: 0.46rem var(--mono); }
.fastway-brand__route i { flex: 1; height: 1px; margin: 0 0.45rem; background: #162e51; }
.fastway-brand__cards article { position: absolute; right: 7%; top: 27%; display: grid; width: 60%; min-height: 42%; padding: 5%; border: 1px solid rgba(22,46,81,0.22); background: #fff; box-shadow: 0 0.65rem 1.2rem rgba(22,46,81,0.14); transform: rotate(2deg); }
.fastway-brand__cards article:first-child { right: 12%; top: 20%; transform: rotate(-3deg); opacity: 0.72; }
.fastway-brand__cards small { font: 0.47rem var(--mono); }
.fastway-brand__cards b { align-self: center; font-size: clamp(1.2rem, 3.2vw, 2.8rem); line-height: 0.9; letter-spacing: -0.05em; }
.fastway-brand__cards em { align-self: end; color: #287523; font: 0.48rem var(--mono); font-style: normal; }
.fastway-brand__cards em i { display: inline-block; width: 0.5rem; aspect-ratio: 1; margin-right: 0.25rem; border-radius: 50%; background: #58ad50; }
.fastway-brand__bar, .reverse-brand__bar, .locd-brand__bar { position: absolute; z-index: 6; inset: auto 0 0; display: flex; align-items: center; justify-content: space-between; height: 9%; padding: 0 4.5%; font: 0.48rem var(--mono); }
.fastway-brand__bar { color: #162e51; background: #f14624; }
.fastway-brand__bar b { font-size: 1.25rem; font-weight: 500; }

.graphic-reverse-consolidation { overflow: hidden; color: #253746; background: #9bb6c7; }
.reverse-brand__mast img { width: 37%; }
.reverse-brand__mast span { color: #3e6683; }
.reverse-brand__field { position: absolute; inset: 20% 0 9%; }
.reverse-brand__field::before { content: ""; position: absolute; inset: 0; background: linear-gradient(160deg, transparent 54%, rgba(255,255,255,0.2)); }
.reverse-brand__inputs { position: absolute; z-index: 2; top: 21%; left: 6%; display: grid; gap: 0.55rem; width: 29%; }
.reverse-brand__inputs span { display: flex; justify-content: space-between; padding: 0.65rem 0.55rem; border-left: 0.28rem solid #e96969; background: rgba(255,255,255,0.92); box-shadow: 0.35rem 0.35rem 0 rgba(62,102,131,0.18); transform: translateX(var(--shift, 0)); }
.reverse-brand__inputs span:nth-child(2) { --shift: 8%; }.reverse-brand__inputs span:nth-child(3) { --shift: 16%; }
.reverse-brand__inputs small, .reverse-brand__inputs b { font: 0.43rem var(--mono); }
.reverse-brand__inputs b { color: #3e6683; }
.reverse-brand__merge { position: absolute; top: 29%; left: 37%; width: 15%; height: 33%; }
.reverse-brand__merge i { position: absolute; left: 0; width: 100%; height: 1px; background: #253746; transform-origin: right; }
.reverse-brand__merge i:first-child { top: 0; transform: rotate(24deg); }.reverse-brand__merge i:nth-child(2) { top: 48%; }.reverse-brand__merge i:nth-child(3) { bottom: 0; transform: rotate(-24deg); }
.reverse-brand__merge b { position: absolute; top: 37%; right: -0.6rem; font-size: 1.2rem; font-weight: 400; }
.reverse-brand__ledger { position: absolute; z-index: 2; top: 14%; right: 7%; display: grid; align-content: center; width: 40%; height: 67%; padding: 5%; border: 2px solid #253746; background: #fff; box-shadow: 0.75rem 0.75rem 0 #e96969; }
.reverse-brand__ledger small, .reverse-brand__ledger > b, .reverse-brand__ledger span { font: 0.46rem var(--mono); }
.reverse-brand__ledger strong { padding: 7% 0; color: #e96969; font-size: clamp(2.8rem, 7vw, 6rem); line-height: 0.75; letter-spacing: -0.07em; }
.reverse-brand__ledger span { align-self: end; margin-top: 9%; padding-top: 6%; border-top: 1px solid rgba(37,55,70,0.35); color: #3e6683; }
.reverse-brand__bar { color: #fff; background: #3e6683; }
.reverse-brand__bar i { width: 0.55rem; aspect-ratio: 1; border: 2px solid #fff; border-radius: 50%; background: #e96969; }

.graphic-beyondmca { overflow: hidden; color: #fff; background: #132440; }
.beyond-brand__mast { height: 18%; }
.beyond-brand__mast img { width: 39%; }
.beyond-brand__mast span { color: #132440; }
.beyond-brand__field { position: absolute; inset: 18% 0 0; overflow: hidden; background: linear-gradient(160deg, #132440 48%, #31332f 100%); }
.beyond-brand__field svg { position: absolute; inset: 0; width: 100%; height: 100%; }
.beyond-brand__field path { fill: none; stroke: rgba(255,180,0,0.44); stroke-width: 2; }
.beyond-brand__field path:nth-child(2) { stroke: rgba(149,171,200,0.44); }.beyond-brand__field path:nth-child(3) { stroke: rgba(255,255,255,0.18); }
.beyond-brand__field > small { position: absolute; z-index: 2; top: 10%; left: 8%; color: #ffb400; font: 0.48rem var(--mono); }
.beyond-brand__field > strong { position: absolute; z-index: 2; top: 21%; left: 8%; font: 700 clamp(2.6rem, 6vw, 5.5rem)/0.83 Georgia, serif; letter-spacing: -0.06em; }
.beyond-brand__field > strong em { color: #ffb400; font-weight: 700; }
.beyond-brand__note { position: absolute; z-index: 3; right: 7%; bottom: 12%; display: flex; align-items: center; gap: 0.45rem; padding: 0.8rem 1rem; border: 1px solid rgba(255,255,255,0.2); border-radius: 0.35rem; background: rgba(44,53,68,0.9); box-shadow: 0 0.75rem 1.5rem rgba(0,0,0,0.18); font: 0.42rem var(--mono); }
.beyond-brand__note i { width: 0.3rem; aspect-ratio: 1; border-radius: 50%; background: #ffb400; }
.beyond-brand__point { position: absolute; z-index: 3; right: 12%; top: 47%; width: 0.8rem; aspect-ratio: 1; border-radius: 50%; background: #ffb400; box-shadow: -5rem 3.5rem 0 -0.15rem #c7d8ec; }

.graphic-line-of-credit-depot { overflow: hidden; color: #fff; background: #4d8ae2; }
.locd-brand__mast { height: 19%; }
.locd-brand__mast img { width: 45%; }
.locd-brand__mast span { color: #4d8ae2; }
.locd-brand__field { position: absolute; inset: 19% 0 9%; overflow: hidden; }
.locd-brand__field::after { content: ""; position: absolute; right: -12%; top: -7%; width: 50%; height: 130%; background: rgba(36,65,123,0.28); transform: skewX(-25deg); }
.locd-brand__headline { position: absolute; z-index: 2; top: 9%; left: 7%; display: grid; }
.locd-brand__headline span, .locd-brand__headline strong { color: transparent; font-size: clamp(1.7rem, 4.4vw, 4rem); font-weight: 700; line-height: 0.88; letter-spacing: -0.045em; -webkit-text-stroke: 1px #ffd05a; }
.locd-brand__headline small { margin-top: 0.65rem; font: 0.42rem var(--mono); }
.locd-brand__network { position: absolute; z-index: 3; inset: 0; }
.locd-brand__profile { position: absolute; left: 9%; bottom: 9%; display: grid; width: 31%; min-height: 29%; padding: 3.5%; border: 1px solid #122548; color: #122548; background: #ffd05a; box-shadow: 0.65rem 0.65rem 0 rgba(18,37,72,0.24); transform: perspective(700px) rotateY(8deg); }
.locd-brand__profile small, .locd-brand__profile span { font: 0.4rem var(--mono); }.locd-brand__profile b { align-self: center; font-size: clamp(1.6rem, 4vw, 3.5rem); line-height: 0.8; }.locd-brand__profile span { align-self: end; }
.locd-brand__banks { position: absolute; z-index: 2; right: 6%; top: 39%; display: grid; gap: 0.45rem; width: 35%; }
.locd-brand__banks::before { content: ""; position: absolute; left: -52%; top: 50%; width: 54%; height: 1px; background: #ffd05a; }
.locd-brand__banks > span { display: flex; align-items: center; gap: 0.6rem; padding: 0.62rem; border: 1px solid #122548; color: #122548; background: #fff; box-shadow: 0.35rem 0.35rem 0 rgba(18,37,72,0.22); transform: translateX(var(--shift, 0)); }
.locd-brand__banks > span:first-child { --shift: -10%; }.locd-brand__banks > span:last-child { --shift: 10%; }
.locd-brand__banks i { position: relative; display: block; width: 1.3rem; height: 0.9rem; border: 2px solid #4d8ae2; border-top: 0; }
.locd-brand__banks i::before { content: ""; position: absolute; left: -0.2rem; bottom: 100%; width: 1.45rem; height: 0.45rem; background: #ffd05a; clip-path: polygon(50% 0,100% 100%,0 100%); }
.locd-brand__banks b { font: 0.46rem var(--mono); }
.locd-brand__bar { color: #122548; background: #ffd05a; }
.locd-brand__bar b { font-weight: 700; }

.case-statement { display: grid; grid-template-columns: 0.38fr 1.62fr; min-height: 86svh; border-bottom: 1px solid var(--line); }
.case-statement__aside { padding: 5rem var(--pad); border-right: 1px solid var(--line); font: 0.66rem var(--mono); }
.case-statement__body { align-self: center; padding: 7rem clamp(2rem, 7vw, 8rem); }
.case-statement h2 { max-width: 68rem; margin: 0; font-size: clamp(3.2rem, 7vw, 8rem); line-height: 0.92; letter-spacing: -0.06em; }
.case-statement p { max-width: 53rem; margin: 3rem 0 0 auto; font-size: clamp(1.1rem, 1.7vw, 1.55rem); line-height: 1.48; }
.case-statement p + p { margin-top: 1.2rem; }

.case-system { padding: 8rem var(--pad); border-bottom: 1px solid var(--line); }
.case-system__head { display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 3rem; align-items: end; margin-bottom: 5rem; }
.case-system h2 { max-width: 56rem; margin: 0; font-size: clamp(3.5rem, 7vw, 8rem); line-height: 0.86; letter-spacing: -0.065em; text-transform: uppercase; }
.case-system__head p { max-width: 32rem; margin: 0; font-size: var(--s-1); line-height: 1.45; }
.case-rails { border-top: 1px solid var(--line); }
.case-rail { display: grid; grid-template-columns: 0.45fr 1fr 1.2fr; gap: 2rem; align-items: center; min-height: 10rem; padding: 2rem 0; border-bottom: 1px solid var(--line); }
.case-rail small { font: 0.62rem var(--mono); color: var(--project); }
.case-rail h3 { margin: 0; font-size: var(--s-2); line-height: 1.05; }
.case-rail p { max-width: 40rem; margin: 0; color: var(--muted); line-height: 1.5; }

.case-band { position: relative; min-height: 72svh; padding: 7rem var(--pad); overflow: hidden; color: var(--project-on); background: var(--project); }
.case-band::before { content: ""; position: absolute; right: -12vw; top: -24vw; width: 58vw; aspect-ratio: 1; border: 1px solid currentColor; border-radius: 50%; opacity: 0.25; box-shadow: 0 0 0 8vw rgba(18,24,18,0.07), 0 0 0 16vw rgba(18,24,18,0.04); }
.case-band > * { position: relative; z-index: 1; }
.case-band__label { font: 0.66rem var(--mono); }
.case-band blockquote { max-width: 70rem; margin: 15vh 0 0; font-size: clamp(2.8rem, 6vw, 7rem); line-height: 0.94; letter-spacing: -0.055em; }
.case-band p { max-width: 42rem; margin: 3rem 0 0 auto; font-size: var(--s-1); line-height: 1.5; }

.case-principles { display: grid; grid-template-columns: 0.8fr 1.2fr; min-height: 82svh; border-bottom: 1px solid var(--line); }
.case-principles__intro { display: flex; flex-direction: column; justify-content: space-between; padding: 7rem var(--pad); border-right: 1px solid var(--line); }
.case-principles h2 { margin: 0; font-size: clamp(3rem, 6vw, 6rem); line-height: 0.9; letter-spacing: -0.055em; }
.case-principles__intro p { max-width: 28rem; margin: 3rem 0 0; font-size: var(--s-1); line-height: 1.48; }
.case-principles__list { align-self: center; padding: 4rem var(--pad); }
.case-principle { display: grid; grid-template-columns: auto 1fr; gap: 1.5rem; padding: 1.5rem 0; border-bottom: 1px solid var(--line); }
.case-principle:first-child { border-top: 1px solid var(--line); }
.case-principle i { width: 0.7rem; height: 0.7rem; margin-top: 0.35rem; border-radius: 50%; background: var(--project); }
.case-principle p { margin: 0; line-height: 1.48; }

.case-status { display: grid; grid-template-columns: 0.55fr 1.45fr; gap: 4rem; padding: 8rem var(--pad); background: var(--paper-deep); }
.case-status__label { font: 0.66rem var(--mono); color: var(--project); }
.case-status h2 { max-width: 66rem; margin: 0; font-size: clamp(2.6rem, 5vw, 5.5rem); line-height: 1; letter-spacing: -0.05em; }
.case-status p { max-width: 48rem; margin: 2rem 0 0; color: var(--muted); font-size: var(--s-1); line-height: 1.5; }
.case-live-link { display: flex; justify-content: space-between; width: min(100%, 24rem); min-height: 44px; margin-top: 2rem; padding: 0.8rem 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); color: var(--project); font: 0.7rem var(--mono); }
.case-live-link:hover { color: var(--acid); }
.case-next__long strong { font-size: clamp(2.8rem, 8vw, 9rem); line-height: 0.82; }

.case-notes { padding: 7rem var(--pad); border-top: 1px solid var(--line); background: var(--paper); }
.case-notes__head { display: grid; grid-template-columns: 0.42fr 1fr auto; gap: 2rem; align-items: end; padding-bottom: 2rem; border-bottom: 1px solid var(--line); }
.case-notes__head > span { align-self: start; color: var(--project); font: 0.66rem var(--mono); }
.case-notes__head h2 { max-width: 14ch; margin: 0; font-size: clamp(2.8rem, 5.4vw, 5.8rem); line-height: 0.92; letter-spacing: -0.05em; }
.case-notes__head > a { display: flex; align-items: center; min-height: 44px; border-bottom: 1px solid var(--line); font: 0.68rem var(--mono); }
.case-notes__list { min-height: 12rem; }
.case-note { display: grid; grid-template-columns: minmax(10rem, 0.36fr) minmax(0, 1fr) auto; gap: clamp(1.5rem, 4vw, 5rem); align-items: center; min-height: 15rem; padding: 2.5rem 0; border-bottom: 1px solid var(--line); transition: padding 0.3s var(--ease), background 0.3s; }
.case-note:hover, .case-note:focus-within { padding-right: 0.8rem; padding-left: 0.8rem; background: var(--paper-deep); }
.case-note__meta { display: grid; gap: 0.7rem; color: var(--muted); font: 0.63rem var(--mono); text-transform: uppercase; }
.case-note__meta span:first-child { color: var(--project); }
.case-note h3 { max-width: 18ch; margin: 0; font-size: clamp(2rem, 4.2vw, 4.5rem); line-height: 0.95; letter-spacing: -0.045em; text-transform: uppercase; }
.case-note p { max-width: 52rem; margin: 1rem 0 0; color: var(--muted); font-size: var(--s-1); line-height: 1.48; }
.case-note > b { color: var(--project); font-size: 2rem; font-weight: 400; }
.case-notes__loading, .case-notes__empty { display: flex; align-items: center; min-height: 12rem; margin: 0; color: var(--muted); font: 0.72rem var(--mono); }

.case-next { display: grid; grid-template-columns: 1fr auto; align-items: end; min-height: 62svh; padding: 6rem var(--pad) 2rem; color: var(--project-on); background: var(--project); }
.case-next small { font: 0.66rem var(--mono); }
.case-next a { grid-column: 1 / -1; display: flex; justify-content: space-between; align-items: end; margin-top: 12vh; border-bottom: 2px solid currentColor; }
.case-next strong { font-size: clamp(4rem, 12vw, 13rem); line-height: 0.72; letter-spacing: -0.07em; text-transform: uppercase; }
.case-next b { padding-bottom: 1rem; font-size: 2rem; font-weight: 400; }
.case-next__foot { grid-column: 1 / -1; display: flex; justify-content: space-between; margin-top: 4rem; font: 0.62rem var(--mono); }

.case-reveal > * { transition: transform 0.8s var(--ease), opacity 0.6s; }
.case-reveal:not(.is-visible) > * { opacity: 0; transform: translateX(-2rem); }
.case-reveal:nth-of-type(even):not(.is-visible) > * { transform: translateX(2rem); }

@media (max-width: 900px) {
  .project-nav { grid-template-columns: 1fr auto auto auto; }
  .project-context { display: none; }
  .case-hero { grid-template-columns: 1fr; grid-template-rows: auto auto 1fr auto; }
  .case-hero__copy { padding-bottom: 1rem; }
  .case-hero__graphic { justify-self: end; width: min(72vw, 34rem); }
  .case-statement { grid-template-columns: 1fr; }
  .case-statement__aside { padding: 3rem var(--pad) 0; border-right: 0; }
  .case-statement__body { padding: 4rem var(--pad) 6rem; }
  .case-system__head, .case-principles, .case-status { grid-template-columns: 1fr; }
  .case-principles__intro { border-right: 0; border-bottom: 1px solid var(--line); }
  .case-notes__head { grid-template-columns: 1fr auto; }
  .case-notes__head > span { grid-column: 1 / -1; }
  .case-note { grid-template-columns: minmax(8rem, 0.32fr) minmax(0, 1fr) auto; }
}

@media (max-width: 620px) {
  .project-nav { grid-template-columns: 1fr auto auto; }
  .project-nav__systems { display: none; }
  .project-nav > * { padding: 0 0.75rem; }
  .project-nav__link { font-size: 0.7rem; }
  .case-hero { min-height: 58rem; padding-right: 1rem; padding-left: 1rem; }
  .case-hero__meta { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 1rem; align-items: start; font-size: 0.56rem; }
  .case-hero__meta span { min-width: 0; }
  .case-hero__meta span:last-child { text-align: right; }
  .case-hero__copy { padding-top: 3rem; }
  .case-hero h1 { font-size: 22vw; }
  .case-hero__lead { font-size: 1.3rem; }
  .case-hero__links { grid-template-columns: 1fr; }
  .case-hero__links .case-hero__jump { border-right: 0; border-bottom: 1px solid var(--ink); }
  .case-hero__graphic { width: 86vw; }
  .case-statement h2 { font-size: 13vw; }
  .case-system { padding-top: 6rem; padding-bottom: 6rem; }
  .case-system h2 { font-size: 14vw; }
  .case-system__head { grid-template-columns: 1fr; margin-bottom: 3rem; }
  .case-rail { grid-template-columns: 1fr; gap: 0.65rem; min-height: 0; padding: 2rem 0; }
  .case-band { min-height: 42rem; }
  .case-band blockquote { margin-top: 9rem; font-size: 12vw; }
  .case-principles__intro, .case-principles__list, .case-status { padding: 5rem 1rem; }
  .case-notes { padding: 5rem 1rem; }
  .case-notes__head { grid-template-columns: 1fr; gap: 1rem; }
  .case-notes__head > span { grid-column: 1; }
  .case-notes__head > a { width: fit-content; }
  .case-note { grid-template-columns: 1fr; gap: 1.25rem; min-height: 0; padding: 2.5rem 0; }
  .case-note > b { justify-self: end; }
  .case-next { min-height: 44rem; }
  .case-next strong { font-size: 20vw; }
  .case-next__foot { flex-direction: column; gap: 0.6rem; }
  .graphic-pigeon__phone { width: 58%; }
  .project-page--fastway-sba .case-hero h1,
  .project-page--beyondmca .case-hero h1 { font-size: 18vw; }
  .project-page--reverse-consolidation .case-hero h1,
  .project-page--line-of-credit-depot .case-hero h1 { font-size: 13vw; line-height: 0.88; }
  .case-next__long strong { font-size: 14vw; line-height: 0.9; }
  .brand-graphic__mast span { font-size: 0.4rem; }
  .fastway-brand__route span, .fastway-brand__cards small, .fastway-brand__cards em,
  .reverse-brand__inputs small, .reverse-brand__inputs b, .reverse-brand__ledger small, .reverse-brand__ledger > b, .reverse-brand__ledger span,
  .beyond-brand__field > small, .beyond-brand__note,
  .locd-brand__headline small, .locd-brand__profile small, .locd-brand__profile span, .locd-brand__banks b { font-size: 0.36rem; }
  .fastway-brand__bar, .reverse-brand__bar, .locd-brand__bar { font-size: 0.38rem; }
}

@media (prefers-reduced-motion: reduce) {
  .case-reveal > * { opacity: 1 !important; transform: none !important; }
}
